vercel 62.5.0 → 62.7.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 (169) hide show
  1. package/README.md +2 -0
  2. package/dist/chunks/{add-SUDX7R63.js → add-OXHI3PVM.js} +1 -1
  3. package/dist/chunks/{add-UNQJB3SM.js → add-P3FNSVMN.js} +1 -1
  4. package/dist/chunks/{add-HN4OXQLM.js → add-WUT6QU2J.js} +1 -1
  5. package/dist/chunks/{build-BRMOQZHW.js → build-J6VW3KHT.js} +1 -1
  6. package/dist/chunks/{chunk-B3MYIRFE.js → chunk-2KSNNB4B.js} +1 -1
  7. package/dist/chunks/{chunk-QMTPSHRV.js → chunk-3XLK5ZPD.js} +5 -5
  8. package/dist/chunks/{chunk-TEYG3UZQ.js → chunk-3ZMD36SU.js} +1 -1
  9. package/dist/chunks/{chunk-TG6SMD7D.js → chunk-46UCIIJN.js} +1 -1
  10. package/dist/chunks/{chunk-XMV7OSFJ.js → chunk-4H5LPD3T.js} +1 -1
  11. package/dist/chunks/{chunk-PQV3QNDG.js → chunk-4KQBTIMZ.js} +1 -1
  12. package/dist/chunks/{chunk-QCOPZAUC.js → chunk-4QSVBLAS.js} +1 -1
  13. package/dist/chunks/{chunk-WNG72BRT.js → chunk-5AXNGQJC.js} +1 -1
  14. package/dist/chunks/{chunk-DOWDSQPG.js → chunk-5JN3FWV2.js} +1 -1
  15. package/dist/chunks/{chunk-PY6YO4MR.js → chunk-5M45EBVX.js} +2 -2
  16. package/dist/chunks/{chunk-X7F3567X.js → chunk-5ZQF5WIO.js} +1 -1
  17. package/dist/chunks/{chunk-6LOW7CGD.js → chunk-6DJ6PMEK.js} +1 -1
  18. package/dist/chunks/{chunk-NDZOUAFO.js → chunk-6EW4BCMR.js} +1 -1
  19. package/dist/chunks/{chunk-RHUAFRZX.js → chunk-A73N3QKT.js} +1 -1
  20. package/dist/chunks/{chunk-CAAD55US.js → chunk-AEEEEOYS.js} +1 -1
  21. package/dist/chunks/chunk-APSIFBD4.js +7 -0
  22. package/dist/chunks/{chunk-MCOJUSDV.js → chunk-B2L2QTXT.js} +1 -1
  23. package/dist/chunks/{chunk-ZXDS7NJI.js → chunk-BHBNTQRT.js} +1 -1
  24. package/dist/chunks/{chunk-OYWYHFXV.js → chunk-CF2PIWRO.js} +1 -1
  25. package/dist/chunks/{chunk-733ZK37Y.js → chunk-CR2ZQBDU.js} +1 -1
  26. package/dist/chunks/{chunk-5CSWEE7J.js → chunk-CRITS7IX.js} +1 -1
  27. package/dist/chunks/{chunk-4BRFG5HP.js → chunk-DGH5CD6D.js} +1 -1
  28. package/dist/chunks/{chunk-PD3ZD52Q.js → chunk-ECMWDZTJ.js} +4 -4
  29. package/dist/chunks/{chunk-AMSFO2VK.js → chunk-EQ24OC5G.js} +1 -1
  30. package/dist/chunks/{chunk-D6JBONML.js → chunk-FAJB3JV5.js} +1 -1
  31. package/dist/chunks/chunk-FB3U3RAM.js +9 -0
  32. package/dist/chunks/{chunk-72YTT324.js → chunk-FEEG5UU2.js} +1 -1
  33. package/dist/chunks/{chunk-5NSYN7IO.js → chunk-FQJCWZ4C.js} +1 -1
  34. package/dist/chunks/{chunk-LGFCHU75.js → chunk-GMTLVRN7.js} +1 -1
  35. package/dist/chunks/{chunk-UXAYYF6I.js → chunk-GUTZ45DE.js} +1 -1
  36. package/dist/chunks/{chunk-5QVOIOPN.js → chunk-I5JR7PIO.js} +1 -1
  37. package/dist/chunks/{chunk-ST2X5QRA.js → chunk-IEKUTNKT.js} +1 -1
  38. package/dist/chunks/{chunk-L57FNGBV.js → chunk-K2RQEX7N.js} +1 -1
  39. package/dist/chunks/{chunk-O552UV4H.js → chunk-KXMVFT2K.js} +1 -1
  40. package/dist/chunks/{chunk-ZX2JOGOA.js → chunk-LCH3SUJ7.js} +1 -1
  41. package/dist/chunks/{chunk-HVJERSGE.js → chunk-LWQVT6YW.js} +1 -1
  42. package/dist/chunks/chunk-LXNMVWYO.js +9 -0
  43. package/dist/chunks/{chunk-MQW6DKD2.js → chunk-LYKPLTZ7.js} +1 -1
  44. package/dist/chunks/chunk-M3HO5CTQ.js +7 -0
  45. package/dist/chunks/{chunk-WJZV7BI4.js → chunk-M4IVLSNQ.js} +1 -1
  46. package/dist/chunks/{chunk-ILR6YA2A.js → chunk-M5NWE7EO.js} +1 -1
  47. package/dist/chunks/{chunk-3J2P52OU.js → chunk-MCBO6LL7.js} +2 -2
  48. package/dist/chunks/{chunk-2FQCZE6S.js → chunk-MIG67KZ2.js} +1 -1
  49. package/dist/chunks/{chunk-4WS3D23J.js → chunk-NM67DIPQ.js} +1 -1
  50. package/dist/chunks/{chunk-W6M24BQ4.js → chunk-NYFB3EYC.js} +1 -1
  51. package/dist/chunks/chunk-O3UY73UQ.js +7 -0
  52. package/dist/chunks/chunk-ONPJXQQ6.js +10 -0
  53. package/dist/chunks/chunk-ORJGSUQT.js +9 -0
  54. package/dist/chunks/{chunk-HRQQ2N5B.js → chunk-PE7QZUY7.js} +1 -1
  55. package/dist/chunks/{chunk-MR423MWE.js → chunk-Q2YQSMIB.js} +6 -6
  56. package/dist/chunks/{chunk-C7SLCL3Z.js → chunk-Q7AYTXUR.js} +1 -1
  57. package/dist/chunks/{chunk-EPBZNTIJ.js → chunk-QZ2G3AMY.js} +1 -1
  58. package/dist/chunks/{chunk-P3ZZVBZQ.js → chunk-RMZJP32R.js} +1 -1
  59. package/dist/chunks/{chunk-P3YADO62.js → chunk-RSLPLRVK.js} +1 -1
  60. package/dist/chunks/{chunk-AJT64XO2.js → chunk-RYMRVMGD.js} +2 -2
  61. package/dist/chunks/{chunk-MHKDLJEI.js → chunk-SMC4MGY5.js} +1 -1
  62. package/dist/chunks/{chunk-ZFYW4CEL.js → chunk-SR5XEF7L.js} +1 -1
  63. package/dist/chunks/{chunk-PTKSYVXM.js → chunk-TAT5WGDZ.js} +1 -1
  64. package/dist/chunks/{chunk-GXNSAACA.js → chunk-THB7KY2N.js} +1 -1
  65. package/dist/chunks/{chunk-TNGDWVMX.js → chunk-UKMRJIIZ.js} +1 -1
  66. package/dist/chunks/{chunk-MUJP4VPF.js → chunk-UKVEXM5O.js} +1 -1
  67. package/dist/chunks/{chunk-MJWC4W6J.js → chunk-ULHETT7U.js} +1 -1
  68. package/dist/chunks/{chunk-2E6XILZC.js → chunk-UOZHC2ZG.js} +1 -1
  69. package/dist/chunks/{chunk-RERUTI3O.js → chunk-V426AGVC.js} +2 -2
  70. package/dist/chunks/{chunk-6ALOD3OE.js → chunk-V6Y6UK6B.js} +2 -4
  71. package/dist/chunks/{chunk-DWPCZHDT.js → chunk-VWBJWUYQ.js} +1 -1
  72. package/dist/chunks/{chunk-TN4IR2LY.js → chunk-WNTA7DCC.js} +1 -1
  73. package/dist/chunks/{chunk-VMHUBZRU.js → chunk-XQQ7DTQG.js} +1 -1
  74. package/dist/chunks/{chunk-UKC3NSS6.js → chunk-YEWZFZ2O.js} +1 -1
  75. package/dist/chunks/{chunk-P4BGC5RL.js → chunk-YGMOJBSP.js} +2 -2
  76. package/dist/chunks/{chunk-65Z5UPUC.js → chunk-YKOIVWZI.js} +1 -1
  77. package/dist/chunks/{chunk-X7U35FBE.js → chunk-YTIANIL7.js} +1 -1
  78. package/dist/chunks/chunk-YUDKK2QJ.js +7 -0
  79. package/dist/chunks/{chunk-DQXGNNPB.js → chunk-YZBYL3SH.js} +1 -1
  80. package/dist/chunks/{chunk-4AY4YYKS.js → chunk-ZN37NQM4.js} +1 -1
  81. package/dist/chunks/{chunk-W45NZSSK.js → chunk-ZNQI6M3S.js} +1 -1
  82. package/dist/chunks/{clear-M6LODAMD.js → clear-VMJVLPVR.js} +1 -1
  83. package/dist/chunks/{compile-vercel-config-NBX5UWHW.js → compile-vercel-config-YCLXPL5H.js} +1 -1
  84. package/dist/chunks/{config-Q3TRA4NK.js → config-JPX6NJMJ.js} +1 -1
  85. package/dist/chunks/{config-YQ7FIAFK.js → config-YMUUPO3R.js} +1 -1
  86. package/dist/chunks/config-validator.mjs +1 -1
  87. package/dist/chunks/{connect-git-provider-67DJOI6X.js → connect-git-provider-KLSBCSD2.js} +1 -1
  88. package/dist/chunks/{delete-KSZ7R5V6.js → delete-E7J4B5E5.js} +1 -1
  89. package/dist/chunks/{delete-NRWKSTCN.js → delete-EEY7M6XT.js} +1 -1
  90. package/dist/chunks/{detect-services-MWYUJZJZ.js → detect-services-E2TWAKQS.js} +1 -1
  91. package/dist/chunks/{disable-BUGWQUS7.js → disable-5TKY6JK2.js} +1 -1
  92. package/dist/chunks/{discard-J5O3C753.js → discard-ALSOF66H.js} +1 -1
  93. package/dist/chunks/{edit-DMOIBVEP.js → edit-2M3KEE3H.js} +1 -1
  94. package/dist/chunks/{edit-YRWAXGEI.js → edit-ISUCMYNW.js} +1 -1
  95. package/dist/chunks/{enable-IL27VHSU.js → enable-2QTTTYQD.js} +1 -1
  96. package/dist/chunks/{exec-GYSSNCNK.js → exec-XIQJ2A3J.js} +1 -1
  97. package/dist/chunks/{export-HBUUGMGE.js → export-PV2NDS7C.js} +1 -1
  98. package/dist/chunks/{future-BXETJ6CT.js → future-SQS5POAL.js} +1 -1
  99. package/dist/chunks/{generate-cert-for-deploy-K5QDHEEQ.js → generate-cert-for-deploy-4EJRA7MS.js} +1 -1
  100. package/dist/chunks/{image-M2XIQYXT.js → image-6GL2UOA2.js} +1 -1
  101. package/dist/chunks/{import-builders-UGIWTKRS.js → import-builders-KAZMYQCR.js} +1 -1
  102. package/dist/chunks/{inspect-SUEMHSB6.js → inspect-3HGROSZO.js} +1 -1
  103. package/dist/chunks/{inspect-XANEFWYN.js → inspect-FK6GC5JZ.js} +1 -1
  104. package/dist/chunks/{inspect-TDHISMRV.js → inspect-LZMU7RIU.js} +1 -1
  105. package/dist/chunks/{inspect-HASOG2PB.js → inspect-ORVORGUM.js} +1 -1
  106. package/dist/chunks/{inspect-OGUGKPVK.js → inspect-UNL54246.js} +1 -1
  107. package/dist/chunks/{list-32NXD7OW.js → list-EWJI2WSQ.js} +1 -1
  108. package/dist/chunks/{list-Q566PTT4.js → list-FVUIZPC7.js} +1 -1
  109. package/dist/chunks/{list-Z6DRFZ7F.js → list-WOUJM4WR.js} +1 -1
  110. package/dist/chunks/{login-GPCBSMHV.js → login-IJLY5XTT.js} +1 -1
  111. package/dist/chunks/{login-A6R3RQIW.js → login-JREQ7SLY.js} +1 -1
  112. package/dist/chunks/{logs-L33R4G67.js → logs-Z7IMGFO2.js} +1 -1
  113. package/dist/chunks/{ls-VSK2ZFSY.js → ls-4COX4SMJ.js} +1 -1
  114. package/dist/chunks/{ls-6CYMQBX3.js → ls-6CD2OQGA.js} +1 -1
  115. package/dist/chunks/{ls-CTIACPC5.js → ls-6DOYSBQM.js} +1 -1
  116. package/dist/chunks/{ls-DUCIK4E6.js → ls-AHT2FRGM.js} +1 -1
  117. package/dist/chunks/{ls-R442RADW.js → ls-LXBUE4LZ.js} +1 -1
  118. package/dist/chunks/{ls-JPL3AFIM.js → ls-RBWPVJ5G.js} +1 -1
  119. package/dist/chunks/{ls-GDR45ANC.js → ls-W5SJUIHD.js} +1 -1
  120. package/dist/chunks/{mutate-MUWQVZKM.js → mutate-TVUHBRBK.js} +1 -1
  121. package/dist/chunks/{notifications-YKGIFXKO.js → notifications-OXOSD6UK.js} +1 -1
  122. package/dist/chunks/{open-OJAIEDS5.js → open-SWPHB54M.js} +1 -1
  123. package/dist/chunks/{openapi-Y4NWAKUM.js → openapi-32XHDVJL.js} +1 -1
  124. package/dist/chunks/{permissions-LWKZBBU7.js → permissions-A4WMGETJ.js} +1 -1
  125. package/dist/chunks/{prompt-missing-credentials-O3GGMOZH.js → prompt-missing-credentials-6IXO6VND.js} +1 -1
  126. package/dist/chunks/{publish-JHNLZT6K.js → publish-2CS4RYJW.js} +1 -1
  127. package/dist/chunks/pull-WWUH4M5V.js +7 -0
  128. package/dist/chunks/{purchase-domain-if-available-CJK3G4DT.js → purchase-domain-if-available-TAXCYIV7.js} +1 -1
  129. package/dist/chunks/{push-MUMGVOSY.js → push-OPRW7M4I.js} +1 -1
  130. package/dist/chunks/{query-2TTSDOFF.js → query-22PGP7BC.js} +1 -1
  131. package/dist/chunks/{reauthenticate-S47X66LM.js → reauthenticate-LMR25CIE.js} +1 -1
  132. package/dist/chunks/{reorder-NGBZWNZH.js → reorder-Y3NMEA2S.js} +1 -1
  133. package/dist/chunks/{reply-5WF5YHOM.js → reply-YEZHST2Q.js} +1 -1
  134. package/dist/chunks/{resolve-MPZBUK5V.js → resolve-QC37E2EB.js} +1 -1
  135. package/dist/chunks/{restore-NVY4A3T3.js → restore-RMQVGYQB.js} +1 -1
  136. package/dist/chunks/{rm-ZO5JP3GF.js → rm-42U6SPVV.js} +1 -1
  137. package/dist/chunks/{rm-HFJCOK2D.js → rm-43MPIHP3.js} +1 -1
  138. package/dist/chunks/{rm-QXQ2AD4R.js → rm-4MSUYUEP.js} +1 -1
  139. package/dist/chunks/{rm-DB5K2RI7.js → rm-DPHE34CD.js} +1 -1
  140. package/dist/chunks/{rm-SMKVHN75.js → rm-JHWXYHJY.js} +1 -1
  141. package/dist/chunks/{routes-KO5NFCCJ.js → routes-2GTCE542.js} +1 -1
  142. package/dist/chunks/{rule-inspect-VZARLRS3.js → rule-inspect-7LIPL5YY.js} +1 -1
  143. package/dist/chunks/{rules-G2WFYCPB.js → rules-6KWBVUF2.js} +1 -1
  144. package/dist/chunks/{schema-SVYU72YU.js → schema-OUFU5V7Z.js} +1 -1
  145. package/dist/chunks/{schema-G6BOZBNB.js → schema-S2DE7S5N.js} +1 -1
  146. package/dist/chunks/{select-org-2W67WKBG.js → select-org-EL66MG67.js} +1 -1
  147. package/dist/chunks/{set-ILVKMTUD.js → set-VXSNREF4.js} +1 -1
  148. package/dist/chunks/setup-and-link-I7SGZNGO.js +7 -0
  149. package/dist/chunks/{tags-C34XXMYO.js → tags-AGLQDT3Z.js} +1 -1
  150. package/dist/chunks/{types-MATC4UQL.js → types-GQNKYZJH.js} +1 -1
  151. package/dist/chunks/{update-IVWOZO4P.js → update-TI3YRVQT.js} +1 -1
  152. package/dist/commands/build/index.js +7 -7
  153. package/dist/commands/deploy/index.js +44 -28
  154. package/dist/commands/dev/index.js +8 -8
  155. package/dist/commands/env/index.js +1 -1
  156. package/dist/commands/link/index.js +1 -1
  157. package/dist/commands/list/index.js +1 -1
  158. package/dist/commands-bulk.js +35 -39
  159. package/dist/index.js +6 -5
  160. package/dist/internal-build.js +1 -1
  161. package/dist/version.mjs +1 -1
  162. package/package.json +54 -53
  163. package/dist/chunks/chunk-2Z47VG5H.js +0 -9
  164. package/dist/chunks/chunk-EA3BJUUK.js +0 -7
  165. package/dist/chunks/chunk-EJNFKH6Y.js +0 -10
  166. package/dist/chunks/chunk-NTRM6VO6.js +0 -9
  167. package/dist/chunks/chunk-SX64OM5A.js +0 -7
  168. package/dist/chunks/pull-E4K6BVQW.js +0 -7
  169. package/dist/chunks/setup-and-link-VFCYLLB5.js +0 -7
@@ -1,10 +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{quoteArg}from"./chunk-BKV35LVB.js";import{getGlobalFlagsFromArgs,stripSensitiveAuthArgs,suggestionFlagTakesSeparateValue}from"./chunk-5IPBCD7K.js";import{teamCache}from"./chunk-VOZEB6PD.js";import{LinkRequiredError,ProjectNotFound,isAPIError}from"./chunk-4WS3D23J.js";import{getCommandName,packageName}from"./chunk-FI772UVH.js";import{require_dist}from"./chunk-QGIQK47P.js";import{pkg_default}from"./chunk-AVSPFBLM.js";import{__toESM}from"./chunk-6L236MNA.js";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",API_ERROR:"api_error",RATE_LIMITED:"rate_limited",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",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",SCHEDULES_NOT_ENABLED:"schedules_not_enabled",SCHEDULE_ALREADY_EXISTS:"schedule_already_exists",SCHEDULE_COMPLETED:"schedule_completed",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",NOT_TEAM_MEMBER:"not_team_member",INVALID_ROLE_COMBINATION:"invalid_role_combination"},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"};import{randomUUID}from"node:crypto";function agentErrorMetadata(client){return client.isAgent?{cliVersion:pkg_default.version,invocationId:client.telemetryEventStore?.currentInvocationId}:{}}function agentErrorCategory(reason){return/^(forbidden|permission_denied|scope_not_accessible)$/i.test(reason)?"permission":/^(payment_required|plan_upgrade_required)$/i.test(reason)?"billing":/^(not_authorized|login_required)$/i.test(reason)?"authentication":/^(rate_limited|too_many_requests)$/i.test(reason)?"rate_limit":/^(invalid_arguments|unknown_command|ARG_UNKNOWN_OPTION)$/i.test(reason)?"usage":/^(link_required|project_not_found|not_found)$/i.test(reason)?"project_context":"other"}function trackAgentError(client,error){!client.isAgent||!client.telemetryEventStore||client.telemetryEventStore.add({id:randomUUID(),eventTime:Date.now(),key:"agent_error",value:JSON.stringify({invocationId:client.telemetryEventStore.currentInvocationId,category:agentErrorCategory(error.reason),hasRecovery:!!error.hint,retryable:error.retryable,userActionRequired:error.userActionRequired})})}function trackAgentCommandOutcome(client,exitCode){if(!client.isAgent||!client.telemetryEventStore)return;let args=client.argv.slice(2),separator=args.indexOf("--"),help=args.slice(0,separator<0?args.length:separator).some(arg=>arg==="--help"||arg==="-h");client.telemetryEventStore.add({id:randomUUID(),eventTime:Date.now(),key:"agent_command_outcome",value:JSON.stringify({invocationId:client.telemetryEventStore.currentInvocationId,exitCode,outcome:help&&(exitCode===0||exitCode===2)?"help":exitCode===0?"success":"failure"})})}var import_error_utils=__toESM(require_dist(),1);var OBSERVABILITY_PLUS_PURCHASE_COMMAND="buy addon observability-plus";function mentionsObservabilityPlus(message){return/observability\s+plus/i.test(message)}function observabilityPlusPurchaseHint(){return`Subscribe with ${getCommandName(OBSERVABILITY_PLUS_PURCHASE_COMMAND)}.`}function observabilityPlusPurchaseFix(){return{command:OBSERVABILITY_PLUS_PURCHASE_COMMAND,hint:observabilityPlusPurchaseHint(),when:"a person has approved buying the add-on"}}function observabilityPlusRecovery(message){if(mentionsObservabilityPlus(message))return/(?:disabled|switched off|re-enable)/i.test(message)?{hint:"Observability Plus is disabled. Ask a team owner to enable it for the intended team or project, then retry. A new subscription may not be needed."}:/(?:quota|usage limit|query limit)/i.test(message)?{hint:"The usage limit was reached. Ask a team owner to review the limit before retrying."}:{...observabilityPlusPurchaseFix(),hint:`Check whether Observability Plus is disabled for this project or the team needs a subscription. Enable it if already subscribed. Otherwise, ${observabilityPlusPurchaseHint()}`,when:"the team has no subscription and a person has approved buying the add-on"}}function errorContext(client){let teamId=client?.config?.currentTeam;return teamId?client?.teams?.find(team=>team.id===teamId||team.slug===teamId)?.slug??teamCache.get(teamId)?.slug:client?.user?.username||client?.user?.email}function getErrorRecovery(error,client){let reason=error.reason?.toLowerCase(),scope=errorContext(client);if(error.status===403||["forbidden","permission_denied","scope_not_accessible"].includes(reason??""))return{hint:`Check that the selected team is correct${scope?` (${scope})`:""}. If it is, ask a team owner to grant the required access. Retry only after the team or access changes.`,retryable:!1,userActionRequired:!0,...scope&&{scope},...error.action&&{action:error.action},...error.resource&&{resource:error.resource}};if(error.status===401||reason==="not_authorized")return{hint:"Provide valid credentials for the intended account and team, then retry.",retryable:!1,userActionRequired:!0};if(error.status===402||["payment_required","plan_upgrade_required"].includes(reason??"")){let message=error.serverMessage??error.message??"";return{hint:observabilityPlusRecovery(message)?.hint??(/(?:disabled|switched off|re-enable)/i.test(message)?"Enable the feature for the selected team or project, then retry.":/(?:overdue|payment method|unpaid|balance)/i.test(message)?"Ask a team owner to resolve the billing issue, then retry.":/(?:plan|subscription)/i.test(message)?"Ask a team owner to confirm the required plan or subscription before changing billing. Retry after access is enabled.":"Check the billing or feature requirement reported above with a team owner. Retry after that requirement is resolved."),retryable:!1,userActionRequired:!0,...scope&&{scope}}}if(error.status===429||reason==="rate_limited"){let wait=error.retryAfterMs;return{hint:typeof wait=="number"&&Number.isFinite(wait)&&wait>0?`Wait at least ${Math.ceil(wait/1e3)} seconds before trying again.`:wait==="never"?"This request cannot be retried with the current limit. Ask a team owner to review the limit.":"The request limit was reached. Wait before trying again; no retry time was provided.",retryable:wait!=="never",...typeof wait=="number"&&Number.isFinite(wait)&&wait>0&&{retryAfterMs:wait}}}return{}}function buildCommandWithYes(argv,pkgName=packageName){let args=stripSensitiveAuthArgs(argv.slice(2)),out=args.some(a=>a==="--yes"||a==="-y")?args:[...args,"--yes"];return`${pkgName} ${out.join(" ")}`.trim()}function redactEnvValueArgs(argv){let redacted=[...argv];for(let i=0;i<redacted.length;i++)redacted[i]==="--value"&&i+1<redacted.length?(redacted[i+1]='"<value>"',i++):redacted[i].startsWith("--value=")&&(redacted[i]='--value="<value>"');return redacted}var GLOBAL_FLAG_NAMES=new Set(["--cwd","--config","--yes","-y","--non-interactive","--scope","--team","-S","-T"]),GLOBAL_FLAG_SHORTHANDS={"-y":"--yes","-S":"--scope","-T":"--team"};function canonicalGlobalFlagName(name){return GLOBAL_FLAG_SHORTHANDS[name]??name}function getGlobalFlagsFromArgv(argv){let args=getGlobalFlagsFromArgs(argv.slice(2),{preserveConfig:!0,preserveYes:!0}),out=[];for(let i=0;i<args.length;i++){let arg=args[i],name=arg.startsWith("--")?arg.split("=")[0]:arg;GLOBAL_FLAG_NAMES.has(name)&&(out.push(arg),suggestionFlagTakesSeparateValue(name)&&!arg.includes("=")&&i+1<args.length&&!args[i+1].startsWith("-")&&(out.push(args[i+1]),i++))}return out}function omitGlobalFlagsFromArgs(args){let safeArgs=stripSensitiveAuthArgs(args),out=[];for(let i=0;i<safeArgs.length;i++){let arg=safeArgs[i],name=arg.startsWith("--")?arg.split("=")[0]:arg;if(GLOBAL_FLAG_NAMES.has(name)){suggestionFlagTakesSeparateValue(name)&&!arg.includes("=")&&i+1<safeArgs.length&&!safeArgs[i+1].startsWith("-")&&i++;continue}out.push(arg)}return out}function buildIntegrationCommandTailFromArgv(argv){let args=argv.slice(2),idx=args.indexOf("integration");return idx===-1?"integration":omitGlobalFlagsFromArgs(args.slice(idx)).join(" ")}function buildCommandWithGlobalFlags(argv,commandTemplate,pkgName=packageName,options){let preserved=options?.globalFlags==="all"?getGlobalFlagsFromArgs(argv.slice(2),{preserveProject:options.preserveProject}):getGlobalFlagsFromArgv(argv);if(options?.globalFlags!=="all"&&options?.preserveProject){let globalArgs=getGlobalFlagsFromArgs(argv.slice(2)),contextArgs=getGlobalFlagsFromArgs(argv.slice(2),{preserveProject:!0});preserved.push(...contextArgs.slice(globalArgs.length))}let exclude=new Set(commandTemplate.split(/\s+/).filter(token=>token.startsWith("-")).map(token=>canonicalGlobalFlagName(token.split("=")[0])));for(let flag of options?.excludeFlags??[])exclude.add(canonicalGlobalFlagName(flag));if(exclude.size){let out=[];for(let i=0;i<preserved.length;i++){let arg=preserved[i],name=arg.startsWith("--")?arg.split("=")[0]:arg;if(exclude.has(canonicalGlobalFlagName(name))){!arg.includes("=")&&i+1<preserved.length&&!preserved[i+1].startsWith("-")&&i++;continue}out.push(arg)}preserved=out}let base=`${pkgName} ${commandTemplate}`;return preserved.length===0?base:options?.prependGlobalFlags?`${pkgName} ${preserved.join(" ")} ${commandTemplate}`:`${base} ${preserved.join(" ")}`}function withGlobalFlags(client,commandTemplate,options={}){return buildCommandWithGlobalFlags(client.argv,commandTemplate,packageName,{globalFlags:"all",preserveProject:options.preserveProject})}function getPreservedArgsAfterEnvSubcommand(argv,subcommands,positionalCount){let args=stripSensitiveAuthArgs(argv.slice(2)),envIdx=args.findIndex((arg,index)=>arg==="env"&&subcommands.includes(args[index+1])),subcommandIdx=envIdx+1;if(envIdx===-1)return args;let preserved=[],positionals=0,optionsEnded=!1;for(let i=subcommandIdx+1;i<args.length;i++){let arg=args[i];if(arg==="--"&&!optionsEnded){optionsEnded=!0;continue}if(!optionsEnded&&arg.startsWith("-")){preserved.push(arg),!arg.includes("=")&&suggestionFlagTakesSeparateValue(arg)&&i+1<args.length&&!args[i+1].startsWith("-")&&preserved.push(args[++i]);continue}if(positionals<positionalCount){positionals++;continue}optionsEnded&&!preserved.includes("--")&&preserved.push("--"),preserved.push(arg)}return preserved}function omitPreservedFlagsAlreadyInTemplate(args,commandTemplate){let templateFlags=new Set(commandTemplate.split(/\s+/).filter(token=>token.startsWith("-")).map(token=>canonicalGlobalFlagName(token.split("=")[0]))),out=[];for(let i=0;i<args.length;i++){let arg=args[i],name=arg.startsWith("-")?arg.split("=")[0]:arg;if(!templateFlags.has(canonicalGlobalFlagName(name))){out.push(arg);continue}!arg.includes("=")&&suggestionFlagTakesSeparateValue(name)&&i+1<args.length&&!args[i+1].startsWith("-")&&i++}return out}function getPreservedArgsForEnvAdd(argv){return getPreservedArgsAfterEnvSubcommand(argv,["add"],3)}function buildEnvAddCommandWithPreservedArgs(argv,commandTemplate,pkgName=packageName){let preserved=omitPreservedFlagsAlreadyInTemplate(getPreservedArgsForEnvAdd(argv),commandTemplate),base=`${pkgName} ${commandTemplate}`;return preserved.length===0?base:`${base} ${preserved.map(quoteArg).join(" ")}`}function getPreservedArgsForEnvPull(argv){return getPreservedArgsAfterEnvSubcommand(argv,["pull"],1)}function getPreservedArgsForEnvRm(argv){return getPreservedArgsAfterEnvSubcommand(argv,["rm","remove"],3)}function buildEnvRmCommandWithPreservedArgs(argv,commandTemplate,pkgName=packageName){let preserved=omitPreservedFlagsAlreadyInTemplate(getPreservedArgsForEnvRm(argv),commandTemplate),base=`${pkgName} ${commandTemplate}`;return preserved.length===0?base:`${base} ${preserved.map(quoteArg).join(" ")}`}function getPreservedArgsForEnvUpdate(argv){return getPreservedArgsAfterEnvSubcommand(argv,["update"],3)}function buildEnvUpdateCommandWithPreservedArgs(argv,commandTemplate,pkgName=packageName){let preserved=omitPreservedFlagsAlreadyInTemplate(getPreservedArgsForEnvUpdate(argv),commandTemplate),base=`${pkgName} ${commandTemplate}`;return preserved.length===0?base:`${base} ${preserved.map(quoteArg).join(" ")}`}function buildCommandWithScope(argv,scopeSlug,pkgName=packageName){let args=stripSensitiveAuthArgs(argv.slice(2)),out=[];for(let i=0;i<args.length;i++){if(args[i]==="--scope"||args[i]==="--team"||args[i]==="-S"||args[i]==="-T"){i++;continue}args[i].startsWith("--scope=")||args[i].startsWith("--team=")||out.push(args[i])}return out.push("--scope",scopeSlug),`${pkgName} ${out.join(" ")}`}function enrichActionRequiredWithInvokingCommand(payload,argv){if(payload.reason!=="missing_scope"||!payload.choices?.length)return payload;let next=[],linkArgv=[...argv.slice(0,2),"link",...argv.slice(3)];for(let choice of payload.choices){let slug=choice.name;next.push({command:buildCommandWithScope(linkArgv,slug),when:"Link first (then run any command without --scope)"}),next.push({command:buildCommandWithScope(argv,slug),when:"Run this command with scope (no link)"})}return{...payload,next}}function outputActionRequired(client,payload,exitCode=getExitCodeForReason(payload.reason)){if(!shouldEmitNonInteractiveCommandError(client))return;let enriched=enrichActionRequiredWithInvokingCommand(payload,client.argv);!enriched.hint&&enriched.next?.length&&(enriched.hint="Run one of the commands in next[] to complete without prompting."),client.stdout.write(`${JSON.stringify(enriched,null,2)}
8
- `),process.exit(exitCode)}function argvHasNonInteractive(argv){if(!argv?.length)return!1;for(let i=0;i<argv.length;i++){let a=argv[i];if(a==="--non-interactive")return argv[i+1]!=="false";if(a.startsWith("--non-interactive="))return a.slice(18)!=="false"}return!1}function shouldEmitNonInteractiveCommandError(client){return client.nonInteractive||argvHasNonInteractive(client.argv??[])}function outputAgentError(client,payload,exitCode=getExitCodeForReason(payload.reason)){shouldEmitNonInteractiveCommandError(client)&&(writeAgentError(client,payload),process.exit(exitCode))}function writeAgentError(client,payload){let enriched={...getErrorRecovery(payload,client),...payload,...agentErrorMetadata(client)};trackAgentError(client,enriched),client.stdout.write(`${JSON.stringify(enriched,null,2)}
9
- `)}function outputAgentSuccess(client,payload,exitCode=0){shouldEmitNonInteractiveCommandError(client)&&(!payload.hint&&payload.next?.length&&(payload.hint="Follow up with one of the commands in next[]."),client.stdout.write(`${JSON.stringify(payload,null,2)}
10
- `),process.exit(exitCode))}function buildNextStepsForGlobalConfig(client){return[{command:buildCommandWithGlobalFlags(client.argv,"global-config list"),when:"List Global Config stores in the current team scope"},{command:buildCommandWithGlobalFlags(client.argv,"teams switch"),when:"Switch to the team that owns the Global Config"},{command:buildCommandWithGlobalFlags(client.argv,"whoami"),when:"Verify the current team or user scope"}]}var GLOBAL_CONFIG_NON_INTERACTIVE_HINT="Global Config commands use your current team scope. Pass --scope or run `vercel teams switch` if the store is missing.",LIST_ERROR_HINT="Project names are team-scoped. Use --scope when the project belongs to another team, or `list --all` to list deployments across all projects.";function buildNextStepsForList(client,projectName){return[projectName?{command:buildCommandWithGlobalFlags(client.argv,`project ls --filter ${projectName}`),when:"Search projects matching the attempted name to find the right one"}:{command:buildCommandWithGlobalFlags(client.argv,"project ls --filter <name>"),when:"Search projects by name substring to find the right one (replace <name>)"},{command:buildCommandWithGlobalFlags(client.argv,"list --all"),when:"List deployments across all projects in the current scope"},{command:buildCommandWithGlobalFlags(client.argv,"link"),when:"Re-link this directory to the correct Vercel project"}]}function buildNextStepsForProjectSubcommands(client,variant){let byName=variant==="access-groups"?{template:"project access-groups <name>",when:"List access groups by project name (replace <name>)"}:variant==="access-summary"?{template:"project access-summary <name>",when:"Show role counts by project name (replace <name>)"}:variant==="protection"?{template:"project protection <name>",when:"Show deployment protection by project name (replace <name>)"}:variant==="update"?{template:"project update <name> --framework <slug>",when:"Update a framework preset by project name (replace <name> and <slug>)"}:variant==="speed-insights"?{template:"project speed-insights <name>",when:"Enable Speed Insights by project name (replace <name>)"}:variant==="web-analytics"?{template:"project web-analytics <name>",when:"Enable Web Analytics by project name (replace <name>)"}:variant==="observability"?{template:"project observability enable <name>",when:"Enable Observability Plus by project name (replace <name>)"}:variant==="checks"?{template:"project checks add <name>",when:"Create a deployment check by project name (replace <name>)"}:variant==="inspect"?{template:"project inspect <name>",when:"Inspect a project by name (replace <name>)"}:variant==="resume"?{template:"project resume <name>",when:"Resume production traffic by project name (replace <name>)"}:{template:"project members <name>",when:"List members by project name (replace <name>)"};return[{command:buildCommandWithGlobalFlags(client.argv,"link"),when:"Re-link this directory to the correct Vercel project"},{command:buildCommandWithGlobalFlags(client.argv,byName.template),when:byName.when},{command:buildCommandWithGlobalFlags(client.argv,"project ls"),when:"List projects in the current team to pick a name"}]}var PROJECT_SUBCOMMAND_ERROR_HINT="If you use --cwd, ensure that folder is linked to the right project, or pass an explicit project name. Use --scope when the project belongs to another team.";function resolveNonInteractiveDefaults(client,variant){return variant==="global-config"?{next:buildNextStepsForGlobalConfig(client),hint:GLOBAL_CONFIG_NON_INTERACTIVE_HINT}:variant==="list"?{next:buildNextStepsForList(client),hint:LIST_ERROR_HINT}:{next:buildNextStepsForProjectSubcommands(client,variant),hint:PROJECT_SUBCOMMAND_ERROR_HINT}}function writeAgentErrorPayloadAndExit(client,payload,exitCode,variant){let defaults=["link_required","project_not_found","not_found"].includes(payload.reason)?resolveNonInteractiveDefaults(client,variant):{},out={...payload,next:payload.next??defaults.next,hint:payload.hint??defaults.hint};writeAgentError(client,out),process.exit(exitCode)}function isProjectNotFoundLike(err){return!!(err instanceof ProjectNotFound||(0,import_error_utils.isError)(err)&&"code"in err&&err.code==="PROJECT_NOT_FOUND")}function isLinkRequiredLike(err){return err instanceof LinkRequiredError}function normalizeApiErrorText(message){return message.replace(/\s*\(\d{3}\)\s*$/,"").trim()}function exitWithNonInteractiveError(client,err,exitCode=1,options={variant:"members"}){if(!shouldEmitNonInteractiveCommandError(client))return;let{variant}=options;if(isLinkRequiredLike(err)){if(variant==="global-config"){writeAgentErrorPayloadAndExit(client,{status:"error",reason:"link_required",message:err instanceof Error?err.message:String(err),next:buildNextStepsForGlobalConfig(client),hint:GLOBAL_CONFIG_NON_INTERACTIVE_HINT},exitCode,"global-config");return}writeAgentErrorPayloadAndExit(client,{status:"error",reason:"link_required",message:err instanceof Error?err.message:String(err)},exitCode,variant);return}if(isProjectNotFoundLike(err)){writeAgentErrorPayloadAndExit(client,{status:"error",reason:"project_not_found",message:err instanceof Error?err.message:String(err),...variant==="list"&&options.projectName?{next:buildNextStepsForList(client,options.projectName)}:{}},exitCode,variant);return}if(isAPIError(err)){let rawMessage=err.serverMessage||err.message,message=normalizeApiErrorText(rawMessage),reason=err.status===403?"forbidden":err.status===402?"payment_required":err.status===401?"not_authorized":err.status===404?variant==="global-config"?"not_found":"project_not_found":err.status===429?"rate_limited":"api_error";writeAgentErrorPayloadAndExit(client,{status:"error",reason,message,...getErrorRecovery(err,client),...err.action&&{action:err.action},...err.resource&&{resource:err.resource}},exitCode,variant)}writeAgentErrorPayloadAndExit(client,{status:"error",reason:"unexpected_error",message:err instanceof Error?err.message:String(err)},exitCode,variant)}function openUrlInBrowserCommand(url){return process.platform==="win32"?`start ${url}`:process.platform==="darwin"?`open '${url}'`:`xdg-open '${url}'`}export{AGENT_STATUS,AGENT_REASON,getExitCodeForReason,AGENT_ACTION,mentionsObservabilityPlus,observabilityPlusPurchaseFix,observabilityPlusRecovery,getErrorRecovery,agentErrorMetadata,trackAgentError,trackAgentCommandOutcome,buildCommandWithYes,redactEnvValueArgs,getGlobalFlagsFromArgv,omitGlobalFlagsFromArgs,buildIntegrationCommandTailFromArgv,buildCommandWithGlobalFlags,withGlobalFlags,getPreservedArgsForEnvAdd,buildEnvAddCommandWithPreservedArgs,getPreservedArgsForEnvPull,getPreservedArgsForEnvRm,buildEnvRmCommandWithPreservedArgs,getPreservedArgsForEnvUpdate,buildEnvUpdateCommandWithPreservedArgs,outputActionRequired,argvHasNonInteractive,shouldEmitNonInteractiveCommandError,outputAgentError,writeAgentError,outputAgentSuccess,exitWithNonInteractiveError,openUrlInBrowserCommand};
@@ -1,9 +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{readJSONFile}from"./chunk-P3ZZVBZQ.js";import{getScope,writeToConfigFile}from"./chunk-GXNSAACA.js";import{require_types}from"./chunk-GHM7V3GG.js";import{getArgs}from"./chunk-MQW6DKD2.js";import{humanizePath}from"./chunk-PPCFQQSU.js";import{CantFindConfig,CantParseJSONFile,DeprecatedNowJson,WorkingDirectoryDoesNotExist}from"./chunk-4WS3D23J.js";import{output_manager_default}from"./chunk-MR423MWE.js";import{require_dist}from"./chunk-QGIQK47P.js";import{__commonJS,__toESM}from"./chunk-6L236MNA.js";var require_epipebomb=__commonJS({"../../node_modules/.pnpm/epipebomb@1.0.0/node_modules/epipebomb/epipebomb.js"(exports,module){module.exports=epipeBomb;function epipeBomb(stream,callback){stream==null&&(stream=process.stdout),callback==null&&(callback=process.exit);function epipeFilter(err){if(err.code==="EPIPE")return callback();stream.listeners("error").length<=1&&(stream.removeAllListeners(),stream.emit("error",err),stream.on("error",epipeFilter))}stream.on("error",epipeFilter)}}});var sentry;async function getSentry(){if(!sentry){let[SentryModule,{SENTRY_DSN},{default:pkg}]=await Promise.all([import("./cjs-GOQHXIHX.js"),import("./constants-G4UYVLOF.js"),import("./pkg-YFU67U7I.js")]),Sentry="init"in SentryModule?SentryModule:SentryModule.default;Sentry.init({dsn:SENTRY_DSN,release:`vercel-cli@${pkg.version}`,environment:"stable",autoSessionTracking:!1}),sentry=Sentry}return sentry}function isOutputDebugEnabled(debugFlag){return debugFlag===!0||process.env.VERCEL_CLI_DEBUG==="1"}var import_epipebomb=__toESM(require_epipebomb(),1),SILENCED_ERRORS=["DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead."],installed=!1;function installProcessGuards(){if(installed)return;installed=!0;let originalError=console.error;console.error=msg=>{SILENCED_ERRORS.some(error=>typeof msg=="string"&&msg.includes(error))||originalError(msg)},(0,import_epipebomb.default)()}var import_error_utils=__toESM(require_dist(),1);async function reportError(sentry2,client,error){if(ignoreError(error))return;let user,team,scopeError;try{({user,team}=await getScope(client))}catch(err){(0,import_error_utils.isError)(err)&&(scopeError=err)}sentry2.withScope(scope=>{if(user){let spec={email:user.email,id:user.id,username:user.username,name:user.name};scope.setUser(spec)}team&&scope.setTag("currentTeam",team.id),scopeError&&scope.setExtra("scopeError",{name:scopeError.name,message:scopeError.message,stack:scopeError.stack});let args,argsError;try{args=getArgs(process.argv.slice(2),{})}catch(err){(0,import_error_utils.isError)(err)&&(argsError=err)}if(args){let flags=["--env","--build-env","--token"];for(let flag of flags)args[flag]&&(args[flag]="REDACTED");args._.length>=4&&args._[0].startsWith("secret")&&args._[1]==="add"&&(args._[3]="REDACTED"),scope.setExtra("args",args)}else{let msg="Unable to parse args";argsError&&(msg+=`: ${argsError}`),scope.setExtra("args",msg)}scope.setExtra("node",{execPath:process.execPath,version:process.version,platform:process.platform}),sentry2.captureException(error)});let sentryClient=sentry2.getCurrentHub().getClient();sentryClient&&await sentryClient.close()}function ignoreError(error){return(0,import_error_utils.isError)(error)&&error.message.includes("uv_cwd")}var fatalErrorHandlerSymbol=Symbol.for("vercel.cli.fatal-error-handler");async function exitWithUnexpectedError(error){let handler=globalThis[fatalErrorHandlerSymbol];if(typeof handler=="function")try{await handler(error)}catch{}process.exit(1)}async function handleUnexpectedError(client,err){let{message}=err;return message.includes("sentry")&&message.includes("ENOTFOUND")?(output_manager_default.debug(`Sentry is not reachable: ${err}`),!1):(output_manager_default.error(`An unexpected error occurred!
8
- ${err.stack}`),await reportError(await getSentry(),client,err),!0)}function registerUnexpectedErrorHandlers(getClient){process.on("unhandledRejection",async err=>{err?err instanceof Error?await handleUnexpectedError(getClient(),err):(output_manager_default.error(`An unexpected rejection occurred
9
- ${err}`),await reportError(await getSentry(),getClient(),err)):output_manager_default.error("An unexpected empty rejection occurred"),await exitWithUnexpectedError(err)}),process.on("uncaughtException",async error=>{await handleUnexpectedError(getClient(),error)&&await exitWithUnexpectedError(error)})}var import_types=__toESM(require_types(),1);import path from"path";var import_error_utils2=__toESM(require_dist(),1);var config;async function earlyGetConfig(configFile){if(config)return config;let localPath;try{localPath=process.cwd()}catch(err){if((0,import_error_utils2.isErrnoException)(err)&&err.code==="ENOENT")return new WorkingDirectoryDoesNotExist;throw err}if(configFile){let localFilePath=path.resolve(localPath,configFile);output_manager_default.debug(`Found config in provided --local-config path ${localFilePath}`);let localConfig=await readJSONFile(localFilePath);return localConfig instanceof CantParseJSONFile?localConfig:localConfig===null?new CantFindConfig([humanizePath(localFilePath)]):(config=localConfig,config[import_types.fileNameSymbol]=configFile,config)}let vercelFilePath=path.resolve(localPath,"vercel.json"),nowFilePath=path.resolve(localPath,"now.json"),[vercelConfig,nowConfig]=await Promise.all([readJSONFile(vercelFilePath),readJSONFile(nowFilePath)]);return vercelConfig instanceof CantParseJSONFile?vercelConfig:nowConfig instanceof CantParseJSONFile?nowConfig:vercelConfig!==null?(output_manager_default.debug(`Found config in file "${vercelFilePath}"`),config=vercelConfig,config[import_types.fileNameSymbol]="vercel.json",config):nowConfig!==null?new DeprecatedNowJson(nowFilePath):new CantFindConfig([vercelFilePath].map(humanizePath))}var fallbackReason;function recordDirectBuildFallback(reason){fallbackReason=reason}function getDirectBuildFallbackAttributes(){return fallbackReason===void 0?void 0:{directBuild:"false",fallbackReason}}function checkTelemetryStatus({config:config2}){config2.telemetry||process.env.VERCEL_TELEMETRY_DISABLED||(output_manager_default.note("The Vercel CLI now collects telemetry regarding usage of the CLI."),output_manager_default.log("This information is used to shape the CLI roadmap and prioritize features."),output_manager_default.log("You can learn more, including how to opt-out if you'd not like to participate in this program, by visiting the following URL:"),output_manager_default.log("https://vercel.com/docs/cli/about-telemetry"),config2.telemetry={enabled:!0},writeToConfigFile(config2))}export{getSentry,isOutputDebugEnabled,installProcessGuards,reportError,exitWithUnexpectedError,handleUnexpectedError,registerUnexpectedErrorHandlers,earlyGetConfig,recordDirectBuildFallback,getDirectBuildFallbackAttributes,checkTelemetryStatus};
@@ -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{require_dist,require_dist2}from"./chunk-G3NHWIPJ.js";import{require_types}from"./chunk-GHM7V3GG.js";import{require_build_utils}from"./chunk-MR423MWE.js";import{__commonJS,__toESM}from"./chunk-6L236MNA.js";var require_dist3=__commonJS({"../../internals/service-topology/dist/index.js"(exports,module){"use strict";var __defProp=Object.defineProperty,__getOwnPropDesc=Object.getOwnPropertyDescriptor,__getOwnPropNames=Object.getOwnPropertyNames,__hasOwnProp=Object.prototype.hasOwnProperty,__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},__toCommonJS=mod=>__copyProps(__defProp({},"__esModule",{value:!0}),mod),src_exports={};__export(src_exports,{INTERNAL_SERVICE_PREFIX:()=>import_fs_detectors2.INTERNAL_SERVICE_PREFIX,autoDetectServices:()=>import_fs_detectors2.autoDetectServices,detectServices:()=>import_fs_detectors2.detectServices,generateServiceRewrites:()=>import_fs_detectors2.generateServiceRewrites,generateServicesRoutes:()=>import_fs_detectors2.generateServicesRoutes,getInternalServiceCronPath:()=>import_fs_detectors2.getInternalServiceCronPath,getInternalServiceCronPathPrefix:()=>import_fs_detectors2.getInternalServiceCronPathPrefix,getInternalServiceFunctionPath:()=>import_fs_detectors2.getInternalServiceFunctionPath,getInternalServiceWorkerPath:()=>import_fs_detectors2.getInternalServiceWorkerPath,getInternalServiceWorkerPathPrefix:()=>import_fs_detectors2.getInternalServiceWorkerPathPrefix,hasLegacyServicesConfig:()=>import_fs_detectors2.hasLegacyServicesConfig,isExperimentalService:()=>import_fs_detectors2.isExperimentalService,isExperimentalServiceV2:()=>import_fs_detectors2.isExperimentalServiceV2,isRouteOwningBuilder:()=>import_fs_detectors2.isRouteOwningBuilder,isStaticBuild:()=>import_fs_detectors2.isStaticBuild,migrateExperimentalServices:()=>import_fs_detectors2.migrateExperimentalServices,planExperimentalServicesMigration:()=>import_fs_detectors2.planExperimentalServicesMigration,resolveAllConfiguredServices:()=>import_fs_detectors2.resolveAllConfiguredServices,resolveAllConfiguredServicesV2:()=>import_fs_detectors2.resolveAllConfiguredServicesV2,resolveConfiguredServiceV2:()=>import_fs_detectors2.resolveConfiguredServiceV2,validateServiceConfigV2:()=>import_fs_detectors2.validateServiceConfigV2});module.exports=__toCommonJS(src_exports);var import_fs_detectors2=require_dist2()}});var import_routing_utils=__toESM(require_dist(),1),import_build_utils=__toESM(require_build_utils(),1),import_types=__toESM(require_types(),1),import_fs_detectors=__toESM(require_dist2(),1);import{getConfigValidator}from"./config-validator.mjs";var imagesSchema={type:"object",additionalProperties:!1,required:["sizes"],properties:{contentDispositionType:{enum:["inline","attachment"]},contentSecurityPolicy:{type:"string",minLength:1,maxLength:256},dangerouslyAllowSVG:{type:"boolean"},domains:{type:"array",minItems:0,maxItems:50,items:{type:"string",minLength:1,maxLength:256}},formats:{type:"array",minItems:1,maxItems:4,items:{enum:["image/avif","image/webp","image/jpeg","image/png"]}},localPatterns:{type:"array",minItems:0,maxItems:25,items:{type:"object",additionalProperties:!1,properties:{pathname:{type:"string",minLength:1,maxLength:256},search:{type:"string",minLength:0,maxLength:256}}}},minimumCacheTTL:{type:"integer",minimum:1,maximum:31536e4},qualities:{type:"array",minItems:1,maxItems:20,items:{type:"integer",minimum:1,maximum:100}},remotePatterns:{type:"array",minItems:0,maxItems:50,items:{type:"object",additionalProperties:!1,required:["hostname"],properties:{protocol:{enum:["http","https"]},hostname:{type:"string",minLength:1,maxLength:256},port:{type:"string",minLength:0,maxLength:5},pathname:{type:"string",minLength:1,maxLength:256},search:{type:"string",minLength:0,maxLength:256}}}},sizes:{type:"array",minItems:1,maxItems:50,items:{type:"number"}}}},cronsSchema={type:"array",minItems:0,items:{type:"object",additionalProperties:!1,required:["path","schedule"],properties:{path:{type:"string",minLength:1,maxLength:512,pattern:"^/.*"},schedule:{type:"string",minLength:9,maxLength:256}}}},scheduleNameSchema={type:"string",minLength:1,maxLength:256,pattern:"^[0-9A-Za-z][0-9A-Za-z._-]*$"},scheduleTimezoneSchema={type:"string",minLength:1,maxLength:50,description:"IANA timezone for cron evaluation. Defaults to UTC."},scheduleJitterSchema={type:"integer",minimum:1,maximum:15},scheduleCronStringSchema={type:"string",minLength:9,maxLength:256},scheduleExpressionSchema={type:"object",additionalProperties:!1,required:["cron"],properties:{cron:{type:"string"},jitter:scheduleJitterSchema}},scheduleTargetFunctionSchema={type:"object",additionalProperties:!1,required:["function"],properties:{function:{type:"string",minLength:1}}},scheduleTargetPathSchema={type:"object",additionalProperties:!1,required:["path"],properties:{path:{description:"Deployment path to invoke over HTTP, like `crons[].path`. Must start with `/`.",type:"string",maxLength:512,pattern:"^/"}}},scheduleTargetTopicSchema={type:"object",additionalProperties:!1,required:["topic"],properties:{topic:{type:"string",minLength:1,maxLength:256,pattern:"^[A-Za-z0-9_-]+$"}}},scheduleTargetEntrypointSchema={type:"object",additionalProperties:!1,required:["entrypoint"],properties:{entrypoint:{type:"string",minLength:1,maxLength:512}}},legacyVercelJsonScheduleSchema={type:"object",additionalProperties:!1,required:["expression","target","name"],properties:{expression:scheduleExpressionSchema,target:{oneOf:[scheduleTargetFunctionSchema,scheduleTargetPathSchema,scheduleTargetTopicSchema,scheduleTargetEntrypointSchema]},name:scheduleNameSchema,timezone:scheduleTimezoneSchema}},flatVercelJsonScheduleSchema={type:"object",additionalProperties:!1,required:["schedule"],properties:{name:scheduleNameSchema,schedule:scheduleCronStringSchema,timezone:scheduleTimezoneSchema,jitter:scheduleJitterSchema,path:scheduleTargetPathSchema.properties.path,requestMethod:{description:"HTTP method used to invoke `path`. Only valid with `path`. Defaults to `POST`.",enum:["GET","POST"]},function:scheduleTargetFunctionSchema.properties.function,topic:scheduleTargetTopicSchema.properties.topic,entrypoint:scheduleTargetEntrypointSchema.properties.entrypoint},dependencies:{requestMethod:["path"]},oneOf:[{required:["path"]},{required:["function"]},{required:["topic"]},{required:["entrypoint"]}]},schedulesSchema={type:"array",minItems:0,maxItems:100,items:{oneOf:[legacyVercelJsonScheduleSchema,flatVercelJsonScheduleSchema]}},experimentalServicesMountSchema={oneOf:[{type:"string",minLength:1,maxLength:512},{type:"object",additionalProperties:!1,properties:{path:{type:"string",minLength:1,maxLength:512},subdomain:{type:"string",minLength:1,maxLength:63}},anyOf:[{required:["path"]},{required:["subdomain"]}]}]},staticExperimentalServiceScheduleSchema={type:"string",minLength:9,maxLength:256,not:{const:"<dynamic>"}},experimentalServiceScheduleSchema={oneOf:[{type:"string",minLength:9,maxLength:256},{type:"array",minItems:1,items:staticExperimentalServiceScheduleSchema}]},experimentalServiceQueueTopicSchema={type:"object",additionalProperties:!1,required:["topic"],properties:{topic:{type:"string",minLength:1,maxLength:256},retryAfterSeconds:{type:"integer",minimum:1,maximum:86400},initialDelaySeconds:{type:"integer",minimum:0,maximum:86400}}},experimentalServiceTopicsSchema={oneOf:[{type:"array",minItems:1,items:{type:"string",minLength:1,maxLength:256}},{type:"array",minItems:1,items:experimentalServiceQueueTopicSchema}]},envVarNamesSchema={pattern:"^[A-Za-z_][A-Za-z0-9_]*$",maxLength:256},getExperimentalServicesCommonProperties=()=>({entrypoint:{type:"string",minLength:1,maxLength:512},root:{type:"string",minLength:1,maxLength:512},workspace:{type:"string",minLength:1,maxLength:512},framework:{type:"string",minLength:1,maxLength:256},builder:{type:"string",minLength:1,maxLength:256},runtime:{type:"string",minLength:1,maxLength:256},buildCommand:{type:"string",minLength:1,maxLength:2048},installCommand:{type:"string",minLength:1,maxLength:2048},preDeployCommand:{type:"string",minLength:1,maxLength:2048},command:{oneOf:[{type:"string",minLength:1,maxLength:2048},{type:"array",minItems:1,items:{type:"string",minLength:1,maxLength:2048}}]},memory:{type:"integer",minimum:128,maximum:10240},maxDuration:(0,import_build_utils.getMaxDurationSchema)(),includeFiles:{oneOf:[{type:"string",minLength:1},{type:"array",items:{type:"string",minLength:1}}]},excludeFiles:{oneOf:[{type:"string",minLength:1},{type:"array",items:{type:"string",minLength:1}}]}}),experimentalServicesRoutableProperties={mount:experimentalServicesMountSchema,routePrefix:{type:"string",minLength:1,maxLength:512},subdomain:{type:"string",minLength:1,maxLength:63}},getExperimentalServicesServiceConfigSchema=()=>({oneOf:[{type:"object",additionalProperties:!1,properties:{...getExperimentalServicesCommonProperties(),...experimentalServicesRoutableProperties,type:{enum:["web"]}}},{type:"object",additionalProperties:!1,required:["type","trigger","schedule"],properties:{...getExperimentalServicesCommonProperties(),type:{const:"job"},trigger:{const:"schedule"},schedule:experimentalServiceScheduleSchema}},{type:"object",additionalProperties:!1,required:["type","trigger","topics"],properties:{...getExperimentalServicesCommonProperties(),type:{const:"job"},trigger:{const:"queue"},topics:experimentalServiceTopicsSchema,consumer:{type:"string",minLength:1,maxLength:256}}},{type:"object",additionalProperties:!1,required:["type","trigger","entrypoint"],properties:{...getExperimentalServicesCommonProperties(),type:{const:"job"},trigger:{const:"workflow"}}},{type:"object",additionalProperties:!1,required:["type"],properties:{...getExperimentalServicesCommonProperties(),type:{const:"worker"},topics:{type:"array",items:{type:"string",minLength:1,maxLength:256},minItems:1},consumer:{type:"string",minLength:1,maxLength:256}}},{type:"object",additionalProperties:!1,required:["type","schedule"],properties:{...getExperimentalServicesCommonProperties(),type:{const:"cron"},schedule:experimentalServiceScheduleSchema}}]}),getExperimentalServicesSchema=()=>({type:"object",propertyNames:{pattern:"^[a-zA-Z]([a-zA-Z0-9_-]*[a-zA-Z0-9])?$",maxLength:64},additionalProperties:getExperimentalServicesServiceConfigSchema()}),experimentalServiceGroupsSchema={type:"object",propertyNames:{pattern:"^[a-zA-Z]([a-zA-Z0-9_-]*[a-zA-Z0-9])?$",maxLength:64},additionalProperties:{type:"array",items:{type:"string",minLength:1,maxLength:256}}},servicesPathSchema={type:"string",minLength:1,maxLength:512},servicesCommandSchema={type:"string",minLength:1,maxLength:2048},servicesBindingSchema={type:"object",additionalProperties:!1,required:["service","format","env"],properties:{type:{description:"Optional binding type marker. Currently the only supported type is `service`. When present this must be `service`.",const:"service"},service:{type:"string",minLength:1,maxLength:64,pattern:import_build_utils.SERVICE_NAME_PATTERN},format:{const:"url"},env:{type:"string",...envVarNamesSchema}}},servicesBindingsSchema={type:"array",maxItems:100,items:servicesBindingSchema},getServicesServiceConfigSchema=()=>({type:"object",additionalProperties:!1,required:["root"],properties:{root:servicesPathSchema,framework:{type:"string",minLength:1,maxLength:256},runtime:{type:"string",minLength:1,maxLength:256},entrypoint:servicesPathSchema,command:{oneOf:[{type:"string"},{type:"array",items:{type:"string"}}]},installCommand:servicesCommandSchema,buildCommand:servicesCommandSchema,devCommand:servicesCommandSchema,ignoreCommand:servicesCommandSchema,outputDirectory:servicesPathSchema,bindings:servicesBindingsSchema,functions:(0,import_build_utils.getFunctionsSchema)(),headers:import_routing_utils.headersSchema,redirects:import_routing_utils.redirectsSchema,rewrites:import_routing_utils.rewritesSchema,routes:import_routing_utils.routesSchema,cleanUrls:import_routing_utils.cleanUrlsSchema,trailingSlash:import_routing_utils.trailingSlashSchema}}),daemonConfigSchema={type:"object",additionalProperties:!1,required:["root","entrypoint","replicas"],properties:{root:servicesPathSchema,entrypoint:servicesPathSchema,command:{type:"array",minItems:1,maxItems:128,items:{type:"string",minLength:1,maxLength:4096}},replicas:{type:"object",additionalProperties:{type:"integer",minimum:0}},resources:{type:"object",additionalProperties:!1,required:["requests"],properties:{requests:{type:"object",additionalProperties:!1,required:["memory"],properties:{memory:{enum:["1Gi","2Gi","4Gi","8Gi"]}}}}}}},getServicesSchema=()=>({type:"object",propertyNames:{pattern:import_build_utils.SERVICE_NAME_PATTERN,maxLength:64},additionalProperties:getServicesServiceConfigSchema()}),maxDaemons=100,daemonsSchema={type:"object",maxProperties:maxDaemons,propertyNames:{pattern:import_build_utils.DAEMON_NAME_PATTERN,maxLength:64},additionalProperties:daemonConfigSchema},proxySchema={type:"object",additionalProperties:!1,required:["entrypoint"],properties:{entrypoint:{type:"string",minLength:1},matcher:{oneOf:[{type:"string",minLength:1},{type:"array",minItems:1,items:{type:"string",minLength:1}}]}}};function buildVercelConfigSchema(){return{type:"object",additionalProperties:!0,properties:{builds:import_build_utils.buildsSchema,routes:import_routing_utils.routesSchema,cleanUrls:import_routing_utils.cleanUrlsSchema,headers:import_routing_utils.headersSchema,redirects:import_routing_utils.redirectsSchema,rewrites:import_routing_utils.rewritesSchema,trailingSlash:import_routing_utils.trailingSlashSchema,functions:(0,import_build_utils.getFunctionsSchema)(),images:imagesSchema,crons:cronsSchema,schedules:schedulesSchema,bunVersion:{type:"string"},proxy:proxySchema,experimentalServices:getExperimentalServicesSchema(),experimentalServiceGroups:experimentalServiceGroupsSchema,services:getServicesSchema(),experimentalServicesV2:getServicesSchema(),daemons:daemonsSchema}}}function validateConfig(config){let validate=getConfigValidator(buildVercelConfigSchema);if(!validate(config)&&validate.errors&&validate.errors[0]){let error=validate.errors[0],fileName=config[import_types.fileNameSymbol]||"vercel.json",niceError=(0,import_build_utils.getPrettyError)(error);return niceError.message=`Invalid ${fileName} - ${niceError.message}`,niceError}if(config.schedules?.length)try{for(let schedule of config.schedules)(0,import_build_utils.parseScheduleDefinition)(schedule)}catch(error){return new import_build_utils.NowBuildError({code:"INVALID_SCHEDULE",message:`Invalid ${config[import_types.fileNameSymbol]||"vercel.json"} - ${error instanceof Error?error.message:String(error)}`})}for(let[index,schedule]of(config.schedules??[]).entries())if(schedule.timezone!==void 0)try{if(!/^[A-Za-z][A-Za-z0-9_+/-]*$/.test(schedule.timezone))throw new RangeError("Expected a named timezone");new Intl.DateTimeFormat("en-US",{timeZone:schedule.timezone})}catch{return new import_build_utils.NowBuildError({code:"INVALID_SCHEDULE_TIMEZONE",message:`Invalid ${config[import_types.fileNameSymbol]||"vercel.json"} - \`schedules[${index}].timezone\` must be a valid IANA timezone, such as "America/New_York". Omit it to use UTC.`})}let functionMaps=[config.functions,...Object.values(config.services??{}).map(service=>service.functions),...Object.values(config.experimentalServicesV2??{}).map(service=>service.functions)];for(let functions of functionMaps)for(let[pattern,fn]of Object.entries(functions??{})){let regions=[...new Set(fn.regions)];if(fn.affinity?.mode==="strict"&&(regions.includes("all")||regions.length>1))return new import_build_utils.NowBuildError({code:"INVALID_FUNCTION_AFFINITY_REGIONS",message:`Function affinity mode "strict" requires at most one statically configured region. Update \`functions[${JSON.stringify(pattern)}].regions\` to contain a single region.`,link:"https://vercel.com/docs/concepts/projects/project-configuration#functions"})}if(config.proxy){let proxyError=(0,import_fs_detectors.validateProxyConfig)(config.proxy);if(proxyError)return new import_build_utils.NowBuildError({code:proxyError.code.toUpperCase(),message:proxyError.message})}if(config.functions&&config.builds)return new import_build_utils.NowBuildError({code:"FUNCTIONS_AND_BUILDS",message:"The `functions` property cannot be used in conjunction with the `builds` property. Please remove one of them.",link:"https://vercel.link/functions-and-builds"});if(config.proxy&&config.builds)return new import_build_utils.NowBuildError({code:"PROXY_AND_BUILDS",message:"The `proxy` property cannot be used with the `builds` property. Remove `builds` to use an explicit proxy entrypoint."});let hasExperimentalServices=!!config.experimentalServices;if(hasExperimentalServices&&config.builds)return new import_build_utils.NowBuildError({code:"EXPERIMENTAL_SERVICES_AND_BUILDS",message:"The `experimentalServices` property cannot be used in conjunction with the `builds` property. Please remove one of them."});if(hasExperimentalServices&&config.functions)return new import_build_utils.NowBuildError({code:"EXPERIMENTAL_SERVICES_AND_FUNCTIONS",message:"The `experimentalServices` property cannot be used in conjunction with the `functions` property. Please remove one of them."});if(config.experimentalServiceGroups&&!config.experimentalServices)return new import_build_utils.NowBuildError({code:"SERVICE_GROUPS_WITHOUT_SERVICES",message:"The `experimentalServiceGroups` property requires `experimentalServices` to be defined. Service groups reference services by name."});let hasServices=config.services!=null,hasExperimentalServicesV2=config.experimentalServicesV2!=null;if(hasServices&&hasExperimentalServicesV2)return new import_build_utils.NowBuildError({code:"SERVICES_AND_EXPERIMENTAL_SERVICES_V2",message:"The `services` property cannot be used in conjunction with its deprecated alias `experimentalServicesV2`. Please use only `services`."});let servicesConfig=config.services??config.experimentalServicesV2,servicesConfigKey=hasServices?"services":"experimentalServicesV2",servicesErrorCodePrefix=hasServices?"SERVICES":"EXPERIMENTAL_SERVICES_V2";if(servicesConfig&&hasExperimentalServices)return new import_build_utils.NowBuildError({code:`${servicesErrorCodePrefix}_AND_EXPERIMENTAL_SERVICES`,message:`The \`${servicesConfigKey}\` property cannot be used in conjunction with the \`experimentalServices\` property. Please use only one services configuration.`});if(servicesConfig&&config.builds)return new import_build_utils.NowBuildError({code:`${servicesErrorCodePrefix}_AND_BUILDS`,message:`The \`${servicesConfigKey}\` property cannot be used in conjunction with the \`builds\` property. Please remove one of them.`});if(servicesConfig){let ambiguousTopLevel=[];if(config.functions!=null&&ambiguousTopLevel.push("functions"),config.installCommand!=null&&ambiguousTopLevel.push("installCommand"),config.buildCommand!=null&&ambiguousTopLevel.push("buildCommand"),config.devCommand!=null&&ambiguousTopLevel.push("devCommand"),config.ignoreCommand!=null&&ambiguousTopLevel.push("ignoreCommand"),config.outputDirectory!=null&&ambiguousTopLevel.push("outputDirectory"),config.framework!=null&&ambiguousTopLevel.push("framework"),ambiguousTopLevel.length>0){let count=ambiguousTopLevel.length,fields=ambiguousTopLevel.map(field=>`\`${field}\``).join(", ");return new import_build_utils.NowBuildError({code:`${servicesErrorCodePrefix}_AND_TOP_LEVEL_BUILD_SETTINGS`,message:`The top-level ${count>1?"properties":"property"} ${fields} cannot be used with \`${servicesConfigKey}\` because the owning service is ambiguous. Move ${count>1?"them":"it"} under the relevant service in \`${servicesConfigKey}\`.`})}}if(config.daemons){let daemonError=validateDaemons(config,config.daemons);if(daemonError)return daemonError}if(servicesConfig){let serviceNames=new Set(Object.keys(servicesConfig));for(let[serviceName,serviceConfig]of Object.entries(servicesConfig))for(let binding of serviceConfig.bindings??[])if(!serviceNames.has(binding.service))return new import_build_utils.NowBuildError({code:`${servicesErrorCodePrefix}_BINDING_UNKNOWN_SERVICE`,message:`Service "${serviceName}" declares a binding to unknown service "${binding.service}". Add "${binding.service}" to \`${servicesConfigKey}\` or fix the binding.`})}return null}function validateDaemons(config,daemons){let invalid=message=>new import_build_utils.NowBuildError({code:"INVALID_DAEMON",message}),daemonNames=new Set(Object.keys(daemons));for(let[name,daemon]of Object.entries(daemons))if(!/^(docker|container)file(\.vercel)?$/i.test(daemon.entrypoint.split(/[\\/]/).pop()??""))return invalid(`Daemon "${name}" must set \`entrypoint\` to a Dockerfile or Containerfile.`);let services={...config.experimentalServicesV2,...config.services},isDaemonTarget=name=>daemonNames.has(name)&&!Object.prototype.hasOwnProperty.call(services,name);for(let[name,service]of Object.entries(services)){let binding=service.bindings?.find(binding2=>isDaemonTarget(binding2.service));if(binding)return invalid(`Service "${name}" cannot bind to daemon "${binding.service}" because daemons do not receive traffic.`)}let destinations=[...config.rewrites??[],...config.routes??[],...Object.values(services).flatMap(service=>[...service.rewrites??[],...service.routes??[]])].map(entry=>"destination"in entry?entry.destination:void 0);for(let destination of destinations)if(typeof destination=="object"&&destination!==null&&isDaemonTarget(destination.service))return invalid(`Rewrites and routes cannot target daemon "${destination.service}" because daemons do not receive traffic.`);return null}export{require_dist3 as require_dist,validateConfig};
@@ -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{SENSITIVE_PLACEHOLDER,envPullCommandLogic,pull}from"./chunk-PY6YO4MR.js";import"./chunk-DWPCZHDT.js";import"./chunk-5NSYN7IO.js";import"./chunk-ULLWCOYC.js";import"./chunk-2FQCZE6S.js";import"./chunk-N6CNMMSZ.js";import"./chunk-EA3BJUUK.js";import"./chunk-O552UV4H.js";import"./chunk-23NBYS6R.js";import"./chunk-HVJERSGE.js";import"./chunk-SXUEGVWB.js";import"./chunk-ILR6YA2A.js";import"./chunk-MCOJUSDV.js";import"./chunk-UKC3NSS6.js";import"./chunk-DQXGNNPB.js";import"./chunk-2Z47VG5H.js";import"./chunk-EJNFKH6Y.js";import"./chunk-GXNSAACA.js";import"./chunk-CAAD55US.js";import"./chunk-QTKJC2O5.js";import"./chunk-3J2P52OU.js";import"./chunk-RCTYVKM5.js";import"./chunk-7T6TL3GQ.js";import"./chunk-BRK4OB4B.js";import"./chunk-GHM7V3GG.js";import"./chunk-5XJNPXQK.js";import"./chunk-MY4MONOH.js";import"./chunk-MQW6DKD2.js";import"./chunk-BKV35LVB.js";import"./chunk-5IPBCD7K.js";import"./chunk-QMTPSHRV.js";import"./chunk-B4ATVYZW.js";import"./chunk-F2ZWW2IO.js";import"./chunk-PPCFQQSU.js";import"./chunk-QCOPZAUC.js";import"./chunk-HRQQ2N5B.js";import"./chunk-VOZEB6PD.js";import"./chunk-4WS3D23J.js";import"./chunk-FI772UVH.js";import"./chunk-MR423MWE.js";import"./chunk-QGIQK47P.js";import"./chunk-AVSPFBLM.js";import"./chunk-XCJDGQO7.js";import"./chunk-YPTLSODC.js";import"./chunk-7HL2RPUO.js";import"./chunk-U7KCDTCH.js";import"./chunk-N3ZZ7FHQ.js";import"./chunk-GU6VIFR5.js";import"./chunk-6L236MNA.js";export{SENSITIVE_PLACEHOLDER,pull as default,envPullCommandLogic};
@@ -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{applyGitConnectIntent,connectGitRepository,resolveGitConnectIntent,setupAndLink,shouldPromptForRootDirectory}from"./chunk-5QVOIOPN.js";import"./chunk-2E6XILZC.js";import"./chunk-U4C2LU7H.js";import"./chunk-7RR7MIMT.js";import"./chunk-B3MYIRFE.js";import"./chunk-QHJLRTVY.js";import"./chunk-P3ZZVBZQ.js";import"./chunk-ZFYW4CEL.js";import"./chunk-SX64OM5A.js";import"./chunk-TNGDWVMX.js";import"./chunk-2H77IRPI.js";import"./chunk-AJT64XO2.js";import"./chunk-G3NHWIPJ.js";import"./chunk-D6JBONML.js";import"./chunk-OHDEHZLX.js";import"./chunk-M2W3HKV3.js";import"./chunk-PHW54NU5.js";import"./chunk-NNP5NITU.js";import"./chunk-L3JDEHCQ.js";import"./chunk-P2O5DOYE.js";import"./chunk-PY6YO4MR.js";import"./chunk-DWPCZHDT.js";import"./chunk-5NSYN7IO.js";import"./chunk-ULLWCOYC.js";import"./chunk-2FQCZE6S.js";import"./chunk-N6CNMMSZ.js";import"./chunk-EA3BJUUK.js";import"./chunk-O552UV4H.js";import"./chunk-23NBYS6R.js";import"./chunk-2I64AYHG.js";import"./chunk-HVJERSGE.js";import"./chunk-SOJCELXH.js";import"./chunk-SXUEGVWB.js";import"./chunk-ILR6YA2A.js";import"./chunk-MCOJUSDV.js";import"./chunk-UKC3NSS6.js";import"./chunk-DQXGNNPB.js";import"./chunk-6TAQ6OWD.js";import"./chunk-2Z47VG5H.js";import"./chunk-EJNFKH6Y.js";import"./chunk-WPS6JZF6.js";import"./chunk-OSCCYU74.js";import"./chunk-GXNSAACA.js";import"./chunk-CAAD55US.js";import"./chunk-QTKJC2O5.js";import"./chunk-3J2P52OU.js";import"./chunk-RCTYVKM5.js";import"./chunk-7T6TL3GQ.js";import"./chunk-BRK4OB4B.js";import"./chunk-GHM7V3GG.js";import"./chunk-5XJNPXQK.js";import"./chunk-MY4MONOH.js";import"./chunk-MQW6DKD2.js";import"./chunk-BKV35LVB.js";import"./chunk-5IPBCD7K.js";import"./chunk-QMTPSHRV.js";import"./chunk-B4ATVYZW.js";import"./chunk-F2ZWW2IO.js";import"./chunk-PPCFQQSU.js";import"./chunk-QCOPZAUC.js";import"./chunk-HRQQ2N5B.js";import"./chunk-VOZEB6PD.js";import"./chunk-4WS3D23J.js";import"./chunk-FI772UVH.js";import"./chunk-MR423MWE.js";import"./chunk-QGIQK47P.js";import"./chunk-AVSPFBLM.js";import"./chunk-XCJDGQO7.js";import"./chunk-YPTLSODC.js";import"./chunk-7HL2RPUO.js";import"./chunk-U7KCDTCH.js";import"./chunk-N3ZZ7FHQ.js";import"./chunk-GU6VIFR5.js";import"./chunk-6L236MNA.js";export{applyGitConnectIntent,connectGitRepository,setupAndLink as default,resolveGitConnectIntent,shouldPromptForRootDirectory};