@vercel/cli-support 65.10.0-snapshot-c80a43d75dc7 → 65.10.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (247) hide show
  1. package/dist/chunks/{add-RFPJCD35.js → add-4MTUAI2X.js} +1 -1
  2. package/dist/chunks/{add-A3SN7KWS.js → add-JYLWBVVQ.js} +1 -1
  3. package/dist/chunks/{add-TOKTANDW.js → add-T5ERJ62Z.js} +1 -1
  4. package/dist/chunks/{build-25I6XOV7.js → build-OGWTTFLG.js} +1 -1
  5. package/dist/chunks/{chunk-SHY7P3C6.js → chunk-36XHIIUT.js} +1 -1
  6. package/dist/chunks/{chunk-3AX7ZZJ7.js → chunk-3PKL2PTF.js} +1 -1
  7. package/dist/chunks/{chunk-2HLYY3KF.js → chunk-3QFBVAHL.js} +1 -1
  8. package/dist/chunks/chunk-3QYXC4PH.js +11 -0
  9. package/dist/chunks/{chunk-BT5C6MCY.js → chunk-42J2KCDF.js} +1 -1
  10. package/dist/chunks/{chunk-NLKM5LR5.js → chunk-4E6BGQWR.js} +1 -1
  11. package/dist/chunks/{chunk-FAVZ6WVS.js → chunk-4U6ACPA4.js} +1 -1
  12. package/dist/chunks/{chunk-NAEY6HG5.js → chunk-4WXVKR43.js} +1 -1
  13. package/dist/chunks/{chunk-MKYFAYCD.js → chunk-52X4YVSG.js} +1 -1
  14. package/dist/chunks/{chunk-3WYSEF57.js → chunk-5IZ33FNL.js} +1 -1
  15. package/dist/chunks/{chunk-GPISCZ2P.js → chunk-5MPZSRYG.js} +1 -1
  16. package/dist/chunks/{chunk-AX3V7N44.js → chunk-5RSSGN2Q.js} +1 -1
  17. package/dist/chunks/{chunk-7ULLVH2G.js → chunk-5RYQH3XW.js} +1 -1
  18. package/dist/chunks/{chunk-KNAOHPOI.js → chunk-6NUH6ZPE.js} +6 -6
  19. package/dist/chunks/{chunk-EJ34DLV4.js → chunk-6RMW63GB.js} +1 -1
  20. package/dist/chunks/{chunk-BB5UMZMF.js → chunk-6UMVJ7RL.js} +1 -1
  21. package/dist/chunks/{chunk-HR462OEG.js → chunk-6YAYCEDT.js} +2 -2
  22. package/dist/chunks/{chunk-VYRMHE34.js → chunk-75DUL7VI.js} +1 -1
  23. package/dist/chunks/{chunk-TNNEKGGF.js → chunk-7LSH3MEB.js} +1 -1
  24. package/dist/chunks/{chunk-LQAQD5LG.js → chunk-7TR6H6NE.js} +3 -3
  25. package/dist/chunks/chunk-7VGBGUX7.js +7 -0
  26. package/dist/chunks/chunk-A3C67PNC.js +7 -0
  27. package/dist/chunks/{chunk-CKTLP5GX.js → chunk-AMPJ6RWT.js} +1 -1
  28. package/dist/chunks/{chunk-IZ4GFKGR.js → chunk-AO6AMYBF.js} +1 -1
  29. package/dist/chunks/chunk-AUIV7YJO.js +11 -0
  30. package/dist/chunks/chunk-AY523IYR.js +7 -0
  31. package/dist/chunks/{chunk-DBPN2VGJ.js → chunk-B4XGTAFO.js} +1 -1
  32. package/dist/chunks/{chunk-DRLGZXAL.js → chunk-BIRSJSAO.js} +1 -1
  33. package/dist/chunks/{chunk-WHUZRBYL.js → chunk-BK3TNLWO.js} +5 -5
  34. package/dist/chunks/chunk-BZIC36KP.js +7 -0
  35. package/dist/chunks/chunk-CBMWPDOL.js +8 -0
  36. package/dist/chunks/{chunk-G2BNLRPU.js → chunk-CHIYT3V4.js} +1 -1
  37. package/dist/chunks/chunk-CJ6XPDSS.js +11 -0
  38. package/dist/chunks/{chunk-T7HE23VK.js → chunk-CU3LNJZV.js} +1 -1
  39. package/dist/chunks/chunk-DIHB5BUY.js +8 -0
  40. package/dist/chunks/{chunk-TZ6MSTOI.js → chunk-DNLE3KPC.js} +1 -1
  41. package/dist/chunks/{chunk-R3D4M5RE.js → chunk-DQASZDQT.js} +1 -1
  42. package/dist/chunks/{chunk-TNUQME3L.js → chunk-DQNP7OQ5.js} +1 -1
  43. package/dist/chunks/{chunk-NGHFFOD2.js → chunk-DUCCC22H.js} +1 -1
  44. package/dist/chunks/{chunk-QCIIUQV3.js → chunk-E7WULWMX.js} +1 -1
  45. package/dist/chunks/{chunk-CZOD25BC.js → chunk-ECFLIVEE.js} +1 -1
  46. package/dist/chunks/{chunk-FI5O4WHD.js → chunk-ECGY67NB.js} +1 -1
  47. package/dist/chunks/{chunk-S5JBQCBA.js → chunk-EJN55YDV.js} +1 -1
  48. package/dist/chunks/{chunk-3PXE5BLH.js → chunk-ER7L7HYA.js} +1 -1
  49. package/dist/chunks/{chunk-7UFI6OYF.js → chunk-FOWAVQOH.js} +1 -1
  50. package/dist/chunks/{chunk-4JWAXIIN.js → chunk-FPREO4VS.js} +1 -1
  51. package/dist/chunks/{chunk-PXQAWH7E.js → chunk-FSJFWVUY.js} +1 -1
  52. package/dist/chunks/{chunk-Y57DK3ZN.js → chunk-FXHB7TTL.js} +1 -1
  53. package/dist/chunks/chunk-FYE7ILRR.js +7 -0
  54. package/dist/chunks/{chunk-V32V4SXB.js → chunk-GQ4CQDIL.js} +1 -1
  55. package/dist/chunks/{chunk-W634OFUG.js → chunk-GZLYNPNU.js} +6 -5
  56. package/dist/chunks/chunk-HTPNGLPH.js +7 -0
  57. package/dist/chunks/{chunk-W5GHMAHP.js → chunk-IHTWZEQW.js} +1 -1
  58. package/dist/chunks/{chunk-4LGAV2WN.js → chunk-IIGNDMLO.js} +1 -1
  59. package/dist/chunks/{chunk-F2LNGJOZ.js → chunk-JA6IGJ67.js} +1 -1
  60. package/dist/chunks/chunk-JBU72NEQ.js +7 -0
  61. package/dist/chunks/{chunk-U6XJYQJS.js → chunk-JLNF2QTR.js} +1 -1
  62. package/dist/chunks/{chunk-SODZSOOL.js → chunk-K5KVSA2A.js} +1 -1
  63. package/dist/chunks/{chunk-VD2FK6OF.js → chunk-K7ARJYAG.js} +1 -1
  64. package/dist/chunks/{chunk-5TI3ZXW3.js → chunk-KBVYN635.js} +1 -1
  65. package/dist/chunks/chunk-KKE55LTK.js +7 -0
  66. package/dist/chunks/{chunk-G5T6UQAL.js → chunk-KV3QXTRZ.js} +1 -1
  67. package/dist/chunks/{chunk-3F5BOG4A.js → chunk-KZLRIAAT.js} +1 -1
  68. package/dist/chunks/{chunk-L4QQTYUI.js → chunk-LE72YLCC.js} +2 -2
  69. package/dist/chunks/{chunk-HJ45TAM4.js → chunk-LIEWXPUC.js} +1 -1
  70. package/dist/chunks/{chunk-ANCWFEOM.js → chunk-M3R7F2N4.js} +1 -1
  71. package/dist/chunks/{chunk-MUNGQJGO.js → chunk-M3Z6NSC2.js} +1 -1
  72. package/dist/chunks/{chunk-VPUYTI5E.js → chunk-MBXLL2HF.js} +1 -1
  73. package/dist/chunks/{chunk-C24IKNZN.js → chunk-MKTZDEOJ.js} +1 -1
  74. package/dist/chunks/{chunk-VZGTL3YC.js → chunk-N5AN4JZL.js} +1 -1
  75. package/dist/chunks/{chunk-EJZNJN4N.js → chunk-N65H4JMJ.js} +1 -1
  76. package/dist/chunks/{chunk-LC4BSDDG.js → chunk-NAN5IE3B.js} +1 -1
  77. package/dist/chunks/{chunk-TD7AL545.js → chunk-NE6PKR2J.js} +1 -1
  78. package/dist/chunks/{chunk-2EFBGKRC.js → chunk-NLTZGQB2.js} +1 -1
  79. package/dist/chunks/{chunk-TL4ZLZ2Q.js → chunk-NMIZSQDN.js} +1 -1
  80. package/dist/chunks/{chunk-22UXDTCE.js → chunk-NZRBJB6T.js} +1 -1
  81. package/dist/chunks/chunk-OII46FDN.js +12 -0
  82. package/dist/chunks/{chunk-YOWMZJPA.js → chunk-OJWI6QJ3.js} +1 -1
  83. package/dist/chunks/{chunk-GKALP6QD.js → chunk-OYIDWI5Y.js} +1 -1
  84. package/dist/chunks/{chunk-QVMU7ZKQ.js → chunk-P24YBQ6H.js} +1 -1
  85. package/dist/chunks/{chunk-2JCJP43W.js → chunk-P6J22UJQ.js} +1 -1
  86. package/dist/chunks/{chunk-E7DYXF6G.js → chunk-PFZCGMJ7.js} +1 -1
  87. package/dist/chunks/{chunk-64UCX5JM.js → chunk-PKNEWN4W.js} +1 -1
  88. package/dist/chunks/{chunk-Q4GX2UTG.js → chunk-PKZK23PR.js} +1 -1
  89. package/dist/chunks/{chunk-56UH6NQ3.js → chunk-PL6IOUKW.js} +1 -1
  90. package/dist/chunks/{chunk-MBL7MWP5.js → chunk-Q2JNATRP.js} +1 -1
  91. package/dist/chunks/{chunk-KMPDQE4Q.js → chunk-Q46Q4Y4R.js} +1 -1
  92. package/dist/chunks/{chunk-NAJCRBQB.js → chunk-QXL353OB.js} +1 -1
  93. package/dist/chunks/{chunk-VR5ROBAO.js → chunk-RI6DJAFI.js} +1 -1
  94. package/dist/chunks/{chunk-2DHDKWYN.js → chunk-RIJ45N7C.js} +1 -1
  95. package/dist/chunks/{chunk-6AJWRPTY.js → chunk-RUBMVRT6.js} +1 -1
  96. package/dist/chunks/{chunk-6RUAAORO.js → chunk-S535FZTA.js} +1 -1
  97. package/dist/chunks/{chunk-5I7CC45F.js → chunk-SBEWZ65N.js} +1 -1
  98. package/dist/chunks/{chunk-GJCVOEC2.js → chunk-SDYCW5JM.js} +1 -1
  99. package/dist/chunks/chunk-SNGM6NSO.js +7 -0
  100. package/dist/chunks/chunk-SNNJRKD6.js +10 -0
  101. package/dist/chunks/{chunk-DX2OHM56.js → chunk-SR7BZA6N.js} +1 -1
  102. package/dist/chunks/{chunk-QXYCICNB.js → chunk-STKZTUGE.js} +1 -1
  103. package/dist/chunks/{chunk-XGOELSYA.js → chunk-SXYA7JSX.js} +1 -1
  104. package/dist/chunks/chunk-TILI4QBL.js +11 -0
  105. package/dist/chunks/{chunk-PMEYNJU2.js → chunk-TZE4CS4K.js} +1 -1
  106. package/dist/chunks/{chunk-BZV2S4H6.js → chunk-U2TQFAO3.js} +1 -1
  107. package/dist/chunks/chunk-U2ZNF6HN.js +8 -0
  108. package/dist/chunks/chunk-UIMJNASP.js +7 -0
  109. package/dist/chunks/{chunk-FQVIWQ6M.js → chunk-UQNBUXQA.js} +1 -1
  110. package/dist/chunks/{chunk-C4N4LKPM.js → chunk-US7YJ2RQ.js} +1 -1
  111. package/dist/chunks/{chunk-JVNIDSP5.js → chunk-V5TOMLK4.js} +1 -1
  112. package/dist/chunks/{chunk-L6CZL2IQ.js → chunk-VQSSVB6V.js} +1 -1
  113. package/dist/chunks/chunk-VTITZEPW.js +9 -0
  114. package/dist/chunks/chunk-WFS3XBAA.js +8 -0
  115. package/dist/chunks/{chunk-XEXOSJIU.js → chunk-WKIDCYKL.js} +1 -1
  116. package/dist/chunks/{chunk-UVHKXCR5.js → chunk-WKSXBH7X.js} +1 -2
  117. package/dist/chunks/{chunk-77LSSWXL.js → chunk-WTFD4MDT.js} +1 -1
  118. package/dist/chunks/{chunk-YO6SJCZP.js → chunk-WYGOYE6C.js} +1 -1
  119. package/dist/chunks/{chunk-UNASHUWQ.js → chunk-XFUUALZS.js} +1 -1
  120. package/dist/chunks/{chunk-SXEOJSZQ.js → chunk-XS3MNHFR.js} +1 -1
  121. package/dist/chunks/{chunk-ZGQNI22M.js → chunk-YGYUPPAL.js} +2 -2
  122. package/dist/chunks/{chunk-Q25FOMOX.js → chunk-YKLTNKQJ.js} +1 -1
  123. package/dist/chunks/{chunk-WFCGAYP5.js → chunk-YUHKH4TK.js} +1 -1
  124. package/dist/chunks/{chunk-D4TD2KWH.js → chunk-YZKARZ2B.js} +1 -1
  125. package/dist/chunks/chunk-ZCUUCYID.js +13 -0
  126. package/dist/chunks/{chunk-FPYHB76H.js → chunk-ZEUREQ4E.js} +1 -1
  127. package/dist/chunks/chunk-ZIC7VWFC.js +14 -0
  128. package/dist/chunks/{chunk-QGZZL6YY.js → chunk-ZPJHONCZ.js} +1 -1
  129. package/dist/chunks/{chunk-R2P4PNRQ.js → chunk-ZQXXESKG.js} +1 -1
  130. package/dist/chunks/{clear-B764MEAM.js → clear-Z5OO6URI.js} +1 -1
  131. package/dist/chunks/cli-embedded-Y74S252S.js +66 -0
  132. package/dist/chunks/{compile-vercel-config-EWCB7SIC.js → compile-vercel-config-ZKUTSDWV.js} +1 -1
  133. package/dist/chunks/{config-D4WY2HG4.js → config-AUTTHXQO.js} +1 -1
  134. package/dist/chunks/config-RJ7PLFQD.js +7 -0
  135. package/dist/chunks/{connect-git-provider-AWEOEEOO.js → connect-git-provider-YIX5ZOU6.js} +1 -1
  136. package/dist/chunks/{delete-W3GMFAKA.js → delete-QQOC63HV.js} +1 -1
  137. package/dist/chunks/{delete-SKYFHUWD.js → delete-WIGSOZR3.js} +1 -1
  138. package/dist/chunks/{detect-services-3TRRRLES.js → detect-services-J4LGLAHC.js} +1 -1
  139. package/dist/chunks/{disable-EBPZ2LYC.js → disable-L54VGY5A.js} +1 -1
  140. package/dist/chunks/{discard-SMVPENSP.js → discard-Q5UPTZR2.js} +1 -1
  141. package/dist/chunks/{edit-CGTNGJKY.js → edit-FRGMYBW3.js} +1 -1
  142. package/dist/chunks/{edit-A3M3GBGP.js → edit-QEDNQ33T.js} +1 -1
  143. package/dist/chunks/{enable-6A5THWDP.js → enable-TGQZWSBG.js} +1 -1
  144. package/dist/chunks/engine-DkdkXQEy-FDYYIXY7.js +17 -0
  145. package/dist/chunks/{exec-UV73J2ZB.js → exec-H3X7U4P3.js} +1 -1
  146. package/dist/chunks/{export-R5IUWAW5.js → export-YYQ2J5AT.js} +1 -1
  147. package/dist/chunks/{future-CPJUUZTU.js → future-RYEYLPCG.js} +1 -1
  148. package/dist/chunks/{generate-cert-for-deploy-Z3HCAR5H.js → generate-cert-for-deploy-Y4KDIFF2.js} +1 -1
  149. package/dist/chunks/image-PDPRURMH.js +7 -0
  150. package/dist/chunks/{import-builders-GPJQAMXT.js → import-builders-H54QCMQ4.js} +1 -1
  151. package/dist/chunks/{inspect-WC2C4MDP.js → inspect-6IBPIBIJ.js} +1 -1
  152. package/dist/chunks/{inspect-WWOHWQKS.js → inspect-AHHXHIIP.js} +1 -1
  153. package/dist/chunks/{inspect-BO2ACFEG.js → inspect-Q7FYDFL7.js} +1 -1
  154. package/dist/chunks/{inspect-6FEL5DYV.js → inspect-RPCDGIP3.js} +1 -1
  155. package/dist/chunks/{inspect-TEPB7KVC.js → inspect-SFM3NWDF.js} +1 -1
  156. package/dist/chunks/{list-C5GUZ35P.js → list-7WWUYCE6.js} +1 -1
  157. package/dist/chunks/{list-EZWZSVM4.js → list-GSVERG4S.js} +1 -1
  158. package/dist/chunks/{list-4KSJEP23.js → list-NXZXKKAR.js} +1 -1
  159. package/dist/chunks/{login-ZNCCVA4H.js → login-HEHHQO3F.js} +1 -1
  160. package/dist/chunks/{login-PDZT4PQR.js → login-XKLPSZNN.js} +1 -1
  161. package/dist/chunks/{logs-YKQMUTMG.js → logs-NJ46ZSNZ.js} +1 -1
  162. package/dist/chunks/{ls-3HUS6KS6.js → ls-5SKRXNSI.js} +1 -1
  163. package/dist/chunks/{ls-WX4BJRDV.js → ls-FOFJU2JJ.js} +1 -1
  164. package/dist/chunks/{ls-TASQJDLF.js → ls-ITWXAWSZ.js} +1 -1
  165. package/dist/chunks/{ls-LYVPEIIT.js → ls-LCUOBWY2.js} +1 -1
  166. package/dist/chunks/{ls-KQJYKADC.js → ls-MWGIT2YH.js} +1 -1
  167. package/dist/chunks/{ls-RBPRE6BF.js → ls-OY5YTZGN.js} +1 -1
  168. package/dist/chunks/{ls-ZP7OBTTV.js → ls-TZN53EJL.js} +1 -1
  169. package/dist/chunks/{mutate-5N6DMBYS.js → mutate-ZYXVL22A.js} +1 -1
  170. package/dist/chunks/{native-self-update-7OAY4AVR.js → native-self-update-DEVBYOH2.js} +1 -1
  171. package/dist/chunks/{notifications-OVFMQLHL.js → notifications-XAPB2F2T.js} +1 -1
  172. package/dist/chunks/{open-DOBOKUEK.js → open-WPRHI6ND.js} +1 -1
  173. package/dist/chunks/{openapi-YAZA3237.js → openapi-UUFKDKGC.js} +1 -1
  174. package/dist/chunks/{permissions-PHCOVDWK.js → permissions-FU5OET67.js} +1 -1
  175. package/dist/chunks/{plugin-offer-M7KJSJU6.js → plugin-offer-E5JOW442.js} +1 -1
  176. package/dist/chunks/{prompt-missing-credentials-RTNCHH6Y.js → prompt-missing-credentials-ZZVTEQQB.js} +1 -1
  177. package/dist/chunks/{publish-JIFRJNDV.js → publish-R5IV2BH2.js} +1 -1
  178. package/dist/chunks/pull-CQVHIIAN.js +7 -0
  179. package/dist/chunks/{purchase-domain-if-available-3EBONBX3.js → purchase-domain-if-available-VMWCMYC2.js} +1 -1
  180. package/dist/chunks/{push-ZN6CBJLJ.js → push-Y5CUOISM.js} +1 -1
  181. package/dist/chunks/{query-MT6ID6C7.js → query-VMKIOI3W.js} +1 -1
  182. package/dist/chunks/{reauthenticate-OXFB64PS.js → reauthenticate-5K7LBTOW.js} +1 -1
  183. package/dist/chunks/{reorder-N2L43LXD.js → reorder-W3MXHSGZ.js} +1 -1
  184. package/dist/chunks/{reply-WBR3XXBJ.js → reply-YH7HRIWQ.js} +1 -1
  185. package/dist/chunks/{resolve-NMR24Y67.js → resolve-FWVMWJTG.js} +1 -1
  186. package/dist/chunks/{resolve-agent-team-KRTLBC5D.js → resolve-agent-team-6L7AQUA2.js} +1 -1
  187. package/dist/chunks/{restore-AKAVSLAK.js → restore-I7L3EOS4.js} +1 -1
  188. package/dist/chunks/{rm-Q3ZXEMGI.js → rm-AWUMNWQU.js} +1 -1
  189. package/dist/chunks/{rm-DGMHU3CU.js → rm-HVGUK55W.js} +1 -1
  190. package/dist/chunks/{rm-ERBTFH3G.js → rm-M3EMCKSN.js} +1 -1
  191. package/dist/chunks/{rm-H2T7HB3F.js → rm-RFCTWU5R.js} +1 -1
  192. package/dist/chunks/{rm-TNGYCAFJ.js → rm-VREBRM5D.js} +1 -1
  193. package/dist/chunks/{routes-4WGST7VN.js → routes-BP54NO3Z.js} +1 -1
  194. package/dist/chunks/{rule-inspect-ZVHPS2PL.js → rule-inspect-SQUCRRGA.js} +1 -1
  195. package/dist/chunks/{schema-TSHU5NN6.js → schema-AKVIKCFT.js} +1 -1
  196. package/dist/chunks/{schema-YUXTIJSB.js → schema-S36QQNJP.js} +1 -1
  197. package/dist/chunks/{select-org-35NFUKXO.js → select-org-PRWYXAWW.js} +1 -1
  198. package/dist/chunks/serving-DKny38LK-UNINNTL5.js +8 -0
  199. package/dist/chunks/{set-PP5K4NBO.js → set-ZJAC44LV.js} +1 -1
  200. package/dist/chunks/{setup-and-link-ACSPPTME.js → setup-and-link-VD53JFQI.js} +1 -1
  201. package/dist/chunks/{skills-X5TPVYXW.js → skills-JG4MGVKX.js} +1 -1
  202. package/dist/chunks/{tags-6QB3FP3B.js → tags-4Y4UBA5S.js} +1 -1
  203. package/dist/chunks/token-3ILJZPAZ.js +7 -0
  204. package/dist/chunks/token-JJLQVXPI.js +7 -0
  205. package/dist/chunks/{token-util-JDQI37VN.js → token-util-A4BSB3KP.js} +1 -1
  206. package/dist/chunks/token-util-KL35LHLQ.js +7 -0
  207. package/dist/chunks/{types-SENK43U4.js → types-DSN6Q6HW.js} +1 -1
  208. package/dist/chunks/{update-QA3NLSTV.js → update-R42CXSVE.js} +1 -1
  209. package/dist/commands/build/index.js +1 -1
  210. package/dist/commands/deploy/index.js +9 -9
  211. package/dist/commands/dev/index.js +2 -2
  212. package/dist/commands/env/index.js +12 -12
  213. package/dist/commands/link/index.js +4 -4
  214. package/dist/commands/list/index.js +1 -1
  215. package/dist/commands/project/index.js +8 -14
  216. package/dist/commands-account.js +2 -2
  217. package/dist/commands-ai.js +4 -4
  218. package/dist/commands-blob.js +7 -7
  219. package/dist/commands-core.js +62 -32
  220. package/dist/commands-deployments.js +4 -4
  221. package/dist/commands-flags.js +3 -3
  222. package/dist/commands-integrations.js +1 -1
  223. package/dist/commands-observability.js +2 -2
  224. package/dist/commands-routing.js +5 -5
  225. package/dist/help.js +1 -1
  226. package/dist/index.js +5 -5
  227. package/dist/internal-build.js +1 -1
  228. package/dist/launcher-errors.js +1 -1
  229. package/dist/package.json +31 -30
  230. package/dist/version.mjs +1 -1
  231. package/package.json +22 -21
  232. package/dist/chunks/chunk-5KE67O45.js +0 -7
  233. package/dist/chunks/chunk-CFYTFXX6.js +0 -7
  234. package/dist/chunks/chunk-CUBRYWA2.js +0 -7
  235. package/dist/chunks/chunk-FOQD62WW.js +0 -17
  236. package/dist/chunks/chunk-FTACGWII.js +0 -14
  237. package/dist/chunks/chunk-FY4ORPZH.js +0 -7
  238. package/dist/chunks/chunk-G7H33IKQ.js +0 -10
  239. package/dist/chunks/chunk-KWXJIVBG.js +0 -7
  240. package/dist/chunks/chunk-MOF4QNZH.js +0 -9
  241. package/dist/chunks/chunk-O4CQRV2G.js +0 -7
  242. package/dist/chunks/chunk-UWJ3UPS5.js +0 -11
  243. package/dist/chunks/chunk-ZUI5EMXD.js +0 -11
  244. package/dist/chunks/config-CW4JO67Q.js +0 -7
  245. package/dist/chunks/image-VNSN2SKE.js +0 -7
  246. package/dist/chunks/pull-HLJSW3W4.js +0 -7
  247. package/dist/chunks/token-W6P2KNI5.js +0 -7
@@ -1,7 +0,0 @@
1
- import { createRequire as __createRequire } from 'node:module';
2
- import { fileURLToPath as __fileURLToPath } from 'node:url';
3
- import { dirname as __dirname_ } from 'node:path';
4
- const require = __createRequire(import.meta.url);
5
- const __filename = __fileURLToPath(import.meta.url);
6
- const __dirname = __dirname_(__filename);
7
- var AGENT_STATUS={ERROR:"error",ACTION_REQUIRED:"action_required",OK:"ok"},AGENT_REASON={MISSING_ARGUMENTS:"missing_arguments",INVALID_ARGUMENTS:"invalid_arguments",CONFIRMATION_REQUIRED:"confirmation_required",INTERACTIVE_CONFIRMATION_REQUIRED:"interactive_confirmation_required",LOGIN_REQUIRED:"login_required",PROJECT_SETTINGS_REQUIRED:"project_settings_required",NOT_LINKED:"not_linked",NOT_FOUND:"not_found",PROJECT_NOT_FOUND:"project_not_found",MISSING_SCOPE:"missing_scope",SCOPE_NOT_ACCESSIBLE:"scope_not_accessible",AGENT_CANNOT_SWITCH:"agent_cannot_switch",API_ERROR:"api_error",STDIN_ERROR:"stdin_error",RATE_LIMITED:"rate_limited",NETWORK_ERROR:"network_error",NATIVE_BINARY_UNAVAILABLE:"native_binary_unavailable",PLATFORM_UNSUPPORTED:"platform_unsupported",SPAWN_FAILED:"spawn_failed",UNKNOWN_COMMAND:"unknown_command",SEGMENT_IN_USE:"segment_in_use",ENTITY_IN_USE:"entity_in_use",MISSING_REQUIREMENTS:"missing_requirements",MISSING_NAME:"missing_name",MISSING_VALUE:"missing_value",MISSING_ENVIRONMENT:"missing_environment",ENV_NOT_FOUND:"env_not_found",MULTIPLE_ENVS:"multiple_envs",ENV_FILE_EXISTS:"env_file_exists",GIT_BRANCH_REQUIRED:"git_branch_required",ENV_KEY_SENSITIVE:"env_key_sensitive",AMBIGUOUS_ROUTE:"ambiguous_route",ROUTE_CREATE_FAILED:"route_create_failed",ROUTE_GENERATION_FAILED:"route_generation_failed",DOMAIN_NOT_FOUND:"domain_not_found",PRICE_CHANGED:"price_changed",CONFLICT:"conflict",DOMAIN_NOT_AVAILABLE:"domain_not_available",TLD_NOT_SUPPORTED:"tld_not_supported",PAYMENT_FAILED:"payment_failed",UNKNOWN_OUTCOME:"unknown_outcome",DNS_RECORD_NOT_FOUND:"dns_record_not_found",INCOMPLETE_RECORD:"incomplete_record",PERMISSION_DENIED:"permission_denied",INVALID_PORT:"invalid_port",INVALID_DNS_TYPE:"invalid_dns_type",DNS_ADD_FAILED:"dns_add_failed",INVALID_DOMAIN:"invalid_domain",CONFIGURED_CORRECTLY:"configured_correctly",VERIFICATION_NEEDED:"verification_needed",INVALID_CONFIGURATION:"invalid_configuration",DNS_CHANGE_REQUIRED:"dns_change_required",DNS_CHANGE_RECOMMENDED:"dns_change_recommended",DNSSEC_NEEDS_TO_BE_DISABLED:"dnssec_needs_to_be_disabled",PROJECT_ATTACHMENT_RECOMMENDED:"project_attachment_recommended",PROJECT_DOMAIN_MISSING:"project_domain_missing",INTEGRATION_TERMS_ACCEPTANCE_REQUIRED:"integration_terms_acceptance_required",INTEGRATION_SETUP_REQUIRED:"integration_setup_required",HAS_RESOURCES:"has_resources",INTEGRATION_SANDBOX_CLAIM_REQUIRED:"integration_sandbox_claim_required",CLASSIC_TOKEN_REQUIRED:"classic_token_required",TOKEN_USER_SCOPE_REQUIRED:"token_user_scope_required",MISSING_URL:"missing_url",MISSING_EVENTS:"missing_events",INVALID_URL:"invalid_url",INVALID_EVENT:"invalid_event",INVALID_BUDGET:"invalid_budget",INVALID_REFRESH_PERIOD:"invalid_refresh_period",INVALID_EXPIRATION:"invalid_expiration",INVALID_ALERT_THRESHOLDS:"invalid_alert_thresholds",REQUIRES_CONSENT:"requires_consent",MISSING_ISSUER_ID:"missing_issuer_id",MISSING_KEY:"missing_key",MISSING_KEY_ID:"missing_key_id",MISSING_PROJECT:"missing_project",ISSUER_NOT_FOUND:"issuer_not_found",ISSUER_MANAGED:"issuer_managed",ISSUER_REQUIRES_IMPORTED_KEY:"issuer_requires_imported_key",ISSUER_REQUIRES_GENERATED_KEY:"issuer_requires_generated_key",KEY_NOT_REVOKING:"key_not_revoking",NO_CHANGES_REQUESTED:"no_changes_requested",GIT_REPOSITORY_REQUIRED:"git_repository_required",CI_RUN_NOT_FOUND:"ci_run_not_found",CI_RUN_IN_PROGRESS:"ci_run_in_progress",CI_RUN_NOT_RETRYABLE:"ci_run_not_retryable",PAGE_INTEGRITY_NOT_AVAILABLE:"page_integrity_not_available",SCHEDULES_NOT_ENABLED:"schedules_not_enabled",SCHEDULE_ALREADY_EXISTS:"schedule_already_exists",SCHEDULE_SINGLE_AT_PASSED:"schedule_single_at_passed",SCHEDULE_ALREADY_ACTIVE:"schedule_already_active",STATIC_SCHEDULE:"static_schedule",INVALID_CRON_EXPRESSION:"invalid_cron_expression",INVALID_JITTER:"invalid_jitter",JITTER_EXCEEDS_CADENCE:"jitter_exceeds_cadence",SINGLE_AT_TOO_SOON:"single_at_too_soon",SCHEDULE_PAYLOAD_TOO_LARGE:"payload_too_large",SCHEDULE_PAYLOAD_STORE_FAILED:"payload_store_failed",SCHEDULE_SERVICE_UNAVAILABLE:"service_unavailable",SCHEDULE_SERVICE_ERROR:"service_error",REDIRECT_NOT_FOUND:"redirect_not_found",VERSION_NOT_FOUND:"version_not_found",VERSION_ALREADY_LIVE:"version_already_live",VERSION_IS_STAGING:"version_is_staging",PLAN_UPGRADE_REQUIRED:"plan_upgrade_required",PLAN_LIMIT:"plan_limit",NOT_TEAM_MEMBER:"not_team_member",INVALID_ROLE_COMBINATION:"invalid_role_combination",TARGET_CONFLICT:"target_conflict",FIRST_DEPLOYMENT_PRODUCTION:"first_deployment_production",DEPRECATED:"deprecated",LIMIT_CLAMPED:"limit_clamped",METRICS_UNAVAILABLE:"metrics_unavailable",STREAM_GAP:"stream_gap",INCOMPLETE_RESULTS:"incomplete_results"},USAGE_ERROR_REASONS=new Set(["invalid_arguments","missing_arguments","unknown_command","missing_command","invalid_environment","invalid_type","missing_id","missing_value","missing_name","missing_flags","missing_clients","invalid_clients","conflicting_type_flags","missing_environment","invalid_slug","invalid_name","invalid_alert_thresholds","invalid_budget","invalid_dns_type","invalid_event","invalid_expiration","invalid_port","invalid_refresh_period","invalid_role_combination","invalid_url","missing_events","missing_issuer_id","missing_key_id","missing_key","missing_url"]);function getExitCodeForReason(reason){return reason!==void 0&&USAGE_ERROR_REASONS.has(reason)?2:1}var AGENT_ACTION={MISSING_ARGUMENTS:"missing_arguments",CONFIRMATION_REQUIRED:"confirmation_required",LOGIN_REQUIRED:"login_required"};export{AGENT_STATUS,AGENT_REASON,getExitCodeForReason,AGENT_ACTION};
@@ -1,7 +0,0 @@
1
- import { createRequire as __createRequire } from 'node:module';
2
- import { fileURLToPath as __fileURLToPath } from 'node:url';
3
- import { dirname as __dirname_ } from 'node:path';
4
- const require = __createRequire(import.meta.url);
5
- const __filename = __fileURLToPath(import.meta.url);
6
- const __dirname = __dirname_(__filename);
7
- import{warnDeprecatedInput}from"./chunk-GJCVOEC2.js";import{packageName,require_lib}from"./chunk-VRH7LWOC.js";import{require_dist}from"./chunk-PUKYAALC.js";import{deploymentOption,environmentOption,forceOption,formatOption,gitBranchOption,jsonOption,projectOption,yesOption}from"./chunk-CKTLP5GX.js";import{__toESM}from"./chunk-BZENIQ7N.js";var import_constants=__toESM(require_dist(),1),import_title=__toESM(require_lib(),1);var envTargetChoices=import_constants.PROJECT_ENV_TARGET.map(t=>({name:(0,import_title.default)(t),value:t}));function isValidEnvTarget(target){return typeof target>"u"||envTargetChoices.map(c=>c.value).includes(target)}function getEnvTargetPlaceholder(){return`<${envTargetChoices.map(c=>c.value).join(" | ")}>`}function parseEnvTargetArg(arg){return Array.from(new Set(arg.split(",").map(t=>t.trim()).filter(Boolean)))}function resolveEnvTargetInput(client,input){let environment=Array.isArray(input.environment)?input.environment.join(","):input.environment;return input.legacyEnvironment!==void 0&&environment!==void 0?{error:"Can't use an environment argument with --environment. Use --environment, and --git-branch for a Git branch."}:input.legacyGitBranch!==void 0&&input.gitBranch!==void 0?{error:"Can't use a Git branch argument with --git-branch. Use --git-branch."}:(input.legacyEnvironment!==void 0&&warnDeprecatedInput(client,"The environment argument","--environment"),input.legacyGitBranch!==void 0&&warnDeprecatedInput(client,"The Git branch argument","--git-branch"),{environment:environment??input.legacyEnvironment,gitBranch:input.gitBranch??input.legacyGitBranch})}var targetPlaceholder=getEnvTargetPlaceholder(),listSubcommand={name:"list",aliases:["ls"],description:"List all Environment Variables for a Project",arguments:[],options:[{...environmentOption,description:"List only the variables for this environment"},{...gitBranchOption,description:"List only the variables for this Git branch"},{...formatOption,description:"Specify the output format (json, including readable Environment Variable values)"},{...jsonOption,description:"Output as JSON, including readable Environment Variable values"},projectOption,{name:"guidance",description:"Receive command suggestions once command is complete",shorthand:null,type:Boolean,deprecated:!1}],examples:[]},addSubcommand={name:"add",aliases:[],description:"Add an Environment Variable",arguments:[{name:"name",required:!0}],options:[projectOption,{...environmentOption,type:[String],description:"Environments to add the variable to; repeatable or comma-separated. Prompts when omitted"},{...gitBranchOption,description:"Set the Git branch for a Preview Environment Variable"},{name:"sensitive",description:"Store the value as a Secret",shorthand:null,type:Boolean,deprecated:!1},{name:"no-sensitive",description:"Store the value as Config",shorthand:null,type:Boolean,deprecated:!1},{name:"type",description:"Set the Environment Variable type (`config` or `secret`)",shorthand:null,type:String,argument:"TYPE",deprecated:!1},{name:"visibility",description:"Deprecated alias for `--type`",shorthand:null,type:String,argument:"VISIBILITY",deprecated:!0},{...forceOption,description:"Overwrite an existing variable in the same environment",shorthand:null},{...yesOption,description:"Accept default choices when adding an Environment Variable"},{name:"guidance",description:"Show command suggestions after completion",shorthand:null,type:Boolean,deprecated:!1},{name:"value",description:"Set the variable value for non-interactive use; otherwise use stdin or the prompt",shorthand:null,type:String,argument:"VALUE",deprecated:!1}],examples:[{name:"Add a new variable (prompts for value and Environments)",placeholders:["<name>"],value:`${packageName} env add <name>`},{name:"Add a new Environment Variable to a specific Environment",placeholders:["<name>",targetPlaceholder],value:`${packageName} env add <name> --environment ${targetPlaceholder}`},{name:"Add one variable to multiple Environments (comma-separated)",placeholders:["<name>","<environment>"],value:`${packageName} env add <name> --environment <environment>[,<environment>]`},{name:"Override an existing Environment Variable in the same environment (production, preview, development)",value:`${packageName} env add API_TOKEN --force`},{name:"Add a Config Environment Variable that remains readable later",value:`${packageName} env add API_TOKEN --no-sensitive`},{name:"Add a new Environment Variable for a specific Environment and Git Branch",placeholders:["<name>","<BRANCH>",targetPlaceholder],value:`${packageName} env add <name> --environment ${targetPlaceholder} --git-branch <BRANCH>`},{name:"Add a variable from piped input",placeholders:["<file>","<name>",targetPlaceholder],value:`cat <file> | ${packageName} env add <name> --environment ${targetPlaceholder}`},{name:"Add a variable from a file",placeholders:["<file>","<name>",targetPlaceholder],value:`${packageName} env add <name> --environment ${targetPlaceholder} < <file>`},{name:"Add with --value for non-interactive use",placeholders:["<value>"],value:`${packageName} env add API_TOKEN --environment production --value "<value>" --yes`}]},removeSubcommand={name:"remove",aliases:["rm"],description:"Remove an Environment Variable (see examples below)",arguments:[{name:"name",required:!0}],options:[projectOption,{...environmentOption,description:"Remove the variable from this environment only. Without it, the variable is removed from all of its environments"},{...gitBranchOption,description:"Remove the variable for this Git branch only"},{...yesOption,description:"Skip the confirmation prompt when removing an Environment Variable"}],examples:[{name:"Remove a variable from multiple Environments",placeholders:["<name>"],value:`${packageName} env remove <name>`},{name:"Remove a variable from a specific Environment",placeholders:["<name>",targetPlaceholder],value:`${packageName} env remove <name> --environment ${targetPlaceholder}`},{name:"Remove a variable from a specific Environment and Git Branch",placeholders:["<name>","<BRANCH>",targetPlaceholder],value:`${packageName} env remove <name> --environment ${targetPlaceholder} --git-branch <BRANCH>`}]},pullSubcommand={name:"pull",aliases:[],description:"Pull Environment Variables into a local file (default: .env.local)",arguments:[{name:"filename",required:!1}],options:[projectOption,{name:"environment",description:"Select the environment to pull (default: development)",shorthand:"e",type:String,argument:"ENVIRONMENT",deprecated:!1},{...gitBranchOption,description:"Specify the Git branch to pull specific Environment Variables for"},{...deploymentOption,description:"Pull Environment Variables for a specific deployment (e.g. dpl_xxx)"},{name:"id",shorthand:null,type:String,deprecated:!0},{...yesOption,description:"Skip the confirmation prompt when overwriting an existing file"}],examples:[{name:"Pull Development Environment Variables into a custom file (check .gitignore)",placeholders:["<file>"],value:`${packageName} env pull <file>`},{name:"Pull Environment Variables for a specific deployment",value:`${packageName} env pull --deployment dpl_xxx`}]},runSubcommand={name:"run",aliases:[],description:"Run a command with environment variables from the linked Vercel project",arguments:[{name:"command",required:!0,multiple:!0}],options:[projectOption,{name:"environment",description:"Specify the environment to pull variables from (default: development)",shorthand:"e",type:String,argument:"ENVIRONMENT",deprecated:!1},{...gitBranchOption,description:"Specify the Git branch to pull specific Environment Variables for"}],examples:[{name:"Run Next.js dev server with development environment variables",value:`${packageName} env run -- next dev`},{name:"Run tests with preview environment variables for a specific branch",value:`${packageName} env run -e preview --git-branch feature-x -- npm test`}]},updateSubcommand={name:"update",aliases:[],description:"Update the value of an existing Environment Variable (see examples below)",arguments:[{name:"name",required:!0}],options:[projectOption,{...environmentOption,description:"Pick the variable to update by an environment it covers. The new value applies to all of its environments"},{...gitBranchOption,description:"Pick the variable to update by its Git branch"},{name:"sensitive",description:"Store the updated value as a Secret",shorthand:null,type:Boolean,deprecated:!1},{name:"type",description:"Set the Environment Variable type (`config` or `secret`)",shorthand:null,type:String,argument:"TYPE",deprecated:!1},{name:"visibility",description:"Deprecated alias for `--type`",shorthand:null,type:String,argument:"VISIBILITY",deprecated:!0},{...yesOption,description:"Skip the confirmation prompt when updating an Environment Variable"},{name:"value",description:"New value for the variable (non-interactive). Otherwise use stdin or you will be prompted.",shorthand:null,type:String,argument:"VALUE",deprecated:!1}],examples:[{name:"Update a variable in all Environments",placeholders:["<name>"],value:`${packageName} env update <name>`},{name:"Update the variable that covers a specific Environment",placeholders:["<name>",targetPlaceholder],value:`${packageName} env update <name> --environment ${targetPlaceholder}`},{name:"Update the variable for a specific Environment and Git Branch",placeholders:["<name>","<BRANCH>",targetPlaceholder],value:`${packageName} env update <name> --environment ${targetPlaceholder} --git-branch <BRANCH>`},{name:"Update a variable from piped input",placeholders:["<file>","<name>",targetPlaceholder],value:`cat <file> | ${packageName} env update <name> --environment ${targetPlaceholder}`},{name:"Update a variable from a file",placeholders:["<file>","<name>",targetPlaceholder],value:`${packageName} env update <name> --environment ${targetPlaceholder} < <file>`}]},envCommand={name:"env",aliases:[],description:"Interact with Environment Variables for a Project",arguments:[],subcommands:[addSubcommand,listSubcommand,pullSubcommand,removeSubcommand,runSubcommand,updateSubcommand],options:[],examples:[{name:"Run a command with Environment Variables from the linked Project",placeholders:["<command>"],value:`${packageName} env run -- <command>`},{name:"Add one variable to multiple Environments",value:`${packageName} env add API_URL --environment production,preview,development`}]};export{envTargetChoices,isValidEnvTarget,getEnvTargetPlaceholder,parseEnvTargetArg,resolveEnvTargetInput,listSubcommand,addSubcommand,removeSubcommand,pullSubcommand,runSubcommand,updateSubcommand,envCommand};
@@ -1,17 +0,0 @@
1
- import { createRequire as __createRequire } from 'node:module';
2
- import { fileURLToPath as __fileURLToPath } from 'node:url';
3
- import { dirname as __dirname_ } from 'node:path';
4
- const require = __createRequire(import.meta.url);
5
- const __filename = __fileURLToPath(import.meta.url);
6
- const __dirname = __dirname_(__filename);
7
- import{require_cjs}from"./chunk-VZGTL3YC.js";import{CONTACT_FIELDS,billingFieldsUsed,collectContactInformation,getBillingContact,getDomainPrice,getDomainStatus,mergeContact,missingContactFields,purchaseDomain,readContactFlags}from"./chunk-22UXDTCE.js";import{canPrompt}from"./chunk-IQ7FPAI4.js";import{stamp_default}from"./chunk-A2RZZQEP.js";import{buySubcommand}from"./chunk-FTACGWII.js";import{printError}from"./chunk-Q4GX2UTG.js";import{param}from"./chunk-3G3FQYMW.js";import{getScope,scopeFlagPassed}from"./chunk-TZ6MSTOI.js";import{TelemetryClient}from"./chunk-VPUYTI5E.js";import{buildCommandWithGlobalFlags,outputActionRequired,outputAgentError}from"./chunk-ZUI5EMXD.js";import{parseArguments}from"./chunk-C4N4LKPM.js";import{validateJsonOutput}from"./chunk-GJCVOEC2.js";import{DomainChargeOutcomeUnknown,DomainPriceChanged,isAPIError}from"./chunk-T2FCF46I.js";import{getCommandName,getCommandNamePlain}from"./chunk-VRH7LWOC.js";import{output_manager_default}from"./chunk-W634OFUG.js";import{require_build_utils}from"./chunk-5MDNVAE6.js";import{require_dist}from"./chunk-RM3ZDRYE.js";import{getFlagsSpecification,getGlobalFlagsFromArgs,quoteArg}from"./chunk-CKTLP5GX.js";import{require_source}from"./chunk-NB2WLB3J.js";import{require_strip_ansi}from"./chunk-BULSRTQE.js";import{AGENT_ACTION,AGENT_REASON,AGENT_STATUS,getExitCodeForReason}from"./chunk-CFYTFXX6.js";import{__toESM}from"./chunk-BZENIQ7N.js";var import_chalk=__toESM(require_source(),1),import_strip_ansi=__toESM(require_strip_ansi(),1),import_tldts=__toESM(require_cjs(),1),import_error_utils=__toESM(require_dist(),1);var DomainsBuyTelemetryClient=class extends TelemetryClient{trackCliArgumentDomain(v){v&&this.trackCliArgument({arg:"domain",value:this.redactedValue})}trackCliOptionAmount(v){this.trackRedactedCliOption("amount",v)}trackCliFlagUseBillingDetails(v){v&&this.trackCliFlag("use-billing-details")}trackCliOptionFirstName(v){this.trackRedactedCliOption("first-name",v)}trackCliOptionLastName(v){this.trackRedactedCliOption("last-name",v)}trackCliOptionEmail(v){this.trackRedactedCliOption("email",v)}trackCliOptionPhone(v){this.trackRedactedCliOption("phone",v)}trackCliOptionAddress(v){this.trackRedactedCliOption("address",v)}trackCliOptionCity(v){this.trackRedactedCliOption("city",v)}trackCliOptionState(v){this.trackRedactedCliOption("state",v)}trackCliOptionZip(v){this.trackRedactedCliOption("zip",v)}trackCliOptionCountry(v){this.trackRedactedCliOption("country",v)}trackCliOptionCompany(v){this.trackRedactedCliOption("company",v)}trackCliFlagAutoRenew(v){v&&this.trackCliFlag("auto-renew")}trackCliFlagNoAutoRenew(v){v&&this.trackCliFlag("no-auto-renew")}trackCliFlagJson(v){v&&this.trackCliFlag("json")}};var import_build_utils=__toESM(require_build_utils(),1);async function getWebhook(client,webhookId){return await client.fetch(`/v1/webhooks/${encodeURIComponent(webhookId)}`)}var TEAM_BUDGET={scope:"team"},BUDGET_THRESHOLD_PERCENTS=[50,75,100],PAUSE_AT_PERCENT=100;function buildThresholds({pause,webhookUrl}){return BUDGET_THRESHOLD_PERCENTS.map(percent=>({percent,sendNotifications:!0,triggerWebhook:!!webhookUrl,pauseUsage:percent===PAUSE_AT_PERCENT?!!pause:!1}))}function thresholdsForSet({existing,pause,pauseSpecified,webhookUrl,webhookSpecified}){if(!existing?.length)return buildThresholds({pause,webhookUrl});let next=existing.map(threshold=>({...threshold}));if(pauseSpecified&&(next=applyPauseToThresholds(next,pause)),webhookSpecified){let triggerWebhook=!!webhookUrl;next=next.map(threshold=>({...threshold,triggerWebhook}))}return next}function hasPauseThreshold(thresholds){return thresholds.some(threshold=>threshold.percent===PAUSE_AT_PERCENT)}function pausePercentsOutside100(thresholds){return thresholds.filter(threshold=>threshold.pauseUsage&&threshold.percent!==PAUSE_AT_PERCENT).map(threshold=>threshold.percent)}function applyPauseToThresholds(thresholds,pause){return pause?thresholds.map(threshold=>({...threshold,pauseUsage:threshold.percent===PAUSE_AT_PERCENT})):thresholds.map(threshold=>({...threshold,pauseUsage:!1}))}function budgetAmountDollars(budget){let n=Number(budget.amount);return Number.isFinite(n)?n:0}function spendDollars(spend){return spend?.currentSpend==null?null:spend.currentSpend/100}function percentUsed(spent,amount){return spent!==null&&amount>0?Math.round(spent/amount*100):null}function spendPayload(spent,amount){return{currentSpend:spent,percentUsed:amount===null?null:percentUsed(spent,amount),unit:"usd"}}var NO_RETRY={retries:0};function budgetPauses(budget){return budget.thresholds.some(t=>t.pauseUsage)}function budgetStatePayload(state){return{id:state.id,teamId:state.teamId,scope:state.scope,scopeId:state.scopeId,amount:state.amount,amountUnit:state.amountUnit,status:state.status,pause:state.pause,webhookId:state.webhookId,webhookUrl:state.webhookUrl,webhookStatus:state.webhookStatus,thresholds:state.thresholds}}function setSavedReceipt({team,reloaded,webhookSecret,amount,scope}){let secret=webhookSecret?{webhookSecret}:{};return reloaded?{ok:!0,saved:!0,reloaded:!0,teamSlug:team.slug,...budgetStatePayload(reloaded),...secret}:{ok:!0,saved:!0,reloaded:!1,teamId:team.id,teamSlug:team.slug,scope,amount,amountUnit:"usd",...secret}}function removeReceipt({team,alreadyAbsent,disabled,scope}){return{ok:!0,alreadyAbsent,disabled,teamId:team.id,teamSlug:team.slug,scope}}function selectorQuery(selector){return new URLSearchParams({scope:selector.scope}).toString()}function matchesSelector(budget,selector){return(budget.scope??selector.scope)===selector.scope}function resolvedBudgetScope(budget,selector=TEAM_BUDGET){return budget.scope??selector.scope}async function toBudgetState(client,budget,selector=TEAM_BUDGET){let webhook=await resolveBudgetWebhook(client,budget);return{id:budget.id,teamId:budget.ownerId,scope:resolvedBudgetScope(budget,selector),scopeId:budget.scopeId??null,amount:budgetAmountDollars(budget),amountUnit:"usd",status:budget.status,pause:budgetPauses(budget),webhookId:webhook.webhookId,webhookUrl:webhook.webhookUrl,webhookStatus:webhook.webhookStatus,thresholds:budget.thresholds.map(threshold=>({...threshold}))}}async function resolveBudgetWebhook(client,budget){if(!budget.webhookId)return{webhookId:null,webhookUrl:null,webhookStatus:"absent"};try{let webhook=await getWebhook(client,budget.webhookId);return{webhookId:budget.webhookId,webhookUrl:webhook.url,webhookStatus:"resolved"}}catch{return{webhookId:budget.webhookId,webhookUrl:null,webhookStatus:"unavailable"}}}function formatUsdWhole(dollars){return`$${dollars.toLocaleString("en-US",{maximumFractionDigits:0})}`}function formatUsd(dollars){return`$${dollars.toLocaleString("en-US",{minimumFractionDigits:2,maximumFractionDigits:2})}`}async function listBudgets(client,selector){let{data}=await client.fetch(selector?`/v1/budgets?${selectorQuery(selector)}`:"/v1/budgets",{method:"GET"});return data??[]}async function findBudget(client,selector=TEAM_BUDGET){let budgets=(await listBudgets(client,selector)).filter(budget=>matchesSelector(budget,selector));return budgets.find(b=>b.status==="active")??budgets[0]}async function setBudget(client,input){let selector={scope:input.scope};return client.fetch("/v1/budgets",{method:"POST",retry:{retries:0},body:{amount:input.amount,thresholds:input.thresholds,scope:selector.scope,...input.webhookUrl?{webhookUrl:input.webhookUrl}:{}}})}async function removeBudget(client,budgetId){await client.fetch(`/v1/budgets/${encodeURIComponent(budgetId)}`,{method:"DELETE"})}async function getTeamSpend(client,teamId,selector=TEAM_BUDGET,{retry}={}){let params=new URLSearchParams;selector.scope!=="team"&&params.set("scope",selector.scope);let qs=params.toString(),{data}=await client.fetch(`/teams/${encodeURIComponent(teamId)}/spend${qs?`?${qs}`:""}`,{method:"GET",...retry?{retry}:{}});return data??{currentSpend:null,avgSpend:null}}async function listBudgetAlerts(client,selector=TEAM_BUDGET,query={},{retry}={}){let params=new URLSearchParams(selectorQuery(selector));for(let[key,value]of Object.entries(query))value!==void 0&&params.set(key,String(value));let page=await client.fetch(`/v1/budgets/alerts?${params}`,{method:"GET",...retry?{retry}:{}});return{data:page.data??[],nextCursor:page.nextCursor}}var AMOUNT_PATTERN=/^\d+(\.\d{1,2})?$/,REASON_BY_CODE={UNSUPPORTED_TLD:AGENT_REASON.TLD_NOT_SUPPORTED,UNSUPPORTED_TLD_VIA_CLI:AGENT_REASON.TLD_NOT_SUPPORTED,INVALID_DOMAIN:AGENT_REASON.INVALID_DOMAIN,DOMAIN_NOT_AVAILABLE:AGENT_REASON.DOMAIN_NOT_AVAILABLE,DOMAIN_PAYMENT_ERROR:AGENT_REASON.PAYMENT_FAILED};function chargeFailureReason(err){let code=err.code;return typeof code=="string"&&REASON_BY_CODE[code]||AGENT_REASON.API_ERROR}function parseAmount(raw){if(raw===void 0)return;let value=raw.trim();return!AMOUNT_PATTERN.test(value)||Number(value)<=0?new Error(`Invalid --amount "${raw}". Use the price in USD, such as 20.00.`):Number(value)}function amountMatchesPrice(amount,price){return Math.round(amount*100)===Math.round(price*100)}function formatAmountArg(price){return price.toFixed(2)}function formatTerm(years){return`${years} ${years===1?"year":"years"}`}function canPromptForCharge(client,json){return canPrompt(client)&&!process.env.CI&&!json}function chargeFlagWithValue(argv,flags){for(let arg of argv){if(arg==="--")break;let name=arg.split("=")[0];if(arg.includes("=")&&flags.includes(name))return`${name} doesn't take a value. Pass it on its own, or leave it out${name==="--auto-renew"?" and pass --no-auto-renew":""}.`}}function chargeTeamStatus(client,teamId){let orgId=(0,import_build_utils.getPlatformEnv)("ORG_ID");return orgId&&orgId!==teamId?"conflict":scopeFlagPassed(client.argv)||orgId===teamId?"named":"unnamed"}function printChargeRecovery(headline,instruction,command){output_manager_default.fatal(`${headline}
8
-
9
- ${instruction}:
10
- ${command}`)}function writeChargeAction(client,json,payload){outputActionRequired(client,payload,1),json&&client.stdout.write(`${JSON.stringify(payload,null,2)}
11
- `)}function reportUsageError(client,reason,message){let exitCode=getExitCodeForReason(reason);return outputAgentError(client,{status:"error",reason,message},exitCode),output_manager_default.error(message),exitCode}function reportChargeFailure(client,json,payload,opts={}){let document={status:"error",...payload,...opts.apiMessage&&{data:{...payload.data,apiMessage:opts.apiMessage}}};outputAgentError(client,document,1),json&&client.stdout.write(`${JSON.stringify(document,null,2)}
12
- `);let headline=opts.apiMessage?`${payload.message}
13
- ${opts.apiMessage}`:payload.message;return opts.recovery?printChargeRecovery(headline,opts.recovery.instruction,opts.recovery.command):output_manager_default.fatal(headline),1}function reportUnknownOutcome(client,json,opts){let done=opts.verb==="buy"?"was bought":"was renewed",action=opts.verb==="buy"?"purchase":"renewal";return reportChargeFailure(client,json,{reason:AGENT_REASON.UNKNOWN_OUTCOME,message:`Can't confirm whether ${opts.domain} ${done}. Check the domain before running ${opts.verb} again, or you may be charged twice.`,next:[{command:opts.inspectCommand,when:`Check whether the ${action} went through before retrying`}]},{recovery:{instruction:`Check whether the ${action} went through`,command:opts.inspectCommand}})}function refuseUnnamedTeam(client,json,opts){let{verb,domain,team}=opts,status=chargeTeamStatus(client,team.id);if(status==="named")return;if(status==="conflict")return reportChargeFailure(client,json,{reason:AGENT_REASON.CONFLICT,message:`Can't ${verb} ${domain}. VERCEL_ORG_ID names a different team than ${team.slug}, the team this run would charge. Nothing was charged.`,userActionRequired:!0,hint:"Set VERCEL_ORG_ID to the team to charge, or unset it and pass --scope with that team.",data:{domain,team:team.slug}});let message=`Can't ${verb} ${domain} without naming the team to charge in non-interactive mode. It would charge ${team.slug}. Nothing was charged.`;return writeChargeAction(client,json,{status:AGENT_STATUS.ACTION_REQUIRED,reason:AGENT_REASON.MISSING_SCOPE,action:AGENT_ACTION.CONFIRMATION_REQUIRED,message,userActionRequired:!0,data:{domain,team:team.slug},missing:["--scope"],next:[{command:opts.nextCommand,when:`Only after a human approves charging ${team.slug}`}]}),printChargeRecovery(message,"Once a person approves the team to charge, run",opts.nextCommand),1}function reportPriceChanged(client,opts){let{verb,domain,amount,price,nextCommand}=opts;return reportChargeFailure(client,opts.json,{reason:AGENT_REASON.PRICE_CHANGED,message:price===void 0?`Can't ${verb} ${domain}. Its price changed from ${formatUsd(amount)}. Nothing was charged.`:`Can't ${verb} ${domain}. Its price is ${formatUsd(price)}, not ${formatUsd(amount)}. Nothing was charged.`,userActionRequired:!0,data:price===void 0?{domain}:{domain,amount:price,currency:"USD"},next:[{command:nextCommand,when:price===void 0?"Get the current price, then ask a human to approve it":`Only after a human approves the price of ${formatUsd(price)}`}]},{recovery:{instruction:price===void 0?"Get the current price":"Once a person approves the price, run",command:nextCommand}})}function buildBuyCommand(client,domain,opts){let parts=[`domains buy ${domain}`];opts.team&&parts.push(`--scope ${opts.team}`),opts.amount!==void 0&&parts.push(`--amount ${formatAmountArg(opts.amount)}`),opts.useBilling&&parts.push("--use-billing-details");for(let{field,flag}of CONTACT_FIELDS){let value=opts.contact[field];value!==void 0?parts.push(`${flag} ${quoteArg(value)}`):opts.missing.includes(field)&&parts.push(`${flag} <${flag.slice(2)}>`)}return opts.autoRenew===!0&&parts.push("--auto-renew"),opts.autoRenew===!1&&parts.push("--no-auto-renew"),opts.json&&parts.push("--json"),buildCommandWithGlobalFlags(client.argv,parts.join(" "))}function flagFor(field){return CONTACT_FIELDS.find(f=>f.field===field).flag}function usageError(client,message){return reportUsageError(client,AGENT_REASON.INVALID_ARGUMENTS,message)}async function buy(client,argv){let telemetry=new DomainsBuyTelemetryClient({opts:{store:client.telemetryEventStore}}),parsedArgs,flagsSpecification=getFlagsSpecification(buySubcommand.options);try{parsedArgs=parseArguments(argv,flagsSpecification)}catch(error){return client.nonInteractive&&outputAgentError(client,{status:"error",reason:"invalid_arguments",message:error instanceof Error?error.message:String(error)},2),printError(error),2}let{args,flags}=parsedArgs,[domainName]=args;if(telemetry.trackCliArgumentDomain(domainName),telemetry.trackCliOptionAmount(flags["--amount"]),telemetry.trackCliFlagUseBillingDetails(flags["--use-billing-details"]),telemetry.trackCliOptionFirstName(flags["--first-name"]),telemetry.trackCliOptionLastName(flags["--last-name"]),telemetry.trackCliOptionEmail(flags["--email"]),telemetry.trackCliOptionPhone(flags["--phone"]),telemetry.trackCliOptionAddress(flags["--address"]),telemetry.trackCliOptionCity(flags["--city"]),telemetry.trackCliOptionState(flags["--state"]),telemetry.trackCliOptionZip(flags["--zip"]),telemetry.trackCliOptionCountry(flags["--country"]),telemetry.trackCliOptionCompany(flags["--company"]),telemetry.trackCliFlagAutoRenew(flags["--auto-renew"]),telemetry.trackCliFlagNoAutoRenew(flags["--no-auto-renew"]),telemetry.trackCliOptionFormat(flags["--format"]),telemetry.trackCliFlagJson(flags["--json"]),!domainName){if(client.nonInteractive){let globalFlags=getGlobalFlagsFromArgs(client.argv.slice(2)),cmd=getCommandNamePlain(`domains buy <domain> ${globalFlags.join(" ")}`.trim());outputAgentError(client,{status:"error",reason:"missing_arguments",message:`Missing domain name. Run: ${cmd}`,next:[{command:cmd,when:"Replace <domain> with the domain to buy"}]},2)}return output_manager_default.error(`Missing domain name. Run ${getCommandName("domains --help")}`),2}if(args.length>1){let extra=args[1].toLowerCase();return usageError(client,extra==="true"||extra==="false"?"Unexpected extra argument. On/off options like --auto-renew don't take a value: pass --auto-renew or --no-auto-renew.":'Unexpected extra argument. domains buy takes one domain; quote option values that contain spaces, like --address "1 Main St".')}let formatResult=validateJsonOutput(flags);if(!formatResult.valid)return usageError(client,formatResult.error);let asJson=formatResult.jsonOutput,{domain:rootDomain,subdomain}=(0,import_tldts.parse)(domainName);if(subdomain||!rootDomain)return client.nonInteractive&&outputAgentError(client,{status:"error",reason:"invalid_domain",message:`Invalid domain name '${domainName}'. Use a registrable root domain (no subdomain).`},1),output_manager_default.error(`Invalid domain name "${domainName}". Run ${getCommandName("domains --help")}`),1;let amount=parseAmount(flags["--amount"]);if(amount instanceof Error)return usageError(client,amount.message);let fromFlags=readContactFlags(flags);if(typeof fromFlags=="string")return usageError(client,fromFlags);let valuedFlag=chargeFlagWithValue(argv,["--auto-renew","--no-auto-renew","--use-billing-details"]);if(valuedFlag)return usageError(client,valuedFlag);let useBilling=!!flags["--use-billing-details"];if(flags["--auto-renew"]&&flags["--no-auto-renew"])return usageError(client,"Can't use --auto-renew with --no-auto-renew.");let autoRenewChoice=flags["--auto-renew"]?!0:flags["--no-auto-renew"]?!1:void 0,{contextName,team}=await getScope(client),availableStamp=stamp_default(),[domainPrice,domainStatus]=await Promise.all([getDomainPrice(client,domainName),getDomainStatus(client,domainName)]);if(domainPrice instanceof Error)return reportChargeFailure(client,asJson,{reason:chargeFailureReason(domainPrice),message:domainPrice.message});if(!domainStatus.available)return reportChargeFailure(client,asJson,{reason:AGENT_REASON.DOMAIN_NOT_AVAILABLE,message:`The domain ${domainName} is unavailable.`});let{years,purchasePrice,renewalPrice}=domainPrice;if(purchasePrice===null||renewalPrice===null)return reportChargeFailure(client,asJson,{reason:AGENT_REASON.API_ERROR,message:`The price of ${domainName} was not found.`});output_manager_default.log(`The domain ${param(domainName)} is ${import_chalk.default.underline("available")} to buy under ${import_chalk.default.bold(contextName)}! ${availableStamp()}`);let billing=getBillingContact(team),contact=mergeContact(fromFlags,useBilling?billing:{}),commandOptions={team:team?.slug,useBilling,contact:fromFlags,autoRenew:autoRenewChoice,json:asJson};if(amount!==void 0&&!amountMatchesPrice(amount,purchasePrice))return reportPriceChanged(client,{verb:"buy",domain:domainName,amount,price:purchasePrice,nextCommand:buildBuyCommand(client,domainName,{...commandOptions,amount:purchasePrice,missing:missingContactFields(contact)}),json:asJson});let autoRenew,contactInformation;if(canPromptForCharge(client,asJson)){if(amount===void 0&&!await client.input.confirm(`Buy now for ${import_chalk.default.bold(formatUsd(purchasePrice))} (${formatTerm(years)})?`,!1))return 0;autoRenew=autoRenewChoice??await client.input.confirm(years===1?`Auto renew yearly for ${import_chalk.default.bold(formatUsd(renewalPrice))}?`:`Auto renew every ${years} years for ${import_chalk.default.bold(formatUsd(renewalPrice))}?`,!0),contactInformation=await collectContactInformation(client,{provided:contact,defaults:mergeContact(fromFlags,billing)})}else{let missing=missingContactFields(contact);if(amount===void 0||missing.length>0||autoRenewChoice===void 0)return requireApproval(client,{domain:domainName,team:team?.slug,contextName,price:purchasePrice,renewalPrice,years,amount,fromFlags,billing,useBilling,autoRenew:autoRenewChoice,json:asJson});if(team){let refused=refuseUnnamedTeam(client,asJson,{verb:"buy",domain:domainName,team,nextCommand:buildBuyCommand(client,domainName,{...commandOptions,amount,missing:[]})});if(refused!==void 0)return refused}autoRenew=autoRenewChoice,contactInformation={...contact,companyName:contact.companyName||void 0}}let inspectCommand=buildCommandWithGlobalFlags(client.argv,`domains inspect ${domainName}`),buyResult,purchaseStamp=stamp_default();output_manager_default.spinner("Purchasing");try{buyResult=await purchaseDomain(client,domainName,purchasePrice,years,autoRenew,contactInformation)}catch(err){output_manager_default.stopSpinner(),output_manager_default.debug(`Server response: ${(0,import_error_utils.errorToString)(err)}`);let apiError=isAPIError(err)?err:void 0;return reportChargeFailure(client,asJson,{reason:AGENT_REASON.API_ERROR,message:apiError?`Couldn't buy ${domainName}. The API returned an error (${apiError.code}). Nothing was charged.`:`Couldn't buy ${domainName}. The order wasn't sent, so nothing was charged.`},{apiMessage:apiError?.serverMessage})}return output_manager_default.stopSpinner(),buyResult instanceof DomainPriceChanged?reportPriceChanged(client,{verb:"buy",domain:domainName,amount:purchasePrice,nextCommand:buildBuyCommand(client,domainName,{...commandOptions,missing:[]}),json:asJson}):buyResult instanceof DomainChargeOutcomeUnknown?reportUnknownOutcome(client,asJson,{verb:"buy",domain:domainName,inspectCommand}):buyResult instanceof Error?reportChargeFailure(client,asJson,{reason:chargeFailureReason(buyResult),message:buyResult.message}):asJson?(client.stdout.write(`${JSON.stringify({status:AGENT_STATUS.OK,domain:domainName,years,charge:{amount:purchasePrice,currency:"USD"},orderId:buyResult.orderId,autoRenew,renewalPrice,message:`Domain ${domainName} purchased.`},null,2)}
14
- `),0):(client.stdout.write(`${domainName}
15
- `),output_manager_default.success(`Domain ${param(domainName)} purchased ${purchaseStamp()}`),output_manager_default.log(`Charged ${formatUsd(purchasePrice)} for ${formatTerm(years)}. Registered to ${contactInformation.firstName} ${contactInformation.lastName} (${contactInformation.email}).`),output_manager_default.note(`You may now use your domain as an alias to your deployments. Run ${getCommandName("alias --help")}`),0)}function requireApproval(client,opts){let{domain,price,renewalPrice,years,billing,autoRenew}=opts,shown=billingFieldsUsed(opts.fromFlags,billing),shownFields=CONTACT_FIELDS.filter(({field})=>shown[field]),hasBilling=shownFields.length>0,useBilling=opts.useBilling||hasBilling,missing=missingContactFields(mergeContact(opts.fromFlags,useBilling?billing:{})),missingFlags=missing.map(flagFor),missingNow=missingContactFields(mergeContact(opts.fromFlags,opts.useBilling?billing:{})),needs=[...opts.amount===void 0?["an approved price (--amount)"]:[],...autoRenew===void 0?["an auto-renew choice (--auto-renew or --no-auto-renew)"]:[],...missingNow.length>0?["registrant details"]:[]],headline=`Can't buy ${domain} without ${needs.join(" and ")} in non-interactive mode.`,every=years===1?"year":formatTerm(years),renewal=autoRenew===void 0?`Auto-renew isn't chosen: --auto-renew renews it every ${every} (currently ${formatUsd(renewalPrice)}), --no-auto-renew lets it expire.`:autoRenew?`Then it auto-renews every ${every} (currently ${formatUsd(renewalPrice)}).`:"Auto-renew is off.",priceLine=`Price: ${formatUsd(price)} for ${formatTerm(years)}, charged to ${opts.contextName}. ${renewal}`,stillNeeded=missingFlags.length>0?`Still needed: ${missingFlags.join(", ")}.`:"",next=(autoRenew===void 0?[!0,!1]:[autoRenew]).map(renews=>({command:buildBuyCommand(client,domain,{team:opts.team,amount:price,useBilling,contact:opts.fromFlags,missing,autoRenew:renews,json:opts.json}),when:`Only after a human approves: charges ${formatUsd(price)} now${renews?` and renews every ${every} (currently ${formatUsd(renewalPrice)})`:", with no renewal"}`}));writeChargeAction(client,opts.json,{status:AGENT_STATUS.ACTION_REQUIRED,reason:opts.amount===void 0||autoRenew===void 0?AGENT_REASON.CONFIRMATION_REQUIRED:AGENT_REASON.MISSING_REQUIREMENTS,action:AGENT_ACTION.CONFIRMATION_REQUIRED,message:[headline,priceLine,hasBilling?`The team's billing info has the registrant ${shownFields.map(({label})=>label.toLowerCase()).join(", ")} (data.billingDetails). Confirm them with the user; --use-billing-details uses them, and any contact option you pass replaces them.`:"",stillNeeded].filter(Boolean).join(" "),userActionRequired:!0,hint:"Show the user the price, renewal terms, and registrant details, and get their approval before running next[]. Domain registrations are non-refundable.",data:{domain,...opts.team&&{team:opts.team},amount:price,currency:"USD",years,autoRenew:autoRenew??null,renewalAmount:renewalPrice,...hasBilling&&{billingDetails:shown}},missing:[...opts.amount===void 0?["--amount"]:[],...autoRenew===void 0?["--auto-renew|--no-auto-renew"]:[],...useBilling&&!opts.useBilling?["--use-billing-details"]:[],...missingFlags],next});let billingRows=hasBilling?[`From ${opts.contextName}'s billing info:`,...shownFields.map(({field,label})=>` ${label.padEnd(10)}${(0,import_strip_ansi.default)(shown[field])}`)]:[];return printChargeRecovery([headline,priceLine,...billingRows,stillNeeded].filter(Boolean).join(`
16
- `),next.length>1?"Once a person approves the price, details, and auto-renew choice, run one of":"Once a person approves the price and details, run",next.map(({command})=>command).join(`
17
- `)),1}async function removeAliasById(client,id){return client.fetch(`/now/aliases/${id}`,{method:"DELETE"})}function isDomainExternal(domain){return domain.serviceType!=="zeit.world"}function getProjectDomain(client,projectIdOrName,domainName,options={}){return fetchProjectDomain(client,`/v9/projects/${encodeURIComponent(projectIdOrName)}/domains/${encodeURIComponent(domainName)}`,options)}function getProjectDomainByName(client,domainName,options={}){return fetchProjectDomain(client,`/project-domains/${encodeURIComponent(domainName)}`,options)}function verifyProjectDomain(client,projectIdOrName,domainName,options={}){return fetchProjectDomain(client,`/v9/projects/${encodeURIComponent(projectIdOrName)}/domains/${encodeURIComponent(domainName)}/verify`,{...options,method:"POST"})}async function fetchProjectDomain(client,url,init){try{return await client.fetch(url,init)}catch(err){if(isAPIError(err)&&err.status<500)return err;throw err}}async function deleteCertById(client,id){return client.fetch(`/v5/certs/${id}`,{method:"DELETE"})}async function getDomains(client,next,limit=20){let domainUrl=`/v5/domains?limit=${limit}`;return next&&(domainUrl+=`&until=${next}`),await client.fetch(domainUrl)}function teamMemberLabel(member){return member.username||member.email||member.uid}function fetchMembers(client,teamId,opts){let query=new URLSearchParams({limit:"100"});opts.search&&query.set("search",opts.search);for(let id of opts.userIds??[])query.append("filterByUserIds",id);return client.fetch(`/v2/teams/${encodeURIComponent(teamId)}/members?${query}`).then(res=>res.members??[])}async function getTeamMemberByIdentifier(client,teamId,identifier){let needle=identifier.toLowerCase(),match=(await fetchMembers(client,teamId,{search:identifier})).find(member=>member.uid===identifier||member.email?.toLowerCase()===needle||member.username?.toLowerCase()===needle);return match||((await fetchMembers(client,teamId,{userIds:[identifier]})).find(member=>member.uid===identifier)??null)}async function getTeamMembersByIds(client,teamId,uids){let chunks=[];for(let i=0;i<uids.length;i+=20)chunks.push(uids.slice(i,i+20));let pages=await Promise.all(chunks.map(userIds=>fetchMembers(client,teamId,{userIds})));return new Map(pages.flat().map(member=>[member.uid,member]))}export{removeAliasById,isDomainExternal,getProjectDomain,getProjectDomainByName,verifyProjectDomain,getWebhook,TEAM_BUDGET,thresholdsForSet,hasPauseThreshold,pausePercentsOutside100,budgetAmountDollars,spendDollars,percentUsed,spendPayload,NO_RETRY,budgetPauses,budgetStatePayload,setSavedReceipt,removeReceipt,toBudgetState,formatUsdWhole,formatUsd,listBudgets,findBudget,setBudget,removeBudget,getTeamSpend,listBudgetAlerts,chargeFailureReason,parseAmount,amountMatchesPrice,formatAmountArg,formatTerm,canPromptForCharge,printChargeRecovery,writeChargeAction,reportUsageError,reportChargeFailure,reportUnknownOutcome,refuseUnnamedTeam,reportPriceChanged,buy,deleteCertById,getDomains,teamMemberLabel,getTeamMemberByIdentifier,getTeamMembersByIds};