@nuxt/devtools 4.0.0-alpha.8 → 4.0.0-alpha.9

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 (140) hide show
  1. package/README.md +2 -2
  2. package/dist/chunks/analyze-build.mjs +1 -1
  3. package/dist/chunks/code-server.mjs +75 -0
  4. package/dist/chunks/module-main.mjs +29 -8
  5. package/dist/chunks/vite-inspect.mjs +1 -1
  6. package/dist/client/200.html +1 -1
  7. package/dist/client/404.html +1 -1
  8. package/dist/client/_nuxt/__blank-e7n6afwb.js +1 -0
  9. package/dist/client/_nuxt/analyze-build-hl5kov9g.js +1 -0
  10. package/dist/client/_nuxt/assets-mhs93a2v.js +6 -0
  11. package/dist/client/_nuxt/{auth-required-panel-gdnspumn.js → auth-required-panel-fp6njgq4.js} +1 -1
  12. package/dist/client/_nuxt/builds/latest.json +1 -1
  13. package/dist/client/_nuxt/builds/meta/f408df35-fbed-4f67-b31a-84e2dcf7d5f4.json +1 -0
  14. package/dist/client/_nuxt/{client-ngo84kjy.js → client-e4xweo15.js} +1 -1
  15. package/dist/client/_nuxt/client-ox3ztino.js +2 -0
  16. package/dist/client/_nuxt/code-diff-g3koa3wx.js +8 -0
  17. package/dist/client/_nuxt/{code-snippets-hxwvpad4.js → code-snippets-jiqnd4op.js} +1 -1
  18. package/dist/client/_nuxt/components-jjqi3963.js +1 -0
  19. package/dist/client/_nuxt/{composable-item-kchrxdzu.js → composable-item-nslyhu40.js} +1 -1
  20. package/dist/client/_nuxt/{composables-in7qtp0e.js → composables-jsh6xr6n.js} +1 -1
  21. package/dist/client/_nuxt/custom-_name_-nby2wkqs.js +1 -0
  22. package/dist/client/_nuxt/{data-schema-button-jy2w2afg.js → data-schema-button-n858k5no.js} +1 -1
  23. package/dist/client/_nuxt/data-schema-drawer-nd5v2dc8.js +2 -0
  24. package/dist/client/_nuxt/{debug-inf9k7rz.js → debug-iqz97avh.js} +1 -1
  25. package/dist/client/_nuxt/{default-dgqm22gk.js → default-kms351ji.js} +1 -1
  26. package/dist/client/_nuxt/{duration-display-m84jv0cg.js → duration-display-kvy6t3q5.js} +1 -1
  27. package/dist/client/_nuxt/entry.css-hsdbnv92.css +1 -0
  28. package/dist/client/_nuxt/{error-404-eoz73pl9.js → error-404-m7lxn6po.js} +1 -1
  29. package/dist/client/_nuxt/error-404.css-kodsrozu.css +1 -0
  30. package/dist/client/_nuxt/{error-500-h0agvsjp.js → error-500-fa1284ej.js} +1 -1
  31. package/dist/client/_nuxt/error-500.css-mq6ubyvk.css +1 -0
  32. package/dist/client/_nuxt/{error-h5jfp4d9.js → error-dnpxky1s.js} +1 -1
  33. package/dist/client/_nuxt/{filepath-item-b7ye3und.js → filepath-item-elq07qqm.js} +1 -1
  34. package/dist/client/_nuxt/full-muovlha1.js +1 -0
  35. package/dist/client/_nuxt/{help-fab-l6k9jkcj.js → help-fab-mk77l527.js} +1 -1
  36. package/dist/client/_nuxt/hooks-fuegc0zi.js +1 -0
  37. package/dist/client/_nuxt/{imports-ib3kw7ns.js → imports-dxp64giy.js} +1 -1
  38. package/dist/client/_nuxt/launch-page-ldhzltru.js +1 -0
  39. package/dist/client/_nuxt/mbruyqke.js +4 -0
  40. package/dist/client/_nuxt/modules-ip395o4i.js +1 -0
  41. package/dist/client/_nuxt/nbadge-odjar6lb.js +1 -0
  42. package/dist/client/_nuxt/ncheckbox-ecu968cz.js +1 -0
  43. package/dist/client/_nuxt/{ncode-block-jv3jk7c5.js → ncode-block-ivymjiov.js} +1 -1
  44. package/dist/client/_nuxt/ndrawer-fbwc78mp.js +1 -0
  45. package/dist/client/_nuxt/ndropdown-j9whus4q.js +1 -0
  46. package/dist/client/_nuxt/{nicon-title-66kg2f9l.js → nicon-title-lthyup78.js} +1 -1
  47. package/dist/client/_nuxt/{nlink-gej31v24.js → nlink-iv6gnrhx.js} +1 -1
  48. package/dist/client/_nuxt/{nmarkdown-nskcr8pg.js → nmarkdown-mbwbivxu.js} +1 -1
  49. package/dist/client/_nuxt/{nnavbar-bvq6rk5u.js → nnavbar-ivws4py6.js} +1 -1
  50. package/dist/client/_nuxt/none-f6zkixpn.js +1 -0
  51. package/dist/client/_nuxt/npanel-grids-jzjbt8z8.js +1 -0
  52. package/dist/client/_nuxt/nsection-block-xwt9b4fq.js +1 -0
  53. package/dist/client/_nuxt/nselect-efk0r1bm.js +1 -0
  54. package/dist/client/_nuxt/nselect-tabs-o18hum8e.js +1 -0
  55. package/dist/client/_nuxt/nsplit-pane-nl6gqw3a.js +1 -0
  56. package/dist/client/_nuxt/nsplit-pane.css-o64elxn9.css +1 -0
  57. package/dist/client/_nuxt/{ntip-kpuxzuo5.js → ntip-e476flgx.js} +1 -1
  58. package/dist/client/_nuxt/{nuxt-hqfu72u1.js → nuxt-ck1m833g.js} +1 -1
  59. package/dist/client/_nuxt/open-graph-fevqc4qw.js +3 -0
  60. package/dist/client/_nuxt/overview-mov3ns5a.js +1 -0
  61. package/dist/client/_nuxt/pages-hl3ggxo7.js +1 -0
  62. package/dist/client/_nuxt/payload-i1xm1c2a.js +1 -0
  63. package/dist/client/_nuxt/{pinia-dl2li4zl.js → pinia-j5ib0mm9.js} +1 -1
  64. package/dist/client/_nuxt/plugins-dmozf1ud.js +1 -0
  65. package/dist/client/_nuxt/{ready-if1s6ugr.js → ready-mci0xx49.js} +1 -1
  66. package/dist/client/_nuxt/render-tree-ht6m4wvr.js +1 -0
  67. package/dist/client/_nuxt/runtime-configs-lwkz00jf.js +1 -0
  68. package/dist/client/_nuxt/server-route-inputs-oyv7niet.js +1 -0
  69. package/dist/client/_nuxt/server-routes-e2av60g4.js +7 -0
  70. package/dist/client/_nuxt/server-tasks-jdi82ndh.js +1 -0
  71. package/dist/client/_nuxt/settings-nqvn74vj.js +1 -0
  72. package/dist/client/_nuxt/splitpanes.esm-e6jbjw2k.js +1 -0
  73. package/dist/client/_nuxt/{stacktrace-list-epxhdumx.js → stacktrace-list-bw2f6i1o.js} +1 -1
  74. package/dist/client/_nuxt/state-components-frowf3zr.js +1 -0
  75. package/dist/client/_nuxt/state-editor-dnnm0b1r.js +1 -0
  76. package/dist/client/_nuxt/state-modules-b9ourhpx.js +1 -0
  77. package/dist/client/_nuxt/storage-dtuxyb3g.js +1 -0
  78. package/dist/client/_nuxt/storage-options-o7q1mchx.js +1 -0
  79. package/dist/client/_nuxt/timeline-dtcyzchh.js +31 -0
  80. package/dist/client/_nuxt/{unocss-runtime-dh4insrr.js → unocss-runtime-l66gafm5.js} +1 -1
  81. package/dist/client/_nuxt/utils-d9q1xry0.js +1 -0
  82. package/dist/client/_nuxt/vendor/{json-editor-vue-c7zwcfg4.js → json-editor-vue-l1ffxhko.js} +2 -2
  83. package/dist/client/_nuxt/vendor/{unocss-maavuy8p.js → unocss-b56v4bpd.js} +1 -1
  84. package/dist/client/_nuxt/virtual-files-odf1l0xb.js +1 -0
  85. package/dist/client/_nuxt/vue-devtools-bho31pmk.js +4 -0
  86. package/dist/client/_nuxt/{vue-router-mro49nyg.js → vue-router-d5qsebus.js} +1 -1
  87. package/dist/client/index.html +1 -1
  88. package/dist/module.json +1 -1
  89. package/dist/module.mjs +1 -1
  90. package/dist/runtime/plugins/view/client.js +6 -4
  91. package/dist/shared/{devtools.B9TxdMuu.mjs → devtools.CCWq4fFE.mjs} +3 -9
  92. package/package.json +9 -12
  93. package/dist/chunks/vscode.mjs +0 -169
  94. package/dist/client/_nuxt/__blank-mr7fdmv7.js +0 -1
  95. package/dist/client/_nuxt/analyze-build-nemej5kd.js +0 -1
  96. package/dist/client/_nuxt/assets-cl372mus.js +0 -6
  97. package/dist/client/_nuxt/builds/meta/9ec1ff21-8126-4e86-bc50-039a1d3867c9.json +0 -1
  98. package/dist/client/_nuxt/code-diff-lkyoam09.js +0 -8
  99. package/dist/client/_nuxt/components-f9ckplr6.js +0 -1
  100. package/dist/client/_nuxt/custom-_name_-i8pdh231.js +0 -1
  101. package/dist/client/_nuxt/data-schema-drawer-liuhj385.js +0 -2
  102. package/dist/client/_nuxt/entry.css-ivisc4pv.css +0 -1
  103. package/dist/client/_nuxt/error-404.css-i7pin5fo.css +0 -1
  104. package/dist/client/_nuxt/error-500.css-4ikva5xr.css +0 -1
  105. package/dist/client/_nuxt/full-bc145h1r.js +0 -1
  106. package/dist/client/_nuxt/hooks-ce5n3mpx.js +0 -1
  107. package/dist/client/_nuxt/iefeupks.js +0 -4
  108. package/dist/client/_nuxt/launch-page-f3nbtoc4.js +0 -1
  109. package/dist/client/_nuxt/modules-gf4tkhai.js +0 -1
  110. package/dist/client/_nuxt/nbadge-254fd0s4.js +0 -1
  111. package/dist/client/_nuxt/ncheckbox-jr3c6e4e.js +0 -1
  112. package/dist/client/_nuxt/ndrawer-myfvks89.js +0 -1
  113. package/dist/client/_nuxt/ndropdown-jnrvla1s.js +0 -1
  114. package/dist/client/_nuxt/none-fcxnfo1z.js +0 -1
  115. package/dist/client/_nuxt/nsection-block-illvvuef.js +0 -1
  116. package/dist/client/_nuxt/nselect-hlo7a40m.js +0 -1
  117. package/dist/client/_nuxt/nselect-tabs-f47fcdsg.js +0 -1
  118. package/dist/client/_nuxt/nswitch-iey7gi9t.js +0 -1
  119. package/dist/client/_nuxt/open-graph-m35euip2.js +0 -3
  120. package/dist/client/_nuxt/overview-egkv3tit.js +0 -1
  121. package/dist/client/_nuxt/pages-ddqyzugj.js +0 -1
  122. package/dist/client/_nuxt/pages-n0i7aw4m.js +0 -1
  123. package/dist/client/_nuxt/payload-d6h8l8l2.js +0 -1
  124. package/dist/client/_nuxt/plugins-nhvbpqrg.js +0 -1
  125. package/dist/client/_nuxt/render-tree-h0xpx3p4.js +0 -1
  126. package/dist/client/_nuxt/rpc-jaaujnev.js +0 -1
  127. package/dist/client/_nuxt/runtime-configs-o91gwu2q.js +0 -1
  128. package/dist/client/_nuxt/server-route-inputs-ej6h9rh8.js +0 -1
  129. package/dist/client/_nuxt/server-routes-ocltmxje.js +0 -7
  130. package/dist/client/_nuxt/server-tasks-hhkstkby.js +0 -1
  131. package/dist/client/_nuxt/settings-i2ld0c8q.js +0 -1
  132. package/dist/client/_nuxt/state-components-eipbhsbn.js +0 -1
  133. package/dist/client/_nuxt/state-editor-ogobz58w.js +0 -1
  134. package/dist/client/_nuxt/state-modules-egymhwqw.js +0 -1
  135. package/dist/client/_nuxt/storage-cciny388.js +0 -1
  136. package/dist/client/_nuxt/storage-options-g42elkwy.js +0 -1
  137. package/dist/client/_nuxt/timeline-oese6i7t.js +0 -31
  138. package/dist/client/_nuxt/utils-h3uzf8s7.js +0 -2
  139. package/dist/client/_nuxt/virtual-files-pd2s0ff2.js +0 -1
  140. package/dist/client/_nuxt/vue-devtools-bxffe3ae.js +0 -4
package/README.md CHANGED
@@ -150,8 +150,8 @@ export default defineNuxtConfig({
150
150
  devtools: {
151
151
  // Enable devtools (default: true)
152
152
  enabled: true,
153
- // VS Code Server options
154
- vscode: {},
153
+ // Coder code-server options (enabled by default)
154
+ codeServer: {},
155
155
  // ...other options
156
156
  }
157
157
  })
@@ -9,7 +9,7 @@ import 'node:os';
9
9
  import 'consola/utils';
10
10
  import 'sirv';
11
11
  import 'vite';
12
- import '../shared/devtools.B9TxdMuu.mjs';
12
+ import '../shared/devtools.CCWq4fFE.mjs';
13
13
  import '../dirs.mjs';
14
14
  import 'node:path';
15
15
  import 'node:url';
@@ -0,0 +1,75 @@
1
+ import { createCodeServerDevframe } from '@devframes/plugin-code-server';
2
+ import { setupCodeServer } from '@devframes/plugin-code-server/node';
3
+ import { deprecate, onDevtoolsReady, NUXT_DEVTOOLS_GROUP_ID } from '@nuxt/devtools-kit';
4
+ import { mountDevframe } from '@vitejs/devtools-kit/node';
5
+
6
+ const RESERVED_ARGS = ["--auth", "--bind-addr", "--cookie-suffix"];
7
+ const RESERVED_ENV = ["PASSWORD", "HASHED_PASSWORD"];
8
+ function matchesOption(arg, option) {
9
+ return arg === option || arg.startsWith(`${option}=`);
10
+ }
11
+ function resolveCodeServerOptions(options, rootDir) {
12
+ const args = options?.args;
13
+ const reservedArg = args?.find((arg) => RESERVED_ARGS.some((option) => matchesOption(arg, option)));
14
+ if (reservedArg) {
15
+ throw new Error(
16
+ `[Nuxt DevTools] codeServer.args cannot override ${reservedArg.split("=")[0]}. Configure host and cookieSuffix through their dedicated codeServer options; authentication is managed automatically.`
17
+ );
18
+ }
19
+ const env = options?.env;
20
+ const reservedEnv = RESERVED_ENV.find((key) => Object.hasOwn(env ?? {}, key));
21
+ if (reservedEnv) {
22
+ throw new Error(
23
+ `[Nuxt DevTools] codeServer.env cannot set ${reservedEnv}. Code Server authentication credentials are generated and managed automatically.`
24
+ );
25
+ }
26
+ return {
27
+ // The 0.7 plugin also knows about Microsoft's serve-web and tunnels. Nuxt
28
+ // intentionally exposes only Coder code-server for this integration.
29
+ backend: "code-server",
30
+ bin: options?.bin,
31
+ cwd: options?.cwd ?? rootDir,
32
+ serverPort: options?.serverPort,
33
+ host: options?.host,
34
+ args,
35
+ env,
36
+ cookieSuffix: options?.cookieSuffix,
37
+ startTimeout: options?.startTimeout
38
+ };
39
+ }
40
+ function setup(ctx) {
41
+ const { nuxt, options } = ctx;
42
+ if (options.vscode !== void 0) {
43
+ deprecate(nuxt, "NDT_DEP_0008", {
44
+ api: "devtools.vscode",
45
+ replacement: "devtools.codeServer"
46
+ });
47
+ }
48
+ if (options.codeServer?.enabled === false)
49
+ return;
50
+ const codeServerOptions = resolveCodeServerOptions(options.codeServer, nuxt.options.rootDir);
51
+ const definition = createCodeServerDevframe(codeServerOptions);
52
+ let supervisor;
53
+ let setupPromise;
54
+ const mountedDefinition = {
55
+ ...definition,
56
+ async setup(devframeCtx) {
57
+ setupPromise = setupCodeServer(devframeCtx, codeServerOptions);
58
+ supervisor = await setupPromise;
59
+ }
60
+ };
61
+ nuxt.hook("close", async () => {
62
+ await setupPromise;
63
+ supervisor?.dispose();
64
+ });
65
+ onDevtoolsReady((kit) => {
66
+ return mountDevframe(kit, mountedDefinition, {
67
+ dock: {
68
+ groupId: NUXT_DEVTOOLS_GROUP_ID,
69
+ category: "modules"
70
+ }
71
+ });
72
+ }, nuxt);
73
+ }
74
+
75
+ export { resolveCodeServerOptions, setup };
@@ -7,7 +7,7 @@ import { colors } from 'consola/utils';
7
7
  import { join, dirname, resolve, isAbsolute } from 'pathe';
8
8
  import sirv from 'sirv';
9
9
  import { searchForWorkspaceRoot } from 'vite';
10
- import { d as defaultAllowedExtensions, c as createDefaultTabOptions, s as setServerTasksEnabledByDefault } from '../shared/devtools.B9TxdMuu.mjs';
10
+ import { d as defaultAllowedExtensions, c as createDefaultTabOptions, s as setServerTasksEnabledByDefault } from '../shared/devtools.CCWq4fFE.mjs';
11
11
  import { runtimeDir, clientDir, packageDir } from '../dirs.mjs';
12
12
  import { registerDataSource, createDataInspectorDevframe } from '@devframes/plugin-data-inspector';
13
13
  import { mountDevframe } from '@vitejs/devtools-kit/node';
@@ -33,7 +33,7 @@ import { isLess } from 'verkit';
33
33
  import { DEVTOOLS_TERMINALS_DOCK_ID } from '@vitejs/devtools-kit/constants';
34
34
  import { normalizeBaseKey, normalizeKey } from 'unstorage';
35
35
 
36
- const version$1 = "4.0.0-alpha.8";
36
+ const version$1 = "4.0.0-alpha.9";
37
37
 
38
38
  const captured = {};
39
39
  function normalizeViteConfig(config) {
@@ -95,8 +95,7 @@ function setup(ctx) {
95
95
  return mountDevframe(kit, definition, {
96
96
  dock: {
97
97
  groupId: NUXT_DEVTOOLS_GROUP_ID,
98
- category: "framework",
99
- defaultOrder: -100
98
+ category: "advanced"
100
99
  }
101
100
  });
102
101
  }, nuxt);
@@ -12129,15 +12128,36 @@ async function enableModule(options, nuxt) {
12129
12128
  icon: "/__nuxt_devtools__/client/nuxt.svg",
12130
12129
  category: "framework",
12131
12130
  defaultOrder: -2e3,
12132
- defaultChildId: "nuxt:devtools"
12131
+ defaultChildId: "nuxt:devtools",
12132
+ // Order the in-group sub-categories (each member's `category`) the
12133
+ // way Nuxt DevTools orders its own tab categories, rather than the
12134
+ // dock's shared default table. Requires `@vitejs/devtools` >= 0.4.6
12135
+ // / `@devframes/hub` >= 0.7.12 (vitejs/devtools#468).
12136
+ categoryOrder: {
12137
+ "pinned": 0,
12138
+ "app": 1,
12139
+ "vue-devtools": 2,
12140
+ "analyze": 3,
12141
+ "server": 4,
12142
+ "modules": 5,
12143
+ "documentation": 6,
12144
+ "advanced": 7
12145
+ }
12133
12146
  });
12134
12147
  ctx2.docks.register({
12135
12148
  id: "nuxt:devtools",
12136
12149
  type: "iframe",
12137
- icon: "/__nuxt_devtools__/client/nuxt.svg",
12138
12150
  title: "Nuxt DevTools",
12151
+ icon: "/__nuxt_devtools__/client/nuxt.svg",
12152
+ // The client renders chromelessly as this shared-frame anchor (no
12153
+ // SideNav/split pane) and runs the frame-nav shim, which announces
12154
+ // one member dock per tab and soft-navigates within this one iframe.
12139
12155
  url: "/__nuxt_devtools__/client/",
12140
12156
  groupId: NUXT_DEVTOOLS_GROUP_ID,
12157
+ frameId: "nuxt:devtools",
12158
+ subTabs: { protocol: "postmessage" },
12159
+ // TODO: this seems still not working correctly with defaultChildId, enable it back later.
12160
+ // visibility: 'false',
12141
12161
  defaultOrder: -300
12142
12162
  });
12143
12163
  }
@@ -12225,7 +12245,8 @@ window.__NUXT_DEVTOOLS_TIME_METRIC__.appInit = Date.now()
12225
12245
  res.end();
12226
12246
  };
12227
12247
  server.middlewares.use(ROUTE_CLIENT, (req, res) => {
12228
- if (req.url === "/")
12248
+ const pathname = (req.url || "/").split("?")[0];
12249
+ if (pathname === "/" || pathname === "")
12229
12250
  return handleIndex(res);
12230
12251
  return handleStatic(req, res, () => handleIndex(res));
12231
12252
  });
@@ -12240,7 +12261,7 @@ window.__NUXT_DEVTOOLS_TIME_METRIC__.appInit = Date.now()
12240
12261
  if (options.componentInspector !== false)
12241
12262
  await import('./vue-tracer.mjs').then(({ setup }) => setup(ctx));
12242
12263
  const integrations = [
12243
- options.vscode?.enabled ? import('./vscode.mjs').then(({ setup }) => setup(ctx)) : null,
12264
+ import('./code-server.mjs').then(({ setup }) => setup(ctx)),
12244
12265
  options.experimental?.timeline || options.timeline?.enabled ? import('./timeline.mjs').then(({ setup }) => setup(ctx)) : null
12245
12266
  ];
12246
12267
  await Promise.all(integrations);
@@ -8,7 +8,7 @@ import 'consola/utils';
8
8
  import 'pathe';
9
9
  import 'sirv';
10
10
  import 'vite';
11
- import '../shared/devtools.B9TxdMuu.mjs';
11
+ import '../shared/devtools.CCWq4fFE.mjs';
12
12
  import '../dirs.mjs';
13
13
  import 'node:path';
14
14
  import 'node:url';
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><script type="importmap">{"imports":{"#entry":"/__NUXT_DEVTOOLS_BASE__/_nuxt/iefeupks.js"}}</script><link rel="stylesheet" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/entry.css-ivisc4pv.css" crossorigin><link rel="stylesheet" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/json-editor-vue.css-lb1ewor6.css" crossorigin><link rel="stylesheet" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/unocss.css-flyrgbwp.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/iefeupks.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/_plugin-vue_export-helper-d9irwgla.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/json-editor-vue-c7zwcfg4.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/rolldown-runtime-imbltlrc.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/utils-h3uzf8s7.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/shiki-mgsi4s2l.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/rpc-jaaujnev.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ready-if1s6ugr.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/dist-cwkxp5t4.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/nuxt-hqfu72u1.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vue-router-mro49nyg.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/dist-hhnji3pn.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/unocss-maavuy8p.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/composables-in7qtp0e.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/storage-options-g42elkwy.js"><script type="module" src="/__NUXT_DEVTOOLS_BASE__/_nuxt/iefeupks.js" crossorigin></script><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/markdown-it-cx0uvu2o.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/default-dgqm22gk.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/full-bc145h1r.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/none-fcxnfo1z.js"><link rel="prefetch" as="style" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ncode-block.css-ivoxtfjk.css"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/data-schema-drawer-liuhj385.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/quicktype-core-otmjigaj.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ncode-block-jv3jk7c5.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/client-ngo84kjy.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ndrawer-myfvks89.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ndropdown-jnrvla1s.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/nselect-hlo7a40m.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/nswitch-iey7gi9t.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/unocss-runtime-dh4insrr.js"><link rel="prefetch" as="style" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-500.css-4ikva5xr.css"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-500-h0agvsjp.js"></head><body><div id="__nuxt"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__NUXT_DEVTOOLS_BASE__/",buildId:"9ec1ff21-8126-4e86-bc50-039a1d3867c9",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1784773586677,false]</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><script type="importmap">{"imports":{"#entry":"/__NUXT_DEVTOOLS_BASE__/_nuxt/mbruyqke.js"}}</script><link rel="stylesheet" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/entry.css-hsdbnv92.css" crossorigin><link rel="stylesheet" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/json-editor-vue.css-lb1ewor6.css" crossorigin><link rel="stylesheet" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/unocss.css-flyrgbwp.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/mbruyqke.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/_plugin-vue_export-helper-d9irwgla.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/json-editor-vue-l1ffxhko.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/rolldown-runtime-imbltlrc.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/utils-d9q1xry0.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/client-ox3ztino.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/shiki-mgsi4s2l.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ready-mci0xx49.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/dist-cwkxp5t4.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/nuxt-ck1m833g.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vue-router-d5qsebus.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/dist-hhnji3pn.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/unocss-b56v4bpd.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/composables-jsh6xr6n.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/storage-options-o7q1mchx.js"><script type="module" src="/__NUXT_DEVTOOLS_BASE__/_nuxt/mbruyqke.js" crossorigin></script><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/markdown-it-cx0uvu2o.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/default-kms351ji.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/full-muovlha1.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/none-f6zkixpn.js"><link rel="prefetch" as="style" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ncode-block.css-ivoxtfjk.css"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/data-schema-drawer-nd5v2dc8.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/quicktype-core-otmjigaj.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ncode-block-ivymjiov.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/client-e4xweo15.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ndrawer-fbwc78mp.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ndropdown-j9whus4q.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/nselect-efk0r1bm.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/unocss-runtime-l66gafm5.js"><link rel="prefetch" as="style" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-500.css-mq6ubyvk.css"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-500-fa1284ej.js"></head><body><div id="__nuxt"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__NUXT_DEVTOOLS_BASE__/",buildId:"f408df35-fbed-4f67-b31a-84e2dcf7d5f4",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1784892383925,false]</script></body></html>
@@ -1 +1 @@
1
- <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><script type="importmap">{"imports":{"#entry":"/__NUXT_DEVTOOLS_BASE__/_nuxt/iefeupks.js"}}</script><link rel="stylesheet" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/entry.css-ivisc4pv.css" crossorigin><link rel="stylesheet" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/json-editor-vue.css-lb1ewor6.css" crossorigin><link rel="stylesheet" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/unocss.css-flyrgbwp.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/iefeupks.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/_plugin-vue_export-helper-d9irwgla.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/json-editor-vue-c7zwcfg4.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/rolldown-runtime-imbltlrc.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/utils-h3uzf8s7.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/shiki-mgsi4s2l.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/rpc-jaaujnev.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ready-if1s6ugr.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/dist-cwkxp5t4.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/nuxt-hqfu72u1.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vue-router-mro49nyg.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/dist-hhnji3pn.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/unocss-maavuy8p.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/composables-in7qtp0e.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/storage-options-g42elkwy.js"><script type="module" src="/__NUXT_DEVTOOLS_BASE__/_nuxt/iefeupks.js" crossorigin></script><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/markdown-it-cx0uvu2o.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/default-dgqm22gk.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/full-bc145h1r.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/none-fcxnfo1z.js"><link rel="prefetch" as="style" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ncode-block.css-ivoxtfjk.css"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/data-schema-drawer-liuhj385.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/quicktype-core-otmjigaj.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ncode-block-jv3jk7c5.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/client-ngo84kjy.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ndrawer-myfvks89.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ndropdown-jnrvla1s.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/nselect-hlo7a40m.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/nswitch-iey7gi9t.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/unocss-runtime-dh4insrr.js"><link rel="prefetch" as="style" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-500.css-4ikva5xr.css"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-500-h0agvsjp.js"></head><body><div id="__nuxt"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__NUXT_DEVTOOLS_BASE__/",buildId:"9ec1ff21-8126-4e86-bc50-039a1d3867c9",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1784773586681,false]</script></body></html>
1
+ <!DOCTYPE html><html><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1"><script type="importmap">{"imports":{"#entry":"/__NUXT_DEVTOOLS_BASE__/_nuxt/mbruyqke.js"}}</script><link rel="stylesheet" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/entry.css-hsdbnv92.css" crossorigin><link rel="stylesheet" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/json-editor-vue.css-lb1ewor6.css" crossorigin><link rel="stylesheet" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/unocss.css-flyrgbwp.css" crossorigin><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/mbruyqke.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/_plugin-vue_export-helper-d9irwgla.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/json-editor-vue-l1ffxhko.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/rolldown-runtime-imbltlrc.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/utils-d9q1xry0.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/client-ox3ztino.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/shiki-mgsi4s2l.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ready-mci0xx49.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/dist-cwkxp5t4.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/nuxt-ck1m833g.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vue-router-d5qsebus.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/dist-hhnji3pn.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/unocss-b56v4bpd.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/composables-jsh6xr6n.js"><link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/storage-options-o7q1mchx.js"><script type="module" src="/__NUXT_DEVTOOLS_BASE__/_nuxt/mbruyqke.js" crossorigin></script><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/markdown-it-cx0uvu2o.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/default-kms351ji.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/full-muovlha1.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/none-f6zkixpn.js"><link rel="prefetch" as="style" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ncode-block.css-ivoxtfjk.css"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/data-schema-drawer-nd5v2dc8.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/quicktype-core-otmjigaj.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ncode-block-ivymjiov.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/client-e4xweo15.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ndrawer-fbwc78mp.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ndropdown-j9whus4q.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/nselect-efk0r1bm.js"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/unocss-runtime-l66gafm5.js"><link rel="prefetch" as="style" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-500.css-mq6ubyvk.css"><link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-500-fa1284ej.js"></head><body><div id="__nuxt"></div><div id="teleports"></div><script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__NUXT_DEVTOOLS_BASE__/",buildId:"f408df35-fbed-4f67-b31a-84e2dcf7d5f4",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1784892383929,false]</script></body></html>
@@ -0,0 +1 @@
1
+ import{T as e,W as t,_ as n}from"./vendor/json-editor-vue-l1ffxhko.js";import{t as r}from"./composables-ioamscf4.js";var i={"h-screen":``,"w-screen":``,"bg-black":``},a=e({__name:`__blank`,setup(e){return r({layout:`none`}),(e,r)=>(t(),n(`div`,i))}});export{a as default};
@@ -0,0 +1 @@
1
+ import{a as e}from"./nuxt-ck1m833g.js";import{C as t,S as n,St as r,T as i,W as a,Y as o,Zt as s,_ as c,dt as l,en as u,g as d,h as f,jt as p,m,p as h,s as g,ut as _}from"./vendor/json-editor-vue-l1ffxhko.js";import{I as v}from"./ready-mci0xx49.js";import{g as y,h as b}from"./utils-d9q1xry0.js";import{b as x,p as S,x as C}from"./client-ox3ztino.js";import{t as w}from"./_plugin-vue_export-helper-d9irwgla.js";import{C as T,I as E,b as D,i as O,m as k,v as A}from"#entry";import{t as j}from"./ncode-block-ivymjiov.js";import{t as M}from"./composables-ioamscf4.js";import{t as N}from"./filepath-item-elq07qqm.js";import{t as P}from"./npanel-grids-jzjbt8z8.js";import{t as F}from"./nsplit-pane-nl6gqw3a.js";import{t as I}from"./ntip-e476flgx.js";import{t as L}from"./ncheckbox-ecu968cz.js";import{t as R}from"./help-fab-mk77l527.js";var z={"h-full":``,grid:`~ rows-[max-content_1fr]`},B={flex:`~ wrap`,"w-full":``},V=[`onClick`],H={key:0,flex:`~ col gap-4 items-center justify-center`,p4:``},U={grid:`~ cols-[30px_1fr] gap-x-2 gap-y-3 items-center justify-center`,"w-100":``},W=`/__nuxt_devtools__/client`,G=Object.assign(i({__name:`BuildAnalyzeDetails`,props:{current:{},prev:{}},setup(i){let f=i,y=`${e().app.baseURL.replace(W,`/`)}/__nuxt_devtools__/analyze/`.replace(/\/+/g,`/`),b=h(()=>{let e=[{name:`Overview`,id:`overview`}];return f.current.features.bundleClient&&e.push({name:`Client Bundle`,id:`bundle-client`}),f.current.features.bundleNitro&&e.push({name:`Nitro Bundle`,id:`bundle-nitro`}),f.current.features.viteInspect&&e.push({name:`Vite Inspect`,id:`vite-inspect`}),e}),x=r(b.value[0]);function w(e){return`${((e.endTime-e.startTime)/1e3).toFixed(1)}s`}function T(e){return e<1024?`${e}B`:e<1024*1024?`${(e/1024).toFixed(1)}KB`:e<1024*1024*1024?`${(e/1024/1024).toFixed(1)}MB`:`${(e/1024/1024/1024).toFixed(1)}GB`}async function E(e){return S.clearAnalyzeBuilds([e])}return(e,r)=>{let f=N,h=D;return a(),c(`div`,z,[m(`div`,B,[(a(!0),c(g,null,o(b.value,(e,t)=>(a(),c(`button`,{key:t,px4:``,py2:``,border:`r base`,hover:`bg-active`,class:s(e.id===x.value?.id?``:`border-b`),onClick:t=>x.value=e},[m(`div`,{class:s(e.id===x.value?.id?``:`op30`)},u(e.name),3)],10,V))),128)),r[1]||=m(`div`,{border:`b base`,"flex-auto":``},null,-1)]),x.value?.id===`overview`?(a(),c(`div`,H,[r[15]||=m(`div`,{"flex-auto":``},null,-1),m(`div`,U,[r[10]||=m(`div`,{"i-carbon-commit":``,"text-xl":``},null,-1),m(`div`,null,[r[2]||=m(`div`,{"text-sm":``,op50:``},` Name `,-1),m(`div`,null,u(i.current.name),1)]),r[11]||=m(`div`,{"i-carbon-time":``,"text-xl":``},null,-1),m(`div`,null,[r[3]||=m(`div`,{"text-sm":``,op50:``},` Build duration `,-1),m(`div`,null,u(w(i.current)),1)]),i.current.size?.clientBundle?(a(),c(g,{key:0},[r[5]||=m(`div`,{"i-carbon-cics-program":``,"text-xl":``},null,-1),m(`div`,null,[r[4]||=m(`div`,{"text-sm":``,op50:``},` Client bundle size `,-1),m(`div`,null,u(T(i.current.size.clientBundle)),1)])],64)):d(``,!0),i.current.size?.nitroBundle?(a(),c(g,{key:1},[r[7]||=m(`div`,{"i-carbon-bare-metal-server":``,"text-xl":``},null,-1),m(`div`,null,[r[6]||=m(`div`,{"text-sm":``,op50:``},` Nitro bundle size `,-1),m(`div`,null,u(T(i.current.size.nitroBundle)),1)])],64)):d(``,!0),r[12]||=m(`div`,{"i-carbon-edge-node":``,"text-xl":``},null,-1),m(`div`,null,[r[8]||=m(`div`,{"text-sm":``,op50:``},` Built `,-1),m(`div`,null,u(p(C)(new Date(i.current.endTime))),1)]),r[13]||=m(`div`,{"i-carbon:folder-parent":``,"text-xl":``},null,-1),m(`div`,null,[r[9]||=m(`div`,{"text-sm":``,op50:``},` Report Path `,-1),t(f,{filepath:i.current.analyzeDir},null,8,[`filepath`])])]),r[16]||=m(`div`,{"flex-auto":``},null,-1),t(h,{n:`rose`,icon:`carbon-delete`,onClick:r[0]||=e=>E(i.current.name)},{default:_(()=>[...r[14]||=[n(` Delete this report `,-1)]]),_:1})])):d(``,!0),r._lazyshow1||x.value?.id===`bundle-client`?(r._lazyshow1=!0,a(),c(g,null,[l(m(`iframe`,{src:`${p(y)}${i.current.slug}/client.html`,"h-full":``,"w-full":``},null,8,[`src`]),[[v,x.value?.id===`bundle-client`]])],64)):d(`v-show-if`,!0),r._lazyshow2||x.value?.id===`bundle-nitro`?(r._lazyshow2=!0,a(),c(g,null,[l(m(`iframe`,{src:`${p(y)}${i.current.slug}/nitro.html`,"h-full":``,"w-full":``},null,8,[`src`]),[[v,x.value?.id===`bundle-nitro`]])],64)):d(`v-show-if`,!0),r._lazyshow3||x.value?.id===`vite-inspect`?(r._lazyshow3=!0,a(),c(g,null,[l(m(`iframe`,{src:`${p(y)}${i.current.slug}/.vite-inspect/`,"h-full":``,"w-full":``},null,8,[`src`]),[[v,x.value?.id===`vite-inspect`]])],64)):d(`v-show-if`,!0)])}}}),{__name:`BuildAnalyzeDetails`}),K={},q={class:`markdown-body`};function J(e,t){return a(),c(`div`,q,[...t[0]||=[m(`template`,null,[m(`div`,{class:`markdown-body`},[m(`h1`,null,`Build Analyze`),m(`p`,null,[n(`DevTools provides a build analyze tool to help you understand the size of your app in production. Whenever you start a new build, it runs the command `),m(`code`,{"v-pre":``},`nuxt build --analyze`),n(` and present the output data directly in DevTools for easy browsing and comparing.`)])])],-1)]])}var Y=w(K,[[`render`,J]]),X={flex:`~ col`},Z=[`onClick`],Q={flex:`~ gap-1 items-center wrap`,"w-full":``,"text-sm":``,op60:``},$={flex:`~ items-center justify-center wrap`,p4:``},ee={flex:`~ col gap-1`,"w-250":``,p4:``},te={flex:`~ gap-3`,mt2:``,"justify-end":``},ne=i({__name:`analyze-build`,setup(e){M({icon:`carbon-edge-node`,title:`Build Analyze`,layout:`full`,category:`analyze`,show(){return E(`^3.5.0`)}});let i=x(),l=y(),v=b(`analyze-build:slug`,``),w=h(()=>l.value?.builds.find(e=>e.slug===v.value)??l.value?.builds[0]),N=r(!1),z=r(``),B=h(()=>l.value?.builds.some(e=>e.name===z.value.trim()));async function V(){if(z.value=await S.generateAnalyzeBuildName(),!await i.start())return;O(`analyze-build:start`);let e=await S.startAnalyzeBuild(z.value);N.value&&S.revealTerminal(e)}function H(e){return`${((e.endTime-e.startTime)/1e3).toFixed(1)}s`}function U(){l.value?.activeSessionId&&S.revealTerminal(l.value.activeSessionId)}return k(()=>[{id:`action:analyze-build: start`,title:`Start a new analyze build`,icon:`i-carbon-edge-node`,action:V}]),(e,r)=>{let h=D,y=G,b=P,x=F,S=T,E=I,O=j,k=L,M=A,W=Y,K=R;return a(),c(g,null,[t(x,{"left-size":30},{left:_(()=>[m(`div`,X,[(a(!0),c(g,null,o(p(l)?.builds,e=>(a(),c(g,{key:e.slug},[m(`button`,{flex:`~ col gap1`,p3:``,"hover:bg-active":``,class:s(e.slug===w.value?.slug?`text-primary bg-active`:``),onClick:t=>v.value=e.slug},[m(`code`,null,u(e.name),1),m(`div`,Q,[r[4]||=m(`div`,{"i-carbon-time":``},null,-1),m(`span`,null,u(H(e)),1),r[5]||=m(`div`,{"flex-auto":``},null,-1),m(`span`,null,u(p(C)(new Date(e.endTime))),1)])],10,Z),r[6]||=m(`div`,{"x-divider":``},null,-1)],64))),128)),m(`div`,$,[p(l)?.isBuilding?(a(),f(h,{key:1,n:`primary`,icon:`carbon-circle-dash animate-spin`,title:`Open the output in the Terminals dock`,onClick:r[1]||=e=>U()},{default:_(()=>[...r[8]||=[n(` Building... `,-1)]]),_:1})):(a(),f(h,{key:0,n:`primary`,icon:`carbon-edge-node`,onClick:r[0]||=e=>V()},{default:_(()=>[...r[7]||=[n(` Start a new build `,-1)]]),_:1}))])])]),right:_(()=>[w.value?(a(),f(y,{key:0,current:w.value},null,8,[`current`])):(a(),f(b,{key:1}))]),_:1}),t(p(i),null,{default:_(({resolve:e})=>[t(M,{"model-value":!0,onClose:t=>e(!1)},{default:_(()=>[m(`div`,ee,[r[13]||=m(`h3`,{class:`text-lg font-medium leading-6`,mb2:``},` Start analyze build? `,-1),r[14]||=m(`p`,{op50:``},` Enter the name of the build: `,-1),t(S,{modelValue:z.value,"onUpdate:modelValue":r[2]||=e=>z.value=e,placeholder:`Build name`},null,8,[`modelValue`]),B.value?(a(),f(E,{key:0,"n-orange":``},{default:_(()=>[...r[9]||=[n(` A build with the same name already exists, continue would overrides the previous build result. `,-1)]]),_:1})):d(``,!0),r[15]||=m(`div`,{my3:``,"x-divider":``},null,-1),r[16]||=m(`p`,{op50:``},` The following command will be executed in your terminal: `,-1),t(O,{code:`npx nuxi analyze --no-serve --name=${z.value}`,lang:`bash`,px4:``,py2:``,border:`~ base rounded`,lines:!1},null,8,[`code`]),t(k,{modelValue:N.value,"onUpdate:modelValue":r[3]||=e=>N.value=e,mt2:``,n:`primary`},{default:_(()=>[...r[10]||=[n(` Open the Terminals dock `,-1)]]),_:1},8,[`modelValue`]),m(`div`,te,[t(h,{onClick:t=>e(!1)},{default:_(()=>[...r[11]||=[n(` Cancel `,-1)]]),_:1},8,[`onClick`]),t(h,{n:`solid primary`,onClick:t=>e(!0)},{default:_(()=>[...r[12]||=[n(` Start `,-1)]]),_:1},8,[`onClick`])])])]),_:2},1032,[`onClose`])]),_:1}),t(K,null,{default:_(()=>[t(W)]),_:1})],64)}}});export{ne as default};
@@ -0,0 +1,6 @@
1
+ import{$t as e,C as t,Q as n,S as r,St as i,T as a,W as o,X as s,Y as c,Zt as l,_ as u,_t as d,dt as f,en as p,g as m,h,jt as g,m as _,p as v,s as y,ut as b}from"./vendor/json-editor-vue-l1ffxhko.js";import{F as x,L as S}from"./ready-mci0xx49.js";import{A as C,C as w}from"./utils-d9q1xry0.js";import{C as T,F as E,I as D,P as O,R as k,_ as A,h as j,k as M,p as N,v as P}from"./client-ox3ztino.js";import{t as F}from"./storage-options-o7q1mchx.js";import{C as I,_ as L,b as R,i as z,j as B,n as ee,r as te,v as ne,w as V}from"#entry";import{t as H}from"./ndropdown-j9whus4q.js";import{t as U}from"./ndrawer-fbwc78mp.js";import{t as W}from"./composables-ioamscf4.js";import{t as re}from"./filepath-item-elq07qqm.js";import{t as G}from"./ncheckbox-ecu968cz.js";import{t as K}from"./nnavbar-ivws4py6.js";import{n as q,t as J}from"./code-snippets-jiqnd4op.js";import{t as Y}from"./nsection-block-xwt9b4fq.js";var X={key:0,"h-full":``,"w-full":``,flex:``,"items-center":``,"justify-center":``},ie={for:`drop-zone-input`,"text-3xl":``,hover:`text-green cursor-pointer`,"transition-all":``},ae={key:1,relative:``,"h-full":``,"w-full":``,grid:`~ rows-[max-content_1fr_max-content]`},oe={grid:`~ cols-minmax-8rem gap-8`,"overflow-auto":``,p6:``},se={flex:``,"items-center":``,"justify-center":``,"of-hidden":``,rounded:``,"rounded-t-lg":``,"bg-active":``,"object-cover":``,class:`aspect-1/1`,border:`~ base`},ce=[`src`],le={flex:`~ gap1`,"items-center":``},ue={flex:`~ gap-2`,"items-center":``,"justify-center":``,p8:``},de=Object.assign(a({__name:`AssetDropZone`,props:{modelValue:{type:Boolean,required:!0},folder:{type:String,required:!0}},setup(e){let a=e,s=/\.\w+$/,d=D(a,`modelValue`),p=i(),v=i([]);function x(e){p.value=e.target,d.value=!0}function S(e){e.target===p.value&&(d.value=!1)}function C(e){e.preventDefault()}function w(e){e.preventDefault(),T(e.dataTransfer.files)}function T(e){let t=[...e||[]];if(t.length){let e=[],n=v.value.map(e=>e.name);for(let r of t)if(n.includes(r.name)){let t=1,[i,a]=r.name.split(`.`);for(;n.includes(`${i} (${t}).${a}`);)t++;let o=`${i}-${t}.${a}`,s=new Blob([r],{type:r.type}),c=new File([s],o,{lastModified:Date.now()});e.push(c),n.push(o)}else r.type===``&&B({message:`Folders are not supported yet`,icon:`carbon:face-dissatisfied`,classes:`text-orange`}),e.push(r);v.value=[...v.value,...e]}}async function E(){if(j.value||A.value)return;z(`assets:upload`);let e=[];for(let t of v.value){let n=new FileReader;n.readAsDataURL(t);let r=(await new Promise(e=>{n.onload=()=>e(n.result)})).split(`;base64,`).pop();e.push({path:t.name,encoding:`base64`,content:r})}await N.writeStaticAssets([...e],a.folder).then(()=>{L(),B({message:`Files uploaded successfully!`,icon:`i-carbon:checkmark`})}).catch(e=>{L(),B({message:`Error uploading files: ${e?.message??`unknown`}`,icon:`i-carbon-warning`,classes:`text-red`})}),d.value=!1}function O(e){v.value?.splice(e,1)}function k(e){return URL.createObjectURL(e)}function P(e,t){let[n,r]=e.name.split(`.`),i=t.replace(s,``),a=`${i}.${r}`;return i.length===0?(alert(`File name must be at least 1 characters long`),n):(Object.defineProperty(e,"name",{value:a,writable:!1}),v.value.splice(v.value.indexOf(e),1,e),e)}function F(){v.value=[]}function L(){d.value=!1,F()}return M(`dragenter`,x),M(`dragleave`,S),M(`dragover`,C),M(`drop`,w),(e,i)=>{let a=R,s=V,p=I,x=n(`tooltip`);return o(),u(`div`,{fixed:``,"bottom-0":``,"left-13":``,"right-0":``,"top-0":``,"z-10":``,"backdrop-blur-20":``,"transition-all":``,class:l(g(d)?`opacity-100 visible`:`opacity-0 invisible`)},[f(t(a,{icon:`carbon-close`,title:`Close`,absolute:``,"right-5":``,"top-5":``,"z-20":``,"text-xl":``,border:!1,onClick:L},null,512),[[x,`Close`,void 0,{"bottom-end":!0}]]),v.value?.length?(o(),u(`div`,ae,[i[4]||=_(`div`,{px6:``,py6:``},[_(`h1`,{"text-2xl":``},` Upload `),_(`p`,{"text-sm":``,op50:``},` Drag and drop files to upload `)],-1),_(`div`,oe,[(o(!0),u(y,null,c(v.value,(e,n)=>(o(),u(`div`,{key:e.name,flex:`~ col gap-2`,relative:``,"h-50":``,"w-40":``,"items-center":``},[_(`div`,se,[_(`img`,{"h-full":``,"w-full":``,"rounded-t-lg":``,"object-cover":``,src:k(e)},null,8,ce)]),_(`div`,le,[t(p,{n:`xs`,"h-full":``,"flex-auto":``,"model-value":e.name,"onUpdate:modelValue":t=>P(e,t.target.value)},null,8,[`model-value`,`onUpdate:modelValue`]),t(a,{n:`red`,icon:`carbon-trash-can`,"h-full":``,"flex-none":``,title:`Remove file`,onClick:e=>O(n)},null,8,[`onClick`])])]))),128))]),_(`div`,ue,[v.value.length?(o(),h(a,{key:0,n:`red`,onClick:F},{default:b(()=>[t(s,{icon:`carbon-clean`}),i[2]||=r(` Clear `,-1)]),_:1})):m(``,!0),t(a,{disabled:!v.value.length,n:`primary solid`,onClick:E},{default:b(()=>[t(s,{icon:`carbon-cloud-upload`}),i[3]||=r(` Upload `,-1)]),_:1},8,[`disabled`])])])):(o(),u(`div`,X,[_(`label`,ie,[t(s,{icon:`carbon-cloud-upload`,"mr-2":``}),i[1]||=r(` Drop files here or click to select `,-1)]),_(`input`,{id:`drop-zone-input`,type:`file`,multiple:``,hidden:``,onChange:i[0]||=e=>T(e.target.files)},null,32)]))],2)}}}),{__name:`AssetDropZone`}),fe=Object.assign(a({__name:`AssetFontPreview`,props:{asset:{}},setup(t){let n=t,r=v(()=>`devtools-assets-${q(n.asset)}`);return O(v(()=>`
2
+ @font-face {
3
+ font-family: '${r.value}';
4
+ src: url('${n.asset.publicPath}');
5
+ }
6
+ `)),(t,n)=>(o(),u(`div`,{"of-hidden":``,style:e({fontFamily:`'${r.value}'`})},` Aa Bb Cc Dd Ee Ff Gg Hh Ii Jj Kk Ll Mm Nn Oo Pp Qq Rr Ss Tt Uu Vv Ww Xx Yy Zz `,4))}}),{__name:`AssetFontPreview`}),pe={flex:``,"items-center":``,"justify-center":``,"of-hidden":``,"bg-active":``,"object-cover":``,p1:``},me=[`src`],he={key:2,"i-carbon-document":``,"text-3xl":``,op20:``},ge={key:3,"w-full":``,"self-start":``,p4:``},_e=[`textContent`],ve={key:4},ye=[`src`,`autoplay`,`controls`],be={key:5},xe={key:0,"i-carbon-volume-up":``,"text-3xl":``,op20:``},Se=[`src`],Ce={key:6,"i-carbon-help":``,"text-3xl":``,op20:``},Z=Object.assign(a({__name:`AssetPreview`,props:{asset:{},textContent:{},detail:{type:Boolean}},setup(e){return(t,n)=>{let r=fe;return o(),u(`div`,pe,[e.asset.type===`image`?(o(),u(`img`,{key:0,src:e.asset.publicPath},null,8,me)):e.asset.type===`font`?(o(),h(r,{key:e.asset.publicPath,asset:e.asset,"self-stretch":``,p2:``,"text-2xl":``},null,8,[`asset`])):e.asset.type===`text`&&!e.textContent?(o(),u(`div`,he)):e.asset.type===`text`&&e.textContent?(o(),u(`div`,ge,[_(`pre`,{"max-h-10rem":``,"of-hidden":``,"text-xs":``,"font-mono":``,textContent:p(e.textContent)},null,8,_e)])):e.asset.type===`video`?(o(),u(`div`,ve,[_(`video`,{src:e.asset.publicPath,autoplay:e.detail,controls:e.detail},null,8,ye)])):e.asset.type===`audio`?(o(),u(`div`,be,[e.detail?(o(),u(`audio`,{key:1,src:e.asset.publicPath,controls:``},null,8,Se)):(o(),u(`div`,xe))])):(o(),u(`div`,Ce))])}}}),{__name:`AssetPreview`}),we={relative:``,flex:`~ col gap-1`,hover:`bg-active`,"items-center":``,"of-hidden":``,rounded:``,p2:``},Te={"w-full":``,"of-hidden":``,truncate:``,"ws-nowrap":``,"text-center":``,"text-xs":``},Ee=Object.assign(a({__name:`AssetGridItem`,props:{asset:{},folder:{}},setup(e){let n=e,r=v(()=>n.folder&&n.asset.path.startsWith(n.folder)?n.asset.path.slice(n.folder.length):n.asset.path);return(n,i)=>{let a=V,s=Z;return o(),u(`button`,we,[e.asset.layer?(o(),h(a,{key:0,icon:`i-carbon-layers`,absolute:``,"right-4":``,"top-4":``,"bg-primary":``})):m(``,!0),t(s,{"h-30":``,"w-30":``,rounded:``,border:`~ base`,asset:e.asset},null,8,[`asset`]),_(`div`,Te,p(r.value),1)])}}}),{__name:`AssetGridItem`}),Q=Object.assign(a({__name:`AssetListItem`,props:{item:{},index:{default:0},modelValue:{}},setup(t,{emit:n}){let a=t,f=D(a,`modelValue`,n,{passive:!0}),b=v(()=>a.item?.children?.length),x=i(!0),S=v(()=>b.value?`i-carbon-folder`:a.item.type===`image`?`i-carbon-image`:a.item.type===`video`?`i-carbon-video`:a.item.type===`audio`?`i-carbon-volume-up`:a.item.type===`font`?`i-carbon-text-small-caps`:a.item.type===`text`?`i-carbon-document`:a.item.type===`json`?`i-carbon-json`:`i-carbon-document-blank`);return(n,i)=>{let a=V,v=Q;return o(),u(`div`,null,[_(`button`,{flex:`~ gap-2`,"w-full":``,"items-center":``,hover:`bg-active`,px4:``,py1:``,style:e({paddingLeft:`calc(1rem + ${t.index*1.5}em)`}),class:l({"bg-active":!b.value&&g(f)?.filePath===t.item?.filePath}),border:`b base`,onClick:i[0]||=e=>b.value?x.value=!x.value:f.value=t.item},[_(`div`,{class:l(S.value)},null,2),_(`span`,{class:l({"flex items-center":b.value}),"flex-auto":``,"text-start":``,"text-sm":``,"font-mono":``},[r(p(t.item.path)+` `,1),t.item.layer?(o(),h(a,{key:0,icon:`i-carbon-layers`,"bg-primary":``})):m(``,!0)],2),b.value?(o(),h(a,{key:0,icon:`carbon:chevron-right`,"transform-rotate":x.value?90:0,transition:``},null,8,[`transform-rotate`])):m(``,!0)],6),x.value?s(n.$slots,`default`,{},()=>[(o(!0),u(y,null,c(t.item?.children,e=>(o(),h(v,{key:e.filepath,modelValue:g(f),"onUpdate:modelValue":i[1]||=e=>d(f)?f.value=e:null,item:e,index:t.index+1},null,8,[`modelValue`,`item`,`index`]))),128))],void 0,0):m(``,!0)])}}}),{__name:`AssetListItem`}),De={flex:`~ col gap-4`,"min-h-full":``,"w-full":``,"of-hidden":``,p4:``},Oe={flex:`~`,"items-center":``,"justify-center":``},ke={"max-w-full":``,"w-full":``,"table-fixed":``},Ae={flex:`~ gap-1`,"w-full":``,"items-center":``},je={flex:`~ gap-1`,"w-full":``,"items-center":``,"of-hidden":``},Me={"flex-auto":``,"of-hidden":``,truncate:``,"ws-pre":``,"font-mono":``},Ne={capitalize:``},Pe={key:0},Fe={op70:``},Ie={flex:`~ gap2 wrap`},Le={flex:`~ col gap-4`,"min-h-full":``,"w-full":``,"of-hidden":``,p8:``},Re={flex:`~ gap2 wrap justify-center`},ze={flex:`~ col gap-4`,"min-h-full":``,"w-full":``,"of-hidden":``,p8:``},Be={flex:`~ gap2 wrap justify-center`},Ve={flex:`~ col gap-4`,"min-h-full":``,"w-full":``,"of-hidden":``,p4:``},$={flex:``,"justify-end":``,"gap-4":``},He=Object.assign(a({__name:`AssetDetails`,props:{modelValue:{}},setup(e,{emit:a}){let s=D(e,`modelValue`,a,{passive:!0}),c=P(async()=>{if(s.value.type===`image`)return N.getImageMeta(s.value.filePath)}),l=i(!1),d=i(),C=i(0),T=P(async()=>{if(s.value.type!==`text`)return;C.value;let e=await N.getTextAssetContent(s.value.filePath);return d.value=e,e});async function O(){if(T.value!==d.value)try{await N.writeStaticAssets([{path:s.value.path,content:d.value,override:!0}],``),l.value=!1,C.value++,B({message:`Updated`,icon:`i-carbon-checkmark`,classes:`text-green`})}catch(e){console.error(e),B({message:`Something went wrong!`,icon:`i-carbon-warning`,classes:`text-red`})}}let k=w(),A=v(()=>(k.value?._installedModules||[]).some(e=>e.meta?.name===`@nuxt/image`||e.meta?.name===`@nuxt/image-edge`||e.meta?.name===`@nuxt/image-nightly`)),j=v(()=>{let e=[];if(s.value.type===`image`){let t=c.value?.width?`\n width="${c.value.width}"\n height="${c.value.height}" `:` `;return e.push({lang:`vue-html`,code:`<img${t}\n src="${s.value.publicPath}"\n/>`,name:`Plain Image`}),A.value&&e.push({lang:`vue-html`,code:`<NuxtImg${t}\n src="${s.value.publicPath}"\n/>`,name:`Nuxt Img`,docs:`https://image.nuxt.com/usage/nuxt-img`},{lang:`vue-html`,code:`<NuxtPicture${t}\n src="${s.value.publicPath}"\n/>`,name:`Nuxt Picture`,docs:`https://image.nuxt.com/usage/nuxt-picture`}),e}return e.push({lang:`html`,code:`<a download href="${s.value.publicPath}">\n Download ${s.value.path.split(`/`).slice(-1)[0]}\n</a>`,name:`Download link`}),e}),M=ee(),F=te(),L=E(()=>s.value.mtime),z=v(()=>{let e=s.value.size;return e<1024?`${e} B`:e<1024*1024?`${(e/1024).toFixed(2)} KB`:`${(e/1024/1024).toFixed(2)} MB`}),V=v(()=>{if(!c.value?.width||!c.value?.height)return``;let e=(t,n)=>n?e(n,t%n):t,t=e(c.value.width,c.value.height);return t>3?`${c.value.width/t}:${c.value.height/t}`:``}),H=v(()=>[`image`,`text`,`video`,`audio`,`font`].includes(s.value.type)),U=i(!1);async function W(){try{await N.deleteStaticAsset(s.value.filePath),s.value=void 0,U.value=!1,B({message:`Asset deleted`,icon:`i-carbon-checkmark`,classes:`text-green`})}catch(e){console.error(e),B({message:`Something went wrong!`,icon:`i-carbon-warning`,classes:`text-red`})}}let G=i(!1),K=i(``);async function q(){let e=s.value.filePath.split(`/`),t=e.slice(-1)[0]?.split(`.`).slice(0,-1).join(`.`);if(!K.value||K.value===t)return B({message:`Please enter a new name`,icon:`i-carbon-warning`,classes:`text-orange`});try{let t=e.slice(-1)[0]?.split(`.`).slice(-1)[0],n=`${e.slice(0,-1).join(`/`)}/${K.value}.${t}`;await N.renameStaticAsset(s.value.filePath,n),s.value=void 0,G.value=!1,B({message:`Asset renamed`,icon:`i-carbon-checkmark`,classes:`text-green`})}catch(e){console.error(e),B({message:`Something went wrong!`,icon:`i-carbon-warning`,classes:`text-red`})}}return(e,i)=>{let a=Z,v=re,C=R,w=J,E=ne,D=I,k=n(`tooltip`);return o(),u(y,null,[_(`div`,De,[H.value?(o(),u(y,{key:0},[i[13]||=_(`div`,{flex:`~ gap2`,"mb--2":``,"items-center":``,op50:``},[_(`div`,{"x-divider":``}),_(`div`,{"flex-none":``},` Preview `),_(`div`,{"x-divider":``})],-1),_(`div`,Oe,[t(a,{detail:``,"max-h-80":``,"min-h-20":``,"min-w-20":``,"w-auto":``,rounded:``,border:`~ base`,asset:g(s),"text-content":g(T)},null,8,[`asset`,`text-content`])])],64)):m(``,!0),i[25]||=_(`div`,{flex:`~ gap2`,"mb--2":``,"items-center":``,op50:``},[_(`div`,{"x-divider":``}),_(`div`,{"flex-none":``},` Details `),_(`div`,{"x-divider":``})],-1),_(`table`,ke,[_(`tbody`,null,[_(`tr`,null,[i[14]||=_(`td`,{"w-30":``,"ws-nowrap":``,pr5:``,"text-right":``,op50:``},` Filepath `,-1),_(`td`,null,[_(`div`,Ae,[t(v,{filepath:g(s).filePath,"text-left":``},null,8,[`filepath`]),f(t(C,{"flex-none":``,title:`Open in Editor`,icon:`carbon-launch`,border:!1,onClick:i[0]||=e=>g(F)(g(s).filePath)},null,512),[[k,`Open in Editor`]])])])]),_(`tr`,null,[i[15]||=_(`td`,{"w-30":``,"ws-nowrap":``,pr5:``,"text-right":``,op50:``},` Public Path `,-1),_(`td`,null,[_(`div`,je,[_(`div`,Me,p(g(s).publicPath),1),f(t(C,{"flex-none":``,title:`Copy public path`,icon:`carbon-copy`,border:!1,onClick:i[1]||=e=>g(M)(g(s).publicPath,`assets-public-path`)},null,512),[[k,`Copy public path`]]),f(t(C,{"flex-none":``,to:g(s).publicPath,icon:`carbon-launch`,target:`_blank`,border:!1,title:`Open in browser`},null,8,[`to`]),[[k,`Open in browser`]])])])]),_(`tr`,null,[i[16]||=_(`td`,{"w-30":``,"ws-nowrap":``,pr5:``,"text-right":``,op50:``},` Type `,-1),_(`td`,Ne,p(g(s).type),1)]),g(c)?.width?(o(),u(y,{key:0},[_(`tr`,null,[i[17]||=_(`td`,{"w-30":``,"ws-nowrap":``,pr5:``,"text-right":``,op50:``},` Image Size `,-1),_(`td`,null,p(g(c).width)+` x `+p(g(c).height),1)]),V.value?(o(),u(`tr`,Pe,[i[18]||=_(`td`,{"w-30":``,"ws-nowrap":``,pr5:``,"text-right":``,op50:``},` Aspect Ratio `,-1),_(`td`,null,p(V.value),1)])):m(``,!0)],64)):m(``,!0),_(`tr`,null,[i[19]||=_(`td`,{"w-30":``,"ws-nowrap":``,pr5:``,"text-right":``,op50:``},` File size `,-1),_(`td`,null,p(z.value),1)]),_(`tr`,null,[i[20]||=_(`td`,{"w-30":``,"ws-nowrap":``,pr5:``,"text-right":``,op50:``},` Last modified `,-1),_(`td`,null,[r(p(new Date(g(s).mtime).toLocaleString())+` `,1),_(`span`,Fe,`(`+p(g(L))+`)`,1)])])])]),i[26]||=_(`div`,{flex:`~ gap2`,"mb--2":``,"items-center":``,op50:``},[_(`div`,{"x-divider":``}),_(`div`,{"flex-none":``},` Actions `),_(`div`,{"x-divider":``})],-1),_(`div`,Ie,[t(C,{to:g(s).publicPath,download:``,target:`_blank`,icon:`carbon-download`,n:`green`},{default:b(()=>[...i[21]||=[r(` Download `,-1)]]),_:1},8,[`to`]),g(s).type===`text`?(o(),h(C,{key:0,icon:`carbon-edit`,n:`cyan`,onClick:i[2]||=e=>l.value=!l.value},{default:b(()=>[...i[22]||=[r(` Edit `,-1)]]),_:1})):m(``,!0),t(C,{icon:`carbon-text-annotation-toggle`,n:`blue`,onClick:i[3]||=e=>G.value=!G.value},{default:b(()=>[...i[23]||=[r(` Rename `,-1)]]),_:1}),t(C,{icon:`carbon-delete`,n:`red`,onClick:i[4]||=e=>U.value=!U.value},{default:b(()=>[...i[24]||=[r(` Delete `,-1)]]),_:1})]),i[27]||=_(`div`,{"flex-auto":``},null,-1),j.value.length?(o(),h(w,{key:1,border:`t base`,"mx--4":``,"mb--4":``,"code-snippets":j.value},null,8,[`code-snippets`])):m(``,!0)]),t(E,{modelValue:U.value,"onUpdate:modelValue":i[6]||=e=>U.value=e},{default:b(()=>[_(`div`,Le,[i[30]||=_(`span`,null,` Are you sure you want to delete this asset? `,-1),_(`div`,Re,[t(C,{icon:`carbon-close`,onClick:i[5]||=e=>U.value=!1},{default:b(()=>[...i[28]||=[r(` Cancel `,-1)]]),_:1}),t(C,{icon:`carbon-delete`,n:`red`,onClick:W},{default:b(()=>[...i[29]||=[r(` Delete `,-1)]]),_:1})])])]),_:1},8,[`modelValue`]),t(E,{modelValue:G.value,"onUpdate:modelValue":i[9]||=e=>G.value=e},{default:b(()=>[_(`div`,ze,[t(D,{modelValue:K.value,"onUpdate:modelValue":i[7]||=e=>K.value=e,placeholder:`New name`,n:`blue`},null,8,[`modelValue`]),_(`div`,Be,[t(C,{icon:`carbon-close`,onClick:i[8]||=e=>G.value=!1},{default:b(()=>[...i[31]||=[r(` Cancel `,-1)]]),_:1}),t(C,{icon:`carbon-text-annotation-toggle`,n:`blue`,onClick:q},{default:b(()=>[...i[32]||=[r(` Rename `,-1)]]),_:1})])])]),_:1},8,[`modelValue`]),g(s).type===`text`?(o(),h(E,{key:0,modelValue:l.value,"onUpdate:modelValue":i[12]||=e=>l.value=e},{default:b(()=>[_(`div`,Ve,[f(_(`textarea`,{"onUpdate:modelValue":i[10]||=e=>d.value=e,placeholder:`Item value...`,class:`h-lg w-xl of-auto rounded-lg p-4 text-sm font-mono outline-none`,onKeydown:S(O,[`enter`])},null,544),[[x,d.value]]),_(`div`,$,[t(C,{icon:`carbon-close`,onClick:i[11]||=e=>l.value=!1},{default:b(()=>[...i[33]||=[r(` Cancel `,-1)]]),_:1}),t(C,{icon:`carbon:save`,n:`primary`,onClick:O},{default:b(()=>[...i[34]||=[r(` save `,-1)]]),_:1})])])]),_:1},8,[`modelValue`])):m(``,!0)],64)}}}),{__name:`AssetDetails`}),Ue={"h-full":``,"of-auto":``},We={"flex-none":``,flex:`~ gap2 items-center`,"text-lg":``},Ge={flex:`~ items-center justify-center`,absolute:``,"bottom--1":``,"right--1":``,"h-4":``,"w-4":``,"rounded-full":``,"bg-primary:30":``,"text-8px":``},Ke={flex:`~ col`,"w-30":``,"of-auto":``},qe={"text-xs":``,op75:``},Je={op50:``},Ye={key:0},Xe={"mt--4":``,px2:``,grid:`~ cols-minmax-8rem`},Ze={key:1,p2:``,grid:`~ cols-minmax-8rem`},Qe={key:1},$e=a({__name:`assets`,setup(e){W({icon:`carbon-image-copy`,title:`Assets`,layout:`full`});let r=C(),a=i(!1),s=i(``),l=v(()=>new L(r.value||[],{keys:[`path`]})),d=k(()=>{let e=[];for(let t of r.value||[]){let n=t.path.split(`.`).pop();n&&!e.some(e=>e.name===n)&&e.push({name:n,value:!0})}return e}),x=v(()=>(s.value?l.value.search(s.value).map(e=>e.item):r.value||[]).filter(e=>{let t=e.path.split(`.`).pop();return!t||d.some(e=>e.name===t&&e.value)})),S=v(()=>{let e={};for(let t of x.value){let n=`${t.path.split(`/`).slice(0,-1).join(`/`)}/`;e[n]||(e[n]=[]),e[n].push(t)}return Object.entries(e).sort(([e],[t])=>e.localeCompare(t))}),w=v(()=>{let e={path:`public`,children:[]},t=(e,n,r)=>{let[i,...a]=n,o=e.children.find(e=>e.path===i);o||(o={...r,path:i,children:[]},e.children.push(o)),a.length>1?t(o,a,r):a.length===1&&o.children.push({...r,path:a[0]})};return x.value.forEach(n=>{t(e,n.path.split(`/`).filter(e=>e!==``),n)}),e.children}),E=i(),{view:D}=F(`assets`);function O(){D.value=D.value===`list`?`grid`:`list`}T(`Escape`,()=>{E.value=void 0});let A=i();return(e,i)=>{let l=R,v=G,C=H,T=K,k=de,j=Ee,M=Y,N=Q,P=He,F=U,I=n(`tooltip`);return o(),u(`div`,Ue,[t(T,{ref_key:`navbar`,ref:A,search:s.value,"onUpdate:search":i[1]||=e=>s.value=e,pb2:``},{actions:b(()=>[_(`div`,We,[f(t(l,{icon:`carbon:cloud-upload`,title:`File Upload`,border:!1,onClick:i[0]||=e=>a.value=!a.value},null,512),[[I,`File Upload`,void 0,{"bottom-end":!0}]]),g(d).length?(o(),h(C,{key:0,direction:`end`,n:`sm primary`},{trigger:b(({click:e})=>[f(t(l,{icon:`carbon-filter`,border:!1,title:`Filter`,p3:``,"text-lg":``,onClick:t=>e()},null,8,[`onClick`]),[[I,`Filter`,void 0,{"bottom-end":!0}]]),_(`span`,Ge,p(g(d).length),1)]),default:b(()=>[_(`div`,Ke,[(o(!0),u(y,null,c(g(d),e=>(o(),h(v,{key:e.name,modelValue:e.value,"onUpdate:modelValue":t=>e.value=t,flex:`~ gap-2`,rounded:``,px2:``,py2:``},{default:b(()=>[_(`span`,qe,p(e.name),1)]),_:2},1032,[`modelValue`,`onUpdate:modelValue`]))),128))])]),_:1})):m(``,!0),f(t(l,{"text-lg":``,border:!1,icon:g(D)===`grid`?`i-carbon-list`:`i-carbon-grid`,title:`Toggle view`,onClick:O},null,8,[`icon`]),[[I,`Toggle View`,void 0,{"bottom-end":!0}]])])]),default:b(()=>[_(`div`,Je,[s.value?(o(),u(`span`,Ye,p(x.value.length)+` matched · `,1)):m(``,!0),_(`span`,null,p(g(r)?.length)+` assets in total`,1)])]),_:1},8,[`search`]),t(k,{modelValue:a.value,"onUpdate:modelValue":i[2]||=e=>a.value=e,folder:`/`},null,8,[`modelValue`]),g(D)===`grid`?(o(),u(y,{key:0},[S.value.length>1?(o(!0),u(y,{key:0},c(S.value,([e,t])=>(o(),h(M,{key:e,text:e,description:`${t.length} items`,open:t.length<=g(50),padding:!1},{default:b(()=>[_(`div`,Xe,[(o(!0),u(y,null,c(t,t=>(o(),h(j,{key:t.path,asset:t,folder:e,onClick:e=>E.value=t},null,8,[`asset`,`folder`,`onClick`]))),128))])]),_:2},1032,[`text`,`description`,`open`]))),128)):(o(),u(`div`,Ze,[(o(!0),u(y,null,c(x.value,e=>(o(),h(j,{key:e.path,asset:e,onClick:t=>E.value=e},null,8,[`asset`,`onClick`]))),128))]))],64)):(o(),u(`div`,Qe,[(o(!0),u(y,null,c(w.value,(e,t)=>(o(),h(N,{key:t,modelValue:E.value,"onUpdate:modelValue":i[3]||=e=>E.value=e,item:e},null,8,[`modelValue`,`item`]))),128))])),t(F,{"model-value":!!E.value,"auto-close":``,"w-120":``,top:A.value,onClose:i[5]||=e=>E.value=void 0},{default:b(()=>[E.value?(o(),h(P,{key:0,modelValue:E.value,"onUpdate:modelValue":i[4]||=e=>E.value=e},null,8,[`modelValue`])):m(``,!0)]),_:1},8,[`model-value`,`top`])])}}});export{$e as default};
@@ -1 +1 @@
1
- import{X as e}from"./vendor/json-editor-vue-c7zwcfg4.js";import{t}from"./_plugin-vue_export-helper-d9irwgla.js";var n={};function r(t,n){return e(t.$slots,`default`)}var i=Object.assign(t(n,[[`render`,r]]),{__name:`AuthRequiredPanel`});export{i as t};
1
+ import{X as e}from"./vendor/json-editor-vue-l1ffxhko.js";import{t}from"./_plugin-vue_export-helper-d9irwgla.js";var n={};function r(t,n){return e(t.$slots,`default`)}var i=Object.assign(t(n,[[`render`,r]]),{__name:`AuthRequiredPanel`});export{i as t};
@@ -1 +1 @@
1
- {"id":"9ec1ff21-8126-4e86-bc50-039a1d3867c9","timestamp":1784773549462}
1
+ {"id":"f408df35-fbed-4f67-b31a-84e2dcf7d5f4","timestamp":1784892349253}
@@ -0,0 +1 @@
1
+ {"id":"f408df35-fbed-4f67-b31a-84e2dcf7d5f4","timestamp":1784892349253,"prerendered":[]}
@@ -1 +1 @@
1
- import{At as e,Tt as t}from"./vendor/json-editor-vue-c7zwcfg4.js";var n,r=[];function i(e){if(r.push(e),!(typeof window>`u`))return window.__NUXT_DEVTOOLS__&&r.forEach(e=>e(window.__NUXT_DEVTOOLS__)),Object.defineProperty(window,"__NUXT_DEVTOOLS__",{set(e){e&&r.forEach(t=>t(e))},get(){return n.value},configurable:!0}),()=>{r.splice(r.indexOf(e),1)}}function a(){n||(n=t(),i(a));function r(){n&&e(n)}function a(e){n.value=e,e.host&&e.host.hooks.hook(`host:update:reactivity`,r)}return n}var o=a();export{o as t};
1
+ import{At as e,Tt as t}from"./vendor/json-editor-vue-l1ffxhko.js";var n,r=[];function i(e){if(r.push(e),!(typeof window>`u`))return window.__NUXT_DEVTOOLS__&&r.forEach(e=>e(window.__NUXT_DEVTOOLS__)),Object.defineProperty(window,"__NUXT_DEVTOOLS__",{set(e){e&&r.forEach(t=>t(e))},get(){return n.value},configurable:!0}),()=>{r.splice(r.indexOf(e),1)}}function a(){n||(n=t(),i(a));function r(){n&&e(n)}function a(e){n.value=e,e.host&&e.host.hooks.hook(`host:update:reactivity`,r)}return n}var o=a();export{o as t};