@geekmidas/cli 0.5.1 → 0.6.1

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 (247) hide show
  1. package/README.md +7 -7
  2. package/dist/{CronGenerator-BPTqNYOR.d.cts → CronGenerator-DWS3CCZt.d.cts} +4 -4
  3. package/dist/{CronGenerator-YAj59JUd.d.mts → CronGenerator-DZjdkEjI.d.mts} +4 -4
  4. package/dist/{EndpointGenerator-ChAD1INz.d.cts → EndpointGenerator-Dh7kMtuL.d.mts} +4 -4
  5. package/dist/{EndpointGenerator-Cj3O1U8-.d.mts → EndpointGenerator-zBsie_7s.d.cts} +4 -4
  6. package/dist/{FunctionGenerator-429-9NER.d.cts → FunctionGenerator-BmDHo27U.d.mts} +4 -4
  7. package/dist/{FunctionGenerator-BQ4ehoID.d.mts → FunctionGenerator-DXjXBxUd.d.cts} +4 -4
  8. package/dist/{Generator-BjHK_qce.d.mts → Generator-BGY-2dgI.d.cts} +3 -3
  9. package/dist/{Generator-DxQMCQp7.d.cts → Generator-yi9DH5TN.d.mts} +3 -3
  10. package/dist/{OpenApiTsGenerator-C4mHHaku.mjs → OpenApiTsGenerator-BVS4pOH7.mjs} +2 -2
  11. package/dist/{OpenApiTsGenerator-C4mHHaku.mjs.map → OpenApiTsGenerator-BVS4pOH7.mjs.map} +1 -1
  12. package/dist/{OpenApiTsGenerator-Be-sKGTT.cjs → OpenApiTsGenerator-gPIIyppX.cjs} +2 -2
  13. package/dist/{OpenApiTsGenerator-Be-sKGTT.cjs.map → OpenApiTsGenerator-gPIIyppX.cjs.map} +1 -1
  14. package/dist/{SubscriberGenerator-7uX42xyG.d.mts → SubscriberGenerator-Bb-z3Kvx.d.cts} +4 -4
  15. package/dist/{SubscriberGenerator-Dtb3HS4i.d.cts → SubscriberGenerator-CwsXqCpS.d.mts} +4 -4
  16. package/dist/{api-BKIN0s0S.mjs → api-Bp5TIl1R.mjs} +29 -46
  17. package/dist/api-Bp5TIl1R.mjs.map +1 -0
  18. package/dist/{api-B3SCEHPf.cjs → api-D4W9-tdZ.cjs} +29 -46
  19. package/dist/api-D4W9-tdZ.cjs.map +1 -0
  20. package/dist/build/index.cjs +5 -3
  21. package/dist/build/index.d.cts +1 -1
  22. package/dist/build/index.d.mts +1 -1
  23. package/dist/build/index.mjs +5 -3
  24. package/dist/build/manifests.cjs +1 -1
  25. package/dist/build/manifests.d.cts +1 -1
  26. package/dist/build/manifests.d.mts +1 -1
  27. package/dist/build/manifests.mjs +1 -1
  28. package/dist/build/providerResolver.d.cts +1 -1
  29. package/dist/build/providerResolver.d.mts +1 -1
  30. package/dist/build/types.d.cts +2 -2
  31. package/dist/build/types.d.mts +2 -2
  32. package/dist/{build-B8C_qHir.mjs → build-Cu6Mi0Lf.mjs} +3 -3
  33. package/dist/{build-B8C_qHir.mjs.map → build-Cu6Mi0Lf.mjs.map} +1 -1
  34. package/dist/{build-D0Wr49bf.cjs → build-wmt8ZcmA.cjs} +3 -3
  35. package/dist/{build-D0Wr49bf.cjs.map → build-wmt8ZcmA.cjs.map} +1 -1
  36. package/dist/{config-CLEDqKO3.cjs → config-BP1IZynR.cjs} +17 -6
  37. package/dist/config-BP1IZynR.cjs.map +1 -0
  38. package/dist/{config-Ba-Gbpbc.d.cts → config-CIzRhm_D.d.mts} +2 -2
  39. package/dist/{config-DBsmMDhf.d.mts → config-CvehIYsb.d.cts} +2 -2
  40. package/dist/{config-Dp8RonV_.mjs → config-UCK12Lrr.mjs} +17 -6
  41. package/dist/config-UCK12Lrr.mjs.map +1 -0
  42. package/dist/config.d.cts +1 -1
  43. package/dist/config.d.mts +1 -1
  44. package/dist/dev/index.cjs +3 -1
  45. package/dist/dev/index.d.cts +2 -2
  46. package/dist/dev/index.d.mts +2 -2
  47. package/dist/dev/index.mjs +3 -1
  48. package/dist/{dev-B734w3L1.mjs → dev-BBPWSllq.mjs} +6 -1
  49. package/dist/dev-BBPWSllq.mjs.map +1 -0
  50. package/dist/{dev-DHqYn8k4.cjs → dev-C2lCgE53.cjs} +6 -1
  51. package/dist/dev-C2lCgE53.cjs.map +1 -0
  52. package/dist/{docker-5d8Yh5_X.cjs → docker-2-ipZDOJ.cjs} +1 -1
  53. package/dist/{docker-5d8Yh5_X.cjs.map → docker-2-ipZDOJ.cjs.map} +1 -1
  54. package/dist/{docker-DlUqdFle.mjs → docker-31GNwU3F.mjs} +1 -1
  55. package/dist/{docker-DlUqdFle.mjs.map → docker-31GNwU3F.mjs.map} +1 -1
  56. package/dist/{env-HfuJRlg5.d.cts → env-CQ3hXAAW.d.mts} +2 -2
  57. package/dist/{env-B-OKjgI4.cjs → env-CS0jvg7k.cjs} +1 -1
  58. package/dist/{env-B-OKjgI4.cjs.map → env-CS0jvg7k.cjs.map} +1 -1
  59. package/dist/{env-nd-iQPYM.d.mts → env-D4YFgMqo.d.cts} +2 -2
  60. package/dist/{env-tv1HlZlw.mjs → env-DEeVOvVu.mjs} +1 -1
  61. package/dist/{env-tv1HlZlw.mjs.map → env-DEeVOvVu.mjs.map} +1 -1
  62. package/dist/generators/CronGenerator.d.cts +4 -4
  63. package/dist/generators/CronGenerator.d.mts +4 -4
  64. package/dist/generators/EndpointGenerator.d.cts +4 -4
  65. package/dist/generators/EndpointGenerator.d.mts +4 -4
  66. package/dist/generators/FunctionGenerator.d.cts +4 -4
  67. package/dist/generators/FunctionGenerator.d.mts +4 -4
  68. package/dist/generators/Generator.d.cts +3 -3
  69. package/dist/generators/Generator.d.mts +3 -3
  70. package/dist/generators/OpenApiTsGenerator.cjs +1 -1
  71. package/dist/generators/OpenApiTsGenerator.mjs +1 -1
  72. package/dist/generators/SubscriberGenerator.d.cts +4 -4
  73. package/dist/generators/SubscriberGenerator.d.mts +4 -4
  74. package/dist/generators/index.d.cts +7 -7
  75. package/dist/generators/index.d.mts +7 -7
  76. package/dist/{index-C523No_B.d.mts → index-DG6xNQMH.d.cts} +25 -8
  77. package/dist/{index-DrzN4xkQ.d.cts → index-DZgrOOOW.d.mts} +25 -8
  78. package/dist/index.cjs +21 -21
  79. package/dist/index.cjs.map +1 -1
  80. package/dist/index.mjs +21 -21
  81. package/dist/index.mjs.map +1 -1
  82. package/dist/init/generators/config.cjs +1 -1
  83. package/dist/init/generators/config.d.cts +2 -2
  84. package/dist/init/generators/config.d.mts +2 -2
  85. package/dist/init/generators/config.mjs +1 -1
  86. package/dist/init/generators/docker.cjs +1 -1
  87. package/dist/init/generators/docker.d.cts +1 -1
  88. package/dist/init/generators/docker.d.mts +1 -1
  89. package/dist/init/generators/docker.mjs +1 -1
  90. package/dist/init/generators/env.cjs +1 -1
  91. package/dist/init/generators/env.d.cts +2 -2
  92. package/dist/init/generators/env.d.mts +2 -2
  93. package/dist/init/generators/env.mjs +1 -1
  94. package/dist/init/generators/index.cjs +9 -4
  95. package/dist/init/generators/index.d.cts +5 -5
  96. package/dist/init/generators/index.d.mts +5 -5
  97. package/dist/init/generators/index.mjs +9 -4
  98. package/dist/init/generators/models.cjs +1 -1
  99. package/dist/init/generators/models.d.cts +1 -1
  100. package/dist/init/generators/models.d.mts +1 -1
  101. package/dist/init/generators/models.mjs +1 -1
  102. package/dist/init/generators/monorepo.cjs +1 -1
  103. package/dist/init/generators/monorepo.d.cts +1 -1
  104. package/dist/init/generators/monorepo.d.mts +1 -1
  105. package/dist/init/generators/monorepo.mjs +1 -1
  106. package/dist/init/generators/package.cjs +6 -1
  107. package/dist/init/generators/package.d.cts +2 -2
  108. package/dist/init/generators/package.d.mts +2 -2
  109. package/dist/init/generators/package.mjs +6 -1
  110. package/dist/init/generators/source.cjs +1 -1
  111. package/dist/init/generators/source.d.cts +2 -2
  112. package/dist/init/generators/source.d.mts +2 -2
  113. package/dist/init/generators/source.mjs +1 -1
  114. package/dist/init/index.cjs +14 -14
  115. package/dist/init/index.d.cts +1 -1
  116. package/dist/init/index.d.mts +1 -1
  117. package/dist/init/index.mjs +14 -14
  118. package/dist/init/templates/api.cjs +1 -1
  119. package/dist/init/templates/api.d.cts +1 -1
  120. package/dist/init/templates/api.d.mts +1 -1
  121. package/dist/init/templates/api.mjs +1 -1
  122. package/dist/init/templates/index.cjs +8 -6
  123. package/dist/init/templates/index.d.cts +2 -2
  124. package/dist/init/templates/index.d.mts +2 -2
  125. package/dist/init/templates/index.mjs +6 -6
  126. package/dist/init/templates/minimal.cjs +1 -1
  127. package/dist/init/templates/minimal.d.cts +1 -1
  128. package/dist/init/templates/minimal.d.mts +1 -1
  129. package/dist/init/templates/minimal.mjs +1 -1
  130. package/dist/init/templates/serverless.cjs +1 -1
  131. package/dist/init/templates/serverless.d.cts +1 -1
  132. package/dist/init/templates/serverless.d.mts +1 -1
  133. package/dist/init/templates/serverless.mjs +1 -1
  134. package/dist/init/templates/worker.cjs +1 -1
  135. package/dist/init/templates/worker.d.cts +1 -1
  136. package/dist/init/templates/worker.d.mts +1 -1
  137. package/dist/init/templates/worker.mjs +1 -1
  138. package/dist/init/utils.cjs +1 -1
  139. package/dist/init/utils.mjs +1 -1
  140. package/dist/{init-CtOnZn3G.mjs → init-BMA7xi8r.mjs} +37 -21
  141. package/dist/init-BMA7xi8r.mjs.map +1 -0
  142. package/dist/{init-qLFsWR-R.cjs → init-D-7WEk-b.cjs} +37 -21
  143. package/dist/init-D-7WEk-b.cjs.map +1 -0
  144. package/dist/{manifests-DIA_2QYd.mjs → manifests-BNKG6AXf.mjs} +1 -1
  145. package/dist/{manifests-DIA_2QYd.mjs.map → manifests-BNKG6AXf.mjs.map} +1 -1
  146. package/dist/{manifests-VJ9-2JpW.cjs → manifests-D13Ej8AE.cjs} +1 -1
  147. package/dist/{manifests-VJ9-2JpW.cjs.map → manifests-D13Ej8AE.cjs.map} +1 -1
  148. package/dist/{minimal-C4GsE45s.mjs → minimal-BkyASH_C.mjs} +15 -9
  149. package/dist/minimal-BkyASH_C.mjs.map +1 -0
  150. package/dist/{minimal-Bdhhpp7v.cjs → minimal-CSFggzdH.cjs} +15 -9
  151. package/dist/minimal-CSFggzdH.cjs.map +1 -0
  152. package/dist/{models-cvNg6Oea.mjs → models-BWlDfviw.mjs} +1 -1
  153. package/dist/{models-cvNg6Oea.mjs.map → models-BWlDfviw.mjs.map} +1 -1
  154. package/dist/{models-DyNwdOcz.cjs → models-BapGSoHC.cjs} +1 -1
  155. package/dist/{models-DyNwdOcz.cjs.map → models-BapGSoHC.cjs.map} +1 -1
  156. package/dist/{monorepo-Cknwzj5C.mjs → monorepo-BBOWhkcd.mjs} +1 -1
  157. package/dist/{monorepo-Cknwzj5C.mjs.map → monorepo-BBOWhkcd.mjs.map} +1 -1
  158. package/dist/{monorepo-sEK8gW59.cjs → monorepo-CFtxHeDh.cjs} +1 -1
  159. package/dist/{monorepo-sEK8gW59.cjs.map → monorepo-CFtxHeDh.cjs.map} +1 -1
  160. package/dist/openapi-DA9RkPJl.mjs +74 -0
  161. package/dist/openapi-DA9RkPJl.mjs.map +1 -0
  162. package/dist/openapi-DZH6RQHk.cjs +98 -0
  163. package/dist/openapi-DZH6RQHk.cjs.map +1 -0
  164. package/dist/{openapi-react-query-DxHjXQvg.cjs → openapi-react-query-Cp-w8_05.cjs} +1 -1
  165. package/dist/{openapi-react-query-DxHjXQvg.cjs.map → openapi-react-query-Cp-w8_05.cjs.map} +1 -1
  166. package/dist/{openapi-react-query-o7Mp1Jd5.mjs → openapi-react-query-_-B3s8v_.mjs} +1 -1
  167. package/dist/{openapi-react-query-o7Mp1Jd5.mjs.map → openapi-react-query-_-B3s8v_.mjs.map} +1 -1
  168. package/dist/openapi-react-query.cjs +1 -1
  169. package/dist/openapi-react-query.mjs +1 -1
  170. package/dist/openapi.cjs +6 -3
  171. package/dist/openapi.d.cts +23 -3
  172. package/dist/openapi.d.mts +23 -3
  173. package/dist/openapi.mjs +3 -3
  174. package/dist/{package-C7WhWU8m.d.mts → package-6h-7QfJZ.d.cts} +2 -2
  175. package/dist/{package-DvWEMz6z.d.cts → package-BCe_KvGv.d.mts} +2 -2
  176. package/dist/{package-CIfmeuSW.mjs → package-C3If80n1.mjs} +7 -1
  177. package/dist/package-C3If80n1.mjs.map +1 -0
  178. package/dist/{package-PP-o1nvq.cjs → package-Dk8IMBOB.cjs} +6 -1
  179. package/dist/package-Dk8IMBOB.cjs.map +1 -0
  180. package/dist/{serverless-Yav3GRVz.cjs → serverless-AGOS-l3G.cjs} +15 -10
  181. package/dist/serverless-AGOS-l3G.cjs.map +1 -0
  182. package/dist/{serverless-DkHBF2vC.mjs → serverless-D5HjJByU.mjs} +15 -10
  183. package/dist/serverless-D5HjJByU.mjs.map +1 -0
  184. package/dist/{source-DT5Xhiob.cjs → source-C1cyfHcF.cjs} +1 -1
  185. package/dist/{source-DT5Xhiob.cjs.map → source-C1cyfHcF.cjs.map} +1 -1
  186. package/dist/{source-D6v2BnKT.d.mts → source-C3LiNUV9.d.mts} +2 -2
  187. package/dist/{source-DnaH_MLA.mjs → source-CkQHBpwu.mjs} +1 -1
  188. package/dist/{source-DnaH_MLA.mjs.map → source-CkQHBpwu.mjs.map} +1 -1
  189. package/dist/{source-D8fK9qRo.d.cts → source-Dtcjbokc.d.cts} +2 -2
  190. package/dist/templates-C0EMmhwb.mjs +88 -0
  191. package/dist/templates-C0EMmhwb.mjs.map +1 -0
  192. package/dist/templates-CbgQ9dw0.cjs +123 -0
  193. package/dist/templates-CbgQ9dw0.cjs.map +1 -0
  194. package/dist/{types-Cxl8-uwV.d.mts → types-Bi7VzDUZ.d.mts} +31 -2
  195. package/dist/{types-C4KITv-y.d.mts → types-D2xYkOal.d.mts} +2 -2
  196. package/dist/{types-DLFN49M3.d.cts → types-DA-r8HWZ.d.cts} +2 -2
  197. package/dist/{types-DB99_qIy.d.cts → types-KmjzMgu8.d.cts} +31 -2
  198. package/dist/types.d.cts +2 -2
  199. package/dist/types.d.mts +2 -2
  200. package/dist/{utils-C31-SWHP.mjs → utils-CKEzCxc1.mjs} +1 -1
  201. package/dist/{utils-C31-SWHP.mjs.map → utils-CKEzCxc1.mjs.map} +1 -1
  202. package/dist/{utils-BX3F4fT8.cjs → utils-DSdN2MTt.cjs} +1 -1
  203. package/dist/{utils-BX3F4fT8.cjs.map → utils-DSdN2MTt.cjs.map} +1 -1
  204. package/dist/{worker--8O5a3Hv.cjs → worker-CGhlqNH-.cjs} +15 -9
  205. package/dist/worker-CGhlqNH-.cjs.map +1 -0
  206. package/dist/{worker-Jme7uOOJ.mjs → worker-CiP420As.mjs} +15 -9
  207. package/dist/worker-CiP420As.mjs.map +1 -0
  208. package/examples/gkm.config.ts +3 -5
  209. package/package.json +4 -4
  210. package/src/__tests__/openapi.spec.ts +395 -302
  211. package/src/dev/__tests__/index.spec.ts +6 -3
  212. package/src/dev/index.ts +18 -0
  213. package/src/generators/OpenApiTsGenerator.ts +1 -1
  214. package/src/init/generators/config.ts +23 -5
  215. package/src/init/generators/package.ts +11 -4
  216. package/src/init/index.ts +26 -7
  217. package/src/init/templates/api.ts +38 -56
  218. package/src/init/templates/index.ts +46 -11
  219. package/src/init/templates/minimal.ts +23 -10
  220. package/src/init/templates/serverless.ts +23 -11
  221. package/src/init/templates/worker.ts +23 -10
  222. package/src/openapi.ts +83 -45
  223. package/src/types.ts +30 -0
  224. package/dist/api-B3SCEHPf.cjs.map +0 -1
  225. package/dist/api-BKIN0s0S.mjs.map +0 -1
  226. package/dist/config-CLEDqKO3.cjs.map +0 -1
  227. package/dist/config-Dp8RonV_.mjs.map +0 -1
  228. package/dist/dev-B734w3L1.mjs.map +0 -1
  229. package/dist/dev-DHqYn8k4.cjs.map +0 -1
  230. package/dist/init-CtOnZn3G.mjs.map +0 -1
  231. package/dist/init-qLFsWR-R.cjs.map +0 -1
  232. package/dist/minimal-Bdhhpp7v.cjs.map +0 -1
  233. package/dist/minimal-C4GsE45s.mjs.map +0 -1
  234. package/dist/openapi-BQWPWyNB.cjs +0 -56
  235. package/dist/openapi-BQWPWyNB.cjs.map +0 -1
  236. package/dist/openapi-DBX8cJJ8.mjs +0 -50
  237. package/dist/openapi-DBX8cJJ8.mjs.map +0 -1
  238. package/dist/package-CIfmeuSW.mjs.map +0 -1
  239. package/dist/package-PP-o1nvq.cjs.map +0 -1
  240. package/dist/serverless-DkHBF2vC.mjs.map +0 -1
  241. package/dist/serverless-Yav3GRVz.cjs.map +0 -1
  242. package/dist/templates-CBFUwpBy.mjs +0 -64
  243. package/dist/templates-CBFUwpBy.mjs.map +0 -1
  244. package/dist/templates-DM_rtYYW.cjs +0 -87
  245. package/dist/templates-DM_rtYYW.cjs.map +0 -1
  246. package/dist/worker--8O5a3Hv.cjs.map +0 -1
  247. package/dist/worker-Jme7uOOJ.mjs.map +0 -1
@@ -1,3 +1,8 @@
1
- const require_package = require('../../package-PP-o1nvq.cjs');
1
+ require('../../api-D4W9-tdZ.cjs');
2
+ require('../../minimal-CSFggzdH.cjs');
3
+ require('../../serverless-AGOS-l3G.cjs');
4
+ require('../../worker-CGhlqNH-.cjs');
5
+ require('../../templates-CbgQ9dw0.cjs');
6
+ const require_package = require('../../package-Dk8IMBOB.cjs');
2
7
 
3
8
  exports.generatePackageJson = require_package.generatePackageJson;
@@ -1,3 +1,3 @@
1
- import "../../index-DrzN4xkQ.cjs";
2
- import { generatePackageJson } from "../../package-DvWEMz6z.cjs";
1
+ import "../../index-DG6xNQMH.cjs";
2
+ import { generatePackageJson } from "../../package-6h-7QfJZ.cjs";
3
3
  export { generatePackageJson };
@@ -1,3 +1,3 @@
1
- import "../../index-C523No_B.mjs";
2
- import { generatePackageJson } from "../../package-C7WhWU8m.mjs";
1
+ import "../../index-DZgrOOOW.mjs";
2
+ import { generatePackageJson } from "../../package-BCe_KvGv.mjs";
3
3
  export { generatePackageJson };
@@ -1,3 +1,8 @@
1
- import { generatePackageJson } from "../../package-CIfmeuSW.mjs";
1
+ import "../../api-Bp5TIl1R.mjs";
2
+ import "../../minimal-BkyASH_C.mjs";
3
+ import "../../serverless-D5HjJByU.mjs";
4
+ import "../../worker-CiP420As.mjs";
5
+ import "../../templates-C0EMmhwb.mjs";
6
+ import { generatePackageJson } from "../../package-C3If80n1.mjs";
2
7
 
3
8
  export { generatePackageJson };
@@ -1,3 +1,3 @@
1
- const require_source = require('../../source-DT5Xhiob.cjs');
1
+ const require_source = require('../../source-C1cyfHcF.cjs');
2
2
 
3
3
  exports.generateSourceFiles = require_source.generateSourceFiles;
@@ -1,3 +1,3 @@
1
- import "../../index-DrzN4xkQ.cjs";
2
- import { generateSourceFiles } from "../../source-D8fK9qRo.cjs";
1
+ import "../../index-DG6xNQMH.cjs";
2
+ import { generateSourceFiles } from "../../source-Dtcjbokc.cjs";
3
3
  export { generateSourceFiles };
@@ -1,3 +1,3 @@
1
- import "../../index-C523No_B.mjs";
2
- import { generateSourceFiles } from "../../source-D6v2BnKT.mjs";
1
+ import "../../index-DZgrOOOW.mjs";
2
+ import { generateSourceFiles } from "../../source-C3LiNUV9.mjs";
3
3
  export { generateSourceFiles };
@@ -1,3 +1,3 @@
1
- import { generateSourceFiles } from "../../source-DnaH_MLA.mjs";
1
+ import { generateSourceFiles } from "../../source-CkQHBpwu.mjs";
2
2
 
3
3
  export { generateSourceFiles };
@@ -1,16 +1,16 @@
1
- require('../config-CLEDqKO3.cjs');
2
- require('../docker-5d8Yh5_X.cjs');
3
- require('../env-B-OKjgI4.cjs');
4
- require('../models-DyNwdOcz.cjs');
5
- require('../monorepo-sEK8gW59.cjs');
6
- require('../package-PP-o1nvq.cjs');
7
- require('../source-DT5Xhiob.cjs');
8
- require('../api-B3SCEHPf.cjs');
9
- require('../minimal-Bdhhpp7v.cjs');
10
- require('../serverless-Yav3GRVz.cjs');
11
- require('../worker--8O5a3Hv.cjs');
12
- require('../templates-DM_rtYYW.cjs');
13
- require('../utils-BX3F4fT8.cjs');
14
- const require_init = require('../init-qLFsWR-R.cjs');
1
+ require('../config-BP1IZynR.cjs');
2
+ require('../docker-2-ipZDOJ.cjs');
3
+ require('../env-CS0jvg7k.cjs');
4
+ require('../models-BapGSoHC.cjs');
5
+ require('../monorepo-CFtxHeDh.cjs');
6
+ require('../api-D4W9-tdZ.cjs');
7
+ require('../minimal-CSFggzdH.cjs');
8
+ require('../serverless-AGOS-l3G.cjs');
9
+ require('../worker-CGhlqNH-.cjs');
10
+ require('../templates-CbgQ9dw0.cjs');
11
+ require('../package-Dk8IMBOB.cjs');
12
+ require('../source-C1cyfHcF.cjs');
13
+ require('../utils-DSdN2MTt.cjs');
14
+ const require_init = require('../init-D-7WEk-b.cjs');
15
15
 
16
16
  exports.initCommand = require_init.initCommand;
@@ -1,4 +1,4 @@
1
- import { TemplateName } from "../index-DrzN4xkQ.cjs";
1
+ import { TemplateName } from "../index-DG6xNQMH.cjs";
2
2
 
3
3
  //#region src/init/index.d.ts
4
4
  interface InitOptions {
@@ -1,4 +1,4 @@
1
- import { TemplateName } from "../index-C523No_B.mjs";
1
+ import { TemplateName } from "../index-DZgrOOOW.mjs";
2
2
 
3
3
  //#region src/init/index.d.ts
4
4
  interface InitOptions {
@@ -1,16 +1,16 @@
1
- import "../config-Dp8RonV_.mjs";
2
- import "../docker-DlUqdFle.mjs";
3
- import "../env-tv1HlZlw.mjs";
4
- import "../models-cvNg6Oea.mjs";
5
- import "../monorepo-Cknwzj5C.mjs";
6
- import "../package-CIfmeuSW.mjs";
7
- import "../source-DnaH_MLA.mjs";
8
- import "../api-BKIN0s0S.mjs";
9
- import "../minimal-C4GsE45s.mjs";
10
- import "../serverless-DkHBF2vC.mjs";
11
- import "../worker-Jme7uOOJ.mjs";
12
- import "../templates-CBFUwpBy.mjs";
13
- import "../utils-C31-SWHP.mjs";
14
- import { initCommand } from "../init-CtOnZn3G.mjs";
1
+ import "../config-UCK12Lrr.mjs";
2
+ import "../docker-31GNwU3F.mjs";
3
+ import "../env-DEeVOvVu.mjs";
4
+ import "../models-BWlDfviw.mjs";
5
+ import "../monorepo-BBOWhkcd.mjs";
6
+ import "../api-Bp5TIl1R.mjs";
7
+ import "../minimal-BkyASH_C.mjs";
8
+ import "../serverless-D5HjJByU.mjs";
9
+ import "../worker-CiP420As.mjs";
10
+ import "../templates-C0EMmhwb.mjs";
11
+ import "../package-C3If80n1.mjs";
12
+ import "../source-CkQHBpwu.mjs";
13
+ import "../utils-CKEzCxc1.mjs";
14
+ import { initCommand } from "../init-BMA7xi8r.mjs";
15
15
 
16
16
  export { initCommand };
@@ -1,3 +1,3 @@
1
- const require_api = require('../../api-B3SCEHPf.cjs');
1
+ const require_api = require('../../api-D4W9-tdZ.cjs');
2
2
 
3
3
  exports.apiTemplate = require_api.apiTemplate;
@@ -1,4 +1,4 @@
1
- import { TemplateConfig } from "../../index-DrzN4xkQ.cjs";
1
+ import { TemplateConfig } from "../../index-DG6xNQMH.cjs";
2
2
 
3
3
  //#region src/init/templates/api.d.ts
4
4
  declare const apiTemplate: TemplateConfig;
@@ -1,4 +1,4 @@
1
- import { TemplateConfig } from "../../index-C523No_B.mjs";
1
+ import { TemplateConfig } from "../../index-DZgrOOOW.mjs";
2
2
 
3
3
  //#region src/init/templates/api.d.ts
4
4
  declare const apiTemplate: TemplateConfig;
@@ -1,3 +1,3 @@
1
- import { apiTemplate } from "../../api-BKIN0s0S.mjs";
1
+ import { apiTemplate } from "../../api-Bp5TIl1R.mjs";
2
2
 
3
3
  export { apiTemplate };
@@ -1,10 +1,12 @@
1
- require('../../api-B3SCEHPf.cjs');
2
- require('../../minimal-Bdhhpp7v.cjs');
3
- require('../../serverless-Yav3GRVz.cjs');
4
- require('../../worker--8O5a3Hv.cjs');
5
- const require_templates = require('../../templates-DM_rtYYW.cjs');
1
+ require('../../api-D4W9-tdZ.cjs');
2
+ require('../../minimal-CSFggzdH.cjs');
3
+ require('../../serverless-AGOS-l3G.cjs');
4
+ require('../../worker-CGhlqNH-.cjs');
5
+ const require_templates = require('../../templates-CbgQ9dw0.cjs');
6
6
 
7
+ exports.OPENAPI_OUTPUT_PATH = require_templates.OPENAPI_OUTPUT_PATH;
7
8
  exports.getTemplate = require_templates.getTemplate;
8
- exports.routeStyleChoices = require_templates.routeStyleChoices;
9
+ exports.loggerTypeChoices = require_templates.loggerTypeChoices;
10
+ exports.routesStructureChoices = require_templates.routesStructureChoices;
9
11
  exports.templateChoices = require_templates.templateChoices;
10
12
  exports.templates = require_templates.templates;
@@ -1,2 +1,2 @@
1
- import { GeneratedFile, RouteStyle, TemplateConfig, TemplateName, TemplateOptions, getTemplate, routeStyleChoices, templateChoices, templates } from "../../index-DrzN4xkQ.cjs";
2
- export { GeneratedFile, RouteStyle, TemplateConfig, TemplateName, TemplateOptions, getTemplate, routeStyleChoices, templateChoices, templates };
1
+ import { GeneratedFile, LoggerType, OPENAPI_OUTPUT_PATH, RoutesStructure, TemplateConfig, TemplateName, TemplateOptions, getTemplate, loggerTypeChoices, routesStructureChoices, templateChoices, templates } from "../../index-DG6xNQMH.cjs";
2
+ export { GeneratedFile, LoggerType, OPENAPI_OUTPUT_PATH, RoutesStructure, TemplateConfig, TemplateName, TemplateOptions, getTemplate, loggerTypeChoices, routesStructureChoices, templateChoices, templates };
@@ -1,2 +1,2 @@
1
- import { GeneratedFile, RouteStyle, TemplateConfig, TemplateName, TemplateOptions, getTemplate, routeStyleChoices, templateChoices, templates } from "../../index-C523No_B.mjs";
2
- export { GeneratedFile, RouteStyle, TemplateConfig, TemplateName, TemplateOptions, getTemplate, routeStyleChoices, templateChoices, templates };
1
+ import { GeneratedFile, LoggerType, OPENAPI_OUTPUT_PATH, RoutesStructure, TemplateConfig, TemplateName, TemplateOptions, getTemplate, loggerTypeChoices, routesStructureChoices, templateChoices, templates } from "../../index-DZgrOOOW.mjs";
2
+ export { GeneratedFile, LoggerType, OPENAPI_OUTPUT_PATH, RoutesStructure, TemplateConfig, TemplateName, TemplateOptions, getTemplate, loggerTypeChoices, routesStructureChoices, templateChoices, templates };
@@ -1,7 +1,7 @@
1
- import "../../api-BKIN0s0S.mjs";
2
- import "../../minimal-C4GsE45s.mjs";
3
- import "../../serverless-DkHBF2vC.mjs";
4
- import "../../worker-Jme7uOOJ.mjs";
5
- import { getTemplate, routeStyleChoices, templateChoices, templates } from "../../templates-CBFUwpBy.mjs";
1
+ import "../../api-Bp5TIl1R.mjs";
2
+ import "../../minimal-BkyASH_C.mjs";
3
+ import "../../serverless-D5HjJByU.mjs";
4
+ import "../../worker-CiP420As.mjs";
5
+ import { OPENAPI_OUTPUT_PATH, getTemplate, loggerTypeChoices, routesStructureChoices, templateChoices, templates } from "../../templates-C0EMmhwb.mjs";
6
6
 
7
- export { getTemplate, routeStyleChoices, templateChoices, templates };
7
+ export { OPENAPI_OUTPUT_PATH, getTemplate, loggerTypeChoices, routesStructureChoices, templateChoices, templates };
@@ -1,3 +1,3 @@
1
- const require_minimal = require('../../minimal-Bdhhpp7v.cjs');
1
+ const require_minimal = require('../../minimal-CSFggzdH.cjs');
2
2
 
3
3
  exports.minimalTemplate = require_minimal.minimalTemplate;
@@ -1,4 +1,4 @@
1
- import { TemplateConfig } from "../../index-DrzN4xkQ.cjs";
1
+ import { TemplateConfig } from "../../index-DG6xNQMH.cjs";
2
2
 
3
3
  //#region src/init/templates/minimal.d.ts
4
4
  declare const minimalTemplate: TemplateConfig;
@@ -1,4 +1,4 @@
1
- import { TemplateConfig } from "../../index-C523No_B.mjs";
1
+ import { TemplateConfig } from "../../index-DZgrOOOW.mjs";
2
2
 
3
3
  //#region src/init/templates/minimal.d.ts
4
4
  declare const minimalTemplate: TemplateConfig;
@@ -1,3 +1,3 @@
1
- import { minimalTemplate } from "../../minimal-C4GsE45s.mjs";
1
+ import { minimalTemplate } from "../../minimal-BkyASH_C.mjs";
2
2
 
3
3
  export { minimalTemplate };
@@ -1,3 +1,3 @@
1
- const require_serverless = require('../../serverless-Yav3GRVz.cjs');
1
+ const require_serverless = require('../../serverless-AGOS-l3G.cjs');
2
2
 
3
3
  exports.serverlessTemplate = require_serverless.serverlessTemplate;
@@ -1,4 +1,4 @@
1
- import { TemplateConfig } from "../../index-DrzN4xkQ.cjs";
1
+ import { TemplateConfig } from "../../index-DG6xNQMH.cjs";
2
2
 
3
3
  //#region src/init/templates/serverless.d.ts
4
4
  declare const serverlessTemplate: TemplateConfig;
@@ -1,4 +1,4 @@
1
- import { TemplateConfig } from "../../index-C523No_B.mjs";
1
+ import { TemplateConfig } from "../../index-DZgrOOOW.mjs";
2
2
 
3
3
  //#region src/init/templates/serverless.d.ts
4
4
  declare const serverlessTemplate: TemplateConfig;
@@ -1,3 +1,3 @@
1
- import { serverlessTemplate } from "../../serverless-DkHBF2vC.mjs";
1
+ import { serverlessTemplate } from "../../serverless-D5HjJByU.mjs";
2
2
 
3
3
  export { serverlessTemplate };
@@ -1,3 +1,3 @@
1
- const require_worker = require('../../worker--8O5a3Hv.cjs');
1
+ const require_worker = require('../../worker-CGhlqNH-.cjs');
2
2
 
3
3
  exports.workerTemplate = require_worker.workerTemplate;
@@ -1,4 +1,4 @@
1
- import { TemplateConfig } from "../../index-DrzN4xkQ.cjs";
1
+ import { TemplateConfig } from "../../index-DG6xNQMH.cjs";
2
2
 
3
3
  //#region src/init/templates/worker.d.ts
4
4
  declare const workerTemplate: TemplateConfig;
@@ -1,4 +1,4 @@
1
- import { TemplateConfig } from "../../index-C523No_B.mjs";
1
+ import { TemplateConfig } from "../../index-DZgrOOOW.mjs";
2
2
 
3
3
  //#region src/init/templates/worker.d.ts
4
4
  declare const workerTemplate: TemplateConfig;
@@ -1,3 +1,3 @@
1
- import { workerTemplate } from "../../worker-Jme7uOOJ.mjs";
1
+ import { workerTemplate } from "../../worker-CiP420As.mjs";
2
2
 
3
3
  export { workerTemplate };
@@ -1,4 +1,4 @@
1
- const require_utils = require('../utils-BX3F4fT8.cjs');
1
+ const require_utils = require('../utils-DSdN2MTt.cjs');
2
2
 
3
3
  exports.checkDirectoryExists = require_utils.checkDirectoryExists;
4
4
  exports.detectPackageManager = require_utils.detectPackageManager;
@@ -1,3 +1,3 @@
1
- import { checkDirectoryExists, detectPackageManager, getInstallCommand, getRunCommand, validateProjectName } from "../utils-C31-SWHP.mjs";
1
+ import { checkDirectoryExists, detectPackageManager, getInstallCommand, getRunCommand, validateProjectName } from "../utils-CKEzCxc1.mjs";
2
2
 
3
3
  export { checkDirectoryExists, detectPackageManager, getInstallCommand, getRunCommand, validateProjectName };
@@ -1,12 +1,12 @@
1
- import { generateConfigFiles } from "./config-Dp8RonV_.mjs";
2
- import { generateDockerFiles } from "./docker-DlUqdFle.mjs";
3
- import { generateEnvFiles } from "./env-tv1HlZlw.mjs";
4
- import { generateModelsPackage } from "./models-cvNg6Oea.mjs";
5
- import { generateMonorepoFiles } from "./monorepo-Cknwzj5C.mjs";
6
- import { generatePackageJson } from "./package-CIfmeuSW.mjs";
7
- import { generateSourceFiles } from "./source-DnaH_MLA.mjs";
8
- import { getTemplate, routeStyleChoices, templateChoices } from "./templates-CBFUwpBy.mjs";
9
- import { checkDirectoryExists, detectPackageManager, getInstallCommand, getRunCommand, validateProjectName } from "./utils-C31-SWHP.mjs";
1
+ import { generateConfigFiles } from "./config-UCK12Lrr.mjs";
2
+ import { generateDockerFiles } from "./docker-31GNwU3F.mjs";
3
+ import { generateEnvFiles } from "./env-DEeVOvVu.mjs";
4
+ import { generateModelsPackage } from "./models-BWlDfviw.mjs";
5
+ import { generateMonorepoFiles } from "./monorepo-BBOWhkcd.mjs";
6
+ import { getTemplate, loggerTypeChoices, routesStructureChoices, templateChoices } from "./templates-C0EMmhwb.mjs";
7
+ import { generatePackageJson } from "./package-C3If80n1.mjs";
8
+ import { generateSourceFiles } from "./source-CkQHBpwu.mjs";
9
+ import { checkDirectoryExists, detectPackageManager, getInstallCommand, getRunCommand, validateProjectName } from "./utils-CKEzCxc1.mjs";
10
10
  import { mkdir, writeFile } from "node:fs/promises";
11
11
  import { dirname, join } from "node:path";
12
12
  import { execSync } from "node:child_process";
@@ -58,9 +58,16 @@ async function initCommand(projectName, options = {}) {
58
58
  },
59
59
  {
60
60
  type: options.yes ? null : "select",
61
- name: "routeStyle",
62
- message: "Route organization:",
63
- choices: routeStyleChoices,
61
+ name: "loggerType",
62
+ message: "Logger:",
63
+ choices: loggerTypeChoices,
64
+ initial: 0
65
+ },
66
+ {
67
+ type: options.yes ? null : "select",
68
+ name: "routesStructure",
69
+ message: "Routes structure:",
70
+ choices: routesStructureChoices,
64
71
  initial: 0
65
72
  },
66
73
  {
@@ -99,7 +106,8 @@ async function initCommand(projectName, options = {}) {
99
106
  template: options.template || answers.template || "minimal",
100
107
  telescope: options.yes ? true : answers.telescope ?? true,
101
108
  database: options.yes ? true : answers.database ?? true,
102
- routeStyle: options.yes ? "file-based" : answers.routeStyle ?? "file-based",
109
+ loggerType: options.yes ? "pino" : answers.loggerType ?? "pino",
110
+ routesStructure: options.yes ? "centralized-endpoints" : answers.routesStructure ?? "centralized-endpoints",
103
111
  monorepo,
104
112
  apiPath: monorepo ? options.apiPath ?? answers.apiPath ?? "apps/api" : ""
105
113
  };
@@ -129,17 +137,25 @@ async function initCommand(projectName, options = {}) {
129
137
  await mkdir(dirname(fullPath), { recursive: true });
130
138
  await writeFile(fullPath, content);
131
139
  }
132
- if (!options.skipInstall) try {
133
- execSync(getInstallCommand(pkgManager), {
134
- cwd: targetDir,
135
- stdio: "inherit"
136
- });
137
- } catch {
138
- console.error("\n Warning: Failed to install dependencies.");
140
+ if (!options.skipInstall) {
141
+ try {
142
+ execSync(getInstallCommand(pkgManager), {
143
+ cwd: targetDir,
144
+ stdio: "inherit"
145
+ });
146
+ } catch {
147
+ console.error("\n Warning: Failed to install dependencies.");
148
+ }
149
+ try {
150
+ execSync("npx @biomejs/biome format --write --unsafe .", {
151
+ cwd: targetDir,
152
+ stdio: "inherit"
153
+ });
154
+ } catch {}
139
155
  }
140
156
  const devCommand = getRunCommand(pkgManager, "dev");
141
157
  }
142
158
 
143
159
  //#endregion
144
160
  export { initCommand };
145
- //# sourceMappingURL=init-CtOnZn3G.mjs.map
161
+ //# sourceMappingURL=init-BMA7xi8r.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init-BMA7xi8r.mjs","names":["projectName?: string","options: InitOptions","value: string","templateOptions: TemplateOptions"],"sources":["../src/init/index.ts"],"sourcesContent":["import { execSync } from 'node:child_process';\nimport { mkdir, writeFile } from 'node:fs/promises';\nimport { dirname, join } from 'node:path';\nimport prompts from 'prompts';\nimport { generateConfigFiles } from './generators/config.js';\nimport { generateDockerFiles } from './generators/docker.js';\nimport { generateEnvFiles } from './generators/env.js';\nimport { generateModelsPackage } from './generators/models.js';\nimport { generateMonorepoFiles } from './generators/monorepo.js';\nimport { generatePackageJson } from './generators/package.js';\nimport { generateSourceFiles } from './generators/source.js';\nimport {\n type TemplateName,\n type TemplateOptions,\n getTemplate,\n loggerTypeChoices,\n routesStructureChoices,\n templateChoices,\n} from './templates/index.js';\nimport {\n checkDirectoryExists,\n detectPackageManager,\n getInstallCommand,\n getRunCommand,\n validateProjectName,\n} from './utils.js';\n\nexport interface InitOptions {\n template?: TemplateName;\n skipInstall?: boolean;\n yes?: boolean;\n monorepo?: boolean;\n apiPath?: string;\n}\n\n/**\n * Main init command - scaffolds a new project\n */\nexport async function initCommand(\n projectName?: string,\n options: InitOptions = {},\n): Promise<void> {\n const cwd = process.cwd();\n const pkgManager = detectPackageManager(cwd);\n\n // Handle Ctrl+C gracefully\n prompts.override({});\n const onCancel = () => {\n process.exit(0);\n };\n\n // Gather answers via prompts\n const answers = await prompts(\n [\n {\n type: projectName ? null : 'text',\n name: 'name',\n message: 'Project name:',\n initial: 'my-api',\n validate: (value: string) => {\n const nameValid = validateProjectName(value);\n if (nameValid !== true) return nameValid;\n const dirValid = checkDirectoryExists(value, cwd);\n if (dirValid !== true) return dirValid;\n return true;\n },\n },\n {\n type: options.template || options.yes ? null : 'select',\n name: 'template',\n message: 'Template:',\n choices: templateChoices,\n initial: 0,\n },\n {\n type: options.yes ? null : 'confirm',\n name: 'telescope',\n message: 'Include Telescope (debugging dashboard)?',\n initial: true,\n },\n {\n type: options.yes ? null : 'confirm',\n name: 'database',\n message: 'Include database support (Kysely)?',\n initial: true,\n },\n {\n type: options.yes ? null : 'select',\n name: 'loggerType',\n message: 'Logger:',\n choices: loggerTypeChoices,\n initial: 0,\n },\n {\n type: options.yes ? null : 'select',\n name: 'routesStructure',\n message: 'Routes structure:',\n choices: routesStructureChoices,\n initial: 0,\n },\n {\n type: options.yes || options.monorepo !== undefined ? null : 'confirm',\n name: 'monorepo',\n message: 'Setup as monorepo?',\n initial: false,\n },\n {\n type: (prev) =>\n (prev === true || options.monorepo) && !options.apiPath\n ? 'text'\n : null,\n name: 'apiPath',\n message: 'API app path:',\n initial: 'apps/api',\n },\n ],\n { onCancel },\n );\n\n // Build final options\n const name = projectName || answers.name;\n if (!name) {\n console.error(' Error: Project name is required\\n');\n process.exit(1);\n }\n\n // Validate name if provided via argument\n if (projectName) {\n const nameValid = validateProjectName(projectName);\n if (nameValid !== true) {\n console.error(` Error: ${nameValid}\\n`);\n process.exit(1);\n }\n const dirValid = checkDirectoryExists(projectName, cwd);\n if (dirValid !== true) {\n console.error(` Error: ${dirValid}\\n`);\n process.exit(1);\n }\n }\n\n const monorepo =\n options.monorepo ?? (options.yes ? false : (answers.monorepo ?? false));\n const templateOptions: TemplateOptions = {\n name,\n template: options.template || answers.template || 'minimal',\n telescope: options.yes ? true : (answers.telescope ?? true),\n database: options.yes ? true : (answers.database ?? true),\n loggerType: options.yes ? 'pino' : (answers.loggerType ?? 'pino'),\n routesStructure: options.yes\n ? 'centralized-endpoints'\n : (answers.routesStructure ?? 'centralized-endpoints'),\n monorepo,\n apiPath: monorepo ? (options.apiPath ?? answers.apiPath ?? 'apps/api') : '',\n };\n\n const targetDir = join(cwd, name);\n const template = getTemplate(templateOptions.template);\n\n const isMonorepo = templateOptions.monorepo;\n const apiPath = templateOptions.apiPath;\n\n // Create project directory\n await mkdir(targetDir, { recursive: true });\n\n // For monorepo, app files go in the specified apiPath (e.g., apps/api)\n const appDir = isMonorepo ? join(targetDir, apiPath) : targetDir;\n if (isMonorepo) {\n await mkdir(appDir, { recursive: true });\n }\n\n // Collect app files\n const appFiles = [\n ...generatePackageJson(templateOptions, template),\n ...generateConfigFiles(templateOptions, template),\n ...generateEnvFiles(templateOptions, template),\n ...generateSourceFiles(templateOptions, template),\n ...generateDockerFiles(templateOptions, template),\n ];\n\n // Collect root monorepo files (includes packages/models)\n const rootFiles = [\n ...generateMonorepoFiles(templateOptions, template),\n ...generateModelsPackage(templateOptions),\n ];\n\n // Write root files (for monorepo)\n for (const { path, content } of rootFiles) {\n const fullPath = join(targetDir, path);\n await mkdir(dirname(fullPath), { recursive: true });\n await writeFile(fullPath, content);\n }\n\n // Write app files\n for (const { path, content } of appFiles) {\n const fullPath = join(appDir, path);\n const displayPath = isMonorepo ? `${apiPath}/${path}` : path;\n await mkdir(dirname(fullPath), { recursive: true });\n await writeFile(fullPath, content);\n }\n\n // Install dependencies\n if (!options.skipInstall) {\n try {\n execSync(getInstallCommand(pkgManager), {\n cwd: targetDir,\n stdio: 'inherit',\n });\n } catch {\n console.error('\\n Warning: Failed to install dependencies.');\n }\n\n // Format generated files with biome\n try {\n execSync('npx @biomejs/biome format --write --unsafe .', {\n cwd: targetDir,\n stdio: 'inherit',\n });\n } catch {\n // Silently ignore format errors\n }\n }\n\n // Print next steps\n const devCommand = getRunCommand(pkgManager, 'dev');\n}\n"],"mappings":"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"}
@@ -1,13 +1,13 @@
1
1
  const require_chunk = require('./chunk-CUT6urMc.cjs');
2
- const require_config = require('./config-CLEDqKO3.cjs');
3
- const require_docker = require('./docker-5d8Yh5_X.cjs');
4
- const require_env = require('./env-B-OKjgI4.cjs');
5
- const require_models = require('./models-DyNwdOcz.cjs');
6
- const require_monorepo = require('./monorepo-sEK8gW59.cjs');
7
- const require_package = require('./package-PP-o1nvq.cjs');
8
- const require_source = require('./source-DT5Xhiob.cjs');
9
- const require_templates = require('./templates-DM_rtYYW.cjs');
10
- const require_utils = require('./utils-BX3F4fT8.cjs');
2
+ const require_config = require('./config-BP1IZynR.cjs');
3
+ const require_docker = require('./docker-2-ipZDOJ.cjs');
4
+ const require_env = require('./env-CS0jvg7k.cjs');
5
+ const require_models = require('./models-BapGSoHC.cjs');
6
+ const require_monorepo = require('./monorepo-CFtxHeDh.cjs');
7
+ const require_templates = require('./templates-CbgQ9dw0.cjs');
8
+ const require_package = require('./package-Dk8IMBOB.cjs');
9
+ const require_source = require('./source-C1cyfHcF.cjs');
10
+ const require_utils = require('./utils-DSdN2MTt.cjs');
11
11
  const node_fs_promises = require_chunk.__toESM(require("node:fs/promises"));
12
12
  const node_path = require_chunk.__toESM(require("node:path"));
13
13
  const node_child_process = require_chunk.__toESM(require("node:child_process"));
@@ -59,9 +59,16 @@ async function initCommand(projectName, options = {}) {
59
59
  },
60
60
  {
61
61
  type: options.yes ? null : "select",
62
- name: "routeStyle",
63
- message: "Route organization:",
64
- choices: require_templates.routeStyleChoices,
62
+ name: "loggerType",
63
+ message: "Logger:",
64
+ choices: require_templates.loggerTypeChoices,
65
+ initial: 0
66
+ },
67
+ {
68
+ type: options.yes ? null : "select",
69
+ name: "routesStructure",
70
+ message: "Routes structure:",
71
+ choices: require_templates.routesStructureChoices,
65
72
  initial: 0
66
73
  },
67
74
  {
@@ -100,7 +107,8 @@ async function initCommand(projectName, options = {}) {
100
107
  template: options.template || answers.template || "minimal",
101
108
  telescope: options.yes ? true : answers.telescope ?? true,
102
109
  database: options.yes ? true : answers.database ?? true,
103
- routeStyle: options.yes ? "file-based" : answers.routeStyle ?? "file-based",
110
+ loggerType: options.yes ? "pino" : answers.loggerType ?? "pino",
111
+ routesStructure: options.yes ? "centralized-endpoints" : answers.routesStructure ?? "centralized-endpoints",
104
112
  monorepo,
105
113
  apiPath: monorepo ? options.apiPath ?? answers.apiPath ?? "apps/api" : ""
106
114
  };
@@ -130,13 +138,21 @@ async function initCommand(projectName, options = {}) {
130
138
  await (0, node_fs_promises.mkdir)((0, node_path.dirname)(fullPath), { recursive: true });
131
139
  await (0, node_fs_promises.writeFile)(fullPath, content);
132
140
  }
133
- if (!options.skipInstall) try {
134
- (0, node_child_process.execSync)(require_utils.getInstallCommand(pkgManager), {
135
- cwd: targetDir,
136
- stdio: "inherit"
137
- });
138
- } catch {
139
- console.error("\n Warning: Failed to install dependencies.");
141
+ if (!options.skipInstall) {
142
+ try {
143
+ (0, node_child_process.execSync)(require_utils.getInstallCommand(pkgManager), {
144
+ cwd: targetDir,
145
+ stdio: "inherit"
146
+ });
147
+ } catch {
148
+ console.error("\n Warning: Failed to install dependencies.");
149
+ }
150
+ try {
151
+ (0, node_child_process.execSync)("npx @biomejs/biome format --write --unsafe .", {
152
+ cwd: targetDir,
153
+ stdio: "inherit"
154
+ });
155
+ } catch {}
140
156
  }
141
157
  const devCommand = require_utils.getRunCommand(pkgManager, "dev");
142
158
  }
@@ -148,4 +164,4 @@ Object.defineProperty(exports, 'initCommand', {
148
164
  return initCommand;
149
165
  }
150
166
  });
151
- //# sourceMappingURL=init-qLFsWR-R.cjs.map
167
+ //# sourceMappingURL=init-D-7WEk-b.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"init-D-7WEk-b.cjs","names":["projectName?: string","options: InitOptions","value: string","templateChoices","loggerTypeChoices","routesStructureChoices","templateOptions: TemplateOptions"],"sources":["../src/init/index.ts"],"sourcesContent":["import { execSync } from 'node:child_process';\nimport { mkdir, writeFile } from 'node:fs/promises';\nimport { dirname, join } from 'node:path';\nimport prompts from 'prompts';\nimport { generateConfigFiles } from './generators/config.js';\nimport { generateDockerFiles } from './generators/docker.js';\nimport { generateEnvFiles } from './generators/env.js';\nimport { generateModelsPackage } from './generators/models.js';\nimport { generateMonorepoFiles } from './generators/monorepo.js';\nimport { generatePackageJson } from './generators/package.js';\nimport { generateSourceFiles } from './generators/source.js';\nimport {\n type TemplateName,\n type TemplateOptions,\n getTemplate,\n loggerTypeChoices,\n routesStructureChoices,\n templateChoices,\n} from './templates/index.js';\nimport {\n checkDirectoryExists,\n detectPackageManager,\n getInstallCommand,\n getRunCommand,\n validateProjectName,\n} from './utils.js';\n\nexport interface InitOptions {\n template?: TemplateName;\n skipInstall?: boolean;\n yes?: boolean;\n monorepo?: boolean;\n apiPath?: string;\n}\n\n/**\n * Main init command - scaffolds a new project\n */\nexport async function initCommand(\n projectName?: string,\n options: InitOptions = {},\n): Promise<void> {\n const cwd = process.cwd();\n const pkgManager = detectPackageManager(cwd);\n\n // Handle Ctrl+C gracefully\n prompts.override({});\n const onCancel = () => {\n process.exit(0);\n };\n\n // Gather answers via prompts\n const answers = await prompts(\n [\n {\n type: projectName ? null : 'text',\n name: 'name',\n message: 'Project name:',\n initial: 'my-api',\n validate: (value: string) => {\n const nameValid = validateProjectName(value);\n if (nameValid !== true) return nameValid;\n const dirValid = checkDirectoryExists(value, cwd);\n if (dirValid !== true) return dirValid;\n return true;\n },\n },\n {\n type: options.template || options.yes ? null : 'select',\n name: 'template',\n message: 'Template:',\n choices: templateChoices,\n initial: 0,\n },\n {\n type: options.yes ? null : 'confirm',\n name: 'telescope',\n message: 'Include Telescope (debugging dashboard)?',\n initial: true,\n },\n {\n type: options.yes ? null : 'confirm',\n name: 'database',\n message: 'Include database support (Kysely)?',\n initial: true,\n },\n {\n type: options.yes ? null : 'select',\n name: 'loggerType',\n message: 'Logger:',\n choices: loggerTypeChoices,\n initial: 0,\n },\n {\n type: options.yes ? null : 'select',\n name: 'routesStructure',\n message: 'Routes structure:',\n choices: routesStructureChoices,\n initial: 0,\n },\n {\n type: options.yes || options.monorepo !== undefined ? null : 'confirm',\n name: 'monorepo',\n message: 'Setup as monorepo?',\n initial: false,\n },\n {\n type: (prev) =>\n (prev === true || options.monorepo) && !options.apiPath\n ? 'text'\n : null,\n name: 'apiPath',\n message: 'API app path:',\n initial: 'apps/api',\n },\n ],\n { onCancel },\n );\n\n // Build final options\n const name = projectName || answers.name;\n if (!name) {\n console.error(' Error: Project name is required\\n');\n process.exit(1);\n }\n\n // Validate name if provided via argument\n if (projectName) {\n const nameValid = validateProjectName(projectName);\n if (nameValid !== true) {\n console.error(` Error: ${nameValid}\\n`);\n process.exit(1);\n }\n const dirValid = checkDirectoryExists(projectName, cwd);\n if (dirValid !== true) {\n console.error(` Error: ${dirValid}\\n`);\n process.exit(1);\n }\n }\n\n const monorepo =\n options.monorepo ?? (options.yes ? false : (answers.monorepo ?? false));\n const templateOptions: TemplateOptions = {\n name,\n template: options.template || answers.template || 'minimal',\n telescope: options.yes ? true : (answers.telescope ?? true),\n database: options.yes ? true : (answers.database ?? true),\n loggerType: options.yes ? 'pino' : (answers.loggerType ?? 'pino'),\n routesStructure: options.yes\n ? 'centralized-endpoints'\n : (answers.routesStructure ?? 'centralized-endpoints'),\n monorepo,\n apiPath: monorepo ? (options.apiPath ?? answers.apiPath ?? 'apps/api') : '',\n };\n\n const targetDir = join(cwd, name);\n const template = getTemplate(templateOptions.template);\n\n const isMonorepo = templateOptions.monorepo;\n const apiPath = templateOptions.apiPath;\n\n // Create project directory\n await mkdir(targetDir, { recursive: true });\n\n // For monorepo, app files go in the specified apiPath (e.g., apps/api)\n const appDir = isMonorepo ? join(targetDir, apiPath) : targetDir;\n if (isMonorepo) {\n await mkdir(appDir, { recursive: true });\n }\n\n // Collect app files\n const appFiles = [\n ...generatePackageJson(templateOptions, template),\n ...generateConfigFiles(templateOptions, template),\n ...generateEnvFiles(templateOptions, template),\n ...generateSourceFiles(templateOptions, template),\n ...generateDockerFiles(templateOptions, template),\n ];\n\n // Collect root monorepo files (includes packages/models)\n const rootFiles = [\n ...generateMonorepoFiles(templateOptions, template),\n ...generateModelsPackage(templateOptions),\n ];\n\n // Write root files (for monorepo)\n for (const { path, content } of rootFiles) {\n const fullPath = join(targetDir, path);\n await mkdir(dirname(fullPath), { recursive: true });\n await writeFile(fullPath, content);\n }\n\n // Write app files\n for (const { path, content } of appFiles) {\n const fullPath = join(appDir, path);\n const displayPath = isMonorepo ? `${apiPath}/${path}` : path;\n await mkdir(dirname(fullPath), { recursive: true });\n await writeFile(fullPath, content);\n }\n\n // Install dependencies\n if (!options.skipInstall) {\n try {\n execSync(getInstallCommand(pkgManager), {\n cwd: targetDir,\n stdio: 'inherit',\n });\n } catch {\n console.error('\\n Warning: Failed to install dependencies.');\n }\n\n // Format generated files with biome\n try {\n execSync('npx @biomejs/biome format --write --unsafe .', {\n cwd: targetDir,\n stdio: 'inherit',\n });\n } catch {\n // Silently ignore format errors\n }\n }\n\n // Print next steps\n const devCommand = getRunCommand(pkgManager, 'dev');\n}\n"],"mappings":"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"}
@@ -65,4 +65,4 @@ export type RoutePath = Route['path'];
65
65
 
66
66
  //#endregion
67
67
  export { generateAwsManifest, generateServerManifest };
68
- //# sourceMappingURL=manifests-DIA_2QYd.mjs.map
68
+ //# sourceMappingURL=manifests-BNKG6AXf.mjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"manifests-DIA_2QYd.mjs","names":["outputDir: string","routes: RouteInfo[]","functions: FunctionInfo[]","crons: CronInfo[]","subscribers: SubscriberInfo[]","appInfo: ServerAppInfo"],"sources":["../src/build/manifests.ts"],"sourcesContent":["import { mkdir, writeFile } from 'node:fs/promises';\nimport { join, relative } from 'path';\nimport type {\n CronInfo,\n FunctionInfo,\n RouteInfo,\n SubscriberInfo,\n} from '../types';\n\nconst logger = console;\n\nexport type ManifestProvider = 'aws' | 'server';\n\nexport interface ServerAppInfo {\n handler: string;\n endpoints: string;\n}\n\nexport async function generateAwsManifest(\n outputDir: string,\n routes: RouteInfo[],\n functions: FunctionInfo[],\n crons: CronInfo[],\n subscribers: SubscriberInfo[],\n): Promise<void> {\n const manifestDir = join(outputDir, 'manifest');\n await mkdir(manifestDir, { recursive: true });\n\n // Filter out 'ALL' method routes (server-specific)\n const awsRoutes = routes.filter((r) => r.method !== 'ALL');\n\n const content = `export const manifest = {\n routes: ${JSON.stringify(awsRoutes, null, 2)},\n functions: ${JSON.stringify(functions, null, 2)},\n crons: ${JSON.stringify(crons, null, 2)},\n subscribers: ${JSON.stringify(subscribers, null, 2)},\n} as const;\n\n// Derived types\nexport type Route = (typeof manifest.routes)[number];\nexport type Function = (typeof manifest.functions)[number];\nexport type Cron = (typeof manifest.crons)[number];\nexport type Subscriber = (typeof manifest.subscribers)[number];\n\n// Useful union types\nexport type Authorizer = Route['authorizer'];\nexport type HttpMethod = Route['method'];\nexport type RoutePath = Route['path'];\n`;\n\n const manifestPath = join(manifestDir, 'aws.ts');\n await writeFile(manifestPath, content);\n\n logger.log(\n `Generated AWS manifest with ${awsRoutes.length} routes, ${functions.length} functions, ${crons.length} crons, ${subscribers.length} subscribers`,\n );\n logger.log(`Manifest: ${relative(process.cwd(), manifestPath)}`);\n}\n\nexport async function generateServerManifest(\n outputDir: string,\n appInfo: ServerAppInfo,\n routes: RouteInfo[],\n subscribers: SubscriberInfo[],\n): Promise<void> {\n const manifestDir = join(outputDir, 'manifest');\n await mkdir(manifestDir, { recursive: true });\n\n // For server, extract route metadata (path, method, authorizer)\n const serverRoutes = routes\n .filter((r) => r.method !== 'ALL')\n .map((r) => ({\n path: r.path,\n method: r.method,\n authorizer: r.authorizer,\n }));\n\n // Server subscribers only need name and events\n const serverSubscribers = subscribers.map((s) => ({\n name: s.name,\n subscribedEvents: s.subscribedEvents,\n }));\n\n const content = `export const manifest = {\n app: ${JSON.stringify(appInfo, null, 2)},\n routes: ${JSON.stringify(serverRoutes, null, 2)},\n subscribers: ${JSON.stringify(serverSubscribers, null, 2)},\n} as const;\n\n// Derived types\nexport type Route = (typeof manifest.routes)[number];\nexport type Subscriber = (typeof manifest.subscribers)[number];\n\n// Useful union types\nexport type Authorizer = Route['authorizer'];\nexport type HttpMethod = Route['method'];\nexport type RoutePath = Route['path'];\n`;\n\n const manifestPath = join(manifestDir, 'server.ts');\n await writeFile(manifestPath, content);\n\n logger.log(\n `Generated server manifest with ${serverRoutes.length} routes, ${serverSubscribers.length} subscribers`,\n );\n logger.log(`Manifest: ${relative(process.cwd(), manifestPath)}`);\n}\n"],"mappings":";;;;AASA,MAAM,SAAS;AASf,eAAsB,oBACpBA,WACAC,QACAC,WACAC,OACAC,aACe;CACf,MAAM,cAAc,KAAK,WAAW,WAAW;AAC/C,OAAM,MAAM,aAAa,EAAE,WAAW,KAAM,EAAC;CAG7C,MAAM,YAAY,OAAO,OAAO,CAAC,MAAM,EAAE,WAAW,MAAM;CAE1D,MAAM,WAAW;YACP,KAAK,UAAU,WAAW,MAAM,EAAE,CAAC;eAChC,KAAK,UAAU,WAAW,MAAM,EAAE,CAAC;WACvC,KAAK,UAAU,OAAO,MAAM,EAAE,CAAC;iBACzB,KAAK,UAAU,aAAa,MAAM,EAAE,CAAC;;;;;;;;;;;;;;CAepD,MAAM,eAAe,KAAK,aAAa,SAAS;AAChD,OAAM,UAAU,cAAc,QAAQ;AAEtC,QAAO,KACJ,8BAA8B,UAAU,OAAO,WAAW,UAAU,OAAO,cAAc,MAAM,OAAO,UAAU,YAAY,OAAO,cACrI;AACD,QAAO,KAAK,YAAY,SAAS,QAAQ,KAAK,EAAE,aAAa,CAAC,EAAE;AACjE;AAED,eAAsB,uBACpBJ,WACAK,SACAJ,QACAG,aACe;CACf,MAAM,cAAc,KAAK,WAAW,WAAW;AAC/C,OAAM,MAAM,aAAa,EAAE,WAAW,KAAM,EAAC;CAG7C,MAAM,eAAe,OAClB,OAAO,CAAC,MAAM,EAAE,WAAW,MAAM,CACjC,IAAI,CAAC,OAAO;EACX,MAAM,EAAE;EACR,QAAQ,EAAE;EACV,YAAY,EAAE;CACf,GAAE;CAGL,MAAM,oBAAoB,YAAY,IAAI,CAAC,OAAO;EAChD,MAAM,EAAE;EACR,kBAAkB,EAAE;CACrB,GAAE;CAEH,MAAM,WAAW;SACV,KAAK,UAAU,SAAS,MAAM,EAAE,CAAC;YAC9B,KAAK,UAAU,cAAc,MAAM,EAAE,CAAC;iBACjC,KAAK,UAAU,mBAAmB,MAAM,EAAE,CAAC;;;;;;;;;;;;CAa1D,MAAM,eAAe,KAAK,aAAa,YAAY;AACnD,OAAM,UAAU,cAAc,QAAQ;AAEtC,QAAO,KACJ,iCAAiC,aAAa,OAAO,WAAW,kBAAkB,OAAO,cAC3F;AACD,QAAO,KAAK,YAAY,SAAS,QAAQ,KAAK,EAAE,aAAa,CAAC,EAAE;AACjE"}
1
+ {"version":3,"file":"manifests-BNKG6AXf.mjs","names":["outputDir: string","routes: RouteInfo[]","functions: FunctionInfo[]","crons: CronInfo[]","subscribers: SubscriberInfo[]","appInfo: ServerAppInfo"],"sources":["../src/build/manifests.ts"],"sourcesContent":["import { mkdir, writeFile } from 'node:fs/promises';\nimport { join, relative } from 'path';\nimport type {\n CronInfo,\n FunctionInfo,\n RouteInfo,\n SubscriberInfo,\n} from '../types';\n\nconst logger = console;\n\nexport type ManifestProvider = 'aws' | 'server';\n\nexport interface ServerAppInfo {\n handler: string;\n endpoints: string;\n}\n\nexport async function generateAwsManifest(\n outputDir: string,\n routes: RouteInfo[],\n functions: FunctionInfo[],\n crons: CronInfo[],\n subscribers: SubscriberInfo[],\n): Promise<void> {\n const manifestDir = join(outputDir, 'manifest');\n await mkdir(manifestDir, { recursive: true });\n\n // Filter out 'ALL' method routes (server-specific)\n const awsRoutes = routes.filter((r) => r.method !== 'ALL');\n\n const content = `export const manifest = {\n routes: ${JSON.stringify(awsRoutes, null, 2)},\n functions: ${JSON.stringify(functions, null, 2)},\n crons: ${JSON.stringify(crons, null, 2)},\n subscribers: ${JSON.stringify(subscribers, null, 2)},\n} as const;\n\n// Derived types\nexport type Route = (typeof manifest.routes)[number];\nexport type Function = (typeof manifest.functions)[number];\nexport type Cron = (typeof manifest.crons)[number];\nexport type Subscriber = (typeof manifest.subscribers)[number];\n\n// Useful union types\nexport type Authorizer = Route['authorizer'];\nexport type HttpMethod = Route['method'];\nexport type RoutePath = Route['path'];\n`;\n\n const manifestPath = join(manifestDir, 'aws.ts');\n await writeFile(manifestPath, content);\n\n logger.log(\n `Generated AWS manifest with ${awsRoutes.length} routes, ${functions.length} functions, ${crons.length} crons, ${subscribers.length} subscribers`,\n );\n logger.log(`Manifest: ${relative(process.cwd(), manifestPath)}`);\n}\n\nexport async function generateServerManifest(\n outputDir: string,\n appInfo: ServerAppInfo,\n routes: RouteInfo[],\n subscribers: SubscriberInfo[],\n): Promise<void> {\n const manifestDir = join(outputDir, 'manifest');\n await mkdir(manifestDir, { recursive: true });\n\n // For server, extract route metadata (path, method, authorizer)\n const serverRoutes = routes\n .filter((r) => r.method !== 'ALL')\n .map((r) => ({\n path: r.path,\n method: r.method,\n authorizer: r.authorizer,\n }));\n\n // Server subscribers only need name and events\n const serverSubscribers = subscribers.map((s) => ({\n name: s.name,\n subscribedEvents: s.subscribedEvents,\n }));\n\n const content = `export const manifest = {\n app: ${JSON.stringify(appInfo, null, 2)},\n routes: ${JSON.stringify(serverRoutes, null, 2)},\n subscribers: ${JSON.stringify(serverSubscribers, null, 2)},\n} as const;\n\n// Derived types\nexport type Route = (typeof manifest.routes)[number];\nexport type Subscriber = (typeof manifest.subscribers)[number];\n\n// Useful union types\nexport type Authorizer = Route['authorizer'];\nexport type HttpMethod = Route['method'];\nexport type RoutePath = Route['path'];\n`;\n\n const manifestPath = join(manifestDir, 'server.ts');\n await writeFile(manifestPath, content);\n\n logger.log(\n `Generated server manifest with ${serverRoutes.length} routes, ${serverSubscribers.length} subscribers`,\n );\n logger.log(`Manifest: ${relative(process.cwd(), manifestPath)}`);\n}\n"],"mappings":";;;;AASA,MAAM,SAAS;AASf,eAAsB,oBACpBA,WACAC,QACAC,WACAC,OACAC,aACe;CACf,MAAM,cAAc,KAAK,WAAW,WAAW;AAC/C,OAAM,MAAM,aAAa,EAAE,WAAW,KAAM,EAAC;CAG7C,MAAM,YAAY,OAAO,OAAO,CAAC,MAAM,EAAE,WAAW,MAAM;CAE1D,MAAM,WAAW;YACP,KAAK,UAAU,WAAW,MAAM,EAAE,CAAC;eAChC,KAAK,UAAU,WAAW,MAAM,EAAE,CAAC;WACvC,KAAK,UAAU,OAAO,MAAM,EAAE,CAAC;iBACzB,KAAK,UAAU,aAAa,MAAM,EAAE,CAAC;;;;;;;;;;;;;;CAepD,MAAM,eAAe,KAAK,aAAa,SAAS;AAChD,OAAM,UAAU,cAAc,QAAQ;AAEtC,QAAO,KACJ,8BAA8B,UAAU,OAAO,WAAW,UAAU,OAAO,cAAc,MAAM,OAAO,UAAU,YAAY,OAAO,cACrI;AACD,QAAO,KAAK,YAAY,SAAS,QAAQ,KAAK,EAAE,aAAa,CAAC,EAAE;AACjE;AAED,eAAsB,uBACpBJ,WACAK,SACAJ,QACAG,aACe;CACf,MAAM,cAAc,KAAK,WAAW,WAAW;AAC/C,OAAM,MAAM,aAAa,EAAE,WAAW,KAAM,EAAC;CAG7C,MAAM,eAAe,OAClB,OAAO,CAAC,MAAM,EAAE,WAAW,MAAM,CACjC,IAAI,CAAC,OAAO;EACX,MAAM,EAAE;EACR,QAAQ,EAAE;EACV,YAAY,EAAE;CACf,GAAE;CAGL,MAAM,oBAAoB,YAAY,IAAI,CAAC,OAAO;EAChD,MAAM,EAAE;EACR,kBAAkB,EAAE;CACrB,GAAE;CAEH,MAAM,WAAW;SACV,KAAK,UAAU,SAAS,MAAM,EAAE,CAAC;YAC9B,KAAK,UAAU,cAAc,MAAM,EAAE,CAAC;iBACjC,KAAK,UAAU,mBAAmB,MAAM,EAAE,CAAC;;;;;;;;;;;;CAa1D,MAAM,eAAe,KAAK,aAAa,YAAY;AACnD,OAAM,UAAU,cAAc,QAAQ;AAEtC,QAAO,KACJ,iCAAiC,aAAa,OAAO,WAAW,kBAAkB,OAAO,cAC3F;AACD,QAAO,KAAK,YAAY,SAAS,QAAQ,KAAK,EAAE,aAAa,CAAC,EAAE;AACjE"}
@@ -77,4 +77,4 @@ Object.defineProperty(exports, 'generateServerManifest', {
77
77
  return generateServerManifest;
78
78
  }
79
79
  });
80
- //# sourceMappingURL=manifests-VJ9-2JpW.cjs.map
80
+ //# sourceMappingURL=manifests-D13Ej8AE.cjs.map
@@ -1 +1 @@
1
- {"version":3,"file":"manifests-VJ9-2JpW.cjs","names":["outputDir: string","routes: RouteInfo[]","functions: FunctionInfo[]","crons: CronInfo[]","subscribers: SubscriberInfo[]","appInfo: ServerAppInfo"],"sources":["../src/build/manifests.ts"],"sourcesContent":["import { mkdir, writeFile } from 'node:fs/promises';\nimport { join, relative } from 'path';\nimport type {\n CronInfo,\n FunctionInfo,\n RouteInfo,\n SubscriberInfo,\n} from '../types';\n\nconst logger = console;\n\nexport type ManifestProvider = 'aws' | 'server';\n\nexport interface ServerAppInfo {\n handler: string;\n endpoints: string;\n}\n\nexport async function generateAwsManifest(\n outputDir: string,\n routes: RouteInfo[],\n functions: FunctionInfo[],\n crons: CronInfo[],\n subscribers: SubscriberInfo[],\n): Promise<void> {\n const manifestDir = join(outputDir, 'manifest');\n await mkdir(manifestDir, { recursive: true });\n\n // Filter out 'ALL' method routes (server-specific)\n const awsRoutes = routes.filter((r) => r.method !== 'ALL');\n\n const content = `export const manifest = {\n routes: ${JSON.stringify(awsRoutes, null, 2)},\n functions: ${JSON.stringify(functions, null, 2)},\n crons: ${JSON.stringify(crons, null, 2)},\n subscribers: ${JSON.stringify(subscribers, null, 2)},\n} as const;\n\n// Derived types\nexport type Route = (typeof manifest.routes)[number];\nexport type Function = (typeof manifest.functions)[number];\nexport type Cron = (typeof manifest.crons)[number];\nexport type Subscriber = (typeof manifest.subscribers)[number];\n\n// Useful union types\nexport type Authorizer = Route['authorizer'];\nexport type HttpMethod = Route['method'];\nexport type RoutePath = Route['path'];\n`;\n\n const manifestPath = join(manifestDir, 'aws.ts');\n await writeFile(manifestPath, content);\n\n logger.log(\n `Generated AWS manifest with ${awsRoutes.length} routes, ${functions.length} functions, ${crons.length} crons, ${subscribers.length} subscribers`,\n );\n logger.log(`Manifest: ${relative(process.cwd(), manifestPath)}`);\n}\n\nexport async function generateServerManifest(\n outputDir: string,\n appInfo: ServerAppInfo,\n routes: RouteInfo[],\n subscribers: SubscriberInfo[],\n): Promise<void> {\n const manifestDir = join(outputDir, 'manifest');\n await mkdir(manifestDir, { recursive: true });\n\n // For server, extract route metadata (path, method, authorizer)\n const serverRoutes = routes\n .filter((r) => r.method !== 'ALL')\n .map((r) => ({\n path: r.path,\n method: r.method,\n authorizer: r.authorizer,\n }));\n\n // Server subscribers only need name and events\n const serverSubscribers = subscribers.map((s) => ({\n name: s.name,\n subscribedEvents: s.subscribedEvents,\n }));\n\n const content = `export const manifest = {\n app: ${JSON.stringify(appInfo, null, 2)},\n routes: ${JSON.stringify(serverRoutes, null, 2)},\n subscribers: ${JSON.stringify(serverSubscribers, null, 2)},\n} as const;\n\n// Derived types\nexport type Route = (typeof manifest.routes)[number];\nexport type Subscriber = (typeof manifest.subscribers)[number];\n\n// Useful union types\nexport type Authorizer = Route['authorizer'];\nexport type HttpMethod = Route['method'];\nexport type RoutePath = Route['path'];\n`;\n\n const manifestPath = join(manifestDir, 'server.ts');\n await writeFile(manifestPath, content);\n\n logger.log(\n `Generated server manifest with ${serverRoutes.length} routes, ${serverSubscribers.length} subscribers`,\n );\n logger.log(`Manifest: ${relative(process.cwd(), manifestPath)}`);\n}\n"],"mappings":";;;;;AASA,MAAM,SAAS;AASf,eAAsB,oBACpBA,WACAC,QACAC,WACAC,OACAC,aACe;CACf,MAAM,cAAc,eAAK,WAAW,WAAW;AAC/C,OAAM,4BAAM,aAAa,EAAE,WAAW,KAAM,EAAC;CAG7C,MAAM,YAAY,OAAO,OAAO,CAAC,MAAM,EAAE,WAAW,MAAM;CAE1D,MAAM,WAAW;YACP,KAAK,UAAU,WAAW,MAAM,EAAE,CAAC;eAChC,KAAK,UAAU,WAAW,MAAM,EAAE,CAAC;WACvC,KAAK,UAAU,OAAO,MAAM,EAAE,CAAC;iBACzB,KAAK,UAAU,aAAa,MAAM,EAAE,CAAC;;;;;;;;;;;;;;CAepD,MAAM,eAAe,eAAK,aAAa,SAAS;AAChD,OAAM,gCAAU,cAAc,QAAQ;AAEtC,QAAO,KACJ,8BAA8B,UAAU,OAAO,WAAW,UAAU,OAAO,cAAc,MAAM,OAAO,UAAU,YAAY,OAAO,cACrI;AACD,QAAO,KAAK,YAAY,mBAAS,QAAQ,KAAK,EAAE,aAAa,CAAC,EAAE;AACjE;AAED,eAAsB,uBACpBJ,WACAK,SACAJ,QACAG,aACe;CACf,MAAM,cAAc,eAAK,WAAW,WAAW;AAC/C,OAAM,4BAAM,aAAa,EAAE,WAAW,KAAM,EAAC;CAG7C,MAAM,eAAe,OAClB,OAAO,CAAC,MAAM,EAAE,WAAW,MAAM,CACjC,IAAI,CAAC,OAAO;EACX,MAAM,EAAE;EACR,QAAQ,EAAE;EACV,YAAY,EAAE;CACf,GAAE;CAGL,MAAM,oBAAoB,YAAY,IAAI,CAAC,OAAO;EAChD,MAAM,EAAE;EACR,kBAAkB,EAAE;CACrB,GAAE;CAEH,MAAM,WAAW;SACV,KAAK,UAAU,SAAS,MAAM,EAAE,CAAC;YAC9B,KAAK,UAAU,cAAc,MAAM,EAAE,CAAC;iBACjC,KAAK,UAAU,mBAAmB,MAAM,EAAE,CAAC;;;;;;;;;;;;CAa1D,MAAM,eAAe,eAAK,aAAa,YAAY;AACnD,OAAM,gCAAU,cAAc,QAAQ;AAEtC,QAAO,KACJ,iCAAiC,aAAa,OAAO,WAAW,kBAAkB,OAAO,cAC3F;AACD,QAAO,KAAK,YAAY,mBAAS,QAAQ,KAAK,EAAE,aAAa,CAAC,EAAE;AACjE"}
1
+ {"version":3,"file":"manifests-D13Ej8AE.cjs","names":["outputDir: string","routes: RouteInfo[]","functions: FunctionInfo[]","crons: CronInfo[]","subscribers: SubscriberInfo[]","appInfo: ServerAppInfo"],"sources":["../src/build/manifests.ts"],"sourcesContent":["import { mkdir, writeFile } from 'node:fs/promises';\nimport { join, relative } from 'path';\nimport type {\n CronInfo,\n FunctionInfo,\n RouteInfo,\n SubscriberInfo,\n} from '../types';\n\nconst logger = console;\n\nexport type ManifestProvider = 'aws' | 'server';\n\nexport interface ServerAppInfo {\n handler: string;\n endpoints: string;\n}\n\nexport async function generateAwsManifest(\n outputDir: string,\n routes: RouteInfo[],\n functions: FunctionInfo[],\n crons: CronInfo[],\n subscribers: SubscriberInfo[],\n): Promise<void> {\n const manifestDir = join(outputDir, 'manifest');\n await mkdir(manifestDir, { recursive: true });\n\n // Filter out 'ALL' method routes (server-specific)\n const awsRoutes = routes.filter((r) => r.method !== 'ALL');\n\n const content = `export const manifest = {\n routes: ${JSON.stringify(awsRoutes, null, 2)},\n functions: ${JSON.stringify(functions, null, 2)},\n crons: ${JSON.stringify(crons, null, 2)},\n subscribers: ${JSON.stringify(subscribers, null, 2)},\n} as const;\n\n// Derived types\nexport type Route = (typeof manifest.routes)[number];\nexport type Function = (typeof manifest.functions)[number];\nexport type Cron = (typeof manifest.crons)[number];\nexport type Subscriber = (typeof manifest.subscribers)[number];\n\n// Useful union types\nexport type Authorizer = Route['authorizer'];\nexport type HttpMethod = Route['method'];\nexport type RoutePath = Route['path'];\n`;\n\n const manifestPath = join(manifestDir, 'aws.ts');\n await writeFile(manifestPath, content);\n\n logger.log(\n `Generated AWS manifest with ${awsRoutes.length} routes, ${functions.length} functions, ${crons.length} crons, ${subscribers.length} subscribers`,\n );\n logger.log(`Manifest: ${relative(process.cwd(), manifestPath)}`);\n}\n\nexport async function generateServerManifest(\n outputDir: string,\n appInfo: ServerAppInfo,\n routes: RouteInfo[],\n subscribers: SubscriberInfo[],\n): Promise<void> {\n const manifestDir = join(outputDir, 'manifest');\n await mkdir(manifestDir, { recursive: true });\n\n // For server, extract route metadata (path, method, authorizer)\n const serverRoutes = routes\n .filter((r) => r.method !== 'ALL')\n .map((r) => ({\n path: r.path,\n method: r.method,\n authorizer: r.authorizer,\n }));\n\n // Server subscribers only need name and events\n const serverSubscribers = subscribers.map((s) => ({\n name: s.name,\n subscribedEvents: s.subscribedEvents,\n }));\n\n const content = `export const manifest = {\n app: ${JSON.stringify(appInfo, null, 2)},\n routes: ${JSON.stringify(serverRoutes, null, 2)},\n subscribers: ${JSON.stringify(serverSubscribers, null, 2)},\n} as const;\n\n// Derived types\nexport type Route = (typeof manifest.routes)[number];\nexport type Subscriber = (typeof manifest.subscribers)[number];\n\n// Useful union types\nexport type Authorizer = Route['authorizer'];\nexport type HttpMethod = Route['method'];\nexport type RoutePath = Route['path'];\n`;\n\n const manifestPath = join(manifestDir, 'server.ts');\n await writeFile(manifestPath, content);\n\n logger.log(\n `Generated server manifest with ${serverRoutes.length} routes, ${serverSubscribers.length} subscribers`,\n );\n logger.log(`Manifest: ${relative(process.cwd(), manifestPath)}`);\n}\n"],"mappings":";;;;;AASA,MAAM,SAAS;AASf,eAAsB,oBACpBA,WACAC,QACAC,WACAC,OACAC,aACe;CACf,MAAM,cAAc,eAAK,WAAW,WAAW;AAC/C,OAAM,4BAAM,aAAa,EAAE,WAAW,KAAM,EAAC;CAG7C,MAAM,YAAY,OAAO,OAAO,CAAC,MAAM,EAAE,WAAW,MAAM;CAE1D,MAAM,WAAW;YACP,KAAK,UAAU,WAAW,MAAM,EAAE,CAAC;eAChC,KAAK,UAAU,WAAW,MAAM,EAAE,CAAC;WACvC,KAAK,UAAU,OAAO,MAAM,EAAE,CAAC;iBACzB,KAAK,UAAU,aAAa,MAAM,EAAE,CAAC;;;;;;;;;;;;;;CAepD,MAAM,eAAe,eAAK,aAAa,SAAS;AAChD,OAAM,gCAAU,cAAc,QAAQ;AAEtC,QAAO,KACJ,8BAA8B,UAAU,OAAO,WAAW,UAAU,OAAO,cAAc,MAAM,OAAO,UAAU,YAAY,OAAO,cACrI;AACD,QAAO,KAAK,YAAY,mBAAS,QAAQ,KAAK,EAAE,aAAa,CAAC,EAAE;AACjE;AAED,eAAsB,uBACpBJ,WACAK,SACAJ,QACAG,aACe;CACf,MAAM,cAAc,eAAK,WAAW,WAAW;AAC/C,OAAM,4BAAM,aAAa,EAAE,WAAW,KAAM,EAAC;CAG7C,MAAM,eAAe,OAClB,OAAO,CAAC,MAAM,EAAE,WAAW,MAAM,CACjC,IAAI,CAAC,OAAO;EACX,MAAM,EAAE;EACR,QAAQ,EAAE;EACV,YAAY,EAAE;CACf,GAAE;CAGL,MAAM,oBAAoB,YAAY,IAAI,CAAC,OAAO;EAChD,MAAM,EAAE;EACR,kBAAkB,EAAE;CACrB,GAAE;CAEH,MAAM,WAAW;SACV,KAAK,UAAU,SAAS,MAAM,EAAE,CAAC;YAC9B,KAAK,UAAU,cAAc,MAAM,EAAE,CAAC;iBACjC,KAAK,UAAU,mBAAmB,MAAM,EAAE,CAAC;;;;;;;;;;;;CAa1D,MAAM,eAAe,eAAK,aAAa,YAAY;AACnD,OAAM,gCAAU,cAAc,QAAQ;AAEtC,QAAO,KACJ,iCAAiC,aAAa,OAAO,WAAW,kBAAkB,OAAO,cAC3F;AACD,QAAO,KAAK,YAAY,mBAAS,QAAQ,KAAK,EAAE,aAAa,CAAC,EAAE;AACjE"}