@goast/typescript 0.8.0 → 0.9.0-beta.1

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 (617) hide show
  1. package/README.md +0 -1
  2. package/dist/mod.d.ts +7 -0
  3. package/{esm → dist}/src/assets.d.ts +0 -1
  4. package/dist/src/assets.js +5 -0
  5. package/{esm → dist}/src/ast/_index.d.ts +38 -39
  6. package/{esm → dist}/src/ast/_index.js +2 -0
  7. package/dist/src/ast/index.d.ts +1 -0
  8. package/{esm → dist}/src/ast/node.d.ts +0 -1
  9. package/{esm → dist}/src/ast/nodes/argument.d.ts +4 -5
  10. package/{esm → dist}/src/ast/nodes/argument.js +1 -6
  11. package/{script → dist}/src/ast/nodes/array-type.d.ts +4 -5
  12. package/{esm → dist}/src/ast/nodes/array-type.js +3 -14
  13. package/{esm → dist}/src/ast/nodes/arrow-function.d.ts +5 -6
  14. package/dist/src/ast/nodes/arrow-function.js +52 -0
  15. package/{esm → dist}/src/ast/nodes/call.d.ts +5 -6
  16. package/{esm → dist}/src/ast/nodes/call.js +3 -14
  17. package/{esm → dist}/src/ast/nodes/class.d.ts +11 -12
  18. package/dist/src/ast/nodes/class.js +74 -0
  19. package/{script → dist}/src/ast/nodes/constructor-parameter.d.ts +4 -5
  20. package/{esm → dist}/src/ast/nodes/constructor-parameter.js +5 -17
  21. package/{esm → dist}/src/ast/nodes/constructor.d.ts +5 -6
  22. package/dist/src/ast/nodes/constructor.js +40 -0
  23. package/{esm → dist}/src/ast/nodes/decorator.d.ts +5 -6
  24. package/{esm → dist}/src/ast/nodes/decorator.js +4 -15
  25. package/{esm → dist}/src/ast/nodes/doc-tag.d.ts +3 -4
  26. package/{esm → dist}/src/ast/nodes/doc-tag.js +5 -22
  27. package/{script → dist}/src/ast/nodes/doc.d.ts +5 -6
  28. package/{esm → dist}/src/ast/nodes/doc.js +11 -19
  29. package/{script → dist}/src/ast/nodes/enum-value.d.ts +4 -5
  30. package/{esm → dist}/src/ast/nodes/enum-value.js +6 -23
  31. package/{script → dist}/src/ast/nodes/enum.d.ts +5 -6
  32. package/dist/src/ast/nodes/enum.js +45 -0
  33. package/{esm → dist}/src/ast/nodes/export.d.ts +4 -5
  34. package/{esm → dist}/src/ast/nodes/export.js +4 -20
  35. package/{script → dist}/src/ast/nodes/function-type.d.ts +5 -6
  36. package/dist/src/ast/nodes/function-type.js +32 -0
  37. package/{esm → dist}/src/ast/nodes/function.d.ts +8 -9
  38. package/dist/src/ast/nodes/function.js +63 -0
  39. package/{esm → dist}/src/ast/nodes/generic-parameter.d.ts +4 -5
  40. package/dist/src/ast/nodes/generic-parameter.js +40 -0
  41. package/{esm → dist}/src/ast/nodes/indexer.d.ts +4 -5
  42. package/dist/src/ast/nodes/indexer.js +31 -0
  43. package/{script → dist}/src/ast/nodes/interface.d.ts +10 -11
  44. package/{esm → dist}/src/ast/nodes/interface.js +13 -49
  45. package/{script → dist}/src/ast/nodes/intersection-type.d.ts +4 -5
  46. package/{esm → dist}/src/ast/nodes/intersection-type.js +1 -6
  47. package/{esm → dist}/src/ast/nodes/lookup-type.d.ts +4 -5
  48. package/{esm → dist}/src/ast/nodes/lookup-type.js +2 -12
  49. package/{script → dist}/src/ast/nodes/method.d.ts +9 -10
  50. package/dist/src/ast/nodes/method.js +92 -0
  51. package/{script → dist}/src/ast/nodes/object-type.d.ts +5 -6
  52. package/{esm → dist}/src/ast/nodes/object-type.js +3 -9
  53. package/{esm → dist}/src/ast/nodes/object.d.ts +4 -5
  54. package/{esm → dist}/src/ast/nodes/object.js +3 -9
  55. package/{script → dist}/src/ast/nodes/parameter.d.ts +5 -6
  56. package/dist/src/ast/nodes/parameter.js +46 -0
  57. package/{esm → dist}/src/ast/nodes/property-accessor.d.ts +6 -7
  58. package/dist/src/ast/nodes/property-accessor.js +124 -0
  59. package/{script → dist}/src/ast/nodes/property.d.ts +8 -9
  60. package/dist/src/ast/nodes/property.js +121 -0
  61. package/{esm → dist}/src/ast/nodes/reference.d.ts +5 -6
  62. package/{esm → dist}/src/ast/nodes/reference.js +17 -44
  63. package/{script → dist}/src/ast/nodes/string.d.ts +3 -4
  64. package/{esm → dist}/src/ast/nodes/string.js +3 -14
  65. package/{script → dist}/src/ast/nodes/tuple.d.ts +4 -5
  66. package/{esm → dist}/src/ast/nodes/tuple.js +3 -14
  67. package/{esm → dist}/src/ast/nodes/type-alias.d.ts +6 -7
  68. package/dist/src/ast/nodes/type-alias.js +38 -0
  69. package/{esm → dist}/src/ast/nodes/typeof.d.ts +4 -5
  70. package/{esm → dist}/src/ast/nodes/typeof.js +1 -6
  71. package/dist/src/ast/nodes/types.d.ts +18 -0
  72. package/{esm → dist}/src/ast/nodes/union-type.d.ts +4 -5
  73. package/{esm → dist}/src/ast/nodes/union-type.js +1 -6
  74. package/{script → dist}/src/ast/nodes/variable.d.ts +5 -6
  75. package/dist/src/ast/nodes/variable.js +41 -0
  76. package/{script → dist}/src/ast/references/angular.d.ts +1 -2
  77. package/{esm → dist}/src/ast/references/easy-network-stub.d.ts +1 -2
  78. package/dist/src/ast/references/index.d.ts +5 -0
  79. package/{esm → dist}/src/ast/references/k6.d.ts +1 -2
  80. package/{esm → dist}/src/ast/references/rxjs.d.ts +1 -2
  81. package/{esm → dist}/src/ast/references/typescript.d.ts +1 -2
  82. package/{esm → dist}/src/ast/utils/get-type-script-builder-options.d.ts +1 -2
  83. package/{esm → dist}/src/ast/utils/to-ts-node.d.ts +3 -4
  84. package/{esm → dist}/src/ast/utils/write-ts-generic-parameters.d.ts +1 -2
  85. package/{esm → dist}/src/ast/utils/write-ts-members.d.ts +1 -2
  86. package/{esm → dist}/src/ast/utils/write-ts-members.js +1 -1
  87. package/{esm → dist}/src/ast/utils/write-ts-nodes.d.ts +1 -2
  88. package/{esm → dist}/src/ast/utils/write-ts-nodes.js +1 -1
  89. package/{esm → dist}/src/ast/utils/write-ts-parameters.d.ts +1 -2
  90. package/{script → dist}/src/common-results.d.ts +1 -2
  91. package/{script → dist}/src/config.d.ts +1 -2
  92. package/{script → dist}/src/file-builder.d.ts +4 -5
  93. package/{esm → dist}/src/file-builder.js +5 -16
  94. package/{script → dist}/src/generators/file-generator.d.ts +2 -3
  95. package/dist/src/generators/index.d.ts +6 -0
  96. package/dist/src/generators/models/index.d.ts +3 -0
  97. package/{esm → dist}/src/generators/models/model-generator.d.ts +5 -6
  98. package/{esm → dist}/src/generators/models/model-generator.js +14 -22
  99. package/{esm → dist}/src/generators/models/models-generator.d.ts +3 -4
  100. package/{esm → dist}/src/generators/models/models-generator.js +3 -9
  101. package/{script → dist}/src/generators/models/models.d.ts +4 -5
  102. package/{script → dist}/src/generators/services/angular-services/angular-service-generator.d.ts +5 -6
  103. package/{esm → dist}/src/generators/services/angular-services/angular-service-generator.js +34 -46
  104. package/{script → dist}/src/generators/services/angular-services/angular-services-generator.d.ts +3 -4
  105. package/{esm → dist}/src/generators/services/angular-services/angular-services-generator.js +8 -16
  106. package/dist/src/generators/services/angular-services/index.d.ts +3 -0
  107. package/{esm → dist}/src/generators/services/angular-services/models.d.ts +6 -7
  108. package/{esm → dist}/src/generators/services/angular-services/models.js +3 -62
  109. package/{esm → dist}/src/generators/services/angular-services/refs.d.ts +2 -3
  110. package/{esm → dist}/src/generators/services/angular-services/refs.js +2 -3
  111. package/{esm → dist}/src/generators/services/easy-network-stub/easy-network-stub-generator.d.ts +4 -5
  112. package/{esm → dist}/src/generators/services/easy-network-stub/easy-network-stub-generator.js +7 -11
  113. package/{script → dist}/src/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts +5 -6
  114. package/{esm → dist}/src/generators/services/easy-network-stub/easy-network-stubs-generator.js +3 -9
  115. package/dist/src/generators/services/easy-network-stub/index.d.ts +3 -0
  116. package/{script → dist}/src/generators/services/easy-network-stub/models.d.ts +6 -7
  117. package/{esm → dist}/src/generators/services/easy-network-stub/refs.d.ts +2 -3
  118. package/{script → dist}/src/generators/services/fetch-clients/fetch-client-generator.d.ts +4 -5
  119. package/{esm → dist}/src/generators/services/fetch-clients/fetch-client-generator.js +18 -21
  120. package/{esm → dist}/src/generators/services/fetch-clients/fetch-clients-generator.d.ts +3 -4
  121. package/{esm → dist}/src/generators/services/fetch-clients/fetch-clients-generator.js +3 -7
  122. package/dist/src/generators/services/fetch-clients/index.d.ts +3 -0
  123. package/{script → dist}/src/generators/services/fetch-clients/models.d.ts +4 -5
  124. package/{esm → dist}/src/generators/services/fetch-clients/refs.d.ts +2 -3
  125. package/dist/src/generators/services/k6-clients/index.d.ts +3 -0
  126. package/{script → dist}/src/generators/services/k6-clients/k6-client-generator.d.ts +6 -7
  127. package/{esm → dist}/src/generators/services/k6-clients/k6-client-generator.js +61 -76
  128. package/{script → dist}/src/generators/services/k6-clients/k6-clients-generator.d.ts +3 -4
  129. package/{esm → dist}/src/generators/services/k6-clients/k6-clients-generator.js +3 -7
  130. package/{script → dist}/src/generators/services/k6-clients/models.d.ts +6 -7
  131. package/dist/src/generators/services/k6-clients/models.js +25 -0
  132. package/{esm → dist}/src/generators/services/k6-clients/refs.d.ts +2 -3
  133. package/{script → dist}/src/import-collection.d.ts +2 -3
  134. package/{esm → dist}/src/import-collection.js +8 -40
  135. package/{script → dist}/src/utils.d.ts +0 -1
  136. package/{esm → dist}/src/utils.js +1 -2
  137. package/package.json +24 -15
  138. package/esm/mod.d.ts +0 -8
  139. package/esm/mod.d.ts.map +0 -1
  140. package/esm/package.json +0 -3
  141. package/esm/src/assets.d.ts.map +0 -1
  142. package/esm/src/assets.js +0 -6
  143. package/esm/src/ast/_index.d.ts.map +0 -1
  144. package/esm/src/ast/common.d.ts +0 -2
  145. package/esm/src/ast/common.d.ts.map +0 -1
  146. package/esm/src/ast/index.d.ts +0 -2
  147. package/esm/src/ast/index.d.ts.map +0 -1
  148. package/esm/src/ast/node.d.ts.map +0 -1
  149. package/esm/src/ast/nodes/argument.d.ts.map +0 -1
  150. package/esm/src/ast/nodes/array-type.d.ts +0 -21
  151. package/esm/src/ast/nodes/array-type.d.ts.map +0 -1
  152. package/esm/src/ast/nodes/arrow-function.d.ts.map +0 -1
  153. package/esm/src/ast/nodes/arrow-function.js +0 -83
  154. package/esm/src/ast/nodes/call.d.ts.map +0 -1
  155. package/esm/src/ast/nodes/class.d.ts.map +0 -1
  156. package/esm/src/ast/nodes/class.js +0 -120
  157. package/esm/src/ast/nodes/constructor-parameter.d.ts +0 -21
  158. package/esm/src/ast/nodes/constructor-parameter.d.ts.map +0 -1
  159. package/esm/src/ast/nodes/constructor.d.ts.map +0 -1
  160. package/esm/src/ast/nodes/constructor.js +0 -62
  161. package/esm/src/ast/nodes/decorator.d.ts.map +0 -1
  162. package/esm/src/ast/nodes/doc-tag.d.ts.map +0 -1
  163. package/esm/src/ast/nodes/doc.d.ts +0 -30
  164. package/esm/src/ast/nodes/doc.d.ts.map +0 -1
  165. package/esm/src/ast/nodes/enum-value.d.ts +0 -24
  166. package/esm/src/ast/nodes/enum-value.d.ts.map +0 -1
  167. package/esm/src/ast/nodes/enum.d.ts +0 -28
  168. package/esm/src/ast/nodes/enum.d.ts.map +0 -1
  169. package/esm/src/ast/nodes/enum.js +0 -72
  170. package/esm/src/ast/nodes/export.d.ts.map +0 -1
  171. package/esm/src/ast/nodes/function-type.d.ts +0 -25
  172. package/esm/src/ast/nodes/function-type.d.ts.map +0 -1
  173. package/esm/src/ast/nodes/function-type.js +0 -49
  174. package/esm/src/ast/nodes/function.d.ts.map +0 -1
  175. package/esm/src/ast/nodes/function.js +0 -104
  176. package/esm/src/ast/nodes/generic-parameter.d.ts.map +0 -1
  177. package/esm/src/ast/nodes/generic-parameter.js +0 -67
  178. package/esm/src/ast/nodes/indexer.d.ts.map +0 -1
  179. package/esm/src/ast/nodes/indexer.js +0 -52
  180. package/esm/src/ast/nodes/interface.d.ts +0 -38
  181. package/esm/src/ast/nodes/interface.d.ts.map +0 -1
  182. package/esm/src/ast/nodes/intersection-type.d.ts +0 -19
  183. package/esm/src/ast/nodes/intersection-type.d.ts.map +0 -1
  184. package/esm/src/ast/nodes/lookup-type.d.ts.map +0 -1
  185. package/esm/src/ast/nodes/method.d.ts +0 -48
  186. package/esm/src/ast/nodes/method.d.ts.map +0 -1
  187. package/esm/src/ast/nodes/method.js +0 -158
  188. package/esm/src/ast/nodes/object-type.d.ts +0 -22
  189. package/esm/src/ast/nodes/object-type.d.ts.map +0 -1
  190. package/esm/src/ast/nodes/object.d.ts.map +0 -1
  191. package/esm/src/ast/nodes/parameter.d.ts +0 -30
  192. package/esm/src/ast/nodes/parameter.d.ts.map +0 -1
  193. package/esm/src/ast/nodes/parameter.js +0 -77
  194. package/esm/src/ast/nodes/property-accessor.d.ts.map +0 -1
  195. package/esm/src/ast/nodes/property-accessor.js +0 -181
  196. package/esm/src/ast/nodes/property.d.ts +0 -64
  197. package/esm/src/ast/nodes/property.d.ts.map +0 -1
  198. package/esm/src/ast/nodes/property.js +0 -189
  199. package/esm/src/ast/nodes/reference.d.ts.map +0 -1
  200. package/esm/src/ast/nodes/string.d.ts +0 -20
  201. package/esm/src/ast/nodes/string.d.ts.map +0 -1
  202. package/esm/src/ast/nodes/tuple.d.ts +0 -21
  203. package/esm/src/ast/nodes/tuple.d.ts.map +0 -1
  204. package/esm/src/ast/nodes/type-alias.d.ts.map +0 -1
  205. package/esm/src/ast/nodes/type-alias.js +0 -64
  206. package/esm/src/ast/nodes/typeof.d.ts.map +0 -1
  207. package/esm/src/ast/nodes/types.d.ts +0 -19
  208. package/esm/src/ast/nodes/types.d.ts.map +0 -1
  209. package/esm/src/ast/nodes/union-type.d.ts.map +0 -1
  210. package/esm/src/ast/nodes/variable.d.ts +0 -30
  211. package/esm/src/ast/nodes/variable.d.ts.map +0 -1
  212. package/esm/src/ast/nodes/variable.js +0 -72
  213. package/esm/src/ast/references/angular.d.ts +0 -9
  214. package/esm/src/ast/references/angular.d.ts.map +0 -1
  215. package/esm/src/ast/references/easy-network-stub.d.ts.map +0 -1
  216. package/esm/src/ast/references/index.d.ts +0 -6
  217. package/esm/src/ast/references/index.d.ts.map +0 -1
  218. package/esm/src/ast/references/k6.d.ts.map +0 -1
  219. package/esm/src/ast/references/rxjs.d.ts.map +0 -1
  220. package/esm/src/ast/references/typescript.d.ts.map +0 -1
  221. package/esm/src/ast/utils/get-type-script-builder-options.d.ts.map +0 -1
  222. package/esm/src/ast/utils/to-ts-node.d.ts.map +0 -1
  223. package/esm/src/ast/utils/write-ts-generic-parameters.d.ts.map +0 -1
  224. package/esm/src/ast/utils/write-ts-members.d.ts.map +0 -1
  225. package/esm/src/ast/utils/write-ts-nodes.d.ts.map +0 -1
  226. package/esm/src/ast/utils/write-ts-parameters.d.ts.map +0 -1
  227. package/esm/src/common-results.d.ts +0 -25
  228. package/esm/src/common-results.d.ts.map +0 -1
  229. package/esm/src/config.d.ts +0 -66
  230. package/esm/src/config.d.ts.map +0 -1
  231. package/esm/src/file-builder.d.ts +0 -34
  232. package/esm/src/file-builder.d.ts.map +0 -1
  233. package/esm/src/generators/file-generator.d.ts +0 -8
  234. package/esm/src/generators/file-generator.d.ts.map +0 -1
  235. package/esm/src/generators/index.d.ts +0 -7
  236. package/esm/src/generators/index.d.ts.map +0 -1
  237. package/esm/src/generators/models/index.d.ts +0 -4
  238. package/esm/src/generators/models/index.d.ts.map +0 -1
  239. package/esm/src/generators/models/model-generator.d.ts.map +0 -1
  240. package/esm/src/generators/models/models-generator.d.ts.map +0 -1
  241. package/esm/src/generators/models/models.d.ts +0 -77
  242. package/esm/src/generators/models/models.d.ts.map +0 -1
  243. package/esm/src/generators/services/angular-services/angular-service-generator.d.ts +0 -43
  244. package/esm/src/generators/services/angular-services/angular-service-generator.d.ts.map +0 -1
  245. package/esm/src/generators/services/angular-services/angular-services-generator.d.ts +0 -31
  246. package/esm/src/generators/services/angular-services/angular-services-generator.d.ts.map +0 -1
  247. package/esm/src/generators/services/angular-services/index.d.ts +0 -4
  248. package/esm/src/generators/services/angular-services/index.d.ts.map +0 -1
  249. package/esm/src/generators/services/angular-services/models.d.ts.map +0 -1
  250. package/esm/src/generators/services/angular-services/refs.d.ts.map +0 -1
  251. package/esm/src/generators/services/easy-network-stub/easy-network-stub-generator.d.ts.map +0 -1
  252. package/esm/src/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts +0 -28
  253. package/esm/src/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts.map +0 -1
  254. package/esm/src/generators/services/easy-network-stub/index.d.ts +0 -4
  255. package/esm/src/generators/services/easy-network-stub/index.d.ts.map +0 -1
  256. package/esm/src/generators/services/easy-network-stub/models.d.ts +0 -78
  257. package/esm/src/generators/services/easy-network-stub/models.d.ts.map +0 -1
  258. package/esm/src/generators/services/easy-network-stub/refs.d.ts.map +0 -1
  259. package/esm/src/generators/services/fetch-clients/fetch-client-generator.d.ts +0 -36
  260. package/esm/src/generators/services/fetch-clients/fetch-client-generator.d.ts.map +0 -1
  261. package/esm/src/generators/services/fetch-clients/fetch-clients-generator.d.ts.map +0 -1
  262. package/esm/src/generators/services/fetch-clients/index.d.ts +0 -4
  263. package/esm/src/generators/services/fetch-clients/index.d.ts.map +0 -1
  264. package/esm/src/generators/services/fetch-clients/models.d.ts +0 -84
  265. package/esm/src/generators/services/fetch-clients/models.d.ts.map +0 -1
  266. package/esm/src/generators/services/fetch-clients/refs.d.ts.map +0 -1
  267. package/esm/src/generators/services/k6-clients/index.d.ts +0 -4
  268. package/esm/src/generators/services/k6-clients/index.d.ts.map +0 -1
  269. package/esm/src/generators/services/k6-clients/k6-client-generator.d.ts +0 -43
  270. package/esm/src/generators/services/k6-clients/k6-client-generator.d.ts.map +0 -1
  271. package/esm/src/generators/services/k6-clients/k6-clients-generator.d.ts +0 -27
  272. package/esm/src/generators/services/k6-clients/k6-clients-generator.d.ts.map +0 -1
  273. package/esm/src/generators/services/k6-clients/models.d.ts +0 -124
  274. package/esm/src/generators/services/k6-clients/models.d.ts.map +0 -1
  275. package/esm/src/generators/services/k6-clients/models.js +0 -84
  276. package/esm/src/generators/services/k6-clients/refs.d.ts.map +0 -1
  277. package/esm/src/import-collection.d.ts +0 -42
  278. package/esm/src/import-collection.d.ts.map +0 -1
  279. package/esm/src/utils.d.ts +0 -9
  280. package/esm/src/utils.d.ts.map +0 -1
  281. package/script/mod.d.ts +0 -8
  282. package/script/mod.d.ts.map +0 -1
  283. package/script/mod.js +0 -10
  284. package/script/package.json +0 -3
  285. package/script/src/assets.d.ts +0 -3
  286. package/script/src/assets.d.ts.map +0 -1
  287. package/script/src/assets.js +0 -9
  288. package/script/src/ast/_index.d.ts +0 -39
  289. package/script/src/ast/_index.d.ts.map +0 -1
  290. package/script/src/ast/_index.js +0 -108
  291. package/script/src/ast/common.d.ts +0 -2
  292. package/script/src/ast/common.d.ts.map +0 -1
  293. package/script/src/ast/common.js +0 -2
  294. package/script/src/ast/index.d.ts +0 -2
  295. package/script/src/ast/index.d.ts.map +0 -1
  296. package/script/src/ast/index.js +0 -5
  297. package/script/src/ast/node.d.ts +0 -5
  298. package/script/src/ast/node.d.ts.map +0 -1
  299. package/script/src/ast/node.js +0 -10
  300. package/script/src/ast/nodes/argument.d.ts +0 -19
  301. package/script/src/ast/nodes/argument.d.ts.map +0 -1
  302. package/script/src/ast/nodes/argument.js +0 -26
  303. package/script/src/ast/nodes/array-type.d.ts.map +0 -1
  304. package/script/src/ast/nodes/array-type.js +0 -39
  305. package/script/src/ast/nodes/arrow-function.d.ts +0 -31
  306. package/script/src/ast/nodes/arrow-function.d.ts.map +0 -1
  307. package/script/src/ast/nodes/arrow-function.js +0 -87
  308. package/script/src/ast/nodes/call.d.ts +0 -22
  309. package/script/src/ast/nodes/call.d.ts.map +0 -1
  310. package/script/src/ast/nodes/call.js +0 -38
  311. package/script/src/ast/nodes/class.d.ts +0 -43
  312. package/script/src/ast/nodes/class.d.ts.map +0 -1
  313. package/script/src/ast/nodes/class.js +0 -124
  314. package/script/src/ast/nodes/constructor-parameter.d.ts.map +0 -1
  315. package/script/src/ast/nodes/constructor-parameter.js +0 -59
  316. package/script/src/ast/nodes/constructor.d.ts +0 -27
  317. package/script/src/ast/nodes/constructor.d.ts.map +0 -1
  318. package/script/src/ast/nodes/constructor.js +0 -66
  319. package/script/src/ast/nodes/decorator.d.ts +0 -25
  320. package/script/src/ast/nodes/decorator.d.ts.map +0 -1
  321. package/script/src/ast/nodes/decorator.js +0 -50
  322. package/script/src/ast/nodes/doc-tag.d.ts +0 -74
  323. package/script/src/ast/nodes/doc-tag.d.ts.map +0 -1
  324. package/script/src/ast/nodes/doc-tag.js +0 -83
  325. package/script/src/ast/nodes/doc.d.ts.map +0 -1
  326. package/script/src/ast/nodes/doc.js +0 -69
  327. package/script/src/ast/nodes/enum-value.d.ts.map +0 -1
  328. package/script/src/ast/nodes/enum-value.js +0 -53
  329. package/script/src/ast/nodes/enum.d.ts.map +0 -1
  330. package/script/src/ast/nodes/enum.js +0 -76
  331. package/script/src/ast/nodes/export.d.ts +0 -23
  332. package/script/src/ast/nodes/export.d.ts.map +0 -1
  333. package/script/src/ast/nodes/export.js +0 -47
  334. package/script/src/ast/nodes/function-type.d.ts.map +0 -1
  335. package/script/src/ast/nodes/function-type.js +0 -53
  336. package/script/src/ast/nodes/function.d.ts +0 -37
  337. package/script/src/ast/nodes/function.d.ts.map +0 -1
  338. package/script/src/ast/nodes/function.js +0 -108
  339. package/script/src/ast/nodes/generic-parameter.d.ts +0 -27
  340. package/script/src/ast/nodes/generic-parameter.d.ts.map +0 -1
  341. package/script/src/ast/nodes/generic-parameter.js +0 -71
  342. package/script/src/ast/nodes/indexer.d.ts +0 -25
  343. package/script/src/ast/nodes/indexer.d.ts.map +0 -1
  344. package/script/src/ast/nodes/indexer.js +0 -56
  345. package/script/src/ast/nodes/interface.d.ts.map +0 -1
  346. package/script/src/ast/nodes/interface.js +0 -102
  347. package/script/src/ast/nodes/intersection-type.d.ts.map +0 -1
  348. package/script/src/ast/nodes/intersection-type.js +0 -50
  349. package/script/src/ast/nodes/lookup-type.d.ts +0 -21
  350. package/script/src/ast/nodes/lookup-type.d.ts.map +0 -1
  351. package/script/src/ast/nodes/lookup-type.js +0 -42
  352. package/script/src/ast/nodes/method.d.ts.map +0 -1
  353. package/script/src/ast/nodes/method.js +0 -163
  354. package/script/src/ast/nodes/object-type.d.ts.map +0 -1
  355. package/script/src/ast/nodes/object-type.js +0 -30
  356. package/script/src/ast/nodes/object.d.ts +0 -21
  357. package/script/src/ast/nodes/object.d.ts.map +0 -1
  358. package/script/src/ast/nodes/object.js +0 -30
  359. package/script/src/ast/nodes/parameter.d.ts.map +0 -1
  360. package/script/src/ast/nodes/parameter.js +0 -81
  361. package/script/src/ast/nodes/property-accessor.d.ts +0 -54
  362. package/script/src/ast/nodes/property-accessor.d.ts.map +0 -1
  363. package/script/src/ast/nodes/property-accessor.js +0 -188
  364. package/script/src/ast/nodes/property.d.ts.map +0 -1
  365. package/script/src/ast/nodes/property.js +0 -195
  366. package/script/src/ast/nodes/reference.d.ts +0 -64
  367. package/script/src/ast/nodes/reference.d.ts.map +0 -1
  368. package/script/src/ast/nodes/reference.js +0 -97
  369. package/script/src/ast/nodes/string.d.ts.map +0 -1
  370. package/script/src/ast/nodes/string.js +0 -42
  371. package/script/src/ast/nodes/tuple.d.ts.map +0 -1
  372. package/script/src/ast/nodes/tuple.js +0 -45
  373. package/script/src/ast/nodes/type-alias.d.ts +0 -29
  374. package/script/src/ast/nodes/type-alias.d.ts.map +0 -1
  375. package/script/src/ast/nodes/type-alias.js +0 -68
  376. package/script/src/ast/nodes/typeof.d.ts +0 -19
  377. package/script/src/ast/nodes/typeof.d.ts.map +0 -1
  378. package/script/src/ast/nodes/typeof.js +0 -29
  379. package/script/src/ast/nodes/types.d.ts +0 -19
  380. package/script/src/ast/nodes/types.d.ts.map +0 -1
  381. package/script/src/ast/nodes/types.js +0 -2
  382. package/script/src/ast/nodes/union-type.d.ts +0 -19
  383. package/script/src/ast/nodes/union-type.d.ts.map +0 -1
  384. package/script/src/ast/nodes/union-type.js +0 -50
  385. package/script/src/ast/nodes/variable.d.ts.map +0 -1
  386. package/script/src/ast/nodes/variable.js +0 -76
  387. package/script/src/ast/references/angular.d.ts.map +0 -1
  388. package/script/src/ast/references/angular.js +0 -15
  389. package/script/src/ast/references/easy-network-stub.d.ts +0 -6
  390. package/script/src/ast/references/easy-network-stub.d.ts.map +0 -1
  391. package/script/src/ast/references/easy-network-stub.js +0 -12
  392. package/script/src/ast/references/index.d.ts +0 -6
  393. package/script/src/ast/references/index.d.ts.map +0 -1
  394. package/script/src/ast/references/index.js +0 -9
  395. package/script/src/ast/references/k6.d.ts +0 -5
  396. package/script/src/ast/references/k6.d.ts.map +0 -1
  397. package/script/src/ast/references/k6.js +0 -9
  398. package/script/src/ast/references/rxjs.d.ts +0 -7
  399. package/script/src/ast/references/rxjs.d.ts.map +0 -1
  400. package/script/src/ast/references/rxjs.js +0 -9
  401. package/script/src/ast/references/typescript.d.ts +0 -32
  402. package/script/src/ast/references/typescript.d.ts.map +0 -1
  403. package/script/src/ast/references/typescript.js +0 -34
  404. package/script/src/ast/utils/get-type-script-builder-options.d.ts +0 -4
  405. package/script/src/ast/utils/get-type-script-builder-options.d.ts.map +0 -1
  406. package/script/src/ast/utils/get-type-script-builder-options.js +0 -18
  407. package/script/src/ast/utils/to-ts-node.d.ts +0 -9
  408. package/script/src/ast/utils/to-ts-node.d.ts.map +0 -1
  409. package/script/src/ast/utils/to-ts-node.js +0 -23
  410. package/script/src/ast/utils/write-ts-generic-parameters.d.ts +0 -4
  411. package/script/src/ast/utils/write-ts-generic-parameters.d.ts.map +0 -1
  412. package/script/src/ast/utils/write-ts-generic-parameters.js +0 -10
  413. package/script/src/ast/utils/write-ts-members.d.ts +0 -6
  414. package/script/src/ast/utils/write-ts-members.d.ts.map +0 -1
  415. package/script/src/ast/utils/write-ts-members.js +0 -17
  416. package/script/src/ast/utils/write-ts-nodes.d.ts +0 -7
  417. package/script/src/ast/utils/write-ts-nodes.d.ts.map +0 -1
  418. package/script/src/ast/utils/write-ts-nodes.js +0 -23
  419. package/script/src/ast/utils/write-ts-parameters.d.ts +0 -4
  420. package/script/src/ast/utils/write-ts-parameters.d.ts.map +0 -1
  421. package/script/src/ast/utils/write-ts-parameters.js +0 -13
  422. package/script/src/common-results.d.ts.map +0 -1
  423. package/script/src/common-results.js +0 -2
  424. package/script/src/config.d.ts.map +0 -1
  425. package/script/src/config.js +0 -18
  426. package/script/src/file-builder.d.ts.map +0 -1
  427. package/script/src/file-builder.js +0 -101
  428. package/script/src/generators/file-generator.d.ts.map +0 -1
  429. package/script/src/generators/file-generator.js +0 -10
  430. package/script/src/generators/index.d.ts +0 -7
  431. package/script/src/generators/index.d.ts.map +0 -1
  432. package/script/src/generators/index.js +0 -9
  433. package/script/src/generators/models/index.d.ts +0 -4
  434. package/script/src/generators/models/index.d.ts.map +0 -1
  435. package/script/src/generators/models/index.js +0 -6
  436. package/script/src/generators/models/model-generator.d.ts +0 -67
  437. package/script/src/generators/models/model-generator.d.ts.map +0 -1
  438. package/script/src/generators/models/model-generator.js +0 -420
  439. package/script/src/generators/models/models-generator.d.ts +0 -23
  440. package/script/src/generators/models/models-generator.d.ts.map +0 -1
  441. package/script/src/generators/models/models-generator.js +0 -73
  442. package/script/src/generators/models/models.d.ts.map +0 -1
  443. package/script/src/generators/models/models.js +0 -20
  444. package/script/src/generators/services/angular-services/angular-service-generator.d.ts.map +0 -1
  445. package/script/src/generators/services/angular-services/angular-service-generator.js +0 -323
  446. package/script/src/generators/services/angular-services/angular-services-generator.d.ts.map +0 -1
  447. package/script/src/generators/services/angular-services/angular-services-generator.js +0 -218
  448. package/script/src/generators/services/angular-services/index.d.ts +0 -4
  449. package/script/src/generators/services/angular-services/index.d.ts.map +0 -1
  450. package/script/src/generators/services/angular-services/index.js +0 -6
  451. package/script/src/generators/services/angular-services/models.d.ts +0 -147
  452. package/script/src/generators/services/angular-services/models.d.ts.map +0 -1
  453. package/script/src/generators/services/angular-services/models.js +0 -90
  454. package/script/src/generators/services/angular-services/refs.d.ts +0 -12
  455. package/script/src/generators/services/angular-services/refs.d.ts.map +0 -1
  456. package/script/src/generators/services/angular-services/refs.js +0 -30
  457. package/script/src/generators/services/easy-network-stub/easy-network-stub-generator.d.ts +0 -33
  458. package/script/src/generators/services/easy-network-stub/easy-network-stub-generator.d.ts.map +0 -1
  459. package/script/src/generators/services/easy-network-stub/easy-network-stub-generator.js +0 -180
  460. package/script/src/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts.map +0 -1
  461. package/script/src/generators/services/easy-network-stub/easy-network-stubs-generator.js +0 -137
  462. package/script/src/generators/services/easy-network-stub/index.d.ts +0 -4
  463. package/script/src/generators/services/easy-network-stub/index.d.ts.map +0 -1
  464. package/script/src/generators/services/easy-network-stub/index.js +0 -6
  465. package/script/src/generators/services/easy-network-stub/models.d.ts.map +0 -1
  466. package/script/src/generators/services/easy-network-stub/models.js +0 -18
  467. package/script/src/generators/services/easy-network-stub/refs.d.ts +0 -15
  468. package/script/src/generators/services/easy-network-stub/refs.d.ts.map +0 -1
  469. package/script/src/generators/services/easy-network-stub/refs.js +0 -31
  470. package/script/src/generators/services/fetch-clients/fetch-client-generator.d.ts.map +0 -1
  471. package/script/src/generators/services/fetch-clients/fetch-client-generator.js +0 -223
  472. package/script/src/generators/services/fetch-clients/fetch-clients-generator.d.ts +0 -27
  473. package/script/src/generators/services/fetch-clients/fetch-clients-generator.d.ts.map +0 -1
  474. package/script/src/generators/services/fetch-clients/fetch-clients-generator.js +0 -110
  475. package/script/src/generators/services/fetch-clients/index.d.ts +0 -4
  476. package/script/src/generators/services/fetch-clients/index.d.ts.map +0 -1
  477. package/script/src/generators/services/fetch-clients/index.js +0 -6
  478. package/script/src/generators/services/fetch-clients/models.d.ts.map +0 -1
  479. package/script/src/generators/services/fetch-clients/models.js +0 -17
  480. package/script/src/generators/services/fetch-clients/refs.d.ts +0 -8
  481. package/script/src/generators/services/fetch-clients/refs.d.ts.map +0 -1
  482. package/script/src/generators/services/fetch-clients/refs.js +0 -16
  483. package/script/src/generators/services/k6-clients/index.d.ts +0 -4
  484. package/script/src/generators/services/k6-clients/index.d.ts.map +0 -1
  485. package/script/src/generators/services/k6-clients/index.js +0 -6
  486. package/script/src/generators/services/k6-clients/k6-client-generator.d.ts.map +0 -1
  487. package/script/src/generators/services/k6-clients/k6-client-generator.js +0 -401
  488. package/script/src/generators/services/k6-clients/k6-clients-generator.d.ts.map +0 -1
  489. package/script/src/generators/services/k6-clients/k6-clients-generator.js +0 -117
  490. package/script/src/generators/services/k6-clients/models.d.ts.map +0 -1
  491. package/script/src/generators/services/k6-clients/models.js +0 -87
  492. package/script/src/generators/services/k6-clients/refs.d.ts +0 -7
  493. package/script/src/generators/services/k6-clients/refs.d.ts.map +0 -1
  494. package/script/src/generators/services/k6-clients/refs.js +0 -13
  495. package/script/src/import-collection.d.ts.map +0 -1
  496. package/script/src/import-collection.js +0 -211
  497. package/script/src/utils.d.ts.map +0 -1
  498. package/script/src/utils.js +0 -66
  499. package/src/mod.ts +0 -7
  500. package/src/src/assets.ts +0 -9
  501. package/src/src/ast/_index.ts +0 -54
  502. package/src/src/ast/index.ts +0 -1
  503. package/src/src/ast/node.ts +0 -10
  504. package/src/src/ast/nodes/argument.ts +0 -40
  505. package/src/src/ast/nodes/array-type.ts +0 -49
  506. package/src/src/ast/nodes/arrow-function.ts +0 -91
  507. package/src/src/ast/nodes/call.ts +0 -55
  508. package/src/src/ast/nodes/class.ts +0 -133
  509. package/src/src/ast/nodes/constructor-parameter.ts +0 -70
  510. package/src/src/ast/nodes/constructor.ts +0 -77
  511. package/src/src/ast/nodes/decorator.ts +0 -76
  512. package/src/src/ast/nodes/doc-tag.ts +0 -291
  513. package/src/src/ast/nodes/doc.ts +0 -102
  514. package/src/src/ast/nodes/enum-value.ts +0 -72
  515. package/src/src/ast/nodes/enum.ts +0 -77
  516. package/src/src/ast/nodes/export.ts +0 -54
  517. package/src/src/ast/nodes/function-type.ts +0 -60
  518. package/src/src/ast/nodes/function.ts +0 -107
  519. package/src/src/ast/nodes/generic-parameter.ts +0 -71
  520. package/src/src/ast/nodes/indexer.ts +0 -60
  521. package/src/src/ast/nodes/interface.ts +0 -117
  522. package/src/src/ast/nodes/intersection-type.ts +0 -67
  523. package/src/src/ast/nodes/lookup-type.ts +0 -53
  524. package/src/src/ast/nodes/method.ts +0 -138
  525. package/src/src/ast/nodes/object-type.ts +0 -52
  526. package/src/src/ast/nodes/object.ts +0 -48
  527. package/src/src/ast/nodes/parameter.ts +0 -85
  528. package/src/src/ast/nodes/property-accessor.ts +0 -173
  529. package/src/src/ast/nodes/property.ts +0 -192
  530. package/src/src/ast/nodes/reference.ts +0 -194
  531. package/src/src/ast/nodes/string.ts +0 -49
  532. package/src/src/ast/nodes/tuple.ts +0 -53
  533. package/src/src/ast/nodes/type-alias.ts +0 -75
  534. package/src/src/ast/nodes/typeof.ts +0 -42
  535. package/src/src/ast/nodes/types.ts +0 -40
  536. package/src/src/ast/nodes/union-type.ts +0 -62
  537. package/src/src/ast/nodes/variable.ts +0 -73
  538. package/src/src/ast/references/angular.ts +0 -24
  539. package/src/src/ast/references/easy-network-stub.ts +0 -21
  540. package/src/src/ast/references/index.ts +0 -5
  541. package/src/src/ast/references/k6.ts +0 -8
  542. package/src/src/ast/references/rxjs.ts +0 -7
  543. package/src/src/ast/references/typescript.ts +0 -35
  544. package/src/src/ast/utils/get-type-script-builder-options.ts +0 -19
  545. package/src/src/ast/utils/to-ts-node.ts +0 -27
  546. package/src/src/ast/utils/write-ts-generic-parameters.ts +0 -25
  547. package/src/src/ast/utils/write-ts-members.ts +0 -28
  548. package/src/src/ast/utils/write-ts-nodes.ts +0 -35
  549. package/src/src/ast/utils/write-ts-parameters.ts +0 -25
  550. package/src/src/common-results.ts +0 -26
  551. package/src/src/config.ts +0 -96
  552. package/src/src/file-builder.ts +0 -137
  553. package/src/src/generators/file-generator.ts +0 -15
  554. package/src/src/generators/index.ts +0 -6
  555. package/src/src/generators/models/index.ts +0 -3
  556. package/src/src/generators/models/model-generator.ts +0 -530
  557. package/src/src/generators/models/models-generator.ts +0 -108
  558. package/src/src/generators/models/models.ts +0 -121
  559. package/src/src/generators/services/angular-services/angular-service-generator.ts +0 -431
  560. package/src/src/generators/services/angular-services/angular-services-generator.ts +0 -295
  561. package/src/src/generators/services/angular-services/index.ts +0 -3
  562. package/src/src/generators/services/angular-services/models.ts +0 -277
  563. package/src/src/generators/services/angular-services/refs.ts +0 -54
  564. package/src/src/generators/services/easy-network-stub/easy-network-stub-generator.ts +0 -250
  565. package/src/src/generators/services/easy-network-stub/easy-network-stubs-generator.ts +0 -211
  566. package/src/src/generators/services/easy-network-stub/index.ts +0 -3
  567. package/src/src/generators/services/easy-network-stub/models.ts +0 -124
  568. package/src/src/generators/services/easy-network-stub/refs.ts +0 -47
  569. package/src/src/generators/services/fetch-clients/fetch-client-generator.ts +0 -305
  570. package/src/src/generators/services/fetch-clients/fetch-clients-generator.ts +0 -163
  571. package/src/src/generators/services/fetch-clients/index.ts +0 -3
  572. package/src/src/generators/services/fetch-clients/models.ts +0 -130
  573. package/src/src/generators/services/fetch-clients/refs.ts +0 -21
  574. package/src/src/generators/services/k6-clients/index.ts +0 -3
  575. package/src/src/generators/services/k6-clients/k6-client-generator.ts +0 -515
  576. package/src/src/generators/services/k6-clients/k6-clients-generator.ts +0 -171
  577. package/src/src/generators/services/k6-clients/models.ts +0 -247
  578. package/src/src/generators/services/k6-clients/refs.ts +0 -16
  579. package/src/src/import-collection.ts +0 -236
  580. package/src/src/utils.ts +0 -79
  581. /package/{assets → dist/assets}/client/angular/angular-service.utils.ts +0 -0
  582. /package/{assets → dist/assets}/client/angular/request-builder.ts +0 -0
  583. /package/{assets → dist/assets}/client/fetch/fetch-client.utils.ts +0 -0
  584. /package/{assets → dist/assets}/client/k6/request-builder.js +0 -0
  585. /package/{assets → dist/assets}/client/k6/request-builder.ts +0 -0
  586. /package/{assets → dist/assets}/stubs/easy-network-stub/easy-network-stub.utils.ts +0 -0
  587. /package/{esm → dist}/mod.js +0 -0
  588. /package/{src/src/ast/common.ts → dist/src/ast/common.d.ts} +0 -0
  589. /package/{esm → dist}/src/ast/common.js +0 -0
  590. /package/{esm → dist}/src/ast/index.js +0 -0
  591. /package/{esm → dist}/src/ast/node.js +0 -0
  592. /package/{esm → dist}/src/ast/nodes/types.js +0 -0
  593. /package/{esm → dist}/src/ast/references/angular.js +0 -0
  594. /package/{esm → dist}/src/ast/references/easy-network-stub.js +0 -0
  595. /package/{esm → dist}/src/ast/references/index.js +0 -0
  596. /package/{esm → dist}/src/ast/references/k6.js +0 -0
  597. /package/{esm → dist}/src/ast/references/rxjs.js +0 -0
  598. /package/{esm → dist}/src/ast/references/typescript.js +0 -0
  599. /package/{esm → dist}/src/ast/utils/get-type-script-builder-options.js +0 -0
  600. /package/{esm → dist}/src/ast/utils/to-ts-node.js +0 -0
  601. /package/{esm → dist}/src/ast/utils/write-ts-generic-parameters.js +0 -0
  602. /package/{esm → dist}/src/ast/utils/write-ts-parameters.js +0 -0
  603. /package/{esm → dist}/src/common-results.js +0 -0
  604. /package/{esm → dist}/src/config.js +0 -0
  605. /package/{esm → dist}/src/generators/file-generator.js +0 -0
  606. /package/{esm → dist}/src/generators/index.js +0 -0
  607. /package/{esm → dist}/src/generators/models/index.js +0 -0
  608. /package/{esm → dist}/src/generators/models/models.js +0 -0
  609. /package/{esm → dist}/src/generators/services/angular-services/index.js +0 -0
  610. /package/{esm → dist}/src/generators/services/easy-network-stub/index.js +0 -0
  611. /package/{esm → dist}/src/generators/services/easy-network-stub/models.js +0 -0
  612. /package/{esm → dist}/src/generators/services/easy-network-stub/refs.js +0 -0
  613. /package/{esm → dist}/src/generators/services/fetch-clients/index.js +0 -0
  614. /package/{esm → dist}/src/generators/services/fetch-clients/models.js +0 -0
  615. /package/{esm → dist}/src/generators/services/fetch-clients/refs.js +0 -0
  616. /package/{esm → dist}/src/generators/services/k6-clients/index.js +0 -0
  617. /package/{esm → dist}/src/generators/services/k6-clients/refs.js +0 -0
@@ -1,211 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ImportExportCollection = exports.defaultImportExportCollectionOptions = void 0;
4
- const node_path_1 = require("node:path");
5
- const core_1 = require("@goast/core");
6
- const config_js_1 = require("./config.js");
7
- const utils_js_1 = require("./utils.js");
8
- exports.defaultImportExportCollectionOptions = {
9
- importModuleTransformer: config_js_1.defaultTypeScriptGeneratorConfig.importModuleTransformer,
10
- useSingleQuotes: config_js_1.defaultTypeScriptGeneratorConfig.useSingleQuotes,
11
- };
12
- class ImportExportCollection {
13
- constructor(options) {
14
- Object.defineProperty(this, "_imports", {
15
- enumerable: true,
16
- configurable: true,
17
- writable: true,
18
- value: new Map()
19
- });
20
- Object.defineProperty(this, "_typeImports", {
21
- enumerable: true,
22
- configurable: true,
23
- writable: true,
24
- value: new Map()
25
- });
26
- Object.defineProperty(this, "_jsDocImports", {
27
- enumerable: true,
28
- configurable: true,
29
- writable: true,
30
- value: new Map()
31
- });
32
- Object.defineProperty(this, "_exports", {
33
- enumerable: true,
34
- configurable: true,
35
- writable: true,
36
- value: new Map()
37
- });
38
- Object.defineProperty(this, "_typeExports", {
39
- enumerable: true,
40
- configurable: true,
41
- writable: true,
42
- value: new Map()
43
- });
44
- Object.defineProperty(this, "_options", {
45
- enumerable: true,
46
- configurable: true,
47
- writable: true,
48
- value: void 0
49
- });
50
- this._options = { ...exports.defaultImportExportCollectionOptions, ...options };
51
- }
52
- get hasImports() {
53
- return this._imports.size > 0 || this._typeImports.size > 0 || this._jsDocImports.size > 0;
54
- }
55
- get hasExports() {
56
- return this._exports.size > 0 || this._typeExports.size > 0;
57
- }
58
- get imports() {
59
- return [
60
- ...this.toImport('import', this._imports),
61
- ...this.toImport('type-import', this._typeImports),
62
- ...this.toImport('js-doc', this._jsDocImports),
63
- ];
64
- }
65
- toImport(type, map) {
66
- return Array.from(map.entries())
67
- .map(([fromModule, importNames]) => Array.from(importNames).map((importName) => ({
68
- kind: this.getImportKind(fromModule),
69
- type,
70
- modulePath: fromModule,
71
- name: importName,
72
- })))
73
- .flat();
74
- }
75
- addImport(importName, fromModule, options) {
76
- var _a;
77
- const map = this.getImportMap((_a = options === null || options === void 0 ? void 0 : options.type) !== null && _a !== void 0 ? _a : 'import');
78
- const existingImport = map.get(fromModule);
79
- if (existingImport) {
80
- existingImport.add(importName);
81
- }
82
- else {
83
- map.set(fromModule, new Set([importName]));
84
- }
85
- }
86
- addExport(exportName, fromModule, options) {
87
- var _a;
88
- const map = this.getExportMap((_a = options === null || options === void 0 ? void 0 : options.type) !== null && _a !== void 0 ? _a : 'export');
89
- const existingExport = map.get(fromModule);
90
- if (existingExport) {
91
- existingExport.add(exportName);
92
- }
93
- else {
94
- map.set(fromModule, new Set([exportName]));
95
- }
96
- }
97
- clear() {
98
- this._imports.clear();
99
- this._typeImports.clear();
100
- this._jsDocImports.clear();
101
- this._exports.clear();
102
- this._typeExports.clear();
103
- }
104
- toString(options) {
105
- const builder = new core_1.StringBuilder(options);
106
- this.writeTo(builder);
107
- return builder.toString();
108
- }
109
- writeTo(builder) {
110
- const { filePath, importModuleTransformer, useSingleQuotes } = this._options;
111
- let hasPrevious = false;
112
- if (this._imports.size > 0) {
113
- const sortedImports = this.sortAndResolve(this._imports, filePath, importModuleTransformer);
114
- this.writeImportsExports(builder, 'import', sortedImports, { useSingleQuotes });
115
- hasPrevious = true;
116
- }
117
- if (this._typeImports.size > 0) {
118
- if (hasPrevious) {
119
- builder.appendLine();
120
- }
121
- const sortedImports = this.sortAndResolve(this._typeImports, filePath, importModuleTransformer);
122
- this.writeImportsExports(builder, 'import type', sortedImports, { useSingleQuotes });
123
- hasPrevious = true;
124
- }
125
- if (this._jsDocImports.size > 0) {
126
- if (hasPrevious) {
127
- builder.appendLine();
128
- }
129
- const sortedImports = this.sortAndResolve(this._jsDocImports, filePath, importModuleTransformer);
130
- builder.appendLine('/**');
131
- this.writeImportsExports(builder, ' * @import', sortedImports, { useSingleQuotes });
132
- builder.appendLine(' */');
133
- hasPrevious = true;
134
- }
135
- if (this._exports.size > 0) {
136
- if (hasPrevious) {
137
- builder.appendLine();
138
- }
139
- const sortedExports = this.sortAndResolve(this._exports, filePath, importModuleTransformer);
140
- this.writeImportsExports(builder, 'export', sortedExports, { useSingleQuotes });
141
- hasPrevious = true;
142
- }
143
- if (this._typeExports.size > 0) {
144
- if (hasPrevious) {
145
- builder.appendLine();
146
- }
147
- const sortedExports = this.sortAndResolve(this._typeExports, filePath, importModuleTransformer);
148
- this.writeImportsExports(builder, 'export type', sortedExports, { useSingleQuotes });
149
- hasPrevious = true;
150
- }
151
- }
152
- writeImportsExports(builder, keyword, data, options) {
153
- const moduleData = [];
154
- const fileData = [];
155
- for (const x of data) {
156
- if (x[1] === 'module') {
157
- moduleData.push(x);
158
- }
159
- else {
160
- fileData.push(x);
161
- }
162
- }
163
- const quote = options.useSingleQuotes ? "'" : '"';
164
- for (const [fromModule, _, names] of moduleData) {
165
- builder.appendLine(`${keyword} { ${names.join(', ')} } from ${quote}${fromModule}${quote};`);
166
- }
167
- if (moduleData.length > 0 && fileData.length > 0) {
168
- builder.appendLine();
169
- }
170
- for (const [fromModule, _, names] of fileData) {
171
- builder.appendLine(`${keyword} { ${names.join(', ')} } from ${quote}${fromModule}${quote};`);
172
- }
173
- }
174
- sortAndResolve(data, filePath, importModuleTransformer) {
175
- return Array.from(data.entries())
176
- .sort(([a], [b]) => (0, core_1.compareString)(a, b))
177
- .map(([fromModule, names]) => [...this.resolveModulePath(fromModule, filePath, importModuleTransformer), Array.from(names).sort()]);
178
- }
179
- getImportKind(fromModule) {
180
- const extName = (0, node_path_1.extname)(fromModule).toUpperCase();
181
- return extName === '.TS' || extName === '.JS' || extName === '.JSON' ? 'file' : 'module';
182
- }
183
- resolveModulePath(fromModule, filePath, importModuleTransformer) {
184
- const kind = this.getImportKind(fromModule);
185
- return [
186
- filePath && kind === 'file'
187
- ? (0, utils_js_1.getModulePathRelativeToFile)(filePath, fromModule, importModuleTransformer)
188
- : fromModule,
189
- kind,
190
- ];
191
- }
192
- getImportMap(type) {
193
- switch (type) {
194
- case 'import':
195
- return this._imports;
196
- case 'type-import':
197
- return this._typeImports;
198
- case 'js-doc':
199
- return this._jsDocImports;
200
- }
201
- }
202
- getExportMap(type) {
203
- switch (type) {
204
- case 'export':
205
- return this._exports;
206
- case 'type-export':
207
- return this._typeExports;
208
- }
209
- }
210
- }
211
- exports.ImportExportCollection = ImportExportCollection;
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/src/utils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAG1D,MAAM,MAAM,uBAAuB,GAC/B,gBAAgB,GAChB,gBAAgB,GAChB,cAAc,GACd,CAAC,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC;AAMjC,wBAAgB,yBAAyB,CAAC,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,GAAG,MAAM,CAEzF;AAED,wBAAgB,wBAAwB,CAAC,KAAK,EAAE,MAAM,EAAE,eAAe,EAAE,OAAO,GAAG,MAAM,CAKxF;AAED,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,uBAAuB,GAAG,MAAM,CAElH;AAED,wBAAgB,gCAAgC,CAC9C,IAAI,EAAE,MAAM,EACZ,EAAE,EAAE,MAAM,EACV,WAAW,EAAE,uBAAuB,GACnC,MAAM,CAER;AAoBD,wBAAgB,YAAY,CAAC,KAAK,SAAS,OAAO,EAAE,EAClD,KAAK,EAAE,MAAM,EACb,QAAQ,EAAE,QAAQ,CAAC,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,EAAE,KAAK,KAAK,MAAM,CAAC,CAAC,EACjF,GAAG,IAAI,EAAE,KAAK,GACb,MAAM,CAYR;AAED,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,SAAS,EAAE,YAAY,CAAC,CAAC,CAAC,GAAG,MAAM,CAItE"}
@@ -1,66 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.toTypeScriptStringLiteral = toTypeScriptStringLiteral;
4
- exports.toTypeScriptPropertyName = toTypeScriptPropertyName;
5
- exports.getModulePathRelativeToFile = getModulePathRelativeToFile;
6
- exports.getModulePathRelativeToDirectory = getModulePathRelativeToDirectory;
7
- exports.modifyString = modifyString;
8
- exports.getSourceDocLine = getSourceDocLine;
9
- const tslib_1 = require("tslib");
10
- const node_path_1 = tslib_1.__importStar(require("node:path"));
11
- const node_process_1 = tslib_1.__importDefault(require("node:process"));
12
- function doubleQuotedToSingleQuoted(value) {
13
- return `'${value.slice(1, -1).replace(/'/g, "\\'")}'`;
14
- }
15
- function toTypeScriptStringLiteral(value, useSingleQuotes) {
16
- return useSingleQuotes ? doubleQuotedToSingleQuoted(JSON.stringify(value)) : JSON.stringify(value);
17
- }
18
- function toTypeScriptPropertyName(value, useSingleQuotes) {
19
- if (value.match(/^[a-zA-Z_$][a-zA-Z_$0-9]*$/)) {
20
- return value;
21
- }
22
- return useSingleQuotes ? doubleQuotedToSingleQuoted(JSON.stringify(value)) : JSON.stringify(value);
23
- }
24
- function getModulePathRelativeToFile(from, to, transformer) {
25
- return transformModulePath((0, node_path_1.relative)((0, node_path_1.dirname)(from), to).replace(/\\/g, '/'), transformer);
26
- }
27
- function getModulePathRelativeToDirectory(from, to, transformer) {
28
- return transformModulePath((0, node_path_1.relative)(from, to).replace(/\\/g, '/'), transformer);
29
- }
30
- function transformModulePath(modulePath, transformer) {
31
- if (!modulePath.startsWith('.')) {
32
- modulePath = `./${modulePath}`;
33
- }
34
- if (transformer === 'omit-extension') {
35
- return modulePath.replace(/\.[^/.]+$/, '');
36
- }
37
- else if (transformer === 'with-extension') {
38
- return modulePath;
39
- }
40
- else if (transformer === 'js-extension') {
41
- return modulePath.replace(/\.[^/.]+$/, '.js');
42
- }
43
- else if (typeof transformer === 'function') {
44
- return transformer(modulePath);
45
- }
46
- return modulePath;
47
- }
48
- function modifyString(value, modifier, ...args) {
49
- var _a;
50
- if (typeof modifier === 'string') {
51
- return modifier;
52
- }
53
- if (modifier instanceof RegExp) {
54
- const match = value.match(modifier);
55
- return (_a = match === null || match === void 0 ? void 0 : match[0]) !== null && _a !== void 0 ? _a : value;
56
- }
57
- if (typeof modifier === 'function') {
58
- return modifier(value, ...args);
59
- }
60
- return value;
61
- }
62
- function getSourceDocLine(component) {
63
- const file = node_path_1.default.relative(node_process_1.default.cwd(), component.$src.file).replace(/\\/g, '/');
64
- const { line, col } = component.$src.pos;
65
- return `Source: ${file}:${line}:${col} (${component.$src.path})`;
66
- }
package/src/mod.ts DELETED
@@ -1,7 +0,0 @@
1
- export * from './src/ast/index.js';
2
- export * from './src/common-results.js';
3
- export * from './src/config.js';
4
- export * from './src/file-builder.js';
5
- export * from './src/generators/index.js';
6
- export * from './src/import-collection.js';
7
- export * from './src/utils.js';
package/src/src/assets.ts DELETED
@@ -1,9 +0,0 @@
1
- import { AssetManager } from '@goast/core';
2
- import { pathToFileURL, URL } from 'node:url';
3
-
4
- declare const __filename: string | undefined;
5
- const scriptUrl = typeof __filename === 'undefined' ? import.meta.url : pathToFileURL(__filename);
6
-
7
- const manager = new AssetManager(new URL('../assets/', scriptUrl));
8
- export const getAssetFileContent = manager.getAssetFileContent.bind(manager);
9
- export const copyAssetFile = manager.copyAssetFile.bind(manager);
@@ -1,54 +0,0 @@
1
- export { type TsAccessModifier as AccessModifier } from './common.js';
2
- export { TsNode as Node } from './node.js';
3
- export { TsArgument as Argument, tsArgument as argument } from './nodes/argument.js';
4
- export { TsArrayType as ArrayType, tsArrayType as arrayType } from './nodes/array-type.js';
5
- export { TsArrowFunction as ArrowFunction, tsArrowFunction as arrowFunction } from './nodes/arrow-function.js';
6
- export { TsCall as Call, tsCall as call } from './nodes/call.js';
7
- export { TsClass as Class, tsClass as class } from './nodes/class.js';
8
- export {
9
- TsConstructorParameter as ConstructorParameter,
10
- tsConstructorParameter as constructorParameter,
11
- } from './nodes/constructor-parameter.js';
12
- export { TsConstructor as Constructor, tsConstructor as constructor } from './nodes/constructor.js';
13
- export { TsDecorator as Decorator, tsDecorator as decorator } from './nodes/decorator.js';
14
- export { TsDocTag as DocTag, tsDocTag as docTag } from './nodes/doc-tag.js';
15
- export { TsDoc as Doc, tsDoc as doc } from './nodes/doc.js';
16
- export { TsEnumValue as EnumValue, tsEnumValue as enumValue } from './nodes/enum-value.js';
17
- export { TsEnum as Enum, tsEnum as enum } from './nodes/enum.js';
18
- export { TsExport as Export, tsExport as export } from './nodes/export.js';
19
- export { TsFunctionType as FunctionType, tsFunctionType as functionType } from './nodes/function-type.js';
20
- export { TsFunction as Function, tsFunction as function } from './nodes/function.js';
21
- export {
22
- TsGenericParameter as GenericParameter,
23
- tsGenericParameter as genericParameter,
24
- } from './nodes/generic-parameter.js';
25
- export { TsIndexer as Indexer, tsIndexer as indexer } from './nodes/indexer.js';
26
- export { TsInterface as Interface, tsInterface as interface } from './nodes/interface.js';
27
- export {
28
- TsIntersectionType as IntersectionType,
29
- tsIntersectionType as intersectionType,
30
- } from './nodes/intersection-type.js';
31
- export { TsLookupType as LookupType, tsLookupType as lookupType } from './nodes/lookup-type.js';
32
- export { TsMethod as Method, tsMethod as method } from './nodes/method.js';
33
- export { TsObjectType as ObjectType, tsObjectType as objectType } from './nodes/object-type.js';
34
- export { TsObject as Object, tsObject as object } from './nodes/object.js';
35
- export { TsParameter as Parameter, tsParameter as parameter } from './nodes/parameter.js';
36
- export { TsProperty as Property, tsProperty as property } from './nodes/property.js';
37
- export {
38
- type TsGenericModuleReferenceFactory as GenericModuleReferenceFactory,
39
- type TsGenericReferenceFactory as GenericReferenceFactory,
40
- type TsModuleReferenceFactory as ModuleReferenceFactory,
41
- TsReference as Reference,
42
- tsReference as reference,
43
- type TsReferenceFactory as ReferenceFactory,
44
- } from './nodes/reference.js';
45
- export { TsString as String, tsString as string } from './nodes/string.js';
46
- export { TsTuple as Tuple, tsTuple as tuple } from './nodes/tuple.js';
47
- export { TsTypeAlias as TypeAlias, tsTypeAlias as typeAlias } from './nodes/type-alias.js';
48
- export { TsTypeof as Typeof, tsTypeof as typeof } from './nodes/typeof.js';
49
- export { type TsType as Type, type TsValue as Value } from './nodes/types.js';
50
- export { TsUnionType as UnionType, tsUnionType as unionType } from './nodes/union-type.js';
51
- export { TsVariable as Variable, tsVariable as variable } from './nodes/variable.js';
52
- export * as refs from './references/index.js';
53
- export { getTypeScriptBuilderOptions as getBuilderOptions } from './utils/get-type-script-builder-options.js';
54
- export { toTsNode as toNode } from './utils/to-ts-node.js';
@@ -1 +0,0 @@
1
- export * as ts from './_index.js';
@@ -1,10 +0,0 @@
1
- import { AstNode, type AstNodeOptions, type SourceBuilder } from '@goast/core';
2
-
3
- export abstract class TsNode<TBuilder extends SourceBuilder, TInjects extends string = never> extends AstNode<
4
- TBuilder,
5
- TInjects
6
- > {
7
- constructor(options: AstNodeOptions<typeof AstNode<TBuilder, TInjects>>) {
8
- super(options);
9
- }
10
- }
@@ -1,40 +0,0 @@
1
- import type { AstNodeOptions, Prettify, SourceBuilder } from '@goast/core';
2
-
3
- import { TsNode } from '../node.js';
4
- import { writeTsNode } from '../utils/write-ts-nodes.js';
5
- import { writeTsParameters } from '../utils/write-ts-parameters.js';
6
- import type { TsValue } from './types.js';
7
-
8
- type Injects = never;
9
-
10
- type Options<TBuilder extends SourceBuilder, TInjects extends string = never> = AstNodeOptions<
11
- typeof TsNode<TBuilder, TInjects | Injects>,
12
- {
13
- value: TsValue<TBuilder>;
14
- }
15
- >;
16
-
17
- export class TsArgument<TBuilder extends SourceBuilder, TInjects extends string = never> extends TsNode<
18
- TBuilder,
19
- TInjects | Injects
20
- > {
21
- public value: TsValue<TBuilder>;
22
-
23
- constructor(options: Options<TBuilder, TInjects>) {
24
- super(options);
25
- this.value = options.value;
26
- }
27
-
28
- protected override onWrite(builder: TBuilder): void {
29
- writeTsNode(builder, this.value);
30
- }
31
- }
32
-
33
- const createArgument = <TBuilder extends SourceBuilder>(
34
- value: Options<TBuilder>['value'],
35
- options?: Prettify<Omit<Options<TBuilder>, 'value'>>,
36
- ): TsArgument<TBuilder> => new TsArgument<TBuilder>({ ...options, value });
37
-
38
- export const tsArgument: typeof createArgument & { write: typeof writeTsParameters } = Object.assign(createArgument, {
39
- write: writeTsParameters,
40
- });
@@ -1,49 +0,0 @@
1
- import type { AstNodeOptions, Nullable, Prettify, SourceBuilder } from '@goast/core';
2
-
3
- import { TsNode } from '../node.js';
4
- import { writeTsNode, writeTsNodes } from '../utils/write-ts-nodes.js';
5
- import type { TsType } from './types.js';
6
-
7
- type Injects = 'type';
8
-
9
- type Options<TBuilder extends SourceBuilder, TInjects extends string = never> = AstNodeOptions<
10
- typeof TsNode<TBuilder, TInjects | Injects>,
11
- {
12
- readonly?: Nullable<boolean>;
13
- type: TsType<TBuilder>;
14
- }
15
- >;
16
-
17
- export class TsArrayType<TBuilder extends SourceBuilder, TInjects extends string = never> extends TsNode<
18
- TBuilder,
19
- TInjects | Injects
20
- > {
21
- public readonly: boolean;
22
- public type: TsType<TBuilder>;
23
-
24
- constructor(options: Options<TBuilder, TInjects>) {
25
- super(options);
26
- this.readonly = options.readonly ?? false;
27
- this.type = options.type;
28
- }
29
-
30
- protected override onWrite(builder: TBuilder): void {
31
- if (this.readonly) builder.append('readonly ');
32
-
33
- builder
34
- .append(this.inject.beforeType)
35
- .parenthesize('()', (b) => writeTsNode(b, this.type))
36
- .append(this.inject.afterType);
37
-
38
- builder.append('[]');
39
- }
40
- }
41
-
42
- const createArrayType = <TBuilder extends SourceBuilder>(
43
- type: Options<TBuilder>['type'],
44
- options?: Prettify<Omit<Options<TBuilder>, 'type'>>,
45
- ): TsArrayType<TBuilder> => new TsArrayType<TBuilder>({ ...options, type });
46
-
47
- export const tsArrayType: typeof createArrayType & { write: typeof writeTsNodes } = Object.assign(createArrayType, {
48
- write: writeTsNodes,
49
- });
@@ -1,91 +0,0 @@
1
- import {
2
- type AppendValue,
3
- type AstNodeOptions,
4
- type BasicAppendValue,
5
- notNullish,
6
- type Nullable,
7
- type SourceBuilder,
8
- } from '@goast/core';
9
-
10
- import { TsNode } from '../node.js';
11
- import { writeTsNode, writeTsNodes } from '../utils/write-ts-nodes.js';
12
- import { type TsGenericParameter, tsGenericParameter } from './generic-parameter.js';
13
- import { type TsParameter, tsParameter } from './parameter.js';
14
- import type { TsType } from './types.js';
15
-
16
- type Injects = 'generics' | 'params' | 'returnType' | 'body';
17
-
18
- type Options<TBuilder extends SourceBuilder, TInjects extends string = never> = AstNodeOptions<
19
- typeof TsNode<TBuilder, TInjects | Injects>,
20
- {
21
- async?: Nullable<boolean>;
22
- generics?: Nullable<Nullable<TsGenericParameter<TBuilder> | BasicAppendValue<TBuilder>>[]>;
23
- parameters?: Nullable<Nullable<TsParameter<TBuilder> | BasicAppendValue<TBuilder>>[]>;
24
- returnType?: Nullable<TsType<TBuilder>>;
25
- singleExpression?: Nullable<boolean>;
26
- body?: Nullable<AppendValue<TBuilder>>;
27
- }
28
- >;
29
-
30
- export class TsArrowFunction<TBuilder extends SourceBuilder, TInjects extends string = never> extends TsNode<
31
- TBuilder,
32
- TInjects | Injects
33
- > {
34
- public async: boolean;
35
- public generics: (TsGenericParameter<TBuilder> | BasicAppendValue<TBuilder>)[];
36
- public parameters: (TsParameter<TBuilder> | BasicAppendValue<TBuilder>)[];
37
- public returnType: TsType<TBuilder> | null;
38
- public singleExpression: boolean;
39
- public body: AppendValue<TBuilder> | null;
40
-
41
- constructor(options: Options<TBuilder, TInjects>) {
42
- super(options);
43
- this.async = options.async ?? false;
44
- this.generics = options.generics?.filter(notNullish) ?? [];
45
- this.parameters = options.parameters?.filter(notNullish) ?? [];
46
- this.returnType = options.returnType ?? null;
47
- this.singleExpression = options.singleExpression ?? false;
48
- this.body = options.body ?? null;
49
- }
50
-
51
- protected override onWrite(builder: TBuilder): void {
52
- if (this.async) {
53
- builder.append('async ');
54
- }
55
-
56
- builder.append(this.inject.beforeGenerics);
57
- tsGenericParameter.write(builder, this.generics);
58
- builder.append(this.inject.afterGenerics);
59
-
60
- builder.append(this.inject.beforeParams);
61
- tsParameter.write(builder, this.parameters);
62
- builder.append(this.inject.afterParams);
63
-
64
- if (this.returnType) {
65
- builder.append(': ');
66
- builder.append(this.inject.beforeReturnType);
67
- writeTsNode(builder, this.returnType);
68
- builder.append(this.inject.afterReturnType);
69
- }
70
-
71
- builder.append(' => ');
72
-
73
- builder.append(this.inject.beforeBody);
74
- if (this.singleExpression && this.body) {
75
- builder.append(this.body);
76
- } else {
77
- builder.parenthesize('{}', this.body, { multiline: !!this.body });
78
- }
79
- builder.append(this.inject.afterBody);
80
- }
81
- }
82
-
83
- const createArrowFunction = <TBuilder extends SourceBuilder>(options?: Options<TBuilder>): TsArrowFunction<TBuilder> =>
84
- new TsArrowFunction<TBuilder>(options ?? {});
85
-
86
- export const tsArrowFunction: typeof createArrowFunction & { write: typeof writeTsNodes } = Object.assign(
87
- createArrowFunction,
88
- {
89
- write: writeTsNodes,
90
- },
91
- );
@@ -1,55 +0,0 @@
1
- import {
2
- type ArrayItem,
3
- type AstNodeOptions,
4
- notNullish,
5
- type Nullable,
6
- type Prettify,
7
- type SourceBuilder,
8
- } from '@goast/core';
9
-
10
- import { TsNode } from '../node.js';
11
- import { writeTsNodes } from '../utils/write-ts-nodes.js';
12
- import { type TsArgument, tsArgument } from './argument.js';
13
- import type { TsType, TsValue } from './types.js';
14
-
15
- type Injects = never;
16
-
17
- type Options<TBuilder extends SourceBuilder, TInjects extends string = never> = AstNodeOptions<
18
- typeof TsNode<TBuilder, TInjects | Injects>,
19
- {
20
- path: Nullable<TsType<TBuilder> | TsValue<TBuilder>>[];
21
- arguments?: Nullable<Nullable<TsArgument<TBuilder> | TsValue<TBuilder>>[]>;
22
- }
23
- >;
24
-
25
- export class TsCall<TBuilder extends SourceBuilder, TInjects extends string = never> extends TsNode<
26
- TBuilder,
27
- TInjects | Injects
28
- > {
29
- public path: (TsType<TBuilder> | TsValue<TBuilder>)[];
30
- public arguments: (TsArgument<TBuilder> | TsValue<TBuilder>)[] | null;
31
-
32
- constructor(options: Options<TBuilder, TInjects>) {
33
- super(options);
34
- this.path = options.path.filter(notNullish);
35
- this.arguments = options.arguments?.filter(notNullish) ?? null;
36
- }
37
-
38
- protected override onWrite(builder: TBuilder): void {
39
- writeTsNodes(builder, this.path, { separator: '.' });
40
-
41
- if (this.arguments) {
42
- tsArgument.write(builder, this.arguments);
43
- }
44
- }
45
- }
46
-
47
- const createCall = <TBuilder extends SourceBuilder>(
48
- path: Options<TBuilder>['path'] | ArrayItem<Options<TBuilder>['path']>,
49
- args?: Options<TBuilder>['arguments'],
50
- options?: Prettify<Omit<Options<TBuilder>, 'path' | 'arguments'>>,
51
- ): TsCall<TBuilder> => new TsCall<TBuilder>({ ...options, path: Array.isArray(path) ? path : [path], arguments: args });
52
-
53
- export const tsCall: typeof createCall & { write: typeof writeTsNodes } = Object.assign(createCall, {
54
- write: writeTsNodes,
55
- });