@goast/typescript 0.3.13 → 0.4.0-beta1

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 (525) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +16 -8
  3. package/assets/client/angular/angular-service.utils.ts +1 -1
  4. package/assets/client/angular/request-builder.ts +6 -3
  5. package/assets/client/k6/request-builder.js +13 -6
  6. package/assets/stubs/easy-network-stub/easy-network-stub.utils.ts +4 -5
  7. package/esm/index.d.ts +8 -0
  8. package/esm/index.d.ts.map +1 -0
  9. package/esm/lib/assets.d.ts +2 -0
  10. package/esm/lib/assets.d.ts.map +1 -0
  11. package/esm/lib/assets.js +6 -0
  12. package/{types → esm}/lib/ast/_index.d.ts +39 -38
  13. package/esm/lib/ast/_index.d.ts.map +1 -0
  14. package/esm/lib/ast/_index.js +1 -2
  15. package/{types → esm}/lib/ast/common.d.ts +1 -0
  16. package/esm/lib/ast/common.d.ts.map +1 -0
  17. package/esm/lib/ast/index.d.ts +2 -0
  18. package/esm/lib/ast/index.d.ts.map +1 -0
  19. package/esm/lib/ast/index.js +1 -2
  20. package/{types → esm}/lib/ast/node.d.ts +2 -1
  21. package/esm/lib/ast/node.d.ts.map +1 -0
  22. package/{types → esm}/lib/ast/nodes/argument.d.ts +5 -4
  23. package/esm/lib/ast/nodes/argument.d.ts.map +1 -0
  24. package/esm/lib/ast/nodes/argument.js +6 -0
  25. package/{types → esm}/lib/ast/nodes/array-type.d.ts +5 -4
  26. package/esm/lib/ast/nodes/array-type.d.ts.map +1 -0
  27. package/esm/lib/ast/nodes/array-type.js +12 -0
  28. package/{types → esm}/lib/ast/nodes/arrow-function.d.ts +7 -6
  29. package/esm/lib/ast/nodes/arrow-function.d.ts.map +1 -0
  30. package/esm/lib/ast/nodes/arrow-function.js +37 -1
  31. package/{types → esm}/lib/ast/nodes/call.d.ts +6 -5
  32. package/esm/lib/ast/nodes/call.d.ts.map +1 -0
  33. package/esm/lib/ast/nodes/call.js +13 -1
  34. package/{types → esm}/lib/ast/nodes/class.d.ts +12 -11
  35. package/esm/lib/ast/nodes/class.d.ts.map +1 -0
  36. package/esm/lib/ast/nodes/class.js +55 -1
  37. package/{types → esm}/lib/ast/nodes/constructor-parameter.d.ts +5 -4
  38. package/esm/lib/ast/nodes/constructor-parameter.d.ts.map +1 -0
  39. package/esm/lib/ast/nodes/constructor-parameter.js +12 -0
  40. package/{types → esm}/lib/ast/nodes/constructor.d.ts +7 -6
  41. package/esm/lib/ast/nodes/constructor.d.ts.map +1 -0
  42. package/esm/lib/ast/nodes/constructor.js +25 -1
  43. package/{types → esm}/lib/ast/nodes/decorator.d.ts +6 -5
  44. package/esm/lib/ast/nodes/decorator.d.ts.map +1 -0
  45. package/esm/lib/ast/nodes/decorator.js +12 -0
  46. package/{types → esm}/lib/ast/nodes/doc-tag.d.ts +5 -4
  47. package/esm/lib/ast/nodes/doc-tag.d.ts.map +1 -0
  48. package/esm/lib/ast/nodes/doc-tag.js +18 -0
  49. package/{types → esm}/lib/ast/nodes/doc.d.ts +7 -6
  50. package/esm/lib/ast/nodes/doc.d.ts.map +1 -0
  51. package/esm/lib/ast/nodes/doc.js +12 -0
  52. package/{types → esm}/lib/ast/nodes/enum-value.d.ts +5 -4
  53. package/esm/lib/ast/nodes/enum-value.d.ts.map +1 -0
  54. package/esm/lib/ast/nodes/enum-value.js +18 -0
  55. package/{types → esm}/lib/ast/nodes/enum.d.ts +6 -5
  56. package/esm/lib/ast/nodes/enum.d.ts.map +1 -0
  57. package/esm/lib/ast/nodes/enum.js +30 -0
  58. package/{types → esm}/lib/ast/nodes/export.d.ts +5 -4
  59. package/esm/lib/ast/nodes/export.d.ts.map +1 -0
  60. package/esm/lib/ast/nodes/export.js +18 -0
  61. package/{types → esm}/lib/ast/nodes/function-type.d.ts +7 -6
  62. package/esm/lib/ast/nodes/function-type.d.ts.map +1 -0
  63. package/esm/lib/ast/nodes/function-type.js +18 -0
  64. package/{types → esm}/lib/ast/nodes/function.d.ts +9 -8
  65. package/esm/lib/ast/nodes/function.d.ts.map +1 -0
  66. package/esm/lib/ast/nodes/function.js +49 -1
  67. package/{types → esm}/lib/ast/nodes/generic-parameter.d.ts +5 -4
  68. package/esm/lib/ast/nodes/generic-parameter.d.ts.map +1 -0
  69. package/esm/lib/ast/nodes/generic-parameter.js +30 -0
  70. package/{types → esm}/lib/ast/nodes/indexer.d.ts +5 -4
  71. package/esm/lib/ast/nodes/indexer.d.ts.map +1 -0
  72. package/esm/lib/ast/nodes/indexer.js +24 -0
  73. package/{types → esm}/lib/ast/nodes/interface.d.ts +11 -10
  74. package/esm/lib/ast/nodes/interface.d.ts.map +1 -0
  75. package/esm/lib/ast/nodes/interface.js +43 -1
  76. package/{types → esm}/lib/ast/nodes/intersection-type.d.ts +5 -4
  77. package/esm/lib/ast/nodes/intersection-type.d.ts.map +1 -0
  78. package/esm/lib/ast/nodes/intersection-type.js +6 -0
  79. package/{types → esm}/lib/ast/nodes/lookup-type.d.ts +5 -4
  80. package/esm/lib/ast/nodes/lookup-type.d.ts.map +1 -0
  81. package/esm/lib/ast/nodes/lookup-type.js +12 -0
  82. package/{types → esm}/lib/ast/nodes/method.d.ts +10 -9
  83. package/esm/lib/ast/nodes/method.d.ts.map +1 -0
  84. package/esm/lib/ast/nodes/method.js +78 -0
  85. package/{types → esm}/lib/ast/nodes/object-type.d.ts +7 -6
  86. package/esm/lib/ast/nodes/object-type.d.ts.map +1 -0
  87. package/esm/lib/ast/nodes/object-type.js +6 -0
  88. package/{types → esm}/lib/ast/nodes/object.d.ts +6 -5
  89. package/esm/lib/ast/nodes/object.d.ts.map +1 -0
  90. package/esm/lib/ast/nodes/object.js +6 -0
  91. package/{types → esm}/lib/ast/nodes/parameter.d.ts +6 -5
  92. package/esm/lib/ast/nodes/parameter.d.ts.map +1 -0
  93. package/esm/lib/ast/nodes/parameter.js +37 -1
  94. package/{types → esm}/lib/ast/nodes/property-accessor.d.ts +8 -7
  95. package/esm/lib/ast/nodes/property-accessor.d.ts.map +1 -0
  96. package/esm/lib/ast/nodes/property-accessor.js +60 -0
  97. package/{types → esm}/lib/ast/nodes/property.d.ts +9 -8
  98. package/esm/lib/ast/nodes/property.d.ts.map +1 -0
  99. package/esm/lib/ast/nodes/property.js +79 -3
  100. package/{types → esm}/lib/ast/nodes/reference.d.ts +6 -5
  101. package/esm/lib/ast/nodes/reference.d.ts.map +1 -0
  102. package/esm/lib/ast/nodes/reference.js +39 -10
  103. package/{types → esm}/lib/ast/nodes/string.d.ts +4 -3
  104. package/esm/lib/ast/nodes/string.d.ts.map +1 -0
  105. package/esm/lib/ast/nodes/string.js +12 -0
  106. package/{types → esm}/lib/ast/nodes/tuple.d.ts +5 -4
  107. package/esm/lib/ast/nodes/tuple.d.ts.map +1 -0
  108. package/esm/lib/ast/nodes/tuple.js +12 -0
  109. package/{types → esm}/lib/ast/nodes/type-alias.d.ts +7 -6
  110. package/esm/lib/ast/nodes/type-alias.d.ts.map +1 -0
  111. package/esm/lib/ast/nodes/type-alias.js +31 -1
  112. package/{types → esm}/lib/ast/nodes/typeof.d.ts +5 -4
  113. package/esm/lib/ast/nodes/typeof.d.ts.map +1 -0
  114. package/esm/lib/ast/nodes/typeof.js +6 -0
  115. package/esm/lib/ast/nodes/types.d.ts +19 -0
  116. package/esm/lib/ast/nodes/types.d.ts.map +1 -0
  117. package/{types → esm}/lib/ast/nodes/union-type.d.ts +5 -4
  118. package/esm/lib/ast/nodes/union-type.d.ts.map +1 -0
  119. package/esm/lib/ast/nodes/union-type.js +6 -0
  120. package/{types → esm}/lib/ast/nodes/variable.d.ts +6 -5
  121. package/esm/lib/ast/nodes/variable.d.ts.map +1 -0
  122. package/esm/lib/ast/nodes/variable.js +36 -0
  123. package/{types → esm}/lib/ast/references/angular.d.ts +17 -16
  124. package/esm/lib/ast/references/angular.d.ts.map +1 -0
  125. package/{types → esm}/lib/ast/references/easy-network-stub.d.ts +13 -12
  126. package/esm/lib/ast/references/easy-network-stub.d.ts.map +1 -0
  127. package/esm/lib/ast/references/index.d.ts +6 -0
  128. package/esm/lib/ast/references/index.d.ts.map +1 -0
  129. package/esm/lib/ast/references/index.js +4 -8
  130. package/{types → esm}/lib/ast/references/k6.d.ts +7 -6
  131. package/esm/lib/ast/references/k6.d.ts.map +1 -0
  132. package/{types → esm}/lib/ast/references/rxjs.d.ts +11 -10
  133. package/esm/lib/ast/references/rxjs.d.ts.map +1 -0
  134. package/{types → esm}/lib/ast/references/typescript.d.ts +95 -94
  135. package/esm/lib/ast/references/typescript.d.ts.map +1 -0
  136. package/esm/lib/ast/utils/get-type-script-builder-options.d.ts +4 -0
  137. package/esm/lib/ast/utils/get-type-script-builder-options.d.ts.map +1 -0
  138. package/{types → esm}/lib/ast/utils/to-ts-node.d.ts +5 -4
  139. package/esm/lib/ast/utils/to-ts-node.d.ts.map +1 -0
  140. package/esm/lib/ast/utils/write-ts-generic-parameters.d.ts +4 -0
  141. package/esm/lib/ast/utils/write-ts-generic-parameters.d.ts.map +1 -0
  142. package/esm/lib/ast/utils/write-ts-generic-parameters.js +1 -1
  143. package/{types → esm}/lib/ast/utils/write-ts-members.d.ts +3 -2
  144. package/esm/lib/ast/utils/write-ts-members.d.ts.map +1 -0
  145. package/esm/lib/ast/utils/write-ts-members.js +1 -1
  146. package/{types → esm}/lib/ast/utils/write-ts-nodes.d.ts +3 -2
  147. package/esm/lib/ast/utils/write-ts-nodes.d.ts.map +1 -0
  148. package/esm/lib/ast/utils/write-ts-nodes.js +1 -1
  149. package/esm/lib/ast/utils/write-ts-parameters.d.ts +4 -0
  150. package/esm/lib/ast/utils/write-ts-parameters.d.ts.map +1 -0
  151. package/esm/lib/ast/utils/write-ts-parameters.js +1 -1
  152. package/{types → esm}/lib/common-results.d.ts +2 -1
  153. package/esm/lib/common-results.d.ts.map +1 -0
  154. package/{types → esm}/lib/config.d.ts +3 -2
  155. package/esm/lib/config.d.ts.map +1 -0
  156. package/{types → esm}/lib/file-builder.d.ts +6 -5
  157. package/esm/lib/file-builder.d.ts.map +1 -0
  158. package/esm/lib/file-builder.js +15 -3
  159. package/{types → esm}/lib/generators/file-generator.d.ts +4 -3
  160. package/esm/lib/generators/file-generator.d.ts.map +1 -0
  161. package/esm/lib/generators/index.d.ts +7 -0
  162. package/esm/lib/generators/index.d.ts.map +1 -0
  163. package/esm/lib/generators/models/index.d.ts +4 -0
  164. package/esm/lib/generators/models/index.d.ts.map +1 -0
  165. package/{types → esm}/lib/generators/models/model-generator.d.ts +8 -7
  166. package/esm/lib/generators/models/model-generator.d.ts.map +1 -0
  167. package/esm/lib/generators/models/model-generator.js +1 -1
  168. package/{types → esm}/lib/generators/models/models-generator.d.ts +5 -4
  169. package/esm/lib/generators/models/models-generator.d.ts.map +1 -0
  170. package/esm/lib/generators/models/models-generator.js +8 -2
  171. package/{types → esm}/lib/generators/models/models.d.ts +4 -3
  172. package/esm/lib/generators/models/models.d.ts.map +1 -0
  173. package/{types → esm}/lib/generators/services/angular-services/angular-service-generator.d.ts +7 -6
  174. package/esm/lib/generators/services/angular-services/angular-service-generator.d.ts.map +1 -0
  175. package/esm/lib/generators/services/angular-services/angular-service-generator.js +5 -3
  176. package/{types → esm}/lib/generators/services/angular-services/angular-services-generator.d.ts +5 -4
  177. package/esm/lib/generators/services/angular-services/angular-services-generator.d.ts.map +1 -0
  178. package/esm/lib/generators/services/angular-services/angular-services-generator.js +13 -6
  179. package/esm/lib/generators/services/angular-services/index.d.ts +4 -0
  180. package/esm/lib/generators/services/angular-services/index.d.ts.map +1 -0
  181. package/{types → esm}/lib/generators/services/angular-services/models.d.ts +8 -7
  182. package/esm/lib/generators/services/angular-services/models.d.ts.map +1 -0
  183. package/esm/lib/generators/services/angular-services/models.js +62 -3
  184. package/{types → esm}/lib/generators/services/angular-services/refs.d.ts +10 -9
  185. package/esm/lib/generators/services/angular-services/refs.d.ts.map +1 -0
  186. package/esm/lib/generators/services/angular-services/refs.js +4 -2
  187. package/{types → esm}/lib/generators/services/easy-network-stub/easy-network-stub-generator.d.ts +6 -5
  188. package/esm/lib/generators/services/easy-network-stub/easy-network-stub-generator.d.ts.map +1 -0
  189. package/esm/lib/generators/services/easy-network-stub/easy-network-stub-generator.js +3 -2
  190. package/{types → esm}/lib/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts +7 -6
  191. package/esm/lib/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts.map +1 -0
  192. package/esm/lib/generators/services/easy-network-stub/easy-network-stubs-generator.js +10 -3
  193. package/esm/lib/generators/services/easy-network-stub/index.d.ts +4 -0
  194. package/esm/lib/generators/services/easy-network-stub/index.d.ts.map +1 -0
  195. package/{types → esm}/lib/generators/services/easy-network-stub/models.d.ts +8 -7
  196. package/esm/lib/generators/services/easy-network-stub/models.d.ts.map +1 -0
  197. package/{types → esm}/lib/generators/services/easy-network-stub/refs.d.ts +12 -11
  198. package/esm/lib/generators/services/easy-network-stub/refs.d.ts.map +1 -0
  199. package/esm/lib/generators/services/easy-network-stub/refs.js +4 -2
  200. package/{types → esm}/lib/generators/services/fetch-clients/fetch-client-generator.d.ts +6 -5
  201. package/esm/lib/generators/services/fetch-clients/fetch-client-generator.d.ts.map +1 -0
  202. package/esm/lib/generators/services/fetch-clients/fetch-client-generator.js +3 -5
  203. package/{types → esm}/lib/generators/services/fetch-clients/fetch-clients-generator.d.ts +5 -4
  204. package/esm/lib/generators/services/fetch-clients/fetch-clients-generator.d.ts.map +1 -0
  205. package/esm/lib/generators/services/fetch-clients/fetch-clients-generator.js +12 -6
  206. package/esm/lib/generators/services/fetch-clients/index.d.ts +4 -0
  207. package/esm/lib/generators/services/fetch-clients/index.d.ts.map +1 -0
  208. package/{types → esm}/lib/generators/services/fetch-clients/models.d.ts +6 -5
  209. package/esm/lib/generators/services/fetch-clients/models.d.ts.map +1 -0
  210. package/{types → esm}/lib/generators/services/fetch-clients/refs.d.ts +6 -5
  211. package/esm/lib/generators/services/fetch-clients/refs.d.ts.map +1 -0
  212. package/esm/lib/generators/services/fetch-clients/refs.js +1 -1
  213. package/esm/lib/generators/services/k6-clients/index.d.ts +4 -0
  214. package/esm/lib/generators/services/k6-clients/index.d.ts.map +1 -0
  215. package/{types → esm}/lib/generators/services/k6-clients/k6-client-generator.d.ts +9 -8
  216. package/esm/lib/generators/services/k6-clients/k6-client-generator.d.ts.map +1 -0
  217. package/esm/lib/generators/services/k6-clients/k6-client-generator.js +10 -6
  218. package/{types → esm}/lib/generators/services/k6-clients/k6-clients-generator.d.ts +5 -4
  219. package/esm/lib/generators/services/k6-clients/k6-clients-generator.d.ts.map +1 -0
  220. package/esm/lib/generators/services/k6-clients/k6-clients-generator.js +11 -5
  221. package/{types → esm}/lib/generators/services/k6-clients/models.d.ts +8 -7
  222. package/esm/lib/generators/services/k6-clients/models.d.ts.map +1 -0
  223. package/esm/lib/generators/services/k6-clients/models.js +62 -3
  224. package/{types → esm}/lib/generators/services/k6-clients/refs.d.ts +5 -4
  225. package/esm/lib/generators/services/k6-clients/refs.d.ts.map +1 -0
  226. package/esm/lib/generators/services/k6-clients/refs.js +1 -1
  227. package/{types → esm}/lib/import-collection.d.ts +4 -3
  228. package/esm/lib/import-collection.d.ts.map +1 -0
  229. package/esm/lib/import-collection.js +37 -6
  230. package/{types → esm}/lib/utils.d.ts +3 -2
  231. package/esm/lib/utils.d.ts.map +1 -0
  232. package/esm/lib/utils.js +4 -1
  233. package/esm/package.json +3 -0
  234. package/package.json +23 -33
  235. package/script/index.d.ts +8 -0
  236. package/script/index.d.ts.map +1 -0
  237. package/script/index.js +10 -0
  238. package/script/lib/assets.d.ts +2 -0
  239. package/script/lib/assets.d.ts.map +1 -0
  240. package/script/lib/assets.js +9 -0
  241. package/script/lib/ast/_index.d.ts +39 -0
  242. package/script/lib/ast/_index.d.ts.map +1 -0
  243. package/script/lib/ast/_index.js +108 -0
  244. package/script/lib/ast/common.d.ts +2 -0
  245. package/script/lib/ast/common.d.ts.map +1 -0
  246. package/script/lib/ast/index.d.ts +2 -0
  247. package/script/lib/ast/index.d.ts.map +1 -0
  248. package/{cjs → script}/lib/ast/index.js +1 -1
  249. package/script/lib/ast/node.d.ts +5 -0
  250. package/script/lib/ast/node.d.ts.map +1 -0
  251. package/script/lib/ast/nodes/argument.d.ts +18 -0
  252. package/script/lib/ast/nodes/argument.d.ts.map +1 -0
  253. package/script/lib/ast/nodes/argument.js +26 -0
  254. package/script/lib/ast/nodes/array-type.d.ts +20 -0
  255. package/script/lib/ast/nodes/array-type.d.ts.map +1 -0
  256. package/{cjs → script}/lib/ast/nodes/array-type.js +17 -5
  257. package/script/lib/ast/nodes/arrow-function.d.ts +30 -0
  258. package/script/lib/ast/nodes/arrow-function.d.ts.map +1 -0
  259. package/{cjs → script}/lib/ast/nodes/arrow-function.js +45 -9
  260. package/script/lib/ast/nodes/call.d.ts +21 -0
  261. package/script/lib/ast/nodes/call.d.ts.map +1 -0
  262. package/script/lib/ast/nodes/call.js +38 -0
  263. package/script/lib/ast/nodes/class.d.ts +42 -0
  264. package/script/lib/ast/nodes/class.d.ts.map +1 -0
  265. package/{cjs → script}/lib/ast/nodes/class.js +68 -14
  266. package/script/lib/ast/nodes/constructor-parameter.d.ts +20 -0
  267. package/script/lib/ast/nodes/constructor-parameter.d.ts.map +1 -0
  268. package/{cjs → script}/lib/ast/nodes/constructor-parameter.js +21 -9
  269. package/script/lib/ast/nodes/constructor.d.ts +26 -0
  270. package/script/lib/ast/nodes/constructor.d.ts.map +1 -0
  271. package/{cjs → script}/lib/ast/nodes/constructor.js +34 -10
  272. package/script/lib/ast/nodes/decorator.d.ts +23 -0
  273. package/script/lib/ast/nodes/decorator.d.ts.map +1 -0
  274. package/{cjs → script}/lib/ast/nodes/decorator.js +19 -7
  275. package/script/lib/ast/nodes/doc-tag.d.ts +74 -0
  276. package/script/lib/ast/nodes/doc-tag.d.ts.map +1 -0
  277. package/{cjs → script}/lib/ast/nodes/doc-tag.js +26 -8
  278. package/script/lib/ast/nodes/doc.d.ts +29 -0
  279. package/script/lib/ast/nodes/doc.d.ts.map +1 -0
  280. package/{cjs → script}/lib/ast/nodes/doc.js +24 -12
  281. package/script/lib/ast/nodes/enum-value.d.ts +22 -0
  282. package/script/lib/ast/nodes/enum-value.d.ts.map +1 -0
  283. package/{cjs → script}/lib/ast/nodes/enum-value.js +23 -5
  284. package/script/lib/ast/nodes/enum.d.ts +27 -0
  285. package/script/lib/ast/nodes/enum.d.ts.map +1 -0
  286. package/{cjs → script}/lib/ast/nodes/enum.js +36 -6
  287. package/script/lib/ast/nodes/export.d.ts +23 -0
  288. package/script/lib/ast/nodes/export.d.ts.map +1 -0
  289. package/{cjs → script}/lib/ast/nodes/export.js +24 -6
  290. package/script/lib/ast/nodes/function-type.d.ts +24 -0
  291. package/script/lib/ast/nodes/function-type.d.ts.map +1 -0
  292. package/{cjs → script}/lib/ast/nodes/function-type.js +27 -9
  293. package/script/lib/ast/nodes/function.d.ts +36 -0
  294. package/script/lib/ast/nodes/function.d.ts.map +1 -0
  295. package/{cjs → script}/lib/ast/nodes/function.js +61 -13
  296. package/script/lib/ast/nodes/generic-parameter.d.ts +26 -0
  297. package/script/lib/ast/nodes/generic-parameter.d.ts.map +1 -0
  298. package/{cjs → script}/lib/ast/nodes/generic-parameter.js +37 -7
  299. package/script/lib/ast/nodes/indexer.d.ts +24 -0
  300. package/script/lib/ast/nodes/indexer.d.ts.map +1 -0
  301. package/script/lib/ast/nodes/indexer.js +56 -0
  302. package/script/lib/ast/nodes/interface.d.ts +37 -0
  303. package/script/lib/ast/nodes/interface.d.ts.map +1 -0
  304. package/{cjs → script}/lib/ast/nodes/interface.js +55 -13
  305. package/script/lib/ast/nodes/intersection-type.d.ts +18 -0
  306. package/script/lib/ast/nodes/intersection-type.d.ts.map +1 -0
  307. package/{cjs → script}/lib/ast/nodes/intersection-type.js +12 -6
  308. package/script/lib/ast/nodes/lookup-type.d.ts +20 -0
  309. package/script/lib/ast/nodes/lookup-type.d.ts.map +1 -0
  310. package/{cjs → script}/lib/ast/nodes/lookup-type.js +18 -6
  311. package/script/lib/ast/nodes/method.d.ts +48 -0
  312. package/script/lib/ast/nodes/method.d.ts.map +1 -0
  313. package/{cjs → script}/lib/ast/nodes/method.js +93 -15
  314. package/script/lib/ast/nodes/object-type.d.ts +21 -0
  315. package/script/lib/ast/nodes/object-type.d.ts.map +1 -0
  316. package/{cjs → script}/lib/ast/nodes/object-type.js +12 -6
  317. package/script/lib/ast/nodes/object.d.ts +20 -0
  318. package/script/lib/ast/nodes/object.d.ts.map +1 -0
  319. package/{cjs → script}/lib/ast/nodes/object.js +12 -6
  320. package/script/lib/ast/nodes/parameter.d.ts +29 -0
  321. package/script/lib/ast/nodes/parameter.d.ts.map +1 -0
  322. package/{cjs → script}/lib/ast/nodes/parameter.js +45 -9
  323. package/script/lib/ast/nodes/property-accessor.d.ts +54 -0
  324. package/script/lib/ast/nodes/property-accessor.d.ts.map +1 -0
  325. package/{cjs → script}/lib/ast/nodes/property-accessor.js +71 -11
  326. package/script/lib/ast/nodes/property.d.ts +85 -0
  327. package/script/lib/ast/nodes/property.d.ts.map +1 -0
  328. package/{cjs → script}/lib/ast/nodes/property.js +96 -20
  329. package/script/lib/ast/nodes/reference.d.ts +65 -0
  330. package/script/lib/ast/nodes/reference.d.ts.map +1 -0
  331. package/{cjs → script}/lib/ast/nodes/reference.js +45 -16
  332. package/script/lib/ast/nodes/string.d.ts +19 -0
  333. package/script/lib/ast/nodes/string.d.ts.map +1 -0
  334. package/{cjs → script}/lib/ast/nodes/string.js +18 -6
  335. package/script/lib/ast/nodes/tuple.d.ts +20 -0
  336. package/script/lib/ast/nodes/tuple.d.ts.map +1 -0
  337. package/{cjs → script}/lib/ast/nodes/tuple.js +17 -5
  338. package/script/lib/ast/nodes/type-alias.d.ts +28 -0
  339. package/script/lib/ast/nodes/type-alias.d.ts.map +1 -0
  340. package/script/lib/ast/nodes/type-alias.js +68 -0
  341. package/script/lib/ast/nodes/typeof.d.ts +19 -0
  342. package/script/lib/ast/nodes/typeof.d.ts.map +1 -0
  343. package/{cjs → script}/lib/ast/nodes/typeof.js +11 -5
  344. package/script/lib/ast/nodes/types.d.ts +19 -0
  345. package/script/lib/ast/nodes/types.d.ts.map +1 -0
  346. package/script/lib/ast/nodes/union-type.d.ts +18 -0
  347. package/script/lib/ast/nodes/union-type.d.ts.map +1 -0
  348. package/{cjs → script}/lib/ast/nodes/union-type.js +12 -6
  349. package/script/lib/ast/nodes/variable.d.ts +29 -0
  350. package/script/lib/ast/nodes/variable.d.ts.map +1 -0
  351. package/script/lib/ast/nodes/variable.js +76 -0
  352. package/script/lib/ast/references/angular.d.ts +58 -0
  353. package/script/lib/ast/references/angular.d.ts.map +1 -0
  354. package/script/lib/ast/references/angular.js +13 -0
  355. package/script/lib/ast/references/easy-network-stub.d.ts +35 -0
  356. package/script/lib/ast/references/easy-network-stub.d.ts.map +1 -0
  357. package/script/lib/ast/references/easy-network-stub.js +10 -0
  358. package/script/lib/ast/references/index.d.ts +6 -0
  359. package/script/lib/ast/references/index.d.ts.map +1 -0
  360. package/script/lib/ast/references/index.js +9 -0
  361. package/script/lib/ast/references/k6.d.ts +25 -0
  362. package/script/lib/ast/references/k6.d.ts.map +1 -0
  363. package/script/lib/ast/references/k6.js +9 -0
  364. package/script/lib/ast/references/rxjs.d.ts +41 -0
  365. package/script/lib/ast/references/rxjs.d.ts.map +1 -0
  366. package/script/lib/ast/references/rxjs.js +9 -0
  367. package/script/lib/ast/references/typescript.d.ts +198 -0
  368. package/script/lib/ast/references/typescript.d.ts.map +1 -0
  369. package/script/lib/ast/references/typescript.js +34 -0
  370. package/script/lib/ast/utils/get-type-script-builder-options.d.ts +4 -0
  371. package/script/lib/ast/utils/get-type-script-builder-options.d.ts.map +1 -0
  372. package/{cjs → script}/lib/ast/utils/get-type-script-builder-options.js +4 -4
  373. package/script/lib/ast/utils/to-ts-node.d.ts +9 -0
  374. package/script/lib/ast/utils/to-ts-node.d.ts.map +1 -0
  375. package/script/lib/ast/utils/to-ts-node.js +23 -0
  376. package/script/lib/ast/utils/write-ts-generic-parameters.d.ts +4 -0
  377. package/script/lib/ast/utils/write-ts-generic-parameters.d.ts.map +1 -0
  378. package/{cjs → script}/lib/ast/utils/write-ts-generic-parameters.js +2 -2
  379. package/script/lib/ast/utils/write-ts-members.d.ts +6 -0
  380. package/script/lib/ast/utils/write-ts-members.d.ts.map +1 -0
  381. package/script/lib/ast/utils/write-ts-members.js +17 -0
  382. package/script/lib/ast/utils/write-ts-nodes.d.ts +7 -0
  383. package/script/lib/ast/utils/write-ts-nodes.d.ts.map +1 -0
  384. package/{cjs → script}/lib/ast/utils/write-ts-nodes.js +2 -2
  385. package/script/lib/ast/utils/write-ts-parameters.d.ts +4 -0
  386. package/script/lib/ast/utils/write-ts-parameters.d.ts.map +1 -0
  387. package/{cjs → script}/lib/ast/utils/write-ts-parameters.js +2 -2
  388. package/script/lib/common-results.d.ts +25 -0
  389. package/script/lib/common-results.d.ts.map +1 -0
  390. package/script/lib/config.d.ts +61 -0
  391. package/script/lib/config.d.ts.map +1 -0
  392. package/script/lib/file-builder.d.ts +34 -0
  393. package/script/lib/file-builder.d.ts.map +1 -0
  394. package/{cjs → script}/lib/file-builder.js +21 -9
  395. package/script/lib/generators/file-generator.d.ts +8 -0
  396. package/script/lib/generators/file-generator.d.ts.map +1 -0
  397. package/{cjs → script}/lib/generators/file-generator.js +2 -2
  398. package/script/lib/generators/index.d.ts +7 -0
  399. package/script/lib/generators/index.d.ts.map +1 -0
  400. package/script/lib/generators/index.js +9 -0
  401. package/script/lib/generators/models/index.d.ts +4 -0
  402. package/script/lib/generators/models/index.d.ts.map +1 -0
  403. package/script/lib/generators/models/index.js +6 -0
  404. package/script/lib/generators/models/model-generator.d.ts +46 -0
  405. package/script/lib/generators/models/model-generator.d.ts.map +1 -0
  406. package/{cjs → script}/lib/generators/models/model-generator.js +63 -63
  407. package/script/lib/generators/models/models-generator.d.ts +23 -0
  408. package/script/lib/generators/models/models-generator.d.ts.map +1 -0
  409. package/{cjs → script}/lib/generators/models/models-generator.js +17 -11
  410. package/script/lib/generators/models/models.d.ts +65 -0
  411. package/script/lib/generators/models/models.d.ts.map +1 -0
  412. package/{cjs → script}/lib/generators/models/models.js +2 -2
  413. package/script/lib/generators/services/angular-services/angular-service-generator.d.ts +39 -0
  414. package/script/lib/generators/services/angular-services/angular-service-generator.d.ts.map +1 -0
  415. package/{cjs → script}/lib/generators/services/angular-services/angular-service-generator.js +62 -60
  416. package/script/lib/generators/services/angular-services/angular-services-generator.d.ts +32 -0
  417. package/script/lib/generators/services/angular-services/angular-services-generator.d.ts.map +1 -0
  418. package/{cjs → script}/lib/generators/services/angular-services/angular-services-generator.js +67 -60
  419. package/script/lib/generators/services/angular-services/index.d.ts +4 -0
  420. package/script/lib/generators/services/angular-services/index.d.ts.map +1 -0
  421. package/script/lib/generators/services/angular-services/index.js +6 -0
  422. package/script/lib/generators/services/angular-services/models.d.ts +142 -0
  423. package/script/lib/generators/services/angular-services/models.d.ts.map +1 -0
  424. package/script/lib/generators/services/angular-services/models.js +89 -0
  425. package/script/lib/generators/services/angular-services/refs.d.ts +63 -0
  426. package/script/lib/generators/services/angular-services/refs.d.ts.map +1 -0
  427. package/script/lib/generators/services/angular-services/refs.js +30 -0
  428. package/script/lib/generators/services/easy-network-stub/easy-network-stub-generator.d.ts +33 -0
  429. package/script/lib/generators/services/easy-network-stub/easy-network-stub-generator.d.ts.map +1 -0
  430. package/{cjs → script}/lib/generators/services/easy-network-stub/easy-network-stub-generator.js +30 -29
  431. package/script/lib/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts +29 -0
  432. package/script/lib/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts.map +1 -0
  433. package/{cjs → script}/lib/generators/services/easy-network-stub/easy-network-stubs-generator.js +39 -32
  434. package/script/lib/generators/services/easy-network-stub/index.d.ts +4 -0
  435. package/script/lib/generators/services/easy-network-stub/index.d.ts.map +1 -0
  436. package/script/lib/generators/services/easy-network-stub/index.js +6 -0
  437. package/script/lib/generators/services/easy-network-stub/models.d.ts +78 -0
  438. package/script/lib/generators/services/easy-network-stub/models.d.ts.map +1 -0
  439. package/{cjs → script}/lib/generators/services/easy-network-stub/models.js +6 -6
  440. package/script/lib/generators/services/easy-network-stub/refs.d.ts +82 -0
  441. package/script/lib/generators/services/easy-network-stub/refs.d.ts.map +1 -0
  442. package/script/lib/generators/services/easy-network-stub/refs.js +30 -0
  443. package/script/lib/generators/services/fetch-clients/fetch-client-generator.d.ts +33 -0
  444. package/script/lib/generators/services/fetch-clients/fetch-client-generator.d.ts.map +1 -0
  445. package/{cjs → script}/lib/generators/services/fetch-clients/fetch-client-generator.js +41 -43
  446. package/script/lib/generators/services/fetch-clients/fetch-clients-generator.d.ts +27 -0
  447. package/script/lib/generators/services/fetch-clients/fetch-clients-generator.d.ts.map +1 -0
  448. package/{cjs → script}/lib/generators/services/fetch-clients/fetch-clients-generator.js +25 -19
  449. package/script/lib/generators/services/fetch-clients/index.d.ts +4 -0
  450. package/script/lib/generators/services/fetch-clients/index.d.ts.map +1 -0
  451. package/script/lib/generators/services/fetch-clients/index.js +6 -0
  452. package/script/lib/generators/services/fetch-clients/models.d.ts +84 -0
  453. package/script/lib/generators/services/fetch-clients/models.d.ts.map +1 -0
  454. package/{cjs → script}/lib/generators/services/fetch-clients/models.js +2 -2
  455. package/script/lib/generators/services/fetch-clients/refs.d.ts +30 -0
  456. package/script/lib/generators/services/fetch-clients/refs.d.ts.map +1 -0
  457. package/script/lib/generators/services/fetch-clients/refs.js +16 -0
  458. package/script/lib/generators/services/k6-clients/index.d.ts +4 -0
  459. package/script/lib/generators/services/k6-clients/index.d.ts.map +1 -0
  460. package/script/lib/generators/services/k6-clients/index.js +6 -0
  461. package/script/lib/generators/services/k6-clients/k6-client-generator.d.ts +40 -0
  462. package/script/lib/generators/services/k6-clients/k6-client-generator.d.ts.map +1 -0
  463. package/{cjs → script}/lib/generators/services/k6-clients/k6-client-generator.js +75 -71
  464. package/script/lib/generators/services/k6-clients/k6-clients-generator.d.ts +28 -0
  465. package/script/lib/generators/services/k6-clients/k6-clients-generator.d.ts.map +1 -0
  466. package/{cjs → script}/lib/generators/services/k6-clients/k6-clients-generator.js +30 -24
  467. package/script/lib/generators/services/k6-clients/models.d.ts +119 -0
  468. package/script/lib/generators/services/k6-clients/models.d.ts.map +1 -0
  469. package/script/lib/generators/services/k6-clients/models.js +87 -0
  470. package/script/lib/generators/services/k6-clients/refs.d.ts +21 -0
  471. package/script/lib/generators/services/k6-clients/refs.d.ts.map +1 -0
  472. package/script/lib/generators/services/k6-clients/refs.js +12 -0
  473. package/script/lib/import-collection.d.ts +42 -0
  474. package/script/lib/import-collection.d.ts.map +1 -0
  475. package/{cjs → script}/lib/import-collection.js +43 -12
  476. package/script/lib/utils.d.ts +8 -0
  477. package/script/lib/utils.d.ts.map +1 -0
  478. package/{cjs → script}/lib/utils.js +6 -3
  479. package/script/package.json +3 -0
  480. package/cjs/index.js +0 -10
  481. package/cjs/lib/ast/_index.js +0 -108
  482. package/cjs/lib/ast/nodes/argument.js +0 -20
  483. package/cjs/lib/ast/nodes/call.js +0 -26
  484. package/cjs/lib/ast/nodes/indexer.js +0 -32
  485. package/cjs/lib/ast/nodes/type-alias.js +0 -38
  486. package/cjs/lib/ast/nodes/variable.js +0 -40
  487. package/cjs/lib/ast/references/angular.js +0 -13
  488. package/cjs/lib/ast/references/easy-network-stub.js +0 -10
  489. package/cjs/lib/ast/references/index.js +0 -9
  490. package/cjs/lib/ast/references/k6.js +0 -9
  491. package/cjs/lib/ast/references/rxjs.js +0 -9
  492. package/cjs/lib/ast/references/typescript.js +0 -34
  493. package/cjs/lib/ast/utils/to-ts-node.js +0 -23
  494. package/cjs/lib/ast/utils/write-ts-members.js +0 -17
  495. package/cjs/lib/generators/index.js +0 -9
  496. package/cjs/lib/generators/models/index.js +0 -6
  497. package/cjs/lib/generators/services/angular-services/index.js +0 -6
  498. package/cjs/lib/generators/services/angular-services/models.js +0 -30
  499. package/cjs/lib/generators/services/angular-services/refs.js +0 -28
  500. package/cjs/lib/generators/services/easy-network-stub/index.js +0 -6
  501. package/cjs/lib/generators/services/easy-network-stub/refs.js +0 -28
  502. package/cjs/lib/generators/services/fetch-clients/index.js +0 -6
  503. package/cjs/lib/generators/services/fetch-clients/refs.js +0 -16
  504. package/cjs/lib/generators/services/k6-clients/index.js +0 -6
  505. package/cjs/lib/generators/services/k6-clients/models.js +0 -28
  506. package/cjs/lib/generators/services/k6-clients/refs.js +0 -12
  507. package/cjs/package.json +0 -1
  508. package/types/index.d.ts +0 -7
  509. package/types/lib/ast/index.d.ts +0 -1
  510. package/types/lib/ast/nodes/types.d.ts +0 -18
  511. package/types/lib/ast/references/index.d.ts +0 -5
  512. package/types/lib/ast/utils/get-type-script-builder-options.d.ts +0 -3
  513. package/types/lib/ast/utils/write-ts-generic-parameters.d.ts +0 -3
  514. package/types/lib/ast/utils/write-ts-parameters.d.ts +0 -3
  515. package/types/lib/generators/index.d.ts +0 -6
  516. package/types/lib/generators/models/index.d.ts +0 -3
  517. package/types/lib/generators/services/angular-services/index.d.ts +0 -3
  518. package/types/lib/generators/services/easy-network-stub/index.d.ts +0 -3
  519. package/types/lib/generators/services/fetch-clients/index.d.ts +0 -3
  520. package/types/lib/generators/services/k6-clients/index.d.ts +0 -3
  521. /package/{cjs → script}/lib/ast/common.js +0 -0
  522. /package/{cjs → script}/lib/ast/node.js +0 -0
  523. /package/{cjs → script}/lib/ast/nodes/types.js +0 -0
  524. /package/{cjs → script}/lib/common-results.js +0 -0
  525. /package/{cjs → script}/lib/config.js +0 -0
@@ -1,17 +1,17 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DefaultTypeScriptK6ClientGenerator = void 0;
4
- const path_1 = require("path");
4
+ const node_path_1 = require("node:path");
5
5
  const core_1 = require("@goast/core");
6
- const ast_1 = require("../../../ast");
7
- const file_builder_1 = require("../../../file-builder");
8
- const file_generator_1 = require("../../file-generator");
9
- class DefaultTypeScriptK6ClientGenerator extends file_generator_1.TypeScriptFileGenerator {
6
+ const index_js_1 = require("../../../ast/index.js");
7
+ const file_builder_js_1 = require("../../../file-builder.js");
8
+ const file_generator_js_1 = require("../../file-generator.js");
9
+ class DefaultTypeScriptK6ClientGenerator extends file_generator_js_1.TypeScriptFileGenerator {
10
10
  generate(ctx) {
11
11
  const responseModels = this.generateResponseModels(ctx);
12
12
  const filePath = this.getFilePath(ctx);
13
13
  const name = this.getClassName(ctx);
14
- file_builder_1.TypeScriptFileBuilder.generate({
14
+ file_builder_js_1.TypeScriptFileBuilder.generate({
15
15
  logName: `k6 client ${name}`,
16
16
  filePath,
17
17
  options: ctx.config,
@@ -27,7 +27,7 @@ class DefaultTypeScriptK6ClientGenerator extends file_generator_1.TypeScriptFile
27
27
  generateResponseModels(ctx) {
28
28
  const result = {};
29
29
  const filePath = this.getResponseModelFilePath(ctx);
30
- const builder = new file_builder_1.TypeScriptFileBuilder(filePath, ctx.config);
30
+ const builder = new file_builder_js_1.TypeScriptFileBuilder(filePath, ctx.config);
31
31
  for (const endpoint of ctx.service.endpoints) {
32
32
  const name = this.getResponseModelName(ctx, endpoint);
33
33
  builder.appendLine(this.getResponseModelFileContent(ctx, endpoint));
@@ -41,54 +41,54 @@ class DefaultTypeScriptK6ClientGenerator extends file_generator_1.TypeScriptFile
41
41
  const statusCodes = this.getEndpointStatusCodes(ctx, endpoint);
42
42
  let statusCodeType;
43
43
  const statusCodesTypeName = (0, core_1.toCasing)(`${endpoint.name}_StatusCodes`, ctx.config.typeNameCasing);
44
- result.values.push(ast_1.ts.typeAlias(statusCodesTypeName, ast_1.ts.unionType(Object.keys(statusCodes))));
44
+ result.values.push(index_js_1.ts.typeAlias(statusCodesTypeName, index_js_1.ts.unionType(Object.keys(statusCodes))));
45
45
  if (ctx.config.strictResponseTypes) {
46
- statusCodeType = ast_1.ts.reference(statusCodesTypeName);
46
+ statusCodeType = index_js_1.ts.reference(statusCodesTypeName);
47
47
  }
48
48
  else {
49
49
  statusCodeType = ctx.refs.httpStatusCode();
50
50
  }
51
- result.values.push(ast_1.ts.typeAlias(this.getResponseModelName(ctx, endpoint), ast_1.ts.intersectionType([
52
- ast_1.ts.unionType([
51
+ result.values.push(index_js_1.ts.typeAlias(this.getResponseModelName(ctx, endpoint), index_js_1.ts.intersectionType([
52
+ index_js_1.ts.unionType([
53
53
  ...Object.entries(statusCodes).map(([key, value]) => {
54
- return ast_1.ts.intersectionType([
55
- ast_1.ts.refs.omit([ast_1.ts.refs.k6.response(), ast_1.ts.string('json')]),
56
- ast_1.ts.objectType({
54
+ return index_js_1.ts.intersectionType([
55
+ index_js_1.ts.refs.omit([index_js_1.ts.refs.k6.response(), index_js_1.ts.string('json')]),
56
+ index_js_1.ts.objectType({
57
57
  members: [
58
- ast_1.ts.property('status', { type: key }),
59
- ast_1.ts.method('json', {
58
+ index_js_1.ts.property('status', { type: key }),
59
+ index_js_1.ts.method('json', {
60
60
  returnType: value.type,
61
61
  }),
62
- ast_1.ts.method('json', {
63
- parameters: [ast_1.ts.parameter('selector', { type: ast_1.ts.refs.string() })],
64
- returnType: ast_1.ts.refs.k6.jsonValue(),
62
+ index_js_1.ts.method('json', {
63
+ parameters: [index_js_1.ts.parameter('selector', { type: index_js_1.ts.refs.string() })],
64
+ returnType: index_js_1.ts.refs.k6.jsonValue(),
65
65
  }),
66
66
  ],
67
67
  }),
68
68
  ]);
69
69
  }),
70
70
  !ctx.config.strictResponseTypes
71
- ? ast_1.ts.intersectionType([
72
- ast_1.ts.refs.k6.response(),
73
- ast_1.ts.objectType({
71
+ ? index_js_1.ts.intersectionType([
72
+ index_js_1.ts.refs.k6.response(),
73
+ index_js_1.ts.objectType({
74
74
  members: [
75
- ast_1.ts.property('status', {
76
- type: ast_1.ts.refs.exclude([ctx.refs.httpStatusCode(), ast_1.ts.reference(statusCodesTypeName)]),
75
+ index_js_1.ts.property('status', {
76
+ type: index_js_1.ts.refs.exclude([ctx.refs.httpStatusCode(), index_js_1.ts.reference(statusCodesTypeName)]),
77
77
  }),
78
78
  ],
79
79
  }),
80
80
  ])
81
81
  : null,
82
82
  ]),
83
- ast_1.ts.objectType({ members: [ast_1.ts.property('status', { type: 'TStatus' })] }),
83
+ index_js_1.ts.objectType({ members: [index_js_1.ts.property('status', { type: 'TStatus' })] }),
84
84
  ]), {
85
- doc: ast_1.ts.doc({
85
+ doc: index_js_1.ts.doc({
86
86
  description: `Response model for operation ${this.getEndpointMethodName(ctx, endpoint)}`,
87
- tags: [endpoint.deprecated ? ast_1.ts.docTag('deprecated') : null],
87
+ tags: [endpoint.deprecated ? index_js_1.ts.docTag('deprecated') : null],
88
88
  }),
89
89
  export: true,
90
90
  generics: [
91
- ast_1.ts.genericParameter('TStatus', {
91
+ index_js_1.ts.genericParameter('TStatus', {
92
92
  constraint: statusCodeType,
93
93
  default: statusCodeType,
94
94
  }),
@@ -106,7 +106,7 @@ class DefaultTypeScriptK6ClientGenerator extends file_generator_1.TypeScriptFile
106
106
  parser: (_a = value === null || value === void 0 ? void 0 : value.parser) !== null && _a !== void 0 ? _a : 'text',
107
107
  type: typeof (value === null || value === void 0 ? void 0 : value.type) === 'function'
108
108
  ? this.getSchemaType(ctx, value.type(ctx.data.schemas))
109
- : (value !== null && value !== void 0 ? value : ast_1.ts.refs.never()),
109
+ : value !== null && value !== void 0 ? value : index_js_1.ts.refs.never(),
110
110
  },
111
111
  ];
112
112
  }),
@@ -117,7 +117,7 @@ class DefaultTypeScriptK6ClientGenerator extends file_generator_1.TypeScriptFile
117
117
  return [
118
118
  x.statusCode,
119
119
  {
120
- type: this.getSchemaType(ctx, (_a = x.contentOptions[0]) === null || _a === void 0 ? void 0 : _a.schema, { fallback: ast_1.ts.refs.never() }),
120
+ type: this.getSchemaType(ctx, (_a = x.contentOptions[0]) === null || _a === void 0 ? void 0 : _a.schema, { fallback: index_js_1.ts.refs.never() }),
121
121
  },
122
122
  ];
123
123
  }),
@@ -131,22 +131,22 @@ class DefaultTypeScriptK6ClientGenerator extends file_generator_1.TypeScriptFile
131
131
  code.values.push(this.getEndpointParamsType(ctx, endpoint));
132
132
  }
133
133
  }
134
- code.values.push((0, core_1.appendValueGroup)(ctx.service.endpoints.map((e) => ast_1.ts.variable(this.getEndpointPathPropertyName(ctx, e), {
134
+ code.values.push((0, core_1.appendValueGroup)(ctx.service.endpoints.map((e) => index_js_1.ts.variable(this.getEndpointPathPropertyName(ctx, e), {
135
135
  readonly: true,
136
- value: ast_1.ts.string(e.path),
136
+ value: index_js_1.ts.string(e.path),
137
137
  }))));
138
138
  code.values.push(this.getClass(ctx));
139
139
  return code;
140
140
  }
141
141
  getEndpointParamsType(ctx, endpoint) {
142
- const type = ast_1.ts.doc({
142
+ const type = index_js_1.ts.doc({
143
143
  description: `Parameters for operation ${this.getEndpointMethodName(ctx, endpoint)}`,
144
- tags: [ast_1.ts.docTag('typedef', this.getEndpointParamsTypeName(ctx, endpoint))],
144
+ tags: [index_js_1.ts.docTag('typedef', this.getEndpointParamsTypeName(ctx, endpoint))],
145
145
  });
146
146
  for (const parameter of endpoint.parameters) {
147
147
  const schema = parameter.schema;
148
148
  const name = (0, core_1.toCasing)(parameter.name, ctx.config.propertyNameCasing);
149
- type.tags.push(ast_1.ts.docTag('property', parameter.required ? name : `[${name}]`, {
149
+ type.tags.push(index_js_1.ts.docTag('property', parameter.required ? name : `[${name}]`, {
150
150
  type: schema
151
151
  ? (b) => b.appendModelUsage(ctx.input.typescript.models[schema.id], { type: 'js-doc' })
152
152
  : this.getAnyType(ctx),
@@ -156,7 +156,7 @@ class DefaultTypeScriptK6ClientGenerator extends file_generator_1.TypeScriptFile
156
156
  if (endpoint.requestBody !== undefined) {
157
157
  const body = endpoint.requestBody;
158
158
  const schema = body.content[0].schema;
159
- type.tags.push(ast_1.ts.docTag('property', body.required ? 'body' : '[body]', {
159
+ type.tags.push(index_js_1.ts.docTag('property', body.required ? 'body' : '[body]', {
160
160
  type: schema
161
161
  ? (b) => b.appendModelUsage(ctx.input.typescript.models[schema.id], { type: 'js-doc' })
162
162
  : this.getAnyType(ctx),
@@ -166,29 +166,31 @@ class DefaultTypeScriptK6ClientGenerator extends file_generator_1.TypeScriptFile
166
166
  return type;
167
167
  }
168
168
  getClass(ctx) {
169
- return ast_1.ts.class(this.getClassName(ctx), {
170
- doc: ast_1.ts.doc({
169
+ return index_js_1.ts.class(this.getClassName(ctx), {
170
+ doc: index_js_1.ts.doc({
171
171
  description: ctx.service.description,
172
172
  tags: [
173
- ast_1.ts.docTag('property', 'rootUrl', 'The root URL for this client.', {
174
- type: ast_1.ts.refs.string(),
173
+ index_js_1.ts.docTag('property', 'rootUrl', 'The root URL for this client.', {
174
+ type: index_js_1.ts.refs.string(),
175
175
  }),
176
176
  ctx.service.endpoints.length === 0 || ctx.service.endpoints.some((x) => !x.deprecated)
177
177
  ? null
178
- : ast_1.ts.docTag('deprecated'),
178
+ : index_js_1.ts.docTag('deprecated'),
179
179
  ],
180
180
  }),
181
181
  export: true,
182
182
  members: [
183
- ast_1.ts.constructor({
184
- doc: ast_1.ts.doc({
183
+ index_js_1.ts.constructor({
184
+ doc: index_js_1.ts.doc({
185
185
  description: 'Creates a new instance of the client.',
186
186
  tags: [
187
- ast_1.ts.docTag('param', 'rootUrl', 'The root URL for this client.', { type: ast_1.ts.refs.string() }),
188
- ast_1.ts.docTag('param', '[defaultK6ParamsFactory]', 'A factory function that returns the default K6 parameters.', { type: ast_1.ts.functionType({ returnType: ast_1.ts.refs.k6.params({ importType: 'js-doc' }) }) }),
187
+ index_js_1.ts.docTag('param', 'rootUrl', 'The root URL for this client.', { type: index_js_1.ts.refs.string() }),
188
+ index_js_1.ts.docTag('param', '[defaultK6ParamsFactory]', 'A factory function that returns the default K6 parameters.', {
189
+ type: index_js_1.ts.functionType({ returnType: index_js_1.ts.refs.k6.params({ importType: 'js-doc' }) }),
190
+ }),
189
191
  ],
190
192
  }),
191
- parameters: [ast_1.ts.constructorParameter('rootUrl'), ast_1.ts.constructorParameter('defaultK6ParamsFactory')],
193
+ parameters: [index_js_1.ts.constructorParameter('rootUrl'), index_js_1.ts.constructorParameter('defaultK6ParamsFactory')],
192
194
  body: (0, core_1.builderTemplate) `this.rootUrl = rootUrl;
193
195
  this._defaultK6ParamsFactory = defaultK6ParamsFactory;`,
194
196
  }),
@@ -201,27 +203,29 @@ class DefaultTypeScriptK6ClientGenerator extends file_generator_1.TypeScriptFile
201
203
  var _a, _b, _c, _d;
202
204
  const hasParams = this.hasEndpointParams(ctx, endpoint);
203
205
  const paramsOptional = !endpoint.parameters.some((p) => p.required) && !((_a = endpoint.requestBody) === null || _a === void 0 ? void 0 : _a.required);
204
- const responseModelType = ast_1.ts.reference(this.getResponseModelName(ctx, endpoint), this.getResponseModelFilePath(ctx), { importType: 'js-doc' });
206
+ const responseModelType = index_js_1.ts.reference(this.getResponseModelName(ctx, endpoint), this.getResponseModelFilePath(ctx), {
207
+ importType: 'js-doc',
208
+ });
205
209
  const returnType = responseModelType;
206
210
  const accept = (_d = (_c = (_b = this.getEndpointSuccessResponse(ctx, endpoint)) === null || _b === void 0 ? void 0 : _b.contentOptions[0]) === null || _c === void 0 ? void 0 : _c.type) !== null && _d !== void 0 ? _d : '*/*';
207
- return ast_1.ts.method(this.getEndpointMethodName(ctx, endpoint), {
211
+ return index_js_1.ts.method(this.getEndpointMethodName(ctx, endpoint), {
208
212
  async: ctx.config.async,
209
- parameters: [hasParams ? ast_1.ts.parameter('params') : null, ast_1.ts.parameter('k6Params')],
210
- doc: ast_1.ts.doc({
213
+ parameters: [hasParams ? index_js_1.ts.parameter('params') : null, index_js_1.ts.parameter('k6Params')],
214
+ doc: index_js_1.ts.doc({
211
215
  description: endpoint.description,
212
216
  tags: [
213
217
  hasParams
214
- ? ast_1.ts.docTag('param', paramsOptional ? '[params]' : 'params', {
215
- type: ast_1.ts.reference(this.getEndpointParamsTypeName(ctx, endpoint)),
218
+ ? index_js_1.ts.docTag('param', paramsOptional ? '[params]' : 'params', {
219
+ type: index_js_1.ts.reference(this.getEndpointParamsTypeName(ctx, endpoint)),
216
220
  })
217
221
  : null,
218
- ast_1.ts.docTag('param', '[k6Params]', {
219
- type: ast_1.ts.refs.k6.params({ importType: 'js-doc' }),
222
+ index_js_1.ts.docTag('param', '[k6Params]', {
223
+ type: index_js_1.ts.refs.k6.params({ importType: 'js-doc' }),
220
224
  }),
221
- ast_1.ts.docTag('returns', {
222
- type: ctx.config.async ? ast_1.ts.refs.promise([returnType]) : returnType,
225
+ index_js_1.ts.docTag('returns', {
226
+ type: ctx.config.async ? index_js_1.ts.refs.promise([returnType]) : returnType,
223
227
  }),
224
- endpoint.deprecated ? ast_1.ts.docTag('deprecated') : null,
228
+ endpoint.deprecated ? index_js_1.ts.docTag('deprecated') : null,
225
229
  ],
226
230
  }),
227
231
  body: (0, core_1.appendValueGroup)([
@@ -233,16 +237,16 @@ class DefaultTypeScriptK6ClientGenerator extends file_generator_1.TypeScriptFile
233
237
  ...endpoint.parameters
234
238
  .filter((p) => p.target === 'path' || p.target === 'query' || p.target === 'header')
235
239
  .map((p) => {
236
- const options = ast_1.ts.object({
240
+ const options = index_js_1.ts.object({
237
241
  members: [
238
- p.style !== undefined ? ast_1.ts.property('style', { value: ast_1.ts.string(p.style) }) : null,
239
- p.explode !== undefined ? ast_1.ts.property('explode', { value: ast_1.ts.toNode(p.explode) }) : null,
242
+ p.style !== undefined ? index_js_1.ts.property('style', { value: index_js_1.ts.string(p.style) }) : null,
243
+ p.explode !== undefined ? index_js_1.ts.property('explode', { value: index_js_1.ts.toNode(p.explode) }) : null,
240
244
  ],
241
245
  });
242
- return (0, core_1.builderTemplate) `rb.${p.target}(${ast_1.ts.string(p.name)}, params.${(0, core_1.toCasing)(p.name, ctx.config.propertyNameCasing)}, ${options});`;
246
+ return (0, core_1.builderTemplate) `rb.${p.target}(${index_js_1.ts.string(p.name)}, params.${(0, core_1.toCasing)(p.name, ctx.config.propertyNameCasing)}, ${options});`;
243
247
  }),
244
248
  endpoint.requestBody
245
- ? (0, core_1.builderTemplate) `rb.body(params.body, ${ast_1.ts.string((_a = endpoint.requestBody.content[0].type) !== null && _a !== void 0 ? _a : 'application/json')});`
249
+ ? (0, core_1.builderTemplate) `rb.body(params.body, ${index_js_1.ts.string((_a = endpoint.requestBody.content[0].type) !== null && _a !== void 0 ? _a : 'application/json')});`
246
250
  : null,
247
251
  ], '\n'), { multiline: true });
248
252
  }
@@ -250,7 +254,7 @@ class DefaultTypeScriptK6ClientGenerator extends file_generator_1.TypeScriptFile
250
254
  '',
251
255
  (0, core_1.builderTemplate) `return /** @type {${returnType}} */ (${core_1.builderTemplate.indent `
252
256
  ${ctx.config.async ? 'await rb.buildAsync' : 'rb.build'}({${core_1.builderTemplate.indent `
253
- accept: ${ast_1.ts.string(accept)},
257
+ accept: ${index_js_1.ts.string(accept)},
254
258
  params: this.getK6Params(k6Params),`}
255
259
  })`}
256
260
  );`,
@@ -258,14 +262,14 @@ class DefaultTypeScriptK6ClientGenerator extends file_generator_1.TypeScriptFile
258
262
  });
259
263
  }
260
264
  getGetK6ParamsMethod(ctx) {
261
- return ast_1.ts.method('getK6Params', {
262
- doc: ast_1.ts.doc({
265
+ return index_js_1.ts.method('getK6Params', {
266
+ doc: index_js_1.ts.doc({
263
267
  tags: [
264
- ast_1.ts.docTag('private'),
265
- ast_1.ts.docTag('param', '[k6Params]', { type: ast_1.ts.refs.k6.params({ importType: 'js-doc' }) }),
268
+ index_js_1.ts.docTag('private'),
269
+ index_js_1.ts.docTag('param', '[k6Params]', { type: index_js_1.ts.refs.k6.params({ importType: 'js-doc' }) }),
266
270
  ],
267
271
  }),
268
- parameters: [ast_1.ts.parameter('k6Params')],
272
+ parameters: [index_js_1.ts.parameter('k6Params')],
269
273
  body: (0, core_1.builderTemplate) `return Object.assign({}, this._defaultK6ParamsFactory ? this._defaultK6ParamsFactory() : {}, k6Params);`,
270
274
  });
271
275
  }
@@ -298,13 +302,13 @@ class DefaultTypeScriptK6ClientGenerator extends file_generator_1.TypeScriptFile
298
302
  }
299
303
  getFilePath(ctx) {
300
304
  var _a;
301
- return (0, path_1.resolve)(ctx.config.outputDir, ctx.config.clientDir, `${(0, core_1.toCasing)(ctx.service.name, (_a = ctx.config.clientFileNameCasing) !== null && _a !== void 0 ? _a : ctx.config.fileNameCasing)}.js`);
305
+ return (0, node_path_1.resolve)(ctx.config.outputDir, ctx.config.clientDir, `${(0, core_1.toCasing)(ctx.service.name, (_a = ctx.config.clientFileNameCasing) !== null && _a !== void 0 ? _a : ctx.config.fileNameCasing)}.js`);
302
306
  }
303
307
  getResponseModelFilePath(ctx) {
304
308
  var _a;
305
- return (0, path_1.resolve)(ctx.config.outputDir, ctx.config.responseModelsDir, `${(0, core_1.toCasing)(ctx.service.name, (_a = ctx.config.responseModelFileNameCasing) !== null && _a !== void 0 ? _a : ctx.config.fileNameCasing)}.ts`);
309
+ return (0, node_path_1.resolve)(ctx.config.outputDir, ctx.config.responseModelsDir, `${(0, core_1.toCasing)(ctx.service.name, (_a = ctx.config.responseModelFileNameCasing) !== null && _a !== void 0 ? _a : ctx.config.fileNameCasing)}.ts`);
306
310
  }
307
- hasEndpointParams(ctx, endpoint) {
311
+ hasEndpointParams(_ctx, endpoint) {
308
312
  return endpoint.parameters.length > 0 || endpoint.requestBody !== undefined;
309
313
  }
310
314
  }
@@ -0,0 +1,28 @@
1
+ import { type ApiService, type AppendValueGroup, Factory, type OpenApiGeneratorContext, OpenApiServicesGenerationProviderBase } from '@goast/core';
2
+ import { type TypeScriptK6ClientGenerator } from './k6-client-generator.js';
3
+ import { type TypeScriptK6ClientGeneratorOutput, type TypeScriptK6ClientsGeneratorConfig, type TypeScriptK6ClientsGeneratorContext, type TypeScriptK6ClientsGeneratorInput, type TypeScriptK6ClientsGeneratorOutput } from './models.js';
4
+ import { TypeScriptFileBuilder } from '../../../file-builder.js';
5
+ type Input = TypeScriptK6ClientsGeneratorInput;
6
+ type Output = TypeScriptK6ClientsGeneratorOutput;
7
+ type Config = TypeScriptK6ClientsGeneratorConfig;
8
+ type ServiceOutput = TypeScriptK6ClientGeneratorOutput;
9
+ type Context = TypeScriptK6ClientsGeneratorContext;
10
+ export declare class TypeScriptK6ClientsGenerator extends OpenApiServicesGenerationProviderBase<Input, Output, Config, ServiceOutput, Context> {
11
+ private readonly _clientGeneratorFactory;
12
+ constructor(clientGeneratorFactory?: Factory<TypeScriptK6ClientGenerator, []>);
13
+ protected initResult(): Output;
14
+ protected buildContext(context: OpenApiGeneratorContext<Input>, config?: Partial<Config> | undefined): Context;
15
+ onGenerate(ctx: Context): Output;
16
+ protected generateService(ctx: Context, service: ApiService): ServiceOutput;
17
+ protected addServiceResult(ctx: Context, service: ApiService, result: ServiceOutput): void;
18
+ protected generateUtilsFiles(ctx: Context): void;
19
+ protected getHttpStatusCodeFileContent(ctx: Context): AppendValueGroup<TypeScriptFileBuilder>;
20
+ protected generateIndexFiles(ctx: Context): Output['typescript']['indexFiles'];
21
+ protected getIndexFilePath(ctx: Context): string | null;
22
+ protected getResponseModelsIndexFilePath(ctx: Context): string | null;
23
+ protected getIndexFileContent(ctx: Context): AppendValueGroup<TypeScriptFileBuilder>;
24
+ protected getResponseModelsIndexFileContent(ctx: Context): AppendValueGroup<TypeScriptFileBuilder>;
25
+ private copyFile;
26
+ }
27
+ export {};
28
+ //# sourceMappingURL=k6-clients-generator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"k6-clients-generator.d.ts","sourceRoot":"","sources":["../../../../../src/lib/generators/services/k6-clients/k6-clients-generator.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,KAAK,UAAU,EACf,KAAK,gBAAgB,EAErB,OAAO,EACP,KAAK,uBAAuB,EAC5B,qCAAqC,EACtC,MAAM,aAAa,CAAC;AAErB,OAAO,EAAsC,KAAK,2BAA2B,EAAE,MAAM,0BAA0B,CAAC;AAChH,OAAO,EAEL,KAAK,iCAAiC,EACtC,KAAK,kCAAkC,EACvC,KAAK,mCAAmC,EACxC,KAAK,iCAAiC,EACtC,KAAK,kCAAkC,EACxC,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAGjE,KAAK,KAAK,GAAG,iCAAiC,CAAC;AAC/C,KAAK,MAAM,GAAG,kCAAkC,CAAC;AACjD,KAAK,MAAM,GAAG,kCAAkC,CAAC;AACjD,KAAK,aAAa,GAAG,iCAAiC,CAAC;AACvD,KAAK,OAAO,GAAG,mCAAmC,CAAC;AAEnD,qBAAa,4BAA6B,SAAQ,qCAAqC,CACrF,KAAK,EACL,MAAM,EACN,MAAM,EACN,aAAa,EACb,OAAO,CACR;IACC,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAA2C;gBAEvE,sBAAsB,CAAC,EAAE,OAAO,CAAC,2BAA2B,EAAE,EAAE,CAAC;cAM1D,UAAU,IAAI,MAAM;cAYpB,YAAY,CAC7B,OAAO,EAAE,uBAAuB,CAAC,KAAK,CAAC,EACvC,MAAM,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,SAAS,GACnC,OAAO;IAOM,UAAU,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;cAO7B,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,GAAG,aAAa;cAQjE,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,GAAG,IAAI;IAInG,SAAS,CAAC,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,IAAI;IAiBhD,SAAS,CAAC,4BAA4B,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,CAAC,qBAAqB,CAAC;IAY7F,SAAS,CAAC,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC;IAwB9E,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI;IAIvD,SAAS,CAAC,8BAA8B,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI;IAMrE,SAAS,CAAC,mBAAmB,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,CAAC,qBAAqB,CAAC;IAMpF,SAAS,CAAC,iCAAiC,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,CAAC,qBAAqB,CAAC;IAQlG,OAAO,CAAC,QAAQ;CAMjB"}
@@ -2,19 +2,25 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TypeScriptK6ClientsGenerator = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const path_1 = require("path");
5
+ const node_path_1 = require("node:path");
6
6
  const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
7
7
  const core_1 = require("@goast/core");
8
- const k6_client_generator_1 = require("./k6-client-generator");
9
- const models_1 = require("./models");
10
- const refs_1 = require("./refs");
11
- const ast_1 = require("../../../ast");
12
- const file_builder_1 = require("../../../file-builder");
8
+ const k6_client_generator_js_1 = require("./k6-client-generator.js");
9
+ const models_js_1 = require("./models.js");
10
+ const refs_js_1 = require("./refs.js");
11
+ const index_js_1 = require("../../../ast/index.js");
12
+ const file_builder_js_1 = require("../../../file-builder.js");
13
+ const assets_js_1 = require("../../../assets.js");
13
14
  class TypeScriptK6ClientsGenerator extends core_1.OpenApiServicesGenerationProviderBase {
14
15
  constructor(clientGeneratorFactory) {
15
16
  super();
16
- this._clientGeneratorFactory =
17
- clientGeneratorFactory !== null && clientGeneratorFactory !== void 0 ? clientGeneratorFactory : core_1.Factory.fromValue(new k6_client_generator_1.DefaultTypeScriptK6ClientGenerator());
17
+ Object.defineProperty(this, "_clientGeneratorFactory", {
18
+ enumerable: true,
19
+ configurable: true,
20
+ writable: true,
21
+ value: void 0
22
+ });
23
+ this._clientGeneratorFactory = clientGeneratorFactory !== null && clientGeneratorFactory !== void 0 ? clientGeneratorFactory : core_1.Factory.fromValue(new k6_client_generator_js_1.DefaultTypeScriptK6ClientGenerator());
18
24
  }
19
25
  initResult() {
20
26
  return {
@@ -28,9 +34,9 @@ class TypeScriptK6ClientsGenerator extends core_1.OpenApiServicesGenerationProvi
28
34
  };
29
35
  }
30
36
  buildContext(context, config) {
31
- const providerContext = this.getProviderContext(context, config, models_1.defaultTypeScriptK6ClientsGeneratorConfig);
37
+ const providerContext = this.getProviderContext(context, config, models_js_1.defaultTypeScriptK6ClientsGeneratorConfig);
32
38
  return Object.assign(providerContext, {
33
- refs: (0, refs_1.getReferenceFactories)(providerContext.config),
39
+ refs: (0, refs_js_1.getReferenceFactories)(providerContext.config),
34
40
  });
35
41
  }
36
42
  onGenerate(ctx) {
@@ -50,14 +56,14 @@ class TypeScriptK6ClientsGenerator extends core_1.OpenApiServicesGenerationProvi
50
56
  ctx.output.typescript.k6Clients[service.id] = result;
51
57
  }
52
58
  generateUtilsFiles(ctx) {
53
- const sourceDir = (0, path_1.resolve)((0, path_1.dirname)(require.resolve('@goast/typescript')), '../assets/client/k6');
54
- const targetDir = (0, path_1.resolve)(ctx.config.outputDir, ctx.config.utilsDir);
59
+ const sourceDir = (0, assets_js_1.getAssetPath)('client/k6');
60
+ const targetDir = (0, node_path_1.resolve)(ctx.config.outputDir, ctx.config.utilsDir);
55
61
  fs_extra_1.default.ensureDirSync(targetDir);
56
62
  this.copyFile('Request Builder', sourceDir, targetDir, 'request-builder.js');
57
63
  if (!ctx.config.strictResponseTypes) {
58
- file_builder_1.TypeScriptFileBuilder.generate({
64
+ file_builder_js_1.TypeScriptFileBuilder.generate({
59
65
  logName: 'http status codes',
60
- filePath: (0, path_1.resolve)(targetDir, 'http-status-code.ts'),
66
+ filePath: (0, node_path_1.resolve)(targetDir, 'http-status-code.ts'),
61
67
  options: ctx.config,
62
68
  generator: (b) => b.append(this.getHttpStatusCodeFileContent(ctx)),
63
69
  });
@@ -65,8 +71,8 @@ class TypeScriptK6ClientsGenerator extends core_1.OpenApiServicesGenerationProvi
65
71
  }
66
72
  getHttpStatusCodeFileContent(ctx) {
67
73
  return (0, core_1.appendValueGroup)([
68
- ast_1.ts.typeAlias('HttpStatusCode', ast_1.ts.unionType(ctx.config.possibleStatusCodes), {
69
- doc: ast_1.ts.doc({ description: 'The possible status codes that any API endpoint can return.' }),
74
+ index_js_1.ts.typeAlias('HttpStatusCode', index_js_1.ts.unionType(ctx.config.possibleStatusCodes), {
75
+ doc: index_js_1.ts.doc({ description: 'The possible status codes that any API endpoint can return.' }),
70
76
  export: true,
71
77
  }),
72
78
  ], '\n');
@@ -74,13 +80,13 @@ class TypeScriptK6ClientsGenerator extends core_1.OpenApiServicesGenerationProvi
74
80
  generateIndexFiles(ctx) {
75
81
  const clientsIndexFilePath = this.getIndexFilePath(ctx);
76
82
  const responseModelsIndexFilePath = this.getResponseModelsIndexFilePath(ctx);
77
- file_builder_1.TypeScriptFileBuilder.tryGenerate({
83
+ file_builder_js_1.TypeScriptFileBuilder.tryGenerate({
78
84
  logName: 'clients index file',
79
85
  filePath: clientsIndexFilePath,
80
86
  options: ctx.config,
81
87
  generator: (b) => b.append(this.getIndexFileContent(ctx)),
82
88
  });
83
- file_builder_1.TypeScriptFileBuilder.tryGenerate({
89
+ file_builder_js_1.TypeScriptFileBuilder.tryGenerate({
84
90
  logName: 'response models index file',
85
91
  filePath: responseModelsIndexFilePath,
86
92
  options: ctx.config,
@@ -92,24 +98,24 @@ class TypeScriptK6ClientsGenerator extends core_1.OpenApiServicesGenerationProvi
92
98
  };
93
99
  }
94
100
  getIndexFilePath(ctx) {
95
- return ctx.config.clientsIndexFile ? (0, path_1.resolve)(ctx.config.outputDir, ctx.config.clientsIndexFile) : null;
101
+ return ctx.config.clientsIndexFile ? (0, node_path_1.resolve)(ctx.config.outputDir, ctx.config.clientsIndexFile) : null;
96
102
  }
97
103
  getResponseModelsIndexFilePath(ctx) {
98
104
  return ctx.config.responseModelsIndexFile
99
- ? (0, path_1.resolve)(ctx.config.outputDir, ctx.config.responseModelsIndexFile)
105
+ ? (0, node_path_1.resolve)(ctx.config.outputDir, ctx.config.responseModelsIndexFile)
100
106
  : null;
101
107
  }
102
108
  getIndexFileContent(ctx) {
103
- return (0, core_1.appendValueGroup)(Object.values(ctx.output.typescript.k6Clients).map((x) => ast_1.ts.export(x.component, x.filePath)));
109
+ return (0, core_1.appendValueGroup)(Object.values(ctx.output.typescript.k6Clients).map((x) => index_js_1.ts.export(x.component, x.filePath)));
104
110
  }
105
111
  getResponseModelsIndexFileContent(ctx) {
106
112
  return (0, core_1.appendValueGroup)(Object.values(ctx.output.typescript.k6Clients)
107
113
  .flatMap((x) => Object.values(x.responseModels))
108
- .map((x) => ast_1.ts.export(x.component, x.filePath)));
114
+ .map((x) => index_js_1.ts.export(x.component, x.filePath)));
109
115
  }
110
116
  copyFile(logName, sourceDir, targetDir, fileName) {
111
- const source = (0, path_1.resolve)(sourceDir, fileName);
112
- const target = (0, path_1.resolve)(targetDir, fileName);
117
+ const source = (0, node_path_1.resolve)(sourceDir, fileName);
118
+ const target = (0, node_path_1.resolve)(targetDir, fileName);
113
119
  console.log(`Generating ${logName} to ${target}...`);
114
120
  fs_extra_1.default.copyFileSync(source, target);
115
121
  }
@@ -0,0 +1,119 @@
1
+ import type { ApiSchema, ApiService, DefaultGenerationProviderConfig, ExtendedStringCasing, Nullable, OpenApiServicesGenerationProviderContext } from '@goast/core';
2
+ import type { getReferenceFactories } from './refs.js';
3
+ import type { ts } from '../../../ast/index.js';
4
+ import type { TypeScriptExportOutput } from '../../../common-results.js';
5
+ import { type TypeScriptGeneratorConfig } from '../../../config.js';
6
+ import type { TypeScriptFileBuilder } from '../../../file-builder.js';
7
+ import type { TypeScriptModelsGeneratorOutput } from '../../models/index.js';
8
+ export type TypeScriptK6ClientsGeneratorConfig = TypeScriptGeneratorConfig & {
9
+ /**
10
+ * Whether to use strict response types for the services.
11
+ * If enabled only the status codes are included that are defined in the OpenAPI specification or the `defaultStatusCodeResponseTypes` option.
12
+ * @default true
13
+ */
14
+ strictResponseTypes: boolean;
15
+ /**
16
+ * The default response types for status codes that are not defined in the OpenAPI specification.
17
+ * @example
18
+ * {
19
+ * 400: {
20
+ * parser: 'json',
21
+ * type: schemas =>
22
+ * schemas.find(s => s.name === 'BadRequestResponse')
23
+ * ?? throwExp('BadRequestResponse not found'),
24
+ * },
25
+ * 404: null,
26
+ * 500: {
27
+ * parser: 'json',
28
+ * type: ts.refs.any(),
29
+ * },
30
+ * }
31
+ * @default
32
+ * {
33
+ * 401: null,
34
+ * 403: null,
35
+ * 500: null,
36
+ * }
37
+ */
38
+ defaultStatusCodeResponseTypes: Record<number, {
39
+ parser: 'text' | 'json';
40
+ type: Exclude<ts.Type<TypeScriptFileBuilder>, Function> | ((schemas: readonly ApiSchema[]) => ApiSchema);
41
+ } | null>;
42
+ /**
43
+ * The possible status codes that any API endpoint can return.
44
+ * This is only used when `strictResponseTypes` is set to `false`.
45
+ * @default
46
+ * [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]
47
+ */
48
+ possibleStatusCodes: number[];
49
+ /**
50
+ * The casing of the client file names. If nullish, the `fileNameCasing` is used.
51
+ * @default { casing: 'kebab', suffix: '-client' }
52
+ */
53
+ clientFileNameCasing: Nullable<ExtendedStringCasing>;
54
+ /**
55
+ * The casing of the file names for the response models. If nullish, the `fileNameCasing` is used.
56
+ * @default { casing: 'kebab', suffix: '-responses' }
57
+ */
58
+ responseModelFileNameCasing: Nullable<ExtendedStringCasing>;
59
+ /**
60
+ * The casing of the client names. If nullish, the `typeNameCasing` is used.
61
+ * @default { casing: 'pascal', suffix: 'Client' }
62
+ */
63
+ clientNameCasing: Nullable<ExtendedStringCasing>;
64
+ /**
65
+ * The directory where the client files should be saved. The path is relative to the output directory.
66
+ * @default 'clients'
67
+ */
68
+ clientDir: string;
69
+ /**
70
+ * The directory where the response models should be saved. The path is relative to the output directory.
71
+ * @default 'models/responses'
72
+ */
73
+ responseModelsDir: string;
74
+ /**
75
+ * The index file where all clients should be exported. The path is relative to the output directory. If nullish, no index file will be generated.
76
+ * @default 'clients.ts'
77
+ */
78
+ clientsIndexFile: Nullable<string>;
79
+ /**
80
+ * 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.
81
+ * @default 'responses.ts'
82
+ */
83
+ responseModelsIndexFile: Nullable<string>;
84
+ /**
85
+ * The directory where the utilies should be saved. The path is relative to the output directory.
86
+ * @default 'utils'
87
+ */
88
+ utilsDir: string;
89
+ /**
90
+ * Whether to generate clients calling the async API of k6.
91
+ * @default true
92
+ */
93
+ async: boolean;
94
+ };
95
+ export declare const defaultTypeScriptK6ClientsGeneratorConfig: DefaultGenerationProviderConfig<TypeScriptK6ClientsGeneratorConfig>;
96
+ export type TypeScriptK6ClientsGeneratorInput = TypeScriptModelsGeneratorOutput;
97
+ export type TypeScriptK6ClientsGeneratorOutput = {
98
+ typescript: {
99
+ k6Clients: {
100
+ [serviceId: string]: TypeScriptK6ClientGeneratorOutput;
101
+ };
102
+ indexFiles: {
103
+ k6Clients: Nullable<string>;
104
+ k6ResponseModels: Nullable<string>;
105
+ };
106
+ };
107
+ };
108
+ export type TypeScriptK6ClientGeneratorOutput = TypeScriptExportOutput & {
109
+ responseModels: {
110
+ [operationId: string]: TypeScriptExportOutput;
111
+ };
112
+ };
113
+ export type TypeScriptK6ClientsGeneratorContext = OpenApiServicesGenerationProviderContext<TypeScriptK6ClientsGeneratorInput, TypeScriptK6ClientsGeneratorOutput, TypeScriptK6ClientsGeneratorConfig, TypeScriptK6ClientGeneratorOutput> & {
114
+ refs: ReturnType<typeof getReferenceFactories>;
115
+ };
116
+ export type TypeScriptK6ClientGeneratorContext = TypeScriptK6ClientsGeneratorContext & {
117
+ readonly service: ApiService;
118
+ };
119
+ //# sourceMappingURL=models.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../../../../src/lib/generators/services/k6-clients/models.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,SAAS,EACT,UAAU,EACV,+BAA+B,EAC/B,oBAAoB,EACpB,QAAQ,EACR,wCAAwC,EACzC,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,uBAAuB,CAAC;AAChD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAoC,KAAK,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AACtG,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACtE,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,uBAAuB,CAAC;AAE7E,MAAM,MAAM,kCAAkC,GAAG,yBAAyB,GAAG;IAC3E;;;;OAIG;IACH,mBAAmB,EAAE,OAAO,CAAC;IAE7B;;;;;;;;;;;;;;;;;;;;;;OAsBG;IACH,8BAA8B,EAAE,MAAM,CACpC,MAAM,EACN;QACE,MAAM,EAAE,MAAM,GAAG,MAAM,CAAC;QAExB,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,SAAS,SAAS,EAAE,KAAK,SAAS,CAAC,CAAC;KAC1G,GAAG,IAAI,CACT,CAAC;IAEF;;;;;OAKG;IACH,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAE9B;;;OAGG;IACH,oBAAoB,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IAErD;;;OAGG;IACH,2BAA2B,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IAE5D;;;OAGG;IACH,gBAAgB,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IAEjD;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAE1B;;;OAGG;IACH,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAEnC;;;OAGG;IACH,uBAAuB,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAE1C;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,KAAK,EAAE,OAAO,CAAC;CAChB,CAAC;AAEF,eAAO,MAAM,yCAAyC,EAAE,+BAA+B,CACrF,kCAAkC,CAqFnC,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG,+BAA+B,CAAC;AAEhF,MAAM,MAAM,kCAAkC,GAAG;IAC/C,UAAU,EAAE;QACV,SAAS,EAAE;YACT,CAAC,SAAS,EAAE,MAAM,GAAG,iCAAiC,CAAC;SACxD,CAAC;QACF,UAAU,EAAE;YACV,SAAS,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC5B,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;SACpC,CAAC;KACH,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,iCAAiC,GAAG,sBAAsB,GAAG;IACvE,cAAc,EAAE;QACd,CAAC,WAAW,EAAE,MAAM,GAAG,sBAAsB,CAAC;KAC/C,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,mCAAmC,GAC3C,wCAAwC,CACxC,iCAAiC,EACjC,kCAAkC,EAClC,kCAAkC,EAClC,iCAAiC,CAClC,GACC;IACA,IAAI,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC;CAChD,CAAC;AAEJ,MAAM,MAAM,kCAAkC,GAAG,mCAAmC,GAAG;IACrF,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;CAC9B,CAAC"}