vercel 58.0.0 → 58.1.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 (99) hide show
  1. package/dist/chunks/{add-E4KH6P4A.js → add-QKP6ZCHQ.js} +7 -7
  2. package/dist/chunks/{add-7PPD4ZUJ.js → add-WKV7KU4Y.js} +10 -8
  3. package/dist/chunks/build-ZXEK6YEA.js +240 -0
  4. package/dist/chunks/{chunk-B2MTCHPO.js → chunk-2D22CMQ7.js} +3 -3
  5. package/dist/chunks/{chunk-YA3WQFLY.js → chunk-32IPC6RB.js} +1 -1
  6. package/dist/chunks/{chunk-WDE2EDYX.js → chunk-3YARBN7P.js} +4 -4
  7. package/dist/chunks/{chunk-QZD5DKUR.js → chunk-4I7DTZAJ.js} +2 -2
  8. package/dist/chunks/{chunk-DGFASMSE.js → chunk-4LSERVQQ.js} +4 -4
  9. package/dist/chunks/{chunk-L4WYMJB3.js → chunk-552YY6QY.js} +25 -11
  10. package/dist/chunks/{chunk-OQGN4TEC.js → chunk-5AG7MR7W.js} +3 -3
  11. package/dist/chunks/{chunk-WANVKOVB.js → chunk-6QUKJKFX.js} +487 -240
  12. package/dist/chunks/{chunk-KCF6S3XF.js → chunk-75MDJ6TK.js} +10 -6
  13. package/dist/chunks/{chunk-FHEMFAHB.js → chunk-AX3N4MO2.js} +15 -9
  14. package/dist/chunks/{chunk-KGVT2RSG.js → chunk-BAUVB2VF.js} +5 -11
  15. package/dist/chunks/{chunk-RSCSALZH.js → chunk-C267R2FA.js} +6 -5
  16. package/dist/chunks/{chunk-FB4UFWEC.js → chunk-CSI7GEDD.js} +4 -4
  17. package/dist/chunks/{chunk-FYR7WEUJ.js → chunk-CXICXWXJ.js} +3 -3
  18. package/dist/chunks/{chunk-TPX7RZBM.js → chunk-DKS4XDVC.js} +5 -3
  19. package/dist/chunks/{chunk-DWMH5M4Q.js → chunk-E4LXCO7U.js} +1 -1
  20. package/dist/chunks/{chunk-ZVLPUREX.js → chunk-FBPCJV72.js} +2 -2
  21. package/dist/chunks/{chunk-VZSZBD4V.js → chunk-FR352QKR.js} +1 -1
  22. package/dist/chunks/{chunk-R54DAHCL.js → chunk-HXTQVMJZ.js} +2 -2
  23. package/dist/chunks/{chunk-EA22NMFU.js → chunk-JA3QX2H6.js} +2 -2
  24. package/dist/chunks/{chunk-ZMVFTCQF.js → chunk-JNP3FQR3.js} +1 -1
  25. package/dist/chunks/{chunk-YZMZCQP3.js → chunk-KLNWR2JI.js} +7 -7
  26. package/dist/chunks/{chunk-LHFNIZ2P.js → chunk-KY3ZOYJW.js} +4 -2
  27. package/dist/chunks/{chunk-NZRWTCRM.js → chunk-LA3BQQQK.js} +1 -1
  28. package/dist/chunks/{chunk-R5FOIIHT.js → chunk-LXA2GZ7U.js} +1 -1
  29. package/dist/chunks/{chunk-GIL3VAUR.js → chunk-NGYOR3MN.js} +5 -3
  30. package/dist/chunks/{chunk-3PKFXNJZ.js → chunk-NYURBHZJ.js} +7 -5
  31. package/dist/chunks/{chunk-MDQJLTGN.js → chunk-OG7DIS52.js} +1 -1
  32. package/dist/chunks/{chunk-AZTV7WPZ.js → chunk-OVW5WUCR.js} +1 -1
  33. package/dist/chunks/{chunk-DMSLNAVH.js → chunk-P7IO46BQ.js} +2 -2
  34. package/dist/chunks/{chunk-TEWJ7TIW.js → chunk-QCB22TQG.js} +2 -2
  35. package/dist/chunks/chunk-RBIFXFZX.js +52 -0
  36. package/dist/chunks/{chunk-SZXT3PDQ.js → chunk-RL7X7JGK.js} +1 -1
  37. package/dist/chunks/{chunk-UDWRZXIT.js → chunk-S7LXRKLD.js} +2 -1
  38. package/dist/chunks/{chunk-FYQPTH5C.js → chunk-TCBOCSWF.js} +7 -5
  39. package/dist/chunks/{chunk-OF2GNB42.js → chunk-TF627KEI.js} +1 -1
  40. package/dist/chunks/{chunk-4G6QZSBL.js → chunk-TPB4F5XN.js} +6 -4
  41. package/dist/chunks/{chunk-KSSNLCL4.js → chunk-U6PPDPR5.js} +2 -3
  42. package/dist/chunks/{chunk-3VS4DTAU.js → chunk-V6WHZAPP.js} +101 -11
  43. package/dist/chunks/{chunk-OGG6UBXK.js → chunk-VSMCQSGH.js} +1 -1
  44. package/dist/chunks/{chunk-3PGXYIKC.js → chunk-XAWGGWSG.js} +2 -2
  45. package/dist/chunks/{chunk-2MJROFVC.js → chunk-XTLNPNWY.js} +8 -5
  46. package/dist/chunks/{chunk-VUESC3YO.js → chunk-XTQADJ6S.js} +207 -4
  47. package/dist/chunks/{chunk-BYQQLGCT.js → chunk-YITWM37U.js} +2 -2
  48. package/dist/chunks/{compile-vercel-config-G2IVBXEI.js → compile-vercel-config-AFGCQEYG.js} +4 -4
  49. package/dist/chunks/{delete-2EIVGM6P.js → delete-UGSJQBE7.js} +6 -6
  50. package/dist/chunks/{delete-E6ZQNE5X.js → delete-Y5LNEZXI.js} +6 -6
  51. package/dist/chunks/{disable-M3Q6BBB7.js → disable-IF3AHKJD.js} +6 -6
  52. package/dist/chunks/{discard-3R6ETBPS.js → discard-Y6GZBIHJ.js} +6 -6
  53. package/dist/chunks/{edit-7JUDPVXD.js → edit-6TGJKUI5.js} +7 -7
  54. package/dist/chunks/{edit-ICVMGRRU.js → edit-HNMKZ3YT.js} +6 -6
  55. package/dist/chunks/{enable-HLTA35QL.js → enable-SE4QM4X3.js} +6 -6
  56. package/dist/chunks/{export-E6XZUFW3.js → export-5AYL7HCJ.js} +6 -6
  57. package/dist/chunks/{image-SIRPPQZT.js → image-6BYNQVGW.js} +5 -5
  58. package/dist/chunks/{inspect-NFOURIGN.js → inspect-3KCFHDWA.js} +11 -11
  59. package/dist/chunks/{inspect-OEWWGAHZ.js → inspect-DPTRYDFH.js} +7 -7
  60. package/dist/chunks/{inspect-6TQWDIBG.js → inspect-FGYXO4K5.js} +10 -10
  61. package/dist/chunks/{inspect-65YX7L3O.js → inspect-LTHZUXA2.js} +10 -10
  62. package/dist/chunks/{inspect-4FYBOOM5.js → inspect-MA36GG73.js} +10 -10
  63. package/dist/chunks/{list-APFMKZJO.js → list-BTOXZBQK.js} +10 -10
  64. package/dist/chunks/{list-XQCZVLES.js → list-OCW34SRV.js} +7 -7
  65. package/dist/chunks/{list-27DCGMBI.js → list-VTQZSIIT.js} +5 -5
  66. package/dist/chunks/{login-FMU4CQOV.js → login-VSXLK5ZU.js} +18 -50
  67. package/dist/chunks/{ls-3L6EN4YU.js → ls-3UA57DZZ.js} +10 -10
  68. package/dist/chunks/{ls-24BRCAZR.js → ls-76YTWNKD.js} +11 -11
  69. package/dist/chunks/{ls-BFACWH6C.js → ls-DRI2AOFB.js} +12 -12
  70. package/dist/chunks/{ls-T5RGDBCV.js → ls-ZBLTJ5RE.js} +11 -11
  71. package/dist/chunks/{open-AG3VYJZM.js → open-DVKAE5HP.js} +6 -6
  72. package/dist/chunks/{publish-5OVCPS4J.js → publish-F5C4ZA7M.js} +6 -6
  73. package/dist/chunks/push-PKJFQTLO.js +180 -0
  74. package/dist/chunks/{query-QS4VKBXJ.js → query-GT5LCT45.js} +9 -9
  75. package/dist/chunks/{reorder-B5V2P7YM.js → reorder-AQW4XFDS.js} +6 -6
  76. package/dist/chunks/{reply-JBLWE6RS.js → reply-FI7SADGU.js} +6 -6
  77. package/dist/chunks/{resolve-2I6XH2G3.js → resolve-C5G7JJZJ.js} +6 -6
  78. package/dist/chunks/{restore-O63FZXCL.js → restore-5TLSHQOS.js} +6 -6
  79. package/dist/chunks/{rm-P3NJSCMY.js → rm-2EN66OYO.js} +8 -6
  80. package/dist/chunks/{rm-HUED5R3Q.js → rm-C37BHGQI.js} +7 -7
  81. package/dist/chunks/{rm-N7W3QYWZ.js → rm-L7OQPCIE.js} +10 -8
  82. package/dist/chunks/{rule-inspect-M3QUSPU2.js → rule-inspect-V5DRHOTZ.js} +10 -10
  83. package/dist/chunks/{rules-NSSWPJ2B.js → rules-5XEMLN5G.js} +8 -8
  84. package/dist/chunks/{schema-G2PAXPVA.js → schema-UEOZVBY5.js} +8 -8
  85. package/dist/chunks/{tags-JFMO63D4.js → tags-ZGANV4YD.js} +4 -4
  86. package/dist/chunks/{types-QKLIFDDP.js → types-IKWGLSDF.js} +4 -4
  87. package/dist/chunks/{update-VJCKD6YG.js → update-DHWSMSMS.js} +7 -7
  88. package/dist/commands/build/index.js +12 -16
  89. package/dist/commands/deploy/index.js +29 -24
  90. package/dist/commands/dev/index.js +12 -12
  91. package/dist/commands/env/index.js +28 -23
  92. package/dist/commands/link/index.js +21 -21
  93. package/dist/commands/list/index.js +13 -8
  94. package/dist/commands-bulk.js +3537 -2164
  95. package/dist/help.js +1 -1
  96. package/dist/index.js +24 -23
  97. package/dist/version.mjs +1 -1
  98. package/package.json +21 -79
  99. package/dist/chunks/chunk-6OMC3HOW.js +0 -73
@@ -0,0 +1,52 @@
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
+
8
+ // src/commands/vcr/utils/image-ref.ts
9
+ var REPOSITORY_PATTERN = /^[a-z0-9]+(?:(?:\.|_|__|-+)[a-z0-9]+)*$/;
10
+ var TAG_PATTERN = /^[a-zA-Z0-9_][a-zA-Z0-9._-]{0,127}$/;
11
+ var DEFAULT_TAG = "latest";
12
+ function parseNameArg(nameArg, defaultRepo) {
13
+ if (!nameArg) {
14
+ return { repository: defaultRepo, tag: void 0 };
15
+ }
16
+ if (nameArg.includes("/")) {
17
+ return {
18
+ error: `Invalid image name "${nameArg}". Provide only a repository name (optionally with :tag); the registry, team, and project are added automatically.`
19
+ };
20
+ }
21
+ const colon = nameArg.lastIndexOf(":");
22
+ if (colon === -1) {
23
+ return { repository: nameArg, tag: void 0 };
24
+ }
25
+ const repository = nameArg.slice(0, colon);
26
+ const tag = nameArg.slice(colon + 1);
27
+ if (!repository) {
28
+ return {
29
+ error: `Invalid image name "${nameArg}". Missing repository name before ":".`
30
+ };
31
+ }
32
+ return { repository, tag };
33
+ }
34
+ function validateImageParts(parts) {
35
+ if (!REPOSITORY_PATTERN.test(parts.repository)) {
36
+ return `Invalid repository name "${parts.repository}". Use lowercase letters, digits, and separators (\`.\` \`_\` \`-\`), for example "my-app". Pass a valid name explicitly, e.g. \`... my-app\`.`;
37
+ }
38
+ if (parts.tag !== void 0 && !TAG_PATTERN.test(parts.tag)) {
39
+ return `Invalid tag "${parts.tag}". Tags may contain letters, digits, "_", ".", "-" and be up to 128 characters.`;
40
+ }
41
+ return void 0;
42
+ }
43
+ function buildRepositoryReference(parts) {
44
+ return `${parts.registry}/${parts.teamSlug}/${parts.projectName}/${parts.repository}`;
45
+ }
46
+
47
+ export {
48
+ DEFAULT_TAG,
49
+ parseNameArg,
50
+ validateImageParts,
51
+ buildRepositoryReference
52
+ };
@@ -9,7 +9,7 @@ import {
9
9
  getCommandName,
10
10
  parseRetryAfterHeaderAsMillis,
11
11
  require_bytes
12
- } from "./chunk-KSSNLCL4.js";
12
+ } from "./chunk-U6PPDPR5.js";
13
13
  import {
14
14
  output_manager_default
15
15
  } from "./chunk-OX7KI3LF.js";
@@ -12,7 +12,7 @@ import {
12
12
  packageName,
13
13
  stripSensitiveAuthArgs,
14
14
  suggestionFlagTakesSeparateValue
15
- } from "./chunk-KSSNLCL4.js";
15
+ } from "./chunk-U6PPDPR5.js";
16
16
  import {
17
17
  require_dist
18
18
  } from "./chunk-OX7KI3LF.js";
@@ -613,6 +613,7 @@ var AGENT_REASON = {
613
613
  INVALID_BUDGET: "invalid_budget",
614
614
  INVALID_REFRESH_PERIOD: "invalid_refresh_period",
615
615
  INVALID_EXPIRATION: "invalid_expiration",
616
+ INVALID_ALERT_THRESHOLDS: "invalid_alert_thresholds",
616
617
  /**
617
618
  * Every selected agent needs explicit `--agent`/`--all` consent (see the
618
619
  * payload's skipped[]). `--yes` does not grant it, so this is deliberately
@@ -6,11 +6,12 @@ const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
7
  import {
8
8
  formatOption,
9
+ jsonOption,
9
10
  limitOption,
10
11
  packageName,
11
12
  projectOption,
12
13
  yesOption
13
- } from "./chunk-KSSNLCL4.js";
14
+ } from "./chunk-U6PPDPR5.js";
14
15
 
15
16
  // src/commands/vcr/image/command.ts
16
17
  var projectScopeOption = {
@@ -47,7 +48,8 @@ var imageLsSubcommand = {
47
48
  },
48
49
  limitOption,
49
50
  cursorOption,
50
- formatOption
51
+ formatOption,
52
+ jsonOption
51
53
  ],
52
54
  examples: [
53
55
  {
@@ -56,7 +58,7 @@ var imageLsSubcommand = {
56
58
  },
57
59
  {
58
60
  name: "List untagged images as JSON",
59
- value: `${packageName} vcr image ls my-app --untagged --format json`
61
+ value: `${packageName} vcr image ls my-app --untagged --json`
60
62
  }
61
63
  ]
62
64
  };
@@ -74,7 +76,7 @@ var imageInspectSubcommand = {
74
76
  required: true
75
77
  }
76
78
  ],
77
- options: [projectScopeOption, formatOption],
79
+ options: [projectScopeOption, formatOption, jsonOption],
78
80
  examples: [
79
81
  {
80
82
  name: "Inspect an image by id",
@@ -96,7 +98,7 @@ var imageRmSubcommand = {
96
98
  required: true
97
99
  }
98
100
  ],
99
- options: [projectScopeOption, yesOption, formatOption],
101
+ options: [projectScopeOption, yesOption, formatOption, jsonOption],
100
102
  examples: [
101
103
  {
102
104
  name: "Delete an image by id",
@@ -6,7 +6,7 @@ const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
7
  import {
8
8
  require_strip_ansi
9
- } from "./chunk-SZXT3PDQ.js";
9
+ } from "./chunk-RL7X7JGK.js";
10
10
  import {
11
11
  __toESM
12
12
  } from "./chunk-TZ2YI2VH.js";
@@ -6,9 +6,10 @@ const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
7
  import {
8
8
  formatOption,
9
+ jsonOption,
9
10
  packageName,
10
11
  projectOption
11
- } from "./chunk-KSSNLCL4.js";
12
+ } from "./chunk-U6PPDPR5.js";
12
13
 
13
14
  // src/commands/metrics/command.ts
14
15
  var schemaSubcommand = {
@@ -16,7 +17,7 @@ var schemaSubcommand = {
16
17
  aliases: [],
17
18
  description: "List available metrics or inspect a specific metric.",
18
19
  arguments: [{ name: "metric-or-prefix", required: false }],
19
- options: [formatOption],
20
+ options: [formatOption, jsonOption],
20
21
  examples: [
21
22
  {
22
23
  name: "List all metrics",
@@ -28,7 +29,7 @@ var schemaSubcommand = {
28
29
  },
29
30
  {
30
31
  name: "Schema as JSON for agents",
31
- value: `${packageName} metrics schema vercel.request.count --format=json`
32
+ value: `${packageName} metrics schema vercel.request.count --json`
32
33
  }
33
34
  ]
34
35
  };
@@ -151,7 +152,8 @@ var metricsCommand = {
151
152
  deprecated: false,
152
153
  description: "Query across all projects for the team"
153
154
  },
154
- formatOption
155
+ formatOption,
156
+ jsonOption
155
157
  ],
156
158
  examples: [
157
159
  {
@@ -511,15 +511,14 @@ var formatOption = {
511
511
  shorthand: "F",
512
512
  type: String,
513
513
  argument: "FORMAT",
514
- description: "Specify the output format (json)",
515
514
  deprecated: false
516
515
  };
517
516
  var jsonOption = {
518
517
  name: "json",
519
518
  shorthand: null,
520
519
  type: Boolean,
521
- deprecated: true,
522
- description: "DEPRECATED: Use --format=json instead"
520
+ deprecated: false,
521
+ description: "Output as JSON"
523
522
  };
524
523
  var allOption = {
525
524
  name: "all",
@@ -4,19 +4,20 @@ import { dirname as __dirname_ } from 'node:path';
4
4
  const require = __createRequire(import.meta.url);
5
5
  const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
- import {
8
- tagsAggregateCommand
9
- } from "./chunk-GIL3VAUR.js";
10
7
  import {
11
8
  imageAggregateCommand
12
- } from "./chunk-FYQPTH5C.js";
9
+ } from "./chunk-TCBOCSWF.js";
10
+ import {
11
+ tagsAggregateCommand
12
+ } from "./chunk-NGYOR3MN.js";
13
13
  import {
14
14
  formatOption,
15
+ jsonOption,
15
16
  limitOption,
16
17
  packageName,
17
18
  projectOption,
18
19
  yesOption
19
- } from "./chunk-KSSNLCL4.js";
20
+ } from "./chunk-U6PPDPR5.js";
20
21
 
21
22
  // src/commands/vcr/command.ts
22
23
  var projectScopeOption = {
@@ -32,12 +33,33 @@ var cursorOption = {
32
33
  description: "Cursor from a previous page to continue listing from",
33
34
  argument: "STRING"
34
35
  };
36
+ var platformOption = {
37
+ name: "platform",
38
+ shorthand: null,
39
+ type: String,
40
+ deprecated: false,
41
+ description: "Target platform for the build (defaults to linux/amd64).",
42
+ argument: "PLATFORM"
43
+ };
44
+ var pushOption = {
45
+ name: "push",
46
+ shorthand: null,
47
+ type: Boolean,
48
+ deprecated: false,
49
+ description: "Push the image after building. With Docker this builds and pushes in one step (Buildx enables zstd compression); Podman and Buildah build, then push with zstd compression."
50
+ };
35
51
  var listSubcommand = {
36
52
  name: "ls",
37
53
  aliases: ["list"],
38
54
  description: "List container registry repositories for a project",
39
55
  arguments: [],
40
- options: [projectScopeOption, limitOption, cursorOption, formatOption],
56
+ options: [
57
+ projectScopeOption,
58
+ limitOption,
59
+ cursorOption,
60
+ formatOption,
61
+ jsonOption
62
+ ],
41
63
  examples: [
42
64
  {
43
65
  name: "List repositories in the linked project",
@@ -45,7 +67,7 @@ var listSubcommand = {
45
67
  },
46
68
  {
47
69
  name: "List repositories for a specific project as JSON",
48
- value: `${packageName} vcr ls --project my-app --format json`
70
+ value: `${packageName} vcr ls --project my-app --json`
49
71
  }
50
72
  ]
51
73
  };
@@ -59,7 +81,7 @@ var inspectSubcommand = {
59
81
  required: true
60
82
  }
61
83
  ],
62
- options: [projectScopeOption, formatOption],
84
+ options: [projectScopeOption, formatOption, jsonOption],
63
85
  examples: [
64
86
  {
65
87
  name: "Inspect a repository by name",
@@ -77,7 +99,7 @@ var addSubcommand = {
77
99
  required: true
78
100
  }
79
101
  ],
80
- options: [projectScopeOption, formatOption],
102
+ options: [projectScopeOption, formatOption, jsonOption],
81
103
  examples: [
82
104
  {
83
105
  name: "Create a repository",
@@ -95,7 +117,7 @@ var removeSubcommand = {
95
117
  required: true
96
118
  }
97
119
  ],
98
- options: [projectScopeOption, yesOption, formatOption],
120
+ options: [projectScopeOption, yesOption, formatOption, jsonOption],
99
121
  examples: [
100
122
  {
101
123
  name: "Delete a repository",
@@ -117,7 +139,7 @@ var loginSubcommand = {
117
139
  required: true
118
140
  }
119
141
  ],
120
- options: [projectScopeOption, formatOption],
142
+ options: [projectScopeOption, formatOption, jsonOption],
121
143
  examples: [
122
144
  {
123
145
  name: "Log in with Docker",
@@ -137,6 +159,70 @@ var loginSubcommand = {
137
159
  }
138
160
  ]
139
161
  };
162
+ var buildSubcommand = {
163
+ name: "build",
164
+ aliases: [],
165
+ description: "Build a container image tagged for the Vercel Container Registry by shelling out to your container tool (docker, podman, or buildah)",
166
+ arguments: [
167
+ {
168
+ name: "engine",
169
+ required: true
170
+ },
171
+ {
172
+ name: "path",
173
+ required: false
174
+ },
175
+ {
176
+ name: "name",
177
+ required: false
178
+ }
179
+ ],
180
+ options: [projectScopeOption, platformOption, pushOption],
181
+ examples: [
182
+ {
183
+ name: "Build the current directory into the linked project (repository defaults to the project name, tag to latest)",
184
+ value: `${packageName} vcr build docker`
185
+ },
186
+ {
187
+ name: "Build and push in one step (Docker Buildx enables zstd compression)",
188
+ value: `${packageName} vcr build docker --push`
189
+ },
190
+ {
191
+ name: "Build a specific context path with a repository and tag",
192
+ value: `${packageName} vcr build docker ./app my-api:1.2.3`
193
+ },
194
+ {
195
+ name: "Pass extra flags through to the container tool",
196
+ value: `${packageName} vcr build docker . -- --no-cache --build-arg KEY=value`
197
+ }
198
+ ]
199
+ };
200
+ var pushSubcommand = {
201
+ name: "push",
202
+ aliases: [],
203
+ description: "Push a container image to the Vercel Container Registry by shelling out to your container tool (docker, podman, or buildah)",
204
+ arguments: [
205
+ {
206
+ name: "engine",
207
+ required: true
208
+ },
209
+ {
210
+ name: "name",
211
+ required: false
212
+ }
213
+ ],
214
+ options: [projectScopeOption],
215
+ examples: [
216
+ {
217
+ name: "Push the linked project image (repository defaults to the project name, tag to latest)",
218
+ value: `${packageName} vcr push docker`
219
+ },
220
+ {
221
+ name: "Push a specific repository and tag",
222
+ value: `${packageName} vcr push docker my-api:1.2.3`
223
+ }
224
+ ]
225
+ };
140
226
  var vcrCommand = {
141
227
  name: "vcr",
142
228
  aliases: [],
@@ -148,6 +234,8 @@ var vcrCommand = {
148
234
  addSubcommand,
149
235
  removeSubcommand,
150
236
  loginSubcommand,
237
+ buildSubcommand,
238
+ pushSubcommand,
151
239
  tagsAggregateCommand,
152
240
  imageAggregateCommand
153
241
  ],
@@ -174,5 +262,7 @@ export {
174
262
  addSubcommand,
175
263
  removeSubcommand,
176
264
  loginSubcommand,
265
+ buildSubcommand,
266
+ pushSubcommand,
177
267
  vcrCommand
178
268
  };
@@ -9,7 +9,7 @@ import {
9
9
  packageName,
10
10
  projectOption,
11
11
  yesOption
12
- } from "./chunk-KSSNLCL4.js";
12
+ } from "./chunk-U6PPDPR5.js";
13
13
 
14
14
  // src/commands/dev/command.ts
15
15
  var devCommand = {
@@ -12,10 +12,10 @@ import {
12
12
  } from "./chunk-FGDKMNEN.js";
13
13
  import {
14
14
  truncateMiddle
15
- } from "./chunk-OF2GNB42.js";
15
+ } from "./chunk-TF627KEI.js";
16
16
  import {
17
17
  table
18
- } from "./chunk-NZRWTCRM.js";
18
+ } from "./chunk-LA3BQQQK.js";
19
19
 
20
20
  // src/commands/alerts/format.ts
21
21
  function renderAlertTable(rows, hsep = 3) {
@@ -6,13 +6,14 @@ const __filename = __fileURLToPath(import.meta.url);
6
6
  const __dirname = __dirname_(__filename);
7
7
  import {
8
8
  rulesAggregateCommand
9
- } from "./chunk-KCF6S3XF.js";
9
+ } from "./chunk-75MDJ6TK.js";
10
10
  import {
11
11
  formatOption,
12
+ jsonOption,
12
13
  limitOption,
13
14
  packageName,
14
15
  projectOption
15
- } from "./chunk-KSSNLCL4.js";
16
+ } from "./chunk-U6PPDPR5.js";
16
17
 
17
18
  // src/commands/alerts/command.ts
18
19
  var listSubcommand = {
@@ -37,6 +38,7 @@ var inspectSubcommand = {
37
38
  ],
38
39
  options: [
39
40
  formatOption,
41
+ jsonOption,
40
42
  {
41
43
  ...projectOption,
42
44
  shorthand: "p",
@@ -57,7 +59,7 @@ var inspectSubcommand = {
57
59
  },
58
60
  {
59
61
  name: "Inspect as JSON",
60
- value: `${packageName} alerts inspect grp_abc123 --format json`
62
+ value: `${packageName} alerts inspect grp_abc123 --json`
61
63
  }
62
64
  ]
63
65
  };
@@ -112,7 +114,8 @@ var alertsCommand = {
112
114
  description: "End of time range (ISO-8601). Defaults to now."
113
115
  },
114
116
  limitOption,
115
- formatOption
117
+ formatOption,
118
+ jsonOption
116
119
  ],
117
120
  examples: [
118
121
  {
@@ -133,7 +136,7 @@ var alertsCommand = {
133
136
  },
134
137
  {
135
138
  name: "Output JSON",
136
- value: `${packageName} alerts --format json`
139
+ value: `${packageName} alerts --json`
137
140
  },
138
141
  {
139
142
  name: "Custom time range",