@goast/typescript 0.3.13 → 0.4.0-beta2

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 (527) 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 +3 -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/esm/lib/generators/file-generator.d.ts +8 -0
  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 +10 -9
  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 +7 -6
  169. package/esm/lib/generators/models/models-generator.d.ts.map +1 -0
  170. package/esm/lib/generators/models/models-generator.js +10 -6
  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 +9 -8
  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 +8 -8
  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 +19 -22
  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 +8 -7
  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 +10 -10
  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 +15 -17
  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 +8 -7
  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 +7 -6
  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 +18 -18
  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 +11 -10
  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 +8 -8
  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 +16 -19
  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 +22 -32
  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 +3 -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 +19 -15
  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 +31 -0
  417. package/script/lib/generators/services/angular-services/angular-services-generator.d.ts.map +1 -0
  418. package/script/lib/generators/services/angular-services/angular-services-generator.js +218 -0
  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 +28 -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 +42 -44
  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 +30 -30
  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 +27 -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 +33 -36
  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/angular-services-generator.js +0 -221
  498. package/cjs/lib/generators/services/angular-services/index.js +0 -6
  499. package/cjs/lib/generators/services/angular-services/models.js +0 -30
  500. package/cjs/lib/generators/services/angular-services/refs.js +0 -28
  501. package/cjs/lib/generators/services/easy-network-stub/index.js +0 -6
  502. package/cjs/lib/generators/services/easy-network-stub/refs.js +0 -28
  503. package/cjs/lib/generators/services/fetch-clients/index.js +0 -6
  504. package/cjs/lib/generators/services/fetch-clients/refs.js +0 -16
  505. package/cjs/lib/generators/services/k6-clients/index.js +0 -6
  506. package/cjs/lib/generators/services/k6-clients/models.js +0 -28
  507. package/cjs/lib/generators/services/k6-clients/refs.js +0 -12
  508. package/cjs/package.json +0 -1
  509. package/types/index.d.ts +0 -7
  510. package/types/lib/ast/index.d.ts +0 -1
  511. package/types/lib/ast/nodes/types.d.ts +0 -18
  512. package/types/lib/ast/references/index.d.ts +0 -5
  513. package/types/lib/ast/utils/get-type-script-builder-options.d.ts +0 -3
  514. package/types/lib/ast/utils/write-ts-generic-parameters.d.ts +0 -3
  515. package/types/lib/ast/utils/write-ts-parameters.d.ts +0 -3
  516. package/types/lib/generators/file-generator.d.ts +0 -7
  517. package/types/lib/generators/index.d.ts +0 -6
  518. package/types/lib/generators/models/index.d.ts +0 -3
  519. package/types/lib/generators/services/angular-services/index.d.ts +0 -3
  520. package/types/lib/generators/services/easy-network-stub/index.d.ts +0 -3
  521. package/types/lib/generators/services/fetch-clients/index.d.ts +0 -3
  522. package/types/lib/generators/services/k6-clients/index.d.ts +0 -3
  523. /package/{cjs → script}/lib/ast/common.js +0 -0
  524. /package/{cjs → script}/lib/ast/node.js +0 -0
  525. /package/{cjs → script}/lib/ast/nodes/types.js +0 -0
  526. /package/{cjs → script}/lib/common-results.js +0 -0
  527. /package/{cjs → script}/lib/config.js +0 -0
@@ -1,16 +1,16 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DefaultTypeScriptEasyNetworkStubGenerator = 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 DefaultTypeScriptEasyNetworkStubGenerator 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 DefaultTypeScriptEasyNetworkStubGenerator extends file_generator_js_1.TypeScriptFileGenerator {
10
10
  generate(ctx) {
11
11
  const filePath = this.getStubFilePath(ctx);
12
12
  const name = this.getStubClassName(ctx);
13
- file_builder_1.TypeScriptFileBuilder.generate({
13
+ file_builder_js_1.TypeScriptFileBuilder.generate({
14
14
  logName: `stub ${name}`,
15
15
  filePath,
16
16
  options: ctx.config,
@@ -25,47 +25,47 @@ class DefaultTypeScriptEasyNetworkStubGenerator extends file_generator_1.TypeScr
25
25
  return (0, core_1.appendValueGroup)([...ctx.service.endpoints.map((endpoint) => this.getResponderVariable(ctx, endpoint)), this.getStubClass(ctx)], '\n');
26
26
  }
27
27
  getResponderVariable(ctx, endpoint) {
28
- return ast_1.ts.variable(this.getResponderVariableName(ctx, endpoint), {
28
+ return index_js_1.ts.variable(this.getResponderVariableName(ctx, endpoint), {
29
29
  readonly: true,
30
- value: ast_1.ts.call(ctx.refs.getStubResponder([
31
- ast_1.ts.objectType({
32
- members: Object.entries(this.getEndpointStatusCodes(ctx, endpoint)).map(([statusCode, type]) => ast_1.ts.property(statusCode, { type })),
30
+ value: index_js_1.ts.call(ctx.refs.getStubResponder([
31
+ index_js_1.ts.objectType({
32
+ members: Object.entries(this.getEndpointStatusCodes(ctx, endpoint)).map(([statusCode, type]) => index_js_1.ts.property(statusCode, { type })),
33
33
  }),
34
34
  ]), []),
35
35
  });
36
36
  }
37
37
  getStubClass(ctx) {
38
- return ast_1.ts.class(this.getStubClassName(ctx), {
38
+ return index_js_1.ts.class(this.getStubClassName(ctx), {
39
39
  export: true,
40
40
  extends: ctx.refs.easyNetworkStubBase(),
41
41
  members: [
42
- ...ctx.service.endpoints.map((endpoint) => ast_1.ts.property(this.getEndpointPathPropertyName(ctx, endpoint), {
42
+ ...ctx.service.endpoints.map((endpoint) => index_js_1.ts.property(this.getEndpointPathPropertyName(ctx, endpoint), {
43
43
  static: true,
44
44
  readonly: true,
45
45
  accessModifier: 'private',
46
- value: (0, core_1.builderTemplate) `${ast_1.ts.string(this.getStubRoute(ctx, endpoint))} as const`,
46
+ value: (0, core_1.builderTemplate) `${index_js_1.ts.string(this.getStubRoute(ctx, endpoint))} as const`,
47
47
  })),
48
48
  '\n',
49
- ...ctx.service.endpoints.map((endpoint) => ast_1.ts.property(this.getEndpointRequestsFieldName(ctx, endpoint), {
49
+ ...ctx.service.endpoints.map((endpoint) => index_js_1.ts.property(this.getEndpointRequestsFieldName(ctx, endpoint), {
50
50
  readonly: true,
51
51
  accessModifier: 'private',
52
52
  type: this.getEndpointRequestsType(ctx, endpoint),
53
- value: ast_1.ts.tuple([]),
53
+ value: index_js_1.ts.tuple([]),
54
54
  })),
55
55
  '\n',
56
- ...ctx.service.endpoints.map((endpoint) => ast_1.ts.property(this.getEndpointRequestsPropertyName(ctx, endpoint), {
56
+ ...ctx.service.endpoints.map((endpoint) => index_js_1.ts.property(this.getEndpointRequestsPropertyName(ctx, endpoint), {
57
57
  readonly: true,
58
58
  accessModifier: 'public',
59
59
  type: this.getEndpointRequestsType(ctx, endpoint, { readonly: true }),
60
- get: ast_1.ts.property.getter({
60
+ get: index_js_1.ts.property.getter({
61
61
  body: (0, core_1.appendValueGroup)([`return this.${this.getEndpointRequestsFieldName(ctx, endpoint)};`], '\n'),
62
62
  }),
63
63
  })),
64
64
  ...ctx.service.endpoints.map((endpoint) => this.getEndpointStubMethod(ctx, endpoint)),
65
- ast_1.ts.method('reset', {
65
+ index_js_1.ts.method('reset', {
66
66
  accessModifier: 'public',
67
67
  override: true,
68
- returnType: ast_1.ts.refs.void_(),
68
+ returnType: index_js_1.ts.refs.void_(),
69
69
  body: (0, core_1.appendValueGroup)([
70
70
  ...ctx.service.endpoints.map((endpoint) => `this.${this.getEndpointRequestsFieldName(ctx, endpoint)}.length = 0;`),
71
71
  'super.reset();',
@@ -76,29 +76,29 @@ class DefaultTypeScriptEasyNetworkStubGenerator extends file_generator_1.TypeScr
76
76
  }
77
77
  getEndpointRequestsType(ctx, endpoint, options) {
78
78
  var _a;
79
- return ast_1.ts.arrayType(ctx.refs.stubRequestInfo([
80
- ast_1.ts.typeof(ast_1.ts.call([this.getStubClassName(ctx), this.getEndpointPathPropertyName(ctx, endpoint)])),
79
+ return index_js_1.ts.arrayType(ctx.refs.stubRequestInfo([
80
+ index_js_1.ts.typeof(index_js_1.ts.call([this.getStubClassName(ctx), this.getEndpointPathPropertyName(ctx, endpoint)])),
81
81
  this.getSchemaType(ctx, (_a = endpoint.requestBody) === null || _a === void 0 ? void 0 : _a.content[0].schema),
82
82
  ]), options);
83
83
  }
84
84
  getEndpointStubMethod(ctx, endpoint) {
85
85
  var _a;
86
86
  const requestType = this.getSchemaType(ctx, (_a = endpoint.requestBody) === null || _a === void 0 ? void 0 : _a.content[0].schema);
87
- return ast_1.ts.method(this.getEndpointStubMethodName(ctx, endpoint), {
87
+ return index_js_1.ts.method(this.getEndpointStubMethodName(ctx, endpoint), {
88
88
  accessModifier: 'public',
89
89
  parameters: [
90
- ast_1.ts.parameter('response', {
90
+ index_js_1.ts.parameter('response', {
91
91
  type: ctx.refs.strictRouteResponseCallback([
92
92
  requestType,
93
- ast_1.ts.typeof(ast_1.ts.call([this.getStubClassName(ctx), this.getEndpointPathPropertyName(ctx, endpoint)])),
94
- ast_1.ts.typeof(this.getResponderVariableName(ctx, endpoint)),
93
+ index_js_1.ts.typeof(index_js_1.ts.call([this.getStubClassName(ctx), this.getEndpointPathPropertyName(ctx, endpoint)])),
94
+ index_js_1.ts.typeof(this.getResponderVariableName(ctx, endpoint)),
95
95
  ]),
96
96
  }),
97
97
  ],
98
98
  returnType: 'this',
99
99
  body: (0, core_1.appendValueGroup)([
100
100
  (0, core_1.builderTemplate) `this.stubWrapper.stub2<${requestType}>()(${core_1.builderTemplate.indent `
101
- ${ast_1.ts.string(endpoint.method.toUpperCase())},
101
+ ${index_js_1.ts.string(endpoint.method.toUpperCase())},
102
102
  ${this.getStubClassName(ctx)}.${this.getEndpointPathPropertyName(ctx, endpoint)},
103
103
  async (request) => {${core_1.builderTemplate.indent `
104
104
  if (this.stubWrapper.options.rememberRequests) {${core_1.builderTemplate.indent `
@@ -113,7 +113,7 @@ class DefaultTypeScriptEasyNetworkStubGenerator extends file_generator_1.TypeScr
113
113
  }
114
114
  getStubFilePath(ctx) {
115
115
  var _a;
116
- return (0, path_1.resolve)(ctx.config.outputDir, ctx.config.stubsDir, `${(0, core_1.toCasing)(ctx.service.name, (_a = ctx.config.stubFileNameCasing) !== null && _a !== void 0 ? _a : ctx.config.fileNameCasing)}.ts`);
116
+ return (0, node_path_1.resolve)(ctx.config.outputDir, ctx.config.stubsDir, `${(0, core_1.toCasing)(ctx.service.name, (_a = ctx.config.stubFileNameCasing) !== null && _a !== void 0 ? _a : ctx.config.fileNameCasing)}.ts`);
117
117
  }
118
118
  getResponderVariableName(ctx, endpoint) {
119
119
  return (0, core_1.toCasing)(endpoint.name + '_Responder', ctx.config.propertyNameCasing);
@@ -138,7 +138,8 @@ class DefaultTypeScriptEasyNetworkStubGenerator extends file_generator_1.TypeScr
138
138
  let path = endpoint.path;
139
139
  let isFirstQueryParam = true;
140
140
  for (const param of endpoint.parameters) {
141
- let type = ((_b = (param.schema && ((_a = ctx.input.typescript.models[param.schema.id]) === null || _a === void 0 ? void 0 : _a.component))) !== null && _b !== void 0 ? _b : ast_1.ts.refs.unknown.name).replace(/^readonly /, '');
141
+ let type = ((_b = (param.schema && ((_a = ctx.input.typescript.models[param.schema.id]) === null || _a === void 0 ? void 0 : _a.component))) !== null && _b !== void 0 ? _b : index_js_1.ts.refs.unknown.name)
142
+ .replace(/^readonly /, '');
142
143
  const arrayMatch = /^\((.*)\)\[\]$/.exec(type);
143
144
  if (arrayMatch !== null) {
144
145
  type = `${arrayMatch[1]}[]`;
@@ -161,7 +162,7 @@ class DefaultTypeScriptEasyNetworkStubGenerator extends file_generator_1.TypeScr
161
162
  ]),
162
163
  ...endpoint.responses
163
164
  .filter((x) => x.statusCode)
164
- .map((x) => { var _a; return [x.statusCode, this.getSchemaType(ctx, (_a = x.contentOptions[0]) === null || _a === void 0 ? void 0 : _a.schema, ast_1.ts.refs.never())]; }),
165
+ .map((x) => { var _a; return [x.statusCode, this.getSchemaType(ctx, (_a = x.contentOptions[0]) === null || _a === void 0 ? void 0 : _a.schema, index_js_1.ts.refs.never())]; }),
165
166
  ]);
166
167
  }
167
168
  getSchemaType(ctx, schema, fallback) {
@@ -0,0 +1,28 @@
1
+ import { type ApiService, type AppendValueGroup, Factory, type MaybePromise, type OpenApiGeneratorContext, OpenApiServicesGenerationProviderBase } from '@goast/core';
2
+ import { type TypeScriptEasyNetworkStubGenerator } from './easy-network-stub-generator.js';
3
+ import { type TypeScriptEasyNetworkStubGeneratorOutput, type TypeScriptEasyNetworkStubsGeneratorConfig, type TypeScriptEasyNetworkStubsGeneratorContext, type TypeScriptEasyNetworkStubsGeneratorInput, type TypeScriptEasyNetworkStubsGeneratorOutput } from './models.js';
4
+ import { ts } from '../../../ast/index.js';
5
+ import type { TypeScriptExportOutput } from '../../../common-results.js';
6
+ import { TypeScriptFileBuilder } from '../../../file-builder.js';
7
+ type Input = TypeScriptEasyNetworkStubsGeneratorInput;
8
+ type Output = TypeScriptEasyNetworkStubsGeneratorOutput;
9
+ type Config = TypeScriptEasyNetworkStubsGeneratorConfig;
10
+ type ServiceOutput = TypeScriptEasyNetworkStubGeneratorOutput;
11
+ type Context = TypeScriptEasyNetworkStubsGeneratorContext;
12
+ export declare class TypeScriptEasyNetworkStubsGenerator extends OpenApiServicesGenerationProviderBase<Input, Output, Config, ServiceOutput, Context> {
13
+ private readonly _generatorFactory;
14
+ constructor(generatorFactory?: Factory<TypeScriptEasyNetworkStubGenerator, []>);
15
+ protected initResult(): Output;
16
+ protected buildContext(context: OpenApiGeneratorContext<Input>, config?: Partial<Config> | undefined): Context;
17
+ protected generateAdditionalFiles(ctx: TypeScriptEasyNetworkStubsGeneratorContext): Promise<void>;
18
+ protected generateService(ctx: Context, service: ApiService): MaybePromise<TypeScriptExportOutput>;
19
+ protected addServiceResult(ctx: Context, service: ApiService, result: TypeScriptExportOutput): void;
20
+ protected generateUtilsFiles(ctx: Context): Promise<void>;
21
+ protected generateIndexFiles(ctx: Context): Output['typescript']['indexFiles'];
22
+ protected getStubsIndexFileContent(ctx: Context): AppendValueGroup<TypeScriptFileBuilder>;
23
+ protected getStubsClass(ctx: Context): ts.Class<TypeScriptFileBuilder>;
24
+ protected getStubsIndexFilePath(ctx: Context): string | null;
25
+ protected getStubsClassName(ctx: Context): string;
26
+ }
27
+ export {};
28
+ //# sourceMappingURL=easy-network-stubs-generator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"easy-network-stubs-generator.d.ts","sourceRoot":"","sources":["../../../../../src/lib/generators/services/easy-network-stub/easy-network-stubs-generator.ts"],"names":[],"mappings":"AAKA,OAAO,EAEL,KAAK,UAAU,EACf,KAAK,gBAAgB,EAGrB,OAAO,EACP,KAAK,YAAY,EACjB,KAAK,uBAAuB,EAC5B,qCAAqC,EAEtC,MAAM,aAAa,CAAC;AAErB,OAAO,EAEL,KAAK,kCAAkC,EACxC,MAAM,kCAAkC,CAAC;AAC1C,OAAO,EAEL,KAAK,wCAAwC,EAC7C,KAAK,yCAAyC,EAC9C,KAAK,0CAA0C,EAC/C,KAAK,wCAAwC,EAC7C,KAAK,yCAAyC,EAC/C,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,EAAE,EAAE,MAAM,uBAAuB,CAAC;AAC3C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAGjE,KAAK,KAAK,GAAG,wCAAwC,CAAC;AACtD,KAAK,MAAM,GAAG,yCAAyC,CAAC;AACxD,KAAK,MAAM,GAAG,yCAAyC,CAAC;AACxD,KAAK,aAAa,GAAG,wCAAwC,CAAC;AAC9D,KAAK,OAAO,GAAG,0CAA0C,CAAC;AAE1D,qBAAa,mCAAoC,SAAQ,qCAAqC,CAC5F,KAAK,EACL,MAAM,EACN,MAAM,EACN,aAAa,EACb,OAAO,CACR;IACC,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAkD;gBAExE,gBAAgB,CAAC,EAAE,OAAO,CAAC,kCAAkC,EAAE,EAAE,CAAC;cAK3D,UAAU,IAAI,MAAM;cASpB,YAAY,CAC7B,OAAO,EAAE,uBAAuB,CAAC,KAAK,CAAC,EACvC,MAAM,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,SAAS,GACnC,OAAO;cAOe,uBAAuB,CAAC,GAAG,EAAE,0CAA0C,GAAG,OAAO,CAAC,IAAI,CAAC;cAK7F,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,GAAG,YAAY,CAAC,sBAAsB,CAAC;cAQxF,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,sBAAsB,GAAG,IAAI;cAI5F,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAO/D,SAAS,CAAC,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAAC,YAAY,CAAC,CAAC,YAAY,CAAC;IAe9E,SAAS,CAAC,wBAAwB,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,CAAC,qBAAqB,CAAC;IAUzF,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,qBAAqB,CAAC;IA+EtE,SAAS,CAAC,qBAAqB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI;IAI5D,SAAS,CAAC,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;CAGlD"}
@@ -2,18 +2,25 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TypeScriptEasyNetworkStubsGenerator = 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 easy_network_stub_generator_1 = require("./easy-network-stub-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 easy_network_stub_generator_js_1 = require("./easy-network-stub-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 TypeScriptEasyNetworkStubsGenerator extends core_1.OpenApiServicesGenerationProviderBase {
14
15
  constructor(generatorFactory) {
15
16
  super();
16
- this._generatorFactory = generatorFactory !== null && generatorFactory !== void 0 ? generatorFactory : core_1.Factory.fromValue(new easy_network_stub_generator_1.DefaultTypeScriptEasyNetworkStubGenerator());
17
+ Object.defineProperty(this, "_generatorFactory", {
18
+ enumerable: true,
19
+ configurable: true,
20
+ writable: true,
21
+ value: void 0
22
+ });
23
+ this._generatorFactory = generatorFactory !== null && generatorFactory !== void 0 ? generatorFactory : core_1.Factory.fromValue(new easy_network_stub_generator_js_1.DefaultTypeScriptEasyNetworkStubGenerator());
17
24
  }
18
25
  initResult() {
19
26
  return {
@@ -24,16 +31,14 @@ class TypeScriptEasyNetworkStubsGenerator extends core_1.OpenApiServicesGenerati
24
31
  };
25
32
  }
26
33
  buildContext(context, config) {
27
- const providerContext = this.getProviderContext(context, config, models_1.defaultTypeScriptEasyNetworkStubsGeneratorConfig);
34
+ const providerContext = this.getProviderContext(context, config, models_js_1.defaultTypeScriptEasyNetworkStubsGeneratorConfig);
28
35
  return Object.assign(providerContext, {
29
- refs: (0, refs_1.getReferenceFactories)(providerContext.config),
36
+ refs: (0, refs_js_1.getReferenceFactories)(providerContext.config),
30
37
  });
31
38
  }
32
- onGenerate(ctx) {
33
- const output = super.onGenerate(ctx);
34
- this.generateUtilsFiles(ctx);
35
- output.typescript.indexFiles = this.generateIndexFiles(ctx);
36
- return output;
39
+ async generateAdditionalFiles(ctx) {
40
+ await this.generateUtilsFiles(ctx);
41
+ ctx.output.typescript.indexFiles = this.generateIndexFiles(ctx);
37
42
  }
38
43
  generateService(ctx, service) {
39
44
  const clientGenerator = this._generatorFactory.create();
@@ -45,15 +50,14 @@ class TypeScriptEasyNetworkStubsGenerator extends core_1.OpenApiServicesGenerati
45
50
  addServiceResult(ctx, service, result) {
46
51
  ctx.output.typescript.stubs[service.id] = result;
47
52
  }
48
- generateUtilsFiles(ctx) {
49
- const sourceDir = (0, path_1.resolve)((0, path_1.dirname)(require.resolve('@goast/typescript')), '../assets/stubs/easy-network-stub');
50
- const targetDir = (0, path_1.resolve)(ctx.config.outputDir, ctx.config.utilsDir);
51
- fs_extra_1.default.ensureDirSync(targetDir);
52
- this.copyFile('easy-network-stub utils', sourceDir, targetDir, 'easy-network-stub.utils.ts');
53
+ async generateUtilsFiles(ctx) {
54
+ const targetDir = (0, node_path_1.resolve)(ctx.config.outputDir, ctx.config.utilsDir);
55
+ await fs_extra_1.default.ensureDir(targetDir);
56
+ await (0, assets_js_1.copyAssetFile)('stubs/easy-network-stub/easy-network-stub.utils.ts', targetDir, 'easy-network-stub utils');
53
57
  }
54
58
  generateIndexFiles(ctx) {
55
59
  const stubsIndexFilePath = this.getStubsIndexFilePath(ctx);
56
- file_builder_1.TypeScriptFileBuilder.tryGenerate({
60
+ file_builder_js_1.TypeScriptFileBuilder.tryGenerate({
57
61
  logName: 'stubs index file',
58
62
  filePath: stubsIndexFilePath,
59
63
  options: ctx.config,
@@ -65,53 +69,53 @@ class TypeScriptEasyNetworkStubsGenerator extends core_1.OpenApiServicesGenerati
65
69
  }
66
70
  getStubsIndexFileContent(ctx) {
67
71
  return (0, core_1.appendValueGroup)([
68
- (0, core_1.appendValueGroup)(Object.values(ctx.output.typescript.stubs).map((x) => ast_1.ts.export(x.component, x.filePath))),
72
+ (0, core_1.appendValueGroup)(Object.values(ctx.output.typescript.stubs).map((x) => index_js_1.ts.export(x.component, x.filePath))),
69
73
  this.getStubsClass(ctx),
70
74
  ], '\n');
71
75
  }
72
76
  getStubsClass(ctx) {
73
77
  const fieldCasing = (0, core_1.adjustCasing)(ctx.config.propertyNameCasing, { prefix: '_' });
74
78
  const serviceNames = Object.fromEntries(ctx.data.services.map((x) => [x.id, x.name]));
75
- return ast_1.ts.class(this.getStubsClassName(ctx), {
79
+ return index_js_1.ts.class(this.getStubsClassName(ctx), {
76
80
  export: true,
77
81
  members: [
78
- ast_1.ts.property('_stubWrapper', {
82
+ index_js_1.ts.property('_stubWrapper', {
79
83
  accessModifier: 'private',
80
84
  readonly: true,
81
85
  type: ctx.refs.easyNetworkStubWrapper(),
82
86
  }),
83
- ...Object.entries(ctx.output.typescript.stubs).map(([id, x]) => ast_1.ts.property((0, core_1.toCasing)(serviceNames[id], fieldCasing), {
87
+ ...Object.entries(ctx.output.typescript.stubs).map(([id, x]) => index_js_1.ts.property((0, core_1.toCasing)(serviceNames[id], fieldCasing), {
84
88
  accessModifier: 'private',
85
89
  optional: true,
86
- type: ctx.refs.easyNetworkStubGroup([ast_1.ts.reference(x.component, x.filePath), 'this']),
90
+ type: ctx.refs.easyNetworkStubGroup([index_js_1.ts.reference(x.component, x.filePath), 'this']),
87
91
  })),
88
- ast_1.ts.constructor({
92
+ index_js_1.ts.constructor({
89
93
  parameters: [
90
- ast_1.ts.constructorParameter('stub', { type: ast_1.ts.refs.easyNetworkStub.easyNetworkStub() }),
91
- ast_1.ts.constructorParameter('options', {
92
- type: ast_1.ts.refs.partial([ctx.refs.easyNetworkStubWrapperOptions()]),
94
+ index_js_1.ts.constructorParameter('stub', { type: index_js_1.ts.refs.easyNetworkStub.easyNetworkStub() }),
95
+ index_js_1.ts.constructorParameter('options', {
96
+ type: index_js_1.ts.refs.partial([ctx.refs.easyNetworkStubWrapperOptions()]),
93
97
  optional: true,
94
98
  }),
95
99
  ],
96
100
  body: (0, core_1.appendValueGroup)([(0, core_1.builderTemplate) `this._stubWrapper = new ${ctx.refs.easyNetworkStubWrapper()}(stub, options);`], '\n'),
97
101
  }),
98
- ast_1.ts.property('requests', {
102
+ index_js_1.ts.property('requests', {
99
103
  accessModifier: 'public',
100
- type: ast_1.ts.arrayType(ctx.refs.stubRequestItem(), { readonly: true }),
101
- get: ast_1.ts.property.getter({
104
+ type: index_js_1.ts.arrayType(ctx.refs.stubRequestItem(), { readonly: true }),
105
+ get: index_js_1.ts.property.getter({
102
106
  body: (0, core_1.appendValueGroup)(['return this._stubWrapper.requests;'], '\n'),
103
107
  }),
104
108
  }),
105
- ...Object.entries(ctx.output.typescript.stubs).map(([id, x]) => ast_1.ts.property((0, core_1.toCasing)(serviceNames[id], ctx.config.propertyNameCasing), {
109
+ ...Object.entries(ctx.output.typescript.stubs).map(([id, x]) => index_js_1.ts.property((0, core_1.toCasing)(serviceNames[id], ctx.config.propertyNameCasing), {
106
110
  accessModifier: 'public',
107
- type: ctx.refs.easyNetworkStubGroup([ast_1.ts.reference(x.component, x.filePath), 'this']),
108
- get: ast_1.ts.property.getter({
111
+ type: ctx.refs.easyNetworkStubGroup([index_js_1.ts.reference(x.component, x.filePath), 'this']),
112
+ get: index_js_1.ts.property.getter({
109
113
  body: (0, core_1.appendValueGroup)([
110
- (0, core_1.builderTemplate) `return this.${(0, core_1.toCasing)(serviceNames[id], fieldCasing)} ??= ${ctx.refs.createEasyNetworkStubGroup.infer()}(this, this._stubWrapper, ${ast_1.ts.reference(x.component, x.filePath)});`,
114
+ (0, core_1.builderTemplate) `return this.${(0, core_1.toCasing)(serviceNames[id], fieldCasing)} ??= ${ctx.refs.createEasyNetworkStubGroup.infer()}(this, this._stubWrapper, ${index_js_1.ts.reference(x.component, x.filePath)});`,
111
115
  ], '\n'),
112
116
  }),
113
117
  })),
114
- ast_1.ts.method('resetStubs', {
118
+ index_js_1.ts.method('resetStubs', {
115
119
  accessModifier: 'public',
116
120
  returnType: 'this',
117
121
  body: (0, core_1.appendValueGroup)([
@@ -123,17 +127,11 @@ class TypeScriptEasyNetworkStubsGenerator extends core_1.OpenApiServicesGenerati
123
127
  });
124
128
  }
125
129
  getStubsIndexFilePath(ctx) {
126
- return ctx.config.stubsIndexFile ? (0, path_1.resolve)(ctx.config.outputDir, ctx.config.stubsIndexFile) : null;
130
+ return ctx.config.stubsIndexFile ? (0, node_path_1.resolve)(ctx.config.outputDir, ctx.config.stubsIndexFile) : null;
127
131
  }
128
132
  getStubsClassName(ctx) {
129
133
  var _a;
130
134
  return (0, core_1.toCasing)(`${(_a = ctx.config.domainName) !== null && _a !== void 0 ? _a : ''}_ApiStubs`, ctx.config.typeNameCasing);
131
135
  }
132
- copyFile(logName, sourceDir, targetDir, fileName) {
133
- const source = (0, path_1.resolve)(sourceDir, fileName);
134
- const target = (0, path_1.resolve)(targetDir, fileName);
135
- console.log(`Generating ${logName} to ${target}...`);
136
- fs_extra_1.default.copyFileSync(source, target);
137
- }
138
136
  }
139
137
  exports.TypeScriptEasyNetworkStubsGenerator = TypeScriptEasyNetworkStubsGenerator;
@@ -0,0 +1,4 @@
1
+ export * from './easy-network-stub-generator.js';
2
+ export * from './easy-network-stubs-generator.js';
3
+ export * from './models.js';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/lib/generators/services/easy-network-stub/index.ts"],"names":[],"mappings":"AAAA,cAAc,kCAAkC,CAAC;AACjD,cAAc,mCAAmC,CAAC;AAClD,cAAc,aAAa,CAAC"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./easy-network-stub-generator.js"), exports);
5
+ tslib_1.__exportStar(require("./easy-network-stubs-generator.js"), exports);
6
+ tslib_1.__exportStar(require("./models.js"), exports);
@@ -0,0 +1,78 @@
1
+ import type { ApiSchema, ApiService, DefaultGenerationProviderConfig, ExtendedStringCasing, Nullable, OpenApiServicesGenerationProviderContext } from '@goast/core';
2
+ import type { getReferenceFactories } from './refs.js';
3
+ import { 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 { TypeScriptModelGeneratorOutput } from '../../models/index.js';
8
+ export type TypeScriptEasyNetworkStubsGeneratorConfig = TypeScriptGeneratorConfig & {
9
+ /**
10
+ * The domain name of the API. Used as a prefix for exported components (e.g. `ApiStubs`).
11
+ * @default undefined
12
+ */
13
+ domainName: Nullable<string>;
14
+ /**
15
+ * The default response types for status codes that are not defined in the OpenAPI specification.
16
+ * @example
17
+ * {
18
+ * 400: schemas =>
19
+ * schemas.find(s => s.name === 'BadRequestResponse')
20
+ * ?? throwExp('BadRequestResponse not found'),
21
+ * 404: 'never',
22
+ * 500: ts.refs.any(),
23
+ * }
24
+ * @default
25
+ * {
26
+ * 401: ts.refs.never(),
27
+ * 403: ts.refs.never(),
28
+ * 500: ts.refs.never(),
29
+ * }
30
+ */
31
+ defaultStatusCodeResponseTypes: Record<number, Exclude<ts.Type<TypeScriptFileBuilder>, Function> | ((schemas: readonly ApiSchema[]) => ApiSchema)>;
32
+ /**
33
+ * The directory where the stubs should be saved. The path is relative to the output directory.
34
+ * @default 'stubs'
35
+ */
36
+ stubsDir: string;
37
+ /**
38
+ * The casing of the stub file names. If nullish, the `fileNameCasing` is used.
39
+ * @default { casing: 'kebab', suffix: '.stubs' }
40
+ */
41
+ stubFileNameCasing: Nullable<ExtendedStringCasing>;
42
+ /**
43
+ * The index file where all stubs should be exported. The path is relative to the output directory. If nullish, no index file will be generated.
44
+ * @default 'stubs.ts'
45
+ */
46
+ stubsIndexFile: Nullable<string>;
47
+ /**
48
+ * The directory where the utilies should be saved. The path is relative to the output directory.
49
+ * @default 'utils'
50
+ */
51
+ utilsDir: string;
52
+ };
53
+ export declare const defaultTypeScriptEasyNetworkStubsGeneratorConfig: DefaultGenerationProviderConfig<TypeScriptEasyNetworkStubsGeneratorConfig>;
54
+ export type TypeScriptEasyNetworkStubsGeneratorInput = {
55
+ typescript: {
56
+ models: {
57
+ [schemaId: string]: TypeScriptModelGeneratorOutput;
58
+ };
59
+ };
60
+ };
61
+ export type TypeScriptEasyNetworkStubsGeneratorOutput = {
62
+ typescript: {
63
+ stubs: {
64
+ [serviceId: string]: TypeScriptEasyNetworkStubGeneratorOutput;
65
+ };
66
+ indexFiles: {
67
+ stubs: Nullable<string>;
68
+ };
69
+ };
70
+ };
71
+ export type TypeScriptEasyNetworkStubGeneratorOutput = TypeScriptExportOutput;
72
+ export type TypeScriptEasyNetworkStubsGeneratorContext = OpenApiServicesGenerationProviderContext<TypeScriptEasyNetworkStubsGeneratorInput, TypeScriptEasyNetworkStubsGeneratorOutput, TypeScriptEasyNetworkStubsGeneratorConfig, TypeScriptEasyNetworkStubGeneratorOutput> & {
73
+ refs: ReturnType<typeof getReferenceFactories>;
74
+ };
75
+ export type TypeScriptEasyNetworkStubGeneratorContext = TypeScriptEasyNetworkStubsGeneratorContext & {
76
+ readonly service: ApiService;
77
+ };
78
+ //# sourceMappingURL=models.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../../../../src/lib/generators/services/easy-network-stub/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,EAAE,EAAE,EAAE,MAAM,uBAAuB,CAAC;AAC3C,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,8BAA8B,EAAE,MAAM,uBAAuB,CAAC;AAE5E,MAAM,MAAM,yCAAyC,GAAG,yBAAyB,GAAG;IAClF;;;OAGG;IACH,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAE7B;;;;;;;;;;;;;;;;OAgBG;IACH,8BAA8B,EAAE,MAAM,CACpC,MAAM,EAEN,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,qBAAqB,CAAC,EAAE,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,SAAS,SAAS,EAAE,KAAK,SAAS,CAAC,CACnG,CAAC;IAEF;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;IAEjB;;;OAGG;IACH,kBAAkB,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IAEnD;;;OAGG;IACH,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAEjC;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,gDAAgD,EAAE,+BAA+B,CAC5F,yCAAyC,CAe1C,CAAC;AAEF,MAAM,MAAM,wCAAwC,GAAG;IACrD,UAAU,EAAE;QACV,MAAM,EAAE;YACN,CAAC,QAAQ,EAAE,MAAM,GAAG,8BAA8B,CAAC;SACpD,CAAC;KACH,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,yCAAyC,GAAG;IACtD,UAAU,EAAE;QACV,KAAK,EAAE;YACL,CAAC,SAAS,EAAE,MAAM,GAAG,wCAAwC,CAAC;SAC/D,CAAC;QACF,UAAU,EAAE;YACV,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;SACzB,CAAC;KACH,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,wCAAwC,GAAG,sBAAsB,CAAC;AAE9E,MAAM,MAAM,0CAA0C,GAClD,wCAAwC,CACxC,wCAAwC,EACxC,yCAAyC,EACzC,yCAAyC,EACzC,wCAAwC,CACzC,GACC;IACA,IAAI,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC;CAChD,CAAC;AAEJ,MAAM,MAAM,yCAAyC,GAAG,0CAA0C,GAAG;IACnG,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;CAC9B,CAAC"}
@@ -1,15 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.defaultTypeScriptEasyNetworkStubsGeneratorConfig = void 0;
4
- const ast_1 = require("../../../ast");
5
- const config_1 = require("../../../config");
4
+ const index_js_1 = require("../../../ast/index.js");
5
+ const config_js_1 = require("../../../config.js");
6
6
  exports.defaultTypeScriptEasyNetworkStubsGeneratorConfig = {
7
- ...config_1.defaultTypeScriptGeneratorConfig,
7
+ ...config_js_1.defaultTypeScriptGeneratorConfig,
8
8
  domainName: undefined,
9
9
  defaultStatusCodeResponseTypes: {
10
- 401: ast_1.ts.refs.never(),
11
- 403: ast_1.ts.refs.never(),
12
- 500: ast_1.ts.refs.never(),
10
+ 401: index_js_1.ts.refs.never(),
11
+ 403: index_js_1.ts.refs.never(),
12
+ 500: index_js_1.ts.refs.never(),
13
13
  },
14
14
  stubsDir: 'stubs',
15
15
  stubFileNameCasing: { casing: 'kebab', suffix: '.stubs' },
@@ -0,0 +1,82 @@
1
+ import type { TypeScriptEasyNetworkStubsGeneratorConfig } from './models.js';
2
+ import { ts } from '../../../ast/index.js';
3
+ export declare function getReferenceFactories(options: TypeScriptEasyNetworkStubsGeneratorConfig): {
4
+ easyNetworkStubWrapperOptions: (<TBuilder extends import("@goast/core").SourceBuilder>(options?: {
5
+ importType?: import("@goast/core").Nullable<import("../../../common-results.js").TypeScriptImportType>;
6
+ }) => ts.Reference<TBuilder, never>) & {
7
+ refName: string;
8
+ moduleNameOrfilePath: import("@goast/core").Nullable<string>;
9
+ } & {
10
+ moduleNameOrfilePath: string;
11
+ };
12
+ stubRequestItem: (<TBuilder extends import("@goast/core").SourceBuilder>(options?: {
13
+ importType?: import("@goast/core").Nullable<import("../../../common-results.js").TypeScriptImportType>;
14
+ }) => ts.Reference<TBuilder, never>) & {
15
+ refName: string;
16
+ moduleNameOrfilePath: import("@goast/core").Nullable<string>;
17
+ } & {
18
+ moduleNameOrfilePath: string;
19
+ };
20
+ stubRequestInfo: (<TBuilder extends import("@goast/core").SourceBuilder>(generics: [ts.Type<TBuilder>, ts.Type<TBuilder>], options?: {
21
+ importType?: import("@goast/core").Nullable<import("../../../common-results.js").TypeScriptImportType>;
22
+ } | undefined) => ts.Reference<TBuilder, never>) & {
23
+ refName: string;
24
+ moduleNameOrfilePath: import("@goast/core").Nullable<string>;
25
+ infer: <TBuilder extends import("@goast/core").SourceBuilder>() => ts.Reference<TBuilder, never>;
26
+ } & {
27
+ moduleNameOrfilePath: string;
28
+ };
29
+ strictRouteResponseCallback: (<TBuilder extends import("@goast/core").SourceBuilder>(generics: [ts.Type<TBuilder>, ts.Type<TBuilder>, ts.Type<TBuilder>], options?: {
30
+ importType?: import("@goast/core").Nullable<import("../../../common-results.js").TypeScriptImportType>;
31
+ } | undefined) => ts.Reference<TBuilder, never>) & {
32
+ refName: string;
33
+ moduleNameOrfilePath: import("@goast/core").Nullable<string>;
34
+ infer: <TBuilder extends import("@goast/core").SourceBuilder>() => ts.Reference<TBuilder, never>;
35
+ } & {
36
+ moduleNameOrfilePath: string;
37
+ };
38
+ getStubResponder: (<TBuilder extends import("@goast/core").SourceBuilder>(generics: [ts.Type<TBuilder>], options?: {
39
+ importType?: import("@goast/core").Nullable<import("../../../common-results.js").TypeScriptImportType>;
40
+ } | undefined) => ts.Reference<TBuilder, never>) & {
41
+ refName: string;
42
+ moduleNameOrfilePath: import("@goast/core").Nullable<string>;
43
+ infer: <TBuilder extends import("@goast/core").SourceBuilder>() => ts.Reference<TBuilder, never>;
44
+ } & {
45
+ moduleNameOrfilePath: string;
46
+ };
47
+ easyNetworkStubWrapper: (<TBuilder extends import("@goast/core").SourceBuilder>(options?: {
48
+ importType?: import("@goast/core").Nullable<import("../../../common-results.js").TypeScriptImportType>;
49
+ }) => ts.Reference<TBuilder, never>) & {
50
+ refName: string;
51
+ moduleNameOrfilePath: import("@goast/core").Nullable<string>;
52
+ } & {
53
+ moduleNameOrfilePath: string;
54
+ };
55
+ easyNetworkStubBase: (<TBuilder extends import("@goast/core").SourceBuilder>(options?: {
56
+ importType?: import("@goast/core").Nullable<import("../../../common-results.js").TypeScriptImportType>;
57
+ }) => ts.Reference<TBuilder, never>) & {
58
+ refName: string;
59
+ moduleNameOrfilePath: import("@goast/core").Nullable<string>;
60
+ } & {
61
+ moduleNameOrfilePath: string;
62
+ };
63
+ easyNetworkStubGroup: (<TBuilder extends import("@goast/core").SourceBuilder>(generics: [ts.Type<TBuilder>, ts.Type<TBuilder>], options?: {
64
+ importType?: import("@goast/core").Nullable<import("../../../common-results.js").TypeScriptImportType>;
65
+ } | undefined) => ts.Reference<TBuilder, never>) & {
66
+ refName: string;
67
+ moduleNameOrfilePath: import("@goast/core").Nullable<string>;
68
+ infer: <TBuilder extends import("@goast/core").SourceBuilder>() => ts.Reference<TBuilder, never>;
69
+ } & {
70
+ moduleNameOrfilePath: string;
71
+ };
72
+ createEasyNetworkStubGroup: (<TBuilder extends import("@goast/core").SourceBuilder>(generics: [ts.Type<TBuilder>, ts.Type<TBuilder>], options?: {
73
+ importType?: import("@goast/core").Nullable<import("../../../common-results.js").TypeScriptImportType>;
74
+ } | undefined) => ts.Reference<TBuilder, never>) & {
75
+ refName: string;
76
+ moduleNameOrfilePath: import("@goast/core").Nullable<string>;
77
+ infer: <TBuilder extends import("@goast/core").SourceBuilder>() => ts.Reference<TBuilder, never>;
78
+ } & {
79
+ moduleNameOrfilePath: string;
80
+ };
81
+ };
82
+ //# sourceMappingURL=refs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"refs.d.ts","sourceRoot":"","sources":["../../../../../src/lib/generators/services/easy-network-stub/refs.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,yCAAyC,EAAE,MAAM,aAAa,CAAC;AAC7E,OAAO,EAAE,EAAE,EAAE,MAAM,uBAAuB,CAAC;AAG3C,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,yCAAyC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA4BvF"}
@@ -0,0 +1,30 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getReferenceFactories = getReferenceFactories;
4
+ const node_path_1 = require("node:path");
5
+ const index_js_1 = require("../../../ast/index.js");
6
+ // See packages/typescript/assets/stubs/easy-network-stub for reference
7
+ function getReferenceFactories(options) {
8
+ const utilsDirPath = (0, node_path_1.resolve)(options.outputDir, options.utilsDir);
9
+ const easyNetworkStubUtilsPath = (0, node_path_1.join)(utilsDirPath, 'easy-network-stub.utils.ts');
10
+ return {
11
+ // easy-network-stub.utils.ts
12
+ easyNetworkStubWrapperOptions: index_js_1.ts.reference.factory('EasyNetworkStubWrapperOptions', easyNetworkStubUtilsPath, {
13
+ importType: 'type-import',
14
+ }),
15
+ stubRequestItem: index_js_1.ts.reference.factory('StubRequestItem', easyNetworkStubUtilsPath, { importType: 'type-import' }),
16
+ stubRequestInfo: index_js_1.ts.reference.genericFactory('StubRequestInfo', easyNetworkStubUtilsPath, {
17
+ importType: 'type-import',
18
+ }),
19
+ strictRouteResponseCallback: index_js_1.ts.reference.genericFactory('StrictRouteResponseCallback', easyNetworkStubUtilsPath, {
20
+ importType: 'type-import',
21
+ }),
22
+ getStubResponder: index_js_1.ts.reference.genericFactory('getStubResponder', easyNetworkStubUtilsPath),
23
+ easyNetworkStubWrapper: index_js_1.ts.reference.factory('EasyNetworkStubWrapper', easyNetworkStubUtilsPath),
24
+ easyNetworkStubBase: index_js_1.ts.reference.factory('EasyNetworkStubBase', easyNetworkStubUtilsPath),
25
+ easyNetworkStubGroup: index_js_1.ts.reference.genericFactory('EasyNetworkStubGroup', easyNetworkStubUtilsPath, {
26
+ importType: 'type-import',
27
+ }),
28
+ createEasyNetworkStubGroup: index_js_1.ts.reference.genericFactory('createEasyNetworkStubGroup', easyNetworkStubUtilsPath),
29
+ };
30
+ }
@@ -0,0 +1,33 @@
1
+ import { type ApiEndpoint, type ApiSchema, type AppendValueGroup, type MaybePromise } from '@goast/core';
2
+ import type { TypeScriptFetchClientGeneratorContext, TypeScriptFetchClientGeneratorOutput } from './models.js';
3
+ import { ts } from '../../../ast/index.js';
4
+ import { TypeScriptFileBuilder } from '../../../file-builder.js';
5
+ import { TypeScriptFileGenerator } from '../../file-generator.js';
6
+ type Context = TypeScriptFetchClientGeneratorContext;
7
+ type Output = TypeScriptFetchClientGeneratorOutput;
8
+ type Builder = TypeScriptFileBuilder;
9
+ export interface TypeScriptFetchClientGenerator<TOutput extends Output = Output> {
10
+ generate(ctx: Context): MaybePromise<TOutput>;
11
+ }
12
+ export declare class DefaultTypeScriptFetchClientGenerator extends TypeScriptFileGenerator<Context, Output> implements TypeScriptFetchClientGenerator {
13
+ generate(ctx: Context): MaybePromise<Output>;
14
+ protected getInterfaceFileContent(ctx: Context): AppendValueGroup<Builder>;
15
+ protected getInterface(ctx: Context): ts.Interface<Builder>;
16
+ protected getInterfaceEndpointMethod(ctx: Context, endpoint: ApiEndpoint): ts.Method<Builder>;
17
+ protected getClassFileContent(ctx: Context): AppendValueGroup<Builder>;
18
+ protected getDefaultOptionsConstant(ctx: Context): ts.Variable<Builder>;
19
+ protected getClass(ctx: Context): ts.Class<Builder>;
20
+ protected getServiceMethod(ctx: Context, endpoint: ApiEndpoint): ts.Method<Builder>;
21
+ protected getSchemaType(ctx: Context, schema: ApiSchema | undefined, fallback?: ts.Type<Builder>): ts.Type<Builder>;
22
+ protected shouldGenerateInterface(ctx: Context): boolean;
23
+ protected shouldGenerateClass(ctx: Context): boolean;
24
+ protected getInterfaceName(ctx: Context): string;
25
+ protected getClassName(ctx: Context): string;
26
+ protected getDefaultOptionsConstantName(ctx: Context): string;
27
+ protected getInterfaceFilePath(ctx: Context): string;
28
+ protected getClassFilePath(ctx: Context): string;
29
+ protected getUtilPath(ctx: Context, fileName: string): string;
30
+ private getResponseSchema;
31
+ }
32
+ export {};
33
+ //# sourceMappingURL=fetch-client-generator.d.ts.map