@nuxt/devtools-kit 3.2.4 → 4.0.0-alpha.2

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.
package/dist/index.cjs CHANGED
@@ -1,7 +1,7 @@
1
1
  'use strict';
2
2
 
3
3
  const kit = require('@nuxt/kit');
4
- const execa = require('execa');
4
+ const tinyexec = require('tinyexec');
5
5
 
6
6
  function addCustomTab(tab, nuxt = kit.useNuxt()) {
7
7
  nuxt.hook("devtools:customTabs", async (tabs) => {
@@ -17,50 +17,53 @@ function startSubprocess(execaOptions, tabOptions, nuxt = kit.useNuxt()) {
17
17
  const id = tabOptions.id;
18
18
  let restarting = false;
19
19
  function start() {
20
- const process2 = execa.execa(
20
+ const proc = tinyexec.x(
21
21
  execaOptions.command,
22
22
  execaOptions.args,
23
23
  {
24
- reject: false,
25
- ...execaOptions,
26
- env: {
27
- COLORS: "true",
28
- FORCE_COLOR: "true",
29
- ...execaOptions.env,
30
- // Force disable Nuxi CLI override
31
- __CLI_ARGV__: void 0
24
+ nodeOptions: {
25
+ ...execaOptions.nodeOptions,
26
+ cwd: execaOptions.cwd ?? execaOptions.nodeOptions?.cwd,
27
+ env: {
28
+ ...process.env,
29
+ COLORS: "true",
30
+ FORCE_COLOR: "true",
31
+ ...execaOptions.env,
32
+ ...execaOptions.nodeOptions?.env,
33
+ __CLI_ARGV__: void 0
34
+ }
32
35
  }
33
36
  }
34
37
  );
35
38
  nuxt.callHook("devtools:terminal:write", { id, data: `> ${[execaOptions.command, ...execaOptions.args || []].join(" ")}
36
39
 
37
40
  ` });
38
- process2.stdout.on("data", (data) => {
41
+ proc.process?.stdout?.on("data", (data) => {
39
42
  nuxt.callHook("devtools:terminal:write", { id, data: data.toString() });
40
43
  });
41
- process2.stderr.on("data", (data) => {
44
+ proc.process?.stderr?.on("data", (data) => {
42
45
  nuxt.callHook("devtools:terminal:write", { id, data: data.toString() });
43
46
  });
44
- process2.on("exit", (code) => {
47
+ proc.process?.on("exit", (code) => {
45
48
  if (!restarting) {
46
49
  nuxt.callHook("devtools:terminal:write", { id, data: `
47
- > process terminalated with ${code}
50
+ > process terminated with ${code}
48
51
  ` });
49
52
  nuxt.callHook("devtools:terminal:exit", { id, code: code || 0 });
50
53
  }
51
54
  });
52
- return process2;
55
+ return proc;
53
56
  }
54
57
  register();
55
58
  nuxt.hook("close", () => {
56
59
  terminate();
57
60
  });
58
- let process = start();
61
+ let result = start();
59
62
  function restart() {
60
63
  restarting = true;
61
- process?.kill();
64
+ result.kill();
62
65
  clear();
63
- process = start();
66
+ result = start();
64
67
  restarting = false;
65
68
  }
66
69
  function clear() {
@@ -70,7 +73,7 @@ function startSubprocess(execaOptions, tabOptions, nuxt = kit.useNuxt()) {
70
73
  function terminate() {
71
74
  restarting = false;
72
75
  try {
73
- process?.kill();
76
+ result.kill();
74
77
  } catch {
75
78
  }
76
79
  nuxt.callHook("devtools:terminal:remove", { id });
@@ -84,7 +87,12 @@ function startSubprocess(execaOptions, tabOptions, nuxt = kit.useNuxt()) {
84
87
  });
85
88
  }
86
89
  return {
87
- getProcess: () => process,
90
+ /** @deprecated Use `getResult()` instead */
91
+ getProcess: () => {
92
+ console.warn("[nuxt-devtools] `getProcess()` is deprecated, use `getResult()` instead.");
93
+ return result.process;
94
+ },
95
+ getResult: () => result,
88
96
  terminate,
89
97
  restart,
90
98
  clear
package/dist/index.d.cts CHANGED
@@ -1,7 +1,8 @@
1
1
  import * as _nuxt_schema from '@nuxt/schema';
2
2
  import { BirpcGroup } from 'birpc';
3
- import { ExecaChildProcess } from 'execa';
4
- import { M as ModuleCustomTab, N as NuxtDevtoolsInfo, S as SubprocessOptions, T as TerminalState } from './shared/devtools-kit.BE8MVpwl.cjs';
3
+ import { ChildProcess } from 'node:child_process';
4
+ import { Result } from 'tinyexec';
5
+ import { M as ModuleCustomTab, N as NuxtDevtoolsInfo, S as SubprocessOptions, T as TerminalState } from './shared/devtools-kit.CijV1blW.cjs';
5
6
  import 'vue';
6
7
  import 'nuxt/schema';
7
8
  import 'unimport';
@@ -24,11 +25,18 @@ declare function refreshCustomTabs(nuxt?: _nuxt_schema.Nuxt): void | Promise<any
24
25
  * Create a subprocess that handled by the DevTools.
25
26
  */
26
27
  declare function startSubprocess(execaOptions: SubprocessOptions, tabOptions: TerminalState, nuxt?: _nuxt_schema.Nuxt): {
27
- getProcess: () => ExecaChildProcess<string>;
28
+ /** @deprecated Use `getResult()` instead */
29
+ getProcess: () => ChildProcess | undefined;
30
+ getResult: () => Result;
28
31
  terminate: () => void;
29
32
  restart: () => void;
30
33
  clear: () => void;
31
34
  };
35
+ /**
36
+ * Extend server RPC with namespaced functions.
37
+ *
38
+ * Returns an object with a `broadcast` proxy for calling client functions.
39
+ */
32
40
  declare function extendServerRpc<ClientFunctions extends object = Record<string, unknown>, ServerFunctions extends object = Record<string, unknown>>(namespace: string, functions: ServerFunctions, nuxt?: _nuxt_schema.Nuxt): BirpcGroup<ClientFunctions, ServerFunctions>;
33
41
  declare function onDevToolsInitialized(fn: (info: NuxtDevtoolsInfo) => void, nuxt?: _nuxt_schema.Nuxt): void;
34
42
 
package/dist/index.d.mts CHANGED
@@ -1,7 +1,8 @@
1
1
  import * as _nuxt_schema from '@nuxt/schema';
2
2
  import { BirpcGroup } from 'birpc';
3
- import { ExecaChildProcess } from 'execa';
4
- import { M as ModuleCustomTab, N as NuxtDevtoolsInfo, S as SubprocessOptions, T as TerminalState } from './shared/devtools-kit.BE8MVpwl.mjs';
3
+ import { ChildProcess } from 'node:child_process';
4
+ import { Result } from 'tinyexec';
5
+ import { M as ModuleCustomTab, N as NuxtDevtoolsInfo, S as SubprocessOptions, T as TerminalState } from './shared/devtools-kit.CijV1blW.mjs';
5
6
  import 'vue';
6
7
  import 'nuxt/schema';
7
8
  import 'unimport';
@@ -24,11 +25,18 @@ declare function refreshCustomTabs(nuxt?: _nuxt_schema.Nuxt): void | Promise<any
24
25
  * Create a subprocess that handled by the DevTools.
25
26
  */
26
27
  declare function startSubprocess(execaOptions: SubprocessOptions, tabOptions: TerminalState, nuxt?: _nuxt_schema.Nuxt): {
27
- getProcess: () => ExecaChildProcess<string>;
28
+ /** @deprecated Use `getResult()` instead */
29
+ getProcess: () => ChildProcess | undefined;
30
+ getResult: () => Result;
28
31
  terminate: () => void;
29
32
  restart: () => void;
30
33
  clear: () => void;
31
34
  };
35
+ /**
36
+ * Extend server RPC with namespaced functions.
37
+ *
38
+ * Returns an object with a `broadcast` proxy for calling client functions.
39
+ */
32
40
  declare function extendServerRpc<ClientFunctions extends object = Record<string, unknown>, ServerFunctions extends object = Record<string, unknown>>(namespace: string, functions: ServerFunctions, nuxt?: _nuxt_schema.Nuxt): BirpcGroup<ClientFunctions, ServerFunctions>;
33
41
  declare function onDevToolsInitialized(fn: (info: NuxtDevtoolsInfo) => void, nuxt?: _nuxt_schema.Nuxt): void;
34
42
 
package/dist/index.d.ts CHANGED
@@ -1,7 +1,8 @@
1
1
  import * as _nuxt_schema from '@nuxt/schema';
2
2
  import { BirpcGroup } from 'birpc';
3
- import { ExecaChildProcess } from 'execa';
4
- import { M as ModuleCustomTab, N as NuxtDevtoolsInfo, S as SubprocessOptions, T as TerminalState } from './shared/devtools-kit.BE8MVpwl.js';
3
+ import { ChildProcess } from 'node:child_process';
4
+ import { Result } from 'tinyexec';
5
+ import { M as ModuleCustomTab, N as NuxtDevtoolsInfo, S as SubprocessOptions, T as TerminalState } from './shared/devtools-kit.CijV1blW.js';
5
6
  import 'vue';
6
7
  import 'nuxt/schema';
7
8
  import 'unimport';
@@ -24,11 +25,18 @@ declare function refreshCustomTabs(nuxt?: _nuxt_schema.Nuxt): void | Promise<any
24
25
  * Create a subprocess that handled by the DevTools.
25
26
  */
26
27
  declare function startSubprocess(execaOptions: SubprocessOptions, tabOptions: TerminalState, nuxt?: _nuxt_schema.Nuxt): {
27
- getProcess: () => ExecaChildProcess<string>;
28
+ /** @deprecated Use `getResult()` instead */
29
+ getProcess: () => ChildProcess | undefined;
30
+ getResult: () => Result;
28
31
  terminate: () => void;
29
32
  restart: () => void;
30
33
  clear: () => void;
31
34
  };
35
+ /**
36
+ * Extend server RPC with namespaced functions.
37
+ *
38
+ * Returns an object with a `broadcast` proxy for calling client functions.
39
+ */
32
40
  declare function extendServerRpc<ClientFunctions extends object = Record<string, unknown>, ServerFunctions extends object = Record<string, unknown>>(namespace: string, functions: ServerFunctions, nuxt?: _nuxt_schema.Nuxt): BirpcGroup<ClientFunctions, ServerFunctions>;
33
41
  declare function onDevToolsInitialized(fn: (info: NuxtDevtoolsInfo) => void, nuxt?: _nuxt_schema.Nuxt): void;
34
42
 
package/dist/index.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  import { useNuxt } from '@nuxt/kit';
2
- import { execa } from 'execa';
2
+ import { x } from 'tinyexec';
3
3
 
4
4
  function addCustomTab(tab, nuxt = useNuxt()) {
5
5
  nuxt.hook("devtools:customTabs", async (tabs) => {
@@ -15,50 +15,53 @@ function startSubprocess(execaOptions, tabOptions, nuxt = useNuxt()) {
15
15
  const id = tabOptions.id;
16
16
  let restarting = false;
17
17
  function start() {
18
- const process2 = execa(
18
+ const proc = x(
19
19
  execaOptions.command,
20
20
  execaOptions.args,
21
21
  {
22
- reject: false,
23
- ...execaOptions,
24
- env: {
25
- COLORS: "true",
26
- FORCE_COLOR: "true",
27
- ...execaOptions.env,
28
- // Force disable Nuxi CLI override
29
- __CLI_ARGV__: void 0
22
+ nodeOptions: {
23
+ ...execaOptions.nodeOptions,
24
+ cwd: execaOptions.cwd ?? execaOptions.nodeOptions?.cwd,
25
+ env: {
26
+ ...process.env,
27
+ COLORS: "true",
28
+ FORCE_COLOR: "true",
29
+ ...execaOptions.env,
30
+ ...execaOptions.nodeOptions?.env,
31
+ __CLI_ARGV__: void 0
32
+ }
30
33
  }
31
34
  }
32
35
  );
33
36
  nuxt.callHook("devtools:terminal:write", { id, data: `> ${[execaOptions.command, ...execaOptions.args || []].join(" ")}
34
37
 
35
38
  ` });
36
- process2.stdout.on("data", (data) => {
39
+ proc.process?.stdout?.on("data", (data) => {
37
40
  nuxt.callHook("devtools:terminal:write", { id, data: data.toString() });
38
41
  });
39
- process2.stderr.on("data", (data) => {
42
+ proc.process?.stderr?.on("data", (data) => {
40
43
  nuxt.callHook("devtools:terminal:write", { id, data: data.toString() });
41
44
  });
42
- process2.on("exit", (code) => {
45
+ proc.process?.on("exit", (code) => {
43
46
  if (!restarting) {
44
47
  nuxt.callHook("devtools:terminal:write", { id, data: `
45
- > process terminalated with ${code}
48
+ > process terminated with ${code}
46
49
  ` });
47
50
  nuxt.callHook("devtools:terminal:exit", { id, code: code || 0 });
48
51
  }
49
52
  });
50
- return process2;
53
+ return proc;
51
54
  }
52
55
  register();
53
56
  nuxt.hook("close", () => {
54
57
  terminate();
55
58
  });
56
- let process = start();
59
+ let result = start();
57
60
  function restart() {
58
61
  restarting = true;
59
- process?.kill();
62
+ result.kill();
60
63
  clear();
61
- process = start();
64
+ result = start();
62
65
  restarting = false;
63
66
  }
64
67
  function clear() {
@@ -68,7 +71,7 @@ function startSubprocess(execaOptions, tabOptions, nuxt = useNuxt()) {
68
71
  function terminate() {
69
72
  restarting = false;
70
73
  try {
71
- process?.kill();
74
+ result.kill();
72
75
  } catch {
73
76
  }
74
77
  nuxt.callHook("devtools:terminal:remove", { id });
@@ -82,7 +85,12 @@ function startSubprocess(execaOptions, tabOptions, nuxt = useNuxt()) {
82
85
  });
83
86
  }
84
87
  return {
85
- getProcess: () => process,
88
+ /** @deprecated Use `getResult()` instead */
89
+ getProcess: () => {
90
+ console.warn("[nuxt-devtools] `getProcess()` is deprecated, use `getResult()` instead.");
91
+ return result.process;
92
+ },
93
+ getResult: () => result,
86
94
  terminate,
87
95
  restart,
88
96
  clear
@@ -7,7 +7,7 @@ import { Nitro, StorageMounts } from 'nitropack';
7
7
  import { StorageValue } from 'unstorage';
8
8
  import { ResolvedConfig } from 'vite';
9
9
  import { NuxtAnalyzeMeta } from '@nuxt/schema';
10
- import { Options } from 'execa';
10
+ import { SpawnOptions } from 'node:child_process';
11
11
 
12
12
  type TabCategory = 'pinned' | 'app' | 'vue-devtools' | 'analyze' | 'server' | 'modules' | 'documentation' | 'advanced';
13
13
 
@@ -161,7 +161,6 @@ type PackageManagerName = 'npm' | 'yarn' | 'pnpm' | 'bun';
161
161
  type NpmCommandType = 'install' | 'uninstall' | 'update';
162
162
  interface NpmCommandOptions {
163
163
  dev?: boolean;
164
- global?: boolean;
165
164
  }
166
165
  interface AutoImportsWithMetadata {
167
166
  imports: Import[];
@@ -380,19 +379,7 @@ interface ModuleOptions {
380
379
  */
381
380
  viteInspect?: boolean;
382
381
  /**
383
- * Enable Vite DevTools integration
384
- *
385
- * @experimental
386
- * @default false
387
- */
388
- viteDevTools?: boolean;
389
- /**
390
- * Disable dev time authorization check.
391
- *
392
- * **NOT RECOMMENDED**, only use this if you know what you are doing.
393
- *
394
- * @see https://github.com/nuxt/devtools/pull/257
395
- * @default false
382
+ * @deprecated Auth is now handled by Vite DevTools. This option is ignored.
396
383
  */
397
384
  disableAuthorization?: boolean;
398
385
  /**
@@ -454,12 +441,6 @@ interface ModuleOptions {
454
441
  */
455
442
  telemetry?: boolean;
456
443
  }
457
- interface ModuleGlobalOptions {
458
- /**
459
- * List of projects to enable devtools for. Only works when devtools is installed globally.
460
- */
461
- projects?: string[];
462
- }
463
444
  interface VSCodeIntegrationOptions {
464
445
  /**
465
446
  * Enable VS Code Server integration
@@ -528,12 +509,10 @@ interface NuxtDevToolsOptions {
528
509
  hiddenTabCategories: string[];
529
510
  hiddenTabs: string[];
530
511
  interactionCloseOnOutsideClick: boolean;
531
- minimizePanelInactive: number;
532
512
  pinnedTabs: string[];
533
513
  scale: number;
534
514
  showExperimentalFeatures: boolean;
535
515
  showHelpButtons: boolean;
536
- showPanel: boolean | null;
537
516
  sidebarExpanded: boolean;
538
517
  sidebarScrollable: boolean;
539
518
  };
@@ -577,9 +556,12 @@ interface TerminalBase {
577
556
  icon?: string;
578
557
  }
579
558
  type TerminalAction = 'restart' | 'terminate' | 'clear' | 'remove';
580
- interface SubprocessOptions extends Options {
559
+ interface SubprocessOptions {
581
560
  command: string;
582
561
  args?: string[];
562
+ cwd?: string;
563
+ env?: Record<string, string | undefined>;
564
+ nodeOptions?: SpawnOptions;
583
565
  }
584
566
  interface TerminalInfo extends TerminalBase {
585
567
  /**
@@ -610,12 +592,6 @@ interface TerminalState extends TerminalInfo {
610
592
  onActionTerminate?: () => Promise<void> | void;
611
593
  }
612
594
 
613
- interface WizardFunctions {
614
- enablePages: (nuxt: any) => Promise<void>;
615
- }
616
- type WizardActions = keyof WizardFunctions;
617
- type GetWizardArgs<T extends WizardActions> = WizardFunctions[T] extends (nuxt: any, ...args: infer A) => any ? A : never;
618
-
619
595
  interface ServerFunctions {
620
596
  getServerConfig: () => NuxtOptions;
621
597
  getServerDebugContext: () => Promise<ServerDebugContext | undefined>;
@@ -660,7 +636,7 @@ interface ServerFunctions {
660
636
  renameStaticAsset: (token: string, oldPath: string, newPath: string) => Promise<void>;
661
637
  telemetryEvent: (payload: object, immediate?: boolean) => void;
662
638
  customTabAction: (name: string, action: number) => Promise<boolean>;
663
- runWizard: <T extends WizardActions>(token: string, name: T, ...args: GetWizardArgs<T>) => Promise<void>;
639
+ enablePages: (token: string) => Promise<void>;
664
640
  openInEditor: (filepath: string) => Promise<boolean>;
665
641
  restartNuxt: (token: string, hard?: boolean) => Promise<void>;
666
642
  installNuxtModule: (token: string, name: string, dry?: boolean) => Promise<InstallModuleReturn>;
@@ -692,13 +668,32 @@ interface NuxtServerData {
692
668
  }
693
669
  type ClientUpdateEvent = keyof ServerFunctions;
694
670
 
671
+ /**
672
+ * Compatibility RPC interface that supports broadcast and function access.
673
+ * Backed by Vite DevTools Kit's RpcFunctionsHost internally.
674
+ */
675
+ interface NuxtDevtoolsRpc {
676
+ /**
677
+ * Broadcast proxy for calling client functions.
678
+ * Supports `rpc.broadcast.refresh.asEvent(event)` pattern for backward compatibility.
679
+ */
680
+ broadcast: {
681
+ [K in keyof ClientFunctions]: ClientFunctions[K] & {
682
+ asEvent: ClientFunctions[K];
683
+ };
684
+ };
685
+ /**
686
+ * Proxy for accessing server functions locally.
687
+ */
688
+ functions: ServerFunctions;
689
+ }
695
690
  /**
696
691
  * @internal
697
692
  */
698
693
  interface NuxtDevtoolsServerContext {
699
694
  nuxt: Nuxt;
700
695
  options: ModuleOptions;
701
- rpc: BirpcGroup<ClientFunctions, ServerFunctions>;
696
+ rpc: NuxtDevtoolsRpc;
702
697
  /**
703
698
  * Hook to open file in editor
704
699
  */
@@ -708,7 +703,7 @@ interface NuxtDevtoolsServerContext {
708
703
  */
709
704
  refresh: (event: keyof ServerFunctions) => void;
710
705
  /**
711
- * Ensure dev auth token is valid, throw if not
706
+ * @deprecated Auth is now handled by Vite DevTools. This is a noop.
712
707
  */
713
708
  ensureDevAuthToken: (token: string) => Promise<void>;
714
709
  extendServerRpc: <ClientFunctions extends object = Record<string, unknown>, ServerFunctions extends object = Record<string, unknown>>(name: string, functions: ServerFunctions) => BirpcGroup<ClientFunctions, ServerFunctions>;
@@ -716,7 +711,6 @@ interface NuxtDevtoolsServerContext {
716
711
  interface NuxtDevtoolsInfo {
717
712
  version: string;
718
713
  packagePath: string;
719
- isGlobalInstall: boolean;
720
714
  }
721
715
  interface InstallModuleReturn {
722
716
  configOriginal: string;
@@ -794,4 +788,4 @@ declare module '@nuxt/schema' {
794
788
  }
795
789
  }
796
790
 
797
- export type { RouteInfo as $, AnalyzeBuildMeta as A, BasicModuleInfo as B, ClientFunctions as C, ModuleStaticInfo as D, ModuleStats as E, ModuleTabInfo as F, GetWizardArgs as G, HookInfo as H, ImageMeta as I, ModuleType as J, ModuleVNodeView as K, LoadingTimeMetric as L, ModuleCustomTab as M, NuxtDevtoolsInfo as N, ModuleView as O, PluginMetric as P, NpmCommandOptions as Q, NpmCommandType as R, SubprocessOptions as S, TerminalState as T, NuxtDevToolsOptions as U, NuxtDevtoolsServerContext as V, NuxtServerData as W, PackageManagerName as X, PackageUpdateInfo as Y, Payload as Z, PluginInfoWithMetic as _, ServerFunctions as a, ScannedNitroTasks as a0, ServerDebugContext as a1, ServerDebugModuleMutationRecord as a2, ServerRouteInfo as a3, ServerRouteInput as a4, ServerRouteInputType as a5, ServerTaskInfo as a6, TabCategory as a7, TerminalAction as a8, TerminalBase as a9, TerminalInfo as aa, VSCodeIntegrationOptions as ab, VSCodeTunnelOptions as ac, VueInspectorClient as ad, VueInspectorData as ae, WizardActions as af, WizardFunctions as ag, AnalyzeBuildsInfo as b, AssetEntry as c, AssetInfo as d, AssetType as e, AutoImportsWithMetadata as f, CategorizedTabs as g, ClientUpdateEvent as h, CodeServerOptions as i, CodeServerType as j, CodeSnippet as k, CompatibilityStatus as l, ComponentRelationship as m, ComponentWithRelationships as n, GitHubContributor as o, InstallModuleReturn as p, InstalledModuleInfo as q, MaintainerInfo as r, ModuleBuiltinTab as s, ModuleCompatibility as t, ModuleGlobalOptions as u, ModuleIframeTabLazyOptions as v, ModuleIframeView as w, ModuleLaunchAction as x, ModuleLaunchView as y, ModuleOptions as z };
791
+ export type { ScannedNitroTasks as $, AnalyzeBuildMeta as A, BasicModuleInfo as B, CategorizedTabs as C, ModuleTabInfo as D, ModuleType as E, ModuleVNodeView as F, GitHubContributor as G, HookInfo as H, ImageMeta as I, ModuleView as J, NpmCommandOptions as K, LoadingTimeMetric as L, ModuleCustomTab as M, NuxtDevtoolsInfo as N, NpmCommandType as O, PluginMetric as P, NuxtDevToolsOptions as Q, NuxtDevtoolsRpc as R, SubprocessOptions as S, TerminalState as T, NuxtDevtoolsServerContext as U, NuxtServerData as V, PackageManagerName as W, PackageUpdateInfo as X, Payload as Y, PluginInfoWithMetic as Z, RouteInfo as _, ServerFunctions as a, ServerDebugContext as a0, ServerDebugModuleMutationRecord as a1, ServerRouteInfo as a2, ServerRouteInput as a3, ServerRouteInputType as a4, ServerTaskInfo as a5, TabCategory as a6, TerminalAction as a7, TerminalBase as a8, TerminalInfo as a9, VSCodeIntegrationOptions as aa, VSCodeTunnelOptions as ab, VueInspectorClient as ac, VueInspectorData as ad, AnalyzeBuildsInfo as b, AssetEntry as c, AssetInfo as d, AssetType as e, AutoImportsWithMetadata as f, ClientFunctions as g, ClientUpdateEvent as h, CodeServerOptions as i, CodeServerType as j, CodeSnippet as k, CompatibilityStatus as l, ComponentRelationship as m, ComponentWithRelationships as n, InstallModuleReturn as o, InstalledModuleInfo as p, MaintainerInfo as q, ModuleBuiltinTab as r, ModuleCompatibility as s, ModuleIframeTabLazyOptions as t, ModuleIframeView as u, ModuleLaunchAction as v, ModuleLaunchView as w, ModuleOptions as x, ModuleStaticInfo as y, ModuleStats as z };
@@ -7,7 +7,7 @@ import { Nitro, StorageMounts } from 'nitropack';
7
7
  import { StorageValue } from 'unstorage';
8
8
  import { ResolvedConfig } from 'vite';
9
9
  import { NuxtAnalyzeMeta } from '@nuxt/schema';
10
- import { Options } from 'execa';
10
+ import { SpawnOptions } from 'node:child_process';
11
11
 
12
12
  type TabCategory = 'pinned' | 'app' | 'vue-devtools' | 'analyze' | 'server' | 'modules' | 'documentation' | 'advanced';
13
13
 
@@ -161,7 +161,6 @@ type PackageManagerName = 'npm' | 'yarn' | 'pnpm' | 'bun';
161
161
  type NpmCommandType = 'install' | 'uninstall' | 'update';
162
162
  interface NpmCommandOptions {
163
163
  dev?: boolean;
164
- global?: boolean;
165
164
  }
166
165
  interface AutoImportsWithMetadata {
167
166
  imports: Import[];
@@ -380,19 +379,7 @@ interface ModuleOptions {
380
379
  */
381
380
  viteInspect?: boolean;
382
381
  /**
383
- * Enable Vite DevTools integration
384
- *
385
- * @experimental
386
- * @default false
387
- */
388
- viteDevTools?: boolean;
389
- /**
390
- * Disable dev time authorization check.
391
- *
392
- * **NOT RECOMMENDED**, only use this if you know what you are doing.
393
- *
394
- * @see https://github.com/nuxt/devtools/pull/257
395
- * @default false
382
+ * @deprecated Auth is now handled by Vite DevTools. This option is ignored.
396
383
  */
397
384
  disableAuthorization?: boolean;
398
385
  /**
@@ -454,12 +441,6 @@ interface ModuleOptions {
454
441
  */
455
442
  telemetry?: boolean;
456
443
  }
457
- interface ModuleGlobalOptions {
458
- /**
459
- * List of projects to enable devtools for. Only works when devtools is installed globally.
460
- */
461
- projects?: string[];
462
- }
463
444
  interface VSCodeIntegrationOptions {
464
445
  /**
465
446
  * Enable VS Code Server integration
@@ -528,12 +509,10 @@ interface NuxtDevToolsOptions {
528
509
  hiddenTabCategories: string[];
529
510
  hiddenTabs: string[];
530
511
  interactionCloseOnOutsideClick: boolean;
531
- minimizePanelInactive: number;
532
512
  pinnedTabs: string[];
533
513
  scale: number;
534
514
  showExperimentalFeatures: boolean;
535
515
  showHelpButtons: boolean;
536
- showPanel: boolean | null;
537
516
  sidebarExpanded: boolean;
538
517
  sidebarScrollable: boolean;
539
518
  };
@@ -577,9 +556,12 @@ interface TerminalBase {
577
556
  icon?: string;
578
557
  }
579
558
  type TerminalAction = 'restart' | 'terminate' | 'clear' | 'remove';
580
- interface SubprocessOptions extends Options {
559
+ interface SubprocessOptions {
581
560
  command: string;
582
561
  args?: string[];
562
+ cwd?: string;
563
+ env?: Record<string, string | undefined>;
564
+ nodeOptions?: SpawnOptions;
583
565
  }
584
566
  interface TerminalInfo extends TerminalBase {
585
567
  /**
@@ -610,12 +592,6 @@ interface TerminalState extends TerminalInfo {
610
592
  onActionTerminate?: () => Promise<void> | void;
611
593
  }
612
594
 
613
- interface WizardFunctions {
614
- enablePages: (nuxt: any) => Promise<void>;
615
- }
616
- type WizardActions = keyof WizardFunctions;
617
- type GetWizardArgs<T extends WizardActions> = WizardFunctions[T] extends (nuxt: any, ...args: infer A) => any ? A : never;
618
-
619
595
  interface ServerFunctions {
620
596
  getServerConfig: () => NuxtOptions;
621
597
  getServerDebugContext: () => Promise<ServerDebugContext | undefined>;
@@ -660,7 +636,7 @@ interface ServerFunctions {
660
636
  renameStaticAsset: (token: string, oldPath: string, newPath: string) => Promise<void>;
661
637
  telemetryEvent: (payload: object, immediate?: boolean) => void;
662
638
  customTabAction: (name: string, action: number) => Promise<boolean>;
663
- runWizard: <T extends WizardActions>(token: string, name: T, ...args: GetWizardArgs<T>) => Promise<void>;
639
+ enablePages: (token: string) => Promise<void>;
664
640
  openInEditor: (filepath: string) => Promise<boolean>;
665
641
  restartNuxt: (token: string, hard?: boolean) => Promise<void>;
666
642
  installNuxtModule: (token: string, name: string, dry?: boolean) => Promise<InstallModuleReturn>;
@@ -692,13 +668,32 @@ interface NuxtServerData {
692
668
  }
693
669
  type ClientUpdateEvent = keyof ServerFunctions;
694
670
 
671
+ /**
672
+ * Compatibility RPC interface that supports broadcast and function access.
673
+ * Backed by Vite DevTools Kit's RpcFunctionsHost internally.
674
+ */
675
+ interface NuxtDevtoolsRpc {
676
+ /**
677
+ * Broadcast proxy for calling client functions.
678
+ * Supports `rpc.broadcast.refresh.asEvent(event)` pattern for backward compatibility.
679
+ */
680
+ broadcast: {
681
+ [K in keyof ClientFunctions]: ClientFunctions[K] & {
682
+ asEvent: ClientFunctions[K];
683
+ };
684
+ };
685
+ /**
686
+ * Proxy for accessing server functions locally.
687
+ */
688
+ functions: ServerFunctions;
689
+ }
695
690
  /**
696
691
  * @internal
697
692
  */
698
693
  interface NuxtDevtoolsServerContext {
699
694
  nuxt: Nuxt;
700
695
  options: ModuleOptions;
701
- rpc: BirpcGroup<ClientFunctions, ServerFunctions>;
696
+ rpc: NuxtDevtoolsRpc;
702
697
  /**
703
698
  * Hook to open file in editor
704
699
  */
@@ -708,7 +703,7 @@ interface NuxtDevtoolsServerContext {
708
703
  */
709
704
  refresh: (event: keyof ServerFunctions) => void;
710
705
  /**
711
- * Ensure dev auth token is valid, throw if not
706
+ * @deprecated Auth is now handled by Vite DevTools. This is a noop.
712
707
  */
713
708
  ensureDevAuthToken: (token: string) => Promise<void>;
714
709
  extendServerRpc: <ClientFunctions extends object = Record<string, unknown>, ServerFunctions extends object = Record<string, unknown>>(name: string, functions: ServerFunctions) => BirpcGroup<ClientFunctions, ServerFunctions>;
@@ -716,7 +711,6 @@ interface NuxtDevtoolsServerContext {
716
711
  interface NuxtDevtoolsInfo {
717
712
  version: string;
718
713
  packagePath: string;
719
- isGlobalInstall: boolean;
720
714
  }
721
715
  interface InstallModuleReturn {
722
716
  configOriginal: string;
@@ -794,4 +788,4 @@ declare module '@nuxt/schema' {
794
788
  }
795
789
  }
796
790
 
797
- export type { RouteInfo as $, AnalyzeBuildMeta as A, BasicModuleInfo as B, ClientFunctions as C, ModuleStaticInfo as D, ModuleStats as E, ModuleTabInfo as F, GetWizardArgs as G, HookInfo as H, ImageMeta as I, ModuleType as J, ModuleVNodeView as K, LoadingTimeMetric as L, ModuleCustomTab as M, NuxtDevtoolsInfo as N, ModuleView as O, PluginMetric as P, NpmCommandOptions as Q, NpmCommandType as R, SubprocessOptions as S, TerminalState as T, NuxtDevToolsOptions as U, NuxtDevtoolsServerContext as V, NuxtServerData as W, PackageManagerName as X, PackageUpdateInfo as Y, Payload as Z, PluginInfoWithMetic as _, ServerFunctions as a, ScannedNitroTasks as a0, ServerDebugContext as a1, ServerDebugModuleMutationRecord as a2, ServerRouteInfo as a3, ServerRouteInput as a4, ServerRouteInputType as a5, ServerTaskInfo as a6, TabCategory as a7, TerminalAction as a8, TerminalBase as a9, TerminalInfo as aa, VSCodeIntegrationOptions as ab, VSCodeTunnelOptions as ac, VueInspectorClient as ad, VueInspectorData as ae, WizardActions as af, WizardFunctions as ag, AnalyzeBuildsInfo as b, AssetEntry as c, AssetInfo as d, AssetType as e, AutoImportsWithMetadata as f, CategorizedTabs as g, ClientUpdateEvent as h, CodeServerOptions as i, CodeServerType as j, CodeSnippet as k, CompatibilityStatus as l, ComponentRelationship as m, ComponentWithRelationships as n, GitHubContributor as o, InstallModuleReturn as p, InstalledModuleInfo as q, MaintainerInfo as r, ModuleBuiltinTab as s, ModuleCompatibility as t, ModuleGlobalOptions as u, ModuleIframeTabLazyOptions as v, ModuleIframeView as w, ModuleLaunchAction as x, ModuleLaunchView as y, ModuleOptions as z };
791
+ export type { ScannedNitroTasks as $, AnalyzeBuildMeta as A, BasicModuleInfo as B, CategorizedTabs as C, ModuleTabInfo as D, ModuleType as E, ModuleVNodeView as F, GitHubContributor as G, HookInfo as H, ImageMeta as I, ModuleView as J, NpmCommandOptions as K, LoadingTimeMetric as L, ModuleCustomTab as M, NuxtDevtoolsInfo as N, NpmCommandType as O, PluginMetric as P, NuxtDevToolsOptions as Q, NuxtDevtoolsRpc as R, SubprocessOptions as S, TerminalState as T, NuxtDevtoolsServerContext as U, NuxtServerData as V, PackageManagerName as W, PackageUpdateInfo as X, Payload as Y, PluginInfoWithMetic as Z, RouteInfo as _, ServerFunctions as a, ServerDebugContext as a0, ServerDebugModuleMutationRecord as a1, ServerRouteInfo as a2, ServerRouteInput as a3, ServerRouteInputType as a4, ServerTaskInfo as a5, TabCategory as a6, TerminalAction as a7, TerminalBase as a8, TerminalInfo as a9, VSCodeIntegrationOptions as aa, VSCodeTunnelOptions as ab, VueInspectorClient as ac, VueInspectorData as ad, AnalyzeBuildsInfo as b, AssetEntry as c, AssetInfo as d, AssetType as e, AutoImportsWithMetadata as f, ClientFunctions as g, ClientUpdateEvent as h, CodeServerOptions as i, CodeServerType as j, CodeSnippet as k, CompatibilityStatus as l, ComponentRelationship as m, ComponentWithRelationships as n, InstallModuleReturn as o, InstalledModuleInfo as p, MaintainerInfo as q, ModuleBuiltinTab as r, ModuleCompatibility as s, ModuleIframeTabLazyOptions as t, ModuleIframeView as u, ModuleLaunchAction as v, ModuleLaunchView as w, ModuleOptions as x, ModuleStaticInfo as y, ModuleStats as z };
@@ -7,7 +7,7 @@ import { Nitro, StorageMounts } from 'nitropack';
7
7
  import { StorageValue } from 'unstorage';
8
8
  import { ResolvedConfig } from 'vite';
9
9
  import { NuxtAnalyzeMeta } from '@nuxt/schema';
10
- import { Options } from 'execa';
10
+ import { SpawnOptions } from 'node:child_process';
11
11
 
12
12
  type TabCategory = 'pinned' | 'app' | 'vue-devtools' | 'analyze' | 'server' | 'modules' | 'documentation' | 'advanced';
13
13
 
@@ -161,7 +161,6 @@ type PackageManagerName = 'npm' | 'yarn' | 'pnpm' | 'bun';
161
161
  type NpmCommandType = 'install' | 'uninstall' | 'update';
162
162
  interface NpmCommandOptions {
163
163
  dev?: boolean;
164
- global?: boolean;
165
164
  }
166
165
  interface AutoImportsWithMetadata {
167
166
  imports: Import[];
@@ -380,19 +379,7 @@ interface ModuleOptions {
380
379
  */
381
380
  viteInspect?: boolean;
382
381
  /**
383
- * Enable Vite DevTools integration
384
- *
385
- * @experimental
386
- * @default false
387
- */
388
- viteDevTools?: boolean;
389
- /**
390
- * Disable dev time authorization check.
391
- *
392
- * **NOT RECOMMENDED**, only use this if you know what you are doing.
393
- *
394
- * @see https://github.com/nuxt/devtools/pull/257
395
- * @default false
382
+ * @deprecated Auth is now handled by Vite DevTools. This option is ignored.
396
383
  */
397
384
  disableAuthorization?: boolean;
398
385
  /**
@@ -454,12 +441,6 @@ interface ModuleOptions {
454
441
  */
455
442
  telemetry?: boolean;
456
443
  }
457
- interface ModuleGlobalOptions {
458
- /**
459
- * List of projects to enable devtools for. Only works when devtools is installed globally.
460
- */
461
- projects?: string[];
462
- }
463
444
  interface VSCodeIntegrationOptions {
464
445
  /**
465
446
  * Enable VS Code Server integration
@@ -528,12 +509,10 @@ interface NuxtDevToolsOptions {
528
509
  hiddenTabCategories: string[];
529
510
  hiddenTabs: string[];
530
511
  interactionCloseOnOutsideClick: boolean;
531
- minimizePanelInactive: number;
532
512
  pinnedTabs: string[];
533
513
  scale: number;
534
514
  showExperimentalFeatures: boolean;
535
515
  showHelpButtons: boolean;
536
- showPanel: boolean | null;
537
516
  sidebarExpanded: boolean;
538
517
  sidebarScrollable: boolean;
539
518
  };
@@ -577,9 +556,12 @@ interface TerminalBase {
577
556
  icon?: string;
578
557
  }
579
558
  type TerminalAction = 'restart' | 'terminate' | 'clear' | 'remove';
580
- interface SubprocessOptions extends Options {
559
+ interface SubprocessOptions {
581
560
  command: string;
582
561
  args?: string[];
562
+ cwd?: string;
563
+ env?: Record<string, string | undefined>;
564
+ nodeOptions?: SpawnOptions;
583
565
  }
584
566
  interface TerminalInfo extends TerminalBase {
585
567
  /**
@@ -610,12 +592,6 @@ interface TerminalState extends TerminalInfo {
610
592
  onActionTerminate?: () => Promise<void> | void;
611
593
  }
612
594
 
613
- interface WizardFunctions {
614
- enablePages: (nuxt: any) => Promise<void>;
615
- }
616
- type WizardActions = keyof WizardFunctions;
617
- type GetWizardArgs<T extends WizardActions> = WizardFunctions[T] extends (nuxt: any, ...args: infer A) => any ? A : never;
618
-
619
595
  interface ServerFunctions {
620
596
  getServerConfig: () => NuxtOptions;
621
597
  getServerDebugContext: () => Promise<ServerDebugContext | undefined>;
@@ -660,7 +636,7 @@ interface ServerFunctions {
660
636
  renameStaticAsset: (token: string, oldPath: string, newPath: string) => Promise<void>;
661
637
  telemetryEvent: (payload: object, immediate?: boolean) => void;
662
638
  customTabAction: (name: string, action: number) => Promise<boolean>;
663
- runWizard: <T extends WizardActions>(token: string, name: T, ...args: GetWizardArgs<T>) => Promise<void>;
639
+ enablePages: (token: string) => Promise<void>;
664
640
  openInEditor: (filepath: string) => Promise<boolean>;
665
641
  restartNuxt: (token: string, hard?: boolean) => Promise<void>;
666
642
  installNuxtModule: (token: string, name: string, dry?: boolean) => Promise<InstallModuleReturn>;
@@ -692,13 +668,32 @@ interface NuxtServerData {
692
668
  }
693
669
  type ClientUpdateEvent = keyof ServerFunctions;
694
670
 
671
+ /**
672
+ * Compatibility RPC interface that supports broadcast and function access.
673
+ * Backed by Vite DevTools Kit's RpcFunctionsHost internally.
674
+ */
675
+ interface NuxtDevtoolsRpc {
676
+ /**
677
+ * Broadcast proxy for calling client functions.
678
+ * Supports `rpc.broadcast.refresh.asEvent(event)` pattern for backward compatibility.
679
+ */
680
+ broadcast: {
681
+ [K in keyof ClientFunctions]: ClientFunctions[K] & {
682
+ asEvent: ClientFunctions[K];
683
+ };
684
+ };
685
+ /**
686
+ * Proxy for accessing server functions locally.
687
+ */
688
+ functions: ServerFunctions;
689
+ }
695
690
  /**
696
691
  * @internal
697
692
  */
698
693
  interface NuxtDevtoolsServerContext {
699
694
  nuxt: Nuxt;
700
695
  options: ModuleOptions;
701
- rpc: BirpcGroup<ClientFunctions, ServerFunctions>;
696
+ rpc: NuxtDevtoolsRpc;
702
697
  /**
703
698
  * Hook to open file in editor
704
699
  */
@@ -708,7 +703,7 @@ interface NuxtDevtoolsServerContext {
708
703
  */
709
704
  refresh: (event: keyof ServerFunctions) => void;
710
705
  /**
711
- * Ensure dev auth token is valid, throw if not
706
+ * @deprecated Auth is now handled by Vite DevTools. This is a noop.
712
707
  */
713
708
  ensureDevAuthToken: (token: string) => Promise<void>;
714
709
  extendServerRpc: <ClientFunctions extends object = Record<string, unknown>, ServerFunctions extends object = Record<string, unknown>>(name: string, functions: ServerFunctions) => BirpcGroup<ClientFunctions, ServerFunctions>;
@@ -716,7 +711,6 @@ interface NuxtDevtoolsServerContext {
716
711
  interface NuxtDevtoolsInfo {
717
712
  version: string;
718
713
  packagePath: string;
719
- isGlobalInstall: boolean;
720
714
  }
721
715
  interface InstallModuleReturn {
722
716
  configOriginal: string;
@@ -794,4 +788,4 @@ declare module '@nuxt/schema' {
794
788
  }
795
789
  }
796
790
 
797
- export type { RouteInfo as $, AnalyzeBuildMeta as A, BasicModuleInfo as B, ClientFunctions as C, ModuleStaticInfo as D, ModuleStats as E, ModuleTabInfo as F, GetWizardArgs as G, HookInfo as H, ImageMeta as I, ModuleType as J, ModuleVNodeView as K, LoadingTimeMetric as L, ModuleCustomTab as M, NuxtDevtoolsInfo as N, ModuleView as O, PluginMetric as P, NpmCommandOptions as Q, NpmCommandType as R, SubprocessOptions as S, TerminalState as T, NuxtDevToolsOptions as U, NuxtDevtoolsServerContext as V, NuxtServerData as W, PackageManagerName as X, PackageUpdateInfo as Y, Payload as Z, PluginInfoWithMetic as _, ServerFunctions as a, ScannedNitroTasks as a0, ServerDebugContext as a1, ServerDebugModuleMutationRecord as a2, ServerRouteInfo as a3, ServerRouteInput as a4, ServerRouteInputType as a5, ServerTaskInfo as a6, TabCategory as a7, TerminalAction as a8, TerminalBase as a9, TerminalInfo as aa, VSCodeIntegrationOptions as ab, VSCodeTunnelOptions as ac, VueInspectorClient as ad, VueInspectorData as ae, WizardActions as af, WizardFunctions as ag, AnalyzeBuildsInfo as b, AssetEntry as c, AssetInfo as d, AssetType as e, AutoImportsWithMetadata as f, CategorizedTabs as g, ClientUpdateEvent as h, CodeServerOptions as i, CodeServerType as j, CodeSnippet as k, CompatibilityStatus as l, ComponentRelationship as m, ComponentWithRelationships as n, GitHubContributor as o, InstallModuleReturn as p, InstalledModuleInfo as q, MaintainerInfo as r, ModuleBuiltinTab as s, ModuleCompatibility as t, ModuleGlobalOptions as u, ModuleIframeTabLazyOptions as v, ModuleIframeView as w, ModuleLaunchAction as x, ModuleLaunchView as y, ModuleOptions as z };
791
+ export type { ScannedNitroTasks as $, AnalyzeBuildMeta as A, BasicModuleInfo as B, CategorizedTabs as C, ModuleTabInfo as D, ModuleType as E, ModuleVNodeView as F, GitHubContributor as G, HookInfo as H, ImageMeta as I, ModuleView as J, NpmCommandOptions as K, LoadingTimeMetric as L, ModuleCustomTab as M, NuxtDevtoolsInfo as N, NpmCommandType as O, PluginMetric as P, NuxtDevToolsOptions as Q, NuxtDevtoolsRpc as R, SubprocessOptions as S, TerminalState as T, NuxtDevtoolsServerContext as U, NuxtServerData as V, PackageManagerName as W, PackageUpdateInfo as X, Payload as Y, PluginInfoWithMetic as Z, RouteInfo as _, ServerFunctions as a, ServerDebugContext as a0, ServerDebugModuleMutationRecord as a1, ServerRouteInfo as a2, ServerRouteInput as a3, ServerRouteInputType as a4, ServerTaskInfo as a5, TabCategory as a6, TerminalAction as a7, TerminalBase as a8, TerminalInfo as a9, VSCodeIntegrationOptions as aa, VSCodeTunnelOptions as ab, VueInspectorClient as ac, VueInspectorData as ad, AnalyzeBuildsInfo as b, AssetEntry as c, AssetInfo as d, AssetType as e, AutoImportsWithMetadata as f, ClientFunctions as g, ClientUpdateEvent as h, CodeServerOptions as i, CodeServerType as j, CodeSnippet as k, CompatibilityStatus as l, ComponentRelationship as m, ComponentWithRelationships as n, InstallModuleReturn as o, InstalledModuleInfo as p, MaintainerInfo as q, ModuleBuiltinTab as r, ModuleCompatibility as s, ModuleIframeTabLazyOptions as t, ModuleIframeView as u, ModuleLaunchAction as v, ModuleLaunchView as w, ModuleOptions as x, ModuleStaticInfo as y, ModuleStats as z };
package/dist/types.d.cts CHANGED
@@ -1,6 +1,5 @@
1
- import { a as ServerFunctions, C as ClientFunctions, H as HookInfo, P as PluginMetric, L as LoadingTimeMetric } from './shared/devtools-kit.BE8MVpwl.cjs';
2
- export { A as AnalyzeBuildMeta, b as AnalyzeBuildsInfo, c as AssetEntry, d as AssetInfo, e as AssetType, f as AutoImportsWithMetadata, B as BasicModuleInfo, g as CategorizedTabs, h as ClientUpdateEvent, i as CodeServerOptions, j as CodeServerType, k as CodeSnippet, l as CompatibilityStatus, m as ComponentRelationship, n as ComponentWithRelationships, G as GetWizardArgs, o as GitHubContributor, I as ImageMeta, p as InstallModuleReturn, q as InstalledModuleInfo, r as MaintainerInfo, s as ModuleBuiltinTab, t as ModuleCompatibility, M as ModuleCustomTab, u as ModuleGlobalOptions, v as ModuleIframeTabLazyOptions, w as ModuleIframeView, x as ModuleLaunchAction, y as ModuleLaunchView, z as ModuleOptions, D as ModuleStaticInfo, E as ModuleStats, F as ModuleTabInfo, J as ModuleType, K as ModuleVNodeView, O as ModuleView, Q as NpmCommandOptions, R as NpmCommandType, U as NuxtDevToolsOptions, N as NuxtDevtoolsInfo, V as NuxtDevtoolsServerContext, W as NuxtServerData, X as PackageManagerName, Y as PackageUpdateInfo, Z as Payload, _ as PluginInfoWithMetic, $ as RouteInfo, a0 as ScannedNitroTasks, a1 as ServerDebugContext, a2 as ServerDebugModuleMutationRecord, a3 as ServerRouteInfo, a4 as ServerRouteInput, a5 as ServerRouteInputType, a6 as ServerTaskInfo, S as SubprocessOptions, a7 as TabCategory, a8 as TerminalAction, a9 as TerminalBase, aa as TerminalInfo, T as TerminalState, ab as VSCodeIntegrationOptions, ac as VSCodeTunnelOptions, ad as VueInspectorClient, ae as VueInspectorData, af as WizardActions, ag as WizardFunctions } from './shared/devtools-kit.BE8MVpwl.cjs';
3
- import { BirpcReturn } from 'birpc';
1
+ import { a as ServerFunctions, H as HookInfo, P as PluginMetric, L as LoadingTimeMetric } from './shared/devtools-kit.CijV1blW.cjs';
2
+ export { A as AnalyzeBuildMeta, b as AnalyzeBuildsInfo, c as AssetEntry, d as AssetInfo, e as AssetType, f as AutoImportsWithMetadata, B as BasicModuleInfo, C as CategorizedTabs, g as ClientFunctions, h as ClientUpdateEvent, i as CodeServerOptions, j as CodeServerType, k as CodeSnippet, l as CompatibilityStatus, m as ComponentRelationship, n as ComponentWithRelationships, G as GitHubContributor, I as ImageMeta, o as InstallModuleReturn, p as InstalledModuleInfo, q as MaintainerInfo, r as ModuleBuiltinTab, s as ModuleCompatibility, M as ModuleCustomTab, t as ModuleIframeTabLazyOptions, u as ModuleIframeView, v as ModuleLaunchAction, w as ModuleLaunchView, x as ModuleOptions, y as ModuleStaticInfo, z as ModuleStats, D as ModuleTabInfo, E as ModuleType, F as ModuleVNodeView, J as ModuleView, K as NpmCommandOptions, O as NpmCommandType, Q as NuxtDevToolsOptions, N as NuxtDevtoolsInfo, R as NuxtDevtoolsRpc, U as NuxtDevtoolsServerContext, V as NuxtServerData, W as PackageManagerName, X as PackageUpdateInfo, Y as Payload, Z as PluginInfoWithMetic, _ as RouteInfo, $ as ScannedNitroTasks, a0 as ServerDebugContext, a1 as ServerDebugModuleMutationRecord, a2 as ServerRouteInfo, a3 as ServerRouteInput, a4 as ServerRouteInputType, a5 as ServerTaskInfo, S as SubprocessOptions, a6 as TabCategory, a7 as TerminalAction, a8 as TerminalBase, a9 as TerminalInfo, T as TerminalState, aa as VSCodeIntegrationOptions, ab as VSCodeTunnelOptions, ac as VueInspectorClient, ad as VueInspectorData } from './shared/devtools-kit.CijV1blW.cjs';
4
3
  import { Hookable } from 'hookable';
5
4
  import { NuxtApp } from 'nuxt/app';
6
5
  import { AppConfig } from 'nuxt/schema';
@@ -8,13 +7,14 @@ import { $Fetch } from 'ofetch';
8
7
  import { BuiltinLanguage } from 'shiki';
9
8
  import { Ref } from 'vue';
10
9
  import { StackFrame } from 'error-stack-parser-es';
10
+ import 'birpc';
11
11
  import 'unimport';
12
12
  import 'vue-router';
13
13
  import 'nitropack';
14
14
  import 'unstorage';
15
15
  import 'vite';
16
16
  import '@nuxt/schema';
17
- import 'execa';
17
+ import 'node:child_process';
18
18
 
19
19
  interface TimelineEventFunction {
20
20
  type: 'function';
@@ -121,16 +121,6 @@ interface NuxtDevtoolsHostClient {
121
121
  toggle: () => void;
122
122
  reload: () => void;
123
123
  navigate: (path: string) => void;
124
- /**
125
- * Popup the DevTools frame into Picture-in-Picture mode
126
- *
127
- * Requires Chrome 111 with experimental flag enabled.
128
- *
129
- * Function is undefined when not supported.
130
- *
131
- * @see https://developer.chrome.com/docs/web-platform/document-picture-in-picture/
132
- */
133
- popup?: () => any;
134
124
  };
135
125
  app: {
136
126
  reload: () => void;
@@ -159,15 +149,18 @@ interface NuxtDevtoolsHostClient {
159
149
  interface CodeHighlightOptions {
160
150
  grammarContextCode?: string;
161
151
  }
152
+ type AsyncServerFunctions = {
153
+ [K in keyof ServerFunctions]: (...args: Parameters<ServerFunctions[K]>) => Promise<Awaited<ReturnType<ServerFunctions[K]>>>;
154
+ };
162
155
  interface NuxtDevtoolsClient {
163
- rpc: BirpcReturn<ServerFunctions, ClientFunctions>;
156
+ rpc: AsyncServerFunctions;
164
157
  renderCodeHighlight: (code: string, lang?: BuiltinLanguage, options?: CodeHighlightOptions) => {
165
158
  code: string;
166
159
  supported: boolean;
167
160
  };
168
161
  renderMarkdown: (markdown: string) => string;
169
162
  colorMode: string;
170
- extendClientRpc: <ServerFunctions extends object = Record<string, unknown>, ClientFunctions extends object = Record<string, unknown>>(name: string, functions: ClientFunctions) => BirpcReturn<ServerFunctions, ClientFunctions>;
163
+ extendClientRpc: <ServerFunctions extends object = Record<string, unknown>, ClientFunctions extends object = Record<string, unknown>>(name: string, functions: ClientFunctions) => ServerFunctions;
171
164
  }
172
165
  interface NuxtDevtoolsIframeClient {
173
166
  host: NuxtDevtoolsHostClient;
@@ -177,5 +170,5 @@ interface NuxtDevtoolsGlobal {
177
170
  setClient: (client: NuxtDevtoolsHostClient) => void;
178
171
  }
179
172
 
180
- export { ClientFunctions, HookInfo, LoadingTimeMetric, PluginMetric, ServerFunctions };
181
- export type { CodeHighlightOptions, DevToolsFrameState, NuxtDevtoolsClient, NuxtDevtoolsClientHooks, NuxtDevtoolsGlobal, NuxtDevtoolsHostClient, NuxtDevtoolsIframeClient, TimelineEvent, TimelineEventFunction, TimelineEventNormalized, TimelineEventRoute, TimelineEventsSegment, TimelineMetrics, TimelineOptions, TimelineServerState };
173
+ export { HookInfo, LoadingTimeMetric, PluginMetric, ServerFunctions };
174
+ export type { AsyncServerFunctions, CodeHighlightOptions, DevToolsFrameState, NuxtDevtoolsClient, NuxtDevtoolsClientHooks, NuxtDevtoolsGlobal, NuxtDevtoolsHostClient, NuxtDevtoolsIframeClient, TimelineEvent, TimelineEventFunction, TimelineEventNormalized, TimelineEventRoute, TimelineEventsSegment, TimelineMetrics, TimelineOptions, TimelineServerState };
package/dist/types.d.mts CHANGED
@@ -1,6 +1,5 @@
1
- import { a as ServerFunctions, C as ClientFunctions, H as HookInfo, P as PluginMetric, L as LoadingTimeMetric } from './shared/devtools-kit.BE8MVpwl.mjs';
2
- export { A as AnalyzeBuildMeta, b as AnalyzeBuildsInfo, c as AssetEntry, d as AssetInfo, e as AssetType, f as AutoImportsWithMetadata, B as BasicModuleInfo, g as CategorizedTabs, h as ClientUpdateEvent, i as CodeServerOptions, j as CodeServerType, k as CodeSnippet, l as CompatibilityStatus, m as ComponentRelationship, n as ComponentWithRelationships, G as GetWizardArgs, o as GitHubContributor, I as ImageMeta, p as InstallModuleReturn, q as InstalledModuleInfo, r as MaintainerInfo, s as ModuleBuiltinTab, t as ModuleCompatibility, M as ModuleCustomTab, u as ModuleGlobalOptions, v as ModuleIframeTabLazyOptions, w as ModuleIframeView, x as ModuleLaunchAction, y as ModuleLaunchView, z as ModuleOptions, D as ModuleStaticInfo, E as ModuleStats, F as ModuleTabInfo, J as ModuleType, K as ModuleVNodeView, O as ModuleView, Q as NpmCommandOptions, R as NpmCommandType, U as NuxtDevToolsOptions, N as NuxtDevtoolsInfo, V as NuxtDevtoolsServerContext, W as NuxtServerData, X as PackageManagerName, Y as PackageUpdateInfo, Z as Payload, _ as PluginInfoWithMetic, $ as RouteInfo, a0 as ScannedNitroTasks, a1 as ServerDebugContext, a2 as ServerDebugModuleMutationRecord, a3 as ServerRouteInfo, a4 as ServerRouteInput, a5 as ServerRouteInputType, a6 as ServerTaskInfo, S as SubprocessOptions, a7 as TabCategory, a8 as TerminalAction, a9 as TerminalBase, aa as TerminalInfo, T as TerminalState, ab as VSCodeIntegrationOptions, ac as VSCodeTunnelOptions, ad as VueInspectorClient, ae as VueInspectorData, af as WizardActions, ag as WizardFunctions } from './shared/devtools-kit.BE8MVpwl.mjs';
3
- import { BirpcReturn } from 'birpc';
1
+ import { a as ServerFunctions, H as HookInfo, P as PluginMetric, L as LoadingTimeMetric } from './shared/devtools-kit.CijV1blW.mjs';
2
+ export { A as AnalyzeBuildMeta, b as AnalyzeBuildsInfo, c as AssetEntry, d as AssetInfo, e as AssetType, f as AutoImportsWithMetadata, B as BasicModuleInfo, C as CategorizedTabs, g as ClientFunctions, h as ClientUpdateEvent, i as CodeServerOptions, j as CodeServerType, k as CodeSnippet, l as CompatibilityStatus, m as ComponentRelationship, n as ComponentWithRelationships, G as GitHubContributor, I as ImageMeta, o as InstallModuleReturn, p as InstalledModuleInfo, q as MaintainerInfo, r as ModuleBuiltinTab, s as ModuleCompatibility, M as ModuleCustomTab, t as ModuleIframeTabLazyOptions, u as ModuleIframeView, v as ModuleLaunchAction, w as ModuleLaunchView, x as ModuleOptions, y as ModuleStaticInfo, z as ModuleStats, D as ModuleTabInfo, E as ModuleType, F as ModuleVNodeView, J as ModuleView, K as NpmCommandOptions, O as NpmCommandType, Q as NuxtDevToolsOptions, N as NuxtDevtoolsInfo, R as NuxtDevtoolsRpc, U as NuxtDevtoolsServerContext, V as NuxtServerData, W as PackageManagerName, X as PackageUpdateInfo, Y as Payload, Z as PluginInfoWithMetic, _ as RouteInfo, $ as ScannedNitroTasks, a0 as ServerDebugContext, a1 as ServerDebugModuleMutationRecord, a2 as ServerRouteInfo, a3 as ServerRouteInput, a4 as ServerRouteInputType, a5 as ServerTaskInfo, S as SubprocessOptions, a6 as TabCategory, a7 as TerminalAction, a8 as TerminalBase, a9 as TerminalInfo, T as TerminalState, aa as VSCodeIntegrationOptions, ab as VSCodeTunnelOptions, ac as VueInspectorClient, ad as VueInspectorData } from './shared/devtools-kit.CijV1blW.mjs';
4
3
  import { Hookable } from 'hookable';
5
4
  import { NuxtApp } from 'nuxt/app';
6
5
  import { AppConfig } from 'nuxt/schema';
@@ -8,13 +7,14 @@ import { $Fetch } from 'ofetch';
8
7
  import { BuiltinLanguage } from 'shiki';
9
8
  import { Ref } from 'vue';
10
9
  import { StackFrame } from 'error-stack-parser-es';
10
+ import 'birpc';
11
11
  import 'unimport';
12
12
  import 'vue-router';
13
13
  import 'nitropack';
14
14
  import 'unstorage';
15
15
  import 'vite';
16
16
  import '@nuxt/schema';
17
- import 'execa';
17
+ import 'node:child_process';
18
18
 
19
19
  interface TimelineEventFunction {
20
20
  type: 'function';
@@ -121,16 +121,6 @@ interface NuxtDevtoolsHostClient {
121
121
  toggle: () => void;
122
122
  reload: () => void;
123
123
  navigate: (path: string) => void;
124
- /**
125
- * Popup the DevTools frame into Picture-in-Picture mode
126
- *
127
- * Requires Chrome 111 with experimental flag enabled.
128
- *
129
- * Function is undefined when not supported.
130
- *
131
- * @see https://developer.chrome.com/docs/web-platform/document-picture-in-picture/
132
- */
133
- popup?: () => any;
134
124
  };
135
125
  app: {
136
126
  reload: () => void;
@@ -159,15 +149,18 @@ interface NuxtDevtoolsHostClient {
159
149
  interface CodeHighlightOptions {
160
150
  grammarContextCode?: string;
161
151
  }
152
+ type AsyncServerFunctions = {
153
+ [K in keyof ServerFunctions]: (...args: Parameters<ServerFunctions[K]>) => Promise<Awaited<ReturnType<ServerFunctions[K]>>>;
154
+ };
162
155
  interface NuxtDevtoolsClient {
163
- rpc: BirpcReturn<ServerFunctions, ClientFunctions>;
156
+ rpc: AsyncServerFunctions;
164
157
  renderCodeHighlight: (code: string, lang?: BuiltinLanguage, options?: CodeHighlightOptions) => {
165
158
  code: string;
166
159
  supported: boolean;
167
160
  };
168
161
  renderMarkdown: (markdown: string) => string;
169
162
  colorMode: string;
170
- extendClientRpc: <ServerFunctions extends object = Record<string, unknown>, ClientFunctions extends object = Record<string, unknown>>(name: string, functions: ClientFunctions) => BirpcReturn<ServerFunctions, ClientFunctions>;
163
+ extendClientRpc: <ServerFunctions extends object = Record<string, unknown>, ClientFunctions extends object = Record<string, unknown>>(name: string, functions: ClientFunctions) => ServerFunctions;
171
164
  }
172
165
  interface NuxtDevtoolsIframeClient {
173
166
  host: NuxtDevtoolsHostClient;
@@ -177,5 +170,5 @@ interface NuxtDevtoolsGlobal {
177
170
  setClient: (client: NuxtDevtoolsHostClient) => void;
178
171
  }
179
172
 
180
- export { ClientFunctions, HookInfo, LoadingTimeMetric, PluginMetric, ServerFunctions };
181
- export type { CodeHighlightOptions, DevToolsFrameState, NuxtDevtoolsClient, NuxtDevtoolsClientHooks, NuxtDevtoolsGlobal, NuxtDevtoolsHostClient, NuxtDevtoolsIframeClient, TimelineEvent, TimelineEventFunction, TimelineEventNormalized, TimelineEventRoute, TimelineEventsSegment, TimelineMetrics, TimelineOptions, TimelineServerState };
173
+ export { HookInfo, LoadingTimeMetric, PluginMetric, ServerFunctions };
174
+ export type { AsyncServerFunctions, CodeHighlightOptions, DevToolsFrameState, NuxtDevtoolsClient, NuxtDevtoolsClientHooks, NuxtDevtoolsGlobal, NuxtDevtoolsHostClient, NuxtDevtoolsIframeClient, TimelineEvent, TimelineEventFunction, TimelineEventNormalized, TimelineEventRoute, TimelineEventsSegment, TimelineMetrics, TimelineOptions, TimelineServerState };
package/dist/types.d.ts CHANGED
@@ -1,6 +1,5 @@
1
- import { a as ServerFunctions, C as ClientFunctions, H as HookInfo, P as PluginMetric, L as LoadingTimeMetric } from './shared/devtools-kit.BE8MVpwl.js';
2
- export { A as AnalyzeBuildMeta, b as AnalyzeBuildsInfo, c as AssetEntry, d as AssetInfo, e as AssetType, f as AutoImportsWithMetadata, B as BasicModuleInfo, g as CategorizedTabs, h as ClientUpdateEvent, i as CodeServerOptions, j as CodeServerType, k as CodeSnippet, l as CompatibilityStatus, m as ComponentRelationship, n as ComponentWithRelationships, G as GetWizardArgs, o as GitHubContributor, I as ImageMeta, p as InstallModuleReturn, q as InstalledModuleInfo, r as MaintainerInfo, s as ModuleBuiltinTab, t as ModuleCompatibility, M as ModuleCustomTab, u as ModuleGlobalOptions, v as ModuleIframeTabLazyOptions, w as ModuleIframeView, x as ModuleLaunchAction, y as ModuleLaunchView, z as ModuleOptions, D as ModuleStaticInfo, E as ModuleStats, F as ModuleTabInfo, J as ModuleType, K as ModuleVNodeView, O as ModuleView, Q as NpmCommandOptions, R as NpmCommandType, U as NuxtDevToolsOptions, N as NuxtDevtoolsInfo, V as NuxtDevtoolsServerContext, W as NuxtServerData, X as PackageManagerName, Y as PackageUpdateInfo, Z as Payload, _ as PluginInfoWithMetic, $ as RouteInfo, a0 as ScannedNitroTasks, a1 as ServerDebugContext, a2 as ServerDebugModuleMutationRecord, a3 as ServerRouteInfo, a4 as ServerRouteInput, a5 as ServerRouteInputType, a6 as ServerTaskInfo, S as SubprocessOptions, a7 as TabCategory, a8 as TerminalAction, a9 as TerminalBase, aa as TerminalInfo, T as TerminalState, ab as VSCodeIntegrationOptions, ac as VSCodeTunnelOptions, ad as VueInspectorClient, ae as VueInspectorData, af as WizardActions, ag as WizardFunctions } from './shared/devtools-kit.BE8MVpwl.js';
3
- import { BirpcReturn } from 'birpc';
1
+ import { a as ServerFunctions, H as HookInfo, P as PluginMetric, L as LoadingTimeMetric } from './shared/devtools-kit.CijV1blW.js';
2
+ export { A as AnalyzeBuildMeta, b as AnalyzeBuildsInfo, c as AssetEntry, d as AssetInfo, e as AssetType, f as AutoImportsWithMetadata, B as BasicModuleInfo, C as CategorizedTabs, g as ClientFunctions, h as ClientUpdateEvent, i as CodeServerOptions, j as CodeServerType, k as CodeSnippet, l as CompatibilityStatus, m as ComponentRelationship, n as ComponentWithRelationships, G as GitHubContributor, I as ImageMeta, o as InstallModuleReturn, p as InstalledModuleInfo, q as MaintainerInfo, r as ModuleBuiltinTab, s as ModuleCompatibility, M as ModuleCustomTab, t as ModuleIframeTabLazyOptions, u as ModuleIframeView, v as ModuleLaunchAction, w as ModuleLaunchView, x as ModuleOptions, y as ModuleStaticInfo, z as ModuleStats, D as ModuleTabInfo, E as ModuleType, F as ModuleVNodeView, J as ModuleView, K as NpmCommandOptions, O as NpmCommandType, Q as NuxtDevToolsOptions, N as NuxtDevtoolsInfo, R as NuxtDevtoolsRpc, U as NuxtDevtoolsServerContext, V as NuxtServerData, W as PackageManagerName, X as PackageUpdateInfo, Y as Payload, Z as PluginInfoWithMetic, _ as RouteInfo, $ as ScannedNitroTasks, a0 as ServerDebugContext, a1 as ServerDebugModuleMutationRecord, a2 as ServerRouteInfo, a3 as ServerRouteInput, a4 as ServerRouteInputType, a5 as ServerTaskInfo, S as SubprocessOptions, a6 as TabCategory, a7 as TerminalAction, a8 as TerminalBase, a9 as TerminalInfo, T as TerminalState, aa as VSCodeIntegrationOptions, ab as VSCodeTunnelOptions, ac as VueInspectorClient, ad as VueInspectorData } from './shared/devtools-kit.CijV1blW.js';
4
3
  import { Hookable } from 'hookable';
5
4
  import { NuxtApp } from 'nuxt/app';
6
5
  import { AppConfig } from 'nuxt/schema';
@@ -8,13 +7,14 @@ import { $Fetch } from 'ofetch';
8
7
  import { BuiltinLanguage } from 'shiki';
9
8
  import { Ref } from 'vue';
10
9
  import { StackFrame } from 'error-stack-parser-es';
10
+ import 'birpc';
11
11
  import 'unimport';
12
12
  import 'vue-router';
13
13
  import 'nitropack';
14
14
  import 'unstorage';
15
15
  import 'vite';
16
16
  import '@nuxt/schema';
17
- import 'execa';
17
+ import 'node:child_process';
18
18
 
19
19
  interface TimelineEventFunction {
20
20
  type: 'function';
@@ -121,16 +121,6 @@ interface NuxtDevtoolsHostClient {
121
121
  toggle: () => void;
122
122
  reload: () => void;
123
123
  navigate: (path: string) => void;
124
- /**
125
- * Popup the DevTools frame into Picture-in-Picture mode
126
- *
127
- * Requires Chrome 111 with experimental flag enabled.
128
- *
129
- * Function is undefined when not supported.
130
- *
131
- * @see https://developer.chrome.com/docs/web-platform/document-picture-in-picture/
132
- */
133
- popup?: () => any;
134
124
  };
135
125
  app: {
136
126
  reload: () => void;
@@ -159,15 +149,18 @@ interface NuxtDevtoolsHostClient {
159
149
  interface CodeHighlightOptions {
160
150
  grammarContextCode?: string;
161
151
  }
152
+ type AsyncServerFunctions = {
153
+ [K in keyof ServerFunctions]: (...args: Parameters<ServerFunctions[K]>) => Promise<Awaited<ReturnType<ServerFunctions[K]>>>;
154
+ };
162
155
  interface NuxtDevtoolsClient {
163
- rpc: BirpcReturn<ServerFunctions, ClientFunctions>;
156
+ rpc: AsyncServerFunctions;
164
157
  renderCodeHighlight: (code: string, lang?: BuiltinLanguage, options?: CodeHighlightOptions) => {
165
158
  code: string;
166
159
  supported: boolean;
167
160
  };
168
161
  renderMarkdown: (markdown: string) => string;
169
162
  colorMode: string;
170
- extendClientRpc: <ServerFunctions extends object = Record<string, unknown>, ClientFunctions extends object = Record<string, unknown>>(name: string, functions: ClientFunctions) => BirpcReturn<ServerFunctions, ClientFunctions>;
163
+ extendClientRpc: <ServerFunctions extends object = Record<string, unknown>, ClientFunctions extends object = Record<string, unknown>>(name: string, functions: ClientFunctions) => ServerFunctions;
171
164
  }
172
165
  interface NuxtDevtoolsIframeClient {
173
166
  host: NuxtDevtoolsHostClient;
@@ -177,5 +170,5 @@ interface NuxtDevtoolsGlobal {
177
170
  setClient: (client: NuxtDevtoolsHostClient) => void;
178
171
  }
179
172
 
180
- export { ClientFunctions, HookInfo, LoadingTimeMetric, PluginMetric, ServerFunctions };
181
- export type { CodeHighlightOptions, DevToolsFrameState, NuxtDevtoolsClient, NuxtDevtoolsClientHooks, NuxtDevtoolsGlobal, NuxtDevtoolsHostClient, NuxtDevtoolsIframeClient, TimelineEvent, TimelineEventFunction, TimelineEventNormalized, TimelineEventRoute, TimelineEventsSegment, TimelineMetrics, TimelineOptions, TimelineServerState };
173
+ export { HookInfo, LoadingTimeMetric, PluginMetric, ServerFunctions };
174
+ export type { AsyncServerFunctions, CodeHighlightOptions, DevToolsFrameState, NuxtDevtoolsClient, NuxtDevtoolsClientHooks, NuxtDevtoolsGlobal, NuxtDevtoolsHostClient, NuxtDevtoolsIframeClient, TimelineEvent, TimelineEventFunction, TimelineEventNormalized, TimelineEventRoute, TimelineEventsSegment, TimelineMetrics, TimelineOptions, TimelineServerState };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@nuxt/devtools-kit",
3
3
  "type": "module",
4
- "version": "3.2.4",
4
+ "version": "4.0.0-alpha.2",
5
5
  "license": "MIT",
6
6
  "homepage": "https://devtools.nuxt.com/module/utils-kit",
7
7
  "repository": {
@@ -42,7 +42,7 @@
42
42
  },
43
43
  "dependencies": {
44
44
  "@nuxt/kit": "^4.4.2",
45
- "execa": "^8.0.1"
45
+ "tinyexec": "^1.0.4"
46
46
  },
47
47
  "devDependencies": {
48
48
  "@nuxt/schema": "^4.4.2",
@@ -51,7 +51,7 @@
51
51
  "hookable": "^6.1.0",
52
52
  "unbuild": "^3.6.1",
53
53
  "unimport": "^6.0.2",
54
- "vue-router": "^5.0.3"
54
+ "vue-router": "^5.0.4"
55
55
  },
56
56
  "scripts": {
57
57
  "build": "unbuild",