@teambit/typescript 0.0.0-004aea01bc027e428dfd0f6583f49a1b8286bdd0

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.
Files changed (309) hide show
  1. package/cmds/check-types.cmd.ts +81 -0
  2. package/dist/cmds/check-types.cmd.d.ts +35 -0
  3. package/dist/cmds/check-types.cmd.js +105 -0
  4. package/dist/cmds/check-types.cmd.js.map +1 -0
  5. package/dist/compiler-options.d.ts +22 -0
  6. package/dist/compiler-options.js +3 -0
  7. package/dist/compiler-options.js.map +1 -0
  8. package/dist/esm.mjs +21 -0
  9. package/dist/exceptions/index.d.ts +1 -0
  10. package/dist/exceptions/index.js +20 -0
  11. package/dist/exceptions/index.js.map +1 -0
  12. package/dist/exceptions/transformer-not-found.d.ts +8 -0
  13. package/dist/exceptions/transformer-not-found.js +26 -0
  14. package/dist/exceptions/transformer-not-found.js.map +1 -0
  15. package/dist/export-identifier.d.ts +6 -0
  16. package/dist/export-identifier.js +29 -0
  17. package/dist/export-identifier.js.map +1 -0
  18. package/dist/extractor-options.d.ts +26 -0
  19. package/dist/extractor-options.js +3 -0
  20. package/dist/extractor-options.js.map +1 -0
  21. package/dist/identifier-list.d.ts +7 -0
  22. package/dist/identifier-list.js +21 -0
  23. package/dist/identifier-list.js.map +1 -0
  24. package/dist/identifier.d.ts +11 -0
  25. package/dist/identifier.js +45 -0
  26. package/dist/identifier.js.map +1 -0
  27. package/dist/index.d.ts +9 -0
  28. package/dist/index.js +91 -0
  29. package/dist/index.js.map +1 -0
  30. package/dist/preview-1760469561956.js +7 -0
  31. package/dist/remove-types-task.d.ts +12 -0
  32. package/dist/remove-types-task.js +64 -0
  33. package/dist/remove-types-task.js.map +1 -0
  34. package/dist/schema-extractor-context.d.ts +164 -0
  35. package/dist/schema-extractor-context.js +745 -0
  36. package/dist/schema-extractor-context.js.map +1 -0
  37. package/dist/schema-transformer.d.ts +19 -0
  38. package/dist/schema-transformer.js +3 -0
  39. package/dist/schema-transformer.js.map +1 -0
  40. package/dist/schema-transformer.plugin.d.ts +9 -0
  41. package/dist/schema-transformer.plugin.js +22 -0
  42. package/dist/schema-transformer.plugin.js.map +1 -0
  43. package/dist/sourceFileTransformers/class.d.ts +2 -0
  44. package/dist/sourceFileTransformers/class.js +57 -0
  45. package/dist/sourceFileTransformers/class.js.map +1 -0
  46. package/dist/sourceFileTransformers/empty-line-encoder.d.ts +14 -0
  47. package/dist/sourceFileTransformers/empty-line-encoder.js +62 -0
  48. package/dist/sourceFileTransformers/empty-line-encoder.js.map +1 -0
  49. package/dist/sourceFileTransformers/export.d.ts +2 -0
  50. package/dist/sourceFileTransformers/export.js +58 -0
  51. package/dist/sourceFileTransformers/export.js.map +1 -0
  52. package/dist/sourceFileTransformers/expression-statement.d.ts +2 -0
  53. package/dist/sourceFileTransformers/expression-statement.js +58 -0
  54. package/dist/sourceFileTransformers/expression-statement.js.map +1 -0
  55. package/dist/sourceFileTransformers/function.d.ts +2 -0
  56. package/dist/sourceFileTransformers/function.js +119 -0
  57. package/dist/sourceFileTransformers/function.js.map +1 -0
  58. package/dist/sourceFileTransformers/import.d.ts +2 -0
  59. package/dist/sourceFileTransformers/import.js +71 -0
  60. package/dist/sourceFileTransformers/import.js.map +1 -0
  61. package/dist/sourceFileTransformers/index.d.ts +12 -0
  62. package/dist/sourceFileTransformers/index.js +137 -0
  63. package/dist/sourceFileTransformers/index.js.map +1 -0
  64. package/dist/sourceFileTransformers/interface.d.ts +2 -0
  65. package/dist/sourceFileTransformers/interface.js +50 -0
  66. package/dist/sourceFileTransformers/interface.js.map +1 -0
  67. package/dist/sourceFileTransformers/replaceName.d.ts +1 -0
  68. package/dist/sourceFileTransformers/replaceName.js +19 -0
  69. package/dist/sourceFileTransformers/replaceName.js.map +1 -0
  70. package/dist/sourceFileTransformers/transform.d.ts +12 -0
  71. package/dist/sourceFileTransformers/transform.js +76 -0
  72. package/dist/sourceFileTransformers/transform.js.map +1 -0
  73. package/dist/sourceFileTransformers/type-reference.d.ts +2 -0
  74. package/dist/sourceFileTransformers/type-reference.js +38 -0
  75. package/dist/sourceFileTransformers/type-reference.js.map +1 -0
  76. package/dist/sourceFileTransformers/typeAlias.d.ts +2 -0
  77. package/dist/sourceFileTransformers/typeAlias.js +41 -0
  78. package/dist/sourceFileTransformers/typeAlias.js.map +1 -0
  79. package/dist/sourceFileTransformers/variable.d.ts +2 -0
  80. package/dist/sourceFileTransformers/variable.js +41 -0
  81. package/dist/sourceFileTransformers/variable.js.map +1 -0
  82. package/dist/transform-source-file.spec.d.ts +1 -0
  83. package/dist/transform-source-file.spec.js +182 -0
  84. package/dist/transform-source-file.spec.js.map +1 -0
  85. package/dist/transformers/array-literal-expression.d.ts +10 -0
  86. package/dist/transformers/array-literal-expression.js +51 -0
  87. package/dist/transformers/array-literal-expression.js.map +1 -0
  88. package/dist/transformers/array-type.d.ts +10 -0
  89. package/dist/transformers/array-type.js +37 -0
  90. package/dist/transformers/array-type.js.map +1 -0
  91. package/dist/transformers/binding-element.d.ts +17 -0
  92. package/dist/transformers/binding-element.js +63 -0
  93. package/dist/transformers/binding-element.js.map +1 -0
  94. package/dist/transformers/class-declaration.d.ts +12 -0
  95. package/dist/transformers/class-declaration.js +116 -0
  96. package/dist/transformers/class-declaration.js.map +1 -0
  97. package/dist/transformers/conditional-type.d.ts +10 -0
  98. package/dist/transformers/conditional-type.js +38 -0
  99. package/dist/transformers/conditional-type.js.map +1 -0
  100. package/dist/transformers/constructor.d.ts +10 -0
  101. package/dist/transformers/constructor.js +49 -0
  102. package/dist/transformers/constructor.js.map +1 -0
  103. package/dist/transformers/decorator.d.ts +10 -0
  104. package/dist/transformers/decorator.js +54 -0
  105. package/dist/transformers/decorator.js.map +1 -0
  106. package/dist/transformers/enum-declaration.d.ts +10 -0
  107. package/dist/transformers/enum-declaration.js +60 -0
  108. package/dist/transformers/enum-declaration.js.map +1 -0
  109. package/dist/transformers/export-assignment.d.ts +14 -0
  110. package/dist/transformers/export-assignment.js +54 -0
  111. package/dist/transformers/export-assignment.js.map +1 -0
  112. package/dist/transformers/export-declaration.d.ts +10 -0
  113. package/dist/transformers/export-declaration.js +154 -0
  114. package/dist/transformers/export-declaration.js.map +1 -0
  115. package/dist/transformers/expression-statement.d.ts +10 -0
  116. package/dist/transformers/expression-statement.js +36 -0
  117. package/dist/transformers/expression-statement.js.map +1 -0
  118. package/dist/transformers/function-like.d.ts +11 -0
  119. package/dist/transformers/function-like.js +81 -0
  120. package/dist/transformers/function-like.js.map +1 -0
  121. package/dist/transformers/get-accessor.d.ts +10 -0
  122. package/dist/transformers/get-accessor.js +46 -0
  123. package/dist/transformers/get-accessor.js.map +1 -0
  124. package/dist/transformers/import-declaration.d.ts +10 -0
  125. package/dist/transformers/import-declaration.js +72 -0
  126. package/dist/transformers/import-declaration.js.map +1 -0
  127. package/dist/transformers/index-signature.d.ts +10 -0
  128. package/dist/transformers/index-signature.js +41 -0
  129. package/dist/transformers/index-signature.js.map +1 -0
  130. package/dist/transformers/index.d.ts +43 -0
  131. package/dist/transformers/index.js +566 -0
  132. package/dist/transformers/index.js.map +1 -0
  133. package/dist/transformers/indexed-access-type.d.ts +10 -0
  134. package/dist/transformers/indexed-access-type.js +36 -0
  135. package/dist/transformers/indexed-access-type.js.map +1 -0
  136. package/dist/transformers/interface-declaration.d.ts +11 -0
  137. package/dist/transformers/interface-declaration.js +86 -0
  138. package/dist/transformers/interface-declaration.js.map +1 -0
  139. package/dist/transformers/intersection-type.d.ts +10 -0
  140. package/dist/transformers/intersection-type.js +47 -0
  141. package/dist/transformers/intersection-type.js.map +1 -0
  142. package/dist/transformers/keyword-type.d.ts +13 -0
  143. package/dist/transformers/keyword-type.js +54 -0
  144. package/dist/transformers/keyword-type.js.map +1 -0
  145. package/dist/transformers/literal-type.d.ts +13 -0
  146. package/dist/transformers/literal-type.js +39 -0
  147. package/dist/transformers/literal-type.js.map +1 -0
  148. package/dist/transformers/literal-value.d.ts +12 -0
  149. package/dist/transformers/literal-value.js +35 -0
  150. package/dist/transformers/literal-value.js.map +1 -0
  151. package/dist/transformers/module-declaration.d.ts +10 -0
  152. package/dist/transformers/module-declaration.js +36 -0
  153. package/dist/transformers/module-declaration.js.map +1 -0
  154. package/dist/transformers/named-tuple.d.ts +10 -0
  155. package/dist/transformers/named-tuple.js +37 -0
  156. package/dist/transformers/named-tuple.js.map +1 -0
  157. package/dist/transformers/object-literal-expression.d.ts +9 -0
  158. package/dist/transformers/object-literal-expression.js +51 -0
  159. package/dist/transformers/object-literal-expression.js.map +1 -0
  160. package/dist/transformers/parameter.d.ts +14 -0
  161. package/dist/transformers/parameter.js +109 -0
  162. package/dist/transformers/parameter.js.map +1 -0
  163. package/dist/transformers/parenthesized-type.d.ts +10 -0
  164. package/dist/transformers/parenthesized-type.js +35 -0
  165. package/dist/transformers/parenthesized-type.js.map +1 -0
  166. package/dist/transformers/property-assignment.d.ts +9 -0
  167. package/dist/transformers/property-assignment.js +39 -0
  168. package/dist/transformers/property-assignment.js.map +1 -0
  169. package/dist/transformers/property-declaration.d.ts +11 -0
  170. package/dist/transformers/property-declaration.js +56 -0
  171. package/dist/transformers/property-declaration.js.map +1 -0
  172. package/dist/transformers/set-accessor.d.ts +10 -0
  173. package/dist/transformers/set-accessor.js +44 -0
  174. package/dist/transformers/set-accessor.js.map +1 -0
  175. package/dist/transformers/source-file-transformer.d.ts +15 -0
  176. package/dist/transformers/source-file-transformer.js +108 -0
  177. package/dist/transformers/source-file-transformer.js.map +1 -0
  178. package/dist/transformers/template-literal-type-span.d.ts +10 -0
  179. package/dist/transformers/template-literal-type-span.js +36 -0
  180. package/dist/transformers/template-literal-type-span.js.map +1 -0
  181. package/dist/transformers/template-literal-type.d.ts +10 -0
  182. package/dist/transformers/template-literal-type.js +44 -0
  183. package/dist/transformers/template-literal-type.js.map +1 -0
  184. package/dist/transformers/this-type.d.ts +10 -0
  185. package/dist/transformers/this-type.js +34 -0
  186. package/dist/transformers/this-type.js.map +1 -0
  187. package/dist/transformers/tuple-type.d.ts +10 -0
  188. package/dist/transformers/tuple-type.js +46 -0
  189. package/dist/transformers/tuple-type.js.map +1 -0
  190. package/dist/transformers/type-alias.d.ts +11 -0
  191. package/dist/transformers/type-alias.js +48 -0
  192. package/dist/transformers/type-alias.js.map +1 -0
  193. package/dist/transformers/type-literal.d.ts +14 -0
  194. package/dist/transformers/type-literal.js +48 -0
  195. package/dist/transformers/type-literal.js.map +1 -0
  196. package/dist/transformers/type-operator.d.ts +15 -0
  197. package/dist/transformers/type-operator.js +51 -0
  198. package/dist/transformers/type-operator.js.map +1 -0
  199. package/dist/transformers/type-predicate.d.ts +10 -0
  200. package/dist/transformers/type-predicate.js +37 -0
  201. package/dist/transformers/type-predicate.js.map +1 -0
  202. package/dist/transformers/type-query.d.ts +13 -0
  203. package/dist/transformers/type-query.js +41 -0
  204. package/dist/transformers/type-query.js.map +1 -0
  205. package/dist/transformers/type-reference.d.ts +17 -0
  206. package/dist/transformers/type-reference.js +58 -0
  207. package/dist/transformers/type-reference.js.map +1 -0
  208. package/dist/transformers/union-type.d.ts +10 -0
  209. package/dist/transformers/union-type.js +47 -0
  210. package/dist/transformers/union-type.js.map +1 -0
  211. package/dist/transformers/utils/jsdoc-to-doc-schema.d.ts +5 -0
  212. package/dist/transformers/utils/jsdoc-to-doc-schema.js +114 -0
  213. package/dist/transformers/utils/jsdoc-to-doc-schema.js.map +1 -0
  214. package/dist/transformers/utils/parse-type-from-quick-info.d.ts +36 -0
  215. package/dist/transformers/utils/parse-type-from-quick-info.js +111 -0
  216. package/dist/transformers/utils/parse-type-from-quick-info.js.map +1 -0
  217. package/dist/transformers/variable-declaration.d.ts +11 -0
  218. package/dist/transformers/variable-declaration.js +102 -0
  219. package/dist/transformers/variable-declaration.js.map +1 -0
  220. package/dist/transformers/variable-statement.d.ts +14 -0
  221. package/dist/transformers/variable-statement.js +67 -0
  222. package/dist/transformers/variable-statement.js.map +1 -0
  223. package/dist/tsconfig.default.json +25 -0
  224. package/dist/typescript.aspect.d.ts +2 -0
  225. package/dist/typescript.aspect.js +18 -0
  226. package/dist/typescript.aspect.js.map +1 -0
  227. package/dist/typescript.composition.d.ts +1 -0
  228. package/dist/typescript.composition.js +29 -0
  229. package/dist/typescript.composition.js.map +1 -0
  230. package/dist/typescript.docs.mdx +8 -0
  231. package/dist/typescript.extractor.d.ts +52 -0
  232. package/dist/typescript.extractor.js +254 -0
  233. package/dist/typescript.extractor.js.map +1 -0
  234. package/dist/typescript.main.runtime.d.ts +130 -0
  235. package/dist/typescript.main.runtime.js +400 -0
  236. package/dist/typescript.main.runtime.js.map +1 -0
  237. package/dist/typescript.parser.d.ts +13 -0
  238. package/dist/typescript.parser.js +142 -0
  239. package/dist/typescript.parser.js.map +1 -0
  240. package/dist/typescript.parser.spec.d.ts +1 -0
  241. package/dist/typescript.parser.spec.js +189 -0
  242. package/dist/typescript.parser.spec.js.map +1 -0
  243. package/esm.mjs +21 -0
  244. package/exceptions/index.ts +1 -0
  245. package/exceptions/transformer-not-found.ts +20 -0
  246. package/package.json +86 -0
  247. package/sourceFileTransformers/class.ts +73 -0
  248. package/sourceFileTransformers/empty-line-encoder.ts +56 -0
  249. package/sourceFileTransformers/export.ts +65 -0
  250. package/sourceFileTransformers/expression-statement.ts +48 -0
  251. package/sourceFileTransformers/function.ts +170 -0
  252. package/sourceFileTransformers/import.ts +101 -0
  253. package/sourceFileTransformers/index.ts +14 -0
  254. package/sourceFileTransformers/interface.ts +41 -0
  255. package/sourceFileTransformers/replaceName.ts +11 -0
  256. package/sourceFileTransformers/transform.ts +70 -0
  257. package/sourceFileTransformers/type-reference.ts +19 -0
  258. package/sourceFileTransformers/typeAlias.ts +25 -0
  259. package/sourceFileTransformers/variable.ts +25 -0
  260. package/transformers/array-literal-expression.ts +31 -0
  261. package/transformers/array-type.ts +22 -0
  262. package/transformers/binding-element.ts +35 -0
  263. package/transformers/class-declaration.ts +109 -0
  264. package/transformers/conditional-type.ts +24 -0
  265. package/transformers/constructor.ts +37 -0
  266. package/transformers/decorator.ts +30 -0
  267. package/transformers/enum-declaration.ts +32 -0
  268. package/transformers/export-assignment.ts +48 -0
  269. package/transformers/export-declaration.ts +182 -0
  270. package/transformers/expression-statement.ts +21 -0
  271. package/transformers/function-like.ts +72 -0
  272. package/transformers/get-accessor.ts +25 -0
  273. package/transformers/import-declaration.ts +57 -0
  274. package/transformers/index-signature.ts +27 -0
  275. package/transformers/index.ts +43 -0
  276. package/transformers/indexed-access-type.ts +22 -0
  277. package/transformers/interface-declaration.ts +68 -0
  278. package/transformers/intersection-type.ts +26 -0
  279. package/transformers/keyword-type.ts +40 -0
  280. package/transformers/literal-type.ts +24 -0
  281. package/transformers/literal-value.ts +40 -0
  282. package/transformers/module-declaration.ts +21 -0
  283. package/transformers/named-tuple.ts +23 -0
  284. package/transformers/object-literal-expression.ts +29 -0
  285. package/transformers/parameter.ts +115 -0
  286. package/transformers/parenthesized-type.ts +21 -0
  287. package/transformers/property-assignment.ts +24 -0
  288. package/transformers/property-declaration.ts +35 -0
  289. package/transformers/set-accessor.ts +27 -0
  290. package/transformers/source-file-transformer.ts +95 -0
  291. package/transformers/template-literal-type-span.ts +22 -0
  292. package/transformers/template-literal-type.ts +26 -0
  293. package/transformers/this-type.ts +20 -0
  294. package/transformers/tuple-type.ts +25 -0
  295. package/transformers/type-alias.ts +27 -0
  296. package/transformers/type-literal.ts +27 -0
  297. package/transformers/type-operator.ts +38 -0
  298. package/transformers/type-predicate.ts +23 -0
  299. package/transformers/type-query.ts +26 -0
  300. package/transformers/type-reference.ts +37 -0
  301. package/transformers/union-type.ts +26 -0
  302. package/transformers/utils/jsdoc-to-doc-schema.ts +114 -0
  303. package/transformers/utils/parse-type-from-quick-info.ts +99 -0
  304. package/transformers/variable-declaration.ts +111 -0
  305. package/transformers/variable-statement.ts +34 -0
  306. package/types/asset.d.ts +41 -0
  307. package/types/style.d.ts +42 -0
  308. package/typescript.composition.tsx +7 -0
  309. package/typescript.docs.mdx +8 -0
@@ -0,0 +1,119 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.functionNamesTransformer = void 0;
7
+ function _typescript() {
8
+ const data = _interopRequireDefault(require("typescript"));
9
+ _typescript = function () {
10
+ return data;
11
+ };
12
+ return data;
13
+ }
14
+ function _replaceName() {
15
+ const data = require("./replaceName");
16
+ _replaceName = function () {
17
+ return data;
18
+ };
19
+ return data;
20
+ }
21
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
22
+ const functionNamesTransformer = mapping => {
23
+ return context => {
24
+ const updateTypeReference = node => {
25
+ try {
26
+ if (_typescript().default.isTypeReferenceNode(node) && node.typeName) {
27
+ const typeName = node.typeName.getText(node.getSourceFile());
28
+ const newTypeName = (0, _replaceName().replaceName)(typeName, mapping);
29
+ if (newTypeName) {
30
+ return _typescript().default.factory.updateTypeReferenceNode(node, _typescript().default.factory.createIdentifier(newTypeName), node.typeArguments);
31
+ }
32
+ }
33
+ return _typescript().default.visitEachChild(node, updateTypeReference, context);
34
+ } catch {
35
+ return node;
36
+ }
37
+ };
38
+ const visit = node => {
39
+ if (_typescript().default.isFunctionDeclaration(node) || _typescript().default.isArrowFunction(node) || _typescript().default.isFunctionExpression(node)) {
40
+ const functionName = node.name?.getText() ?? '';
41
+ const newName = Object.entries(mapping).find(([key]) => functionName.includes(key))?.[1] ?? functionName;
42
+ const parameters = node.parameters.map(param => {
43
+ const newParamType = param.type ? _typescript().default.visitNode(param.type, updateTypeReference) : param.type;
44
+ if (_typescript().default.isIdentifier(param.name)) {
45
+ const oldName = param.name.getText();
46
+ const newParamName = Object.keys(mapping).find(key => oldName.includes(key));
47
+ if (newParamName) {
48
+ return _typescript().default.factory.updateParameterDeclaration(param, param.modifiers, param.dotDotDotToken, _typescript().default.factory.createIdentifier(newParamName), param.questionToken, newParamType, param.initializer);
49
+ }
50
+ } else if (_typescript().default.isObjectBindingPattern(param.name)) {
51
+ const elements = param.name.elements.map(element => {
52
+ const newElementName = mapping[element.name.getText()];
53
+ if (newElementName) {
54
+ return _typescript().default.factory.updateBindingElement(element, element.dotDotDotToken, element.propertyName, _typescript().default.factory.createIdentifier(newElementName), element.initializer);
55
+ }
56
+ return element;
57
+ });
58
+ const newParamName = _typescript().default.factory.createObjectBindingPattern(elements);
59
+ return _typescript().default.factory.updateParameterDeclaration(param, param.modifiers, param.dotDotDotToken, newParamName, param.questionToken, newParamType, param.initializer);
60
+ }
61
+ return param;
62
+ });
63
+ if (_typescript().default.isFunctionDeclaration(node)) {
64
+ const updatedBody = node.body && _typescript().default.isBlock(node.body) ? updateReturnStatement(node.body) : node.body;
65
+ return _typescript().default.factory.updateFunctionDeclaration(node, node.modifiers, node.asteriskToken, newName ? _typescript().default.factory.createIdentifier(newName) : node.name, node.typeParameters, parameters, node.type, updatedBody);
66
+ }
67
+ if (_typescript().default.isArrowFunction(node)) {
68
+ const updatedBody = node.body && _typescript().default.isBlock(node.body) ? updateReturnStatement(node.body) : node.body;
69
+ return _typescript().default.factory.updateArrowFunction(node, node.modifiers, node.typeParameters, parameters, node.type, node.equalsGreaterThanToken, updatedBody);
70
+ }
71
+ if (_typescript().default.isFunctionExpression(node)) {
72
+ const updatedBody = node.body && _typescript().default.isBlock(node.body) ? updateReturnStatement(node.body) : node.body;
73
+ return _typescript().default.factory.updateFunctionExpression(node, node.modifiers, node.asteriskToken, newName ? _typescript().default.factory.createIdentifier(newName) : node.name, node.typeParameters, parameters, node.type, updatedBody);
74
+ }
75
+ }
76
+ return _typescript().default.visitEachChild(node, visit, context);
77
+ };
78
+ function updateReturnStatement(body) {
79
+ if (_typescript().default.isBlock(body)) {
80
+ const updatedStatements = [];
81
+ for (const statement of body.statements) {
82
+ if (_typescript().default.isReturnStatement(statement) && statement.expression && _typescript().default.isJsxElement(statement.expression)) {
83
+ const jsxElement = statement.expression;
84
+ const openingElement = jsxElement.openingElement;
85
+ const tagName = openingElement.tagName.getText();
86
+ const newTagName = mapping[tagName];
87
+ if (newTagName) {
88
+ const updatedTagName = _typescript().default.factory.createIdentifier(newTagName);
89
+ const updatedOpeningElement = _typescript().default.factory.updateJsxOpeningElement(openingElement, updatedTagName, openingElement.typeArguments, openingElement.attributes);
90
+ const updatedClosingElement = jsxElement.closingElement ? _typescript().default.factory.updateJsxClosingElement(jsxElement.closingElement, updatedTagName) : _typescript().default.factory.createJsxClosingElement(updatedTagName);
91
+ const updatedJsxElement = _typescript().default.factory.createJsxElement(updatedOpeningElement, jsxElement.children, updatedClosingElement);
92
+ const updatedStatement = _typescript().default.factory.createReturnStatement(updatedJsxElement);
93
+ updatedStatements.push(updatedStatement);
94
+ } else {
95
+ updatedStatements.push(statement);
96
+ }
97
+ } else {
98
+ updatedStatements.push(statement);
99
+ }
100
+ }
101
+ return _typescript().default.factory.updateBlock(body, updatedStatements);
102
+ }
103
+ if (_typescript().default.isExpressionStatement(body) && _typescript().default.isReturnStatement(body.expression) && body.expression.expression && _typescript().default.isIdentifier(body.expression.expression)) {
104
+ const oldName = body.expression.expression.text;
105
+ const newName = mapping[oldName];
106
+ if (newName) {
107
+ const updatedExpression = _typescript().default.factory.createIdentifier(newName);
108
+ const updatedReturnStatement = _typescript().default.factory.createReturnStatement(updatedExpression);
109
+ return _typescript().default.factory.createBlock([updatedReturnStatement], true);
110
+ }
111
+ }
112
+ return _typescript().default.factory.createBlock([], true);
113
+ }
114
+ return node => _typescript().default.visitNode(node, visit);
115
+ };
116
+ };
117
+ exports.functionNamesTransformer = functionNamesTransformer;
118
+
119
+ //# sourceMappingURL=function.js.map
@@ -0,0 +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 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":[]}
@@ -0,0 +1,2 @@
1
+ import type { SourceFileTransformer } from './index';
2
+ export declare const importTransformer: SourceFileTransformer;
@@ -0,0 +1,71 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.importTransformer = void 0;
7
+ function _typescript() {
8
+ const data = _interopRequireDefault(require("typescript"));
9
+ _typescript = function () {
10
+ return data;
11
+ };
12
+ return data;
13
+ }
14
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
15
+ const importTransformer = mapping => {
16
+ return context => {
17
+ const visit = node => {
18
+ if (_typescript().default.isImportDeclaration(node)) {
19
+ let moduleSpecifier = node.moduleSpecifier.getText().slice(1, -1);
20
+ for (const [oldName, newName] of Object.entries(mapping)) {
21
+ if (moduleSpecifier.includes(oldName)) {
22
+ moduleSpecifier = moduleSpecifier.replace(oldName, newName);
23
+ }
24
+ }
25
+ if (node.importClause?.namedBindings && _typescript().default.isNamedImports(node.importClause.namedBindings)) {
26
+ const transformedBindings = node.importClause.namedBindings.elements.map(element => {
27
+ let originalName = element.propertyName ? element.propertyName.text : element.name.text;
28
+ const aliasName = element.name.text;
29
+ for (const [oldName, newName] of Object.entries(mapping)) {
30
+ if (originalName.startsWith(oldName) || originalName.endsWith(oldName)) {
31
+ originalName = originalName.replace(oldName, newName);
32
+ }
33
+ }
34
+ return _typescript().default.factory.updateImportSpecifier(element, false, element.propertyName ? _typescript().default.factory.createIdentifier(originalName) : undefined, _typescript().default.factory.createIdentifier(aliasName));
35
+ });
36
+ const updatedImportClause = _typescript().default.factory.updateImportClause(node.importClause, node.importClause.isTypeOnly, node.importClause.name, _typescript().default.factory.createNamedImports(transformedBindings));
37
+ return _typescript().default.factory.updateImportDeclaration(node, node.modifiers, updatedImportClause, _typescript().default.factory.createStringLiteral(moduleSpecifier), undefined);
38
+ }
39
+ return _typescript().default.factory.updateImportDeclaration(node, node.modifiers, node.importClause, _typescript().default.factory.createStringLiteral(moduleSpecifier), undefined);
40
+ }
41
+ if (_typescript().default.isImportEqualsDeclaration(node)) {
42
+ let moduleSpecifier = node.moduleReference.getText().slice(1, -1);
43
+ for (const [oldName, newName] of Object.entries(mapping)) {
44
+ if (moduleSpecifier.includes(oldName)) {
45
+ moduleSpecifier = moduleSpecifier.replace(oldName, newName);
46
+ }
47
+ }
48
+ const updatedImportEqualsDeclaration = _typescript().default.factory.updateImportEqualsDeclaration(node, node.modifiers, node.isTypeOnly, node.name, _typescript().default.factory.createExternalModuleReference(_typescript().default.factory.createStringLiteral(moduleSpecifier)));
49
+ return updatedImportEqualsDeclaration;
50
+ }
51
+ if (_typescript().default.isCallExpression(node) && _typescript().default.isIdentifier(node.expression) && node.expression.text === 'require') {
52
+ const [firstArg] = node.arguments;
53
+ if (_typescript().default.isStringLiteral(firstArg)) {
54
+ let moduleSpecifier = firstArg.text;
55
+ for (const [oldName, newName] of Object.entries(mapping)) {
56
+ if (moduleSpecifier.includes(oldName)) {
57
+ moduleSpecifier = moduleSpecifier.replace(oldName, newName);
58
+ }
59
+ }
60
+ const updatedArg = _typescript().default.factory.createStringLiteral(moduleSpecifier);
61
+ return _typescript().default.factory.updateCallExpression(node, node.expression, node.typeArguments, [updatedArg, ...node.arguments.slice(1)]);
62
+ }
63
+ }
64
+ return _typescript().default.visitEachChild(node, visit, context);
65
+ };
66
+ return node => _typescript().default.visitNode(node, visit);
67
+ };
68
+ };
69
+ exports.importTransformer = importTransformer;
70
+
71
+ //# sourceMappingURL=import.js.map
@@ -0,0 +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 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":[]}
@@ -0,0 +1,12 @@
1
+ import type ts from 'typescript';
2
+ export type SourceFileTransformer = (mapping: Record<string, string>) => ts.TransformerFactory<ts.SourceFile>;
3
+ export { classNamesTransformer } from './class';
4
+ export { interfaceNamesTransformer } from './interface';
5
+ export { variableNamesTransformer } from './variable';
6
+ export { functionNamesTransformer } from './function';
7
+ export { typeAliasNamesTransformer } from './typeAlias';
8
+ export { importTransformer } from './import';
9
+ export { expressionStatementTransformer } from './expression-statement';
10
+ export { exportTransformer } from './export';
11
+ export { transformSourceFile } from './transform';
12
+ export { typeReferenceTransformer } from './type-reference';
@@ -0,0 +1,137 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ Object.defineProperty(exports, "classNamesTransformer", {
7
+ enumerable: true,
8
+ get: function () {
9
+ return _class().classNamesTransformer;
10
+ }
11
+ });
12
+ Object.defineProperty(exports, "exportTransformer", {
13
+ enumerable: true,
14
+ get: function () {
15
+ return _export().exportTransformer;
16
+ }
17
+ });
18
+ Object.defineProperty(exports, "expressionStatementTransformer", {
19
+ enumerable: true,
20
+ get: function () {
21
+ return _expressionStatement().expressionStatementTransformer;
22
+ }
23
+ });
24
+ Object.defineProperty(exports, "functionNamesTransformer", {
25
+ enumerable: true,
26
+ get: function () {
27
+ return _function().functionNamesTransformer;
28
+ }
29
+ });
30
+ Object.defineProperty(exports, "importTransformer", {
31
+ enumerable: true,
32
+ get: function () {
33
+ return _import().importTransformer;
34
+ }
35
+ });
36
+ Object.defineProperty(exports, "interfaceNamesTransformer", {
37
+ enumerable: true,
38
+ get: function () {
39
+ return _interface().interfaceNamesTransformer;
40
+ }
41
+ });
42
+ Object.defineProperty(exports, "transformSourceFile", {
43
+ enumerable: true,
44
+ get: function () {
45
+ return _transform().transformSourceFile;
46
+ }
47
+ });
48
+ Object.defineProperty(exports, "typeAliasNamesTransformer", {
49
+ enumerable: true,
50
+ get: function () {
51
+ return _typeAlias().typeAliasNamesTransformer;
52
+ }
53
+ });
54
+ Object.defineProperty(exports, "typeReferenceTransformer", {
55
+ enumerable: true,
56
+ get: function () {
57
+ return _typeReference().typeReferenceTransformer;
58
+ }
59
+ });
60
+ Object.defineProperty(exports, "variableNamesTransformer", {
61
+ enumerable: true,
62
+ get: function () {
63
+ return _variable().variableNamesTransformer;
64
+ }
65
+ });
66
+ function _class() {
67
+ const data = require("./class");
68
+ _class = function () {
69
+ return data;
70
+ };
71
+ return data;
72
+ }
73
+ function _interface() {
74
+ const data = require("./interface");
75
+ _interface = function () {
76
+ return data;
77
+ };
78
+ return data;
79
+ }
80
+ function _variable() {
81
+ const data = require("./variable");
82
+ _variable = function () {
83
+ return data;
84
+ };
85
+ return data;
86
+ }
87
+ function _function() {
88
+ const data = require("./function");
89
+ _function = function () {
90
+ return data;
91
+ };
92
+ return data;
93
+ }
94
+ function _typeAlias() {
95
+ const data = require("./typeAlias");
96
+ _typeAlias = function () {
97
+ return data;
98
+ };
99
+ return data;
100
+ }
101
+ function _import() {
102
+ const data = require("./import");
103
+ _import = function () {
104
+ return data;
105
+ };
106
+ return data;
107
+ }
108
+ function _expressionStatement() {
109
+ const data = require("./expression-statement");
110
+ _expressionStatement = function () {
111
+ return data;
112
+ };
113
+ return data;
114
+ }
115
+ function _export() {
116
+ const data = require("./export");
117
+ _export = function () {
118
+ return data;
119
+ };
120
+ return data;
121
+ }
122
+ function _transform() {
123
+ const data = require("./transform");
124
+ _transform = function () {
125
+ return data;
126
+ };
127
+ return data;
128
+ }
129
+ function _typeReference() {
130
+ const data = require("./type-reference");
131
+ _typeReference = function () {
132
+ return data;
133
+ };
134
+ return data;
135
+ }
136
+
137
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
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":[]}
@@ -0,0 +1,2 @@
1
+ import ts from 'typescript';
2
+ export declare function interfaceNamesTransformer(nameMapping: Record<string, string>): ts.TransformerFactory<ts.SourceFile>;
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.interfaceNamesTransformer = interfaceNamesTransformer;
7
+ function _typescript() {
8
+ const data = _interopRequireDefault(require("typescript"));
9
+ _typescript = function () {
10
+ return data;
11
+ };
12
+ return data;
13
+ }
14
+ function _replaceName() {
15
+ const data = require("./replaceName");
16
+ _replaceName = function () {
17
+ return data;
18
+ };
19
+ return data;
20
+ }
21
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
22
+ function interfaceNamesTransformer(nameMapping) {
23
+ return context => {
24
+ const {
25
+ factory
26
+ } = context;
27
+ const visit = node => {
28
+ if (_typescript().default.isInterfaceDeclaration(node)) {
29
+ const oldName = node.name.text;
30
+ const newName = (0, _replaceName().replaceName)(oldName, nameMapping);
31
+ if (newName) {
32
+ const newMembers = node.members.map(member => {
33
+ if (_typescript().default.isPropertySignature(member) && _typescript().default.isIdentifier(member.name)) {
34
+ const memberName = member.name.text;
35
+ if (nameMapping[memberName]) {
36
+ return factory.updatePropertySignature(member, member.modifiers, factory.createIdentifier(nameMapping[memberName]), member.questionToken, member.type);
37
+ }
38
+ }
39
+ return member;
40
+ });
41
+ return factory.updateInterfaceDeclaration(node, node.modifiers, factory.createIdentifier(newName), node.typeParameters, node.heritageClauses, newMembers);
42
+ }
43
+ }
44
+ return _typescript().default.visitEachChild(node, child => visit(child), context);
45
+ };
46
+ return node => _typescript().default.visitNode(node, visit);
47
+ };
48
+ }
49
+
50
+ //# sourceMappingURL=interface.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_typescript","data","_interopRequireDefault","require","_replaceName","e","__esModule","default","interfaceNamesTransformer","nameMapping","context","factory","visit","node","ts","isInterfaceDeclaration","oldName","name","text","newName","replaceName","newMembers","members","map","member","isPropertySignature","isIdentifier","memberName","updatePropertySignature","modifiers","createIdentifier","questionToken","type","updateInterfaceDeclaration","typeParameters","heritageClauses","visitEachChild","child","visitNode"],"sources":["interface.ts"],"sourcesContent":["import ts from 'typescript';\nimport { replaceName } from './replaceName';\n\nexport function interfaceNamesTransformer(nameMapping: Record<string, string>): ts.TransformerFactory<ts.SourceFile> {\n return (context) => {\n const { factory } = context;\n const visit: ts.Visitor = (node) => {\n if (ts.isInterfaceDeclaration(node)) {\n const oldName = node.name.text;\n const newName = replaceName(oldName, nameMapping);\n if (newName) {\n const newMembers = node.members.map((member) => {\n if (ts.isPropertySignature(member) && ts.isIdentifier(member.name)) {\n const memberName = member.name.text;\n if (nameMapping[memberName]) {\n return factory.updatePropertySignature(\n member,\n member.modifiers,\n factory.createIdentifier(nameMapping[memberName]),\n member.questionToken,\n member.type\n );\n }\n }\n return member;\n });\n return factory.updateInterfaceDeclaration(\n node,\n node.modifiers,\n factory.createIdentifier(newName),\n node.typeParameters,\n node.heritageClauses,\n newMembers\n );\n }\n }\n return ts.visitEachChild(node, (child) => visit(child), context);\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;AACA,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,SAASG,yBAAyBA,CAACC,WAAmC,EAAwC;EACnH,OAAQC,OAAO,IAAK;IAClB,MAAM;MAAEC;IAAQ,CAAC,GAAGD,OAAO;IAC3B,MAAME,KAAiB,GAAIC,IAAI,IAAK;MAClC,IAAIC,qBAAE,CAACC,sBAAsB,CAACF,IAAI,CAAC,EAAE;QACnC,MAAMG,OAAO,GAAGH,IAAI,CAACI,IAAI,CAACC,IAAI;QAC9B,MAAMC,OAAO,GAAG,IAAAC,0BAAW,EAACJ,OAAO,EAAEP,WAAW,CAAC;QACjD,IAAIU,OAAO,EAAE;UACX,MAAME,UAAU,GAAGR,IAAI,CAACS,OAAO,CAACC,GAAG,CAAEC,MAAM,IAAK;YAC9C,IAAIV,qBAAE,CAACW,mBAAmB,CAACD,MAAM,CAAC,IAAIV,qBAAE,CAACY,YAAY,CAACF,MAAM,CAACP,IAAI,CAAC,EAAE;cAClE,MAAMU,UAAU,GAAGH,MAAM,CAACP,IAAI,CAACC,IAAI;cACnC,IAAIT,WAAW,CAACkB,UAAU,CAAC,EAAE;gBAC3B,OAAOhB,OAAO,CAACiB,uBAAuB,CACpCJ,MAAM,EACNA,MAAM,CAACK,SAAS,EAChBlB,OAAO,CAACmB,gBAAgB,CAACrB,WAAW,CAACkB,UAAU,CAAC,CAAC,EACjDH,MAAM,CAACO,aAAa,EACpBP,MAAM,CAACQ,IACT,CAAC;cACH;YACF;YACA,OAAOR,MAAM;UACf,CAAC,CAAC;UACF,OAAOb,OAAO,CAACsB,0BAA0B,CACvCpB,IAAI,EACJA,IAAI,CAACgB,SAAS,EACdlB,OAAO,CAACmB,gBAAgB,CAACX,OAAO,CAAC,EACjCN,IAAI,CAACqB,cAAc,EACnBrB,IAAI,CAACsB,eAAe,EACpBd,UACF,CAAC;QACH;MACF;MACA,OAAOP,qBAAE,CAACsB,cAAc,CAACvB,IAAI,EAAGwB,KAAK,IAAKzB,KAAK,CAACyB,KAAK,CAAC,EAAE3B,OAAO,CAAC;IAClE,CAAC;IACD,OAAQG,IAAI,IAAKC,qBAAE,CAACwB,SAAS,CAACzB,IAAI,EAAED,KAAK,CAAkB;EAC7D,CAAC;AACH","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export declare function replaceName(oldName: string, nameMapping: Record<string, string>): string | undefined;
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.replaceName = replaceName;
7
+ function replaceName(oldName, nameMapping) {
8
+ for (const old of Object.keys(nameMapping)) {
9
+ if (oldName.startsWith(old) || oldName === old) {
10
+ return oldName.replace(new RegExp(`^${old}`), nameMapping[old]);
11
+ }
12
+ if (oldName.endsWith(old)) {
13
+ return oldName.replace(new RegExp(`${old}$`), nameMapping[old]);
14
+ }
15
+ }
16
+ return undefined;
17
+ }
18
+
19
+ //# sourceMappingURL=replaceName.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["replaceName","oldName","nameMapping","old","Object","keys","startsWith","replace","RegExp","endsWith","undefined"],"sources":["replaceName.ts"],"sourcesContent":["export function replaceName(oldName: string, nameMapping: Record<string, string>): string | undefined {\n for (const old of Object.keys(nameMapping)) {\n if (oldName.startsWith(old) || oldName === old) {\n return oldName.replace(new RegExp(`^${old}`), nameMapping[old]);\n }\n if (oldName.endsWith(old)) {\n return oldName.replace(new RegExp(`${old}$`), nameMapping[old]);\n }\n }\n return undefined;\n}\n"],"mappings":";;;;;;AAAO,SAASA,WAAWA,CAACC,OAAe,EAAEC,WAAmC,EAAsB;EACpG,KAAK,MAAMC,GAAG,IAAIC,MAAM,CAACC,IAAI,CAACH,WAAW,CAAC,EAAE;IAC1C,IAAID,OAAO,CAACK,UAAU,CAACH,GAAG,CAAC,IAAIF,OAAO,KAAKE,GAAG,EAAE;MAC9C,OAAOF,OAAO,CAACM,OAAO,CAAC,IAAIC,MAAM,CAAC,IAAIL,GAAG,EAAE,CAAC,EAAED,WAAW,CAACC,GAAG,CAAC,CAAC;IACjE;IACA,IAAIF,OAAO,CAACQ,QAAQ,CAACN,GAAG,CAAC,EAAE;MACzB,OAAOF,OAAO,CAACM,OAAO,CAAC,IAAIC,MAAM,CAAC,GAAGL,GAAG,GAAG,CAAC,EAAED,WAAW,CAACC,GAAG,CAAC,CAAC;IACjE;EACF;EACA,OAAOO,SAAS;AAClB","ignoreList":[]}
@@ -0,0 +1,12 @@
1
+ import type { Formatter } from '@teambit/formatter';
2
+ import ts from 'typescript';
3
+ /**
4
+ * Transforms a TypeScript source file using the provided transformer.
5
+ *
6
+ * @param sourceFilePath Path to the TypeScript source file.
7
+ * @param sourceFileContent The content of the source file.
8
+ * @param transformers The transformers to be applied on the source file.
9
+ * @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.
10
+ * @returns A promise that resolves to the transformed source file as a string.
11
+ */
12
+ export declare function transformSourceFile(sourceFilePath: string, sourceFileContent: string, transformers: ts.TransformerFactory<ts.SourceFile>[], formatter?: Formatter, updates?: Record<string, string>): Promise<string>;
@@ -0,0 +1,76 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.transformSourceFile = transformSourceFile;
7
+ function _typescript() {
8
+ const data = _interopRequireDefault(require("typescript"));
9
+ _typescript = function () {
10
+ return data;
11
+ };
12
+ return data;
13
+ }
14
+ function path() {
15
+ const data = _interopRequireWildcard(require("path"));
16
+ path = function () {
17
+ return data;
18
+ };
19
+ return data;
20
+ }
21
+ function _emptyLineEncoder() {
22
+ const data = require("./empty-line-encoder");
23
+ _emptyLineEncoder = function () {
24
+ return data;
25
+ };
26
+ return data;
27
+ }
28
+ function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
29
+ function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e }; }
30
+ /**
31
+ * Transforms a TypeScript source file using the provided transformer.
32
+ *
33
+ * @param sourceFilePath Path to the TypeScript source file.
34
+ * @param sourceFileContent The content of the source file.
35
+ * @param transformers The transformers to be applied on the source file.
36
+ * @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.
37
+ * @returns A promise that resolves to the transformed source file as a string.
38
+ */
39
+ async function transformSourceFile(sourceFilePath, sourceFileContent, transformers, formatter, updates) {
40
+ const ext = path().extname(sourceFilePath);
41
+ const compatibleExts = ['.ts', '.tsx', '.js', '.jsx'];
42
+ if (!compatibleExts.includes(ext)) {
43
+ if (!updates) return sourceFileContent;
44
+ let transformed = sourceFileContent;
45
+ Object.entries(updates).forEach(([oldStr, newStr]) => {
46
+ const oldStringRegex = new RegExp(oldStr, 'g');
47
+ transformed = transformed.replace(oldStringRegex, newStr);
48
+ });
49
+ return transformed;
50
+ }
51
+ const encoder = new (_emptyLineEncoder().EmptyLineEncoder)();
52
+ sourceFileContent = encoder.encode(sourceFileContent);
53
+ const sourceFile = _typescript().default.createSourceFile(sourceFilePath, sourceFileContent, _typescript().default.ScriptTarget.Latest, true, _typescript().default.ScriptKind.TSX);
54
+ const transformedResult = _typescript().default.transform(sourceFile, transformers);
55
+ const transformedSourceFile = transformedResult.transformed[0];
56
+ const printer = _typescript().default.createPrinter({
57
+ removeComments: false
58
+ });
59
+ let transformedSourceFileStr = printer.printFile(transformedSourceFile);
60
+ transformedSourceFileStr = encoder.decode(transformedSourceFileStr);
61
+ // Remove trailing empty line markers
62
+ const emptyLineComment = `\\s*\\/\\*${encoder.emptyLineMarker}\\*\\/\\s*$`;
63
+ const regex = new RegExp(emptyLineComment, 'g');
64
+ transformedSourceFileStr = transformedSourceFileStr.replace(regex, '');
65
+ try {
66
+ const formattedSourceFileStr = await formatter?.formatSnippet(transformedSourceFileStr, sourceFilePath);
67
+ return formattedSourceFileStr || transformedSourceFileStr;
68
+ } catch {
69
+ // We can ignore if the formatter fails
70
+ // TODO: log the error
71
+ // ignore
72
+ }
73
+ return transformedSourceFileStr;
74
+ }
75
+
76
+ //# sourceMappingURL=transform.js.map
@@ -0,0 +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 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":[]}
@@ -0,0 +1,2 @@
1
+ import ts from 'typescript';
2
+ export declare function typeReferenceTransformer(mapping: Record<string, string>): ts.TransformerFactory<ts.SourceFile>;