vercel 54.20.1 → 54.21.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 (63) hide show
  1. package/dist/chunks/{add-IB7HE5S5.js → add-KZSG7SVG.js} +4 -4
  2. package/dist/chunks/{add-TF5VZLCY.js → add-UDJ45UVF.js} +5 -5
  3. package/dist/chunks/{chunk-YWLVPKNT.js → chunk-6SVPJXCO.js} +1 -1
  4. package/dist/chunks/{chunk-FVI6UYNL.js → chunk-6W7I5IOO.js} +1 -1
  5. package/dist/chunks/{chunk-JHQOIGTY.js → chunk-BEETD7P4.js} +3 -3
  6. package/dist/chunks/{chunk-JDO6BSKN.js → chunk-BLWPQEED.js} +4 -4
  7. package/dist/chunks/{chunk-7PAKWBN4.js → chunk-DBA4N3OZ.js} +2 -2
  8. package/dist/chunks/{chunk-IZOHLD5D.js → chunk-DDS5Z2MB.js} +53 -4
  9. package/dist/chunks/{chunk-3S2QGKYZ.js → chunk-DJ4JEVDI.js} +1 -1
  10. package/dist/chunks/{chunk-FZZWTDNQ.js → chunk-FCYCUCLI.js} +2 -2
  11. package/dist/chunks/{chunk-U3FBUYRS.js → chunk-HAZXLIKZ.js} +1 -1
  12. package/dist/chunks/{chunk-RB7WQKNC.js → chunk-IR674PKY.js} +5 -2
  13. package/dist/chunks/{chunk-5MVXR7B7.js → chunk-JAUGUJR3.js} +1 -1
  14. package/dist/chunks/{chunk-Q7GZMMHB.js → chunk-JIX2UI23.js} +3 -3
  15. package/dist/chunks/{chunk-ITU4COOO.js → chunk-KGPSD6TA.js} +9 -44
  16. package/dist/chunks/{chunk-T63I6OUR.js → chunk-KS5FONWU.js} +4 -4
  17. package/dist/chunks/{chunk-P726GMBL.js → chunk-LVR7QUSG.js} +1 -1
  18. package/dist/chunks/{chunk-O2QNLUYX.js → chunk-S2N7BLSM.js} +1 -1
  19. package/dist/chunks/{chunk-4BEUS7AL.js → chunk-SCQAJO6E.js} +88 -2
  20. package/dist/chunks/{chunk-Q4A2Q46Z.js → chunk-TYXSXFVM.js} +4 -4
  21. package/dist/chunks/{chunk-6ISLGUMI.js → chunk-UDIFOPZL.js} +4 -4
  22. package/dist/chunks/{chunk-TV7GKFSY.js → chunk-VDTSYCXY.js} +2 -2
  23. package/dist/chunks/{chunk-GDAO4PGA.js → chunk-VFXF4O4X.js} +3 -3
  24. package/dist/chunks/{compile-vercel-config-XEZ2TPQ4.js → compile-vercel-config-DY63NSZV.js} +2 -2
  25. package/dist/chunks/{delete-O3F4EP2W.js → delete-WVLC7FLA.js} +3 -3
  26. package/dist/chunks/{disable-SJWGUQKZ.js → disable-VLYKCAM5.js} +3 -3
  27. package/dist/chunks/{discard-EQD6ENC3.js → discard-GGNJLKTH.js} +3 -3
  28. package/dist/chunks/{edit-NAIWNSXE.js → edit-ZU5K7DM3.js} +4 -4
  29. package/dist/chunks/{enable-LXO62HU5.js → enable-G3MUGP3W.js} +3 -3
  30. package/dist/chunks/{export-EHVTYAAP.js → export-QHSB2FON.js} +3 -3
  31. package/dist/chunks/{image-2DL7JEWW.js → image-CWHCW3N5.js} +4 -4
  32. package/dist/chunks/{inspect-PL3PE5IJ.js → inspect-HFCKYQQ3.js} +4 -4
  33. package/dist/chunks/{inspect-EGXHWKY3.js → inspect-OVAC6PJK.js} +4 -4
  34. package/dist/chunks/{inspect-Z3QJOMNP.js → inspect-QJSREPM3.js} +4 -4
  35. package/dist/chunks/{inspect-6IHZTLFA.js → inspect-W6RHYESL.js} +4 -4
  36. package/dist/chunks/{list-KNRPDNQF.js → list-2XYQW3YA.js} +4 -4
  37. package/dist/chunks/{list-BB4T4KT5.js → list-R37YS5CX.js} +3 -3
  38. package/dist/chunks/{ls-EP4Q6VF4.js → ls-7JNUKRV2.js} +4 -4
  39. package/dist/chunks/{ls-IQKMDRUB.js → ls-HKVAT223.js} +4 -4
  40. package/dist/chunks/{ls-MUS72LBS.js → ls-JJXUYZU7.js} +4 -4
  41. package/dist/chunks/{ls-FTQGK4R6.js → ls-X7Y37IPT.js} +5 -5
  42. package/dist/chunks/{publish-27V2MMFS.js → publish-MYVZ4UTW.js} +3 -3
  43. package/dist/chunks/{query-C6FEOG5R.js → query-ZH2YJPAC.js} +3 -3
  44. package/dist/chunks/{reorder-DCSIJX72.js → reorder-VY53EYZJ.js} +3 -3
  45. package/dist/chunks/{restore-NRUBGNSK.js → restore-F2AEG3WO.js} +3 -3
  46. package/dist/chunks/{rm-EZFCCZFT.js → rm-IDSOMXQR.js} +4 -4
  47. package/dist/chunks/{rm-NMSG2WG6.js → rm-T6Z6WZZN.js} +4 -4
  48. package/dist/chunks/{rm-GWW57H2V.js → rm-VUL4FHMX.js} +5 -5
  49. package/dist/chunks/{rule-inspect-XPZJO3Y4.js → rule-inspect-ELB7P5YA.js} +5 -5
  50. package/dist/chunks/{rules-C6SB24UO.js → rules-XR6U5U7F.js} +7 -7
  51. package/dist/chunks/{schema-Z6L3EN6F.js → schema-WKPB25ZF.js} +3 -3
  52. package/dist/chunks/{tags-5PFVWGLK.js → tags-NSWTVGHE.js} +3 -3
  53. package/dist/chunks/{update-BCLMLJM7.js → update-H4Q24DK4.js} +5 -5
  54. package/dist/commands/build/index.js +3268 -220
  55. package/dist/commands/deploy/index.js +11 -11
  56. package/dist/commands/dev/index.js +9 -9
  57. package/dist/commands/env/index.js +5 -5
  58. package/dist/commands/link/index.js +8 -8
  59. package/dist/commands/list/index.js +10 -4
  60. package/dist/commands-bulk.js +564 -68
  61. package/dist/index.js +9 -9
  62. package/dist/version.mjs +1 -1
  63. package/package.json +20 -18
@@ -9,7 +9,7 @@ import {
9
9
  handleVcrApiError,
10
10
  resolveVcrScope,
11
11
  validateVcrJsonOutput
12
- } from "./chunk-JHQOIGTY.js";
12
+ } from "./chunk-BEETD7P4.js";
13
13
  import {
14
14
  outputError
15
15
  } from "./chunk-BUZRVER7.js";
@@ -22,12 +22,12 @@ import "./chunk-AUECDTMX.js";
22
22
  import {
23
23
  AGENT_REASON
24
24
  } from "./chunk-QH7WYDEP.js";
25
- import "./chunk-P726GMBL.js";
26
- import "./chunk-RB7WQKNC.js";
25
+ import "./chunk-LVR7QUSG.js";
26
+ import "./chunk-IR674PKY.js";
27
27
  import {
28
28
  buildCommandWithGlobalFlags,
29
29
  outputAgentError
30
- } from "./chunk-IZOHLD5D.js";
30
+ } from "./chunk-DDS5Z2MB.js";
31
31
  import "./chunk-ECCWJHC6.js";
32
32
  import {
33
33
  getFlagsSpecification,
@@ -9,8 +9,8 @@ import {
9
9
  handleRulesApiError,
10
10
  parseRulesFlagsAndScope,
11
11
  rulesCollectionPath
12
- } from "./chunk-7PAKWBN4.js";
13
- import "./chunk-GDAO4PGA.js";
12
+ } from "./chunk-DBA4N3OZ.js";
13
+ import "./chunk-VFXF4O4X.js";
14
14
  import "./chunk-BUZRVER7.js";
15
15
  import {
16
16
  validateJsonOutput
@@ -21,12 +21,12 @@ import {
21
21
  import {
22
22
  AGENT_REASON
23
23
  } from "./chunk-QH7WYDEP.js";
24
- import "./chunk-P726GMBL.js";
25
- import "./chunk-RB7WQKNC.js";
24
+ import "./chunk-LVR7QUSG.js";
25
+ import "./chunk-IR674PKY.js";
26
26
  import {
27
27
  buildCommandWithGlobalFlags,
28
28
  outputAgentError
29
- } from "./chunk-IZOHLD5D.js";
29
+ } from "./chunk-DDS5Z2MB.js";
30
30
  import "./chunk-ECCWJHC6.js";
31
31
  import {
32
32
  getFlagsSpecification,
@@ -7,7 +7,7 @@ const __dirname = __dirname_(__filename);
7
7
  import {
8
8
  VERCEL_DIR,
9
9
  isVercelTomlEnabled
10
- } from "./chunk-RB7WQKNC.js";
10
+ } from "./chunk-IR674PKY.js";
11
11
  import {
12
12
  parseArguments
13
13
  } from "./chunk-EJ6GQI6F.js";
@@ -6,7 +6,7 @@ const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
7
  import {
8
8
  require_lib
9
- } from "./chunk-RB7WQKNC.js";
9
+ } from "./chunk-IR674PKY.js";
10
10
  import {
11
11
  isNativeBinaryInstall
12
12
  } from "./chunk-ECCWJHC6.js";
@@ -15,15 +15,15 @@ import {
15
15
  } from "./chunk-QH7WYDEP.js";
16
16
  import {
17
17
  getScope
18
- } from "./chunk-P726GMBL.js";
18
+ } from "./chunk-LVR7QUSG.js";
19
19
  import {
20
20
  getLinkedProject,
21
21
  getProjectByNameOrId
22
- } from "./chunk-RB7WQKNC.js";
22
+ } from "./chunk-IR674PKY.js";
23
23
  import {
24
24
  buildCommandWithGlobalFlags,
25
25
  outputAgentError
26
- } from "./chunk-IZOHLD5D.js";
26
+ } from "./chunk-DDS5Z2MB.js";
27
27
  import {
28
28
  ProjectNotFound,
29
29
  isAPIError,
@@ -7,17 +7,17 @@ const __dirname = __dirname_(__filename);
7
7
  import {
8
8
  getUpdateCommandInfo,
9
9
  isGlobal
10
- } from "./chunk-FVI6UYNL.js";
10
+ } from "./chunk-6W7I5IOO.js";
11
11
  import {
12
12
  getGlobalPathConfig,
13
13
  progress,
14
14
  writeToConfigFile
15
- } from "./chunk-FZZWTDNQ.js";
15
+ } from "./chunk-FCYCUCLI.js";
16
16
  import {
17
17
  apiCommand,
18
18
  listSubcommand3 as listSubcommand,
19
19
  loginCommand
20
- } from "./chunk-4BEUS7AL.js";
20
+ } from "./chunk-SCQAJO6E.js";
21
21
  import {
22
22
  require_semver
23
23
  } from "./chunk-IB5L4LKZ.js";
@@ -26,7 +26,7 @@ import {
26
26
  } from "./chunk-YSIZGIDP.js";
27
27
  import {
28
28
  login
29
- } from "./chunk-RB7WQKNC.js";
29
+ } from "./chunk-IR674PKY.js";
30
30
  import {
31
31
  TelemetryClient,
32
32
  isNativeBinaryInstall
@@ -6,7 +6,7 @@ const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
7
  import {
8
8
  resolveAlertsScope
9
- } from "./chunk-GDAO4PGA.js";
9
+ } from "./chunk-VFXF4O4X.js";
10
10
  import {
11
11
  handleValidationError,
12
12
  outputError,
@@ -18,7 +18,7 @@ import {
18
18
  import {
19
19
  buildCommandWithGlobalFlags,
20
20
  outputAgentError
21
- } from "./chunk-IZOHLD5D.js";
21
+ } from "./chunk-DDS5Z2MB.js";
22
22
 
23
23
  // src/commands/alerts/rules/parse-scope.ts
24
24
  async function parseRulesFlagsAndScope(client, flags, jsonOutput) {
@@ -39,6 +39,14 @@ var GLOBAL_FLAG_NAMES = /* @__PURE__ */ new Set([
39
39
  // --token/-t are intentionally excluded and stripped via stripSensitiveAuthArgs.
40
40
  ]);
41
41
  var BOOLEAN_GLOBAL_FLAG_NAMES = /* @__PURE__ */ new Set(["--yes", "-y", "--non-interactive"]);
42
+ var GLOBAL_FLAG_SHORTHANDS = {
43
+ "-y": "--yes",
44
+ "-S": "--scope",
45
+ "-T": "--team"
46
+ };
47
+ function canonicalGlobalFlagName(name) {
48
+ return GLOBAL_FLAG_SHORTHANDS[name] ?? name;
49
+ }
42
50
  function getGlobalFlagsFromArgv(argv) {
43
51
  const args = stripSensitiveAuthArgs(argv.slice(2));
44
52
  const out = [];
@@ -83,13 +91,18 @@ function buildIntegrationCommandTailFromArgv(argv) {
83
91
  }
84
92
  function buildCommandWithGlobalFlags(argv, commandTemplate, pkgName = packageName, options) {
85
93
  let preserved = getGlobalFlagsFromArgv(argv);
86
- if (options?.excludeFlags?.length) {
87
- const exclude = new Set(options.excludeFlags);
94
+ const exclude = new Set(
95
+ commandTemplate.split(/\s+/).filter((token) => token.startsWith("-")).map((token) => canonicalGlobalFlagName(token.split("=")[0]))
96
+ );
97
+ for (const flag of options?.excludeFlags ?? []) {
98
+ exclude.add(canonicalGlobalFlagName(flag));
99
+ }
100
+ if (exclude.size) {
88
101
  const out = [];
89
102
  for (let i = 0; i < preserved.length; i++) {
90
103
  const arg = preserved[i];
91
104
  const name = arg.startsWith("--") ? arg.split("=")[0] : arg;
92
- if (exclude.has(name)) {
105
+ if (exclude.has(canonicalGlobalFlagName(name))) {
93
106
  if (!arg.includes("=") && i + 1 < preserved.length && !preserved[i + 1].startsWith("-")) {
94
107
  i++;
95
108
  }
@@ -317,6 +330,32 @@ function buildNextStepsForEdgeConfig(client) {
317
330
  ];
318
331
  }
319
332
  var EDGE_CONFIG_NON_INTERACTIVE_HINT = "Edge Config commands use your current team scope. Pass --scope or run `vercel teams switch` if the store is missing.";
333
+ var 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.";
334
+ function buildNextStepsForList(client, projectName) {
335
+ return [
336
+ projectName ? {
337
+ command: buildCommandWithGlobalFlags(
338
+ client.argv,
339
+ `project ls --filter ${projectName}`
340
+ ),
341
+ when: "Search projects matching the attempted name to find the right one"
342
+ } : {
343
+ command: buildCommandWithGlobalFlags(
344
+ client.argv,
345
+ "project ls --filter <name>"
346
+ ),
347
+ when: "Search projects by name substring to find the right one (replace <name>)"
348
+ },
349
+ {
350
+ command: buildCommandWithGlobalFlags(client.argv, "list --all"),
351
+ when: "List deployments across all projects in the current scope"
352
+ },
353
+ {
354
+ command: buildCommandWithGlobalFlags(client.argv, "link"),
355
+ when: "Re-link this directory to the correct Vercel project"
356
+ }
357
+ ];
358
+ }
320
359
  function buildNextStepsForProjectSubcommands(client, variant) {
321
360
  const byName = variant === "access-groups" ? {
322
361
  template: "project access-groups <name>",
@@ -327,6 +366,9 @@ function buildNextStepsForProjectSubcommands(client, variant) {
327
366
  } : variant === "protection" ? {
328
367
  template: "project protection <name>",
329
368
  when: "Show deployment protection by project name (replace <name>)"
369
+ } : variant === "update" ? {
370
+ template: "project update <name> --framework <slug>",
371
+ when: "Update a framework preset by project name (replace <name> and <slug>)"
330
372
  } : variant === "speed-insights" ? {
331
373
  template: "project speed-insights <name>",
332
374
  when: "Enable Speed Insights by project name (replace <name>)"
@@ -363,6 +405,12 @@ function resolveNonInteractiveDefaults(client, variant) {
363
405
  hint: EDGE_CONFIG_NON_INTERACTIVE_HINT
364
406
  };
365
407
  }
408
+ if (variant === "list") {
409
+ return {
410
+ next: buildNextStepsForList(client),
411
+ hint: LIST_ERROR_HINT
412
+ };
413
+ }
366
414
  return {
367
415
  next: buildNextStepsForProjectSubcommands(client, variant),
368
416
  hint: PROJECT_SUBCOMMAND_ERROR_HINT
@@ -435,7 +483,8 @@ function exitWithNonInteractiveError(client, err, exitCode = 1, options = {
435
483
  {
436
484
  status: "error",
437
485
  reason: "project_not_found",
438
- message: err instanceof Error ? err.message : String(err)
486
+ message: err instanceof Error ? err.message : String(err),
487
+ ...variant === "list" && options.projectName ? { next: buildNextStepsForList(client, options.projectName) } : {}
439
488
  },
440
489
  exitCode,
441
490
  variant
@@ -8,7 +8,7 @@ import {
8
8
  formatCondition,
9
9
  formatTransform,
10
10
  isTargetTransform
11
- } from "./chunk-TV7GKFSY.js";
11
+ } from "./chunk-VDTSYCXY.js";
12
12
  import {
13
13
  output_manager_default
14
14
  } from "./chunk-OX7KI3LF.js";
@@ -9,7 +9,7 @@ import {
9
9
  } from "./chunk-V5P25P7F.js";
10
10
  import {
11
11
  getLocalPathConfig
12
- } from "./chunk-YWLVPKNT.js";
12
+ } from "./chunk-6SVPJXCO.js";
13
13
  import {
14
14
  DEFAULT_VERCEL_CONFIG_FILENAME,
15
15
  VERCEL_CONFIG_EXTENSIONS,
@@ -36,7 +36,7 @@ import {
36
36
  useKeypress,
37
37
  usePrefix,
38
38
  useState
39
- } from "./chunk-RB7WQKNC.js";
39
+ } from "./chunk-IR674PKY.js";
40
40
  import {
41
41
  require_load_json_file
42
42
  } from "./chunk-ECCWJHC6.js";
@@ -6,7 +6,7 @@ const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
7
  import {
8
8
  STANDARD_ENVIRONMENTS
9
- } from "./chunk-RB7WQKNC.js";
9
+ } from "./chunk-IR674PKY.js";
10
10
  import {
11
11
  getCommandName,
12
12
  require_lib
@@ -9,7 +9,7 @@ import {
9
9
  getPreservedArgsForEnvPull,
10
10
  outputActionRequired,
11
11
  outputAgentError
12
- } from "./chunk-IZOHLD5D.js";
12
+ } from "./chunk-DDS5Z2MB.js";
13
13
  import {
14
14
  TelemetryClient,
15
15
  require_dist as require_dist2,
@@ -16204,6 +16204,10 @@ var require_frameworks = __commonJS({
16204
16204
  website: "https://storybook.js.org",
16205
16205
  ignoreRuntimes: ["@vercel/next", "@vercel/node"],
16206
16206
  disableRootMiddleware: true,
16207
+ // Storybook is a devDependency of many apps that deploy something else
16208
+ // entirely, so detecting it is not evidence the user intends to deploy
16209
+ // Storybook itself.
16210
+ detectionConfidence: "weak",
16207
16211
  detectors: {
16208
16212
  every: [
16209
16213
  {
@@ -61812,7 +61816,6 @@ export {
61812
61816
  printRemoteUrls,
61813
61817
  selectAndParseRemoteUrl,
61814
61818
  checkExistsAndConnect,
61815
- getGitRootDirectory,
61816
61819
  printAlignedLabel,
61817
61820
  getRepoLink,
61818
61821
  resolveGitRemote,
@@ -8,7 +8,7 @@ import {
8
8
  VERCEL_DIR,
9
9
  VERCEL_DIR_PROJECT,
10
10
  require_lib
11
- } from "./chunk-RB7WQKNC.js";
11
+ } from "./chunk-IR674PKY.js";
12
12
  import {
13
13
  require_dist
14
14
  } from "./chunk-OX7KI3LF.js";
@@ -7,16 +7,16 @@ const __dirname = __dirname_(__filename);
7
7
  import {
8
8
  printProjectNotFoundError,
9
9
  setupAndLink
10
- } from "./chunk-6ISLGUMI.js";
10
+ } from "./chunk-UDIFOPZL.js";
11
11
  import {
12
12
  getLinkedProject,
13
13
  param,
14
14
  resolveProjectCwd
15
- } from "./chunk-RB7WQKNC.js";
15
+ } from "./chunk-IR674PKY.js";
16
16
  import {
17
17
  buildCommandWithYes,
18
18
  outputActionRequired
19
- } from "./chunk-IZOHLD5D.js";
19
+ } from "./chunk-DDS5Z2MB.js";
20
20
  import {
21
21
  getCommandName,
22
22
  getCommandNamePlain
@@ -18,7 +18,7 @@ import {
18
18
  require_lib,
19
19
  require_minimatch,
20
20
  require_pluralize
21
- } from "./chunk-RB7WQKNC.js";
21
+ } from "./chunk-IR674PKY.js";
22
22
  import {
23
23
  CantParseJSONFile,
24
24
  cmd,
@@ -11229,7 +11229,6 @@ import {
11229
11229
  isExperimentalBackendsEnabled,
11230
11230
  isExperimentalService,
11231
11231
  isExperimentalServiceV2,
11232
- isExternalSymlink,
11233
11232
  isSymbolicLink
11234
11233
  } from "@vercel/build-utils";
11235
11234
 
@@ -11802,17 +11801,12 @@ async function writeEdgeFunction(repoRootPath, outputDir, edgeFunction, path2, e
11802
11801
  }
11803
11802
  await import_fs_extra5.default.mkdirp(dest);
11804
11803
  const ops = [];
11805
- const sharedDest = join4(outputDir, "shared");
11806
- const { files, filePathMap, shared } = filesWithoutFsRefs(
11804
+ const { files, filePathMap } = filesWithoutFsRefs(
11807
11805
  edgeFunction.files,
11808
11806
  repoRootPath,
11809
- sharedDest,
11810
11807
  standalone
11811
11808
  );
11812
11809
  ops.push(download(files, dest));
11813
- if (shared) {
11814
- ops.push(download(shared, sharedDest));
11815
- }
11816
11810
  const config = {
11817
11811
  runtime: "edge",
11818
11812
  ...edgeFunction,
@@ -11841,18 +11835,9 @@ async function writeLambda(repoRootPath, outputDir, lambda, path2, functionConfi
11841
11835
  const ops = [];
11842
11836
  let filePathMap;
11843
11837
  if (lambda.files) {
11844
- const sharedDest = join4(outputDir, "shared");
11845
- const f = filesWithoutFsRefs(
11846
- lambda.files,
11847
- repoRootPath,
11848
- sharedDest,
11849
- standalone
11850
- );
11838
+ const f = filesWithoutFsRefs(lambda.files, repoRootPath, standalone);
11851
11839
  filePathMap = f.filePathMap;
11852
11840
  ops.push(download(f.files, dest));
11853
- if (f.shared) {
11854
- ops.push(download(f.shared, sharedDest));
11855
- }
11856
11841
  } else if (lambda.zipBuffer) {
11857
11842
  ops.push(unzip(lambda.zipBuffer, dest));
11858
11843
  } else {
@@ -12007,41 +11992,21 @@ async function* findDirs(name, dir, root = dir) {
12007
11992
  }
12008
11993
  }
12009
11994
  }
12010
- function stripParentSegments(path2) {
12011
- const normalized = normalizePath(path2);
12012
- const segments = normalized.split("/");
12013
- let i = 0;
12014
- while (i < segments.length && segments[i] === "..") {
12015
- i++;
12016
- }
12017
- return segments.slice(i).join("/");
12018
- }
12019
- function filesWithoutFsRefs(files, repoRootPath, sharedDest, standalone) {
12020
- const repoRootResolved = process.env.VERCEL_RESOLVE_ROOT_DIRECTORY === "1";
12021
- const symlinkDirs = repoRootResolved && standalone && sharedDest ? Object.entries(files).filter(([, f]) => f.type === "FileFsRef" && isSymbolicLink(f.mode)).map(([p]) => `${normalizePath(p)}/`) : [];
11995
+ function filesWithoutFsRefs(files, repoRootPath, standalone) {
11996
+ const symlinkDirs = standalone ? Object.entries(files).filter(([, f]) => f.type === "FileFsRef" && isSymbolicLink(f.mode)).map(([p]) => `${normalizePath(p)}/`) : [];
12022
11997
  let filePathMap;
12023
11998
  const out = {};
12024
- const shared = {};
12025
11999
  for (const [path2, file] of Object.entries(files)) {
12026
12000
  if (file.type === "FileFsRef") {
12027
- if (!filePathMap)
12028
- filePathMap = {};
12029
- if (standalone && sharedDest && repoRootResolved) {
12001
+ if (standalone) {
12030
12002
  const normalized = normalizePath(path2);
12031
12003
  if (symlinkDirs.some((prefix) => normalized.startsWith(prefix))) {
12032
12004
  continue;
12033
12005
  }
12034
12006
  out[normalized] = file;
12035
- } else if (standalone && sharedDest) {
12036
- if (isExternalSymlink(file)) {
12037
- continue;
12038
- }
12039
- const funcPath = stripParentSegments(path2);
12040
- shared[funcPath] = file;
12041
- filePathMap[funcPath] = normalizePath(
12042
- relative2(repoRootPath, join4(sharedDest, funcPath))
12043
- );
12044
12007
  } else {
12008
+ if (!filePathMap)
12009
+ filePathMap = {};
12045
12010
  filePathMap[normalizePath(path2)] = normalizePath(
12046
12011
  relative2(repoRootPath, file.fsPath)
12047
12012
  );
@@ -12050,7 +12015,7 @@ function filesWithoutFsRefs(files, repoRootPath, sharedDest, standalone) {
12050
12015
  out[path2] = file;
12051
12016
  }
12052
12017
  }
12053
- return { files: out, filePathMap, shared };
12018
+ return { files: out, filePathMap };
12054
12019
  }
12055
12020
 
12056
12021
  export {
@@ -10,7 +10,7 @@ import {
10
10
  progress,
11
11
  require_dist as require_dist2,
12
12
  sleep
13
- } from "./chunk-FZZWTDNQ.js";
13
+ } from "./chunk-FCYCUCLI.js";
14
14
  import {
15
15
  suggestNextCommands
16
16
  } from "./chunk-XBN2O34P.js";
@@ -20,7 +20,7 @@ import {
20
20
  } from "./chunk-SGL3NMOP.js";
21
21
  import {
22
22
  CommandTimeout
23
- } from "./chunk-4BEUS7AL.js";
23
+ } from "./chunk-SCQAJO6E.js";
24
24
  import {
25
25
  showPluginTipIfNeeded
26
26
  } from "./chunk-NJUPUGOE.js";
@@ -29,7 +29,7 @@ import {
29
29
  } from "./chunk-64IF634X.js";
30
30
  import {
31
31
  getScope
32
- } from "./chunk-P726GMBL.js";
32
+ } from "./chunk-LVR7QUSG.js";
33
33
  import {
34
34
  getProjectByNameOrId,
35
35
  param,
@@ -37,7 +37,7 @@ import {
37
37
  require_dist as require_dist3,
38
38
  require_pluralize,
39
39
  ua_default
40
- } from "./chunk-RB7WQKNC.js";
40
+ } from "./chunk-IR674PKY.js";
41
41
  import {
42
42
  require_strip_ansi,
43
43
  responseError
@@ -11,7 +11,7 @@ import {
11
11
  getTeamById,
12
12
  getUser,
13
13
  getVercelDirectory
14
- } from "./chunk-RB7WQKNC.js";
14
+ } from "./chunk-IR674PKY.js";
15
15
  import {
16
16
  TeamDeleted
17
17
  } from "./chunk-P6AK7SVK.js";
@@ -6,7 +6,7 @@ const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
7
  import {
8
8
  getEnvTargetPlaceholder
9
- } from "./chunk-RB7WQKNC.js";
9
+ } from "./chunk-IR674PKY.js";
10
10
  import {
11
11
  projectOption,
12
12
  yesOption
@@ -28,10 +28,10 @@ import {
28
28
  import {
29
29
  buildCommand,
30
30
  pullCommand
31
- } from "./chunk-O2QNLUYX.js";
31
+ } from "./chunk-S2N7BLSM.js";
32
32
  import {
33
33
  envCommand
34
- } from "./chunk-RB7WQKNC.js";
34
+ } from "./chunk-IR674PKY.js";
35
35
  import {
36
36
  confirmOption,
37
37
  deploymentOption,
@@ -7277,6 +7277,90 @@ var renameSubcommand = {
7277
7277
  }
7278
7278
  ]
7279
7279
  };
7280
+ var updateSubcommand5 = {
7281
+ name: "update",
7282
+ aliases: ["set"],
7283
+ description: "Update one or more project settings; omitted settings remain unchanged",
7284
+ arguments: [
7285
+ {
7286
+ name: "name",
7287
+ required: false
7288
+ }
7289
+ ],
7290
+ options: [
7291
+ {
7292
+ name: "framework",
7293
+ shorthand: null,
7294
+ type: String,
7295
+ argument: "SLUG",
7296
+ description: 'Set the framework preset by slug; use "other" to clear the preset',
7297
+ deprecated: false
7298
+ },
7299
+ {
7300
+ name: "build-command",
7301
+ shorthand: null,
7302
+ type: String,
7303
+ argument: "COMMAND",
7304
+ description: "Set the build command",
7305
+ deprecated: false
7306
+ },
7307
+ {
7308
+ name: "dev-command",
7309
+ shorthand: null,
7310
+ type: String,
7311
+ argument: "COMMAND",
7312
+ description: "Set the development command",
7313
+ deprecated: false
7314
+ },
7315
+ {
7316
+ name: "install-command",
7317
+ shorthand: null,
7318
+ type: String,
7319
+ argument: "COMMAND",
7320
+ description: "Set the install command",
7321
+ deprecated: false
7322
+ },
7323
+ {
7324
+ name: "output-directory",
7325
+ shorthand: null,
7326
+ type: String,
7327
+ argument: "DIR",
7328
+ description: "Set the output directory",
7329
+ deprecated: false
7330
+ },
7331
+ {
7332
+ name: "auto-detect",
7333
+ shorthand: null,
7334
+ type: [String],
7335
+ argument: "SETTING",
7336
+ description: "Reset a setting to automatic detection; repeat for build-command, dev-command, install-command, or output-directory",
7337
+ deprecated: false
7338
+ },
7339
+ formatOption
7340
+ ],
7341
+ examples: [
7342
+ {
7343
+ name: "Set the linked project framework preset to Next.js",
7344
+ value: `${packageName} project update --framework nextjs`
7345
+ },
7346
+ {
7347
+ name: "Set a named project framework preset to Vite",
7348
+ value: `${packageName} project update my-project --framework vite`
7349
+ },
7350
+ {
7351
+ name: "Update multiple settings in one command",
7352
+ value: `${packageName} project update my-project --build-command "pnpm build" --output-directory dist`
7353
+ },
7354
+ {
7355
+ name: "Reset individual settings to automatic detection",
7356
+ value: `${packageName} project update my-project --auto-detect build-command --auto-detect output-directory`
7357
+ },
7358
+ {
7359
+ name: "Clear the framework preset and return JSON",
7360
+ value: `${packageName} project update my-project --framework other --format json`
7361
+ }
7362
+ ]
7363
+ };
7280
7364
  var tokenSubcommand2 = {
7281
7365
  name: "token",
7282
7366
  aliases: [],
@@ -7602,6 +7686,7 @@ var projectCommand = {
7602
7686
  protectionSubcommand,
7603
7687
  webAnalyticsSubcommand,
7604
7688
  speedInsightsSubcommand,
7689
+ updateSubcommand5,
7605
7690
  renameSubcommand,
7606
7691
  removeSubcommand12,
7607
7692
  tokenSubcommand2
@@ -9929,6 +10014,7 @@ export {
9929
10014
  listSubcommand13,
9930
10015
  removeSubcommand12,
9931
10016
  renameSubcommand,
10017
+ updateSubcommand5,
9932
10018
  tokenSubcommand2,
9933
10019
  accessSummarySubcommand,
9934
10020
  membersSubcommand,
@@ -6,7 +6,7 @@ const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
7
  import {
8
8
  writeProjectSettings
9
- } from "./chunk-5MVXR7B7.js";
9
+ } from "./chunk-JAUGUJR3.js";
10
10
  import {
11
11
  autoInstallVercelPlugin
12
12
  } from "./chunk-NJUPUGOE.js";
@@ -15,10 +15,10 @@ import {
15
15
  } from "./chunk-64IF634X.js";
16
16
  import {
17
17
  ensureLink
18
- } from "./chunk-Q7GZMMHB.js";
18
+ } from "./chunk-JIX2UI23.js";
19
19
  import {
20
20
  pullCommand
21
- } from "./chunk-O2QNLUYX.js";
21
+ } from "./chunk-S2N7BLSM.js";
22
22
  import {
23
23
  help
24
24
  } from "./chunk-YSIZGIDP.js";
@@ -28,7 +28,7 @@ import {
28
28
  envPullCommandLogic,
29
29
  humanizePath,
30
30
  parseTarget
31
- } from "./chunk-RB7WQKNC.js";
31
+ } from "./chunk-IR674PKY.js";
32
32
  import {
33
33
  TelemetryClient
34
34
  } from "./chunk-ECCWJHC6.js";