@goast/typescript 0.4.0-beta4 → 0.4.1-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 (869) hide show
  1. package/README.md +52 -51
  2. package/assets/client/angular/angular-service.utils.ts +82 -82
  3. package/assets/client/angular/request-builder.ts +377 -377
  4. package/assets/client/fetch/fetch-client.utils.ts +52 -52
  5. package/assets/client/k6/request-builder.js +418 -418
  6. package/assets/stubs/easy-network-stub/easy-network-stub.utils.ts +259 -259
  7. package/esm/mod.d.ts +8 -0
  8. package/esm/mod.d.ts.map +1 -0
  9. package/esm/mod.js +7 -0
  10. package/esm/src/assets.d.ts.map +1 -0
  11. package/esm/src/assets.js +6 -0
  12. package/esm/src/ast/_index.d.ts +39 -0
  13. package/esm/src/ast/_index.d.ts.map +1 -0
  14. package/esm/src/ast/_index.js +36 -0
  15. package/esm/src/ast/common.d.ts.map +1 -0
  16. package/esm/src/ast/index.d.ts.map +1 -0
  17. package/esm/src/ast/node.d.ts.map +1 -0
  18. package/esm/src/ast/nodes/argument.d.ts +19 -0
  19. package/esm/src/ast/nodes/argument.d.ts.map +1 -0
  20. package/esm/src/ast/nodes/array-type.d.ts +21 -0
  21. package/esm/src/ast/nodes/array-type.d.ts.map +1 -0
  22. package/esm/src/ast/nodes/arrow-function.d.ts +31 -0
  23. package/esm/src/ast/nodes/arrow-function.d.ts.map +1 -0
  24. package/esm/src/ast/nodes/arrow-function.js +83 -0
  25. package/esm/src/ast/nodes/call.d.ts +22 -0
  26. package/esm/src/ast/nodes/call.d.ts.map +1 -0
  27. package/esm/src/ast/nodes/call.js +34 -0
  28. package/esm/src/ast/nodes/class.d.ts +43 -0
  29. package/esm/src/ast/nodes/class.d.ts.map +1 -0
  30. package/esm/src/ast/nodes/class.js +120 -0
  31. package/esm/src/ast/nodes/constructor-parameter.d.ts +21 -0
  32. package/esm/src/ast/nodes/constructor-parameter.d.ts.map +1 -0
  33. package/esm/src/ast/nodes/constructor-parameter.js +55 -0
  34. package/esm/src/ast/nodes/constructor.d.ts +27 -0
  35. package/esm/src/ast/nodes/constructor.d.ts.map +1 -0
  36. package/esm/src/ast/nodes/constructor.js +62 -0
  37. package/esm/src/ast/nodes/decorator.d.ts +25 -0
  38. package/esm/src/ast/nodes/decorator.d.ts.map +1 -0
  39. package/esm/src/ast/nodes/decorator.js +46 -0
  40. package/esm/src/ast/nodes/doc-tag.d.ts +74 -0
  41. package/esm/src/ast/nodes/doc-tag.d.ts.map +1 -0
  42. package/esm/src/ast/nodes/doc-tag.js +79 -0
  43. package/esm/src/ast/nodes/doc.d.ts +30 -0
  44. package/esm/src/ast/nodes/doc.d.ts.map +1 -0
  45. package/esm/src/ast/nodes/doc.js +65 -0
  46. package/esm/src/ast/nodes/enum-value.d.ts +24 -0
  47. package/esm/src/ast/nodes/enum-value.d.ts.map +1 -0
  48. package/esm/src/ast/nodes/enum.d.ts +28 -0
  49. package/esm/src/ast/nodes/enum.d.ts.map +1 -0
  50. package/esm/src/ast/nodes/enum.js +72 -0
  51. package/esm/src/ast/nodes/export.d.ts +23 -0
  52. package/esm/src/ast/nodes/export.d.ts.map +1 -0
  53. package/esm/src/ast/nodes/function-type.d.ts +25 -0
  54. package/esm/src/ast/nodes/function-type.d.ts.map +1 -0
  55. package/esm/src/ast/nodes/function-type.js +49 -0
  56. package/esm/src/ast/nodes/function.d.ts +37 -0
  57. package/esm/src/ast/nodes/function.d.ts.map +1 -0
  58. package/esm/src/ast/nodes/function.js +104 -0
  59. package/esm/src/ast/nodes/generic-parameter.d.ts +27 -0
  60. package/esm/src/ast/nodes/generic-parameter.d.ts.map +1 -0
  61. package/esm/src/ast/nodes/generic-parameter.js +67 -0
  62. package/esm/src/ast/nodes/indexer.d.ts +25 -0
  63. package/esm/src/ast/nodes/indexer.d.ts.map +1 -0
  64. package/esm/src/ast/nodes/interface.d.ts +38 -0
  65. package/esm/src/ast/nodes/interface.d.ts.map +1 -0
  66. package/esm/src/ast/nodes/interface.js +98 -0
  67. package/esm/src/ast/nodes/intersection-type.d.ts +19 -0
  68. package/esm/src/ast/nodes/intersection-type.d.ts.map +1 -0
  69. package/esm/src/ast/nodes/lookup-type.d.ts +21 -0
  70. package/esm/src/ast/nodes/lookup-type.d.ts.map +1 -0
  71. package/esm/src/ast/nodes/method.d.ts +48 -0
  72. package/esm/src/ast/nodes/method.d.ts.map +1 -0
  73. package/esm/src/ast/nodes/method.js +158 -0
  74. package/esm/src/ast/nodes/object-type.d.ts +22 -0
  75. package/esm/src/ast/nodes/object-type.d.ts.map +1 -0
  76. package/esm/src/ast/nodes/object.d.ts +21 -0
  77. package/esm/src/ast/nodes/object.d.ts.map +1 -0
  78. package/esm/src/ast/nodes/parameter.d.ts +30 -0
  79. package/esm/src/ast/nodes/parameter.d.ts.map +1 -0
  80. package/esm/src/ast/nodes/parameter.js +77 -0
  81. package/esm/src/ast/nodes/property-accessor.d.ts +54 -0
  82. package/esm/src/ast/nodes/property-accessor.d.ts.map +1 -0
  83. package/esm/src/ast/nodes/property-accessor.js +181 -0
  84. package/esm/src/ast/nodes/property.d.ts +64 -0
  85. package/esm/src/ast/nodes/property.d.ts.map +1 -0
  86. package/esm/src/ast/nodes/property.js +189 -0
  87. package/esm/src/ast/nodes/reference.d.ts +64 -0
  88. package/esm/src/ast/nodes/reference.d.ts.map +1 -0
  89. package/esm/src/ast/nodes/reference.js +93 -0
  90. package/esm/src/ast/nodes/string.d.ts +20 -0
  91. package/esm/src/ast/nodes/string.d.ts.map +1 -0
  92. package/esm/src/ast/nodes/tuple.d.ts +21 -0
  93. package/esm/src/ast/nodes/tuple.d.ts.map +1 -0
  94. package/esm/src/ast/nodes/type-alias.d.ts +29 -0
  95. package/esm/src/ast/nodes/type-alias.d.ts.map +1 -0
  96. package/esm/src/ast/nodes/type-alias.js +64 -0
  97. package/esm/src/ast/nodes/typeof.d.ts +19 -0
  98. package/esm/src/ast/nodes/typeof.d.ts.map +1 -0
  99. package/esm/src/ast/nodes/types.d.ts +19 -0
  100. package/esm/src/ast/nodes/types.d.ts.map +1 -0
  101. package/esm/src/ast/nodes/union-type.d.ts +19 -0
  102. package/esm/src/ast/nodes/union-type.d.ts.map +1 -0
  103. package/esm/src/ast/nodes/variable.d.ts +30 -0
  104. package/esm/src/ast/nodes/variable.d.ts.map +1 -0
  105. package/esm/src/ast/references/angular.d.ts +9 -0
  106. package/esm/src/ast/references/angular.d.ts.map +1 -0
  107. package/esm/src/ast/references/angular.js +12 -0
  108. package/esm/src/ast/references/easy-network-stub.d.ts +6 -0
  109. package/esm/src/ast/references/easy-network-stub.d.ts.map +1 -0
  110. package/esm/src/ast/references/easy-network-stub.js +9 -0
  111. package/esm/src/ast/references/index.d.ts +6 -0
  112. package/esm/src/ast/references/index.d.ts.map +1 -0
  113. package/esm/src/ast/references/index.js +5 -0
  114. package/esm/src/ast/references/k6.d.ts +5 -0
  115. package/esm/src/ast/references/k6.d.ts.map +1 -0
  116. package/esm/src/ast/references/rxjs.d.ts +7 -0
  117. package/esm/src/ast/references/rxjs.d.ts.map +1 -0
  118. package/esm/src/ast/references/typescript.d.ts +32 -0
  119. package/esm/src/ast/references/typescript.d.ts.map +1 -0
  120. package/esm/src/ast/utils/get-type-script-builder-options.d.ts.map +1 -0
  121. package/esm/src/ast/utils/to-ts-node.d.ts.map +1 -0
  122. package/esm/src/ast/utils/write-ts-generic-parameters.d.ts.map +1 -0
  123. package/esm/src/ast/utils/write-ts-members.d.ts.map +1 -0
  124. package/esm/src/ast/utils/write-ts-members.js +14 -0
  125. package/esm/src/ast/utils/write-ts-nodes.d.ts.map +1 -0
  126. package/esm/src/ast/utils/write-ts-parameters.d.ts.map +1 -0
  127. package/esm/src/common-results.d.ts.map +1 -0
  128. package/esm/src/config.d.ts.map +1 -0
  129. package/esm/src/file-builder.d.ts.map +1 -0
  130. package/esm/src/generators/file-generator.d.ts.map +1 -0
  131. package/esm/src/generators/index.d.ts.map +1 -0
  132. package/esm/src/generators/models/index.d.ts +4 -0
  133. package/esm/src/generators/models/index.d.ts.map +1 -0
  134. package/esm/src/generators/models/index.js +3 -0
  135. package/esm/src/generators/models/model-generator.d.ts +44 -0
  136. package/esm/src/generators/models/model-generator.d.ts.map +1 -0
  137. package/esm/src/generators/models/model-generator.js +366 -0
  138. package/esm/src/generators/models/models-generator.d.ts +23 -0
  139. package/esm/src/generators/models/models-generator.d.ts.map +1 -0
  140. package/esm/src/generators/models/models-generator.js +69 -0
  141. package/esm/src/generators/models/models.d.ts.map +1 -0
  142. package/esm/src/generators/services/angular-services/angular-service-generator.d.ts +39 -0
  143. package/esm/src/generators/services/angular-services/angular-service-generator.d.ts.map +1 -0
  144. package/esm/src/generators/services/angular-services/angular-service-generator.js +302 -0
  145. package/esm/src/generators/services/angular-services/angular-services-generator.d.ts +31 -0
  146. package/esm/src/generators/services/angular-services/angular-services-generator.d.ts.map +1 -0
  147. package/esm/src/generators/services/angular-services/angular-services-generator.js +213 -0
  148. package/esm/src/generators/services/angular-services/index.d.ts.map +1 -0
  149. package/esm/src/generators/services/angular-services/models.d.ts +142 -0
  150. package/esm/src/generators/services/angular-services/models.d.ts.map +1 -0
  151. package/esm/src/generators/services/angular-services/refs.d.ts +12 -0
  152. package/esm/src/generators/services/angular-services/refs.d.ts.map +1 -0
  153. package/esm/src/generators/services/easy-network-stub/easy-network-stub-generator.d.ts +33 -0
  154. package/esm/src/generators/services/easy-network-stub/easy-network-stub-generator.d.ts.map +1 -0
  155. package/esm/src/generators/services/easy-network-stub/easy-network-stub-generator.js +171 -0
  156. package/esm/src/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts +28 -0
  157. package/esm/src/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts.map +1 -0
  158. package/esm/src/generators/services/easy-network-stub/easy-network-stubs-generator.js +132 -0
  159. package/esm/src/generators/services/easy-network-stub/index.d.ts.map +1 -0
  160. package/esm/src/generators/services/easy-network-stub/models.d.ts +78 -0
  161. package/esm/src/generators/services/easy-network-stub/models.d.ts.map +1 -0
  162. package/esm/src/generators/services/easy-network-stub/refs.d.ts +14 -0
  163. package/esm/src/generators/services/easy-network-stub/refs.d.ts.map +1 -0
  164. package/esm/src/generators/services/fetch-clients/fetch-client-generator.d.ts +33 -0
  165. package/esm/src/generators/services/fetch-clients/fetch-client-generator.d.ts.map +1 -0
  166. package/esm/src/generators/services/fetch-clients/fetch-client-generator.js +198 -0
  167. package/esm/src/generators/services/fetch-clients/fetch-clients-generator.d.ts +27 -0
  168. package/esm/src/generators/services/fetch-clients/fetch-clients-generator.d.ts.map +1 -0
  169. package/esm/src/generators/services/fetch-clients/fetch-clients-generator.js +105 -0
  170. package/esm/src/generators/services/fetch-clients/index.d.ts.map +1 -0
  171. package/esm/src/generators/services/fetch-clients/models.d.ts +84 -0
  172. package/esm/src/generators/services/fetch-clients/models.d.ts.map +1 -0
  173. package/esm/src/generators/services/fetch-clients/refs.d.ts +8 -0
  174. package/esm/src/generators/services/fetch-clients/refs.d.ts.map +1 -0
  175. package/esm/src/generators/services/k6-clients/index.d.ts.map +1 -0
  176. package/esm/src/generators/services/k6-clients/k6-client-generator.d.ts +40 -0
  177. package/esm/src/generators/services/k6-clients/k6-client-generator.d.ts.map +1 -0
  178. package/esm/src/generators/services/k6-clients/k6-client-generator.js +311 -0
  179. package/esm/src/generators/services/k6-clients/k6-clients-generator.d.ts +27 -0
  180. package/esm/src/generators/services/k6-clients/k6-clients-generator.d.ts.map +1 -0
  181. package/esm/src/generators/services/k6-clients/k6-clients-generator.js +109 -0
  182. package/esm/src/generators/services/k6-clients/models.d.ts +119 -0
  183. package/esm/src/generators/services/k6-clients/models.d.ts.map +1 -0
  184. package/esm/src/generators/services/k6-clients/refs.d.ts +7 -0
  185. package/esm/src/generators/services/k6-clients/refs.d.ts.map +1 -0
  186. package/esm/src/import-collection.d.ts.map +1 -0
  187. package/esm/src/utils.d.ts +8 -0
  188. package/esm/src/utils.d.ts.map +1 -0
  189. package/package.json +7 -7
  190. package/script/mod.d.ts +8 -0
  191. package/script/mod.d.ts.map +1 -0
  192. package/script/mod.js +10 -0
  193. package/script/src/assets.d.ts.map +1 -0
  194. package/script/src/assets.js +9 -0
  195. package/script/src/ast/_index.d.ts +39 -0
  196. package/script/src/ast/_index.d.ts.map +1 -0
  197. package/script/src/ast/_index.js +108 -0
  198. package/script/src/ast/common.d.ts.map +1 -0
  199. package/script/src/ast/index.d.ts.map +1 -0
  200. package/script/src/ast/node.d.ts.map +1 -0
  201. package/script/src/ast/nodes/argument.d.ts +19 -0
  202. package/script/src/ast/nodes/argument.d.ts.map +1 -0
  203. package/script/src/ast/nodes/array-type.d.ts +21 -0
  204. package/script/src/ast/nodes/array-type.d.ts.map +1 -0
  205. package/script/src/ast/nodes/arrow-function.d.ts +31 -0
  206. package/script/src/ast/nodes/arrow-function.d.ts.map +1 -0
  207. package/script/src/ast/nodes/arrow-function.js +87 -0
  208. package/script/src/ast/nodes/call.d.ts +22 -0
  209. package/script/src/ast/nodes/call.d.ts.map +1 -0
  210. package/script/src/ast/nodes/call.js +38 -0
  211. package/script/src/ast/nodes/class.d.ts +43 -0
  212. package/script/src/ast/nodes/class.d.ts.map +1 -0
  213. package/script/src/ast/nodes/class.js +124 -0
  214. package/script/src/ast/nodes/constructor-parameter.d.ts +21 -0
  215. package/script/src/ast/nodes/constructor-parameter.d.ts.map +1 -0
  216. package/script/src/ast/nodes/constructor-parameter.js +59 -0
  217. package/script/src/ast/nodes/constructor.d.ts +27 -0
  218. package/script/src/ast/nodes/constructor.d.ts.map +1 -0
  219. package/script/src/ast/nodes/constructor.js +66 -0
  220. package/script/src/ast/nodes/decorator.d.ts +25 -0
  221. package/script/src/ast/nodes/decorator.d.ts.map +1 -0
  222. package/script/src/ast/nodes/decorator.js +50 -0
  223. package/script/src/ast/nodes/doc-tag.d.ts +74 -0
  224. package/script/src/ast/nodes/doc-tag.d.ts.map +1 -0
  225. package/script/src/ast/nodes/doc-tag.js +83 -0
  226. package/script/src/ast/nodes/doc.d.ts +30 -0
  227. package/script/src/ast/nodes/doc.d.ts.map +1 -0
  228. package/script/src/ast/nodes/doc.js +69 -0
  229. package/script/src/ast/nodes/enum-value.d.ts +24 -0
  230. package/script/src/ast/nodes/enum-value.d.ts.map +1 -0
  231. package/script/src/ast/nodes/enum.d.ts +28 -0
  232. package/script/src/ast/nodes/enum.d.ts.map +1 -0
  233. package/script/src/ast/nodes/enum.js +76 -0
  234. package/script/src/ast/nodes/export.d.ts +23 -0
  235. package/script/src/ast/nodes/export.d.ts.map +1 -0
  236. package/script/src/ast/nodes/function-type.d.ts +25 -0
  237. package/script/src/ast/nodes/function-type.d.ts.map +1 -0
  238. package/script/src/ast/nodes/function-type.js +53 -0
  239. package/script/src/ast/nodes/function.d.ts +37 -0
  240. package/script/src/ast/nodes/function.d.ts.map +1 -0
  241. package/script/src/ast/nodes/function.js +108 -0
  242. package/script/src/ast/nodes/generic-parameter.d.ts +27 -0
  243. package/script/src/ast/nodes/generic-parameter.d.ts.map +1 -0
  244. package/script/src/ast/nodes/generic-parameter.js +71 -0
  245. package/script/src/ast/nodes/indexer.d.ts +25 -0
  246. package/script/src/ast/nodes/indexer.d.ts.map +1 -0
  247. package/script/src/ast/nodes/interface.d.ts +38 -0
  248. package/script/src/ast/nodes/interface.d.ts.map +1 -0
  249. package/script/src/ast/nodes/interface.js +102 -0
  250. package/script/src/ast/nodes/intersection-type.d.ts +19 -0
  251. package/script/src/ast/nodes/intersection-type.d.ts.map +1 -0
  252. package/script/src/ast/nodes/lookup-type.d.ts +21 -0
  253. package/script/src/ast/nodes/lookup-type.d.ts.map +1 -0
  254. package/script/src/ast/nodes/method.d.ts +48 -0
  255. package/script/src/ast/nodes/method.d.ts.map +1 -0
  256. package/script/src/ast/nodes/method.js +163 -0
  257. package/script/src/ast/nodes/object-type.d.ts +22 -0
  258. package/script/src/ast/nodes/object-type.d.ts.map +1 -0
  259. package/script/src/ast/nodes/object.d.ts +21 -0
  260. package/script/src/ast/nodes/object.d.ts.map +1 -0
  261. package/script/src/ast/nodes/parameter.d.ts +30 -0
  262. package/script/src/ast/nodes/parameter.d.ts.map +1 -0
  263. package/script/src/ast/nodes/parameter.js +81 -0
  264. package/script/src/ast/nodes/property-accessor.d.ts +54 -0
  265. package/script/src/ast/nodes/property-accessor.d.ts.map +1 -0
  266. package/script/src/ast/nodes/property-accessor.js +188 -0
  267. package/script/src/ast/nodes/property.d.ts +64 -0
  268. package/script/src/ast/nodes/property.d.ts.map +1 -0
  269. package/script/src/ast/nodes/property.js +195 -0
  270. package/script/src/ast/nodes/reference.d.ts +64 -0
  271. package/script/src/ast/nodes/reference.d.ts.map +1 -0
  272. package/script/src/ast/nodes/reference.js +97 -0
  273. package/script/src/ast/nodes/string.d.ts +20 -0
  274. package/script/src/ast/nodes/string.d.ts.map +1 -0
  275. package/script/src/ast/nodes/tuple.d.ts +21 -0
  276. package/script/src/ast/nodes/tuple.d.ts.map +1 -0
  277. package/script/src/ast/nodes/type-alias.d.ts +29 -0
  278. package/script/src/ast/nodes/type-alias.d.ts.map +1 -0
  279. package/script/src/ast/nodes/type-alias.js +68 -0
  280. package/script/src/ast/nodes/typeof.d.ts +19 -0
  281. package/script/src/ast/nodes/typeof.d.ts.map +1 -0
  282. package/script/src/ast/nodes/types.d.ts +19 -0
  283. package/script/src/ast/nodes/types.d.ts.map +1 -0
  284. package/script/src/ast/nodes/union-type.d.ts +19 -0
  285. package/script/src/ast/nodes/union-type.d.ts.map +1 -0
  286. package/script/src/ast/nodes/variable.d.ts +30 -0
  287. package/script/src/ast/nodes/variable.d.ts.map +1 -0
  288. package/script/src/ast/references/angular.d.ts +9 -0
  289. package/script/src/ast/references/angular.d.ts.map +1 -0
  290. package/script/src/ast/references/angular.js +15 -0
  291. package/script/src/ast/references/easy-network-stub.d.ts +6 -0
  292. package/script/src/ast/references/easy-network-stub.d.ts.map +1 -0
  293. package/script/src/ast/references/easy-network-stub.js +12 -0
  294. package/script/src/ast/references/index.d.ts +6 -0
  295. package/script/src/ast/references/index.d.ts.map +1 -0
  296. package/script/src/ast/references/index.js +9 -0
  297. package/script/src/ast/references/k6.d.ts +5 -0
  298. package/script/src/ast/references/k6.d.ts.map +1 -0
  299. package/script/src/ast/references/rxjs.d.ts +7 -0
  300. package/script/src/ast/references/rxjs.d.ts.map +1 -0
  301. package/script/src/ast/references/typescript.d.ts +32 -0
  302. package/script/src/ast/references/typescript.d.ts.map +1 -0
  303. package/script/src/ast/utils/get-type-script-builder-options.d.ts.map +1 -0
  304. package/script/src/ast/utils/to-ts-node.d.ts.map +1 -0
  305. package/script/src/ast/utils/write-ts-generic-parameters.d.ts.map +1 -0
  306. package/script/src/ast/utils/write-ts-members.d.ts.map +1 -0
  307. package/script/src/ast/utils/write-ts-members.js +17 -0
  308. package/script/src/ast/utils/write-ts-nodes.d.ts.map +1 -0
  309. package/script/src/ast/utils/write-ts-parameters.d.ts.map +1 -0
  310. package/script/src/common-results.d.ts.map +1 -0
  311. package/script/src/config.d.ts.map +1 -0
  312. package/script/src/file-builder.d.ts.map +1 -0
  313. package/script/src/generators/file-generator.d.ts.map +1 -0
  314. package/script/src/generators/index.d.ts.map +1 -0
  315. package/script/src/generators/models/index.d.ts +4 -0
  316. package/script/src/generators/models/index.d.ts.map +1 -0
  317. package/script/src/generators/models/index.js +6 -0
  318. package/script/src/generators/models/model-generator.d.ts +44 -0
  319. package/script/src/generators/models/model-generator.d.ts.map +1 -0
  320. package/script/src/generators/models/model-generator.js +370 -0
  321. package/script/src/generators/models/models-generator.d.ts +23 -0
  322. package/script/src/generators/models/models-generator.d.ts.map +1 -0
  323. package/script/src/generators/models/models-generator.js +73 -0
  324. package/script/src/generators/models/models.d.ts.map +1 -0
  325. package/script/src/generators/services/angular-services/angular-service-generator.d.ts +39 -0
  326. package/script/src/generators/services/angular-services/angular-service-generator.d.ts.map +1 -0
  327. package/script/src/generators/services/angular-services/angular-service-generator.js +306 -0
  328. package/script/src/generators/services/angular-services/angular-services-generator.d.ts +31 -0
  329. package/script/src/generators/services/angular-services/angular-services-generator.d.ts.map +1 -0
  330. package/script/src/generators/services/angular-services/angular-services-generator.js +218 -0
  331. package/script/src/generators/services/angular-services/index.d.ts.map +1 -0
  332. package/script/src/generators/services/angular-services/models.d.ts +142 -0
  333. package/script/src/generators/services/angular-services/models.d.ts.map +1 -0
  334. package/script/src/generators/services/angular-services/refs.d.ts +12 -0
  335. package/script/src/generators/services/angular-services/refs.d.ts.map +1 -0
  336. package/script/src/generators/services/easy-network-stub/easy-network-stub-generator.d.ts +33 -0
  337. package/script/src/generators/services/easy-network-stub/easy-network-stub-generator.d.ts.map +1 -0
  338. package/script/src/generators/services/easy-network-stub/easy-network-stub-generator.js +175 -0
  339. package/script/src/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts +28 -0
  340. package/script/src/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts.map +1 -0
  341. package/script/src/generators/services/easy-network-stub/easy-network-stubs-generator.js +137 -0
  342. package/script/src/generators/services/easy-network-stub/index.d.ts.map +1 -0
  343. package/script/src/generators/services/easy-network-stub/models.d.ts +78 -0
  344. package/script/src/generators/services/easy-network-stub/models.d.ts.map +1 -0
  345. package/script/src/generators/services/easy-network-stub/refs.d.ts +14 -0
  346. package/script/src/generators/services/easy-network-stub/refs.d.ts.map +1 -0
  347. package/script/src/generators/services/fetch-clients/fetch-client-generator.d.ts +33 -0
  348. package/script/src/generators/services/fetch-clients/fetch-client-generator.d.ts.map +1 -0
  349. package/script/src/generators/services/fetch-clients/fetch-client-generator.js +202 -0
  350. package/script/src/generators/services/fetch-clients/fetch-clients-generator.d.ts +27 -0
  351. package/script/src/generators/services/fetch-clients/fetch-clients-generator.d.ts.map +1 -0
  352. package/script/src/generators/services/fetch-clients/fetch-clients-generator.js +110 -0
  353. package/script/src/generators/services/fetch-clients/index.d.ts.map +1 -0
  354. package/script/src/generators/services/fetch-clients/models.d.ts +84 -0
  355. package/script/src/generators/services/fetch-clients/models.d.ts.map +1 -0
  356. package/script/src/generators/services/fetch-clients/refs.d.ts +8 -0
  357. package/script/src/generators/services/fetch-clients/refs.d.ts.map +1 -0
  358. package/script/src/generators/services/k6-clients/index.d.ts.map +1 -0
  359. package/script/src/generators/services/k6-clients/k6-client-generator.d.ts +40 -0
  360. package/script/src/generators/services/k6-clients/k6-client-generator.d.ts.map +1 -0
  361. package/script/src/generators/services/k6-clients/k6-client-generator.js +315 -0
  362. package/script/src/generators/services/k6-clients/k6-clients-generator.d.ts +27 -0
  363. package/script/src/generators/services/k6-clients/k6-clients-generator.d.ts.map +1 -0
  364. package/script/src/generators/services/k6-clients/k6-clients-generator.js +114 -0
  365. package/script/src/generators/services/k6-clients/models.d.ts +119 -0
  366. package/script/src/generators/services/k6-clients/models.d.ts.map +1 -0
  367. package/script/src/generators/services/k6-clients/refs.d.ts +7 -0
  368. package/script/src/generators/services/k6-clients/refs.d.ts.map +1 -0
  369. package/script/src/import-collection.d.ts.map +1 -0
  370. package/script/src/utils.d.ts +8 -0
  371. package/script/src/utils.d.ts.map +1 -0
  372. package/esm/index.d.ts +0 -8
  373. package/esm/index.d.ts.map +0 -1
  374. package/esm/index.js +0 -7
  375. package/esm/lib/assets.d.ts.map +0 -1
  376. package/esm/lib/assets.js +0 -6
  377. package/esm/lib/ast/_index.d.ts +0 -39
  378. package/esm/lib/ast/_index.d.ts.map +0 -1
  379. package/esm/lib/ast/_index.js +0 -36
  380. package/esm/lib/ast/common.d.ts.map +0 -1
  381. package/esm/lib/ast/index.d.ts.map +0 -1
  382. package/esm/lib/ast/node.d.ts.map +0 -1
  383. package/esm/lib/ast/nodes/argument.d.ts +0 -18
  384. package/esm/lib/ast/nodes/argument.d.ts.map +0 -1
  385. package/esm/lib/ast/nodes/array-type.d.ts +0 -20
  386. package/esm/lib/ast/nodes/array-type.d.ts.map +0 -1
  387. package/esm/lib/ast/nodes/arrow-function.d.ts +0 -30
  388. package/esm/lib/ast/nodes/arrow-function.d.ts.map +0 -1
  389. package/esm/lib/ast/nodes/arrow-function.js +0 -83
  390. package/esm/lib/ast/nodes/call.d.ts +0 -21
  391. package/esm/lib/ast/nodes/call.d.ts.map +0 -1
  392. package/esm/lib/ast/nodes/call.js +0 -34
  393. package/esm/lib/ast/nodes/class.d.ts +0 -42
  394. package/esm/lib/ast/nodes/class.d.ts.map +0 -1
  395. package/esm/lib/ast/nodes/class.js +0 -120
  396. package/esm/lib/ast/nodes/constructor-parameter.d.ts +0 -20
  397. package/esm/lib/ast/nodes/constructor-parameter.d.ts.map +0 -1
  398. package/esm/lib/ast/nodes/constructor-parameter.js +0 -54
  399. package/esm/lib/ast/nodes/constructor.d.ts +0 -26
  400. package/esm/lib/ast/nodes/constructor.d.ts.map +0 -1
  401. package/esm/lib/ast/nodes/constructor.js +0 -62
  402. package/esm/lib/ast/nodes/decorator.d.ts +0 -23
  403. package/esm/lib/ast/nodes/decorator.d.ts.map +0 -1
  404. package/esm/lib/ast/nodes/decorator.js +0 -46
  405. package/esm/lib/ast/nodes/doc-tag.d.ts +0 -74
  406. package/esm/lib/ast/nodes/doc-tag.d.ts.map +0 -1
  407. package/esm/lib/ast/nodes/doc-tag.js +0 -78
  408. package/esm/lib/ast/nodes/doc.d.ts +0 -29
  409. package/esm/lib/ast/nodes/doc.d.ts.map +0 -1
  410. package/esm/lib/ast/nodes/doc.js +0 -65
  411. package/esm/lib/ast/nodes/enum-value.d.ts +0 -22
  412. package/esm/lib/ast/nodes/enum-value.d.ts.map +0 -1
  413. package/esm/lib/ast/nodes/enum.d.ts +0 -27
  414. package/esm/lib/ast/nodes/enum.d.ts.map +0 -1
  415. package/esm/lib/ast/nodes/enum.js +0 -72
  416. package/esm/lib/ast/nodes/export.d.ts +0 -23
  417. package/esm/lib/ast/nodes/export.d.ts.map +0 -1
  418. package/esm/lib/ast/nodes/function-type.d.ts +0 -24
  419. package/esm/lib/ast/nodes/function-type.d.ts.map +0 -1
  420. package/esm/lib/ast/nodes/function-type.js +0 -49
  421. package/esm/lib/ast/nodes/function.d.ts +0 -36
  422. package/esm/lib/ast/nodes/function.d.ts.map +0 -1
  423. package/esm/lib/ast/nodes/function.js +0 -104
  424. package/esm/lib/ast/nodes/generic-parameter.d.ts +0 -26
  425. package/esm/lib/ast/nodes/generic-parameter.d.ts.map +0 -1
  426. package/esm/lib/ast/nodes/generic-parameter.js +0 -66
  427. package/esm/lib/ast/nodes/indexer.d.ts +0 -24
  428. package/esm/lib/ast/nodes/indexer.d.ts.map +0 -1
  429. package/esm/lib/ast/nodes/interface.d.ts +0 -37
  430. package/esm/lib/ast/nodes/interface.d.ts.map +0 -1
  431. package/esm/lib/ast/nodes/interface.js +0 -98
  432. package/esm/lib/ast/nodes/intersection-type.d.ts +0 -18
  433. package/esm/lib/ast/nodes/intersection-type.d.ts.map +0 -1
  434. package/esm/lib/ast/nodes/lookup-type.d.ts +0 -20
  435. package/esm/lib/ast/nodes/lookup-type.d.ts.map +0 -1
  436. package/esm/lib/ast/nodes/method.d.ts +0 -48
  437. package/esm/lib/ast/nodes/method.d.ts.map +0 -1
  438. package/esm/lib/ast/nodes/method.js +0 -158
  439. package/esm/lib/ast/nodes/object-type.d.ts +0 -21
  440. package/esm/lib/ast/nodes/object-type.d.ts.map +0 -1
  441. package/esm/lib/ast/nodes/object.d.ts +0 -20
  442. package/esm/lib/ast/nodes/object.d.ts.map +0 -1
  443. package/esm/lib/ast/nodes/parameter.d.ts +0 -29
  444. package/esm/lib/ast/nodes/parameter.d.ts.map +0 -1
  445. package/esm/lib/ast/nodes/parameter.js +0 -77
  446. package/esm/lib/ast/nodes/property-accessor.d.ts +0 -54
  447. package/esm/lib/ast/nodes/property-accessor.d.ts.map +0 -1
  448. package/esm/lib/ast/nodes/property-accessor.js +0 -181
  449. package/esm/lib/ast/nodes/property.d.ts +0 -85
  450. package/esm/lib/ast/nodes/property.d.ts.map +0 -1
  451. package/esm/lib/ast/nodes/property.js +0 -189
  452. package/esm/lib/ast/nodes/reference.d.ts +0 -65
  453. package/esm/lib/ast/nodes/reference.d.ts.map +0 -1
  454. package/esm/lib/ast/nodes/reference.js +0 -93
  455. package/esm/lib/ast/nodes/string.d.ts +0 -19
  456. package/esm/lib/ast/nodes/string.d.ts.map +0 -1
  457. package/esm/lib/ast/nodes/tuple.d.ts +0 -20
  458. package/esm/lib/ast/nodes/tuple.d.ts.map +0 -1
  459. package/esm/lib/ast/nodes/type-alias.d.ts +0 -28
  460. package/esm/lib/ast/nodes/type-alias.d.ts.map +0 -1
  461. package/esm/lib/ast/nodes/type-alias.js +0 -64
  462. package/esm/lib/ast/nodes/typeof.d.ts +0 -19
  463. package/esm/lib/ast/nodes/typeof.d.ts.map +0 -1
  464. package/esm/lib/ast/nodes/types.d.ts +0 -19
  465. package/esm/lib/ast/nodes/types.d.ts.map +0 -1
  466. package/esm/lib/ast/nodes/union-type.d.ts +0 -18
  467. package/esm/lib/ast/nodes/union-type.d.ts.map +0 -1
  468. package/esm/lib/ast/nodes/variable.d.ts +0 -29
  469. package/esm/lib/ast/nodes/variable.d.ts.map +0 -1
  470. package/esm/lib/ast/references/angular.d.ts +0 -58
  471. package/esm/lib/ast/references/angular.d.ts.map +0 -1
  472. package/esm/lib/ast/references/angular.js +0 -10
  473. package/esm/lib/ast/references/easy-network-stub.d.ts +0 -35
  474. package/esm/lib/ast/references/easy-network-stub.d.ts.map +0 -1
  475. package/esm/lib/ast/references/easy-network-stub.js +0 -7
  476. package/esm/lib/ast/references/index.d.ts +0 -6
  477. package/esm/lib/ast/references/index.d.ts.map +0 -1
  478. package/esm/lib/ast/references/index.js +0 -5
  479. package/esm/lib/ast/references/k6.d.ts +0 -25
  480. package/esm/lib/ast/references/k6.d.ts.map +0 -1
  481. package/esm/lib/ast/references/rxjs.d.ts +0 -41
  482. package/esm/lib/ast/references/rxjs.d.ts.map +0 -1
  483. package/esm/lib/ast/references/typescript.d.ts +0 -198
  484. package/esm/lib/ast/references/typescript.d.ts.map +0 -1
  485. package/esm/lib/ast/utils/get-type-script-builder-options.d.ts.map +0 -1
  486. package/esm/lib/ast/utils/to-ts-node.d.ts.map +0 -1
  487. package/esm/lib/ast/utils/write-ts-generic-parameters.d.ts.map +0 -1
  488. package/esm/lib/ast/utils/write-ts-members.d.ts.map +0 -1
  489. package/esm/lib/ast/utils/write-ts-members.js +0 -14
  490. package/esm/lib/ast/utils/write-ts-nodes.d.ts.map +0 -1
  491. package/esm/lib/ast/utils/write-ts-parameters.d.ts.map +0 -1
  492. package/esm/lib/common-results.d.ts.map +0 -1
  493. package/esm/lib/config.d.ts.map +0 -1
  494. package/esm/lib/file-builder.d.ts.map +0 -1
  495. package/esm/lib/generators/file-generator.d.ts.map +0 -1
  496. package/esm/lib/generators/index.d.ts.map +0 -1
  497. package/esm/lib/generators/models/index.d.ts +0 -4
  498. package/esm/lib/generators/models/index.d.ts.map +0 -1
  499. package/esm/lib/generators/models/index.js +0 -3
  500. package/esm/lib/generators/models/model-generator.d.ts +0 -46
  501. package/esm/lib/generators/models/model-generator.d.ts.map +0 -1
  502. package/esm/lib/generators/models/model-generator.js +0 -366
  503. package/esm/lib/generators/models/models-generator.d.ts +0 -23
  504. package/esm/lib/generators/models/models-generator.d.ts.map +0 -1
  505. package/esm/lib/generators/models/models-generator.js +0 -69
  506. package/esm/lib/generators/models/models.d.ts.map +0 -1
  507. package/esm/lib/generators/services/angular-services/angular-service-generator.d.ts +0 -39
  508. package/esm/lib/generators/services/angular-services/angular-service-generator.d.ts.map +0 -1
  509. package/esm/lib/generators/services/angular-services/angular-service-generator.js +0 -302
  510. package/esm/lib/generators/services/angular-services/angular-services-generator.d.ts +0 -31
  511. package/esm/lib/generators/services/angular-services/angular-services-generator.d.ts.map +0 -1
  512. package/esm/lib/generators/services/angular-services/angular-services-generator.js +0 -213
  513. package/esm/lib/generators/services/angular-services/index.d.ts.map +0 -1
  514. package/esm/lib/generators/services/angular-services/models.d.ts +0 -142
  515. package/esm/lib/generators/services/angular-services/models.d.ts.map +0 -1
  516. package/esm/lib/generators/services/angular-services/refs.d.ts +0 -63
  517. package/esm/lib/generators/services/angular-services/refs.d.ts.map +0 -1
  518. package/esm/lib/generators/services/easy-network-stub/easy-network-stub-generator.d.ts +0 -33
  519. package/esm/lib/generators/services/easy-network-stub/easy-network-stub-generator.d.ts.map +0 -1
  520. package/esm/lib/generators/services/easy-network-stub/easy-network-stub-generator.js +0 -171
  521. package/esm/lib/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts +0 -28
  522. package/esm/lib/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts.map +0 -1
  523. package/esm/lib/generators/services/easy-network-stub/easy-network-stubs-generator.js +0 -132
  524. package/esm/lib/generators/services/easy-network-stub/index.d.ts.map +0 -1
  525. package/esm/lib/generators/services/easy-network-stub/models.d.ts +0 -78
  526. package/esm/lib/generators/services/easy-network-stub/models.d.ts.map +0 -1
  527. package/esm/lib/generators/services/easy-network-stub/refs.d.ts +0 -82
  528. package/esm/lib/generators/services/easy-network-stub/refs.d.ts.map +0 -1
  529. package/esm/lib/generators/services/fetch-clients/fetch-client-generator.d.ts +0 -33
  530. package/esm/lib/generators/services/fetch-clients/fetch-client-generator.d.ts.map +0 -1
  531. package/esm/lib/generators/services/fetch-clients/fetch-client-generator.js +0 -198
  532. package/esm/lib/generators/services/fetch-clients/fetch-clients-generator.d.ts +0 -27
  533. package/esm/lib/generators/services/fetch-clients/fetch-clients-generator.d.ts.map +0 -1
  534. package/esm/lib/generators/services/fetch-clients/fetch-clients-generator.js +0 -105
  535. package/esm/lib/generators/services/fetch-clients/index.d.ts.map +0 -1
  536. package/esm/lib/generators/services/fetch-clients/models.d.ts +0 -84
  537. package/esm/lib/generators/services/fetch-clients/models.d.ts.map +0 -1
  538. package/esm/lib/generators/services/fetch-clients/refs.d.ts +0 -30
  539. package/esm/lib/generators/services/fetch-clients/refs.d.ts.map +0 -1
  540. package/esm/lib/generators/services/k6-clients/index.d.ts.map +0 -1
  541. package/esm/lib/generators/services/k6-clients/k6-client-generator.d.ts +0 -40
  542. package/esm/lib/generators/services/k6-clients/k6-client-generator.d.ts.map +0 -1
  543. package/esm/lib/generators/services/k6-clients/k6-client-generator.js +0 -311
  544. package/esm/lib/generators/services/k6-clients/k6-clients-generator.d.ts +0 -27
  545. package/esm/lib/generators/services/k6-clients/k6-clients-generator.d.ts.map +0 -1
  546. package/esm/lib/generators/services/k6-clients/k6-clients-generator.js +0 -109
  547. package/esm/lib/generators/services/k6-clients/models.d.ts +0 -119
  548. package/esm/lib/generators/services/k6-clients/models.d.ts.map +0 -1
  549. package/esm/lib/generators/services/k6-clients/refs.d.ts +0 -21
  550. package/esm/lib/generators/services/k6-clients/refs.d.ts.map +0 -1
  551. package/esm/lib/import-collection.d.ts.map +0 -1
  552. package/esm/lib/utils.d.ts +0 -8
  553. package/esm/lib/utils.d.ts.map +0 -1
  554. package/script/index.d.ts +0 -8
  555. package/script/index.d.ts.map +0 -1
  556. package/script/index.js +0 -10
  557. package/script/lib/assets.d.ts.map +0 -1
  558. package/script/lib/assets.js +0 -9
  559. package/script/lib/ast/_index.d.ts +0 -39
  560. package/script/lib/ast/_index.d.ts.map +0 -1
  561. package/script/lib/ast/_index.js +0 -108
  562. package/script/lib/ast/common.d.ts.map +0 -1
  563. package/script/lib/ast/index.d.ts.map +0 -1
  564. package/script/lib/ast/node.d.ts.map +0 -1
  565. package/script/lib/ast/nodes/argument.d.ts +0 -18
  566. package/script/lib/ast/nodes/argument.d.ts.map +0 -1
  567. package/script/lib/ast/nodes/array-type.d.ts +0 -20
  568. package/script/lib/ast/nodes/array-type.d.ts.map +0 -1
  569. package/script/lib/ast/nodes/arrow-function.d.ts +0 -30
  570. package/script/lib/ast/nodes/arrow-function.d.ts.map +0 -1
  571. package/script/lib/ast/nodes/arrow-function.js +0 -87
  572. package/script/lib/ast/nodes/call.d.ts +0 -21
  573. package/script/lib/ast/nodes/call.d.ts.map +0 -1
  574. package/script/lib/ast/nodes/call.js +0 -38
  575. package/script/lib/ast/nodes/class.d.ts +0 -42
  576. package/script/lib/ast/nodes/class.d.ts.map +0 -1
  577. package/script/lib/ast/nodes/class.js +0 -124
  578. package/script/lib/ast/nodes/constructor-parameter.d.ts +0 -20
  579. package/script/lib/ast/nodes/constructor-parameter.d.ts.map +0 -1
  580. package/script/lib/ast/nodes/constructor-parameter.js +0 -58
  581. package/script/lib/ast/nodes/constructor.d.ts +0 -26
  582. package/script/lib/ast/nodes/constructor.d.ts.map +0 -1
  583. package/script/lib/ast/nodes/constructor.js +0 -66
  584. package/script/lib/ast/nodes/decorator.d.ts +0 -23
  585. package/script/lib/ast/nodes/decorator.d.ts.map +0 -1
  586. package/script/lib/ast/nodes/decorator.js +0 -50
  587. package/script/lib/ast/nodes/doc-tag.d.ts +0 -74
  588. package/script/lib/ast/nodes/doc-tag.d.ts.map +0 -1
  589. package/script/lib/ast/nodes/doc-tag.js +0 -82
  590. package/script/lib/ast/nodes/doc.d.ts +0 -29
  591. package/script/lib/ast/nodes/doc.d.ts.map +0 -1
  592. package/script/lib/ast/nodes/doc.js +0 -69
  593. package/script/lib/ast/nodes/enum-value.d.ts +0 -22
  594. package/script/lib/ast/nodes/enum-value.d.ts.map +0 -1
  595. package/script/lib/ast/nodes/enum.d.ts +0 -27
  596. package/script/lib/ast/nodes/enum.d.ts.map +0 -1
  597. package/script/lib/ast/nodes/enum.js +0 -76
  598. package/script/lib/ast/nodes/export.d.ts +0 -23
  599. package/script/lib/ast/nodes/export.d.ts.map +0 -1
  600. package/script/lib/ast/nodes/function-type.d.ts +0 -24
  601. package/script/lib/ast/nodes/function-type.d.ts.map +0 -1
  602. package/script/lib/ast/nodes/function-type.js +0 -53
  603. package/script/lib/ast/nodes/function.d.ts +0 -36
  604. package/script/lib/ast/nodes/function.d.ts.map +0 -1
  605. package/script/lib/ast/nodes/function.js +0 -108
  606. package/script/lib/ast/nodes/generic-parameter.d.ts +0 -26
  607. package/script/lib/ast/nodes/generic-parameter.d.ts.map +0 -1
  608. package/script/lib/ast/nodes/generic-parameter.js +0 -70
  609. package/script/lib/ast/nodes/indexer.d.ts +0 -24
  610. package/script/lib/ast/nodes/indexer.d.ts.map +0 -1
  611. package/script/lib/ast/nodes/interface.d.ts +0 -37
  612. package/script/lib/ast/nodes/interface.d.ts.map +0 -1
  613. package/script/lib/ast/nodes/interface.js +0 -102
  614. package/script/lib/ast/nodes/intersection-type.d.ts +0 -18
  615. package/script/lib/ast/nodes/intersection-type.d.ts.map +0 -1
  616. package/script/lib/ast/nodes/lookup-type.d.ts +0 -20
  617. package/script/lib/ast/nodes/lookup-type.d.ts.map +0 -1
  618. package/script/lib/ast/nodes/method.d.ts +0 -48
  619. package/script/lib/ast/nodes/method.d.ts.map +0 -1
  620. package/script/lib/ast/nodes/method.js +0 -163
  621. package/script/lib/ast/nodes/object-type.d.ts +0 -21
  622. package/script/lib/ast/nodes/object-type.d.ts.map +0 -1
  623. package/script/lib/ast/nodes/object.d.ts +0 -20
  624. package/script/lib/ast/nodes/object.d.ts.map +0 -1
  625. package/script/lib/ast/nodes/parameter.d.ts +0 -29
  626. package/script/lib/ast/nodes/parameter.d.ts.map +0 -1
  627. package/script/lib/ast/nodes/parameter.js +0 -81
  628. package/script/lib/ast/nodes/property-accessor.d.ts +0 -54
  629. package/script/lib/ast/nodes/property-accessor.d.ts.map +0 -1
  630. package/script/lib/ast/nodes/property-accessor.js +0 -188
  631. package/script/lib/ast/nodes/property.d.ts +0 -85
  632. package/script/lib/ast/nodes/property.d.ts.map +0 -1
  633. package/script/lib/ast/nodes/property.js +0 -195
  634. package/script/lib/ast/nodes/reference.d.ts +0 -65
  635. package/script/lib/ast/nodes/reference.d.ts.map +0 -1
  636. package/script/lib/ast/nodes/reference.js +0 -97
  637. package/script/lib/ast/nodes/string.d.ts +0 -19
  638. package/script/lib/ast/nodes/string.d.ts.map +0 -1
  639. package/script/lib/ast/nodes/tuple.d.ts +0 -20
  640. package/script/lib/ast/nodes/tuple.d.ts.map +0 -1
  641. package/script/lib/ast/nodes/type-alias.d.ts +0 -28
  642. package/script/lib/ast/nodes/type-alias.d.ts.map +0 -1
  643. package/script/lib/ast/nodes/type-alias.js +0 -68
  644. package/script/lib/ast/nodes/typeof.d.ts +0 -19
  645. package/script/lib/ast/nodes/typeof.d.ts.map +0 -1
  646. package/script/lib/ast/nodes/types.d.ts +0 -19
  647. package/script/lib/ast/nodes/types.d.ts.map +0 -1
  648. package/script/lib/ast/nodes/union-type.d.ts +0 -18
  649. package/script/lib/ast/nodes/union-type.d.ts.map +0 -1
  650. package/script/lib/ast/nodes/variable.d.ts +0 -29
  651. package/script/lib/ast/nodes/variable.d.ts.map +0 -1
  652. package/script/lib/ast/references/angular.d.ts +0 -58
  653. package/script/lib/ast/references/angular.d.ts.map +0 -1
  654. package/script/lib/ast/references/angular.js +0 -13
  655. package/script/lib/ast/references/easy-network-stub.d.ts +0 -35
  656. package/script/lib/ast/references/easy-network-stub.d.ts.map +0 -1
  657. package/script/lib/ast/references/easy-network-stub.js +0 -10
  658. package/script/lib/ast/references/index.d.ts +0 -6
  659. package/script/lib/ast/references/index.d.ts.map +0 -1
  660. package/script/lib/ast/references/index.js +0 -9
  661. package/script/lib/ast/references/k6.d.ts +0 -25
  662. package/script/lib/ast/references/k6.d.ts.map +0 -1
  663. package/script/lib/ast/references/rxjs.d.ts +0 -41
  664. package/script/lib/ast/references/rxjs.d.ts.map +0 -1
  665. package/script/lib/ast/references/typescript.d.ts +0 -198
  666. package/script/lib/ast/references/typescript.d.ts.map +0 -1
  667. package/script/lib/ast/utils/get-type-script-builder-options.d.ts.map +0 -1
  668. package/script/lib/ast/utils/to-ts-node.d.ts.map +0 -1
  669. package/script/lib/ast/utils/write-ts-generic-parameters.d.ts.map +0 -1
  670. package/script/lib/ast/utils/write-ts-members.d.ts.map +0 -1
  671. package/script/lib/ast/utils/write-ts-members.js +0 -17
  672. package/script/lib/ast/utils/write-ts-nodes.d.ts.map +0 -1
  673. package/script/lib/ast/utils/write-ts-parameters.d.ts.map +0 -1
  674. package/script/lib/common-results.d.ts.map +0 -1
  675. package/script/lib/config.d.ts.map +0 -1
  676. package/script/lib/file-builder.d.ts.map +0 -1
  677. package/script/lib/generators/file-generator.d.ts.map +0 -1
  678. package/script/lib/generators/index.d.ts.map +0 -1
  679. package/script/lib/generators/models/index.d.ts +0 -4
  680. package/script/lib/generators/models/index.d.ts.map +0 -1
  681. package/script/lib/generators/models/index.js +0 -6
  682. package/script/lib/generators/models/model-generator.d.ts +0 -46
  683. package/script/lib/generators/models/model-generator.d.ts.map +0 -1
  684. package/script/lib/generators/models/model-generator.js +0 -370
  685. package/script/lib/generators/models/models-generator.d.ts +0 -23
  686. package/script/lib/generators/models/models-generator.d.ts.map +0 -1
  687. package/script/lib/generators/models/models-generator.js +0 -73
  688. package/script/lib/generators/models/models.d.ts.map +0 -1
  689. package/script/lib/generators/services/angular-services/angular-service-generator.d.ts +0 -39
  690. package/script/lib/generators/services/angular-services/angular-service-generator.d.ts.map +0 -1
  691. package/script/lib/generators/services/angular-services/angular-service-generator.js +0 -306
  692. package/script/lib/generators/services/angular-services/angular-services-generator.d.ts +0 -31
  693. package/script/lib/generators/services/angular-services/angular-services-generator.d.ts.map +0 -1
  694. package/script/lib/generators/services/angular-services/angular-services-generator.js +0 -218
  695. package/script/lib/generators/services/angular-services/index.d.ts.map +0 -1
  696. package/script/lib/generators/services/angular-services/models.d.ts +0 -142
  697. package/script/lib/generators/services/angular-services/models.d.ts.map +0 -1
  698. package/script/lib/generators/services/angular-services/refs.d.ts +0 -63
  699. package/script/lib/generators/services/angular-services/refs.d.ts.map +0 -1
  700. package/script/lib/generators/services/easy-network-stub/easy-network-stub-generator.d.ts +0 -33
  701. package/script/lib/generators/services/easy-network-stub/easy-network-stub-generator.d.ts.map +0 -1
  702. package/script/lib/generators/services/easy-network-stub/easy-network-stub-generator.js +0 -175
  703. package/script/lib/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts +0 -28
  704. package/script/lib/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts.map +0 -1
  705. package/script/lib/generators/services/easy-network-stub/easy-network-stubs-generator.js +0 -137
  706. package/script/lib/generators/services/easy-network-stub/index.d.ts.map +0 -1
  707. package/script/lib/generators/services/easy-network-stub/models.d.ts +0 -78
  708. package/script/lib/generators/services/easy-network-stub/models.d.ts.map +0 -1
  709. package/script/lib/generators/services/easy-network-stub/refs.d.ts +0 -82
  710. package/script/lib/generators/services/easy-network-stub/refs.d.ts.map +0 -1
  711. package/script/lib/generators/services/fetch-clients/fetch-client-generator.d.ts +0 -33
  712. package/script/lib/generators/services/fetch-clients/fetch-client-generator.d.ts.map +0 -1
  713. package/script/lib/generators/services/fetch-clients/fetch-client-generator.js +0 -202
  714. package/script/lib/generators/services/fetch-clients/fetch-clients-generator.d.ts +0 -27
  715. package/script/lib/generators/services/fetch-clients/fetch-clients-generator.d.ts.map +0 -1
  716. package/script/lib/generators/services/fetch-clients/fetch-clients-generator.js +0 -110
  717. package/script/lib/generators/services/fetch-clients/index.d.ts.map +0 -1
  718. package/script/lib/generators/services/fetch-clients/models.d.ts +0 -84
  719. package/script/lib/generators/services/fetch-clients/models.d.ts.map +0 -1
  720. package/script/lib/generators/services/fetch-clients/refs.d.ts +0 -30
  721. package/script/lib/generators/services/fetch-clients/refs.d.ts.map +0 -1
  722. package/script/lib/generators/services/k6-clients/index.d.ts.map +0 -1
  723. package/script/lib/generators/services/k6-clients/k6-client-generator.d.ts +0 -40
  724. package/script/lib/generators/services/k6-clients/k6-client-generator.d.ts.map +0 -1
  725. package/script/lib/generators/services/k6-clients/k6-client-generator.js +0 -315
  726. package/script/lib/generators/services/k6-clients/k6-clients-generator.d.ts +0 -27
  727. package/script/lib/generators/services/k6-clients/k6-clients-generator.d.ts.map +0 -1
  728. package/script/lib/generators/services/k6-clients/k6-clients-generator.js +0 -114
  729. package/script/lib/generators/services/k6-clients/models.d.ts +0 -119
  730. package/script/lib/generators/services/k6-clients/models.d.ts.map +0 -1
  731. package/script/lib/generators/services/k6-clients/refs.d.ts +0 -21
  732. package/script/lib/generators/services/k6-clients/refs.d.ts.map +0 -1
  733. package/script/lib/import-collection.d.ts.map +0 -1
  734. package/script/lib/utils.d.ts +0 -8
  735. package/script/lib/utils.d.ts.map +0 -1
  736. /package/esm/{lib → src}/assets.d.ts +0 -0
  737. /package/esm/{lib → src}/ast/common.d.ts +0 -0
  738. /package/esm/{lib → src}/ast/common.js +0 -0
  739. /package/esm/{lib → src}/ast/index.d.ts +0 -0
  740. /package/esm/{lib → src}/ast/index.js +0 -0
  741. /package/esm/{lib → src}/ast/node.d.ts +0 -0
  742. /package/esm/{lib → src}/ast/node.js +0 -0
  743. /package/esm/{lib → src}/ast/nodes/argument.js +0 -0
  744. /package/esm/{lib → src}/ast/nodes/array-type.js +0 -0
  745. /package/esm/{lib → src}/ast/nodes/enum-value.js +0 -0
  746. /package/esm/{lib → src}/ast/nodes/export.js +0 -0
  747. /package/esm/{lib → src}/ast/nodes/indexer.js +0 -0
  748. /package/esm/{lib → src}/ast/nodes/intersection-type.js +0 -0
  749. /package/esm/{lib → src}/ast/nodes/lookup-type.js +0 -0
  750. /package/esm/{lib → src}/ast/nodes/object-type.js +0 -0
  751. /package/esm/{lib → src}/ast/nodes/object.js +0 -0
  752. /package/esm/{lib → src}/ast/nodes/string.js +0 -0
  753. /package/esm/{lib → src}/ast/nodes/tuple.js +0 -0
  754. /package/esm/{lib → src}/ast/nodes/typeof.js +0 -0
  755. /package/esm/{lib → src}/ast/nodes/types.js +0 -0
  756. /package/esm/{lib → src}/ast/nodes/union-type.js +0 -0
  757. /package/esm/{lib → src}/ast/nodes/variable.js +0 -0
  758. /package/esm/{lib → src}/ast/references/k6.js +0 -0
  759. /package/esm/{lib → src}/ast/references/rxjs.js +0 -0
  760. /package/esm/{lib → src}/ast/references/typescript.js +0 -0
  761. /package/esm/{lib → src}/ast/utils/get-type-script-builder-options.d.ts +0 -0
  762. /package/esm/{lib → src}/ast/utils/get-type-script-builder-options.js +0 -0
  763. /package/esm/{lib → src}/ast/utils/to-ts-node.d.ts +0 -0
  764. /package/esm/{lib → src}/ast/utils/to-ts-node.js +0 -0
  765. /package/esm/{lib → src}/ast/utils/write-ts-generic-parameters.d.ts +0 -0
  766. /package/esm/{lib → src}/ast/utils/write-ts-generic-parameters.js +0 -0
  767. /package/esm/{lib → src}/ast/utils/write-ts-members.d.ts +0 -0
  768. /package/esm/{lib → src}/ast/utils/write-ts-nodes.d.ts +0 -0
  769. /package/esm/{lib → src}/ast/utils/write-ts-nodes.js +0 -0
  770. /package/esm/{lib → src}/ast/utils/write-ts-parameters.d.ts +0 -0
  771. /package/esm/{lib → src}/ast/utils/write-ts-parameters.js +0 -0
  772. /package/esm/{lib → src}/common-results.d.ts +0 -0
  773. /package/esm/{lib → src}/common-results.js +0 -0
  774. /package/esm/{lib → src}/config.d.ts +0 -0
  775. /package/esm/{lib → src}/config.js +0 -0
  776. /package/esm/{lib → src}/file-builder.d.ts +0 -0
  777. /package/esm/{lib → src}/file-builder.js +0 -0
  778. /package/esm/{lib → src}/generators/file-generator.d.ts +0 -0
  779. /package/esm/{lib → src}/generators/file-generator.js +0 -0
  780. /package/esm/{lib → src}/generators/index.d.ts +0 -0
  781. /package/esm/{lib → src}/generators/index.js +0 -0
  782. /package/esm/{lib → src}/generators/models/models.d.ts +0 -0
  783. /package/esm/{lib → src}/generators/models/models.js +0 -0
  784. /package/esm/{lib → src}/generators/services/angular-services/index.d.ts +0 -0
  785. /package/esm/{lib → src}/generators/services/angular-services/index.js +0 -0
  786. /package/esm/{lib → src}/generators/services/angular-services/models.js +0 -0
  787. /package/esm/{lib → src}/generators/services/angular-services/refs.js +0 -0
  788. /package/esm/{lib → src}/generators/services/easy-network-stub/index.d.ts +0 -0
  789. /package/esm/{lib → src}/generators/services/easy-network-stub/index.js +0 -0
  790. /package/esm/{lib → src}/generators/services/easy-network-stub/models.js +0 -0
  791. /package/esm/{lib → src}/generators/services/easy-network-stub/refs.js +0 -0
  792. /package/esm/{lib → src}/generators/services/fetch-clients/index.d.ts +0 -0
  793. /package/esm/{lib → src}/generators/services/fetch-clients/index.js +0 -0
  794. /package/esm/{lib → src}/generators/services/fetch-clients/models.js +0 -0
  795. /package/esm/{lib → src}/generators/services/fetch-clients/refs.js +0 -0
  796. /package/esm/{lib → src}/generators/services/k6-clients/index.d.ts +0 -0
  797. /package/esm/{lib → src}/generators/services/k6-clients/index.js +0 -0
  798. /package/esm/{lib → src}/generators/services/k6-clients/models.js +0 -0
  799. /package/esm/{lib → src}/generators/services/k6-clients/refs.js +0 -0
  800. /package/esm/{lib → src}/import-collection.d.ts +0 -0
  801. /package/esm/{lib → src}/import-collection.js +0 -0
  802. /package/esm/{lib → src}/utils.js +0 -0
  803. /package/script/{lib → src}/assets.d.ts +0 -0
  804. /package/script/{lib → src}/ast/common.d.ts +0 -0
  805. /package/script/{lib → src}/ast/common.js +0 -0
  806. /package/script/{lib → src}/ast/index.d.ts +0 -0
  807. /package/script/{lib → src}/ast/index.js +0 -0
  808. /package/script/{lib → src}/ast/node.d.ts +0 -0
  809. /package/script/{lib → src}/ast/node.js +0 -0
  810. /package/script/{lib → src}/ast/nodes/argument.js +0 -0
  811. /package/script/{lib → src}/ast/nodes/array-type.js +0 -0
  812. /package/script/{lib → src}/ast/nodes/enum-value.js +0 -0
  813. /package/script/{lib → src}/ast/nodes/export.js +0 -0
  814. /package/script/{lib → src}/ast/nodes/indexer.js +0 -0
  815. /package/script/{lib → src}/ast/nodes/intersection-type.js +0 -0
  816. /package/script/{lib → src}/ast/nodes/lookup-type.js +0 -0
  817. /package/script/{lib → src}/ast/nodes/object-type.js +0 -0
  818. /package/script/{lib → src}/ast/nodes/object.js +0 -0
  819. /package/script/{lib → src}/ast/nodes/string.js +0 -0
  820. /package/script/{lib → src}/ast/nodes/tuple.js +0 -0
  821. /package/script/{lib → src}/ast/nodes/typeof.js +0 -0
  822. /package/script/{lib → src}/ast/nodes/types.js +0 -0
  823. /package/script/{lib → src}/ast/nodes/union-type.js +0 -0
  824. /package/script/{lib → src}/ast/nodes/variable.js +0 -0
  825. /package/script/{lib → src}/ast/references/k6.js +0 -0
  826. /package/script/{lib → src}/ast/references/rxjs.js +0 -0
  827. /package/script/{lib → src}/ast/references/typescript.js +0 -0
  828. /package/script/{lib → src}/ast/utils/get-type-script-builder-options.d.ts +0 -0
  829. /package/script/{lib → src}/ast/utils/get-type-script-builder-options.js +0 -0
  830. /package/script/{lib → src}/ast/utils/to-ts-node.d.ts +0 -0
  831. /package/script/{lib → src}/ast/utils/to-ts-node.js +0 -0
  832. /package/script/{lib → src}/ast/utils/write-ts-generic-parameters.d.ts +0 -0
  833. /package/script/{lib → src}/ast/utils/write-ts-generic-parameters.js +0 -0
  834. /package/script/{lib → src}/ast/utils/write-ts-members.d.ts +0 -0
  835. /package/script/{lib → src}/ast/utils/write-ts-nodes.d.ts +0 -0
  836. /package/script/{lib → src}/ast/utils/write-ts-nodes.js +0 -0
  837. /package/script/{lib → src}/ast/utils/write-ts-parameters.d.ts +0 -0
  838. /package/script/{lib → src}/ast/utils/write-ts-parameters.js +0 -0
  839. /package/script/{lib → src}/common-results.d.ts +0 -0
  840. /package/script/{lib → src}/common-results.js +0 -0
  841. /package/script/{lib → src}/config.d.ts +0 -0
  842. /package/script/{lib → src}/config.js +0 -0
  843. /package/script/{lib → src}/file-builder.d.ts +0 -0
  844. /package/script/{lib → src}/file-builder.js +0 -0
  845. /package/script/{lib → src}/generators/file-generator.d.ts +0 -0
  846. /package/script/{lib → src}/generators/file-generator.js +0 -0
  847. /package/script/{lib → src}/generators/index.d.ts +0 -0
  848. /package/script/{lib → src}/generators/index.js +0 -0
  849. /package/script/{lib → src}/generators/models/models.d.ts +0 -0
  850. /package/script/{lib → src}/generators/models/models.js +0 -0
  851. /package/script/{lib → src}/generators/services/angular-services/index.d.ts +0 -0
  852. /package/script/{lib → src}/generators/services/angular-services/index.js +0 -0
  853. /package/script/{lib → src}/generators/services/angular-services/models.js +0 -0
  854. /package/script/{lib → src}/generators/services/angular-services/refs.js +0 -0
  855. /package/script/{lib → src}/generators/services/easy-network-stub/index.d.ts +0 -0
  856. /package/script/{lib → src}/generators/services/easy-network-stub/index.js +0 -0
  857. /package/script/{lib → src}/generators/services/easy-network-stub/models.js +0 -0
  858. /package/script/{lib → src}/generators/services/easy-network-stub/refs.js +0 -0
  859. /package/script/{lib → src}/generators/services/fetch-clients/index.d.ts +0 -0
  860. /package/script/{lib → src}/generators/services/fetch-clients/index.js +0 -0
  861. /package/script/{lib → src}/generators/services/fetch-clients/models.js +0 -0
  862. /package/script/{lib → src}/generators/services/fetch-clients/refs.js +0 -0
  863. /package/script/{lib → src}/generators/services/k6-clients/index.d.ts +0 -0
  864. /package/script/{lib → src}/generators/services/k6-clients/index.js +0 -0
  865. /package/script/{lib → src}/generators/services/k6-clients/models.js +0 -0
  866. /package/script/{lib → src}/generators/services/k6-clients/refs.js +0 -0
  867. /package/script/{lib → src}/import-collection.d.ts +0 -0
  868. /package/script/{lib → src}/import-collection.js +0 -0
  869. /package/script/{lib → src}/utils.js +0 -0
@@ -0,0 +1,213 @@
1
+ import { resolve } from 'node:path';
2
+ import fs from 'fs-extra';
3
+ import { appendValueGroup, Factory, OpenApiServicesGenerationProviderBase, toCasing, } from '@goast/core';
4
+ import { copyAssetFile } from '../../../assets.js';
5
+ import { ts } from '../../../ast/index.js';
6
+ import { TypeScriptFileBuilder } from '../../../file-builder.js';
7
+ import { modifyString } from '../../../utils.js';
8
+ import { DefaultTypeScriptAngularServiceGenerator, } from './angular-service-generator.js';
9
+ import { defaultTypeScriptAngularServicesGeneratorConfig, } from './models.js';
10
+ import { getReferenceFactories } from './refs.js';
11
+ export class TypeScriptAngularServicesGenerator extends OpenApiServicesGenerationProviderBase {
12
+ constructor(clientGeneratorFactory) {
13
+ super();
14
+ Object.defineProperty(this, "_clientGeneratorFactory", {
15
+ enumerable: true,
16
+ configurable: true,
17
+ writable: true,
18
+ value: void 0
19
+ });
20
+ this._clientGeneratorFactory = clientGeneratorFactory !== null && clientGeneratorFactory !== void 0 ? clientGeneratorFactory : Factory.fromValue(new DefaultTypeScriptAngularServiceGenerator());
21
+ }
22
+ initResult() {
23
+ return {
24
+ typescript: {
25
+ services: {},
26
+ indexFiles: { services: undefined, responseModels: undefined },
27
+ },
28
+ };
29
+ }
30
+ buildContext(context, config) {
31
+ const providerContext = this.getProviderContext(context, config, defaultTypeScriptAngularServicesGeneratorConfig);
32
+ return Object.assign(providerContext, {
33
+ refs: getReferenceFactories(providerContext.config),
34
+ });
35
+ }
36
+ async generateAdditionalFiles(ctx) {
37
+ await this.generateUtilsFiles(ctx);
38
+ ctx.output.typescript.indexFiles = this.generateIndexFiles(ctx);
39
+ }
40
+ generateService(ctx, service) {
41
+ const clientGenerator = this._clientGeneratorFactory.create();
42
+ return clientGenerator.generate({
43
+ ...ctx,
44
+ service,
45
+ });
46
+ }
47
+ addServiceResult(ctx, service, result) {
48
+ ctx.output.typescript.services[service.id] = result;
49
+ }
50
+ // #region Utils
51
+ async generateUtilsFiles(ctx) {
52
+ const targetDir = resolve(ctx.config.outputDir, ctx.config.utilsDir);
53
+ await fs.ensureDir(targetDir);
54
+ await copyAssetFile('client/angular/request-builder.ts', targetDir, 'Request Builder');
55
+ await copyAssetFile('client/angular/angular-service.utils.ts', targetDir, 'Angular Service Utils');
56
+ TypeScriptFileBuilder.generate({
57
+ logName: 'api configuration',
58
+ filePath: resolve(targetDir, 'api-configuration.ts'),
59
+ options: ctx.config,
60
+ generator: (b) => b.append(this.getApiConfigurationFileContent(ctx)),
61
+ });
62
+ TypeScriptFileBuilder.generate({
63
+ logName: 'api base service',
64
+ filePath: resolve(targetDir, 'api-base-service.ts'),
65
+ options: ctx.config,
66
+ generator: (b) => b.append(this.getApiBaseServiceFileContent(ctx)),
67
+ });
68
+ if (!ctx.config.strictResponseTypes) {
69
+ TypeScriptFileBuilder.generate({
70
+ logName: 'http status codes',
71
+ filePath: resolve(targetDir, 'http-status-code.ts'),
72
+ options: ctx.config,
73
+ generator: (b) => b.append(this.getHttpStatusCodeFileContent(ctx)),
74
+ });
75
+ }
76
+ if (ctx.config.provideKind === 'provide-fn') {
77
+ TypeScriptFileBuilder.generate({
78
+ logName: 'providers',
79
+ filePath: resolve(targetDir, 'provide.ts'),
80
+ options: ctx.config,
81
+ generator: (b) => b.append(this.getProvideFnFileContent(ctx)),
82
+ });
83
+ }
84
+ }
85
+ getApiConfigurationFileContent(ctx) {
86
+ var _a, _b;
87
+ return appendValueGroup([
88
+ ts.class(toCasing(`${(_a = ctx.config.domainName) !== null && _a !== void 0 ? _a : ''}ApiConfiguration`, ctx.config.typeNameCasing), {
89
+ doc: ts.doc({ description: `${(_b = ctx.config.domainName) !== null && _b !== void 0 ? _b : 'Global'} API Configuration.` }),
90
+ decorators: [
91
+ ts.decorator(ts.refs.angular.injectable(), [
92
+ ctx.config.provideKind === 'root' ? ts.toNode({ providedIn: 'root' }) : null,
93
+ ]),
94
+ ],
95
+ export: true,
96
+ members: [
97
+ ts.property('rootUrl', {
98
+ accessModifier: 'public',
99
+ type: ts.refs.string(),
100
+ value: ts.string(this.getRootUrl(ctx)),
101
+ }),
102
+ ],
103
+ }),
104
+ ], '\n');
105
+ }
106
+ getApiBaseServiceFileContent(ctx) {
107
+ return appendValueGroup([
108
+ ts.class('ApiBaseService', {
109
+ doc: ts.doc({ description: 'Base class for API services.' }),
110
+ export: true,
111
+ abstract: true,
112
+ members: [
113
+ ts.property('config', {
114
+ accessModifier: 'protected',
115
+ value: (b) => b.append(ts.refs.angular.inject(), '(', ctx.refs.apiConfiguration(), ')'),
116
+ }),
117
+ ts.property('http', {
118
+ accessModifier: 'protected',
119
+ value: (b) => b.append(ts.refs.angular.inject(), '(', ts.refs.angular.httpClient(), ')'),
120
+ }),
121
+ ts.property('_rootUrl', { accessModifier: 'private', type: ts.refs.string(), value: ts.string('') }),
122
+ ts.property('rootUrl', {
123
+ doc: ts.doc({
124
+ description: `Gets or sets the root URL for API operations provided by this service.\nFalls back to \`${ctx.refs.apiConfiguration.refName}.rootUrl\` if not set in this service.`,
125
+ }),
126
+ accessModifier: 'public',
127
+ type: ts.refs.string(),
128
+ get: ts.property.getter({ body: 'return this._rootUrl || this.config.rootUrl;' }),
129
+ set: ts.property.setter({ body: 'this._rootUrl = value;' }),
130
+ }),
131
+ ],
132
+ }),
133
+ ], '\n');
134
+ }
135
+ getHttpStatusCodeFileContent(ctx) {
136
+ return appendValueGroup([
137
+ ts.typeAlias('HttpStatusCode', ts.unionType(ctx.config.possibleStatusCodes), {
138
+ doc: ts.doc({ description: 'The possible status codes that any API endpoint can return.' }),
139
+ export: true,
140
+ }),
141
+ ], '\n');
142
+ }
143
+ getProvideFnFileContent(ctx) {
144
+ var _a;
145
+ return appendValueGroup([
146
+ ts.function(toCasing(`provide_${(_a = ctx.config.domainName) !== null && _a !== void 0 ? _a : ''}_Api`, ctx.config.functionNameCasing), {
147
+ doc: ts.doc({
148
+ description: 'Provides all the API services' +
149
+ (ctx.config.domainName ? ` for ${ctx.config.domainName}` : '') + '.',
150
+ }),
151
+ export: true,
152
+ parameters: [ts.parameter('config', { type: ctx.refs.apiConfiguration(), optional: true })],
153
+ returnType: ts.refs.angular.provider(),
154
+ body: appendValueGroup([
155
+ 'return ',
156
+ ts.tuple([
157
+ (b) => b.append('config ? { provide: ', ctx.refs.apiConfiguration(), ', useValue: config } : ', ctx.refs.apiConfiguration()),
158
+ ...Object.values(ctx.output.typescript.services).map((x) => ts.reference(x.component, x.filePath)),
159
+ ]),
160
+ ';',
161
+ ]),
162
+ }),
163
+ ], '\n');
164
+ }
165
+ getRootUrl(ctx) {
166
+ var _a, _b, _c, _d, _e, _f;
167
+ return modifyString((_f = (_e = (_d = (_c = ((_a = ctx.data.services[0].$src) !== null && _a !== void 0 ? _a : (_b = ctx.data.services[0].endpoints[0]) === null || _b === void 0 ? void 0 : _b.$src)) === null || _c === void 0 ? void 0 : _c.document.servers) === null || _d === void 0 ? void 0 : _d[0]) === null || _e === void 0 ? void 0 : _e.url) !== null && _f !== void 0 ? _f : '/', ctx.config.rootUrl);
168
+ }
169
+ // #endregion
170
+ // #region Index
171
+ generateIndexFiles(ctx) {
172
+ const servicesIndexFilePath = this.getServicesIndexFilePath(ctx);
173
+ const responseModelsIndexFilePath = this.getResponseModelsIndexFilePath(ctx);
174
+ TypeScriptFileBuilder.tryGenerate({
175
+ logName: 'services index file',
176
+ filePath: servicesIndexFilePath,
177
+ options: ctx.config,
178
+ generator: (b) => b.append(this.getServicesIndexFileContent(ctx)),
179
+ });
180
+ TypeScriptFileBuilder.tryGenerate({
181
+ logName: 'response models index file',
182
+ filePath: responseModelsIndexFilePath,
183
+ options: ctx.config,
184
+ generator: (b) => b.append(this.getResponseModelsIndexFileContent(ctx)),
185
+ });
186
+ return {
187
+ services: servicesIndexFilePath,
188
+ responseModels: responseModelsIndexFilePath,
189
+ };
190
+ }
191
+ getServicesIndexFileContent(ctx) {
192
+ return appendValueGroup([
193
+ ts.export(ctx.refs.apiConfiguration.refName, ctx.refs.apiConfiguration.moduleNameOrfilePath),
194
+ ctx.config.provideKind === 'provide-fn'
195
+ ? ts.export(ctx.refs.provide.refName, ctx.refs.provide.moduleNameOrfilePath)
196
+ : null,
197
+ ...Object.values(ctx.output.typescript.services).map((x) => ts.export(x.component, x.filePath)),
198
+ ]);
199
+ }
200
+ getResponseModelsIndexFileContent(ctx) {
201
+ return appendValueGroup(Object.values(ctx.output.typescript.services)
202
+ .flatMap((x) => Object.values(x.responseModels))
203
+ .map((x) => ts.export(x.component, x.filePath, { kind: 'type-export' })));
204
+ }
205
+ getServicesIndexFilePath(ctx) {
206
+ return ctx.config.servicesIndexFile ? resolve(ctx.config.outputDir, ctx.config.servicesIndexFile) : null;
207
+ }
208
+ getResponseModelsIndexFilePath(ctx) {
209
+ return ctx.config.responseModelsIndexFile
210
+ ? resolve(ctx.config.outputDir, ctx.config.responseModelsIndexFile)
211
+ : null;
212
+ }
213
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/src/generators/services/angular-services/index.ts"],"names":[],"mappings":"AAAA,cAAc,gCAAgC,CAAC;AAC/C,cAAc,iCAAiC,CAAC;AAChD,cAAc,aAAa,CAAC"}
@@ -0,0 +1,142 @@
1
+ import type { ApiEndpoint, ApiSchema, ApiService, DefaultGenerationProviderConfig, ExtendedStringCasing, Nullable, OpenApiServicesGenerationProviderContext } from '@goast/core';
2
+ import type { ts } from '../../../ast/index.js';
3
+ import type { TypeScriptExportOutput } from '../../../common-results.js';
4
+ import { type TypeScriptGeneratorConfig } from '../../../config.js';
5
+ import type { TypeScriptFileBuilder } from '../../../file-builder.js';
6
+ import type { TypeScriptModelGeneratorOutput } from '../../models/index.js';
7
+ import type { getReferenceFactories } from './refs.js';
8
+ export type TypeScriptAngularServicesGeneratorConfig = TypeScriptGeneratorConfig & {
9
+ /**
10
+ * How the services should be provided in the Angular application.
11
+ * - `root` - provides all the services using `Injectable({ providedIn: 'root' })`
12
+ * - `provide-fn` - generates a function `provideApiClients` that provides the services
13
+ * @default 'root'
14
+ */
15
+ provideKind: 'root' | 'provide-fn';
16
+ /**
17
+ * The domain name of the API. Used as a prefix for exported components (e.g. `ApiConfiguration`).
18
+ * @default undefined
19
+ */
20
+ domainName: Nullable<string>;
21
+ /**
22
+ * Whether to use strict response types for the services.
23
+ * If enabled only the status codes are included that are defined in the OpenAPI specification or the `defaultStatusCodeResponseTypes` option.
24
+ * @default true
25
+ */
26
+ strictResponseTypes: boolean;
27
+ /**
28
+ * The default response types for status codes that are not defined in the OpenAPI specification.
29
+ * @example
30
+ * {
31
+ * 400: {
32
+ * parser: 'json',
33
+ * type: schemas =>
34
+ * schemas.find(s => s.name === 'BadRequestResponse')
35
+ * ?? throwExp('BadRequestResponse not found'),
36
+ * },
37
+ * 404: null,
38
+ * 500: {
39
+ * parser: 'json',
40
+ * type: ts.refs.any(),
41
+ * },
42
+ * }
43
+ * @default
44
+ * {
45
+ * 401: null,
46
+ * 403: null,
47
+ * 500: null,
48
+ * }
49
+ */
50
+ defaultStatusCodeResponseTypes: Record<number, {
51
+ parser: 'text' | 'json';
52
+ type: Exclude<ts.Type<TypeScriptFileBuilder>, Function> | ((schemas: readonly ApiSchema[]) => ApiSchema);
53
+ } | null>;
54
+ /**
55
+ * The default content type which is used for the success response. If not defined the first one defined in the OpenApi specification is used.
56
+ * @default undefined
57
+ */
58
+ defaultSuccessResponseType: Nullable<string>;
59
+ /**
60
+ * The possible status codes that any API endpoint can return.
61
+ * This is only used when `strictResponseTypes` is set to `false`.
62
+ * @default
63
+ * [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]
64
+ */
65
+ possibleStatusCodes: number[];
66
+ /**
67
+ * Explicitly set the root URL of the API. If `undefined`, the root URL is taken from the first `server` in the OpenAPI specification.
68
+ * @default undefined
69
+ */
70
+ rootUrl: Nullable<string | RegExp | ((rootUrl: string) => string)>;
71
+ /**
72
+ * Modifier that is applied to the path of each endpoint.
73
+ * @default undefined
74
+ */
75
+ pathModifier: Nullable<RegExp | ((path: string, endpoint: ApiEndpoint) => string)>;
76
+ /**
77
+ * The directory where the services should be saved. The path is relative to the output directory.
78
+ * @default 'services'
79
+ */
80
+ servicesDir: string;
81
+ /**
82
+ * The casing of the file names for the services. If nullish, the `fileNameCasing` is used.
83
+ * @default { casing: 'kebab', suffix: '.service' }
84
+ */
85
+ serviceFileNameCasing: Nullable<ExtendedStringCasing>;
86
+ /**
87
+ * The path to the index file where all services should be exported. The path is relative to the output directory. If nullish, no index file will be generated.
88
+ * @default 'services.ts'
89
+ */
90
+ servicesIndexFile: Nullable<string>;
91
+ /**
92
+ * The directory where the response models should be saved. The path is relative to the output directory.
93
+ * @default 'models/responses'
94
+ */
95
+ responseModelsDir: string;
96
+ /**
97
+ * The casing of the file names for the response models. If nullish, the `fileNameCasing` is used.
98
+ * @default { casing: 'kebab', suffix: '-responses.model' }
99
+ */
100
+ responseModelFileNameCasing: Nullable<ExtendedStringCasing>;
101
+ /**
102
+ * 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.
103
+ * @default 'responses.ts'
104
+ */
105
+ responseModelsIndexFile: Nullable<string>;
106
+ /**
107
+ * The directory where the utilies should be saved. The path is relative to the output directory.
108
+ * @default 'utils'
109
+ */
110
+ utilsDir: string;
111
+ };
112
+ export declare const defaultTypeScriptAngularServicesGeneratorConfig: DefaultGenerationProviderConfig<TypeScriptAngularServicesGeneratorConfig>;
113
+ export type TypeScriptAngularServicesGeneratorInput = {
114
+ typescript: {
115
+ models: {
116
+ [schemaId: string]: TypeScriptModelGeneratorOutput;
117
+ };
118
+ };
119
+ };
120
+ export type TypeScriptAngularServicesGeneratorOutput = {
121
+ typescript: {
122
+ services: {
123
+ [serviceId: string]: TypeScriptAngularServiceGeneratorOutput;
124
+ };
125
+ indexFiles: {
126
+ services: Nullable<string>;
127
+ responseModels: Nullable<string>;
128
+ };
129
+ };
130
+ };
131
+ export type TypeScriptAngularServiceGeneratorOutput = TypeScriptExportOutput & {
132
+ responseModels: {
133
+ [operationId: string]: TypeScriptExportOutput;
134
+ };
135
+ };
136
+ export type TypeScriptAngularServicesGeneratorContext = OpenApiServicesGenerationProviderContext<TypeScriptAngularServicesGeneratorInput, TypeScriptAngularServicesGeneratorOutput, TypeScriptAngularServicesGeneratorConfig, TypeScriptAngularServiceGeneratorOutput> & {
137
+ refs: ReturnType<typeof getReferenceFactories>;
138
+ };
139
+ export type TypeScriptAngularServiceGeneratorContext = TypeScriptAngularServicesGeneratorContext & {
140
+ readonly service: ApiService;
141
+ };
142
+ //# sourceMappingURL=models.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../../../../src/src/generators/services/angular-services/models.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,WAAW,EACX,SAAS,EACT,UAAU,EACV,+BAA+B,EAC/B,oBAAoB,EACpB,QAAQ,EACR,wCAAwC,EACzC,MAAM,aAAa,CAAC;AAErB,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,8BAA8B,EAAE,MAAM,uBAAuB,CAAC;AAC5E,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAEvD,MAAM,MAAM,wCAAwC,GAAG,yBAAyB,GAAG;IACjF;;;;;OAKG;IACH,WAAW,EAAE,MAAM,GAAG,YAAY,CAAC;IAEnC;;;OAGG;IACH,UAAU,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAE7B;;;;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;;;OAGG;IACH,0BAA0B,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAE7C;;;;;OAKG;IACH,mBAAmB,EAAE,MAAM,EAAE,CAAC;IAE9B;;;OAGG;IACH,OAAO,EAAE,QAAQ,CAAC,MAAM,GAAG,MAAM,GAAG,CAAC,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC,CAAC;IAEnE;;;OAGG;IACH,YAAY,EAAE,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,WAAW,KAAK,MAAM,CAAC,CAAC,CAAC;IAEnF;;;OAGG;IACH,WAAW,EAAE,MAAM,CAAC;IAEpB;;;OAGG;IACH,qBAAqB,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IAEtD;;;OAGG;IACH,iBAAiB,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAEpC;;;OAGG;IACH,iBAAiB,EAAE,MAAM,CAAC;IAE1B;;;OAGG;IACH,2BAA2B,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IAE5D;;;OAGG;IACH,uBAAuB,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAE1C;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,+CAA+C,EAAE,+BAA+B,CAC3F,wCAAwC,CAuFzC,CAAC;AAEF,MAAM,MAAM,uCAAuC,GAAG;IACpD,UAAU,EAAE;QACV,MAAM,EAAE;YACN,CAAC,QAAQ,EAAE,MAAM,GAAG,8BAA8B,CAAC;SACpD,CAAC;KACH,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,wCAAwC,GAAG;IACrD,UAAU,EAAE;QACV,QAAQ,EAAE;YACR,CAAC,SAAS,EAAE,MAAM,GAAG,uCAAuC,CAAC;SAC9D,CAAC;QACF,UAAU,EAAE;YACV,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC3B,cAAc,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;SAClC,CAAC;KACH,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,uCAAuC,GAAG,sBAAsB,GAAG;IAC7E,cAAc,EAAE;QACd,CAAC,WAAW,EAAE,MAAM,GAAG,sBAAsB,CAAC;KAC/C,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,yCAAyC,GACjD,wCAAwC,CACxC,uCAAuC,EACvC,wCAAwC,EACxC,wCAAwC,EACxC,uCAAuC,CACxC,GACC;IACA,IAAI,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC;CAChD,CAAC;AAEJ,MAAM,MAAM,wCAAwC,GAAG,yCAAyC,GAAG;IACjG,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;CAC9B,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { ts } from '../../../ast/index.js';
2
+ import type { TypeScriptAngularServicesGeneratorConfig } from './models.js';
3
+ export declare function getReferenceFactories(options: TypeScriptAngularServicesGeneratorConfig): {
4
+ abortablePromise: ts.GenericModuleReferenceFactory<1>;
5
+ waitForResponse: ts.GenericModuleReferenceFactory<1>;
6
+ requestBuilder: ts.ModuleReferenceFactory;
7
+ apiConfiguration: ts.ModuleReferenceFactory;
8
+ apiBaseService: ts.ModuleReferenceFactory;
9
+ httpStatusCode: ts.ModuleReferenceFactory;
10
+ provide: ts.ModuleReferenceFactory;
11
+ };
12
+ //# sourceMappingURL=refs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"refs.d.ts","sourceRoot":"","sources":["../../../../../src/src/generators/services/angular-services/refs.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,EAAE,EAAE,MAAM,uBAAuB,CAAC;AAE3C,OAAO,KAAK,EAAE,wCAAwC,EAAE,MAAM,aAAa,CAAC;AAG5E,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,wCAAwC,GAAG;IACxF,gBAAgB,EAAE,EAAE,CAAC,6BAA6B,CAAC,CAAC,CAAC,CAAC;IACtD,eAAe,EAAE,EAAE,CAAC,6BAA6B,CAAC,CAAC,CAAC,CAAC;IACrD,cAAc,EAAE,EAAE,CAAC,sBAAsB,CAAC;IAC1C,gBAAgB,EAAE,EAAE,CAAC,sBAAsB,CAAC;IAC5C,cAAc,EAAE,EAAE,CAAC,sBAAsB,CAAC;IAC1C,cAAc,EAAE,EAAE,CAAC,sBAAsB,CAAC;IAC1C,OAAO,EAAE,EAAE,CAAC,sBAAsB,CAAC;CACpC,CAoCA"}
@@ -0,0 +1,33 @@
1
+ import { type ApiEndpoint, type ApiSchema, type AppendValueGroup, type MaybePromise } from '@goast/core';
2
+ import { ts } from '../../../ast/index.js';
3
+ import { TypeScriptFileBuilder } from '../../../file-builder.js';
4
+ import { TypeScriptFileGenerator } from '../../file-generator.js';
5
+ import type { TypeScriptEasyNetworkStubGeneratorContext, TypeScriptEasyNetworkStubGeneratorOutput } from './models.js';
6
+ type Context = TypeScriptEasyNetworkStubGeneratorContext;
7
+ type Output = TypeScriptEasyNetworkStubGeneratorOutput;
8
+ type Builder = TypeScriptFileBuilder;
9
+ export interface TypeScriptEasyNetworkStubGenerator<TOutput extends Output = Output> {
10
+ generate(ctx: Context): MaybePromise<TOutput>;
11
+ }
12
+ export declare class DefaultTypeScriptEasyNetworkStubGenerator extends TypeScriptFileGenerator<Context, Output> implements TypeScriptEasyNetworkStubGenerator {
13
+ generate(ctx: Context): MaybePromise<Output>;
14
+ protected getStubFileContent(ctx: Context): AppendValueGroup<Builder>;
15
+ protected getResponderVariable(ctx: Context, endpoint: ApiEndpoint): ts.Variable<Builder>;
16
+ protected getStubClass(ctx: Context): ts.Class<Builder>;
17
+ protected getEndpointRequestsType(ctx: Context, endpoint: ApiEndpoint, options?: {
18
+ readonly?: boolean;
19
+ }): ts.Type<Builder>;
20
+ protected getEndpointStubMethod(ctx: Context, endpoint: ApiEndpoint): ts.Method<Builder>;
21
+ protected getStubFilePath(ctx: Context): string;
22
+ protected getResponderVariableName(ctx: Context, endpoint: ApiEndpoint): string;
23
+ protected getStubClassName(ctx: Context): string;
24
+ protected getEndpointPathPropertyName(ctx: Context, endpoint: ApiEndpoint): string;
25
+ protected getEndpointRequestsFieldName(ctx: Context, endpoint: ApiEndpoint): string;
26
+ protected getEndpointRequestsPropertyName(ctx: Context, endpoint: ApiEndpoint): string;
27
+ protected getEndpointStubMethodName(ctx: Context, endpoint: ApiEndpoint): string;
28
+ protected getStubRoute(ctx: Context, endpoint: ApiEndpoint): string;
29
+ protected getEndpointStatusCodes(ctx: Context, endpoint: ApiEndpoint): Record<number, ts.Type<Builder>>;
30
+ protected getSchemaType(ctx: Context, schema: ApiSchema | undefined, fallback?: ts.Type<Builder>): ts.Type<Builder>;
31
+ }
32
+ export {};
33
+ //# sourceMappingURL=easy-network-stub-generator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"easy-network-stub-generator.d.ts","sourceRoot":"","sources":["../../../../../src/src/generators/services/easy-network-stub/easy-network-stub-generator.ts"],"names":[],"mappings":"AAEA,OAAO,EAEL,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,gBAAgB,EAGrB,KAAK,YAAY,EAElB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,EAAE,EAAE,MAAM,uBAAuB,CAAC;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAClE,OAAO,KAAK,EAAE,yCAAyC,EAAE,wCAAwC,EAAE,MAAM,aAAa,CAAC;AAEvH,KAAK,OAAO,GAAG,yCAAyC,CAAC;AACzD,KAAK,MAAM,GAAG,wCAAwC,CAAC;AACvD,KAAK,OAAO,GAAG,qBAAqB,CAAC;AAErC,MAAM,WAAW,kCAAkC,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM;IACjF,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;CAC/C;AAED,qBAAa,yCAA0C,SAAQ,uBAAuB,CAAC,OAAO,EAAE,MAAM,CACpG,YAAW,kCAAkC;IACtC,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,YAAY,CAAC,MAAM,CAAC;IAiBnD,SAAS,CAAC,kBAAkB,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC;IAOrE,SAAS,CAAC,oBAAoB,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;IAgBzF,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC;IAoDvD,SAAS,CAAC,uBAAuB,CAC/B,GAAG,EAAE,OAAO,EACZ,QAAQ,EAAE,WAAW,EACrB,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;KAAE,GAC/B,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC;IAUnB,SAAS,CAAC,qBAAqB,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;IAiCxF,SAAS,CAAC,eAAe,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAQ/C,SAAS,CAAC,wBAAwB,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,MAAM;IAI/E,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAIhD,SAAS,CAAC,2BAA2B,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,MAAM;IAIlF,SAAS,CAAC,4BAA4B,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,MAAM;IAInF,SAAS,CAAC,+BAA+B,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,MAAM;IAItF,SAAS,CAAC,yBAAyB,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,MAAM;IAIhF,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,MAAM;IAyBnE,SAAS,CAAC,sBAAsB,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;IAYvG,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,GAAG,SAAS,EAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC;CAKpH"}
@@ -0,0 +1,171 @@
1
+ import { resolve } from 'node:path';
2
+ import { adjustCasing, appendValueGroup, builderTemplate as s, toCasing, } from '@goast/core';
3
+ import { ts } from '../../../ast/index.js';
4
+ import { TypeScriptFileBuilder } from '../../../file-builder.js';
5
+ import { TypeScriptFileGenerator } from '../../file-generator.js';
6
+ export class DefaultTypeScriptEasyNetworkStubGenerator extends TypeScriptFileGenerator {
7
+ generate(ctx) {
8
+ const filePath = this.getStubFilePath(ctx);
9
+ const name = this.getStubClassName(ctx);
10
+ TypeScriptFileBuilder.generate({
11
+ logName: `stub ${name}`,
12
+ filePath,
13
+ options: ctx.config,
14
+ generator: (b) => b.append(this.getStubFileContent(ctx)),
15
+ });
16
+ return {
17
+ filePath,
18
+ component: name,
19
+ };
20
+ }
21
+ getStubFileContent(ctx) {
22
+ return appendValueGroup([...ctx.service.endpoints.map((endpoint) => this.getResponderVariable(ctx, endpoint)), this.getStubClass(ctx)], '\n');
23
+ }
24
+ getResponderVariable(ctx, endpoint) {
25
+ return ts.variable(this.getResponderVariableName(ctx, endpoint), {
26
+ readonly: true,
27
+ value: ts.call(ctx.refs.getStubResponder([
28
+ ts.objectType({
29
+ members: Object.entries(this.getEndpointStatusCodes(ctx, endpoint)).map(([statusCode, type]) => ts.property(statusCode, { type })),
30
+ }),
31
+ ]), []),
32
+ });
33
+ }
34
+ getStubClass(ctx) {
35
+ return ts.class(this.getStubClassName(ctx), {
36
+ export: true,
37
+ extends: ctx.refs.easyNetworkStubBase(),
38
+ members: [
39
+ ...ctx.service.endpoints.map((endpoint) => ts.property(this.getEndpointPathPropertyName(ctx, endpoint), {
40
+ static: true,
41
+ readonly: true,
42
+ accessModifier: 'private',
43
+ value: s `${ts.string(this.getStubRoute(ctx, endpoint))} as const`,
44
+ })),
45
+ '\n',
46
+ ...ctx.service.endpoints.map((endpoint) => ts.property(this.getEndpointRequestsFieldName(ctx, endpoint), {
47
+ readonly: true,
48
+ accessModifier: 'private',
49
+ type: this.getEndpointRequestsType(ctx, endpoint),
50
+ value: ts.tuple([]),
51
+ })),
52
+ '\n',
53
+ ...ctx.service.endpoints.map((endpoint) => ts.property(this.getEndpointRequestsPropertyName(ctx, endpoint), {
54
+ readonly: true,
55
+ accessModifier: 'public',
56
+ type: this.getEndpointRequestsType(ctx, endpoint, { readonly: true }),
57
+ get: ts.property.getter({
58
+ body: appendValueGroup([`return this.${this.getEndpointRequestsFieldName(ctx, endpoint)};`], '\n'),
59
+ }),
60
+ })),
61
+ ...ctx.service.endpoints.map((endpoint) => this.getEndpointStubMethod(ctx, endpoint)),
62
+ ts.method('reset', {
63
+ accessModifier: 'public',
64
+ override: true,
65
+ returnType: ts.refs.void_(),
66
+ body: appendValueGroup([
67
+ ...ctx.service.endpoints.map((endpoint) => `this.${this.getEndpointRequestsFieldName(ctx, endpoint)}.length = 0;`),
68
+ 'super.reset();',
69
+ ], '\n'),
70
+ }),
71
+ ],
72
+ });
73
+ }
74
+ getEndpointRequestsType(ctx, endpoint, options) {
75
+ var _a;
76
+ return ts.arrayType(ctx.refs.stubRequestInfo([
77
+ ts.typeof(ts.call([this.getStubClassName(ctx), this.getEndpointPathPropertyName(ctx, endpoint)])),
78
+ this.getSchemaType(ctx, (_a = endpoint.requestBody) === null || _a === void 0 ? void 0 : _a.content[0].schema),
79
+ ]), options);
80
+ }
81
+ getEndpointStubMethod(ctx, endpoint) {
82
+ var _a;
83
+ const requestType = this.getSchemaType(ctx, (_a = endpoint.requestBody) === null || _a === void 0 ? void 0 : _a.content[0].schema);
84
+ return ts.method(this.getEndpointStubMethodName(ctx, endpoint), {
85
+ accessModifier: 'public',
86
+ parameters: [
87
+ ts.parameter('response', {
88
+ type: ctx.refs.strictRouteResponseCallback([
89
+ requestType,
90
+ ts.typeof(ts.call([this.getStubClassName(ctx), this.getEndpointPathPropertyName(ctx, endpoint)])),
91
+ ts.typeof(this.getResponderVariableName(ctx, endpoint)),
92
+ ]),
93
+ }),
94
+ ],
95
+ returnType: 'this',
96
+ body: appendValueGroup([
97
+ s `this.stubWrapper.stub2<${requestType}>()(${s.indent `
98
+ ${ts.string(endpoint.method.toUpperCase())},
99
+ ${this.getStubClassName(ctx)}.${this.getEndpointPathPropertyName(ctx, endpoint)},
100
+ async (request) => {${s.indent `
101
+ if (this.stubWrapper.options.rememberRequests) {${s.indent `
102
+ this.${this.getEndpointRequestsFieldName(ctx, endpoint)}.push(request);`}
103
+ }
104
+ throw await response(${this.getResponderVariableName(ctx, endpoint)}, request);`}
105
+ }`}
106
+ );`,
107
+ 'return this;',
108
+ ], '\n'),
109
+ });
110
+ }
111
+ getStubFilePath(ctx) {
112
+ var _a;
113
+ return resolve(ctx.config.outputDir, ctx.config.stubsDir, `${toCasing(ctx.service.name, (_a = ctx.config.stubFileNameCasing) !== null && _a !== void 0 ? _a : ctx.config.fileNameCasing)}.ts`);
114
+ }
115
+ getResponderVariableName(ctx, endpoint) {
116
+ return toCasing(endpoint.name + '_Responder', ctx.config.propertyNameCasing);
117
+ }
118
+ getStubClassName(ctx) {
119
+ return toCasing(ctx.service.name + '_Stubs', ctx.config.typeNameCasing);
120
+ }
121
+ getEndpointPathPropertyName(ctx, endpoint) {
122
+ return toCasing(endpoint.name + '_Path', ctx.config.constantNameCasing);
123
+ }
124
+ getEndpointRequestsFieldName(ctx, endpoint) {
125
+ return toCasing(endpoint.name + '_Requests', adjustCasing(ctx.config.propertyNameCasing, { prefix: '_' }));
126
+ }
127
+ getEndpointRequestsPropertyName(ctx, endpoint) {
128
+ return toCasing(endpoint.name + '_Requests', ctx.config.propertyNameCasing);
129
+ }
130
+ getEndpointStubMethodName(ctx, endpoint) {
131
+ return toCasing('stub_' + endpoint.name, ctx.config.functionNameCasing);
132
+ }
133
+ getStubRoute(ctx, endpoint) {
134
+ var _a, _b;
135
+ let path = endpoint.path;
136
+ let isFirstQueryParam = true;
137
+ for (const param of endpoint.parameters) {
138
+ 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 : ts.refs.unknown.name)
139
+ .replace(/^readonly /, '');
140
+ const arrayMatch = /^\((.*)\)\[\]$/.exec(type);
141
+ if (arrayMatch !== null) {
142
+ type = `${arrayMatch[1]}[]`;
143
+ }
144
+ if (param.target === 'path') {
145
+ path = path.replace(`{${param.name}}`, `{${param.name}${param.required ? '' : '?'}:${type}}`);
146
+ }
147
+ else if (param.target === 'query') {
148
+ path = path + (isFirstQueryParam ? '?' : '&') + `{${param.name}${param.required ? '' : '?'}:${type}}`;
149
+ isFirstQueryParam = false;
150
+ }
151
+ }
152
+ return path.replace(/^\/+/, '');
153
+ }
154
+ getEndpointStatusCodes(ctx, endpoint) {
155
+ return Object.fromEntries([
156
+ ...Object.entries(ctx.config.defaultStatusCodeResponseTypes).map(([key, value]) => [
157
+ key,
158
+ typeof value === 'function' ? this.getSchemaType(ctx, value(ctx.data.schemas)) : value,
159
+ ]),
160
+ ...endpoint.responses
161
+ .filter((x) => x.statusCode)
162
+ .map((x) => { var _a; return [x.statusCode, this.getSchemaType(ctx, (_a = x.contentOptions[0]) === null || _a === void 0 ? void 0 : _a.schema, ts.refs.never())]; }),
163
+ ]);
164
+ }
165
+ getSchemaType(ctx, schema, fallback) {
166
+ const output = schema && ctx.input.typescript.models[schema.id];
167
+ if (!output)
168
+ return fallback !== null && fallback !== void 0 ? fallback : this.getAnyType(ctx);
169
+ return (b) => b.appendModelUsage(output);
170
+ }
171
+ }
@@ -0,0 +1,28 @@
1
+ import { type ApiService, type AppendValueGroup, Factory, type MaybePromise, type OpenApiGeneratorContext, OpenApiServicesGenerationProviderBase } from '@goast/core';
2
+ import { ts } from '../../../ast/index.js';
3
+ import type { TypeScriptExportOutput } from '../../../common-results.js';
4
+ import { TypeScriptFileBuilder } from '../../../file-builder.js';
5
+ import { type TypeScriptEasyNetworkStubGenerator } from './easy-network-stub-generator.js';
6
+ import { type TypeScriptEasyNetworkStubGeneratorOutput, type TypeScriptEasyNetworkStubsGeneratorConfig, type TypeScriptEasyNetworkStubsGeneratorContext, type TypeScriptEasyNetworkStubsGeneratorInput, type TypeScriptEasyNetworkStubsGeneratorOutput } from './models.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/src/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;AAGrB,OAAO,EAAE,EAAE,EAAE,MAAM,uBAAuB,CAAC;AAC3C,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,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;AAGrB,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"}