@vercel/cli-support 0.0.0 → 65.4.0

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 (355) hide show
  1. package/LICENSE +202 -0
  2. package/README.md +100 -3
  3. package/dist/chunks/add-7NS6HIWC.js +8 -0
  4. package/dist/chunks/add-NMYFDVXW.js +8 -0
  5. package/dist/chunks/add-PMJ5BECU.js +8 -0
  6. package/dist/chunks/build-BCY6HQJG.js +7 -0
  7. package/dist/chunks/chunk-25565AGS.js +7 -0
  8. package/dist/chunks/chunk-2EYYB6YN.js +7 -0
  9. package/dist/chunks/chunk-2GHZGOWT.js +7 -0
  10. package/dist/chunks/chunk-2K3ISCQ6.js +7 -0
  11. package/dist/chunks/chunk-2NABMKFV.js +29 -0
  12. package/dist/chunks/chunk-2S6PE6GB.js +7 -0
  13. package/dist/chunks/chunk-2TUVL6WE.js +12 -0
  14. package/dist/chunks/chunk-363SJ4TN.js +7 -0
  15. package/dist/chunks/chunk-3G3FQYMW.js +7 -0
  16. package/dist/chunks/chunk-3LIKVGFT.js +8 -0
  17. package/dist/chunks/chunk-3XW7N4W3.js +9 -0
  18. package/dist/chunks/chunk-462YCCJZ.js +7 -0
  19. package/dist/chunks/chunk-4CACOKMS.js +7 -0
  20. package/dist/chunks/chunk-4N6LMERQ.js +57 -0
  21. package/dist/chunks/chunk-4NTBYNFR.js +17 -0
  22. package/dist/chunks/chunk-4SAVH3H7.js +7 -0
  23. package/dist/chunks/chunk-4VFYJU37.js +7 -0
  24. package/dist/chunks/chunk-527GBU3K.js +7 -0
  25. package/dist/chunks/chunk-5IWFRZQT.js +10 -0
  26. package/dist/chunks/chunk-5KUUMQ3M.js +7 -0
  27. package/dist/chunks/chunk-5RMIM4S2.js +7 -0
  28. package/dist/chunks/chunk-5V53NA6C.js +7 -0
  29. package/dist/chunks/chunk-67GZ5REA.js +7 -0
  30. package/dist/chunks/chunk-6I6QJHCY.js +7 -0
  31. package/dist/chunks/chunk-6IDNVZZR.js +7 -0
  32. package/dist/chunks/chunk-6OVX3PWM.js +7 -0
  33. package/dist/chunks/chunk-6QKS6QK7.js +7 -0
  34. package/dist/chunks/chunk-6TXEVQA4.js +7 -0
  35. package/dist/chunks/chunk-6VH56CX2.js +19 -0
  36. package/dist/chunks/chunk-6Y2ZL5XJ.js +98 -0
  37. package/dist/chunks/chunk-6YXIWZ3X.js +25 -0
  38. package/dist/chunks/chunk-773GOZIR.js +13 -0
  39. package/dist/chunks/chunk-7E3WREH5.js +7 -0
  40. package/dist/chunks/chunk-7EJQLVWX.js +7 -0
  41. package/dist/chunks/chunk-7L2K4OKM.js +63 -0
  42. package/dist/chunks/chunk-7L5QUDUR.js +8 -0
  43. package/dist/chunks/chunk-7QAGSRCU.js +7 -0
  44. package/dist/chunks/chunk-7R6TRRG5.js +7 -0
  45. package/dist/chunks/chunk-7YKFF6CE.js +7 -0
  46. package/dist/chunks/chunk-A2RZZQEP.js +7 -0
  47. package/dist/chunks/chunk-ADLBLGT3.js +8 -0
  48. package/dist/chunks/chunk-AM46JVVN.js +7 -0
  49. package/dist/chunks/chunk-ANMDN3EG.js +9 -0
  50. package/dist/chunks/chunk-AYUUSAB7.js +7 -0
  51. package/dist/chunks/chunk-BLUPZPAS.js +7 -0
  52. package/dist/chunks/chunk-BPUANOGW.js +7 -0
  53. package/dist/chunks/chunk-BRQUZ5NC.js +7 -0
  54. package/dist/chunks/chunk-BS32OUOC.js +7 -0
  55. package/dist/chunks/chunk-BTI5TG6Q.js +7 -0
  56. package/dist/chunks/chunk-BUJITHGZ.js +8 -0
  57. package/dist/chunks/chunk-BVGGTBYE.js +7 -0
  58. package/dist/chunks/chunk-BVH2AEFE.js +7 -0
  59. package/dist/chunks/chunk-BZENIQ7N.js +7 -0
  60. package/dist/chunks/chunk-C6GY2G73.js +7 -0
  61. package/dist/chunks/chunk-C7FQMC6D.js +7 -0
  62. package/dist/chunks/chunk-CBVKB3DT.js +21 -0
  63. package/dist/chunks/chunk-CC6FLKIP.js +11 -0
  64. package/dist/chunks/chunk-COD3WAUI.js +7 -0
  65. package/dist/chunks/chunk-CR3NBTHV.js +7 -0
  66. package/dist/chunks/chunk-CWM2F235.js +7 -0
  67. package/dist/chunks/chunk-CZSOZKHX.js +7 -0
  68. package/dist/chunks/chunk-D3AHZ5LI.js +7 -0
  69. package/dist/chunks/chunk-D6REP5QQ.js +15 -0
  70. package/dist/chunks/chunk-DFVNL5ML.js +7 -0
  71. package/dist/chunks/chunk-DKJL2KV7.js +7 -0
  72. package/dist/chunks/chunk-DQ2SVW4R.js +12 -0
  73. package/dist/chunks/chunk-DWZBL4NK.js +7 -0
  74. package/dist/chunks/chunk-EAUDC24V.js +9 -0
  75. package/dist/chunks/chunk-EAXMWCOL.js +63 -0
  76. package/dist/chunks/chunk-ECEDD646.js +8 -0
  77. package/dist/chunks/chunk-ECQIO5K3.js +7 -0
  78. package/dist/chunks/chunk-EEUJLJEJ.js +7 -0
  79. package/dist/chunks/chunk-EGNR2DEI.js +7 -0
  80. package/dist/chunks/chunk-EISD3RG7.js +11 -0
  81. package/dist/chunks/chunk-EKZTFGDX.js +7 -0
  82. package/dist/chunks/chunk-ETV3C2CV.js +7 -0
  83. package/dist/chunks/chunk-EU2GBIPC.js +7 -0
  84. package/dist/chunks/chunk-F4KY2TOK.js +7 -0
  85. package/dist/chunks/chunk-F53OKXYI.js +7 -0
  86. package/dist/chunks/chunk-F6EBOT64.js +7 -0
  87. package/dist/chunks/chunk-F7AVGV4Y.js +7 -0
  88. package/dist/chunks/chunk-FBYA6LLM.js +7 -0
  89. package/dist/chunks/chunk-FGFLTLEA.js +7 -0
  90. package/dist/chunks/chunk-FHU2O7ZJ.js +8 -0
  91. package/dist/chunks/chunk-FLHO75XC.js +8 -0
  92. package/dist/chunks/chunk-FSPPKNKN.js +7 -0
  93. package/dist/chunks/chunk-FUX6LKNP.js +7 -0
  94. package/dist/chunks/chunk-GA277JFB.js +20 -0
  95. package/dist/chunks/chunk-GCZVIDNG.js +86 -0
  96. package/dist/chunks/chunk-GD7AV7BO.js +9 -0
  97. package/dist/chunks/chunk-GG5RME4X.js +7 -0
  98. package/dist/chunks/chunk-GHAY4PSD.js +7 -0
  99. package/dist/chunks/chunk-GYVJIIYL.js +7 -0
  100. package/dist/chunks/chunk-GZNDA6SV.js +8 -0
  101. package/dist/chunks/chunk-HCRD3JFL.js +7 -0
  102. package/dist/chunks/chunk-HEGJZJO7.js +7 -0
  103. package/dist/chunks/chunk-HRR57QNP.js +7 -0
  104. package/dist/chunks/chunk-HSFKISDH.js +9 -0
  105. package/dist/chunks/chunk-HTXDC7E2.js +10 -0
  106. package/dist/chunks/chunk-ID663OJ7.js +7 -0
  107. package/dist/chunks/chunk-IOZ3I765.js +7 -0
  108. package/dist/chunks/chunk-IQ7FPAI4.js +7 -0
  109. package/dist/chunks/chunk-IQKGQ2Y2.js +15 -0
  110. package/dist/chunks/chunk-ISWW3DKF.js +7 -0
  111. package/dist/chunks/chunk-IVSSTHB6.js +7 -0
  112. package/dist/chunks/chunk-J24BABG4.js +21 -0
  113. package/dist/chunks/chunk-JALVF3C2.js +7 -0
  114. package/dist/chunks/chunk-JELLVPCM.js +8 -0
  115. package/dist/chunks/chunk-JESNVRVR.js +7 -0
  116. package/dist/chunks/chunk-JLE7K4SY.js +9 -0
  117. package/dist/chunks/chunk-JLEJB6KM.js +7 -0
  118. package/dist/chunks/chunk-JP33AIDQ.js +7 -0
  119. package/dist/chunks/chunk-JRPNHWA3.js +7 -0
  120. package/dist/chunks/chunk-JUSR7V2L.js +7 -0
  121. package/dist/chunks/chunk-JWCEHQQF.js +29 -0
  122. package/dist/chunks/chunk-K5U47EVH.js +7 -0
  123. package/dist/chunks/chunk-KCKYPLIH.js +7 -0
  124. package/dist/chunks/chunk-KGBIRIFF.js +7 -0
  125. package/dist/chunks/chunk-KJA2GKPT.js +7 -0
  126. package/dist/chunks/chunk-KPQLUGFI.js +32 -0
  127. package/dist/chunks/chunk-KQCFC2JL.js +7 -0
  128. package/dist/chunks/chunk-KQCROPL3.js +8 -0
  129. package/dist/chunks/chunk-KRPY5FHJ.js +7 -0
  130. package/dist/chunks/chunk-KW6GSQXV.js +7 -0
  131. package/dist/chunks/chunk-KY335KWI.js +7 -0
  132. package/dist/chunks/chunk-L3JYCXVB.js +23 -0
  133. package/dist/chunks/chunk-LFOWP74R.js +7 -0
  134. package/dist/chunks/chunk-LOBA3E72.js +7 -0
  135. package/dist/chunks/chunk-LQVSU5HR.js +7 -0
  136. package/dist/chunks/chunk-LSF7FY6X.js +7 -0
  137. package/dist/chunks/chunk-LSQREJXO.js +11 -0
  138. package/dist/chunks/chunk-LW4N3CW6.js +9 -0
  139. package/dist/chunks/chunk-M2NXKZKX.js +16 -0
  140. package/dist/chunks/chunk-MBEKRUTQ.js +8 -0
  141. package/dist/chunks/chunk-MCRKBVZA.js +7 -0
  142. package/dist/chunks/chunk-MVGTMPMI.js +23 -0
  143. package/dist/chunks/chunk-MXTC4ZAQ.js +7 -0
  144. package/dist/chunks/chunk-N2FLYCCO.js +9 -0
  145. package/dist/chunks/chunk-N6JBQMOF.js +20 -0
  146. package/dist/chunks/chunk-NAX6IARA.js +11 -0
  147. package/dist/chunks/chunk-NB2WLB3J.js +12 -0
  148. package/dist/chunks/chunk-NGKO2OOU.js +8 -0
  149. package/dist/chunks/chunk-NW7WWUCQ.js +9 -0
  150. package/dist/chunks/chunk-NWGBDBZI.js +7 -0
  151. package/dist/chunks/chunk-NZ2TFADV.js +7 -0
  152. package/dist/chunks/chunk-O4WNSKQR.js +15 -0
  153. package/dist/chunks/chunk-O72YDZKD.js +10 -0
  154. package/dist/chunks/chunk-OAM5NJCU.js +9 -0
  155. package/dist/chunks/chunk-OCR5CRTH.js +10 -0
  156. package/dist/chunks/chunk-OFDTADPQ.js +7 -0
  157. package/dist/chunks/chunk-OHEOYFBU.js +9 -0
  158. package/dist/chunks/chunk-OO572JUC.js +7 -0
  159. package/dist/chunks/chunk-OPORM35X.js +7 -0
  160. package/dist/chunks/chunk-OZCQTXI4.js +7 -0
  161. package/dist/chunks/chunk-PADL3C6Z.js +7 -0
  162. package/dist/chunks/chunk-PFD7LETF.js +7 -0
  163. package/dist/chunks/chunk-PFPJLIFF.js +33 -0
  164. package/dist/chunks/chunk-PSOVLGHP.js +7 -0
  165. package/dist/chunks/chunk-PUKYAALC.js +7 -0
  166. package/dist/chunks/chunk-PVASGBEF.js +7 -0
  167. package/dist/chunks/chunk-Q4KTAQB3.js +7 -0
  168. package/dist/chunks/chunk-Q5ODLDCU.js +7 -0
  169. package/dist/chunks/chunk-Q7D7RGXM.js +7 -0
  170. package/dist/chunks/chunk-QB7F3UAP.js +7 -0
  171. package/dist/chunks/chunk-QHJLRTVY.js +7 -0
  172. package/dist/chunks/chunk-QIVX6SCR.js +27 -0
  173. package/dist/chunks/chunk-QVHXFHBV.js +14 -0
  174. package/dist/chunks/chunk-QVXS234E.js +7 -0
  175. package/dist/chunks/chunk-QVZAAMGQ.js +39 -0
  176. package/dist/chunks/chunk-R2BUF6Z7.js +7 -0
  177. package/dist/chunks/chunk-R2XHJDAP.js +7 -0
  178. package/dist/chunks/chunk-R6BEOVTU.js +7 -0
  179. package/dist/chunks/chunk-RLKS5G6C.js +12 -0
  180. package/dist/chunks/chunk-RM3ZDRYE.js +7 -0
  181. package/dist/chunks/chunk-RMZTB2IU.js +7 -0
  182. package/dist/chunks/chunk-RRDNKB2X.js +7 -0
  183. package/dist/chunks/chunk-RW3X523R.js +8 -0
  184. package/dist/chunks/chunk-S3L2OHPO.js +7 -0
  185. package/dist/chunks/chunk-SACGQMVQ.js +13 -0
  186. package/dist/chunks/chunk-SCV7XEEO.js +7 -0
  187. package/dist/chunks/chunk-SF4E3AQ3.js +7 -0
  188. package/dist/chunks/chunk-SLGUYM42.js +10 -0
  189. package/dist/chunks/chunk-SYFG2RM6.js +10 -0
  190. package/dist/chunks/chunk-T6243EDS.js +7 -0
  191. package/dist/chunks/chunk-TAAWMNNL.js +7 -0
  192. package/dist/chunks/chunk-TAISZMA2.js +7 -0
  193. package/dist/chunks/chunk-TEYREL44.js +7 -0
  194. package/dist/chunks/chunk-TG2RCYTH.js +7 -0
  195. package/dist/chunks/chunk-TIPQQ4TG.js +17 -0
  196. package/dist/chunks/chunk-U2OBPULW.js +7 -0
  197. package/dist/chunks/chunk-U4Z2MMOF.js +301 -0
  198. package/dist/chunks/chunk-U56NHYAH.js +7 -0
  199. package/dist/chunks/chunk-UGNIIDHR.js +32 -0
  200. package/dist/chunks/chunk-UHBMX3OK.js +7 -0
  201. package/dist/chunks/chunk-UVHKXCR5.js +11 -0
  202. package/dist/chunks/chunk-V6Y6UK6B.js +43 -0
  203. package/dist/chunks/chunk-VNIKIQVE.js +10 -0
  204. package/dist/chunks/chunk-VT6RIZJH.js +7 -0
  205. package/dist/chunks/chunk-WDXW6A4H.js +10 -0
  206. package/dist/chunks/chunk-WEH6XC4Y.js +22 -0
  207. package/dist/chunks/chunk-WKZ6JSGZ.js +7 -0
  208. package/dist/chunks/chunk-WVHCBDTB.js +7 -0
  209. package/dist/chunks/chunk-XC46OAAT.js +9 -0
  210. package/dist/chunks/chunk-XGTKHQTT.js +7 -0
  211. package/dist/chunks/chunk-XOETL6DB.js +96 -0
  212. package/dist/chunks/chunk-XP3FT56R.js +27 -0
  213. package/dist/chunks/chunk-XR6QY7RR.js +7 -0
  214. package/dist/chunks/chunk-XVDRGWXM.js +16 -0
  215. package/dist/chunks/chunk-Y5ZMKL7E.js +7 -0
  216. package/dist/chunks/chunk-YEZJNXQX.js +7 -0
  217. package/dist/chunks/chunk-YHPPP3SF.js +7 -0
  218. package/dist/chunks/chunk-YHULP2KK.js +7 -0
  219. package/dist/chunks/chunk-YMZ6WBKB.js +21 -0
  220. package/dist/chunks/chunk-ZF27J6FQ.js +7 -0
  221. package/dist/chunks/chunk-ZFRNVIHI.js +7 -0
  222. package/dist/chunks/chunk-ZN6CQWVP.js +7 -0
  223. package/dist/chunks/chunk-ZQBSAMFL.js +24 -0
  224. package/dist/chunks/cjs-2SMN43VH.js +54 -0
  225. package/dist/chunks/clear-FKVWDCVA.js +8 -0
  226. package/dist/chunks/compile-vercel-config-GWAJE44R.js +7 -0
  227. package/dist/chunks/config-5WVLG5SE.js +8 -0
  228. package/dist/chunks/config-RMOHN5YT.js +7 -0
  229. package/dist/chunks/config-validator.mjs +1 -0
  230. package/dist/chunks/connect-git-provider-FS5Q2HO4.js +7 -0
  231. package/dist/chunks/constants-JAB7MRSK.js +7 -0
  232. package/dist/chunks/create-project-IKCB6MB2.js +7 -0
  233. package/dist/chunks/delete-5WMB4WFR.js +9 -0
  234. package/dist/chunks/delete-EM4JZPFA.js +10 -0
  235. package/dist/chunks/detect-projects-OD4JEAW2.js +7 -0
  236. package/dist/chunks/detect-services-BSJGB4RM.js +7 -0
  237. package/dist/chunks/disable-QOM7UHQC.js +7 -0
  238. package/dist/chunks/discard-L5ZH7P5B.js +14 -0
  239. package/dist/chunks/dist-33WTJLVQ.js +7 -0
  240. package/dist/chunks/dist-RXYNZPEA.js +7 -0
  241. package/dist/chunks/edit-F3VJGCG2.js +9 -0
  242. package/dist/chunks/edit-TM7YCWBU.js +8 -0
  243. package/dist/chunks/enable-72C3QX34.js +7 -0
  244. package/dist/chunks/esm-33752ISR.js +7 -0
  245. package/dist/chunks/esm-4JKEE7PC.js +7 -0
  246. package/dist/chunks/esm-BYG5BWYH.js +9 -0
  247. package/dist/chunks/esm-DFFBNKNU.js +20 -0
  248. package/dist/chunks/esm-IF453UWS.js +7 -0
  249. package/dist/chunks/esm-LABWDJ72.js +7 -0
  250. package/dist/chunks/esm-TG37FXTU.js +9 -0
  251. package/dist/chunks/exec-OZSY46V6.js +16372 -0
  252. package/dist/chunks/export-EPLYZF2Q.js +19 -0
  253. package/dist/chunks/fetch-proxy-45DGILKR.js +67 -0
  254. package/dist/chunks/future-V77DRMQG.js +7 -0
  255. package/dist/chunks/generate-cert-for-deploy-Y3YHBMPU.js +7 -0
  256. package/dist/chunks/image-CVXEXU5R.js +7 -0
  257. package/dist/chunks/import-builders-PGRKJOOE.js +7 -0
  258. package/dist/chunks/inspect-BTRNXRJT.js +9 -0
  259. package/dist/chunks/inspect-CZ7WXYE5.js +20 -0
  260. package/dist/chunks/inspect-FGDVWAQP.js +13 -0
  261. package/dist/chunks/inspect-HFDGZNWC.js +15 -0
  262. package/dist/chunks/inspect-T2AIREYK.js +19 -0
  263. package/dist/chunks/list-CKRRHAOE.js +12 -0
  264. package/dist/chunks/list-FLREMGJR.js +16 -0
  265. package/dist/chunks/list-ON4YTQRN.js +10 -0
  266. package/dist/chunks/login-55LJ5ZA6.js +9 -0
  267. package/dist/chunks/login-DQRZSD4Z.js +7 -0
  268. package/dist/chunks/logs-2HQXWOHM.js +7 -0
  269. package/dist/chunks/ls-2HUJHVLA.js +12 -0
  270. package/dist/chunks/ls-3DVM5HLK.js +12 -0
  271. package/dist/chunks/ls-4B3QYHCI.js +8 -0
  272. package/dist/chunks/ls-A7K4XDQB.js +8 -0
  273. package/dist/chunks/ls-FK5XEJEU.js +12 -0
  274. package/dist/chunks/ls-QGUKJJY5.js +12 -0
  275. package/dist/chunks/ls-VTKHPDWS.js +11 -0
  276. package/dist/chunks/mutate-7ADZBCZM.js +9 -0
  277. package/dist/chunks/notifications-XZJXE2K4.js +7 -0
  278. package/dist/chunks/open-EE5IZQD7.js +7 -0
  279. package/dist/chunks/openapi-QBX62ZXC.js +7 -0
  280. package/dist/chunks/permissions-VYJ4LL5R.js +7 -0
  281. package/dist/chunks/pkg-EDJQLCNP.js +7 -0
  282. package/dist/chunks/plugin-offer-TEGYA3TA.js +9 -0
  283. package/dist/chunks/prompt-missing-credentials-VP6OVCFM.js +7 -0
  284. package/dist/chunks/publish-2HEK5UMJ.js +15 -0
  285. package/dist/chunks/pull-WRTTSY7J.js +7 -0
  286. package/dist/chunks/purchase-domain-if-available-6S3NLTUI.js +7 -0
  287. package/dist/chunks/push-L3QRGGLC.js +7 -0
  288. package/dist/chunks/query-FXXLX6UB.js +12 -0
  289. package/dist/chunks/reauthenticate-IXQDC4UZ.js +7 -0
  290. package/dist/chunks/reorder-B4OXSYCI.js +10 -0
  291. package/dist/chunks/reply-F637K6XH.js +9 -0
  292. package/dist/chunks/repo-info-to-url-XQSULSEO.js +7 -0
  293. package/dist/chunks/resolve-E3F6NYQZ.js +12 -0
  294. package/dist/chunks/resolve-agent-team-EIPCH766.js +7 -0
  295. package/dist/chunks/resolve-deployment-framework-preset-AXXYBFCL.js +7 -0
  296. package/dist/chunks/restore-Q25KRZPH.js +16 -0
  297. package/dist/chunks/rm-FWD2NUGX.js +8 -0
  298. package/dist/chunks/rm-JMQ4QKCC.js +8 -0
  299. package/dist/chunks/rm-PPG7P3GN.js +8 -0
  300. package/dist/chunks/rm-SH3DYKNS.js +8 -0
  301. package/dist/chunks/rm-UEBLKFVC.js +8 -0
  302. package/dist/chunks/routes-PKTWMDWQ.js +7 -0
  303. package/dist/chunks/rule-inspect-LKQA5I4V.js +8 -0
  304. package/dist/chunks/schema-FBV42W7N.js +14 -0
  305. package/dist/chunks/schema-ZWE5MNMG.js +44 -0
  306. package/dist/chunks/select-org-WMB752Z6.js +7 -0
  307. package/dist/chunks/set-UTYIPOLC.js +7 -0
  308. package/dist/chunks/setup-and-link-ZLY5XQW5.js +7 -0
  309. package/dist/chunks/skills-RKIGVVNM.js +590 -0
  310. package/dist/chunks/slugify-NMMUASYK.js +7 -0
  311. package/dist/chunks/stamp-TKONNIJ5.js +7 -0
  312. package/dist/chunks/tags-UCLZ5UMX.js +7 -0
  313. package/dist/chunks/token-W6P2KNI5.js +7 -0
  314. package/dist/chunks/token-util-JDQI37VN.js +7 -0
  315. package/dist/chunks/types-YM7TMHXW.js +14 -0
  316. package/dist/chunks/update-BGDQ5TXO.js +8 -0
  317. package/dist/chunks/update-route-version-KWK5S4UW.js +7 -0
  318. package/dist/chunks/utils-IQZEE4DT.js +86 -0
  319. package/dist/chunks/vlt-builder-graph-XL2XRO4V.js +7 -0
  320. package/dist/chunks/vlt-builder-importer-RBUPAB6J.js +11 -0
  321. package/dist/chunks/zod-2C2SXNIK.js +7 -0
  322. package/dist/commands/build/builder-worker.cjs +281 -0
  323. package/dist/commands/build/index.js +34 -0
  324. package/dist/commands/deploy/index.js +72 -0
  325. package/dist/commands/dev/builder-worker.cjs +110 -0
  326. package/dist/commands/dev/index.js +157 -0
  327. package/dist/commands/env/index.js +40 -0
  328. package/dist/commands/link/index.js +10 -0
  329. package/dist/commands/list/index.js +14 -0
  330. package/dist/commands/project/index.js +113 -0
  331. package/dist/commands-account.js +209 -0
  332. package/dist/commands-ai.js +200 -0
  333. package/dist/commands-blob.js +107 -0
  334. package/dist/commands-core.js +222 -0
  335. package/dist/commands-deployments.js +84 -0
  336. package/dist/commands-flags.js +377 -0
  337. package/dist/commands-integrations.js +143 -0
  338. package/dist/commands-observability.js +122 -0
  339. package/dist/commands-routing.js +273 -0
  340. package/dist/fetch-dist-tags.cjs +60 -0
  341. package/dist/get-latest-worker.cjs +222 -0
  342. package/dist/help.js +7 -0
  343. package/dist/index.js +27 -0
  344. package/dist/internal-build-worker.js +10 -0
  345. package/dist/internal-build.js +11 -0
  346. package/dist/package.json +264 -0
  347. package/dist/root-help-commands.mjs +1 -0
  348. package/dist/runtime-assets/dev-tunnel/api/tunnel.ts +443 -0
  349. package/dist/runtime-assets/dev-tunnel/lib/env.ts +25 -0
  350. package/dist/runtime-assets/dev-tunnel/lib/tunnel_pb.ts +505 -0
  351. package/dist/runtime-assets/node-preloads/next-dev-websocket.cjs +220 -0
  352. package/dist/vc.js +404 -0
  353. package/dist/version.mjs +2 -0
  354. package/package.json +224 -14
  355. package/index.js +0 -1
@@ -0,0 +1,220 @@
1
+ 'use strict';
2
+
3
+ const http = require('node:http');
4
+ const { AsyncLocalStorage } = require('node:async_hooks');
5
+
6
+ const REQUEST_CONTEXT_SYMBOL = Symbol.for('@vercel/request-context');
7
+ const PATCHED_SYMBOL = Symbol.for('@vercel/next-dev-websocket-shim/patched');
8
+ const UPGRADE_LISTENER_SYMBOL = Symbol.for(
9
+ '@vercel/next-dev-websocket-shim/upgrade-listener'
10
+ );
11
+
12
+ if (!globalThis[PATCHED_SYMBOL]) {
13
+ globalThis[PATCHED_SYMBOL] = true;
14
+
15
+ const requestContext = new AsyncLocalStorage();
16
+ const previousRequestContext = globalThis[REQUEST_CONTEXT_SYMBOL];
17
+
18
+ Object.defineProperty(globalThis, REQUEST_CONTEXT_SYMBOL, {
19
+ enumerable: false,
20
+ configurable: true,
21
+ value: {
22
+ get: () => requestContext.getStore() ?? previousRequestContext?.get?.(),
23
+ },
24
+ });
25
+
26
+ const originalEmit = http.Server.prototype.emit;
27
+ const originalListen = http.Server.prototype.listen;
28
+
29
+ http.Server.prototype.listen = function listen(...args) {
30
+ if (!this[UPGRADE_LISTENER_SYMBOL]) {
31
+ this[UPGRADE_LISTENER_SYMBOL] = true;
32
+ this.on('upgrade', noop);
33
+ }
34
+
35
+ return originalListen.apply(this, args);
36
+ };
37
+
38
+ http.Server.prototype.emit = function emit(
39
+ event,
40
+ req,
41
+ socket,
42
+ head,
43
+ ...args
44
+ ) {
45
+ if (
46
+ event !== 'upgrade' ||
47
+ !isWebSocketUpgrade(req) ||
48
+ isNextInternalUpgrade(req)
49
+ ) {
50
+ return originalEmit.call(this, event, req, socket, head, ...args);
51
+ }
52
+
53
+ const requestListeners = this.listeners('request');
54
+ if (requestListeners.length === 0) {
55
+ return originalEmit.call(this, event, req, socket, head, ...args);
56
+ }
57
+
58
+ const response = new http.ServerResponse(req);
59
+
60
+ return emitWebSocketRequest({
61
+ server: this,
62
+ req,
63
+ response,
64
+ socket,
65
+ head: head || Buffer.alloc(0),
66
+ requestContext,
67
+ originalEmit,
68
+ });
69
+ };
70
+ }
71
+
72
+ function emitWebSocketRequest({
73
+ server,
74
+ req,
75
+ response,
76
+ socket,
77
+ head,
78
+ requestContext,
79
+ originalEmit,
80
+ }) {
81
+ socket.setTimeout(0);
82
+ socket.setNoDelay(true);
83
+
84
+ if (typeof response.assignSocket === 'function' && !response.socket) {
85
+ response.assignSocket(socket);
86
+ }
87
+
88
+ const abortController = new AbortController();
89
+ let consumed = false;
90
+ response.once('finish', () => {
91
+ if (!consumed) {
92
+ socket.end();
93
+ }
94
+ });
95
+
96
+ const context = {
97
+ waitUntil: promiseOrFunc => {
98
+ const promise =
99
+ typeof promiseOrFunc === 'function' ? promiseOrFunc() : promiseOrFunc;
100
+ Promise.resolve(promise).catch(() => {});
101
+ },
102
+ headers: Object.fromEntries(
103
+ Object.entries(req.headers).map(([key, value]) => [
104
+ key,
105
+ Array.isArray(value) ? value.join(',') : value,
106
+ ])
107
+ ),
108
+ method: req.method || 'GET',
109
+ url: new URL(req.url || '/', getRequestOrigin(req)).toString(),
110
+ signal: abortController.signal,
111
+ upgradeWebSocket: () => {
112
+ if (consumed) {
113
+ throw new Error(
114
+ 'ctx.upgradeWebSocket() can only be called once per request'
115
+ );
116
+ }
117
+ consumed = true;
118
+
119
+ const closeResponse = createResponseCloseEmitter(response);
120
+ if (typeof response.detachSocket === 'function') {
121
+ response.detachSocket(socket);
122
+ }
123
+ suppressFrameworkResponse(response);
124
+ preserveAsyncContextOnSocket(socket, requestContext);
125
+
126
+ socket.once('close', () => {
127
+ requestContext.run(context, () => {
128
+ req.emit('aborted');
129
+ abortController.abort();
130
+ });
131
+
132
+ // Next dev treats ServerResponse "close" as the end of its request
133
+ // lifecycle. Let ws emit its user-facing "close" event first so those
134
+ // callbacks can register after() work before Next drains that work.
135
+ setImmediate(() => requestContext.run(context, closeResponse));
136
+ });
137
+ socket.once('error', noop);
138
+
139
+ return { req, socket, head };
140
+ },
141
+ };
142
+
143
+ requestContext.run(context, () => {
144
+ try {
145
+ originalEmit.call(server, 'request', req, response);
146
+ } catch (error) {
147
+ socket.destroy(error);
148
+ }
149
+ });
150
+
151
+ return true;
152
+ }
153
+
154
+ function isWebSocketUpgrade(req) {
155
+ const connection = req?.headers?.connection;
156
+ const upgrade = req?.headers?.upgrade;
157
+ return (
158
+ typeof connection === 'string' &&
159
+ connection
160
+ .split(',')
161
+ .some(token => token.trim().toLowerCase() === 'upgrade') &&
162
+ typeof upgrade === 'string' &&
163
+ upgrade.split(',').some(token => token.trim().toLowerCase() === 'websocket')
164
+ );
165
+ }
166
+
167
+ function isNextInternalUpgrade(req) {
168
+ const pathname = new URL(req?.url || '/', 'http://localhost').pathname;
169
+ return pathname.includes('/_next/') || pathname.startsWith('/__nextjs');
170
+ }
171
+
172
+ function suppressFrameworkResponse(response) {
173
+ response.writeHead = function writeHead() {
174
+ return this;
175
+ };
176
+ response.write = function write() {
177
+ return true;
178
+ };
179
+ response.end = function end() {
180
+ return this;
181
+ };
182
+ }
183
+
184
+ function createResponseCloseEmitter(response) {
185
+ let closed = false;
186
+ response.once('close', () => {
187
+ closed = true;
188
+ });
189
+
190
+ return () => {
191
+ if (closed) {
192
+ return;
193
+ }
194
+ closed = true;
195
+ // Frameworks like Next.js use ServerResponse "close" as their request
196
+ // lifecycle hook. Upgraded requests detach the socket, so bridge that
197
+ // hook to the WebSocket close.
198
+ response.emit('close');
199
+ };
200
+ }
201
+
202
+ function preserveAsyncContextOnSocket(socket, requestContext) {
203
+ const store = requestContext.getStore();
204
+ const runInSnapshot =
205
+ typeof AsyncLocalStorage.snapshot === 'function'
206
+ ? AsyncLocalStorage.snapshot()
207
+ : callback => requestContext.run(store, callback);
208
+ const originalEmit = socket.emit;
209
+ socket.emit = function emit(...args) {
210
+ return runInSnapshot(() => originalEmit.apply(this, args));
211
+ };
212
+ }
213
+
214
+ function getRequestOrigin(req) {
215
+ const host = req.headers.host || 'localhost';
216
+ const proto = req.socket?.encrypted ? 'https' : 'http';
217
+ return `${proto}://${host}`;
218
+ }
219
+
220
+ function noop() {}
package/dist/vc.js ADDED
@@ -0,0 +1,404 @@
1
+ #!/usr/bin/env node
2
+ /* biome-ignore-all lint/suspicious/noConsole: CLI entry point */
3
+ // This shim defers loading the real module until the compile cache is enabled.
4
+ // https://nodejs.org/api/module.html#moduleenablecompilecachecachedir
5
+ // enableCompileCache was added in Node.js 22.8.0, so we need to handle older versions.
6
+ const entryAt = performance.now();
7
+ try {
8
+ const { enableCompileCache } = await import('node:module');
9
+ if (enableCompileCache) {
10
+ enableCompileCache();
11
+ }
12
+ } catch {}
13
+
14
+ // Run the one package this platform maps to: the native binary on macOS and
15
+ // Linux x64/arm64, @vercel/cli-support everywhere else. This package's own JS
16
+ // CLI (./index.js) is only a fallback, recorded in telemetry.
17
+ import { spawnSync } from 'node:child_process';
18
+ import { existsSync, readFileSync, statSync, writeFileSync } from 'node:fs';
19
+ import { dirname, join, resolve } from 'node:path';
20
+ import { fileURLToPath, pathToFileURL } from 'node:url';
21
+
22
+ const __dirname = dirname(fileURLToPath(import.meta.url));
23
+
24
+ // Keep in sync with packages/vc-native/scripts/platforms.mjs. Windows runs
25
+ // only the Node CLI until its native binaries are signed.
26
+ const NATIVE_TARGETS = [
27
+ 'darwin-arm64',
28
+ 'darwin-x64',
29
+ 'linux-arm64',
30
+ 'linux-arm64-musl',
31
+ 'linux-x64',
32
+ 'linux-x64-musl',
33
+ ];
34
+
35
+ // musl's `ldd` names itself. npm and pnpm skip the other libc's package via
36
+ // its `libc` field, but Yarn classic installs both, so the launcher must pick
37
+ // one.
38
+ function isMusl() {
39
+ const ldd = spawnSync('ldd', ['--version'], { encoding: 'utf8' });
40
+ return `${ldd.stdout ?? ''}${ldd.stderr ?? ''}`.includes('musl');
41
+ }
42
+
43
+ function platformTarget() {
44
+ const target = `${process.platform}-${process.arch}`;
45
+ return process.platform === 'linux' && isMusl() ? `${target}-musl` : target;
46
+ }
47
+
48
+ // Walk up from this install's own tree. `require.resolve()` is not used
49
+ // because it falls back to NODE_PATH and the global folders even when `paths`
50
+ // is given.
51
+ function findPackage(name) {
52
+ let dir = __dirname;
53
+ while (true) {
54
+ const pkgDir = join(dir, 'node_modules', name);
55
+ if (existsSync(join(pkgDir, 'package.json'))) return pkgDir;
56
+ const parent = dirname(dir);
57
+ if (parent === dir) return null;
58
+ dir = parent;
59
+ }
60
+ }
61
+
62
+ // The package this platform maps to: a native target or `cli-support`.
63
+ function mappedTarget() {
64
+ const target = platformTarget();
65
+ return NATIVE_TARGETS.includes(target) ? target : 'cli-support';
66
+ }
67
+
68
+ function resolveTarget() {
69
+ const target = mappedTarget();
70
+ if (target === 'cli-support') {
71
+ const pkgDir = findPackage('@vercel/cli-support');
72
+ const entry = pkgDir && join(pkgDir, 'dist', 'index.js');
73
+ return {
74
+ target: 'cli-support',
75
+ entry: entry && existsSync(entry) && entry,
76
+ };
77
+ }
78
+ const pkgDir = findPackage(`@vercel/vc-native-${target}`);
79
+ const bin =
80
+ pkgDir &&
81
+ [join(pkgDir, 'bin', 'vercel'), join(pkgDir, 'vercel')].find(existsSync);
82
+ return { target, bin };
83
+ }
84
+
85
+ // This file also ships in @vercel/cli-support, which is its own JS CLI.
86
+ function isCliSupport() {
87
+ try {
88
+ const pkg = JSON.parse(readFileSync(join(__dirname, '..', 'package.json')));
89
+ return pkg.name === '@vercel/cli-support';
90
+ } catch {
91
+ return false;
92
+ }
93
+ }
94
+
95
+ // The native binary is the default, but this release still honors an explicit
96
+ // opt-out: VERCEL_CLI_USE_NATIVE_BINARY, then a persisted `useNativeBinary`
97
+ // preference. Any failure to read config counts as no preference.
98
+ async function isNativeBinaryOptedOut() {
99
+ const envOverride = process.env.VERCEL_CLI_USE_NATIVE_BINARY;
100
+ if (envOverride === '0' || envOverride === 'false') return true;
101
+ if (envOverride === '1' || envOverride === 'true') return false;
102
+ try {
103
+ // Zod-free subpath to avoid loading zod + schemas on this hot path.
104
+ const config = await import('@vercel/cli-config/paths');
105
+ const argDir = globalConfigDirFromArgv();
106
+ const configDir = argDir
107
+ ? resolve(process.cwd(), argDir)
108
+ : config.getGlobalPathConfig();
109
+ return (
110
+ config.readGlobalConfigFlag(
111
+ config.getConfigFilePath(configDir),
112
+ 'useNativeBinary'
113
+ ) === false
114
+ );
115
+ } catch {
116
+ return false;
117
+ }
118
+ }
119
+
120
+ // When the OS cannot start the binary at all, no command code has run, so
121
+ // Node.js can safely run the command instead.
122
+ const NATIVE_SPAWN_FALLBACK_CODES = ['ENOENT', 'EACCES', 'ENOEXEC'];
123
+
124
+ // Read by src/index.ts and reported in telemetry. Inside the native binary,
125
+ // pkg.js sets it to `native` before re-entering this file with
126
+ // VERCEL_VC_NATIVE=1.
127
+ const LAUNCH = Symbol.for('vercel.cli.launch');
128
+ let launch;
129
+ let cliSupportEntry;
130
+ if (process.env.VERCEL_VC_NATIVE === '1') {
131
+ if (globalThis[LAUNCH]?.runtime !== 'native') {
132
+ // Not the native binary: a process it spawned (a build script, a dev
133
+ // command) inherited VERCEL_VC_NATIVE=1 and ran this package's JS CLI.
134
+ launch = {
135
+ runtime: 'dist',
136
+ target: mappedTarget(),
137
+ reason: 'inherited_native_env',
138
+ };
139
+ globalThis[LAUNCH] = launch;
140
+ }
141
+ } else {
142
+ const resolved = resolveTarget();
143
+ if (resolved.bin && (await isNativeBinaryOptedOut())) {
144
+ launch = { runtime: 'dist', target: resolved.target, reason: 'opt_out' };
145
+ } else if (resolved.bin) {
146
+ // Internal worker arguments intentionally trampoline too. The packaged
147
+ // native binary sets VERCEL_VC_NATIVE=1 in pkg.js and re-enters this file,
148
+ // where the worker branch below handles the request.
149
+ const r = spawnSync(resolved.bin, process.argv.slice(2), {
150
+ stdio: 'inherit',
151
+ windowsHide: true,
152
+ env: {
153
+ ...process.env,
154
+ VERCEL_VC_NATIVE: '1',
155
+ // Upgrades belong to the vercel package, not its native runtime
156
+ // dependency. Always replace an inherited value with this launcher's
157
+ // own entrypoint.
158
+ VERCEL_CLI_PACKAGE_ENTRYPOINT: fileURLToPath(import.meta.url),
159
+ VERCEL_CLI_PACKAGE_EXECUTABLE: resolved.bin,
160
+ },
161
+ });
162
+ // Never fall back on an exit status: a loader failure (e.g. glibc
163
+ // mismatch) and a command's own failure are indistinguishable, and
164
+ // retrying a command in Node.js could repeat remote mutations.
165
+ if (!(r.error && NATIVE_SPAWN_FALLBACK_CODES.includes(r.error.code))) {
166
+ if (r.error) {
167
+ console.error(r.error.message);
168
+ process.exit(1);
169
+ }
170
+ if (r.signal) {
171
+ try {
172
+ process.kill(process.pid, r.signal);
173
+ } catch {}
174
+ }
175
+ process.exit(r.status ?? 1);
176
+ }
177
+ console.error(
178
+ `! The native Vercel CLI binary could not start (${r.error.code}), so Node.js is running this command.`
179
+ );
180
+ launch = { runtime: 'dist', target: resolved.target, reason: r.error.code };
181
+ } else if (resolved.entry || isCliSupport()) {
182
+ launch = { runtime: 'cli-support' };
183
+ } else {
184
+ launch = {
185
+ runtime: 'dist',
186
+ target: resolved.target,
187
+ reason: 'target_missing',
188
+ };
189
+ }
190
+ globalThis[LAUNCH] = launch;
191
+ cliSupportEntry = resolved.entry;
192
+ }
193
+
194
+ if (process.argv[2] === '--internal-build-worker') {
195
+ const {
196
+ applyInternalBuildRequest,
197
+ InternalBuildWorkerReport,
198
+ preloadInternalBuild,
199
+ waitForInternalBuildRequest,
200
+ } = await import('./internal-build-worker.js');
201
+ const report = new InternalBuildWorkerReport({ entryAt });
202
+ // Only module loading belongs here: argv, env, and cwd still belong to the
203
+ // prewarm process until the build request is applied.
204
+ const handoff = await waitForInternalBuildRequest(
205
+ process.argv.slice(2),
206
+ () =>
207
+ preloadInternalBuild(
208
+ () => import('./commands/build/index.js'),
209
+ () => import('./internal-build.js'),
210
+ report
211
+ ),
212
+ { report }
213
+ );
214
+ globalThis[Symbol.for('vercel.cli.fatal-error-handler')] = error =>
215
+ handoff.error(error);
216
+
217
+ try {
218
+ // The caller must provide the complete environment for a non-interactive
219
+ // build-container invocation before normal CLI initialization starts.
220
+ applyInternalBuildRequest(handoff.request);
221
+ const { runInternalBuild } = await import('./internal-build.js');
222
+ let exitCode = await runInternalBuild();
223
+ if (exitCode === undefined) {
224
+ // Importing index.js starts the full CLI with the applied request.
225
+ const { cliPromise } = await import('./index.js');
226
+ exitCode = await cliPromise;
227
+ }
228
+ await handoff.complete(exitCode ?? 0);
229
+ } catch (error) {
230
+ await handoff.error(error);
231
+ process.exitCode = 1;
232
+ }
233
+
234
+ process.exit(process.exitCode ?? 0);
235
+ }
236
+
237
+ // Read `--global-config`/`-Q` without loading the full CLI arg parser.
238
+ function globalConfigDirFromArgv() {
239
+ const argv = process.argv.slice(2);
240
+ for (let i = 0; i < argv.length; i++) {
241
+ const arg = argv[i];
242
+ if (arg === '--global-config' || arg === '-Q') {
243
+ return argv[i + 1];
244
+ }
245
+ if (arg.startsWith('--global-config=')) {
246
+ return arg.slice('--global-config='.length);
247
+ }
248
+ }
249
+ return undefined;
250
+ }
251
+
252
+ // Linux on anything but x64/arm64 has no native binary, and will lose the JS
253
+ // CLI from `vercel` itself in a future release.
254
+ async function warnDeprecatedArch() {
255
+ if (
256
+ process.platform !== 'linux' ||
257
+ ['x64', 'arm64'].includes(process.arch) ||
258
+ process.env.VERCEL_VC_NATIVE === '1'
259
+ ) {
260
+ return;
261
+ }
262
+ const argv = process.argv.slice(2);
263
+ const formatIndex = argv.indexOf('--format');
264
+ if (
265
+ argv.some(arg =>
266
+ [
267
+ '--non-interactive',
268
+ '--non-interactive=true',
269
+ '--json',
270
+ '--format=json',
271
+ ].includes(arg)
272
+ ) ||
273
+ (formatIndex !== -1 && argv[formatIndex + 1] === 'json')
274
+ ) {
275
+ return;
276
+ }
277
+ let stamp;
278
+ try {
279
+ const config = await import('@vercel/cli-config/paths');
280
+ const argDir = globalConfigDirFromArgv();
281
+ const configDir = argDir
282
+ ? resolve(process.cwd(), argDir)
283
+ : config.getGlobalPathConfig();
284
+ if (existsSync(configDir)) {
285
+ stamp = join(configDir, '.arch-deprecation-warned');
286
+ if (Date.now() - statSync(stamp).mtimeMs < 24 * 60 * 60 * 1000) return;
287
+ }
288
+ } catch {}
289
+ const target = `${process.platform}-${process.arch}`;
290
+ console.error(
291
+ `! Support for ${target} will be removed from the vercel package in a future release.`
292
+ );
293
+ if (stamp) {
294
+ try {
295
+ writeFileSync(stamp, '');
296
+ } catch {}
297
+ }
298
+ }
299
+
300
+ await warnDeprecatedArch();
301
+
302
+ // Fast path for --version to avoid loading the entire CLI
303
+ if (
304
+ process.argv.length === 3 &&
305
+ (process.argv[2] === '--version' || process.argv[2] === '-v')
306
+ ) {
307
+ const { version, buildLabel } = await import('./version.mjs');
308
+ const labels = [];
309
+ if (process.env.VERCEL_VC_NATIVE === '1') labels.push('native');
310
+ // Optional build metadata stamped by CI (e.g. "pr-115 abc1234").
311
+ if (buildLabel) labels.push(buildLabel);
312
+ const suffix = labels.length > 0 ? ` (${labels.join(', ')})` : '';
313
+ console.error(`Vercel CLI ${version}${suffix}`);
314
+ console.log(version);
315
+ process.exit(0);
316
+ }
317
+
318
+ // Fast path for --help to avoid loading the entire CLI. The build generates
319
+ // root-help-commands.mjs from the command registry; without it, fall through
320
+ // to the full CLI, which renders the same help from the registry.
321
+ if (
322
+ process.argv.length === 3 &&
323
+ (process.argv[2] === '--help' || process.argv[2] === '-h')
324
+ ) {
325
+ let rootHelp;
326
+ try {
327
+ const { version } = await import('./version.mjs');
328
+ const { help } = await import('./help.js');
329
+ const { rootHelpCommands } = await import('./root-help-commands.mjs');
330
+ rootHelp = {
331
+ version,
332
+ text: help(rootHelpCommands, process.stdout.columns),
333
+ };
334
+ } catch {
335
+ rootHelp = undefined;
336
+ }
337
+ if (rootHelp) {
338
+ console.error(`Vercel CLI ${rootHelp.version}`);
339
+ process.stdout.write(rootHelp.text);
340
+ process.exit(0);
341
+ }
342
+ }
343
+
344
+ try {
345
+ await (cliSupportEntry
346
+ ? import(pathToFileURL(cliSupportEntry).href)
347
+ : import('./index.js'));
348
+ } catch (error) {
349
+ // The mapped package is missing and this package's own JS CLI cannot load
350
+ // either, so name the package to install.
351
+ if (
352
+ launch?.reason === 'target_missing' &&
353
+ error?.code === 'ERR_MODULE_NOT_FOUND'
354
+ ) {
355
+ const pkg =
356
+ launch.target === 'cli-support'
357
+ ? '@vercel/cli-support'
358
+ : `@vercel/vc-native-${launch.target}`;
359
+ console.error(
360
+ `Error: ${pkg} is not installed. Reinstall vercel without omitting optional dependencies (for example, npm i -g vercel@latest).`
361
+ );
362
+ console.error(error.message);
363
+ process.exit(1);
364
+ }
365
+ // Global-config paths are resolved during module initialization, before the
366
+ // command router and its client exist. Report local parser failures without
367
+ // dumping a stack or loading configuration again to construct the error.
368
+ if (
369
+ error?.name !== 'ArgError' ||
370
+ ![
371
+ 'ARG_UNKNOWN_OPTION',
372
+ 'ARG_MISSING_REQUIRED_LONGARG',
373
+ 'ARG_MISSING_REQUIRED_SHORTARG',
374
+ ].includes(error.code)
375
+ ) {
376
+ throw error;
377
+ }
378
+ let nonInteractive = false;
379
+ for (const arg of process.argv.slice(2)) {
380
+ if (arg === '--') break;
381
+ if (arg === '--non-interactive' || arg === '--non-interactive=true') {
382
+ nonInteractive = true;
383
+ } else if (arg === '--non-interactive=false') {
384
+ nonInteractive = false;
385
+ }
386
+ }
387
+ if (nonInteractive) {
388
+ console.log(
389
+ JSON.stringify(
390
+ {
391
+ status: 'error',
392
+ reason: 'invalid_arguments',
393
+ message: error.message,
394
+ },
395
+ null,
396
+ 2
397
+ )
398
+ );
399
+ } else {
400
+ console.error(`✗ ${error.message}`);
401
+ }
402
+ // A usage error, like every other unknown or incomplete option.
403
+ process.exit(2);
404
+ }
@@ -0,0 +1,2 @@
1
+ export const version = "65.4.0";
2
+ export const buildLabel = "";