vercel 47.0.5 → 47.0.6

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 +84 -10
  2. package/package.json +4 -4
package/dist/index.js CHANGED
@@ -61278,7 +61278,8 @@ function isOAuthAuth(authConfig) {
61278
61278
  return authConfig.type === "oauth";
61279
61279
  }
61280
61280
  function isValidAccessToken(authConfig) {
61281
- return "token" in authConfig && (authConfig.expiresAt ?? 0) >= Date.now();
61281
+ const nowInSeconds = Math.floor(Date.now() / 1e3);
61282
+ return "token" in authConfig && (authConfig.expiresAt ?? 0) >= nowInSeconds;
61282
61283
  }
61283
61284
  function hasRefreshToken(authConfig) {
61284
61285
  return "refreshToken" in authConfig;
@@ -94419,6 +94420,15 @@ var init_telemetry = __esm({
94419
94420
  value: this.redactedValue
94420
94421
  });
94421
94422
  }
94423
+ trackLoginState(state) {
94424
+ if (state === "started")
94425
+ this.loginAttempt = (0, import_node_crypto.randomUUID)();
94426
+ if (this.loginAttempt) {
94427
+ this.track({ key: `login:attempt:${this.loginAttempt}`, value: state });
94428
+ }
94429
+ if (state !== "started")
94430
+ this.loginAttempt = void 0;
94431
+ }
94422
94432
  trackCliFlagHelp(command, subcommands) {
94423
94433
  let subcommand;
94424
94434
  if (subcommands) {
@@ -115762,14 +115772,14 @@ var require_frameworks = __commonJS2({
115762
115772
  ]
115763
115773
  },
115764
115774
  {
115765
- name: "Nuxt.js",
115775
+ name: "Nuxt",
115766
115776
  slug: "nuxtjs",
115767
115777
  demo: "https://nuxtjs-template.vercel.app",
115768
115778
  logo: "https://api-frameworks.vercel.sh/framework-logos/nuxt.svg",
115769
115779
  screenshot: "https://assets.vercel.com/image/upload/v1647366075/front/import/nuxtjs.png",
115770
- tagline: "Nuxt.js is the web comprehensive framework that lets you dream big with Vue.js.",
115771
- description: "A Nuxt.js app, bootstrapped with create-nuxt-app.",
115772
- website: "https://nuxtjs.org",
115780
+ tagline: "Nuxt is the open source framework that makes full-stack development with Vue.js intuitive.",
115781
+ description: "A Nuxt app, bootstrapped with create-nuxt-app.",
115782
+ website: "https://nuxt.com",
115773
115783
  sort: 2,
115774
115784
  envPrefix: "NUXT_ENV_",
115775
115785
  supersedes: ["nitro"],
@@ -115783,6 +115793,9 @@ var require_frameworks = __commonJS2({
115783
115793
  },
115784
115794
  {
115785
115795
  matchPackage: "nuxt-edge"
115796
+ },
115797
+ {
115798
+ matchPackage: "nuxt-nightly"
115786
115799
  }
115787
115800
  ]
115788
115801
  },
@@ -115795,7 +115808,7 @@ var require_frameworks = __commonJS2({
115795
115808
  value: "nuxt build"
115796
115809
  },
115797
115810
  devCommand: {
115798
- value: "nuxt"
115811
+ value: "nuxt dev"
115799
115812
  },
115800
115813
  outputDirectory: {
115801
115814
  value: "dist"
@@ -116241,6 +116254,49 @@ var require_frameworks = __commonJS2({
116241
116254
  }
116242
116255
  ]
116243
116256
  },
116257
+ {
116258
+ name: "FastAPI (Experimental)",
116259
+ slug: "fastapi",
116260
+ logo: "https://api-frameworks.vercel.sh/framework-logos/fastapi.svg",
116261
+ darkModeLogo: "https://api-frameworks.vercel.sh/framework-logos/fastapi.svg",
116262
+ tagline: "FastAPI framework, high performance, easy to learn, fast to code, ready for production",
116263
+ description: "FastAPI framework, high performance, easy to learn, fast to code, ready for production",
116264
+ website: "https://fastapi.tiangolo.com",
116265
+ useRuntime: { src: "main.py", use: "@vercel/python" },
116266
+ detectors: {
116267
+ every: [
116268
+ {
116269
+ path: "requirements.txt",
116270
+ matchContent: "fastapi"
116271
+ }
116272
+ ]
116273
+ },
116274
+ settings: {
116275
+ installCommand: {
116276
+ placeholder: "`pip install -r requirements.txt`"
116277
+ },
116278
+ buildCommand: {
116279
+ placeholder: "None",
116280
+ value: null
116281
+ },
116282
+ devCommand: {
116283
+ value: "uvicorn main:app --reload --port $PORT"
116284
+ },
116285
+ outputDirectory: {
116286
+ value: "N/A"
116287
+ }
116288
+ },
116289
+ getOutputDirName: async () => "",
116290
+ defaultRoutes: [
116291
+ {
116292
+ handle: "filesystem"
116293
+ },
116294
+ {
116295
+ src: "/(.*)",
116296
+ dest: "/main"
116297
+ }
116298
+ ]
116299
+ },
116244
116300
  {
116245
116301
  name: "FastHTML (Experimental)",
116246
116302
  slug: "fasthtml",
@@ -179466,12 +179522,22 @@ var init_login2 = __esm({
179466
179522
  "use strict";
179467
179523
  init_telemetry();
179468
179524
  LoginTelemetryClient = class extends TelemetryClient {
179525
+ /**
179526
+ * Tracks the state of the login process.
179527
+ * - `started` when the user initiates the login process.
179528
+ * - `canceled` when the user cancels the login process.
179529
+ * - `error` when the user encounters an error during the login process.
179530
+ * - `success` when the user successfully logs in.
179531
+ */
179532
+ trackState(...args2) {
179533
+ this.trackLoginState(...args2);
179534
+ }
179469
179535
  };
179470
179536
  }
179471
179537
  });
179472
179538
 
179473
179539
  // src/commands/login/future.ts
179474
- async function login2(client2) {
179540
+ async function login2(client2, telemetry2) {
179475
179541
  const deviceAuthorizationResponse = await deviceAuthorizationRequest();
179476
179542
  output_manager_default.debug(
179477
179543
  `'Device Authorization response:', ${await deviceAuthorizationResponse.clone().text()}`
@@ -179479,6 +179545,7 @@ async function login2(client2) {
179479
179545
  const [deviceAuthorizationError, deviceAuthorization] = await processDeviceAuthorizationResponse(deviceAuthorizationResponse);
179480
179546
  if (deviceAuthorizationError) {
179481
179547
  printError(deviceAuthorizationError);
179548
+ telemetry2.trackState("error");
179482
179549
  return 1;
179483
179550
  }
179484
179551
  const {
@@ -179492,7 +179559,10 @@ async function login2(client2) {
179492
179559
  const rl = import_node_readline.default.createInterface({
179493
179560
  input: process.stdin,
179494
179561
  output: process.stdout
179495
- }).on("SIGINT", () => process.exit(0));
179562
+ }).on("SIGINT", () => {
179563
+ telemetry2.trackState("canceled");
179564
+ process.exit(0);
179565
+ });
179496
179566
  rl.question(
179497
179567
  `
179498
179568
  Visit ${import_chalk107.default.bold(
@@ -179581,9 +179651,12 @@ async function login2(client2) {
179581
179651
  error3 = await pollForToken();
179582
179652
  output_manager_default.stopSpinner();
179583
179653
  rl.close();
179584
- if (!error3)
179654
+ if (!error3) {
179655
+ telemetry2.trackState("success");
179585
179656
  return 0;
179657
+ }
179586
179658
  printError(error3);
179659
+ telemetry2.trackState("error");
179587
179660
  return 1;
179588
179661
  }
179589
179662
  var import_node_readline, import_chalk107, open6, import_ansi_escapes6;
@@ -179627,7 +179700,8 @@ async function login3(client2) {
179627
179700
  }
179628
179701
  if (parsedArgs.flags["--future"]) {
179629
179702
  telemetry2.trackCliFlagFuture("login");
179630
- return await login2(client2);
179703
+ telemetry2.trackState("started");
179704
+ return await login2(client2, telemetry2);
179631
179705
  }
179632
179706
  if (parsedArgs.flags["--help"]) {
179633
179707
  telemetry2.trackCliFlagHelp("login");
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "vercel",
3
- "version": "47.0.5",
3
+ "version": "47.0.6",
4
4
  "preferGlobal": true,
5
5
  "license": "Apache-2.0",
6
6
  "description": "The command-line interface for Vercel",
@@ -35,7 +35,7 @@
35
35
  "@vercel/redwood": "2.3.6",
36
36
  "@vercel/remix-builder": "5.4.12",
37
37
  "@vercel/ruby": "2.2.1",
38
- "@vercel/static-build": "2.7.22",
38
+ "@vercel/static-build": "2.7.23",
39
39
  "chokidar": "4.0.0",
40
40
  "jose": "5.9.6"
41
41
  },
@@ -85,8 +85,8 @@
85
85
  "@vercel/client": "16.0.1",
86
86
  "@vercel/detect-agent": "0.2.0",
87
87
  "@vercel/error-utils": "2.0.3",
88
- "@vercel/frameworks": "3.8.2",
89
- "@vercel/fs-detectors": "5.5.0",
88
+ "@vercel/frameworks": "3.8.4",
89
+ "@vercel/fs-detectors": "5.5.2",
90
90
  "@vercel/routing-utils": "5.1.1",
91
91
  "@vitest/expect": "2.1.3",
92
92
  "ajv": "6.12.3",