@teambit/typescript 1.0.258 → 1.0.259
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.
- package/artifacts/__bit_junit.xml +24 -24
- package/artifacts/preview/teambit_typescript_typescript-preview.js +1 -1
- package/artifacts/schema.json +15143 -62
- package/dist/preview-1714533890836.js +7 -0
- package/dist/sourceFileTransformers/export.d.ts +1 -1
- package/dist/sourceFileTransformers/export.js.map +1 -1
- package/dist/sourceFileTransformers/expression-statement.d.ts +1 -1
- package/dist/sourceFileTransformers/expression-statement.js.map +1 -1
- package/dist/sourceFileTransformers/function.d.ts +1 -1
- package/dist/sourceFileTransformers/function.js.map +1 -1
- package/dist/sourceFileTransformers/import.d.ts +1 -1
- package/dist/sourceFileTransformers/import.js.map +1 -1
- package/dist/tsconfig-writer.js +4 -4
- package/dist/tsconfig-writer.js.map +1 -1
- package/package.json +17 -17
- package/sourceFileTransformers/export.ts +1 -1
- package/sourceFileTransformers/expression-statement.ts +1 -1
- package/sourceFileTransformers/function.ts +1 -1
- package/sourceFileTransformers/import.ts +1 -1
- package/dist/preview-1714472366682.js +0 -7
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import * as compositions_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.typescript_typescript@1.0.259/dist/typescript.composition.js';
|
|
2
|
+
import * as overview_0 from '/home/circleci/Library/Caches/Bit/capsules/8891be5ad/teambit.typescript_typescript@1.0.259/dist/typescript.docs.mdx';
|
|
3
|
+
|
|
4
|
+
export const compositions = [compositions_0];
|
|
5
|
+
export const overview = [overview_0];
|
|
6
|
+
|
|
7
|
+
export const compositions_metadata = {"compositions":[{"displayName":"Logo","identifier":"Logo"}]};
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { SourceFileTransformer } from '
|
|
1
|
+
import { SourceFileTransformer } from './index';
|
|
2
2
|
export declare const exportTransformer: SourceFileTransformer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_typescript","data","_interopRequireDefault","require","obj","__esModule","default","exportTransformer","mapping","context","visit","node","ts","isExportDeclaration","moduleSpecifier","getText","slice","oldName","newName","Object","entries","includes","replace","updatedExportClause","exportClause","isNamedExports","transformedElements","elements","map","element","newElementName","name","text","startsWith","endsWith","factory","updateExportSpecifier","propertyName","createIdentifier","updateNamedExports","updateExportDeclaration","modifiers","isTypeOnly","createStringLiteral","undefined","isExportAssignment","expression","isIdentifier","updateExportAssignment","visitEachChild","visitNode","exports"],"sources":["export.ts"],"sourcesContent":["import ts from 'typescript';\nimport { SourceFileTransformer } from '
|
|
1
|
+
{"version":3,"names":["_typescript","data","_interopRequireDefault","require","obj","__esModule","default","exportTransformer","mapping","context","visit","node","ts","isExportDeclaration","moduleSpecifier","getText","slice","oldName","newName","Object","entries","includes","replace","updatedExportClause","exportClause","isNamedExports","transformedElements","elements","map","element","newElementName","name","text","startsWith","endsWith","factory","updateExportSpecifier","propertyName","createIdentifier","updateNamedExports","updateExportDeclaration","modifiers","isTypeOnly","createStringLiteral","undefined","isExportAssignment","expression","isIdentifier","updateExportAssignment","visitEachChild","visitNode","exports"],"sources":["export.ts"],"sourcesContent":["import ts from 'typescript';\nimport { SourceFileTransformer } from './index';\n\nexport const exportTransformer: SourceFileTransformer = (mapping: Record<string, string>) => {\n return (context) => {\n const visit: ts.Visitor = (node) => {\n if (ts.isExportDeclaration(node)) {\n let moduleSpecifier = node.moduleSpecifier?.getText().slice(1, -1);\n for (const [oldName, newName] of Object.entries(mapping)) {\n if (moduleSpecifier && moduleSpecifier.includes(oldName)) {\n moduleSpecifier = moduleSpecifier.replace(oldName, newName);\n }\n }\n let updatedExportClause;\n\n if (node.exportClause && ts.isNamedExports(node.exportClause)) {\n const transformedElements = node.exportClause.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.updateExportSpecifier(\n element,\n false,\n element.propertyName,\n ts.factory.createIdentifier(newElementName)\n );\n });\n\n updatedExportClause = ts.factory.updateNamedExports(node.exportClause, transformedElements);\n }\n\n return ts.factory.updateExportDeclaration(\n node,\n node.modifiers,\n node.isTypeOnly,\n updatedExportClause,\n node.moduleSpecifier ? ts.factory.createStringLiteral(moduleSpecifier || '') : undefined,\n undefined\n );\n }\n\n if (ts.isExportAssignment(node)) {\n let expression = node.expression;\n\n if (ts.isIdentifier(expression)) {\n for (const [oldName, newName] of Object.entries(mapping)) {\n if (expression.getText().startsWith(oldName) || expression.getText().endsWith(oldName)) {\n expression = ts.factory.createIdentifier(expression.getText().replace(oldName, newName));\n }\n }\n }\n\n return ts.factory.updateExportAssignment(node, node.modifiers, expression);\n }\n\n return ts.visitEachChild(node, visit, context);\n };\n return (node) => ts.visitNode(node, visit) as ts.SourceFile;\n };\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { SourceFileTransformer } from '
|
|
1
|
+
import { SourceFileTransformer } from './index';
|
|
2
2
|
export declare const expressionStatementTransformer: SourceFileTransformer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_typescript","data","_interopRequireDefault","require","_replaceName","obj","__esModule","default","expressionStatementTransformer","mapping","context","replaceIdentifierText","identifier","ts","isIdentifier","oldName","getText","newName","replaceName","factory","createIdentifier","e","visit","node","isExpressionStatement","updateExpressionStatement","visitNode","expression","isPropertyAccessExpression","name","updatePropertyAccessExpression","visitEachChild","exports"],"sources":["expression-statement.ts"],"sourcesContent":["import ts from 'typescript';\nimport { SourceFileTransformer } from '
|
|
1
|
+
{"version":3,"names":["_typescript","data","_interopRequireDefault","require","_replaceName","obj","__esModule","default","expressionStatementTransformer","mapping","context","replaceIdentifierText","identifier","ts","isIdentifier","oldName","getText","newName","replaceName","factory","createIdentifier","e","visit","node","isExpressionStatement","updateExpressionStatement","visitNode","expression","isPropertyAccessExpression","name","updatePropertyAccessExpression","visitEachChild","exports"],"sources":["expression-statement.ts"],"sourcesContent":["import ts from 'typescript';\nimport { SourceFileTransformer } from './index';\nimport { replaceName } from './replaceName';\n\nexport const expressionStatementTransformer: SourceFileTransformer = (mapping: Record<string, string>) => {\n return (context) => {\n const replaceIdentifierText = (identifier: ts.Identifier) => {\n try {\n if (!identifier || !ts.isIdentifier(identifier)) return identifier;\n const oldName = identifier.getText();\n const newName = replaceName(oldName, mapping);\n\n if (newName) {\n return ts.factory.createIdentifier(newName);\n }\n return identifier;\n } catch (e) {\n return identifier;\n }\n };\n\n const visit: ts.Visitor = (node) => {\n if (ts.isExpressionStatement(node)) {\n return ts.factory.updateExpressionStatement(node, ts.visitNode(node.expression, visit) as ts.Expression);\n }\n\n if (ts.isPropertyAccessExpression(node)) {\n let newName = node.name;\n if (ts.isIdentifier(node.name)) {\n newName = replaceIdentifierText(node.name);\n }\n return ts.factory.updatePropertyAccessExpression(\n node,\n ts.visitNode(node.expression, visit) as ts.Expression,\n newName\n );\n }\n\n if (ts.isIdentifier(node)) {\n return replaceIdentifierText(node);\n }\n\n return ts.visitEachChild(node, visit, context);\n };\n\n return (node) => ts.visitNode(node, visit) as ts.SourceFile;\n };\n};\n"],"mappings":";;;;;;AAAA,SAAAA,YAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,WAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAG,aAAA;EAAA,MAAAH,IAAA,GAAAE,OAAA;EAAAC,YAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA4C,SAAAC,uBAAAG,GAAA,WAAAA,GAAA,IAAAA,GAAA,CAAAC,UAAA,GAAAD,GAAA,KAAAE,OAAA,EAAAF,GAAA;AAErC,MAAMG,8BAAqD,GAAIC,OAA+B,IAAK;EACxG,OAAQC,OAAO,IAAK;IAClB,MAAMC,qBAAqB,GAAIC,UAAyB,IAAK;MAC3D,IAAI;QACF,IAAI,CAACA,UAAU,IAAI,CAACC,qBAAE,CAACC,YAAY,CAACF,UAAU,CAAC,EAAE,OAAOA,UAAU;QAClE,MAAMG,OAAO,GAAGH,UAAU,CAACI,OAAO,CAAC,CAAC;QACpC,MAAMC,OAAO,GAAG,IAAAC,0BAAW,EAACH,OAAO,EAAEN,OAAO,CAAC;QAE7C,IAAIQ,OAAO,EAAE;UACX,OAAOJ,qBAAE,CAACM,OAAO,CAACC,gBAAgB,CAACH,OAAO,CAAC;QAC7C;QACA,OAAOL,UAAU;MACnB,CAAC,CAAC,OAAOS,CAAC,EAAE;QACV,OAAOT,UAAU;MACnB;IACF,CAAC;IAED,MAAMU,KAAiB,GAAIC,IAAI,IAAK;MAClC,IAAIV,qBAAE,CAACW,qBAAqB,CAACD,IAAI,CAAC,EAAE;QAClC,OAAOV,qBAAE,CAACM,OAAO,CAACM,yBAAyB,CAACF,IAAI,EAAEV,qBAAE,CAACa,SAAS,CAACH,IAAI,CAACI,UAAU,EAAEL,KAAK,CAAkB,CAAC;MAC1G;MAEA,IAAIT,qBAAE,CAACe,0BAA0B,CAACL,IAAI,CAAC,EAAE;QACvC,IAAIN,OAAO,GAAGM,IAAI,CAACM,IAAI;QACvB,IAAIhB,qBAAE,CAACC,YAAY,CAACS,IAAI,CAACM,IAAI,CAAC,EAAE;UAC9BZ,OAAO,GAAGN,qBAAqB,CAACY,IAAI,CAACM,IAAI,CAAC;QAC5C;QACA,OAAOhB,qBAAE,CAACM,OAAO,CAACW,8BAA8B,CAC9CP,IAAI,EACJV,qBAAE,CAACa,SAAS,CAACH,IAAI,CAACI,UAAU,EAAEL,KAAK,CAAC,EACpCL,OACF,CAAC;MACH;MAEA,IAAIJ,qBAAE,CAACC,YAAY,CAACS,IAAI,CAAC,EAAE;QACzB,OAAOZ,qBAAqB,CAACY,IAAI,CAAC;MACpC;MAEA,OAAOV,qBAAE,CAACkB,cAAc,CAACR,IAAI,EAAED,KAAK,EAAEZ,OAAO,CAAC;IAChD,CAAC;IAED,OAAQa,IAAI,IAAKV,qBAAE,CAACa,SAAS,CAACH,IAAI,EAAED,KAAK,CAAkB;EAC7D,CAAC;AACH,CAAC;AAACU,OAAA,CAAAxB,8BAAA,GAAAA,8BAAA","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { SourceFileTransformer } from '
|
|
1
|
+
import { SourceFileTransformer } from './index';
|
|
2
2
|
export declare const functionNamesTransformer: SourceFileTransformer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_typescript","data","_interopRequireDefault","require","_replaceName","obj","__esModule","default","functionNamesTransformer","mapping","context","updateTypeReference","node","ts","isTypeReferenceNode","typeName","getText","getSourceFile","newTypeName","replaceName","factory","updateTypeReferenceNode","createIdentifier","typeArguments","visitEachChild","e","visit","isFunctionDeclaration","isArrowFunction","isFunctionExpression","functionName","name","newName","Object","entries","find","key","includes","parameters","map","param","newParamType","type","visitNode","isIdentifier","oldName","newParamName","keys","updateParameterDeclaration","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) as ts.TypeNode) : 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.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.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.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) as ts.SourceFile;\n };\n};\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_typescript","data","_interopRequireDefault","require","_replaceName","obj","__esModule","default","functionNamesTransformer","mapping","context","updateTypeReference","node","ts","isTypeReferenceNode","typeName","getText","getSourceFile","newTypeName","replaceName","factory","updateTypeReferenceNode","createIdentifier","typeArguments","visitEachChild","e","visit","isFunctionDeclaration","isArrowFunction","isFunctionExpression","functionName","name","newName","Object","entries","find","key","includes","parameters","map","param","newParamType","type","visitNode","isIdentifier","oldName","newParamName","keys","updateParameterDeclaration","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 './index';\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) as ts.TypeNode) : 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.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.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.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) as ts.SourceFile;\n };\n};\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { SourceFileTransformer } from '
|
|
1
|
+
import { SourceFileTransformer } from './index';
|
|
2
2
|
export declare const importTransformer: SourceFileTransformer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_typescript","data","_interopRequireDefault","require","obj","__esModule","default","importTransformer","mapping","context","visit","node","ts","isImportDeclaration","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","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 '
|
|
1
|
+
{"version":3,"names":["_typescript","data","_interopRequireDefault","require","obj","__esModule","default","importTransformer","mapping","context","visit","node","ts","isImportDeclaration","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","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 './index';\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.modifiers,\n updatedImportClause,\n ts.factory.createStringLiteral(moduleSpecifier),\n undefined\n );\n }\n\n return ts.factory.updateImportDeclaration(\n node,\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.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) as ts.SourceFile;\n };\n};\n"],"mappings":"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","ignoreList":[]}
|
package/dist/tsconfig-writer.js
CHANGED
|
@@ -47,9 +47,9 @@ function _chalk() {
|
|
|
47
47
|
};
|
|
48
48
|
return data;
|
|
49
49
|
}
|
|
50
|
-
function
|
|
51
|
-
const data = require(".");
|
|
52
|
-
|
|
50
|
+
function _typescript() {
|
|
51
|
+
const data = require("./typescript.aspect");
|
|
52
|
+
_typescript = function () {
|
|
53
53
|
return data;
|
|
54
54
|
};
|
|
55
55
|
return data;
|
|
@@ -75,7 +75,7 @@ class TsconfigWriter {
|
|
|
75
75
|
}
|
|
76
76
|
getTsconfigFromEnv(env) {
|
|
77
77
|
const compiler = env.getCompiler();
|
|
78
|
-
if (compiler.id ===
|
|
78
|
+
if (compiler.id === _typescript().TypescriptAspect.id) {
|
|
79
79
|
return compiler.displayConfig();
|
|
80
80
|
}
|
|
81
81
|
return JSON.stringify(env.getTsConfig(), undefined, 2);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_fsExtra","data","_interopRequireDefault","require","_path","_yesno","_lodash","_exceptions","_chalk","_","obj","__esModule","default","TsconfigWriter","constructor","workspace","logger","write","envsExecutionContext","options","pathsPerEnvs","getPathsPerEnv","tsconfigPathsPerEnv","map","pathsPerEnv","envIds","ids","tsconfig","getTsconfigFromEnv","env","paths","dryRun","silent","promptForWriting","p","flat","writeFiles","compiler","getCompiler","id","TypescriptAspect","displayConfig","JSON","stringify","getTsConfig","undefined","clean","dedupe","componentPaths","allPossibleDirs","getAllPossibleDirsFromPaths","dirsWithTsconfig","filterDirsWithTsconfigFile","tsconfigFiles","dir","path","join","length","promptForCleaning","deleteFiles","dirs","clearStatusLine","ok","yesno","question","chalk","underline","bold","PromptCanceled","Promise","all","f","fs","remove","tsconfigPathsPerEnvs","writeFile","envExecution","components","c","componentDir","relative","envsWithFiles","e","file","envsPerFile","isEnvProcessed","envId","find","forEach","foundSameFile","filter","isEqual","push","fileContent","pathsPerEnvIds","compact","envsPerDedupedPaths","dedupePaths","dedupedPathsPerEnvs","envWithDedupePaths","found","includes","Error","exports","hasTsconfig","pathExists","getAllParentsDirOfPath","uniq","current","dirname","pathsPerEnvId","rootDir","individualPathPerConcatenatedEnvIds","reduce","acc","allPaths","Object","keys","allPathsPerEnvId","calculateBestEnvForDir","allPathsShareSameDir","startsWith","countPerEnv","envIdStr","max","Math","values","envWithMax","dirPath","dedupedPathsPerEnvIds","envIdsPerDedupedPaths","invertBy","dedupedPaths","split"],"sources":["tsconfig-writer.ts"],"sourcesContent":["import fs from 'fs-extra';\nimport path from 'path';\nimport yesno from 'yesno';\nimport { PathLinuxRelative } from '@teambit/legacy/dist/utils/path';\nimport { compact, invertBy, isEqual, uniq } from 'lodash';\nimport { PromptCanceled } from '@teambit/legacy/dist/prompts/exceptions';\nimport { Environment, ExecutionContext } from '@teambit/envs';\nimport { Workspace } from '@teambit/workspace';\nimport { Logger } from '@teambit/logger';\nimport chalk from 'chalk';\nimport { TsconfigWriterOptions } from './typescript.main.runtime';\nimport { TypescriptAspect } from '.';\n\nexport type TsconfigPathsPerEnv = { envIds: string[]; tsconfig: string; paths: string[] };\n\ntype PathsPerEnv = { env: Environment; ids: string[]; paths: string[] };\n\nexport class TsconfigWriter {\n constructor(private workspace: Workspace, private logger: Logger) {}\n\n async write(\n envsExecutionContext: ExecutionContext[],\n options: TsconfigWriterOptions\n ): Promise<TsconfigPathsPerEnv[]> {\n const pathsPerEnvs = this.getPathsPerEnv(envsExecutionContext, options);\n const tsconfigPathsPerEnv = pathsPerEnvs.map((pathsPerEnv) => ({\n envIds: pathsPerEnv.ids,\n tsconfig: this.getTsconfigFromEnv(pathsPerEnv.env), // pathsPerEnv.env.getTsConfig(),\n paths: pathsPerEnv.paths,\n }));\n if (options.dryRun) return tsconfigPathsPerEnv;\n if (!options.silent) await this.promptForWriting(tsconfigPathsPerEnv.map((p) => p.paths).flat());\n await this.writeFiles(tsconfigPathsPerEnv);\n return tsconfigPathsPerEnv;\n }\n\n private getTsconfigFromEnv(env: Environment) {\n const compiler = env.getCompiler();\n if (compiler.id === TypescriptAspect.id) {\n return compiler.displayConfig() as string;\n }\n return JSON.stringify(env.getTsConfig(), undefined, 2);\n }\n\n async clean(envsExecutionContext: ExecutionContext[], { dryRun, silent }: TsconfigWriterOptions): Promise<string[]> {\n const pathsPerEnvs = this.getPathsPerEnv(envsExecutionContext, { dedupe: false });\n const componentPaths = pathsPerEnvs.map((p) => p.paths).flat();\n const allPossibleDirs = getAllPossibleDirsFromPaths(componentPaths);\n const dirsWithTsconfig = await filterDirsWithTsconfigFile(allPossibleDirs);\n const tsconfigFiles = dirsWithTsconfig.map((dir) => path.join(dir, 'tsconfig.json'));\n if (dryRun) return tsconfigFiles;\n if (!dirsWithTsconfig.length) return [];\n if (!silent) await this.promptForCleaning(tsconfigFiles);\n await this.deleteFiles(tsconfigFiles);\n return tsconfigFiles;\n }\n\n private async promptForWriting(dirs: string[]) {\n this.logger.clearStatusLine();\n const tsconfigFiles = dirs.map((dir) => path.join(dir, 'tsconfig.json'));\n const ok = await yesno({\n question: `${chalk.underline('The following paths will be written:')}\n${tsconfigFiles.join('\\n')}\n${chalk.bold('Do you want to continue? [yes(y)/no(n)]')}`,\n });\n if (!ok) {\n throw new PromptCanceled();\n }\n }\n\n private async promptForCleaning(tsconfigFiles: string[]) {\n this.logger.clearStatusLine();\n const ok = await yesno({\n question: `${chalk.underline('The following paths will be deleted:')}\n${tsconfigFiles.join('\\n')}\n${chalk.bold('Do you want to continue? [yes(y)/no(n)]')}`,\n });\n if (!ok) {\n throw new PromptCanceled();\n }\n }\n\n private async deleteFiles(tsconfigFiles: string[]) {\n await Promise.all(tsconfigFiles.map((f) => fs.remove(f)));\n }\n\n private async writeFiles(tsconfigPathsPerEnvs: TsconfigPathsPerEnv[]) {\n await Promise.all(\n tsconfigPathsPerEnvs.map((pathsPerEnv) => {\n return Promise.all(\n pathsPerEnv.paths.map((p) => fs.writeFile(path.join(p, 'tsconfig.json'), pathsPerEnv.tsconfig))\n );\n })\n );\n }\n\n private getPathsPerEnv(envsExecutionContext: ExecutionContext[], { dedupe }: TsconfigWriterOptions): PathsPerEnv[] {\n const pathsPerEnvs = envsExecutionContext.map((envExecution) => {\n return {\n id: envExecution.id,\n env: envExecution.env,\n paths: envExecution.components.map((c) => this.workspace.componentDir(c.id, undefined, { relative: true })),\n };\n });\n if (!dedupe) {\n return pathsPerEnvs.map(({ id, env, paths }) => ({ ids: [id], env, paths }));\n }\n\n const envsWithFiles = envsExecutionContext.map((e) => ({\n id: e.id,\n file: e.env.getTsConfig(),\n }));\n const envsPerFile: { envIds: string[]; fileContent: Record<string, any> }[] = [];\n const isEnvProcessed = (envId: string) =>\n envsPerFile\n .map((e) => e.envIds)\n .flat()\n .find((e) => e === envId);\n envsWithFiles.forEach(({ id, file }) => {\n if (isEnvProcessed(id)) return;\n const foundSameFile = envsWithFiles.filter((e) => isEqual(file, e.file));\n envsPerFile.push({ envIds: foundSameFile.map((f) => f.id), fileContent: file });\n });\n const pathsPerEnvIds = envsPerFile.map((e) => ({\n ids: e.envIds,\n paths: compact(e.envIds.map((envId) => pathsPerEnvs.find((p) => p.id === envId)?.paths).flat()),\n }));\n // const pathsPerEnvIds = pathsPerEnvs.map((p) => ({ ids: p.ids, paths: p.paths }));\n const envsPerDedupedPaths = dedupePaths(pathsPerEnvIds);\n const dedupedPathsPerEnvs: PathsPerEnv[] = envsPerDedupedPaths.map((envWithDedupePaths) => {\n const found = pathsPerEnvs.find((p) => envWithDedupePaths.ids.includes(p.id));\n if (!found) throw new Error(`dedupedPathsPerEnvs, unable to find ${envWithDedupePaths.ids}`);\n return {\n env: found.env,\n ids: envWithDedupePaths.ids,\n paths: envWithDedupePaths.paths,\n };\n });\n\n return dedupedPathsPerEnvs;\n }\n}\n\ntype PathsPerEnvIds = { ids: string[]; paths: string[] };\n\nasync function filterDirsWithTsconfigFile(dirs: string[]): Promise<string[]> {\n const dirsWithTsconfig = await Promise.all(\n dirs.map(async (dir) => {\n const hasTsconfig = await fs.pathExists(path.join(dir, 'tsconfig.json'));\n return hasTsconfig ? dir : undefined;\n })\n );\n return compact(dirsWithTsconfig);\n}\n\nfunction getAllPossibleDirsFromPaths(paths: PathLinuxRelative[]): PathLinuxRelative[] {\n const dirs = paths.map((p) => getAllParentsDirOfPath(p)).flat();\n dirs.push('.'); // add the root dir\n return uniq(dirs);\n}\n\nfunction getAllParentsDirOfPath(p: PathLinuxRelative): PathLinuxRelative[] {\n const all: string[] = [];\n let current = p;\n while (current !== '.') {\n all.push(current);\n current = path.dirname(current);\n }\n return all;\n}\n\n/**\n * easier to understand by an example:\n * input:\n * [\n * { id: react, paths: [ui/button, ui/form] },\n * { id: aspect, paths: [p/a1, p/a2] },\n * { id: node, paths: [p/n1] },\n * ]\n *\n * output:\n * [\n * { id: react, paths: [ui] },\n * { id: aspect, paths: [p] },\n * { id: node, paths: [p/n1] },\n * ]\n *\n * the goal is to minimize the amount of files to write per env if possible.\n * when multiple components of the same env share a root-dir, then, it's enough to write a file in that shared dir.\n * if in a shared-dir, some components using env1 and some env2, it finds the env that has the max number of\n * components, this env will be optimized. other components, will have the files written inside their dirs.\n */\nexport function dedupePaths(pathsPerEnvId: PathsPerEnvIds[]): PathsPerEnvIds[] {\n const rootDir = '.';\n const individualPathPerConcatenatedEnvIds: { [path: string]: string } = pathsPerEnvId.reduce((acc, current) => {\n current.paths.forEach((p) => {\n acc[p] = current.ids.join(',');\n });\n return acc;\n }, {});\n const allPaths = Object.keys(individualPathPerConcatenatedEnvIds);\n const allPossibleDirs = getAllPossibleDirsFromPaths(allPaths);\n\n const allPathsPerEnvId: { [path: string]: string | null } = {}; // null when parent-dir has same amount of comps per env.\n\n const calculateBestEnvForDir = (dir: string) => {\n if (individualPathPerConcatenatedEnvIds[dir]) {\n // it's the component dir, so it's the best env\n allPathsPerEnvId[dir] = individualPathPerConcatenatedEnvIds[dir];\n return;\n }\n const allPathsShareSameDir = dir === rootDir ? allPaths : allPaths.filter((p) => p.startsWith(`${dir}/`));\n const countPerEnv: { [env: string]: number } = {};\n allPathsShareSameDir.forEach((p) => {\n const envIdStr = individualPathPerConcatenatedEnvIds[p];\n if (countPerEnv[envIdStr]) countPerEnv[envIdStr] += 1;\n else countPerEnv[envIdStr] = 1;\n });\n const max = Math.max(...Object.values(countPerEnv));\n const envWithMax = Object.keys(countPerEnv).filter((env) => countPerEnv[env] === max);\n if (!envWithMax.length) throw new Error(`must be at least one env related to path \"${dir}\"`);\n if (envWithMax.length > 1) allPathsPerEnvId[dir] = null;\n else allPathsPerEnvId[dir] = envWithMax[0];\n };\n\n allPossibleDirs.forEach((dirPath) => {\n calculateBestEnvForDir(dirPath);\n });\n\n // this is the actual deduping. if found a shorter path with the same env, then no need for this path.\n // in other words, return only the paths that their parent is null or has a different env.\n const dedupedPathsPerEnvIds = Object.keys(allPathsPerEnvId).reduce((acc, current) => {\n if (allPathsPerEnvId[current] && allPathsPerEnvId[path.dirname(current)] !== allPathsPerEnvId[current]) {\n acc[current] = allPathsPerEnvId[current];\n }\n\n return acc;\n }, {});\n // rootDir parent is always rootDir, so leave it as is.\n if (allPathsPerEnvId[rootDir]) dedupedPathsPerEnvIds[rootDir] = allPathsPerEnvId[rootDir];\n\n const envIdsPerDedupedPaths = invertBy(dedupedPathsPerEnvIds);\n\n const dedupedPaths = Object.keys(envIdsPerDedupedPaths).map((envIdStr) => ({\n ids: envIdStr.split(','),\n paths: envIdsPerDedupedPaths[envIdStr],\n }));\n return dedupedPaths;\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_fsExtra","data","_interopRequireDefault","require","_path","_yesno","_lodash","_exceptions","_chalk","_typescript","obj","__esModule","default","TsconfigWriter","constructor","workspace","logger","write","envsExecutionContext","options","pathsPerEnvs","getPathsPerEnv","tsconfigPathsPerEnv","map","pathsPerEnv","envIds","ids","tsconfig","getTsconfigFromEnv","env","paths","dryRun","silent","promptForWriting","p","flat","writeFiles","compiler","getCompiler","id","TypescriptAspect","displayConfig","JSON","stringify","getTsConfig","undefined","clean","dedupe","componentPaths","allPossibleDirs","getAllPossibleDirsFromPaths","dirsWithTsconfig","filterDirsWithTsconfigFile","tsconfigFiles","dir","path","join","length","promptForCleaning","deleteFiles","dirs","clearStatusLine","ok","yesno","question","chalk","underline","bold","PromptCanceled","Promise","all","f","fs","remove","tsconfigPathsPerEnvs","writeFile","envExecution","components","c","componentDir","relative","envsWithFiles","e","file","envsPerFile","isEnvProcessed","envId","find","forEach","foundSameFile","filter","isEqual","push","fileContent","pathsPerEnvIds","compact","envsPerDedupedPaths","dedupePaths","dedupedPathsPerEnvs","envWithDedupePaths","found","includes","Error","exports","hasTsconfig","pathExists","getAllParentsDirOfPath","uniq","current","dirname","pathsPerEnvId","rootDir","individualPathPerConcatenatedEnvIds","reduce","acc","allPaths","Object","keys","allPathsPerEnvId","calculateBestEnvForDir","allPathsShareSameDir","startsWith","countPerEnv","envIdStr","max","Math","values","envWithMax","dirPath","dedupedPathsPerEnvIds","envIdsPerDedupedPaths","invertBy","dedupedPaths","split"],"sources":["tsconfig-writer.ts"],"sourcesContent":["import fs from 'fs-extra';\nimport path from 'path';\nimport yesno from 'yesno';\nimport { PathLinuxRelative } from '@teambit/legacy/dist/utils/path';\nimport { compact, invertBy, isEqual, uniq } from 'lodash';\nimport { PromptCanceled } from '@teambit/legacy/dist/prompts/exceptions';\nimport { Environment, ExecutionContext } from '@teambit/envs';\nimport { Workspace } from '@teambit/workspace';\nimport { Logger } from '@teambit/logger';\nimport chalk from 'chalk';\nimport { TsconfigWriterOptions } from './typescript.main.runtime';\nimport { TypescriptAspect } from './typescript.aspect';\n\nexport type TsconfigPathsPerEnv = { envIds: string[]; tsconfig: string; paths: string[] };\n\ntype PathsPerEnv = { env: Environment; ids: string[]; paths: string[] };\n\nexport class TsconfigWriter {\n constructor(private workspace: Workspace, private logger: Logger) {}\n\n async write(\n envsExecutionContext: ExecutionContext[],\n options: TsconfigWriterOptions\n ): Promise<TsconfigPathsPerEnv[]> {\n const pathsPerEnvs = this.getPathsPerEnv(envsExecutionContext, options);\n const tsconfigPathsPerEnv = pathsPerEnvs.map((pathsPerEnv) => ({\n envIds: pathsPerEnv.ids,\n tsconfig: this.getTsconfigFromEnv(pathsPerEnv.env), // pathsPerEnv.env.getTsConfig(),\n paths: pathsPerEnv.paths,\n }));\n if (options.dryRun) return tsconfigPathsPerEnv;\n if (!options.silent) await this.promptForWriting(tsconfigPathsPerEnv.map((p) => p.paths).flat());\n await this.writeFiles(tsconfigPathsPerEnv);\n return tsconfigPathsPerEnv;\n }\n\n private getTsconfigFromEnv(env: Environment) {\n const compiler = env.getCompiler();\n if (compiler.id === TypescriptAspect.id) {\n return compiler.displayConfig() as string;\n }\n return JSON.stringify(env.getTsConfig(), undefined, 2);\n }\n\n async clean(envsExecutionContext: ExecutionContext[], { dryRun, silent }: TsconfigWriterOptions): Promise<string[]> {\n const pathsPerEnvs = this.getPathsPerEnv(envsExecutionContext, { dedupe: false });\n const componentPaths = pathsPerEnvs.map((p) => p.paths).flat();\n const allPossibleDirs = getAllPossibleDirsFromPaths(componentPaths);\n const dirsWithTsconfig = await filterDirsWithTsconfigFile(allPossibleDirs);\n const tsconfigFiles = dirsWithTsconfig.map((dir) => path.join(dir, 'tsconfig.json'));\n if (dryRun) return tsconfigFiles;\n if (!dirsWithTsconfig.length) return [];\n if (!silent) await this.promptForCleaning(tsconfigFiles);\n await this.deleteFiles(tsconfigFiles);\n return tsconfigFiles;\n }\n\n private async promptForWriting(dirs: string[]) {\n this.logger.clearStatusLine();\n const tsconfigFiles = dirs.map((dir) => path.join(dir, 'tsconfig.json'));\n const ok = await yesno({\n question: `${chalk.underline('The following paths will be written:')}\n${tsconfigFiles.join('\\n')}\n${chalk.bold('Do you want to continue? [yes(y)/no(n)]')}`,\n });\n if (!ok) {\n throw new PromptCanceled();\n }\n }\n\n private async promptForCleaning(tsconfigFiles: string[]) {\n this.logger.clearStatusLine();\n const ok = await yesno({\n question: `${chalk.underline('The following paths will be deleted:')}\n${tsconfigFiles.join('\\n')}\n${chalk.bold('Do you want to continue? [yes(y)/no(n)]')}`,\n });\n if (!ok) {\n throw new PromptCanceled();\n }\n }\n\n private async deleteFiles(tsconfigFiles: string[]) {\n await Promise.all(tsconfigFiles.map((f) => fs.remove(f)));\n }\n\n private async writeFiles(tsconfigPathsPerEnvs: TsconfigPathsPerEnv[]) {\n await Promise.all(\n tsconfigPathsPerEnvs.map((pathsPerEnv) => {\n return Promise.all(\n pathsPerEnv.paths.map((p) => fs.writeFile(path.join(p, 'tsconfig.json'), pathsPerEnv.tsconfig))\n );\n })\n );\n }\n\n private getPathsPerEnv(envsExecutionContext: ExecutionContext[], { dedupe }: TsconfigWriterOptions): PathsPerEnv[] {\n const pathsPerEnvs = envsExecutionContext.map((envExecution) => {\n return {\n id: envExecution.id,\n env: envExecution.env,\n paths: envExecution.components.map((c) => this.workspace.componentDir(c.id, undefined, { relative: true })),\n };\n });\n if (!dedupe) {\n return pathsPerEnvs.map(({ id, env, paths }) => ({ ids: [id], env, paths }));\n }\n\n const envsWithFiles = envsExecutionContext.map((e) => ({\n id: e.id,\n file: e.env.getTsConfig(),\n }));\n const envsPerFile: { envIds: string[]; fileContent: Record<string, any> }[] = [];\n const isEnvProcessed = (envId: string) =>\n envsPerFile\n .map((e) => e.envIds)\n .flat()\n .find((e) => e === envId);\n envsWithFiles.forEach(({ id, file }) => {\n if (isEnvProcessed(id)) return;\n const foundSameFile = envsWithFiles.filter((e) => isEqual(file, e.file));\n envsPerFile.push({ envIds: foundSameFile.map((f) => f.id), fileContent: file });\n });\n const pathsPerEnvIds = envsPerFile.map((e) => ({\n ids: e.envIds,\n paths: compact(e.envIds.map((envId) => pathsPerEnvs.find((p) => p.id === envId)?.paths).flat()),\n }));\n // const pathsPerEnvIds = pathsPerEnvs.map((p) => ({ ids: p.ids, paths: p.paths }));\n const envsPerDedupedPaths = dedupePaths(pathsPerEnvIds);\n const dedupedPathsPerEnvs: PathsPerEnv[] = envsPerDedupedPaths.map((envWithDedupePaths) => {\n const found = pathsPerEnvs.find((p) => envWithDedupePaths.ids.includes(p.id));\n if (!found) throw new Error(`dedupedPathsPerEnvs, unable to find ${envWithDedupePaths.ids}`);\n return {\n env: found.env,\n ids: envWithDedupePaths.ids,\n paths: envWithDedupePaths.paths,\n };\n });\n\n return dedupedPathsPerEnvs;\n }\n}\n\ntype PathsPerEnvIds = { ids: string[]; paths: string[] };\n\nasync function filterDirsWithTsconfigFile(dirs: string[]): Promise<string[]> {\n const dirsWithTsconfig = await Promise.all(\n dirs.map(async (dir) => {\n const hasTsconfig = await fs.pathExists(path.join(dir, 'tsconfig.json'));\n return hasTsconfig ? dir : undefined;\n })\n );\n return compact(dirsWithTsconfig);\n}\n\nfunction getAllPossibleDirsFromPaths(paths: PathLinuxRelative[]): PathLinuxRelative[] {\n const dirs = paths.map((p) => getAllParentsDirOfPath(p)).flat();\n dirs.push('.'); // add the root dir\n return uniq(dirs);\n}\n\nfunction getAllParentsDirOfPath(p: PathLinuxRelative): PathLinuxRelative[] {\n const all: string[] = [];\n let current = p;\n while (current !== '.') {\n all.push(current);\n current = path.dirname(current);\n }\n return all;\n}\n\n/**\n * easier to understand by an example:\n * input:\n * [\n * { id: react, paths: [ui/button, ui/form] },\n * { id: aspect, paths: [p/a1, p/a2] },\n * { id: node, paths: [p/n1] },\n * ]\n *\n * output:\n * [\n * { id: react, paths: [ui] },\n * { id: aspect, paths: [p] },\n * { id: node, paths: [p/n1] },\n * ]\n *\n * the goal is to minimize the amount of files to write per env if possible.\n * when multiple components of the same env share a root-dir, then, it's enough to write a file in that shared dir.\n * if in a shared-dir, some components using env1 and some env2, it finds the env that has the max number of\n * components, this env will be optimized. other components, will have the files written inside their dirs.\n */\nexport function dedupePaths(pathsPerEnvId: PathsPerEnvIds[]): PathsPerEnvIds[] {\n const rootDir = '.';\n const individualPathPerConcatenatedEnvIds: { [path: string]: string } = pathsPerEnvId.reduce((acc, current) => {\n current.paths.forEach((p) => {\n acc[p] = current.ids.join(',');\n });\n return acc;\n }, {});\n const allPaths = Object.keys(individualPathPerConcatenatedEnvIds);\n const allPossibleDirs = getAllPossibleDirsFromPaths(allPaths);\n\n const allPathsPerEnvId: { [path: string]: string | null } = {}; // null when parent-dir has same amount of comps per env.\n\n const calculateBestEnvForDir = (dir: string) => {\n if (individualPathPerConcatenatedEnvIds[dir]) {\n // it's the component dir, so it's the best env\n allPathsPerEnvId[dir] = individualPathPerConcatenatedEnvIds[dir];\n return;\n }\n const allPathsShareSameDir = dir === rootDir ? allPaths : allPaths.filter((p) => p.startsWith(`${dir}/`));\n const countPerEnv: { [env: string]: number } = {};\n allPathsShareSameDir.forEach((p) => {\n const envIdStr = individualPathPerConcatenatedEnvIds[p];\n if (countPerEnv[envIdStr]) countPerEnv[envIdStr] += 1;\n else countPerEnv[envIdStr] = 1;\n });\n const max = Math.max(...Object.values(countPerEnv));\n const envWithMax = Object.keys(countPerEnv).filter((env) => countPerEnv[env] === max);\n if (!envWithMax.length) throw new Error(`must be at least one env related to path \"${dir}\"`);\n if (envWithMax.length > 1) allPathsPerEnvId[dir] = null;\n else allPathsPerEnvId[dir] = envWithMax[0];\n };\n\n allPossibleDirs.forEach((dirPath) => {\n calculateBestEnvForDir(dirPath);\n });\n\n // this is the actual deduping. if found a shorter path with the same env, then no need for this path.\n // in other words, return only the paths that their parent is null or has a different env.\n const dedupedPathsPerEnvIds = Object.keys(allPathsPerEnvId).reduce((acc, current) => {\n if (allPathsPerEnvId[current] && allPathsPerEnvId[path.dirname(current)] !== allPathsPerEnvId[current]) {\n acc[current] = allPathsPerEnvId[current];\n }\n\n return acc;\n }, {});\n // rootDir parent is always rootDir, so leave it as is.\n if (allPathsPerEnvId[rootDir]) dedupedPathsPerEnvIds[rootDir] = allPathsPerEnvId[rootDir];\n\n const envIdsPerDedupedPaths = invertBy(dedupedPathsPerEnvIds);\n\n const dedupedPaths = Object.keys(envIdsPerDedupedPaths).map((envIdStr) => ({\n ids: envIdStr.split(','),\n paths: envIdsPerDedupedPaths[envIdStr],\n }));\n return dedupedPaths;\n}\n"],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@teambit/typescript",
|
|
3
|
-
"version": "1.0.
|
|
3
|
+
"version": "1.0.259",
|
|
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": "1.0.
|
|
9
|
+
"version": "1.0.259"
|
|
10
10
|
},
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"lodash": "4.17.21",
|
|
@@ -19,24 +19,24 @@
|
|
|
19
19
|
"get-tsconfig": "4.2.0",
|
|
20
20
|
"@teambit/typescript.typescript-compiler": "2.0.22",
|
|
21
21
|
"@teambit/harmony": "0.4.6",
|
|
22
|
-
"@teambit/compiler": "1.0.
|
|
22
|
+
"@teambit/compiler": "1.0.259",
|
|
23
23
|
"@teambit/typescript.modules.ts-config-mutator": "0.0.83",
|
|
24
|
-
"@teambit/builder": "1.0.
|
|
25
|
-
"@teambit/isolator": "1.0.
|
|
26
|
-
"@teambit/component": "1.0.
|
|
27
|
-
"@teambit/dependency-resolver": "1.0.
|
|
28
|
-
"@teambit/formatter": "1.0.
|
|
24
|
+
"@teambit/builder": "1.0.259",
|
|
25
|
+
"@teambit/isolator": "1.0.259",
|
|
26
|
+
"@teambit/component": "1.0.259",
|
|
27
|
+
"@teambit/dependency-resolver": "1.0.259",
|
|
28
|
+
"@teambit/formatter": "1.0.259",
|
|
29
29
|
"@teambit/semantics.entities.semantic-schema": "0.0.69",
|
|
30
30
|
"@teambit/ts-server": "0.0.56",
|
|
31
|
-
"@teambit/aspect-loader": "1.0.
|
|
32
|
-
"@teambit/envs": "1.0.
|
|
33
|
-
"@teambit/logger": "0.0.
|
|
34
|
-
"@teambit/workspace": "1.0.
|
|
35
|
-
"@teambit/schema": "1.0.
|
|
36
|
-
"@teambit/scope": "1.0.
|
|
37
|
-
"@teambit/cli": "0.0.
|
|
38
|
-
"@teambit/pkg": "1.0.
|
|
39
|
-
"@teambit/watcher": "1.0.
|
|
31
|
+
"@teambit/aspect-loader": "1.0.259",
|
|
32
|
+
"@teambit/envs": "1.0.259",
|
|
33
|
+
"@teambit/logger": "0.0.956",
|
|
34
|
+
"@teambit/workspace": "1.0.259",
|
|
35
|
+
"@teambit/schema": "1.0.259",
|
|
36
|
+
"@teambit/scope": "1.0.259",
|
|
37
|
+
"@teambit/cli": "0.0.863",
|
|
38
|
+
"@teambit/pkg": "1.0.259",
|
|
39
|
+
"@teambit/watcher": "1.0.259"
|
|
40
40
|
},
|
|
41
41
|
"devDependencies": {
|
|
42
42
|
"@types/chai": "4.2.15",
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import ts from 'typescript';
|
|
2
|
-
import { SourceFileTransformer } from '
|
|
2
|
+
import { SourceFileTransformer } from './index';
|
|
3
3
|
import { replaceName } from './replaceName';
|
|
4
4
|
|
|
5
5
|
export const expressionStatementTransformer: SourceFileTransformer = (mapping: Record<string, string>) => {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import ts from 'typescript';
|
|
2
|
-
import { SourceFileTransformer } from '
|
|
2
|
+
import { SourceFileTransformer } from './index';
|
|
3
3
|
import { replaceName } from './replaceName';
|
|
4
4
|
|
|
5
5
|
export const functionNamesTransformer: SourceFileTransformer = (mapping: Record<string, string>) => {
|
|
@@ -1,7 +0,0 @@
|
|
|
1
|
-
import * as compositions_0 from '/Users/giladshoham/Library/Caches/Bit/capsules/root/b5ea46ec3/teambit.typescript_typescript@1.0.258/dist/typescript.composition.js';
|
|
2
|
-
import * as overview_0 from '/Users/giladshoham/Library/Caches/Bit/capsules/root/b5ea46ec3/teambit.typescript_typescript@1.0.258/dist/typescript.docs.mdx';
|
|
3
|
-
|
|
4
|
-
export const compositions = [compositions_0];
|
|
5
|
-
export const overview = [overview_0];
|
|
6
|
-
|
|
7
|
-
export const compositions_metadata = {"compositions":[{"displayName":"Logo","identifier":"Logo"}]};
|