@nuxt/cli-nightly 3.26.3-20250720-114545-ef541a6 → 3.26.3-20250720-161528-23ec0e3

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.
@@ -11,14 +11,14 @@ import { resolve } from 'pathe';
11
11
  import { readPackageJSON } from 'pkg-types';
12
12
  import { satisfies } from 'semver';
13
13
  import { joinURL } from 'ufo';
14
- import { r as runCommand } from '../shared/cli-nightly.CHXrvItL.mjs';
14
+ import { r as runCommand } from '../shared/cli-nightly.BKkbC07n.mjs';
15
15
  import { l as logger } from '../shared/cli-nightly.B9AmABr3.mjs';
16
- import { a as logLevelArgs, c as cwdArgs } from '../shared/cli-nightly.e0zI8O5E.mjs';
16
+ import { a as logLevelArgs, c as cwdArgs } from '../shared/cli-nightly.zfJwcksB.mjs';
17
17
  import { f as fetchModules, g as getNuxtVersion, c as checkNuxtCompatibility, a as getRegistryFromContent } from '../shared/cli-nightly.jA1DRKbi.mjs';
18
18
  import 'node:url';
19
19
  import 'node:crypto';
20
20
  import 'std-env';
21
- import '../shared/cli-nightly.CfBFbwB8.mjs';
21
+ import '../shared/cli-nightly.DORCgA1r.mjs';
22
22
  import 'consola';
23
23
  import 'confbox';
24
24
 
@@ -5,7 +5,7 @@ import { resolve, extname, dirname } from 'pathe';
5
5
  import { l as loadKit } from '../shared/cli-nightly.qKvs7FJ2.mjs';
6
6
  import { l as logger } from '../shared/cli-nightly.B9AmABr3.mjs';
7
7
  import { pascalCase, camelCase } from 'scule';
8
- import { a as logLevelArgs, c as cwdArgs } from '../shared/cli-nightly.e0zI8O5E.mjs';
8
+ import { a as logLevelArgs, c as cwdArgs } from '../shared/cli-nightly.zfJwcksB.mjs';
9
9
  import 'node:url';
10
10
  import 'exsolve';
11
11
  import 'consola';
@@ -9,7 +9,7 @@ import { o as overrideEnv } from '../shared/cli-nightly.DkO5RR_e.mjs';
9
9
  import { c as clearDir } from '../shared/cli-nightly.DPmMxQ6h.mjs';
10
10
  import { l as loadKit } from '../shared/cli-nightly.qKvs7FJ2.mjs';
11
11
  import { l as logger } from '../shared/cli-nightly.B9AmABr3.mjs';
12
- import { e as extendsArgs, d as dotEnvArgs, l as legacyRootDirArgs, a as logLevelArgs, c as cwdArgs } from '../shared/cli-nightly.e0zI8O5E.mjs';
12
+ import { e as extendsArgs, d as dotEnvArgs, l as legacyRootDirArgs, a as logLevelArgs, c as cwdArgs } from '../shared/cli-nightly.zfJwcksB.mjs';
13
13
  import 'node:url';
14
14
  import 'exsolve';
15
15
  import 'consola';
@@ -6,7 +6,7 @@ import { o as overrideEnv } from '../shared/cli-nightly.DkO5RR_e.mjs';
6
6
  import { a as clearBuildDir } from '../shared/cli-nightly.DPmMxQ6h.mjs';
7
7
  import { l as loadKit } from '../shared/cli-nightly.qKvs7FJ2.mjs';
8
8
  import { l as logger } from '../shared/cli-nightly.B9AmABr3.mjs';
9
- import { l as legacyRootDirArgs, e as extendsArgs, b as envNameArgs, d as dotEnvArgs, a as logLevelArgs, c as cwdArgs } from '../shared/cli-nightly.e0zI8O5E.mjs';
9
+ import { l as legacyRootDirArgs, e as extendsArgs, b as envNameArgs, d as dotEnvArgs, a as logLevelArgs, c as cwdArgs } from '../shared/cli-nightly.zfJwcksB.mjs';
10
10
  import 'node:fs';
11
11
  import 'consola/utils';
12
12
  import 'exsolve';
@@ -2,7 +2,7 @@ import { defineCommand } from 'citty';
2
2
  import { resolve } from 'pathe';
3
3
  import { l as loadKit } from '../shared/cli-nightly.qKvs7FJ2.mjs';
4
4
  import { c as cleanupNuxtDirs } from '../shared/cli-nightly.Bu_9IHj2.mjs';
5
- import { l as legacyRootDirArgs, c as cwdArgs } from '../shared/cli-nightly.e0zI8O5E.mjs';
5
+ import { l as legacyRootDirArgs, c as cwdArgs } from '../shared/cli-nightly.zfJwcksB.mjs';
6
6
  import 'node:url';
7
7
  import 'exsolve';
8
8
  import 'node:fs';
@@ -2,7 +2,7 @@ import process from 'node:process';
2
2
  import { defineCommand } from 'citty';
3
3
  import { resolve } from 'pathe';
4
4
  import { isTest } from 'std-env';
5
- import { l as legacyRootDirArgs, d as dotEnvArgs, b as envNameArgs, a as logLevelArgs, c as cwdArgs } from '../shared/cli-nightly.e0zI8O5E.mjs';
5
+ import { l as legacyRootDirArgs, d as dotEnvArgs, b as envNameArgs, a as logLevelArgs, c as cwdArgs } from '../shared/cli-nightly.zfJwcksB.mjs';
6
6
  import 'node:path';
7
7
  import 'consola';
8
8
  import '../shared/cli-nightly.B9AmABr3.mjs';
@@ -12,10 +12,12 @@ import { s as showVersions } from '../shared/cli-nightly.DltNmcvh.mjs';
12
12
  import { o as overrideEnv } from '../shared/cli-nightly.DkO5RR_e.mjs';
13
13
  import { l as loadKit } from '../shared/cli-nightly.qKvs7FJ2.mjs';
14
14
  import { l as logger } from '../shared/cli-nightly.B9AmABr3.mjs';
15
- import { e as extendsArgs, b as envNameArgs, l as legacyRootDirArgs, d as dotEnvArgs, a as logLevelArgs, c as cwdArgs } from '../shared/cli-nightly.e0zI8O5E.mjs';
15
+ import { e as extendsArgs, b as envNameArgs, l as legacyRootDirArgs, d as dotEnvArgs, a as logLevelArgs, c as cwdArgs } from '../shared/cli-nightly.zfJwcksB.mjs';
16
16
  import 'defu';
17
- import 'node:events';
18
17
  import 'node:fs';
18
+ import 'node:http';
19
+ import 'node:os';
20
+ import 'node:events';
19
21
  import 'node:fs/promises';
20
22
  import 'node:url';
21
23
  import 'exsolve';
@@ -26,8 +28,6 @@ import '../shared/cli-nightly.DPmMxQ6h.mjs';
26
28
  import '../shared/cli-nightly.Bu_9IHj2.mjs';
27
29
  import 'ohash';
28
30
  import 'youch';
29
- import 'node:http';
30
- import 'node:os';
31
31
  import 'consola/utils';
32
32
  import 'consola';
33
33
  import 'node:path';
@@ -141,7 +141,8 @@ const command = defineCommand({
141
141
  proxy: {
142
142
  url: devProxy.listener.url,
143
143
  urls,
144
- https: devProxy.listener.https
144
+ https: devProxy.listener.https,
145
+ addr: devProxy.listener.address
145
146
  }
146
147
  // if running with nuxt v4 or `NUXT_SOCKET=1`, we use the socket listener
147
148
  // otherwise pass 'true' to listen on a random port instead
@@ -3,7 +3,7 @@ import { defineCommand } from 'citty';
3
3
  import { resolve } from 'pathe';
4
4
  import { x } from 'tinyexec';
5
5
  import { l as logger } from '../shared/cli-nightly.B9AmABr3.mjs';
6
- import { l as legacyRootDirArgs, c as cwdArgs } from '../shared/cli-nightly.e0zI8O5E.mjs';
6
+ import { l as legacyRootDirArgs, c as cwdArgs } from '../shared/cli-nightly.zfJwcksB.mjs';
7
7
  import 'consola';
8
8
  import 'node:path';
9
9
  import 'std-env';
@@ -1,5 +1,5 @@
1
1
  import { defineCommand } from 'citty';
2
- import { l as legacyRootDirArgs, e as extendsArgs, b as envNameArgs, d as dotEnvArgs, a as logLevelArgs, c as cwdArgs } from '../shared/cli-nightly.e0zI8O5E.mjs';
2
+ import { l as legacyRootDirArgs, e as extendsArgs, b as envNameArgs, d as dotEnvArgs, a as logLevelArgs, c as cwdArgs } from '../shared/cli-nightly.zfJwcksB.mjs';
3
3
  import buildCommand from './build.mjs';
4
4
  import 'node:path';
5
5
  import 'node:process';
@@ -1,13 +1,15 @@
1
1
  import process from 'node:process';
2
2
  import defu from 'defu';
3
- import EventEmitter from 'node:events';
3
+ import { listen } from 'listhen';
4
4
  import { existsSync, unlinkSync, watch } from 'node:fs';
5
+ import { Server } from 'node:http';
6
+ import os from 'node:os';
7
+ import { join, resolve } from 'pathe';
8
+ import EventEmitter from 'node:events';
5
9
  import { mkdir } from 'node:fs/promises';
6
10
  import { pathToFileURL } from 'node:url';
7
11
  import { resolveModulePath } from 'exsolve';
8
12
  import { toNodeListener } from 'h3';
9
- import { listen } from 'listhen';
10
- import { join, resolve } from 'pathe';
11
13
  import { debounce } from 'perfect-debounce';
12
14
  import { provider } from 'std-env';
13
15
  import { joinURL } from 'ufo';
@@ -15,22 +17,6 @@ import { a as clearBuildDir } from '../shared/cli-nightly.DPmMxQ6h.mjs';
15
17
  import { l as loadKit } from '../shared/cli-nightly.qKvs7FJ2.mjs';
16
18
  import { l as loadNuxtManifest, r as resolveNuxtManifest, w as writeNuxtManifest } from '../shared/cli-nightly.Bu_9IHj2.mjs';
17
19
  import { Youch } from 'youch';
18
- import { Server } from 'node:http';
19
- import os from 'node:os';
20
-
21
- async function renderError(req, res, error) {
22
- const youch = new Youch();
23
- res.statusCode = 500;
24
- res.setHeader("Content-Type", "text/html");
25
- const html = await youch.toHTML(error, {
26
- request: {
27
- url: req.url,
28
- method: req.method,
29
- headers: req.headers
30
- }
31
- });
32
- res.end(html);
33
- }
34
20
 
35
21
  function generateSocketPath(prefix) {
36
22
  const timestamp = Date.now();
@@ -57,7 +43,7 @@ function parseSocketURL(url) {
57
43
  const socketPath = decodeURIComponent(path.replace(/%2F/g, "/"));
58
44
  return { socketPath, protocol: ssl ? "https" : "http" };
59
45
  }
60
- async function createSocketListener(handler, ssl = false) {
46
+ async function createSocketListener(handler, proxyAddress) {
61
47
  const socketPath = generateSocketPath("nuxt-dev");
62
48
  const server = new Server(handler);
63
49
  if (process.platform !== "win32" && existsSync(socketPath)) {
@@ -67,14 +53,10 @@ async function createSocketListener(handler, ssl = false) {
67
53
  }
68
54
  }
69
55
  await new Promise((resolve) => server.listen({ path: socketPath }, resolve));
70
- const url = formatSocketURL(socketPath, ssl);
56
+ const url = formatSocketURL(socketPath);
71
57
  return {
72
58
  url,
73
- address: {
74
- socketPath,
75
- address: "localhost",
76
- port: 3e3
77
- },
59
+ address: { address: "localhost", port: 3e3, ...proxyAddress, socketPath },
78
60
  async close() {
79
61
  try {
80
62
  server.removeAllListeners();
@@ -94,22 +76,20 @@ async function createSocketListener(handler, ssl = false) {
94
76
  };
95
77
  }
96
78
 
97
- async function createNuxtDevServer(options, listenOptions) {
98
- const devServer = new NuxtDevServer(options);
99
- devServer.listener = listenOptions ? await listen(devServer.handler, typeof listenOptions === "object" ? listenOptions : { port: options.port ?? 0, hostname: "127.0.0.1", showURL: false }) : await createSocketListener(devServer.handler);
100
- if (process.env.DEBUG) {
101
- console.debug(`Using ${listenOptions ? "network" : "socket"} listener for Nuxt dev server.`);
102
- }
103
- devServer.listener._url = devServer.listener.url;
104
- if (options.devContext.proxy?.url) {
105
- devServer.listener.url = options.devContext.proxy.url;
106
- }
107
- if (options.devContext.proxy?.urls) {
108
- const _getURLs = devServer.listener.getURLs.bind(devServer.listener);
109
- devServer.listener.getURLs = async () => Array.from(/* @__PURE__ */ new Set([...options.devContext.proxy?.urls || [], ...await _getURLs()]));
110
- }
111
- return devServer;
79
+ async function renderError(req, res, error) {
80
+ const youch = new Youch();
81
+ res.statusCode = 500;
82
+ res.setHeader("Content-Type", "text/html");
83
+ const html = await youch.toHTML(error, {
84
+ request: {
85
+ url: req.url,
86
+ method: req.method,
87
+ headers: req.headers
88
+ }
89
+ });
90
+ res.end(html);
112
91
  }
92
+
113
93
  const RESTART_RE = /^(?:nuxt\.config\.[a-z0-9]+|\.nuxtignore|\.nuxtrc|\.config\/nuxt(?:\.config)?\.[a-z0-9]+)$/;
114
94
  class NuxtDevServer extends EventEmitter {
115
95
  constructor(options) {
@@ -209,7 +189,6 @@ class NuxtDevServer extends EventEmitter {
209
189
  defaults: defu(this.options.defaults, devServerDefaults),
210
190
  overrides: {
211
191
  logLevel: this.options.logLevel,
212
- ...this.options.devContext.args.extends && { extends: this.options.devContext.args.extends },
213
192
  ...this.options.overrides,
214
193
  vite: {
215
194
  clearScreen: this.options.clear,
@@ -272,7 +251,7 @@ class NuxtDevServer extends EventEmitter {
272
251
  const addr = this.listener.address;
273
252
  this._currentNuxt.options.devServer.host = addr.address;
274
253
  this._currentNuxt.options.devServer.port = addr.port;
275
- this._currentNuxt.options.devServer.url = "socketPath" in addr ? this.options.devContext.proxy?.url || getAddressURL(addr, !!this.listener.https) : getAddressURL(addr, !!this.listener.https);
254
+ this._currentNuxt.options.devServer.url = getAddressURL(addr, !!this.listener.https);
276
255
  this._currentNuxt.options.devServer.https = this.options.devContext.proxy?.https;
277
256
  if (this.listener.https && !process.env.NODE_TLS_REJECT_UNAUTHORIZED) {
278
257
  console.warn("You might need `NODE_TLS_REJECT_UNAUTHORIZED=0` environment variable to make https work.");
@@ -399,17 +378,35 @@ async function initialize(devContext, ctx = {}, _listenOptions) {
399
378
  hostname: devContext.hostname,
400
379
  https: devContext.proxy?.https
401
380
  }, devContext.publicURLs);
402
- const listenOptions = _listenOptions === true || process.env._PORT ? { port: process.env._PORT ?? 0, hostname: "127.0.0.1", showURL: false } : _listenOptions;
403
- const devServer = await createNuxtDevServer({
381
+ const devServer = new NuxtDevServer({
404
382
  cwd: devContext.cwd,
405
- overrides: defu(ctx.data?.overrides, devServerOverrides),
383
+ overrides: defu(
384
+ ctx.data?.overrides,
385
+ { extends: devContext.args.extends },
386
+ devServerOverrides
387
+ ),
406
388
  defaults: devServerDefaults,
407
389
  logLevel: devContext.args.logLevel,
408
390
  clear: !!devContext.args.clear,
409
391
  dotenv: { cwd: devContext.cwd, fileName: devContext.args.dotenv },
410
392
  envName: devContext.args.envName,
411
- devContext
412
- }, listenOptions);
393
+ devContext: {
394
+ proxy: devContext.proxy
395
+ }
396
+ });
397
+ const listenOptions = _listenOptions === true || process.env._PORT ? { port: process.env._PORT ?? 0, hostname: "127.0.0.1", showURL: false } : _listenOptions;
398
+ devServer.listener = listenOptions ? await listen(devServer.handler, listenOptions) : await createSocketListener(devServer.handler, devContext.proxy?.addr);
399
+ if (process.env.DEBUG) {
400
+ console.debug(`Using ${listenOptions ? "network" : "socket"} listener for Nuxt dev server.`);
401
+ }
402
+ devServer.listener._url = devServer.listener.url;
403
+ if (devContext.proxy?.url) {
404
+ devServer.listener.url = devContext.proxy.url;
405
+ }
406
+ if (devContext.proxy?.urls) {
407
+ const _getURLs = devServer.listener.getURLs.bind(devServer.listener);
408
+ devServer.listener.getURLs = async () => Array.from(/* @__PURE__ */ new Set([...devContext.proxy?.urls || [], ...await _getURLs()]));
409
+ }
413
410
  let address;
414
411
  if (ipc.enabled) {
415
412
  devServer.on("loading:error", (_error) => {
@@ -7,11 +7,11 @@ import { resolve } from 'pathe';
7
7
  import { readPackageJSON } from 'pkg-types';
8
8
  import { splitByCase } from 'scule';
9
9
  import { isMinimal } from 'std-env';
10
- import { v as version } from '../shared/cli-nightly.CfBFbwB8.mjs';
10
+ import { v as version } from '../shared/cli-nightly.DORCgA1r.mjs';
11
11
  import { t as tryResolveNuxt } from '../shared/cli-nightly.qKvs7FJ2.mjs';
12
12
  import { l as logger } from '../shared/cli-nightly.B9AmABr3.mjs';
13
13
  import { g as getPackageManagerVersion } from '../shared/cli-nightly.BSm0_9Hr.mjs';
14
- import { l as legacyRootDirArgs, c as cwdArgs } from '../shared/cli-nightly.e0zI8O5E.mjs';
14
+ import { l as legacyRootDirArgs, c as cwdArgs } from '../shared/cli-nightly.zfJwcksB.mjs';
15
15
  import 'node:url';
16
16
  import 'exsolve';
17
17
  import 'consola';
@@ -8,13 +8,13 @@ import { $fetch } from 'ofetch';
8
8
  import { resolve, relative, join } from 'pathe';
9
9
  import { hasTTY } from 'std-env';
10
10
  import { x } from 'tinyexec';
11
- import { r as runCommand } from '../shared/cli-nightly.CHXrvItL.mjs';
11
+ import { r as runCommand } from '../shared/cli-nightly.BKkbC07n.mjs';
12
12
  import { l as logger } from '../shared/cli-nightly.B9AmABr3.mjs';
13
- import { a as logLevelArgs, c as cwdArgs } from '../shared/cli-nightly.e0zI8O5E.mjs';
13
+ import { a as logLevelArgs, c as cwdArgs } from '../shared/cli-nightly.zfJwcksB.mjs';
14
14
  import 'node:url';
15
15
  import 'node:crypto';
16
16
  import 'node:path';
17
- import '../shared/cli-nightly.CfBFbwB8.mjs';
17
+ import '../shared/cli-nightly.DORCgA1r.mjs';
18
18
  import 'consola';
19
19
 
20
20
  const themeColor = "\x1B[38;2;0;220;130m";
@@ -4,7 +4,7 @@ import { resolve, relative } from 'pathe';
4
4
  import { a as clearBuildDir } from '../shared/cli-nightly.DPmMxQ6h.mjs';
5
5
  import { l as loadKit } from '../shared/cli-nightly.qKvs7FJ2.mjs';
6
6
  import { l as logger } from '../shared/cli-nightly.B9AmABr3.mjs';
7
- import { l as legacyRootDirArgs, e as extendsArgs, b as envNameArgs, a as logLevelArgs, c as cwdArgs, d as dotEnvArgs } from '../shared/cli-nightly.e0zI8O5E.mjs';
7
+ import { l as legacyRootDirArgs, e as extendsArgs, b as envNameArgs, a as logLevelArgs, c as cwdArgs, d as dotEnvArgs } from '../shared/cli-nightly.zfJwcksB.mjs';
8
8
  import 'node:fs';
9
9
  import 'node:url';
10
10
  import 'exsolve';
@@ -9,7 +9,7 @@ import { resolve } from 'pathe';
9
9
  import { x } from 'tinyexec';
10
10
  import { l as loadKit } from '../shared/cli-nightly.qKvs7FJ2.mjs';
11
11
  import { l as logger } from '../shared/cli-nightly.B9AmABr3.mjs';
12
- import { d as dotEnvArgs, l as legacyRootDirArgs, e as extendsArgs, b as envNameArgs, a as logLevelArgs, c as cwdArgs } from '../shared/cli-nightly.e0zI8O5E.mjs';
12
+ import { d as dotEnvArgs, l as legacyRootDirArgs, e as extendsArgs, b as envNameArgs, a as logLevelArgs, c as cwdArgs } from '../shared/cli-nightly.zfJwcksB.mjs';
13
13
  import 'node:url';
14
14
  import 'exsolve';
15
15
  import 'consola';
@@ -3,7 +3,7 @@ import { colors } from 'consola/utils';
3
3
  import Fuse from 'fuse.js';
4
4
  import { upperFirst, kebabCase } from 'scule';
5
5
  import { l as logger } from '../shared/cli-nightly.B9AmABr3.mjs';
6
- import { c as cwdArgs } from '../shared/cli-nightly.e0zI8O5E.mjs';
6
+ import { c as cwdArgs } from '../shared/cli-nightly.zfJwcksB.mjs';
7
7
  import { g as getNuxtVersion, f as fetchModules, c as checkNuxtCompatibility } from '../shared/cli-nightly.jA1DRKbi.mjs';
8
8
  import 'consola';
9
9
  import 'node:path';
@@ -2,7 +2,7 @@ import process from 'node:process';
2
2
  import { defineCommand } from 'citty';
3
3
  import { resolve } from 'pathe';
4
4
  import { l as logger } from '../shared/cli-nightly.B9AmABr3.mjs';
5
- import { l as legacyRootDirArgs, a as logLevelArgs, c as cwdArgs } from '../shared/cli-nightly.e0zI8O5E.mjs';
5
+ import { l as legacyRootDirArgs, a as logLevelArgs, c as cwdArgs } from '../shared/cli-nightly.zfJwcksB.mjs';
6
6
  import 'consola';
7
7
  import 'node:path';
8
8
  import 'std-env';
@@ -6,7 +6,7 @@ import { readTSConfig } from 'pkg-types';
6
6
  import { isBun } from 'std-env';
7
7
  import { x } from 'tinyexec';
8
8
  import { l as loadKit } from '../shared/cli-nightly.qKvs7FJ2.mjs';
9
- import { l as legacyRootDirArgs, e as extendsArgs, d as dotEnvArgs, a as logLevelArgs, c as cwdArgs } from '../shared/cli-nightly.e0zI8O5E.mjs';
9
+ import { l as legacyRootDirArgs, e as extendsArgs, d as dotEnvArgs, a as logLevelArgs, c as cwdArgs } from '../shared/cli-nightly.zfJwcksB.mjs';
10
10
  import 'node:url';
11
11
  import 'node:path';
12
12
  import 'consola';
@@ -9,7 +9,7 @@ import { l as loadKit } from '../shared/cli-nightly.qKvs7FJ2.mjs';
9
9
  import { l as logger } from '../shared/cli-nightly.B9AmABr3.mjs';
10
10
  import { c as cleanupNuxtDirs, n as nuxtVersionToGitIdentifier } from '../shared/cli-nightly.Bu_9IHj2.mjs';
11
11
  import { g as getPackageManagerVersion } from '../shared/cli-nightly.BSm0_9Hr.mjs';
12
- import { l as legacyRootDirArgs, a as logLevelArgs, c as cwdArgs } from '../shared/cli-nightly.e0zI8O5E.mjs';
12
+ import { l as legacyRootDirArgs, a as logLevelArgs, c as cwdArgs } from '../shared/cli-nightly.zfJwcksB.mjs';
13
13
  import 'node:url';
14
14
  import 'exsolve';
15
15
  import 'consola';
@@ -23,6 +23,7 @@ interface NuxtDevContext {
23
23
  url?: string;
24
24
  urls?: ListenURL[];
25
25
  https?: boolean | HTTPSOptions;
26
+ addr?: AddressInfo;
26
27
  };
27
28
  }
28
29
  interface NuxtDevServerOptions {
@@ -33,11 +34,10 @@ interface NuxtDevServerOptions {
33
34
  clear?: boolean;
34
35
  defaults: NuxtConfig;
35
36
  overrides: NuxtConfig;
36
- port?: string | number;
37
37
  loadingTemplate?: ({ loading }: {
38
38
  loading: string;
39
39
  }) => string;
40
- devContext: NuxtDevContext;
40
+ devContext: Pick<NuxtDevContext, 'proxy'>;
41
41
  }
42
42
  interface DevServerEventMap {
43
43
  'loading:error': [error: Error];
@@ -58,10 +58,8 @@ declare class NuxtDevServer extends EventEmitter<DevServerEventMap> {
58
58
  handler: RequestListener;
59
59
  listener: Pick<Listener, 'server' | 'getURLs' | 'https' | 'url' | 'close'> & {
60
60
  _url?: string;
61
- address: {
61
+ address: Omit<AddressInfo, 'family'> & {
62
62
  socketPath: string;
63
- port: number;
64
- address: string;
65
63
  } | AddressInfo;
66
64
  };
67
65
  constructor(options: NuxtDevServerOptions);
@@ -81,13 +79,11 @@ interface InitializeOptions {
81
79
  };
82
80
  }
83
81
  declare function initialize(devContext: NuxtDevContext, ctx?: InitializeOptions, _listenOptions?: true | Partial<ListenOptions>): Promise<{
84
- listener: Pick<listhen.Listener, "server" | "getURLs" | "https" | "url" | "close"> & {
82
+ listener: Pick<listhen.Listener, "https" | "server" | "url" | "getURLs" | "close"> & {
85
83
  _url?: string;
86
- address: {
84
+ address: (Omit<net.AddressInfo, "family"> & {
87
85
  socketPath: string;
88
- port: number;
89
- address: string;
90
- } | net.AddressInfo;
86
+ }) | net.AddressInfo;
91
87
  };
92
88
  close: () => void;
93
89
  onReady: (callback: (address: string) => void) => void;
@@ -23,6 +23,7 @@ interface NuxtDevContext {
23
23
  url?: string;
24
24
  urls?: ListenURL[];
25
25
  https?: boolean | HTTPSOptions;
26
+ addr?: AddressInfo;
26
27
  };
27
28
  }
28
29
  interface NuxtDevServerOptions {
@@ -33,11 +34,10 @@ interface NuxtDevServerOptions {
33
34
  clear?: boolean;
34
35
  defaults: NuxtConfig;
35
36
  overrides: NuxtConfig;
36
- port?: string | number;
37
37
  loadingTemplate?: ({ loading }: {
38
38
  loading: string;
39
39
  }) => string;
40
- devContext: NuxtDevContext;
40
+ devContext: Pick<NuxtDevContext, 'proxy'>;
41
41
  }
42
42
  interface DevServerEventMap {
43
43
  'loading:error': [error: Error];
@@ -58,10 +58,8 @@ declare class NuxtDevServer extends EventEmitter<DevServerEventMap> {
58
58
  handler: RequestListener;
59
59
  listener: Pick<Listener, 'server' | 'getURLs' | 'https' | 'url' | 'close'> & {
60
60
  _url?: string;
61
- address: {
61
+ address: Omit<AddressInfo, 'family'> & {
62
62
  socketPath: string;
63
- port: number;
64
- address: string;
65
63
  } | AddressInfo;
66
64
  };
67
65
  constructor(options: NuxtDevServerOptions);
@@ -81,13 +79,11 @@ interface InitializeOptions {
81
79
  };
82
80
  }
83
81
  declare function initialize(devContext: NuxtDevContext, ctx?: InitializeOptions, _listenOptions?: true | Partial<ListenOptions>): Promise<{
84
- listener: Pick<listhen.Listener, "server" | "getURLs" | "https" | "url" | "close"> & {
82
+ listener: Pick<listhen.Listener, "https" | "server" | "url" | "getURLs" | "close"> & {
85
83
  _url?: string;
86
- address: {
84
+ address: (Omit<net.AddressInfo, "family"> & {
87
85
  socketPath: string;
88
- port: number;
89
- address: string;
90
- } | net.AddressInfo;
86
+ }) | net.AddressInfo;
91
87
  };
92
88
  close: () => void;
93
89
  onReady: (callback: (address: string) => void) => void;
@@ -1,14 +1,16 @@
1
1
  export { i as initialize } from '../chunks/index.mjs';
2
2
  import 'node:process';
3
3
  import 'defu';
4
- import 'node:events';
4
+ import 'listhen';
5
5
  import 'node:fs';
6
+ import 'node:http';
7
+ import 'node:os';
8
+ import 'pathe';
9
+ import 'node:events';
6
10
  import 'node:fs/promises';
7
11
  import 'node:url';
8
12
  import 'exsolve';
9
13
  import 'h3';
10
- import 'listhen';
11
- import 'pathe';
12
14
  import 'perfect-debounce';
13
15
  import 'std-env';
14
16
  import 'ufo';
@@ -19,5 +21,3 @@ import '../shared/cli-nightly.qKvs7FJ2.mjs';
19
21
  import '../shared/cli-nightly.Bu_9IHj2.mjs';
20
22
  import 'ohash';
21
23
  import 'youch';
22
- import 'node:http';
23
- import 'node:os';
package/dist/index.mjs CHANGED
@@ -1,4 +1,4 @@
1
- export { m as main, r as runCommand, h as runMain } from './shared/cli-nightly.e0zI8O5E.mjs';
1
+ export { m as main, r as runCommand, h as runMain } from './shared/cli-nightly.zfJwcksB.mjs';
2
2
  import 'node:path';
3
3
  import 'node:process';
4
4
  import 'citty';
@@ -1,11 +1,11 @@
1
1
  import process from 'node:process';
2
2
  import { fileURLToPath } from 'node:url';
3
3
  import { defineCommand, runCommand as runCommand$1 } from 'citty';
4
- import { f as commands, c as cwdArgs, s as setupGlobalConsole, g as checkEngines } from './cli-nightly.e0zI8O5E.mjs';
4
+ import { f as commands, c as cwdArgs, s as setupGlobalConsole, g as checkEngines } from './cli-nightly.zfJwcksB.mjs';
5
5
  import nodeCrypto from 'node:crypto';
6
6
  import { resolve } from 'node:path';
7
7
  import { provider } from 'std-env';
8
- import { d as description, v as version, n as name } from './cli-nightly.CfBFbwB8.mjs';
8
+ import { d as description, v as version, n as name } from './cli-nightly.DORCgA1r.mjs';
9
9
  import { l as logger } from './cli-nightly.B9AmABr3.mjs';
10
10
 
11
11
  if (!globalThis.crypto) {
@@ -1,5 +1,5 @@
1
1
  const name = "nuxi-nightly";
2
- const version = "3.26.3-20250720-114524-ef541a6";
2
+ const version = "3.26.3-20250720-161508-23ec0e3";
3
3
  const description = "Nuxt CLI";
4
4
 
5
5
  export { description as d, name as n, version as v };
@@ -128,7 +128,7 @@ async function checkEngines() {
128
128
  }
129
129
 
130
130
  const name = "@nuxt/cli-nightly";
131
- const version = "3.26.3-20250720-114545-ef541a6";
131
+ const version = "3.26.3-20250720-161528-23ec0e3";
132
132
  const description = "Nuxt CLI";
133
133
 
134
134
  const main = defineCommand({
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@nuxt/cli-nightly",
3
3
  "type": "module",
4
- "version": "3.26.3-20250720-114545-ef541a6",
4
+ "version": "3.26.3-20250720-161528-23ec0e3",
5
5
  "description": "Nuxt CLI",
6
6
  "license": "MIT",
7
7
  "repository": {
@@ -60,6 +60,7 @@
60
60
  "youch": "^4.1.0-beta.10"
61
61
  },
62
62
  "devDependencies": {
63
+ "@nuxt/kit": "^4.0.0",
63
64
  "@nuxt/schema": "^4.0.0",
64
65
  "@types/node": "^22.16.3",
65
66
  "get-port-please": "^3.2.0",