@teambit/typescript 1.0.667 → 1.0.668
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/cmds/check-types.cmd.ts +5 -4
- package/dist/cmds/check-types.cmd.d.ts +5 -5
- package/dist/cmds/check-types.cmd.js.map +1 -1
- package/dist/exceptions/transformer-not-found.d.ts +3 -3
- package/dist/exceptions/transformer-not-found.js.map +1 -1
- package/dist/extractor-options.d.ts +1 -1
- package/dist/extractor-options.js.map +1 -1
- package/dist/identifier-list.d.ts +1 -1
- package/dist/identifier-list.js.map +1 -1
- package/dist/{preview-1753809186996.js → preview-1753833698619.js} +2 -2
- package/dist/remove-types-task.d.ts +1 -1
- package/dist/remove-types-task.js.map +1 -1
- package/dist/schema-extractor-context.d.ts +10 -8
- package/dist/schema-extractor-context.js.map +1 -1
- package/dist/schema-transformer.d.ts +4 -4
- package/dist/schema-transformer.js.map +1 -1
- package/dist/schema-transformer.plugin.d.ts +2 -2
- package/dist/schema-transformer.plugin.js.map +1 -1
- 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/sourceFileTransformers/index.d.ts +1 -1
- package/dist/sourceFileTransformers/index.js.map +1 -1
- package/dist/sourceFileTransformers/transform.d.ts +1 -1
- package/dist/sourceFileTransformers/transform.js.map +1 -1
- package/dist/transformers/array-literal-expression.d.ts +4 -4
- package/dist/transformers/array-literal-expression.js.map +1 -1
- package/dist/transformers/array-type.d.ts +4 -4
- package/dist/transformers/array-type.js.map +1 -1
- package/dist/transformers/binding-element.d.ts +3 -3
- package/dist/transformers/binding-element.js.map +1 -1
- package/dist/transformers/class-declaration.d.ts +3 -3
- package/dist/transformers/class-declaration.js.map +1 -1
- package/dist/transformers/conditional-type.d.ts +4 -4
- package/dist/transformers/conditional-type.js.map +1 -1
- package/dist/transformers/constructor.d.ts +4 -4
- package/dist/transformers/constructor.js.map +1 -1
- package/dist/transformers/decorator.d.ts +4 -4
- package/dist/transformers/decorator.js.map +1 -1
- package/dist/transformers/enum-declaration.d.ts +3 -3
- package/dist/transformers/enum-declaration.js.map +1 -1
- package/dist/transformers/export-assignment.d.ts +4 -4
- package/dist/transformers/export-assignment.js.map +1 -1
- package/dist/transformers/export-declaration.d.ts +4 -4
- package/dist/transformers/export-declaration.js.map +1 -1
- package/dist/transformers/expression-statement.d.ts +4 -4
- package/dist/transformers/expression-statement.js.map +1 -1
- package/dist/transformers/function-like.d.ts +4 -4
- package/dist/transformers/function-like.js.map +1 -1
- package/dist/transformers/get-accessor.d.ts +4 -4
- package/dist/transformers/get-accessor.js.map +1 -1
- package/dist/transformers/import-declaration.d.ts +3 -3
- package/dist/transformers/import-declaration.js.map +1 -1
- package/dist/transformers/index-signature.d.ts +4 -4
- package/dist/transformers/index-signature.js.map +1 -1
- package/dist/transformers/indexed-access-type.d.ts +4 -4
- package/dist/transformers/indexed-access-type.js.map +1 -1
- package/dist/transformers/interface-declaration.d.ts +3 -3
- package/dist/transformers/interface-declaration.js.map +1 -1
- package/dist/transformers/intersection-type.d.ts +4 -4
- package/dist/transformers/intersection-type.js.map +1 -1
- package/dist/transformers/keyword-type.d.ts +4 -4
- package/dist/transformers/keyword-type.js.map +1 -1
- package/dist/transformers/literal-type.d.ts +4 -4
- package/dist/transformers/literal-type.js.map +1 -1
- package/dist/transformers/literal-value.d.ts +5 -4
- package/dist/transformers/literal-value.js.map +1 -1
- package/dist/transformers/module-declaration.d.ts +4 -4
- package/dist/transformers/module-declaration.js.map +1 -1
- package/dist/transformers/named-tuple.d.ts +4 -4
- package/dist/transformers/named-tuple.js.map +1 -1
- package/dist/transformers/object-literal-expression.d.ts +2 -2
- package/dist/transformers/object-literal-expression.js.map +1 -1
- package/dist/transformers/parameter.d.ts +6 -5
- package/dist/transformers/parameter.js.map +1 -1
- package/dist/transformers/parenthesized-type.d.ts +4 -4
- package/dist/transformers/parenthesized-type.js.map +1 -1
- package/dist/transformers/property-assignment.d.ts +4 -4
- package/dist/transformers/property-assignment.js.map +1 -1
- package/dist/transformers/property-declaration.d.ts +4 -4
- package/dist/transformers/property-declaration.js.map +1 -1
- package/dist/transformers/set-accessor.d.ts +4 -4
- package/dist/transformers/set-accessor.js.map +1 -1
- package/dist/transformers/source-file-transformer.d.ts +4 -4
- package/dist/transformers/source-file-transformer.js.map +1 -1
- package/dist/transformers/template-literal-type-span.d.ts +4 -4
- package/dist/transformers/template-literal-type-span.js.map +1 -1
- package/dist/transformers/template-literal-type.d.ts +4 -4
- package/dist/transformers/template-literal-type.js.map +1 -1
- package/dist/transformers/this-type.d.ts +4 -4
- package/dist/transformers/this-type.js.map +1 -1
- package/dist/transformers/tuple-type.d.ts +4 -4
- package/dist/transformers/tuple-type.js.map +1 -1
- package/dist/transformers/type-alias.d.ts +3 -3
- package/dist/transformers/type-alias.js.map +1 -1
- package/dist/transformers/type-literal.d.ts +4 -4
- package/dist/transformers/type-literal.js.map +1 -1
- package/dist/transformers/type-operator.d.ts +5 -4
- package/dist/transformers/type-operator.js.map +1 -1
- package/dist/transformers/type-predicate.d.ts +4 -4
- package/dist/transformers/type-predicate.js.map +1 -1
- package/dist/transformers/type-query.d.ts +4 -4
- package/dist/transformers/type-query.js.map +1 -1
- package/dist/transformers/type-reference.d.ts +4 -4
- package/dist/transformers/type-reference.js.map +1 -1
- package/dist/transformers/union-type.d.ts +4 -4
- package/dist/transformers/union-type.js.map +1 -1
- package/dist/transformers/utils/jsdoc-to-doc-schema.d.ts +3 -3
- package/dist/transformers/utils/jsdoc-to-doc-schema.js.map +1 -1
- package/dist/transformers/variable-declaration.d.ts +4 -4
- package/dist/transformers/variable-declaration.js.map +1 -1
- package/dist/transformers/variable-statement.d.ts +4 -4
- package/dist/transformers/variable-statement.js.map +1 -1
- package/dist/typescript.extractor.d.ts +15 -14
- package/dist/typescript.extractor.js.map +1 -1
- package/dist/typescript.main.runtime.d.ts +16 -15
- package/dist/typescript.main.runtime.js.map +1 -1
- package/dist/typescript.parser.d.ts +4 -3
- package/dist/typescript.parser.js.map +1 -1
- package/exceptions/transformer-not-found.ts +4 -3
- package/package.json +19 -19
- 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/sourceFileTransformers/index.ts +1 -1
- package/sourceFileTransformers/transform.ts +1 -1
- package/transformers/array-literal-expression.ts +6 -8
- package/transformers/array-type.ts +5 -4
- package/transformers/binding-element.ts +4 -3
- package/transformers/class-declaration.ts +4 -3
- package/transformers/conditional-type.ts +5 -4
- package/transformers/constructor.ts +7 -10
- package/transformers/decorator.ts +6 -4
- package/transformers/enum-declaration.ts +4 -3
- package/transformers/export-assignment.ts +6 -4
- package/transformers/export-declaration.ts +5 -5
- package/transformers/expression-statement.ts +5 -4
- package/transformers/function-like.ts +6 -4
- package/transformers/get-accessor.ts +5 -4
- package/transformers/import-declaration.ts +4 -3
- package/transformers/index-signature.ts +7 -5
- package/transformers/indexed-access-type.ts +5 -4
- package/transformers/interface-declaration.ts +5 -3
- package/transformers/intersection-type.ts +5 -4
- package/transformers/keyword-type.ts +5 -4
- package/transformers/literal-type.ts +5 -4
- package/transformers/literal-value.ts +6 -4
- package/transformers/module-declaration.ts +5 -4
- package/transformers/named-tuple.ts +5 -4
- package/transformers/object-literal-expression.ts +3 -2
- package/transformers/parameter.ts +6 -13
- package/transformers/parenthesized-type.ts +5 -4
- package/transformers/property-assignment.ts +5 -4
- package/transformers/property-declaration.ts +5 -4
- package/transformers/set-accessor.ts +7 -5
- package/transformers/source-file-transformer.ts +5 -4
- package/transformers/template-literal-type-span.ts +5 -4
- package/transformers/template-literal-type.ts +7 -5
- package/transformers/this-type.ts +5 -4
- package/transformers/tuple-type.ts +5 -4
- package/transformers/type-alias.ts +4 -3
- package/transformers/type-literal.ts +5 -4
- package/transformers/type-operator.ts +5 -4
- package/transformers/type-predicate.ts +5 -4
- package/transformers/type-query.ts +5 -4
- package/transformers/type-reference.ts +5 -4
- package/transformers/union-type.ts +5 -4
- package/transformers/utils/jsdoc-to-doc-schema.ts +4 -11
- package/transformers/variable-declaration.ts +5 -5
- package/transformers/variable-statement.ts +6 -4
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { SourceFileTransformer } from './index';
|
|
1
|
+
import type { SourceFileTransformer } from './index';
|
|
2
2
|
export declare const expressionStatementTransformer: SourceFileTransformer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_typescript","data","_interopRequireDefault","require","_replaceName","e","__esModule","default","expressionStatementTransformer","mapping","context","replaceIdentifierText","identifier","ts","isIdentifier","oldName","getText","newName","replaceName","factory","createIdentifier","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 {\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,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;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,MAAM;QACN,OAAOA,UAAU;MACnB;IACF,CAAC;IAED,MAAMS,KAAiB,GAAIC,IAAI,IAAK;MAClC,IAAIT,qBAAE,CAACU,qBAAqB,CAACD,IAAI,CAAC,EAAE;QAClC,OAAOT,qBAAE,CAACM,OAAO,CAACK,yBAAyB,CAACF,IAAI,EAAET,qBAAE,CAACY,SAAS,CAACH,IAAI,CAACI,UAAU,EAAEL,KAAK,CAAkB,CAAC;MAC1G;MAEA,IAAIR,qBAAE,CAACc,0BAA0B,CAACL,IAAI,CAAC,EAAE;QACvC,IAAIL,OAAO,GAAGK,IAAI,CAACM,IAAI;QACvB,IAAIf,qBAAE,CAACC,YAAY,CAACQ,IAAI,CAACM,IAAI,CAAC,EAAE;UAC9BX,OAAO,GAAGN,qBAAqB,CAACW,IAAI,CAACM,IAAI,CAAC;QAC5C;QACA,OAAOf,qBAAE,CAACM,OAAO,CAACU,8BAA8B,CAC9CP,IAAI,EACJT,qBAAE,CAACY,SAAS,CAACH,IAAI,CAACI,UAAU,EAAEL,KAAK,CAAC,EACpCJ,OACF,CAAC;MACH;MAEA,IAAIJ,qBAAE,CAACC,YAAY,CAACQ,IAAI,CAAC,EAAE;QACzB,OAAOX,qBAAqB,CAACW,IAAI,CAAC;MACpC;MAEA,OAAOT,qBAAE,CAACiB,cAAc,CAACR,IAAI,EAAED,KAAK,EAAEX,OAAO,CAAC;IAChD,CAAC;IAED,OAAQY,IAAI,IAAKT,qBAAE,CAACY,SAAS,CAACH,IAAI,EAAED,KAAK,CAAkB;EAC7D,CAAC;AACH,CAAC;AAACU,OAAA,CAAAvB,8BAAA,GAAAA,8BAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_typescript","data","_interopRequireDefault","require","_replaceName","e","__esModule","default","expressionStatementTransformer","mapping","context","replaceIdentifierText","identifier","ts","isIdentifier","oldName","getText","newName","replaceName","factory","createIdentifier","visit","node","isExpressionStatement","updateExpressionStatement","visitNode","expression","isPropertyAccessExpression","name","updatePropertyAccessExpression","visitEachChild","exports"],"sources":["expression-statement.ts"],"sourcesContent":["import ts from 'typescript';\nimport type { 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 {\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,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;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,MAAM;QACN,OAAOA,UAAU;MACnB;IACF,CAAC;IAED,MAAMS,KAAiB,GAAIC,IAAI,IAAK;MAClC,IAAIT,qBAAE,CAACU,qBAAqB,CAACD,IAAI,CAAC,EAAE;QAClC,OAAOT,qBAAE,CAACM,OAAO,CAACK,yBAAyB,CAACF,IAAI,EAAET,qBAAE,CAACY,SAAS,CAACH,IAAI,CAACI,UAAU,EAAEL,KAAK,CAAkB,CAAC;MAC1G;MAEA,IAAIR,qBAAE,CAACc,0BAA0B,CAACL,IAAI,CAAC,EAAE;QACvC,IAAIL,OAAO,GAAGK,IAAI,CAACM,IAAI;QACvB,IAAIf,qBAAE,CAACC,YAAY,CAACQ,IAAI,CAACM,IAAI,CAAC,EAAE;UAC9BX,OAAO,GAAGN,qBAAqB,CAACW,IAAI,CAACM,IAAI,CAAC;QAC5C;QACA,OAAOf,qBAAE,CAACM,OAAO,CAACU,8BAA8B,CAC9CP,IAAI,EACJT,qBAAE,CAACY,SAAS,CAACH,IAAI,CAACI,UAAU,EAAEL,KAAK,CAAC,EACpCJ,OACF,CAAC;MACH;MAEA,IAAIJ,qBAAE,CAACC,YAAY,CAACQ,IAAI,CAAC,EAAE;QACzB,OAAOX,qBAAqB,CAACW,IAAI,CAAC;MACpC;MAEA,OAAOT,qBAAE,CAACiB,cAAc,CAACR,IAAI,EAAED,KAAK,EAAEX,OAAO,CAAC;IAChD,CAAC;IAED,OAAQY,IAAI,IAAKT,qBAAE,CAACY,SAAS,CAACH,IAAI,EAAED,KAAK,CAAkB;EAC7D,CAAC;AACH,CAAC;AAACU,OAAA,CAAAvB,8BAAA,GAAAA,8BAAA","ignoreList":[]}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { SourceFileTransformer } from './index';
|
|
1
|
+
import type { SourceFileTransformer } from './index';
|
|
2
2
|
export declare const functionNamesTransformer: SourceFileTransformer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_typescript","data","_interopRequireDefault","require","_replaceName","e","__esModule","default","functionNamesTransformer","mapping","context","updateTypeReference","node","ts","isTypeReferenceNode","typeName","getText","getSourceFile","newTypeName","replaceName","factory","updateTypeReferenceNode","createIdentifier","typeArguments","visitEachChild","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 {\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","e","__esModule","default","functionNamesTransformer","mapping","context","updateTypeReference","node","ts","isTypeReferenceNode","typeName","getText","getSourceFile","newTypeName","replaceName","factory","updateTypeReferenceNode","createIdentifier","typeArguments","visitEachChild","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 type { 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 {\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 './index';
|
|
1
|
+
import type { SourceFileTransformer } from './index';
|
|
2
2
|
export declare const importTransformer: SourceFileTransformer;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_typescript","data","_interopRequireDefault","require","e","__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":[]}
|
|
1
|
+
{"version":3,"names":["_typescript","data","_interopRequireDefault","require","e","__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 type { 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":[]}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import ts from 'typescript';
|
|
1
|
+
import type ts from 'typescript';
|
|
2
2
|
export type SourceFileTransformer = (mapping: Record<string, string>) => ts.TransformerFactory<ts.SourceFile>;
|
|
3
3
|
export { classNamesTransformer } from './class';
|
|
4
4
|
export { interfaceNamesTransformer } from './interface';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_class","data","require","_interface","_variable","_function","_typeAlias","_import","_expressionStatement","_export","_transform","_typeReference"],"sources":["index.ts"],"sourcesContent":["import ts from 'typescript';\n\nexport type SourceFileTransformer = (mapping: Record<string, string>) => ts.TransformerFactory<ts.SourceFile>;\n\nexport { classNamesTransformer } from './class';\nexport { interfaceNamesTransformer } from './interface';\nexport { variableNamesTransformer } from './variable';\nexport { functionNamesTransformer } from './function';\nexport { typeAliasNamesTransformer } from './typeAlias';\nexport { importTransformer } from './import';\nexport { expressionStatementTransformer } from './expression-statement';\nexport { exportTransformer } from './export';\nexport { transformSourceFile } from './transform';\nexport { typeReferenceTransformer } from './type-reference';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,WAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,UAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,UAAA;EAAA,MAAAH,IAAA,GAAAC,OAAA;EAAAE,SAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,UAAA;EAAA,MAAAJ,IAAA,GAAAC,OAAA;EAAAG,SAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAK,WAAA;EAAA,MAAAL,IAAA,GAAAC,OAAA;EAAAI,UAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAM,QAAA;EAAA,MAAAN,IAAA,GAAAC,OAAA;EAAAK,OAAA,YAAAA,CAAA;IAAA,OAAAN,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAO,qBAAA;EAAA,MAAAP,IAAA,GAAAC,OAAA;EAAAM,oBAAA,YAAAA,CAAA;IAAA,OAAAP,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAQ,QAAA;EAAA,MAAAR,IAAA,GAAAC,OAAA;EAAAO,OAAA,YAAAA,CAAA;IAAA,OAAAR,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAS,WAAA;EAAA,MAAAT,IAAA,GAAAC,OAAA;EAAAQ,UAAA,YAAAA,CAAA;IAAA,OAAAT,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAU,eAAA;EAAA,MAAAV,IAAA,GAAAC,OAAA;EAAAS,cAAA,YAAAA,CAAA;IAAA,OAAAV,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_class","data","require","_interface","_variable","_function","_typeAlias","_import","_expressionStatement","_export","_transform","_typeReference"],"sources":["index.ts"],"sourcesContent":["import type ts from 'typescript';\n\nexport type SourceFileTransformer = (mapping: Record<string, string>) => ts.TransformerFactory<ts.SourceFile>;\n\nexport { classNamesTransformer } from './class';\nexport { interfaceNamesTransformer } from './interface';\nexport { variableNamesTransformer } from './variable';\nexport { functionNamesTransformer } from './function';\nexport { typeAliasNamesTransformer } from './typeAlias';\nexport { importTransformer } from './import';\nexport { expressionStatementTransformer } from './expression-statement';\nexport { exportTransformer } from './export';\nexport { transformSourceFile } from './transform';\nexport { typeReferenceTransformer } from './type-reference';\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,SAAAA,OAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,MAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,WAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,UAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,UAAA;EAAA,MAAAH,IAAA,GAAAC,OAAA;EAAAE,SAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,UAAA;EAAA,MAAAJ,IAAA,GAAAC,OAAA;EAAAG,SAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAK,WAAA;EAAA,MAAAL,IAAA,GAAAC,OAAA;EAAAI,UAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAM,QAAA;EAAA,MAAAN,IAAA,GAAAC,OAAA;EAAAK,OAAA,YAAAA,CAAA;IAAA,OAAAN,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAO,qBAAA;EAAA,MAAAP,IAAA,GAAAC,OAAA;EAAAM,oBAAA,YAAAA,CAAA;IAAA,OAAAP,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAQ,QAAA;EAAA,MAAAR,IAAA,GAAAC,OAAA;EAAAO,OAAA,YAAAA,CAAA;IAAA,OAAAR,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAS,WAAA;EAAA,MAAAT,IAAA,GAAAC,OAAA;EAAAQ,UAAA,YAAAA,CAAA;IAAA,OAAAT,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAU,eAAA;EAAA,MAAAV,IAAA,GAAAC,OAAA;EAAAS,cAAA,YAAAA,CAAA;IAAA,OAAAV,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_typescript","data","_interopRequireDefault","require","path","_interopRequireWildcard","_emptyLineEncoder","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","transformSourceFile","sourceFilePath","sourceFileContent","transformers","formatter","updates","ext","extname","compatibleExts","includes","transformed","entries","forEach","oldStr","newStr","oldStringRegex","RegExp","replace","encoder","EmptyLineEncoder","encode","sourceFile","ts","createSourceFile","ScriptTarget","Latest","ScriptKind","TSX","transformedResult","transform","transformedSourceFile","printer","createPrinter","removeComments","transformedSourceFileStr","printFile","decode","emptyLineComment","emptyLineMarker","regex","formattedSourceFileStr","formatSnippet"],"sources":["transform.ts"],"sourcesContent":["import { Formatter } from '@teambit/formatter';\nimport ts from 'typescript';\nimport * as path from 'path';\nimport { EmptyLineEncoder } from './empty-line-encoder';\n/**\n * Transforms a TypeScript source file using the provided transformer.\n *\n * @param sourceFilePath Path to the TypeScript source file.\n * @param sourceFileContent The content of the source file.\n * @param transformers The transformers to be applied on the source file.\n * @param formatter (Optional) An optional formatter to format the transformed code. If no formatter is provided, the function returns the transformed source file as a string without any formatting.\n * @returns A promise that resolves to the transformed source file as a string.\n */\nexport async function transformSourceFile(\n sourceFilePath: string,\n sourceFileContent: string,\n transformers: ts.TransformerFactory<ts.SourceFile>[],\n formatter?: Formatter,\n updates?: Record<string, string>\n): Promise<string> {\n const ext = path.extname(sourceFilePath);\n const compatibleExts = ['.ts', '.tsx', '.js', '.jsx'];\n if (!compatibleExts.includes(ext)) {\n if (!updates) return sourceFileContent;\n let transformed = sourceFileContent;\n Object.entries(updates).forEach(([oldStr, newStr]) => {\n const oldStringRegex = new RegExp(oldStr, 'g');\n transformed = transformed.replace(oldStringRegex, newStr);\n });\n return transformed;\n }\n\n const encoder = new EmptyLineEncoder();\n sourceFileContent = encoder.encode(sourceFileContent);\n\n const sourceFile = ts.createSourceFile(\n sourceFilePath,\n sourceFileContent,\n ts.ScriptTarget.Latest,\n true,\n ts.ScriptKind.TSX\n );\n\n const transformedResult: ts.TransformationResult<ts.SourceFile> = ts.transform<ts.SourceFile>(\n sourceFile,\n transformers\n );\n const transformedSourceFile: ts.SourceFile = transformedResult.transformed[0] as ts.SourceFile;\n\n const printer: ts.Printer = ts.createPrinter({\n removeComments: false,\n });\n\n let transformedSourceFileStr = printer.printFile(transformedSourceFile);\n transformedSourceFileStr = encoder.decode(transformedSourceFileStr);\n // Remove trailing empty line markers\n const emptyLineComment = `\\\\s*\\\\/\\\\*${encoder.emptyLineMarker}\\\\*\\\\/\\\\s*$`;\n const regex = new RegExp(emptyLineComment, 'g');\n transformedSourceFileStr = transformedSourceFileStr.replace(regex, '');\n\n try {\n const formattedSourceFileStr = await formatter?.formatSnippet(transformedSourceFileStr, sourceFilePath);\n return formattedSourceFileStr || transformedSourceFileStr;\n } catch {\n // We can ignore if the formatter fails\n // TODO: log the error\n // ignore\n }\n return transformedSourceFileStr;\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_typescript","data","_interopRequireDefault","require","path","_interopRequireWildcard","_emptyLineEncoder","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor","transformSourceFile","sourceFilePath","sourceFileContent","transformers","formatter","updates","ext","extname","compatibleExts","includes","transformed","entries","forEach","oldStr","newStr","oldStringRegex","RegExp","replace","encoder","EmptyLineEncoder","encode","sourceFile","ts","createSourceFile","ScriptTarget","Latest","ScriptKind","TSX","transformedResult","transform","transformedSourceFile","printer","createPrinter","removeComments","transformedSourceFileStr","printFile","decode","emptyLineComment","emptyLineMarker","regex","formattedSourceFileStr","formatSnippet"],"sources":["transform.ts"],"sourcesContent":["import type { Formatter } from '@teambit/formatter';\nimport ts from 'typescript';\nimport * as path from 'path';\nimport { EmptyLineEncoder } from './empty-line-encoder';\n/**\n * Transforms a TypeScript source file using the provided transformer.\n *\n * @param sourceFilePath Path to the TypeScript source file.\n * @param sourceFileContent The content of the source file.\n * @param transformers The transformers to be applied on the source file.\n * @param formatter (Optional) An optional formatter to format the transformed code. If no formatter is provided, the function returns the transformed source file as a string without any formatting.\n * @returns A promise that resolves to the transformed source file as a string.\n */\nexport async function transformSourceFile(\n sourceFilePath: string,\n sourceFileContent: string,\n transformers: ts.TransformerFactory<ts.SourceFile>[],\n formatter?: Formatter,\n updates?: Record<string, string>\n): Promise<string> {\n const ext = path.extname(sourceFilePath);\n const compatibleExts = ['.ts', '.tsx', '.js', '.jsx'];\n if (!compatibleExts.includes(ext)) {\n if (!updates) return sourceFileContent;\n let transformed = sourceFileContent;\n Object.entries(updates).forEach(([oldStr, newStr]) => {\n const oldStringRegex = new RegExp(oldStr, 'g');\n transformed = transformed.replace(oldStringRegex, newStr);\n });\n return transformed;\n }\n\n const encoder = new EmptyLineEncoder();\n sourceFileContent = encoder.encode(sourceFileContent);\n\n const sourceFile = ts.createSourceFile(\n sourceFilePath,\n sourceFileContent,\n ts.ScriptTarget.Latest,\n true,\n ts.ScriptKind.TSX\n );\n\n const transformedResult: ts.TransformationResult<ts.SourceFile> = ts.transform<ts.SourceFile>(\n sourceFile,\n transformers\n );\n const transformedSourceFile: ts.SourceFile = transformedResult.transformed[0] as ts.SourceFile;\n\n const printer: ts.Printer = ts.createPrinter({\n removeComments: false,\n });\n\n let transformedSourceFileStr = printer.printFile(transformedSourceFile);\n transformedSourceFileStr = encoder.decode(transformedSourceFileStr);\n // Remove trailing empty line markers\n const emptyLineComment = `\\\\s*\\\\/\\\\*${encoder.emptyLineMarker}\\\\*\\\\/\\\\s*$`;\n const regex = new RegExp(emptyLineComment, 'g');\n transformedSourceFileStr = transformedSourceFileStr.replace(regex, '');\n\n try {\n const formattedSourceFileStr = await formatter?.formatSnippet(transformedSourceFileStr, sourceFilePath);\n return formattedSourceFileStr || transformedSourceFileStr;\n } catch {\n // We can ignore if the formatter fails\n // TODO: log the error\n // ignore\n }\n return transformedSourceFileStr;\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { SchemaNode } from '@teambit/semantics.entities.semantic-schema';
|
|
2
|
-
import { ArrayLiteralExpression, Node } from 'typescript';
|
|
1
|
+
import type { SchemaNode } from '@teambit/semantics.entities.semantic-schema';
|
|
2
|
+
import type { ArrayLiteralExpression, Node } from 'typescript';
|
|
3
3
|
import type { SchemaExtractorContext } from '../schema-extractor-context';
|
|
4
|
-
import { SchemaTransformer } from '../schema-transformer';
|
|
5
|
-
import { Identifier } from '../identifier';
|
|
4
|
+
import type { SchemaTransformer } from '../schema-transformer';
|
|
5
|
+
import type { Identifier } from '../identifier';
|
|
6
6
|
export declare class ArrayLiteralExpressionTransformer implements SchemaTransformer {
|
|
7
7
|
predicate(node: Node): boolean;
|
|
8
8
|
getIdentifiers(): Promise<Identifier[]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_semanticsEntities","data","require","_pMapSeries","_interopRequireDefault","_typescript","e","__esModule","default","ArrayLiteralExpressionTransformer","predicate","node","kind","ts","SyntaxKind","ArrayLiteralExpression","getIdentifiers","transform","context","members","pMapSeries","elements","element","schema","computeSchema","UnImplementedSchema","typeRef","resolveType","getText","location","getLocation","ArrayLiteralExpressionSchema","exports"],"sources":["array-literal-expression.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"names":["_semanticsEntities","data","require","_pMapSeries","_interopRequireDefault","_typescript","e","__esModule","default","ArrayLiteralExpressionTransformer","predicate","node","kind","ts","SyntaxKind","ArrayLiteralExpression","getIdentifiers","transform","context","members","pMapSeries","elements","element","schema","computeSchema","UnImplementedSchema","typeRef","resolveType","getText","location","getLocation","ArrayLiteralExpressionSchema","exports"],"sources":["array-literal-expression.ts"],"sourcesContent":["import type { SchemaNode } from '@teambit/semantics.entities.semantic-schema';\nimport { ArrayLiteralExpressionSchema, UnImplementedSchema } from '@teambit/semantics.entities.semantic-schema';\nimport pMapSeries from 'p-map-series';\nimport type { ArrayLiteralExpression, Node } from 'typescript';\nimport ts from 'typescript';\nimport type { SchemaExtractorContext } from '../schema-extractor-context';\nimport type { SchemaTransformer } from '../schema-transformer';\nimport type { Identifier } from '../identifier';\n\nexport class ArrayLiteralExpressionTransformer implements SchemaTransformer {\n predicate(node: Node): boolean {\n return node.kind === ts.SyntaxKind.ArrayLiteralExpression;\n }\n\n async getIdentifiers(): Promise<Identifier[]> {\n return [];\n }\n\n async transform(node: ArrayLiteralExpression, context: SchemaExtractorContext): Promise<SchemaNode> {\n const members = await pMapSeries(node.elements, async (element) => {\n const schema = await context.computeSchema(element);\n if (schema instanceof UnImplementedSchema) {\n const typeRef = await context.resolveType(element, element.getText());\n return typeRef;\n }\n return schema;\n });\n const location = context.getLocation(node);\n return new ArrayLiteralExpressionSchema(members, location);\n }\n}\n"],"mappings":";;;;;;AACA,SAAAA,mBAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,kBAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,YAAA;EAAA,MAAAF,IAAA,GAAAG,sBAAA,CAAAF,OAAA;EAAAC,WAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAI,YAAA;EAAA,MAAAJ,IAAA,GAAAG,sBAAA,CAAAF,OAAA;EAAAG,WAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA4B,SAAAG,uBAAAE,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAKrB,MAAMG,iCAAiC,CAA8B;EAC1EC,SAASA,CAACC,IAAU,EAAW;IAC7B,OAAOA,IAAI,CAACC,IAAI,KAAKC,qBAAE,CAACC,UAAU,CAACC,sBAAsB;EAC3D;EAEA,MAAMC,cAAcA,CAAA,EAA0B;IAC5C,OAAO,EAAE;EACX;EAEA,MAAMC,SAASA,CAACN,IAA4B,EAAEO,OAA+B,EAAuB;IAClG,MAAMC,OAAO,GAAG,MAAM,IAAAC,qBAAU,EAACT,IAAI,CAACU,QAAQ,EAAE,MAAOC,OAAO,IAAK;MACjE,MAAMC,MAAM,GAAG,MAAML,OAAO,CAACM,aAAa,CAACF,OAAO,CAAC;MACnD,IAAIC,MAAM,YAAYE,wCAAmB,EAAE;QACzC,MAAMC,OAAO,GAAG,MAAMR,OAAO,CAACS,WAAW,CAACL,OAAO,EAAEA,OAAO,CAACM,OAAO,CAAC,CAAC,CAAC;QACrE,OAAOF,OAAO;MAChB;MACA,OAAOH,MAAM;IACf,CAAC,CAAC;IACF,MAAMM,QAAQ,GAAGX,OAAO,CAACY,WAAW,CAACnB,IAAI,CAAC;IAC1C,OAAO,KAAIoB,iDAA4B,EAACZ,OAAO,EAAEU,QAAQ,CAAC;EAC5D;AACF;AAACG,OAAA,CAAAvB,iCAAA,GAAAA,iCAAA","ignoreList":[]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { ArrayTypeNode, Node } from 'typescript';
|
|
1
|
+
import type { ArrayTypeNode, Node } from 'typescript';
|
|
2
2
|
import { TypeArraySchema } from '@teambit/semantics.entities.semantic-schema';
|
|
3
|
-
import { SchemaTransformer } from '../schema-transformer';
|
|
4
|
-
import { SchemaExtractorContext } from '../schema-extractor-context';
|
|
5
|
-
import { Identifier } from '../identifier';
|
|
3
|
+
import type { SchemaTransformer } from '../schema-transformer';
|
|
4
|
+
import type { SchemaExtractorContext } from '../schema-extractor-context';
|
|
5
|
+
import type { Identifier } from '../identifier';
|
|
6
6
|
export declare class ArrayTypeTransformer implements SchemaTransformer {
|
|
7
7
|
predicate(node: Node): boolean;
|
|
8
8
|
getIdentifiers(): Promise<Identifier[]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_typescript","data","_interopRequireDefault","require","_semanticsEntities","e","__esModule","default","ArrayTypeTransformer","predicate","node","kind","ts","SyntaxKind","ArrayType","getIdentifiers","transform","context","type","computeSchema","elementType","location","getLocation","TypeArraySchema","exports"],"sources":["array-type.ts"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"names":["_typescript","data","_interopRequireDefault","require","_semanticsEntities","e","__esModule","default","ArrayTypeTransformer","predicate","node","kind","ts","SyntaxKind","ArrayType","getIdentifiers","transform","context","type","computeSchema","elementType","location","getLocation","TypeArraySchema","exports"],"sources":["array-type.ts"],"sourcesContent":["import type { ArrayTypeNode, Node } from 'typescript';\nimport ts from 'typescript';\nimport { TypeArraySchema } from '@teambit/semantics.entities.semantic-schema';\nimport type { SchemaTransformer } from '../schema-transformer';\nimport type { SchemaExtractorContext } from '../schema-extractor-context';\nimport type { Identifier } from '../identifier';\n\nexport class ArrayTypeTransformer implements SchemaTransformer {\n predicate(node: Node) {\n return node.kind === ts.SyntaxKind.ArrayType;\n }\n\n async getIdentifiers(): Promise<Identifier[]> {\n return [];\n }\n\n async transform(node: ArrayTypeNode, context: SchemaExtractorContext) {\n const type = await context.computeSchema(node.elementType);\n const location = context.getLocation(node);\n return new TypeArraySchema(location, type);\n }\n}\n"],"mappings":";;;;;;AACA,SAAAA,YAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,WAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,mBAAA;EAAA,MAAAH,IAAA,GAAAE,OAAA;EAAAC,kBAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA8E,SAAAC,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAKvE,MAAMG,oBAAoB,CAA8B;EAC7DC,SAASA,CAACC,IAAU,EAAE;IACpB,OAAOA,IAAI,CAACC,IAAI,KAAKC,qBAAE,CAACC,UAAU,CAACC,SAAS;EAC9C;EAEA,MAAMC,cAAcA,CAAA,EAA0B;IAC5C,OAAO,EAAE;EACX;EAEA,MAAMC,SAASA,CAACN,IAAmB,EAAEO,OAA+B,EAAE;IACpE,MAAMC,IAAI,GAAG,MAAMD,OAAO,CAACE,aAAa,CAACT,IAAI,CAACU,WAAW,CAAC;IAC1D,MAAMC,QAAQ,GAAGJ,OAAO,CAACK,WAAW,CAACZ,IAAI,CAAC;IAC1C,OAAO,KAAIa,oCAAe,EAACF,QAAQ,EAAEH,IAAI,CAAC;EAC5C;AACF;AAACM,OAAA,CAAAhB,oBAAA,GAAAA,oBAAA","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { BindingElement, Node } from 'typescript';
|
|
1
|
+
import type { BindingElement, Node } from 'typescript';
|
|
2
2
|
import { VariableLikeSchema } from '@teambit/semantics.entities.semantic-schema';
|
|
3
|
-
import { SchemaTransformer } from '../schema-transformer';
|
|
4
|
-
import { SchemaExtractorContext } from '../schema-extractor-context';
|
|
3
|
+
import type { SchemaTransformer } from '../schema-transformer';
|
|
4
|
+
import type { SchemaExtractorContext } from '../schema-extractor-context';
|
|
5
5
|
import { Identifier } from '../identifier';
|
|
6
6
|
/**
|
|
7
7
|
* for example:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_typescript","data","_interopRequireDefault","require","_semanticsEntities","_parseTypeFromQuickInfo","_identifier","e","__esModule","default","BindingElementTransformer","predicate","node","kind","ts","SyntaxKind","BindingElement","getIdentifiers","Identifier","name","getText","getSourceFile","fileName","transform","context","info","getQuickInfo","displaySig","body","displayString","typeStr","parseTypeFromQuickInfo","type","resolveType","doc","jsDocToDocSchema","defaultValue","initializer","undefined","VariableLikeSchema","getLocation","exports"],"sources":["binding-element.ts"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"names":["_typescript","data","_interopRequireDefault","require","_semanticsEntities","_parseTypeFromQuickInfo","_identifier","e","__esModule","default","BindingElementTransformer","predicate","node","kind","ts","SyntaxKind","BindingElement","getIdentifiers","Identifier","name","getText","getSourceFile","fileName","transform","context","info","getQuickInfo","displaySig","body","displayString","typeStr","parseTypeFromQuickInfo","type","resolveType","doc","jsDocToDocSchema","defaultValue","initializer","undefined","VariableLikeSchema","getLocation","exports"],"sources":["binding-element.ts"],"sourcesContent":["import type { BindingElement, Node } from 'typescript';\nimport ts from 'typescript';\nimport { VariableLikeSchema } from '@teambit/semantics.entities.semantic-schema';\nimport type { SchemaTransformer } from '../schema-transformer';\nimport type { SchemaExtractorContext } from '../schema-extractor-context';\nimport { parseTypeFromQuickInfo } from './utils/parse-type-from-quick-info';\nimport { Identifier } from '../identifier';\n\n/**\n * for example:\n *\n * const objBindingElem = { elem1: 1, elem2: 2 };\n * const { elem1 } = objBindingElem;\n * export { elem1 };\n */\nexport class BindingElementTransformer implements SchemaTransformer {\n predicate(node: Node) {\n return node.kind === ts.SyntaxKind.BindingElement;\n }\n\n async getIdentifiers(node: BindingElement) {\n return [new Identifier(node.name.getText(), node.getSourceFile().fileName)];\n }\n\n async transform(node: BindingElement, context: SchemaExtractorContext) {\n const name = node.name.getText();\n const info = await context.getQuickInfo(node.name);\n const displaySig = info?.body?.displayString || '';\n const typeStr = parseTypeFromQuickInfo(info);\n const type = await context.resolveType(node, typeStr);\n const doc = await context.jsDocToDocSchema(node);\n const defaultValue = node.initializer ? node.initializer.getText() : undefined;\n return new VariableLikeSchema(context.getLocation(node), name, displaySig, type, false, doc, defaultValue);\n }\n}\n"],"mappings":";;;;;;AACA,SAAAA,YAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,WAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,mBAAA;EAAA,MAAAH,IAAA,GAAAE,OAAA;EAAAC,kBAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAGA,SAAAI,wBAAA;EAAA,MAAAJ,IAAA,GAAAE,OAAA;EAAAE,uBAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAK,YAAA;EAAA,MAAAL,IAAA,GAAAE,OAAA;EAAAG,WAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA2C,SAAAC,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAE3C;AACA;AACA;AACA;AACA;AACA;AACA;AACO,MAAMG,yBAAyB,CAA8B;EAClEC,SAASA,CAACC,IAAU,EAAE;IACpB,OAAOA,IAAI,CAACC,IAAI,KAAKC,qBAAE,CAACC,UAAU,CAACC,cAAc;EACnD;EAEA,MAAMC,cAAcA,CAACL,IAAoB,EAAE;IACzC,OAAO,CAAC,KAAIM,wBAAU,EAACN,IAAI,CAACO,IAAI,CAACC,OAAO,CAAC,CAAC,EAAER,IAAI,CAACS,aAAa,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EAC7E;EAEA,MAAMC,SAASA,CAACX,IAAoB,EAAEY,OAA+B,EAAE;IACrE,MAAML,IAAI,GAAGP,IAAI,CAACO,IAAI,CAACC,OAAO,CAAC,CAAC;IAChC,MAAMK,IAAI,GAAG,MAAMD,OAAO,CAACE,YAAY,CAACd,IAAI,CAACO,IAAI,CAAC;IAClD,MAAMQ,UAAU,GAAGF,IAAI,EAAEG,IAAI,EAAEC,aAAa,IAAI,EAAE;IAClD,MAAMC,OAAO,GAAG,IAAAC,gDAAsB,EAACN,IAAI,CAAC;IAC5C,MAAMO,IAAI,GAAG,MAAMR,OAAO,CAACS,WAAW,CAACrB,IAAI,EAAEkB,OAAO,CAAC;IACrD,MAAMI,GAAG,GAAG,MAAMV,OAAO,CAACW,gBAAgB,CAACvB,IAAI,CAAC;IAChD,MAAMwB,YAAY,GAAGxB,IAAI,CAACyB,WAAW,GAAGzB,IAAI,CAACyB,WAAW,CAACjB,OAAO,CAAC,CAAC,GAAGkB,SAAS;IAC9E,OAAO,KAAIC,uCAAkB,EAACf,OAAO,CAACgB,WAAW,CAAC5B,IAAI,CAAC,EAAEO,IAAI,EAAEQ,UAAU,EAAEK,IAAI,EAAE,KAAK,EAAEE,GAAG,EAAEE,YAAY,CAAC;EAC5G;AACF;AAACK,OAAA,CAAA/B,yBAAA,GAAAA,yBAAA","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { ClassSchema } from '@teambit/semantics.entities.semantic-schema';
|
|
2
|
-
import { Node, ClassDeclaration } from 'typescript';
|
|
3
|
-
import { SchemaTransformer } from '../schema-transformer';
|
|
4
|
-
import { SchemaExtractorContext } from '../schema-extractor-context';
|
|
2
|
+
import type { Node, ClassDeclaration } from 'typescript';
|
|
3
|
+
import type { SchemaTransformer } from '../schema-transformer';
|
|
4
|
+
import type { SchemaExtractorContext } from '../schema-extractor-context';
|
|
5
5
|
import { Identifier } from '../identifier';
|
|
6
6
|
export declare class ClassDeclarationTransformer implements SchemaTransformer {
|
|
7
7
|
predicate(node: Node): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_pMapSeries","data","_interopRequireDefault","require","_lodash","_semanticsEntities","_typescript","_identifier","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ClassDeclarationTransformer","predicate","node","kind","ts","SyntaxKind","ClassDeclaration","classNode","members","isMissingList","getName","name","getText","getIdentifiers","Identifier","getSourceFile","fileName","getExpressionWithTypeArgs","context","token","heritageClauses","pMapSeries","heritageClause","flatMap","h","types","map","type","expressionWithTypeArgs","typeArguments","expression","typeArgsNodes","computeSchema","location","getLocation","expressionNode","visitDefinition","UnresolvedSchema","ExpressionWithTypeArgumentsSchema","transform","nodeDecorators","canHaveDecorators","getDecorators","undefined","decorators","decorator","className","extendsExpressionsWithTypeArgs","ExtendsKeyword","implementsExpressionsWithTypeArgs","ImplementsKeyword","typeParameters","typeParam","signature","getQuickInfoDisplayString","member","memberModifiers","canHaveModifiers","getModifiers","isPrivate","some","modifier","PrivateKeyword","doc","jsDocToDocSchema","Error","ClassSchema","compact","exports"],"sources":["class-declaration.ts"],"sourcesContent":["import pMapSeries from 'p-map-series';\nimport { compact } from 'lodash';\nimport {\n ClassSchema,\n UnresolvedSchema,\n ExpressionWithTypeArgumentsSchema,\n} from '@teambit/semantics.entities.semantic-schema';\nimport ts, { Node, ClassDeclaration } from 'typescript';\nimport { SchemaTransformer } from '../schema-transformer';\nimport { SchemaExtractorContext } from '../schema-extractor-context';\nimport { Identifier } from '../identifier';\n\nexport class ClassDeclarationTransformer implements SchemaTransformer {\n predicate(node: Node) {\n if (node.kind !== ts.SyntaxKind.ClassDeclaration) {\n return false;\n }\n const classNode = node as ClassDeclaration;\n if (!classNode.members || (classNode.members as any).isMissingList) {\n return false;\n }\n return true;\n }\n\n // @todo: in case of `export default class` the class has no name.\n private getName(node: ClassDeclaration) {\n return node.name?.getText() || 'default';\n }\n\n async getIdentifiers(node: ClassDeclaration) {\n return [new Identifier(this.getName(node), node.getSourceFile().fileName)];\n }\n\n private async getExpressionWithTypeArgs(\n node: ClassDeclaration,\n context: SchemaExtractorContext,\n token: ts.SyntaxKind.ExtendsKeyword | ts.SyntaxKind.ImplementsKeyword\n ) {\n if (!node.heritageClauses) return [];\n\n return pMapSeries(\n node.heritageClauses\n .filter((heritageClause: ts.HeritageClause) => heritageClause.token === token)\n .flatMap((h: ts.HeritageClause) => {\n const { types } = h;\n const name = h.getText();\n return types.map((type) => ({ ...type, name }));\n }),\n async (expressionWithTypeArgs: ts.ExpressionWithTypeArguments & { name: string }) => {\n const { typeArguments, expression, name } = expressionWithTypeArgs;\n const typeArgsNodes = typeArguments ? await pMapSeries(typeArguments, (t) => context.computeSchema(t)) : [];\n const location = context.getLocation(expression);\n const expressionNode =\n (await context.visitDefinition(expression)) || new UnresolvedSchema(location, expression.getText());\n return new ExpressionWithTypeArgumentsSchema(typeArgsNodes, expressionNode, name, location);\n }\n );\n }\n\n async transform(node: ClassDeclaration, context: SchemaExtractorContext) {\n const nodeDecorators = ts.canHaveDecorators(node) ? ts.getDecorators(node) : undefined;\n const decorators = nodeDecorators?.length\n ? await pMapSeries(nodeDecorators, (decorator) => context.computeSchema(decorator))\n : undefined;\n const className = this.getName(node);\n const extendsExpressionsWithTypeArgs = await this.getExpressionWithTypeArgs(\n node,\n context,\n ts.SyntaxKind.ExtendsKeyword\n );\n\n const implementsExpressionsWithTypeArgs = await this.getExpressionWithTypeArgs(\n node,\n context,\n ts.SyntaxKind.ImplementsKeyword\n );\n\n const typeParameters = node.typeParameters?.map((typeParam) => {\n return typeParam.name.getText();\n });\n const signature = node.name ? await context.getQuickInfoDisplayString(node.name) : undefined;\n const members = await pMapSeries(node.members, async (member) => {\n const memberModifiers = ts.canHaveModifiers(member) ? ts.getModifiers(member) : undefined;\n const isPrivate = memberModifiers?.some((modifier) => modifier.kind === ts.SyntaxKind.PrivateKeyword);\n if (isPrivate) {\n return null;\n }\n return context.computeSchema(member);\n });\n const doc = await context.jsDocToDocSchema(node);\n\n if (!signature) {\n throw Error(`Missing signature for class ${className} declaration`);\n }\n\n return new ClassSchema(\n className,\n compact(members),\n context.getLocation(node),\n signature,\n doc,\n typeParameters,\n extendsExpressionsWithTypeArgs,\n implementsExpressionsWithTypeArgs,\n decorators\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["_pMapSeries","data","_interopRequireDefault","require","_lodash","_semanticsEntities","_typescript","_identifier","e","__esModule","default","ownKeys","r","t","Object","keys","getOwnPropertySymbols","o","filter","getOwnPropertyDescriptor","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty","getOwnPropertyDescriptors","defineProperties","defineProperty","_toPropertyKey","value","configurable","writable","i","_toPrimitive","Symbol","toPrimitive","call","TypeError","String","Number","ClassDeclarationTransformer","predicate","node","kind","ts","SyntaxKind","ClassDeclaration","classNode","members","isMissingList","getName","name","getText","getIdentifiers","Identifier","getSourceFile","fileName","getExpressionWithTypeArgs","context","token","heritageClauses","pMapSeries","heritageClause","flatMap","h","types","map","type","expressionWithTypeArgs","typeArguments","expression","typeArgsNodes","computeSchema","location","getLocation","expressionNode","visitDefinition","UnresolvedSchema","ExpressionWithTypeArgumentsSchema","transform","nodeDecorators","canHaveDecorators","getDecorators","undefined","decorators","decorator","className","extendsExpressionsWithTypeArgs","ExtendsKeyword","implementsExpressionsWithTypeArgs","ImplementsKeyword","typeParameters","typeParam","signature","getQuickInfoDisplayString","member","memberModifiers","canHaveModifiers","getModifiers","isPrivate","some","modifier","PrivateKeyword","doc","jsDocToDocSchema","Error","ClassSchema","compact","exports"],"sources":["class-declaration.ts"],"sourcesContent":["import pMapSeries from 'p-map-series';\nimport { compact } from 'lodash';\nimport {\n ClassSchema,\n UnresolvedSchema,\n ExpressionWithTypeArgumentsSchema,\n} from '@teambit/semantics.entities.semantic-schema';\nimport type { Node, ClassDeclaration } from 'typescript';\nimport ts from 'typescript';\nimport type { SchemaTransformer } from '../schema-transformer';\nimport type { SchemaExtractorContext } from '../schema-extractor-context';\nimport { Identifier } from '../identifier';\n\nexport class ClassDeclarationTransformer implements SchemaTransformer {\n predicate(node: Node) {\n if (node.kind !== ts.SyntaxKind.ClassDeclaration) {\n return false;\n }\n const classNode = node as ClassDeclaration;\n if (!classNode.members || (classNode.members as any).isMissingList) {\n return false;\n }\n return true;\n }\n\n // @todo: in case of `export default class` the class has no name.\n private getName(node: ClassDeclaration) {\n return node.name?.getText() || 'default';\n }\n\n async getIdentifiers(node: ClassDeclaration) {\n return [new Identifier(this.getName(node), node.getSourceFile().fileName)];\n }\n\n private async getExpressionWithTypeArgs(\n node: ClassDeclaration,\n context: SchemaExtractorContext,\n token: ts.SyntaxKind.ExtendsKeyword | ts.SyntaxKind.ImplementsKeyword\n ) {\n if (!node.heritageClauses) return [];\n\n return pMapSeries(\n node.heritageClauses\n .filter((heritageClause: ts.HeritageClause) => heritageClause.token === token)\n .flatMap((h: ts.HeritageClause) => {\n const { types } = h;\n const name = h.getText();\n return types.map((type) => ({ ...type, name }));\n }),\n async (expressionWithTypeArgs: ts.ExpressionWithTypeArguments & { name: string }) => {\n const { typeArguments, expression, name } = expressionWithTypeArgs;\n const typeArgsNodes = typeArguments ? await pMapSeries(typeArguments, (t) => context.computeSchema(t)) : [];\n const location = context.getLocation(expression);\n const expressionNode =\n (await context.visitDefinition(expression)) || new UnresolvedSchema(location, expression.getText());\n return new ExpressionWithTypeArgumentsSchema(typeArgsNodes, expressionNode, name, location);\n }\n );\n }\n\n async transform(node: ClassDeclaration, context: SchemaExtractorContext) {\n const nodeDecorators = ts.canHaveDecorators(node) ? ts.getDecorators(node) : undefined;\n const decorators = nodeDecorators?.length\n ? await pMapSeries(nodeDecorators, (decorator) => context.computeSchema(decorator))\n : undefined;\n const className = this.getName(node);\n const extendsExpressionsWithTypeArgs = await this.getExpressionWithTypeArgs(\n node,\n context,\n ts.SyntaxKind.ExtendsKeyword\n );\n\n const implementsExpressionsWithTypeArgs = await this.getExpressionWithTypeArgs(\n node,\n context,\n ts.SyntaxKind.ImplementsKeyword\n );\n\n const typeParameters = node.typeParameters?.map((typeParam) => {\n return typeParam.name.getText();\n });\n const signature = node.name ? await context.getQuickInfoDisplayString(node.name) : undefined;\n const members = await pMapSeries(node.members, async (member) => {\n const memberModifiers = ts.canHaveModifiers(member) ? ts.getModifiers(member) : undefined;\n const isPrivate = memberModifiers?.some((modifier) => modifier.kind === ts.SyntaxKind.PrivateKeyword);\n if (isPrivate) {\n return null;\n }\n return context.computeSchema(member);\n });\n const doc = await context.jsDocToDocSchema(node);\n\n if (!signature) {\n throw Error(`Missing signature for class ${className} declaration`);\n }\n\n return new ClassSchema(\n className,\n compact(members),\n context.getLocation(node),\n signature,\n doc,\n typeParameters,\n extendsExpressionsWithTypeArgs,\n implementsExpressionsWithTypeArgs,\n decorators\n );\n }\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { Node, ConditionalTypeNode } from 'typescript';
|
|
1
|
+
import type { Node, ConditionalTypeNode } from 'typescript';
|
|
2
2
|
import { ConditionalTypeSchema } from '@teambit/semantics.entities.semantic-schema';
|
|
3
|
-
import { SchemaTransformer } from '../schema-transformer';
|
|
4
|
-
import { SchemaExtractorContext } from '../schema-extractor-context';
|
|
5
|
-
import { Identifier } from '../identifier';
|
|
3
|
+
import type { SchemaTransformer } from '../schema-transformer';
|
|
4
|
+
import type { SchemaExtractorContext } from '../schema-extractor-context';
|
|
5
|
+
import type { Identifier } from '../identifier';
|
|
6
6
|
export declare class ConditionalTypeTransformer implements SchemaTransformer {
|
|
7
7
|
predicate(node: Node): boolean;
|
|
8
8
|
getIdentifiers(): Promise<Identifier[]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_typescript","data","require","_semanticsEntities","ConditionalTypeTransformer","predicate","node","kind","SyntaxKind","ConditionalType","getIdentifiers","transform","context","checkType","computeSchema","extendsType","trueType","falseType","ConditionalTypeSchema","getLocation","exports"],"sources":["conditional-type.ts"],"sourcesContent":["import { Node,
|
|
1
|
+
{"version":3,"names":["_typescript","data","require","_semanticsEntities","ConditionalTypeTransformer","predicate","node","kind","SyntaxKind","ConditionalType","getIdentifiers","transform","context","checkType","computeSchema","extendsType","trueType","falseType","ConditionalTypeSchema","getLocation","exports"],"sources":["conditional-type.ts"],"sourcesContent":["import type { Node, ConditionalTypeNode } from 'typescript';\nimport { SyntaxKind } from 'typescript';\nimport { ConditionalTypeSchema } from '@teambit/semantics.entities.semantic-schema';\nimport type { SchemaTransformer } from '../schema-transformer';\nimport type { SchemaExtractorContext } from '../schema-extractor-context';\nimport type { Identifier } from '../identifier';\n\nexport class ConditionalTypeTransformer implements SchemaTransformer {\n predicate(node: Node) {\n return node.kind === SyntaxKind.ConditionalType;\n }\n\n async getIdentifiers(): Promise<Identifier[]> {\n return [];\n }\n\n async transform(node: ConditionalTypeNode, context: SchemaExtractorContext) {\n const checkType = await context.computeSchema(node.checkType);\n const extendsType = await context.computeSchema(node.extendsType);\n const trueType = await context.computeSchema(node.trueType);\n const falseType = await context.computeSchema(node.falseType);\n return new ConditionalTypeSchema(context.getLocation(node), checkType, extendsType, trueType, falseType);\n }\n}\n"],"mappings":";;;;;;AACA,SAAAA,YAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,WAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAE,mBAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,kBAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAKO,MAAMG,0BAA0B,CAA8B;EACnEC,SAASA,CAACC,IAAU,EAAE;IACpB,OAAOA,IAAI,CAACC,IAAI,KAAKC,wBAAU,CAACC,eAAe;EACjD;EAEA,MAAMC,cAAcA,CAAA,EAA0B;IAC5C,OAAO,EAAE;EACX;EAEA,MAAMC,SAASA,CAACL,IAAyB,EAAEM,OAA+B,EAAE;IAC1E,MAAMC,SAAS,GAAG,MAAMD,OAAO,CAACE,aAAa,CAACR,IAAI,CAACO,SAAS,CAAC;IAC7D,MAAME,WAAW,GAAG,MAAMH,OAAO,CAACE,aAAa,CAACR,IAAI,CAACS,WAAW,CAAC;IACjE,MAAMC,QAAQ,GAAG,MAAMJ,OAAO,CAACE,aAAa,CAACR,IAAI,CAACU,QAAQ,CAAC;IAC3D,MAAMC,SAAS,GAAG,MAAML,OAAO,CAACE,aAAa,CAACR,IAAI,CAACW,SAAS,CAAC;IAC7D,OAAO,KAAIC,0CAAqB,EAACN,OAAO,CAACO,WAAW,CAACb,IAAI,CAAC,EAAEO,SAAS,EAAEE,WAAW,EAAEC,QAAQ,EAAEC,SAAS,CAAC;EAC1G;AACF;AAACG,OAAA,CAAAhB,0BAAA,GAAAA,0BAAA","ignoreList":[]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { Node, ConstructorDeclaration } from 'typescript';
|
|
1
|
+
import type { Node, ConstructorDeclaration } from 'typescript';
|
|
2
2
|
import { ConstructorSchema } from '@teambit/semantics.entities.semantic-schema';
|
|
3
|
-
import { SchemaTransformer } from '../schema-transformer';
|
|
4
|
-
import { SchemaExtractorContext } from '../schema-extractor-context';
|
|
5
|
-
import { Identifier } from '../identifier';
|
|
3
|
+
import type { SchemaTransformer } from '../schema-transformer';
|
|
4
|
+
import type { SchemaExtractorContext } from '../schema-extractor-context';
|
|
5
|
+
import type { Identifier } from '../identifier';
|
|
6
6
|
export declare class ConstructorTransformer implements SchemaTransformer {
|
|
7
7
|
predicate(node: Node): boolean;
|
|
8
8
|
getIdentifiers(): Promise<Identifier[]>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_typescript","data","_interopRequireDefault","require","_semanticsEntities","_pMapSeries","e","__esModule","default","ConstructorTransformer","predicate","node","kind","ts","SyntaxKind","Constructor","getIdentifiers","transform","context","args","pMapSeries","parameters","param","computeSchema","info","getQuickInfo","displaySig","body","displayString","name","parent","getText","returns","ThisTypeSchema","getLocation","modifiers","map","modifier","doc","jsDocToDocSchema","ConstructorSchema","exports"],"sources":["constructor.ts"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"names":["_typescript","data","_interopRequireDefault","require","_semanticsEntities","_pMapSeries","e","__esModule","default","ConstructorTransformer","predicate","node","kind","ts","SyntaxKind","Constructor","getIdentifiers","transform","context","args","pMapSeries","parameters","param","computeSchema","info","getQuickInfo","displaySig","body","displayString","name","parent","getText","returns","ThisTypeSchema","getLocation","modifiers","map","modifier","doc","jsDocToDocSchema","ConstructorSchema","exports"],"sources":["constructor.ts"],"sourcesContent":["import type { Node, ConstructorDeclaration } from 'typescript';\nimport ts from 'typescript';\nimport type { ParameterSchema, Modifier } from '@teambit/semantics.entities.semantic-schema';\nimport { ConstructorSchema, ThisTypeSchema } from '@teambit/semantics.entities.semantic-schema';\nimport pMapSeries from 'p-map-series';\nimport type { SchemaTransformer } from '../schema-transformer';\nimport type { SchemaExtractorContext } from '../schema-extractor-context';\nimport type { Identifier } from '../identifier';\n\nexport class ConstructorTransformer implements SchemaTransformer {\n predicate(node: Node) {\n return node.kind === ts.SyntaxKind.Constructor;\n }\n\n async getIdentifiers(): Promise<Identifier[]> {\n return [];\n }\n\n async transform(node: ConstructorDeclaration, context: SchemaExtractorContext) {\n const args = await pMapSeries(node.parameters, async (param) => context.computeSchema(param));\n const info = await context.getQuickInfo(node);\n const displaySig = info?.body?.displayString || '';\n const name = node.parent?.name?.getText() || '';\n const returns = new ThisTypeSchema(context.getLocation(node.parent), name);\n const modifiers = node.modifiers?.map((modifier) => modifier.getText()) || [];\n const doc = await context.jsDocToDocSchema(node);\n\n return new ConstructorSchema(\n context.getLocation(node),\n args as ParameterSchema[],\n returns,\n displaySig,\n modifiers as Modifier[],\n doc\n );\n }\n}\n"],"mappings":";;;;;;AACA,SAAAA,YAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,WAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAG,mBAAA;EAAA,MAAAH,IAAA,GAAAE,OAAA;EAAAC,kBAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,YAAA;EAAA,MAAAJ,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAE,WAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAAsC,SAAAC,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAK/B,MAAMG,sBAAsB,CAA8B;EAC/DC,SAASA,CAACC,IAAU,EAAE;IACpB,OAAOA,IAAI,CAACC,IAAI,KAAKC,qBAAE,CAACC,UAAU,CAACC,WAAW;EAChD;EAEA,MAAMC,cAAcA,CAAA,EAA0B;IAC5C,OAAO,EAAE;EACX;EAEA,MAAMC,SAASA,CAACN,IAA4B,EAAEO,OAA+B,EAAE;IAC7E,MAAMC,IAAI,GAAG,MAAM,IAAAC,qBAAU,EAACT,IAAI,CAACU,UAAU,EAAE,MAAOC,KAAK,IAAKJ,OAAO,CAACK,aAAa,CAACD,KAAK,CAAC,CAAC;IAC7F,MAAME,IAAI,GAAG,MAAMN,OAAO,CAACO,YAAY,CAACd,IAAI,CAAC;IAC7C,MAAMe,UAAU,GAAGF,IAAI,EAAEG,IAAI,EAAEC,aAAa,IAAI,EAAE;IAClD,MAAMC,IAAI,GAAGlB,IAAI,CAACmB,MAAM,EAAED,IAAI,EAAEE,OAAO,CAAC,CAAC,IAAI,EAAE;IAC/C,MAAMC,OAAO,GAAG,KAAIC,mCAAc,EAACf,OAAO,CAACgB,WAAW,CAACvB,IAAI,CAACmB,MAAM,CAAC,EAAED,IAAI,CAAC;IAC1E,MAAMM,SAAS,GAAGxB,IAAI,CAACwB,SAAS,EAAEC,GAAG,CAAEC,QAAQ,IAAKA,QAAQ,CAACN,OAAO,CAAC,CAAC,CAAC,IAAI,EAAE;IAC7E,MAAMO,GAAG,GAAG,MAAMpB,OAAO,CAACqB,gBAAgB,CAAC5B,IAAI,CAAC;IAEhD,OAAO,KAAI6B,sCAAiB,EAC1BtB,OAAO,CAACgB,WAAW,CAACvB,IAAI,CAAC,EACzBQ,IAAI,EACJa,OAAO,EACPN,UAAU,EACVS,SAAS,EACTG,GACF,CAAC;EACH;AACF;AAACG,OAAA,CAAAhC,sBAAA,GAAAA,sBAAA","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { SchemaNode } from '@teambit/semantics.entities.semantic-schema';
|
|
2
|
-
import { Decorator, Node } from 'typescript';
|
|
3
|
-
import { SchemaExtractorContext } from '../schema-extractor-context';
|
|
4
|
-
import { SchemaTransformer } from '../schema-transformer';
|
|
1
|
+
import type { SchemaNode } from '@teambit/semantics.entities.semantic-schema';
|
|
2
|
+
import type { Decorator, Node } from 'typescript';
|
|
3
|
+
import type { SchemaExtractorContext } from '../schema-extractor-context';
|
|
4
|
+
import type { SchemaTransformer } from '../schema-transformer';
|
|
5
5
|
import { Identifier } from '../identifier';
|
|
6
6
|
export declare class DecoratorTransformer implements SchemaTransformer {
|
|
7
7
|
predicate(node: Node): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_semanticsEntities","data","require","_typescript","_interopRequireDefault","_pMapSeries","_identifier","e","__esModule","default","DecoratorTransformer","predicate","node","kind","ts","SyntaxKind","Decorator","getIdentifiers","decorator","identifierText","expression","getFirstToken","getText","Identifier","getSourceFile","fileName","transform","context","name","location","getLocation","doc","jsDocToDocSchema","args","isCallExpression","arguments","length","pMapSeries","arg","computeSchema","undefined","DecoratorSchema","exports"],"sources":["decorator.ts"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"names":["_semanticsEntities","data","require","_typescript","_interopRequireDefault","_pMapSeries","_identifier","e","__esModule","default","DecoratorTransformer","predicate","node","kind","ts","SyntaxKind","Decorator","getIdentifiers","decorator","identifierText","expression","getFirstToken","getText","Identifier","getSourceFile","fileName","transform","context","name","location","getLocation","doc","jsDocToDocSchema","args","isCallExpression","arguments","length","pMapSeries","arg","computeSchema","undefined","DecoratorSchema","exports"],"sources":["decorator.ts"],"sourcesContent":["import type { SchemaNode } from '@teambit/semantics.entities.semantic-schema';\nimport { DecoratorSchema } from '@teambit/semantics.entities.semantic-schema';\nimport type { Decorator, Node } from 'typescript';\nimport ts from 'typescript';\nimport pMapSeries from 'p-map-series';\nimport type { SchemaExtractorContext } from '../schema-extractor-context';\nimport type { SchemaTransformer } from '../schema-transformer';\nimport { Identifier } from '../identifier';\n\nexport class DecoratorTransformer implements SchemaTransformer {\n predicate(node: Node) {\n return node.kind === ts.SyntaxKind.Decorator;\n }\n\n async getIdentifiers(decorator: Decorator) {\n const identifierText = decorator.expression.getFirstToken()?.getText() || '';\n return [new Identifier(identifierText, decorator.getSourceFile().fileName)];\n }\n\n async transform(node: Decorator, context: SchemaExtractorContext): Promise<SchemaNode> {\n const name = node.expression.getFirstToken()?.getText() || '';\n const location = context.getLocation(node);\n const doc = await context.jsDocToDocSchema(node);\n const args =\n ts.isCallExpression(node.expression) && node.expression.arguments.length\n ? await pMapSeries(node.expression.arguments, (arg) => context.computeSchema(arg))\n : undefined;\n return new DecoratorSchema(location, name, doc, args);\n }\n}\n"],"mappings":";;;;;;AACA,SAAAA,mBAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,kBAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAE,YAAA;EAAA,MAAAF,IAAA,GAAAG,sBAAA,CAAAF,OAAA;EAAAC,WAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,YAAA;EAAA,MAAAJ,IAAA,GAAAG,sBAAA,CAAAF,OAAA;EAAAG,WAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAGA,SAAAK,YAAA;EAAA,MAAAL,IAAA,GAAAC,OAAA;EAAAI,WAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA2C,SAAAG,uBAAAG,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEpC,MAAMG,oBAAoB,CAA8B;EAC7DC,SAASA,CAACC,IAAU,EAAE;IACpB,OAAOA,IAAI,CAACC,IAAI,KAAKC,qBAAE,CAACC,UAAU,CAACC,SAAS;EAC9C;EAEA,MAAMC,cAAcA,CAACC,SAAoB,EAAE;IACzC,MAAMC,cAAc,GAAGD,SAAS,CAACE,UAAU,CAACC,aAAa,CAAC,CAAC,EAAEC,OAAO,CAAC,CAAC,IAAI,EAAE;IAC5E,OAAO,CAAC,KAAIC,wBAAU,EAACJ,cAAc,EAAED,SAAS,CAACM,aAAa,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EAC7E;EAEA,MAAMC,SAASA,CAACd,IAAe,EAAEe,OAA+B,EAAuB;IACrF,MAAMC,IAAI,GAAGhB,IAAI,CAACQ,UAAU,CAACC,aAAa,CAAC,CAAC,EAAEC,OAAO,CAAC,CAAC,IAAI,EAAE;IAC7D,MAAMO,QAAQ,GAAGF,OAAO,CAACG,WAAW,CAAClB,IAAI,CAAC;IAC1C,MAAMmB,GAAG,GAAG,MAAMJ,OAAO,CAACK,gBAAgB,CAACpB,IAAI,CAAC;IAChD,MAAMqB,IAAI,GACRnB,qBAAE,CAACoB,gBAAgB,CAACtB,IAAI,CAACQ,UAAU,CAAC,IAAIR,IAAI,CAACQ,UAAU,CAACe,SAAS,CAACC,MAAM,GACpE,MAAM,IAAAC,qBAAU,EAACzB,IAAI,CAACQ,UAAU,CAACe,SAAS,EAAGG,GAAG,IAAKX,OAAO,CAACY,aAAa,CAACD,GAAG,CAAC,CAAC,GAChFE,SAAS;IACf,OAAO,KAAIC,oCAAe,EAACZ,QAAQ,EAAED,IAAI,EAAEG,GAAG,EAAEE,IAAI,CAAC;EACvD;AACF;AAACS,OAAA,CAAAhC,oBAAA,GAAAA,oBAAA","ignoreList":[]}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { Node, EnumDeclaration } from 'typescript';
|
|
1
|
+
import type { Node, EnumDeclaration } from 'typescript';
|
|
2
2
|
import { EnumSchema } from '@teambit/semantics.entities.semantic-schema';
|
|
3
|
-
import { SchemaTransformer } from '../schema-transformer';
|
|
4
|
-
import { SchemaExtractorContext } from '../schema-extractor-context';
|
|
3
|
+
import type { SchemaTransformer } from '../schema-transformer';
|
|
4
|
+
import type { SchemaExtractorContext } from '../schema-extractor-context';
|
|
5
5
|
import { Identifier } from '../identifier';
|
|
6
6
|
export declare class EnumDeclarationTransformer implements SchemaTransformer {
|
|
7
7
|
predicate(node: Node): boolean;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_typescript","data","_interopRequireDefault","require","_semanticsEntities","_pMapSeries","_identifier","e","__esModule","default","EnumDeclarationTransformer","predicate","node","kind","ts","SyntaxKind","EnumDeclaration","getIdentifiers","Identifier","name","getText","getSourceFile","fileName","transform","enumDec","context","members","pMapSeries","member","memberName","memberSignature","getQuickInfoDisplayString","memberDoc","jsDocToDocSchema","memberLocation","getLocation","memberValue","initializer","EnumMemberSchema","signature","doc","EnumSchema","exports"],"sources":["enum-declaration.ts"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"names":["_typescript","data","_interopRequireDefault","require","_semanticsEntities","_pMapSeries","_identifier","e","__esModule","default","EnumDeclarationTransformer","predicate","node","kind","ts","SyntaxKind","EnumDeclaration","getIdentifiers","Identifier","name","getText","getSourceFile","fileName","transform","enumDec","context","members","pMapSeries","member","memberName","memberSignature","getQuickInfoDisplayString","memberDoc","jsDocToDocSchema","memberLocation","getLocation","memberValue","initializer","EnumMemberSchema","signature","doc","EnumSchema","exports"],"sources":["enum-declaration.ts"],"sourcesContent":["import type { Node, EnumDeclaration } from 'typescript';\nimport ts from 'typescript';\nimport { EnumMemberSchema, EnumSchema } from '@teambit/semantics.entities.semantic-schema';\nimport pMapSeries from 'p-map-series';\nimport type { SchemaTransformer } from '../schema-transformer';\nimport type { SchemaExtractorContext } from '../schema-extractor-context';\nimport { Identifier } from '../identifier';\n\nexport class EnumDeclarationTransformer implements SchemaTransformer {\n predicate(node: Node) {\n return node.kind === ts.SyntaxKind.EnumDeclaration;\n }\n\n async getIdentifiers(node: EnumDeclaration): Promise<Identifier[]> {\n return [new Identifier(node.name.getText(), node.getSourceFile().fileName)];\n }\n\n async transform(enumDec: EnumDeclaration, context: SchemaExtractorContext) {\n const name = enumDec.name.getText();\n const members = await pMapSeries(enumDec.members, async (member) => {\n const memberName = member.name.getText();\n const memberSignature = await context.getQuickInfoDisplayString(member);\n const memberDoc = await context.jsDocToDocSchema(member);\n const memberLocation = await context.getLocation(member);\n const memberValue = member.initializer?.getText();\n return new EnumMemberSchema(memberLocation, memberName, memberSignature, memberValue, memberDoc);\n });\n const signature = await context.getQuickInfoDisplayString(enumDec.name);\n const doc = await context.jsDocToDocSchema(enumDec);\n return new EnumSchema(context.getLocation(enumDec), name, members, signature, doc);\n }\n}\n"],"mappings":";;;;;;AACA,SAAAA,YAAA;EAAA,MAAAC,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAH,WAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,mBAAA;EAAA,MAAAH,IAAA,GAAAE,OAAA;EAAAC,kBAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAI,YAAA;EAAA,MAAAJ,IAAA,GAAAC,sBAAA,CAAAC,OAAA;EAAAE,WAAA,YAAAA,CAAA;IAAA,OAAAJ,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAGA,SAAAK,YAAA;EAAA,MAAAL,IAAA,GAAAE,OAAA;EAAAG,WAAA,YAAAA,CAAA;IAAA,OAAAL,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAA2C,SAAAC,uBAAAK,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAEpC,MAAMG,0BAA0B,CAA8B;EACnEC,SAASA,CAACC,IAAU,EAAE;IACpB,OAAOA,IAAI,CAACC,IAAI,KAAKC,qBAAE,CAACC,UAAU,CAACC,eAAe;EACpD;EAEA,MAAMC,cAAcA,CAACL,IAAqB,EAAyB;IACjE,OAAO,CAAC,KAAIM,wBAAU,EAACN,IAAI,CAACO,IAAI,CAACC,OAAO,CAAC,CAAC,EAAER,IAAI,CAACS,aAAa,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EAC7E;EAEA,MAAMC,SAASA,CAACC,OAAwB,EAAEC,OAA+B,EAAE;IACzE,MAAMN,IAAI,GAAGK,OAAO,CAACL,IAAI,CAACC,OAAO,CAAC,CAAC;IACnC,MAAMM,OAAO,GAAG,MAAM,IAAAC,qBAAU,EAACH,OAAO,CAACE,OAAO,EAAE,MAAOE,MAAM,IAAK;MAClE,MAAMC,UAAU,GAAGD,MAAM,CAACT,IAAI,CAACC,OAAO,CAAC,CAAC;MACxC,MAAMU,eAAe,GAAG,MAAML,OAAO,CAACM,yBAAyB,CAACH,MAAM,CAAC;MACvE,MAAMI,SAAS,GAAG,MAAMP,OAAO,CAACQ,gBAAgB,CAACL,MAAM,CAAC;MACxD,MAAMM,cAAc,GAAG,MAAMT,OAAO,CAACU,WAAW,CAACP,MAAM,CAAC;MACxD,MAAMQ,WAAW,GAAGR,MAAM,CAACS,WAAW,EAAEjB,OAAO,CAAC,CAAC;MACjD,OAAO,KAAIkB,qCAAgB,EAACJ,cAAc,EAAEL,UAAU,EAAEC,eAAe,EAAEM,WAAW,EAAEJ,SAAS,CAAC;IAClG,CAAC,CAAC;IACF,MAAMO,SAAS,GAAG,MAAMd,OAAO,CAACM,yBAAyB,CAACP,OAAO,CAACL,IAAI,CAAC;IACvE,MAAMqB,GAAG,GAAG,MAAMf,OAAO,CAACQ,gBAAgB,CAACT,OAAO,CAAC;IACnD,OAAO,KAAIiB,+BAAU,EAAChB,OAAO,CAACU,WAAW,CAACX,OAAO,CAAC,EAAEL,IAAI,EAAEO,OAAO,EAAEa,SAAS,EAAEC,GAAG,CAAC;EACpF;AACF;AAACE,OAAA,CAAAhC,0BAAA,GAAAA,0BAAA","ignoreList":[]}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { SchemaNode } from '@teambit/semantics.entities.semantic-schema';
|
|
2
|
-
import { Node, ExportAssignment as ExportAssignmentNode } from 'typescript';
|
|
1
|
+
import type { SchemaNode } from '@teambit/semantics.entities.semantic-schema';
|
|
2
|
+
import type { Node, ExportAssignment as ExportAssignmentNode } from 'typescript';
|
|
3
3
|
import { ExportIdentifier } from '../export-identifier';
|
|
4
|
-
import { SchemaExtractorContext } from '../schema-extractor-context';
|
|
5
|
-
import { SchemaTransformer } from '../schema-transformer';
|
|
4
|
+
import type { SchemaExtractorContext } from '../schema-extractor-context';
|
|
5
|
+
import type { SchemaTransformer } from '../schema-transformer';
|
|
6
6
|
/**
|
|
7
7
|
* This is either an export = or an export default declaration.
|
|
8
8
|
* Unless isExportEquals is set, this node was parsed as an export default
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_semanticsEntities","data","require","_typescript","_exportIdentifier","ExportAssignmentTransformer","predicate","node","kind","SyntaxKind","ExportAssignment","getIdentifiers","exportDec","ExportIdentifier","getSourceFile","fileName","transform","context","specifier","expression","location","getLocation","absoluteFilePath","exportNode","getTypeRef","getText","ExportSchema","name","TypeRefSchema","componentId","packageName","internalFilePath","schemaNode","computeSchema","nodeName","exports"],"sources":["export-assignment.ts"],"sourcesContent":["import { ExportSchema,
|
|
1
|
+
{"version":3,"names":["_semanticsEntities","data","require","_typescript","_exportIdentifier","ExportAssignmentTransformer","predicate","node","kind","SyntaxKind","ExportAssignment","getIdentifiers","exportDec","ExportIdentifier","getSourceFile","fileName","transform","context","specifier","expression","location","getLocation","absoluteFilePath","exportNode","getTypeRef","getText","ExportSchema","name","TypeRefSchema","componentId","packageName","internalFilePath","schemaNode","computeSchema","nodeName","exports"],"sources":["export-assignment.ts"],"sourcesContent":["import type { SchemaNode } from '@teambit/semantics.entities.semantic-schema';\nimport { ExportSchema, TypeRefSchema } from '@teambit/semantics.entities.semantic-schema';\nimport type { Node, ExportAssignment as ExportAssignmentNode } from 'typescript';\nimport { SyntaxKind } from 'typescript';\nimport { ExportIdentifier } from '../export-identifier';\nimport type { SchemaExtractorContext } from '../schema-extractor-context';\nimport type { SchemaTransformer } from '../schema-transformer';\n\n/**\n * This is either an export = or an export default declaration.\n * Unless isExportEquals is set, this node was parsed as an export default\n */\nexport class ExportAssignmentTransformer implements SchemaTransformer {\n predicate(node: Node) {\n return node.kind === SyntaxKind.ExportAssignment;\n }\n\n async getIdentifiers(exportDec: ExportAssignmentNode) {\n return [new ExportIdentifier('default', exportDec.getSourceFile().fileName)];\n }\n\n async transform(exportDec: ExportAssignmentNode, context: SchemaExtractorContext): Promise<SchemaNode> {\n const specifier = exportDec.expression;\n const location = context.getLocation(exportDec);\n const absoluteFilePath = exportDec.getSourceFile().fileName;\n\n const exportNode = await context.getTypeRef(specifier.getText(), absoluteFilePath, location);\n\n if (exportNode) {\n return new ExportSchema(\n location,\n `${exportNode.name} (default)`,\n new TypeRefSchema(\n exportNode.location,\n exportNode.name,\n exportNode.componentId,\n exportNode.packageName,\n exportNode.internalFilePath\n ),\n `${exportNode.name} (default)`\n );\n }\n\n const schemaNode = await context.computeSchema(specifier);\n const nodeName = schemaNode.name ? `${schemaNode.name} (default)` : 'default';\n return new ExportSchema(location, nodeName, schemaNode, nodeName);\n }\n}\n"],"mappings":";;;;;;AACA,SAAAA,mBAAA;EAAA,MAAAC,IAAA,GAAAC,OAAA;EAAAF,kBAAA,YAAAA,CAAA;IAAA,OAAAC,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAEA,SAAAE,YAAA;EAAA,MAAAF,IAAA,GAAAC,OAAA;EAAAC,WAAA,YAAAA,CAAA;IAAA,OAAAF,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AACA,SAAAG,kBAAA;EAAA,MAAAH,IAAA,GAAAC,OAAA;EAAAE,iBAAA,YAAAA,CAAA;IAAA,OAAAH,IAAA;EAAA;EAAA,OAAAA,IAAA;AAAA;AAIA;AACA;AACA;AACA;AACO,MAAMI,2BAA2B,CAA8B;EACpEC,SAASA,CAACC,IAAU,EAAE;IACpB,OAAOA,IAAI,CAACC,IAAI,KAAKC,wBAAU,CAACC,gBAAgB;EAClD;EAEA,MAAMC,cAAcA,CAACC,SAA+B,EAAE;IACpD,OAAO,CAAC,KAAIC,oCAAgB,EAAC,SAAS,EAAED,SAAS,CAACE,aAAa,CAAC,CAAC,CAACC,QAAQ,CAAC,CAAC;EAC9E;EAEA,MAAMC,SAASA,CAACJ,SAA+B,EAAEK,OAA+B,EAAuB;IACrG,MAAMC,SAAS,GAAGN,SAAS,CAACO,UAAU;IACtC,MAAMC,QAAQ,GAAGH,OAAO,CAACI,WAAW,CAACT,SAAS,CAAC;IAC/C,MAAMU,gBAAgB,GAAGV,SAAS,CAACE,aAAa,CAAC,CAAC,CAACC,QAAQ;IAE3D,MAAMQ,UAAU,GAAG,MAAMN,OAAO,CAACO,UAAU,CAACN,SAAS,CAACO,OAAO,CAAC,CAAC,EAAEH,gBAAgB,EAAEF,QAAQ,CAAC;IAE5F,IAAIG,UAAU,EAAE;MACd,OAAO,KAAIG,iCAAY,EACrBN,QAAQ,EACR,GAAGG,UAAU,CAACI,IAAI,YAAY,EAC9B,KAAIC,kCAAa,EACfL,UAAU,CAACH,QAAQ,EACnBG,UAAU,CAACI,IAAI,EACfJ,UAAU,CAACM,WAAW,EACtBN,UAAU,CAACO,WAAW,EACtBP,UAAU,CAACQ,gBACb,CAAC,EACD,GAAGR,UAAU,CAACI,IAAI,YACpB,CAAC;IACH;IAEA,MAAMK,UAAU,GAAG,MAAMf,OAAO,CAACgB,aAAa,CAACf,SAAS,CAAC;IACzD,MAAMgB,QAAQ,GAAGF,UAAU,CAACL,IAAI,GAAG,GAAGK,UAAU,CAACL,IAAI,YAAY,GAAG,SAAS;IAC7E,OAAO,KAAID,iCAAY,EAACN,QAAQ,EAAEc,QAAQ,EAAEF,UAAU,EAAEE,QAAQ,CAAC;EACnE;AACF;AAACC,OAAA,CAAA9B,2BAAA,GAAAA,2BAAA","ignoreList":[]}
|