vercel 48.1.7 → 48.2.1

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 (2) hide show
  1. package/dist/index.js +143 -3
  2. package/package.json +8 -8
package/dist/index.js CHANGED
@@ -33381,6 +33381,14 @@ var init_command19 = __esm({
33381
33381
  type: String,
33382
33382
  deprecated: false
33383
33383
  },
33384
+ {
33385
+ name: "status",
33386
+ description: "Filter deployments by their status. Can be comma-separated for multiple statuses (e.g.: `--status BUILDING,READY`)",
33387
+ argument: "STATUS",
33388
+ shorthand: "s",
33389
+ type: String,
33390
+ deprecated: false
33391
+ },
33384
33392
  nextOption,
33385
33393
  // this can be deprecated someday
33386
33394
  { name: "prod", shorthand: null, type: Boolean, deprecated: false },
@@ -33403,6 +33411,14 @@ var init_command19 = __esm({
33403
33411
  {
33404
33412
  name: "Paginate deployments for a project, where `1584722256178` is the time in milliseconds since the UNIX epoch",
33405
33413
  value: `${packageName} list my-app --next 1584722256178`
33414
+ },
33415
+ {
33416
+ name: "Filter deployments by status",
33417
+ value: `${packageName} list --status READY`
33418
+ },
33419
+ {
33420
+ name: "Filter deployments by multiple statuses",
33421
+ value: `${packageName} list --status BUILDING,ERROR`
33406
33422
  }
33407
33423
  ]
33408
33424
  };
@@ -49554,7 +49570,7 @@ var require_package = __commonJS2({
49554
49570
  "../client/package.json"(exports2, module2) {
49555
49571
  module2.exports = {
49556
49572
  name: "@vercel/client",
49557
- version: "17.0.0",
49573
+ version: "17.0.1",
49558
49574
  main: "dist/index.js",
49559
49575
  typings: "dist/index.d.ts",
49560
49576
  homepage: "https://vercel.com",
@@ -49596,7 +49612,7 @@ var require_package = __commonJS2({
49596
49612
  "@vercel/build-utils": "12.1.0",
49597
49613
  "@vercel/error-utils": "2.0.3",
49598
49614
  "@vercel/microfrontends": "1.2.2",
49599
- "@vercel/routing-utils": "5.1.1",
49615
+ "@vercel/routing-utils": "5.2.0",
49600
49616
  "async-retry": "1.2.3",
49601
49617
  "async-sema": "3.0.0",
49602
49618
  "fs-extra": "8.0.1",
@@ -117125,6 +117141,51 @@ var require_frameworks = __commonJS2({
117125
117141
  dependency: "h3",
117126
117142
  getOutputDirName: async () => "public"
117127
117143
  },
117144
+ {
117145
+ name: "NestJS",
117146
+ slug: "nestjs",
117147
+ logo: "https://api-frameworks.vercel.sh/framework-logos/nestjs.svg",
117148
+ tagline: "Framework for building efficient, scalable Node.js server-side applications",
117149
+ description: "A progressive Node.js framework for building efficient, reliable and scalable server-side applications.",
117150
+ website: "https://nestjs.com/",
117151
+ useRuntime: { src: "index.js", use: "@vercel/nestjs" },
117152
+ defaultRoutes: [
117153
+ {
117154
+ handle: "filesystem"
117155
+ },
117156
+ {
117157
+ src: "/(.*)",
117158
+ dest: "/"
117159
+ }
117160
+ ],
117161
+ detectors: {
117162
+ every: [{ matchPackage: "@nestjs/core" }],
117163
+ some: [
117164
+ {
117165
+ path: "src/main.ts",
117166
+ matchContent: `(?:from|require|import)\\s*(?:\\(\\s*)?["']@nestjs/core["']\\s*(?:\\))?`
117167
+ }
117168
+ ]
117169
+ },
117170
+ settings: {
117171
+ installCommand: {
117172
+ placeholder: "`yarn install`, `pnpm install`, `npm install`, or `bun install`"
117173
+ },
117174
+ buildCommand: {
117175
+ placeholder: "None",
117176
+ value: null
117177
+ },
117178
+ devCommand: {
117179
+ placeholder: "None",
117180
+ value: null
117181
+ },
117182
+ outputDirectory: {
117183
+ value: "N/A"
117184
+ }
117185
+ },
117186
+ dependency: "nestjs",
117187
+ getOutputDirName: async () => "public"
117188
+ },
117128
117189
  {
117129
117190
  name: "xmcp",
117130
117191
  slug: "xmcp",
@@ -132057,7 +132118,7 @@ var require_superstatic = __commonJS2({
132057
132118
  });
132058
132119
  return { src: r.source, segments };
132059
132120
  }
132060
- var namedGroupsRegex = /\(\?<([a-zA-Z][a-zA-Z0-9]*)>/g;
132121
+ var namedGroupsRegex = /\(\?<([a-zA-Z][a-zA-Z0-9_]*)>/g;
132061
132122
  var normalizeHasKeys = (hasItems = []) => {
132062
132123
  for (const hasItem of hasItems) {
132063
132124
  if ("key" in hasItem && hasItem.type === "header") {
@@ -132424,6 +132485,7 @@ var require_schemas = __commonJS2({
132424
132485
  var __toCommonJS4 = (mod) => __copyProps4(__defProp4({}, "__esModule", { value: true }), mod);
132425
132486
  var schemas_exports = {};
132426
132487
  __export4(schemas_exports, {
132488
+ bulkRedirectsSchema: () => bulkRedirectsSchema,
132427
132489
  cleanUrlsSchema: () => cleanUrlsSchema2,
132428
132490
  hasSchema: () => hasSchema,
132429
132491
  headersSchema: () => headersSchema2,
@@ -133000,6 +133062,44 @@ var require_schemas = __commonJS2({
133000
133062
  description: "When `false`, visiting a path that ends with a forward slash will respond with a `308` status code and redirect to the path without the trailing slash.",
133001
133063
  type: "boolean"
133002
133064
  };
133065
+ var bulkRedirectsSchema = {
133066
+ type: "array",
133067
+ description: "A list of bulk redirect definitions.",
133068
+ items: {
133069
+ type: "object",
133070
+ additionalProperties: false,
133071
+ required: ["source", "destination"],
133072
+ properties: {
133073
+ source: {
133074
+ description: "The exact URL path or pattern to match.",
133075
+ type: "string",
133076
+ maxLength: 2048
133077
+ },
133078
+ destination: {
133079
+ description: "The target URL path where traffic should be redirected.",
133080
+ type: "string",
133081
+ maxLength: 2048
133082
+ },
133083
+ permanent: {
133084
+ description: "A boolean to toggle between permanent and temporary redirect. When `true`, the status code is `308`. When `false` the status code is `307`.",
133085
+ type: "boolean"
133086
+ },
133087
+ statusCode: {
133088
+ description: "An optional integer to define the status code of the redirect.",
133089
+ type: "integer",
133090
+ enum: [301, 302, 307, 308]
133091
+ },
133092
+ sensitive: {
133093
+ description: "A boolean to toggle between case-sensitive and case-insensitive redirect. When `true`, the redirect is case-sensitive. When `false` the redirect is case-insensitive.",
133094
+ type: "boolean"
133095
+ },
133096
+ query: {
133097
+ description: "Whether the query string should be preserved by the redirect. The default is `false`.",
133098
+ type: "boolean"
133099
+ }
133100
+ }
133101
+ }
133102
+ };
133003
133103
  }
133004
133104
  });
133005
133105
 
@@ -144715,6 +144815,9 @@ async function writeBuildResult(repoRootPath, outputDir, buildResult, build2, bu
144715
144815
  if ("experimentalVersion" in builder && process.env.VERCEL_EXPERIMENTAL_EXPRESS_BUILD === "1" && "name" in builder && builder.name === "express") {
144716
144816
  version2 = builder.experimentalVersion;
144717
144817
  }
144818
+ if ("experimentalVersion" in builder && process.env.VERCEL_EXPERIMENTAL_HONO_BUILD === "1" && "name" in builder && builder.name === "hono") {
144819
+ version2 = builder.experimentalVersion;
144820
+ }
144718
144821
  if (typeof version2 !== "number" || version2 === 2) {
144719
144822
  return writeBuildResultV2(
144720
144823
  repoRootPath,
@@ -147097,6 +147200,8 @@ async function doBuild(client2, project, buildsJson, cwd, outputDir, span, stand
147097
147200
  () => {
147098
147201
  if (process.env.VERCEL_EXPERIMENTAL_EXPRESS_BUILD === "1" && "name" in builder && builder.name === "express" && "experimentalBuild" in builder && typeof builder.experimentalBuild === "function") {
147099
147202
  return builder.experimentalBuild(buildOptions);
147203
+ } else if (process.env.VERCEL_EXPERIMENTAL_HONO_BUILD === "1" && "name" in builder && builder.name === "hono" && "experimentalBuild" in builder && typeof builder.experimentalBuild === "function") {
147204
+ return builder.experimentalBuild(buildOptions);
147100
147205
  }
147101
147206
  return builder.build(buildOptions);
147102
147207
  }
@@ -179749,6 +179854,14 @@ var init_list7 = __esm({
179749
179854
  this.trackCliFlag("confirm");
179750
179855
  }
179751
179856
  }
179857
+ trackCliOptionStatus(status3) {
179858
+ if (status3) {
179859
+ this.trackCliOption({
179860
+ option: "status",
179861
+ value: this.redactedValue
179862
+ });
179863
+ }
179864
+ }
179752
179865
  trackCliArgumentApp(app) {
179753
179866
  if (app) {
179754
179867
  this.trackCliArgument({
@@ -179807,6 +179920,7 @@ async function list5(client2) {
179807
179920
  telemetry2.trackCliOptionMeta(parsedArgs.flags["--meta"]);
179808
179921
  telemetry2.trackCliOptionNext(parsedArgs.flags["--next"]);
179809
179922
  telemetry2.trackCliOptionPolicy(parsedArgs.flags["--policy"]);
179923
+ telemetry2.trackCliOptionStatus(parsedArgs.flags["--status"]);
179810
179924
  if ("--confirm" in parsedArgs.flags) {
179811
179925
  telemetry2.trackCliFlagConfirm(parsedArgs.flags["--confirm"]);
179812
179926
  warn("`--confirm` is deprecated, please use `--yes` instead");
@@ -179819,6 +179933,29 @@ async function list5(client2) {
179819
179933
  flagName: "environment",
179820
179934
  flags: parsedArgs.flags
179821
179935
  });
179936
+ const statusFlag = parsedArgs.flags["--status"];
179937
+ let status3;
179938
+ if (statusFlag) {
179939
+ const validStatuses = [
179940
+ "BUILDING",
179941
+ "ERROR",
179942
+ "INITIALIZING",
179943
+ "QUEUED",
179944
+ "READY",
179945
+ "CANCELED"
179946
+ ];
179947
+ const statusValues = statusFlag.split(",").map((s) => s.trim().toUpperCase());
179948
+ const invalidStatuses = statusValues.filter(
179949
+ (s) => !validStatuses.includes(s)
179950
+ );
179951
+ if (invalidStatuses.length > 0) {
179952
+ error3(
179953
+ `Invalid status values: ${invalidStatuses.join(", ")}. Valid values are: ${validStatuses.join(", ")}`
179954
+ );
179955
+ return 1;
179956
+ }
179957
+ status3 = statusValues.join(",");
179958
+ }
179822
179959
  let project;
179823
179960
  let pagination;
179824
179961
  let contextName = "";
@@ -179907,6 +180044,9 @@ async function list5(client2) {
179907
180044
  if (target) {
179908
180045
  query.set("target", target);
179909
180046
  }
180047
+ if (status3) {
180048
+ query.set("state", status3);
180049
+ }
179910
180050
  for await (const chunk of client2.fetchPaginated(`/v6/deployments?${query}`)) {
179911
180051
  deployments.push(...chunk.deployments);
179912
180052
  pagination = chunk.pagination;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vercel",
3
- "version": "48.1.7",
3
+ "version": "48.2.1",
4
4
  "preferGlobal": true,
5
5
  "license": "Apache-2.0",
6
6
  "description": "The command-line interface for Vercel",
@@ -26,12 +26,12 @@
26
26
  "@vercel/fun": "1.1.6",
27
27
  "@vercel/go": "3.2.3",
28
28
  "@vercel/express": "0.0.22",
29
- "@vercel/hono": "0.1.2",
29
+ "@vercel/hono": "0.1.3",
30
30
  "@vercel/h3": "0.1.2",
31
31
  "@vercel/hydrogen": "1.2.4",
32
- "@vercel/next": "4.13.0",
32
+ "@vercel/next": "4.13.1",
33
33
  "@vercel/node": "5.3.24",
34
- "@vercel/python": "5.0.6",
34
+ "@vercel/python": "5.0.7",
35
35
  "@vercel/redwood": "2.3.6",
36
36
  "@vercel/remix-builder": "5.4.12",
37
37
  "@vercel/ruby": "2.2.1",
@@ -83,11 +83,11 @@
83
83
  "@types/which": "3.0.0",
84
84
  "@types/write-json-file": "2.2.1",
85
85
  "@types/yauzl-promise": "2.1.0",
86
- "@vercel/client": "17.0.0",
86
+ "@vercel/client": "17.0.1",
87
87
  "@vercel/error-utils": "2.0.3",
88
- "@vercel/frameworks": "3.10.0",
89
- "@vercel/fs-detectors": "5.5.8",
90
- "@vercel/routing-utils": "5.1.1",
88
+ "@vercel/frameworks": "3.11.0",
89
+ "@vercel/fs-detectors": "5.6.0",
90
+ "@vercel/routing-utils": "5.2.0",
91
91
  "@vitest/expect": "2.1.3",
92
92
  "ajv": "6.12.3",
93
93
  "alpha-sort": "2.0.1",