@geekmidas/cli 10.0.0-alpha.62 → 10.0.0-alpha.64

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 (234) hide show
  1. package/README.md +2 -0
  2. package/dist/{HostingerProvider-DyD1Hin8.cjs → HostingerProvider-Bx2lHHvu.cjs} +3 -3
  3. package/dist/{HostingerProvider-DyD1Hin8.cjs.map → HostingerProvider-Bx2lHHvu.cjs.map} +1 -1
  4. package/dist/{HostingerProvider-B92qH4dC.mjs → HostingerProvider-Cd4aS5Kj.mjs} +2 -2
  5. package/dist/{HostingerProvider-B92qH4dC.mjs.map → HostingerProvider-Cd4aS5Kj.mjs.map} +1 -1
  6. package/dist/{LegacyStateStore-UHJEBLdn.cjs → LegacyStateStore-C2abV49N.cjs} +2 -2
  7. package/dist/{LegacyStateStore-UHJEBLdn.cjs.map → LegacyStateStore-C2abV49N.cjs.map} +1 -1
  8. package/dist/{LegacyStateStore-A8d2GdT7.mjs → LegacyStateStore-DIgkGaUP.mjs} +2 -2
  9. package/dist/{LegacyStateStore-A8d2GdT7.mjs.map → LegacyStateStore-DIgkGaUP.mjs.map} +1 -1
  10. package/dist/{LocalStateStore-B51rnfgn.mjs → LocalStateStore-Cy1ZBW7U.mjs} +2 -2
  11. package/dist/{LocalStateStore-B51rnfgn.mjs.map → LocalStateStore-Cy1ZBW7U.mjs.map} +1 -1
  12. package/dist/{LocalStateStore-COW3Ldwa.cjs → LocalStateStore-DiJqKyPy.cjs} +2 -2
  13. package/dist/{LocalStateStore-COW3Ldwa.cjs.map → LocalStateStore-DiJqKyPy.cjs.map} +1 -1
  14. package/dist/{OpenApiTsGenerator-BSrgw7B0.cjs → OpenApiTsGenerator-BWuDRHe9.cjs} +2 -2
  15. package/dist/{OpenApiTsGenerator-BSrgw7B0.cjs.map → OpenApiTsGenerator-BWuDRHe9.cjs.map} +1 -1
  16. package/dist/{OpenApiTsGenerator-q5B0z8Xg.mjs → OpenApiTsGenerator-C6v-IeHt.mjs} +2 -2
  17. package/dist/{OpenApiTsGenerator-q5B0z8Xg.mjs.map → OpenApiTsGenerator-C6v-IeHt.mjs.map} +1 -1
  18. package/dist/{S3StateStore-CJewPhgz.mjs → S3StateStore-D3x6ivBL.mjs} +2 -2
  19. package/dist/{S3StateStore-CJewPhgz.mjs.map → S3StateStore-D3x6ivBL.mjs.map} +1 -1
  20. package/dist/{S3StateStore-WUJGdRNL.cjs → S3StateStore-Ds0V1Lgm.cjs} +2 -2
  21. package/dist/{S3StateStore-WUJGdRNL.cjs.map → S3StateStore-Ds0V1Lgm.cjs.map} +1 -1
  22. package/dist/{SSMStateStore-Zejt42V8.cjs → SSMStateStore-CLipvx47.cjs} +2 -2
  23. package/dist/{SSMStateStore-Zejt42V8.cjs.map → SSMStateStore-CLipvx47.cjs.map} +1 -1
  24. package/dist/{SSMStateStore-iK5UKp9d.mjs → SSMStateStore-DfF174xQ.mjs} +2 -2
  25. package/dist/{SSMStateStore-iK5UKp9d.mjs.map → SSMStateStore-DfF174xQ.mjs.map} +1 -1
  26. package/dist/{bundler-CfH9frOS.cjs → bundler-C8uJf324.cjs} +4 -4
  27. package/dist/{bundler-CfH9frOS.cjs.map → bundler-C8uJf324.cjs.map} +1 -1
  28. package/dist/{bundler-DN5r4x5b.mjs → bundler-DYgm9xsd.mjs} +3 -3
  29. package/dist/{bundler-DN5r4x5b.mjs.map → bundler-DYgm9xsd.mjs.map} +1 -1
  30. package/dist/{cli-DYwxmfsW.mjs → cli-Bogz-zEj.mjs} +5 -4
  31. package/dist/{cli-DYwxmfsW.mjs.map → cli-Bogz-zEj.mjs.map} +1 -1
  32. package/dist/{cli-DOAUp80L.cjs → cli-D3jofJ6j.cjs} +7 -6
  33. package/dist/{cli-DOAUp80L.cjs.map → cli-D3jofJ6j.cjs.map} +1 -1
  34. package/dist/config-Be-4_I6H.d.cts +256 -0
  35. package/dist/config-Be-4_I6H.d.cts.map +1 -0
  36. package/dist/config-DqNRiQOp.d.mts +256 -0
  37. package/dist/config-DqNRiQOp.d.mts.map +1 -0
  38. package/dist/config.cjs +416 -13
  39. package/dist/config.cjs.map +1 -0
  40. package/dist/config.d.cts +4 -211
  41. package/dist/config.d.mts +4 -211
  42. package/dist/config.mjs +402 -3
  43. package/dist/config.mjs.map +1 -0
  44. package/dist/credentials-B70vmLcm.cjs +125 -0
  45. package/dist/credentials-B70vmLcm.cjs.map +1 -0
  46. package/dist/credentials-s0wMeZBU.mjs +108 -0
  47. package/dist/credentials-s0wMeZBU.mjs.map +1 -0
  48. package/dist/{define-CHBIEc5j.mjs → define-CYs0PEfZ.mjs} +2 -3
  49. package/dist/define-CYs0PEfZ.mjs.map +1 -0
  50. package/dist/{define-Cv_QvDrg.cjs → define-zUsP72ym.cjs} +2 -3
  51. package/dist/define-zUsP72ym.cjs.map +1 -0
  52. package/dist/deploy/public.cjs +166 -14
  53. package/dist/deploy/public.cjs.map +1 -0
  54. package/dist/deploy/public.d.cts +224 -3
  55. package/dist/deploy/public.d.cts.map +1 -1
  56. package/dist/deploy/public.d.mts +224 -3
  57. package/dist/deploy/public.d.mts.map +1 -1
  58. package/dist/deploy/public.mjs +141 -10
  59. package/dist/deploy/public.mjs.map +1 -0
  60. package/dist/deploy/sniffer-envparser-worker.cjs +54 -0
  61. package/dist/deploy/sniffer-envparser-worker.cjs.map +1 -0
  62. package/dist/deploy/sniffer-envparser-worker.d.cts +1 -0
  63. package/dist/deploy/sniffer-envparser-worker.d.mts +1 -0
  64. package/dist/deploy/sniffer-envparser-worker.mjs +55 -0
  65. package/dist/deploy/sniffer-envparser-worker.mjs.map +1 -0
  66. package/dist/{deploy-DSaCYvcO.cjs → deploy-55rJkdKz.cjs} +17 -14
  67. package/dist/{deploy-DSaCYvcO.cjs.map → deploy-55rJkdKz.cjs.map} +1 -1
  68. package/dist/{deploy-Cg9fae7a.mjs → deploy-Dc2LBJaK.mjs} +13 -10
  69. package/dist/deploy-Dc2LBJaK.mjs.map +1 -0
  70. package/dist/{deploy-B7jvUORo.mjs → deploy-ZRXIPp1c.mjs} +11 -8
  71. package/dist/{deploy-B7jvUORo.mjs.map → deploy-ZRXIPp1c.mjs.map} +1 -1
  72. package/dist/{deploy-D8Qr-Xto.cjs → deploy-yUcR2OlW.cjs} +15 -12
  73. package/dist/deploy-yUcR2OlW.cjs.map +1 -0
  74. package/dist/derive-B4vDpzgP.mjs +150 -0
  75. package/dist/derive-B4vDpzgP.mjs.map +1 -0
  76. package/dist/derive-DAbo49sm.cjs +161 -0
  77. package/dist/derive-DAbo49sm.cjs.map +1 -0
  78. package/dist/discover-B6yPpvRV.d.mts +99 -0
  79. package/dist/discover-B6yPpvRV.d.mts.map +1 -0
  80. package/dist/discover-B_IkPukx.d.cts +99 -0
  81. package/dist/discover-B_IkPukx.d.cts.map +1 -0
  82. package/dist/{discover-Bc-4eA_p.cjs → discover-DHdECueV.cjs} +280 -1
  83. package/dist/discover-DHdECueV.cjs.map +1 -0
  84. package/dist/{discover-FrYvzkeC.mjs → discover-LMrqsWSU.mjs} +246 -3
  85. package/dist/discover-LMrqsWSU.mjs.map +1 -0
  86. package/dist/{dokploy-CD9PY-3D.mjs → dokploy-CepdXuMl.mjs} +3 -3
  87. package/dist/{dokploy-CD9PY-3D.mjs.map → dokploy-CepdXuMl.mjs.map} +1 -1
  88. package/dist/{dokploy-Ey2foJLv.cjs → dokploy-D1d37rvM.cjs} +3 -3
  89. package/dist/{dokploy-Ey2foJLv.cjs.map → dokploy-D1d37rvM.cjs.map} +1 -1
  90. package/dist/{encryption-ChBk3hTj.cjs → encryption-C9X98u2F.cjs} +5 -5
  91. package/dist/{encryption-ChBk3hTj.cjs.map → encryption-C9X98u2F.cjs.map} +1 -1
  92. package/dist/{encryption-CVwvGbsL.mjs → encryption-CKHjMpCr.mjs} +5 -5
  93. package/dist/{encryption-CVwvGbsL.mjs.map → encryption-CKHjMpCr.mjs.map} +1 -1
  94. package/dist/fakes-C9RiT6XG.mjs.map +1 -1
  95. package/dist/fakes-zW-jNAbQ.cjs.map +1 -1
  96. package/dist/{github-BCB3_LBX.mjs → github-D-byNI7T.mjs} +4 -4
  97. package/dist/{github-BCB3_LBX.mjs.map → github-D-byNI7T.mjs.map} +1 -1
  98. package/dist/{github-OUgPDlqg.cjs → github-Dd3tMa1u.cjs} +4 -4
  99. package/dist/{github-OUgPDlqg.cjs.map → github-Dd3tMa1u.cjs.map} +1 -1
  100. package/dist/{index-BtXDZQuF.d.cts → index-CJ2qsSpp.d.mts} +2 -2
  101. package/dist/{index-BtXDZQuF.d.cts.map → index-CJ2qsSpp.d.mts.map} +1 -1
  102. package/dist/{index-DrKzpHl-.d.mts → index-CfE9Y885.d.cts} +2 -2
  103. package/dist/{index-DrKzpHl-.d.mts.map → index-CfE9Y885.d.cts.map} +1 -1
  104. package/dist/index.cjs +111 -239
  105. package/dist/index.cjs.map +1 -1
  106. package/dist/index.mjs +82 -210
  107. package/dist/index.mjs.map +1 -1
  108. package/dist/local-C7wnrcYK.cjs +586 -0
  109. package/dist/local-C7wnrcYK.cjs.map +1 -0
  110. package/dist/local-Cd8ZYQG3.mjs +473 -0
  111. package/dist/local-Cd8ZYQG3.mjs.map +1 -0
  112. package/dist/{migrate-BoHMqdCu.mjs → migrate-B4gngTLe.mjs} +6 -6
  113. package/dist/{migrate-BoHMqdCu.mjs.map → migrate-B4gngTLe.mjs.map} +1 -1
  114. package/dist/{migrate-dnaFMvOm.cjs → migrate-tx9-P9uz.cjs} +6 -6
  115. package/dist/{migrate-dnaFMvOm.cjs.map → migrate-tx9-P9uz.cjs.map} +1 -1
  116. package/dist/openapi.cjs +3 -3
  117. package/dist/openapi.d.cts +1 -1
  118. package/dist/openapi.d.mts +1 -1
  119. package/dist/openapi.mjs +3 -3
  120. package/dist/{ready-DQIy21W5.mjs → ready-bQfu9GES.mjs} +3 -3
  121. package/dist/{ready-DQIy21W5.mjs.map → ready-bQfu9GES.mjs.map} +1 -1
  122. package/dist/{ready-XlNx-Gbo.cjs → ready-brEhh68f.cjs} +3 -3
  123. package/dist/{ready-XlNx-Gbo.cjs.map → ready-brEhh68f.cjs.map} +1 -1
  124. package/dist/reconcile/public.cjs +1 -1
  125. package/dist/reconcile/public.d.cts +4 -77
  126. package/dist/reconcile/public.d.cts.map +1 -1
  127. package/dist/reconcile/public.d.mts +4 -77
  128. package/dist/reconcile/public.d.mts.map +1 -1
  129. package/dist/reconcile/public.mjs +1 -1
  130. package/dist/{resolve-wbv66HjD.cjs → resolve-BXsNQjMR.cjs} +9 -6
  131. package/dist/resolve-BXsNQjMR.cjs.map +1 -0
  132. package/dist/{resolve-CFCIkm7m.mjs → resolve-DZ2IJ0qY.mjs} +9 -6
  133. package/dist/resolve-DZ2IJ0qY.mjs.map +1 -0
  134. package/dist/{runtime-CMwtq0AL.cjs → runtime-BGNDrHzh.cjs} +2 -2
  135. package/dist/{runtime-CMwtq0AL.cjs.map → runtime-BGNDrHzh.cjs.map} +1 -1
  136. package/dist/{runtime-Dn_n-29S.d.cts → runtime-CJEYK4Gz.d.mts} +2 -2
  137. package/dist/{runtime-CXPlkZzs.d.mts.map → runtime-CJEYK4Gz.d.mts.map} +1 -1
  138. package/dist/{runtime-CXPlkZzs.d.mts → runtime-Cjq1jlVX.d.cts} +2 -2
  139. package/dist/{runtime-Dn_n-29S.d.cts.map → runtime-Cjq1jlVX.d.cts.map} +1 -1
  140. package/dist/{runtime-DbakJS8u.mjs → runtime-Cmn-FeYO.mjs} +2 -2
  141. package/dist/{runtime-DbakJS8u.mjs.map → runtime-Cmn-FeYO.mjs.map} +1 -1
  142. package/dist/sandbox/config-worker.cjs +43 -0
  143. package/dist/sandbox/config-worker.cjs.map +1 -0
  144. package/dist/sandbox/config-worker.d.cts +1 -0
  145. package/dist/sandbox/config-worker.d.mts +1 -0
  146. package/dist/sandbox/config-worker.mjs +44 -0
  147. package/dist/sandbox/config-worker.mjs.map +1 -0
  148. package/dist/sandbox/discover-worker.cjs +44 -0
  149. package/dist/sandbox/discover-worker.cjs.map +1 -0
  150. package/dist/sandbox/discover-worker.d.cts +1 -0
  151. package/dist/sandbox/discover-worker.d.mts +1 -0
  152. package/dist/sandbox/discover-worker.mjs +45 -0
  153. package/dist/sandbox/discover-worker.mjs.map +1 -0
  154. package/dist/sandbox-CL--ZDui.cjs +164 -0
  155. package/dist/sandbox-CL--ZDui.cjs.map +1 -0
  156. package/dist/sandbox-Dm247NGx.mjs +117 -0
  157. package/dist/sandbox-Dm247NGx.mjs.map +1 -0
  158. package/dist/sandbox-M8UnLhXE.d.cts +126 -0
  159. package/dist/sandbox-M8UnLhXE.d.cts.map +1 -0
  160. package/dist/sandbox-M8UnLhXE.d.mts +126 -0
  161. package/dist/sandbox-M8UnLhXE.d.mts.map +1 -0
  162. package/dist/{workspace-BFe57es7.mjs → schemas-Ckm_aBnF.cjs} +71 -982
  163. package/dist/schemas-Ckm_aBnF.cjs.map +1 -0
  164. package/dist/{workspace-B6zQO6RY.cjs → schemas-D2LCF689.mjs} +2 -1168
  165. package/dist/schemas-D2LCF689.mjs.map +1 -0
  166. package/dist/{sniffer-DHE2Nafd.mjs → sniffer-49KPbDgq.mjs} +131 -444
  167. package/dist/sniffer-49KPbDgq.mjs.map +1 -0
  168. package/dist/{sniffer-BsfPa-GA.cjs → sniffer-ByhbEW5A.cjs} +145 -512
  169. package/dist/sniffer-ByhbEW5A.cjs.map +1 -0
  170. package/dist/sst-BdALKEas.cjs +453 -0
  171. package/dist/sst-BdALKEas.cjs.map +1 -0
  172. package/dist/sst-Cper040I.mjs +430 -0
  173. package/dist/sst-Cper040I.mjs.map +1 -0
  174. package/dist/{store-BS8A7NcA.mjs → store-BaaonhkJ.mjs} +2 -2
  175. package/dist/{store-BS8A7NcA.mjs.map → store-BaaonhkJ.mjs.map} +1 -1
  176. package/dist/{store-KvNQwYaB.cjs → store-D_2ByRtW.cjs} +4 -4
  177. package/dist/{store-KvNQwYaB.cjs.map → store-D_2ByRtW.cjs.map} +1 -1
  178. package/dist/target/public.cjs +3 -3
  179. package/dist/target/public.d.cts +3 -3
  180. package/dist/target/public.d.mts +3 -3
  181. package/dist/target/public.mjs +3 -3
  182. package/dist/{terminal-6oL0vANs.cjs → terminal-Bdv--jhY.cjs} +16 -111
  183. package/dist/terminal-Bdv--jhY.cjs.map +1 -0
  184. package/dist/{terminal-ByZNjuig.mjs → terminal-D7Ntz6WE.mjs} +13 -90
  185. package/dist/terminal-D7Ntz6WE.mjs.map +1 -0
  186. package/dist/{types-DIA7Li-J.d.cts → types-B_bEQvb9.d.mts} +42 -7
  187. package/dist/types-B_bEQvb9.d.mts.map +1 -0
  188. package/dist/{types-CfLKGfC_.d.mts → types-DkrDOMxw.d.cts} +43 -6
  189. package/dist/types-DkrDOMxw.d.cts.map +1 -0
  190. package/dist/utils-D2Nk1Nv2.cjs +205 -0
  191. package/dist/utils-D2Nk1Nv2.cjs.map +1 -0
  192. package/dist/utils-D_fxUqvU.mjs +156 -0
  193. package/dist/utils-D_fxUqvU.mjs.map +1 -0
  194. package/dist/vitest.cjs +2 -2
  195. package/dist/vitest.mjs +2 -2
  196. package/dist/workerRuntime-BXfhbe13.cjs +108 -0
  197. package/dist/workerRuntime-BXfhbe13.cjs.map +1 -0
  198. package/dist/workerRuntime-CsOyBRx2.mjs +79 -0
  199. package/dist/workerRuntime-CsOyBRx2.mjs.map +1 -0
  200. package/dist/workspace/index.cjs +1 -1
  201. package/dist/workspace/index.d.cts +2 -2
  202. package/dist/workspace/index.d.mts +2 -2
  203. package/dist/workspace/index.mjs +1 -1
  204. package/dist/workspace-BwgWJK7h.cjs +1196 -0
  205. package/dist/workspace-BwgWJK7h.cjs.map +1 -0
  206. package/dist/workspace-Bwit4q9O.mjs +1024 -0
  207. package/dist/workspace-Bwit4q9O.mjs.map +1 -0
  208. package/package.json +13 -13
  209. package/dist/config-BYh9S0cZ.cjs +0 -534
  210. package/dist/config-BYh9S0cZ.cjs.map +0 -1
  211. package/dist/config-Bf4-bROQ.mjs +0 -457
  212. package/dist/config-Bf4-bROQ.mjs.map +0 -1
  213. package/dist/config.d.cts.map +0 -1
  214. package/dist/config.d.mts.map +0 -1
  215. package/dist/define-CHBIEc5j.mjs.map +0 -1
  216. package/dist/define-Cv_QvDrg.cjs.map +0 -1
  217. package/dist/deploy-Cg9fae7a.mjs.map +0 -1
  218. package/dist/deploy-D8Qr-Xto.cjs.map +0 -1
  219. package/dist/discover-Bc-4eA_p.cjs.map +0 -1
  220. package/dist/discover-FrYvzkeC.mjs.map +0 -1
  221. package/dist/home-DOzBaWaL.cjs +0 -33
  222. package/dist/home-DOzBaWaL.cjs.map +0 -1
  223. package/dist/home-GI7pJl1M.mjs +0 -22
  224. package/dist/home-GI7pJl1M.mjs.map +0 -1
  225. package/dist/resolve-CFCIkm7m.mjs.map +0 -1
  226. package/dist/resolve-wbv66HjD.cjs.map +0 -1
  227. package/dist/sniffer-BsfPa-GA.cjs.map +0 -1
  228. package/dist/sniffer-DHE2Nafd.mjs.map +0 -1
  229. package/dist/terminal-6oL0vANs.cjs.map +0 -1
  230. package/dist/terminal-ByZNjuig.mjs.map +0 -1
  231. package/dist/types-CfLKGfC_.d.mts.map +0 -1
  232. package/dist/types-DIA7Li-J.d.cts.map +0 -1
  233. package/dist/workspace-B6zQO6RY.cjs.map +0 -1
  234. package/dist/workspace-BFe57es7.mjs.map +0 -1
package/dist/index.cjs CHANGED
@@ -1,19 +1,22 @@
1
1
  #!/usr/bin/env -S npx tsx
2
2
  Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
3
3
  const require_rolldown_runtime = require("./rolldown-runtime-C0BPl7ul.cjs");
4
- const require_sniffer = require("./sniffer-BsfPa-GA.cjs");
5
- const require_discover = require("./discover-Bc-4eA_p.cjs");
6
- const require_config = require("./config-BYh9S0cZ.cjs");
7
- const require_workspace = require("./workspace-B6zQO6RY.cjs");
4
+ const require_sniffer = require("./sniffer-ByhbEW5A.cjs");
5
+ const require_local = require("./local-C7wnrcYK.cjs");
6
+ const require_discover = require("./discover-DHdECueV.cjs");
7
+ const require_derive = require("./derive-DAbo49sm.cjs");
8
+ const require_workspace = require("./workspace-BwgWJK7h.cjs");
9
+ const require_config = require("./config.cjs");
8
10
  const require_storage = require("./storage-CSGoC3bK.cjs");
9
- const require_store = require("./store-KvNQwYaB.cjs");
10
- const require_OpenApiTsGenerator = require("./OpenApiTsGenerator-BSrgw7B0.cjs");
11
+ const require_store = require("./store-D_2ByRtW.cjs");
12
+ const require_OpenApiTsGenerator = require("./OpenApiTsGenerator-BWuDRHe9.cjs");
11
13
  const require_openapi = require("./openapi.cjs");
12
14
  const require_fakes = require("./fakes-zW-jNAbQ.cjs");
13
15
  const require_appPorts = require("./appPorts-Cu79hJF6.cjs");
14
- const require_ready = require("./ready-XlNx-Gbo.cjs");
16
+ const require_ready = require("./ready-brEhh68f.cjs");
15
17
  const require_emit = require("./emit-Dmc1nvdS.cjs");
16
- const require_LocalStateStore = require("./LocalStateStore-COW3Ldwa.cjs");
18
+ const require_LocalStateStore = require("./LocalStateStore-DiJqKyPy.cjs");
19
+ const require_utils = require("./utils-D2Nk1Nv2.cjs");
17
20
  let node_path = require("node:path");
18
21
  let commander = require("commander");
19
22
  let node_fs = require("node:fs");
@@ -23,13 +26,13 @@ let node_util = require("node:util");
23
26
  let _geekmidas_manifest = require("@geekmidas/manifest");
24
27
  let fast_glob = require("fast-glob");
25
28
  fast_glob = require_rolldown_runtime.__toESM(fast_glob, 1);
26
- let node_child_process = require("node:child_process");
27
29
  let node_module = require("node:module");
30
+ let node_url = require("node:url");
31
+ let node_child_process = require("node:child_process");
28
32
  let chokidar = require("chokidar");
29
33
  chokidar = require_rolldown_runtime.__toESM(chokidar, 1);
30
34
  let node_net = require("node:net");
31
35
  let node_crypto = require("node:crypto");
32
- let node_url = require("node:url");
33
36
  let pg = require("pg");
34
37
  pg = require_rolldown_runtime.__toESM(pg, 1);
35
38
  let yaml = require("yaml");
@@ -47,7 +50,7 @@ let _geekmidas_constructs_functions = require("@geekmidas/constructs/functions")
47
50
  let _geekmidas_constructs_queue = require("@geekmidas/constructs/queue");
48
51
  let _geekmidas_constructs_topic = require("@geekmidas/constructs/topic");
49
52
  //#region package.json
50
- var version = "10.0.0-alpha.62";
53
+ var version = "10.0.0-alpha.64";
51
54
  //#endregion
52
55
  //#region src/trust/index.ts
53
56
  /**
@@ -1515,7 +1518,7 @@ async function devCommand(options) {
1515
1518
  for (const line of require_sniffer.describeServices(reconciled.services)) logger$6.log(line);
1516
1519
  }
1517
1520
  Object.assign(appSecrets, reconciled.env);
1518
- const own = reconciled.plan.resources.find((r) => (r.kind === "rest-api" || r.kind === "site") && require_config.appKey(r.id) === workspaceAppName);
1521
+ const own = reconciled.plan.resources.find((r) => (r.kind === "rest-api" || r.kind === "site") && require_derive.appKey(r.id) === workspaceAppName);
1519
1522
  publicUrl = own ? reconciled.env[own.envKey] : void 0;
1520
1523
  manifest = reconciled.manifest;
1521
1524
  }
@@ -1851,9 +1854,9 @@ async function workspaceDevCommand(configured, options) {
1851
1854
  for (const { id, port } of fakes) logger$6.log(`🎭 ${id} fake: http://localhost:${port}`);
1852
1855
  logger$6.log(options.migrate || options.seed ? "🗄️ Migrating the databases" : "🗄️ Checking for pending migrations");
1853
1856
  if (options.migrate || options.seed) {
1854
- const { prepareDevDatabases } = await Promise.resolve().then(() => require("./migrate-dnaFMvOm.cjs"));
1857
+ const { prepareDevDatabases } = await Promise.resolve().then(() => require("./migrate-tx9-P9uz.cjs"));
1855
1858
  await prepareDevDatabases(workspace, reconciled.env, { seed: !!options.seed });
1856
- } else await Promise.resolve().then(() => require("./migrate-dnaFMvOm.cjs")).then(({ reportPendingMigrations }) => reportPendingMigrations(workspace, reconciled.env)).catch((error) => {
1859
+ } else await Promise.resolve().then(() => require("./migrate-tx9-P9uz.cjs")).then(({ reportPendingMigrations }) => reportPendingMigrations(workspace, reconciled.env)).catch((error) => {
1857
1860
  logger$6.log(`⚠️ Could not check for pending migrations: ${error instanceof Error ? error.message : String(error)}`);
1858
1861
  });
1859
1862
  const appUrls = {};
@@ -1884,14 +1887,14 @@ async function workspaceDevCommand(configured, options) {
1884
1887
  const app = workspace.apps[appName];
1885
1888
  if (!app) continue;
1886
1889
  if (app.type === "mobile") {
1887
- const own = reconciled.plan.resources.find((r) => r.kind === "mobile-app" && require_config.appKey(r.id) === appName);
1890
+ const own = reconciled.plan.resources.find((r) => r.kind === "mobile-app" && require_derive.appKey(r.id) === appName);
1888
1891
  const scheme = own ? reconciled.env[own.envKey] : void 0;
1889
1892
  const device = Object.entries(reconciled.env).find(([key]) => key.endsWith("_DEVICE_URL"))?.[1];
1890
1893
  logger$6.log(` ${appName.padEnd(width)} ${scheme ? `${scheme}://` : "mobile"}${device ? ` — devices reach ${new URL(device).hostname}` : ""}`);
1891
1894
  continue;
1892
1895
  }
1893
1896
  const local = `http://localhost:${app.port}`;
1894
- const url = Object.entries(appUrls).find(([id]) => require_config.appKey(id) === appName)?.[1];
1897
+ const url = Object.entries(appUrls).find(([id]) => require_derive.appKey(id) === appName)?.[1];
1895
1898
  logger$6.log(` ${appName.padEnd(width)} ${url ? `${url} -> ${local}` : local}`);
1896
1899
  }
1897
1900
  logger$6.log("");
@@ -1921,7 +1924,7 @@ async function workspaceDevCommand(configured, options) {
1921
1924
  apps: buildOrder.flatMap((name) => {
1922
1925
  const app = workspace.apps[name];
1923
1926
  if (!app) return [];
1924
- const publicUrl = Object.entries(appUrls).find(([id]) => require_config.appKey(id) === name)?.[1];
1927
+ const publicUrl = Object.entries(appUrls).find(([id]) => require_derive.appKey(id) === name)?.[1];
1925
1928
  return [{
1926
1929
  name,
1927
1930
  type: app.type,
@@ -2068,7 +2071,7 @@ var EntryRunner = class {
2068
2071
  const env = {
2069
2072
  ...process.env,
2070
2073
  PORT: String(this.port),
2071
- NODE_OPTIONS: require_sniffer.withOwningTsconfigJsx(process.env.NODE_OPTIONS)
2074
+ NODE_OPTIONS: require_discover.withOwningTsconfigJsx(process.env.NODE_OPTIONS)
2072
2075
  };
2073
2076
  this.childProcess = (0, node_child_process.spawn)(...tsxCommand((0, node_path.dirname)(this.wrapperPath), [this.wrapperPath]), {
2074
2077
  stdio: "inherit",
@@ -2338,7 +2341,7 @@ var DevServer = class {
2338
2341
  ...process.env,
2339
2342
  NODE_ENV: "development",
2340
2343
  GKM_DEV_PID: String(process.pid),
2341
- NODE_OPTIONS: require_sniffer.withOwningTsconfigJsx(process.env.NODE_OPTIONS)
2344
+ NODE_OPTIONS: require_discover.withOwningTsconfigJsx(process.env.NODE_OPTIONS)
2342
2345
  },
2343
2346
  detached: true
2344
2347
  });
@@ -3233,7 +3236,7 @@ async function buildApp(input) {
3233
3236
  if (production?.bundle && !input.skipBundle) {
3234
3237
  const outputDir = (0, node_path.join)(appRoot, ".gkm", "server");
3235
3238
  const entryPoint = await writeSurfaceServer(outputDir, production);
3236
- const { bundleServer } = await Promise.resolve().then(() => require("./bundler-CfH9frOS.cjs"));
3239
+ const { bundleServer } = await Promise.resolve().then(() => require("./bundler-C8uJf324.cjs"));
3237
3240
  await bundleServer({
3238
3241
  entryPoint,
3239
3242
  outputDir: (0, node_path.join)(outputDir, "dist"),
@@ -3371,7 +3374,7 @@ async function buildForTarget(target, context, appRoot, workspaceRoot, endpointG
3371
3374
  let masterKey;
3372
3375
  if (context.production?.bundle && !skipBundle) {
3373
3376
  logger$5.log(`\n📦 Bundling production server...`);
3374
- const { bundleServer } = await Promise.resolve().then(() => require("./bundler-CfH9frOS.cjs"));
3377
+ const { bundleServer } = await Promise.resolve().then(() => require("./bundler-C8uJf324.cjs"));
3375
3378
  const allConstructs = [
3376
3379
  ...endpoints.map((e) => e.construct),
3377
3380
  ...functions.map((f) => f.construct),
@@ -3411,7 +3414,7 @@ async function buildForTarget(target, context, appRoot, workspaceRoot, endpointG
3411
3414
  * Detect available package manager.
3412
3415
  * @internal Exported for testing
3413
3416
  */
3414
- function detectPackageManager$1() {
3417
+ function detectPackageManager() {
3415
3418
  if ((0, node_fs.existsSync)("pnpm-lock.yaml")) return "pnpm";
3416
3419
  if ((0, node_fs.existsSync)("yarn.lock")) return "yarn";
3417
3420
  return "npm";
@@ -3530,18 +3533,25 @@ async function workspaceBuildCommand(workspace, options) {
3530
3533
  });
3531
3534
  const { filters, unpackaged } = turboFilters(workspace, { exclude: "backend" });
3532
3535
  if (unpackaged.length > 0) throw new Error(`No package.json for workspace app(s): ${unpackaged.join(", ")}. Each app needs one — turbo builds packages, and gkm reads the name back to know which app it is building.`);
3533
- const pm = detectPackageManager$1();
3536
+ const pm = detectPackageManager();
3534
3537
  const [turboBin, turboArgs] = getTurboArgs(pm, filters, { only: true });
3535
3538
  if (filters.length > 0) {
3536
3539
  logger$5.log(`\n📦 Using ${pm} with Turbo for the other apps...\n`);
3537
3540
  logger$5.log(`Running: ${[turboBin, ...turboArgs].join(" ")}`);
3538
- await require_sniffer.run(turboBin, turboArgs, {
3541
+ const sandbox = options.sandbox ?? new require_local.LocalSandbox({
3542
+ root: workspace.root,
3543
+ passEnv: ["TURBO_TOKEN"]
3544
+ });
3545
+ const built = await sandbox.exec(turboBin, turboArgs, {
3539
3546
  cwd: workspace.root,
3540
3547
  env: {
3541
- ...process.env,
3548
+ ...sandbox.env,
3542
3549
  NODE_ENV: options.production ? "production" : "development"
3543
- }
3550
+ },
3551
+ timeoutMs: require_local.DEFAULT_TIMEOUT_MS,
3552
+ output: "inherit"
3544
3553
  });
3554
+ if (built.exitCode !== 0) throw new require_local.CommandFailed(turboBin, turboArgs, built.exitCode, built.signal);
3545
3555
  }
3546
3556
  for (const [appName, app] of apps) {
3547
3557
  const outputPath = getAppOutputPath(workspace, appName, app);
@@ -4164,7 +4174,7 @@ const dockerCompose = {
4164
4174
  };
4165
4175
  },
4166
4176
  async build(stack, services) {
4167
- await require_sniffer.run("docker", compose(stack, ["build", ...services]), {
4177
+ await require_local.run("docker", compose(stack, ["build", ...services]), {
4168
4178
  cwd: stack.cwd,
4169
4179
  env: {
4170
4180
  ...process.env,
@@ -4173,10 +4183,10 @@ const dockerCompose = {
4173
4183
  });
4174
4184
  },
4175
4185
  async pull(stack, services) {
4176
- await require_sniffer.run("docker", compose(stack, ["pull", ...services]), { cwd: stack.cwd });
4186
+ await require_local.run("docker", compose(stack, ["pull", ...services]), { cwd: stack.cwd });
4177
4187
  },
4178
4188
  async up(stack, services) {
4179
- await require_sniffer.run("docker", compose(stack, [
4189
+ await require_local.run("docker", compose(stack, [
4180
4190
  "up",
4181
4191
  "-d",
4182
4192
  "--wait",
@@ -4186,10 +4196,10 @@ const dockerCompose = {
4186
4196
  ]), { cwd: stack.cwd });
4187
4197
  },
4188
4198
  async down(stack) {
4189
- await require_sniffer.run("docker", compose(stack, ["down"]), { cwd: stack.cwd });
4199
+ await require_local.run("docker", compose(stack, ["down"]), { cwd: stack.cwd });
4190
4200
  },
4191
4201
  async port(stack, service, inside) {
4192
- const output = await require_sniffer.runOutput("docker", compose(stack, [
4202
+ const output = await require_local.runOutput("docker", compose(stack, [
4193
4203
  "port",
4194
4204
  service,
4195
4205
  String(inside)
@@ -4200,7 +4210,7 @@ const dockerCompose = {
4200
4210
  },
4201
4211
  async copyOut(stack, service, from, to) {
4202
4212
  await (0, node_fs_promises.mkdir)((0, node_path.dirname)(to), { recursive: true });
4203
- await require_sniffer.run("docker", compose(stack, [
4213
+ await require_local.run("docker", compose(stack, [
4204
4214
  "cp",
4205
4215
  `${service}:${from}`,
4206
4216
  to
@@ -4619,7 +4629,7 @@ function stackApps(workspace, manifest, plan, options) {
4619
4629
  const resources = new Map(plan.resources.map((r) => [r.id, r]));
4620
4630
  for (const [id, declaration] of Object.entries(manifest)) {
4621
4631
  if (declaration.kind !== "rest-api" && declaration.kind !== "site") continue;
4622
- const name = require_config.appKey(id);
4632
+ const name = require_derive.appKey(id);
4623
4633
  const app = workspace.apps[name];
4624
4634
  const resource = resources.get(id);
4625
4635
  if (!app || !resource || !app.port) continue;
@@ -4784,7 +4794,7 @@ var EdgePortInvalid = class extends Error {
4784
4794
  async function gitRevision(root) {
4785
4795
  let sha;
4786
4796
  try {
4787
- sha = (await require_sniffer.runOutput("git", [
4797
+ sha = (await require_local.runOutput("git", [
4788
4798
  "rev-parse",
4789
4799
  "--short",
4790
4800
  "HEAD"
@@ -4793,7 +4803,7 @@ async function gitRevision(root) {
4793
4803
  throw new NoGitRevision(root);
4794
4804
  }
4795
4805
  if (!sha) throw new NoGitRevision(root);
4796
- return (await require_sniffer.runOutput("git", ["status", "--porcelain"], { cwd: root }).catch(() => "")).trim() ? `${sha}-dirty` : sha;
4806
+ return (await require_local.runOutput("git", ["status", "--porcelain"], { cwd: root }).catch(() => "")).trim() ? `${sha}-dirty` : sha;
4797
4807
  }
4798
4808
  /**
4799
4809
  * Bundle a backend with the gkm that is running — the same build a deploy
@@ -4802,7 +4812,7 @@ async function gitRevision(root) {
4802
4812
  async function bundleWithThisCli(appRoot) {
4803
4813
  const entry = process.argv[1];
4804
4814
  if (!entry) return;
4805
- await require_sniffer.run(process.execPath, [
4815
+ await require_local.run(process.execPath, [
4806
4816
  ...process.execArgv,
4807
4817
  entry,
4808
4818
  "build",
@@ -5098,7 +5108,7 @@ const logger$3 = console;
5098
5108
  * Get the Dokploy API token from stored credentials or environment
5099
5109
  */
5100
5110
  async function getApiToken() {
5101
- const token = await require_sniffer.getDokployToken();
5111
+ const token = await require_local.getDokployToken();
5102
5112
  if (!token) throw new Error("Dokploy credentials not found.\nRun \"gkm login --service dokploy\" to authenticate, or set DOKPLOY_API_TOKEN.");
5103
5113
  return token;
5104
5114
  }
@@ -5107,7 +5117,7 @@ async function getApiToken() {
5107
5117
  */
5108
5118
  async function getEndpoint(providedEndpoint) {
5109
5119
  if (providedEndpoint) return providedEndpoint;
5110
- const stored = await require_sniffer.getDokployCredentials();
5120
+ const stored = await require_local.getDokployCredentials();
5111
5121
  if (stored) return stored.endpoint;
5112
5122
  throw new Error("Dokploy endpoint not specified.\nEither run \"gkm login --service dokploy\" first, or provide --endpoint.");
5113
5123
  }
@@ -5210,7 +5220,7 @@ async function deployListCommand(options) {
5210
5220
  logger$3.log(" Run \"gkm registry:setup\" to configure a registry");
5211
5221
  return;
5212
5222
  }
5213
- const storedRegistryId = await require_sniffer.getDokployRegistryId();
5223
+ const storedRegistryId = await require_local.getDokployRegistryId();
5214
5224
  for (const registry of registries) {
5215
5225
  const marker = registry.registryId === storedRegistryId ? " (default)" : "";
5216
5226
  logger$3.log(`\n ${registry.registryName}${marker} (${registry.registryId})`);
@@ -6479,25 +6489,25 @@ function loadPackageJson() {
6479
6489
  * Run: pnpm --filter @geekmidas/cli sync-versions
6480
6490
  */
6481
6491
  const GEEKMIDAS_VERSIONS = {
6482
- "@geekmidas/audit": "~10.0.0-alpha.62",
6483
- "@geekmidas/auth": "~10.0.0-alpha.62",
6484
- "@geekmidas/cache": "~10.0.0-alpha.62",
6485
- "@geekmidas/client": "~10.0.0-alpha.62",
6486
- "@geekmidas/cloud": "~10.0.0-alpha.62",
6487
- "@geekmidas/constructs": "~10.0.0-alpha.62",
6488
- "@geekmidas/db": "~10.0.0-alpha.62",
6489
- "@geekmidas/emailkit": "~10.0.0-alpha.62",
6490
- "@geekmidas/envkit": "~10.0.0-alpha.62",
6491
- "@geekmidas/errors": "~10.0.0-alpha.62",
6492
- "@geekmidas/events": "~10.0.0-alpha.62",
6493
- "@geekmidas/logger": "~10.0.0-alpha.62",
6494
- "@geekmidas/manifest": "~10.0.0-alpha.62",
6495
- "@geekmidas/rate-limit": "~10.0.0-alpha.62",
6496
- "@geekmidas/schema": "~10.0.0-alpha.62",
6497
- "@geekmidas/services": "~10.0.0-alpha.62",
6498
- "@geekmidas/storage": "~10.0.0-alpha.62",
6499
- "@geekmidas/telescope": "~10.0.0-alpha.62",
6500
- "@geekmidas/testkit": "~10.0.0-alpha.62",
6492
+ "@geekmidas/audit": "~10.0.0-alpha.64",
6493
+ "@geekmidas/auth": "~10.0.0-alpha.64",
6494
+ "@geekmidas/cache": "~10.0.0-alpha.64",
6495
+ "@geekmidas/client": "~10.0.0-alpha.64",
6496
+ "@geekmidas/cloud": "~10.0.0-alpha.64",
6497
+ "@geekmidas/constructs": "~10.0.0-alpha.64",
6498
+ "@geekmidas/db": "~10.0.0-alpha.64",
6499
+ "@geekmidas/emailkit": "~10.0.0-alpha.64",
6500
+ "@geekmidas/envkit": "~10.0.0-alpha.64",
6501
+ "@geekmidas/errors": "~10.0.0-alpha.64",
6502
+ "@geekmidas/events": "~10.0.0-alpha.64",
6503
+ "@geekmidas/logger": "~10.0.0-alpha.64",
6504
+ "@geekmidas/manifest": "~10.0.0-alpha.64",
6505
+ "@geekmidas/rate-limit": "~10.0.0-alpha.64",
6506
+ "@geekmidas/schema": "~10.0.0-alpha.64",
6507
+ "@geekmidas/services": "~10.0.0-alpha.64",
6508
+ "@geekmidas/storage": "~10.0.0-alpha.64",
6509
+ "@geekmidas/telescope": "~10.0.0-alpha.64",
6510
+ "@geekmidas/testkit": "~10.0.0-alpha.64",
6501
6511
  "@geekmidas/cli": `~${loadPackageJson().version}`
6502
6512
  };
6503
6513
  //#endregion
@@ -7180,8 +7190,10 @@ ${pm.setup}
7180
7190
  - name: Install
7181
7191
  run: ${pm.install}
7182
7192
  ${stageSecrets}
7193
+ # Builds, releases and health-checks the stage through deploy.default
7194
+ # in gkm.config.ts, and fails the job if any of it fails.
7183
7195
  - name: Deploy
7184
- run: ${pm.run} "deploy:$STAGE"
7196
+ run: ${pm.exec} gkm deploy --stage "$STAGE"
7185
7197
  env:
7186
7198
  STAGE: \${{ matrix.stage }}${deployEnv}
7187
7199
  `;
@@ -8034,7 +8046,7 @@ function deployPackage(options) {
8034
8046
  case "sst": {
8035
8047
  const v = GEEKMIDAS_VERSIONS;
8036
8048
  return {
8037
- scripts: perStage(options, (stage) => `gkm build && sst deploy --stage ${stage}`),
8049
+ scripts: perStage(options, (stage) => `gkm deploy --stage ${stage}`),
8038
8050
  dependencies: {
8039
8051
  "@geekmidas/cloud": v["@geekmidas/cloud"],
8040
8052
  "@geekmidas/db": v["@geekmidas/db"],
@@ -8077,7 +8089,7 @@ function generateDeployFiles(options) {
8077
8089
  * constructs the application declares, through \`fromManifest\`. What is here
8078
8090
  * is what varies by stage, and the inputs a declaration cannot carry.
8079
8091
  *
8080
- * Deploy with \`pnpm run deploy:<stage>\`, which builds the manifest first.
8092
+ * Deploy with \`gkm deploy --stage <stage>\`, which builds the manifest first.
8081
8093
  */
8082
8094
  const region = '${options.region}';
8083
8095
 
@@ -8111,7 +8123,7 @@ ${hasDatabase ? " const vpc = new sst.aws.Vpc('Vpc', { nat: 'ec2' });\n\n" :
8111
8123
  hostedZoneId: '',
8112
8124
  });
8113
8125
 
8114
- return fromManifest(
8126
+ const provisioned = fromManifest(
8115
8127
  new Stack(app, '${(0, _geekmidas_manifest.canonicalId)(options.name)}'),
8116
8128
  constructs,
8117
8129
  {
@@ -8119,6 +8131,15 @@ ${inputs.join("\n")}
8119
8131
  },
8120
8132
  backends,
8121
8133
  );
8134
+
8135
+ // Each surface's URL, by its id: SST prints these and writes them to
8136
+ // .sst/outputs.json, where \`gkm deploy\` reads them to health-check
8137
+ // what it released.
8138
+ return Object.fromEntries(
8139
+ Object.entries(constructs)
8140
+ .filter(([, c]) => c.kind === 'rest-api' || c.kind === 'site')
8141
+ .map(([id]) => [id, provisioned[id]!.provides().url]),
8142
+ );
8122
8143
  },
8123
8144
  });
8124
8145
  `
@@ -8529,7 +8550,7 @@ ${workspaceConstructsGlobs(options.routesStructure, (0, node_path.dirname)(optio
8529
8550
  function deployBlock(options) {
8530
8551
  if (options.deployTarget !== "sst") return "";
8531
8552
  return `
8532
- // Deployed with \`sst deploy\`, from the manifest \`gkm build\` writes to
8553
+ // \`gkm deploy\` runs \`sst deploy\` on the manifest \`gkm build\` writes to
8533
8554
  // \`.gkm/manifest/aws.ts\`. Each construct becomes a managed AWS resource.
8534
8555
  deploy: { default: 'sst' },
8535
8556
  `;
@@ -11158,155 +11179,6 @@ function isFullstackTemplate(name) {
11158
11179
  return name === "fullstack";
11159
11180
  }
11160
11181
  //#endregion
11161
- //#region src/init/utils.ts
11162
- /**
11163
- * Detect the package manager being used based on lockfiles or npm_config_user_agent
11164
- */
11165
- function detectPackageManager(cwd = process.cwd()) {
11166
- if ((0, node_fs.existsSync)((0, node_path.join)(cwd, "pnpm-lock.yaml"))) return "pnpm";
11167
- if ((0, node_fs.existsSync)((0, node_path.join)(cwd, "yarn.lock"))) return "yarn";
11168
- if ((0, node_fs.existsSync)((0, node_path.join)(cwd, "bun.lockb"))) return "bun";
11169
- if ((0, node_fs.existsSync)((0, node_path.join)(cwd, "package-lock.json"))) return "npm";
11170
- const userAgent = process.env.npm_config_user_agent || "";
11171
- if (userAgent.includes("pnpm")) return "pnpm";
11172
- if (userAgent.includes("yarn")) return "yarn";
11173
- if (userAgent.includes("bun")) return "bun";
11174
- return "npm";
11175
- }
11176
- /** `gkm init`'s flags, which a name can swallow when a space goes missing. */
11177
- const INIT_FLAGS = [
11178
- "yes",
11179
- "name",
11180
- "template",
11181
- "monorepo",
11182
- "api-path",
11183
- "pm",
11184
- "skip-install"
11185
- ];
11186
- /**
11187
- * Validate project name for npm package naming conventions
11188
- */
11189
- function validateProjectName(name) {
11190
- if (!name) return "Project name is required";
11191
- if (!/^[a-z0-9-_@/.]+$/i.test(name)) return "Project name can only contain letters, numbers, hyphens, underscores, @, /, and .";
11192
- const flag = name.match(/--(\w[\w-]*)$/)?.[1];
11193
- if (flag && INIT_FLAGS.includes(flag)) return `"${name}" ends in the --${flag} flag. Did you mean \`${name.slice(0, -(flag.length + 2))} --${flag}\`?`;
11194
- if ([
11195
- "node_modules",
11196
- ".git",
11197
- "package.json",
11198
- "src"
11199
- ].includes(name.toLowerCase())) return `"${name}" is a reserved name`;
11200
- return true;
11201
- }
11202
- /**
11203
- * Check if a directory already exists at the target path
11204
- */
11205
- function checkDirectoryExists(name, cwd = process.cwd()) {
11206
- const targetPath = (0, node_path.join)(cwd, name);
11207
- if ((0, node_fs.existsSync)(targetPath)) return `Directory "${name}" already exists`;
11208
- return true;
11209
- }
11210
- /**
11211
- * Get the install command for a package manager
11212
- */
11213
- function getInstallCommand(pkgManager) {
11214
- switch (pkgManager) {
11215
- case "pnpm": return "pnpm install";
11216
- case "yarn": return "yarn";
11217
- case "bun": return "bun install";
11218
- default: return "npm install";
11219
- }
11220
- }
11221
- /**
11222
- * Get the dev command for a package manager
11223
- */
11224
- function getRunCommand(pkgManager, script) {
11225
- switch (pkgManager) {
11226
- case "pnpm": return `pnpm ${script}`;
11227
- case "yarn": return `yarn ${script}`;
11228
- case "bun": return `bun run ${script}`;
11229
- default: return `npm run ${script}`;
11230
- }
11231
- }
11232
- /**
11233
- * Run a binary the project installed, through its package manager — so it is
11234
- * the project's own version, not whatever \`npx\` would fetch.
11235
- */
11236
- function getExecCommand(pkgManager, command) {
11237
- switch (pkgManager) {
11238
- case "pnpm": return `pnpm exec ${command}`;
11239
- case "yarn": return `yarn ${command}`;
11240
- case "bun": return `bunx ${command}`;
11241
- default: return `npx --no-install ${command}`;
11242
- }
11243
- }
11244
- const lockfileByPm = {
11245
- pnpm: "pnpm-lock.yaml",
11246
- yarn: "yarn.lock",
11247
- npm: "package-lock.json",
11248
- bun: "bun.lockb"
11249
- };
11250
- /**
11251
- * Find the workspace/project root by walking up from cwd.
11252
- * Checks for PM-specific workspace config, package.json#workspaces,
11253
- * and lockfiles.
11254
- */
11255
- function findWorkspaceRoot(cwd, pm) {
11256
- let dir = cwd;
11257
- const root = (0, node_path.parse)(dir).root;
11258
- const lockfile = lockfileByPm[pm];
11259
- while (dir !== root) {
11260
- if (pm === "pnpm" && (0, node_fs.existsSync)((0, node_path.join)(dir, "pnpm-workspace.yaml"))) return dir;
11261
- const pkgJsonPath = (0, node_path.join)(dir, "package.json");
11262
- if ((0, node_fs.existsSync)(pkgJsonPath)) try {
11263
- if (JSON.parse((0, node_fs.readFileSync)(pkgJsonPath, "utf-8")).workspaces) return dir;
11264
- } catch {}
11265
- if ((0, node_fs.existsSync)((0, node_path.join)(dir, lockfile))) return dir;
11266
- dir = (0, node_path.dirname)(dir);
11267
- }
11268
- return cwd;
11269
- }
11270
- /**
11271
- * Get workspace package glob patterns from pnpm-workspace.yaml
11272
- * or package.json#workspaces.
11273
- */
11274
- function getWorkspaceGlobs(root) {
11275
- const pnpmWorkspacePath = (0, node_path.join)(root, "pnpm-workspace.yaml");
11276
- if ((0, node_fs.existsSync)(pnpmWorkspacePath)) {
11277
- const content = (0, node_fs.readFileSync)(pnpmWorkspacePath, "utf-8");
11278
- return (0, yaml.parse)(content)?.packages ?? [];
11279
- }
11280
- const rootPkgJsonPath = (0, node_path.join)(root, "package.json");
11281
- if ((0, node_fs.existsSync)(rootPkgJsonPath)) {
11282
- const pkg = JSON.parse((0, node_fs.readFileSync)(rootPkgJsonPath, "utf-8"));
11283
- if (Array.isArray(pkg.workspaces)) return pkg.workspaces;
11284
- if (pkg.workspaces?.packages) return pkg.workspaces.packages;
11285
- }
11286
- return [];
11287
- }
11288
- /**
11289
- * Find all package.json files across a workspace.
11290
- * Returns the root package.json plus all workspace member package.json paths.
11291
- */
11292
- function findWorkspacePackages(cwd, pm) {
11293
- const workspaceRoot = findWorkspaceRoot(cwd, pm);
11294
- const results = [];
11295
- const rootPkgJson = (0, node_path.join)(workspaceRoot, "package.json");
11296
- if ((0, node_fs.existsSync)(rootPkgJson)) results.push(rootPkgJson);
11297
- const globs = getWorkspaceGlobs(workspaceRoot);
11298
- for (const glob of globs) {
11299
- const pattern = `${glob}/package.json`;
11300
- const matches = fast_glob.default.sync(pattern, {
11301
- cwd: workspaceRoot,
11302
- absolute: true,
11303
- ignore: ["**/node_modules/**"]
11304
- });
11305
- results.push(...matches);
11306
- }
11307
- return [...new Set(results)];
11308
- }
11309
- //#endregion
11310
11182
  //#region src/init/index.ts
11311
11183
  /** `' staging, prod '` → `['staging', 'prod']`. */
11312
11184
  const stageList = (value) => value.split(",").map((name) => name.trim()).filter(Boolean);
@@ -11317,7 +11189,7 @@ const AWS_REGION = /^[a-z]{2}(-gov)?-[a-z]+-\d$/;
11317
11189
  */
11318
11190
  async function initCommand(projectName, options = {}) {
11319
11191
  const cwd = process.cwd();
11320
- const detectedPkgManager = detectPackageManager(cwd);
11192
+ const detectedPkgManager = require_utils.detectPackageManager(cwd);
11321
11193
  if (options.deploy && !deployTargetChoices.some((choice) => choice.value === options.deploy)) throw new UnknownDeployTarget(options.deploy, deployTargetChoices.map((c) => c.value));
11322
11194
  if (options.region && !AWS_REGION.test(options.region)) throw new NotAnAwsRegion(options.region);
11323
11195
  if (options.stages || options.localStage || options.protectedStage) {
@@ -11344,9 +11216,9 @@ async function initCommand(projectName, options = {}) {
11344
11216
  message: "Project name:",
11345
11217
  initial: "my-app",
11346
11218
  validate: (value) => {
11347
- const nameValid = validateProjectName(value);
11219
+ const nameValid = require_utils.validateProjectName(value);
11348
11220
  if (nameValid !== true) return nameValid;
11349
- const dirValid = checkDirectoryExists(value, cwd);
11221
+ const dirValid = require_utils.checkDirectoryExists(value, cwd);
11350
11222
  if (dirValid !== true) return dirValid;
11351
11223
  return true;
11352
11224
  }
@@ -11454,12 +11326,12 @@ async function initCommand(projectName, options = {}) {
11454
11326
  }
11455
11327
  if (projectName || options.name) {
11456
11328
  const nameToValidate = projectName || options.name;
11457
- const nameValid = validateProjectName(nameToValidate);
11329
+ const nameValid = require_utils.validateProjectName(nameToValidate);
11458
11330
  if (nameValid !== true) {
11459
11331
  console.error(nameValid);
11460
11332
  process.exit(1);
11461
11333
  }
11462
- const dirValid = checkDirectoryExists(nameToValidate, cwd);
11334
+ const dirValid = require_utils.checkDirectoryExists(nameToValidate, cwd);
11463
11335
  if (dirValid !== true) {
11464
11336
  console.error(dirValid);
11465
11337
  process.exit(1);
@@ -11565,7 +11437,7 @@ async function initCommand(projectName, options = {}) {
11565
11437
  if (!options.skipInstall) {
11566
11438
  console.log("\n📦 Installing dependencies...\n");
11567
11439
  try {
11568
- (0, node_child_process.execSync)(getInstallCommand(pkgManager), {
11440
+ (0, node_child_process.execSync)(require_utils.getInstallCommand(pkgManager), {
11569
11441
  cwd: targetDir,
11570
11442
  stdio: "inherit"
11571
11443
  });
@@ -11573,12 +11445,12 @@ async function initCommand(projectName, options = {}) {
11573
11445
  console.error("Failed to install dependencies");
11574
11446
  }
11575
11447
  try {
11576
- (0, node_child_process.execSync)(getExecCommand(pkgManager, "biome check --write ."), {
11448
+ (0, node_child_process.execSync)(require_utils.getExecCommand(pkgManager, "biome check --write ."), {
11577
11449
  cwd: targetDir,
11578
11450
  stdio: "inherit"
11579
11451
  });
11580
11452
  } catch {
11581
- console.warn(`\n⚠️ Formatting did not finish cleanly. Run ${getRunCommand(pkgManager, "fmt")} to see why.`);
11453
+ console.warn(`\n⚠️ Formatting did not finish cleanly. Run ${require_utils.getRunCommand(pkgManager, "fmt")} to see why.`);
11582
11454
  }
11583
11455
  }
11584
11456
  console.log("\n📦 Initializing git repository...\n");
@@ -11609,7 +11481,7 @@ async function initCommand(projectName, options = {}) {
11609
11481
  * Print success message with next steps
11610
11482
  */
11611
11483
  function printNextSteps(projectName, options, pkgManager) {
11612
- const devCommand = getRunCommand(pkgManager, "dev");
11484
+ const devCommand = require_utils.getRunCommand(pkgManager, "dev");
11613
11485
  const cdCommand = `cd ${projectName}`;
11614
11486
  console.log(`\n${"─".repeat(50)}`);
11615
11487
  console.log("\n✅ Project created successfully!\n");
@@ -11658,12 +11530,12 @@ function printNextSteps(projectName, options, pkgManager) {
11658
11530
  console.log("");
11659
11531
  if (options.deployTarget === "dokploy") {
11660
11532
  console.log("🚀 Deployment:");
11661
- for (const stage of deployed) console.log(` ${getRunCommand(pkgManager, `deploy:${stage}`)}`);
11533
+ for (const stage of deployed) console.log(` ${require_utils.getRunCommand(pkgManager, `deploy:${stage}`)}`);
11662
11534
  console.log("");
11663
11535
  }
11664
11536
  if (options.deployTarget === "sst") {
11665
11537
  console.log("🚀 Deployment (AWS, through SST):");
11666
- for (const stage of deployed) console.log(` ${getRunCommand(pkgManager, `deploy:${stage}`)} # gkm build, then sst deploy`);
11538
+ for (const stage of deployed) console.log(` ${require_utils.getRunCommand(pkgManager, `deploy:${stage}`)} # gkm deploy: build, sst deploy, health checks`);
11667
11539
  console.log(` Uses your AWS credentials, in ${options.region}.`);
11668
11540
  if (options.constructs.mail) console.log(" Set MAIL_FROM to a sender verified in SES first.");
11669
11541
  console.log("");
@@ -12398,8 +12270,8 @@ function testDatabases(reconciled) {
12398
12270
  * starts without the reference data the app needs.
12399
12271
  */
12400
12272
  async function migrateTestStage(workspace, env) {
12401
- const { migrateAndSeed } = await Promise.resolve().then(() => require("./migrate-dnaFMvOm.cjs"));
12402
- const { discover } = await Promise.resolve().then(() => require("./discover-Bc-4eA_p.cjs")).then((n) => n.discover_exports);
12273
+ const { migrateAndSeed } = await Promise.resolve().then(() => require("./migrate-tx9-P9uz.cjs"));
12274
+ const { discover } = await Promise.resolve().then(() => require("./discover-DHdECueV.cjs")).then((n) => n.discover_exports);
12403
12275
  const sources = {};
12404
12276
  const manifest = await discover({
12405
12277
  patterns: require_sniffer.constructGlobs(workspace),
@@ -12557,11 +12429,11 @@ function withVersion(range, version) {
12557
12429
  }
12558
12430
  async function upgradeCommand(options = {}) {
12559
12431
  const cwd = process.cwd();
12560
- const pm = detectPackageManager(cwd);
12561
- const root = findWorkspaceRoot(cwd, pm);
12432
+ const pm = require_utils.detectPackageManager(cwd);
12433
+ const root = require_utils.findWorkspaceRoot(cwd, pm);
12562
12434
  logger.log("\n📦 Scanning workspace for @geekmidas packages...\n");
12563
12435
  logger.log(` Package manager: ${pm}`);
12564
- const packageJsons = findWorkspacePackages(cwd, pm);
12436
+ const packageJsons = require_utils.findWorkspacePackages(cwd, pm);
12565
12437
  const occurrences = [...packageOccurrences(packageJsons), ...catalogOccurrences(root)];
12566
12438
  logger.log(` Found ${packageJsons.length} package(s) in workspace\n`);
12567
12439
  const ours = occurrences.filter((o) => o.name.startsWith(SCOPE) && !isIndirect(o.range));
@@ -12672,7 +12544,7 @@ function applyChanges(changes) {
12672
12544
  }
12673
12545
  }
12674
12546
  function install(pm, cwd) {
12675
- const command = getInstallCommand(pm);
12547
+ const command = require_utils.getInstallCommand(pm);
12676
12548
  logger.log(`\n Running: ${command}\n`);
12677
12549
  try {
12678
12550
  (0, node_child_process.execSync)(command, {
@@ -12829,7 +12701,7 @@ program.command("migrate").description("Apply each database construct's migratio
12829
12701
  try {
12830
12702
  const globalOptions = program.opts();
12831
12703
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
12832
- const { migrateCommand } = await Promise.resolve().then(() => require("./migrate-dnaFMvOm.cjs"));
12704
+ const { migrateCommand } = await Promise.resolve().then(() => require("./migrate-tx9-P9uz.cjs"));
12833
12705
  await migrateCommand({
12834
12706
  ...options,
12835
12707
  ...construct ? { construct } : {}
@@ -12843,7 +12715,7 @@ program.command("seed").description("Migrate, then run each database construct's
12843
12715
  try {
12844
12716
  const globalOptions = program.opts();
12845
12717
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
12846
- const { seedCommand } = await Promise.resolve().then(() => require("./migrate-dnaFMvOm.cjs"));
12718
+ const { seedCommand } = await Promise.resolve().then(() => require("./migrate-tx9-P9uz.cjs"));
12847
12719
  await seedCommand({
12848
12720
  ...options,
12849
12721
  ...construct ? { construct } : {}
@@ -12857,7 +12729,7 @@ program.command("migration").description("Write a construct's next migration: an
12857
12729
  try {
12858
12730
  const globalOptions = program.opts();
12859
12731
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
12860
- const { migrationCommand } = await Promise.resolve().then(() => require("./migrate-dnaFMvOm.cjs"));
12732
+ const { migrationCommand } = await Promise.resolve().then(() => require("./migrate-tx9-P9uz.cjs"));
12861
12733
  await migrationCommand({
12862
12734
  construct,
12863
12735
  ...name ? { name } : {}
@@ -12965,7 +12837,7 @@ program.command("encryption:rotate").description("Add a new current key to an En
12965
12837
  try {
12966
12838
  const globalOptions = program.opts();
12967
12839
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
12968
- const { encryptionRotateCommand } = await Promise.resolve().then(() => require("./encryption-ChBk3hTj.cjs"));
12840
+ const { encryptionRotateCommand } = await Promise.resolve().then(() => require("./encryption-C9X98u2F.cjs"));
12969
12841
  await encryptionRotateCommand(construct, options);
12970
12842
  } catch (error) {
12971
12843
  console.error(formatError(error));
@@ -12976,7 +12848,7 @@ program.command("encryption:retire").description("Remove an old key from an Encr
12976
12848
  try {
12977
12849
  const globalOptions = program.opts();
12978
12850
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
12979
- const { encryptionRetireCommand } = await Promise.resolve().then(() => require("./encryption-ChBk3hTj.cjs"));
12851
+ const { encryptionRetireCommand } = await Promise.resolve().then(() => require("./encryption-C9X98u2F.cjs"));
12980
12852
  await encryptionRetireCommand(construct, key, options);
12981
12853
  } catch (error) {
12982
12854
  console.error(formatError(error));
@@ -13019,7 +12891,7 @@ program.command("secrets:reconcile").description("Backfill missing custom secret
13019
12891
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
13020
12892
  const { loadWorkspaceConfig } = await Promise.resolve().then(() => require("./config.cjs"));
13021
12893
  const { reconcileMissingSecrets } = await Promise.resolve().then(() => require("./reconcile-CuCQBa5-.cjs"));
13022
- const { secretsStoreFor } = await Promise.resolve().then(() => require("./store-KvNQwYaB.cjs")).then((n) => n.store_exports);
12894
+ const { secretsStoreFor } = await Promise.resolve().then(() => require("./store-D_2ByRtW.cjs")).then((n) => n.store_exports);
13023
12895
  const { workspace } = await loadWorkspaceConfig();
13024
12896
  const stage = options.stage ?? workspace.stages.local;
13025
12897
  const store = await secretsStoreFor(workspace, stage);
@@ -13028,7 +12900,7 @@ program.command("secrets:reconcile").description("Backfill missing custom secret
13028
12900
  console.error(`No secrets found for stage "${stage}". Run "gkm secrets:init --stage ${stage}" first.`);
13029
12901
  process.exit(1);
13030
12902
  }
13031
- const { derivedContainers } = await Promise.resolve().then(() => require("./sniffer-BsfPa-GA.cjs")).then((n) => n.workspace_exports);
12903
+ const { derivedContainers } = await Promise.resolve().then(() => require("./sniffer-ByhbEW5A.cjs")).then((n) => n.workspace_exports);
13032
12904
  const result = reconcileMissingSecrets(secrets, workspace, await derivedContainers(workspace, stage));
13033
12905
  if (!result) {
13034
12906
  console.log(`\n✓ Secrets for stage "${stage}" are up-to-date`);
@@ -13042,8 +12914,8 @@ program.command("secrets:reconcile").description("Backfill missing custom secret
13042
12914
  process.exit(1);
13043
12915
  }
13044
12916
  });
13045
- program.command("deploy").description("Deploy a stage through its target").option("--target <name>", "Deploy target: dokploy, or one named in deploy.targets (default: deploy.default)").option("--provider <provider>", "[DEPRECATED] Use --target instead").requiredOption("--stage <stage>", "Deployment stage (e.g., production, staging)").option("--tag <tag>", "Image tag (default: stage-timestamp)").option("--skip-push", "Skip pushing image to registry").option("--skip-build", "Skip build step (use existing build)").option("--json", "Write events as JSON lines instead of progress; never prompts").option("--dry-run", "Show what would be created or reused; change, build and push nothing").action(async (options) => {
13046
- const { deployCli } = await Promise.resolve().then(() => require("./cli-DOAUp80L.cjs"));
12917
+ program.command("deploy").description("Deploy a stage through its target").option("--target <name>", "Deploy target: dokploy, sst, or one named in deploy.targets (default: deploy.default)").option("--provider <provider>", "[DEPRECATED] Use --target instead").requiredOption("--stage <stage>", "Deployment stage (e.g., production, staging)").option("--tag <tag>", "Image tag (default: stage-timestamp)").option("--skip-push", "Skip pushing image to registry").option("--skip-build", "Skip build step (use existing build)").option("--json", "Write events as JSON lines instead of progress; never prompts").option("--dry-run", "Show what would be created or reused; change, build and push nothing").action(async (options) => {
12918
+ const { deployCli } = await Promise.resolve().then(() => require("./cli-D3jofJ6j.cjs"));
13047
12919
  const globalOptions = program.opts();
13048
12920
  const code = await deployCli({
13049
12921
  cwd: (0, node_path.resolve)(globalOptions.cwd ?? process.cwd()),
@@ -13076,7 +12948,7 @@ program.command("deploy:github").description("Let GitHub Actions deploy a stage:
13076
12948
  try {
13077
12949
  const globalOptions = program.opts();
13078
12950
  if (globalOptions.cwd) process.chdir(globalOptions.cwd);
13079
- const { deployGithubCommand } = await Promise.resolve().then(() => require("./github-OUgPDlqg.cjs"));
12951
+ const { deployGithubCommand } = await Promise.resolve().then(() => require("./github-Dd3tMa1u.cjs"));
13080
12952
  await deployGithubCommand(options);
13081
12953
  } catch (error) {
13082
12954
  console.error(formatError(error));