vercel 51.6.1 → 51.8.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 (64) hide show
  1. package/dist/chunks/{add-JALB3DKU.js → add-6TAGTCM2.js} +7 -7
  2. package/dist/chunks/{chunk-Z66S4G43.js → chunk-45TDB64X.js} +1 -1
  3. package/dist/chunks/{chunk-U73MZTAR.js → chunk-5VQMJCHT.js} +3 -3
  4. package/dist/chunks/{chunk-QFP6FEBN.js → chunk-6WHQFFN2.js} +1 -1
  5. package/dist/chunks/{chunk-FY3TMBQS.js → chunk-AQ4L3FS4.js} +1 -1
  6. package/dist/chunks/{chunk-DAOAZ2VQ.js → chunk-BHDZCUTT.js} +1 -1
  7. package/dist/chunks/{chunk-PVZBM6NU.js → chunk-BJQTGP42.js} +1 -1
  8. package/dist/chunks/{chunk-CHUU7VXC.js → chunk-BNVEZBEW.js} +75 -68
  9. package/dist/chunks/{chunk-MUJZV257.js → chunk-BQI2CW7A.js} +6 -6
  10. package/dist/chunks/{chunk-DED5G3HZ.js → chunk-CRZM5WM2.js} +1 -1
  11. package/dist/chunks/{chunk-MGJMZIIT.js → chunk-CUCRUPRY.js} +1 -1
  12. package/dist/chunks/{chunk-RW7LIX2Y.js → chunk-DQPDIHII.js} +2 -2
  13. package/dist/chunks/{chunk-LUCCJW67.js → chunk-DVQ4SIWF.js} +1 -1
  14. package/dist/chunks/{chunk-DF4AVQY3.js → chunk-G6RXZLQ2.js} +2 -2
  15. package/dist/chunks/{chunk-WCTFUOSJ.js → chunk-GE6G37P4.js} +1 -1
  16. package/dist/chunks/{chunk-3N3AYMMW.js → chunk-H2PHTCJL.js} +30 -17
  17. package/dist/chunks/{chunk-HUPHOH2F.js → chunk-HRVQZZ3Q.js} +1 -1
  18. package/dist/chunks/{chunk-553A6UFX.js → chunk-IHOJDWAH.js} +6 -6
  19. package/dist/chunks/{chunk-FH2OHGXG.js → chunk-KM6BIRA3.js} +3 -3
  20. package/dist/chunks/{chunk-LUJPLXGG.js → chunk-KUY7VLTK.js} +2 -2
  21. package/dist/chunks/{chunk-C7UTFMYF.js → chunk-LDXYSGPZ.js} +2 -2
  22. package/dist/chunks/{chunk-34IM6J7A.js → chunk-N5IS4YW4.js} +2 -2
  23. package/dist/chunks/{chunk-4X7GBE5B.js → chunk-R4ZPBOD7.js} +23 -23
  24. package/dist/chunks/{chunk-VDM5O3P6.js → chunk-RFMC2QXQ.js} +3 -3
  25. package/dist/chunks/{chunk-BBW6EGBQ.js → chunk-SKXUP3WW.js} +1 -1
  26. package/dist/chunks/{chunk-7L4XVUFK.js → chunk-TAOVG4PS.js} +2 -2
  27. package/dist/chunks/{chunk-UG4457SI.js → chunk-U7MQBM3F.js} +70 -57
  28. package/dist/chunks/{chunk-WYRFA4PX.js → chunk-UBOSX7RM.js} +2 -2
  29. package/dist/chunks/{chunk-QHXUBID6.js → chunk-UP2QQYRS.js} +3 -3
  30. package/dist/chunks/{chunk-XLKXWNRG.js → chunk-UWKTUK3W.js} +1 -1
  31. package/dist/chunks/{chunk-MCTAPJSL.js → chunk-VGWGLBUC.js} +1 -1
  32. package/dist/chunks/{chunk-CGTXAXZ4.js → chunk-XKHLPA6V.js} +3 -1
  33. package/dist/chunks/{chunk-5KFTN63Q.js → chunk-Y3HAJQCS.js} +4 -4
  34. package/dist/chunks/{compile-vercel-config-V2SHBZFW.js → compile-vercel-config-3LQ66C4J.js} +3 -3
  35. package/dist/chunks/{delete-5RI2PRIT.js → delete-57Y647IJ.js} +5 -5
  36. package/dist/chunks/{disable-JPKO7VCV.js → disable-E7QAIMBG.js} +5 -5
  37. package/dist/chunks/{discard-KXGXXDNX.js → discard-6JNSEHUD.js} +5 -5
  38. package/dist/chunks/{edit-VFUE5PVU.js → edit-XKOVDTOO.js} +6 -6
  39. package/dist/chunks/{enable-V2AX2FXX.js → enable-HXRMVTBB.js} +5 -5
  40. package/dist/chunks/{export-BG3TOT6G.js → export-MRADQNKX.js} +5 -5
  41. package/dist/chunks/{inspect-3QVCZVKV.js → inspect-AOOSX4VO.js} +7 -7
  42. package/dist/chunks/{list-Y2YMJWEY.js → list-LQ4BDCK7.js} +5 -5
  43. package/dist/chunks/{list-CWTYXKB5.js → list-YIDM3OOG.js} +8 -8
  44. package/dist/chunks/{ls-SY2CP56I.js → ls-7GZP6WNF.js} +7 -7
  45. package/dist/chunks/{publish-75IJ4PZS.js → publish-VPLDS2W7.js} +5 -5
  46. package/dist/chunks/{query-MLMGNGL2.js → query-SRFELIAP.js} +6 -6
  47. package/dist/chunks/{reorder-757V4BF5.js → reorder-UWAXWRXX.js} +5 -5
  48. package/dist/chunks/{restore-KV44XHFS.js → restore-YHQNMAGI.js} +5 -5
  49. package/dist/chunks/{rm-3EGKFLKW.js → rm-HA373E4I.js} +7 -7
  50. package/dist/chunks/{rule-inspect-AYUGCLVJ.js → rule-inspect-WMR7SVJY.js} +7 -7
  51. package/dist/chunks/{rules-FUFDJOIP.js → rules-CPRD5HRH.js} +7 -7
  52. package/dist/chunks/{schema-CI2XUYTW.js → schema-AGVIOWAU.js} +7 -7
  53. package/dist/chunks/{types-M7LVCA3E.js → types-QNN5CDCB.js} +3 -3
  54. package/dist/chunks/{update-6EM4XIDW.js → update-K5GTSDIT.js} +7 -7
  55. package/dist/commands/build/index.js +24 -15
  56. package/dist/commands/deploy/index.js +21 -21
  57. package/dist/commands/dev/index.js +35 -29
  58. package/dist/commands/env/index.js +146 -33
  59. package/dist/commands/link/index.js +17 -17
  60. package/dist/commands/list/index.js +8 -8
  61. package/dist/commands-bulk.js +215 -115
  62. package/dist/index.js +20 -20
  63. package/dist/version.mjs +1 -1
  64. package/package.json +18 -18
@@ -14,7 +14,7 @@ import {
14
14
  getPreservedArgsForEnvPull,
15
15
  outputActionRequired,
16
16
  outputAgentError
17
- } from "./chunk-CGTXAXZ4.js";
17
+ } from "./chunk-XKHLPA6V.js";
18
18
  import {
19
19
  require_ms,
20
20
  stamp_default
@@ -29,7 +29,7 @@ import {
29
29
  require_string_width,
30
30
  require_strip_ansi,
31
31
  yesOption
32
- } from "./chunk-VDM5O3P6.js";
32
+ } from "./chunk-RFMC2QXQ.js";
33
33
  import {
34
34
  APIError,
35
35
  CantParseJSONFile,
@@ -7995,7 +7995,7 @@ var require_jsonfile = __commonJS({
7995
7995
  }
7996
7996
  return obj;
7997
7997
  }
7998
- var readFile5 = universalify.fromPromise(_readFile);
7998
+ var readFile6 = universalify.fromPromise(_readFile);
7999
7999
  function readFileSync(file, options = {}) {
8000
8000
  if (typeof options === "string") {
8001
8001
  options = { encoding: options };
@@ -8027,7 +8027,7 @@ var require_jsonfile = __commonJS({
8027
8027
  return fs5.writeFileSync(file, str, options);
8028
8028
  }
8029
8029
  var jsonfile = {
8030
- readFile: readFile5,
8030
+ readFile: readFile6,
8031
8031
  readFileSync,
8032
8032
  writeFile: writeFile5,
8033
8033
  writeFileSync
@@ -13987,13 +13987,13 @@ var require_read_config_file = __commonJS({
13987
13987
  });
13988
13988
  module.exports = __toCommonJS2(read_config_file_exports);
13989
13989
  var import_js_yaml = __toESM2(require_js_yaml2());
13990
- var import_smol_toml2 = __require("smol-toml");
13990
+ var import_smol_toml3 = __require("smol-toml");
13991
13991
  var import_fs4 = __require("fs");
13992
13992
  var import_error_utils5 = require_dist();
13993
- var { readFile: readFile5 } = import_fs4.promises;
13993
+ var { readFile: readFile6 } = import_fs4.promises;
13994
13994
  async function readFileOrNull(file) {
13995
13995
  try {
13996
- const data = await readFile5(file);
13996
+ const data = await readFile6(file);
13997
13997
  return data;
13998
13998
  } catch (error) {
13999
13999
  if (!(0, import_error_utils5.isErrnoException)(error)) {
@@ -14014,7 +14014,7 @@ var require_read_config_file = __commonJS({
14014
14014
  if (name.endsWith(".json")) {
14015
14015
  return JSON.parse(str);
14016
14016
  } else if (name.endsWith(".toml")) {
14017
- return (0, import_smol_toml2.parse)(str);
14017
+ return (0, import_smol_toml3.parse)(str);
14018
14018
  } else if (name.endsWith(".yaml") || name.endsWith(".yml")) {
14019
14019
  return import_js_yaml.default.safeLoad(str, { filename: name });
14020
14020
  }
@@ -14080,7 +14080,7 @@ var require_frameworks = __commonJS({
14080
14080
  var import_fs4 = __require("fs");
14081
14081
  var import_read_config_file = require_read_config_file();
14082
14082
  __reExport(frameworks_exports, require_types(), module.exports);
14083
- var { readdir, readFile: readFile5, unlink: unlink2 } = import_fs4.promises;
14083
+ var { readdir, readFile: readFile6, unlink: unlink2 } = import_fs4.promises;
14084
14084
  var frameworks = [
14085
14085
  {
14086
14086
  name: "Blitz.js (Legacy)",
@@ -14208,7 +14208,7 @@ var require_frameworks = __commonJS({
14208
14208
  "public",
14209
14209
  "__now_routes_g4t5bY.json"
14210
14210
  );
14211
- const content = await readFile5(nowRoutesPath, "utf8");
14211
+ const content = await readFile6(nowRoutesPath, "utf8");
14212
14212
  const nowRoutes = JSON.parse(content);
14213
14213
  try {
14214
14214
  await unlink2(nowRoutesPath);
@@ -23019,9 +23019,9 @@ var require_utils3 = __commonJS({
23019
23019
  const hasVercelToml = process.env.VERCEL_TOML_CONFIG_ENABLED === "1" && await fs5.hasPath("vercel.toml");
23020
23020
  if (hasVercelToml) {
23021
23021
  try {
23022
- const { parse: tomlParse2 } = await import("smol-toml");
23022
+ const { parse: tomlParse3 } = await import("smol-toml");
23023
23023
  const content = await fs5.readFile("vercel.toml");
23024
- const config = tomlParse2(content.toString());
23024
+ const config = tomlParse3(content.toString());
23025
23025
  return { config, error: null };
23026
23026
  } catch {
23027
23027
  return {
@@ -23815,7 +23815,6 @@ var require_resolve2 = __commonJS({
23815
23815
  }
23816
23816
  }
23817
23817
  const topics = type === "worker" ? (0, import_build_utils5.getServiceQueueTopics)({ type, topics: config.topics }) : trigger === "queue" ? config.topics : void 0;
23818
- const consumer = type === "worker" ? config.consumer || "default" : config.consumer;
23819
23818
  let builderUse;
23820
23819
  let builderSrc;
23821
23820
  const frameworkDefinition = config.framework ? frameworksBySlug.get(config.framework) : void 0;
@@ -23899,7 +23898,6 @@ var require_resolve2 = __commonJS({
23899
23898
  schedule: config.schedule,
23900
23899
  handlerFunction: moduleAttrParsed?.attrName,
23901
23900
  topics,
23902
- consumer,
23903
23901
  envPrefix: config.envPrefix
23904
23902
  };
23905
23903
  }
@@ -24312,7 +24310,7 @@ var require_detect_railway = __commonJS({
24312
24310
  });
24313
24311
  module.exports = __toCommonJS2(detect_railway_exports);
24314
24312
  var import_path12 = __require("path");
24315
- var import_smol_toml2 = __toESM2(__require("smol-toml"));
24313
+ var import_smol_toml3 = __toESM2(__require("smol-toml"));
24316
24314
  var import_frameworks2 = require_frameworks();
24317
24315
  var import_detect_framework = require_detect_framework();
24318
24316
  var import_utils4 = require_utils3();
@@ -24491,7 +24489,7 @@ var require_detect_railway = __commonJS({
24491
24489
  return { config: null };
24492
24490
  }
24493
24491
  try {
24494
- const config = raw.path.endsWith(".toml") ? import_smol_toml2.default.parse(raw.content) : JSON.parse(raw.content);
24492
+ const config = raw.path.endsWith(".toml") ? import_smol_toml3.default.parse(raw.content) : JSON.parse(raw.content);
24495
24493
  return { config };
24496
24494
  } catch (err) {
24497
24495
  return {
@@ -24809,20 +24807,6 @@ var require_detect_services = __commonJS({
24809
24807
  }
24810
24808
  }
24811
24809
  }
24812
- const workerServices = services.filter(import_build_utils5.isQueueTriggeredService);
24813
- for (const service of workerServices) {
24814
- const workerEntrypoint = service.entrypoint || service.builder.src || "index";
24815
- const workerPath = (0, import_utils4.getInternalServiceWorkerPath)(
24816
- service.name,
24817
- workerEntrypoint
24818
- );
24819
- const functionPath = (0, import_utils4.getInternalServiceFunctionPath)(service.name);
24820
- workers.push({
24821
- src: `^${escapeRegex(workerPath)}$`,
24822
- dest: functionPath,
24823
- check: true
24824
- });
24825
- }
24826
24810
  const cronServices = services.filter(import_build_utils5.isScheduleTriggeredService);
24827
24811
  for (const service of cronServices) {
24828
24812
  const cronPrefix = (0, import_utils4.getInternalServiceCronPathPrefix)(service.name);
@@ -35111,7 +35095,7 @@ var require_jsonfile3 = __commonJS({
35111
35095
  } catch (_) {
35112
35096
  _fs = __require("fs");
35113
35097
  }
35114
- function readFile5(file, options, callback) {
35098
+ function readFile6(file, options, callback) {
35115
35099
  if (callback == null) {
35116
35100
  callback = options;
35117
35101
  options = {};
@@ -35210,7 +35194,7 @@ var require_jsonfile3 = __commonJS({
35210
35194
  return content;
35211
35195
  }
35212
35196
  var jsonfile = {
35213
- readFile: readFile5,
35197
+ readFile: readFile6,
35214
35198
  readFileSync,
35215
35199
  writeFile: writeFile5,
35216
35200
  writeFileSync
@@ -39153,7 +39137,7 @@ var require_package = __commonJS({
39153
39137
  "../client/package.json"(exports, module) {
39154
39138
  module.exports = {
39155
39139
  name: "@vercel/client",
39156
- version: "17.3.7",
39140
+ version: "17.3.9",
39157
39141
  main: "dist/index.js",
39158
39142
  typings: "dist/index.d.ts",
39159
39143
  homepage: "https://vercel.com",
@@ -52660,10 +52644,10 @@ var require_dist7 = __commonJS({
52660
52644
 
52661
52645
  // src/util/compile-vercel-config.ts
52662
52646
  var import_dotenv = __toESM(require_main(), 1);
52663
- import { mkdir, readFile as readFile4, writeFile as writeFile4, unlink, access } from "fs/promises";
52647
+ import { mkdir, readFile as readFile5, writeFile as writeFile4, unlink, access } from "fs/promises";
52664
52648
  import { join as join9, basename as basename3 } from "path";
52665
52649
  import { fork } from "child_process";
52666
- import { parse as tomlParse } from "smol-toml";
52650
+ import { parse as tomlParse2 } from "smol-toml";
52667
52651
 
52668
52652
  // src/util/projects/link.ts
52669
52653
  var import_ajv2 = __toESM(require_ajv(), 1);
@@ -55452,7 +55436,14 @@ var addSubcommand = {
55452
55436
  options: [
55453
55437
  {
55454
55438
  name: "sensitive",
55455
- description: "Add a sensitive Environment Variable",
55439
+ description: "Force the Environment Variable to be sensitive, even when adding to Development (will fail server-side)",
55440
+ shorthand: null,
55441
+ type: Boolean,
55442
+ deprecated: false
55443
+ },
55444
+ {
55445
+ name: "no-sensitive",
55446
+ description: "Opt out of the sensitive default on Production and Preview; value remains readable later",
55456
55447
  shorthand: null,
55457
55448
  type: Boolean,
55458
55449
  deprecated: false
@@ -55502,8 +55493,8 @@ var addSubcommand = {
55502
55493
  value: `${packageName} env add API_TOKEN --force`
55503
55494
  },
55504
55495
  {
55505
- name: "Add a sensitive Environment Variable",
55506
- value: `${packageName} env add API_TOKEN --sensitive`
55496
+ name: "Add a regular (non-sensitive) Environment Variable that remains readable later",
55497
+ value: `${packageName} env add API_TOKEN --no-sensitive`
55507
55498
  },
55508
55499
  {
55509
55500
  name: "Add a new Environment Variable for a specific Environment and Git Branch",
@@ -55973,8 +55964,14 @@ import { join as join7, dirname } from "path";
55973
55964
 
55974
55965
  // src/util/projects/detect-services.ts
55975
55966
  var import_fs_detectors2 = __toESM(require_dist6(), 1);
55976
- import { writeFile as writeFile2 } from "fs/promises";
55967
+ import { readFile as readFile3, writeFile as writeFile2 } from "fs/promises";
55977
55968
  import { basename as basename2, join as join6 } from "path";
55969
+ import { parse as tomlParse, stringify as tomlStringify } from "smol-toml";
55970
+
55971
+ // src/util/is-vercel-toml-enabled.ts
55972
+ function isVercelTomlEnabled() {
55973
+ return process.env.VERCEL_TOML_CONFIG_ENABLED === "1";
55974
+ }
55978
55975
 
55979
55976
  // src/util/read-json-file.ts
55980
55977
  var import_fs_extra6 = __toESM(require_lib2(), 1);
@@ -56482,11 +56479,6 @@ function validateConfig(config) {
56482
56479
  return null;
56483
56480
  }
56484
56481
 
56485
- // src/util/is-vercel-toml-enabled.ts
56486
- function isVercelTomlEnabled() {
56487
- return process.env.VERCEL_TOML_CONFIG_ENABLED === "1";
56488
- }
56489
-
56490
56482
  // src/util/projects/detect-services.ts
56491
56483
  async function isExperimentalServicesEnabled(cwd) {
56492
56484
  return process.env.VERCEL_USE_EXPERIMENTAL_SERVICES === "1" || process.env.VERCEL_USE_EXPERIMENTAL_SERVICES?.toLowerCase() === "true" || await hasExperimentalServicesConfig(cwd);
@@ -56523,11 +56515,8 @@ async function tryDetectServices(cwd) {
56523
56515
  }
56524
56516
  async function writeServicesConfig(cwd, config) {
56525
56517
  const prepared = await prepareServicesConfigWrite(cwd, config);
56526
- await writeFile2(
56527
- prepared.configPath,
56528
- JSON.stringify(prepared.config, null, 2) + "\n",
56529
- "utf8"
56530
- );
56518
+ await writeFile2(prepared.configPath, prepared.content, "utf8");
56519
+ return { configFileName: basename2(prepared.configPath) };
56531
56520
  }
56532
56521
  async function getServicesConfigWriteBlocker(cwd, config) {
56533
56522
  try {
@@ -56545,6 +56534,9 @@ function toProjectServicesConfigPatch(config) {
56545
56534
  async function prepareServicesConfigWrite(cwd, config) {
56546
56535
  const compileResult = await compileVercelConfig(cwd);
56547
56536
  const configPath = join6(cwd, "vercel.json");
56537
+ if (isVercelTomlEnabled() && compileResult.sourceFile === "vercel.toml") {
56538
+ return prepareTomlServicesConfigWrite(join6(cwd, "vercel.toml"), config);
56539
+ }
56548
56540
  if (compileResult.wasCompiled) {
56549
56541
  throw new Error(
56550
56542
  `Cannot automatically update ${compileResult.sourceFile ?? "the current Vercel config"}.`
@@ -56553,9 +56545,6 @@ async function prepareServicesConfigWrite(cwd, config) {
56553
56545
  if (compileResult.configPath && basename2(compileResult.configPath) === "now.json") {
56554
56546
  throw new Error("Cannot automatically update now.json.");
56555
56547
  }
56556
- if (isVercelTomlEnabled() && compileResult.configPath && basename2(compileResult.configPath) === "vercel.toml") {
56557
- throw new Error("Cannot automatically update vercel.toml.");
56558
- }
56559
56548
  let existingConfig = {};
56560
56549
  if (compileResult.configPath && basename2(compileResult.configPath) === "vercel.json") {
56561
56550
  const result = await readJSONFile(configPath);
@@ -56574,9 +56563,33 @@ async function prepareServicesConfigWrite(cwd, config) {
56574
56563
  }
56575
56564
  return {
56576
56565
  configPath,
56577
- config: nextConfig
56566
+ content: JSON.stringify(nextConfig, null, 2) + "\n"
56578
56567
  };
56579
56568
  }
56569
+ async function prepareTomlServicesConfigWrite(configPath, config) {
56570
+ const patch = toProjectServicesConfigPatch(config);
56571
+ const patchKeys = Object.keys(patch);
56572
+ let existingContent;
56573
+ try {
56574
+ existingContent = await readFile3(configPath, "utf8");
56575
+ } catch {
56576
+ existingContent = "";
56577
+ }
56578
+ if (existingContent.trim()) {
56579
+ const existingParsed = tomlParse(existingContent);
56580
+ const overlapping = patchKeys.filter((key) => key in existingParsed);
56581
+ if (overlapping.length > 0) {
56582
+ const plural = overlapping.length > 1;
56583
+ const keyList = overlapping.map((k) => `"${k}"`).join(", ");
56584
+ throw new Error(
56585
+ `Cannot automatically update vercel.toml: key${plural ? "s" : ""} ${keyList} already exist${plural ? "" : "s"}.`
56586
+ );
56587
+ }
56588
+ }
56589
+ const patchToml = tomlStringify(patch);
56590
+ const content = existingContent.trim() ? existingContent.trimEnd() + "\n\n" + patchToml + "\n" : patchToml + "\n";
56591
+ return { configPath, content };
56592
+ }
56580
56593
  function getServicesConfigWriteBlockerFromError(error) {
56581
56594
  switch (error?.code) {
56582
56595
  case "SERVICES_AND_BUILDS":
@@ -56633,7 +56646,7 @@ async function resolveProjectCwd(cwd) {
56633
56646
  }
56634
56647
 
56635
56648
  // src/util/projects/link.ts
56636
- var readFile3 = promisify(fs4.readFile);
56649
+ var readFile4 = promisify(fs4.readFile);
56637
56650
  var writeFile3 = promisify(fs4.writeFile);
56638
56651
  var VERCEL_DIR = ".vercel";
56639
56652
  var VERCEL_DIR_FALLBACK = ".now";
@@ -56735,7 +56748,7 @@ async function getProjectLinkFromRepoLink(client, path2, projectName) {
56735
56748
  }
56736
56749
  async function getLinkFromDir(dir) {
56737
56750
  try {
56738
- const json = await readFile3(join8(dir, VERCEL_DIR_PROJECT), "utf8");
56751
+ const json = await readFile4(join8(dir, VERCEL_DIR_PROJECT), "utf8");
56739
56752
  const ajv2 = new import_ajv2.default();
56740
56753
  const link = JSON.parse(json);
56741
56754
  if (!ajv2.validate(linkSchema, link)) {
@@ -57159,8 +57172,8 @@ async function compileVercelConfig(workPath) {
57159
57172
  }
57160
57173
  if (hasVercelToml) {
57161
57174
  try {
57162
- const tomlContent = await readFile4(vercelTomlPath, "utf8");
57163
- const config = tomlParse(tomlContent);
57175
+ const tomlContent = await readFile5(vercelTomlPath, "utf8");
57176
+ const config = tomlParse2(tomlContent);
57164
57177
  const normalizedConfig = normalizeConfig(config);
57165
57178
  await mkdir(vercelDir, { recursive: true });
57166
57179
  await writeFile4(
@@ -10,10 +10,10 @@ import {
10
10
  import {
11
11
  getEnvTargetPlaceholder,
12
12
  global_path_default
13
- } from "./chunk-UG4457SI.js";
13
+ } from "./chunk-U7MQBM3F.js";
14
14
  import {
15
15
  yesOption
16
- } from "./chunk-VDM5O3P6.js";
16
+ } from "./chunk-RFMC2QXQ.js";
17
17
  import {
18
18
  packageName
19
19
  } from "./chunk-ECRBC4HL.js";
@@ -9,18 +9,18 @@ import {
9
9
  } from "./chunk-HTOH3MSD.js";
10
10
  import {
11
11
  getScope
12
- } from "./chunk-MGJMZIIT.js";
12
+ } from "./chunk-CUCRUPRY.js";
13
13
  import {
14
14
  AGENT_REASON
15
15
  } from "./chunk-E3NE4SKN.js";
16
16
  import {
17
17
  getLinkedProject,
18
18
  getProjectByNameOrId
19
- } from "./chunk-UG4457SI.js";
19
+ } from "./chunk-U7MQBM3F.js";
20
20
  import {
21
21
  buildCommandWithGlobalFlags,
22
22
  outputAgentError
23
- } from "./chunk-CGTXAXZ4.js";
23
+ } from "./chunk-XKHLPA6V.js";
24
24
  import {
25
25
  ProjectNotFound,
26
26
  isAPIError
@@ -8,7 +8,7 @@ import {
8
8
  formatOption,
9
9
  limitOption,
10
10
  nextOption
11
- } from "./chunk-VDM5O3P6.js";
11
+ } from "./chunk-RFMC2QXQ.js";
12
12
  import {
13
13
  packageName
14
14
  } from "./chunk-ECRBC4HL.js";
@@ -10,7 +10,7 @@ import {
10
10
  formatOption,
11
11
  nextOption,
12
12
  yesOption
13
- } from "./chunk-VDM5O3P6.js";
13
+ } from "./chunk-RFMC2QXQ.js";
14
14
  import {
15
15
  packageName
16
16
  } from "./chunk-ECRBC4HL.js";
@@ -438,7 +438,9 @@ function exitWithNonInteractiveError(client, err, exitCode = 1, options = {
438
438
  {
439
439
  status: "error",
440
440
  reason,
441
- message
441
+ message,
442
+ ...err.action && { action: err.action },
443
+ ...err.resource && { resource: err.resource }
442
444
  },
443
445
  exitCode,
444
446
  variant
@@ -12,10 +12,10 @@ import {
12
12
  } from "./chunk-4PQA6H63.js";
13
13
  import {
14
14
  getLocalPathConfig
15
- } from "./chunk-LUJPLXGG.js";
15
+ } from "./chunk-KUY7VLTK.js";
16
16
  import {
17
17
  autoInstallVercelPlugin
18
- } from "./chunk-WYRFA4PX.js";
18
+ } from "./chunk-UBOSX7RM.js";
19
19
  import {
20
20
  DEFAULT_VERCEL_CONFIG_FILENAME,
21
21
  VERCEL_CONFIG_EXTENSIONS,
@@ -41,7 +41,7 @@ import {
41
41
  useKeypress,
42
42
  usePrefix,
43
43
  useState
44
- } from "./chunk-UG4457SI.js";
44
+ } from "./chunk-U7MQBM3F.js";
45
45
  import {
46
46
  require_load_json_file,
47
47
  require_write_json_file
@@ -49,7 +49,7 @@ import {
49
49
  import {
50
50
  printError,
51
51
  require_strip_ansi
52
- } from "./chunk-VDM5O3P6.js";
52
+ } from "./chunk-RFMC2QXQ.js";
53
53
  import {
54
54
  APIError,
55
55
  NowError,
@@ -11,11 +11,11 @@ import {
11
11
  findSourceVercelConfigFile,
12
12
  getVercelConfigPath,
13
13
  normalizeConfig
14
- } from "./chunk-UG4457SI.js";
14
+ } from "./chunk-U7MQBM3F.js";
15
15
  import "./chunk-U3WLEFHU.js";
16
- import "./chunk-CGTXAXZ4.js";
16
+ import "./chunk-XKHLPA6V.js";
17
17
  import "./chunk-CO5D46AG.js";
18
- import "./chunk-VDM5O3P6.js";
18
+ import "./chunk-RFMC2QXQ.js";
19
19
  import "./chunk-ECRBC4HL.js";
20
20
  import "./chunk-ZQKJVHXY.js";
21
21
  import "./chunk-S7KYDPEM.js";
@@ -15,23 +15,23 @@ import {
15
15
  parseSubcommandArgs,
16
16
  resolveRoutes,
17
17
  withGlobalFlags
18
- } from "./chunk-FH2OHGXG.js";
18
+ } from "./chunk-KM6BIRA3.js";
19
19
  import {
20
20
  deleteSubcommand
21
- } from "./chunk-DED5G3HZ.js";
21
+ } from "./chunk-CRZM5WM2.js";
22
22
  import {
23
23
  AGENT_REASON,
24
24
  AGENT_STATUS
25
25
  } from "./chunk-E3NE4SKN.js";
26
- import "./chunk-UG4457SI.js";
26
+ import "./chunk-U7MQBM3F.js";
27
27
  import "./chunk-U3WLEFHU.js";
28
28
  import {
29
29
  outputAgentError
30
- } from "./chunk-CGTXAXZ4.js";
30
+ } from "./chunk-XKHLPA6V.js";
31
31
  import {
32
32
  stamp_default
33
33
  } from "./chunk-CO5D46AG.js";
34
- import "./chunk-VDM5O3P6.js";
34
+ import "./chunk-RFMC2QXQ.js";
35
35
  import {
36
36
  getCommandName
37
37
  } from "./chunk-ECRBC4HL.js";
@@ -17,20 +17,20 @@ import {
17
17
  parseSubcommandArgs,
18
18
  resolveRoute,
19
19
  withGlobalFlags
20
- } from "./chunk-FH2OHGXG.js";
20
+ } from "./chunk-KM6BIRA3.js";
21
21
  import {
22
22
  disableSubcommand
23
- } from "./chunk-DED5G3HZ.js";
23
+ } from "./chunk-CRZM5WM2.js";
24
24
  import "./chunk-E3NE4SKN.js";
25
- import "./chunk-UG4457SI.js";
25
+ import "./chunk-U7MQBM3F.js";
26
26
  import "./chunk-U3WLEFHU.js";
27
27
  import {
28
28
  outputAgentError
29
- } from "./chunk-CGTXAXZ4.js";
29
+ } from "./chunk-XKHLPA6V.js";
30
30
  import {
31
31
  stamp_default
32
32
  } from "./chunk-CO5D46AG.js";
33
- import "./chunk-VDM5O3P6.js";
33
+ import "./chunk-RFMC2QXQ.js";
34
34
  import {
35
35
  getCommandName
36
36
  } from "./chunk-ECRBC4HL.js";
@@ -17,20 +17,20 @@ import {
17
17
  parseSubcommandArgs,
18
18
  printDiffSummary,
19
19
  withGlobalFlags
20
- } from "./chunk-FH2OHGXG.js";
20
+ } from "./chunk-KM6BIRA3.js";
21
21
  import {
22
22
  discardSubcommand
23
- } from "./chunk-DED5G3HZ.js";
23
+ } from "./chunk-CRZM5WM2.js";
24
24
  import "./chunk-E3NE4SKN.js";
25
- import "./chunk-UG4457SI.js";
25
+ import "./chunk-U7MQBM3F.js";
26
26
  import "./chunk-U3WLEFHU.js";
27
27
  import {
28
28
  outputAgentError
29
- } from "./chunk-CGTXAXZ4.js";
29
+ } from "./chunk-XKHLPA6V.js";
30
30
  import {
31
31
  stamp_default
32
32
  } from "./chunk-CO5D46AG.js";
33
- import "./chunk-VDM5O3P6.js";
33
+ import "./chunk-RFMC2QXQ.js";
34
34
  import {
35
35
  getCommandName
36
36
  } from "./chunk-ECRBC4HL.js";
@@ -19,7 +19,7 @@ import {
19
19
  printRouteConfig,
20
20
  routingRuleToCurrentRoute,
21
21
  runInteractiveEditLoop
22
- } from "./chunk-HUPHOH2F.js";
22
+ } from "./chunk-HRVQZZ3Q.js";
23
23
  import {
24
24
  getRouteVersions
25
25
  } from "./chunk-AHU7WNL2.js";
@@ -31,20 +31,20 @@ import {
31
31
  resolveRoute,
32
32
  shellQuoteRouteIdentifierForSuggestion,
33
33
  withGlobalFlags
34
- } from "./chunk-FH2OHGXG.js";
34
+ } from "./chunk-KM6BIRA3.js";
35
35
  import {
36
36
  editSubcommand
37
- } from "./chunk-DED5G3HZ.js";
37
+ } from "./chunk-CRZM5WM2.js";
38
38
  import "./chunk-E3NE4SKN.js";
39
- import "./chunk-UG4457SI.js";
39
+ import "./chunk-U7MQBM3F.js";
40
40
  import "./chunk-U3WLEFHU.js";
41
41
  import {
42
42
  outputAgentError
43
- } from "./chunk-CGTXAXZ4.js";
43
+ } from "./chunk-XKHLPA6V.js";
44
44
  import {
45
45
  stamp_default
46
46
  } from "./chunk-CO5D46AG.js";
47
- import "./chunk-VDM5O3P6.js";
47
+ import "./chunk-RFMC2QXQ.js";
48
48
  import {
49
49
  getCommandName
50
50
  } from "./chunk-ECRBC4HL.js";
@@ -17,20 +17,20 @@ import {
17
17
  parseSubcommandArgs,
18
18
  resolveRoute,
19
19
  withGlobalFlags
20
- } from "./chunk-FH2OHGXG.js";
20
+ } from "./chunk-KM6BIRA3.js";
21
21
  import {
22
22
  enableSubcommand
23
- } from "./chunk-DED5G3HZ.js";
23
+ } from "./chunk-CRZM5WM2.js";
24
24
  import "./chunk-E3NE4SKN.js";
25
- import "./chunk-UG4457SI.js";
25
+ import "./chunk-U7MQBM3F.js";
26
26
  import "./chunk-U3WLEFHU.js";
27
27
  import {
28
28
  outputAgentError
29
- } from "./chunk-CGTXAXZ4.js";
29
+ } from "./chunk-XKHLPA6V.js";
30
30
  import {
31
31
  stamp_default
32
32
  } from "./chunk-CO5D46AG.js";
33
- import "./chunk-VDM5O3P6.js";
33
+ import "./chunk-RFMC2QXQ.js";
34
34
  import {
35
35
  getCommandName
36
36
  } from "./chunk-ECRBC4HL.js";
@@ -9,18 +9,18 @@ import {
9
9
  getRoutes,
10
10
  parseSubcommandArgs,
11
11
  withGlobalFlags
12
- } from "./chunk-FH2OHGXG.js";
12
+ } from "./chunk-KM6BIRA3.js";
13
13
  import {
14
14
  exportSubcommand
15
- } from "./chunk-DED5G3HZ.js";
15
+ } from "./chunk-CRZM5WM2.js";
16
16
  import "./chunk-E3NE4SKN.js";
17
- import "./chunk-UG4457SI.js";
17
+ import "./chunk-U7MQBM3F.js";
18
18
  import "./chunk-U3WLEFHU.js";
19
19
  import {
20
20
  outputAgentError
21
- } from "./chunk-CGTXAXZ4.js";
21
+ } from "./chunk-XKHLPA6V.js";
22
22
  import "./chunk-CO5D46AG.js";
23
- import "./chunk-VDM5O3P6.js";
23
+ import "./chunk-RFMC2QXQ.js";
24
24
  import {
25
25
  getCommandName
26
26
  } from "./chunk-ECRBC4HL.js";
@@ -6,7 +6,7 @@ const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
7
  import {
8
8
  emitAlertsScopeError
9
- } from "./chunk-QHXUBID6.js";
9
+ } from "./chunk-UP2QQYRS.js";
10
10
  import {
11
11
  handleValidationError,
12
12
  outputError,
@@ -14,32 +14,32 @@ import {
14
14
  } from "./chunk-HTOH3MSD.js";
15
15
  import {
16
16
  getScope
17
- } from "./chunk-MGJMZIIT.js";
17
+ } from "./chunk-CUCRUPRY.js";
18
18
  import {
19
19
  validateJsonOutput
20
20
  } from "./chunk-XPKWKPWA.js";
21
21
  import {
22
22
  inspectSubcommand
23
- } from "./chunk-7L4XVUFK.js";
24
- import "./chunk-LUCCJW67.js";
23
+ } from "./chunk-TAOVG4PS.js";
24
+ import "./chunk-DVQ4SIWF.js";
25
25
  import {
26
26
  AGENT_REASON
27
27
  } from "./chunk-E3NE4SKN.js";
28
28
  import {
29
29
  getLinkedProject,
30
30
  getProjectByNameOrId
31
- } from "./chunk-UG4457SI.js";
31
+ } from "./chunk-U7MQBM3F.js";
32
32
  import "./chunk-U3WLEFHU.js";
33
33
  import {
34
34
  buildCommandWithGlobalFlags,
35
35
  outputAgentError
36
- } from "./chunk-CGTXAXZ4.js";
36
+ } from "./chunk-XKHLPA6V.js";
37
37
  import "./chunk-CO5D46AG.js";
38
38
  import {
39
39
  getFlagsSpecification,
40
40
  parseArguments,
41
41
  printError
42
- } from "./chunk-VDM5O3P6.js";
42
+ } from "./chunk-RFMC2QXQ.js";
43
43
  import {
44
44
  ProjectNotFound,
45
45
  isAPIError,