vercel 54.6.0 → 54.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 (68) hide show
  1. package/dist/chunks/{add-4JTZ2IN2.js → add-ACM2FI4N.js} +8 -8
  2. package/dist/chunks/{chunk-3TDGMELF.js → chunk-2R5WYHZW.js} +2 -2
  3. package/dist/chunks/{chunk-YP423QYK.js → chunk-3EOZ4ZDJ.js} +2 -2
  4. package/dist/chunks/{chunk-V23PMSXG.js → chunk-5K6XFQBY.js} +45 -777
  5. package/dist/chunks/{chunk-6PVIXIDG.js → chunk-6PSM4YC3.js} +3 -3
  6. package/dist/chunks/{chunk-TM2USC5N.js → chunk-7HAY2TY5.js} +3 -3
  7. package/dist/chunks/{chunk-ULXHXZCZ.js → chunk-7OUZIPHA.js} +1 -1
  8. package/dist/chunks/{chunk-KNTWCQDY.js → chunk-7Q62DZEF.js} +9 -7
  9. package/dist/chunks/{chunk-SRVNEJVN.js → chunk-CMQXECHW.js} +2 -2
  10. package/dist/chunks/{chunk-5EKBCYHA.js → chunk-CPWI2SWV.js} +2 -2
  11. package/dist/chunks/{chunk-XFSFHTAB.js → chunk-DDORH57D.js} +2 -2
  12. package/dist/chunks/{chunk-B43F7BHW.js → chunk-ERQAMRRQ.js} +2 -2
  13. package/dist/chunks/{chunk-LT7RPFRM.js → chunk-FO7QBAVZ.js} +4 -4
  14. package/dist/chunks/{chunk-TPCECDGK.js → chunk-FQ2EU7QM.js} +7 -7
  15. package/dist/chunks/{chunk-NYJXGEIR.js → chunk-FV5RQPKY.js} +1 -1
  16. package/dist/chunks/{chunk-JD4N3RDP.js → chunk-HW6MMF4G.js} +4 -4
  17. package/dist/chunks/{chunk-UGXBNJMO.js → chunk-IDFKAJW3.js} +1 -0
  18. package/dist/chunks/{chunk-7O3VXZBW.js → chunk-K5ISROJF.js} +1 -1
  19. package/dist/chunks/{chunk-MOA7PCJA.js → chunk-KFVFRVDK.js} +2 -2
  20. package/dist/chunks/{chunk-IZ6WAFPZ.js → chunk-L552VUSW.js} +2 -2
  21. package/dist/chunks/{chunk-TTOZFGDX.js → chunk-LOQRUMOE.js} +2 -2
  22. package/dist/chunks/{chunk-DJA3IN2X.js → chunk-O7SEN4RY.js} +2 -2
  23. package/dist/chunks/{chunk-PKUYGVBJ.js → chunk-QAHIBMRJ.js} +1513 -172
  24. package/dist/chunks/chunk-RKLHR2YE.js +152 -0
  25. package/dist/chunks/{chunk-XR64AS27.js → chunk-T4I25SRE.js} +66 -10
  26. package/dist/chunks/{chunk-C2V6DCWN.js → chunk-TIJBJ7EO.js} +2 -2
  27. package/dist/chunks/{chunk-YAOSNCGO.js → chunk-TJQZGB6S.js} +2 -2
  28. package/dist/chunks/{chunk-BT4S267X.js → chunk-TSUZWPXS.js} +4 -4
  29. package/dist/chunks/{chunk-C7WFNC2H.js → chunk-TVXUA533.js} +2 -2
  30. package/dist/chunks/{chunk-KSWKCPMW.js → chunk-UOYAPQ6P.js} +10 -14
  31. package/dist/chunks/{chunk-AQMLIXGD.js → chunk-WAGY7TO7.js} +1 -1
  32. package/dist/chunks/{chunk-ZINNI4TC.js → chunk-WWLVPUED.js} +1 -1
  33. package/dist/chunks/{chunk-OLXE4TRH.js → chunk-XC4VCXLN.js} +7 -7
  34. package/dist/chunks/{chunk-H33IJ7OP.js → chunk-XQUJUKTN.js} +1 -1
  35. package/dist/chunks/{chunk-OM5Z2KO5.js → chunk-ZTHVV4KB.js} +1 -1
  36. package/dist/chunks/{compile-vercel-config-TJYP77GR.js → compile-vercel-config-UMMPRYHE.js} +4 -4
  37. package/dist/chunks/{delete-KMJUZ2FR.js → delete-ZIUHVZKU.js} +6 -6
  38. package/dist/chunks/{disable-JNVD32GK.js → disable-3I6Y3PMB.js} +6 -6
  39. package/dist/chunks/{discard-IHJUBIIP.js → discard-P4QEYWQI.js} +6 -6
  40. package/dist/chunks/{edit-SHG24GD3.js → edit-C7W4II4F.js} +7 -7
  41. package/dist/chunks/{enable-BPPOFBS5.js → enable-YLFEOJHC.js} +6 -6
  42. package/dist/chunks/{export-NXMANIFJ.js → export-AEWPAFG5.js} +6 -6
  43. package/dist/chunks/{inspect-3QUNVUYY.js → inspect-UTKNO4PH.js} +8 -8
  44. package/dist/chunks/{list-DIFVR5IT.js → list-G2JFMLAP.js} +6 -6
  45. package/dist/chunks/{list-3EEABCQ5.js → list-K6T37XX7.js} +9 -9
  46. package/dist/chunks/{ls-W3EW6GXH.js → ls-SDUUITFJ.js} +8 -8
  47. package/dist/chunks/{publish-MJWCDLBZ.js → publish-CVDJGN4U.js} +6 -6
  48. package/dist/chunks/{query-C6RJSZM3.js → query-NZR7YNV5.js} +8 -8
  49. package/dist/chunks/{reorder-PPF7SVNU.js → reorder-XXHIOZ4E.js} +6 -6
  50. package/dist/chunks/{restore-EOJNTA2T.js → restore-SCM6T5BD.js} +6 -6
  51. package/dist/chunks/{rm-WEZ4K7UG.js → rm-I24CJRZY.js} +8 -8
  52. package/dist/chunks/{rule-inspect-PXCF73V3.js → rule-inspect-3K5RYFGG.js} +8 -8
  53. package/dist/chunks/{rules-DF7IFF4R.js → rules-T2VAUOFG.js} +8 -8
  54. package/dist/chunks/{schema-3UFDQZFG.js → schema-F6W32I35.js} +9 -9
  55. package/dist/chunks/{types-V6KTYGWP.js → types-LU2G5DD3.js} +4 -4
  56. package/dist/chunks/{update-FNAEWCUN.js → update-ZYQWTTCL.js} +8 -8
  57. package/dist/commands/build/index.js +534 -394
  58. package/dist/commands/deploy/index.js +23 -24
  59. package/dist/commands/dev/index.js +14 -14
  60. package/dist/commands/env/index.js +160 -95
  61. package/dist/commands/link/index.js +20 -21
  62. package/dist/commands/list/index.js +10 -10
  63. package/dist/commands-bulk.js +1503 -1277
  64. package/dist/index.js +20 -21
  65. package/dist/version.mjs +1 -1
  66. package/package.json +17 -17
  67. package/dist/chunks/chunk-76ZNZKIN.js +0 -17
  68. package/dist/chunks/chunk-HXXKDZQ6.js +0 -680
@@ -14,10 +14,10 @@ import {
14
14
  purchaseDomainIfAvailable,
15
15
  require_cjs,
16
16
  setupDomain
17
- } from "../../chunks/chunk-KSWKCPMW.js";
17
+ } from "../../chunks/chunk-UOYAPQ6P.js";
18
18
  import {
19
19
  readLocalConfig
20
- } from "../../chunks/chunk-V23PMSXG.js";
20
+ } from "../../chunks/chunk-5K6XFQBY.js";
21
21
  import {
22
22
  highlight
23
23
  } from "../../chunks/chunk-V5P25P7F.js";
@@ -28,7 +28,7 @@ import {
28
28
  import {
29
29
  getDeployment,
30
30
  mapCertError
31
- } from "../../chunks/chunk-NYJXGEIR.js";
31
+ } from "../../chunks/chunk-FV5RQPKY.js";
32
32
  import {
33
33
  validateJsonOutput
34
34
  } from "../../chunks/chunk-XPKWKPWA.js";
@@ -41,34 +41,33 @@ import {
41
41
  deprecatedArchiveSplitTgz,
42
42
  getCommandAliases,
43
43
  initSubcommand
44
- } from "../../chunks/chunk-XR64AS27.js";
45
- import "../../chunks/chunk-YAOSNCGO.js";
46
- import "../../chunks/chunk-5EKBCYHA.js";
47
- import "../../chunks/chunk-TM2USC5N.js";
48
- import "../../chunks/chunk-3TDGMELF.js";
49
- import "../../chunks/chunk-C2V6DCWN.js";
50
- import "../../chunks/chunk-YP423QYK.js";
51
- import "../../chunks/chunk-DJA3IN2X.js";
44
+ } from "../../chunks/chunk-T4I25SRE.js";
45
+ import "../../chunks/chunk-TJQZGB6S.js";
46
+ import "../../chunks/chunk-CPWI2SWV.js";
47
+ import "../../chunks/chunk-7HAY2TY5.js";
48
+ import "../../chunks/chunk-2R5WYHZW.js";
49
+ import "../../chunks/chunk-TIJBJ7EO.js";
50
+ import "../../chunks/chunk-3EOZ4ZDJ.js";
51
+ import "../../chunks/chunk-O7SEN4RY.js";
52
52
  import {
53
53
  pickOverrides
54
- } from "../../chunks/chunk-7O3VXZBW.js";
55
- import "../../chunks/chunk-76ZNZKIN.js";
54
+ } from "../../chunks/chunk-K5ISROJF.js";
56
55
  import {
57
56
  ensureLink
58
- } from "../../chunks/chunk-BT4S267X.js";
57
+ } from "../../chunks/chunk-TSUZWPXS.js";
59
58
  import {
60
59
  validatePaths,
61
60
  validateRootDirectory
62
- } from "../../chunks/chunk-TPCECDGK.js";
61
+ } from "../../chunks/chunk-FQ2EU7QM.js";
63
62
  import {
64
63
  AGENT_STATUS
65
64
  } from "../../chunks/chunk-L6Q2EQPI.js";
66
- import "../../chunks/chunk-6PVIXIDG.js";
67
- import "../../chunks/chunk-HXXKDZQ6.js";
68
- import "../../chunks/chunk-C7WFNC2H.js";
65
+ import "../../chunks/chunk-6PSM4YC3.js";
66
+ import "../../chunks/chunk-RKLHR2YE.js";
67
+ import "../../chunks/chunk-TVXUA533.js";
69
68
  import {
70
69
  help
71
- } from "../../chunks/chunk-TTOZFGDX.js";
70
+ } from "../../chunks/chunk-LOQRUMOE.js";
72
71
  import {
73
72
  compileVercelConfig,
74
73
  createGitMeta,
@@ -78,25 +77,25 @@ import {
78
77
  printAlignedLabel,
79
78
  require_dist as require_dist2,
80
79
  require_lib
81
- } from "../../chunks/chunk-PKUYGVBJ.js";
80
+ } from "../../chunks/chunk-QAHIBMRJ.js";
82
81
  import {
83
82
  TelemetryClient
84
83
  } from "../../chunks/chunk-4CIXZOP4.js";
85
84
  import {
86
85
  outputAgentError
87
- } from "../../chunks/chunk-ULXHXZCZ.js";
86
+ } from "../../chunks/chunk-7OUZIPHA.js";
88
87
  import {
89
88
  require_ms,
90
89
  stamp_default
91
90
  } from "../../chunks/chunk-CO5D46AG.js";
92
91
  import "../../chunks/chunk-N2T234LO.js";
93
- import "../../chunks/chunk-OM5Z2KO5.js";
92
+ import "../../chunks/chunk-ZTHVV4KB.js";
94
93
  import {
95
94
  getCommandNameWithGlobalFlags,
96
95
  getFlagsSpecification,
97
96
  parseArguments,
98
97
  printError
99
- } from "../../chunks/chunk-H33IJ7OP.js";
98
+ } from "../../chunks/chunk-XQUJUKTN.js";
100
99
  import {
101
100
  AliasDomainConfigured,
102
101
  BuildError,
@@ -122,7 +121,7 @@ import {
122
121
  getCommandName,
123
122
  isAPIError,
124
123
  require_bytes
125
- } from "../../chunks/chunk-UGXBNJMO.js";
124
+ } from "../../chunks/chunk-IDFKAJW3.js";
126
125
  import "../../chunks/chunk-P4QNYOFB.js";
127
126
  import {
128
127
  emoji,
@@ -9,7 +9,7 @@ import {
9
9
  } from "../../chunks/chunk-2HSQ7YUK.js";
10
10
  import {
11
11
  getUpdateCommand
12
- } from "../../chunks/chunk-B43F7BHW.js";
12
+ } from "../../chunks/chunk-ERQAMRRQ.js";
13
13
  import {
14
14
  highlight
15
15
  } from "../../chunks/chunk-V5P25P7F.js";
@@ -18,7 +18,7 @@ import {
18
18
  } from "../../chunks/chunk-YPQSDAEW.js";
19
19
  import {
20
20
  devCommand
21
- } from "../../chunks/chunk-C2V6DCWN.js";
21
+ } from "../../chunks/chunk-TIJBJ7EO.js";
22
22
  import {
23
23
  OUTPUT_DIR,
24
24
  getStaticServiceSchedules,
@@ -26,26 +26,26 @@ import {
26
26
  require_mime_types,
27
27
  require_npa,
28
28
  staticFiles
29
- } from "../../chunks/chunk-XFSFHTAB.js";
29
+ } from "../../chunks/chunk-DDORH57D.js";
30
30
  import "../../chunks/chunk-IB5L4LKZ.js";
31
31
  import {
32
32
  pickOverrides
33
- } from "../../chunks/chunk-7O3VXZBW.js";
33
+ } from "../../chunks/chunk-K5ISROJF.js";
34
34
  import "../../chunks/chunk-N733ZD4W.js";
35
35
  import {
36
36
  displayDetectedServices,
37
37
  printProjectNotFoundError,
38
38
  readConfig,
39
39
  setupAndLink
40
- } from "../../chunks/chunk-TPCECDGK.js";
40
+ } from "../../chunks/chunk-FQ2EU7QM.js";
41
41
  import "../../chunks/chunk-L6Q2EQPI.js";
42
42
  import {
43
43
  getLocalPathConfig
44
- } from "../../chunks/chunk-6PVIXIDG.js";
45
- import "../../chunks/chunk-C7WFNC2H.js";
44
+ } from "../../chunks/chunk-6PSM4YC3.js";
45
+ import "../../chunks/chunk-TVXUA533.js";
46
46
  import {
47
47
  help
48
- } from "../../chunks/chunk-TTOZFGDX.js";
48
+ } from "../../chunks/chunk-LOQRUMOE.js";
49
49
  import {
50
50
  VERCEL_DIR,
51
51
  findRepoRoot,
@@ -69,26 +69,26 @@ import {
69
69
  resolveProjectCwd,
70
70
  tryDetectServices,
71
71
  validateConfig
72
- } from "../../chunks/chunk-PKUYGVBJ.js";
72
+ } from "../../chunks/chunk-QAHIBMRJ.js";
73
73
  import {
74
74
  TelemetryClient
75
75
  } from "../../chunks/chunk-4CIXZOP4.js";
76
76
  import {
77
77
  buildCommandWithYes,
78
78
  outputActionRequired
79
- } from "../../chunks/chunk-ULXHXZCZ.js";
79
+ } from "../../chunks/chunk-7OUZIPHA.js";
80
80
  import {
81
81
  require_ms
82
82
  } from "../../chunks/chunk-CO5D46AG.js";
83
83
  import {
84
84
  require_lib as require_lib2
85
85
  } from "../../chunks/chunk-N2T234LO.js";
86
- import "../../chunks/chunk-OM5Z2KO5.js";
86
+ import "../../chunks/chunk-ZTHVV4KB.js";
87
87
  import {
88
88
  getFlagsSpecification,
89
89
  parseArguments,
90
90
  printError
91
- } from "../../chunks/chunk-H33IJ7OP.js";
91
+ } from "../../chunks/chunk-XQUJUKTN.js";
92
92
  import {
93
93
  CantParseJSONFile,
94
94
  LambdaSizeExceededError,
@@ -100,7 +100,7 @@ import {
100
100
  getTitleName,
101
101
  packageName,
102
102
  require_bytes
103
- } from "../../chunks/chunk-UGXBNJMO.js";
103
+ } from "../../chunks/chunk-IDFKAJW3.js";
104
104
  import "../../chunks/chunk-P4QNYOFB.js";
105
105
  import {
106
106
  link_default,
@@ -20032,7 +20032,7 @@ Please ensure that ${cmd(err.path)} is properly installed`;
20032
20032
  return void 0;
20033
20033
  }
20034
20034
  async _getVercelConfig() {
20035
- const { compileVercelConfig } = await import("../../chunks/compile-vercel-config-TJYP77GR.js");
20035
+ const { compileVercelConfig } = await import("../../chunks/compile-vercel-config-UMMPRYHE.js");
20036
20036
  await compileVercelConfig(this.cwd);
20037
20037
  const configPath = getLocalPathConfig(this.cwd);
20038
20038
  const [
@@ -13,14 +13,14 @@ import {
13
13
  } from "../../chunks/chunk-AOJHEPS4.js";
14
14
  import {
15
15
  formatTable
16
- } from "../../chunks/chunk-SRVNEJVN.js";
16
+ } from "../../chunks/chunk-CMQXECHW.js";
17
17
  import {
18
18
  suggestNextCommands
19
19
  } from "../../chunks/chunk-LOS7HHU3.js";
20
20
  import {
21
21
  formatEnvironment,
22
22
  validateLsArgs
23
- } from "../../chunks/chunk-MOA7PCJA.js";
23
+ } from "../../chunks/chunk-KFVFRVDK.js";
24
24
  import {
25
25
  validateJsonOutput
26
26
  } from "../../chunks/chunk-XPKWKPWA.js";
@@ -29,26 +29,25 @@ import {
29
29
  } from "../../chunks/chunk-YPQSDAEW.js";
30
30
  import {
31
31
  getCommandAliases
32
- } from "../../chunks/chunk-XR64AS27.js";
33
- import "../../chunks/chunk-YAOSNCGO.js";
34
- import "../../chunks/chunk-5EKBCYHA.js";
35
- import "../../chunks/chunk-TM2USC5N.js";
36
- import "../../chunks/chunk-3TDGMELF.js";
37
- import "../../chunks/chunk-C2V6DCWN.js";
38
- import "../../chunks/chunk-YP423QYK.js";
39
- import "../../chunks/chunk-DJA3IN2X.js";
32
+ } from "../../chunks/chunk-T4I25SRE.js";
33
+ import "../../chunks/chunk-TJQZGB6S.js";
34
+ import "../../chunks/chunk-CPWI2SWV.js";
35
+ import "../../chunks/chunk-7HAY2TY5.js";
36
+ import "../../chunks/chunk-2R5WYHZW.js";
37
+ import "../../chunks/chunk-TIJBJ7EO.js";
38
+ import "../../chunks/chunk-3EOZ4ZDJ.js";
39
+ import "../../chunks/chunk-O7SEN4RY.js";
40
40
  import {
41
41
  require_execa
42
42
  } from "../../chunks/chunk-N733ZD4W.js";
43
- import {
44
- autoInstallVercelPlugin
45
- } from "../../chunks/chunk-HXXKDZQ6.js";
43
+ import "../../chunks/chunk-RKLHR2YE.js";
46
44
  import {
47
45
  help
48
- } from "../../chunks/chunk-TTOZFGDX.js";
46
+ } from "../../chunks/chunk-LOQRUMOE.js";
49
47
  import {
50
48
  STANDARD_ENVIRONMENTS,
51
49
  addSubcommand,
50
+ autoInstallVercelPlugin,
52
51
  envCommand,
53
52
  envTargetChoices,
54
53
  formatProject,
@@ -66,7 +65,7 @@ import {
66
65
  require_frameworks,
67
66
  runSubcommand,
68
67
  updateSubcommand
69
- } from "../../chunks/chunk-PKUYGVBJ.js";
68
+ } from "../../chunks/chunk-QAHIBMRJ.js";
70
69
  import {
71
70
  TelemetryClient,
72
71
  require_dist as require_dist2
@@ -81,24 +80,24 @@ import {
81
80
  getPreservedArgsForEnvUpdate,
82
81
  outputActionRequired,
83
82
  outputAgentError
84
- } from "../../chunks/chunk-ULXHXZCZ.js";
83
+ } from "../../chunks/chunk-7OUZIPHA.js";
85
84
  import {
86
85
  require_ms,
87
86
  stamp_default
88
87
  } from "../../chunks/chunk-CO5D46AG.js";
89
88
  import "../../chunks/chunk-N2T234LO.js";
90
- import "../../chunks/chunk-OM5Z2KO5.js";
89
+ import "../../chunks/chunk-ZTHVV4KB.js";
91
90
  import {
92
91
  getFlagsSpecification,
93
92
  parseArguments,
94
93
  printError
95
- } from "../../chunks/chunk-H33IJ7OP.js";
94
+ } from "../../chunks/chunk-XQUJUKTN.js";
96
95
  import {
97
96
  getCommandName,
98
97
  getCommandNamePlain,
99
98
  isAPIError,
100
99
  require_lib
101
- } from "../../chunks/chunk-UGXBNJMO.js";
100
+ } from "../../chunks/chunk-IDFKAJW3.js";
102
101
  import "../../chunks/chunk-P4QNYOFB.js";
103
102
  import {
104
103
  emoji,
@@ -421,17 +420,43 @@ var EnvAddTelemetryClient = class extends TelemetryClient {
421
420
 
422
421
  // src/commands/env/add.ts
423
422
  import { determineAgent } from "@vercel/detect-agent";
424
- function resolveTypeForTarget(target, opts) {
425
- if (target === "development") {
423
+ var SENSITIVE_SECRET_PROMPT = "Is the value a sensitive secret?";
424
+ function filterEnvChoicesForSensitivity(choices, opts) {
425
+ if (opts.isSensitive) {
426
+ return choices.filter((c) => c.value !== "development");
427
+ }
428
+ if (opts.policyOn) {
429
+ return choices.filter((c) => c.value === "development");
430
+ }
431
+ return choices;
432
+ }
433
+ function getTargetCompatibilityError(envTargets, isSensitive, policyOn) {
434
+ const hasDevelopment = envTargets.includes("development");
435
+ const hasSensitiveCapable = envTargets.some((t) => t !== "development");
436
+ if (isSensitive && hasDevelopment) {
437
+ return `Sensitive Environment Variables are not supported on the Development Environment. Run ${getCommandName(
438
+ "env add"
439
+ )} separately for Development with a non-sensitive value.`;
440
+ }
441
+ if (!isSensitive && policyOn && hasSensitiveCapable) {
442
+ return `Your team requires sensitive Environment Variables for Production and Preview. To add a non-sensitive value, target the Development Environment only. Run ${getCommandName(
443
+ "env add"
444
+ )} with the development target instead.`;
445
+ }
446
+ return null;
447
+ }
448
+ function resolveFinalType(envTargets, isSensitive, opts) {
449
+ const hasDevelopment = envTargets.includes("development");
450
+ if (hasDevelopment) {
426
451
  return "encrypted";
427
452
  }
428
- if (opts.forceEncrypted)
453
+ if (opts.forceEncrypted && !opts.policyOn) {
429
454
  return "encrypted";
430
- if (opts.forceSensitive)
431
- return "sensitive";
432
- if (opts.policyOn)
455
+ }
456
+ if (isSensitive || opts.forceSensitive || opts.policyOn) {
433
457
  return "sensitive";
434
- return "sensitive";
458
+ }
459
+ return "encrypted";
435
460
  }
436
461
  function valueForNextCommand(value) {
437
462
  if (!/[\s'"\\]/.test(value))
@@ -870,12 +895,85 @@ async function add(client, argv) {
870
895
  } catch {
871
896
  }
872
897
  }
873
- if (policyOn) {
874
- for (const choice of choices) {
898
+ const isDevelopmentOnlyTarget = envTargets.length === 1 && envTargets[0] === "development";
899
+ const userWasExplicit = forceSensitive || forceEncrypted;
900
+ const skipSensitivePrompt = userWasExplicit || client.nonInteractive || skipConfirm || isDevelopmentOnlyTarget;
901
+ let isSensitive;
902
+ if (forceSensitive) {
903
+ isSensitive = true;
904
+ } else if (forceEncrypted) {
905
+ isSensitive = false;
906
+ } else if (isDevelopmentOnlyTarget) {
907
+ isSensitive = false;
908
+ } else if (skipSensitivePrompt) {
909
+ isSensitive = true;
910
+ } else {
911
+ output_manager_default.log(
912
+ `Sensitive values cannot be retrieved later from the dashboard or CLI.`
913
+ );
914
+ isSensitive = await client.input.confirm(SENSITIVE_SECRET_PROMPT, true);
915
+ if (policyOn && !isSensitive) {
916
+ output_manager_default.log(
917
+ `Your team requires sensitive Environment Variables for Production and Preview. To add a non-sensitive value, you can only target the Development Environment.`
918
+ );
919
+ }
920
+ }
921
+ if (forceSensitive && envTargets.includes("development")) {
922
+ const msg = `--sensitive is not allowed with the Development Environment. Sensitive Environment Variables are only supported on Production and Preview.`;
923
+ if (client.nonInteractive) {
924
+ outputAgentError(
925
+ client,
926
+ {
927
+ status: "error",
928
+ reason: "sensitive_not_allowed_on_development",
929
+ message: msg
930
+ },
931
+ 1
932
+ );
933
+ }
934
+ output_manager_default.error(msg);
935
+ return 1;
936
+ }
937
+ if (envTargets.length > 0) {
938
+ const compatibilityError = getTargetCompatibilityError(
939
+ envTargets,
940
+ isSensitive,
941
+ policyOn
942
+ );
943
+ if (compatibilityError) {
944
+ if (client.nonInteractive) {
945
+ outputAgentError(
946
+ client,
947
+ {
948
+ status: "error",
949
+ reason: isSensitive ? "sensitive_not_allowed_on_development" : "non_sensitive_not_allowed_on_production_preview",
950
+ message: compatibilityError
951
+ },
952
+ 1
953
+ );
954
+ }
955
+ output_manager_default.error(compatibilityError);
956
+ return 1;
957
+ }
958
+ }
959
+ const envChoices = filterEnvChoicesForSensitivity(choices, {
960
+ isSensitive,
961
+ policyOn
962
+ });
963
+ if (policyOn && isSensitive) {
964
+ for (const choice of envChoices) {
875
965
  if (choice.value === "production" || choice.value === "preview") {
876
966
  choice.checked = true;
877
967
  }
878
968
  }
969
+ } else if (envChoices.length === 1) {
970
+ envChoices[0].checked = true;
971
+ }
972
+ if (!envGitBranch && envChoices.length === 0 && envTargets.length === 0 && !opts["--force"]) {
973
+ output_manager_default.error(
974
+ `No Environments are available for this variable with the selected sensitivity. ${isSensitive ? "Sensitive Environment Variables cannot be added to Development." : "Your team requires sensitive Environment Variables for Production and Preview."}`
975
+ );
976
+ return 1;
879
977
  }
880
978
  let envValue;
881
979
  if (stdInput) {
@@ -902,25 +1000,35 @@ async function add(client, argv) {
902
1000
  ]
903
1001
  });
904
1002
  }
905
- envValue = await client.input.password({
906
- message: `What's the value of ${envName}?`,
907
- mask: true
908
- });
1003
+ if (isSensitive) {
1004
+ envValue = await client.input.password({
1005
+ message: `What's the value of ${envName}?`,
1006
+ mask: true
1007
+ });
1008
+ } else {
1009
+ envValue = await client.input.text({
1010
+ message: `What's the value of ${envName}?`,
1011
+ validate: (val) => val ? true : "Value cannot be empty"
1012
+ });
1013
+ }
909
1014
  }
910
1015
  const { finalValue } = await validateEnvValue({
911
1016
  envName,
912
1017
  initialValue: envValue,
913
1018
  skipConfirm,
914
- promptForValue: () => client.input.password({
1019
+ promptForValue: () => isSensitive ? client.input.password({
915
1020
  message: `What's the value of ${envName}?`,
916
1021
  mask: true
1022
+ }) : client.input.text({
1023
+ message: `What's the value of ${envName}?`,
1024
+ validate: (val) => val ? true : "Value cannot be empty"
917
1025
  }),
918
1026
  selectAction: (choices2) => client.input.select({ message: "How to proceed?", choices: choices2 }),
919
1027
  showWarning: (msg) => output_manager_default.warn(msg),
920
1028
  showLog: (msg) => output_manager_default.log(msg)
921
1029
  });
922
1030
  while (envTargets.length === 0) {
923
- if (client.nonInteractive && choices.length > 0) {
1031
+ if (client.nonInteractive && envChoices.length > 0) {
924
1032
  outputActionRequired(client, {
925
1033
  status: "action_required",
926
1034
  reason: "missing_environment",
@@ -928,11 +1036,11 @@ async function add(client, argv) {
928
1036
  client.argv,
929
1037
  `env add ${envName} <environment> --value <value> --yes`
930
1038
  )}`,
931
- choices: choices.map((c) => ({
1039
+ choices: envChoices.map((c) => ({
932
1040
  id: c.value,
933
1041
  name: typeof c.name === "string" ? c.name : c.value
934
1042
  })),
935
- next: choices.slice(0, 5).map((c) => ({
1043
+ next: envChoices.slice(0, 5).map((c) => ({
936
1044
  command: buildEnvAddCommandWithPreservedArgs(
937
1045
  client.argv,
938
1046
  `env add ${envName} ${c.value} --value <value> --yes`
@@ -942,12 +1050,21 @@ async function add(client, argv) {
942
1050
  }
943
1051
  envTargets = await client.input.checkbox({
944
1052
  message: `Add ${envName} to which Environments (select multiple)?`,
945
- choices
1053
+ choices: envChoices
946
1054
  });
947
1055
  if (envTargets.length === 0) {
948
1056
  output_manager_default.error("Please select at least one Environment");
949
1057
  }
950
1058
  }
1059
+ const postSelectionError = getTargetCompatibilityError(
1060
+ envTargets,
1061
+ isSensitive,
1062
+ policyOn
1063
+ );
1064
+ if (postSelectionError) {
1065
+ output_manager_default.error(postSelectionError);
1066
+ return 1;
1067
+ }
951
1068
  if (envGitBranch === void 0 && envTargets.length === 1 && envTargets[0] === "preview") {
952
1069
  if (client.nonInteractive) {
953
1070
  outputActionRequired(
@@ -982,69 +1099,17 @@ async function add(client, argv) {
982
1099
  }
983
1100
  }
984
1101
  const hasDevelopment = envTargets.includes("development");
985
- const hasSensitiveCapable = envTargets.some((t) => t !== "development");
986
- if (forceSensitive && hasDevelopment) {
987
- const msg = `--sensitive is not allowed with the Development Environment. Sensitive Environment Variables are only supported on Production and Preview.`;
988
- if (client.nonInteractive) {
989
- outputAgentError(
990
- client,
991
- {
992
- status: "error",
993
- reason: "sensitive_not_allowed_on_development",
994
- message: msg
995
- },
996
- 1
997
- );
998
- }
999
- output_manager_default.error(msg);
1000
- return 1;
1001
- }
1002
- if (hasDevelopment && hasSensitiveCapable) {
1003
- const msg = `Development cannot be combined with other Environments because Development does not support sensitive Environment Variables. Run ${getCommandName(
1004
- "env add"
1005
- )} separately for Development.`;
1006
- if (client.nonInteractive) {
1007
- outputAgentError(
1008
- client,
1009
- {
1010
- status: "error",
1011
- reason: "mixed_development_and_sensitive_capable_targets",
1012
- message: msg
1013
- },
1014
- 1
1015
- );
1016
- }
1017
- output_manager_default.error(msg);
1018
- return 1;
1019
- }
1020
- let finalType = resolveTypeForTarget(
1021
- hasDevelopment ? "development" : "production",
1022
- { forceSensitive, forceEncrypted, policyOn }
1023
- );
1024
- const userWasExplicit = forceSensitive || forceEncrypted;
1025
- const canPromptForType = !client.nonInteractive && !userWasExplicit && !policyOn && hasSensitiveCapable && !skipConfirm;
1026
- if (canPromptForType) {
1027
- output_manager_default.log(
1028
- `Sensitive values cannot be retrieved later from the dashboard or CLI.`
1029
- );
1030
- const keepSensitive = await client.input.confirm(
1031
- `Make it sensitive?`,
1032
- true
1033
- );
1034
- if (!keepSensitive) {
1035
- finalType = "encrypted";
1036
- }
1037
- }
1038
- if (policyOn && hasSensitiveCapable) {
1102
+ let finalType = resolveFinalType(envTargets, isSensitive, {
1103
+ forceSensitive,
1104
+ forceEncrypted,
1105
+ policyOn
1106
+ });
1107
+ if (policyOn && !hasDevelopment) {
1039
1108
  if (forceEncrypted) {
1040
1109
  output_manager_default.warn(
1041
1110
  `--no-sensitive is ignored: your team enforces sensitive Environment Variables for Production and Preview.`
1042
1111
  );
1043
1112
  finalType = "sensitive";
1044
- } else if (!userWasExplicit) {
1045
- output_manager_default.log(
1046
- `Your team requires sensitive Environment Variables for Production and Preview.`
1047
- );
1048
1113
  }
1049
1114
  }
1050
1115
  const upsert = opts["--force"] ? "true" : "";
@@ -11,49 +11,48 @@ import {
11
11
  addSubcommand7 as addSubcommand,
12
12
  getCommandAliases,
13
13
  linkCommand
14
- } from "../../chunks/chunk-XR64AS27.js";
15
- import "../../chunks/chunk-YAOSNCGO.js";
16
- import "../../chunks/chunk-5EKBCYHA.js";
17
- import "../../chunks/chunk-TM2USC5N.js";
18
- import "../../chunks/chunk-3TDGMELF.js";
19
- import "../../chunks/chunk-C2V6DCWN.js";
20
- import "../../chunks/chunk-YP423QYK.js";
21
- import "../../chunks/chunk-DJA3IN2X.js";
14
+ } from "../../chunks/chunk-T4I25SRE.js";
15
+ import "../../chunks/chunk-TJQZGB6S.js";
16
+ import "../../chunks/chunk-CPWI2SWV.js";
17
+ import "../../chunks/chunk-7HAY2TY5.js";
18
+ import "../../chunks/chunk-2R5WYHZW.js";
19
+ import "../../chunks/chunk-TIJBJ7EO.js";
20
+ import "../../chunks/chunk-3EOZ4ZDJ.js";
21
+ import "../../chunks/chunk-O7SEN4RY.js";
22
22
  import {
23
23
  ensureLink
24
- } from "../../chunks/chunk-BT4S267X.js";
25
- import "../../chunks/chunk-TPCECDGK.js";
24
+ } from "../../chunks/chunk-TSUZWPXS.js";
25
+ import "../../chunks/chunk-FQ2EU7QM.js";
26
26
  import "../../chunks/chunk-L6Q2EQPI.js";
27
- import "../../chunks/chunk-6PVIXIDG.js";
28
- import {
29
- autoInstallVercelPlugin
30
- } from "../../chunks/chunk-HXXKDZQ6.js";
27
+ import "../../chunks/chunk-6PSM4YC3.js";
28
+ import "../../chunks/chunk-RKLHR2YE.js";
31
29
  import {
32
30
  detectExplicitScope,
33
31
  getScope
34
- } from "../../chunks/chunk-C7WFNC2H.js";
32
+ } from "../../chunks/chunk-TVXUA533.js";
35
33
  import {
36
34
  help
37
- } from "../../chunks/chunk-TTOZFGDX.js";
35
+ } from "../../chunks/chunk-LOQRUMOE.js";
38
36
  import {
39
37
  addRepoLink,
38
+ autoInstallVercelPlugin,
40
39
  ensureRepoLink
41
- } from "../../chunks/chunk-PKUYGVBJ.js";
40
+ } from "../../chunks/chunk-QAHIBMRJ.js";
42
41
  import {
43
42
  TelemetryClient
44
43
  } from "../../chunks/chunk-4CIXZOP4.js";
45
- import "../../chunks/chunk-ULXHXZCZ.js";
44
+ import "../../chunks/chunk-7OUZIPHA.js";
46
45
  import "../../chunks/chunk-CO5D46AG.js";
47
46
  import "../../chunks/chunk-N2T234LO.js";
48
- import "../../chunks/chunk-OM5Z2KO5.js";
47
+ import "../../chunks/chunk-ZTHVV4KB.js";
49
48
  import {
50
49
  getFlagsSpecification,
51
50
  parseArguments,
52
51
  printError
53
- } from "../../chunks/chunk-H33IJ7OP.js";
52
+ } from "../../chunks/chunk-XQUJUKTN.js";
54
53
  import {
55
54
  cmd
56
- } from "../../chunks/chunk-UGXBNJMO.js";
55
+ } from "../../chunks/chunk-IDFKAJW3.js";
57
56
  import "../../chunks/chunk-P4QNYOFB.js";
58
57
  import {
59
58
  output_manager_default