@goast/typescript 0.8.0 → 0.9.0-beta.2

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 +26 -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,295 +0,0 @@
1
- import { resolve } from 'node:path';
2
-
3
-
4
- import fs from 'fs-extra';
5
-
6
- import {
7
- type ApiService,
8
- type AppendValueGroup,
9
- appendValueGroup,
10
- Factory,
11
- type MaybePromise,
12
- type OpenApiGeneratorContext,
13
- OpenApiServicesGenerationProviderBase,
14
- toCasing,
15
- } from '@goast/core';
16
-
17
- import { copyAssetFile } from '../../../assets.js';
18
- import { ts } from '../../../ast/index.js';
19
- import { TypeScriptFileBuilder } from '../../../file-builder.js';
20
- import { modifyString } from '../../../utils.js';
21
- import {
22
- DefaultTypeScriptAngularServiceGenerator,
23
- type TypeScriptAngularServiceGenerator,
24
- } from './angular-service-generator.js';
25
- import {
26
- defaultTypeScriptAngularServicesGeneratorConfig,
27
- type TypeScriptAngularServiceGeneratorOutput,
28
- type TypeScriptAngularServicesGeneratorConfig,
29
- type TypeScriptAngularServicesGeneratorContext,
30
- type TypeScriptAngularServicesGeneratorInput,
31
- type TypeScriptAngularServicesGeneratorOutput,
32
- } from './models.js';
33
- import { getReferenceFactories } from './refs.js';
34
-
35
- type Input = TypeScriptAngularServicesGeneratorInput;
36
- type Output = TypeScriptAngularServicesGeneratorOutput;
37
- type Config = TypeScriptAngularServicesGeneratorConfig;
38
- type ServiceOutput = TypeScriptAngularServiceGeneratorOutput;
39
- type Context = TypeScriptAngularServicesGeneratorContext;
40
-
41
- export class TypeScriptAngularServicesGenerator extends OpenApiServicesGenerationProviderBase<
42
- Input,
43
- Output,
44
- Config,
45
- ServiceOutput,
46
- Context
47
- > {
48
- private readonly _clientGeneratorFactory: Factory<TypeScriptAngularServiceGenerator, []>;
49
-
50
- constructor(clientGeneratorFactory?: Factory<TypeScriptAngularServiceGenerator, []>) {
51
- super();
52
- this._clientGeneratorFactory = clientGeneratorFactory ??
53
- Factory.fromValue(new DefaultTypeScriptAngularServiceGenerator());
54
- }
55
-
56
- protected override initResult(): Output {
57
- return {
58
- typescript: {
59
- services: {},
60
- indexFiles: { services: undefined, responseModels: undefined },
61
- },
62
- };
63
- }
64
-
65
- protected override buildContext(
66
- context: OpenApiGeneratorContext<Input>,
67
- config?: Partial<Config> | undefined,
68
- ): Context {
69
- const providerContext = this.getProviderContext(context, config, defaultTypeScriptAngularServicesGeneratorConfig);
70
- return Object.assign(providerContext, {
71
- refs: getReferenceFactories(providerContext.config),
72
- });
73
- }
74
-
75
- protected override async generateAdditionalFiles(ctx: TypeScriptAngularServicesGeneratorContext): Promise<void> {
76
- await this.generateUtilsFiles(ctx);
77
- ctx.output.typescript.indexFiles = this.generateIndexFiles(ctx);
78
- }
79
-
80
- protected override generateService(ctx: Context, service: ApiService): MaybePromise<ServiceOutput> {
81
- const clientGenerator = this._clientGeneratorFactory.create();
82
- return clientGenerator.generate({
83
- ...ctx,
84
- service,
85
- });
86
- }
87
-
88
- protected override addServiceResult(ctx: Context, service: ApiService, result: ServiceOutput): void {
89
- ctx.output.typescript.services[service.id] = result;
90
- }
91
-
92
- // #region Utils
93
- protected async generateUtilsFiles(ctx: Context): Promise<void> {
94
- const targetDir = resolve(ctx.config.outputDir, ctx.config.utilsDir);
95
- await fs.ensureDir(targetDir);
96
-
97
- await copyAssetFile('client/angular/request-builder.ts', targetDir, 'Request Builder');
98
- await copyAssetFile('client/angular/angular-service.utils.ts', targetDir, 'Angular Service Utils');
99
-
100
- TypeScriptFileBuilder.generate({
101
- logName: 'api configuration',
102
- filePath: resolve(targetDir, 'api-configuration.ts'),
103
- options: ctx.config,
104
- generator: (b) => b.append(this.getApiConfigurationFileContent(ctx)),
105
- });
106
-
107
- TypeScriptFileBuilder.generate({
108
- logName: 'api base service',
109
- filePath: resolve(targetDir, 'api-base-service.ts'),
110
- options: ctx.config,
111
- generator: (b) => b.append(this.getApiBaseServiceFileContent(ctx)),
112
- });
113
-
114
- if (!ctx.config.strictResponseTypes) {
115
- TypeScriptFileBuilder.generate({
116
- logName: 'http status codes',
117
- filePath: resolve(targetDir, 'http-status-code.ts'),
118
- options: ctx.config,
119
- generator: (b) => b.append(this.getHttpStatusCodeFileContent(ctx)),
120
- });
121
- }
122
-
123
- if (ctx.config.provideKind === 'provide-fn') {
124
- TypeScriptFileBuilder.generate({
125
- logName: 'providers',
126
- filePath: resolve(targetDir, 'provide.ts'),
127
- options: ctx.config,
128
- generator: (b) => b.append(this.getProvideFnFileContent(ctx)),
129
- });
130
- }
131
- }
132
-
133
- protected getApiConfigurationFileContent(ctx: Context): AppendValueGroup<TypeScriptFileBuilder> {
134
- return appendValueGroup(
135
- [
136
- ts.class(toCasing(`${ctx.config.domainName ?? ''}ApiConfiguration`, ctx.config.typeNameCasing), {
137
- doc: ts.doc({ description: `${ctx.config.domainName ?? 'Global'} API Configuration.` }),
138
- decorators: [
139
- ts.decorator(ts.refs.angular.injectable(), [
140
- ctx.config.provideKind === 'root' ? ts.toNode({ providedIn: 'root' }) : null,
141
- ]),
142
- ],
143
- export: true,
144
- members: [
145
- ts.property('rootUrl', {
146
- accessModifier: 'public',
147
- type: ts.refs.string(),
148
- value: ts.string(this.getRootUrl(ctx)),
149
- }),
150
- ],
151
- }),
152
- ],
153
- '\n',
154
- );
155
- }
156
-
157
- protected getApiBaseServiceFileContent(ctx: Context): AppendValueGroup<TypeScriptFileBuilder> {
158
- return appendValueGroup(
159
- [
160
- ts.class('ApiBaseService', {
161
- doc: ts.doc({ description: 'Base class for API services.' }),
162
- export: true,
163
- abstract: true,
164
- members: [
165
- ts.property('config', {
166
- accessModifier: 'protected',
167
- value: (b) => b.append(ts.refs.angular.inject(), '(', ctx.refs.apiConfiguration(), ')'),
168
- }),
169
- ts.property('http', {
170
- accessModifier: 'protected',
171
- value: (b) => b.append(ts.refs.angular.inject(), '(', ts.refs.angular.httpClient(), ')'),
172
- }),
173
- ts.property('_rootUrl', { accessModifier: 'private', type: ts.refs.string(), value: ts.string('') }),
174
- ts.property('rootUrl', {
175
- doc: ts.doc({
176
- description:
177
- `Gets or sets the root URL for API operations provided by this service.\nFalls back to \`${ctx.refs.apiConfiguration.refName}.rootUrl\` if not set in this service.`,
178
- }),
179
- accessModifier: 'public',
180
- type: ts.refs.string(),
181
- get: ts.property.getter({ body: 'return this._rootUrl || this.config.rootUrl;' }),
182
- set: ts.property.setter({ body: 'this._rootUrl = value;' }),
183
- }),
184
- ],
185
- }),
186
- ],
187
- '\n',
188
- );
189
- }
190
-
191
- protected getHttpStatusCodeFileContent(ctx: Context): AppendValueGroup<TypeScriptFileBuilder> {
192
- return appendValueGroup(
193
- [
194
- ts.typeAlias('HttpStatusCode', ts.unionType(ctx.config.possibleStatusCodes), {
195
- doc: ts.doc({ description: 'The possible status codes that any API endpoint can return.' }),
196
- export: true,
197
- }),
198
- ],
199
- '\n',
200
- );
201
- }
202
-
203
- protected getProvideFnFileContent(ctx: Context): AppendValueGroup<TypeScriptFileBuilder> {
204
- return appendValueGroup(
205
- [
206
- ts.function(toCasing(`provide_${ctx.config.domainName ?? ''}_Api`, ctx.config.functionNameCasing), {
207
- doc: ts.doc({
208
- description: 'Provides all the API services' +
209
- (ctx.config.domainName ? ` for ${ctx.config.domainName}` : '') + '.',
210
- }),
211
- export: true,
212
- parameters: [ts.parameter('config', { type: ctx.refs.apiConfiguration(), optional: true })],
213
- returnType: ts.refs.angular.provider(),
214
- body: appendValueGroup([
215
- 'return ',
216
- ts.tuple<TypeScriptFileBuilder>([
217
- (b) =>
218
- b.append(
219
- 'config ? { provide: ',
220
- ctx.refs.apiConfiguration(),
221
- ', useValue: config } : ',
222
- ctx.refs.apiConfiguration(),
223
- ),
224
- ...Object.values(ctx.output.typescript.services).map((x) => ts.reference(x.component, x.filePath)),
225
- ]),
226
- ';',
227
- ]),
228
- }),
229
- ],
230
- '\n',
231
- );
232
- }
233
-
234
- protected getRootUrl(ctx: Context): string {
235
- return modifyString<[]>(
236
- (ctx.data.services[0]?.$src ?? ctx.data.services[0]?.endpoints[0]?.$src)?.document?.servers?.[0]?.url ?? '/',
237
- ctx.config.rootUrl,
238
- );
239
- }
240
- // #endregion
241
-
242
- // #region Index
243
- protected generateIndexFiles(ctx: Context): Output['typescript']['indexFiles'] {
244
- const servicesIndexFilePath = this.getServicesIndexFilePath(ctx);
245
- const responseModelsIndexFilePath = this.getResponseModelsIndexFilePath(ctx);
246
-
247
- TypeScriptFileBuilder.tryGenerate({
248
- logName: 'services index file',
249
- filePath: servicesIndexFilePath,
250
- options: ctx.config,
251
- generator: (b) => b.append(this.getServicesIndexFileContent(ctx)),
252
- });
253
-
254
- TypeScriptFileBuilder.tryGenerate({
255
- logName: 'response models index file',
256
- filePath: responseModelsIndexFilePath,
257
- options: ctx.config,
258
- generator: (b) => b.append(this.getResponseModelsIndexFileContent(ctx)),
259
- });
260
-
261
- return {
262
- services: servicesIndexFilePath,
263
- responseModels: responseModelsIndexFilePath,
264
- };
265
- }
266
-
267
- protected getServicesIndexFileContent(ctx: Context): AppendValueGroup<TypeScriptFileBuilder> {
268
- return appendValueGroup([
269
- ts.export(ctx.refs.apiConfiguration.refName, ctx.refs.apiConfiguration.moduleNameOrfilePath),
270
- ctx.config.provideKind === 'provide-fn'
271
- ? ts.export(ctx.refs.provide.refName, ctx.refs.provide.moduleNameOrfilePath)
272
- : null,
273
- ...Object.values(ctx.output.typescript.services).map((x) => ts.export(x.component, x.filePath)),
274
- ]);
275
- }
276
-
277
- protected getResponseModelsIndexFileContent(ctx: Context): AppendValueGroup<TypeScriptFileBuilder> {
278
- return appendValueGroup(
279
- Object.values(ctx.output.typescript.services)
280
- .flatMap((x) => Object.values(x.responseModels))
281
- .map((x) => ts.export(x.component, x.filePath, { kind: 'type-export' })),
282
- );
283
- }
284
-
285
- protected getServicesIndexFilePath(ctx: Context): string | null {
286
- return ctx.config.servicesIndexFile ? resolve(ctx.config.outputDir, ctx.config.servicesIndexFile) : null;
287
- }
288
-
289
- protected getResponseModelsIndexFilePath(ctx: Context): string | null {
290
- return ctx.config.responseModelsIndexFile
291
- ? resolve(ctx.config.outputDir, ctx.config.responseModelsIndexFile)
292
- : null;
293
- }
294
- // #endregion
295
- }
@@ -1,3 +0,0 @@
1
- export * from './angular-service-generator.js';
2
- export * from './angular-services-generator.js';
3
- export * from './models.js';
@@ -1,277 +0,0 @@
1
- import type {
2
- ApiEndpoint,
3
- ApiSchema,
4
- ApiService,
5
- DefaultGenerationProviderConfig,
6
- ExtendedStringCasing,
7
- Nullable,
8
- OpenApiServicesGenerationProviderContext,
9
- } from '@goast/core';
10
-
11
- import type { ts } from '../../../ast/index.js';
12
- import type { TypeScriptExportOutput } from '../../../common-results.js';
13
- import { defaultTypeScriptGeneratorConfig, type TypeScriptGeneratorConfig } from '../../../config.js';
14
- import type { TypeScriptFileBuilder } from '../../../file-builder.js';
15
- import type { TypeScriptModelGeneratorOutput } from '../../models/index.js';
16
- import type { getReferenceFactories } from './refs.js';
17
-
18
- export type TypeScriptAngularServicesGeneratorConfig = TypeScriptGeneratorConfig & {
19
- /**
20
- * How the services should be provided in the Angular application.
21
- * - `root` - provides all the services using `Injectable({ providedIn: 'root' })`
22
- * - `provide-fn` - generates a function `provideApiClients` that provides the services
23
- * @default 'root'
24
- */
25
- provideKind: 'root' | 'provide-fn';
26
-
27
- /**
28
- * The domain name of the API. Used as a prefix for exported components (e.g. `ApiConfiguration`).
29
- * @default undefined
30
- */
31
- domainName: Nullable<string>;
32
-
33
- /**
34
- * Whether to use strict response types for the services.
35
- * If enabled only the status codes are included that are defined in the OpenAPI specification or the `defaultStatusCodeResponseTypes` option.
36
- * @default true
37
- */
38
- strictResponseTypes: boolean;
39
-
40
- /**
41
- * The default response types for status codes that are not defined in the OpenAPI specification.
42
- * @example
43
- * {
44
- * 400: {
45
- * parser: 'json',
46
- * type: schemas =>
47
- * schemas.find(s => s.name === 'BadRequestResponse')
48
- * ?? throwExp('BadRequestResponse not found'),
49
- * },
50
- * 404: null,
51
- * 500: {
52
- * parser: 'json',
53
- * type: ts.refs.any(),
54
- * },
55
- * }
56
- * @default
57
- * {
58
- * 401: null,
59
- * 403: null,
60
- * 500: null,
61
- * }
62
- */
63
- defaultStatusCodeResponseTypes: Record<
64
- number,
65
- {
66
- parser: 'text' | 'json';
67
- // deno-lint-ignore ban-types
68
- type: Exclude<ts.Type<TypeScriptFileBuilder>, Function> | ((schemas: readonly ApiSchema[]) => ApiSchema);
69
- } | null
70
- >;
71
-
72
- /**
73
- * The default content type which is used for the request. If not defined the first one defined in the OpenApi specification is used.
74
- * @default undefined
75
- */
76
- defaultRequestContentType: Nullable<string>;
77
-
78
- /**
79
- * The default content type which is used for the success response. If not defined the first one defined in the OpenApi specification is used.
80
- * @default undefined
81
- */
82
- defaultSuccessResponseContentType: Nullable<string>;
83
-
84
- /**
85
- * The possible status codes that any API endpoint can return.
86
- * This is only used when `strictResponseTypes` is set to `false`.
87
- * @default
88
- * [100, 101, 102, 103, 200, 201, 202, 203, 204, 205, 206, 207, 208, 226, 300, 301, 302, 303, 304, 305, 306, 307, 308, 400, 401, 402, 403, 404, 405, 406, 407, 408, 409, 410, 411, 412, 413, 414, 415, 416, 417, 421, 422, 423, 424, 425, 426, 428, 429, 431, 451, 500, 501, 502, 503, 504, 505, 506, 507, 508, 510, 511]
89
- */
90
- possibleStatusCodes: number[];
91
-
92
- /**
93
- * Explicitly set the root URL of the API. If `undefined`, the root URL is taken from the first `server` in the OpenAPI specification.
94
- * @default undefined
95
- */
96
- rootUrl: Nullable<string | RegExp | ((rootUrl: string) => string)>;
97
-
98
- /**
99
- * Modifier that is applied to the path of each endpoint.
100
- * @default undefined
101
- */
102
- pathModifier: Nullable<RegExp | ((path: string, endpoint: ApiEndpoint) => string)>;
103
-
104
- /**
105
- * The directory where the services should be saved. The path is relative to the output directory.
106
- * @default 'services'
107
- */
108
- servicesDir: string;
109
-
110
- /**
111
- * The casing of the file names for the services. If nullish, the `fileNameCasing` is used.
112
- * @default { casing: 'kebab', suffix: '.service' }
113
- */
114
- serviceFileNameCasing: Nullable<ExtendedStringCasing>;
115
-
116
- /**
117
- * The path to the index file where all services should be exported. The path is relative to the output directory. If nullish, no index file will be generated.
118
- * @default 'services.ts'
119
- */
120
- servicesIndexFile: Nullable<string>;
121
-
122
- /**
123
- * The directory where the response models should be saved. The path is relative to the output directory.
124
- * @default 'models/responses'
125
- */
126
- responseModelsDir: string;
127
-
128
- /**
129
- * The casing of the file names for the response models. If nullish, the `fileNameCasing` is used.
130
- * @default { casing: 'kebab', suffix: '-responses.model' }
131
- */
132
- responseModelFileNameCasing: Nullable<ExtendedStringCasing>;
133
-
134
- /**
135
- * The path to the index file where all response models should be exported. The path is relative to the output directory. If nullish, no index file will be generated.
136
- * @default 'responses.ts'
137
- */
138
- responseModelsIndexFile: Nullable<string>;
139
-
140
- /**
141
- * The directory where the utilies should be saved. The path is relative to the output directory.
142
- * @default 'utils'
143
- */
144
- utilsDir: string;
145
- };
146
-
147
- export const defaultTypeScriptAngularServicesGeneratorConfig: DefaultGenerationProviderConfig<
148
- TypeScriptAngularServicesGeneratorConfig
149
- > = {
150
- ...defaultTypeScriptGeneratorConfig,
151
-
152
- provideKind: 'provide-fn',
153
- domainName: undefined,
154
- strictResponseTypes: true,
155
- defaultStatusCodeResponseTypes: {
156
- 401: null,
157
- 403: null,
158
- 500: null,
159
- },
160
- defaultRequestContentType: undefined,
161
- defaultSuccessResponseContentType: undefined,
162
- possibleStatusCodes: [
163
- 100,
164
- 101,
165
- 102,
166
- 103,
167
- 200,
168
- 201,
169
- 202,
170
- 203,
171
- 204,
172
- 205,
173
- 206,
174
- 207,
175
- 208,
176
- 226,
177
- 300,
178
- 301,
179
- 302,
180
- 303,
181
- 304,
182
- 305,
183
- 306,
184
- 307,
185
- 308,
186
- 400,
187
- 401,
188
- 402,
189
- 403,
190
- 404,
191
- 405,
192
- 406,
193
- 407,
194
- 408,
195
- 409,
196
- 410,
197
- 411,
198
- 412,
199
- 413,
200
- 414,
201
- 415,
202
- 416,
203
- 417,
204
- 421,
205
- 422,
206
- 423,
207
- 424,
208
- 425,
209
- 426,
210
- 428,
211
- 429,
212
- 431,
213
- 451,
214
- 500,
215
- 501,
216
- 502,
217
- 503,
218
- 504,
219
- 505,
220
- 506,
221
- 507,
222
- 508,
223
- 510,
224
- 511,
225
- ],
226
- rootUrl: undefined,
227
- pathModifier: undefined,
228
-
229
- servicesDir: 'services',
230
- serviceFileNameCasing: { casing: 'kebab', suffix: '.service' },
231
- servicesIndexFile: 'services.ts',
232
- responseModelsDir: 'models/responses',
233
- responseModelFileNameCasing: { casing: 'kebab', suffix: '-responses.model' },
234
- responseModelsIndexFile: 'responses.ts',
235
- utilsDir: 'utils',
236
- };
237
-
238
- export type TypeScriptAngularServicesGeneratorInput = {
239
- typescript: {
240
- models: {
241
- [schemaId: string]: TypeScriptModelGeneratorOutput;
242
- };
243
- };
244
- };
245
-
246
- export type TypeScriptAngularServicesGeneratorOutput = {
247
- typescript: {
248
- services: {
249
- [serviceId: string]: TypeScriptAngularServiceGeneratorOutput;
250
- };
251
- indexFiles: {
252
- services: Nullable<string>;
253
- responseModels: Nullable<string>;
254
- };
255
- };
256
- };
257
-
258
- export type TypeScriptAngularServiceGeneratorOutput = TypeScriptExportOutput & {
259
- responseModels: {
260
- [operationId: string]: TypeScriptExportOutput;
261
- };
262
- };
263
-
264
- export type TypeScriptAngularServicesGeneratorContext =
265
- & OpenApiServicesGenerationProviderContext<
266
- TypeScriptAngularServicesGeneratorInput,
267
- TypeScriptAngularServicesGeneratorOutput,
268
- TypeScriptAngularServicesGeneratorConfig,
269
- TypeScriptAngularServiceGeneratorOutput
270
- >
271
- & {
272
- refs: ReturnType<typeof getReferenceFactories>;
273
- };
274
-
275
- export type TypeScriptAngularServiceGeneratorContext = TypeScriptAngularServicesGeneratorContext & {
276
- readonly service: ApiService;
277
- };
@@ -1,54 +0,0 @@
1
- import { join, resolve } from 'node:path';
2
-
3
- import { toCasing } from '@goast/core';
4
-
5
- import { ts } from '../../../ast/index.js';
6
-
7
- import type { TypeScriptAngularServicesGeneratorConfig } from './models.js';
8
-
9
- // See packages/typescript/assets/client/angular for reference
10
- export function getReferenceFactories(options: TypeScriptAngularServicesGeneratorConfig): {
11
- abortablePromise: ts.GenericModuleReferenceFactory<1>;
12
- waitForResponse: ts.GenericModuleReferenceFactory<1>;
13
- requestBuilder: ts.ModuleReferenceFactory;
14
- apiConfiguration: ts.ModuleReferenceFactory;
15
- apiBaseService: ts.ModuleReferenceFactory;
16
- httpStatusCode: ts.ModuleReferenceFactory;
17
- provide: ts.ModuleReferenceFactory;
18
- } {
19
- const utilsDirPath = resolve(options.outputDir, options.utilsDir);
20
- return {
21
- // angular-service.utils.ts
22
- abortablePromise: ts.reference.genericFactory<1>(
23
- 'AbortablePromise',
24
- join(utilsDirPath, 'angular-service.utils.ts'),
25
- {
26
- importType: 'type-import',
27
- },
28
- ),
29
- waitForResponse: ts.reference.genericFactory<1>('waitForResponse', join(utilsDirPath, 'angular-service.utils.ts')),
30
-
31
- // request-builder.ts
32
- requestBuilder: ts.reference.factory('RequestBuilder', join(utilsDirPath, 'request-builder.ts')),
33
-
34
- // api-configuration.ts - generated in angular-services-generator.ts
35
- apiConfiguration: ts.reference.factory(
36
- toCasing(`${options.domainName ?? ''}ApiConfiguration`, options.typeNameCasing),
37
- join(utilsDirPath, 'api-configuration.ts'),
38
- ),
39
-
40
- // api-base-service.ts - generated in angular-service-generator.ts
41
- apiBaseService: ts.reference.factory('ApiBaseService', join(utilsDirPath, 'api-base-service.ts')),
42
-
43
- // http-status-code.ts - generated in angular-services-generator.ts
44
- httpStatusCode: ts.reference.factory('HttpStatusCode', join(utilsDirPath, 'http-status-code.ts'), {
45
- importType: 'type-import',
46
- }),
47
-
48
- // provide.ts - generated in angular-services-generator.ts
49
- provide: ts.reference.factory(
50
- toCasing(`provide_${options.domainName ?? ''}_Api`, options.functionNameCasing),
51
- join(utilsDirPath, 'provide.ts'),
52
- ),
53
- };
54
- }