vercel 64.2.0 → 64.3.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 (166) hide show
  1. package/dist/chunks/{add-WVK3AP46.js → add-5RV75RPG.js} +1 -1
  2. package/dist/chunks/{add-UPXURHDI.js → add-RFCYPSPS.js} +1 -1
  3. package/dist/chunks/{add-IATD2WUV.js → add-UXOTAL3N.js} +1 -1
  4. package/dist/chunks/{build-JOGD3ZEF.js → build-SE3QLNVF.js} +1 -1
  5. package/dist/chunks/{chunk-4BS552UW.js → chunk-26Z4U6G4.js} +2 -2
  6. package/dist/chunks/{chunk-XEQT373M.js → chunk-2B3A3MOX.js} +1 -1
  7. package/dist/chunks/{chunk-4VEK7DEH.js → chunk-444RE4Z5.js} +1 -1
  8. package/dist/chunks/{chunk-TY4PMK7Y.js → chunk-6GIP2YPX.js} +1 -1
  9. package/dist/chunks/{chunk-KLYIX4HK.js → chunk-6HOVHRWJ.js} +3 -3
  10. package/dist/chunks/chunk-6ZRULOO3.js +7 -0
  11. package/dist/chunks/{chunk-JGPRCZC2.js → chunk-7GFRZWLE.js} +1 -1
  12. package/dist/chunks/{chunk-VURCIZKT.js → chunk-A63VVXW2.js} +1 -1
  13. package/dist/chunks/{chunk-4IIRQJUW.js → chunk-AA434KXY.js} +1 -1
  14. package/dist/chunks/{chunk-N5D4455C.js → chunk-AALI66ML.js} +1 -1
  15. package/dist/chunks/{chunk-AKM22FBX.js → chunk-AQUDXMFH.js} +1 -1
  16. package/dist/chunks/chunk-BAT6SDBJ.js +10 -0
  17. package/dist/chunks/{chunk-WE3ZJX7P.js → chunk-CMKLX4DC.js} +1 -1
  18. package/dist/chunks/{chunk-JSBEAHKA.js → chunk-CYV3X62I.js} +1 -1
  19. package/dist/chunks/{chunk-EO7GUARB.js → chunk-DNDBPLLI.js} +1 -1
  20. package/dist/chunks/{chunk-UJUNGWSD.js → chunk-DNTQK2SW.js} +1 -1
  21. package/dist/chunks/{chunk-3GSGG4YR.js → chunk-E6R2QOOR.js} +1 -1
  22. package/dist/chunks/{chunk-CRQDQNQZ.js → chunk-ELDHGU6N.js} +1 -1
  23. package/dist/chunks/{chunk-DYQXJCHO.js → chunk-EVQJ7SCV.js} +1 -1
  24. package/dist/chunks/{chunk-FTY4BCAF.js → chunk-EXPLBM7J.js} +1 -1
  25. package/dist/chunks/{chunk-YO4VLAB7.js → chunk-FLBI6DY2.js} +1 -1
  26. package/dist/chunks/{chunk-N6ECEBHG.js → chunk-G2IJOQR3.js} +1 -1
  27. package/dist/chunks/{chunk-5JEU6QSM.js → chunk-GCSAJUL6.js} +1 -1
  28. package/dist/chunks/{chunk-OLWE4UFC.js → chunk-GF7EG5IA.js} +1 -1
  29. package/dist/chunks/{chunk-NBABZO3A.js → chunk-GJP22N6R.js} +1 -1
  30. package/dist/chunks/{chunk-YDM2PMMP.js → chunk-GLJH35MJ.js} +1 -1
  31. package/dist/chunks/{chunk-TBLIJ2PS.js → chunk-GNV6PG6W.js} +1 -1
  32. package/dist/chunks/{chunk-FGNMYSLD.js → chunk-GWZ4VPU3.js} +1 -1
  33. package/dist/chunks/{chunk-4GL254L4.js → chunk-H3KYG32S.js} +2 -2
  34. package/dist/chunks/{chunk-EEZLBOSP.js → chunk-H7CRPXOA.js} +4 -4
  35. package/dist/chunks/{chunk-JEPRHNQU.js → chunk-HJRAWEA2.js} +1 -1
  36. package/dist/chunks/{chunk-7BOCT55A.js → chunk-HTLGLTKD.js} +2 -2
  37. package/dist/chunks/{chunk-E6UKNYFF.js → chunk-HVUJNVPS.js} +1 -1
  38. package/dist/chunks/{chunk-WZ7YJDKT.js → chunk-IIC2A4YN.js} +1 -1
  39. package/dist/chunks/{chunk-N7Q2IESO.js → chunk-IJCCFLCQ.js} +1 -1
  40. package/dist/chunks/{chunk-KUGY5FIM.js → chunk-IL7X6EKK.js} +1 -1
  41. package/dist/chunks/{chunk-XD2LZRBS.js → chunk-IQ7FPAI4.js} +1 -1
  42. package/dist/chunks/{chunk-J2LAZELI.js → chunk-IVIZLWZQ.js} +1 -1
  43. package/dist/chunks/{chunk-O7JMHULU.js → chunk-IYCHAIFZ.js} +1 -1
  44. package/dist/chunks/{chunk-TWKII7HO.js → chunk-JCTXRR4A.js} +1 -1
  45. package/dist/chunks/{chunk-GSVOI5LW.js → chunk-JV6IPUGX.js} +1 -1
  46. package/dist/chunks/{chunk-IRJ5XFT2.js → chunk-KGXW36FQ.js} +2 -2
  47. package/dist/chunks/{chunk-GSOPJJO5.js → chunk-KKCBFBJK.js} +1 -1
  48. package/dist/chunks/{chunk-WVJYKHGZ.js → chunk-KKQL4AKH.js} +1 -1
  49. package/dist/chunks/{chunk-JNJOUMGF.js → chunk-KUGXOLL7.js} +1 -1
  50. package/dist/chunks/{chunk-75IAMKGV.js → chunk-M774HRX5.js} +2 -2
  51. package/dist/chunks/{chunk-J3CDVZE7.js → chunk-MMPQC2N6.js} +1 -1
  52. package/dist/chunks/{chunk-PAN6TUTQ.js → chunk-MV4WHUIC.js} +1 -1
  53. package/dist/chunks/{chunk-SYEKOJHT.js → chunk-MZ3QGJH3.js} +1 -1
  54. package/dist/chunks/{chunk-QDOYNWNQ.js → chunk-MZLQY2EQ.js} +1 -1
  55. package/dist/chunks/{chunk-SQB4T5FL.js → chunk-OCOVCC5Q.js} +1 -1
  56. package/dist/chunks/{chunk-ZUCSA4IW.js → chunk-OJKZ7EV3.js} +1 -1
  57. package/dist/chunks/{chunk-7C6BXZCV.js → chunk-OUTCLR64.js} +1 -1
  58. package/dist/chunks/{chunk-3EU7MN5M.js → chunk-QAETJRKX.js} +1 -1
  59. package/dist/chunks/{chunk-WW4VUFHJ.js → chunk-QC3HEGFD.js} +1 -1
  60. package/dist/chunks/{chunk-YBOS65VB.js → chunk-QC5AMRWR.js} +1 -1
  61. package/dist/chunks/{chunk-LLPIBKFX.js → chunk-QCWV7FML.js} +1 -1
  62. package/dist/chunks/{chunk-XSVF2CZM.js → chunk-TCYAAWLB.js} +1 -1
  63. package/dist/chunks/{chunk-THZR6O2M.js → chunk-TDDZGUU6.js} +1 -1
  64. package/dist/chunks/{chunk-4TTF5E5U.js → chunk-U3NQZJQ4.js} +8 -8
  65. package/dist/chunks/{chunk-X65QKYDM.js → chunk-VRWLNWNE.js} +1 -1
  66. package/dist/chunks/{chunk-I62UUYTS.js → chunk-VVAZC5IO.js} +1 -1
  67. package/dist/chunks/{chunk-QL3IYPBV.js → chunk-WGOQGKS5.js} +1 -1
  68. package/dist/chunks/{chunk-3EYOQC4R.js → chunk-WYI4VNXT.js} +1 -1
  69. package/dist/chunks/{chunk-SRAC7DI4.js → chunk-XJXX4QXA.js} +1 -1
  70. package/dist/chunks/{chunk-YIIPBH2D.js → chunk-XSDAUM4F.js} +1 -1
  71. package/dist/chunks/{chunk-GUJVJKO7.js → chunk-XW4ZWX3I.js} +1 -1
  72. package/dist/chunks/{chunk-A5R2HHNK.js → chunk-YROIQRYI.js} +1 -1
  73. package/dist/chunks/{chunk-YP46QVEI.js → chunk-YS542RHZ.js} +1 -1
  74. package/dist/chunks/{chunk-WIAAACUI.js → chunk-YUYCSDCO.js} +1 -1
  75. package/dist/chunks/{chunk-HAVEFTOO.js → chunk-ZE53XHAY.js} +1 -1
  76. package/dist/chunks/{chunk-SGXN7SMU.js → chunk-ZLWTPS5T.js} +1 -1
  77. package/dist/chunks/{chunk-5UEBA6N6.js → chunk-ZQKDO5PL.js} +1 -1
  78. package/dist/chunks/{chunk-WPQN5UKR.js → chunk-ZQME5XUJ.js} +1 -1
  79. package/dist/chunks/{chunk-EF3YL2R7.js → chunk-ZVLDGT4O.js} +1 -1
  80. package/dist/chunks/{chunk-N7L3XLWC.js → chunk-ZZ3LJ22B.js} +1 -1
  81. package/dist/chunks/{clear-FNH7KUCF.js → clear-2VHJFFMM.js} +1 -1
  82. package/dist/chunks/{compile-vercel-config-4LNHE3YV.js → compile-vercel-config-ADKZDUAU.js} +1 -1
  83. package/dist/chunks/{config-JEHKUQMZ.js → config-6YWGF4CO.js} +1 -1
  84. package/dist/chunks/{config-W3TVZPSK.js → config-VAOXMKVX.js} +1 -1
  85. package/dist/chunks/{connect-git-provider-VJYXBRYG.js → connect-git-provider-2JIBL3ST.js} +1 -1
  86. package/dist/chunks/{delete-HCZA6EVL.js → delete-FEUSV3JO.js} +1 -1
  87. package/dist/chunks/{delete-LV744KVD.js → delete-YW2NH7VG.js} +1 -1
  88. package/dist/chunks/{detect-services-TVZ4HYVB.js → detect-services-A2B6KJO5.js} +1 -1
  89. package/dist/chunks/{disable-N7WZSMD4.js → disable-KA6PS2CZ.js} +1 -1
  90. package/dist/chunks/{discard-2DN52DNW.js → discard-ZNUPAJTQ.js} +1 -1
  91. package/dist/chunks/{edit-MGJWXNFV.js → edit-D7VE55ZF.js} +1 -1
  92. package/dist/chunks/{edit-CALU7PMG.js → edit-YTYYBVZN.js} +1 -1
  93. package/dist/chunks/{enable-7GKPLJNR.js → enable-Q4OCTJIJ.js} +1 -1
  94. package/dist/chunks/{exec-QZXH5RXR.js → exec-NMRO6DIZ.js} +2 -2
  95. package/dist/chunks/{export-BSOJAVDV.js → export-UX6JVWOD.js} +1 -1
  96. package/dist/chunks/{future-OV5I5HWT.js → future-6UTK4EFE.js} +1 -1
  97. package/dist/chunks/{generate-cert-for-deploy-GKQRQ3ZQ.js → generate-cert-for-deploy-WDKFR34X.js} +1 -1
  98. package/dist/chunks/{image-NMQWZBTW.js → image-IL7IN7MD.js} +1 -1
  99. package/dist/chunks/{import-builders-WLKZNPTB.js → import-builders-FX2XXVRT.js} +1 -1
  100. package/dist/chunks/{inspect-LZJ5X3PH.js → inspect-E2HPGMNI.js} +1 -1
  101. package/dist/chunks/{inspect-V7M3GSZ7.js → inspect-F6NLCWHN.js} +1 -1
  102. package/dist/chunks/{inspect-LF3DIZZ2.js → inspect-UNZR445S.js} +1 -1
  103. package/dist/chunks/{inspect-PV6VVAN6.js → inspect-UPXTGUJQ.js} +1 -1
  104. package/dist/chunks/{inspect-UEDFNY5H.js → inspect-YAMAGNIW.js} +1 -1
  105. package/dist/chunks/{list-AFVTD43R.js → list-FDYB6GHF.js} +1 -1
  106. package/dist/chunks/{list-64R2DNZA.js → list-G4E6RG3V.js} +1 -1
  107. package/dist/chunks/{list-QTTCSTZA.js → list-GDI5O246.js} +1 -1
  108. package/dist/chunks/{login-OS6DZT32.js → login-HU5OFS7T.js} +1 -1
  109. package/dist/chunks/{login-SKIDVUB7.js → login-XYYNIAMM.js} +1 -1
  110. package/dist/chunks/{logs-6AXWBF4D.js → logs-EWXTZN4W.js} +1 -1
  111. package/dist/chunks/{ls-WSPWJDWP.js → ls-3GNX6IPE.js} +1 -1
  112. package/dist/chunks/{ls-5TZIOB3Q.js → ls-A3HIPTF5.js} +1 -1
  113. package/dist/chunks/{ls-EADWIBEQ.js → ls-A4NEYMKP.js} +1 -1
  114. package/dist/chunks/{ls-UP6KDPCD.js → ls-CGZ3NL5R.js} +1 -1
  115. package/dist/chunks/{ls-723HTK5U.js → ls-MO3R46TQ.js} +1 -1
  116. package/dist/chunks/{ls-YPQ3CTTN.js → ls-SZKDUJHV.js} +1 -1
  117. package/dist/chunks/{ls-A5A3APRI.js → ls-TCB7UUPP.js} +1 -1
  118. package/dist/chunks/{mutate-WHVA5NTT.js → mutate-BQAP2S7A.js} +1 -1
  119. package/dist/chunks/{notifications-I4PKIOYY.js → notifications-TDSFYYNB.js} +1 -1
  120. package/dist/chunks/{open-SV3USET3.js → open-YPOEUM3S.js} +1 -1
  121. package/dist/chunks/{openapi-NZJ6Q5Y2.js → openapi-BQSQNXQE.js} +1 -1
  122. package/dist/chunks/{permissions-3ZMQVJAQ.js → permissions-6LOJKL5W.js} +1 -1
  123. package/dist/chunks/{prompt-missing-credentials-44DQQXOI.js → prompt-missing-credentials-IGTCFUA6.js} +1 -1
  124. package/dist/chunks/{publish-EDLEZCAF.js → publish-CATCXJZG.js} +1 -1
  125. package/dist/chunks/pull-CXUNHWAO.js +7 -0
  126. package/dist/chunks/{purchase-domain-if-available-R3YQ2TFP.js → purchase-domain-if-available-4YKWAHH5.js} +1 -1
  127. package/dist/chunks/{push-6O3JAFDA.js → push-KZZE3AQ3.js} +1 -1
  128. package/dist/chunks/{query-MYKQOBG3.js → query-GHFOZV7K.js} +1 -1
  129. package/dist/chunks/{reauthenticate-3UH4WWKC.js → reauthenticate-W7QIXLZ3.js} +1 -1
  130. package/dist/chunks/{reorder-IU6GZK4H.js → reorder-XU55LOZ5.js} +1 -1
  131. package/dist/chunks/{reply-FG74YRJ3.js → reply-B2XOCSZD.js} +1 -1
  132. package/dist/chunks/{resolve-MD3PGOME.js → resolve-H4BZ2QI3.js} +1 -1
  133. package/dist/chunks/{resolve-agent-team-X6GPGGDR.js → resolve-agent-team-43HZCPF3.js} +1 -1
  134. package/dist/chunks/{restore-7KOACNT7.js → restore-AJLS2N6C.js} +1 -1
  135. package/dist/chunks/{rm-JRAF4TPV.js → rm-2TR2KBDP.js} +1 -1
  136. package/dist/chunks/{rm-SKKBN7LZ.js → rm-IGY6LD6H.js} +1 -1
  137. package/dist/chunks/{rm-HOE3GJAB.js → rm-N6ZUA66Z.js} +1 -1
  138. package/dist/chunks/{rm-CSIBWFYG.js → rm-OI5VS7GG.js} +1 -1
  139. package/dist/chunks/{rm-ZF2F2ZE3.js → rm-ZQUVOC3V.js} +1 -1
  140. package/dist/chunks/{routes-3RJGIZYJ.js → routes-TCMUHSJF.js} +1 -1
  141. package/dist/chunks/{rule-inspect-NICYVQPY.js → rule-inspect-NLEABBTP.js} +1 -1
  142. package/dist/chunks/{rules-NHACEVVC.js → rules-SVLVB6YB.js} +1 -1
  143. package/dist/chunks/{schema-3XLZGVH5.js → schema-HWS2SOZS.js} +1 -1
  144. package/dist/chunks/{schema-ZJASGDRI.js → schema-KG4RWQBC.js} +1 -1
  145. package/dist/chunks/{select-org-XVAGUP4V.js → select-org-AAB5RBSB.js} +1 -1
  146. package/dist/chunks/{set-JOSIBICX.js → set-AJEMEBZU.js} +1 -1
  147. package/dist/chunks/setup-and-link-6AIRWXXX.js +7 -0
  148. package/dist/chunks/{tags-LVP4LVHL.js → tags-O6R6VWPP.js} +1 -1
  149. package/dist/chunks/{types-YEYQERHE.js → types-Y3NJROKH.js} +1 -1
  150. package/dist/chunks/{update-HPEVXFST.js → update-C7XR7CHI.js} +1 -1
  151. package/dist/commands/build/index.js +1 -1
  152. package/dist/commands/deploy/index.js +4 -4
  153. package/dist/commands/dev/index.js +2 -2
  154. package/dist/commands/env/index.js +1 -1
  155. package/dist/commands/link/index.js +1 -1
  156. package/dist/commands/list/index.js +1 -1
  157. package/dist/commands-bulk.js +756 -705
  158. package/dist/index.js +2 -2
  159. package/dist/internal-build.js +1 -1
  160. package/dist/root-help-commands.mjs +1 -1
  161. package/dist/version.mjs +1 -1
  162. package/package.json +57 -56
  163. package/dist/chunks/chunk-EKUHN42H.js +0 -7
  164. package/dist/chunks/chunk-RIDPB64C.js +0 -10
  165. package/dist/chunks/pull-5DQNSJCA.js +0 -7
  166. package/dist/chunks/setup-and-link-7GIAMCTM.js +0 -7
@@ -4,7 +4,7 @@ import { dirname as __dirname_ } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
- import{require_execa}from"./chunk-GSOPJJO5.js";import{require_dist as require_dist3}from"./chunk-JALVF3C2.js";import"./chunk-FBYA6LLM.js";import"./chunk-SCV7XEEO.js";import{toNodeReadable}from"./chunk-MY4MONOH.js";import{require_lib}from"./chunk-ROPQIBWJ.js";import{output_manager_default,require_build_utils}from"./chunk-75IAMKGV.js";import{require_dist as require_dist2}from"./chunk-RM3ZDRYE.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import{__commonJS as __commonJS2,__require,__toESM as __toESM3}from"./chunk-BZENIQ7N.js";var require_dist4=__commonJS2({"../../node_modules/.pnpm/@edge-runtime+node-utils@2.3.0/node_modules/@edge-runtime/node-utils/dist/index.js"(exports,module){"use strict";var __create2=Object.create,__defProp2=Object.defineProperty,__getOwnPropDesc2=Object.getOwnPropertyDescriptor,__getOwnPropNames2=Object.getOwnPropertyNames,__getProtoOf2=Object.getPrototypeOf,__hasOwnProp2=Object.prototype.hasOwnProperty,__commonJS=(cb,mod)=>function(){return mod||(0,cb[__getOwnPropNames2(cb)[0]])((mod={exports:{}}).exports,mod),mod.exports},__export2=(target,all)=>{for(var name in all)__defProp2(target,name,{get:all[name],enumerable:!0})},__copyProps2=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames2(from))!__hasOwnProp2.call(to,key)&&key!==except&&__defProp2(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc2(from,key))||desc.enumerable});return to},__toESM2=(mod,isNodeMode,target)=>(target=mod!=null?__create2(__getProtoOf2(mod)):{},__copyProps2(isNodeMode||!mod||!mod.__esModule?__defProp2(target,"default",{value:mod,enumerable:!0}):target,mod)),__toCommonJS2=mod=>__copyProps2(__defProp2({},"__esModule",{value:!0}),mod),require_console_js_text=__commonJS({"../primitives/dist/console.js.text.js"(exports2,module2){"use strict";module2.exports=`"use strict";
7
+ import{require_execa}from"./chunk-KKCBFBJK.js";import{require_dist as require_dist3}from"./chunk-JALVF3C2.js";import"./chunk-FBYA6LLM.js";import"./chunk-SCV7XEEO.js";import{toNodeReadable}from"./chunk-MY4MONOH.js";import{require_lib}from"./chunk-ROPQIBWJ.js";import{output_manager_default,require_build_utils}from"./chunk-M774HRX5.js";import{require_dist as require_dist2}from"./chunk-RM3ZDRYE.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import{__commonJS as __commonJS2,__require,__toESM as __toESM3}from"./chunk-BZENIQ7N.js";var require_dist4=__commonJS2({"../../node_modules/.pnpm/@edge-runtime+node-utils@2.3.0/node_modules/@edge-runtime/node-utils/dist/index.js"(exports,module){"use strict";var __create2=Object.create,__defProp2=Object.defineProperty,__getOwnPropDesc2=Object.getOwnPropertyDescriptor,__getOwnPropNames2=Object.getOwnPropertyNames,__getProtoOf2=Object.getPrototypeOf,__hasOwnProp2=Object.prototype.hasOwnProperty,__commonJS=(cb,mod)=>function(){return mod||(0,cb[__getOwnPropNames2(cb)[0]])((mod={exports:{}}).exports,mod),mod.exports},__export2=(target,all)=>{for(var name in all)__defProp2(target,name,{get:all[name],enumerable:!0})},__copyProps2=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames2(from))!__hasOwnProp2.call(to,key)&&key!==except&&__defProp2(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc2(from,key))||desc.enumerable});return to},__toESM2=(mod,isNodeMode,target)=>(target=mod!=null?__create2(__getProtoOf2(mod)):{},__copyProps2(isNodeMode||!mod||!mod.__esModule?__defProp2(target,"default",{value:mod,enumerable:!0}):target,mod)),__toCommonJS2=mod=>__copyProps2(__defProp2({},"__esModule",{value:!0}),mod),require_console_js_text=__commonJS({"../primitives/dist/console.js.text.js"(exports2,module2){"use strict";module2.exports=`"use strict";
8
8
  var __create = Object.create;
9
9
  var __defProp = Object.defineProperty;
10
10
  var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
@@ -16368,5 +16368,5 @@ var crypto = new Crypto();
16368
16368
  crypto
16369
16369
  });
16370
16370
  `}}),require_load=__commonJS({"../primitives/dist/load.js"(exports,module){"use strict";var __create=Object.create,__defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__getProtoOf=Object.getPrototypeOf,__hasOwnProp=Object.prototype.hasOwnProperty,__name=(target,value)=>__defProp(target,"name",{value,configurable:!0}),__export=(target,all)=>{for(var name in all)__defProp(target,name,{get:all[name],enumerable:!0})},__copyProps=(to,from,except,desc)=>{if(from&&typeof from=="object"||typeof from=="function")for(let key of __getOwnPropNames(from))!__hasOwnProp.call(to,key)&&key!==except&&__defProp(to,key,{get:()=>from[key],enumerable:!(desc=__getOwnPropDesc(from,key))||desc.enumerable});return to},__toESM=(mod,isNodeMode,target)=>(target=mod!=null?__create(__getProtoOf(mod)):{},__copyProps(isNodeMode||!mod||!mod.__esModule?__defProp(target,"default",{value:mod,enumerable:!0}):target,mod)),__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),load_exports={};__export(load_exports,{load:()=>load}),module.exports=__toCommonJS(load_exports);var import_module=__toESM(__require("module")),import_crypto=__toESM(__require("crypto")),import_web=__require("stream/web");function requireWithFakeGlobalScope(params){let getModuleCode=`(function(module,exports,require,globalThis,${Object.keys(params.scopedContext).join(",")}) {${params.sourceCode}
16371
- })`,module={exports:{},loaded:!1,id:params.id},moduleRequire=(import_module.default.createRequire||import_module.default.createRequireFromPath)(__filename);function throwingRequire(pathToRequire){if(pathToRequire.startsWith("./")){let moduleName=pathToRequire.replace(/^\.\//,"");if(!params.cache||!params.cache.has(moduleName))throw new Error(`Cannot find module '${moduleName}'`);return params.cache.get(moduleName).exports}return moduleRequire(pathToRequire)}return __name(throwingRequire,"throwingRequire"),throwingRequire.resolve=moduleRequire.resolve.bind(moduleRequire),eval(getModuleCode)(module,module.exports,throwingRequire,params.context,...Object.values(params.scopedContext)),module.exports}__name(requireWithFakeGlobalScope,"requireWithFakeGlobalScope");function load(scopedContext={}){let context={};assign(context,{TextDecoder,TextEncoder,TextEncoderStream:import_web.TextEncoderStream,TextDecoderStream:import_web.TextDecoderStream,atob,btoa,performance});let consoleImpl=requireWithFakeGlobalScope({context,id:"console.js",sourceCode:require_console_js_text(),scopedContext});assign(context,{console:consoleImpl.console});let timersImpl=requireWithFakeGlobalScope({context,id:"timers.js",sourceCode:require_timers_js_text(),scopedContext});assign(context,{setTimeout:timersImpl.setTimeout,setInterval:timersImpl.setInterval});let eventsImpl=requireWithFakeGlobalScope({context,id:"events.js",sourceCode:require_events_js_text(),scopedContext});assign(context,{Event,EventTarget,FetchEvent:eventsImpl.FetchEvent,PromiseRejectionEvent:eventsImpl.PromiseRejectionEvent});let streamsImpl={ReadableStream:import_web.ReadableStream,ReadableStreamBYOBReader:import_web.ReadableStreamBYOBReader,ReadableStreamDefaultReader:import_web.ReadableStreamDefaultReader,TransformStream:import_web.TransformStream,WritableStream:import_web.WritableStream,WritableStreamDefaultWriter:import_web.WritableStreamDefaultWriter};assign(context,streamsImpl);let abortControllerImpl=requireWithFakeGlobalScope({context,id:"abort-controller.js",sourceCode:require_abort_controller_js_text(),scopedContext:{...scopedContext}});assign(context,{AbortController:abortControllerImpl.AbortController,AbortSignal:abortControllerImpl.AbortSignal,DOMException:abortControllerImpl.DOMException});let urlImpl=requireWithFakeGlobalScope({context,id:"url.js",sourceCode:require_url_js_text(),scopedContext:{...scopedContext}});assign(context,{URL,URLSearchParams,URLPattern:urlImpl.URLPattern});let blobImpl=(()=>{if(typeof scopedContext.Blob=="function")return{Blob:scopedContext.Blob};if(typeof Blob=="function")return{Blob};let global2={...streamsImpl,...scopedContext},globalGlobal={...global2,Blob:void 0};return Object.setPrototypeOf(globalGlobal,globalThis),global2.global=globalGlobal,requireWithFakeGlobalScope({context,id:"blob.js",sourceCode:require_blob_js_text(),scopedContext:global2})})();assign(context,{Blob:blobImpl.Blob});let structuredCloneImpl=requireWithFakeGlobalScope({id:"structured-clone.js",context,sourceCode:require_structured_clone_js_text(),scopedContext:{...streamsImpl,...scopedContext}});assign(context,{structuredClone:structuredCloneImpl.structuredClone});let fetchImpl=requireWithFakeGlobalScope({context,id:"fetch.js",sourceCode:require_fetch_js_text(),cache:new Map([["abort-controller",{exports:abortControllerImpl}],["streams",{exports:streamsImpl}]]),scopedContext:{global:{...scopedContext},...scopedContext,...urlImpl,...abortControllerImpl,...eventsImpl,...streamsImpl,structuredClone:context.structuredClone}});assign(context,{fetch:fetchImpl.fetch,File:fetchImpl.File,FormData:fetchImpl.FormData,Headers:fetchImpl.Headers,Request:fetchImpl.Request,Response:fetchImpl.Response,WebSocket:fetchImpl.WebSocket});let cryptoImpl=getCrypto(context,scopedContext);return assign(context,{crypto:cryptoImpl.crypto,Crypto:cryptoImpl.Crypto,CryptoKey:cryptoImpl.CryptoKey,SubtleCrypto:cryptoImpl.SubtleCrypto}),context}__name(load,"load");function getCrypto(context,scopedContext){if(typeof SubtleCrypto<"u"||scopedContext.SubtleCrypto)return{crypto:scopedContext.crypto||globalThis.crypto,Crypto:scopedContext.Crypto||globalThis.Crypto,CryptoKey:scopedContext.CryptoKey||globalThis.CryptoKey,SubtleCrypto:scopedContext.SubtleCrypto||globalThis.SubtleCrypto};if(import_crypto.default.webcrypto){let webcrypto=import_crypto.default.webcrypto;return{crypto:webcrypto,Crypto:webcrypto.constructor,CryptoKey:webcrypto.CryptoKey,SubtleCrypto:webcrypto.subtle.constructor}}return requireWithFakeGlobalScope({context,id:"crypto.js",sourceCode:require_crypto_js_text(),scopedContext:{...scopedContext}})}__name(getCrypto,"getCrypto");function assign(context,additions){Object.assign(context,additions)}__name(assign,"assign")}}),require_dist=__commonJS({"../primitives/dist/index.js"(exports2,module2){"use strict";var import_load=require_load();module2.exports=(0,import_load.load)({WeakRef:global.WeakRef})}}),src_exports={};__export2(src_exports,{buildToFetchEvent:()=>buildToFetchEvent,buildToHeaders:()=>buildToHeaders,buildToNodeHandler:()=>buildToNodeHandler,buildToReadableStream:()=>buildToReadableStream,buildToRequest:()=>buildToRequest,mergeIntoServerResponse:()=>mergeIntoServerResponse,toOutgoingHeaders:()=>toOutgoingHeaders,toToReadable:()=>toToReadable});module.exports=__toCommonJS2(src_exports);function buildToFetchEvent(dependencies){return function(request){return new dependencies.FetchEvent(request)}}function buildToHeaders({Headers:Headers2}){return function(nodeHeaders){let headers=new Headers2;for(let[key,value]of Object.entries(nodeHeaders)){let values=Array.isArray(value)?value:[value];for(let v of values)v!==void 0&&headers.append(key,v)}return headers}}function buildToReadableStream(dependencies){let{ReadableStream,Uint8Array:Uint8Array2}=dependencies;return function(stream){return new ReadableStream({start(controller){stream.on("data",chunk=>{controller.enqueue(new Uint8Array2([...new Uint8Array2(chunk)]))}),stream.on("end",()=>{controller.close()}),stream.on("error",err=>{controller.error(err)})}})}}function buildToRequest(dependencies){let toHeaders2=buildToHeaders(dependencies),toReadableStream=buildToReadableStream(dependencies),{Request}=dependencies;return function(request,options){var _a,_b;let base=computeOrigin(request,options.defaultOrigin);return new Request(String((_a=request.url)!=null&&_a.startsWith("//")?new URL(base+request.url):new URL(request.url||"/",base)),{method:request.method,headers:toHeaders2(request.headers),body:["HEAD","GET"].includes((_b=request.method)!=null?_b:"")?null:toReadableStream(request)})}}function computeOrigin({headers},defaultOrigin){let authority=headers.host;if(!authority)return defaultOrigin;let[,port]=authority.split(":");return`${port==="443"?"https":"http"}://${authority}`}var import_primitives=__toESM2(require_dist());function toOutgoingHeaders(headers){let outputHeaders={};if(headers){let _headers=new import_primitives.Headers(headers).entries();for(let[name,value]of _headers)outputHeaders[name]=name==="set-cookie"?headers.getSetCookie():value}return outputHeaders}function mergeIntoServerResponse(headers,serverResponse){for(let[name,value]of Object.entries(headers))value!==void 0&&serverResponse.setHeader(name,value)}var import_node_stream=__require("stream");function toToReadable(webStream,options={}){let reader=webStream.getReader(),closed=!1,{highWaterMark,encoding,objectMode=!1,signal}=options,readable=new import_node_stream.Readable({objectMode,highWaterMark,encoding,signal,read(){reader.read().then(chunk=>{chunk.done?readable.push(null):readable.push(chunk.value)},error=>readable.destroy(error))},destroy(error,callback){function done(){try{callback(error)}catch(error2){process.nextTick(()=>{throw error2})}}if(!closed){reader.cancel(error).then(done,done);return}done()}});return reader.closed.then(()=>{closed=!0},error=>{closed=!0,readable.destroy(error)}),readable}function buildToNodeHandler(dependencies,options){let toRequest=buildToRequest(dependencies),toFetchEvent=buildToFetchEvent(dependencies);return function(webHandler){return(incomingMessage,serverResponse)=>{let request=toRequest(incomingMessage,options),maybePromise=webHandler(request,toFetchEvent(request));maybePromise instanceof Promise?maybePromise.then(response=>toServerResponse(response,serverResponse)):toServerResponse(maybePromise,serverResponse)}}}function toServerResponse(webResponse,serverResponse){if(!webResponse){serverResponse.end();return}if(mergeIntoServerResponse(toOutgoingHeaders(webResponse.headers),serverResponse),serverResponse.statusCode=webResponse.status,serverResponse.statusMessage=webResponse.statusText,!webResponse.body){serverResponse.end();return}toToReadable(webResponse.body).pipe(serverResponse)}}});var import_which=__toESM3(require_lib(),1),import_execa=__toESM3(require_execa(),1),import_async_listen=__toESM3(require_dist3(),1),import_build_utils=__toESM3(require_build_utils(),1);import{dirname}from"path";import{createServer}from"http";var import_node_utils=__toESM3(require_dist4(),1);var toHeaders=(0,import_node_utils.buildToHeaders)({Headers:globalThis.Headers});function createProxy(client){return createServer(async(req,res)=>{try{let headers=toHeaders(req.headers);headers.delete("host");let fetchRes=await client.fetch(req.url||"/",{headers,method:req.method,body:req.method==="GET"||req.method==="HEAD"?void 0:req,redirect:"manual",useCurrentTeam:!1,json:!1});res.statusCode=fetchRes.status;let outgoingHeaders=(0,import_node_utils.toOutgoingHeaders)(fetchRes.headers);delete outgoingHeaders["content-encoding"],delete outgoingHeaders["content-length"],(0,import_node_utils.mergeIntoServerResponse)(outgoingHeaders,res),fetchRes.body?toNodeReadable(fetchRes.body).pipe(res):res.end()}catch(err){output_manager_default.prettyError(err),res.headersSent||(res.statusCode=500,res.end("Unexpected error during API call"))}})}var import_error_utils=__toESM3(require_dist2(),1);async function execExtension(client,name,args,cwd){let{debug,error}=output_manager_default,extensionCommand=`vercel-${name}`,{packageJsonPath,lockfilePath}=await(0,import_build_utils.scanParentDirs)(cwd),baseFile=lockfilePath||packageJsonPath,extensionPath=null;if(baseFile&&(extensionPath=await(0,import_build_utils.walkParentDirs)({base:dirname(baseFile),start:cwd,filename:`node_modules/.bin/${extensionCommand}`})),extensionPath||(extensionPath=import_which.default.sync(extensionCommand,{nothrow:!0})),!extensionPath)throw debug(`failed to find extension command with name "${extensionCommand}"`),new ENOENT(extensionCommand);debug(`invoking extension: ${extensionPath}`);let proxy=createProxy(client);proxy.once("close",()=>{debug("extension proxy server shut down")});let VERCEL_API=(await(0,import_async_listen.listen)(proxy,{port:0,host:"127.0.0.1"})).href.replace(/\/$/,"");debug(`extension proxy server listening at ${VERCEL_API}`);let exitCode=0;try{exitCode=(await(0,import_execa.default)(extensionPath,args,{cwd,stdio:"inherit",reject:!1,env:{...process.env,VERCEL_API}})).exitCode,debug(`extension command exited with code ${exitCode}`)}catch(err){error(`Vercel CLI extension ${JSON.stringify(extensionCommand)} failed:
16371
+ })`,module={exports:{},loaded:!1,id:params.id},moduleRequire=(import_module.default.createRequire||import_module.default.createRequireFromPath)(__filename);function throwingRequire(pathToRequire){if(pathToRequire.startsWith("./")){let moduleName=pathToRequire.replace(/^\.\//,"");if(!params.cache||!params.cache.has(moduleName))throw new Error(`Cannot find module '${moduleName}'`);return params.cache.get(moduleName).exports}return moduleRequire(pathToRequire)}return __name(throwingRequire,"throwingRequire"),throwingRequire.resolve=moduleRequire.resolve.bind(moduleRequire),eval(getModuleCode)(module,module.exports,throwingRequire,params.context,...Object.values(params.scopedContext)),module.exports}__name(requireWithFakeGlobalScope,"requireWithFakeGlobalScope");function load(scopedContext={}){let context={};assign(context,{TextDecoder,TextEncoder,TextEncoderStream:import_web.TextEncoderStream,TextDecoderStream:import_web.TextDecoderStream,atob,btoa,performance});let consoleImpl=requireWithFakeGlobalScope({context,id:"console.js",sourceCode:require_console_js_text(),scopedContext});assign(context,{console:consoleImpl.console});let timersImpl=requireWithFakeGlobalScope({context,id:"timers.js",sourceCode:require_timers_js_text(),scopedContext});assign(context,{setTimeout:timersImpl.setTimeout,setInterval:timersImpl.setInterval});let eventsImpl=requireWithFakeGlobalScope({context,id:"events.js",sourceCode:require_events_js_text(),scopedContext});assign(context,{Event,EventTarget,FetchEvent:eventsImpl.FetchEvent,PromiseRejectionEvent:eventsImpl.PromiseRejectionEvent});let streamsImpl={ReadableStream:import_web.ReadableStream,ReadableStreamBYOBReader:import_web.ReadableStreamBYOBReader,ReadableStreamDefaultReader:import_web.ReadableStreamDefaultReader,TransformStream:import_web.TransformStream,WritableStream:import_web.WritableStream,WritableStreamDefaultWriter:import_web.WritableStreamDefaultWriter};assign(context,streamsImpl);let abortControllerImpl=requireWithFakeGlobalScope({context,id:"abort-controller.js",sourceCode:require_abort_controller_js_text(),scopedContext:{...scopedContext}});assign(context,{AbortController:abortControllerImpl.AbortController,AbortSignal:abortControllerImpl.AbortSignal,DOMException:abortControllerImpl.DOMException});let urlImpl=requireWithFakeGlobalScope({context,id:"url.js",sourceCode:require_url_js_text(),scopedContext:{...scopedContext}});assign(context,{URL,URLSearchParams,URLPattern:urlImpl.URLPattern});let blobImpl=(()=>{if(typeof scopedContext.Blob=="function")return{Blob:scopedContext.Blob};if(typeof Blob=="function")return{Blob};let global2={...streamsImpl,...scopedContext},globalGlobal={...global2,Blob:void 0};return Object.setPrototypeOf(globalGlobal,globalThis),global2.global=globalGlobal,requireWithFakeGlobalScope({context,id:"blob.js",sourceCode:require_blob_js_text(),scopedContext:global2})})();assign(context,{Blob:blobImpl.Blob});let structuredCloneImpl=requireWithFakeGlobalScope({id:"structured-clone.js",context,sourceCode:require_structured_clone_js_text(),scopedContext:{...streamsImpl,...scopedContext}});assign(context,{structuredClone:structuredCloneImpl.structuredClone});let fetchImpl=requireWithFakeGlobalScope({context,id:"fetch.js",sourceCode:require_fetch_js_text(),cache:new Map([["abort-controller",{exports:abortControllerImpl}],["streams",{exports:streamsImpl}]]),scopedContext:{global:{...scopedContext},...scopedContext,...urlImpl,...abortControllerImpl,...eventsImpl,...streamsImpl,structuredClone:context.structuredClone}});assign(context,{fetch:fetchImpl.fetch,File:fetchImpl.File,FormData:fetchImpl.FormData,Headers:fetchImpl.Headers,Request:fetchImpl.Request,Response:fetchImpl.Response,WebSocket:fetchImpl.WebSocket});let cryptoImpl=getCrypto(context,scopedContext);return assign(context,{crypto:cryptoImpl.crypto,Crypto:cryptoImpl.Crypto,CryptoKey:cryptoImpl.CryptoKey,SubtleCrypto:cryptoImpl.SubtleCrypto}),context}__name(load,"load");function getCrypto(context,scopedContext){if(typeof SubtleCrypto<"u"||scopedContext.SubtleCrypto)return{crypto:scopedContext.crypto||globalThis.crypto,Crypto:scopedContext.Crypto||globalThis.Crypto,CryptoKey:scopedContext.CryptoKey||globalThis.CryptoKey,SubtleCrypto:scopedContext.SubtleCrypto||globalThis.SubtleCrypto};if(import_crypto.default.webcrypto){let webcrypto=import_crypto.default.webcrypto;return{crypto:webcrypto,Crypto:webcrypto.constructor,CryptoKey:webcrypto.CryptoKey,SubtleCrypto:webcrypto.subtle.constructor}}return requireWithFakeGlobalScope({context,id:"crypto.js",sourceCode:require_crypto_js_text(),scopedContext:{...scopedContext}})}__name(getCrypto,"getCrypto");function assign(context,additions){Object.assign(context,additions)}__name(assign,"assign")}}),require_dist=__commonJS({"../primitives/dist/index.js"(exports2,module2){"use strict";var import_load=require_load();module2.exports=(0,import_load.load)({WeakRef:global.WeakRef})}}),src_exports={};__export2(src_exports,{buildToFetchEvent:()=>buildToFetchEvent,buildToHeaders:()=>buildToHeaders,buildToNodeHandler:()=>buildToNodeHandler,buildToReadableStream:()=>buildToReadableStream,buildToRequest:()=>buildToRequest,mergeIntoServerResponse:()=>mergeIntoServerResponse,toOutgoingHeaders:()=>toOutgoingHeaders,toToReadable:()=>toToReadable});module.exports=__toCommonJS2(src_exports);function buildToFetchEvent(dependencies){return function(request){return new dependencies.FetchEvent(request)}}function buildToHeaders({Headers:Headers2}){return function(nodeHeaders){let headers=new Headers2;for(let[key,value]of Object.entries(nodeHeaders)){let values=Array.isArray(value)?value:[value];for(let v of values)v!==void 0&&headers.append(key,v)}return headers}}function buildToReadableStream(dependencies){let{ReadableStream,Uint8Array:Uint8Array2}=dependencies;return function(stream){return new ReadableStream({start(controller){stream.on("data",chunk=>{controller.enqueue(new Uint8Array2([...new Uint8Array2(chunk)]))}),stream.on("end",()=>{controller.close()}),stream.on("error",err=>{controller.error(err)})}})}}function buildToRequest(dependencies){let toHeaders2=buildToHeaders(dependencies),toReadableStream=buildToReadableStream(dependencies),{Request}=dependencies;return function(request,options){var _a,_b;let base=computeOrigin(request,options.defaultOrigin);return new Request(String((_a=request.url)!=null&&_a.startsWith("//")?new URL(base+request.url):new URL(request.url||"/",base)),{method:request.method,headers:toHeaders2(request.headers),body:["HEAD","GET"].includes((_b=request.method)!=null?_b:"")?null:toReadableStream(request)})}}function computeOrigin({headers},defaultOrigin){let authority=headers.host;if(!authority)return defaultOrigin;let[,port]=authority.split(":");return`${port==="443"?"https":"http"}://${authority}`}var import_primitives=__toESM2(require_dist());function toOutgoingHeaders(headers){let outputHeaders={};if(headers){let _headers=new import_primitives.Headers(headers).entries();for(let[name,value]of _headers)outputHeaders[name]=name==="set-cookie"?headers.getSetCookie():value}return outputHeaders}function mergeIntoServerResponse(headers,serverResponse){for(let[name,value]of Object.entries(headers))value!==void 0&&serverResponse.setHeader(name,value)}var import_node_stream=__require("stream");function toToReadable(webStream,options={}){let reader=webStream.getReader(),closed=!1,{highWaterMark,encoding,objectMode=!1,signal}=options,readable=new import_node_stream.Readable({objectMode,highWaterMark,encoding,signal,read(){reader.read().then(chunk=>{chunk.done?readable.push(null):readable.push(chunk.value)},error=>readable.destroy(error))},destroy(error,callback){function done(){try{callback(error)}catch(error2){process.nextTick(()=>{throw error2})}}if(!closed){reader.cancel(error).then(done,done);return}done()}});return reader.closed.then(()=>{closed=!0},error=>{closed=!0,readable.destroy(error)}),readable}function buildToNodeHandler(dependencies,options){let toRequest=buildToRequest(dependencies),toFetchEvent=buildToFetchEvent(dependencies);return function(webHandler){return(incomingMessage,serverResponse)=>{let request=toRequest(incomingMessage,options),maybePromise=webHandler(request,toFetchEvent(request));maybePromise instanceof Promise?maybePromise.then(response=>toServerResponse(response,serverResponse)):toServerResponse(maybePromise,serverResponse)}}}function toServerResponse(webResponse,serverResponse){if(!webResponse){serverResponse.end();return}if(mergeIntoServerResponse(toOutgoingHeaders(webResponse.headers),serverResponse),serverResponse.statusCode=webResponse.status,serverResponse.statusMessage=webResponse.statusText,!webResponse.body){serverResponse.end();return}toToReadable(webResponse.body).pipe(serverResponse)}}});var import_which=__toESM3(require_lib(),1),import_execa=__toESM3(require_execa(),1),import_async_listen=__toESM3(require_dist3(),1),import_build_utils=__toESM3(require_build_utils(),1);import{dirname}from"path";import{createServer}from"http";var import_node_utils=__toESM3(require_dist4(),1);var toHeaders=(0,import_node_utils.buildToHeaders)({Headers:globalThis.Headers});function isBrowserRequest(req){return req.headers.origin!==void 0||req.headers["sec-fetch-site"]!==void 0?!0:req.headers.host!==`127.0.0.1:${req.socket.localPort}`}function getApiUrl(client,requestTarget){if(!requestTarget.startsWith("/"))return null;let apiOrigin=new URL(client.apiUrl).origin,url;try{url=new URL(requestTarget,apiOrigin)}catch{return null}return url.origin!==apiOrigin?null:url.href}function createProxy(client){return createServer(async(req,res)=>{try{if(isBrowserRequest(req)){res.statusCode=403,res.end("Forbidden");return}let apiUrl=getApiUrl(client,req.url||"/");if(apiUrl===null){res.statusCode=400,res.end("Invalid request path");return}let headers=toHeaders(req.headers);headers.delete("host");let fetchRes=await client.fetch(apiUrl,{headers,method:req.method,body:req.method==="GET"||req.method==="HEAD"?void 0:req,redirect:"manual",useCurrentTeam:!1,json:!1});res.statusCode=fetchRes.status;let outgoingHeaders=(0,import_node_utils.toOutgoingHeaders)(fetchRes.headers);delete outgoingHeaders["content-encoding"],delete outgoingHeaders["content-length"],(0,import_node_utils.mergeIntoServerResponse)(outgoingHeaders,res),fetchRes.body?toNodeReadable(fetchRes.body).pipe(res):res.end()}catch(err){output_manager_default.prettyError(err),res.headersSent||(res.statusCode=500,res.end("Unexpected error during API call"))}})}var import_error_utils=__toESM3(require_dist2(),1);async function execExtension(client,name,args,cwd){let{debug,error}=output_manager_default,extensionCommand=`vercel-${name}`,{packageJsonPath,lockfilePath}=await(0,import_build_utils.scanParentDirs)(cwd),baseFile=lockfilePath||packageJsonPath,extensionPath=null;if(baseFile&&(extensionPath=await(0,import_build_utils.walkParentDirs)({base:dirname(baseFile),start:cwd,filename:`node_modules/.bin/${extensionCommand}`})),extensionPath||(extensionPath=import_which.default.sync(extensionCommand,{nothrow:!0})),!extensionPath)throw debug(`failed to find extension command with name "${extensionCommand}"`),new ENOENT(extensionCommand);debug(`invoking extension: ${extensionPath}`);let proxy=createProxy(client);proxy.once("close",()=>{debug("extension proxy server shut down")});let VERCEL_API=(await(0,import_async_listen.listen)(proxy,{port:0,host:"127.0.0.1"})).href.replace(/\/$/,"");debug(`extension proxy server listening at ${VERCEL_API}`);let exitCode=0;try{exitCode=(await(0,import_execa.default)(extensionPath,args,{cwd,stdio:"inherit",reject:!1,env:{...process.env,VERCEL_API}})).exitCode,debug(`extension command exited with code ${exitCode}`)}catch(err){error(`Vercel CLI extension ${JSON.stringify(extensionCommand)} failed:
16372
16372
  ${(0,import_error_utils.errorToString)(err)}`),exitCode=1}finally{proxy.close()}return exitCode}var ENOENT=class extends Error{constructor(command){super(`Command "${command}" not found`);this.code="ENOENT"}};export{execExtension};
@@ -4,7 +4,7 @@ import { dirname as __dirname_ } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
- import{getRoutes,parseSubcommandArgs,requireProjectContext,withGlobalFlags}from"./chunk-I62UUYTS.js";import"./chunk-EKUHN42H.js";import"./chunk-5JEU6QSM.js";import{exportSubcommand}from"./chunk-BTCKMXWW.js";import"./chunk-3EU7MN5M.js";import"./chunk-WZ7YJDKT.js";import"./chunk-PAN6TUTQ.js";import"./chunk-VKXEOL4K.js";import"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import"./chunk-CRQDQNQZ.js";import{outputAgentError}from"./chunk-RIDPB64C.js";import"./chunk-MI7W4QMV.js";import"./chunk-4TTF5E5U.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-N7Q2IESO.js";import"./chunk-WPQN5UKR.js";import"./chunk-2VBFQZ72.js";import"./chunk-YIIPBH2D.js";import"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-75IAMKGV.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import"./chunk-BZENIQ7N.js";function cleanRoute(route){let cleaned={};for(let[key,value]of Object.entries(route))value!==void 0&&(key==="middlewarePath"||key==="middlewareRawSrc"||key==="middleware"||key==="check"||key==="important"||(cleaned[key]=value));return cleaned}function routesToVercelJson(rules){let config={routes:rules.filter(r=>r.enabled!==!1).map(r=>cleanRoute(r.route))};return JSON.stringify(config,null,2)}function routesToVercelTs(rules){let routeEntries=rules.filter(r=>r.enabled!==!1).map(r=>{let cleaned=cleanRoute(r.route),indented=JSON.stringify(cleaned,null,2).split(`
7
+ import{getRoutes,parseSubcommandArgs,requireProjectContext,withGlobalFlags}from"./chunk-VVAZC5IO.js";import"./chunk-6ZRULOO3.js";import"./chunk-GCSAJUL6.js";import{exportSubcommand}from"./chunk-BTCKMXWW.js";import"./chunk-QAETJRKX.js";import"./chunk-IIC2A4YN.js";import"./chunk-MV4WHUIC.js";import"./chunk-VKXEOL4K.js";import"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import"./chunk-ELDHGU6N.js";import{outputAgentError}from"./chunk-BAT6SDBJ.js";import"./chunk-MI7W4QMV.js";import"./chunk-U3NQZJQ4.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-IJCCFLCQ.js";import"./chunk-ZQME5XUJ.js";import"./chunk-2VBFQZ72.js";import"./chunk-XSDAUM4F.js";import"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-M774HRX5.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import"./chunk-BZENIQ7N.js";function cleanRoute(route){let cleaned={};for(let[key,value]of Object.entries(route))value!==void 0&&(key==="middlewarePath"||key==="middlewareRawSrc"||key==="middleware"||key==="check"||key==="important"||(cleaned[key]=value));return cleaned}function routesToVercelJson(rules){let config={routes:rules.filter(r=>r.enabled!==!1).map(r=>cleanRoute(r.route))};return JSON.stringify(config,null,2)}function routesToVercelTs(rules){let routeEntries=rules.filter(r=>r.enabled!==!1).map(r=>{let cleaned=cleanRoute(r.route),indented=JSON.stringify(cleaned,null,2).split(`
8
8
  `).map((line,i)=>i===0?line:` ${line}`).join(`
9
9
  `);return r.description?` // ${r.description.replace(/\n/g," ")}
10
10
  ${indented}`:` ${indented}`});return`import type { VercelConfig } from '@vercel/config/v1';
@@ -4,4 +4,4 @@ import { dirname as __dirname_ } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
- import{getSignupVerificationUrl,login,performDeviceCodeFlow,saveDeviceCodeTokens}from"./chunk-3GSGG4YR.js";import"./chunk-PVASGBEF.js";import"./chunk-DYQXJCHO.js";import"./chunk-3EU7MN5M.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import"./chunk-CRQDQNQZ.js";import"./chunk-RIDPB64C.js";import"./chunk-MI7W4QMV.js";import"./chunk-PPCFQQSU.js";import"./chunk-WPQN5UKR.js";import"./chunk-2VBFQZ72.js";import"./chunk-YIIPBH2D.js";import"./chunk-JESNVRVR.js";import"./chunk-75IAMKGV.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import"./chunk-BZENIQ7N.js";export{getSignupVerificationUrl,login,performDeviceCodeFlow,saveDeviceCodeTokens};
7
+ import{getSignupVerificationUrl,login,performDeviceCodeFlow,saveDeviceCodeTokens}from"./chunk-E6R2QOOR.js";import"./chunk-PVASGBEF.js";import"./chunk-EVQJ7SCV.js";import"./chunk-QAETJRKX.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import"./chunk-ELDHGU6N.js";import"./chunk-BAT6SDBJ.js";import"./chunk-MI7W4QMV.js";import"./chunk-PPCFQQSU.js";import"./chunk-ZQME5XUJ.js";import"./chunk-2VBFQZ72.js";import"./chunk-XSDAUM4F.js";import"./chunk-JESNVRVR.js";import"./chunk-M774HRX5.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import"./chunk-BZENIQ7N.js";export{getSignupVerificationUrl,login,performDeviceCodeFlow,saveDeviceCodeTokens};
@@ -4,4 +4,4 @@ import { dirname as __dirname_ } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
- import{createCertForCns,require_cjs,setupDomain}from"./chunk-UJUNGWSD.js";import"./chunk-GSVOI5LW.js";import"./chunk-O4FDRZ22.js";import"./chunk-T3GQAMBJ.js";import"./chunk-A2RZZQEP.js";import"./chunk-3G3FQYMW.js";import"./chunk-Q7D7RGXM.js";import"./chunk-E6UKNYFF.js";import"./chunk-WZ7YJDKT.js";import"./chunk-PAN6TUTQ.js";import"./chunk-VKXEOL4K.js";import"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import"./chunk-CRQDQNQZ.js";import"./chunk-RIDPB64C.js";import"./chunk-MI7W4QMV.js";import"./chunk-4TTF5E5U.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-N7Q2IESO.js";import"./chunk-WPQN5UKR.js";import"./chunk-2VBFQZ72.js";import{InvalidDomain,NowError}from"./chunk-YIIPBH2D.js";import"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-75IAMKGV.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import{__toESM}from"./chunk-BZENIQ7N.js";var import_tldts=__toESM(require_cjs(),1);async function generateCertForDeploy(client,contextName,deployURL){let parsedDomain=(0,import_tldts.parse)(deployURL),{domain}=parsedDomain;if(!domain)return new InvalidDomain(deployURL);output_manager_default.spinner(`Setting custom suffix domain ${domain}`);let result=await setupDomain(client,domain,contextName);if(output_manager_default.stopSpinner(),result instanceof NowError)return result;output_manager_default.spinner(`Generating a wildcard certificate for ${domain}`);let cert=await createCertForCns(client,[domain,`*.${domain}`],contextName);if(output_manager_default.stopSpinner(),cert instanceof NowError)return cert}export{generateCertForDeploy as default};
7
+ import{createCertForCns,require_cjs,setupDomain}from"./chunk-DNTQK2SW.js";import"./chunk-JV6IPUGX.js";import"./chunk-O4FDRZ22.js";import"./chunk-T3GQAMBJ.js";import"./chunk-A2RZZQEP.js";import"./chunk-3G3FQYMW.js";import"./chunk-Q7D7RGXM.js";import"./chunk-HVUJNVPS.js";import"./chunk-IIC2A4YN.js";import"./chunk-MV4WHUIC.js";import"./chunk-VKXEOL4K.js";import"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import"./chunk-ELDHGU6N.js";import"./chunk-BAT6SDBJ.js";import"./chunk-MI7W4QMV.js";import"./chunk-U3NQZJQ4.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-IJCCFLCQ.js";import"./chunk-ZQME5XUJ.js";import"./chunk-2VBFQZ72.js";import{InvalidDomain,NowError}from"./chunk-XSDAUM4F.js";import"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-M774HRX5.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import{__toESM}from"./chunk-BZENIQ7N.js";var import_tldts=__toESM(require_cjs(),1);async function generateCertForDeploy(client,contextName,deployURL){let parsedDomain=(0,import_tldts.parse)(deployURL),{domain}=parsedDomain;if(!domain)return new InvalidDomain(deployURL);output_manager_default.spinner(`Setting custom suffix domain ${domain}`);let result=await setupDomain(client,domain,contextName);if(output_manager_default.stopSpinner(),result instanceof NowError)return result;output_manager_default.spinner(`Generating a wildcard certificate for ${domain}`);let cert=await createCertForCns(client,[domain,`*.${domain}`],contextName);if(output_manager_default.stopSpinner(),cert instanceof NowError)return cert}export{generateCertForDeploy as default};
@@ -4,4 +4,4 @@ import { dirname as __dirname_ } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
- import{getInvalidSubcommand}from"./chunk-TG2RCYTH.js";import{getSubcommand}from"./chunk-ETV3C2CV.js";import{AGENT_REASON,buildCommandWithGlobalFlags,outputAgentError}from"./chunk-RIDPB64C.js";import"./chunk-MI7W4QMV.js";import"./chunk-2VBFQZ72.js";import"./chunk-YIIPBH2D.js";import"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-75IAMKGV.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import"./chunk-BZENIQ7N.js";var IMAGE_CONFIG={ls:["ls","list"],inspect:["inspect","get"],rm:["rm","remove","delete"]};async function image(client,argv,telemetry){let{subcommand,args}=getSubcommand(argv,IMAGE_CONFIG);if(subcommand==null){let message=argv.length===0?getInvalidSubcommand(IMAGE_CONFIG):`Unknown "vcr image" subcommand "${argv[0]}".`;return outputAgentError(client,{status:"error",reason:AGENT_REASON.INVALID_ARGUMENTS,message,next:[{command:buildCommandWithGlobalFlags(client.argv,"vcr image --help"),when:"Show valid image subcommands"}]},2),output_manager_default.error(`${message} Run \`vercel vcr image --help\`.`),2}switch(subcommand){case"ls":return(await import("./ls-5TZIOB3Q.js")).default(client,args,telemetry);case"inspect":return(await import("./inspect-LF3DIZZ2.js")).default(client,args,telemetry);case"rm":return(await import("./rm-SKKBN7LZ.js")).default(client,args,telemetry);default:return output_manager_default.error(`Unhandled image subcommand: ${subcommand}`),1}}export{image as default};
7
+ import{getInvalidSubcommand}from"./chunk-TG2RCYTH.js";import{getSubcommand}from"./chunk-ETV3C2CV.js";import{AGENT_REASON,buildCommandWithGlobalFlags,outputAgentError}from"./chunk-BAT6SDBJ.js";import"./chunk-MI7W4QMV.js";import"./chunk-2VBFQZ72.js";import"./chunk-XSDAUM4F.js";import"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-M774HRX5.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import"./chunk-BZENIQ7N.js";var IMAGE_CONFIG={ls:["ls","list"],inspect:["inspect","get"],rm:["rm","remove","delete"]};async function image(client,argv,telemetry){let{subcommand,args}=getSubcommand(argv,IMAGE_CONFIG);if(subcommand==null){let message=argv.length===0?getInvalidSubcommand(IMAGE_CONFIG):`Unknown "vcr image" subcommand "${argv[0]}".`;return outputAgentError(client,{status:"error",reason:AGENT_REASON.INVALID_ARGUMENTS,message,next:[{command:buildCommandWithGlobalFlags(client.argv,"vcr image --help"),when:"Show valid image subcommands"}]},2),output_manager_default.error(`${message} Run \`vercel vcr image --help\`.`),2}switch(subcommand){case"ls":return(await import("./ls-A3HIPTF5.js")).default(client,args,telemetry);case"inspect":return(await import("./inspect-UNZR445S.js")).default(client,args,telemetry);case"rm":return(await import("./rm-IGY6LD6H.js")).default(client,args,telemetry);default:return output_manager_default.error(`Unhandled image subcommand: ${subcommand}`),1}}export{image as default};
@@ -4,4 +4,4 @@ import { dirname as __dirname_ } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
- import{getVltPreloadState,importBuilders,import_import_builders,preloadVltBuilderImports}from"./chunk-XSVF2CZM.js";import"./chunk-4CACOKMS.js";import"./chunk-QDOYNWNQ.js";import"./chunk-BLAIBYEU.js";import"./chunk-SQB4T5FL.js";import"./chunk-BPUANOGW.js";import"./chunk-7EJQLVWX.js";import"./chunk-GSOPJJO5.js";import"./chunk-25565AGS.js";import"./chunk-MVCAUS4F.js";import"./chunk-FBYA6LLM.js";import"./chunk-SCV7XEEO.js";import"./chunk-NWGBDBZI.js";import"./chunk-4SAVH3H7.js";import"./chunk-4TTF5E5U.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-N7Q2IESO.js";import"./chunk-WPQN5UKR.js";import"./chunk-2VBFQZ72.js";import"./chunk-YIIPBH2D.js";import"./chunk-JESNVRVR.js";import"./chunk-75IAMKGV.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import"./chunk-BZENIQ7N.js";var export_formatResolvedBuilders=import_import_builders.formatResolvedBuilders;var export_getBuildersDir=import_import_builders.getBuildersDir;export{export_formatResolvedBuilders as formatResolvedBuilders,export_getBuildersDir as getBuildersDir,getVltPreloadState,importBuilders,preloadVltBuilderImports};
7
+ import{getVltPreloadState,importBuilders,import_import_builders,preloadVltBuilderImports}from"./chunk-TCYAAWLB.js";import"./chunk-4CACOKMS.js";import"./chunk-MZLQY2EQ.js";import"./chunk-BLAIBYEU.js";import"./chunk-OCOVCC5Q.js";import"./chunk-BPUANOGW.js";import"./chunk-7EJQLVWX.js";import"./chunk-KKCBFBJK.js";import"./chunk-25565AGS.js";import"./chunk-MVCAUS4F.js";import"./chunk-FBYA6LLM.js";import"./chunk-SCV7XEEO.js";import"./chunk-NWGBDBZI.js";import"./chunk-4SAVH3H7.js";import"./chunk-U3NQZJQ4.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-IJCCFLCQ.js";import"./chunk-ZQME5XUJ.js";import"./chunk-2VBFQZ72.js";import"./chunk-XSDAUM4F.js";import"./chunk-JESNVRVR.js";import"./chunk-M774HRX5.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import"./chunk-BZENIQ7N.js";var export_formatResolvedBuilders=import_import_builders.formatResolvedBuilders;var export_getBuildersDir=import_import_builders.getBuildersDir;export{export_formatResolvedBuilders as formatResolvedBuilders,export_getBuildersDir as getBuildersDir,getVltPreloadState,importBuilders,preloadVltBuilderImports};
@@ -4,7 +4,7 @@ import { dirname as __dirname_ } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
- import{formatTriggerOperator,getGroupStartedAt,getGroupTitle,getGroupType,humanizeReference,normalizeTimestamp,renderAlertTable}from"./chunk-RRWEIG6B.js";import{resolveAlertsScope}from"./chunk-QL3IYPBV.js";import{formatGranularity}from"./chunk-IVSSTHB6.js";import{formatDate}from"./chunk-YTDK6AHS.js";import"./chunk-GZNDA6SV.js";import{outputError}from"./chunk-5UEBA6N6.js";import"./chunk-GHAY4PSD.js";import{truncateEnd,truncateMiddle}from"./chunk-ID663OJ7.js";import{inspectSubcommand}from"./chunk-GVVIFYQE.js";import"./chunk-W3TGCMRW.js";import"./chunk-773GOZIR.js";import{printError}from"./chunk-3EU7MN5M.js";import"./chunk-67GZ5REA.js";import"./chunk-BS32OUOC.js";import{validateJsonOutput}from"./chunk-D4MW3RDW.js";import"./chunk-WZ7YJDKT.js";import"./chunk-PAN6TUTQ.js";import"./chunk-VKXEOL4K.js";import"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import{parseArguments}from"./chunk-CRQDQNQZ.js";import{AGENT_REASON,buildCommandWithGlobalFlags,outputAgentError}from"./chunk-RIDPB64C.js";import{getFlagsSpecification}from"./chunk-MI7W4QMV.js";import"./chunk-4TTF5E5U.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-N7Q2IESO.js";import"./chunk-WPQN5UKR.js";import"./chunk-2VBFQZ72.js";import{isAPIError}from"./chunk-YIIPBH2D.js";import{packageName}from"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-75IAMKGV.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import{require_source}from"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import{__toESM}from"./chunk-BZENIQ7N.js";var import_chalk=__toESM(require_source(),1);var aggregationLabels={sum:"Sum",avg:"Average",min:"Min",max:"Max",p50:"P50",p75:"P75",p90:"P90",p95:"P95",p99:"P99",stddev:"Std Dev",unique:"Unique",persecond:"Per Second",percent:"Percent"},formatCustomAlertRatioBelowFivePercent=new Intl.NumberFormat("en-US",{maximumFractionDigits:2,minimumFractionDigits:2,style:"percent"}),formatCustomAlertRatioThresholdValue=new Intl.NumberFormat("en-US",{maximumFractionDigits:4,minimumFractionDigits:0,style:"percent"});function getGroupStatus(group){if(group.status)return group.status;let alerts=group.alerts??[];return alerts.some(alert=>alert.status==="active")?"active":alerts.length>0?"resolved":"-"}function humanizeLabel(value){return humanizeReference(value,{case:"title"})}function formatAlertFieldValue(value,maxLength=64){if(value==null)return;let displayValue=typeof value=="number"?formatNumber(value):String(value);if(displayValue)return truncateMiddle(displayValue,maxLength)}function formatNumber(value){let absValue=Math.abs(value),sign=value<0?"-":"";for(let[threshold,suffix]of[[1e9,"B"],[1e6,"M"],[1e3,"k"]])if(absValue>=threshold)return`${sign}${(absValue/threshold).toFixed(1).replace(/\.0$/,"")}${suffix}`;return Number.isInteger(value)?String(value):value.toFixed(2).replace(/\.?0+$/,"")}function parseFormattedNumber(value){let trimmed=value.trim();if(!trimmed)return;let number=Number(trimmed.replace(/,/g,""));return Number.isFinite(number)?number:void 0}function formatRatio(value){if(value.trim().endsWith("%"))return value;let number=parseFormattedNumber(value);if(number===void 0)return value;let percent=number*100;return percent>=5?`${Math.floor(percent)}%`:formatCustomAlertRatioBelowFivePercent.format(number)}function formatRatioThreshold(value){if(value.trim().endsWith("%"))return value;let number=parseFormattedNumber(value);return number===void 0?value:formatCustomAlertRatioThresholdValue.format(number)}function getAlertSonarQuery(alert){return alert.sonarQuery??alert.data?.sonarQuery}function getCustomAlertBaselineTitle(alert){let granularity=getAlertSonarQuery(alert)?.granularity;return(granularity&&("hours"in granularity||"days"in granularity)?"7-day baseline":"24-hour baseline").replace(/\b[a-z]/g,character=>character.toUpperCase())}function appendUnit(value,unit){return!unit||unit==="score"?value:unit==="ratio"?formatRatio(value):unit==="%"?value.endsWith("%")?value:`${value}%`:value.toLowerCase().includes(unit.toLowerCase())?value:`${value} ${unit}`}function formatThreshold(alert){let data=alert.data,formatted=alert.formattedValues?.formattedThreshold??(data?.triggerThreshold===void 0?void 0:formatNumber(data.triggerThreshold));if(!formatted)return;let operator=formatTriggerOperator(data?.triggerOperator),threshold=data?.triggerType==="anomaly"?`${formatted} z-score`:alert.unit==="ratio"?formatRatioThreshold(formatted):appendUnit(formatted,alert.unit);return[operator,threshold].filter(Boolean).join(" ")}function getRuleIds(alert){let ids=new Set,dataRuleId=alert.data?.ruleId;dataRuleId&&ids.add(dataRuleId);for(let ruleId of alert.rules??[])ruleId&&ids.add(ruleId);return[...ids]}function getAlertResolvedAt(alert){return normalizeTimestamp(alert.recordedResolvedAt??alert.resolvedAt)}function getSignalRows(alert){let rows=[],formattedValues=alert.formattedValues??{},observed=formattedValues.formattedCount,baseline=formattedValues.formattedAvg,change=[formattedValues.changeDirection,formattedValues.changeAmount].filter(Boolean).join(" "),zscore=alert.data?.zscore,threshold=formatThreshold(alert),minThreshold=alert.data?.minThreshold,isRatioFormulaAlert=!!getCustomAlertFormula(alert);return alert.eventLabel&&rows.push(["Event",alert.eventLabel]),alert.measureLabel&&rows.push(["Measure",alert.measureLabel]),observed&&rows.push(["Observed Value",appendUnit(observed,alert.unit)]),baseline&&rows.push([alert.type==="custom_alert"&&alert.data?.triggerType==="anomaly"?getCustomAlertBaselineTitle(alert):"Baseline",appendUnit(baseline,alert.unit)]),change&&rows.push(["Change",change]),zscore!==void 0&&rows.push(["Observed Deviation",`${formatNumber(zscore)} z-score`]),threshold&&rows.push(["Threshold",threshold]),minThreshold!==void 0&&!isRatioFormulaAlert&&rows.push(["Minimum",alert.unit==="ratio"?formatNumber(minThreshold):appendUnit(formatNumber(minThreshold),alert.unit)]),formattedValues.errorRate&&rows.push(["Error Rate",formattedValues.errorRate]),formattedValues.avgErrorRate&&rows.push(["Baseline Error Rate",formattedValues.avgErrorRate]),rows.push(...getFieldRows(alert)),rows}function getFieldRows(alert){let fields=alert.data?.fields;if(!fields)return[];let groupBy=getAlertSonarQuery(alert)?.groupBy??[];return[...groupBy,...Object.keys(fields).filter(key=>!groupBy.includes(key))].flatMap(key=>{let value=fields[key],displayValue=formatAlertFieldValue(value);return displayValue?[[humanizeLabel(key),displayValue]]:[]})}function formatAggregation(value){return value?aggregationLabels[value]??humanizeLabel(value):void 0}function formatQueryReference(value){return value?humanizeLabel(value):void 0}function formatRollupDetail(rollup,fallbackMeasure){if(!rollup)return;let aggregation=formatAggregation(rollup.aggregation),measure=fallbackMeasure??formatQueryReference(rollup.measure);return[aggregation,measure].filter(Boolean).join(" ")||void 0}function getPrimaryRollup(rollups){return Object.values(rollups??{})[0]}function getCustomAlertFormula(alert){let formula=alert.data?.formula;if(formula?.operator==="divide"&&formula.left&&formula.right)return{operator:formula.operator,left:formula.left,right:formula.right}}function getQueryRows(alert){if(alert.type!=="custom_alert")return[];let query=getAlertSonarQuery(alert);if(!query)return[];let formula=getCustomAlertFormula(alert),rows=[],addRow=(label,value)=>{value&&rows.push([label,truncateMiddle(value,120)])};if(addRow("Event",alert.eventLabel??formatQueryReference(query.event)),formula)addRow("Numerator",formatRollupDetail(query.rollups?.[formula.left])),addRow("Denominator",formatRollupDetail(query.rollups?.[formula.right]));else{let primaryRollup=getPrimaryRollup(query.rollups);addRow("Measure",alert.measureLabel??formatQueryReference(primaryRollup?.measure)),addRow("Aggregation",formatAggregation(primaryRollup?.aggregation))}addRow("Granularity",formatGranularity(query.granularity));let groupBy=query.groupBy?.filter(Boolean)??[];if(groupBy.length>0&&addRow("Group by",groupBy.map(humanizeLabel).join(", ")),formula&&typeof alert.data?.minThreshold=="number"&&addRow("Minimum Numerator",formatNumber(alert.data.minThreshold)),addRow("Filter by",query.filter?.trim()),formula)for(let[label,rollupName]of[["Numerator filter",formula.left],["Denominator filter",formula.right]])addRow(label,query.rollups?.[rollupName]?.filter?.trim());return rows}function getDetailRows(alert){let data=alert.data;if(!data)return[];let rows=[],addRow=(label,value)=>{let displayValue=formatAlertFieldValue(value);displayValue&&rows.push([label,displayValue])};return addRow("Route",data.route),addRow("Status Group",data.statusGroup),addRow("Deployment ID",data.deploymentId),rows}function renderAlertSections(alert){let lines=[],signalRows=getSignalRows(alert);signalRows.length>0&&(lines.push(import_chalk.default.cyan("Signals")),lines.push(renderAlertTable(signalRows,3)));let queryRows=getQueryRows(alert);return queryRows.length>0&&(lines.push(import_chalk.default.cyan("Query")),lines.push(renderAlertTable(queryRows,3))),lines.join(`
7
+ import{formatTriggerOperator,getGroupStartedAt,getGroupTitle,getGroupType,humanizeReference,normalizeTimestamp,renderAlertTable}from"./chunk-RRWEIG6B.js";import{resolveAlertsScope}from"./chunk-WGOQGKS5.js";import{formatGranularity}from"./chunk-IVSSTHB6.js";import{formatDate}from"./chunk-YTDK6AHS.js";import"./chunk-GZNDA6SV.js";import{outputError}from"./chunk-ZQKDO5PL.js";import"./chunk-GHAY4PSD.js";import{truncateEnd,truncateMiddle}from"./chunk-ID663OJ7.js";import{inspectSubcommand}from"./chunk-GVVIFYQE.js";import"./chunk-W3TGCMRW.js";import"./chunk-773GOZIR.js";import{printError}from"./chunk-QAETJRKX.js";import"./chunk-67GZ5REA.js";import"./chunk-BS32OUOC.js";import{validateJsonOutput}from"./chunk-D4MW3RDW.js";import"./chunk-IIC2A4YN.js";import"./chunk-MV4WHUIC.js";import"./chunk-VKXEOL4K.js";import"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import{parseArguments}from"./chunk-ELDHGU6N.js";import{AGENT_REASON,buildCommandWithGlobalFlags,outputAgentError}from"./chunk-BAT6SDBJ.js";import{getFlagsSpecification}from"./chunk-MI7W4QMV.js";import"./chunk-U3NQZJQ4.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-IJCCFLCQ.js";import"./chunk-ZQME5XUJ.js";import"./chunk-2VBFQZ72.js";import{isAPIError}from"./chunk-XSDAUM4F.js";import{packageName}from"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-M774HRX5.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import{require_source}from"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import{__toESM}from"./chunk-BZENIQ7N.js";var import_chalk=__toESM(require_source(),1);var aggregationLabels={sum:"Sum",avg:"Average",min:"Min",max:"Max",p50:"P50",p75:"P75",p90:"P90",p95:"P95",p99:"P99",stddev:"Std Dev",unique:"Unique",persecond:"Per Second",percent:"Percent"},formatCustomAlertRatioBelowFivePercent=new Intl.NumberFormat("en-US",{maximumFractionDigits:2,minimumFractionDigits:2,style:"percent"}),formatCustomAlertRatioThresholdValue=new Intl.NumberFormat("en-US",{maximumFractionDigits:4,minimumFractionDigits:0,style:"percent"});function getGroupStatus(group){if(group.status)return group.status;let alerts=group.alerts??[];return alerts.some(alert=>alert.status==="active")?"active":alerts.length>0?"resolved":"-"}function humanizeLabel(value){return humanizeReference(value,{case:"title"})}function formatAlertFieldValue(value,maxLength=64){if(value==null)return;let displayValue=typeof value=="number"?formatNumber(value):String(value);if(displayValue)return truncateMiddle(displayValue,maxLength)}function formatNumber(value){let absValue=Math.abs(value),sign=value<0?"-":"";for(let[threshold,suffix]of[[1e9,"B"],[1e6,"M"],[1e3,"k"]])if(absValue>=threshold)return`${sign}${(absValue/threshold).toFixed(1).replace(/\.0$/,"")}${suffix}`;return Number.isInteger(value)?String(value):value.toFixed(2).replace(/\.?0+$/,"")}function parseFormattedNumber(value){let trimmed=value.trim();if(!trimmed)return;let number=Number(trimmed.replace(/,/g,""));return Number.isFinite(number)?number:void 0}function formatRatio(value){if(value.trim().endsWith("%"))return value;let number=parseFormattedNumber(value);if(number===void 0)return value;let percent=number*100;return percent>=5?`${Math.floor(percent)}%`:formatCustomAlertRatioBelowFivePercent.format(number)}function formatRatioThreshold(value){if(value.trim().endsWith("%"))return value;let number=parseFormattedNumber(value);return number===void 0?value:formatCustomAlertRatioThresholdValue.format(number)}function getAlertSonarQuery(alert){return alert.sonarQuery??alert.data?.sonarQuery}function getCustomAlertBaselineTitle(alert){let granularity=getAlertSonarQuery(alert)?.granularity;return(granularity&&("hours"in granularity||"days"in granularity)?"7-day baseline":"24-hour baseline").replace(/\b[a-z]/g,character=>character.toUpperCase())}function appendUnit(value,unit){return!unit||unit==="score"?value:unit==="ratio"?formatRatio(value):unit==="%"?value.endsWith("%")?value:`${value}%`:value.toLowerCase().includes(unit.toLowerCase())?value:`${value} ${unit}`}function formatThreshold(alert){let data=alert.data,formatted=alert.formattedValues?.formattedThreshold??(data?.triggerThreshold===void 0?void 0:formatNumber(data.triggerThreshold));if(!formatted)return;let operator=formatTriggerOperator(data?.triggerOperator),threshold=data?.triggerType==="anomaly"?`${formatted} z-score`:alert.unit==="ratio"?formatRatioThreshold(formatted):appendUnit(formatted,alert.unit);return[operator,threshold].filter(Boolean).join(" ")}function getRuleIds(alert){let ids=new Set,dataRuleId=alert.data?.ruleId;dataRuleId&&ids.add(dataRuleId);for(let ruleId of alert.rules??[])ruleId&&ids.add(ruleId);return[...ids]}function getAlertResolvedAt(alert){return normalizeTimestamp(alert.recordedResolvedAt??alert.resolvedAt)}function getSignalRows(alert){let rows=[],formattedValues=alert.formattedValues??{},observed=formattedValues.formattedCount,baseline=formattedValues.formattedAvg,change=[formattedValues.changeDirection,formattedValues.changeAmount].filter(Boolean).join(" "),zscore=alert.data?.zscore,threshold=formatThreshold(alert),minThreshold=alert.data?.minThreshold,isRatioFormulaAlert=!!getCustomAlertFormula(alert);return alert.eventLabel&&rows.push(["Event",alert.eventLabel]),alert.measureLabel&&rows.push(["Measure",alert.measureLabel]),observed&&rows.push(["Observed Value",appendUnit(observed,alert.unit)]),baseline&&rows.push([alert.type==="custom_alert"&&alert.data?.triggerType==="anomaly"?getCustomAlertBaselineTitle(alert):"Baseline",appendUnit(baseline,alert.unit)]),change&&rows.push(["Change",change]),zscore!==void 0&&rows.push(["Observed Deviation",`${formatNumber(zscore)} z-score`]),threshold&&rows.push(["Threshold",threshold]),minThreshold!==void 0&&!isRatioFormulaAlert&&rows.push(["Minimum",alert.unit==="ratio"?formatNumber(minThreshold):appendUnit(formatNumber(minThreshold),alert.unit)]),formattedValues.errorRate&&rows.push(["Error Rate",formattedValues.errorRate]),formattedValues.avgErrorRate&&rows.push(["Baseline Error Rate",formattedValues.avgErrorRate]),rows.push(...getFieldRows(alert)),rows}function getFieldRows(alert){let fields=alert.data?.fields;if(!fields)return[];let groupBy=getAlertSonarQuery(alert)?.groupBy??[];return[...groupBy,...Object.keys(fields).filter(key=>!groupBy.includes(key))].flatMap(key=>{let value=fields[key],displayValue=formatAlertFieldValue(value);return displayValue?[[humanizeLabel(key),displayValue]]:[]})}function formatAggregation(value){return value?aggregationLabels[value]??humanizeLabel(value):void 0}function formatQueryReference(value){return value?humanizeLabel(value):void 0}function formatRollupDetail(rollup,fallbackMeasure){if(!rollup)return;let aggregation=formatAggregation(rollup.aggregation),measure=fallbackMeasure??formatQueryReference(rollup.measure);return[aggregation,measure].filter(Boolean).join(" ")||void 0}function getPrimaryRollup(rollups){return Object.values(rollups??{})[0]}function getCustomAlertFormula(alert){let formula=alert.data?.formula;if(formula?.operator==="divide"&&formula.left&&formula.right)return{operator:formula.operator,left:formula.left,right:formula.right}}function getQueryRows(alert){if(alert.type!=="custom_alert")return[];let query=getAlertSonarQuery(alert);if(!query)return[];let formula=getCustomAlertFormula(alert),rows=[],addRow=(label,value)=>{value&&rows.push([label,truncateMiddle(value,120)])};if(addRow("Event",alert.eventLabel??formatQueryReference(query.event)),formula)addRow("Numerator",formatRollupDetail(query.rollups?.[formula.left])),addRow("Denominator",formatRollupDetail(query.rollups?.[formula.right]));else{let primaryRollup=getPrimaryRollup(query.rollups);addRow("Measure",alert.measureLabel??formatQueryReference(primaryRollup?.measure)),addRow("Aggregation",formatAggregation(primaryRollup?.aggregation))}addRow("Granularity",formatGranularity(query.granularity));let groupBy=query.groupBy?.filter(Boolean)??[];if(groupBy.length>0&&addRow("Group by",groupBy.map(humanizeLabel).join(", ")),formula&&typeof alert.data?.minThreshold=="number"&&addRow("Minimum Numerator",formatNumber(alert.data.minThreshold)),addRow("Filter by",query.filter?.trim()),formula)for(let[label,rollupName]of[["Numerator filter",formula.left],["Denominator filter",formula.right]])addRow(label,query.rollups?.[rollupName]?.filter?.trim());return rows}function getDetailRows(alert){let data=alert.data;if(!data)return[];let rows=[],addRow=(label,value)=>{let displayValue=formatAlertFieldValue(value);displayValue&&rows.push([label,displayValue])};return addRow("Route",data.route),addRow("Status Group",data.statusGroup),addRow("Deployment ID",data.deploymentId),rows}function renderAlertSections(alert){let lines=[],signalRows=getSignalRows(alert);signalRows.length>0&&(lines.push(import_chalk.default.cyan("Signals")),lines.push(renderAlertTable(signalRows,3)));let queryRows=getQueryRows(alert);return queryRows.length>0&&(lines.push(import_chalk.default.cyan("Query")),lines.push(renderAlertTable(queryRows,3))),lines.join(`
8
8
  `)}function renderAlert(alert,index,totalAlerts){let title=alert.title||`Alert ${index+1}`,ruleIds=getRuleIds(alert),resolvedAt=getAlertResolvedAt(alert),sections=renderAlertSections(alert),summaryRows=[["Alert id",alert.id||"-"],["Type",alert.type||"-"],["Status",alert.status||"-"],["Started At",formatDate(normalizeTimestamp(alert.recordedStartedAt??alert.startedAt))],...resolvedAt!==void 0?[["Resolved At",formatDate(resolvedAt)]]:[],...ruleIds.length>0?[["Rule id",ruleIds.map(id=>truncateMiddle(id,48)).join(", ")]]:[],...getDetailRows(alert)];return[import_chalk.default.bold(totalAlerts>1?`Alert ${index+1}: ${title}`:title),renderAlertTable(summaryRows,3),...sections?[sections]:[]].join(`
9
9
  `)}function printAlertGroup(group,groupId){let alerts=group.alerts??[],singleAlert=alerts.length===1?alerts[0]:void 0,singleAlertRuleIds=singleAlert?getRuleIds(singleAlert):[],singleAlertResolvedAt=singleAlert?getAlertResolvedAt(singleAlert):void 0,summaryRows=[["Title",truncateEnd(getGroupTitle(group),80)],["Group id",group.id||groupId],["Type",getGroupType(group)],["Status",getGroupStatus(group)],["Started At",formatDate(getGroupStartedAt(group))],...singleAlertResolvedAt!==void 0?[["Resolved At",formatDate(singleAlertResolvedAt)]]:[],["Alerts",String(alerts.length)],...singleAlert?.id?[["Alert id",singleAlert.id]]:[],...singleAlertRuleIds.length>0?[["Rule id",singleAlertRuleIds.map(id=>truncateMiddle(id,48)).join(", ")]]:[],...singleAlert?getDetailRows(singleAlert):[]],renderedAlerts=alerts.length>0?alerts.length===1?renderAlertSections(alerts[0]):alerts.map((alert,index)=>renderAlert(alert,index,alerts.length)).join(`
10
10
 
@@ -4,7 +4,7 @@ import { dirname as __dirname_ } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
- import{repositoryPath,repositoryTagPath}from"./chunk-DFVNL5ML.js";import{emitVcrArgParseError,formatBytes,formatImageStatus,formatRelativeTime,formatTagReference,handleVcrApiError,requireVcrRepositoryAndTag,resolveVcrScope,validateVcrJsonOutput}from"./chunk-O7JMHULU.js";import"./chunk-5UEBA6N6.js";import"./chunk-GSOPJJO5.js";import{tagsInspectSubcommand}from"./chunk-UGMTKOTN.js";import"./chunk-FBYA6LLM.js";import"./chunk-SCV7XEEO.js";import{printError}from"./chunk-3EU7MN5M.js";import"./chunk-D4MW3RDW.js";import"./chunk-WZ7YJDKT.js";import"./chunk-PAN6TUTQ.js";import"./chunk-VKXEOL4K.js";import"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import{parseArguments}from"./chunk-CRQDQNQZ.js";import"./chunk-RIDPB64C.js";import{getFlagsSpecification}from"./chunk-MI7W4QMV.js";import"./chunk-4TTF5E5U.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-N7Q2IESO.js";import"./chunk-WPQN5UKR.js";import"./chunk-2VBFQZ72.js";import{isAPIError}from"./chunk-YIIPBH2D.js";import"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-75IAMKGV.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import{require_source}from"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import{__toESM}from"./chunk-BZENIQ7N.js";var import_chalk=__toESM(require_source(),1);function printTag(tag,scope,repository){output_manager_default.print(`
7
+ import{repositoryPath,repositoryTagPath}from"./chunk-DFVNL5ML.js";import{emitVcrArgParseError,formatBytes,formatImageStatus,formatRelativeTime,formatTagReference,handleVcrApiError,requireVcrRepositoryAndTag,resolveVcrScope,validateVcrJsonOutput}from"./chunk-IYCHAIFZ.js";import"./chunk-ZQKDO5PL.js";import"./chunk-KKCBFBJK.js";import{tagsInspectSubcommand}from"./chunk-UGMTKOTN.js";import"./chunk-FBYA6LLM.js";import"./chunk-SCV7XEEO.js";import{printError}from"./chunk-QAETJRKX.js";import"./chunk-D4MW3RDW.js";import"./chunk-IIC2A4YN.js";import"./chunk-MV4WHUIC.js";import"./chunk-VKXEOL4K.js";import"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import{parseArguments}from"./chunk-ELDHGU6N.js";import"./chunk-BAT6SDBJ.js";import{getFlagsSpecification}from"./chunk-MI7W4QMV.js";import"./chunk-U3NQZJQ4.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-IJCCFLCQ.js";import"./chunk-ZQME5XUJ.js";import"./chunk-2VBFQZ72.js";import{isAPIError}from"./chunk-XSDAUM4F.js";import"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-M774HRX5.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import{require_source}from"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import{__toESM}from"./chunk-BZENIQ7N.js";var import_chalk=__toESM(require_source(),1);function printTag(tag,scope,repository){output_manager_default.print(`
8
8
  `),output_manager_default.print(` ${import_chalk.default.cyan("ID")} ${tag.imageId}
9
9
  `),output_manager_default.print(` ${import_chalk.default.cyan("Digest")} ${tag.manifestDigest}
10
10
  `),output_manager_default.print(` ${import_chalk.default.cyan("Image")} ${formatTagReference(scope.teamSlug,scope.projectName,repository.name,tag.tag)}
@@ -4,7 +4,7 @@ import { dirname as __dirname_ } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
- import{imagePath,repositoryPath}from"./chunk-DFVNL5ML.js";import{emitVcrArgParseError,formatBytes,formatImageReference,formatImageStatus,formatRelativeTime,handleVcrApiError,requireVcrRepositoryAndImageId,resolveVcrScope,validateVcrJsonOutput}from"./chunk-O7JMHULU.js";import"./chunk-5UEBA6N6.js";import"./chunk-GSOPJJO5.js";import{imageInspectSubcommand}from"./chunk-2UMWTCY7.js";import"./chunk-FBYA6LLM.js";import"./chunk-SCV7XEEO.js";import{printError}from"./chunk-3EU7MN5M.js";import"./chunk-D4MW3RDW.js";import"./chunk-WZ7YJDKT.js";import"./chunk-PAN6TUTQ.js";import"./chunk-VKXEOL4K.js";import"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import{parseArguments}from"./chunk-CRQDQNQZ.js";import"./chunk-RIDPB64C.js";import{getFlagsSpecification}from"./chunk-MI7W4QMV.js";import"./chunk-4TTF5E5U.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-N7Q2IESO.js";import"./chunk-WPQN5UKR.js";import"./chunk-2VBFQZ72.js";import{isAPIError}from"./chunk-YIIPBH2D.js";import"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-75IAMKGV.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import{require_source}from"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import{__toESM}from"./chunk-BZENIQ7N.js";var import_chalk=__toESM(require_source(),1);function printImage(image,scope,repository){output_manager_default.print(`
7
+ import{imagePath,repositoryPath}from"./chunk-DFVNL5ML.js";import{emitVcrArgParseError,formatBytes,formatImageReference,formatImageStatus,formatRelativeTime,handleVcrApiError,requireVcrRepositoryAndImageId,resolveVcrScope,validateVcrJsonOutput}from"./chunk-IYCHAIFZ.js";import"./chunk-ZQKDO5PL.js";import"./chunk-KKCBFBJK.js";import{imageInspectSubcommand}from"./chunk-2UMWTCY7.js";import"./chunk-FBYA6LLM.js";import"./chunk-SCV7XEEO.js";import{printError}from"./chunk-QAETJRKX.js";import"./chunk-D4MW3RDW.js";import"./chunk-IIC2A4YN.js";import"./chunk-MV4WHUIC.js";import"./chunk-VKXEOL4K.js";import"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import{parseArguments}from"./chunk-ELDHGU6N.js";import"./chunk-BAT6SDBJ.js";import{getFlagsSpecification}from"./chunk-MI7W4QMV.js";import"./chunk-U3NQZJQ4.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-IJCCFLCQ.js";import"./chunk-ZQME5XUJ.js";import"./chunk-2VBFQZ72.js";import{isAPIError}from"./chunk-XSDAUM4F.js";import"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-M774HRX5.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import{require_source}from"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import{__toESM}from"./chunk-BZENIQ7N.js";var import_chalk=__toESM(require_source(),1);function printImage(image,scope,repository){output_manager_default.print(`
8
8
  `),output_manager_default.print(` ${import_chalk.default.cyan("ID")} ${image.id}
9
9
  `),output_manager_default.print(` ${import_chalk.default.cyan("Digest")} ${image.manifestDigest}
10
10
  `),output_manager_default.print(` ${import_chalk.default.cyan("Image")} ${formatImageReference(scope.teamSlug,scope.projectName,repository.name,image.manifestDigest)}
@@ -4,7 +4,7 @@ import { dirname as __dirname_ } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
- import{repositoryPath}from"./chunk-DFVNL5ML.js";import{emitVcrArgParseError,formatRelativeTime,handleVcrApiError,requireVcrRepository,resolveVcrScope,validateVcrJsonOutput}from"./chunk-O7JMHULU.js";import"./chunk-5UEBA6N6.js";import"./chunk-GSOPJJO5.js";import{inspectSubcommand}from"./chunk-2FHICLHJ.js";import"./chunk-2UMWTCY7.js";import"./chunk-Q5ZGA2RO.js";import"./chunk-UGMTKOTN.js";import"./chunk-FBYA6LLM.js";import"./chunk-SCV7XEEO.js";import{printError}from"./chunk-3EU7MN5M.js";import"./chunk-D4MW3RDW.js";import"./chunk-WZ7YJDKT.js";import"./chunk-PAN6TUTQ.js";import"./chunk-VKXEOL4K.js";import"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import{parseArguments}from"./chunk-CRQDQNQZ.js";import"./chunk-RIDPB64C.js";import{getFlagsSpecification}from"./chunk-MI7W4QMV.js";import"./chunk-4TTF5E5U.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-N7Q2IESO.js";import"./chunk-WPQN5UKR.js";import"./chunk-2VBFQZ72.js";import{isAPIError}from"./chunk-YIIPBH2D.js";import"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-75IAMKGV.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import{require_source}from"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import{__toESM}from"./chunk-BZENIQ7N.js";var import_chalk=__toESM(require_source(),1);function printRepository(repository){output_manager_default.print(`
7
+ import{repositoryPath}from"./chunk-DFVNL5ML.js";import{emitVcrArgParseError,formatRelativeTime,handleVcrApiError,requireVcrRepository,resolveVcrScope,validateVcrJsonOutput}from"./chunk-IYCHAIFZ.js";import"./chunk-ZQKDO5PL.js";import"./chunk-KKCBFBJK.js";import{inspectSubcommand}from"./chunk-2FHICLHJ.js";import"./chunk-2UMWTCY7.js";import"./chunk-Q5ZGA2RO.js";import"./chunk-UGMTKOTN.js";import"./chunk-FBYA6LLM.js";import"./chunk-SCV7XEEO.js";import{printError}from"./chunk-QAETJRKX.js";import"./chunk-D4MW3RDW.js";import"./chunk-IIC2A4YN.js";import"./chunk-MV4WHUIC.js";import"./chunk-VKXEOL4K.js";import"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import{parseArguments}from"./chunk-ELDHGU6N.js";import"./chunk-BAT6SDBJ.js";import{getFlagsSpecification}from"./chunk-MI7W4QMV.js";import"./chunk-U3NQZJQ4.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-IJCCFLCQ.js";import"./chunk-ZQME5XUJ.js";import"./chunk-2VBFQZ72.js";import{isAPIError}from"./chunk-XSDAUM4F.js";import"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-M774HRX5.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import{require_source}from"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import{__toESM}from"./chunk-BZENIQ7N.js";var import_chalk=__toESM(require_source(),1);function printRepository(repository){output_manager_default.print(`
8
8
  `),output_manager_default.print(` ${import_chalk.default.cyan("Name")} ${repository.name}
9
9
  `),output_manager_default.print(` ${import_chalk.default.cyan("ID")} ${repository.id}
10
10
  `),output_manager_default.print(` ${import_chalk.default.cyan("Project ID")} ${repository.projectId}
@@ -4,6 +4,6 @@ import { dirname as __dirname_ } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
- import{actorLabel,displayPath,renderThreadDetail,threadAge,truncate}from"./chunk-TBLIJ2PS.js";import{parseThreadArg}from"./chunk-2S6PE6GB.js";import{getThread,handleCommentsParseError,inferBranch,listMessages,listThreads,resolveCommentsScope,threadNotFoundMessage,toApiErrorParts}from"./chunk-SGXN7SMU.js";import{outputError}from"./chunk-5UEBA6N6.js";import{canPrompt}from"./chunk-XD2LZRBS.js";import"./chunk-F4KY2TOK.js";import"./chunk-ID663OJ7.js";import"./chunk-EKUHN42H.js";import"./chunk-5JEU6QSM.js";import{inspectSubcommand}from"./chunk-CN3IVZJO.js";import"./chunk-3EU7MN5M.js";import"./chunk-BS32OUOC.js";import{validateJsonOutput}from"./chunk-D4MW3RDW.js";import"./chunk-WZ7YJDKT.js";import"./chunk-PAN6TUTQ.js";import"./chunk-VKXEOL4K.js";import"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import{parseArguments}from"./chunk-CRQDQNQZ.js";import"./chunk-RIDPB64C.js";import{getFlagsSpecification}from"./chunk-MI7W4QMV.js";import"./chunk-4TTF5E5U.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-N7Q2IESO.js";import"./chunk-WPQN5UKR.js";import"./chunk-2VBFQZ72.js";import{isAPIError}from"./chunk-YIIPBH2D.js";import"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-75IAMKGV.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import"./chunk-BZENIQ7N.js";async function pickThread(client,jsonOutput){if(!canPrompt(client)||jsonOutput)return outputError(client,jsonOutput,"MISSING_THREAD","Pass a thread ID or URL: `vercel comments inspect <thread>`.");let scope=await resolveCommentsScope(client,{requireProject:!0,jsonOutput});if(typeof scope=="number")return scope;let focus=scope.linked?inferBranch(client.cwd):void 0;output_manager_default.spinner("Fetching comments\u2026");let response;try{response=await listThreads(client,scope.teamId,{projectId:scope.projectId,status:"unresolved",branch:focus?[focus.value]:void 0,limit:20})}finally{output_manager_default.stopSpinner()}return response.threads.length===0?outputError(client,jsonOutput,"NO_COMMENTS",`No unresolved comments${focus?` on ${focus.value}`:""} to pick from.`):client.input.select({message:"Select a comment",choices:response.threads.map(thread=>({name:`${threadAge(thread)} ${actorLabel(thread.messages[0]?.author)} ${displayPath(thread)} \u201C${truncate(thread.messages[0]?.text??"",48)}\u201D`,value:thread.id}))})}async function fetchAllMessages(client,teamId,thread){if(thread.messageCount<=thread.messages.length)return thread.messages;let all=[],cursor;do{let page=await listMessages(client,teamId,thread.id,{limit:100,cursor});all.push(...page.messages),cursor=page.pagination?.nextCursor}while(cursor&&all.length<thread.messageCount);return all}async function inspect(client,telemetry){let parsedArgs,flagsSpecification=getFlagsSpecification(inspectSubcommand.options);try{parsedArgs=parseArguments(client.argv.slice(2),flagsSpecification)}catch(err){return handleCommentsParseError(err,"inspect")}let formatResult=validateJsonOutput(parsedArgs.flags);if(!formatResult.valid)return output_manager_default.error(formatResult.error),2;let jsonOutput=formatResult.jsonOutput,showContext=!!parsedArgs.flags["--context"];telemetry.trackCliOptionFormat(parsedArgs.flags["--format"]),telemetry.trackCliFlagContext(parsedArgs.flags["--context"]),telemetry.trackCliOptionProject(parsedArgs.flags["--project"]);let threadInput=parsedArgs.args[2];telemetry.trackCliArgumentThread(threadInput);let threadId,urlTeamSlug;if(threadInput){let parsed=parseThreadArg(threadInput);if(!parsed)return outputError(client,jsonOutput,"INVALID_THREAD",`Could not extract a thread ID from "${threadInput}". Pass the thread ID or its vercel.com URL.`);threadId=parsed.id,urlTeamSlug=parsed.teamSlug}else{let picked=await pickThread(client,jsonOutput);if(typeof picked=="number")return picked;threadId=picked}let scope=await resolveCommentsScope(client,{project:parsedArgs.flags["--project"],requireProject:!1,jsonOutput,urlTeamSlug});if(typeof scope=="number")return scope;jsonOutput||output_manager_default.spinner("Fetching comment\u2026");let thread,messages;try{thread=await getThread(client,scope.teamId,threadId),messages=await fetchAllMessages(client,scope.teamId,thread)}catch(err){if(isAPIError(err)){let{code,message}=toApiErrorParts(err);return outputError(client,jsonOutput,code,err.status===404?threadNotFoundMessage(threadId,scope):message)}throw err}finally{output_manager_default.stopSpinner()}return jsonOutput?(client.stdout.write(`${JSON.stringify({...thread,messages},null,2)}
7
+ import{actorLabel,displayPath,renderThreadDetail,threadAge,truncate}from"./chunk-GNV6PG6W.js";import{parseThreadArg}from"./chunk-2S6PE6GB.js";import{getThread,handleCommentsParseError,inferBranch,listMessages,listThreads,resolveCommentsScope,threadNotFoundMessage,toApiErrorParts}from"./chunk-ZLWTPS5T.js";import{outputError}from"./chunk-ZQKDO5PL.js";import{canPrompt}from"./chunk-IQ7FPAI4.js";import"./chunk-F4KY2TOK.js";import"./chunk-ID663OJ7.js";import"./chunk-6ZRULOO3.js";import"./chunk-GCSAJUL6.js";import{inspectSubcommand}from"./chunk-CN3IVZJO.js";import"./chunk-QAETJRKX.js";import"./chunk-BS32OUOC.js";import{validateJsonOutput}from"./chunk-D4MW3RDW.js";import"./chunk-IIC2A4YN.js";import"./chunk-MV4WHUIC.js";import"./chunk-VKXEOL4K.js";import"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import{parseArguments}from"./chunk-ELDHGU6N.js";import"./chunk-BAT6SDBJ.js";import{getFlagsSpecification}from"./chunk-MI7W4QMV.js";import"./chunk-U3NQZJQ4.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-IJCCFLCQ.js";import"./chunk-ZQME5XUJ.js";import"./chunk-2VBFQZ72.js";import{isAPIError}from"./chunk-XSDAUM4F.js";import"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-M774HRX5.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import"./chunk-BZENIQ7N.js";async function pickThread(client,jsonOutput){if(!canPrompt(client)||jsonOutput)return outputError(client,jsonOutput,"MISSING_THREAD","Pass a thread ID or URL: `vercel comments inspect <thread>`.");let scope=await resolveCommentsScope(client,{requireProject:!0,jsonOutput});if(typeof scope=="number")return scope;let focus=scope.linked?inferBranch(client.cwd):void 0;output_manager_default.spinner("Fetching comments\u2026");let response;try{response=await listThreads(client,scope.teamId,{projectId:scope.projectId,status:"unresolved",branch:focus?[focus.value]:void 0,limit:20})}finally{output_manager_default.stopSpinner()}return response.threads.length===0?outputError(client,jsonOutput,"NO_COMMENTS",`No unresolved comments${focus?` on ${focus.value}`:""} to pick from.`):client.input.select({message:"Select a comment",choices:response.threads.map(thread=>({name:`${threadAge(thread)} ${actorLabel(thread.messages[0]?.author)} ${displayPath(thread)} \u201C${truncate(thread.messages[0]?.text??"",48)}\u201D`,value:thread.id}))})}async function fetchAllMessages(client,teamId,thread){if(thread.messageCount<=thread.messages.length)return thread.messages;let all=[],cursor;do{let page=await listMessages(client,teamId,thread.id,{limit:100,cursor});all.push(...page.messages),cursor=page.pagination?.nextCursor}while(cursor&&all.length<thread.messageCount);return all}async function inspect(client,telemetry){let parsedArgs,flagsSpecification=getFlagsSpecification(inspectSubcommand.options);try{parsedArgs=parseArguments(client.argv.slice(2),flagsSpecification)}catch(err){return handleCommentsParseError(err,"inspect")}let formatResult=validateJsonOutput(parsedArgs.flags);if(!formatResult.valid)return output_manager_default.error(formatResult.error),2;let jsonOutput=formatResult.jsonOutput,showContext=!!parsedArgs.flags["--context"];telemetry.trackCliOptionFormat(parsedArgs.flags["--format"]),telemetry.trackCliFlagContext(parsedArgs.flags["--context"]),telemetry.trackCliOptionProject(parsedArgs.flags["--project"]);let threadInput=parsedArgs.args[2];telemetry.trackCliArgumentThread(threadInput);let threadId,urlTeamSlug;if(threadInput){let parsed=parseThreadArg(threadInput);if(!parsed)return outputError(client,jsonOutput,"INVALID_THREAD",`Could not extract a thread ID from "${threadInput}". Pass the thread ID or its vercel.com URL.`);threadId=parsed.id,urlTeamSlug=parsed.teamSlug}else{let picked=await pickThread(client,jsonOutput);if(typeof picked=="number")return picked;threadId=picked}let scope=await resolveCommentsScope(client,{project:parsedArgs.flags["--project"],requireProject:!1,jsonOutput,urlTeamSlug});if(typeof scope=="number")return scope;jsonOutput||output_manager_default.spinner("Fetching comment\u2026");let thread,messages;try{thread=await getThread(client,scope.teamId,threadId),messages=await fetchAllMessages(client,scope.teamId,thread)}catch(err){if(isAPIError(err)){let{code,message}=toApiErrorParts(err);return outputError(client,jsonOutput,code,err.status===404?threadNotFoundMessage(threadId,scope):message)}throw err}finally{output_manager_default.stopSpinner()}return jsonOutput?(client.stdout.write(`${JSON.stringify({...thread,messages},null,2)}
8
8
  `),0):(output_manager_default.print(`${renderThreadDetail(thread,messages,{showContext})}
9
9
  `),0)}export{inspect as default};
@@ -4,7 +4,7 @@ import { dirname as __dirname_ } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
- import{renderThreadRow}from"./chunk-TBLIJ2PS.js";import{handleCommentsParseError,inferBranch,listThreads,resolveCommentsScope}from"./chunk-SGXN7SMU.js";import{handleValidationError,outputError,validateIntegerRangeWithDefault}from"./chunk-5UEBA6N6.js";import"./chunk-F4KY2TOK.js";import"./chunk-ID663OJ7.js";import"./chunk-EKUHN42H.js";import"./chunk-5JEU6QSM.js";import{listSubcommand}from"./chunk-CN3IVZJO.js";import"./chunk-3EU7MN5M.js";import"./chunk-BS32OUOC.js";import{validateJsonOutput}from"./chunk-D4MW3RDW.js";import{getScope}from"./chunk-WZ7YJDKT.js";import"./chunk-PAN6TUTQ.js";import"./chunk-VKXEOL4K.js";import"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import{parseArguments}from"./chunk-CRQDQNQZ.js";import"./chunk-RIDPB64C.js";import{getFlagsSpecification,stripSensitiveAuthArgs}from"./chunk-MI7W4QMV.js";import"./chunk-4TTF5E5U.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-N7Q2IESO.js";import"./chunk-WPQN5UKR.js";import"./chunk-2VBFQZ72.js";import{isAPIError}from"./chunk-YIIPBH2D.js";import{getCommandName}from"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-75IAMKGV.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import{require_source}from"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import{__toESM}from"./chunk-BZENIQ7N.js";var import_chalk=__toESM(require_source(),1);function validateStatus(value){let status=value??"unresolved";if(["unresolved","resolved","all"].includes(status))return status}async function resolveAuthors(client,authors,jsonOutput){if(!authors||authors.length===0)return;if(!authors.includes("me"))return authors;let{user}=await getScope(client);return user?authors.map(author=>author==="me"?user.id:author):outputError(client,jsonOutput,"USER_REQUIRED","Can't resolve `--author me` when authenticated as an app. Use an author ID with `--author`, or authenticate with a user token.")}function statusWord(status){return status==="all"?"":` ${status}`}function printActiveFilters(flags){let parts=[];flags["--author"]?.length&&parts.push(`--author ${flags["--author"].join(", ")} (takes a user ID or \`me\` \u2014 usernames match nothing)`);let pagePaths=flags["--page-path"]??flags["--page"];pagePaths?.length&&parts.push(`--page-path ${pagePaths.join(", ")}`),flags["--search"]&&parts.push(`--search ${flags["--search"]}`),flags["--content-id"]?.length&&parts.push(`--content-id ${flags["--content-id"].join(", ")}`),parts.length>0&&output_manager_default.log(`Filters: ${parts.join(" \xB7 ")}`)}function countLine(count,status){return`${count}${statusWord(status)} comment${count===1?"":"s"}`}var SCOPE_FLAG_NAMES=new Set(["--scope","-S","--project","-p","--team","-T"]);function argvFlagTokens(client){return stripSensitiveAuthArgs(client.argv.slice(3))}function scopeFlagsSuffix(client){let tokens=argvFlagTokens(client),out=[];for(let i=0;i<tokens.length;i++){let token=tokens[i],name=token.split("=")[0];SCOPE_FLAG_NAMES.has(name)&&(out.push(token),!token.includes("=")&&i+1<tokens.length&&out.push(tokens[++i]))}return out.length>0?` ${out.join(" ")}`:""}function nextPageFlagsSuffix(client){let tokens=argvFlagTokens(client),out=[];for(let i=0;i<tokens.length;i++){let token=tokens[i];if(!token.startsWith("-"))continue;let name=token.split("=")[0];if(name==="--next"||name==="-N"){!token.includes("=")&&i+1<tokens.length&&i++;continue}out.push(name==="--page"?token.replace(/^--page(?==|$)/,"--page-path"):token),!token.includes("=")&&i+1<tokens.length&&!tokens[i+1].startsWith("-")&&out.push(tokens[++i])}return out.length>0?` ${out.join(" ")}`:""}function shellSafe(value){return/^[A-Za-z0-9._/-]+$/.test(value)?value:`'${value.replace(/'/g,"'\\''")}'`}async function printEmptyState(client,scope,focus,params,status,flags){let probe;try{probe=await listThreads(client,scope.teamId,{...params,branch:void 0,cursor:void 0,limit:20})}catch{output_manager_default.log(`No${statusWord(status)} comments on ${focus.value}.`);return}let branches=new Map;for(let thread of probe.threads){let branch=thread.branch??"(no branch)";branches.set(branch,(branches.get(branch)??0)+1)}if(branches.size===0){output_manager_default.log(`No${statusWord(status)} comments in ${scope.projectName??"this project"} on any branch.`),printActiveFilters(flags);return}output_manager_default.log(`No${statusWord(status)} comments on ${focus.value}.`);let suffix=probe.pagination.nextCursor?"+":"",scopeSuffix=scopeFlagsSuffix(client);if(branches.size===1){let[branch,count]=[...branches.entries()][0];output_manager_default.log(`${count}${suffix}${statusWord(status)} on ${import_chalk.default.bold(branch)} \u2014 run ${getCommandName(`comments --branch ${shellSafe(branch)}${scopeSuffix}`)}`);return}let total=[...branches.values()].reduce((a,b)=>a+b,0);output_manager_default.log(`${total}${suffix}${statusWord(status)} on other branches \u2014 run ${getCommandName(`comments --all-branches${scopeSuffix}`)}`)}async function list(client,telemetry,defaultInvocation){let parsedArgs,flagsSpecification=getFlagsSpecification(listSubcommand.options);try{parsedArgs=parseArguments(client.argv.slice(2),flagsSpecification)}catch(err){return handleCommentsParseError(err,"list")}let flags=parsedArgs.flags,pagePaths=flags["--page-path"]??flags["--page"],expectedPositionals=defaultInvocation?1:2;if(parsedArgs.args.length>expectedPositionals)return output_manager_default.error(`Unknown ${defaultInvocation?"subcommand":"argument"} "${parsedArgs.args[expectedPositionals]}". Run \`vercel comments --help\` for usage.`),1;let formatResult=validateJsonOutput(flags);if(!formatResult.valid)return output_manager_default.error(formatResult.error),2;let jsonOutput=formatResult.jsonOutput;telemetry.trackCliOptionProject(flags["--project"]),telemetry.trackCliOptionBranch(flags["--branch"]),telemetry.trackCliFlagAllBranches(flags["--all-branches"]),telemetry.trackCliOptionStatus(flags["--status"]),telemetry.trackCliOptionPagePath(flags["--page-path"]),telemetry.trackCliOptionPage(flags["--page"]),telemetry.trackCliOptionAuthor(flags["--author"]),telemetry.trackCliOptionContentId(flags["--content-id"]),telemetry.trackCliOptionSearch(flags["--search"]),telemetry.trackCliOptionLimit(flags["--limit"]),telemetry.trackCliOptionNext(flags["--next"]),telemetry.trackCliOptionFormat(flags["--format"]);let status=validateStatus(flags["--status"]);if(!status)return outputError(client,jsonOutput,"INVALID_STATUS",`Invalid --status "${flags["--status"]}". Valid values: unresolved, resolved, all.`);let limitResult=validateIntegerRangeWithDefault(flags["--limit"],{flag:"--limit",min:1,max:100,defaultValue:20});if(!limitResult.valid)return handleValidationError(limitResult,jsonOutput,client);if(flags["--branch"]&&flags["--all-branches"])return outputError(client,jsonOutput,"MUTUAL_EXCLUSIVITY","Cannot specify both --branch and --all-branches.");let scope=await resolveCommentsScope(client,{project:flags["--project"],requireProject:!0,jsonOutput});if(typeof scope=="number")return scope;let focus,branchFilter;if(flags["--branch"]&&flags["--branch"].length>0)branchFilter=flags["--branch"],focus={value:branchFilter.join(", "),source:"flag"};else if(!flags["--all-branches"]&&scope.linked){let inferred=inferBranch(client.cwd);inferred&&(focus=inferred,branchFilter=[inferred.value])}let authors=await resolveAuthors(client,flags["--author"],jsonOutput);if(typeof authors=="number")return authors;let params={projectId:scope.projectId,branch:branchFilter,status:status==="all"?void 0:status,page:pagePaths,author:authors,contentId:flags["--content-id"],search:flags["--search"],limit:limitResult.value,cursor:flags["--next"]};jsonOutput||output_manager_default.spinner("Fetching comments\u2026");let response;try{response=await listThreads(client,scope.teamId,params)}catch(err){if(isAPIError(err))return outputError(client,jsonOutput,err.code||"API_ERROR",err.serverMessage||`API error (${err.status}).`);throw err}finally{output_manager_default.stopSpinner()}let threads=response.threads??[],nextCursor=response.pagination?.nextCursor??null;if(jsonOutput){let envelope={scope:{teamId:scope.teamId,...scope.teamSlug&&{teamSlug:scope.teamSlug},...scope.projectId&&{projectId:scope.projectId},...scope.projectName&&{projectName:scope.projectName},...focus&&focus.source!=="flag"&&{inferredBranch:focus.value}},filters:{...status!=="all"&&{status},...focus&&{branch:{value:focus.value,source:focus.source}}},pagination:{nextCursor},threads};return client.stdout.write(`${JSON.stringify(envelope,null,2)}
7
+ import{renderThreadRow}from"./chunk-GNV6PG6W.js";import{handleCommentsParseError,inferBranch,listThreads,resolveCommentsScope}from"./chunk-ZLWTPS5T.js";import{handleValidationError,outputError,validateIntegerRangeWithDefault}from"./chunk-ZQKDO5PL.js";import"./chunk-F4KY2TOK.js";import"./chunk-ID663OJ7.js";import"./chunk-6ZRULOO3.js";import"./chunk-GCSAJUL6.js";import{listSubcommand}from"./chunk-CN3IVZJO.js";import"./chunk-QAETJRKX.js";import"./chunk-BS32OUOC.js";import{validateJsonOutput}from"./chunk-D4MW3RDW.js";import{getScope}from"./chunk-IIC2A4YN.js";import"./chunk-MV4WHUIC.js";import"./chunk-VKXEOL4K.js";import"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import{parseArguments}from"./chunk-ELDHGU6N.js";import"./chunk-BAT6SDBJ.js";import{getFlagsSpecification,stripSensitiveAuthArgs}from"./chunk-MI7W4QMV.js";import"./chunk-U3NQZJQ4.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-IJCCFLCQ.js";import"./chunk-ZQME5XUJ.js";import"./chunk-2VBFQZ72.js";import{isAPIError}from"./chunk-XSDAUM4F.js";import{getCommandName}from"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-M774HRX5.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import{require_source}from"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import{__toESM}from"./chunk-BZENIQ7N.js";var import_chalk=__toESM(require_source(),1);function validateStatus(value){let status=value??"unresolved";if(["unresolved","resolved","all"].includes(status))return status}async function resolveAuthors(client,authors,jsonOutput){if(!authors||authors.length===0)return;if(!authors.includes("me"))return authors;let{user}=await getScope(client);return user?authors.map(author=>author==="me"?user.id:author):outputError(client,jsonOutput,"USER_REQUIRED","Can't resolve `--author me` when authenticated as an app. Use an author ID with `--author`, or authenticate with a user token.")}function statusWord(status){return status==="all"?"":` ${status}`}function printActiveFilters(flags){let parts=[];flags["--author"]?.length&&parts.push(`--author ${flags["--author"].join(", ")} (takes a user ID or \`me\` \u2014 usernames match nothing)`);let pagePaths=flags["--page-path"]??flags["--page"];pagePaths?.length&&parts.push(`--page-path ${pagePaths.join(", ")}`),flags["--search"]&&parts.push(`--search ${flags["--search"]}`),flags["--content-id"]?.length&&parts.push(`--content-id ${flags["--content-id"].join(", ")}`),parts.length>0&&output_manager_default.log(`Filters: ${parts.join(" \xB7 ")}`)}function countLine(count,status){return`${count}${statusWord(status)} comment${count===1?"":"s"}`}var SCOPE_FLAG_NAMES=new Set(["--scope","-S","--project","-p","--team","-T"]);function argvFlagTokens(client){return stripSensitiveAuthArgs(client.argv.slice(3))}function scopeFlagsSuffix(client){let tokens=argvFlagTokens(client),out=[];for(let i=0;i<tokens.length;i++){let token=tokens[i],name=token.split("=")[0];SCOPE_FLAG_NAMES.has(name)&&(out.push(token),!token.includes("=")&&i+1<tokens.length&&out.push(tokens[++i]))}return out.length>0?` ${out.join(" ")}`:""}function nextPageFlagsSuffix(client){let tokens=argvFlagTokens(client),out=[];for(let i=0;i<tokens.length;i++){let token=tokens[i];if(!token.startsWith("-"))continue;let name=token.split("=")[0];if(name==="--next"||name==="-N"){!token.includes("=")&&i+1<tokens.length&&i++;continue}out.push(name==="--page"?token.replace(/^--page(?==|$)/,"--page-path"):token),!token.includes("=")&&i+1<tokens.length&&!tokens[i+1].startsWith("-")&&out.push(tokens[++i])}return out.length>0?` ${out.join(" ")}`:""}function shellSafe(value){return/^[A-Za-z0-9._/-]+$/.test(value)?value:`'${value.replace(/'/g,"'\\''")}'`}async function printEmptyState(client,scope,focus,params,status,flags){let probe;try{probe=await listThreads(client,scope.teamId,{...params,branch:void 0,cursor:void 0,limit:20})}catch{output_manager_default.log(`No${statusWord(status)} comments on ${focus.value}.`);return}let branches=new Map;for(let thread of probe.threads){let branch=thread.branch??"(no branch)";branches.set(branch,(branches.get(branch)??0)+1)}if(branches.size===0){output_manager_default.log(`No${statusWord(status)} comments in ${scope.projectName??"this project"} on any branch.`),printActiveFilters(flags);return}output_manager_default.log(`No${statusWord(status)} comments on ${focus.value}.`);let suffix=probe.pagination.nextCursor?"+":"",scopeSuffix=scopeFlagsSuffix(client);if(branches.size===1){let[branch,count]=[...branches.entries()][0];output_manager_default.log(`${count}${suffix}${statusWord(status)} on ${import_chalk.default.bold(branch)} \u2014 run ${getCommandName(`comments --branch ${shellSafe(branch)}${scopeSuffix}`)}`);return}let total=[...branches.values()].reduce((a,b)=>a+b,0);output_manager_default.log(`${total}${suffix}${statusWord(status)} on other branches \u2014 run ${getCommandName(`comments --all-branches${scopeSuffix}`)}`)}async function list(client,telemetry,defaultInvocation){let parsedArgs,flagsSpecification=getFlagsSpecification(listSubcommand.options);try{parsedArgs=parseArguments(client.argv.slice(2),flagsSpecification)}catch(err){return handleCommentsParseError(err,"list")}let flags=parsedArgs.flags,pagePaths=flags["--page-path"]??flags["--page"],expectedPositionals=defaultInvocation?1:2;if(parsedArgs.args.length>expectedPositionals)return output_manager_default.error(`Unknown ${defaultInvocation?"subcommand":"argument"} "${parsedArgs.args[expectedPositionals]}". Run \`vercel comments --help\` for usage.`),1;let formatResult=validateJsonOutput(flags);if(!formatResult.valid)return output_manager_default.error(formatResult.error),2;let jsonOutput=formatResult.jsonOutput;telemetry.trackCliOptionProject(flags["--project"]),telemetry.trackCliOptionBranch(flags["--branch"]),telemetry.trackCliFlagAllBranches(flags["--all-branches"]),telemetry.trackCliOptionStatus(flags["--status"]),telemetry.trackCliOptionPagePath(flags["--page-path"]),telemetry.trackCliOptionPage(flags["--page"]),telemetry.trackCliOptionAuthor(flags["--author"]),telemetry.trackCliOptionContentId(flags["--content-id"]),telemetry.trackCliOptionSearch(flags["--search"]),telemetry.trackCliOptionLimit(flags["--limit"]),telemetry.trackCliOptionNext(flags["--next"]),telemetry.trackCliOptionFormat(flags["--format"]);let status=validateStatus(flags["--status"]);if(!status)return outputError(client,jsonOutput,"INVALID_STATUS",`Invalid --status "${flags["--status"]}". Valid values: unresolved, resolved, all.`);let limitResult=validateIntegerRangeWithDefault(flags["--limit"],{flag:"--limit",min:1,max:100,defaultValue:20});if(!limitResult.valid)return handleValidationError(limitResult,jsonOutput,client);if(flags["--branch"]&&flags["--all-branches"])return outputError(client,jsonOutput,"MUTUAL_EXCLUSIVITY","Cannot specify both --branch and --all-branches.");let scope=await resolveCommentsScope(client,{project:flags["--project"],requireProject:!0,jsonOutput});if(typeof scope=="number")return scope;let focus,branchFilter;if(flags["--branch"]&&flags["--branch"].length>0)branchFilter=flags["--branch"],focus={value:branchFilter.join(", "),source:"flag"};else if(!flags["--all-branches"]&&scope.linked){let inferred=inferBranch(client.cwd);inferred&&(focus=inferred,branchFilter=[inferred.value])}let authors=await resolveAuthors(client,flags["--author"],jsonOutput);if(typeof authors=="number")return authors;let params={projectId:scope.projectId,branch:branchFilter,status:status==="all"?void 0:status,page:pagePaths,author:authors,contentId:flags["--content-id"],search:flags["--search"],limit:limitResult.value,cursor:flags["--next"]};jsonOutput||output_manager_default.spinner("Fetching comments\u2026");let response;try{response=await listThreads(client,scope.teamId,params)}catch(err){if(isAPIError(err))return outputError(client,jsonOutput,err.code||"API_ERROR",err.serverMessage||`API error (${err.status}).`);throw err}finally{output_manager_default.stopSpinner()}let threads=response.threads??[],nextCursor=response.pagination?.nextCursor??null;if(jsonOutput){let envelope={scope:{teamId:scope.teamId,...scope.teamSlug&&{teamSlug:scope.teamSlug},...scope.projectId&&{projectId:scope.projectId},...scope.projectName&&{projectName:scope.projectName},...focus&&focus.source!=="flag"&&{inferredBranch:focus.value}},filters:{...status!=="all"&&{status},...focus&&{branch:{value:focus.value,source:focus.source}}},pagination:{nextCursor},threads};return client.stdout.write(`${JSON.stringify(envelope,null,2)}
8
8
  `),0}let branchLabel=focus?focus.value:"all branches";if(output_manager_default.log(`Comments in ${import_chalk.default.bold(scope.projectName??scope.projectId??"")} \xB7 ${branchLabel}`),threads.length===0)return focus?await printEmptyState(client,scope,focus,params,status,flags):(output_manager_default.log(`No${statusWord(status)} comments in ${scope.projectName??"this project"}.`),printActiveFilters(flags)),0;output_manager_default.print(`
9
9
  `);for(let thread of threads)output_manager_default.print(`${renderThreadRow(thread,{showBranch:!focus})}
10
10
 
@@ -4,7 +4,7 @@ import { dirname as __dirname_ } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
- import{handleValidationError,normalizeRepeatableStringFilters,outputError,validateAllProjectMutualExclusivity,validateIntegerRangeWithDefault,validateTimeBound,validateTimeOrder}from"./chunk-5UEBA6N6.js";import{activityCommand}from"./chunk-Y24OSBXP.js";import{getCommandFlags}from"./chunk-OUHPDA7Q.js";import{printError}from"./chunk-3EU7MN5M.js";import{validateJsonOutput}from"./chunk-D4MW3RDW.js";import{getScope}from"./chunk-WZ7YJDKT.js";import"./chunk-PAN6TUTQ.js";import"./chunk-VKXEOL4K.js";import"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import{parseArguments}from"./chunk-CRQDQNQZ.js";import"./chunk-RIDPB64C.js";import{getFlagsSpecification}from"./chunk-MI7W4QMV.js";import{getLinkedProject,getProjectByNameOrId}from"./chunk-4TTF5E5U.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-N7Q2IESO.js";import"./chunk-WPQN5UKR.js";import"./chunk-2VBFQZ72.js";import{ProjectNotFound,isAPIError}from"./chunk-YIIPBH2D.js";import{getCommandName}from"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-75IAMKGV.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import{require_source}from"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import{__toESM}from"./chunk-BZENIQ7N.js";var import_chalk=__toESM(require_source(),1);function validateNext(next){if(next===void 0)return{valid:!0,value:void 0};if(Number.isNaN(next))return{valid:!1,code:"INVALID_NEXT",message:"Please provide a number for flag `--next`."};let date=new Date(next);return Number.isNaN(date.getTime())?{valid:!1,code:"INVALID_NEXT",message:"Please provide a valid unix timestamp in milliseconds for `--next`."}:{valid:!0,value:date}}function handleApiError(err,jsonOutput,client){return err.status===403?outputError(client,jsonOutput,"FORBIDDEN","You do not have permission to list activity events. Required permissions: Event: List or OwnEvent: List."):outputError(client,jsonOutput,err.code||"API_ERROR",err.serverMessage||`API error (${err.status}).`)}function formatActor(event){let principal=event.principal;return principal?principal.type==="system"?"system":principal.username?principal.username:principal.name?principal.name:principal.slug?principal.slug:principal.email?principal.email:event.principalId||"-":event.principalId||"-"}function formatTimestamp(createdAt){if(!Number.isFinite(createdAt)||createdAt<=0)return"-";let date=new Date(createdAt);return Number.isNaN(date.getTime())?"-":date.toISOString()}function formatEventText(text){return text.replace(/\s+/g," ").trim()}function printExpandedEvents(events){let lines=[""];events.forEach(event=>{lines.push(`${import_chalk.default.gray("-")} ${formatEventText(event.text)}`),lines.push(` ${import_chalk.default.cyan("Type".padEnd(14))}${event.type??"-"}`),lines.push(` ${import_chalk.default.cyan("Actor".padEnd(14))}${formatActor(event)}`),lines.push(` ${import_chalk.default.cyan("Timestamp".padEnd(14))}${formatTimestamp(event.createdAt)}`),lines.push(` ${import_chalk.default.cyan("ID".padEnd(14))}${event.id}`),lines.push("")}),output_manager_default.print(`${lines.join(`
7
+ import{handleValidationError,normalizeRepeatableStringFilters,outputError,validateAllProjectMutualExclusivity,validateIntegerRangeWithDefault,validateTimeBound,validateTimeOrder}from"./chunk-ZQKDO5PL.js";import{activityCommand}from"./chunk-Y24OSBXP.js";import{getCommandFlags}from"./chunk-OUHPDA7Q.js";import{printError}from"./chunk-QAETJRKX.js";import{validateJsonOutput}from"./chunk-D4MW3RDW.js";import{getScope}from"./chunk-IIC2A4YN.js";import"./chunk-MV4WHUIC.js";import"./chunk-VKXEOL4K.js";import"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import{parseArguments}from"./chunk-ELDHGU6N.js";import"./chunk-BAT6SDBJ.js";import{getFlagsSpecification}from"./chunk-MI7W4QMV.js";import{getLinkedProject,getProjectByNameOrId}from"./chunk-U3NQZJQ4.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-IJCCFLCQ.js";import"./chunk-ZQME5XUJ.js";import"./chunk-2VBFQZ72.js";import{ProjectNotFound,isAPIError}from"./chunk-XSDAUM4F.js";import{getCommandName}from"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-M774HRX5.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import{require_source}from"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import{__toESM}from"./chunk-BZENIQ7N.js";var import_chalk=__toESM(require_source(),1);function validateNext(next){if(next===void 0)return{valid:!0,value:void 0};if(Number.isNaN(next))return{valid:!1,code:"INVALID_NEXT",message:"Please provide a number for flag `--next`."};let date=new Date(next);return Number.isNaN(date.getTime())?{valid:!1,code:"INVALID_NEXT",message:"Please provide a valid unix timestamp in milliseconds for `--next`."}:{valid:!0,value:date}}function handleApiError(err,jsonOutput,client){return err.status===403?outputError(client,jsonOutput,"FORBIDDEN","You do not have permission to list activity events. Required permissions: Event: List or OwnEvent: List."):outputError(client,jsonOutput,err.code||"API_ERROR",err.serverMessage||`API error (${err.status}).`)}function formatActor(event){let principal=event.principal;return principal?principal.type==="system"?"system":principal.username?principal.username:principal.name?principal.name:principal.slug?principal.slug:principal.email?principal.email:event.principalId||"-":event.principalId||"-"}function formatTimestamp(createdAt){if(!Number.isFinite(createdAt)||createdAt<=0)return"-";let date=new Date(createdAt);return Number.isNaN(date.getTime())?"-":date.toISOString()}function formatEventText(text){return text.replace(/\s+/g," ").trim()}function printExpandedEvents(events){let lines=[""];events.forEach(event=>{lines.push(`${import_chalk.default.gray("-")} ${formatEventText(event.text)}`),lines.push(` ${import_chalk.default.cyan("Type".padEnd(14))}${event.type??"-"}`),lines.push(` ${import_chalk.default.cyan("Actor".padEnd(14))}${formatActor(event)}`),lines.push(` ${import_chalk.default.cyan("Timestamp".padEnd(14))}${formatTimestamp(event.createdAt)}`),lines.push(` ${import_chalk.default.cyan("ID".padEnd(14))}${event.id}`),lines.push("")}),output_manager_default.print(`${lines.join(`
8
8
  `)}
9
9
  `)}function trackTelemetry(flags,types,telemetry){telemetry.trackCliOptionType(types.length>0?types:void 0),telemetry.trackCliOptionSince(flags["--since"]),telemetry.trackCliOptionUntil(flags["--until"]),telemetry.trackCliOptionProject(flags["--project"]),telemetry.trackCliFlagAll(flags["--all"]),telemetry.trackCliOptionLimit(flags["--limit"]),telemetry.trackCliOptionNext(flags["--next"]),telemetry.trackCliOptionFormat(flags["--format"])}function parseFlags(client){let flagsSpecification=getFlagsSpecification(activityCommand.options);try{return parseArguments(client.argv.slice(2),flagsSpecification).flags}catch(err){return printError(err),2}}function resolveValidatedInputs(flags,jsonOutput,client,normalizedTypes){let limitResult=validateIntegerRangeWithDefault(flags["--limit"],{flag:"--limit",min:1,max:100,defaultValue:20});if(!limitResult.valid)return handleValidationError(limitResult,jsonOutput,client);let mutualResult=validateAllProjectMutualExclusivity(flags["--all"],flags["--project"]);if(!mutualResult.valid)return handleValidationError(mutualResult,jsonOutput,client);let sinceResult=validateTimeBound(flags["--since"]);if(!sinceResult.valid)return handleValidationError(sinceResult,jsonOutput,client);let nextResult=validateNext(flags["--next"]);if(!nextResult.valid)return handleValidationError(nextResult,jsonOutput,client);let until=nextResult.value;if(!until){let untilResult=validateTimeBound(flags["--until"]);if(!untilResult.valid)return handleValidationError(untilResult,jsonOutput,client);until=untilResult.value}let since=sinceResult.value,timeOrderResult=validateTimeOrder(since,until);return timeOrderResult.valid?{limit:limitResult.value,types:normalizedTypes,since,until}:handleValidationError(timeOrderResult,jsonOutput,client)}async function resolveScope(client,opts){if(opts.all||opts.project){let{team}=await getScope(client);if(!team)return outputError(client,opts.jsonOutput,"NO_TEAM","No team context found. Run `vercel switch` to select a team, or use `vercel link` in a project directory.");if(opts.all)return{teamId:team.id,teamSlug:team.slug};let projectResult;try{projectResult=await getProjectByNameOrId(client,opts.project,team.id)}catch(err){if(isAPIError(err))return outputError(client,opts.jsonOutput,err.code||"API_ERROR",err.serverMessage||(err.status===403?`You do not have permission to access project "${opts.project}" in team "${team.slug}".`:`API error (${err.status}).`));throw err}return projectResult instanceof ProjectNotFound?outputError(client,opts.jsonOutput,"PROJECT_NOT_FOUND",`Project "${opts.project}" was not found in team "${team.slug}".`):{teamId:team.id,teamSlug:team.slug,projectIds:[projectResult.id],projectName:projectResult.name}}let linkedProject=await getLinkedProject(client);if(linkedProject.status==="error")return linkedProject.exitCode;if(linkedProject.status==="not_linked")return outputError(client,opts.jsonOutput,"NOT_LINKED","No linked project found. Run `vercel link` to link a project, or use --project <name> or --all.");let isTeamProject=linkedProject.org.type==="team";return{projectIds:[linkedProject.project.id],projectName:linkedProject.project.name,teamId:isTeamProject?linkedProject.org.id:void 0,teamSlug:isTeamProject?linkedProject.org.slug:void 0}}function buildEventsQuery(params){let query=new URLSearchParams({limit:String(params.limit+1)});return params.types.length>0&&query.set("types",params.types.join(",")),params.since&&query.set("since",params.since.toISOString()),params.until&&query.set("until",params.until.toISOString()),params.scope.projectIds&&params.scope.projectIds.length>0&&query.set("projectIds",params.scope.projectIds.join(",")),params.scope.teamId&&query.set("teamId",params.scope.teamId),params.scope.teamSlug&&query.set("slug",params.scope.teamSlug),params.jsonOutput&&query.set("withPayload","true"),query}function paginateEvents(allEvents,limit){let events=allEvents.slice(0,limit),hasMore=allEvents.length>limit,lastVisibleEvent=events[events.length-1],next=hasMore&&typeof lastVisibleEvent?.createdAt=="number"?lastVisibleEvent.createdAt-1:null;return{events,next}}function printScopeHeader(scope){!scope.projectName&&scope.teamSlug?output_manager_default.log(`Showing all activity for team ${import_chalk.default.bold(scope.teamSlug)}`):scope.projectName&&scope.teamSlug?output_manager_default.log(`Showing activity for project ${import_chalk.default.bold(scope.projectName)} in team ${import_chalk.default.bold(scope.teamSlug)}`):scope.projectName&&output_manager_default.log(`Showing activity for project ${import_chalk.default.bold(scope.projectName)}`)}function printNextPageHint(flags,next){let commandFlags=getCommandFlags(flags,["--next"]);output_manager_default.log(`To display the next page, run ${getCommandName(`activity${commandFlags} --next ${next}`)}`)}async function list(client,telemetry){let flags=parseFlags(client);if(typeof flags=="number")return flags;let formatResult=validateJsonOutput(flags);if(!formatResult.valid)return output_manager_default.error(formatResult.error),2;let jsonOutput=formatResult.jsonOutput,normalizedTypes=normalizeRepeatableStringFilters(flags["--type"]);trackTelemetry(flags,normalizedTypes,telemetry);let validatedInputs=resolveValidatedInputs(flags,jsonOutput,client,normalizedTypes);if(typeof validatedInputs=="number")return validatedInputs;let scope=await resolveScope(client,{project:flags["--project"],all:flags["--all"],jsonOutput});if(typeof scope=="number")return scope;let query=buildEventsQuery({limit:validatedInputs.limit,types:validatedInputs.types,since:validatedInputs.since,until:validatedInputs.until,scope,jsonOutput});output_manager_default.spinner("Fetching activity...");try{let response=await client.fetch(`/v3/events?${query.toString()}`,{useCurrentTeam:!1}),allEvents=Array.isArray(response.events)?response.events:[],{events,next}=paginateEvents(allEvents,validatedInputs.limit);if(jsonOutput){let jsonResponse={...(scope.teamSlug||scope.projectName)&&{scope:{...scope.teamSlug&&{teamSlug:scope.teamSlug},...scope.projectName&&{projectName:scope.projectName},...scope.projectIds&&{projectIds:scope.projectIds}}},events,pagination:{next}};return client.stdout.write(`${JSON.stringify(jsonResponse,null,2)}
10
10
  `),0}return printScopeHeader(scope),events.length===0?(output_manager_default.log("No activity events found."),0):(printExpandedEvents(events),next!==null&&printNextPageHint(flags,next),0)}catch(err){if(isAPIError(err))return handleApiError(err,jsonOutput,client);throw err}finally{output_manager_default.stopSpinner()}}export{list as default};
@@ -4,7 +4,7 @@ import { dirname as __dirname_ } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
- import{getGroupStartedAt,getGroupTitle,getGroupType,normalizeTimestamp,renderAlertTable}from"./chunk-RRWEIG6B.js";import{resolveAlertsScope}from"./chunk-QL3IYPBV.js";import{formatDate}from"./chunk-YTDK6AHS.js";import"./chunk-GZNDA6SV.js";import{handleValidationError,normalizeRepeatableStringFilters,outputError,validateAllProjectMutualExclusivity,validateOptionalIntegerRange,validateTimeBound,validateTimeOrder}from"./chunk-5UEBA6N6.js";import"./chunk-GHAY4PSD.js";import{truncateEnd}from"./chunk-ID663OJ7.js";import{alertsCommand}from"./chunk-GVVIFYQE.js";import"./chunk-W3TGCMRW.js";import"./chunk-773GOZIR.js";import{printError}from"./chunk-3EU7MN5M.js";import"./chunk-67GZ5REA.js";import"./chunk-BS32OUOC.js";import{validateJsonOutput}from"./chunk-D4MW3RDW.js";import"./chunk-WZ7YJDKT.js";import"./chunk-PAN6TUTQ.js";import"./chunk-VKXEOL4K.js";import{require_ms}from"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import{parseArguments}from"./chunk-CRQDQNQZ.js";import{AGENT_REASON,buildCommandWithGlobalFlags,outputAgentError,shouldEmitNonInteractiveCommandError}from"./chunk-RIDPB64C.js";import{getFlagsSpecification}from"./chunk-MI7W4QMV.js";import"./chunk-4TTF5E5U.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-N7Q2IESO.js";import"./chunk-WPQN5UKR.js";import"./chunk-2VBFQZ72.js";import{isAPIError}from"./chunk-YIIPBH2D.js";import"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-75IAMKGV.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import{require_source}from"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import{__toESM}from"./chunk-BZENIQ7N.js";var import_ms=__toESM(require_ms(),1),import_chalk=__toESM(require_source(),1);function handleApiError(err,jsonOutput,client){let message=err.status===401||err.status===403?"You do not have access to alerts in this scope. Pass --token <TOKEN> and --scope <team-slug> with Alerts read access.":err.status>=500?`The alerts endpoint failed on the server (${err.status}). Re-run with --debug and share the x-vercel-id from the failed request.`:err.serverMessage||`API error (${err.status}).`,reason=err.status===401?"not_authorized":err.status===403?"forbidden":err.status===404?AGENT_REASON.NOT_FOUND:err.status===429?"rate_limited":AGENT_REASON.API_ERROR;return outputAgentError(client,{status:"error",reason,message,...err.status===401||err.status===403?{hint:"Confirm team scope; use --scope <team-slug> if alerts belong to another team.",next:[{command:buildCommandWithGlobalFlags(client.argv,"whoami"),when:"See current user and team"},{command:buildCommandWithGlobalFlags(client.argv,"alerts"),when:"Retry listing alerts after fixing scope or permissions"}]}:{}},1),outputError(client,jsonOutput,err.code||"API_ERROR",message)}function getDefaultRange(){let to=new Date;return{from:new Date(to.getTime()-24*60*60*1e3).toISOString(),to:to.toISOString()}}function getStartedAt(group){return formatDate(getGroupStartedAt(group))}function getGroupResolvedAt(group){let resolvedTimes=(group.alerts??[]).map(alert=>normalizeTimestamp(alert.recordedResolvedAt??alert.resolvedAt)).filter(time=>time!==void 0);if(resolvedTimes.length>0)return Math.max(...resolvedTimes)}function getStatus(group){let normalizedStatus=(group.status||"").toLowerCase();if(normalizedStatus==="active")return"active";if(normalizedStatus==="resolved"){let startedAt=getGroupStartedAt(group),resolvedAt=getGroupResolvedAt(group);return startedAt&&resolvedAt&&resolvedAt>=startedAt?`resolved after ${(0,import_ms.default)(resolvedAt-startedAt)}`:"resolved"}return group.status||"-"}function getResolvedAt(group){return(group.status||"").toLowerCase()==="active"?"active":formatDate(getGroupResolvedAt(group))}function getAlertsCount(group){return String(group.alerts?.length??0)}function validationFailureForAgents(client,result,jsonOutput){return shouldEmitNonInteractiveCommandError(client)&&outputAgentError(client,{status:"error",reason:AGENT_REASON.INVALID_ARGUMENTS,message:result.message,next:[{command:buildCommandWithGlobalFlags(client.argv,"alerts --help"),when:"See valid `alerts` list flags and examples"}]},2),handleValidationError(result,jsonOutput,client)}function printGroups(groups){if(groups.length===0){output_manager_default.log("No alerts found.");return}let rows=[["Title","Group id","Started At","Type","Status","Alerts"].map(h=>import_chalk.default.cyan(h)),...groups.map(group=>{let row=[import_chalk.default.bold(truncateEnd(getGroupTitle(group),80)),import_chalk.default.dim(group.id||"-"),getStartedAt(group),getGroupType(group)];return row.push(getStatus(group),getAlertsCount(group)),row})];output_manager_default.print(`
7
+ import{getGroupStartedAt,getGroupTitle,getGroupType,normalizeTimestamp,renderAlertTable}from"./chunk-RRWEIG6B.js";import{resolveAlertsScope}from"./chunk-WGOQGKS5.js";import{formatDate}from"./chunk-YTDK6AHS.js";import"./chunk-GZNDA6SV.js";import{handleValidationError,normalizeRepeatableStringFilters,outputError,validateAllProjectMutualExclusivity,validateOptionalIntegerRange,validateTimeBound,validateTimeOrder}from"./chunk-ZQKDO5PL.js";import"./chunk-GHAY4PSD.js";import{truncateEnd}from"./chunk-ID663OJ7.js";import{alertsCommand}from"./chunk-GVVIFYQE.js";import"./chunk-W3TGCMRW.js";import"./chunk-773GOZIR.js";import{printError}from"./chunk-QAETJRKX.js";import"./chunk-67GZ5REA.js";import"./chunk-BS32OUOC.js";import{validateJsonOutput}from"./chunk-D4MW3RDW.js";import"./chunk-IIC2A4YN.js";import"./chunk-MV4WHUIC.js";import"./chunk-VKXEOL4K.js";import{require_ms}from"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import{parseArguments}from"./chunk-ELDHGU6N.js";import{AGENT_REASON,buildCommandWithGlobalFlags,outputAgentError,shouldEmitNonInteractiveCommandError}from"./chunk-BAT6SDBJ.js";import{getFlagsSpecification}from"./chunk-MI7W4QMV.js";import"./chunk-U3NQZJQ4.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-IJCCFLCQ.js";import"./chunk-ZQME5XUJ.js";import"./chunk-2VBFQZ72.js";import{isAPIError}from"./chunk-XSDAUM4F.js";import"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-M774HRX5.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import{require_source}from"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import{__toESM}from"./chunk-BZENIQ7N.js";var import_ms=__toESM(require_ms(),1),import_chalk=__toESM(require_source(),1);function handleApiError(err,jsonOutput,client){let message=err.status===401||err.status===403?"You do not have access to alerts in this scope. Pass --token <TOKEN> and --scope <team-slug> with Alerts read access.":err.status>=500?`The alerts endpoint failed on the server (${err.status}). Re-run with --debug and share the x-vercel-id from the failed request.`:err.serverMessage||`API error (${err.status}).`,reason=err.status===401?"not_authorized":err.status===403?"forbidden":err.status===404?AGENT_REASON.NOT_FOUND:err.status===429?"rate_limited":AGENT_REASON.API_ERROR;return outputAgentError(client,{status:"error",reason,message,...err.status===401||err.status===403?{hint:"Confirm team scope; use --scope <team-slug> if alerts belong to another team.",next:[{command:buildCommandWithGlobalFlags(client.argv,"whoami"),when:"See current user and team"},{command:buildCommandWithGlobalFlags(client.argv,"alerts"),when:"Retry listing alerts after fixing scope or permissions"}]}:{}},1),outputError(client,jsonOutput,err.code||"API_ERROR",message)}function getDefaultRange(){let to=new Date;return{from:new Date(to.getTime()-24*60*60*1e3).toISOString(),to:to.toISOString()}}function getStartedAt(group){return formatDate(getGroupStartedAt(group))}function getGroupResolvedAt(group){let resolvedTimes=(group.alerts??[]).map(alert=>normalizeTimestamp(alert.recordedResolvedAt??alert.resolvedAt)).filter(time=>time!==void 0);if(resolvedTimes.length>0)return Math.max(...resolvedTimes)}function getStatus(group){let normalizedStatus=(group.status||"").toLowerCase();if(normalizedStatus==="active")return"active";if(normalizedStatus==="resolved"){let startedAt=getGroupStartedAt(group),resolvedAt=getGroupResolvedAt(group);return startedAt&&resolvedAt&&resolvedAt>=startedAt?`resolved after ${(0,import_ms.default)(resolvedAt-startedAt)}`:"resolved"}return group.status||"-"}function getResolvedAt(group){return(group.status||"").toLowerCase()==="active"?"active":formatDate(getGroupResolvedAt(group))}function getAlertsCount(group){return String(group.alerts?.length??0)}function validationFailureForAgents(client,result,jsonOutput){return shouldEmitNonInteractiveCommandError(client)&&outputAgentError(client,{status:"error",reason:AGENT_REASON.INVALID_ARGUMENTS,message:result.message,next:[{command:buildCommandWithGlobalFlags(client.argv,"alerts --help"),when:"See valid `alerts` list flags and examples"}]},2),handleValidationError(result,jsonOutput,client)}function printGroups(groups){if(groups.length===0){output_manager_default.log("No alerts found.");return}let rows=[["Title","Group id","Started At","Type","Status","Alerts"].map(h=>import_chalk.default.cyan(h)),...groups.map(group=>{let row=[import_chalk.default.bold(truncateEnd(getGroupTitle(group),80)),import_chalk.default.dim(group.id||"-"),getStartedAt(group),getGroupType(group)];return row.push(getStatus(group),getAlertsCount(group)),row})];output_manager_default.print(`
8
8
  ${renderAlertTable(rows,3)}
9
9
  `)}function printAiSections(groups){if(groups.length===0){output_manager_default.log("No alerts found.");return}let rendered=groups.map(group=>{let title=getGroupTitle(group),summary=group.ai?.currentSummary||"N/A",findings=group.ai?.keyFindings?.filter(Boolean)??[],findingsOutput=findings.length>0?findings.map(finding=>` - ${finding}`).join(`
10
10
  `):" - N/A";return[import_chalk.default.bold(title),` ${import_chalk.default.cyan("Resolved At:")} ${getResolvedAt(group)}`,` ${import_chalk.default.cyan("Summary:")} ${summary}`,` ${import_chalk.default.cyan("Key Findings:")}`,findingsOutput].join(`
@@ -4,4 +4,4 @@ import { dirname as __dirname_ } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
- import{login}from"./chunk-4IIRQJUW.js";import"./chunk-3GSGG4YR.js";import"./chunk-PVASGBEF.js";import"./chunk-B4YYOSPY.js";import"./chunk-DYQXJCHO.js";import"./chunk-4GL254L4.js";import"./chunk-773GOZIR.js";import"./chunk-3EU7MN5M.js";import"./chunk-67GZ5REA.js";import"./chunk-BS32OUOC.js";import"./chunk-JNJOUMGF.js";import"./chunk-VKXEOL4K.js";import"./chunk-NWGBDBZI.js";import"./chunk-4SAVH3H7.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import"./chunk-CRQDQNQZ.js";import"./chunk-RIDPB64C.js";import"./chunk-MI7W4QMV.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-WPQN5UKR.js";import"./chunk-2VBFQZ72.js";import"./chunk-YIIPBH2D.js";import"./chunk-JESNVRVR.js";import"./chunk-75IAMKGV.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import"./chunk-BZENIQ7N.js";export{login as default};
7
+ import{login}from"./chunk-AA434KXY.js";import"./chunk-E6R2QOOR.js";import"./chunk-PVASGBEF.js";import"./chunk-B4YYOSPY.js";import"./chunk-EVQJ7SCV.js";import"./chunk-H3KYG32S.js";import"./chunk-773GOZIR.js";import"./chunk-QAETJRKX.js";import"./chunk-67GZ5REA.js";import"./chunk-BS32OUOC.js";import"./chunk-KUGXOLL7.js";import"./chunk-VKXEOL4K.js";import"./chunk-NWGBDBZI.js";import"./chunk-4SAVH3H7.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import"./chunk-ELDHGU6N.js";import"./chunk-BAT6SDBJ.js";import"./chunk-MI7W4QMV.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-ZQME5XUJ.js";import"./chunk-2VBFQZ72.js";import"./chunk-XSDAUM4F.js";import"./chunk-JESNVRVR.js";import"./chunk-M774HRX5.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import"./chunk-BZENIQ7N.js";export{login as default};
@@ -4,6 +4,6 @@ import { dirname as __dirname_ } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
- import{AUTH_FAILURE,CREDENTIAL_STORE_CONFLICT,VCR_ENGINES,VCR_LOGIN_USERNAME,emitVcrArgParseError,engineLogin,engineLogout,handleVcrApiError,isEngineInstalled,resolveRegistry,resolveVcrScope,stderrTail,validateVcrChoice,validateVcrJsonOutput}from"./chunk-O7JMHULU.js";import{outputError}from"./chunk-5UEBA6N6.js";import"./chunk-GSOPJJO5.js";import{loginSubcommand}from"./chunk-2FHICLHJ.js";import"./chunk-2UMWTCY7.js";import"./chunk-Q5ZGA2RO.js";import"./chunk-UGMTKOTN.js";import"./chunk-FBYA6LLM.js";import"./chunk-SCV7XEEO.js";import{printError}from"./chunk-3EU7MN5M.js";import"./chunk-D4MW3RDW.js";import"./chunk-WZ7YJDKT.js";import"./chunk-PAN6TUTQ.js";import"./chunk-VKXEOL4K.js";import"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import{parseArguments}from"./chunk-CRQDQNQZ.js";import{AGENT_REASON,buildCommandWithGlobalFlags,outputAgentError}from"./chunk-RIDPB64C.js";import{getFlagsSpecification}from"./chunk-MI7W4QMV.js";import"./chunk-4TTF5E5U.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-N7Q2IESO.js";import"./chunk-WPQN5UKR.js";import"./chunk-2VBFQZ72.js";import{isAPIError}from"./chunk-YIIPBH2D.js";import"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-75IAMKGV.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import"./chunk-BZENIQ7N.js";var LOGIN_VALID_HOURS=12;async function login(client,argv,telemetry){let parsedArgs;try{parsedArgs=parseArguments(argv,getFlagsSpecification(loginSubcommand.options))}catch(err){return emitVcrArgParseError(client,err,"vcr login <engine> --project <name-or-id>"),printError(err),2}let fr=validateVcrJsonOutput(client,parsedArgs.flags);if(typeof fr=="number")return fr;let engineArg=parsedArgs.args[0],project=parsedArgs.flags["--project"];if(telemetry.trackCliArgumentEngine(engineArg),telemetry.trackCliOptionProject(project),telemetry.trackCliOptionFormat(parsedArgs.flags["--format"]),!engineArg){let message=`Missing engine. Choose one of: ${VCR_ENGINES.join(", ")}.`;return outputAgentError(client,{status:"error",reason:AGENT_REASON.MISSING_ARGUMENTS,message,next:[{command:buildCommandWithGlobalFlags(client.argv,"vcr login docker"),when:"Replace docker with the container tool you use"}]},2),outputError(client,fr.jsonOutput,"MISSING_ARGUMENTS",message)}let choiceError=validateVcrChoice(client,"engine",engineArg,VCR_ENGINES,fr.jsonOutput);if(typeof choiceError=="number")return choiceError;let engine=engineArg;if(!isEngineInstalled(engine)){let message=`\`${engine}\` is not installed or not on your PATH. Install it and try again.`;return outputAgentError(client,{status:"error",reason:"engine_not_found",message},1),outputError(client,fr.jsonOutput,"ENGINE_NOT_FOUND",message)}let scope=await resolveVcrScope(client,{project,jsonOutput:fr.jsonOutput});if(typeof scope=="number")return scope;let registry=resolveRegistry();output_manager_default.spinner(`Authenticating ${engine} with ${registry}...`);try{let{token}=await client.fetch(`/projects/${scope.projectId}/token`,{method:"POST",accountId:scope.teamId,body:JSON.stringify({source:"vercel-cli"}),headers:{"Content-Type":"application/json"}}),result=await engineLogin(engine,registry,token);if(result.exitCode!==0&&CREDENTIAL_STORE_CONFLICT.test(result.stderr)&&(output_manager_default.debug(`Stale ${registry} credential in the ${engine} credential store; running \`${engine} logout\` and retrying`),await engineLogout(engine,registry),result=await engineLogin(engine,registry,token)),result.exitCode!==0){let message=AUTH_FAILURE.test(result.stderr)?`Authentication to ${registry} as "${VCR_LOGIN_USERNAME}" was rejected. The OIDC token may be expired or lack access to this project.`:`\`${engine} login\` failed (exit code ${result.exitCode}).${stderrTail(result.stderr)?`
7
+ import{AUTH_FAILURE,CREDENTIAL_STORE_CONFLICT,VCR_ENGINES,VCR_LOGIN_USERNAME,emitVcrArgParseError,engineLogin,engineLogout,handleVcrApiError,isEngineInstalled,resolveRegistry,resolveVcrScope,stderrTail,validateVcrChoice,validateVcrJsonOutput}from"./chunk-IYCHAIFZ.js";import{outputError}from"./chunk-ZQKDO5PL.js";import"./chunk-KKCBFBJK.js";import{loginSubcommand}from"./chunk-2FHICLHJ.js";import"./chunk-2UMWTCY7.js";import"./chunk-Q5ZGA2RO.js";import"./chunk-UGMTKOTN.js";import"./chunk-FBYA6LLM.js";import"./chunk-SCV7XEEO.js";import{printError}from"./chunk-QAETJRKX.js";import"./chunk-D4MW3RDW.js";import"./chunk-IIC2A4YN.js";import"./chunk-MV4WHUIC.js";import"./chunk-VKXEOL4K.js";import"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import{parseArguments}from"./chunk-ELDHGU6N.js";import{AGENT_REASON,buildCommandWithGlobalFlags,outputAgentError}from"./chunk-BAT6SDBJ.js";import{getFlagsSpecification}from"./chunk-MI7W4QMV.js";import"./chunk-U3NQZJQ4.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-IJCCFLCQ.js";import"./chunk-ZQME5XUJ.js";import"./chunk-2VBFQZ72.js";import{isAPIError}from"./chunk-XSDAUM4F.js";import"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-M774HRX5.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import"./chunk-BZENIQ7N.js";var LOGIN_VALID_HOURS=12;async function login(client,argv,telemetry){let parsedArgs;try{parsedArgs=parseArguments(argv,getFlagsSpecification(loginSubcommand.options))}catch(err){return emitVcrArgParseError(client,err,"vcr login <engine> --project <name-or-id>"),printError(err),2}let fr=validateVcrJsonOutput(client,parsedArgs.flags);if(typeof fr=="number")return fr;let engineArg=parsedArgs.args[0],project=parsedArgs.flags["--project"];if(telemetry.trackCliArgumentEngine(engineArg),telemetry.trackCliOptionProject(project),telemetry.trackCliOptionFormat(parsedArgs.flags["--format"]),!engineArg){let message=`Missing engine. Choose one of: ${VCR_ENGINES.join(", ")}.`;return outputAgentError(client,{status:"error",reason:AGENT_REASON.MISSING_ARGUMENTS,message,next:[{command:buildCommandWithGlobalFlags(client.argv,"vcr login docker"),when:"Replace docker with the container tool you use"}]},2),outputError(client,fr.jsonOutput,"MISSING_ARGUMENTS",message)}let choiceError=validateVcrChoice(client,"engine",engineArg,VCR_ENGINES,fr.jsonOutput);if(typeof choiceError=="number")return choiceError;let engine=engineArg;if(!isEngineInstalled(engine)){let message=`\`${engine}\` is not installed or not on your PATH. Install it and try again.`;return outputAgentError(client,{status:"error",reason:"engine_not_found",message},1),outputError(client,fr.jsonOutput,"ENGINE_NOT_FOUND",message)}let scope=await resolveVcrScope(client,{project,jsonOutput:fr.jsonOutput});if(typeof scope=="number")return scope;let registry=resolveRegistry();output_manager_default.spinner(`Authenticating ${engine} with ${registry}...`);try{let{token}=await client.fetch(`/projects/${scope.projectId}/token`,{method:"POST",accountId:scope.teamId,body:JSON.stringify({source:"vercel-cli"}),headers:{"Content-Type":"application/json"}}),result=await engineLogin(engine,registry,token);if(result.exitCode!==0&&CREDENTIAL_STORE_CONFLICT.test(result.stderr)&&(output_manager_default.debug(`Stale ${registry} credential in the ${engine} credential store; running \`${engine} logout\` and retrying`),await engineLogout(engine,registry),result=await engineLogin(engine,registry,token)),result.exitCode!==0){let message=AUTH_FAILURE.test(result.stderr)?`Authentication to ${registry} as "${VCR_LOGIN_USERNAME}" was rejected. The OIDC token may be expired or lack access to this project.`:`\`${engine} login\` failed (exit code ${result.exitCode}).${stderrTail(result.stderr)?`
8
8
  ${stderrTail(result.stderr)}`:""}`;return outputAgentError(client,{status:"error",reason:AUTH_FAILURE.test(result.stderr)?"not_authorized":"command_failed",message,next:[{command:buildCommandWithGlobalFlags(client.argv,"whoami"),when:"See current user and team"}]},1),outputError(client,fr.jsonOutput,AUTH_FAILURE.test(result.stderr)?"NOT_AUTHORIZED":"COMMAND_FAILED",message)}return fr.jsonOutput?client.stdout.write(`${JSON.stringify({status:"success",engine,registry,username:VCR_LOGIN_USERNAME,validForHours:LOGIN_VALID_HOURS},null,2)}
9
9
  `):(output_manager_default.success(`Logged in to ${registry} as ${VCR_LOGIN_USERNAME} (${engine}).`),output_manager_default.log(`Credentials are valid for ~${LOGIN_VALID_HOURS} hours. Re-run \`${buildCommandWithGlobalFlags(client.argv,`vcr login ${engine}`)}\` to refresh.`)),0}catch(err){if(isAPIError(err))return handleVcrApiError(client,err,fr.jsonOutput);throw err}finally{output_manager_default.stopSpinner()}}export{login as default};
@@ -4,4 +4,4 @@ import { dirname as __dirname_ } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
- import{collectBuildLogs,displayBuildLogs,displayBuildLogsUntilFinalError,parseLogLines}from"./chunk-THZR6O2M.js";import"./chunk-AKM22FBX.js";import"./chunk-O4FDRZ22.js";import"./chunk-J2LAZELI.js";import"./chunk-E6UKNYFF.js";import"./chunk-BS32OUOC.js";import"./chunk-WZ7YJDKT.js";import"./chunk-PAN6TUTQ.js";import"./chunk-VKXEOL4K.js";import"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import"./chunk-CRQDQNQZ.js";import"./chunk-RIDPB64C.js";import"./chunk-MI7W4QMV.js";import"./chunk-4TTF5E5U.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-N7Q2IESO.js";import"./chunk-WPQN5UKR.js";import"./chunk-2VBFQZ72.js";import"./chunk-YIIPBH2D.js";import"./chunk-JESNVRVR.js";import"./chunk-75IAMKGV.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import"./chunk-BZENIQ7N.js";export{collectBuildLogs,displayBuildLogs,displayBuildLogsUntilFinalError,parseLogLines};
7
+ import{collectBuildLogs,displayBuildLogs,displayBuildLogsUntilFinalError,parseLogLines}from"./chunk-TDDZGUU6.js";import"./chunk-AQUDXMFH.js";import"./chunk-O4FDRZ22.js";import"./chunk-IVIZLWZQ.js";import"./chunk-HVUJNVPS.js";import"./chunk-BS32OUOC.js";import"./chunk-IIC2A4YN.js";import"./chunk-MV4WHUIC.js";import"./chunk-VKXEOL4K.js";import"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import"./chunk-ELDHGU6N.js";import"./chunk-BAT6SDBJ.js";import"./chunk-MI7W4QMV.js";import"./chunk-U3NQZJQ4.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-IJCCFLCQ.js";import"./chunk-ZQME5XUJ.js";import"./chunk-2VBFQZ72.js";import"./chunk-XSDAUM4F.js";import"./chunk-JESNVRVR.js";import"./chunk-M774HRX5.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import"./chunk-BZENIQ7N.js";export{collectBuildLogs,displayBuildLogs,displayBuildLogsUntilFinalError,parseLogLines};
@@ -4,5 +4,5 @@ import { dirname as __dirname_ } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
- import{printRules}from"./chunk-LLPIBKFX.js";import"./chunk-RRWEIG6B.js";import{emitRulesArgParseError,handleRulesApiError,outputRulesError,parseRulesFlagsAndScope,rulesCollectionPath}from"./chunk-N5D4455C.js";import"./chunk-QL3IYPBV.js";import"./chunk-YTDK6AHS.js";import"./chunk-GZNDA6SV.js";import{normalizeRepeatableStringFilters}from"./chunk-5UEBA6N6.js";import"./chunk-GHAY4PSD.js";import"./chunk-KLYIX4HK.js";import"./chunk-O4FDRZ22.js";import"./chunk-T3GQAMBJ.js";import"./chunk-P2O5DOYE.js";import"./chunk-ID663OJ7.js";import{rulesLsSubcommand}from"./chunk-W3TGCMRW.js";import"./chunk-773GOZIR.js";import{printError}from"./chunk-3EU7MN5M.js";import"./chunk-67GZ5REA.js";import"./chunk-BS32OUOC.js";import{validateJsonOutput}from"./chunk-D4MW3RDW.js";import"./chunk-WZ7YJDKT.js";import"./chunk-PAN6TUTQ.js";import"./chunk-VKXEOL4K.js";import"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import{parseArguments}from"./chunk-CRQDQNQZ.js";import"./chunk-RIDPB64C.js";import{getFlagsSpecification}from"./chunk-MI7W4QMV.js";import"./chunk-4TTF5E5U.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-N7Q2IESO.js";import"./chunk-WPQN5UKR.js";import"./chunk-2VBFQZ72.js";import{isAPIError}from"./chunk-YIIPBH2D.js";import"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-75IAMKGV.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import"./chunk-BZENIQ7N.js";var BUILT_IN_ALERT_TYPES=["usage_anomaly","error_anomaly","botId_anomaly","firewallSystemRule_anomaly","firewallCustomRule_anomaly","testAlert_anomaly","buildTime_anomaly"];var BUILT_IN_ALERT_TYPE_SET=new Set(BUILT_IN_ALERT_TYPES);function parseRuleTypeFilter(client,values,jsonOutput){let types=normalizeRepeatableStringFilters(values);if(types.length===0)return;let invalidType=types.find(type=>type!=="built-in"&&type!=="custom"&&type!=="custom_alert"&&!BUILT_IN_ALERT_TYPE_SET.has(type));if(invalidType)return outputRulesError(client,jsonOutput,"INVALID_RULE_TYPE",`Invalid rule type "${invalidType}". Expected a supported rule type or built-in trigger type.`);let includeCustom=types.includes("custom")||types.includes("custom_alert"),includeAllBuiltIn=types.includes("built-in"),builtInAlertTypes=new Set(types.filter(type=>BUILT_IN_ALERT_TYPE_SET.has(type))),includeBuiltIn=includeAllBuiltIn||builtInAlertTypes.size>0;return{apiType:includeCustom===includeBuiltIn?void 0:includeCustom?"custom":"built-in",matches(rule){return rule.type==="custom"?includeCustom:includeAllBuiltIn?!0:includeBuiltIn?rule.triggers.mode==="all"?!0:rule.triggers.items.some(trigger=>builtInAlertTypes.has(trigger.type)):!1}}}async function ls(client,argv){let parsedArgs;try{parsedArgs=parseArguments(argv,getFlagsSpecification(rulesLsSubcommand.options))}catch(error){return emitRulesArgParseError(client,error,"alerts rules ls --project <name-or-id>"),printError(error),2}let flags=parsedArgs.flags,format=validateJsonOutput(flags);if(!format.valid)return outputRulesError(client,!1,"INVALID_ARGUMENTS",format.error);let typeFilter=parseRuleTypeFilter(client,flags["--type"],format.jsonOutput);if(typeof typeFilter=="number")return typeFilter;let scope=await parseRulesFlagsAndScope(client,{"--project":flags["--project"],"--all":flags["--all"]},format.jsonOutput,"alerts rules ls");if(typeof scope=="number")return scope;output_manager_default.spinner("Fetching alert rules\u2026");try{let rules=[],cursor;do{let page=await client.fetch(rulesCollectionPath(scope.teamId,{limit:100,cursor,projectId:scope.projectId,type:typeFilter?.apiType}));rules.push(...page.rules),cursor=page.pagination.next??void 0}while(cursor);let filteredRules=typeFilter?rules.filter(typeFilter.matches):rules;return format.jsonOutput?client.stdout.write(`${JSON.stringify({rules:filteredRules},null,2)}
7
+ import{printRules}from"./chunk-QCWV7FML.js";import"./chunk-RRWEIG6B.js";import{emitRulesArgParseError,handleRulesApiError,outputRulesError,parseRulesFlagsAndScope,rulesCollectionPath}from"./chunk-AALI66ML.js";import"./chunk-WGOQGKS5.js";import"./chunk-YTDK6AHS.js";import"./chunk-GZNDA6SV.js";import{normalizeRepeatableStringFilters}from"./chunk-ZQKDO5PL.js";import"./chunk-GHAY4PSD.js";import"./chunk-6HOVHRWJ.js";import"./chunk-O4FDRZ22.js";import"./chunk-T3GQAMBJ.js";import"./chunk-P2O5DOYE.js";import"./chunk-ID663OJ7.js";import{rulesLsSubcommand}from"./chunk-W3TGCMRW.js";import"./chunk-773GOZIR.js";import{printError}from"./chunk-QAETJRKX.js";import"./chunk-67GZ5REA.js";import"./chunk-BS32OUOC.js";import{validateJsonOutput}from"./chunk-D4MW3RDW.js";import"./chunk-IIC2A4YN.js";import"./chunk-MV4WHUIC.js";import"./chunk-VKXEOL4K.js";import"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import{parseArguments}from"./chunk-ELDHGU6N.js";import"./chunk-BAT6SDBJ.js";import{getFlagsSpecification}from"./chunk-MI7W4QMV.js";import"./chunk-U3NQZJQ4.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-IJCCFLCQ.js";import"./chunk-ZQME5XUJ.js";import"./chunk-2VBFQZ72.js";import{isAPIError}from"./chunk-XSDAUM4F.js";import"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-M774HRX5.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import"./chunk-BZENIQ7N.js";var BUILT_IN_ALERT_TYPES=["usage_anomaly","error_anomaly","botId_anomaly","firewallSystemRule_anomaly","firewallCustomRule_anomaly","testAlert_anomaly","buildTime_anomaly"];var BUILT_IN_ALERT_TYPE_SET=new Set(BUILT_IN_ALERT_TYPES);function parseRuleTypeFilter(client,values,jsonOutput){let types=normalizeRepeatableStringFilters(values);if(types.length===0)return;let invalidType=types.find(type=>type!=="built-in"&&type!=="custom"&&type!=="custom_alert"&&!BUILT_IN_ALERT_TYPE_SET.has(type));if(invalidType)return outputRulesError(client,jsonOutput,"INVALID_RULE_TYPE",`Invalid rule type "${invalidType}". Expected a supported rule type or built-in trigger type.`);let includeCustom=types.includes("custom")||types.includes("custom_alert"),includeAllBuiltIn=types.includes("built-in"),builtInAlertTypes=new Set(types.filter(type=>BUILT_IN_ALERT_TYPE_SET.has(type))),includeBuiltIn=includeAllBuiltIn||builtInAlertTypes.size>0;return{apiType:includeCustom===includeBuiltIn?void 0:includeCustom?"custom":"built-in",matches(rule){return rule.type==="custom"?includeCustom:includeAllBuiltIn?!0:includeBuiltIn?rule.triggers.mode==="all"?!0:rule.triggers.items.some(trigger=>builtInAlertTypes.has(trigger.type)):!1}}}async function ls(client,argv){let parsedArgs;try{parsedArgs=parseArguments(argv,getFlagsSpecification(rulesLsSubcommand.options))}catch(error){return emitRulesArgParseError(client,error,"alerts rules ls --project <name-or-id>"),printError(error),2}let flags=parsedArgs.flags,format=validateJsonOutput(flags);if(!format.valid)return outputRulesError(client,!1,"INVALID_ARGUMENTS",format.error);let typeFilter=parseRuleTypeFilter(client,flags["--type"],format.jsonOutput);if(typeof typeFilter=="number")return typeFilter;let scope=await parseRulesFlagsAndScope(client,{"--project":flags["--project"],"--all":flags["--all"]},format.jsonOutput,"alerts rules ls");if(typeof scope=="number")return scope;output_manager_default.spinner("Fetching alert rules\u2026");try{let rules=[],cursor;do{let page=await client.fetch(rulesCollectionPath(scope.teamId,{limit:100,cursor,projectId:scope.projectId,type:typeFilter?.apiType}));rules.push(...page.rules),cursor=page.pagination.next??void 0}while(cursor);let filteredRules=typeFilter?rules.filter(typeFilter.matches):rules;return format.jsonOutput?client.stdout.write(`${JSON.stringify({rules:filteredRules},null,2)}
8
8
  `):filteredRules.length===0?output_manager_default.log("No alert rules found for this scope"):printRules(filteredRules),0}catch(error){if(isAPIError(error))return handleRulesApiError(client,error,format.jsonOutput);throw error}finally{output_manager_default.stopSpinner()}}export{ls as default};
@@ -4,7 +4,7 @@ import { dirname as __dirname_ } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
- import{repositoryImagesPath}from"./chunk-DFVNL5ML.js";import{emitVcrArgParseError,formatBytes,formatDigest,formatImageStatus,formatRelativeTime,handleVcrApiError,requireVcrRepository,resolveVcrScope,validateVcrJsonOutput}from"./chunk-O7JMHULU.js";import{outputError,validateOptionalIntegerRange}from"./chunk-5UEBA6N6.js";import"./chunk-GSOPJJO5.js";import{imageLsSubcommand}from"./chunk-2UMWTCY7.js";import"./chunk-FBYA6LLM.js";import"./chunk-SCV7XEEO.js";import{table}from"./chunk-773GOZIR.js";import{printError}from"./chunk-3EU7MN5M.js";import"./chunk-67GZ5REA.js";import"./chunk-BS32OUOC.js";import"./chunk-D4MW3RDW.js";import"./chunk-WZ7YJDKT.js";import"./chunk-PAN6TUTQ.js";import"./chunk-VKXEOL4K.js";import"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import{parseArguments}from"./chunk-CRQDQNQZ.js";import{AGENT_REASON,outputAgentError}from"./chunk-RIDPB64C.js";import{getFlagsSpecification}from"./chunk-MI7W4QMV.js";import"./chunk-4TTF5E5U.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-N7Q2IESO.js";import"./chunk-WPQN5UKR.js";import"./chunk-2VBFQZ72.js";import{isAPIError}from"./chunk-YIIPBH2D.js";import"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-75IAMKGV.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import{require_source}from"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import{__toESM}from"./chunk-BZENIQ7N.js";var import_chalk=__toESM(require_source(),1);function formatType(kind){return kind==="index"?"Index":"Image"}function printImages(list){if(list.images.length===0){output_manager_default.log("No images found.");return}let rows=[["Image ID","Digest","Tags","Type","Status","Arch","Size","Created"].map(h=>import_chalk.default.cyan(h)),...list.images.map(image=>[import_chalk.default.bold(image.id),import_chalk.default.dim(formatDigest(image.manifestDigest)),image.tags.length>0?image.tags.join(", "):import_chalk.default.dim("<none>"),formatType(image.kind),formatImageStatus(image.status),image.arch??"-",formatBytes(image.sizeInBytes),formatRelativeTime(image.createdAt)])],tableOutput=table(rows,{hsep:3}).split(`
7
+ import{repositoryImagesPath}from"./chunk-DFVNL5ML.js";import{emitVcrArgParseError,formatBytes,formatDigest,formatImageStatus,formatRelativeTime,handleVcrApiError,requireVcrRepository,resolveVcrScope,validateVcrJsonOutput}from"./chunk-IYCHAIFZ.js";import{outputError,validateOptionalIntegerRange}from"./chunk-ZQKDO5PL.js";import"./chunk-KKCBFBJK.js";import{imageLsSubcommand}from"./chunk-2UMWTCY7.js";import"./chunk-FBYA6LLM.js";import"./chunk-SCV7XEEO.js";import{table}from"./chunk-773GOZIR.js";import{printError}from"./chunk-QAETJRKX.js";import"./chunk-67GZ5REA.js";import"./chunk-BS32OUOC.js";import"./chunk-D4MW3RDW.js";import"./chunk-IIC2A4YN.js";import"./chunk-MV4WHUIC.js";import"./chunk-VKXEOL4K.js";import"./chunk-MXTC4ZAQ.js";import"./chunk-4SAVH3H7.js";import"./chunk-ZS2WS4AM.js";import"./chunk-AOWWC6WZ.js";import"./chunk-MY4MONOH.js";import{parseArguments}from"./chunk-ELDHGU6N.js";import{AGENT_REASON,outputAgentError}from"./chunk-BAT6SDBJ.js";import{getFlagsSpecification}from"./chunk-MI7W4QMV.js";import"./chunk-U3NQZJQ4.js";import"./chunk-ROPQIBWJ.js";import"./chunk-VKPZP4LC.js";import"./chunk-PPCFQQSU.js";import"./chunk-IJCCFLCQ.js";import"./chunk-ZQME5XUJ.js";import"./chunk-2VBFQZ72.js";import{isAPIError}from"./chunk-XSDAUM4F.js";import"./chunk-JESNVRVR.js";import{output_manager_default}from"./chunk-M774HRX5.js";import"./chunk-RM3ZDRYE.js";import"./chunk-OO572JUC.js";import"./chunk-D3AHZ5LI.js";import"./chunk-2GHZGOWT.js";import"./chunk-YHPPP3SF.js";import{require_source}from"./chunk-NB2WLB3J.js";import"./chunk-ISWW3DKF.js";import"./chunk-BRQUZ5NC.js";import{__toESM}from"./chunk-BZENIQ7N.js";var import_chalk=__toESM(require_source(),1);function formatType(kind){return kind==="index"?"Index":"Image"}function printImages(list){if(list.images.length===0){output_manager_default.log("No images found.");return}let rows=[["Image ID","Digest","Tags","Type","Status","Arch","Size","Created"].map(h=>import_chalk.default.cyan(h)),...list.images.map(image=>[import_chalk.default.bold(image.id),import_chalk.default.dim(formatDigest(image.manifestDigest)),image.tags.length>0?image.tags.join(", "):import_chalk.default.dim("<none>"),formatType(image.kind),formatImageStatus(image.status),image.arch??"-",formatBytes(image.sizeInBytes),formatRelativeTime(image.createdAt)])],tableOutput=table(rows,{hsep:3}).split(`
8
8
  `).map(line=>line.trimEnd()).join(`
9
9
  `).replace(/^/gm," ");output_manager_default.print(`
10
10
  ${tableOutput}