@goast/typescript 0.3.12 → 0.4.0-beta1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (536) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +16 -8
  3. package/assets/client/angular/angular-service.utils.ts +1 -1
  4. package/assets/client/angular/request-builder.ts +6 -3
  5. package/assets/client/k6/request-builder.js +13 -6
  6. package/assets/stubs/easy-network-stub/easy-network-stub.utils.ts +4 -5
  7. package/esm/index.d.ts +8 -0
  8. package/esm/index.d.ts.map +1 -0
  9. package/esm/lib/assets.d.ts +2 -0
  10. package/esm/lib/assets.d.ts.map +1 -0
  11. package/esm/lib/assets.js +6 -0
  12. package/{types → esm}/lib/ast/_index.d.ts +39 -38
  13. package/esm/lib/ast/_index.d.ts.map +1 -0
  14. package/esm/lib/ast/_index.js +1 -2
  15. package/{types → esm}/lib/ast/common.d.ts +1 -0
  16. package/esm/lib/ast/common.d.ts.map +1 -0
  17. package/esm/lib/ast/index.d.ts +2 -0
  18. package/esm/lib/ast/index.d.ts.map +1 -0
  19. package/esm/lib/ast/index.js +1 -2
  20. package/{types → esm}/lib/ast/node.d.ts +2 -1
  21. package/esm/lib/ast/node.d.ts.map +1 -0
  22. package/esm/lib/ast/node.js +1 -1
  23. package/{types → esm}/lib/ast/nodes/argument.d.ts +5 -4
  24. package/esm/lib/ast/nodes/argument.d.ts.map +1 -0
  25. package/esm/lib/ast/nodes/argument.js +6 -0
  26. package/{types → esm}/lib/ast/nodes/array-type.d.ts +5 -4
  27. package/esm/lib/ast/nodes/array-type.d.ts.map +1 -0
  28. package/esm/lib/ast/nodes/array-type.js +12 -0
  29. package/{types → esm}/lib/ast/nodes/arrow-function.d.ts +7 -6
  30. package/esm/lib/ast/nodes/arrow-function.d.ts.map +1 -0
  31. package/esm/lib/ast/nodes/arrow-function.js +37 -1
  32. package/{types → esm}/lib/ast/nodes/call.d.ts +6 -5
  33. package/esm/lib/ast/nodes/call.d.ts.map +1 -0
  34. package/esm/lib/ast/nodes/call.js +13 -1
  35. package/{types → esm}/lib/ast/nodes/class.d.ts +12 -11
  36. package/esm/lib/ast/nodes/class.d.ts.map +1 -0
  37. package/esm/lib/ast/nodes/class.js +55 -1
  38. package/{types → esm}/lib/ast/nodes/constructor-parameter.d.ts +5 -4
  39. package/esm/lib/ast/nodes/constructor-parameter.d.ts.map +1 -0
  40. package/esm/lib/ast/nodes/constructor-parameter.js +12 -0
  41. package/{types → esm}/lib/ast/nodes/constructor.d.ts +7 -6
  42. package/esm/lib/ast/nodes/constructor.d.ts.map +1 -0
  43. package/esm/lib/ast/nodes/constructor.js +25 -1
  44. package/{types → esm}/lib/ast/nodes/decorator.d.ts +6 -5
  45. package/esm/lib/ast/nodes/decorator.d.ts.map +1 -0
  46. package/esm/lib/ast/nodes/decorator.js +13 -1
  47. package/{types → esm}/lib/ast/nodes/doc-tag.d.ts +5 -4
  48. package/esm/lib/ast/nodes/doc-tag.d.ts.map +1 -0
  49. package/esm/lib/ast/nodes/doc-tag.js +19 -1
  50. package/{types → esm}/lib/ast/nodes/doc.d.ts +7 -6
  51. package/esm/lib/ast/nodes/doc.d.ts.map +1 -0
  52. package/esm/lib/ast/nodes/doc.js +13 -1
  53. package/{types → esm}/lib/ast/nodes/enum-value.d.ts +5 -4
  54. package/esm/lib/ast/nodes/enum-value.d.ts.map +1 -0
  55. package/esm/lib/ast/nodes/enum-value.js +18 -0
  56. package/{types → esm}/lib/ast/nodes/enum.d.ts +6 -5
  57. package/esm/lib/ast/nodes/enum.d.ts.map +1 -0
  58. package/esm/lib/ast/nodes/enum.js +31 -1
  59. package/{types → esm}/lib/ast/nodes/export.d.ts +5 -4
  60. package/esm/lib/ast/nodes/export.d.ts.map +1 -0
  61. package/esm/lib/ast/nodes/export.js +18 -0
  62. package/{types → esm}/lib/ast/nodes/function-type.d.ts +7 -6
  63. package/esm/lib/ast/nodes/function-type.d.ts.map +1 -0
  64. package/esm/lib/ast/nodes/function-type.js +19 -1
  65. package/{types → esm}/lib/ast/nodes/function.d.ts +9 -8
  66. package/esm/lib/ast/nodes/function.d.ts.map +1 -0
  67. package/esm/lib/ast/nodes/function.js +49 -1
  68. package/{types → esm}/lib/ast/nodes/generic-parameter.d.ts +5 -4
  69. package/esm/lib/ast/nodes/generic-parameter.d.ts.map +1 -0
  70. package/esm/lib/ast/nodes/generic-parameter.js +30 -0
  71. package/{types → esm}/lib/ast/nodes/indexer.d.ts +5 -4
  72. package/esm/lib/ast/nodes/indexer.d.ts.map +1 -0
  73. package/esm/lib/ast/nodes/indexer.js +24 -0
  74. package/{types → esm}/lib/ast/nodes/interface.d.ts +11 -10
  75. package/esm/lib/ast/nodes/interface.d.ts.map +1 -0
  76. package/esm/lib/ast/nodes/interface.js +43 -1
  77. package/{types → esm}/lib/ast/nodes/intersection-type.d.ts +5 -4
  78. package/esm/lib/ast/nodes/intersection-type.d.ts.map +1 -0
  79. package/esm/lib/ast/nodes/intersection-type.js +7 -1
  80. package/{types → esm}/lib/ast/nodes/lookup-type.d.ts +5 -4
  81. package/esm/lib/ast/nodes/lookup-type.d.ts.map +1 -0
  82. package/esm/lib/ast/nodes/lookup-type.js +12 -0
  83. package/{types → esm}/lib/ast/nodes/method.d.ts +10 -9
  84. package/esm/lib/ast/nodes/method.d.ts.map +1 -0
  85. package/esm/lib/ast/nodes/method.js +79 -1
  86. package/{types → esm}/lib/ast/nodes/object-type.d.ts +7 -6
  87. package/esm/lib/ast/nodes/object-type.d.ts.map +1 -0
  88. package/esm/lib/ast/nodes/object-type.js +7 -1
  89. package/{types → esm}/lib/ast/nodes/object.d.ts +6 -5
  90. package/esm/lib/ast/nodes/object.d.ts.map +1 -0
  91. package/esm/lib/ast/nodes/object.js +7 -1
  92. package/{types → esm}/lib/ast/nodes/parameter.d.ts +6 -5
  93. package/esm/lib/ast/nodes/parameter.d.ts.map +1 -0
  94. package/esm/lib/ast/nodes/parameter.js +37 -1
  95. package/{types → esm}/lib/ast/nodes/property-accessor.d.ts +8 -7
  96. package/esm/lib/ast/nodes/property-accessor.d.ts.map +1 -0
  97. package/esm/lib/ast/nodes/property-accessor.js +61 -1
  98. package/{types → esm}/lib/ast/nodes/property.d.ts +13 -12
  99. package/esm/lib/ast/nodes/property.d.ts.map +1 -0
  100. package/esm/lib/ast/nodes/property.js +80 -4
  101. package/{types → esm}/lib/ast/nodes/reference.d.ts +6 -5
  102. package/esm/lib/ast/nodes/reference.d.ts.map +1 -0
  103. package/esm/lib/ast/nodes/reference.js +39 -10
  104. package/{types → esm}/lib/ast/nodes/string.d.ts +4 -3
  105. package/esm/lib/ast/nodes/string.d.ts.map +1 -0
  106. package/esm/lib/ast/nodes/string.js +12 -0
  107. package/{types → esm}/lib/ast/nodes/tuple.d.ts +5 -4
  108. package/esm/lib/ast/nodes/tuple.d.ts.map +1 -0
  109. package/esm/lib/ast/nodes/tuple.js +13 -1
  110. package/{types → esm}/lib/ast/nodes/type-alias.d.ts +7 -6
  111. package/esm/lib/ast/nodes/type-alias.d.ts.map +1 -0
  112. package/esm/lib/ast/nodes/type-alias.js +31 -1
  113. package/{types → esm}/lib/ast/nodes/typeof.d.ts +5 -4
  114. package/esm/lib/ast/nodes/typeof.d.ts.map +1 -0
  115. package/esm/lib/ast/nodes/typeof.js +6 -0
  116. package/esm/lib/ast/nodes/types.d.ts +19 -0
  117. package/esm/lib/ast/nodes/types.d.ts.map +1 -0
  118. package/{types → esm}/lib/ast/nodes/union-type.d.ts +5 -4
  119. package/esm/lib/ast/nodes/union-type.d.ts.map +1 -0
  120. package/esm/lib/ast/nodes/union-type.js +7 -1
  121. package/{types → esm}/lib/ast/nodes/variable.d.ts +6 -5
  122. package/esm/lib/ast/nodes/variable.d.ts.map +1 -0
  123. package/esm/lib/ast/nodes/variable.js +36 -0
  124. package/esm/lib/ast/references/angular.d.ts +58 -0
  125. package/esm/lib/ast/references/angular.d.ts.map +1 -0
  126. package/esm/lib/ast/references/easy-network-stub.d.ts +35 -0
  127. package/esm/lib/ast/references/easy-network-stub.d.ts.map +1 -0
  128. package/esm/lib/ast/references/index.d.ts +6 -0
  129. package/esm/lib/ast/references/index.d.ts.map +1 -0
  130. package/esm/lib/ast/references/index.js +4 -8
  131. package/esm/lib/ast/references/k6.d.ts +25 -0
  132. package/esm/lib/ast/references/k6.d.ts.map +1 -0
  133. package/esm/lib/ast/references/rxjs.d.ts +41 -0
  134. package/esm/lib/ast/references/rxjs.d.ts.map +1 -0
  135. package/esm/lib/ast/references/typescript.d.ts +198 -0
  136. package/esm/lib/ast/references/typescript.d.ts.map +1 -0
  137. package/esm/lib/ast/utils/get-type-script-builder-options.d.ts +4 -0
  138. package/esm/lib/ast/utils/get-type-script-builder-options.d.ts.map +1 -0
  139. package/esm/lib/ast/utils/get-type-script-builder-options.js +1 -1
  140. package/{types → esm}/lib/ast/utils/to-ts-node.d.ts +5 -4
  141. package/esm/lib/ast/utils/to-ts-node.d.ts.map +1 -0
  142. package/esm/lib/ast/utils/write-ts-generic-parameters.d.ts +4 -0
  143. package/esm/lib/ast/utils/write-ts-generic-parameters.d.ts.map +1 -0
  144. package/esm/lib/ast/utils/write-ts-generic-parameters.js +1 -1
  145. package/{types → esm}/lib/ast/utils/write-ts-members.d.ts +3 -2
  146. package/esm/lib/ast/utils/write-ts-members.d.ts.map +1 -0
  147. package/esm/lib/ast/utils/write-ts-members.js +1 -1
  148. package/{types → esm}/lib/ast/utils/write-ts-nodes.d.ts +3 -2
  149. package/esm/lib/ast/utils/write-ts-nodes.d.ts.map +1 -0
  150. package/esm/lib/ast/utils/write-ts-nodes.js +1 -1
  151. package/esm/lib/ast/utils/write-ts-parameters.d.ts +4 -0
  152. package/esm/lib/ast/utils/write-ts-parameters.d.ts.map +1 -0
  153. package/esm/lib/ast/utils/write-ts-parameters.js +1 -1
  154. package/{types → esm}/lib/common-results.d.ts +2 -1
  155. package/esm/lib/common-results.d.ts.map +1 -0
  156. package/{types → esm}/lib/config.d.ts +3 -2
  157. package/esm/lib/config.d.ts.map +1 -0
  158. package/{types → esm}/lib/file-builder.d.ts +6 -5
  159. package/esm/lib/file-builder.d.ts.map +1 -0
  160. package/esm/lib/file-builder.js +15 -3
  161. package/{types → esm}/lib/generators/file-generator.d.ts +4 -3
  162. package/esm/lib/generators/file-generator.d.ts.map +1 -0
  163. package/esm/lib/generators/index.d.ts +7 -0
  164. package/esm/lib/generators/index.d.ts.map +1 -0
  165. package/esm/lib/generators/models/index.d.ts +4 -0
  166. package/esm/lib/generators/models/index.d.ts.map +1 -0
  167. package/{types → esm}/lib/generators/models/model-generator.d.ts +10 -9
  168. package/esm/lib/generators/models/model-generator.d.ts.map +1 -0
  169. package/esm/lib/generators/models/model-generator.js +2 -2
  170. package/{types → esm}/lib/generators/models/models-generator.d.ts +5 -4
  171. package/esm/lib/generators/models/models-generator.d.ts.map +1 -0
  172. package/esm/lib/generators/models/models-generator.js +8 -2
  173. package/{types → esm}/lib/generators/models/models.d.ts +4 -3
  174. package/esm/lib/generators/models/models.d.ts.map +1 -0
  175. package/{types → esm}/lib/generators/services/angular-services/angular-service-generator.d.ts +8 -7
  176. package/esm/lib/generators/services/angular-services/angular-service-generator.d.ts.map +1 -0
  177. package/esm/lib/generators/services/angular-services/angular-service-generator.js +6 -4
  178. package/{types → esm}/lib/generators/services/angular-services/angular-services-generator.d.ts +5 -4
  179. package/esm/lib/generators/services/angular-services/angular-services-generator.d.ts.map +1 -0
  180. package/esm/lib/generators/services/angular-services/angular-services-generator.js +13 -6
  181. package/esm/lib/generators/services/angular-services/index.d.ts +4 -0
  182. package/esm/lib/generators/services/angular-services/index.d.ts.map +1 -0
  183. package/{types → esm}/lib/generators/services/angular-services/models.d.ts +8 -7
  184. package/esm/lib/generators/services/angular-services/models.d.ts.map +1 -0
  185. package/esm/lib/generators/services/angular-services/models.js +62 -3
  186. package/esm/lib/generators/services/angular-services/refs.d.ts +63 -0
  187. package/esm/lib/generators/services/angular-services/refs.d.ts.map +1 -0
  188. package/esm/lib/generators/services/angular-services/refs.js +5 -3
  189. package/{types → esm}/lib/generators/services/easy-network-stub/easy-network-stub-generator.d.ts +6 -5
  190. package/esm/lib/generators/services/easy-network-stub/easy-network-stub-generator.d.ts.map +1 -0
  191. package/esm/lib/generators/services/easy-network-stub/easy-network-stub-generator.js +4 -3
  192. package/{types → esm}/lib/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts +7 -6
  193. package/esm/lib/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts.map +1 -0
  194. package/esm/lib/generators/services/easy-network-stub/easy-network-stubs-generator.js +10 -3
  195. package/esm/lib/generators/services/easy-network-stub/index.d.ts +4 -0
  196. package/esm/lib/generators/services/easy-network-stub/index.d.ts.map +1 -0
  197. package/{types → esm}/lib/generators/services/easy-network-stub/models.d.ts +8 -7
  198. package/esm/lib/generators/services/easy-network-stub/models.d.ts.map +1 -0
  199. package/esm/lib/generators/services/easy-network-stub/refs.d.ts +82 -0
  200. package/esm/lib/generators/services/easy-network-stub/refs.d.ts.map +1 -0
  201. package/esm/lib/generators/services/easy-network-stub/refs.js +4 -2
  202. package/{types → esm}/lib/generators/services/fetch-clients/fetch-client-generator.d.ts +6 -5
  203. package/esm/lib/generators/services/fetch-clients/fetch-client-generator.d.ts.map +1 -0
  204. package/esm/lib/generators/services/fetch-clients/fetch-client-generator.js +3 -5
  205. package/{types → esm}/lib/generators/services/fetch-clients/fetch-clients-generator.d.ts +5 -4
  206. package/esm/lib/generators/services/fetch-clients/fetch-clients-generator.d.ts.map +1 -0
  207. package/esm/lib/generators/services/fetch-clients/fetch-clients-generator.js +12 -6
  208. package/esm/lib/generators/services/fetch-clients/index.d.ts +4 -0
  209. package/esm/lib/generators/services/fetch-clients/index.d.ts.map +1 -0
  210. package/{types → esm}/lib/generators/services/fetch-clients/models.d.ts +6 -5
  211. package/esm/lib/generators/services/fetch-clients/models.d.ts.map +1 -0
  212. package/esm/lib/generators/services/fetch-clients/refs.d.ts +30 -0
  213. package/esm/lib/generators/services/fetch-clients/refs.d.ts.map +1 -0
  214. package/esm/lib/generators/services/fetch-clients/refs.js +1 -1
  215. package/esm/lib/generators/services/k6-clients/index.d.ts +4 -0
  216. package/esm/lib/generators/services/k6-clients/index.d.ts.map +1 -0
  217. package/{types → esm}/lib/generators/services/k6-clients/k6-client-generator.d.ts +10 -9
  218. package/esm/lib/generators/services/k6-clients/k6-client-generator.d.ts.map +1 -0
  219. package/esm/lib/generators/services/k6-clients/k6-client-generator.js +10 -6
  220. package/{types → esm}/lib/generators/services/k6-clients/k6-clients-generator.d.ts +5 -4
  221. package/esm/lib/generators/services/k6-clients/k6-clients-generator.d.ts.map +1 -0
  222. package/esm/lib/generators/services/k6-clients/k6-clients-generator.js +11 -5
  223. package/{types → esm}/lib/generators/services/k6-clients/models.d.ts +8 -7
  224. package/esm/lib/generators/services/k6-clients/models.d.ts.map +1 -0
  225. package/esm/lib/generators/services/k6-clients/models.js +62 -3
  226. package/esm/lib/generators/services/k6-clients/refs.d.ts +21 -0
  227. package/esm/lib/generators/services/k6-clients/refs.d.ts.map +1 -0
  228. package/esm/lib/generators/services/k6-clients/refs.js +1 -1
  229. package/{types → esm}/lib/import-collection.d.ts +4 -3
  230. package/esm/lib/import-collection.d.ts.map +1 -0
  231. package/esm/lib/import-collection.js +38 -7
  232. package/{types → esm}/lib/utils.d.ts +3 -2
  233. package/esm/lib/utils.d.ts.map +1 -0
  234. package/esm/lib/utils.js +4 -1
  235. package/esm/package.json +3 -0
  236. package/package.json +23 -33
  237. package/script/index.d.ts +8 -0
  238. package/script/index.d.ts.map +1 -0
  239. package/script/index.js +10 -0
  240. package/script/lib/assets.d.ts +2 -0
  241. package/script/lib/assets.d.ts.map +1 -0
  242. package/script/lib/assets.js +9 -0
  243. package/script/lib/ast/_index.d.ts +39 -0
  244. package/script/lib/ast/_index.d.ts.map +1 -0
  245. package/script/lib/ast/_index.js +108 -0
  246. package/script/lib/ast/common.d.ts +2 -0
  247. package/script/lib/ast/common.d.ts.map +1 -0
  248. package/script/lib/ast/index.d.ts +2 -0
  249. package/script/lib/ast/index.d.ts.map +1 -0
  250. package/{cjs → script}/lib/ast/index.js +1 -1
  251. package/script/lib/ast/node.d.ts +5 -0
  252. package/script/lib/ast/node.d.ts.map +1 -0
  253. package/script/lib/ast/nodes/argument.d.ts +18 -0
  254. package/script/lib/ast/nodes/argument.d.ts.map +1 -0
  255. package/script/lib/ast/nodes/argument.js +26 -0
  256. package/script/lib/ast/nodes/array-type.d.ts +20 -0
  257. package/script/lib/ast/nodes/array-type.d.ts.map +1 -0
  258. package/{cjs → script}/lib/ast/nodes/array-type.js +17 -5
  259. package/script/lib/ast/nodes/arrow-function.d.ts +30 -0
  260. package/script/lib/ast/nodes/arrow-function.d.ts.map +1 -0
  261. package/{cjs → script}/lib/ast/nodes/arrow-function.js +45 -9
  262. package/script/lib/ast/nodes/call.d.ts +21 -0
  263. package/script/lib/ast/nodes/call.d.ts.map +1 -0
  264. package/script/lib/ast/nodes/call.js +38 -0
  265. package/script/lib/ast/nodes/class.d.ts +42 -0
  266. package/script/lib/ast/nodes/class.d.ts.map +1 -0
  267. package/{cjs → script}/lib/ast/nodes/class.js +68 -14
  268. package/script/lib/ast/nodes/constructor-parameter.d.ts +20 -0
  269. package/script/lib/ast/nodes/constructor-parameter.d.ts.map +1 -0
  270. package/{cjs → script}/lib/ast/nodes/constructor-parameter.js +21 -9
  271. package/script/lib/ast/nodes/constructor.d.ts +26 -0
  272. package/script/lib/ast/nodes/constructor.d.ts.map +1 -0
  273. package/{cjs → script}/lib/ast/nodes/constructor.js +34 -10
  274. package/script/lib/ast/nodes/decorator.d.ts +23 -0
  275. package/script/lib/ast/nodes/decorator.d.ts.map +1 -0
  276. package/{cjs → script}/lib/ast/nodes/decorator.js +19 -7
  277. package/script/lib/ast/nodes/doc-tag.d.ts +74 -0
  278. package/script/lib/ast/nodes/doc-tag.d.ts.map +1 -0
  279. package/{cjs → script}/lib/ast/nodes/doc-tag.js +26 -8
  280. package/script/lib/ast/nodes/doc.d.ts +29 -0
  281. package/script/lib/ast/nodes/doc.d.ts.map +1 -0
  282. package/{cjs → script}/lib/ast/nodes/doc.js +24 -12
  283. package/script/lib/ast/nodes/enum-value.d.ts +22 -0
  284. package/script/lib/ast/nodes/enum-value.d.ts.map +1 -0
  285. package/{cjs → script}/lib/ast/nodes/enum-value.js +23 -5
  286. package/script/lib/ast/nodes/enum.d.ts +27 -0
  287. package/script/lib/ast/nodes/enum.d.ts.map +1 -0
  288. package/{cjs → script}/lib/ast/nodes/enum.js +36 -6
  289. package/script/lib/ast/nodes/export.d.ts +23 -0
  290. package/script/lib/ast/nodes/export.d.ts.map +1 -0
  291. package/{cjs → script}/lib/ast/nodes/export.js +24 -6
  292. package/script/lib/ast/nodes/function-type.d.ts +24 -0
  293. package/script/lib/ast/nodes/function-type.d.ts.map +1 -0
  294. package/{cjs → script}/lib/ast/nodes/function-type.js +27 -9
  295. package/script/lib/ast/nodes/function.d.ts +36 -0
  296. package/script/lib/ast/nodes/function.d.ts.map +1 -0
  297. package/{cjs → script}/lib/ast/nodes/function.js +61 -13
  298. package/script/lib/ast/nodes/generic-parameter.d.ts +26 -0
  299. package/script/lib/ast/nodes/generic-parameter.d.ts.map +1 -0
  300. package/{cjs → script}/lib/ast/nodes/generic-parameter.js +37 -7
  301. package/script/lib/ast/nodes/indexer.d.ts +24 -0
  302. package/script/lib/ast/nodes/indexer.d.ts.map +1 -0
  303. package/script/lib/ast/nodes/indexer.js +56 -0
  304. package/script/lib/ast/nodes/interface.d.ts +37 -0
  305. package/script/lib/ast/nodes/interface.d.ts.map +1 -0
  306. package/{cjs → script}/lib/ast/nodes/interface.js +55 -13
  307. package/script/lib/ast/nodes/intersection-type.d.ts +18 -0
  308. package/script/lib/ast/nodes/intersection-type.d.ts.map +1 -0
  309. package/{cjs → script}/lib/ast/nodes/intersection-type.js +12 -6
  310. package/script/lib/ast/nodes/lookup-type.d.ts +20 -0
  311. package/script/lib/ast/nodes/lookup-type.d.ts.map +1 -0
  312. package/{cjs → script}/lib/ast/nodes/lookup-type.js +18 -6
  313. package/script/lib/ast/nodes/method.d.ts +48 -0
  314. package/script/lib/ast/nodes/method.d.ts.map +1 -0
  315. package/{cjs → script}/lib/ast/nodes/method.js +93 -15
  316. package/script/lib/ast/nodes/object-type.d.ts +21 -0
  317. package/script/lib/ast/nodes/object-type.d.ts.map +1 -0
  318. package/{cjs → script}/lib/ast/nodes/object-type.js +12 -6
  319. package/script/lib/ast/nodes/object.d.ts +20 -0
  320. package/script/lib/ast/nodes/object.d.ts.map +1 -0
  321. package/{cjs → script}/lib/ast/nodes/object.js +12 -6
  322. package/script/lib/ast/nodes/parameter.d.ts +29 -0
  323. package/script/lib/ast/nodes/parameter.d.ts.map +1 -0
  324. package/{cjs → script}/lib/ast/nodes/parameter.js +45 -9
  325. package/script/lib/ast/nodes/property-accessor.d.ts +54 -0
  326. package/script/lib/ast/nodes/property-accessor.d.ts.map +1 -0
  327. package/{cjs → script}/lib/ast/nodes/property-accessor.js +71 -11
  328. package/script/lib/ast/nodes/property.d.ts +85 -0
  329. package/script/lib/ast/nodes/property.d.ts.map +1 -0
  330. package/{cjs → script}/lib/ast/nodes/property.js +96 -20
  331. package/script/lib/ast/nodes/reference.d.ts +65 -0
  332. package/script/lib/ast/nodes/reference.d.ts.map +1 -0
  333. package/{cjs → script}/lib/ast/nodes/reference.js +45 -16
  334. package/script/lib/ast/nodes/string.d.ts +19 -0
  335. package/script/lib/ast/nodes/string.d.ts.map +1 -0
  336. package/{cjs → script}/lib/ast/nodes/string.js +18 -6
  337. package/script/lib/ast/nodes/tuple.d.ts +20 -0
  338. package/script/lib/ast/nodes/tuple.d.ts.map +1 -0
  339. package/{cjs → script}/lib/ast/nodes/tuple.js +17 -5
  340. package/script/lib/ast/nodes/type-alias.d.ts +28 -0
  341. package/script/lib/ast/nodes/type-alias.d.ts.map +1 -0
  342. package/script/lib/ast/nodes/type-alias.js +68 -0
  343. package/script/lib/ast/nodes/typeof.d.ts +19 -0
  344. package/script/lib/ast/nodes/typeof.d.ts.map +1 -0
  345. package/{cjs → script}/lib/ast/nodes/typeof.js +11 -5
  346. package/script/lib/ast/nodes/types.d.ts +19 -0
  347. package/script/lib/ast/nodes/types.d.ts.map +1 -0
  348. package/script/lib/ast/nodes/union-type.d.ts +18 -0
  349. package/script/lib/ast/nodes/union-type.d.ts.map +1 -0
  350. package/{cjs → script}/lib/ast/nodes/union-type.js +12 -6
  351. package/script/lib/ast/nodes/variable.d.ts +29 -0
  352. package/script/lib/ast/nodes/variable.d.ts.map +1 -0
  353. package/script/lib/ast/nodes/variable.js +76 -0
  354. package/script/lib/ast/references/angular.d.ts +58 -0
  355. package/script/lib/ast/references/angular.d.ts.map +1 -0
  356. package/script/lib/ast/references/angular.js +13 -0
  357. package/script/lib/ast/references/easy-network-stub.d.ts +35 -0
  358. package/script/lib/ast/references/easy-network-stub.d.ts.map +1 -0
  359. package/script/lib/ast/references/easy-network-stub.js +10 -0
  360. package/script/lib/ast/references/index.d.ts +6 -0
  361. package/script/lib/ast/references/index.d.ts.map +1 -0
  362. package/script/lib/ast/references/index.js +9 -0
  363. package/script/lib/ast/references/k6.d.ts +25 -0
  364. package/script/lib/ast/references/k6.d.ts.map +1 -0
  365. package/script/lib/ast/references/k6.js +9 -0
  366. package/script/lib/ast/references/rxjs.d.ts +41 -0
  367. package/script/lib/ast/references/rxjs.d.ts.map +1 -0
  368. package/script/lib/ast/references/rxjs.js +9 -0
  369. package/script/lib/ast/references/typescript.d.ts +198 -0
  370. package/script/lib/ast/references/typescript.d.ts.map +1 -0
  371. package/script/lib/ast/references/typescript.js +34 -0
  372. package/script/lib/ast/utils/get-type-script-builder-options.d.ts +4 -0
  373. package/script/lib/ast/utils/get-type-script-builder-options.d.ts.map +1 -0
  374. package/{cjs → script}/lib/ast/utils/get-type-script-builder-options.js +4 -4
  375. package/script/lib/ast/utils/to-ts-node.d.ts +9 -0
  376. package/script/lib/ast/utils/to-ts-node.d.ts.map +1 -0
  377. package/script/lib/ast/utils/to-ts-node.js +23 -0
  378. package/script/lib/ast/utils/write-ts-generic-parameters.d.ts +4 -0
  379. package/script/lib/ast/utils/write-ts-generic-parameters.d.ts.map +1 -0
  380. package/{cjs → script}/lib/ast/utils/write-ts-generic-parameters.js +2 -2
  381. package/script/lib/ast/utils/write-ts-members.d.ts +6 -0
  382. package/script/lib/ast/utils/write-ts-members.d.ts.map +1 -0
  383. package/script/lib/ast/utils/write-ts-members.js +17 -0
  384. package/script/lib/ast/utils/write-ts-nodes.d.ts +7 -0
  385. package/script/lib/ast/utils/write-ts-nodes.d.ts.map +1 -0
  386. package/{cjs → script}/lib/ast/utils/write-ts-nodes.js +2 -2
  387. package/script/lib/ast/utils/write-ts-parameters.d.ts +4 -0
  388. package/script/lib/ast/utils/write-ts-parameters.d.ts.map +1 -0
  389. package/{cjs → script}/lib/ast/utils/write-ts-parameters.js +2 -2
  390. package/script/lib/common-results.d.ts +25 -0
  391. package/script/lib/common-results.d.ts.map +1 -0
  392. package/script/lib/config.d.ts +61 -0
  393. package/script/lib/config.d.ts.map +1 -0
  394. package/script/lib/file-builder.d.ts +34 -0
  395. package/script/lib/file-builder.d.ts.map +1 -0
  396. package/{cjs → script}/lib/file-builder.js +21 -9
  397. package/script/lib/generators/file-generator.d.ts +8 -0
  398. package/script/lib/generators/file-generator.d.ts.map +1 -0
  399. package/{cjs → script}/lib/generators/file-generator.js +2 -2
  400. package/script/lib/generators/index.d.ts +7 -0
  401. package/script/lib/generators/index.d.ts.map +1 -0
  402. package/script/lib/generators/index.js +9 -0
  403. package/script/lib/generators/models/index.d.ts +4 -0
  404. package/script/lib/generators/models/index.d.ts.map +1 -0
  405. package/script/lib/generators/models/index.js +6 -0
  406. package/script/lib/generators/models/model-generator.d.ts +46 -0
  407. package/script/lib/generators/models/model-generator.d.ts.map +1 -0
  408. package/{cjs → script}/lib/generators/models/model-generator.js +63 -63
  409. package/script/lib/generators/models/models-generator.d.ts +23 -0
  410. package/script/lib/generators/models/models-generator.d.ts.map +1 -0
  411. package/{cjs → script}/lib/generators/models/models-generator.js +17 -11
  412. package/script/lib/generators/models/models.d.ts +65 -0
  413. package/script/lib/generators/models/models.d.ts.map +1 -0
  414. package/{cjs → script}/lib/generators/models/models.js +2 -2
  415. package/script/lib/generators/services/angular-services/angular-service-generator.d.ts +39 -0
  416. package/script/lib/generators/services/angular-services/angular-service-generator.d.ts.map +1 -0
  417. package/{cjs → script}/lib/generators/services/angular-services/angular-service-generator.js +62 -60
  418. package/script/lib/generators/services/angular-services/angular-services-generator.d.ts +32 -0
  419. package/script/lib/generators/services/angular-services/angular-services-generator.d.ts.map +1 -0
  420. package/{cjs → script}/lib/generators/services/angular-services/angular-services-generator.js +67 -60
  421. package/script/lib/generators/services/angular-services/index.d.ts +4 -0
  422. package/script/lib/generators/services/angular-services/index.d.ts.map +1 -0
  423. package/script/lib/generators/services/angular-services/index.js +6 -0
  424. package/script/lib/generators/services/angular-services/models.d.ts +142 -0
  425. package/script/lib/generators/services/angular-services/models.d.ts.map +1 -0
  426. package/script/lib/generators/services/angular-services/models.js +89 -0
  427. package/script/lib/generators/services/angular-services/refs.d.ts +63 -0
  428. package/script/lib/generators/services/angular-services/refs.d.ts.map +1 -0
  429. package/script/lib/generators/services/angular-services/refs.js +30 -0
  430. package/script/lib/generators/services/easy-network-stub/easy-network-stub-generator.d.ts +33 -0
  431. package/script/lib/generators/services/easy-network-stub/easy-network-stub-generator.d.ts.map +1 -0
  432. package/{cjs → script}/lib/generators/services/easy-network-stub/easy-network-stub-generator.js +30 -29
  433. package/script/lib/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts +29 -0
  434. package/script/lib/generators/services/easy-network-stub/easy-network-stubs-generator.d.ts.map +1 -0
  435. package/{cjs → script}/lib/generators/services/easy-network-stub/easy-network-stubs-generator.js +39 -32
  436. package/script/lib/generators/services/easy-network-stub/index.d.ts +4 -0
  437. package/script/lib/generators/services/easy-network-stub/index.d.ts.map +1 -0
  438. package/script/lib/generators/services/easy-network-stub/index.js +6 -0
  439. package/script/lib/generators/services/easy-network-stub/models.d.ts +78 -0
  440. package/script/lib/generators/services/easy-network-stub/models.d.ts.map +1 -0
  441. package/{cjs → script}/lib/generators/services/easy-network-stub/models.js +6 -6
  442. package/script/lib/generators/services/easy-network-stub/refs.d.ts +82 -0
  443. package/script/lib/generators/services/easy-network-stub/refs.d.ts.map +1 -0
  444. package/script/lib/generators/services/easy-network-stub/refs.js +30 -0
  445. package/script/lib/generators/services/fetch-clients/fetch-client-generator.d.ts +33 -0
  446. package/script/lib/generators/services/fetch-clients/fetch-client-generator.d.ts.map +1 -0
  447. package/{cjs → script}/lib/generators/services/fetch-clients/fetch-client-generator.js +41 -43
  448. package/script/lib/generators/services/fetch-clients/fetch-clients-generator.d.ts +27 -0
  449. package/script/lib/generators/services/fetch-clients/fetch-clients-generator.d.ts.map +1 -0
  450. package/{cjs → script}/lib/generators/services/fetch-clients/fetch-clients-generator.js +25 -19
  451. package/script/lib/generators/services/fetch-clients/index.d.ts +4 -0
  452. package/script/lib/generators/services/fetch-clients/index.d.ts.map +1 -0
  453. package/script/lib/generators/services/fetch-clients/index.js +6 -0
  454. package/script/lib/generators/services/fetch-clients/models.d.ts +84 -0
  455. package/script/lib/generators/services/fetch-clients/models.d.ts.map +1 -0
  456. package/{cjs → script}/lib/generators/services/fetch-clients/models.js +2 -2
  457. package/script/lib/generators/services/fetch-clients/refs.d.ts +30 -0
  458. package/script/lib/generators/services/fetch-clients/refs.d.ts.map +1 -0
  459. package/script/lib/generators/services/fetch-clients/refs.js +16 -0
  460. package/script/lib/generators/services/k6-clients/index.d.ts +4 -0
  461. package/script/lib/generators/services/k6-clients/index.d.ts.map +1 -0
  462. package/script/lib/generators/services/k6-clients/index.js +6 -0
  463. package/script/lib/generators/services/k6-clients/k6-client-generator.d.ts +40 -0
  464. package/script/lib/generators/services/k6-clients/k6-client-generator.d.ts.map +1 -0
  465. package/{cjs → script}/lib/generators/services/k6-clients/k6-client-generator.js +75 -71
  466. package/script/lib/generators/services/k6-clients/k6-clients-generator.d.ts +28 -0
  467. package/script/lib/generators/services/k6-clients/k6-clients-generator.d.ts.map +1 -0
  468. package/{cjs → script}/lib/generators/services/k6-clients/k6-clients-generator.js +30 -24
  469. package/script/lib/generators/services/k6-clients/models.d.ts +119 -0
  470. package/script/lib/generators/services/k6-clients/models.d.ts.map +1 -0
  471. package/script/lib/generators/services/k6-clients/models.js +87 -0
  472. package/script/lib/generators/services/k6-clients/refs.d.ts +21 -0
  473. package/script/lib/generators/services/k6-clients/refs.d.ts.map +1 -0
  474. package/script/lib/generators/services/k6-clients/refs.js +12 -0
  475. package/script/lib/import-collection.d.ts +42 -0
  476. package/script/lib/import-collection.d.ts.map +1 -0
  477. package/{cjs → script}/lib/import-collection.js +43 -12
  478. package/script/lib/utils.d.ts +8 -0
  479. package/script/lib/utils.d.ts.map +1 -0
  480. package/{cjs → script}/lib/utils.js +6 -3
  481. package/script/package.json +3 -0
  482. package/cjs/index.js +0 -10
  483. package/cjs/lib/ast/_index.js +0 -108
  484. package/cjs/lib/ast/nodes/argument.js +0 -20
  485. package/cjs/lib/ast/nodes/call.js +0 -26
  486. package/cjs/lib/ast/nodes/indexer.js +0 -32
  487. package/cjs/lib/ast/nodes/type-alias.js +0 -38
  488. package/cjs/lib/ast/nodes/variable.js +0 -40
  489. package/cjs/lib/ast/references/angular.js +0 -13
  490. package/cjs/lib/ast/references/easy-network-stub.js +0 -10
  491. package/cjs/lib/ast/references/index.js +0 -9
  492. package/cjs/lib/ast/references/k6.js +0 -9
  493. package/cjs/lib/ast/references/rxjs.js +0 -9
  494. package/cjs/lib/ast/references/typescript.js +0 -34
  495. package/cjs/lib/ast/utils/to-ts-node.js +0 -23
  496. package/cjs/lib/ast/utils/write-ts-members.js +0 -17
  497. package/cjs/lib/generators/index.js +0 -9
  498. package/cjs/lib/generators/models/index.js +0 -6
  499. package/cjs/lib/generators/services/angular-services/index.js +0 -6
  500. package/cjs/lib/generators/services/angular-services/models.js +0 -30
  501. package/cjs/lib/generators/services/angular-services/refs.js +0 -28
  502. package/cjs/lib/generators/services/easy-network-stub/index.js +0 -6
  503. package/cjs/lib/generators/services/easy-network-stub/refs.js +0 -28
  504. package/cjs/lib/generators/services/fetch-clients/index.js +0 -6
  505. package/cjs/lib/generators/services/fetch-clients/refs.js +0 -16
  506. package/cjs/lib/generators/services/k6-clients/index.js +0 -6
  507. package/cjs/lib/generators/services/k6-clients/models.js +0 -28
  508. package/cjs/lib/generators/services/k6-clients/refs.js +0 -12
  509. package/cjs/package.json +0 -1
  510. package/types/index.d.ts +0 -7
  511. package/types/lib/ast/index.d.ts +0 -1
  512. package/types/lib/ast/nodes/types.d.ts +0 -18
  513. package/types/lib/ast/references/angular.d.ts +0 -57
  514. package/types/lib/ast/references/easy-network-stub.d.ts +0 -34
  515. package/types/lib/ast/references/index.d.ts +0 -5
  516. package/types/lib/ast/references/k6.d.ts +0 -24
  517. package/types/lib/ast/references/rxjs.d.ts +0 -40
  518. package/types/lib/ast/references/typescript.d.ts +0 -197
  519. package/types/lib/ast/utils/get-type-script-builder-options.d.ts +0 -3
  520. package/types/lib/ast/utils/write-ts-generic-parameters.d.ts +0 -3
  521. package/types/lib/ast/utils/write-ts-parameters.d.ts +0 -3
  522. package/types/lib/generators/index.d.ts +0 -6
  523. package/types/lib/generators/models/index.d.ts +0 -3
  524. package/types/lib/generators/services/angular-services/index.d.ts +0 -3
  525. package/types/lib/generators/services/angular-services/refs.d.ts +0 -62
  526. package/types/lib/generators/services/easy-network-stub/index.d.ts +0 -3
  527. package/types/lib/generators/services/easy-network-stub/refs.d.ts +0 -81
  528. package/types/lib/generators/services/fetch-clients/index.d.ts +0 -3
  529. package/types/lib/generators/services/fetch-clients/refs.d.ts +0 -29
  530. package/types/lib/generators/services/k6-clients/index.d.ts +0 -3
  531. package/types/lib/generators/services/k6-clients/refs.d.ts +0 -20
  532. /package/{cjs → script}/lib/ast/common.js +0 -0
  533. /package/{cjs → script}/lib/ast/node.js +0 -0
  534. /package/{cjs → script}/lib/ast/nodes/types.js +0 -0
  535. /package/{cjs → script}/lib/common-results.js +0 -0
  536. /package/{cjs → script}/lib/config.js +0 -0
@@ -0,0 +1,33 @@
1
+ import { type ApiEndpoint, type ApiSchema, type AppendValueGroup } from '@goast/core';
2
+ import type { TypeScriptFetchClientGeneratorContext, TypeScriptFetchClientGeneratorOutput } from './models.js';
3
+ import { ts } from '../../../ast/index.js';
4
+ import { TypeScriptFileBuilder } from '../../../file-builder.js';
5
+ import { TypeScriptFileGenerator } from '../../file-generator.js';
6
+ type Context = TypeScriptFetchClientGeneratorContext;
7
+ type Output = TypeScriptFetchClientGeneratorOutput;
8
+ type Builder = TypeScriptFileBuilder;
9
+ export interface TypeScriptFetchClientGenerator<TOutput extends Output = Output> {
10
+ generate(ctx: Context): TOutput;
11
+ }
12
+ export declare class DefaultTypeScriptFetchClientGenerator extends TypeScriptFileGenerator<Context, Output> implements TypeScriptFetchClientGenerator {
13
+ generate(ctx: Context): Output;
14
+ protected getInterfaceFileContent(ctx: Context): AppendValueGroup<Builder>;
15
+ protected getInterface(ctx: Context): ts.Interface<Builder>;
16
+ protected getInterfaceEndpointMethod(ctx: Context, endpoint: ApiEndpoint): ts.Method<Builder>;
17
+ protected getClassFileContent(ctx: Context): AppendValueGroup<Builder>;
18
+ protected getDefaultOptionsConstant(ctx: Context): ts.Variable<Builder>;
19
+ protected getClass(ctx: Context): ts.Class<Builder>;
20
+ protected getServiceMethod(ctx: Context, endpoint: ApiEndpoint): ts.Method<Builder>;
21
+ protected getSchemaType(ctx: Context, schema: ApiSchema | undefined, fallback?: ts.Type<Builder>): ts.Type<Builder>;
22
+ protected shouldGenerateInterface(ctx: Context): boolean;
23
+ protected shouldGenerateClass(ctx: Context): boolean;
24
+ protected getInterfaceName(ctx: Context): string;
25
+ protected getClassName(ctx: Context): string;
26
+ protected getDefaultOptionsConstantName(ctx: Context): string;
27
+ protected getInterfaceFilePath(ctx: Context): string;
28
+ protected getClassFilePath(ctx: Context): string;
29
+ protected getUtilPath(ctx: Context, fileName: string): string;
30
+ private getResponseSchema;
31
+ }
32
+ export {};
33
+ //# sourceMappingURL=fetch-client-generator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetch-client-generator.d.ts","sourceRoot":"","sources":["../../../../../src/lib/generators/services/fetch-clients/fetch-client-generator.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,gBAAgB,EAItB,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAAE,qCAAqC,EAAE,oCAAoC,EAAE,MAAM,aAAa,CAAC;AAC/G,OAAO,EAAE,EAAE,EAAE,MAAM,uBAAuB,CAAC;AAC3C,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAElE,KAAK,OAAO,GAAG,qCAAqC,CAAC;AACrD,KAAK,MAAM,GAAG,oCAAoC,CAAC;AACnD,KAAK,OAAO,GAAG,qBAAqB,CAAC;AAErC,MAAM,WAAW,8BAA8B,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM;IAC7E,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,CAAC;CACjC;AAED,qBAAa,qCAAsC,SAAQ,uBAAuB,CAAC,OAAO,EAAE,MAAM,CAChG,YAAW,8BAA8B;IAClC,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAmCrC,SAAS,CAAC,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC;IAI1E,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC;IAe3D,SAAS,CAAC,0BAA0B,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;IAiC7F,SAAS,CAAC,mBAAmB,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC;IAItE,SAAS,CAAC,yBAAyB,CAAC,GAAG,EAAE,OAAO,GAAG,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC;IAcvE,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC;IAqCnD,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;IA8CnF,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;IAMnH,SAAS,CAAC,uBAAuB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO;IAIxD,SAAS,CAAC,mBAAmB,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO;IAIpD,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAIhD,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAI5C,SAAS,CAAC,6BAA6B,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAI7D,SAAS,CAAC,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAQpD,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAQhD,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM;IAIpD,OAAO,CAAC,iBAAiB;CAK1B"}
@@ -1,18 +1,18 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.DefaultTypeScriptFetchClientGenerator = void 0;
4
- const path_1 = require("path");
4
+ const node_path_1 = require("node:path");
5
5
  const core_1 = require("@goast/core");
6
- const ast_1 = require("../../../ast");
7
- const file_builder_1 = require("../../../file-builder");
8
- const file_generator_1 = require("../../file-generator");
9
- class DefaultTypeScriptFetchClientGenerator extends file_generator_1.TypeScriptFileGenerator {
6
+ const index_js_1 = require("../../../ast/index.js");
7
+ const file_builder_js_1 = require("../../../file-builder.js");
8
+ const file_generator_js_1 = require("../../file-generator.js");
9
+ class DefaultTypeScriptFetchClientGenerator extends file_generator_js_1.TypeScriptFileGenerator {
10
10
  generate(ctx) {
11
11
  const result = {};
12
12
  if (this.shouldGenerateInterface(ctx)) {
13
13
  const filePath = this.getInterfaceFilePath(ctx);
14
14
  const name = this.getInterfaceName(ctx);
15
- file_builder_1.TypeScriptFileBuilder.generate({
15
+ file_builder_js_1.TypeScriptFileBuilder.generate({
16
16
  logName: `interface ${name}`,
17
17
  filePath,
18
18
  options: ctx.config,
@@ -23,7 +23,7 @@ class DefaultTypeScriptFetchClientGenerator extends file_generator_1.TypeScriptF
23
23
  if (this.shouldGenerateClass(ctx)) {
24
24
  const filePath = this.getClassFilePath(ctx);
25
25
  const name = this.getClassName(ctx);
26
- file_builder_1.TypeScriptFileBuilder.generate({
26
+ file_builder_js_1.TypeScriptFileBuilder.generate({
27
27
  logName: `class ${name}`,
28
28
  filePath,
29
29
  options: ctx.config,
@@ -38,13 +38,13 @@ class DefaultTypeScriptFetchClientGenerator extends file_generator_1.TypeScriptF
38
38
  return (0, core_1.appendValueGroup)([this.getInterface(ctx)], '\n');
39
39
  }
40
40
  getInterface(ctx) {
41
- return ast_1.ts.interface(this.getInterfaceName(ctx), {
42
- doc: ast_1.ts.doc({
41
+ return index_js_1.ts.interface(this.getInterfaceName(ctx), {
42
+ doc: index_js_1.ts.doc({
43
43
  description: ctx.service.description,
44
44
  tags: [
45
45
  ctx.service.endpoints.length === 0 || ctx.service.endpoints.some((x) => !x.deprecated)
46
46
  ? null
47
- : ast_1.ts.docTag('deprecated'),
47
+ : index_js_1.ts.docTag('deprecated'),
48
48
  ],
49
49
  }),
50
50
  export: true,
@@ -56,15 +56,15 @@ class DefaultTypeScriptFetchClientGenerator extends file_generator_1.TypeScriptF
56
56
  const params = endpoint.parameters.filter((x) => x.target === 'path' || x.target === 'query');
57
57
  const bodySchema = (_b = (_a = endpoint.requestBody) === null || _a === void 0 ? void 0 : _a.content[0]) === null || _b === void 0 ? void 0 : _b.schema;
58
58
  const responseSchema = this.getResponseSchema(ctx, endpoint);
59
- return ast_1.ts.method((0, core_1.toCasing)(endpoint.name, ctx.config.functionNameCasing), {
60
- doc: ast_1.ts.doc({ description: endpoint.description, tags: [endpoint.deprecated ? ast_1.ts.docTag('deprecated') : null] }),
59
+ return index_js_1.ts.method((0, core_1.toCasing)(endpoint.name, ctx.config.functionNameCasing), {
60
+ doc: index_js_1.ts.doc({ description: endpoint.description, tags: [endpoint.deprecated ? index_js_1.ts.docTag('deprecated') : null] }),
61
61
  parameters: [
62
62
  params.length > 0
63
- ? ast_1.ts.parameter('params', {
63
+ ? index_js_1.ts.parameter('params', {
64
64
  description: 'Parameters for the endpoint.',
65
- type: ast_1.ts.objectType({
66
- members: params.map((x) => ast_1.ts.property((0, core_1.toCasing)(x.name, ctx.config.propertyNameCasing), {
67
- doc: ast_1.ts.doc({ tags: [x.deprecated ? ast_1.ts.docTag('deprecated') : null] }),
65
+ type: index_js_1.ts.objectType({
66
+ members: params.map((x) => index_js_1.ts.property((0, core_1.toCasing)(x.name, ctx.config.propertyNameCasing), {
67
+ doc: index_js_1.ts.doc({ tags: [x.deprecated ? index_js_1.ts.docTag('deprecated') : null] }),
68
68
  type: this.getSchemaType(ctx, x.schema),
69
69
  optional: !x.required,
70
70
  })),
@@ -72,12 +72,12 @@ class DefaultTypeScriptFetchClientGenerator extends file_generator_1.TypeScriptF
72
72
  })
73
73
  : null,
74
74
  bodySchema &&
75
- ast_1.ts.parameter('body', {
75
+ index_js_1.ts.parameter('body', {
76
76
  description: 'Body for the endpoint.',
77
77
  type: this.getSchemaType(ctx, bodySchema),
78
78
  }),
79
79
  ],
80
- returnType: ast_1.ts.refs.promise([ctx.refs.typedResponse([this.getSchemaType(ctx, responseSchema, ast_1.ts.refs.void_())])]),
80
+ returnType: index_js_1.ts.refs.promise([ctx.refs.typedResponse([this.getSchemaType(ctx, responseSchema, index_js_1.ts.refs.void_())])]),
81
81
  });
82
82
  }
83
83
  // #endregion
@@ -86,42 +86,40 @@ class DefaultTypeScriptFetchClientGenerator extends file_generator_1.TypeScriptF
86
86
  return (0, core_1.appendValueGroup)([this.getDefaultOptionsConstant(ctx), this.getClass(ctx)], '\n');
87
87
  }
88
88
  getDefaultOptionsConstant(ctx) {
89
- const baseUrl = ctx.service.endpoints
90
- .map((x) => { var _a, _b, _c; return (_c = (_b = (_a = x.$src) === null || _a === void 0 ? void 0 : _a.document.servers) === null || _b === void 0 ? void 0 : _b.find((x) => x.url)) === null || _c === void 0 ? void 0 : _c.url; })
91
- .find((x) => !!x);
92
- return ast_1.ts.variable(this.getDefaultOptionsConstantName(ctx), {
89
+ const baseUrl = ctx.service.endpoints.map((x) => { var _a, _b, _c; return (_c = (_b = (_a = x.$src) === null || _a === void 0 ? void 0 : _a.document.servers) === null || _b === void 0 ? void 0 : _b.find((x) => x.url)) === null || _c === void 0 ? void 0 : _c.url; }).find((x) => !!x);
90
+ return index_js_1.ts.variable(this.getDefaultOptionsConstantName(ctx), {
93
91
  export: true,
94
92
  readonly: true,
95
93
  type: ctx.refs.fetchClientOptions(),
96
- value: ast_1.ts.object({
97
- members: [baseUrl && ast_1.ts.property('baseUrl', { value: ast_1.ts.string(baseUrl) })],
94
+ value: index_js_1.ts.object({
95
+ members: [baseUrl && index_js_1.ts.property('baseUrl', { value: index_js_1.ts.string(baseUrl) })],
98
96
  }),
99
97
  });
100
98
  }
101
99
  getClass(ctx) {
102
- return ast_1.ts.class(this.getClassName(ctx), {
103
- doc: ast_1.ts.doc({
100
+ return index_js_1.ts.class(this.getClassName(ctx), {
101
+ doc: index_js_1.ts.doc({
104
102
  description: ctx.service.description,
105
103
  tags: [
106
104
  ctx.service.endpoints.length === 0 || ctx.service.endpoints.some((x) => !x.deprecated)
107
105
  ? null
108
- : ast_1.ts.docTag('deprecated'),
106
+ : index_js_1.ts.docTag('deprecated'),
109
107
  ],
110
108
  }),
111
109
  export: true,
112
110
  implements: this.shouldGenerateInterface(ctx)
113
- ? [ast_1.ts.reference(this.getInterfaceName(ctx), this.getInterfaceFilePath(ctx))]
111
+ ? [index_js_1.ts.reference(this.getInterfaceName(ctx), this.getInterfaceFilePath(ctx))]
114
112
  : undefined,
115
113
  members: [
116
- ast_1.ts.property('options', {
117
- doc: ast_1.ts.doc({ description: 'Options for the fetch client.' }),
114
+ index_js_1.ts.property('options', {
115
+ doc: index_js_1.ts.doc({ description: 'Options for the fetch client.' }),
118
116
  accessModifier: 'public',
119
117
  type: ctx.refs.fetchClientOptions(),
120
118
  }),
121
- ast_1.ts.constructor({
119
+ index_js_1.ts.constructor({
122
120
  parameters: [
123
- ast_1.ts.constructorParameter('options', {
124
- type: ast_1.ts.refs.partial([ctx.refs.fetchClientOptions()]),
121
+ index_js_1.ts.constructorParameter('options', {
122
+ type: index_js_1.ts.refs.partial([ctx.refs.fetchClientOptions()]),
125
123
  optional: true,
126
124
  }),
127
125
  ],
@@ -137,22 +135,22 @@ class DefaultTypeScriptFetchClientGenerator extends file_generator_1.TypeScriptF
137
135
  method.accessModifier = 'public';
138
136
  method.body = (0, core_1.appendValueGroup)([
139
137
  (0, core_1.builderTemplate) `const url = new ${ctx.refs.urlBuilder()}(this.options.baseUrl)${core_1.builderTemplate.indent `
140
- .withPath(${ast_1.ts.string(endpoint.path)})${(b) => b.forEach(endpoint.parameters, (b, p) => {
138
+ .withPath(${index_js_1.ts.string(endpoint.path)})${(b) => b.forEach(endpoint.parameters, (b, p) => {
141
139
  switch (p.target) {
142
140
  case 'path':
143
- b.append((0, core_1.builderTemplate) `\n.withPathParam(${ast_1.ts.string(p.name)}, params.${(0, core_1.toCasing)(p.name, ctx.config.paramNameCasing)})`);
141
+ b.append((0, core_1.builderTemplate) `\n.withPathParam(${index_js_1.ts.string(p.name)}, params.${(0, core_1.toCasing)(p.name, ctx.config.paramNameCasing)})`);
144
142
  break;
145
143
  case 'query':
146
- b.append((0, core_1.builderTemplate) `\n.withQueryParam(${ast_1.ts.string(p.name)}, params.${(0, core_1.toCasing)(p.name, ctx.config.paramNameCasing)})`);
144
+ b.append((0, core_1.builderTemplate) `\n.withQueryParam(${index_js_1.ts.string(p.name)}, params.${(0, core_1.toCasing)(p.name, ctx.config.paramNameCasing)})`);
147
145
  break;
148
146
  }
149
147
  })}
150
148
  .build();`}`,
151
- (0, core_1.builderTemplate) `const response = (this.options.fetch ?? fetch)(url, ${ast_1.ts.object({
149
+ (0, core_1.builderTemplate) `const response = (this.options.fetch ?? fetch)(url, ${index_js_1.ts.object({
152
150
  members: [
153
- ast_1.ts.property('method', { value: ast_1.ts.string((0, core_1.toCasing)(endpoint.method, 'all-upper')) }),
154
- ast_1.ts.property('headers', { value: 'this.options.headers' }),
155
- ((_b = (_a = endpoint.requestBody) === null || _a === void 0 ? void 0 : _a.content[0]) === null || _b === void 0 ? void 0 : _b.schema) ? ast_1.ts.property('body', { value: 'JSON.stringify(body)' }) : null,
151
+ index_js_1.ts.property('method', { value: index_js_1.ts.string((0, core_1.toCasing)(endpoint.method, 'all-upper')) }),
152
+ index_js_1.ts.property('headers', { value: 'this.options.headers' }),
153
+ ((_b = (_a = endpoint.requestBody) === null || _a === void 0 ? void 0 : _a.content[0]) === null || _b === void 0 ? void 0 : _b.schema) ? index_js_1.ts.property('body', { value: 'JSON.stringify(body)' }) : null,
156
154
  ],
157
155
  })});`,
158
156
  (0, core_1.builderTemplate) `Object.defineProperty(response, 'isVoidResponse', { value: ${this.getResponseSchema(ctx, endpoint) ? 'false' : 'true'} });`,
@@ -186,14 +184,14 @@ class DefaultTypeScriptFetchClientGenerator extends file_generator_1.TypeScriptF
186
184
  }
187
185
  getInterfaceFilePath(ctx) {
188
186
  var _a, _b;
189
- return (0, path_1.resolve)(ctx.config.outputDir, (_a = ctx.config.clientInterfaceDir) !== null && _a !== void 0 ? _a : ctx.config.clientDir, `${(0, core_1.toCasing)(ctx.service.name, (_b = ctx.config.clientInterfaceFileNameCasing) !== null && _b !== void 0 ? _b : ctx.config.fileNameCasing)}.ts`);
187
+ return (0, node_path_1.resolve)(ctx.config.outputDir, (_a = ctx.config.clientInterfaceDir) !== null && _a !== void 0 ? _a : ctx.config.clientDir, `${(0, core_1.toCasing)(ctx.service.name, (_b = ctx.config.clientInterfaceFileNameCasing) !== null && _b !== void 0 ? _b : ctx.config.fileNameCasing)}.ts`);
190
188
  }
191
189
  getClassFilePath(ctx) {
192
190
  var _a;
193
- return (0, path_1.resolve)(ctx.config.outputDir, ctx.config.clientDir, `${(0, core_1.toCasing)(ctx.service.name, (_a = ctx.config.clientFileNameCasing) !== null && _a !== void 0 ? _a : ctx.config.fileNameCasing)}.ts`);
191
+ return (0, node_path_1.resolve)(ctx.config.outputDir, ctx.config.clientDir, `${(0, core_1.toCasing)(ctx.service.name, (_a = ctx.config.clientFileNameCasing) !== null && _a !== void 0 ? _a : ctx.config.fileNameCasing)}.ts`);
194
192
  }
195
193
  getUtilPath(ctx, fileName) {
196
- return (0, path_1.resolve)(ctx.config.outputDir, ctx.config.utilsDir, fileName);
194
+ return (0, node_path_1.resolve)(ctx.config.outputDir, ctx.config.utilsDir, fileName);
197
195
  }
198
196
  getResponseSchema(ctx, endpoint) {
199
197
  var _a, _b, _c;
@@ -0,0 +1,27 @@
1
+ import { type ApiService, type AppendValueGroup, Factory, type OpenApiGeneratorContext, OpenApiServicesGenerationProviderBase } from '@goast/core';
2
+ import { type TypeScriptFetchClientGenerator } from './fetch-client-generator.js';
3
+ import { type TypeScriptFetchClientGeneratorOutput, type TypeScriptFetchClientsGeneratorConfig, type TypeScriptFetchClientsGeneratorContext, type TypeScriptFetchClientsGeneratorInput, type TypeScriptFetchClientsGeneratorOutput } from './models.js';
4
+ import { TypeScriptFileBuilder } from '../../../file-builder.js';
5
+ type Input = TypeScriptFetchClientsGeneratorInput;
6
+ type Output = TypeScriptFetchClientsGeneratorOutput;
7
+ type Config = TypeScriptFetchClientsGeneratorConfig;
8
+ type ServiceOutput = TypeScriptFetchClientGeneratorOutput;
9
+ type Context = TypeScriptFetchClientsGeneratorContext;
10
+ export declare class TypeScriptFetchClientsGenerator extends OpenApiServicesGenerationProviderBase<Input, Output, Config, ServiceOutput, Context> {
11
+ private readonly _clientGeneratorFactory;
12
+ constructor(clientGeneratorFactory?: Factory<TypeScriptFetchClientGenerator, []>);
13
+ protected initResult(): Output;
14
+ protected buildContext(context: OpenApiGeneratorContext<Input>, config?: Partial<Config> | undefined): Context;
15
+ onGenerate(ctx: Context): Output;
16
+ protected generateService(ctx: Context, service: ApiService): ServiceOutput;
17
+ protected addServiceResult(ctx: Context, service: ApiService, result: ServiceOutput): void;
18
+ protected generateIndexFile(ctx: Context): string | null;
19
+ protected generateInterfaceIndexFile(ctx: Context): string | null;
20
+ protected getIndexFilePath(ctx: Context): string | null;
21
+ protected getInterfaceIndexFilePath(ctx: Context): string | null;
22
+ protected getIndexFileContent(ctx: Context): AppendValueGroup<TypeScriptFileBuilder>;
23
+ protected getInterfaceIndexFileContent(ctx: Context): AppendValueGroup<TypeScriptFileBuilder>;
24
+ private copyUtilsFiles;
25
+ }
26
+ export {};
27
+ //# sourceMappingURL=fetch-clients-generator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fetch-clients-generator.d.ts","sourceRoot":"","sources":["../../../../../src/lib/generators/services/fetch-clients/fetch-clients-generator.ts"],"names":[],"mappings":"AAKA,OAAO,EACL,KAAK,UAAU,EACf,KAAK,gBAAgB,EAErB,OAAO,EAEP,KAAK,uBAAuB,EAC5B,qCAAqC,EACtC,MAAM,aAAa,CAAC;AAErB,OAAO,EAEL,KAAK,8BAA8B,EACpC,MAAM,6BAA6B,CAAC;AACrC,OAAO,EAEL,KAAK,oCAAoC,EACzC,KAAK,qCAAqC,EAC1C,KAAK,sCAAsC,EAC3C,KAAK,oCAAoC,EACzC,KAAK,qCAAqC,EAC3C,MAAM,aAAa,CAAC;AAGrB,OAAO,EAAE,qBAAqB,EAAE,MAAM,0BAA0B,CAAC;AAGjE,KAAK,KAAK,GAAG,oCAAoC,CAAC;AAClD,KAAK,MAAM,GAAG,qCAAqC,CAAC;AACpD,KAAK,MAAM,GAAG,qCAAqC,CAAC;AACpD,KAAK,aAAa,GAAG,oCAAoC,CAAC;AAC1D,KAAK,OAAO,GAAG,sCAAsC,CAAC;AAEtD,qBAAa,+BAAgC,SAAQ,qCAAqC,CACxF,KAAK,EACL,MAAM,EACN,MAAM,EACN,aAAa,EACb,OAAO,CACR;IACC,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAA8C;gBAE1E,sBAAsB,CAAC,EAAE,OAAO,CAAC,8BAA8B,EAAE,EAAE,CAAC;cAM7D,UAAU,IAAI,MAAM;cAYpB,YAAY,CAC7B,OAAO,EAAE,uBAAuB,CAAC,KAAK,CAAC,EACvC,MAAM,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,GAAG,SAAS,GACnC,OAAO;IAOM,UAAU,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;cAQ7B,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,GAAG,aAAa;cAQjE,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,aAAa,GAAG,IAAI;IAInG,SAAS,CAAC,iBAAiB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI;IAaxD,SAAS,CAAC,0BAA0B,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI;IAkBjE,SAAS,CAAC,gBAAgB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI;IAIvD,SAAS,CAAC,yBAAyB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,GAAG,IAAI;IAMhE,SAAS,CAAC,mBAAmB,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,CAAC,qBAAqB,CAAC;IAYpF,SAAS,CAAC,4BAA4B,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,CAAC,qBAAqB,CAAC;IAS7F,OAAO,CAAC,cAAc;CAUvB"}
@@ -2,19 +2,25 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.TypeScriptFetchClientsGenerator = void 0;
4
4
  const tslib_1 = require("tslib");
5
- const path_1 = require("path");
5
+ const node_path_1 = require("node:path");
6
6
  const fs_extra_1 = tslib_1.__importDefault(require("fs-extra"));
7
7
  const core_1 = require("@goast/core");
8
- const fetch_client_generator_1 = require("./fetch-client-generator");
9
- const models_1 = require("./models");
10
- const refs_1 = require("./refs");
11
- const ast_1 = require("../../../ast");
12
- const file_builder_1 = require("../../../file-builder");
8
+ const fetch_client_generator_js_1 = require("./fetch-client-generator.js");
9
+ const models_js_1 = require("./models.js");
10
+ const refs_js_1 = require("./refs.js");
11
+ const index_js_1 = require("../../../ast/index.js");
12
+ const file_builder_js_1 = require("../../../file-builder.js");
13
+ const assets_js_1 = require("../../../assets.js");
13
14
  class TypeScriptFetchClientsGenerator extends core_1.OpenApiServicesGenerationProviderBase {
14
15
  constructor(clientGeneratorFactory) {
15
16
  super();
16
- this._clientGeneratorFactory =
17
- clientGeneratorFactory !== null && clientGeneratorFactory !== void 0 ? clientGeneratorFactory : core_1.Factory.fromValue(new fetch_client_generator_1.DefaultTypeScriptFetchClientGenerator());
17
+ Object.defineProperty(this, "_clientGeneratorFactory", {
18
+ enumerable: true,
19
+ configurable: true,
20
+ writable: true,
21
+ value: void 0
22
+ });
23
+ this._clientGeneratorFactory = clientGeneratorFactory !== null && clientGeneratorFactory !== void 0 ? clientGeneratorFactory : core_1.Factory.fromValue(new fetch_client_generator_js_1.DefaultTypeScriptFetchClientGenerator());
18
24
  }
19
25
  initResult() {
20
26
  return {
@@ -28,9 +34,9 @@ class TypeScriptFetchClientsGenerator extends core_1.OpenApiServicesGenerationPr
28
34
  };
29
35
  }
30
36
  buildContext(context, config) {
31
- const providerContext = this.getProviderContext(context, config, models_1.defaultTypeScriptFetchClientsGeneratorConfig);
37
+ const providerContext = this.getProviderContext(context, config, models_js_1.defaultTypeScriptFetchClientsGeneratorConfig);
32
38
  return Object.assign(providerContext, {
33
- refs: (0, refs_1.getReferenceFactories)(providerContext.config),
39
+ refs: (0, refs_js_1.getReferenceFactories)(providerContext.config),
34
40
  });
35
41
  }
36
42
  onGenerate(ctx) {
@@ -52,7 +58,7 @@ class TypeScriptFetchClientsGenerator extends core_1.OpenApiServicesGenerationPr
52
58
  }
53
59
  generateIndexFile(ctx) {
54
60
  const filePath = this.getIndexFilePath(ctx);
55
- file_builder_1.TypeScriptFileBuilder.tryGenerate({
61
+ file_builder_js_1.TypeScriptFileBuilder.tryGenerate({
56
62
  logName: 'clients index file',
57
63
  filePath,
58
64
  options: ctx.config,
@@ -66,7 +72,7 @@ class TypeScriptFetchClientsGenerator extends core_1.OpenApiServicesGenerationPr
66
72
  if (filePath && filePath === clientsFilePath) {
67
73
  return clientsFilePath;
68
74
  }
69
- file_builder_1.TypeScriptFileBuilder.tryGenerate({
75
+ file_builder_js_1.TypeScriptFileBuilder.tryGenerate({
70
76
  logName: 'client interfaces index file',
71
77
  filePath,
72
78
  options: ctx.config,
@@ -75,11 +81,11 @@ class TypeScriptFetchClientsGenerator extends core_1.OpenApiServicesGenerationPr
75
81
  return filePath;
76
82
  }
77
83
  getIndexFilePath(ctx) {
78
- return ctx.config.clientsIndexFile ? (0, path_1.resolve)(ctx.config.outputDir, ctx.config.clientsIndexFile) : null;
84
+ return ctx.config.clientsIndexFile ? (0, node_path_1.resolve)(ctx.config.outputDir, ctx.config.clientsIndexFile) : null;
79
85
  }
80
86
  getInterfaceIndexFilePath(ctx) {
81
87
  return ctx.config.clientInterfacesIndexFile
82
- ? (0, path_1.resolve)(ctx.config.outputDir, ctx.config.clientInterfacesIndexFile)
88
+ ? (0, node_path_1.resolve)(ctx.config.outputDir, ctx.config.clientInterfacesIndexFile)
83
89
  : null;
84
90
  }
85
91
  getIndexFileContent(ctx) {
@@ -89,21 +95,21 @@ class TypeScriptFetchClientsGenerator extends core_1.OpenApiServicesGenerationPr
89
95
  ? Object.values(ctx.output.typescript.clients).flatMap((c) => [c.client, c.clientInterface])
90
96
  : Object.values(ctx.output.typescript.clients).map((c) => c.client))
91
97
  .filter(core_1.notNullish)
92
- .map((x) => ast_1.ts.export(x.component, x.filePath)));
98
+ .map((x) => index_js_1.ts.export(x.component, x.filePath)));
93
99
  }
94
100
  getInterfaceIndexFileContent(ctx) {
95
101
  return (0, core_1.appendValueGroup)(Object.values(ctx.output.typescript.clients)
96
102
  .map((c) => c.clientInterface)
97
103
  .filter(core_1.notNullish)
98
- .map((x) => ast_1.ts.export(x.component, x.filePath)));
104
+ .map((x) => index_js_1.ts.export(x.component, x.filePath)));
99
105
  }
100
106
  copyUtilsFiles(ctx) {
101
- const sourceDir = (0, path_1.resolve)((0, path_1.dirname)(require.resolve('@goast/typescript')), '../assets/client/fetch');
102
- const targetDir = (0, path_1.resolve)(ctx.config.outputDir, ctx.config.utilsDir);
107
+ const sourceDir = (0, assets_js_1.getAssetPath)('client/fetch');
108
+ const targetDir = (0, node_path_1.resolve)(ctx.config.outputDir, ctx.config.utilsDir);
103
109
  fs_extra_1.default.ensureDirSync(targetDir);
104
110
  const files = fs_extra_1.default.readdirSync(sourceDir);
105
111
  for (const file of files) {
106
- fs_extra_1.default.copyFileSync((0, path_1.resolve)(sourceDir, file), (0, path_1.resolve)(targetDir, file));
112
+ fs_extra_1.default.copyFileSync((0, node_path_1.resolve)(sourceDir, file), (0, node_path_1.resolve)(targetDir, file));
107
113
  }
108
114
  }
109
115
  }
@@ -0,0 +1,4 @@
1
+ export * from './fetch-client-generator.js';
2
+ export * from './fetch-clients-generator.js';
3
+ export * from './models.js';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/lib/generators/services/fetch-clients/index.ts"],"names":[],"mappings":"AAAA,cAAc,6BAA6B,CAAC;AAC5C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,aAAa,CAAC"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./fetch-client-generator.js"), exports);
5
+ tslib_1.__exportStar(require("./fetch-clients-generator.js"), exports);
6
+ tslib_1.__exportStar(require("./models.js"), exports);
@@ -0,0 +1,84 @@
1
+ import type { ApiService, DefaultGenerationProviderConfig, ExtendedStringCasing, Nullable, OpenApiServicesGenerationProviderContext } from '@goast/core';
2
+ import type { getReferenceFactories } from './refs.js';
3
+ import type { TypeScriptExportOutput } from '../../../common-results.js';
4
+ import { type TypeScriptGeneratorConfig } from '../../../config.js';
5
+ import type { TypeScriptModelsGeneratorOutput } from '../../models/models.js';
6
+ export type TypeScriptFetchClientsGeneratorConfig = TypeScriptGeneratorConfig & {
7
+ /**
8
+ * The casing of the client file names. If nullish, the `fileNameCasing` is used.
9
+ * @default { casing: 'kebab', suffix: '-client' }
10
+ */
11
+ clientFileNameCasing: Nullable<ExtendedStringCasing>;
12
+ /**
13
+ * The casing of the client interface file names. If nullish, the `fileNameCasing` is used.
14
+ * @default { casing: 'kebab', suffix: '-client' }
15
+ */
16
+ clientInterfaceFileNameCasing: Nullable<ExtendedStringCasing>;
17
+ /**
18
+ * The casing of the client names. If nullish, the `typeNameCasing` is used.
19
+ * @default { casing: 'pascal', suffix: 'Client' }
20
+ */
21
+ clientNameCasing: Nullable<ExtendedStringCasing>;
22
+ /**
23
+ * The casing of the client interface names. If nullish, the `typeNameCasing` is used.
24
+ * @default { prefix: 'I', casing: 'pascal', suffix: 'Client' }
25
+ */
26
+ clientInterfaceNameCasing: Nullable<ExtendedStringCasing>;
27
+ /**
28
+ * Determines how the client files should be generated.
29
+ * - `interface` - generates only the interface
30
+ * - `class` - generates only the class
31
+ * - `class-and-interface` - generates both the class and the interface
32
+ * @default 'class'
33
+ */
34
+ clientFileKind: 'interface' | 'class' | 'class-and-interface';
35
+ /**
36
+ * The directory where the client files should be saved. The path is relative to the output directory.
37
+ * @default 'clients'
38
+ */
39
+ clientDir: string;
40
+ /**
41
+ * The directory where the client interface files should be saved. The path is relative to the output directory.
42
+ * @default 'clients/interfaces'
43
+ */
44
+ clientInterfaceDir: Nullable<string>;
45
+ /**
46
+ * The index file where all clients should be exported. The path is relative to the output directory. If nullish, no index file will be generated.
47
+ * @default 'clients.ts'
48
+ */
49
+ clientsIndexFile: Nullable<string>;
50
+ /**
51
+ * The index file where all client interfaces should be exported. The path is relative to the output directory. If nullish, no index file will be generated.
52
+ * @default 'clients.ts'
53
+ */
54
+ clientInterfacesIndexFile: Nullable<string>;
55
+ /**
56
+ * The directory where the utilies should be saved. The path is relative to the output directory.
57
+ * @default 'utils'
58
+ */
59
+ utilsDir: string;
60
+ };
61
+ export declare const defaultTypeScriptFetchClientsGeneratorConfig: DefaultGenerationProviderConfig<TypeScriptFetchClientsGeneratorConfig>;
62
+ export type TypeScriptFetchClientsGeneratorInput = TypeScriptModelsGeneratorOutput;
63
+ export type TypeScriptFetchClientsGeneratorOutput = {
64
+ typescript: {
65
+ clients: {
66
+ [serviceId: string]: TypeScriptFetchClientGeneratorOutput;
67
+ };
68
+ indexFiles: {
69
+ clients: Nullable<string>;
70
+ clientInterfaces: Nullable<string>;
71
+ };
72
+ };
73
+ };
74
+ export type TypeScriptFetchClientGeneratorOutput = {
75
+ client?: TypeScriptExportOutput;
76
+ clientInterface?: TypeScriptExportOutput;
77
+ };
78
+ export type TypeScriptFetchClientsGeneratorContext = OpenApiServicesGenerationProviderContext<TypeScriptFetchClientsGeneratorInput, TypeScriptFetchClientsGeneratorOutput, TypeScriptFetchClientsGeneratorConfig, TypeScriptFetchClientGeneratorOutput> & {
79
+ refs: ReturnType<typeof getReferenceFactories>;
80
+ };
81
+ export type TypeScriptFetchClientGeneratorContext = TypeScriptFetchClientsGeneratorContext & {
82
+ readonly service: ApiService;
83
+ };
84
+ //# sourceMappingURL=models.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"models.d.ts","sourceRoot":"","sources":["../../../../../src/lib/generators/services/fetch-clients/models.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,UAAU,EACV,+BAA+B,EAC/B,oBAAoB,EACpB,QAAQ,EACR,wCAAwC,EACzC,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AACvD,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AACzE,OAAO,EAAoC,KAAK,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AACtG,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,wBAAwB,CAAC;AAE9E,MAAM,MAAM,qCAAqC,GAAG,yBAAyB,GAAG;IAC9E;;;OAGG;IACH,oBAAoB,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IAErD;;;OAGG;IACH,6BAA6B,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IAE9D;;;OAGG;IACH,gBAAgB,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IAEjD;;;OAGG;IACH,yBAAyB,EAAE,QAAQ,CAAC,oBAAoB,CAAC,CAAC;IAE1D;;;;;;OAMG;IACH,cAAc,EAAE,WAAW,GAAG,OAAO,GAAG,qBAAqB,CAAC;IAE9D;;;OAGG;IACH,SAAS,EAAE,MAAM,CAAC;IAElB;;;OAGG;IACH,kBAAkB,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAErC;;;OAGG;IACH,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAEnC;;;OAGG;IACH,yBAAyB,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;IAE5C;;;OAGG;IACH,QAAQ,EAAE,MAAM,CAAC;CAClB,CAAC;AAEF,eAAO,MAAM,4CAA4C,EAAE,+BAA+B,CACxF,qCAAqC,CAgBtC,CAAC;AAEF,MAAM,MAAM,oCAAoC,GAAG,+BAA+B,CAAC;AAEnF,MAAM,MAAM,qCAAqC,GAAG;IAClD,UAAU,EAAE;QACV,OAAO,EAAE;YACP,CAAC,SAAS,EAAE,MAAM,GAAG,oCAAoC,CAAC;SAC3D,CAAC;QACF,UAAU,EAAE;YACV,OAAO,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;YAC1B,gBAAgB,EAAE,QAAQ,CAAC,MAAM,CAAC,CAAC;SACpC,CAAC;KACH,CAAC;CACH,CAAC;AAEF,MAAM,MAAM,oCAAoC,GAAG;IACjD,MAAM,CAAC,EAAE,sBAAsB,CAAC;IAChC,eAAe,CAAC,EAAE,sBAAsB,CAAC;CAC1C,CAAC;AAEF,MAAM,MAAM,sCAAsC,GAC9C,wCAAwC,CACxC,oCAAoC,EACpC,qCAAqC,EACrC,qCAAqC,EACrC,oCAAoC,CACrC,GACC;IACA,IAAI,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC;CAChD,CAAC;AAEJ,MAAM,MAAM,qCAAqC,GAAG,sCAAsC,GAAG;IAC3F,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;CAC9B,CAAC"}
@@ -1,9 +1,9 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.defaultTypeScriptFetchClientsGeneratorConfig = void 0;
4
- const config_1 = require("../../../config");
4
+ const config_js_1 = require("../../../config.js");
5
5
  exports.defaultTypeScriptFetchClientsGeneratorConfig = {
6
- ...config_1.defaultTypeScriptGeneratorConfig,
6
+ ...config_js_1.defaultTypeScriptGeneratorConfig,
7
7
  clientFileNameCasing: { casing: 'kebab', suffix: '-client' },
8
8
  clientInterfaceFileNameCasing: undefined,
9
9
  clientNameCasing: { casing: 'pascal', suffix: 'Client' },
@@ -0,0 +1,30 @@
1
+ import type { TypeScriptFetchClientsGeneratorConfig } from './models.js';
2
+ import { ts } from '../../../ast/index.js';
3
+ export declare function getReferenceFactories(options: TypeScriptFetchClientsGeneratorConfig): {
4
+ typedResponse: (<TBuilder extends import("@goast/core").SourceBuilder>(generics: [ts.Type<TBuilder>], options?: {
5
+ importType?: import("@goast/core").Nullable<import("../../../common-results.js").TypeScriptImportType>;
6
+ } | undefined) => ts.Reference<TBuilder, never>) & {
7
+ refName: string;
8
+ moduleNameOrfilePath: import("@goast/core").Nullable<string>;
9
+ infer: <TBuilder extends import("@goast/core").SourceBuilder>() => ts.Reference<TBuilder, never>;
10
+ } & {
11
+ moduleNameOrfilePath: string;
12
+ };
13
+ fetchClientOptions: (<TBuilder extends import("@goast/core").SourceBuilder>(options?: {
14
+ importType?: import("@goast/core").Nullable<import("../../../common-results.js").TypeScriptImportType>;
15
+ }) => ts.Reference<TBuilder, never>) & {
16
+ refName: string;
17
+ moduleNameOrfilePath: import("@goast/core").Nullable<string>;
18
+ } & {
19
+ moduleNameOrfilePath: string;
20
+ };
21
+ urlBuilder: (<TBuilder extends import("@goast/core").SourceBuilder>(options?: {
22
+ importType?: import("@goast/core").Nullable<import("../../../common-results.js").TypeScriptImportType>;
23
+ }) => ts.Reference<TBuilder, never>) & {
24
+ refName: string;
25
+ moduleNameOrfilePath: import("@goast/core").Nullable<string>;
26
+ } & {
27
+ moduleNameOrfilePath: string;
28
+ };
29
+ };
30
+ //# sourceMappingURL=refs.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"refs.d.ts","sourceRoot":"","sources":["../../../../../src/lib/generators/services/fetch-clients/refs.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,qCAAqC,EAAE,MAAM,aAAa,CAAC;AACzE,OAAO,EAAE,EAAE,EAAE,MAAM,uBAAuB,CAAC;AAG3C,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,qCAAqC;;;;;;;;;;;;;;;;;;;;;;;;;;EAUnF"}
@@ -0,0 +1,16 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getReferenceFactories = getReferenceFactories;
4
+ const node_path_1 = require("node:path");
5
+ const index_js_1 = require("../../../ast/index.js");
6
+ // See packages/typescript/assets/client/fetch for reference
7
+ function getReferenceFactories(options) {
8
+ const utilsDirPath = (0, node_path_1.resolve)(options.outputDir, options.utilsDir);
9
+ const fetchClientUtilsPath = (0, node_path_1.resolve)(utilsDirPath, 'fetch-client.utils.ts');
10
+ return {
11
+ // fetch-client.utils.ts
12
+ typedResponse: index_js_1.ts.reference.genericFactory('TypedResponse', fetchClientUtilsPath, { importType: 'type-import' }),
13
+ fetchClientOptions: index_js_1.ts.reference.factory('FetchClientOptions', fetchClientUtilsPath, { importType: 'type-import' }),
14
+ urlBuilder: index_js_1.ts.reference.factory('UrlBuilder', fetchClientUtilsPath),
15
+ };
16
+ }
@@ -0,0 +1,4 @@
1
+ export * from './k6-client-generator.js';
2
+ export * from './k6-clients-generator.js';
3
+ export * from './models.js';
4
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/lib/generators/services/k6-clients/index.ts"],"names":[],"mappings":"AAAA,cAAc,0BAA0B,CAAC;AACzC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,aAAa,CAAC"}
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ const tslib_1 = require("tslib");
4
+ tslib_1.__exportStar(require("./k6-client-generator.js"), exports);
5
+ tslib_1.__exportStar(require("./k6-clients-generator.js"), exports);
6
+ tslib_1.__exportStar(require("./models.js"), exports);
@@ -0,0 +1,40 @@
1
+ import { type ApiEndpoint, type ApiSchema, type AppendValueGroup } from '@goast/core';
2
+ import type { TypeScriptK6ClientGeneratorContext, TypeScriptK6ClientGeneratorOutput } from './models.js';
3
+ import { ts } from '../../../ast/index.js';
4
+ import type { TypeScriptExportOutput } from '../../../common-results.js';
5
+ import { TypeScriptFileBuilder } from '../../../file-builder.js';
6
+ import type { TypeScriptImportOptions } from '../../../import-collection.js';
7
+ import { TypeScriptFileGenerator } from '../../file-generator.js';
8
+ type Context = TypeScriptK6ClientGeneratorContext;
9
+ type Output = TypeScriptK6ClientGeneratorOutput;
10
+ type Builder = TypeScriptFileBuilder;
11
+ export interface TypeScriptK6ClientGenerator<TOutput extends Output = Output> {
12
+ generate(context: Context): TOutput;
13
+ }
14
+ export declare class DefaultTypeScriptK6ClientGenerator extends TypeScriptFileGenerator<Context, Output> implements TypeScriptK6ClientGenerator {
15
+ generate(ctx: TypeScriptK6ClientGeneratorContext): TypeScriptK6ClientGeneratorOutput;
16
+ protected generateResponseModels(ctx: Context): Record<string, TypeScriptExportOutput>;
17
+ protected getResponseModelFileContent(ctx: Context, endpoint: ApiEndpoint): AppendValueGroup<Builder>;
18
+ protected getEndpointStatusCodes(ctx: Context, endpoint: ApiEndpoint): Record<number, {
19
+ type: ts.Type<Builder>;
20
+ }>;
21
+ protected getClientFileContent(ctx: Context): AppendValueGroup<Builder>;
22
+ protected getEndpointParamsType(ctx: Context, endpoint: ApiEndpoint): ts.Doc<Builder>;
23
+ protected getClass(ctx: Context): ts.Class<Builder>;
24
+ protected getEndpointMethod(ctx: Context, endpoint: ApiEndpoint): ts.Method<Builder>;
25
+ protected getGetK6ParamsMethod(ctx: Context): ts.Method<Builder>;
26
+ protected getEndpointSuccessResponse(ctx: Context, endpoint: ApiEndpoint): import("@goast/core").ApiResponse | undefined;
27
+ protected getSchemaType(ctx: Context, schema: ApiSchema | undefined, options?: TypeScriptImportOptions & {
28
+ fallback?: ts.Type<Builder>;
29
+ }): ts.Type<Builder>;
30
+ protected getClassName(ctx: Context): string;
31
+ protected getResponseModelName(ctx: Context, endpoint: ApiEndpoint): string;
32
+ protected getEndpointParamsTypeName(ctx: Context, endpoint: ApiEndpoint): string;
33
+ protected getEndpointPathPropertyName(ctx: Context, endpoint: ApiEndpoint): string;
34
+ protected getEndpointMethodName(ctx: Context, endpoint: ApiEndpoint): string;
35
+ protected getFilePath(ctx: Context): string;
36
+ protected getResponseModelFilePath(ctx: Context): string;
37
+ protected hasEndpointParams(_ctx: Context, endpoint: ApiEndpoint): boolean;
38
+ }
39
+ export {};
40
+ //# sourceMappingURL=k6-client-generator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"k6-client-generator.d.ts","sourceRoot":"","sources":["../../../../../src/lib/generators/services/k6-clients/k6-client-generator.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,KAAK,WAAW,EAChB,KAAK,SAAS,EACd,KAAK,gBAAgB,EAItB,MAAM,aAAa,CAAC;AAErB,OAAO,KAAK,EAAE,kCAAkC,EAAE,iCAAiC,EAAE,MAAM,aAAa,CAAC;AACzG,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,KAAK,EAAE,uBAAuB,EAAE,MAAM,+BAA+B,CAAC;AAC7E,OAAO,EAAE,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAElE,KAAK,OAAO,GAAG,kCAAkC,CAAC;AAClD,KAAK,MAAM,GAAG,iCAAiC,CAAC;AAChD,KAAK,OAAO,GAAG,qBAAqB,CAAC;AAErC,MAAM,WAAW,2BAA2B,CAAC,OAAO,SAAS,MAAM,GAAG,MAAM;IAC1E,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC;CACrC;AAED,qBAAa,kCAAmC,SAAQ,uBAAuB,CAAC,OAAO,EAAE,MAAM,CAC7F,YAAW,2BAA2B;IACtB,QAAQ,CAAC,GAAG,EAAE,kCAAkC,GAAG,iCAAiC;IAqBpG,SAAS,CAAC,sBAAsB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,sBAAsB,CAAC;IAetF,SAAS,CAAC,2BAA2B,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,gBAAgB,CAAC,OAAO,CAAC;IAqErG,SAAS,CAAC,sBAAsB,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,MAAM,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;KAAE,CAAC;IAuBjH,SAAS,CAAC,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,gBAAgB,CAAC,OAAO,CAAC;IAqBvE,SAAS,CAAC,qBAAqB,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,EAAE,CAAC,GAAG,CAAC,OAAO,CAAC;IAmCrF,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,GAAG,EAAE,CAAC,KAAK,CAAC,OAAO,CAAC;IAwCnD,SAAS,CAAC,iBAAiB,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;IAqFpF,SAAS,CAAC,oBAAoB,CAAC,GAAG,EAAE,OAAO,GAAG,EAAE,CAAC,MAAM,CAAC,OAAO,CAAC;IAahE,SAAS,CAAC,0BAA0B,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW;IAOxE,SAAS,CAAC,aAAa,CACrB,GAAG,EAAE,OAAO,EACZ,MAAM,EAAE,SAAS,GAAG,SAAS,EAC7B,OAAO,CAAC,EAAE,uBAAuB,GAAG;QAAE,QAAQ,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;KAAE,GAClE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC;IAMnB,SAAS,CAAC,YAAY,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAI5C,SAAS,CAAC,oBAAoB,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,MAAM;IAI3E,SAAS,CAAC,yBAAyB,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW;IAIvE,SAAS,CAAC,2BAA2B,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,MAAM;IAIlF,SAAS,CAAC,qBAAqB,CAAC,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW,GAAG,MAAM;IAI5E,SAAS,CAAC,WAAW,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAQ3C,SAAS,CAAC,wBAAwB,CAAC,GAAG,EAAE,OAAO,GAAG,MAAM;IAQxD,SAAS,CAAC,iBAAiB,CAAC,IAAI,EAAE,OAAO,EAAE,QAAQ,EAAE,WAAW;CAGjE"}