@synteq/cli 0.2.0 → 1.1.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 (433) hide show
  1. package/dist/api/client.d.ts +362 -5
  2. package/dist/api/client.js +559 -44
  3. package/dist/api/client.js.map +1 -1
  4. package/dist/api/factory.js +5 -2
  5. package/dist/api/factory.js.map +1 -1
  6. package/dist/api/types.d.ts +892 -3
  7. package/dist/apps-support/deploy.d.ts +197 -0
  8. package/dist/apps-support/deploy.js +639 -0
  9. package/dist/apps-support/deploy.js.map +1 -0
  10. package/dist/apps-support/dotenv.d.ts +67 -0
  11. package/dist/apps-support/dotenv.js +136 -0
  12. package/dist/apps-support/dotenv.js.map +1 -0
  13. package/dist/apps-support/env-rollout.d.ts +18 -0
  14. package/dist/apps-support/env-rollout.js +52 -0
  15. package/dist/apps-support/env-rollout.js.map +1 -0
  16. package/dist/apps-support/git.d.ts +14 -0
  17. package/dist/apps-support/git.js +25 -0
  18. package/dist/apps-support/git.js.map +1 -0
  19. package/dist/apps-support/link.d.ts +25 -0
  20. package/dist/apps-support/link.js +39 -0
  21. package/dist/apps-support/link.js.map +1 -0
  22. package/dist/apps-support/log-stream.d.ts +25 -0
  23. package/dist/apps-support/log-stream.js +85 -0
  24. package/dist/apps-support/log-stream.js.map +1 -0
  25. package/dist/apps-support/paid-app.d.ts +64 -0
  26. package/dist/apps-support/paid-app.js +195 -0
  27. package/dist/apps-support/paid-app.js.map +1 -0
  28. package/dist/apps-support/plans.d.ts +44 -0
  29. package/dist/apps-support/plans.js +43 -0
  30. package/dist/apps-support/plans.js.map +1 -0
  31. package/dist/apps-support/resolve.d.ts +10 -0
  32. package/dist/apps-support/resolve.js +53 -0
  33. package/dist/apps-support/resolve.js.map +1 -0
  34. package/dist/apps-support/time.d.ts +20 -0
  35. package/dist/apps-support/time.js +82 -0
  36. package/dist/apps-support/time.js.map +1 -0
  37. package/dist/auth/scope.js +4 -0
  38. package/dist/auth/scope.js.map +1 -1
  39. package/dist/auth/tokens.d.ts +3 -0
  40. package/dist/auth/tokens.js +6 -4
  41. package/dist/auth/tokens.js.map +1 -1
  42. package/dist/base/command.d.ts +35 -0
  43. package/dist/base/command.js +87 -4
  44. package/dist/base/command.js.map +1 -1
  45. package/dist/commands/agents.d.ts +10 -0
  46. package/dist/commands/agents.js +53 -0
  47. package/dist/commands/agents.js.map +1 -0
  48. package/dist/commands/api.d.ts +0 -1
  49. package/dist/commands/api.js +6 -5
  50. package/dist/commands/api.js.map +1 -1
  51. package/dist/commands/app/deployment/list.d.ts +14 -0
  52. package/dist/commands/app/deployment/list.js +45 -0
  53. package/dist/commands/app/deployment/list.js.map +1 -0
  54. package/dist/commands/app/deployment/rollback.d.ts +18 -0
  55. package/dist/commands/app/deployment/rollback.js +57 -0
  56. package/dist/commands/app/deployment/rollback.js.map +1 -0
  57. package/dist/commands/app/deployment/show.d.ts +26 -0
  58. package/dist/commands/app/deployment/show.js +98 -0
  59. package/dist/commands/app/deployment/show.js.map +1 -0
  60. package/dist/commands/app/domain/add.d.ts +17 -0
  61. package/dist/commands/app/domain/add.js +59 -0
  62. package/dist/commands/app/domain/add.js.map +1 -0
  63. package/dist/commands/app/domain/list.d.ts +14 -0
  64. package/dist/commands/app/domain/list.js +42 -0
  65. package/dist/commands/app/domain/list.js.map +1 -0
  66. package/dist/commands/app/domain/remove.d.ts +16 -0
  67. package/dist/commands/app/domain/remove.js +51 -0
  68. package/dist/commands/app/domain/remove.js.map +1 -0
  69. package/dist/commands/app/domain/verify.d.ts +15 -0
  70. package/dist/commands/app/domain/verify.js +39 -0
  71. package/dist/commands/app/domain/verify.js.map +1 -0
  72. package/dist/commands/app/env/add.d.ts +22 -0
  73. package/dist/commands/app/env/add.js +103 -0
  74. package/dist/commands/app/env/add.js.map +1 -0
  75. package/dist/commands/app/env/list.d.ts +17 -0
  76. package/dist/commands/app/env/list.js +40 -0
  77. package/dist/commands/app/env/list.js.map +1 -0
  78. package/dist/commands/app/env/reveal.d.ts +17 -0
  79. package/dist/commands/app/env/reveal.js +40 -0
  80. package/dist/commands/app/env/reveal.js.map +1 -0
  81. package/dist/commands/app/env/rm.d.ts +16 -0
  82. package/dist/commands/app/env/rm.js +48 -0
  83. package/dist/commands/app/env/rm.js.map +1 -0
  84. package/dist/commands/app/health.d.ts +14 -0
  85. package/dist/commands/app/health.js +40 -0
  86. package/dist/commands/app/health.js.map +1 -0
  87. package/dist/commands/app/index.d.ts +6 -0
  88. package/dist/commands/app/index.js +7 -0
  89. package/dist/commands/app/index.js.map +1 -0
  90. package/dist/commands/app/link.d.ts +22 -0
  91. package/dist/commands/app/link.js +31 -0
  92. package/dist/commands/app/link.js.map +1 -0
  93. package/dist/commands/app/logs.d.ts +25 -0
  94. package/dist/commands/app/logs.js +121 -0
  95. package/dist/commands/app/logs.js.map +1 -0
  96. package/dist/commands/app/metrics.d.ts +21 -0
  97. package/dist/commands/app/metrics.js +123 -0
  98. package/dist/commands/app/metrics.js.map +1 -0
  99. package/dist/commands/app/plan/change.d.ts +18 -0
  100. package/dist/commands/app/plan/change.js +79 -0
  101. package/dist/commands/app/plan/change.js.map +1 -0
  102. package/dist/commands/app/plan/show.d.ts +14 -0
  103. package/dist/commands/app/plan/show.js +40 -0
  104. package/dist/commands/app/plan/show.js.map +1 -0
  105. package/dist/commands/app/settings/set.d.ts +25 -0
  106. package/dist/commands/app/settings/set.js +96 -0
  107. package/dist/commands/app/settings/set.js.map +1 -0
  108. package/dist/commands/app/settings/show.d.ts +14 -0
  109. package/dist/commands/app/settings/show.js +48 -0
  110. package/dist/commands/app/settings/show.js.map +1 -0
  111. package/dist/commands/app/unlink.d.ts +8 -0
  112. package/dist/commands/app/unlink.js +25 -0
  113. package/dist/commands/app/unlink.js.map +1 -0
  114. package/dist/commands/apps/create.d.ts +26 -0
  115. package/dist/commands/apps/create.js +91 -0
  116. package/dist/commands/apps/create.js.map +1 -0
  117. package/dist/commands/apps/list.d.ts +16 -0
  118. package/dist/commands/apps/list.js +54 -0
  119. package/dist/commands/apps/list.js.map +1 -0
  120. package/dist/commands/baremetal/activity.d.ts +14 -0
  121. package/dist/commands/baremetal/activity.js +53 -0
  122. package/dist/commands/baremetal/activity.js.map +1 -0
  123. package/dist/commands/baremetal/bandwidth.d.ts +10 -0
  124. package/dist/commands/baremetal/bandwidth.js +86 -0
  125. package/dist/commands/baremetal/bandwidth.js.map +1 -0
  126. package/dist/commands/baremetal/console.d.ts +20 -0
  127. package/dist/commands/baremetal/console.js +72 -0
  128. package/dist/commands/baremetal/console.js.map +1 -0
  129. package/dist/commands/baremetal/details.d.ts +11 -0
  130. package/dist/commands/baremetal/details.js +116 -0
  131. package/dist/commands/baremetal/details.js.map +1 -0
  132. package/dist/commands/baremetal/index.d.ts +5 -0
  133. package/dist/commands/baremetal/index.js +6 -0
  134. package/dist/commands/baremetal/index.js.map +1 -0
  135. package/dist/commands/baremetal/install-password.d.ts +14 -0
  136. package/dist/commands/baremetal/install-password.js +80 -0
  137. package/dist/commands/baremetal/install-password.js.map +1 -0
  138. package/dist/commands/baremetal/list.d.ts +11 -0
  139. package/dist/commands/baremetal/list.js +59 -0
  140. package/dist/commands/baremetal/list.js.map +1 -0
  141. package/dist/commands/baremetal/order.d.ts +34 -0
  142. package/dist/commands/baremetal/order.js +394 -0
  143. package/dist/commands/baremetal/order.js.map +1 -0
  144. package/dist/commands/baremetal/power.d.ts +18 -0
  145. package/dist/commands/baremetal/power.js +168 -0
  146. package/dist/commands/baremetal/power.js.map +1 -0
  147. package/dist/commands/baremetal/reinstall.d.ts +21 -0
  148. package/dist/commands/baremetal/reinstall.js +168 -0
  149. package/dist/commands/baremetal/reinstall.js.map +1 -0
  150. package/dist/commands/config/profile/add.d.ts +11 -0
  151. package/dist/commands/config/profile/add.js +51 -0
  152. package/dist/commands/config/profile/add.js.map +1 -0
  153. package/dist/commands/config/profile/list.d.ts +7 -0
  154. package/dist/commands/config/profile/list.js +29 -0
  155. package/dist/commands/config/profile/list.js.map +1 -0
  156. package/dist/commands/config/profile/remove.d.ts +11 -0
  157. package/dist/commands/config/profile/remove.js +35 -0
  158. package/dist/commands/config/profile/remove.js.map +1 -0
  159. package/dist/commands/config/profile/use.d.ts +10 -0
  160. package/dist/commands/config/profile/use.js +44 -0
  161. package/dist/commands/config/profile/use.js.map +1 -0
  162. package/dist/commands/config/show.js +4 -1
  163. package/dist/commands/config/show.js.map +1 -1
  164. package/dist/commands/credits/add.js +2 -2
  165. package/dist/commands/credits/add.js.map +1 -1
  166. package/dist/commands/credits/index.js +5 -1
  167. package/dist/commands/credits/index.js.map +1 -1
  168. package/dist/commands/deploy.d.ts +51 -0
  169. package/dist/commands/deploy.js +515 -0
  170. package/dist/commands/deploy.js.map +1 -0
  171. package/dist/commands/function/create.d.ts +29 -0
  172. package/dist/commands/function/create.js +113 -0
  173. package/dist/commands/function/create.js.map +1 -0
  174. package/dist/commands/function/credits/add.d.ts +29 -0
  175. package/dist/commands/function/credits/add.js +209 -0
  176. package/dist/commands/function/credits/add.js.map +1 -0
  177. package/dist/commands/function/credits/auto-reload.d.ts +27 -0
  178. package/dist/commands/function/credits/auto-reload.js +107 -0
  179. package/dist/commands/function/credits/auto-reload.js.map +1 -0
  180. package/dist/commands/function/credits/index.d.ts +22 -0
  181. package/dist/commands/function/credits/index.js +80 -0
  182. package/dist/commands/function/credits/index.js.map +1 -0
  183. package/dist/commands/function/cron/add.d.ts +19 -0
  184. package/dist/commands/function/cron/add.js +74 -0
  185. package/dist/commands/function/cron/add.js.map +1 -0
  186. package/dist/commands/function/cron/list.d.ts +12 -0
  187. package/dist/commands/function/cron/list.js +55 -0
  188. package/dist/commands/function/cron/list.js.map +1 -0
  189. package/dist/commands/function/cron/rm.d.ts +17 -0
  190. package/dist/commands/function/cron/rm.js +73 -0
  191. package/dist/commands/function/cron/rm.js.map +1 -0
  192. package/dist/commands/function/cron/run.d.ts +16 -0
  193. package/dist/commands/function/cron/run.js +59 -0
  194. package/dist/commands/function/cron/run.js.map +1 -0
  195. package/dist/commands/function/cron/update.d.ts +21 -0
  196. package/dist/commands/function/cron/update.js +87 -0
  197. package/dist/commands/function/cron/update.js.map +1 -0
  198. package/dist/commands/function/delete.d.ts +23 -0
  199. package/dist/commands/function/delete.js +90 -0
  200. package/dist/commands/function/delete.js.map +1 -0
  201. package/dist/commands/function/deploy.d.ts +64 -0
  202. package/dist/commands/function/deploy.js +608 -0
  203. package/dist/commands/function/deploy.js.map +1 -0
  204. package/dist/commands/function/env/list.d.ts +12 -0
  205. package/dist/commands/function/env/list.js +46 -0
  206. package/dist/commands/function/env/list.js.map +1 -0
  207. package/dist/commands/function/env/reveal.d.ts +21 -0
  208. package/dist/commands/function/env/reveal.js +54 -0
  209. package/dist/commands/function/env/reveal.js.map +1 -0
  210. package/dist/commands/function/env/rm.d.ts +17 -0
  211. package/dist/commands/function/env/rm.js +62 -0
  212. package/dist/commands/function/env/rm.js.map +1 -0
  213. package/dist/commands/function/env/set.d.ts +28 -0
  214. package/dist/commands/function/env/set.js +124 -0
  215. package/dist/commands/function/env/set.js.map +1 -0
  216. package/dist/commands/function/index.d.ts +14 -0
  217. package/dist/commands/function/index.js +11 -0
  218. package/dist/commands/function/index.js.map +1 -0
  219. package/dist/commands/function/init.d.ts +47 -0
  220. package/dist/commands/function/init.js +269 -0
  221. package/dist/commands/function/init.js.map +1 -0
  222. package/dist/commands/function/invoke.d.ts +29 -0
  223. package/dist/commands/function/invoke.js +138 -0
  224. package/dist/commands/function/invoke.js.map +1 -0
  225. package/dist/commands/function/link.d.ts +23 -0
  226. package/dist/commands/function/link.js +80 -0
  227. package/dist/commands/function/link.js.map +1 -0
  228. package/dist/commands/function/list.d.ts +16 -0
  229. package/dist/commands/function/list.js +55 -0
  230. package/dist/commands/function/list.js.map +1 -0
  231. package/dist/commands/function/logs.d.ts +29 -0
  232. package/dist/commands/function/logs.js +171 -0
  233. package/dist/commands/function/logs.js.map +1 -0
  234. package/dist/commands/function/pause.d.ts +19 -0
  235. package/dist/commands/function/pause.js +50 -0
  236. package/dist/commands/function/pause.js.map +1 -0
  237. package/dist/commands/function/releases.d.ts +15 -0
  238. package/dist/commands/function/releases.js +62 -0
  239. package/dist/commands/function/releases.js.map +1 -0
  240. package/dist/commands/function/resume.d.ts +16 -0
  241. package/dist/commands/function/resume.js +47 -0
  242. package/dist/commands/function/resume.js.map +1 -0
  243. package/dist/commands/function/rollback.d.ts +18 -0
  244. package/dist/commands/function/rollback.js +69 -0
  245. package/dist/commands/function/rollback.js.map +1 -0
  246. package/dist/commands/function/settings/set.d.ts +23 -0
  247. package/dist/commands/function/settings/set.js +119 -0
  248. package/dist/commands/function/settings/set.js.map +1 -0
  249. package/dist/commands/function/show.d.ts +15 -0
  250. package/dist/commands/function/show.js +80 -0
  251. package/dist/commands/function/show.js.map +1 -0
  252. package/dist/commands/function/unlink.d.ts +9 -0
  253. package/dist/commands/function/unlink.js +34 -0
  254. package/dist/commands/function/unlink.js.map +1 -0
  255. package/dist/commands/link.d.ts +77 -0
  256. package/dist/commands/link.js +530 -0
  257. package/dist/commands/link.js.map +1 -0
  258. package/dist/commands/login.js +9 -0
  259. package/dist/commands/login.js.map +1 -1
  260. package/dist/commands/order.js +3 -1
  261. package/dist/commands/order.js.map +1 -1
  262. package/dist/commands/payments/methods/delete.js +2 -2
  263. package/dist/commands/payments/methods/delete.js.map +1 -1
  264. package/dist/commands/resources.js +50 -7
  265. package/dist/commands/resources.js.map +1 -1
  266. package/dist/commands/status.d.ts +12 -0
  267. package/dist/commands/status.js +71 -0
  268. package/dist/commands/status.js.map +1 -0
  269. package/dist/commands/storage/detach.js +1 -1
  270. package/dist/commands/storage/detach.js.map +1 -1
  271. package/dist/commands/storage/list.js +6 -2
  272. package/dist/commands/storage/list.js.map +1 -1
  273. package/dist/commands/storage/order.d.ts +2 -0
  274. package/dist/commands/storage/order.js +100 -18
  275. package/dist/commands/storage/order.js.map +1 -1
  276. package/dist/commands/storage/resize.js +19 -6
  277. package/dist/commands/storage/resize.js.map +1 -1
  278. package/dist/commands/tickets/create.d.ts +2 -0
  279. package/dist/commands/tickets/create.js +40 -1
  280. package/dist/commands/tickets/create.js.map +1 -1
  281. package/dist/commands/tickets/download.d.ts +18 -0
  282. package/dist/commands/tickets/download.js +138 -0
  283. package/dist/commands/tickets/download.js.map +1 -0
  284. package/dist/commands/tickets/list.js +13 -7
  285. package/dist/commands/tickets/list.js.map +1 -1
  286. package/dist/commands/tickets/reply.d.ts +2 -0
  287. package/dist/commands/tickets/reply.js +33 -4
  288. package/dist/commands/tickets/reply.js.map +1 -1
  289. package/dist/commands/vds/order.js +72 -7
  290. package/dist/commands/vds/order.js.map +1 -1
  291. package/dist/commands/vps/console.js +14 -6
  292. package/dist/commands/vps/console.js.map +1 -1
  293. package/dist/commands/vps/details.js +7 -1
  294. package/dist/commands/vps/details.js.map +1 -1
  295. package/dist/commands/vps/ip/add.js +76 -9
  296. package/dist/commands/vps/ip/add.js.map +1 -1
  297. package/dist/commands/vps/list.js +13 -4
  298. package/dist/commands/vps/list.js.map +1 -1
  299. package/dist/commands/vps/order.d.ts +19 -0
  300. package/dist/commands/vps/order.js +179 -23
  301. package/dist/commands/vps/order.js.map +1 -1
  302. package/dist/commands/vps/power.js +2 -2
  303. package/dist/commands/vps/power.js.map +1 -1
  304. package/dist/commands/vps/reinstall.js +2 -2
  305. package/dist/commands/vps/reinstall.js.map +1 -1
  306. package/dist/commands/vps/resize.js +36 -13
  307. package/dist/commands/vps/resize.js.map +1 -1
  308. package/dist/commands/whoami.d.ts +5 -0
  309. package/dist/commands/whoami.js +8 -3
  310. package/dist/commands/whoami.js.map +1 -1
  311. package/dist/config/paths.d.ts +1 -1
  312. package/dist/config/paths.js +6 -1
  313. package/dist/config/paths.js.map +1 -1
  314. package/dist/config/store.d.ts +58 -0
  315. package/dist/config/store.js +84 -2
  316. package/dist/config/store.js.map +1 -1
  317. package/dist/functions-support/credits.d.ts +64 -0
  318. package/dist/functions-support/credits.js +181 -0
  319. package/dist/functions-support/credits.js.map +1 -0
  320. package/dist/functions-support/cron.d.ts +17 -0
  321. package/dist/functions-support/cron.js +99 -0
  322. package/dist/functions-support/cron.js.map +1 -0
  323. package/dist/functions-support/env.d.ts +23 -0
  324. package/dist/functions-support/env.js +44 -0
  325. package/dist/functions-support/env.js.map +1 -0
  326. package/dist/functions-support/link.d.ts +25 -0
  327. package/dist/functions-support/link.js +51 -0
  328. package/dist/functions-support/link.js.map +1 -0
  329. package/dist/functions-support/poll.d.ts +40 -0
  330. package/dist/functions-support/poll.js +109 -0
  331. package/dist/functions-support/poll.js.map +1 -0
  332. package/dist/functions-support/resolve.d.ts +3 -0
  333. package/dist/functions-support/resolve.js +31 -0
  334. package/dist/functions-support/resolve.js.map +1 -0
  335. package/dist/functions-support/runtime.d.ts +30 -0
  336. package/dist/functions-support/runtime.js +52 -0
  337. package/dist/functions-support/runtime.js.map +1 -0
  338. package/dist/functions-support/source.d.ts +92 -0
  339. package/dist/functions-support/source.js +343 -0
  340. package/dist/functions-support/source.js.map +1 -0
  341. package/dist/help/scope-aware-help.js +10 -1
  342. package/dist/help/scope-aware-help.js.map +1 -1
  343. package/dist/tui/App.js +10 -25
  344. package/dist/tui/App.js.map +1 -1
  345. package/dist/tui/components/Menu.d.ts +3 -1
  346. package/dist/tui/components/Menu.js +7 -3
  347. package/dist/tui/components/Menu.js.map +1 -1
  348. package/dist/tui/router.d.ts +1 -1
  349. package/dist/tui/router.js.map +1 -1
  350. package/dist/tui/screens/Billing.js +56 -4
  351. package/dist/tui/screens/Billing.js.map +1 -1
  352. package/dist/tui/screens/Dashboard.js +8 -7
  353. package/dist/tui/screens/Dashboard.js.map +1 -1
  354. package/dist/tui/screens/Deploy.d.ts +2 -0
  355. package/dist/tui/screens/Deploy.js +912 -0
  356. package/dist/tui/screens/Deploy.js.map +1 -0
  357. package/dist/tui/screens/Order.js +359 -26
  358. package/dist/tui/screens/Order.js.map +1 -1
  359. package/dist/tui/screens/Resources.js +273 -31
  360. package/dist/tui/screens/Resources.js.map +1 -1
  361. package/dist/tui/screens/Tickets.js +18 -6
  362. package/dist/tui/screens/Tickets.js.map +1 -1
  363. package/dist/tui/screens/deployPreset.d.ts +20 -0
  364. package/dist/tui/screens/deployPreset.js +11 -0
  365. package/dist/tui/screens/deployPreset.js.map +1 -0
  366. package/dist/tui/screens/resources/AppDetail.d.ts +7 -0
  367. package/dist/tui/screens/resources/AppDetail.js +810 -0
  368. package/dist/tui/screens/resources/AppDetail.js.map +1 -0
  369. package/dist/tui/screens/resources/FunctionDetail.d.ts +7 -0
  370. package/dist/tui/screens/resources/FunctionDetail.js +751 -0
  371. package/dist/tui/screens/resources/FunctionDetail.js.map +1 -0
  372. package/dist/ui/attach.d.ts +15 -0
  373. package/dist/ui/attach.js +63 -0
  374. package/dist/ui/attach.js.map +1 -0
  375. package/dist/ui/baremetal-resolve.d.ts +10 -0
  376. package/dist/ui/baremetal-resolve.js +50 -0
  377. package/dist/ui/baremetal-resolve.js.map +1 -0
  378. package/dist/ui/confirm.js +1 -1
  379. package/dist/ui/confirm.js.map +1 -1
  380. package/dist/ui/cycle.d.ts +66 -0
  381. package/dist/ui/cycle.js +96 -0
  382. package/dist/ui/cycle.js.map +1 -0
  383. package/dist/ui/deploy-ui.d.ts +75 -0
  384. package/dist/ui/deploy-ui.js +243 -0
  385. package/dist/ui/deploy-ui.js.map +1 -0
  386. package/dist/ui/order-result.d.ts +4 -0
  387. package/dist/ui/order-result.js +32 -0
  388. package/dist/ui/order-result.js.map +1 -0
  389. package/dist/ui/payment-gate.d.ts +26 -0
  390. package/dist/ui/payment-gate.js +70 -0
  391. package/dist/ui/payment-gate.js.map +1 -0
  392. package/dist/ui/payment.js +10 -3
  393. package/dist/ui/payment.js.map +1 -1
  394. package/dist/ui/portal.d.ts +1 -1
  395. package/dist/ui/portal.js +7 -2
  396. package/dist/ui/portal.js.map +1 -1
  397. package/dist/ui/project-resolve.d.ts +25 -0
  398. package/dist/ui/project-resolve.js +31 -0
  399. package/dist/ui/project-resolve.js.map +1 -0
  400. package/dist/ui/render-mode.d.ts +5 -0
  401. package/dist/ui/render-mode.js +1 -1
  402. package/dist/ui/render-mode.js.map +1 -1
  403. package/dist/ui/resource-detail.js +0 -3
  404. package/dist/ui/resource-detail.js.map +1 -1
  405. package/dist/ui/resource-resolve.d.ts +9 -2
  406. package/dist/ui/resource-resolve.js +11 -4
  407. package/dist/ui/resource-resolve.js.map +1 -1
  408. package/dist/ui/spinner.d.ts +10 -1
  409. package/dist/ui/spinner.js +12 -3
  410. package/dist/ui/spinner.js.map +1 -1
  411. package/dist/ui/table.d.ts +7 -0
  412. package/dist/ui/table.js +11 -0
  413. package/dist/ui/table.js.map +1 -1
  414. package/dist/ui/tax.d.ts +10 -0
  415. package/dist/ui/tax.js +31 -0
  416. package/dist/ui/tax.js.map +1 -0
  417. package/dist/ui/ticket-resolve.d.ts +9 -1
  418. package/dist/ui/ticket-resolve.js +13 -2
  419. package/dist/ui/ticket-resolve.js.map +1 -1
  420. package/dist/ui/volume-resolve.js +4 -1
  421. package/dist/ui/volume-resolve.js.map +1 -1
  422. package/dist/ui/wait.d.ts +4 -0
  423. package/dist/ui/wait.js +7 -2
  424. package/dist/ui/wait.js.map +1 -1
  425. package/dist/ui/wizard.d.ts +2 -1
  426. package/dist/ui/wizard.js +1 -1
  427. package/dist/ui/wizard.js.map +1 -1
  428. package/dist/version-check-bin.js +2 -2
  429. package/dist/version-check-bin.js.map +1 -1
  430. package/dist/version-check.d.ts +5 -0
  431. package/dist/version-check.js +6 -1
  432. package/dist/version-check.js.map +1 -1
  433. package/package.json +53 -6
@@ -0,0 +1,168 @@
1
+ import { Args, Flags } from "@oclif/core";
2
+ import { BaseCommand } from "../../base/command.js";
3
+ import { resolveBaremetalRef, labelFor } from "../../ui/baremetal-resolve.js";
4
+ import { isInteractive, pickFromCatalog, promptString, promptSecret } from "../../ui/wizard.js";
5
+ import { readStdin } from "../../ui/stdin.js";
6
+ import { waitFor } from "../../ui/wait.js";
7
+ import { ok } from "../../ui/glyphs.js";
8
+ export default class BaremetalReinstall extends BaseCommand {
9
+ static description = [
10
+ "Reinstall a bare metal server's operating system (erases the machine).",
11
+ "",
12
+ "The server confirms destructive intent by requiring you to type its",
13
+ "exact reference (shown in `baremetal details`) — not a plain --yes.",
14
+ "Without --confirm-reference on a non-interactive terminal, this exits 1.",
15
+ ].join("\n");
16
+ // Session-only server-side: POST /baremetal/{id}/reinstall matches no rule
17
+ // in the backend's _API_KEY_RULES (destructive wipe — deliberately outside
18
+ // the bare-metal key surface of read/power/settings). There is no
19
+ // write:baremetal:reinstall scope to grant.
20
+ static apiKeyScope = "none";
21
+ static examples = [
22
+ "<%= config.bin %> baremetal reinstall 019e... --profile ubuntu-22.04 # prompts for confirm-reference",
23
+ "<%= config.bin %> baremetal reinstall 019e... --profile ubuntu-22.04 --confirm-reference SRV-04213 --yes",
24
+ "<%= config.bin %> baremetal reinstall 019e... --profile debian-12 --ssh-public-key 'ssh-ed25519 AAAA... user@host'",
25
+ "<%= config.bin %> baremetal reinstall 019e... --profile ubuntu-22.04 --confirm-reference SRV-04213 --wait -o json",
26
+ ];
27
+ static args = {
28
+ id: Args.string({
29
+ description: "Server id (full or the short id from `baremetal list`), hostname, reference, or IP.",
30
+ required: true,
31
+ }),
32
+ };
33
+ static flags = {
34
+ profile: Flags.string({
35
+ description: "Install profile id (the OS to install) — see `baremetal details` or run interactively to pick from the server's own list.",
36
+ }),
37
+ hostname: Flags.string({ description: "Hostname for the reinstalled OS (defaults to the server's current hostname/reference)." }),
38
+ "ssh-public-key": Flags.string({ description: "Raw OpenSSH public key string to authorise on the new install." }),
39
+ "confirm-reference": Flags.string({
40
+ description: "The server's exact reference (as shown in `baremetal details`), required to confirm the wipe. Prompted for interactively when omitted.",
41
+ }),
42
+ yes: Flags.boolean({
43
+ char: "y",
44
+ description: "Skip the interactive confirm-reference prompt (still requires --confirm-reference to be set).",
45
+ }),
46
+ "account-password": Flags.string({
47
+ description: "Your account password — the server requires it as step-up auth for reinstall (never the guest OS password). Prefer --account-password-stdin or the interactive prompt.",
48
+ exclusive: ["account-password-stdin"],
49
+ }),
50
+ "account-password-stdin": Flags.boolean({
51
+ description: "Read the account (step-up) password from stdin.",
52
+ exclusive: ["account-password"],
53
+ }),
54
+ wait: Flags.boolean({
55
+ description: "Poll the ILA job until it reaches a terminal state. Exit 3 on timeout or failure.",
56
+ }),
57
+ timeout: Flags.integer({
58
+ description: "Seconds to wait before giving up (default 1800). Only with --wait.",
59
+ default: 1800,
60
+ min: 30,
61
+ }),
62
+ };
63
+ async run() {
64
+ await this.initClients();
65
+ const { args, flags } = await this.parse(BaremetalReinstall);
66
+ try {
67
+ const server = await resolveBaremetalRef(this.clients.api, args.id);
68
+ let profile = flags.profile;
69
+ if (!profile) {
70
+ if (!isInteractive() || this.outputFormat === "json") {
71
+ this.error("Provide --profile (install profile id). Run `baremetal details` to see the server's reference, or run interactively to pick.", {
72
+ exit: 1,
73
+ });
74
+ }
75
+ const { profiles } = await this.clients.api.baremetal.installProfiles(server.id);
76
+ if (profiles.length === 0) {
77
+ this.error(`No install profiles available for ${labelFor(server)} right now.`, { exit: 1 });
78
+ }
79
+ profile = await pickFromCatalog("Pick an install profile", profiles.map((p) => ({
80
+ value: p.id,
81
+ name: p.name ?? p.id,
82
+ description: [p.os_name, p.os_version].filter(Boolean).join(" ") || undefined,
83
+ })));
84
+ }
85
+ let confirmReference = flags["confirm-reference"];
86
+ if (!confirmReference) {
87
+ if (!isInteractive() || this.outputFormat === "json") {
88
+ this.error(`Reinstall erases the machine — provide --confirm-reference ${server.reference} to confirm (from a non-interactive terminal).`, { exit: 1 });
89
+ }
90
+ confirmReference = await promptString(`Type the server's reference (${server.reference}) to confirm the wipe`);
91
+ }
92
+ if (confirmReference !== server.reference) {
93
+ this.error(`"${confirmReference}" doesn't match this server's reference (${server.reference}). Aborted - no change made.`, { exit: 1 });
94
+ }
95
+ // Step-up: the server rejects reinstall (400 "Current password is
96
+ // required") without password_challenge — the CALLER's account
97
+ // password, distinct from any guest OS password. Same shape as the
98
+ // VPS reinstall command.
99
+ let accountPassword = flags["account-password"];
100
+ if (flags["account-password-stdin"]) {
101
+ accountPassword = (await readStdin()).replace(/\r?\n$/, "");
102
+ if (!accountPassword) {
103
+ this.error("No account password on stdin (--account-password-stdin).", { exit: 1 });
104
+ }
105
+ }
106
+ if (!accountPassword) {
107
+ if (isInteractive() && this.outputFormat === "table") {
108
+ accountPassword = await promptSecret("Account password (step-up auth for reinstall)");
109
+ }
110
+ else {
111
+ this.error("Reinstall requires your account password as step-up auth. Provide --account-password, --account-password-stdin, or run interactively.", { exit: 1 });
112
+ }
113
+ }
114
+ const result = await this.clients.api.baremetal.reinstall(server.id, {
115
+ install_profile: profile,
116
+ hostname: flags.hostname,
117
+ ssh_public_key: flags["ssh-public-key"],
118
+ confirm_reference: confirmReference,
119
+ password_challenge: accountPassword,
120
+ });
121
+ if (!flags.wait) {
122
+ this.emit(result, () => {
123
+ this.log(`Reinstall queued for ${labelFor(server)} — job ${result.job_id ?? "(unknown)"} (${result.state ?? "queued"}).`);
124
+ });
125
+ return;
126
+ }
127
+ if (this.outputFormat === "table") {
128
+ this.log(`Reinstall queued for ${labelFor(server)} — job ${result.job_id ?? "(unknown)"}.`);
129
+ }
130
+ if (!result.job_id) {
131
+ this.error("No job id returned — cannot poll with --wait.", { exit: 3 });
132
+ }
133
+ const onStatus = this.outputFormat === "json"
134
+ ? (line) => process.stderr.write(line + "\n")
135
+ : (line) => this.log(` ${line}`);
136
+ const classify = (jobs) => {
137
+ const job = jobs.jobs.find((j) => j.id === result.job_id);
138
+ if (!job)
139
+ return { state: "pending", label: "waiting for job to appear" };
140
+ if (job.failed) {
141
+ return { state: "failure", label: job.state ?? "failed", reason: `Reinstall ended in state "${job.state}"` };
142
+ }
143
+ if (!job.active)
144
+ return { state: "success", label: job.state ?? "completed" };
145
+ return { state: "pending", label: job.state ?? "installing" };
146
+ };
147
+ const wr = await waitFor({
148
+ timeoutSeconds: flags.timeout,
149
+ poll: () => this.clients.api.baremetal.jobs(server.id),
150
+ classify,
151
+ onStatus,
152
+ });
153
+ if (wr.outcome === "timeout") {
154
+ this.error(`Timed out after ${flags.timeout}s waiting for the reinstall of ${labelFor(server)} (last status: ${wr.lastLabel ?? "unknown"}).`, { exit: 3 });
155
+ }
156
+ if (wr.outcome === "failure") {
157
+ this.error(wr.reason, { exit: 3 });
158
+ }
159
+ this.emit(wr.value, () => {
160
+ this.log(ok(`Reinstall of ${labelFor(server)} finished (${wr.elapsedSeconds}s).`));
161
+ });
162
+ }
163
+ catch (err) {
164
+ this.fail(err);
165
+ }
166
+ }
167
+ }
168
+ //# sourceMappingURL=reinstall.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"reinstall.js","sourceRoot":"","sources":["../../../src/commands/baremetal/reinstall.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import { BaseCommand } from "../../../base/command.js";
2
+ export default class ConfigProfileAdd extends BaseCommand {
3
+ static description: string;
4
+ static apiKeyScope: string;
5
+ static examples: string[];
6
+ static args: {
7
+ name: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
8
+ url: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
9
+ };
10
+ run(): Promise<void>;
11
+ }
@@ -0,0 +1,51 @@
1
+ import { Args } from "@oclif/core";
2
+ import { BaseCommand } from "../../../base/command.js";
3
+ // Profile names double as a filename fragment for the per-profile token file,
4
+ // so keep them to a safe, predictable character set.
5
+ const NAME_RE = /^[a-zA-Z0-9][a-zA-Z0-9_-]*$/;
6
+ export default class ConfigProfileAdd extends BaseCommand {
7
+ static description = [
8
+ "Create or update a connection profile.",
9
+ "",
10
+ "A profile is a named API base URL with its own stored login, so you can",
11
+ "switch between environments (e.g. prod and staging) without logging in",
12
+ "again each time. Activate one with `config profile use <name>`.",
13
+ ].join("\n");
14
+ static apiKeyScope = "none";
15
+ static examples = [
16
+ "<%= config.bin %> config profile add staging https://api.staging.cloud.synteq.com",
17
+ "<%= config.bin %> config profile add local http://localhost:8000",
18
+ ];
19
+ static args = {
20
+ name: Args.string({
21
+ description: "Profile name (starts alphanumeric; letters, digits, - and _).",
22
+ required: true,
23
+ }),
24
+ url: Args.string({
25
+ description: "API base URL for this profile.",
26
+ required: true,
27
+ }),
28
+ };
29
+ async run() {
30
+ await this.initClients();
31
+ const { args } = await this.parse(ConfigProfileAdd);
32
+ const name = args.name.trim();
33
+ if (!NAME_RE.test(name)) {
34
+ this.error(`Invalid profile name "${args.name}". Start with a letter or digit; use only letters, digits, - and _.`, { exit: 1 });
35
+ }
36
+ const raw = args.url.trim();
37
+ try {
38
+ new URL(raw);
39
+ }
40
+ catch {
41
+ this.error(`Invalid URL: "${args.url}".`, { exit: 1 });
42
+ }
43
+ const existed = name in this.clients.config.profiles();
44
+ this.clients.config.setProfile(name, { api_base_url: raw });
45
+ this.emit({ profile: name, api_base_url: raw, updated: existed }, () => {
46
+ this.log(`${existed ? "Updated" : "Saved"} profile "${name}" → ${raw}.`);
47
+ this.log(`Activate it with \`synteq config profile use ${name}\`, then \`synteq login\`.`);
48
+ });
49
+ }
50
+ }
51
+ //# sourceMappingURL=add.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"add.js","sourceRoot":"","sources":["../../../../src/commands/config/profile/add.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAEvD,8EAA8E;AAC9E,qDAAqD;AACrD,MAAM,OAAO,GAAG,6BAA6B,CAAC;AAE9C,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,WAAW;IACvD,MAAM,CAAC,WAAW,GAAG;QACnB,wCAAwC;QACxC,EAAE;QACF,yEAAyE;QACzE,wEAAwE;QACxE,iEAAiE;KAClE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACb,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC;IAC5B,MAAM,CAAC,QAAQ,GAAG;QAChB,mFAAmF;QACnF,kEAAkE;KACnE,CAAC;IACF,MAAM,CAAC,IAAI,GAAG;QACZ,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;YAChB,WAAW,EAAE,+DAA+D;YAC5E,QAAQ,EAAE,IAAI;SACf,CAAC;QACF,GAAG,EAAE,IAAI,CAAC,MAAM,CAAC;YACf,WAAW,EAAE,gCAAgC;YAC7C,QAAQ,EAAE,IAAI;SACf,CAAC;KACH,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACzB,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QACpD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAC9B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACxB,IAAI,CAAC,KAAK,CACR,yBAAyB,IAAI,CAAC,IAAI,qEAAqE,EACvG,EAAE,IAAI,EAAE,CAAC,EAAE,CACZ,CAAC;QACJ,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,EAAE,CAAC;QAC5B,IAAI,CAAC;YACH,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;QACf,CAAC;QAAC,MAAM,CAAC;YACP,IAAI,CAAC,KAAK,CAAC,iBAAiB,IAAI,CAAC,GAAG,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QACzD,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,IAAI,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACvD,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,EAAE,YAAY,EAAE,GAAG,EAAE,CAAC,CAAC;QAE5D,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,EAAE,GAAG,EAAE;YACrE,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,OAAO,aAAa,IAAI,OAAO,GAAG,GAAG,CAAC,CAAC;YACzE,IAAI,CAAC,GAAG,CAAC,gDAAgD,IAAI,4BAA4B,CAAC,CAAC;QAC7F,CAAC,CAAC,CAAC;IACL,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { BaseCommand } from "../../../base/command.js";
2
+ export default class ConfigProfileList extends BaseCommand {
3
+ static description: string;
4
+ static apiKeyScope: string;
5
+ static examples: string[];
6
+ run(): Promise<void>;
7
+ }
@@ -0,0 +1,29 @@
1
+ import { BaseCommand } from "../../../base/command.js";
2
+ import { dim } from "../../../ui/glyphs.js";
3
+ export default class ConfigProfileList extends BaseCommand {
4
+ static description = "List saved connection profiles (name, API URL, active marker).";
5
+ static apiKeyScope = "none";
6
+ static examples = ["<%= config.bin %> config profile list"];
7
+ async run() {
8
+ await this.initClients();
9
+ const cfg = this.clients.config;
10
+ const profiles = cfg.profiles();
11
+ const { profile: active } = cfg.resolve();
12
+ const names = Object.keys(profiles).sort();
13
+ this.emit({ active_profile: active, profiles }, () => {
14
+ if (names.length === 0) {
15
+ this.log("No profiles saved. Add one with `synteq config profile add <name> <api-url>`.");
16
+ return;
17
+ }
18
+ for (const name of names) {
19
+ const marker = name === active ? "*" : " ";
20
+ this.log(`${marker} ${name} ${dim(profiles[name].api_base_url)}`);
21
+ }
22
+ if (active && !names.includes(active)) {
23
+ this.log("");
24
+ this.log(dim(`Active profile "${active}" has no saved URL — using the default base URL.`));
25
+ }
26
+ });
27
+ }
28
+ }
29
+ //# sourceMappingURL=list.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list.js","sourceRoot":"","sources":["../../../../src/commands/config/profile/list.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,GAAG,EAAE,MAAM,uBAAuB,CAAC;AAE5C,MAAM,CAAC,OAAO,OAAO,iBAAkB,SAAQ,WAAW;IACxD,MAAM,CAAC,WAAW,GAAG,gEAAgE,CAAC;IACtF,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC;IAC5B,MAAM,CAAC,QAAQ,GAAG,CAAC,uCAAuC,CAAC,CAAC;IAE5D,KAAK,CAAC,GAAG;QACP,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAChC,MAAM,QAAQ,GAAG,GAAG,CAAC,QAAQ,EAAE,CAAC;QAChC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC;QAC1C,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC;QAE3C,IAAI,CAAC,IAAI,CAAC,EAAE,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE;YACnD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,IAAI,CAAC,GAAG,CAAC,+EAA+E,CAAC,CAAC;gBAC1F,OAAO;YACT,CAAC;YACD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,MAAM,MAAM,GAAG,IAAI,KAAK,MAAM,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC;gBAC3C,IAAI,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,IAAI,KAAK,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,YAAY,CAAC,EAAE,CAAC,CAAC;YACrE,CAAC;YACD,IAAI,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC;gBACtC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACb,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,mBAAmB,MAAM,kDAAkD,CAAC,CAAC,CAAC;YAC7F,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { BaseCommand } from "../../../base/command.js";
2
+ export default class ConfigProfileRemove extends BaseCommand {
3
+ static aliases: string[];
4
+ static description: string;
5
+ static apiKeyScope: string;
6
+ static examples: string[];
7
+ static args: {
8
+ name: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
9
+ };
10
+ run(): Promise<void>;
11
+ }
@@ -0,0 +1,35 @@
1
+ import { Args } from "@oclif/core";
2
+ import { BaseCommand } from "../../../base/command.js";
3
+ import { TokenStore } from "../../../auth/tokens.js";
4
+ export default class ConfigProfileRemove extends BaseCommand {
5
+ static aliases = ["config:profile:rm"];
6
+ static description = "Delete a connection profile and clear its stored login.";
7
+ static apiKeyScope = "none";
8
+ static examples = ["<%= config.bin %> config profile remove staging"];
9
+ static args = {
10
+ name: Args.string({
11
+ description: "Profile name to delete.",
12
+ required: true,
13
+ }),
14
+ };
15
+ async run() {
16
+ await this.initClients();
17
+ const { args } = await this.parse(ConfigProfileRemove);
18
+ const name = args.name.trim();
19
+ const cfg = this.clients.config;
20
+ if (!(name in cfg.profiles())) {
21
+ this.error(`No profile named "${name}".`, { exit: 1 });
22
+ }
23
+ const wasActive = cfg.resolve().profile === name;
24
+ cfg.deleteProfile(name);
25
+ // Clear the profile's stored credentials so they don't linger orphaned.
26
+ await new TokenStore({ profile: name }).clear();
27
+ this.emit({ removed: name, was_active: wasActive }, () => {
28
+ this.log(`Removed profile "${name}" and cleared its stored login.`);
29
+ if (wasActive) {
30
+ this.log("It was the active profile — now using the default context.");
31
+ }
32
+ });
33
+ }
34
+ }
35
+ //# sourceMappingURL=remove.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"remove.js","sourceRoot":"","sources":["../../../../src/commands/config/profile/remove.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,MAAM,CAAC,OAAO,OAAO,mBAAoB,SAAQ,WAAW;IAC1D,MAAM,CAAC,OAAO,GAAG,CAAC,mBAAmB,CAAC,CAAC;IACvC,MAAM,CAAC,WAAW,GAAG,yDAAyD,CAAC;IAC/E,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC;IAC5B,MAAM,CAAC,QAAQ,GAAG,CAAC,iDAAiD,CAAC,CAAC;IACtE,MAAM,CAAC,IAAI,GAAG;QACZ,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;YAChB,WAAW,EAAE,yBAAyB;YACtC,QAAQ,EAAE,IAAI;SACf,CAAC;KACH,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACzB,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;QACvD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAEhC,IAAI,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,KAAK,CAAC,qBAAqB,IAAI,IAAI,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QACzD,CAAC;QAED,MAAM,SAAS,GAAG,GAAG,CAAC,OAAO,EAAE,CAAC,OAAO,KAAK,IAAI,CAAC;QACjD,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QACxB,wEAAwE;QACxE,MAAM,IAAI,UAAU,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC;QAEhD,IAAI,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,EAAE,GAAG,EAAE;YACvD,IAAI,CAAC,GAAG,CAAC,oBAAoB,IAAI,iCAAiC,CAAC,CAAC;YACpE,IAAI,SAAS,EAAE,CAAC;gBACd,IAAI,CAAC,GAAG,CAAC,4DAA4D,CAAC,CAAC;YACzE,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { BaseCommand } from "../../../base/command.js";
2
+ export default class ConfigProfileUse extends BaseCommand {
3
+ static description: string;
4
+ static apiKeyScope: string;
5
+ static examples: string[];
6
+ static args: {
7
+ name: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
8
+ };
9
+ run(): Promise<void>;
10
+ }
@@ -0,0 +1,44 @@
1
+ import { Args } from "@oclif/core";
2
+ import { BaseCommand } from "../../../base/command.js";
3
+ import { TokenStore } from "../../../auth/tokens.js";
4
+ export default class ConfigProfileUse extends BaseCommand {
5
+ static description = "Switch the active connection profile. Pass `default` to clear it.";
6
+ static apiKeyScope = "none";
7
+ static examples = [
8
+ "<%= config.bin %> config profile use staging",
9
+ "<%= config.bin %> config profile use default # back to the unnamed default context",
10
+ ];
11
+ static args = {
12
+ name: Args.string({
13
+ description: "Profile name to activate, or `default` to clear the active profile.",
14
+ required: true,
15
+ }),
16
+ };
17
+ async run() {
18
+ await this.initClients();
19
+ const { args } = await this.parse(ConfigProfileUse);
20
+ const name = args.name.trim();
21
+ const cfg = this.clients.config;
22
+ if (name === "default" || name === "") {
23
+ cfg.useProfile(null);
24
+ this.emit({ active_profile: null }, () => this.log("Cleared the active profile — using the default context."));
25
+ return;
26
+ }
27
+ if (!(name in cfg.profiles())) {
28
+ this.error(`No profile named "${name}". Add it with \`synteq config profile add ${name} <api-url>\`.`, { exit: 1 });
29
+ }
30
+ cfg.useProfile(name);
31
+ const signedIn = (await new TokenStore({ profile: name }).read()) != null;
32
+ this.emit({ active_profile: name, signed_in: signedIn }, () => {
33
+ this.log(`Active profile is now "${name}".`);
34
+ if (!signedIn) {
35
+ this.log("You're not signed in on this profile yet — run `synteq login`.");
36
+ }
37
+ if (process.env.SYNTEQ_PROFILE) {
38
+ this.log("");
39
+ this.log(`Note: SYNTEQ_PROFILE is set to "${process.env.SYNTEQ_PROFILE}" and overrides this for the current shell.`);
40
+ }
41
+ });
42
+ }
43
+ }
44
+ //# sourceMappingURL=use.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use.js","sourceRoot":"","sources":["../../../../src/commands/config/profile/use.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,aAAa,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,yBAAyB,CAAC;AAErD,MAAM,CAAC,OAAO,OAAO,gBAAiB,SAAQ,WAAW;IACvD,MAAM,CAAC,WAAW,GAAG,mEAAmE,CAAC;IACzF,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC;IAC5B,MAAM,CAAC,QAAQ,GAAG;QAChB,8CAA8C;QAC9C,sFAAsF;KACvF,CAAC;IACF,MAAM,CAAC,IAAI,GAAG;QACZ,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC;YAChB,WAAW,EAAE,qEAAqE;YAClF,QAAQ,EAAE,IAAI;SACf,CAAC;KACH,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACzB,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC;QACpD,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC;QAEhC,IAAI,IAAI,KAAK,SAAS,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;YACtC,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;YACrB,IAAI,CAAC,IAAI,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,EAAE,GAAG,EAAE,CACvC,IAAI,CAAC,GAAG,CAAC,yDAAyD,CAAC,CACpE,CAAC;YACF,OAAO;QACT,CAAC;QAED,IAAI,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC;YAC9B,IAAI,CAAC,KAAK,CACR,qBAAqB,IAAI,8CAA8C,IAAI,eAAe,EAC1F,EAAE,IAAI,EAAE,CAAC,EAAE,CACZ,CAAC;QACJ,CAAC;QAED,GAAG,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;QACrB,MAAM,QAAQ,GAAG,CAAC,MAAM,IAAI,UAAU,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,IAAI,IAAI,CAAC;QAE1E,IAAI,CAAC,IAAI,CAAC,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,QAAQ,EAAE,EAAE,GAAG,EAAE;YAC5D,IAAI,CAAC,GAAG,CAAC,0BAA0B,IAAI,IAAI,CAAC,CAAC;YAC7C,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,IAAI,CAAC,GAAG,CAAC,gEAAgE,CAAC,CAAC;YAC7E,CAAC;YACD,IAAI,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,CAAC;gBAC/B,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBACb,IAAI,CAAC,GAAG,CACN,mCAAmC,OAAO,CAAC,GAAG,CAAC,cAAc,6CAA6C,CAC3G,CAAC;YACJ,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC"}
@@ -20,6 +20,7 @@ export default class ConfigShow extends BaseCommand {
20
20
  await this.initClients();
21
21
  const { flags } = await this.parse(ConfigShow);
22
22
  const cfg = this.clients.config.get();
23
+ const { profile: activeProfile } = this.clients.config.resolve();
23
24
  const tokens = await this.clients.tokens.read();
24
25
  let activeProjectId = cfg.default_project_id ?? null;
25
26
  let activeProjectName = null;
@@ -37,6 +38,7 @@ export default class ConfigShow extends BaseCommand {
37
38
  catch { }
38
39
  }
39
40
  const data = {
41
+ active_profile: activeProfile,
40
42
  active_team_id: cfg.active_team_id ?? null,
41
43
  active_project_id: activeProjectId,
42
44
  active_project_source: activeProjectSource,
@@ -46,7 +48,7 @@ export default class ConfigShow extends BaseCommand {
46
48
  api_base_url: cfg.api_base_url,
47
49
  default_output_format: cfg.default_output_format,
48
50
  config_path: configFile(),
49
- tokens_path: tokensFile(),
51
+ tokens_path: tokensFile(activeProfile),
50
52
  }
51
53
  : {}),
52
54
  };
@@ -57,6 +59,7 @@ export default class ConfigShow extends BaseCommand {
57
59
  ? " (CLI override)"
58
60
  : "";
59
61
  this.log(panel("Synteq CLI", [
62
+ ["Profile", activeProfile ?? "(default)"],
60
63
  ["Active team", data.active_team_id ?? "(none — run `synteq team`)"],
61
64
  ["Active project", `${data.active_project_id ?? "(none)"}${projectSuffix}`],
62
65
  ["Signed in as", data.signed_in_as_user_id ?? "(not signed in)"],
@@ -1 +1 @@
1
- {"version":3,"file":"show.js","sourceRoot":"","sources":["../../../src/commands/config/show.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"show.js","sourceRoot":"","sources":["../../../src/commands/config/show.ts"],"names":[],"mappings":"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"}
@@ -71,7 +71,7 @@ export default class CreditsAdd extends BaseCommand {
71
71
  "then pass --payment-method.", { exit: 1 });
72
72
  }
73
73
  if (!flags.yes) {
74
- if (!isInteractive()) {
74
+ if (!(isInteractive() && this.outputFormat === "table")) {
75
75
  this.error(yesRequiredMessage("`credits add`"), { exit: 1 });
76
76
  }
77
77
  const currencyLabel = flags.currency ?? payment.balance_currency ?? "";
@@ -83,7 +83,7 @@ export default class CreditsAdd extends BaseCommand {
83
83
  message: `Charge ${amount.toFixed(2)}${currencyLabel ? ` ${currencyLabel}` : ""} now?`,
84
84
  });
85
85
  if (outcome !== "confirmed") {
86
- this.log("Aborted — no charge made.");
86
+ this.log("Aborted - no charge made.");
87
87
  return;
88
88
  }
89
89
  }
@@ -1 +1 @@
1
- {"version":3,"file":"add.js","sourceRoot":"","sources":["../../../src/commands/credits/add.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"add.js","sourceRoot":"","sources":["../../../src/commands/credits/add.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAC;AACjF,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAClD,OAAO,EAAE,kBAAkB,EAAE,kBAAkB,EAAE,MAAM,qBAAqB,CAAC;AAE7E,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,WAAW;IACjD,MAAM,CAAC,WAAW,GAAG;QACnB,sDAAsD;QACtD,EAAE;QACF,qEAAqE;QACrE,uEAAuE;QACvE,yEAAyE;QACzE,0DAA0D;KAC3D,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACb,MAAM,CAAC,WAAW,GAAG,MAAM,CAAC;IAC5B,MAAM,CAAC,QAAQ,GAAG;QAChB,iHAAiH;QACjH,wGAAwG;QACxG,0GAA0G;QAC1G,4FAA4F;KAC7F,CAAC;IACF,MAAM,CAAC,IAAI,GAAG;QACZ,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC;YAClB,WAAW,EAAE,0EAA0E;YACvF,QAAQ,EAAE,KAAK;SAChB,CAAC;KACH,CAAC;IACF,MAAM,CAAC,KAAK,GAAG;QACb,gBAAgB,EAAE,KAAK,CAAC,MAAM,CAAC;YAC7B,WAAW,EACT,+GAA+G;SAClH,CAAC;QACF,QAAQ,EAAE,KAAK,CAAC,MAAM,CAAC;YACrB,WAAW,EAAE,wDAAwD;SACtE,CAAC;QACF,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC;YACjB,IAAI,EAAE,GAAG;YACT,WAAW,EACT,iGAAiG;SACpG,CAAC;KACH,CAAC;IAEF,KAAK,CAAC,GAAG;QACP,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACzB,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAErD,MAAM,eAAe,GACnB,aAAa,EAAE,IAAI,IAAI,CAAC,YAAY,KAAK,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;QAEjE,IAAI,MAAM,GACR,IAAI,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAC9D,IAAI,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC,CAAC,EAAE,CAAC;YACtE,IAAI,CAAC,KAAK,CAAC,mBAAmB,IAAI,CAAC,MAAM,8BAA8B,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QACxF,CAAC;QACD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACzB,IAAI,CAAC,eAAe,EAAE,CAAC;gBACrB,IAAI,CAAC,KAAK,CAAC,4DAA4D,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;YACxF,CAAC;YACD,MAAM,GAAG,MAAM,YAAY,CAAC,iCAAiC,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC;QAChF,CAAC;QACD,IAAI,MAAM,GAAG,MAAM,EAAE,CAAC;YACpB,IAAI,CAAC,KAAK,CAAC,iDAAiD,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;QAC7E,CAAC;QAED,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,WAAW,CAAC;gBAChC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG;gBACrB,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;gBAC3B,MAAM,EAAE,IAAI,CAAC,OAAO,CAAC,MAAM;gBAC3B,IAAI,EAAE,eAAe;gBACrB,OAAO,EAAE,EAAE,eAAe,EAAE,KAAK,CAAC,gBAAgB,CAAC,EAAE;gBACrD,aAAa,EAAE,CAAC,eAAe;gBAC/B,GAAG,EAAE,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC;aAC5B,CAAC,CAAC;YAEH,IAAI,CAAC,OAAO,CAAC,iBAAiB,EAAE,CAAC;gBAC/B,IAAI,CAAC,KAAK,CACR,uFAAuF;oBACrF,6BAA6B,EAC/B,EAAE,IAAI,EAAE,CAAC,EAAE,CACZ,CAAC;YACJ,CAAC;YAED,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;gBACf,IAAI,CAAC,CAAC,aAAa,EAAE,IAAI,IAAI,CAAC,YAAY,KAAK,OAAO,CAAC,EAAE,CAAC;oBACxD,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,eAAe,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC,CAAC;gBAC/D,CAAC;gBACD,MAAM,aAAa,GAAG,KAAK,CAAC,QAAQ,IAAI,OAAO,CAAC,gBAAgB,IAAI,EAAE,CAAC;gBACvE,IAAI,CAAC,GAAG,CACN,OAAO,CAAC,YAAY,EAAE;oBACpB,CAAC,QAAQ,EAAE,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC;oBAC7E,CAAC,SAAS,EAAE,OAAO,CAAC,OAAO,CAAC;iBAC7B,CAAC,CACH,CAAC;gBACF,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC;oBACvC,OAAO,EAAE,UAAU,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,aAAa,CAAC,CAAC,CAAC,IAAI,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO;iBACvF,CAAC,CAAC;gBACH,IAAI,OAAO,KAAK,WAAW,EAAE,CAAC;oBAC5B,IAAI,CAAC,GAAG,CAAC,2BAA2B,CAAC,CAAC;oBACtC,OAAO;gBACT,CAAC;YACH,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC;gBACnD,iBAAiB,EAAE,OAAO,CAAC,iBAAiB;gBAC5C,MAAM;gBACN,QAAQ,EAAE,KAAK,CAAC,QAAQ;aACzB,CAAC,CAAC;YAEH,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE;gBACrB,IAAI,CAAC,GAAG,CACN,KAAK,CAAC,2BAA2B,EAAE;oBACjC,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;oBACtC,CAAC,YAAY,EAAE,MAAM,CAAC,UAAU,CAAC;oBACjC,CAAC,WAAW,EAAE,MAAM,CAAC,SAAS,CAAC;oBAC/B,CAAC,UAAU,EAAE,MAAM,CAAC,QAAQ,CAAC;oBAC7B,CAAC,iBAAiB,EAAE,MAAM,CAAC,eAAe,CAAC;oBAC3C,CAAC,cAAc,EAAE,MAAM,CAAC,YAAY,CAAC;oBACrC,CAAC,gBAAgB,EAAE,MAAM,CAAC,cAAc,CAAC;iBAC1C,CAAC,CACH,CAAC;YACJ,CAAC,CAAC,CAAC;YAEH,IAAI,MAAM,CAAC,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;gBAChD,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;gBAClC,CAAC;gBAAC,MAAM,CAAC,CAAA,CAAC;YACZ,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACjB,CAAC;IACH,CAAC"}
@@ -1,6 +1,10 @@
1
1
  import CreditsList from "./list.js";
2
2
  export default class CreditsDefault extends CreditsList {
3
- static description = "Show credit balance + recent credit history (alias for `synteq credits list`).";
3
+ static description = [
4
+ "Show credit balance + recent credit history (alias for `synteq credits list`).",
5
+ "",
6
+ "Run credits for a function: `synteq function credits`.",
7
+ ].join("\n");
4
8
  static apiKeyScope = "read:billing";
5
9
  static examples = [
6
10
  "<%= config.bin %> credits",
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/credits/index.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,WAAW,CAAC;AAEpC,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,WAAW;IACrD,MAAM,CAAC,WAAW,GAChB,gFAAgF,CAAC;IACnF,MAAM,CAAC,WAAW,GAAG,cAAc,CAAC;IACpC,MAAM,CAAC,QAAQ,GAAG;QAChB,2BAA2B;QAC3B,mCAAmC;KACpC,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/commands/credits/index.ts"],"names":[],"mappings":"AAAA,OAAO,WAAW,MAAM,WAAW,CAAC;AAEpC,MAAM,CAAC,OAAO,OAAO,cAAe,SAAQ,WAAW;IACrD,MAAM,CAAC,WAAW,GAAG;QACnB,gFAAgF;QAChF,EAAE;QACF,wDAAwD;KACzD,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACb,MAAM,CAAC,WAAW,GAAG,cAAc,CAAC;IACpC,MAAM,CAAC,QAAQ,GAAG;QAChB,2BAA2B;QAC3B,mCAAmC;KACpC,CAAC"}
@@ -0,0 +1,51 @@
1
+ import { BaseCommand } from "../base/command.js";
2
+ import type { AppPlan } from "../api/types.js";
3
+ /**
4
+ * `synteq deploy` — trigger a build + deploy for an app.
5
+ *
6
+ * Two source modes:
7
+ * - `--image <ref>` — deploy a pre-built image reference. No build step;
8
+ * the operator pulls + rolls it out. Fully supported today.
9
+ * - `--dir <path>` — tarball a local directory, upload it (a presigned PUT
10
+ * straight to the object store — see apps-support/deploy.ts) and build it
11
+ * in the cluster. Bare `synteq deploy` is `--dir .`.
12
+ * - `--source-url <url>` — a .tar.gz that already exists at a URL: the CLI
13
+ * downloads it and uploads it like a packed directory.
14
+ *
15
+ * After triggering, the command polls GET /apps/{id}/builds and prints the
16
+ * build's status as it advances pending → building → pushing → succeeded.
17
+ */
18
+ export default class Deploy extends BaseCommand {
19
+ static apiKeyScope: string;
20
+ static description: string;
21
+ static examples: string[];
22
+ static flags: {
23
+ app: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
24
+ create: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
25
+ plan: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
26
+ location: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
27
+ project: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
28
+ "payment-method": import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
29
+ "apply-credits": import("@oclif/core/interfaces").BooleanFlag<boolean>;
30
+ yes: import("@oclif/core/interfaces").BooleanFlag<boolean>;
31
+ image: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
32
+ dir: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
33
+ "env-file": import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
34
+ "source-url": import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
35
+ "no-wait": import("@oclif/core/interfaces").BooleanFlag<boolean>;
36
+ "poll-interval": import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
37
+ timeout: import("@oclif/core/interfaces").OptionFlag<number, import("@oclif/core/interfaces").CustomOptions>;
38
+ };
39
+ run(): Promise<void>;
40
+ /** Print a single build status line (used for --no-wait / json fallback). */
41
+ /** The app's plan (for its source size cap) beside the full plan list. */
42
+ private appPlan;
43
+ /** Upload a source archive and start its build — a packed --dir or a
44
+ * downloaded --source-url, behind the same plan size check. */
45
+ private uploadArchive;
46
+ private printBuildLine;
47
+ }
48
+ /** The smallest plan above `current` (by its cap — the plan list carries no
49
+ * rank) whose packed cap holds `packedBytes`; undefined when none does. The
50
+ * API's 413 names the same plan, so the pre-check and the server agree. */
51
+ export declare function smallestPlanFor(plans: AppPlan[], current: AppPlan, packedBytes: number): AppPlan | undefined;