penambahan web socket

This commit is contained in:
2025-09-18 19:01:22 +07:00
parent 1d053646a9
commit d7bb2eb5bb
15070 changed files with 2402916 additions and 0 deletions

No files matched your search

@@ -0,0 +1,58 @@
import { addVitePlugin } from '@nuxt/kit';
import { resolve, join } from 'pathe';
import { readdir, lstat } from 'node:fs/promises';
import { createVitePluginInspect } from './vite-inspect.mjs';
import '@nuxt/devtools-kit';
async function getFolderSize(dir) {
const dirents = await readdir(dir, {
withFileTypes: true
});
if (dirents.length === 0)
return 0;
const files = [];
const directorys = [];
for (const dirent of dirents) {
if (dirent.isFile()) {
files.push(dirent);
continue;
}
if (dirent.isDirectory())
directorys.push(dirent);
}
const sizes = await Promise.all(
[
files.map(async (file) => {
const path = resolve(dir, file.name);
const { size } = await lstat(path);
return size;
}),
directorys.map((directory) => {
const path = resolve(dir, directory.name);
return getFolderSize(path);
})
].flat()
);
return sizes.reduce((total, size) => total += size, 0);
}
async function setup(nuxt, options) {
if (options.viteInspect !== false) {
addVitePlugin(
await createVitePluginInspect({
build: true,
outputDir: join(nuxt.options.analyzeDir, ".vite-inspect")
})
);
}
nuxt.hook("build:analyze:done", async (meta) => {
const _meta = meta;
_meta.size = _meta.size || {};
const dirs = [join(meta.buildDir, "dist/client"), meta.outDir];
const [clientBundleSize, nitroBundleSize] = await Promise.all(dirs.map(getFolderSize));
_meta.size.clientBundle = clientBundleSize;
_meta.size.nitroBundle = nitroBundleSize;
});
}
export { setup };
File diff suppressed because it is too large Load diff
@@ -0,0 +1,68 @@
function setup({ nuxt }) {
if (!nuxt.options.dev || nuxt.options.test)
return;
nuxt.hook("app:templates", (app) => {
app.templates.filter((i) => i.filename?.startsWith("plugins/")).forEach((i) => {
if (!i.getContents)
return;
const original = i.getContents;
i.getContents = async (...args) => {
let content = await original(...args);
const PAYLOAD_KEY = "__NUXT_DEVTOOLS_PLUGINS_METRIC__";
const WRAPPER_KEY = "__DEVTOOLS_WRAPPER__";
if (content.includes(PAYLOAD_KEY))
return content;
const snippets = `
if (!globalThis.${PAYLOAD_KEY}) {
Object.defineProperty(globalThis, '${PAYLOAD_KEY}', {
value: [],
enumerable: false,
configurable: true,
})
}
function ${WRAPPER_KEY} (plugin, src) {
if (!plugin)
return plugin
return defineNuxtPlugin({
...plugin,
async setup (...args) {
const start = performance.now()
const result = await plugin.apply(this, args)
const end = performance.now()
globalThis.${PAYLOAD_KEY}.push({
src,
start,
end,
duration: end - start,
})
return result
}
})
}
`;
const imports = Array.from(content.matchAll(/(?:\n|^)import (.*) from ['"](.*)['"]/g)).map(([, name, path]) => ({ name, path }));
content = content.replace(/\nexport default\s*\[([\s\S]*)\]/, (_, itemsRaw) => {
const items = itemsRaw.split(",").map((i2) => i2.trim()).map((i2) => {
const importItem = imports.find(({ name }) => name === i2);
if (!importItem)
return i2;
return `${WRAPPER_KEY}(${i2}, ${JSON.stringify(importItem.path)})`;
});
return `
${snippets}
export default [
${items.join(",\n")}
]
`;
});
content = `import { defineNuxtPlugin } from "#imports"
${content}`;
return content;
};
});
});
}
export { setup };
@@ -0,0 +1,73 @@
import { resolve } from 'pathe';
import semver from 'semver';
import { runtimeDir } from '../dirs.mjs';
import 'node:path';
import 'node:url';
import 'is-installed-globally';
function setup({ nuxt, options }) {
const helperPath = resolve(runtimeDir, "function-metrics-helpers");
const includeFrom = options.timeline?.functions?.includeFrom || [
"#app",
"@unhead/vue"
];
const include = options.timeline?.functions?.include || [
(i) => includeFrom.includes(i.from),
(i) => i.from.includes("composables")
];
const exclude = options.timeline?.functions?.exclude || [
/^define[A-Z]/
];
function filter(item) {
if (item.type)
return false;
const name = item.as || item.name;
if (!include.some((f) => typeof f === "function" ? f(item) : typeof f === "string" ? name === f : f.test(name)))
return false;
if (exclude.some((f) => typeof f === "function" ? f(item) : typeof f === "string" ? name === f : f.test(name)))
return false;
return true;
}
nuxt.hook("imports:context", (unimport) => {
const ctx = unimport.getInternalContext();
if (!ctx.version || !semver.gte(ctx.version, "3.1.0"))
throw new Error(`[Nuxt DevTools] The timeline feature requires \`unimport\` >= v3.1.0, but got \`${ctx.version || "(unknown)"}\`. Please upgrade using \`nuxi upgrade --force\`.`);
ctx.addons.push(
{
injectImportsResolved(imports, _code, id) {
if (id?.includes("?macro=true"))
return;
return imports.map((i) => {
if (!filter(i))
return i;
const name = i.as || i.name;
return {
...i,
meta: {
wrapperOriginalAs: name
},
as: `_$__${name}`
};
});
},
injectImportsStringified(str, imports, s, id) {
if (id?.includes("?macro=true"))
return;
const code = s.toString();
const injected = imports.filter((i) => i.meta?.wrapperOriginalAs);
if (injected.length) {
const result = [
str,
code.includes("__nuxtTimelineWrap") ? "" : `import { __nuxtTimelineWrap } from ${JSON.stringify(helperPath)}`,
...injected.map((i) => `const ${i.meta.wrapperOriginalAs} = __nuxtTimelineWrap(${JSON.stringify(i.name)}, ${i.as})`),
""
].join(";");
return result;
}
}
}
);
});
}
export { setup };
@@ -0,0 +1,61 @@
import { addCustomTab } from '@nuxt/devtools-kit';
import { addVitePlugin } from '@nuxt/kit';
async function createVitePluginInspect(options) {
return await import('vite-plugin-inspect').then((r) => r.default(options));
}
async function setup({ nuxt, rpc }) {
const plugin = await createVitePluginInspect();
addVitePlugin(plugin);
let api;
nuxt.hook("vite:serverCreated", () => {
api = plugin.api;
});
addCustomTab(() => ({
name: "builtin-vite-inspect",
title: "Inspect",
icon: "carbon-ibm-watson-discovery",
category: "advanced",
view: {
type: "iframe",
src: `${nuxt.options.app.baseURL}${nuxt.options.app.buildAssetsDir}/__inspect/`.replace(/\/\//g, "/")
}
}), nuxt);
async function getComponentsRelationships() {
const meta = await api?.rpc.getMetadata();
const modules = (meta ? await api?.rpc.getModulesList({
vite: meta?.instances[0].vite,
env: meta?.instances[0].environments[0]
}) : null) || [];
const components = await rpc.functions.getComponents() || [];
const vueModules = modules.filter((m) => {
const plainId = m.id.replace(/\?v=\w+$/, "");
if (components.some((c) => c.filePath === plainId))
return true;
return m.id.match(/\.vue($|\?v=)/);
});
const graph = vueModules.map((i) => {
function searchForVueDeps(id, seen = /* @__PURE__ */ new Set()) {
if (seen.has(id))
return [];
seen.add(id);
const module = modules.find((m) => m.id === id);
if (!module)
return [];
return module.deps.flatMap((i2) => {
if (vueModules.find((m) => m.id === i2))
return [i2];
return searchForVueDeps(i2, seen);
});
}
return {
id: i.id,
deps: searchForVueDeps(i.id)
};
});
return graph;
}
rpc.functions.getComponentsRelationships = getComponentsRelationships;
}
export { createVitePluginInspect, setup };
@@ -0,0 +1,196 @@
import { existsSync } from 'node:fs';
import fsp from 'node:fs/promises';
import { hostname } from 'node:os';
import { resolve } from 'node:path';
import { startSubprocess } from '@nuxt/devtools-kit';
import { logger } from '@nuxt/kit';
import { execa } from 'execa';
import { checkPort, getPort } from 'get-port-please';
import which from 'which';
import { L as LOG_PREFIX } from './module-main.mjs';
import 'consola/utils';
import 'pathe';
import 'sirv';
import 'vite';
import '../shared/devtools.Dlu0WIXO.mjs';
import '../dirs.mjs';
import 'node:url';
import 'is-installed-globally';
import 'ohash';
import 'birpc';
import 'structured-clone-es';
import 'simple-git';
import 'tinyglobby';
import 'image-meta';
import 'perfect-debounce';
import 'destr';
import '../../dist/runtime/shared/hooks.js';
import 'node:process';
import 'node:module';
import 'pkg-types';
import 'node:assert';
import 'node:v8';
import 'node:util';
import 'local-pkg';
import 'magicast';
import 'magicast/helpers';
import 'nypm';
import 'semver';
const codeBinaryOptions = {
"ms-code-cli": {
codeBinary: "code",
launchArg: "serve-web",
licenseTermsArg: "--accept-server-license-terms",
connectionTokenArg: "--without-connection-token"
},
"ms-code-server": {
codeBinary: "code-server",
launchArg: "serve-local",
licenseTermsArg: "--accept-server-license-terms",
connectionTokenArg: "--without-connection-token"
},
"coder-code-server": {
codeBinary: "code-server",
launchArg: "serve-local",
licenseTermsArg: "",
connectionTokenArg: ""
}
};
async function setup({ nuxt, options, openInEditorHooks, rpc }) {
const vsOptions = options?.vscode || {};
const codeServer = vsOptions?.codeServer || "ms-code-server";
const { codeBinary, launchArg, licenseTermsArg, connectionTokenArg } = codeBinaryOptions[codeServer];
const installed = !!await which(codeBinary).catch(() => null);
let port = vsOptions?.port || 3080;
let url = `http://localhost:${port}`;
const host = vsOptions?.host ? `--host=${vsOptions.host}` : "--host=127.0.0.1";
let loaded = false;
let promise = null;
const mode = vsOptions?.mode || "local-serve";
const computerHostName = vsOptions.tunnel?.name || hostname().split(".").join("");
const root = nuxt.options.rootDir;
const vscodeServerControllerFile = resolve(root, ".vscode", ".server-controller-port.log");
openInEditorHooks.push(async (file) => {
if (!existsSync(vscodeServerControllerFile))
return false;
try {
const { port: port2 } = JSON.parse(await fsp.readFile(vscodeServerControllerFile, "utf-8"));
const url2 = `http://localhost:${port2}/open?path=${encodeURIComponent(`${root}/${file}`)}`;
await fetch(url2);
rpc.broadcast.navigateTo("/modules/custom-builtin-vscode");
return true;
} catch (e) {
console.debug(`Failed to open file "${file}" in VS Code Server`);
console.debug(e);
return false;
}
});
async function startCodeServer() {
if (existsSync(vscodeServerControllerFile))
await fsp.rm(vscodeServerControllerFile, { force: true });
if (vsOptions?.reuseExistingServer && !await checkPort(port)) {
loaded = true;
url = `http://localhost:${port}/?folder=${encodeURIComponent(root)}`;
logger.info(LOG_PREFIX, `Existing VS Code Server found at port ${port}...`);
return;
}
port = await getPort({ port });
url = `http://localhost:${port}/?folder=${encodeURIComponent(root)}`;
logger.info(LOG_PREFIX, `Starting VS Code Server at ${url} ...`);
execa(codeBinary, [
"--install-extension",
"antfu.vscode-server-controller"
], { stderr: "inherit", stdout: "ignore", reject: false });
startSubprocess(
{
command: codeBinary,
args: [
launchArg,
licenseTermsArg,
connectionTokenArg,
`--port=${port}`,
host
]
},
{
id: "devtools:vscode",
name: "VS Code Server",
icon: "logos-visual-studio-code"
},
nuxt
);
for (let i = 0; i < 100; i++) {
if (await fetch(url).then((r) => r.ok).catch(() => false))
break;
await new Promise((resolve2) => setTimeout(resolve2, 500));
}
await new Promise((resolve2) => setTimeout(resolve2, 2e3));
loaded = true;
}
async function startCodeTunnel() {
const { stdout: currentDir } = await execa("pwd");
url = `https://vscode.dev/tunnel/${computerHostName}${currentDir}`;
logger.info(LOG_PREFIX, `Starting VS Code tunnel at ${url} ...`);
const command = execa("code", [
"tunnel",
"--accept-server-license-terms",
"--name",
`${computerHostName}`
]);
command.stderr?.pipe(process.stderr);
command.stdout?.pipe(process.stdout);
nuxt.hook("close", () => {
command.kill();
});
for (let i = 0; i < 100; i++) {
if (await fetch(url).then((r) => r.ok).catch(() => false))
break;
await new Promise((resolve2) => setTimeout(resolve2, 500));
}
await new Promise((resolve2) => setTimeout(resolve2, 2e3));
loaded = true;
}
async function start() {
if (mode === "tunnel")
await startCodeTunnel();
else
await startCodeServer();
}
nuxt.hook("devtools:customTabs", (tabs) => {
tabs.push({
name: "builtin-vscode",
title: "VS Code",
icon: "bxl-visual-studio",
category: "modules",
requireAuth: true,
view: !installed && !(vsOptions?.mode === "tunnel") ? {
type: "launch",
title: "Install VS Code Server",
description: `It seems you don't have code-server installed.
Learn more about it with <a href="https://code.visualstudio.com/blogs/2022/07/07/vscode-server" target="_blank">this guide</a>.
Once installed, restart Nuxt and visit this tab again.`,
actions: []
} : !loaded ? {
type: "launch",
description: "Launch VS Code right in the devtools!",
actions: [{
label: promise ? "Starting..." : "Launch",
pending: !!promise,
handle: () => {
promise = promise || start();
return promise;
}
}]
} : {
type: "iframe",
src: url
}
});
});
if (vsOptions?.startOnBoot)
promise = promise || start();
}
export { setup };
@@ -0,0 +1,19 @@
import { addPluginTemplate, resolvePath } from '@nuxt/kit';
import { join } from 'pathe';
import { runtimeDir } from '../dirs.mjs';
import 'node:path';
import 'node:url';
import 'is-installed-globally';
async function setup({ nuxt }) {
if (!nuxt.options.dev || nuxt.options.test)
return;
addPluginTemplate({
name: "vue-devtools-client",
mode: "client",
order: -1e3,
src: await resolvePath(join(runtimeDir, "vue-devtools-client"))
});
}
export { setup };
@@ -0,0 +1,14 @@
import { addVitePlugin } from '@nuxt/kit';
import { VueTracer } from 'vite-plugin-vue-tracer';
function setup({ nuxt, options }) {
if (!nuxt.options.dev || nuxt.options.test)
return;
if (!options.componentInspector)
return;
const plugin = VueTracer();
if (plugin)
addVitePlugin(plugin);
}
export { setup };
@@ -0,0 +1,29 @@
<!DOCTYPE html><html><head><meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/entry.css-ebiz9nsw.css" crossorigin>
<link rel="stylesheet" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/json-editor-vue.css-mqq5uooj.css" crossorigin>
<link rel="stylesheet" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/unocss.css-mhvipxpl.css" crossorigin>
<link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/e1928lvz.js">
<link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/json-editor-vue-nstwj98r.js">
<link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/shiki-jxvjmls6.js">
<link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/unocss-eh8khx5b.js">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/markdown-it-fvu08dbs.js">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/default-er15ytcq.js">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/full-eq6zlj3s.js">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/none-giyl4tlf.js">
<link rel="prefetch" as="style" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ncode-block.css-lvdc77tw.css">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/data-schema-drawer-c7c346do.js">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/nselect.vue-h7dqrznf.js">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/nswitch.vue-ihk2zmam.js">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ndropdown.vue-lqitnb0r.js">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ncode-block.vue-j1bpwykw.js">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/client-hkqvtzyx.js">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ndrawer.vue-mt6mb0ol.js">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/quicktype-core-o057hwfl.js">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/unocss-runtime-g9jktwmb.js">
<link rel="prefetch" as="style" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-404.css-z2gtwy9t.css">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-404-eq7j2f69.js">
<link rel="prefetch" as="style" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-500.css-liy0brxy.css">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-500-g4f9ioxi.js">
<script type="module" src="/__NUXT_DEVTOOLS_BASE__/_nuxt/e1928lvz.js" crossorigin></script></head><body><div id="__nuxt"></div><div id="teleports"></div><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1755823299371,false]</script>
<script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__NUXT_DEVTOOLS_BASE__/",buildId:"4d84ec87-f2c3-4b83-8664-cdcbe5c3aa91",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script></body></html>
@@ -0,0 +1,29 @@
<!DOCTYPE html><html><head><meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<link rel="stylesheet" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/entry.css-ebiz9nsw.css" crossorigin>
<link rel="stylesheet" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/json-editor-vue.css-mqq5uooj.css" crossorigin>
<link rel="stylesheet" href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/unocss.css-mhvipxpl.css" crossorigin>
<link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/e1928lvz.js">
<link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/json-editor-vue-nstwj98r.js">
<link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/shiki-jxvjmls6.js">
<link rel="modulepreload" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/unocss-eh8khx5b.js">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/markdown-it-fvu08dbs.js">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/default-er15ytcq.js">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/full-eq6zlj3s.js">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/none-giyl4tlf.js">
<link rel="prefetch" as="style" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ncode-block.css-lvdc77tw.css">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/data-schema-drawer-c7c346do.js">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/nselect.vue-h7dqrznf.js">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/nswitch.vue-ihk2zmam.js">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ndropdown.vue-lqitnb0r.js">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ncode-block.vue-j1bpwykw.js">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/client-hkqvtzyx.js">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/ndrawer.vue-mt6mb0ol.js">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/vendor/quicktype-core-o057hwfl.js">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/unocss-runtime-g9jktwmb.js">
<link rel="prefetch" as="style" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-404.css-z2gtwy9t.css">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-404-eq7j2f69.js">
<link rel="prefetch" as="style" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-500.css-liy0brxy.css">
<link rel="prefetch" as="script" crossorigin href="/__NUXT_DEVTOOLS_BASE__/_nuxt/error-500-g4f9ioxi.js">
<script type="module" src="/__NUXT_DEVTOOLS_BASE__/_nuxt/e1928lvz.js" crossorigin></script></head><body><div id="__nuxt"></div><div id="teleports"></div><script type="application/json" data-nuxt-data="nuxt-app" data-ssr="false" id="__NUXT_DATA__">[{"prerenderedAt":1,"serverRendered":2},1755823299372,false]</script>
<script>window.__NUXT__={};window.__NUXT__.config={public:{},app:{baseURL:"/__NUXT_DEVTOOLS_BASE__/",buildId:"4d84ec87-f2c3-4b83-8664-cdcbe5c3aa91",buildAssetsDir:"/_nuxt/",cdnURL:""}}</script></body></html>
@@ -0,0 +1 @@
import{p as e,J as n,$ as t}from"./vendor/json-editor-vue-nstwj98r.js";const c={"h-screen":"","w-screen":"","bg-black":""},r=e({__name:"__blank",setup(o){return(s,_)=>(t(),n("div",c))}});export{r as default};
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
img{-webkit-user-drag:none;-khtml-user-drag:none;-moz-user-drag:none;-o-user-drag:none;user-drag:none}
@@ -0,0 +1 @@
{"id":"4d84ec87-f2c3-4b83-8664-cdcbe5c3aa91","timestamp":1755823265824}
@@ -0,0 +1 @@
{"id":"4d84ec87-f2c3-4b83-8664-cdcbe5c3aa91","timestamp":1755823265824,"matcher":{"static":{},"wildcard":{},"dynamic":{}},"prerendered":[]}
@@ -0,0 +1 @@
import{n as f,O as r}from"./vendor/json-editor-vue-nstwj98r.js";let e;const n=[];function s(i){if(n.push(i),!(typeof window>"u"))return window.__NUXT_DEVTOOLS__&&n.forEach(o=>o(window.__NUXT_DEVTOOLS__)),Object.defineProperty(window,"__NUXT_DEVTOOLS__",{set(o){o&&n.forEach(t=>t(o))},get(){return e.value},configurable:!0}),()=>{n.splice(n.indexOf(i),1)}}function u(){e||(e=f(),s(o));function i(){e&&r(e)}function o(t){e.value=t,t.host&&t.host.hooks.hook("host:update:reactivity",i)}return e}const c=u();export{c as d};
@@ -0,0 +1,8 @@
import{_ as k}from"./ncode-block.vue-j1bpwykw.js";import{ao as D}from"./e1928lvz.js";import{p as I,q as T,k as j,E as y,U as q,$ as M}from"./vendor/json-editor-vue-nstwj98r.js";class z{diff(e,t,n={}){let o;typeof n=="function"?(o=n,n={}):"callback"in n&&(o=n.callback);const u=this.castInput(e,n),c=this.castInput(t,n),r=this.removeEmpty(this.tokenize(u,n)),s=this.removeEmpty(this.tokenize(c,n));return this.diffWithOptionsObj(r,s,n,o)}diffWithOptionsObj(e,t,n,o){var u;const c=d=>{if(d=this.postProcess(d,n),o){setTimeout(function(){o(d)},0);return}else return d},r=t.length,s=e.length;let l=1,i=r+s;n.maxEditLength!=null&&(i=Math.min(i,n.maxEditLength));const p=(u=n.timeout)!==null&&u!==void 0?u:1/0,f=Date.now()+p,a=[{oldPos:-1,lastComponent:void 0}];let h=this.extractCommon(a[0],t,e,0,n);if(a[0].oldPos+1>=s&&h+1>=r)return c(this.buildValues(a[0].lastComponent,t,e));let g=-1/0,w=1/0;const x=()=>{for(let d=Math.max(g,-l);d<=Math.min(w,l);d+=2){let C;const P=a[d-1],v=a[d+1];P&&(a[d-1]=void 0);let L=!1;if(v){const E=v.oldPos-d;L=v&&0<=E&&E<r}const _=P&&P.oldPos+1<s;if(!L&&!_){a[d]=void 0;continue}if(!_||L&&P.oldPos<v.oldPos?C=this.addToPath(v,!0,!1,0,n):C=this.addToPath(P,!1,!0,1,n),h=this.extractCommon(C,t,e,d,n),C.oldPos+1>=s&&h+1>=r)return c(this.buildValues(C.lastComponent,t,e))||!0;a[d]=C,C.oldPos+1>=s&&(w=Math.min(w,d-1)),h+1>=r&&(g=Math.max(g,d+1))}l++};if(o)(function d(){setTimeout(function(){if(l>i||Date.now()>f)return o(void 0);x()||d()},0)})();else for(;l<=i&&Date.now()<=f;){const d=x();if(d)return d}}addToPath(e,t,n,o,u){const c=e.lastComponent;return c&&!u.oneChangePerToken&&c.added===t&&c.removed===n?{oldPos:e.oldPos+o,lastComponent:{count:c.count+1,added:t,removed:n,previousComponent:c.previousComponent}}:{oldPos:e.oldPos+o,lastComponent:{count:1,added:t,removed:n,previousComponent:c}}}extractCommon(e,t,n,o,u){const c=t.length,r=n.length;let s=e.oldPos,l=s-o,i=0;for(;l+1<c&&s+1<r&&this.equals(n[s+1],t[l+1],u);)l++,s++,i++,u.oneChangePerToken&&(e.lastComponent={count:1,previousComponent:e.lastComponent,added:!1,removed:!1});return i&&!u.oneChangePerToken&&(e.lastComponent={count:i,previousComponent:e.lastComponent,added:!1,removed:!1}),e.oldPos=s,l}equals(e,t,n){return n.comparator?n.comparator(e,t):e===t||!!n.ignoreCase&&e.toLowerCase()===t.toLowerCase()}removeEmpty(e){const t=[];for(let n=0;n<e.length;n++)e[n]&&t.push(e[n]);return t}castInput(e,t){return e}tokenize(e,t){return Array.from(e)}join(e){return e.join("")}postProcess(e,t){return e}get useLongestToken(){return!1}buildValues(e,t,n){const o=[];let u;for(;e;)o.push(e),u=e.previousComponent,delete e.previousComponent,e=u;o.reverse();const c=o.length;let r=0,s=0,l=0;for(;r<c;r++){const i=o[r];if(i.removed)i.value=this.join(n.slice(l,l+i.count)),l+=i.count;else{if(!i.added&&this.useLongestToken){let p=t.slice(s,s+i.count);p=p.map(function(f,a){const h=n[l+a];return h.length>f.length?h:f}),i.value=this.join(p)}else i.value=this.join(t.slice(s,s+i.count));s+=i.count,i.added||(l+=i.count)}}return o}}class A extends z{constructor(){super(...arguments),this.tokenize=N}equals(e,t,n){return n.ignoreWhitespace?((!n.newlineIsToken||!e.includes(`
`))&&(e=e.trim()),(!n.newlineIsToken||!t.includes(`
`))&&(t=t.trim())):n.ignoreNewlineAtEof&&!n.newlineIsToken&&(e.endsWith(`
`)&&(e=e.slice(0,-1)),t.endsWith(`
`)&&(t=t.slice(0,-1))),super.equals(e,t,n)}}const V=new A;function W(m,e,t){return V.diff(m,e,t)}function N(m,e){e.stripTrailingCr&&(m=m.replace(/\r\n/g,`
`));const t=[],n=m.split(/(\n|\r\n)/);n[n.length-1]||n.pop();for(let o=0;o<n.length;o++){const u=n[o];o%2&&!e.newlineIsToken?t[t.length-1]+=u:t.push(u)}return t}const B=I({__name:"CodeDiff",props:{from:{},to:{},lang:{}},setup(m){const e=m;function t(r,s){const l=W(r.trim(),s.trim()),i=[],p=[],f=[];for(const a of l){const h=a.value.trimEnd().split(`
`);for(const g of h)a.added?(i.push(f.length),f.push(g)):(a.removed&&p.push(f.length),f.push(g))}return{added:i,removed:p,result:f.join(`
`)}}const n=T(()=>t(e.from,e.to));function o(r){let s=0;return r.replace(/class="shiki/,'class="shiki diff').replace(/class="line"/g,l=>(s++,n.value.added.includes(s-1)?'class="line line-added"':n.value.removed.includes(s-1)?'class="line line-removed"':l))}const u=j();y(c);function c(){const r=D(u);r&&r.querySelector(".line-added,.line-removed")?.scrollIntoView()}return(r,s)=>{const l=k;return M(),q(l,{ref_key:"elRef",ref:u,code:n.value.result,lang:r.lang,"transform-rendered":o,onLoaded:c},null,8,["code","lang"])}}});export{B as _};
@@ -0,0 +1 @@
import{_ as g}from"./ncode-block.vue-j1bpwykw.js";import{a as C,_ as x}from"./e1928lvz.js";import{p as S,n as w,q as B,w as N,J as n,a1 as r,$ as a,a0 as s,F as d,ag as V,a4 as i,a8 as $,X as u,U as T,V as v,ab as m,u as h}from"./vendor/json-editor-vue-nstwj98r.js";const D={key:0,relative:"","n-code-block":""},E={flex:"~ wrap","w-full":""},F=["onClick"],L={flex:"~ gap-2",px3:"",pb3:"",n:"sm primary"},U=S({__name:"CodeSnippets",props:{codeSnippets:{},eventType:{}},setup(f){const l=f,e=w(l.codeSnippets[0]),_=C(),b=B(()=>e.value?.lang||"text");return N(()=>{l.codeSnippets.includes(e.value)||(e.value=l.codeSnippets[0])}),(p,o)=>{const k=g,c=x;return p.codeSnippets.length?(a(),n("div",D,[s("div",E,[(a(!0),n(d,null,V(p.codeSnippets,(t,y)=>(a(),n("button",{key:y,px4:"",py2:"",border:"r base",hover:"bg-active",class:i(t===e.value?"":"border-b"),onClick:q=>e.value=t},[s("div",{class:i(t===e.value?"":"op30"),"font-mono":""},$(t.name),3)],10,F))),128)),o[1]||(o[1]=s("div",{border:"b base","flex-auto":""},null,-1))]),e.value?(a(),n(d,{key:0},[u(k,{code:e.value.code,lang:b.value,lines:!1,"w-full":"","of-auto":"",p3:""},null,8,["code","lang"]),s("div",L,[u(c,{icon:"carbon-copy",onClick:o[0]||(o[0]=t=>h(_)(e.value.code,p.eventType||`code-snippet-${e.value.name}`))},{default:v(()=>[...o[2]||(o[2]=[m(" Copy ",-1)])]),_:1}),e.value?.docs?(a(),T(c,{key:0,to:e.value.docs,target:"_blank",icon:"carbon-catalog"},{default:v(()=>[...o[3]||(o[3]=[m(" Docs ",-1)])]),_:1},8,["to"])):r("",!0)])],64)):r("",!0)])):r("",!0)}}});export{U as _};
@@ -0,0 +1 @@
function n(o,r=65,e=50,l=1){let t=0;for(let h=0;h<o.length;h++)t=o.charCodeAt(h)+((t<<5)-t);return`hsla(${t%360}, ${r}%, ${e}%, ${l})`}export{n as g};
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
import{a as $,w as U,I as E,_ as F}from"./e1928lvz.js";import{_ as j}from"./nmarkdown.vue-n5lhcplj.js";import{_ as S}from"./filepath-item.vue-kxrtauqr.js";import{k as q}from"./index-jc4yj4to.js";import{C as y}from"./constants-b32h69zq.js";import{p as z,q as r,Z as J,U as i,$ as s,V as m,a0 as a,a4 as L,J as p,a1 as l,ab as c,a8 as _,X as b,u as k,F as x,ag as M}from"./vendor/json-editor-vue-nstwj98r.js";const O={rounded:"","font-mono":""},T={key:0,"text-primary":""},W={key:0},X={title:"Vue Directive"},Z={"max-w-100":""},A={px4:"",py3:"","text-sm":""},G={flex:"~ gap2",n:"primary xs"},H={border:"t base","max-h-60":"","of-auto":"",px4:"",py3:""},K={"text-sm":""},P={"text-primary":""},Q={flex:"~ col gap-2","items-start":"",pt3:"","text-sm":"",op75:""},R={key:1,"text-sm":"",op50:""},ne=z({__name:"ComposableItem",props:{item:{},isDirective:{type:Boolean,default:!1},metadata:{},filepath:{},counter:{type:Boolean,default:!0},classes:{default:"px2 py1 text-sm bg-gray:5 "}},setup(g){const o=g,C=$(),h=U(),u=r(()=>o.item.as||o.item.name),D=r(()=>{let e=u.value;return o.isDirective&&(e[0]!=="v"&&(e=`v${e}`),e=q(e)),e}),n=r(()=>o.metadata?.injectionUsage?.[u.value]?.count||0),N=r(()=>(o.metadata?.injectionUsage?.[u.value]?.moduleIds||[]).filter(e=>!e.endsWith("?macro=true"))),v=r(()=>o.item.meta?.docsUrl?o.item.meta.docsUrl:["nuxt","#app","nuxt3"].includes(o.item.from)?y.nuxt[o.item.name]:o.item.from==="vue"?y.vue[o.item.name]:null);return(e,t)=>{const w=E,I=j,f=F,V=S,B=J("VDropdown");return s(),i(B,{disabled:!o.metadata},{popper:m(()=>[a("div",Z,[a("div",A,[e.item.meta?.description?(s(),i(I,{key:0,tag:"div",pb3:"","text-sm":"",markdown:e.item.meta.description},null,8,["markdown"])):l("",!0),a("div",G,[b(f,{icon:"carbon-copy",onClick:t[0]||(t[0]=d=>k(C)(D.value,"imports-name"))},{default:m(()=>[...t[2]||(t[2]=[c(" Copy ",-1)])]),_:1}),e.filepath?(s(),i(f,{key:0,icon:"carbon-code",onClick:t[1]||(t[1]=d=>e.filepath&&k(h)(e.filepath))},{default:m(()=>[...t[3]||(t[3]=[c(" Source ",-1)])]),_:1})):l("",!0),v.value?(s(),i(f,{key:1,icon:"carbon-catalog",to:v.value,target:"_blank"},{default:m(()=>[...t[4]||(t[4]=[c(" Docs ",-1)])]),_:1},8,["to"])):l("",!0)])]),a("div",H,[n.value?(s(),p(x,{key:0},[a("div",K,[t[5]||(t[5]=a("span",{op50:""},"It has been referenced ",-1)),a("strong",P,_(n.value),1),t[6]||(t[6]=a("span",{op50:""}," times by:",-1))]),a("div",Q,[(s(!0),p(x,null,M(N.value,d=>(s(),i(V,{key:d,filepath:d},null,8,["filepath"]))),128))])],64)):(s(),p("div",R," Not in use via auto import. "))])])]),default:m(()=>[a("button",{"hover:text-primary":"",class:L([e.metadata&&!n.value?"op30 hover:op100":"",e.classes])},[a("code",O,[c(_(u.value)+" ",1),n.value&&e.counter?(s(),p("sup",T,"x"+_(n.value),1)):l("",!0)]),e.isDirective?(s(),p("sup",W,[a("abbr",X,[b(w,{icon:"tabler:hexagon-letter-d"})])])):l("",!0)],2)]),_:1},8,["disabled"])}}});export{ne as _};
@@ -0,0 +1 @@
const t=50,e={nuxt:{useAppConfig:"https://nuxt.com/docs/api/composables/use-app-config",useAsyncData:"https://nuxt.com/docs/api/composables/use-async-data",useCookie:"https://nuxt.com/docs/api/composables/use-cookie",useError:"https://nuxt.com/docs/api/composables/use-error",useFetch:"https://nuxt.com/docs/api/composables/use-fetch",useHead:"https://nuxt.com/docs/api/composables/use-head",useHeadSafe:"https://nuxt.com/docs/api/composables/use-head-safe",useLazyAsyncData:"https://nuxt.com/docs/api/composables/use-lazy-async-data",useLazyFetch:"https://nuxt.com/docs/api/composables/use-lazy-fetch",useNuxtApp:"https://nuxt.com/docs/api/composables/use-nuxt-app",useRoute:"https://nuxt.com/docs/api/composables/use-route",useRouter:"https://nuxt.com/docs/api/composables/use-router",useRuntimeConfig:"https://nuxt.com/docs/api/composables/use-runtime-config",useState:"https://nuxt.com/docs/api/composables/use-state",$fetch:"https://nuxt.com/docs/api/utils/dollarfetch",abortNavigation:"https://nuxt.com/docs/api/utils/abort-navigation",createError:"https://nuxt.com/docs/api/utils/create-error",defineNuxtComponent:"https://nuxt.com/docs/api/utils/define-nuxt-component",definePageMeta:"https://nuxt.com/docs/api/utils/define-page-meta",navigateTo:"https://nuxt.com/docs/api/utils/navigate-to#navigateto",onBeforeRouteLeave:"https://nuxt.com/docs/api/utils/on-before-route-leave",onBeforeRouteUpdate:"https://nuxt.com/docs/api/utils/on-before-route-update",updateAppConfig:"https://nuxt.com/docs/api/utils/update-app-config"},vue:{ref:"https://vuejs.org/api/reactivity-core.html#ref",computed:"https://vuejs.org/api/reactivity-core.html#computed",reactive:"https://vuejs.org/api/reactivity-core.html#reactive",watch:"https://vuejs.org/api/reactivity-core.html#watch",watchEffect:"https://vuejs.org/api/reactivity-core.html#watcheffect",watchPostEffect:"https://vuejs.org/api/reactivity-core.html#watchposteffect",watchSyncEffect:"https://vuejs.org/api/reactivity-core.html#watchsynceffect",onMounted:"https://vuejs.org/api/composition-api-lifecycle.html#onmounted",onUnmounted:"https://vuejs.org/api/composition-api-lifecycle.html#onunmounted",onActivated:"https://vuejs.org/api/composition-api-lifecycle.html#onactivated",onDeactivated:"https://vuejs.org/api/composition-api-lifecycle.html#ondeactivated",onBeforeMount:"https://vuejs.org/api/composition-api-lifecycle.html#onbeforemount",onBeforeUnmount:"https://vuejs.org/api/composition-api-lifecycle.html#onbeforeunmount",onUpdated:"https://vuejs.org/api/composition-api-lifecycle.html#onupdated",onBeforeUpdate:"https://vuejs.org/api/composition-api-lifecycle.html#onbeforeupdate",nextTick:"https://vuejs.org/api/general.html#nexttick"}},o={snippet:"i-carbon-code",headers:"i-carbon-html-reference",cookies:"i-carbon-cookie",params:"i-carbon-text-selection",query:"i-carbon-help",body:"i-carbon-document"};export{e as C,t as D,o as S};
@@ -0,0 +1 @@
import{a4 as M,ba as j,bb as E,bc as N,a6 as V,l as B,ag as k,bd as D,r as I,n as L,j as P,aa as W}from"./e1928lvz.js";import{p as $,k as C,q as x,r as O,E as q,z as R,w as _,M as S,J as U,$ as n,U as u,V as y,a0 as r,ab as w,a8 as A,u as T,af as F,X}from"./vendor/json-editor-vue-nstwj98r.js";import{_ as z}from"./launch-page.vue-e2fz4zcd.js";import"./vendor/shiki-jxvjmls6.js";import"./vendor/unocss-eh8khx5b.js";import"./nmarkdown.vue-n5lhcplj.js";import"./client-hkqvtzyx.js";const h=new Map,G=$({__name:"IframeView",props:{tab:{}},setup(f){const m=f,c=M(),d=C(),s=x(()=>m.tab.name),e=C(),t=O(j(d));q(()=>{const o=m.tab.view,l=o.persistent!==!1,b=["clipboard-write","clipboard-read"];if(h.get(s.value)&&l)e.value=h.get(s.value),e.value.style.visibility="visible";else{e.value=document.createElement("iframe"),e.value.setAttribute("allow",b.join("; ")),e.value.setAttribute("aria-label","Nuxt Devtools"),l&&h.set(s.value,e.value),e.value.src=o.src;try{e.value.style.opacity="0.01",e.value.onload=()=>{v(),i(),e.value.style.opacity="1"}}catch{e.value.style.opacity="1"}document.body.appendChild(e.value),R(p)}setTimeout(i,100)}),_(p),_(i),_(v),S(()=>{e.value&&(e.value.style.visibility="hidden")});function i(){if(!(!e.value||!e.value.contentWindow))try{const o=e.value.contentWindow.document.querySelector("html");o?.classList.toggle("dark",c.value==="dark"),o?.classList.toggle("light",c.value==="dark"),new MutationObserver(()=>{c.value=e.value?.contentWindow?.document.querySelector("html")?.classList.contains("dark")?"dark":"light"}).observe(o,{attributes:!0,attributeFilter:["class"]})}catch{}}const a=E();function v(){if(!(!e.value||!e.value.contentWindow))try{e.value.contentWindow.__NUXT_DEVTOOLS__=a.value}catch{}}function p(){e.value&&Object.assign(e.value.style,{position:"fixed",left:`${t.left}px`,top:`${t.top}px`,width:`${t.width}px`,height:`${t.height}px`,outline:"none"})}return(o,l)=>(n(),U("div",{ref_key:"anchor",ref:d,"h-full":"","w-full":""},null,512))}}),J={flex:"~ col gap2",mxa:"","items-center":""},H={"text-xl":""},K={"text-rose":""},ne=$({__name:"custom-[name]",props:{name:{}},setup(f){const m=f,c=N(),d=V(),s=x(()=>m.name??c.params.name),e=B(),t=x(()=>e.value.find(i=>i.name===s.value));return q(()=>{t.value?t.value.requireAuth&&!k.value&&D():setTimeout(()=>{t.value||d.push("/modules/overview")},2e3)}),(i,a)=>{const v=P,p=W,o=G,l=z,b=L;return t.value?t.value.requireAuth&&!T(k)?(n(),u(p,{key:1})):t.value.view.type==="iframe"?(n(),u(o,{key:2,tab:t.value},null,8,["tab"])):t.value.view.type==="vnode"?(n(),u(F(t.value.view.vnode),{key:3})):t.value.view.type==="launch"?(n(),u(l,{key:4,name:`custom-${t.value.name}`,icon:t.value.view.icon||t.value.icon,title:t.value.view.title||t.value.title,description:t.value.view.description,actions:t.value.view.actions,onAction:a[0]||(a[0]=g=>T(I).customTabAction(t.value.name,g))},null,8,["name","icon","title","description","actions"])):(n(),u(v,{key:5},{default:y(()=>[X(b,{flex:"~ col","h-full":"","items-center":"","justify-center":""},{default:y(()=>[w(" Unknown tab type "+A(t.value.view),1)]),_:1})]),_:1})):(n(),u(v,{key:0},{default:y(()=>[r("div",J,[a[3]||(a[3]=r("div",{"i-carbon-queued":"",mb2:"","text-5xl":"",op50:""},null,-1)),r("p",H,[a[1]||(a[1]=w(" Tab ",-1)),r("code",K,A(s.value),1),a[2]||(a[2]=w(" not found ",-1))]),a[4]||(a[4]=r("p",{op50:""}," It might because the module contributing this tab is not installed or enabled ",-1)),a[5]||(a[5]=r("p",{mt8:"","animate-pulse":""}," Redirecting to overview page... ",-1))])]),_:1}))}}});export{ne as default};
@@ -0,0 +1 @@
import{u as r,_ as c}from"./e1928lvz.js";import{p as s,ai as i,ac as p,$ as _,U as m}from"./vendor/json-editor-vue-nstwj98r.js";const D=s({__name:"DataSchemaButton",props:{getter:{type:Function}},setup(u){const t=r();return(o,e)=>{const n=c,a=i("tooltip");return p((_(),m(n,{title:"Generate Data Schema",icon:"carbon:container-services",border:!1,onClick:e[0]||(e[0]=l=>t.value=o.getter())},null,512)),[[a,"Generate Data Schema"]])}}});export{D as _};
@@ -0,0 +1,2 @@
import{_ as A}from"./nselect.vue-h7dqrznf.js";import{u as E,c as F,a as W,_ as q}from"./e1928lvz.js";import{_ as z}from"./nswitch.vue-ihk2zmam.js";import{_ as J}from"./ndropdown.vue-lqitnb0r.js";import{_ as O}from"./ncode-block.vue-j1bpwykw.js";import{_ as X}from"./ndrawer.vue-mt6mb0ol.js";import{A as h,d as x}from"./vendor/quicktype-core-o057hwfl.js";import{p as G,k,q as N,x as C,U as c,a1 as m,$ as n,X as d,V as r,a0 as i,J as f,F as D,ag as $,u as _,a8 as V,ae as H}from"./vendor/json-editor-vue-nstwj98r.js";import"./vendor/shiki-jxvjmls6.js";import"./vendor/unocss-eh8khx5b.js";import"./client-hkqvtzyx.js";const K={border:"b base",flex:"~ items-center gap-2",sticky:"","left-0":"","right-0":"","top-0":"","z-1":"","bg-base":"",p3:""},M={key:0,flex:"~ items-center justify-center",absolute:"","bottom--1":"","right--2":"","h-4":"","w-4":"","rounded-full":"","bg-lime:30":"","text-8px":""},P={flex:"~ col","w-100":"","of-auto":"",py2:""},Q={"text-xs":"",capitalize:"",op75:""},ie=G({__name:"DataSchemaDrawer",setup(R){const s=E(),b=k(0),l=k("TypeScript"),v=N(()=>h.all.find(e=>e.displayName===l.value)),o=k(v.value?.optionDefinitions.filter(e=>typeof e.defaultValue=="boolean")),y=F(async()=>{if(b.value,!s.value)return"";const e=x.jsonInputForTargetLanguage(l.value);await e.addSource({name:s.value.name??"Data",samples:[s.value.input]});const t=new x.InputData;return t.addInput(e),(await x.quicktype({inputData:t,lang:l.value,rendererOptions:o.value?.reduce((u,p)=>(u[p.name]=p.defaultValue,u),{})})).lines.join(`
`)}),j=N(()=>{const e=l.value.toLocaleLowerCase();return e.startsWith("javascript")?"javascript":e.startsWith("json")?"json":e.startsWith("typescript")?"typescript":e});C(o,()=>{b.value++},{deep:!0}),C(l,()=>{o.value=v.value?.optionDefinitions.filter(e=>typeof e.defaultValue=="boolean")});const S=W();function B(){S(y.value||"")}return(e,t)=>{const w=A,u=q,p=z,L=J,I=O,T=X;return v.value?(n(),c(H,{key:0,to:"body"},[d(T,{"model-value":!!_(s)?.input,"auto-close":"","max-w-screen":"","w-2xl":"","n-code-block":"",onClose:t[2]||(t[2]=a=>s.value=null)},{default:r(()=>[i("div",K,[t[3]||(t[3]=i("p",{"mr-2":""}," Schema ",-1)),d(w,{modelValue:l.value,"onUpdate:modelValue":t[0]||(t[0]=a=>l.value=a),n:"xs primary"},{default:r(()=>[(n(!0),f(D,null,$(_(h.all),a=>(n(),f("option",{key:a.displayName},V(a.displayName),1))),128))]),_:1},8,["modelValue"]),o.value?.length?(n(),c(L,{key:0,n:"sm lime"},{trigger:r(({click:a})=>[d(u,{icon:"carbon-settings","h-full":"",onClick:g=>a()},null,8,["onClick"]),o.value?(n(),f("span",M,V(o.value.length),1)):m("",!0)]),default:r(()=>[i("div",P,[(n(!0),f(D,null,$(o.value,(a,g)=>(n(),c(p,{key:a.name,modelValue:o.value[g].defaultValue,"onUpdate:modelValue":U=>o.value[g].defaultValue=U,flex:"~ gap-2",rounded:"",px2:"",py2:""},{default:r(()=>[i("span",Q,V(a.description),1)]),_:2},1032,["modelValue","onUpdate:modelValue"]))),128))])]),_:1})):m("",!0),t[4]||(t[4]=i("div",{"flex-auto":""},null,-1)),d(u,{icon:"carbon-copy","mr-6":"","h-full":"",onClick:t[1]||(t[1]=a=>B())})]),_(y)?(n(),c(I,{key:0,lang:j.value,code:_(y)},null,8,["lang","code"])):m("",!0)]),_:1},8,["model-value"])])):m("",!0)}}});export{ie as default};
@@ -0,0 +1 @@
import{_ as D}from"./nsection-block-i439i28t.js";import{_ as H}from"./ncheckbox.vue-ktgiyht2.js";import{g as M}from"./color-mt9xuhgy.js";import{_ as I}from"./nbadge-oryc1shd.js";import{p as V,q as R,U as y,$ as l,V as d,ab as P,W as j,a8 as k,a2 as z,k as p,J as u,F as x,a0 as t,X as s,a1 as $,ag as B,a4 as E,u as N}from"./vendor/json-editor-vue-nstwj98r.js";import{_ as W,p as O}from"./e1928lvz.js";import{_ as q}from"./filepath-item.vue-kxrtauqr.js";import{_ as J}from"./ncode-block.vue-j1bpwykw.js";import"./nicon-title.vue-mr03t3pg.js";import"./vendor/shiki-jxvjmls6.js";import"./vendor/unocss-eh8khx5b.js";import"./client-hkqvtzyx.js";const K=V({__name:"NBadgeHashed",props:{text:{}},setup(_){const i=_,c=R(()=>{const a=M(i.text,50,60),r=M(i.text,50,60,.05);return{color:a,background:r}});return(a,r)=>(l(),y(I,{style:z(c.value)},{default:d(()=>[P(k(a.text),1),j(a.$slots,"default")]),_:3},8,["style"]))}}),L={flex:"~ gap-2 col",mb4:""},X={flex:"~ gap-3 items-center"},A={key:0,flex:"~ gap-1","items-center":"",p1:"",border:"~ base rounded"},G={"max-w-full":"","of-auto":""},Q={"text-center":"",op50:""},Y={flex:"~",px4:""},Z={key:0,op50:""},ee={px2:"","text-center":""},te={"of-auto":""},oe=V({__name:"DebugModuleMutationRecords",props:{moduleMutationRecords:{}},setup(_){const i=_;function c(n){return n.startsWith("/")||n.match(/^[a-z]:[\\/]/i)}const a=p(!1),r=p(!1),v=p(!1),b=p(!1),w=p(!1),m=p(""),S=R(()=>{let n=i.moduleMutationRecords;return a.value||(n=n.filter(e=>!e.name.startsWith("nuxt:")&&e.name!=="@nuxt/devtools")),r.value||(n=n.filter(e=>e.keys.join(".")!=="build.templates")),v.value||(n=n.filter(e=>e.keys.join(".")!=="build.transpile")),b.value||(n=n.filter(e=>e.keys.join(".")!=="plugins")),w.value||(n=n.filter(e=>e.method||e.value!=="[]"&&e.value!=="{}")),m.value&&(n=n.filter(e=>e.name===m.value)),n});return(n,e)=>{const f=H,g=K,F=W,U=q,T=J;return l(),u(x,null,[t("div",L,[t("div",X,[s(f,{modelValue:a.value,"onUpdate:modelValue":e[0]||(e[0]=o=>a.value=o),n:"primary"},{default:d(()=>[...e[6]||(e[6]=[t("span",{"ws-nowrap":"",op75:""},"Builtin Modules",-1)])]),_:1},8,["modelValue"]),s(f,{modelValue:r.value,"onUpdate:modelValue":e[1]||(e[1]=o=>r.value=o),n:"primary"},{default:d(()=>[...e[7]||(e[7]=[t("span",{"ws-nowrap":"",op75:""},"Templates",-1)])]),_:1},8,["modelValue"]),s(f,{modelValue:v.value,"onUpdate:modelValue":e[2]||(e[2]=o=>v.value=o),n:"primary"},{default:d(()=>[...e[8]||(e[8]=[t("span",{"ws-nowrap":"",op75:""},"Transpile",-1)])]),_:1},8,["modelValue"]),s(f,{modelValue:b.value,"onUpdate:modelValue":e[3]||(e[3]=o=>b.value=o),n:"primary"},{default:d(()=>[...e[9]||(e[9]=[t("span",{"ws-nowrap":"",op75:""},"Plugins",-1)])]),_:1},8,["modelValue"]),s(f,{modelValue:w.value,"onUpdate:modelValue":e[4]||(e[4]=o=>w.value=o),n:"primary"},{default:d(()=>[...e[10]||(e[10]=[t("span",{"ws-nowrap":"",op75:""},"Empty Initial",-1)])]),_:1},8,["modelValue"]),m.value?(l(),u("div",A,[s(g,{"font-mono":"",text:m.value},null,8,["text"]),s(F,{icon:"carbon-close",border:!1,onClick:e[5]||(e[5]=o=>m.value="")})])):$("",!0)])]),t("table",G,[e[11]||(e[11]=t("thead",{border:"b base"},[t("tr",null,[t("th",{"ws-nowrap":"",p1:"","text-center":"","font-bold":""}," Index "),t("th",{"ws-nowrap":"",p1:"","text-center":"","font-bold":""}," Module "),t("th",{"ws-nowrap":"",p1:"","text-center":"","font-bold":""}," Key Path "),t("th",{"ws-nowrap":"",p1:"","text-center":"","font-bold":""}," Method "),t("th",{"ws-nowrap":"",p1:"","text-center":"","font-bold":""}," Value ")])],-1)),t("tbody",null,[(l(!0),u(x,null,B(S.value,o=>(l(),u("tr",{key:n.moduleMutationRecords.indexOf(o),border:"b dashed transparent hover:base"},[t("td",Q,[t("div",null,k(n.moduleMutationRecords.indexOf(o)+1),1)]),t("td",null,[o.name&&c(o.name)?(l(),y(U,{key:0,filepath:o.name},null,8,["filepath"])):(l(),y(g,{key:1,role:"button","font-mono":"",text:o.name,onClick:h=>m.value=o.name},null,8,["text","onClick"]))]),t("td",null,[t("code",Y,[(l(!0),u(x,null,B(o.keys,(h,C)=>(l(),u(x,{key:C},[t("span",null,k(h),1),C<o.keys.length-1?(l(),u("span",Z," . ")):$("",!0)],64))),128))])]),t("td",ee,[s(g,{"font-mono":"",text:o.method||"=",class:E(o.method?"":"saturate-0")},null,8,["text","class"])]),t("td",te,[s(T,{code:String(o.value),lang:"ts","grammar-context-code":"let a = ","ws-normal":"","break-all":"",py1:"",lines:!1,inline:!0},null,8,["code"])])]))),128))])])],64)}}}),ne={key:0,p6:""},le={key:1},ve=V({__name:"debug",setup(_){const i=O();return(c,a)=>{const r=D;return N(i)?(l(),u("div",le,[s(r,{icon:"carbon-container-image-push-pull",text:"Module Mutation Records",description:"Records of module mutations to nuxt options"},{default:d(()=>[s(oe,{"module-mutation-records":N(i).moduleMutationRecords||[]},null,8,["module-mutation-records"])]),_:1})])):(l(),u("div",ne,[...a[0]||(a[0]=[t("div",null,"No Debug Context Found",-1),t("div",null,"Set `debug: true` in your nuxt.config.ts to enable this panel",-1)])]))}}});export{ve as default};
@@ -0,0 +1 @@
import{b as o}from"./e1928lvz.js";import{J as t,$ as s,a0 as r,W as a}from"./vendor/json-editor-vue-nstwj98r.js";import"./vendor/shiki-jxvjmls6.js";import"./vendor/unocss-eh8khx5b.js";const n={},c={"h-full":"","of-auto":"","n-panel-grids":""},l={"h-full":"","bg-base":""};function d(e,f){return s(),t("div",c,[r("div",l,[a(e.$slots,"default")])])}const u=o(n,[["render",d]]);export{u as default};
@@ -0,0 +1 @@
import{p as i,q as u,J as d,$ as f,a4 as l,W as o,ab as p,a0 as c,a8 as a}from"./vendor/json-editor-vue-nstwj98r.js";const m={"ml-1":"","text-xs":"",op50:""},g=i({__name:"DurationDisplay",props:{duration:{},factor:{default:1},color:{type:Boolean,default:!0}},setup(n){const t=n;function s(e){return t.color?e?(e=e*t.factor,e<.5?"text-gray:50":e>1e3?"text-red-400":e>500?"text-orange-400":e>200?"text-yellow-400":""):"text-gray-400":""}const r=u(()=>!t.duration||t.duration<1?["<1","ms"]:t.duration<1e3?[t.duration.toFixed(0),"ms"]:t.duration<1e3*60?[(t.duration/1e3).toFixed(1),"s"]:[(t.duration/1e3/60).toFixed(1),"min"]);return(e,x)=>(f(),d("div",{class:l(s(e.duration))},[o(e.$slots,"before"),p(" "+a(r.value[0]),1),c("span",m,a(r.value[1]),1),o(e.$slots,"after")],2))}});export{g as _};
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
import{b as a,d as i,e as u}from"./e1928lvz.js";import{J as c,$ as l,a0 as e,a8 as r,X as d,V as p,ab as f}from"./vendor/json-editor-vue-nstwj98r.js";import"./vendor/shiki-jxvjmls6.js";import"./vendor/unocss-eh8khx5b.js";const m={class:"antialiased bg-white dark:bg-black dark:text-white font-sans grid min-h-screen overflow-hidden place-content-center text-black"},g={class:"max-w-520px text-center z-20"},b=["textContent"],h=["textContent"],x={class:"flex items-center justify-center w-full"},y={__name:"error-404",props:{appName:{type:String,default:"Nuxt"},version:{type:String,default:""},statusCode:{type:Number,default:404},statusMessage:{type:String,default:"Not Found"},description:{type:String,default:"Sorry, the page you are looking for could not be found."},backHome:{type:String,default:"Go back home"}},setup(t){const n=t;return i({title:`${n.statusCode} - ${n.statusMessage} | ${n.appName}`,script:[{innerHTML:`!function(){const e=document.createElement("link").relList;if(!(e&&e.supports&&e.supports("modulepreload"))){for(const e of document.querySelectorAll('link[rel="modulepreload"]'))r(e);new MutationObserver((e=>{for(const o of e)if("childList"===o.type)for(const e of o.addedNodes)"LINK"===e.tagName&&"modulepreload"===e.rel&&r(e)})).observe(document,{childList:!0,subtree:!0})}function r(e){if(e.ep)return;e.ep=!0;const r=function(e){const r={};return e.integrity&&(r.integrity=e.integrity),e.referrerPolicy&&(r.referrerPolicy=e.referrerPolicy),"use-credentials"===e.crossOrigin?r.credentials="include":"anonymous"===e.crossOrigin?r.credentials="omit":r.credentials="same-origin",r}(e);fetch(e.href,r)}}();`}],style:[{innerHTML:'*,:after,:before{border-color:var(--un-default-border-color,#e5e7eb);border-style:solid;border-width:0;box-sizing:border-box}:after,:before{--un-content:""}html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-moz-tab-size:4;tab-size:4;-webkit-tap-highlight-color:transparent}body{line-height:inherit;margin:0}h1{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}h1,p{margin:0}*,:after,:before{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 transparent;--un-ring-shadow:0 0 transparent;--un-shadow-inset: ;--un-shadow:0 0 transparent;--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgba(147,197,253,.5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }'}]}),(k,o)=>{const s=u;return l(),c("div",m,[o[0]||(o[0]=e("div",{class:"fixed left-0 right-0 spotlight z-10"},null,-1)),e("div",g,[e("h1",{class:"font-medium mb-8 sm:text-10xl text-8xl",textContent:r(t.statusCode)},null,8,b),e("p",{class:"font-light leading-tight mb-16 px-8 sm:px-0 sm:text-4xl text-xl",textContent:r(t.description)},null,8,h),e("div",x,[d(s,{to:"/",class:"cursor-pointer gradient-border px-4 py-2 sm:px-6 sm:py-3 sm:text-xl text-md"},{default:p(()=>[f(r(t.backHome),1)]),_:1})])])])}}},N=a(y,[["__scopeId","data-v-4eecaf34"]]);export{N as default};
@@ -0,0 +1 @@
.spotlight[data-v-4eecaf34]{background:linear-gradient(45deg,#00dc82,#36e4da 50%,#0047e1);bottom:-30vh;filter:blur(20vh);height:40vh}.gradient-border[data-v-4eecaf34]{-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:.5rem;position:relative}@media (prefers-color-scheme:light){.gradient-border[data-v-4eecaf34]{background-color:#ffffff4d}.gradient-border[data-v-4eecaf34]:before{background:linear-gradient(90deg,#e2e2e2,#e2e2e2 25%,#00dc82,#36e4da 75%,#0047e1)}}@media (prefers-color-scheme:dark){.gradient-border[data-v-4eecaf34]{background-color:#1414144d}.gradient-border[data-v-4eecaf34]:before{background:linear-gradient(90deg,#303030,#303030 25%,#00dc82,#36e4da 75%,#0047e1)}}.gradient-border[data-v-4eecaf34]:before{background-size:400% auto;border-radius:.5rem;content:"";inset:0;-webkit-mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);mask:linear-gradient(#fff 0 0) content-box,linear-gradient(#fff 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:.5;padding:2px;position:absolute;transition:background-position .3s ease-in-out,opacity .2s ease-in-out;width:100%}.gradient-border[data-v-4eecaf34]:hover:before{background-position:-50% 0;opacity:1}.fixed[data-v-4eecaf34]{position:fixed}.left-0[data-v-4eecaf34]{left:0}.right-0[data-v-4eecaf34]{right:0}.z-10[data-v-4eecaf34]{z-index:10}.z-20[data-v-4eecaf34]{z-index:20}.grid[data-v-4eecaf34]{display:grid}.mb-16[data-v-4eecaf34]{margin-bottom:4rem}.mb-8[data-v-4eecaf34]{margin-bottom:2rem}.max-w-520px[data-v-4eecaf34]{max-width:520px}.min-h-screen[data-v-4eecaf34]{min-height:100vh}.w-full[data-v-4eecaf34]{width:100%}.flex[data-v-4eecaf34]{display:flex}.cursor-pointer[data-v-4eecaf34]{cursor:pointer}.place-content-center[data-v-4eecaf34]{place-content:center}.items-center[data-v-4eecaf34]{align-items:center}.justify-center[data-v-4eecaf34]{justify-content:center}.overflow-hidden[data-v-4eecaf34]{overflow:hidden}.bg-white[data-v-4eecaf34]{--un-bg-opacity:1;background-color:rgb(255 255 255/var(--un-bg-opacity))}.px-4[data-v-4eecaf34]{padding-left:1rem;padding-right:1rem}.px-8[data-v-4eecaf34]{padding-left:2rem;padding-right:2rem}.py-2[data-v-4eecaf34]{padding-bottom:.5rem;padding-top:.5rem}.text-center[data-v-4eecaf34]{text-align:center}.text-8xl[data-v-4eecaf34]{font-size:6rem;line-height:1}.text-xl[data-v-4eecaf34]{font-size:1.25rem;line-height:1.75rem}.text-black[data-v-4eecaf34]{--un-text-opacity:1;color:rgb(0 0 0/var(--un-text-opacity))}.font-light[data-v-4eecaf34]{font-weight:300}.font-medium[data-v-4eecaf34]{font-weight:500}.leading-tight[data-v-4eecaf34]{line-height:1.25}.font-sans[data-v-4eecaf34]{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.antialiased[data-v-4eecaf34]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){.dark\:bg-black[data-v-4eecaf34]{--un-bg-opacity:1;background-color:rgb(0 0 0/var(--un-bg-opacity))}.dark\:text-white[data-v-4eecaf34]{--un-text-opacity:1;color:rgb(255 255 255/var(--un-text-opacity))}}@media (min-width:640px){.sm\:px-0[data-v-4eecaf34]{padding-left:0;padding-right:0}.sm\:px-6[data-v-4eecaf34]{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-3[data-v-4eecaf34]{padding-bottom:.75rem;padding-top:.75rem}.sm\:text-4xl[data-v-4eecaf34]{font-size:2.25rem;line-height:2.5rem}.sm\:text-xl[data-v-4eecaf34]{font-size:1.25rem;line-height:1.75rem}}
@@ -0,0 +1 @@
import{b as s,d as a}from"./e1928lvz.js";import{J as i,$ as u,a0 as e,a8 as o}from"./vendor/json-editor-vue-nstwj98r.js";import"./vendor/shiki-jxvjmls6.js";import"./vendor/unocss-eh8khx5b.js";const l={class:"antialiased bg-white dark:bg-black dark:text-white font-sans grid min-h-screen overflow-hidden place-content-center text-black"},c={class:"max-w-520px text-center"},d=["textContent"],p=["textContent"],f={__name:"error-500",props:{appName:{type:String,default:"Nuxt"},version:{type:String,default:""},statusCode:{type:Number,default:500},statusMessage:{type:String,default:"Server error"},description:{type:String,default:"This page is temporarily unavailable."}},setup(t){const r=t;return a({title:`${r.statusCode} - ${r.statusMessage} | ${r.appName}`,script:[{innerHTML:`!function(){const e=document.createElement("link").relList;if(!(e&&e.supports&&e.supports("modulepreload"))){for(const e of document.querySelectorAll('link[rel="modulepreload"]'))r(e);new MutationObserver((e=>{for(const o of e)if("childList"===o.type)for(const e of o.addedNodes)"LINK"===e.tagName&&"modulepreload"===e.rel&&r(e)})).observe(document,{childList:!0,subtree:!0})}function r(e){if(e.ep)return;e.ep=!0;const r=function(e){const r={};return e.integrity&&(r.integrity=e.integrity),e.referrerPolicy&&(r.referrerPolicy=e.referrerPolicy),"use-credentials"===e.crossOrigin?r.credentials="include":"anonymous"===e.crossOrigin?r.credentials="omit":r.credentials="same-origin",r}(e);fetch(e.href,r)}}();`}],style:[{innerHTML:'*,:after,:before{border-color:var(--un-default-border-color,#e5e7eb);border-style:solid;border-width:0;box-sizing:border-box}:after,:before{--un-content:""}html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-moz-tab-size:4;tab-size:4;-webkit-tap-highlight-color:transparent}body{line-height:inherit;margin:0}h1{font-size:inherit;font-weight:inherit}h1,p{margin:0}*,:after,:before{--un-rotate:0;--un-rotate-x:0;--un-rotate-y:0;--un-rotate-z:0;--un-scale-x:1;--un-scale-y:1;--un-scale-z:1;--un-skew-x:0;--un-skew-y:0;--un-translate-x:0;--un-translate-y:0;--un-translate-z:0;--un-pan-x: ;--un-pan-y: ;--un-pinch-zoom: ;--un-scroll-snap-strictness:proximity;--un-ordinal: ;--un-slashed-zero: ;--un-numeric-figure: ;--un-numeric-spacing: ;--un-numeric-fraction: ;--un-border-spacing-x:0;--un-border-spacing-y:0;--un-ring-offset-shadow:0 0 transparent;--un-ring-shadow:0 0 transparent;--un-shadow-inset: ;--un-shadow:0 0 transparent;--un-ring-inset: ;--un-ring-offset-width:0px;--un-ring-offset-color:#fff;--un-ring-width:0px;--un-ring-color:rgba(147,197,253,.5);--un-blur: ;--un-brightness: ;--un-contrast: ;--un-drop-shadow: ;--un-grayscale: ;--un-hue-rotate: ;--un-invert: ;--un-saturate: ;--un-sepia: ;--un-backdrop-blur: ;--un-backdrop-brightness: ;--un-backdrop-contrast: ;--un-backdrop-grayscale: ;--un-backdrop-hue-rotate: ;--un-backdrop-invert: ;--un-backdrop-opacity: ;--un-backdrop-saturate: ;--un-backdrop-sepia: }'}]}),(g,n)=>(u(),i("div",l,[n[0]||(n[0]=e("div",{class:"-bottom-1/2 fixed h-1/2 left-0 right-0 spotlight"},null,-1)),e("div",c,[e("h1",{class:"font-medium mb-8 sm:text-10xl text-8xl",textContent:o(t.statusCode)},null,8,d),e("p",{class:"font-light leading-tight mb-16 px-8 sm:px-0 sm:text-4xl text-xl",textContent:o(t.description)},null,8,p)])]))}},y=s(f,[["__scopeId","data-v-19a29d15"]]);export{y as default};
@@ -0,0 +1 @@
.spotlight[data-v-19a29d15]{background:linear-gradient(45deg,#00dc82,#36e4da 50%,#0047e1);filter:blur(20vh)}.fixed[data-v-19a29d15]{position:fixed}.-bottom-1\/2[data-v-19a29d15]{bottom:-50%}.left-0[data-v-19a29d15]{left:0}.right-0[data-v-19a29d15]{right:0}.grid[data-v-19a29d15]{display:grid}.mb-16[data-v-19a29d15]{margin-bottom:4rem}.mb-8[data-v-19a29d15]{margin-bottom:2rem}.h-1\/2[data-v-19a29d15]{height:50%}.max-w-520px[data-v-19a29d15]{max-width:520px}.min-h-screen[data-v-19a29d15]{min-height:100vh}.place-content-center[data-v-19a29d15]{place-content:center}.overflow-hidden[data-v-19a29d15]{overflow:hidden}.bg-white[data-v-19a29d15]{--un-bg-opacity:1;background-color:rgb(255 255 255/var(--un-bg-opacity))}.px-8[data-v-19a29d15]{padding-left:2rem;padding-right:2rem}.text-center[data-v-19a29d15]{text-align:center}.text-8xl[data-v-19a29d15]{font-size:6rem;line-height:1}.text-xl[data-v-19a29d15]{font-size:1.25rem;line-height:1.75rem}.text-black[data-v-19a29d15]{--un-text-opacity:1;color:rgb(0 0 0/var(--un-text-opacity))}.font-light[data-v-19a29d15]{font-weight:300}.font-medium[data-v-19a29d15]{font-weight:500}.leading-tight[data-v-19a29d15]{line-height:1.25}.font-sans[data-v-19a29d15]{font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,Noto Sans,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji}.antialiased[data-v-19a29d15]{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (prefers-color-scheme:dark){.dark\:bg-black[data-v-19a29d15]{--un-bg-opacity:1;background-color:rgb(0 0 0/var(--un-bg-opacity))}.dark\:text-white[data-v-19a29d15]{--un-text-opacity:1;color:rgb(255 255 255/var(--un-text-opacity))}}@media (min-width:640px){.sm\:px-0[data-v-19a29d15]{padding-left:0;padding-right:0}.sm\:text-4xl[data-v-19a29d15]{font-size:2.25rem;line-height:2.5rem}}
@@ -0,0 +1,9 @@
import{f as E,q as x}from"./e1928lvz.js";import{_ as N}from"./stacktrace-list.vue-hpi8ade8.js";import{p as y,q as v,J as l,$ as i,X as C,a0 as f,a1 as _,V as w,ab as S,a8 as p,U as $}from"./vendor/json-editor-vue-nstwj98r.js";import"./vendor/shiki-jxvjmls6.js";import"./vendor/unocss-eh8khx5b.js";import"./filepath-item.vue-kxrtauqr.js";const O=/(^|@)\S+:\d+/,h=/^\s*at .*(\S+:\d+|\(native\))/m,R=/^(eval@)?(\[native code\])?$/;function b(e,a){if(typeof e.stacktrace<"u"||typeof e["opera#sourceloc"]<"u")return T(e);if(e.stack&&e.stack.match(h))return F(e);if(e.stack)return V(e);throw new Error("Cannot parse given Error object")}function m(e){if(!e.includes(":"))return[e,void 0,void 0];const o=/(.+?)(?::(\d+))?(?::(\d+))?$/.exec(e.replace(/[()]/g,""));return[o[1],o[2]||void 0,o[3]||void 0]}function d(e,a){return e}function F(e,a){return I(e.stack)}function I(e,a){return d(e.split(`
`).filter(t=>!!t.match(h))).map(t=>{t.includes("(eval ")&&(t=t.replace(/eval code/g,"eval").replace(/(\(eval at [^()]*)|(,.*$)/g,""));let r=t.replace(/^\s+/,"").replace(/\(eval code/g,"(").replace(/^.*?\s+/,"");const n=r.match(/ (\(.+\)$)/);r=n?r.replace(n[0],""):r;const c=m(n?n[1]:r),s=n&&r||void 0,u=["eval","<anonymous>"].includes(c[0])?void 0:c[0];return{function:s,file:u,line:c[1]?+c[1]:void 0,col:c[2]?+c[2]:void 0,raw:t}})}function V(e,a){return A(e.stack)}function A(e,a){return d(e.split(`
`).filter(t=>!t.match(R))).map(t=>{if(t.includes(" > eval")&&(t=t.replace(/ line (\d+)(?: > eval line \d+)* > eval:\d+:\d+/g,":$1")),!t.includes("@")&&!t.includes(":"))return{function:t};{const r=/(([^\n\r"\u2028\u2029]*".[^\n\r"\u2028\u2029]*"[^\n\r@\u2028\u2029]*(?:@[^\n\r"\u2028\u2029]*"[^\n\r@\u2028\u2029]*)*(?:[\n\r\u2028\u2029][^@]*)?)?[^@]*)@/,n=t.match(r),c=n&&n[1]?n[1]:void 0,s=m(t.replace(r,""));return{function:c,file:s[0],line:s[1]?+s[1]:void 0,col:s[2]?+s[2]:void 0,raw:t}}})}function T(e,a){return!e.stacktrace||e.message.includes(`
`)&&e.message.split(`
`).length>e.stacktrace.split(`
`).length?P(e):e.stack?B(e):X(e)}function P(e,a){const o=/Line (\d+).*script (?:in )?(\S+)/i,t=e.message.split(`
`),r=[];for(let n=2,c=t.length;n<c;n+=2){const s=o.exec(t[n]);s&&r.push({file:s[2],line:+s[1],raw:t[n]})}return d(r)}function X(e,a){const o=/Line (\d+).*script (?:in )?(\S+)(?:: In function (\S+))?$/i,t=e.stacktrace.split(`
`),r=[];for(let n=0,c=t.length;n<c;n+=2){const s=o.exec(t[n]);s&&r.push({function:s[3]||void 0,file:s[2],line:s[1]?+s[1]:void 0,raw:t[n]})}return d(r)}function B(e,a){return d(e.stack.split(`
`).filter(t=>!!t.match(O)&&!t.match(/^Error created at/))).map(t=>{const r=t.split("@"),n=m(r.pop()),c=r.shift()||"",s=c.replace(/<anonymous function(: (\w+))?>/,"$2").replace(/\([^)]*\)/g,"")||void 0;let u;c.match(/\(([^)]*)\)/)&&(u=c.replace(/^[^(]+\(([^)]*)\)$/,"$1"));const k=u===void 0||u==="[arguments not available]"?void 0:u.split(",");return{function:s,args:k,file:n[0],line:n[1]?+n[1]:void 0,col:n[2]?+n[2]:void 0,raw:t}})}function L(e){return e.map(a=>({functionName:a.function,args:a.args,fileName:a.file,lineNumber:a.line,columnNumber:a.col,source:a.raw}))}function g(e,a){return L(b(e))}const D={p6:""},G={key:0},M={"text-6xl":""},q={key:0,op75:""},K={my4:"","text-xl":"","text-red":""},U={key:1,"of-auto":"",rounded:"","bg-active":"",p2:""},j=["textContent"],z={key:1,op50:""},ee=y({__name:"error",setup(e){const a=E(),o=v(()=>{const r=a.value?.nuxt?.payload?.error;return r&&(console.error("[Nuxt DevTools] Error in payload:"),console.error(r),console.error({...r})),r}),t=v(()=>{if(!o.value?.stack)return[];try{return o.value.stack.startsWith("<pre>")?g({stack:o.value.stack.replace(/<.*?>/g,"")}):g(o.value)}catch(r){return console.error(r),[]}});return(r,n)=>{const c=x,s=N;return i(),l("div",D,[o.value?(i(),l("div",G,[C(c,{n:"red",icon:"i-carbon-warning-alt-filled",mb5:""},{default:w(()=>[...n[0]||(n[0]=[S(" Error occurred in this page ",-1)])]),_:1}),f("div",M,p(o.value.statusCode||"Client Error"),1),o.value.statusMessage?(i(),l("div",q,p(o.value.statusMessage),1)):_("",!0),f("div",K,p(o.value.message||o.value.description||"Unknown error"),1),t.value.length||o.value.stack?(i(),l("div",U,[n[1]||(n[1]=f("div",{px1:"",op50:""}," Stacktrace ",-1)),t.value.length?(i(),$(s,{key:0,px2:"",stacktrace:t.value},null,8,["stacktrace"])):(i(),l("pre",{key:1,textContent:p(o.value.stack)},null,8,j))])):_("",!0)])):(i(),l("div",z," No error "))])}}});export{ee as default};
@@ -0,0 +1 @@
import{w as k,a as c,A as g,a3 as b}from"./e1928lvz.js";import{p as C,q as B,J as t,$ as a,a0 as s,W as N,a1 as u,F as l,ab as d,a8 as r,a4 as $,u as m}from"./vendor/json-editor-vue-nstwj98r.js";const w={flex:"~ gap-2 items-center",class:"group"},E=["title"],F={key:0,op50:""},I={key:0,flex:"~ gap1",pr2:"",op0:"","group-hover:op100":""},D=C({__name:"FilepathItem",props:{filepath:{},lineBreak:{type:Boolean},subpath:{type:Boolean},override:{}},setup(f){const p=f,v=k(),h=c(),i=g(),n=B(()=>p.filepath&&i.value?b(p.filepath,i.value.rootDir):{path:p.filepath||""});return(e,o)=>(a(),t("span",w,[s("span",{class:$([e.lineBreak?"":"ws-nowrap of-hidden truncate"]),"font-mono":"",title:e.override||e.filepath},[e.override?(a(),t(l,{key:0},[d(r(e.override),1)],64)):n.value.moduleName?(a(),t(l,{key:1},[s("span",null,r(n.value.moduleName),1),e.subpath?(a(),t("span",F,r(n.value.path.slice(n.value.moduleName.length)),1)):u("",!0)],64)):(a(),t(l,{key:2},[d(r(n.value.path),1)],64))],10,E),N(e.$slots,"default"),e.filepath?(a(),t("div",I,[s("button",{"text-sm":"",op40:"",hover:"op100 text-primary",title:"Open in editor",onClick:o[0]||(o[0]=y=>m(v)(e.filepath))},[...o[2]||(o[2]=[s("div",{"i-carbon-script-reference":""},null,-1)])]),s("button",{"text-sm":"",op40:"",hover:"op100 text-primary",title:"Copy path",onClick:o[1]||(o[1]=y=>m(h)(e.filepath))},[...o[3]||(o[3]=[s("div",{"i-carbon-copy":""},null,-1)])])])):u("",!0)]))}});export{D as _};
@@ -0,0 +1 @@
import{b as t}from"./e1928lvz.js";import{J as e,$ as r,W as s}from"./vendor/json-editor-vue-nstwj98r.js";import"./vendor/shiki-jxvjmls6.js";import"./vendor/unocss-eh8khx5b.js";const c={},n={"h-full":"","of-auto":""};function a(o,f){return r(),e("div",n,[s(o.$slots,"default")])}const d=t(c,[["render",a]]);export{d as default};
@@ -0,0 +1 @@
.slide-in-enter-active,.slide-in-leave-active{transition:transform .3s}.slide-in-enter-from,.slide-in-leave-to{transform:translate(100%)}.fade-in-enter-active,.fade-in-leave-active{transition:opacity .3s}.fade-in-enter-from,.fade-in-leave-to{opacity:0}
@@ -0,0 +1 @@
import{g as f,_ as m}from"./e1928lvz.js";import{p as v,k as c,J as o,a1 as s,u as k,$ as a,F as g,a0 as r,X as l,H as u,V as i,W as _}from"./vendor/json-editor-vue-nstwj98r.js";const x={key:0,border:"l base",class:"prose",pos:"fixed bottom-0 right-0 top-0","z-200":"","h-full":"","w-150":"","overflow-auto":"","bg-base":"",px8:"",py4:""},y=v({__name:"HelpFab",setup(w){const t=c(!1),{showHelpButtons:p}=f("ui");return(d,e)=>{const b=m;return k(p)?(a(),o(g,{key:0},[r("button",{pos:"absolute bottom-5 right-5",border:"~ base rounded-full ",flex:"~ items-center justify-center","z-110":"","h-11":"","w-11":"","backdrop-blur-8":"",bg:"bg-base op50!","light:shadow":"",hover:"bg-active",title:"Help",onClick:e[0]||(e[0]=n=>t.value=!t.value)},[...e[3]||(e[3]=[r("div",{"i-ri:question-mark":""},null,-1)])]),l(u,{name:"fade-in"},{default:i(()=>[t.value?(a(),o("div",{key:0,class:"fixed bottom-0 left-0 right-0 top-0 z-100","bg-black:20":"","backdrop-blur-2":"",onClick:e[1]||(e[1]=n=>t.value=!1)})):s("",!0)]),_:1}),l(u,{name:"slide-in"},{default:i(()=>[t.value?(a(),o("div",x,[_(d.$slots,"default"),l(b,{icon:"carbon-close",pos:"absolute top-3 right-3","rounded-full":"","text-xl":"",border:!1,onClick:e[2]||(e[2]=n=>t.value=!1)})])):s("",!0)]),_:3})],64)):s("",!0)}}});export{y as _};
@@ -0,0 +1 @@
import{_ as S}from"./duration-display.vue-l0zz5iex.js";import{g as T}from"./color-mt9xuhgy.js";import{p as $,k as H,q as w,J as h,$ as u,a0 as o,ab as l,a4 as p,F as y,ag as F,a8 as m,a2 as V,u as k,X as _,U as C,a1 as N,V as f}from"./vendor/json-editor-vue-nstwj98r.js";import{_ as B}from"./nsection-block-i439i28t.js";import{_ as D}from"./help-fab.vue-kdw4qv3n.js";import{s as P,f as E}from"./e1928lvz.js";import"./nicon-title.vue-mr03t3pg.js";import"./vendor/shiki-jxvjmls6.js";import"./vendor/unocss-eh8khx5b.js";const O={"w-full":""},j={border:"b base"},L={"select-none":"","ws-nowrap":"",p1:"","text-right":"","font-bold":""},z={colspan:"2",p1:"",pl5:"","text-left":"","font-bold":""},A={"ws-nowrap":"",p1:"","text-center":"","font-bold":""},U={"ws-nowrap":"",p1:"","text-center":"","font-bold":""},Y={"ws-nowrap":"",p1:"","text-right":"","font-bold":""},q={"w-0":"","ws-nowrap":"","text-center":"","text-sm":"",op25:""},J={"text-sm":""},R={"ws-nowrap":""},X={"text-sm":""},G={"w-0":"","text-center":"","text-sm":""},K={"w-0":"","text-center":"","text-sm":""},M={"w-0":"","text-right":"","text-sm":""},Q=$({__name:"HooksTable",props:{hooks:{}},setup(x){const a=x,r=H("duration"),n=H("asc"),d={duration:(e,t)=>(t.duration??Number.POSITIVE_INFINITY)-(e.duration??Number.POSITIVE_INFINITY),name:(e,t)=>e.name.localeCompare(t.name),listener:(e,t)=>t.listeners-e.listeners,start:(e,t)=>t.start-e.start,executions:(e,t)=>t.executions.length-e.executions.length},g=w(()=>a.hooks.map(e=>e.start).sort((e,t)=>e-t)),b=w(()=>{const e=d[r.value],t=[...a.hooks].sort(e);return n.value==="desc"&&t.reverse(),t});function c(e){const t=e.split(":");return t.length===1?"":`${t[0]}:`}function v(e){const t=e.split(":");return t.length===1?e:t.slice(1).join(":")}function i(e){r.value===e?n.value=n.value==="asc"?"desc":"asc":r.value=e}return(e,t)=>{const I=S;return u(),h("table",O,[o("thead",j,[o("tr",null,[o("th",L,[o("button",{onClick:t[0]||(t[0]=s=>i("start"))},[t[5]||(t[5]=l(" Order ",-1)),o("div",{"ml--1":"","text-xs":"",class:p([r.value==="start"?"op50":"op0",n.value==="asc"?"carbon-arrow-down":"carbon-arrow-up"])},null,2)])]),o("th",z,[o("button",{onClick:t[1]||(t[1]=s=>i("name"))},[t[6]||(t[6]=l(" Hook name ",-1)),o("div",{"ml--1":"","text-xs":"",class:p([r.value==="name"?"op50":"op0",n.value==="asc"?"carbon-arrow-down":"carbon-arrow-up"])},null,2)])]),o("th",A,[o("button",{onClick:t[2]||(t[2]=s=>i("listener"))},[t[7]||(t[7]=l(" Listeners ",-1)),o("div",{"ml--1":"","text-xs":"",class:p([r.value==="listener"?"op50":"op0",n.value==="asc"?"carbon-arrow-down":"carbon-arrow-up"])},null,2)])]),o("th",U,[o("button",{onClick:t[3]||(t[3]=s=>i("executions"))},[t[8]||(t[8]=l(" Executions ",-1)),o("div",{"ml--1":"","text-xs":"",class:p([r.value==="executions"?"op50":"op0",n.value==="asc"?"carbon-arrow-down":"carbon-arrow-up"])},null,2)])]),o("th",Y,[o("button",{onClick:t[4]||(t[4]=s=>i("duration"))},[t[9]||(t[9]=l(" Duration ",-1)),o("div",{"ml--1":"","text-xs":"",class:p([r.value==="duration"?"op50":"op0",n.value==="asc"?"carbon-arrow-down":"carbon-arrow-up"])},null,2)])])])]),o("tbody",null,[(u(!0),h(y,null,F(b.value,s=>(u(),h("tr",{key:s.name,border:"b dashed transparent hover:base"},[o("td",q,m(g.value.indexOf(s.start)),1),o("td",{"w-0":"","ws-nowrap":"","text-right":"",style:V({color:("getHslColorFromStringHash"in e?e.getHslColorFromStringHash:k(T))(c(s.name))})},[o("code",J,m(c(s.name)),1)],4),o("td",R,[o("code",X,m(v(s.name)),1)]),o("td",G,m(s.listeners),1),o("td",K,m(s.executions.length+1),1),o("td",M,[_(I,{duration:s.duration},null,8,["duration"])])]))),128))])])}}}),W={class:"markdown-body"},Z={__name:"hooks",setup(x,{expose:a}){return a({frontmatter:{}}),(n,d)=>(u(),h("div",W,[...d[0]||(d[0]=[o("h1",null,"Hooks",-1),o("p",null,[l("Hooks are an advanced API which can be used for module development or other advanced use cases. The hooking API can be used to expand almost every aspect of Nuxt. Under the hood it is powered by "),o("a",{href:"https://github.com/unjs/hookable",target:"_blank",rel:"noopener"},"unjs/hookable"),l(".")],-1),o("p",null,[o("a",{href:"https://nuxt.com/docs/guide/going-further/hooks",target:"_blank",rel:"noopener"},"Learn more about hooks"),l(".")],-1)])]))}},ut=$({__name:"hooks",setup(x){const a=P(),r=E(),n=w(()=>r.value?.metrics.clientHooks());return(d,g)=>{const b=Q,c=B,v=Z,i=D;return u(),h(y,null,[o("div",null,[n.value?.length?(u(),C(c,{key:0,icon:"carbon-ibm-cloud-direct-link-1-dedicated-hosting",text:"Client Hooks",description:`Total hooks: ${n.value.length}`,padding:"pl4 pr6"},{default:f(()=>[_(b,{hooks:n.value},null,8,["hooks"])]),_:1},8,["description"])):N("",!0),k(a)?.length?(u(),C(c,{key:1,icon:"carbon-ibm-cloud-direct-link-2-dedicated",text:"Server Hooks",description:`Total hooks: ${k(a)?.length}`,padding:"pl4 pr6"},{default:f(()=>[_(b,{hooks:k(a)},null,8,["hooks"])]),_:1},8,["description"])):N("",!0)]),_(i,null,{default:f(()=>[_(v)]),_:1})],64)}}});export{ut as default};
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
const l=/\d/,C=["-","_","/","."];function h(e=""){if(!l.test(e))return e!==e.toLowerCase()}function c(e,p){const i=C,n=[];if(!e||typeof e!="string")return n;let t="",s,a;for(const r of e){const u=i.includes(r);if(u===!0){n.push(t),t="",s=void 0;continue}const o=h(r);if(a===!1){if(s===!1&&o===!0){n.push(t),t=r,s=o;continue}if(s===!0&&o===!1&&t.length>1){const f=t.at(-1);n.push(t.slice(0,Math.max(0,t.length-1))),t=f+r,s=o;continue}}t+=r,s=o,a=u}return n.push(t),n}function y(e){return e?e[0].toUpperCase()+e.slice(1):""}function A(e,p){return e?(Array.isArray(e)?e:c(e)).map(i=>y(i)).join(""):""}function R(e,p){return e?(Array.isArray(e)?e:c(e)).map(i=>i.toLowerCase()).join("-"):""}export{R as k,A as p};
@@ -0,0 +1 @@
import{f as y,g,h as b,_ as k,t as N,i as h,j as w}from"./e1928lvz.js";import{_ as V}from"./nlink.vue-0imskaxm.js";import{_ as C}from"./ncheckbox.vue-ktgiyht2.js";import{p as B,k as L,U as u,$ as m,V as o,a0 as t,X as n,a1 as T,ab as l,u as j}from"./vendor/json-editor-vue-nstwj98r.js";import"./vendor/shiki-jxvjmls6.js";import"./vendor/unocss-eh8khx5b.js";const D={flex:"~ auto col gap3","items-center":"","justify-center":"","text-center":""},P={"max-w-190":"","text-lg":""},$={mb6:"",op50:""},E={p4:""},F={flex:"~ col gap-2",mxa:""},q=B({__name:"index",setup(G){const p=y(),s=L(!0),{showPanel:a}=g("ui");function d(){N.value=s.value,h.value=!1}function _(){a.value=!1,p.value.devtools.close()}return(S,e)=>{const f=b,r=V,i=k,x=C,v=w;return m(),u(v,{flex:"~ col",relative:"","h-screen":"","w-full":""},{default:o(()=>[t("div",D,[e[7]||(e[7]=t("p",{my2:"","text-3em":"","text-primary":"","font-bold":"","font-stylish":""}," 👋 Hi there, welcome to Nuxt DevTools! ",-1)),t("p",P,[n(f,{"mr-0.5":"","inline-block":"","h-5":"","translate-y--1.1":"","align-mid":""}),e[1]||(e[1]=l(" is a set of visual tools that help you to know your Nuxt app better, and enhance your development experience with Nuxt. Enjoy!",-1)),e[2]||(e[2]=t("br",null,null,-1))]),t("p",$,[e[4]||(e[4]=l(" Learn more at ",-1)),n(r,{href:"https://devtools.nuxt.com/",target:"_blank",rel:"noopener noreferrer",n:"primary"},{default:o(()=>[...e[3]||(e[3]=[l(" devtools.nuxt.com ",-1)])]),_:1})]),n(i,{to:"/modules/overview",n:"lg primary",onClick:d},{default:o(()=>[...e[5]||(e[5]=[t("span",null,"Get Started",-1)])]),_:1}),j(a)!==!1?(m(),u(i,{key:0,n:"borderless orange",onClick:_},{default:o(()=>[...e[6]||(e[6]=[t("span",null,"Always hide the floating panel",-1)])]),_:1})):T("",!0)]),t("div",E,[t("div",F,[n(x,{modelValue:s.value,"onUpdate:modelValue":e[0]||(e[0]=c=>s.value=c),n:"green6"},{default:o(()=>[e[8]||(e[8]=t("span",{op50:""},"Send anonymous statistics, help us improving DevTools",-1)),n(r,{href:"https://github.com/nuxt/devtools#anonymous-usage-analytics",target:"_blank",ml1:"",op35:"",textContent:"Learn more"})]),_:1},8,["modelValue"])])])]),_:1})}}});export{q as default};
@@ -0,0 +1 @@
import{n as w,o as y,_ as C,I as B,M as V,j as $}from"./e1928lvz.js";import{_ as v}from"./nmarkdown.vue-n5lhcplj.js";import{p as I,U as o,$ as t,V as a,X as c,a0 as i,a1 as m,a8 as _,J as P,F,ag as L,Y as M,ab as T}from"./vendor/json-editor-vue-nstwj98r.js";const j={"text-xl":""},D={flex:"~ gap2 wrap"},U=I({__name:"LaunchPage",props:{name:{},icon:{},title:{},description:{},actions:{}},emits:["action"],setup(l,{emit:p}){const d=l,u=p;function f(e,s){V("launch-page",{pageName:d.name}),e.handle?.(),u("action",s)}return(e,s)=>{const g=y,k=v,b=B,h=C,N=w,x=$;return t(),o(x,null,{default:a(()=>[c(N,{flex:"~ col gap2",mxa:"","min-w-100":"","items-center":"",p6:""},{default:a(()=>[c(g,{mb2:"","text-5xl":"",icon:e.icon||e.icon,title:e.title},null,8,["icon","title"]),i("h1",j,_(e.title),1),e.description?(t(),o(k,{key:0,mb2:"","mt--1":"","text-center":"","text-base":"",op50:"",markdown:e.description},null,8,["markdown"])):m("",!0),i("div",D,[(t(!0),P(F,null,L(e.actions,(n,r)=>(t(),o(h,M({key:r,n:"solid primary",disabled:n.pending,to:n.src,target:n.src?"_blank":void 0},{ref_for:!0},n.attrs,{onClick:E=>f(n,r)}),{default:a(()=>[n.pending?(t(),o(b,{key:0,icon:"carbon-circle-dash","animate-spin":""})):m("",!0),T(" "+_(n.label),1)]),_:2},1040,["disabled","to","target","onClick"]))),128))])]),_:1})]),_:1})}}});export{U as _};
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
import{b as o}from"./e1928lvz.js";import{J as n,$ as s,W as t}from"./vendor/json-editor-vue-nstwj98r.js";const r={},c={class:"n-badge"};function _(e,a){return s(),n("span",c,[t(e.$slots,"default")])}const m=o(r,[["render",_]]);export{m as _};
@@ -0,0 +1 @@
import{H as i,I as r}from"./e1928lvz.js";import{p,J as b,$ as u,ac as h,a0 as n,as as m,u as a,a3 as k,j as f,X as v,W as _,a4 as x}from"./vendor/json-editor-vue-nstwj98r.js";const V=["checked","disabled"],y=["disabled"],B={class:"n-checkbox-box n-transition n-checked:n-checkbox-box-checked peer-active:n-active-base peer-focus-visible:n-focus-base"},I=p({__name:"NCheckbox",props:{modelValue:{type:[Boolean,null],default:!1},disabled:{type:Boolean,default:!1}},setup(c,{emit:t}){const e=i(c,"modelValue",t,{passive:!0});return(o,s)=>{const d=r;return u(),b("label",{class:"n-checkbox select-none items-center hover:n-checkbox-hover n-disabled:n-disabled",checked:a(e)||null,disabled:o.disabled||null},[h(n("input",{"onUpdate:modelValue":s[0]||(s[0]=l=>f(e)?e.value=l:null),type:"checkbox",class:"peer absolute op0",disabled:o.disabled,onKeypress:s[1]||(s[1]=k(l=>e.value=!a(e),["enter"]))},null,40,y),[[m,a(e)]]),n("span",B,[v(d,{class:"n-checkbox-icon scale-0 transform op0 n-transition n-checked:scale-100 n-checked:op100"})]),n("span",{class:x([a(e)?"":"op50","n-transition"])},[_(o.$slots,"default")],2)],8,V)}}});export{I as _};
@@ -0,0 +1 @@
.n-code-block-lines code{counter-increment:step calc(var(--start, 1) - 1);counter-reset:step}.n-code-block-lines code .line:before{content:counter(step);counter-increment:step;display:inline-block;margin-right:.5rem;padding-right:.5rem;text-align:right;width:2.5rem;color:#a3a3a380}
@@ -0,0 +1,2 @@
import{d as g}from"./client-hkqvtzyx.js";import{p as k,q as d,z as v,J as n,$ as t,a4 as c,a0 as s,F as i,ag as x,a8 as _}from"./vendor/json-editor-vue-nstwj98r.js";const y=["innerHTML"],B=["textContent"],b=k({__name:"NCodeBlock",props:{code:{},lang:{},lines:{type:Boolean,default:!0},inline:{type:Boolean},grammarContextCode:{},transformRendered:{}},emits:["loaded"],setup(p,{emit:u}){const e=p,m=u,a=d(()=>{const o=e.lang==="text"?{code:e.code,supported:!1}:g.value?.devtools.renderCodeHighlight(e.code,e.lang,{grammarContextCode:e.grammarContextCode})||{code:e.code,supported:!1};return o.supported&&e.transformRendered&&(o.code=e.transformRendered(o.code)),o.supported&&v(()=>m("loaded")),o}),r=d(()=>["n-code-block shiki",e.lines&&!e.inline?"n-code-block-lines":""]);return(o,l)=>o.lang&&a.value.supported?(t(),n("pre",{key:0,class:c(r.value)},[s("code",{innerHTML:a.value.code},null,8,y)],2)):(t(),n("pre",{key:1,class:c(r.value)},[s("code",null,[(t(!0),n(i,null,x(o.code.split(`
`),(C,f)=>(t(),n(i,{key:f},[s("span",{class:"line",textContent:_(C)},null,8,B),l[0]||(l[0]=s("br",null,null,-1))],64))),128))])],2))}});export{b as _};
@@ -0,0 +1 @@
import{bi as n,a2 as b,_ as g}from"./e1928lvz.js";import{p as h,k as y,U as v,$ as l,V as k,J as B,a1 as C,Y as i,u as o,X as $,a0 as V,W as _,H as w}from"./vendor/json-editor-vue-nstwj98r.js";const x=["border"],N={relative:"","h-full":"","w-full":"","of-auto":""},T=h({__name:"NDrawer",props:{modelValue:{type:Boolean},top:{},left:{},autoClose:{type:Boolean},transition:{default:"right"}},emits:["close"],setup(m,{emit:c}){const e=m,f=c,a=y(),{height:u}=n(()=>e.top,void 0,{box:"border-box"}),s=typeof e.left=="string"&&e.left.startsWith("#")?document.querySelector(e.left)?.getBoundingClientRect().width:n(()=>e.left,void 0,{box:"border-box"}).width;b(a,()=>{e.modelValue&&e.autoClose&&f("close")},{ignore:["a","button","summary",'[role="dialog"]']});const d={right:{"enter-from-class":"transform translate-x-1/1","leave-to-class":"transform translate-x-1/1"},top:{"enter-from-class":"transform translate-y--1/1","leave-to-class":"transform translate-y--1/1"},bottom:{"enter-from-class":"transform translate-y-1/1","leave-to-class":"transform translate-y-1/1"}};return(t,r)=>{const p=g;return l(),v(w,i(d[t.transition],{"enter-active-class":"duration-200 ease-in","enter-to-class":"opacity-100","leave-active-class":"duration-200 ease-out","leave-from-class":"opacity-100"}),{default:k(()=>[t.modelValue?(l(),B("div",i({key:0,ref_key:"el",ref:a,border:`${t.transition==="right"?"l":t.transition==="bottom"?"t":"b"} base`,flex:"~ col gap-1",class:{"right-0":t.transition==="right"||t.transition==="bottom"},absolute:"","bottom-0":"","z-10":"","z-20":"","of-auto":"","n-glass-effect":"","text-sm":"",style:{top:t.transition==="bottom"?"auto":`${o(u)}px`,left:t.transition==="right"&&!o(s)?"auto":`${o(s)}px`}},t.$attrs),[$(p,{absolute:"","right-2":"","top-2":"","z-20":"","text-xl":"",icon:"carbon-close",border:!1,onClick:r[0]||(r[0]=z=>t.$emit("close"))}),V("div",N,[_(t.$slots,"default")])],16,x)):C("",!0)]),_:3},16)}}});export{T as _};
@@ -0,0 +1 @@
import{a2 as i,_ as p,H as u}from"./e1928lvz.js";import{p as m,k as c,J as f,$ as b,W as n,a0 as v,X as _,u as t,V as k,ab as V,a4 as B}from"./vendor/json-editor-vue-nstwj98r.js";const y=m({__name:"NDropdown",props:{modelValue:{type:Boolean},direction:{default:"start"}},setup(r,{emit:l}){const e=u(r,"modelValue",l,{passive:!0}),a=c();return i(a,()=>{e.value=!1}),(s,o)=>{const d=p;return b(),f("div",{ref_key:"el",ref:a,class:"relative"},[n(s.$slots,"trigger",{enabled:t(e),click:()=>e.value=!t(e)},()=>[_(d,{onClick:o[0]||(o[0]=g=>e.value=!t(e))},{default:k(()=>[...o[1]||(o[1]=[V(" Dropdown ",-1)])]),_:1})]),v("div",{class:B(["absolute z-10 border n-border-base rounded n-bg-base shadow n-transition",[t(e)?"op-100":"op0 pointer-events-none -translate-y-1",s.direction==="end"?"right-0":"left-0"]])},[n(s.$slots,"default")],2)],512)}}});export{y as _};
@@ -0,0 +1 @@
import{p as o,J as a,$ as s,a1 as t,W as n,a4 as r,a0 as l,a8 as i}from"./vendor/json-editor-vue-nstwj98r.js";const c={flex:"~ gap-3","items-center":""},u=o({__name:"NIconTitle",props:{icon:{},text:{}},setup(p){return(e,m)=>(s(),a("div",c,[e.icon?(s(),a("div",{key:0,class:r(e.icon)},null,2)):t("",!0),n(e.$slots,"default",{},()=>[l("div",null,i(e.text),1)])]))}});export{u as _};
@@ -0,0 +1 @@
import{e as s}from"./e1928lvz.js";import{p as l,q as i,U as p,$ as r,Y as u,V as c,W as m,J as _,a1 as k}from"./vendor/json-editor-vue-nstwj98r.js";const d={key:0,"i-carbon:arrow-up-right":"","translate-y--1":"","text-xs":"",op50:""},v=l({__name:"NLink",props:{to:{},href:{},target:{},underline:{type:Boolean}},setup(o){const t=o,n=i(()=>t.href||t.to);return(e,f)=>{const a=s;return r(),p(a,u(n.value?{href:n.value,target:e.target,rel:e.target==="_blank"?"noopener noreferrer":null}:{},{class:{"n-link n-transition hover:n-link-hover n-link-base":n.value||e.underline}}),{default:c(()=>[m(e.$slots,"default"),n.value&&e.target==="_blank"?(r(),_("div",d)):k("",!0)]),_:3},16,["class"])}}});export{v as _};
@@ -0,0 +1 @@
import{d as o}from"./client-hkqvtzyx.js";import{p as t,U as a,u as e,$ as r,af as s,a8 as d}from"./vendor/json-editor-vue-nstwj98r.js";const i=t({__name:"NMarkdown",props:{markdown:{},tag:{}},setup(m){return(n,p)=>n.markdown&&e(o)?.devtools?.renderMarkdown?(r(),a(s(n.tag||"span"),{key:0,class:"n-markdown",innerHTML:e(o).devtools.renderMarkdown(n.markdown)},null,8,["innerHTML"])):(r(),a(s(n.tag||"span"),{key:1,class:"n-markdown",textContent:d(n.markdown)},null,8,["textContent"]))}});export{i as _};
@@ -0,0 +1 @@
import{v as l}from"./e1928lvz.js";import{p,J as i,$ as s,a4 as o,a0 as d,W as a,U as m,a1 as u}from"./vendor/json-editor-vue-nstwj98r.js";const f={flex:"~ gap4 wrap","items-center":""},b=p({__name:"NNavbar",props:{search:{},noPadding:{type:Boolean}},emits:["update:search"],setup(h,{emit:n}){const r=n;function t(e){r("update:search",e.target.value)}return(e,v)=>{const c=l;return s(),i("div",{flex:"~ col gap2 wrap",border:"b base","n-navbar-glass":"","flex-1":"",class:o([{p4:!e.noPadding}])},[d("div",f,[a(e.$slots,"search",{},()=>[e.search!==void 0?(s(),m(c,{key:0,placeholder:"Search...",icon:"carbon-search",n:"primary","flex-auto":"",class:o({"px-3 py-2":!e.noPadding}),value:e.search,onInput:t},null,8,["class","value"])):u("",!0)]),a(e.$slots,"actions")]),a(e.$slots,"default")],2)}}});export{b as _};
@@ -0,0 +1 @@
import{b as o}from"./e1928lvz.js";import{J as t,$ as r,W as n}from"./vendor/json-editor-vue-nstwj98r.js";import"./vendor/shiki-jxvjmls6.js";import"./vendor/unocss-eh8khx5b.js";const s={},c={relative:"","w-full":""};function a(e,l){return r(),t("div",c,[n(e.$slots,"default")])}const d=o(s,[["render",a]]);export{d as default};
@@ -0,0 +1 @@
import{H as $,I as B,b as C}from"./e1928lvz.js";import{_ as b}from"./nicon-title.vue-mr03t3pg.js";import{p as h,J as l,$ as a,F as u,a0 as s,a1 as p,a4 as r,X as w,u as i,V as N,W as t,U as k,ab as c,a8 as f,ac as V,ad as _}from"./vendor/json-editor-vue-nstwj98r.js";const S=["open"],x={"text-base":""},I={key:0,"text-sm":"",op50:""},T=h({__name:"NSectionBlock",props:{icon:{},text:{},description:{},containerClass:{default:""},headerClass:{},collapse:{type:Boolean,default:!0},open:{type:Boolean,default:!0},padding:{type:[Boolean,String],default:!0}},setup(v){const n=$(v,"open",void 0,{passive:!0});function d(e){n.value=e.target.open}return(e,o)=>{const m=B,g=b;return a(),l(u,null,[s("details",{open:i(n),onToggle:o[0]||(o[0]=(...y)=>d&&d(...y))},[s("summary",{class:r(["cursor-pointer select-none p4 hover:bg-active",e.collapse?"":"pointer-events-none"])},[w(g,{icon:e.icon,text:e.text,"text-xl":"",transition:"",class:r([i(n)?"op100":"op60",e.headerClass])},{default:N(()=>[s("div",null,[s("div",x,[t(e.$slots,"text",{},()=>[c(f(e.text),1)],!0)]),e.description||e.$slots.description?(a(),l("div",I,[t(e.$slots,"description",{},()=>[c(f(e.description),1)],!0)])):p("",!0)]),o[1]||(o[1]=s("div",{class:"flex-auto"},null,-1)),t(e.$slots,"actions",{},void 0,!0),e.collapse?(a(),k(m,{key:0,icon:"carbon-chevron-down",class:"chevron","cursor-pointer":"","place-self-start":"","text-base":"",op75:"",transition:"","duration-500":""})):p("",!0)]),_:3},8,["icon","text","class"])],2),o._lazyshow1||i(n)?(o._lazyshow1=!0,a(),l(u,null,[V(s("div",{class:r(["flex flex-col flex-gap2 pb6 pt2",typeof e.padding=="string"?e.padding:e.padding?"px4":""])},[t(e.$slots,"details",{},void 0,!0),s("div",{class:r([e.containerClass,"mt1"])},[t(e.$slots,"default",{},void 0,!0)],2),t(e.$slots,"footer",{},void 0,!0)],2),[[_,i(n)]])],64)):p("v-show-if",!0)],40,S),o[2]||(o[2]=s("div",{class:"x-divider"},null,-1))],64)}}}),H=C(T,[["__scopeId","data-v-95ac5573"]]);export{H as _};
@@ -0,0 +1 @@
details[data-v-95ac5573]{border-style:none}summary[data-v-95ac5573]{border-style:none;list-style:none}details[open] summary[data-v-95ac5573]{border-style:none}details summary[data-v-95ac5573]::-webkit-details-marker{display:none}details[open] .chevron[data-v-95ac5573]{opacity:.75;transform:rotate(180deg)}
@@ -0,0 +1 @@
import{p as m,J as l,$ as t,F as c,ag as v,a4 as r,u as o,a0 as d,ac as f,a8 as _,aw as g,j as y}from"./vendor/json-editor-vue-nstwj98r.js";import{H as V}from"./e1928lvz.js";const h={class:"n-select-tabs flex flex-inline flex-wrap items-center border n-border-base rounded n-bg-base"},x=["disabled","title"],B=["disabled","value","title"],F=m({__name:"NSelectTabs",props:{modelValue:{default:void 0},disabled:{type:Boolean,default:!1},options:{}},setup(i,{emit:p}){const a=V(i,"modelValue",p,{passive:!0});return(s,n)=>(t(),l("fieldset",h,[(t(!0),l(c,null,v(s.options,(e,b)=>(t(),l("label",{key:e.label,disabled:s.disabled,class:r(["relative n-border-base px-0.5em py-0.1em hover:n-bg-active",[b?"border-l n-border-base ml--1px":"",e.value===o(a)?"n-bg-active":""]]),title:e.label},[d("div",{class:r([e.value===o(a)?"":"op35"])},_(e.label),3),f(d("input",{"onUpdate:modelValue":n[0]||(n[0]=u=>y(a)?a.value=u:null),type:"radio",disabled:s.disabled,value:e.value,title:e.label,class:"absolute inset-0 op-0.1"},null,8,B),[[g,o(a)]])],10,x))),128))]))}});export{F as _};
@@ -0,0 +1 @@
import{H as p,I as m}from"./e1928lvz.js";import{p as f,J as l,$ as o,a4 as n,W as t,ac as b,U as h,a1 as d,aC as v,u as y,a0 as V,j as k,a8 as B}from"./vendor/json-editor-vue-nstwj98r.js";const g=["disabled"],w={key:0,value:"",disabled:"",hidden:""},$=f({__name:"NSelect",props:{modelValue:{default:void 0},placeholder:{default:""},icon:{default:""},disabled:{type:Boolean,default:!1}},setup(i,{emit:r}){const a=p(i,"modelValue",r,{passive:!0});return(e,s)=>{const c=m;return o(),l("div",{class:n(["n-select flex flex items-center border rounded n-bg-base px-2 py-1 focus-within:border-context focus-within:n-focus-base",e.disabled?"border-gray:10":"n-border-base"])},[t(e.$slots,"icon",{},()=>[e.icon?(o(),h(c,{key:0,icon:e.icon,class:"mr-0.4em text-1.1em op50"},null,8,["icon"])):d("",!0)]),b(V("select",{"onUpdate:modelValue":s[0]||(s[0]=u=>k(a)?a.value=u:null),disabled:e.disabled,class:n(["w-full flex-auto n-bg-base !outline-none",e.disabled?"appearance-none":""])},[e.placeholder?(o(),l("option",w,B(e.placeholder),1)):d("",!0),t(e.$slots,"default")],10,g),[[v,y(a)]])],2)}}});export{$ as _};
@@ -0,0 +1 @@
import{p as n,aq as o,ar as i,J as c,$ as r,ac as u,a0 as l,W as h,as as b,a3 as p}from"./vendor/json-editor-vue-nstwj98r.js";const m=["checked","disabled"],v=["disabled"],k=n({__name:"NSwitch",props:o({disabled:{type:Boolean,default:!1}},{modelValue:{type:Boolean,default:!1},modelModifiers:{}}),emits:["update:modelValue"],setup(t){const s=i(t,"modelValue");return(a,e)=>(r(),c("label",{class:"n-switch n-switch-base hover:n-switch-hover n-disabled:n-disabled",checked:s.value||null,disabled:a.disabled||null},[u(l("input",{"onUpdate:modelValue":e[0]||(e[0]=d=>s.value=d),type:"checkbox",class:"peer absolute op0",disabled:a.disabled,onKeypress:e[1]||(e[1]=p(d=>s.value=!s.value,["enter"]))},null,40,v),[[b,s.value]]),e[2]||(e[2]=l("div",{class:"n-switch-slider n-transition n-checked:n-switch-slider-checked peer-active:n-active-base peer-focus-visible:n-focus-base"},[l("div",{class:"n-switch-thumb n-transition n-checked:n-switch-thumb-checked"})],-1)),h(a.$slots,"default")],8,m))}});export{k as _};
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
.quote[data-v-4566448e]:before{background-color:#3390ec;border-radius:2px;content:"";flex:0 0 auto;margin:3px 8px 2px 0;width:2px}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
import{_ as k}from"./state-editor.vue-nqaru57v.js";import{p as x,J as i,$ as e,F as $,ag as N,U as d,V as a,W as B,Y as V,a0 as b,q as h,ai as w,a1 as _,X as o,u as F,ac as O,ab as E}from"./vendor/json-editor-vue-nstwj98r.js";import{_ as P}from"./nsection-block-i439i28t.js";import{f as R,_ as j}from"./e1928lvz.js";import{_ as A}from"./help-fab.vue-kdw4qv3n.js";import"./data-schema-button.vue-cgqdfu43.js";import"./nicon-title.vue-mr03t3pg.js";import"./vendor/shiki-jxvjmls6.js";import"./vendor/unocss-eh8khx5b.js";const G={key:0,flex:"~ col gap-1"},H={key:1,mt2:"",px4:"",italic:"",op35:""},K=x({__name:"StateGroup",props:{state:{},revision:{},prefix:{default:""}},setup(f){return(t,n)=>{const c=k;return e(),i("div",null,[t.state&&Object.keys(t.state).length>0?(e(),i("div",G,[(e(!0),i($,null,N(t.state,(s,r)=>(e(),d(c,{key:r,revision:t.revision,state:s,name:r.startsWith(t.prefix)?r.slice(t.prefix.length):r},{actions:a(l=>[B(t.$slots,"actions",V({ref_for:!0},l))]),_:2},1032,["revision","state","name"]))),128))])):(e(),i("div",H," No data "))])}}}),T={class:"markdown-body"},W={__name:"payload",setup(f,{expose:t}){return t({frontmatter:{}}),(c,s)=>(e(),i("div",T,[...s[0]||(s[0]=[b("h1",null,"State & Async Data",-1),b("p",null,"// TODO",-1)])]))}},q={key:0},tt=x({__name:"payload",setup(f){const t=R(),n=h(()=>t.value?.nuxt.payload),c=h(()=>t.value?.revision.value);async function s(r){await t.value?.nuxt.hooks.callHookParallel("app:data:refresh",r)}return(r,l)=>{const m=K,p=P,v=j,S=k,g=W,D=A,C=w("tooltip");return e(),i($,null,[F(t)?(e(),i("div",q,[o(p,{icon:"carbon-data-set",text:"State",description:"Keyed state from `useState`",padding:!1},{default:a(()=>[o(m,{state:n.value.state,revision:c.value,prefix:"$s"},null,8,["state","revision"])]),_:1}),o(p,{icon:"carbon-data-blob",text:"Data",description:"Keyed state from `useAsyncData`",padding:!1},{actions:a(()=>[o(v,{n:"xs primary","self-start":"",icon:"i-carbon-recycle",onClick:l[0]||(l[0]=y=>s())},{default:a(()=>[...l[1]||(l[1]=[E(" Re-fetch all data ",-1)])]),_:1})]),default:a(()=>[o(m,{state:n.value.data,revision:c.value},{actions:a(({isOpen:y,name:u})=>[y&&u?O((e(),d(v,{key:0,title:`Re-fetch '${u}'`,icon:"carbon-recycle",border:!1,onClick:J=>s([u])},null,8,["title","onClick"])),[[C,`Re-fetch '${u}'`,void 0,{bottom:!0}]]):_("",!0)]),_:1},8,["state","revision"])]),_:1}),n.value.functions&&Object.keys(n.value.functions).length?(e(),d(p,{key:0,icon:"carbon-function",text:"Functions",description:"State for functions"},{default:a(()=>[o(S,{"ml--6":"",state:n.value.functions,revision:c.value},null,8,["state","revision"])]),_:1})):_("",!0)])):_("",!0),o(D,null,{default:a(()=>[o(g)]),_:1})],64)}}});export{tt as default};
@@ -0,0 +1 @@
import{F as r}from"./e1928lvz.js";import{u as m,m as c}from"./vue-devtools-b4i2wj6b.js";import{p,J as i,$ as e,U as o,u as n,V as _,ab as u}from"./vendor/json-editor-vue-nstwj98r.js";import"./vendor/shiki-jxvjmls6.js";import"./vendor/unocss-eh8khx5b.js";import"./vue-virtual-scroller.esm-kqx3l34g.js";const l={class:"h-full w-full"},h=p({__name:"pinia",setup(f){const{connected:s}=m();return(d,t)=>{const a=r;return e(),i("div",l,[n(s)?(e(),o(n(c),{key:0})):(e(),o(a,{key:1},{default:_(()=>[...t[0]||(t[0]=[u(" Connecting.... ",-1)])]),_:1}))])}}});export{h as default};
@@ -0,0 +1 @@
import{_ as w}from"./nbadge-oryc1shd.js";import{_ as S}from"./filepath-item.vue-kxrtauqr.js";import{_ as k}from"./duration-display.vue-l0zz5iex.js";import{A as D,a3 as B,I as V,b as I,x as F,f as H}from"./e1928lvz.js";import{p as v,q as h,J as _,$ as s,a0 as n,X as c,a1 as d,a8 as C,V as f,U as p,Z as W,W as P,ab as x,F as b,ag as E,a4 as A}from"./vendor/json-editor-vue-nstwj98r.js";import{_ as L}from"./nsection-block-i439i28t.js";import{_ as M}from"./help-fab.vue-kdw4qv3n.js";import"./vendor/shiki-jxvjmls6.js";import"./vendor/unocss-eh8khx5b.js";import"./nicon-title.vue-mr03t3pg.js";const j={flex:"~ gap2","items-center":""},q={w8:"","text-right":"","text-sm":"",op25:""},z={key:0,"flex-auto":"","text-right":""},J=v({__name:"PluginItem",props:{plugin:{},index:{}},setup(m){const e=m,r=D(),a=h(()=>B(e.plugin.src,r.value?.rootDir||"").path);return(t,l)=>{const o=w,u=S,i=k;return s(),_("div",j,[n("div",q,C(t.index),1),c(u,{filepath:e.plugin.src,subpath:!0},{default:f(()=>[n("div",null,[a.value.startsWith("#")?(s(),p(o,{key:0,n:"rose",textContent:"virtual"})):a.value.startsWith(".")?d("",!0):(s(),p(o,{key:1,n:"gray",textContent:"module"})),t.plugin.mode==="server"?(s(),p(o,{key:2,n:"teal",textContent:"server"})):d("",!0),t.plugin.mode==="client"?(s(),p(o,{key:3,n:"orange",textContent:"client"})):d("",!0)])]),_:1},8,["filepath"]),t.plugin.metric?.duration!=null?(s(),_("div",z,[c(i,{duration:t.plugin.metric?.duration,factor:10},null,8,["duration"])])):d("",!0)])}}}),R={class:"n-tip n-tip-base",flex:"~ col items-start","mx--4":"",px4:"",py4:""},U={flex:"~ items-center gap-1","font-bold":""},X=v({__name:"HelpTip",props:{title:{},icon:{}},setup(m){return(e,r)=>{const a=V,t=W("ContentSlot");return s(),_("div",R,[n("div",U,[e.icon?(s(),p(a,{key:0,icon:e.icon,class:"n-tip-icon"},null,8,["icon"])):d("",!0),n("div",null,C(e.title),1)]),n("div",null,[P(e.$slots,"default",{},()=>[c(t,{use:e.$slots.default,unwrap:"p"},null,8,["use"])])])])}}}),Y={};function Z(m,e){const r=X;return s(),p(r,{title:"Performance Tip",icon:"carbon-meter",n:"lime6 dark:lime5"},{default:f(()=>[P(m.$slots,"default")]),_:3})}const G=I(Y,[["render",Z]]),K={class:"markdown-body"},O={__name:"plugins",setup(m,{expose:e}){return e({frontmatter:{}}),(a,t)=>{const l=G;return s(),_("div",K,[t[1]||(t[1]=n("h1",null,"Plugins",-1)),t[2]||(t[2]=n("p",null,[x("Nuxt plugins allow you to extend the functionality of the Nuxt runtime and the Vue instance. You can add plugins to the "),n("code",null,"plugins/"),x(" directory and they will be automatically imported and registered.")],-1)),c(l,null,{default:f(()=>[...t[0]||(t[0]=[x(" Plugins always run before your application's runtime. The loading time of each plugin will directly impact your application's initial loading time. ",-1)])]),_:1}),t[3]||(t[3]=n("p",null,[n("a",{href:"https://nuxt.com/docs/guide/directory-structure/plugins",target:"_blank",rel:"noopener"},"Learn more in the documentation")],-1))])}}},Q={pt4:""},tt={class:"text-sm",flex:"~ gap-1 items-center justify-start","mt-3":""},pt=v({__name:"plugins",setup(m){const e=F(),r=H(),a=h(()=>{const l=e.value?.plugins||[],o=r.value?.metrics.clientPlugins()||[];return l.map(u=>{const i=typeof u=="string"?{src:u}:u;return{...i,metric:o.find(g=>g.src===i.src||g.src.startsWith(i.src))}})}),t=h(()=>{const l=r.value?.metrics.clientPlugins()||[],o=Math.min(...l.map(i=>i.start));return Math.max(...l.map(i=>i.end))-o});return(l,o)=>{const u=J,i=k,g=L,N=O,T=M;return s(),_(b,null,[c(g,{icon:"carbon-plug",text:"Plugins",description:`Total plugins: ${a.value.length}`},{default:f(()=>[n("div",Q,[(s(!0),_(b,null,E(a.value,(y,$)=>(s(),p(u,{key:y.src,plugin:y,index:$+1,"ml--4":"","border-base":"",py2:"",class:A($?"border-t":"")},null,8,["plugin","index","class"]))),128)),n("div",tt,[o[0]||(o[0]=n("div",{"i-carbon-timer":"","text-lg":"",op75:""},null,-1)),o[1]||(o[1]=n("span",{op50:""},"Total execution time:",-1)),c(i,{duration:t.value,factor:10},null,8,["duration"])])])]),_:1},8,["description"]),c(T,null,{default:f(()=>[c(N)]),_:1})],64)}}});export{pt as default};
@@ -0,0 +1 @@
import{f as m,w as d,F as f}from"./e1928lvz.js";import{u as c,f as _}from"./vue-devtools-b4i2wj6b.js";import{p as v,J as C,$ as n,U as l,u as o,V as E,ab as I}from"./vendor/json-editor-vue-nstwj98r.js";import"./vendor/shiki-jxvjmls6.js";import"./vendor/unocss-eh8khx5b.js";import"./vue-virtual-scroller.esm-kqx3l34g.js";const k={class:"h-full w-full"},y=v({__name:"render-tree",setup(x){const{connected:a}=c(),t=m(),p=d();function s(r){r?t.value.devtools.open():t.value.devtools.close()}return(r,e)=>{const i=f;return n(),C("div",k,[o(a)?(n(),l(o(_),{key:0,onOnInspectComponentStart:e[0]||(e[0]=u=>s(!1)),onOnInspectComponentEnd:e[1]||(e[1]=u=>s(!0)),onOpenInEditor:o(p)},null,8,["onOpenInEditor"])):(n(),l(i,{key:1},{default:E(()=>[...e[2]||(e[2]=[I(" Connecting.... ",-1)])]),_:1}))])}}});export{y as default};
@@ -0,0 +1 @@
import{_ as x}from"./state-editor.vue-nqaru57v.js";import{_ as b}from"./nsection-block-i439i28t.js";import{J as u,$ as l,a0 as o,ab as d,p as y,q as c,a1 as C,X as e,u as f,V as a,F as k}from"./vendor/json-editor-vue-nstwj98r.js";import{_ as w}from"./help-fab.vue-kdw4qv3n.js";import{f as N,bl as R}from"./e1928lvz.js";import"./data-schema-button.vue-cgqdfu43.js";import"./nicon-title.vue-mr03t3pg.js";import"./vendor/shiki-jxvjmls6.js";import"./vendor/unocss-eh8khx5b.js";const T={class:"markdown-body"},V={__name:"runtime-configs",setup(_,{expose:t}){return t({frontmatter:{}}),(m,n)=>(l(),u("div",T,[...n[0]||(n[0]=[o("h1",null,"Runtime Configs",-1),o("p",null,"Nuxt provides a runtime config API to expose configuration within your application and server routes, with the ability to update it at runtime by setting environment variables.",-1),o("p",null,[d("In Nuxt DevTools, the editor allows you to edit the runtime config temporarily to see how the changes affect your application. To update them, you might want to update your "),o("code",null,"nuxt.config.js"),d(" file, or check more details in the documentation.")],-1),o("p",null,[o("a",{href:"https://nuxt.com/docs/guide/going-further/runtime-config",target:"_blank",rel:"noopener"},"Learn more in the documentation")],-1)])]))}},$={key:0},H=y({__name:"runtime-configs",setup(_){const t=N(),p=R(),m=c(()=>t.value?.nuxt.payload),n=c(()=>t.value?.revision.value),g=c(()=>{const i={...p.value};return delete i.public,delete i.app,i});return(i,B)=>{const s=x,r=b,v=V,h=w;return l(),u(k,null,[f(t)?(l(),u("div",$,[e(r,{icon:"carbon-settings-services",text:"App Config",padding:!1},{default:a(()=>[e(s,{state:f(t).app.appConfig,revision:n.value},null,8,["state","revision"])]),_:1}),e(r,{icon:"carbon-settings",text:"Public Runtime Config",padding:!1},{default:a(()=>[e(s,{state:m.value.config?.public,revision:n.value},null,8,["state","revision"])]),_:1}),e(r,{icon:"i-carbon-code-signing-service",text:"Private Runtime Config",open:!1,padding:!1,description:"These values are not exposed to the client. Readonly in the DevTools."},{default:a(()=>[e(s,{state:g.value,revision:n.value,readonly:""},null,8,["state","revision"])]),_:1})])):C("",!0),e(h,null,{default:a(()=>[e(v)]),_:1})],64)}}});export{H as default};
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
import{_ as j}from"./ncheckbox.vue-ktgiyht2.js";import{H as O,_ as R,I as T,v as A}from"./e1928lvz.js";import{_ as E}from"./nselect.vue-h7dqrznf.js";import{p as L,q as N,x as q,J as u,$ as s,a1 as b,W as m,F as c,ag as h,u as r,X as y,a0 as C,U as p,V,ab as U,a4 as v,a8 as z}from"./vendor/json-editor-vue-nstwj98r.js";const H={p4:"",flex:"~ col gap-4"},J={key:1,ml2:"",flex:""},K=["value"],M={key:0,flex:"","gap-4":""},Y=L({__name:"ServerRouteInputs",props:{modelValue:{},keys:{default:()=>[]},default:{default:()=>({})},disabled:{type:Boolean,default:!1}},setup(S,{emit:w}){const g=S,d=O(g,"modelValue",w,{passive:!0}),$=N(()=>[...g.keys,"active","key","value","type"]),B=N(()=>{const l={};for(const e of $.value)l[e]=g.default[e]||"";return l}),I=["string","number","boolean","file","date","time","datetime-local"];function D(l,e){const t=e.target;if(t.files&&t.files[0]){const i=t.files[0],f=new FileReader;f.readAsDataURL(i),f.onload=()=>{d.value[l].value=f.result}}}return q(()=>d,l=>{l.value.forEach(e=>{if(e.type==="number"&&typeof e.value!="number"){const t=Number.parseFloat(e.value);e.value=Number.isNaN(t)?0:t}else e.type==="boolean"&&typeof e.value!="boolean"?e.value=!0:e.type==="file"&&typeof e.value!="object"?e.value="":e.type==="date"&&typeof e.value=="string"&&!e.value.match(/^\d{4}-\d{2}-\d{2}$/)?e.value=new Date().toISOString().slice(0,10):e.type==="time"&&typeof e.value=="string"&&!e.value.match(/^\d{2}:\d{2}$/)?e.value=new Date().toISOString().slice(11,16):e.type==="datetime-local"&&typeof e.value=="string"&&!e.value.match(/^\d{4}-\d{2}-\d{2}T\d{2}:\d{2}$/)?e.value=new Date().toISOString().slice(0,16):e.type==="string"&&(e.value=e.value.toString())})},{deep:!0,immediate:!0,flush:"sync"}),(l,e)=>{const t=j,i=A,f=E,F=T,_=R;return s(),u("div",H,[(s(!0),u(c,null,h(r(d),(a,k)=>(s(),u("div",{key:k,flex:"~ gap-2","justify-around":""},[m(l.$slots,"input",{item:a}),(s(!0),u(c,null,h($.value,n=>(s(),u(c,{key:n},[a.type!==null&&n==="active"?(s(),p(t,{key:0,modelValue:a[n],"onUpdate:modelValue":o=>a[n]=o,n:"sm primary",disabled:l.disabled},null,8,["modelValue","onUpdate:modelValue","disabled"])):b("",!0),a.type!==null&&n==="key"?(s(),p(i,{key:1,modelValue:a[n],"onUpdate:modelValue":o=>a[n]=o,placeholder:n,"flex-1":"","font-mono":"",n:"sm primary",disabled:l.disabled,class:v(l.disabled?"op50":"")},null,8,["modelValue","onUpdate:modelValue","placeholder","disabled","class"])):n==="value"?(s(),u(c,{key:2},[a.type==="file"?(s(),p(i,{key:0,type:"file",disabled:l.disabled,class:v(l.disabled?"op75":""),onChange:o=>D(k,o)},null,8,["disabled","class","onChange"])):a.type==="boolean"?(s(),u("div",J,[y(t,{modelValue:a.value,"onUpdate:modelValue":o=>a.value=o,placeholder:"Value",n:"green lg",disabled:l.disabled},null,8,["modelValue","onUpdate:modelValue","disabled"])])):(s(),p(i,{key:2,modelValue:a.value,"onUpdate:modelValue":o=>a.value=o,type:a.type,placeholder:"Value","flex-1":"","font-mono":"",n:"sm primary",disabled:l.disabled,class:v(l.disabled?"op75":"")},null,8,["modelValue","onUpdate:modelValue","type","disabled","class"]))],64)):n==="type"?(s(),p(f,{key:3,modelValue:a.type,"onUpdate:modelValue":o=>a.type=o,n:"sm green",class:v(l.disabled?"op75":""),disabled:l.disabled},{default:V(()=>[(s(),u(c,null,h(I,o=>C("option",{key:o,value:o},z(o),9,K)),64))]),_:2},1032,["modelValue","onUpdate:modelValue","class","disabled"])):b("",!0)],64))),128)),m(l.$slots,"input-actions",{},()=>[y(_,{n:"red",disabled:l.disabled,class:v(l.disabled?"op0!":""),onClick:n=>r(d).splice(k,1)},{default:V(()=>[y(F,{icon:"carbon:trash-can"})]),_:2},1032,["disabled","class","onClick"])])]))),128)),l.disabled?b("",!0):(s(),u("div",M,[m(l.$slots,"actions",{params:r(d)},()=>[y(_,{icon:"carbon-add",n:"sm primary",my1:"","px-3":"",onClick:e[0]||(e[0]=a=>r(d).push({...B.value}))},{default:V(()=>[...e[2]||(e[2]=[U(" Add ",-1)])]),_:1}),e[4]||(e[4]=C("div",{"flex-auto":""},null,-1)),r(d).length?(s(),p(_,{key:0,icon:"carbon-trash-can",n:"sm red",my1:"","px-3":"",onClick:e[1]||(e[1]=a=>r(d).splice(0,r(d).length))},{default:V(()=>[...e[3]||(e[3]=[U(" Remove All ",-1)])]),_:1})):b("",!0)])])),m(l.$slots,"default")])}}});export{Y as _};
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
import{_ as p}from"./filepath-item.vue-kxrtauqr.js";import{A as m}from"./e1928lvz.js";import{p as f,J as r,$ as n,F as s,ag as _,a0 as o,a8 as h,U as d,a1 as g}from"./vendor/json-editor-vue-nstwj98r.js";const k={mt2:"",grid:"~ cols-[max-content_1fr] gap-x-4","font-mono":""},$={"text-right":""},x={"ws-nowrap":""},B=f({__name:"StacktraceList",props:{stacktrace:{}},setup(N){const i=m();function c(a){try{let t=new URL(a).pathname;return t.startsWith("/_nuxt/")&&(t=t.slice(6)),t.startsWith("/@id/virtual:nuxt:")?`#build/${t.split("/.nuxt/")[1]}`.replace(/\.m?js$/,""):t.includes("/@fs/")?`/${t.split("/@fs/")[1]}`:(i.value?.rootDir||"")+t}catch{return a}}return(a,t)=>{const l=p;return n(),r("div",k,[(n(!0),r(s,null,_(a.stacktrace,(e,u)=>(n(),r(s,{key:u},[o("div",$,h(e.functionName||"(anonymous)"),1),o("div",x,[e.fileName?(n(),d(l,{key:0,filepath:`${c(e.fileName)}:${e.lineNumber}:${e.columnNumber}`,subpath:""},null,8,["filepath"])):g("",!0)])],64))),128))])}}});export{B as _};
@@ -0,0 +1 @@
import{f as m,al as o,r as n}from"./e1928lvz.js";import{q as s}from"./vendor/json-editor-vue-nstwj98r.js";function u(){const p=m(),a=o("getComponents",()=>n.getComponents()),l=s(()=>Object.entries(p.value?.nuxt?.vueApp._context.components||{}).map(([e])=>({pascalName:e,global:!0})).filter(e=>!/^Lazy[A-Z]/.test(e.pascalName)).filter(e=>!(a.value||[]).find(t=>t.pascalName===e.pascalName)));return s(()=>[...l.value,...a.value||[]].sort((e,t)=>e.pascalName.localeCompare(t.pascalName)))}function i(){return o("getComponentsRelationships",()=>n.getComponentsRelationships())}export{i as a,u};
@@ -0,0 +1 @@
import{a4 as C,H as O,_ as $}from"./e1928lvz.js";import{_ as z}from"./data-schema-button.vue-cgqdfu43.js";import{p as D,n as g,E,x as J,ai as M,J as c,$ as r,u as o,a0 as p,a1 as u,W as P,a4 as d,a8 as b,a5 as R,a6 as j,F as k,ac as x,U as _,X as A,av as F,Y as U,z as H}from"./vendor/json-editor-vue-nstwj98r.js";const T=["open"],W={flex:"~ gap2","select-none":"","items-center":"",px4:""},X={key:0,class:"bg-red:10 px5 py3 text-red"},K=D({__name:"StateEditor",props:{name:{},open:{type:Boolean},revision:{},state:{},readonly:{type:Boolean}},emits:["update:open"],setup(h,{emit:V}){const n=h,s=O(n,"open",V,{passive:!0}),B=C(),i=g(),l=g();function m(e){return["number","bigint","string","boolean"].includes(typeof e)}function v(){l.value=void 0;try{i.value=m(n.state)?n.state:JSON.parse(JSON.stringify(n.state||{}))}catch(e){console.error(e),l.value=e}}E(()=>{v(),J(()=>[n.revision,n.state],([e,t])=>{m(t)?i.value=n.state:y(t,n.state)},{deep:!0})});function y(e,t){for(const a in e)Array.isArray(e[a])?t[a]=e[a].slice():typeof e[a]=="object"&&e[a]!==null?y(e[a],t[a]):t[a]=e[a]}async function S(){v(),await H()}return(e,t)=>{const a=$,w=z,N=M("tooltip");return r(),c("div",{class:"state-editor-details",open:e.name?o(s):!0},[p("div",W,[e.name?(r(),c("button",{key:0,flex:"~","cursor-pointer":"","items-center":"",class:d(o(s)?"":"op50"),onClick:t[0]||(t[0]=f=>s.value=!o(s))},[p("div",{"i-carbon-chevron-right":"",transition:"",class:d(o(s)?"rotate-90 op0":"")},null,2),p("code",{px3:"",py1:"","font-mono":"",class:d(o(s)?"bg-[#8881] rounded-t":"rounded hover:bg-active")},b(e.name),3)],2)):u("",!0),P(e.$slots,"actions",R(j({isOpen:o(s),name:e.name,state:e.state}))),o(s)?(r(),c(k,{key:1},[x(A(a,{title:"Refresh View",icon:"carbon-renew",border:!1,onClick:S},null,512),[[N,"Refresh View",void 0,{bottom:!0}]]),i.value&&!l.value?(r(),_(w,{key:0,getter:()=>({name:e.name,input:JSON.stringify(i.value)})},null,8,["getter"])):u("",!0)],64)):u("",!0)]),o(s)||!e.name?(r(),c(k,{key:0},[l.value?(r(),c("div",X," Error: "+b(l.value),1)):(r(),_(o(F),U({key:1,modelValue:i.value,"onUpdate:modelValue":t[1]||(t[1]=f=>i.value=f)},e.$attrs,{class:["json-editor-vue",[o(B)==="dark"?"jse-theme-dark":"",(e.name,"")]],"main-menu-bar":!1,"navigation-bar":!1,"status-bar":!1,"read-only":n.readonly,indentation:2,"tab-size":2}),null,16,["modelValue","class","read-only"]))],64)):u("",!0)],8,T)}}});export{K as _};
@@ -0,0 +1 @@
import{_ as j}from"./nbadge-oryc1shd.js";import{_ as F}from"./ncode-block.vue-j1bpwykw.js";import{_ as W}from"./ncheckbox.vue-ktgiyht2.js";import{a6 as q,ah as A,ai as L,Z as E,aj as G,Q as J,q as Q,_ as X,M as Y,ak as Z,A as z,Y as H,W as K,a3 as O,al as ee}from"./e1928lvz.js";import{p as te,k as P,J as _,$ as p,F as $,W as ae,X as o,a1 as w,u as s,a8 as M,U as ne,V as u,a0 as v,ab as c,q as oe}from"./vendor/json-editor-vue-nstwj98r.js";const se={key:0},le={p4:"",flex:"~ col gap-1"},re={class:"text-lg font-medium leading-6"},ue={flex:"~ gap-3",mt2:"","justify-end":""},_e=te({__name:"NpmVersionCheck",props:{packageName:{},options:{},showVersion:{type:Boolean,default:!0}},setup(l){const a=l,t=q(),{info:n,update:i,state:g,processId:y,restart:m}=A(a.packageName,a.options),k=P(!0),N=P(!0),U=L(),x=G(),D=E();async function C(){const r=await i(async e=>x.start(e));Y("npm:update",{packageName:a.packageName,oldVersion:n.value?.current}),r&&N.value&&U.value.push({id:r,message:`${a.packageName} has been updated. Do you want to restart the Nuxt server now?`}),r&&k.value&&(D.value=r,t.push("/modules/terminals"))}return(r,e)=>{const b=j,S=F,h=W,T=Q,V=X,I=J;return p(),_($,null,[ae(r.$slots,"default",{id:s(y),info:s(n),update:C,state:s(g),restart:s(m)},()=>[s(n)&&r.showVersion?(p(),_("code",se,M(`v${s(n).current}`),1)):w("",!0),s(n)?.latest?(p(),_($,{key:1},[s(n).needsUpdate?(p(),_("button",{key:0,onClick:e[0]||(e[0]=f=>C())},[o(b,{n:"green",title:"updates available",textContent:"updates available"})])):(p(),ne(b,{key:1,n:"gray",title:"latest",textContent:"latest"}))],64)):w("",!0)]),o(s(x),null,{default:u(({resolve:f,args:R})=>[o(I,{"model-value":!0,onClose:d=>f(!1)},{default:u(()=>[v("div",le,[v("h3",re," Update "+M(a.packageName)+"? ",1),e[8]||(e[8]=v("p",{op50:""}," The following command will be executed in your terminal: ",-1)),o(S,{code:R[0],lang:"bash",my3:"",px4:"",py2:"",border:"~ base rounded",lines:!1},null,8,["code"]),o(h,{modelValue:k.value,"onUpdate:modelValue":e[1]||(e[1]=d=>k.value=d),n:"primary"},{default:u(()=>[...e[3]||(e[3]=[c(" Navigate to terminal ",-1)])]),_:1},8,["modelValue"]),o(h,{modelValue:N.value,"onUpdate:modelValue":e[2]||(e[2]=d=>N.value=d),n:"primary"},{default:u(()=>[...e[4]||(e[4]=[c(" Restart Nuxt server after update ",-1)])]),_:1},8,["modelValue"]),v("div",ue,[o(T,{n:"sm amber","flex-auto":"",icon:"i-carbon-data-backup"},{default:u(()=>[...e[5]||(e[5]=[c(" Please make sure to backup your project first. ",-1)])]),_:1}),o(V,{onClick:d=>f(!1)},{default:u(()=>[...e[6]||(e[6]=[c(" Cancel ",-1)])]),_:2},1032,["onClick"]),o(V,{n:"solid primary",onClick:d=>f(!0)},{default:u(()=>[...e[7]||(e[7]=[c(" Update ",-1)])]),_:2},1032,["onClick"])])])]),_:2},1032,["onClose"])]),_:1})],64)}}}),B=["pages","meta","components","imports","nuxt-config-schema","@nuxt/devtools","@nuxt/telemetry"];function ie(){return ee("getModulesList",async()=>(await $fetch("https://api.nuxt.com/modules?version=3")).modules.filter(a=>!B.includes(a.npm)&&a.compatibility.nuxt.includes(">=3")))}function ve(){return Z("installed-modules",()=>{const l=z(),a=ie();return oe(()=>(l.value?._installedModules||[]).map(t=>{if(!t.entryPath)return;const n=!!(t.entryPath&&H(t.entryPath)),i=t.meta?.name?t.meta?.name:t.entryPath?n?K(t.entryPath):l.value?.rootDir?O(t.entryPath,l.value?.rootDir).path:void 0:void 0,g=!!l.value?.modules?.includes(i),y=a.value?.find(m=>m.npm===i)||a.value?.find(m=>m.name===i);return{name:i,isPackageModule:n,isUninstallable:g,info:y,...t}}).filter(t=>t&&(!t.name||!B.includes(t.name))))})}export{_e as _,ie as a,ve as u};
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
import{a5 as E,G as V,r as f,E as p,_ as h,ap as B,Z as F,I,aa as D}from"./e1928lvz.js";import{x as M,a as P}from"./vendor/xterm-elw8536o.js";import{p as y,k as g,E as R,J as d,$ as t,F as A,a0 as c,X as N,U as m,a1 as v,a8 as _,q,w as z,u as w,ag as L,ab as C,a4 as $,al as j,V as G}from"./vendor/json-editor-vue-nstwj98r.js";import"./vendor/shiki-jxvjmls6.js";import"./vendor/unocss-eh8khx5b.js";const J={border:"t base",flex:"~ gap-2","items-center":"",p2:""},S={"text-sm":"",op50:""},U=y({__name:"TerminalView",props:{id:{}},setup(b){const n=b,r=g(),i=E(),o=g();let a;R(async()=>{a=new M.Terminal({convertEol:!0,cols:80,screenReaderMode:!0});const u=new P.FitAddon;a.loadAddon(u),a.open(r.value),u.fit(),V(window,"resize",()=>{u.fit()}),o.value=await f.getTerminalDetail(await p(),n.id),o.value?.buffer&&a.write(o.value.buffer),i.hook("devtools:terminal:data",({id:e,data:l})=>{e===n.id&&a.write(l)})});async function s(){f.runTerminalAction(await p(),n.id,"clear"),a?.clear()}async function k(){f.runTerminalAction(await p(),n.id,"restart")}async function x(){f.runTerminalAction(await p(),n.id,"terminate")}return(u,e)=>{const l=h;return t(),d(A,null,[c("div",{ref_key:"container",ref:r,"h-full":"","w-full":"","of-auto":"","bg-black":""},null,512),c("div",J,[N(l,{title:"Clear",icon:"i-carbon-clean",border:!1,onClick:e[0]||(e[0]=T=>s())}),o.value?.restartable?(t(),m(l,{key:0,title:"Restart",icon:"carbon-renew",border:!1,onClick:e[1]||(e[1]=T=>k())})):v("",!0),o.value?.terminatable?(t(),m(l,{key:1,title:"Terminate",icon:"carbon-delete",border:!1,onClick:e[2]||(e[2]=T=>x())})):v("",!0),c("span",S,_(o.value?.description),1)])],64)}}}),X={key:0,"h-full":"","w-full":"","of-hidden":"",grid:"~ rows-[max-content_1fr_max-content]"},Z={flex:"~",border:"b base","n-navbar-glass":"","flex-1":"","items-center":""},H=["onClick"],K={key:1,p10:""},O={key:1,"h-full":"",flex:"","items-center":"","justify-center":""},Q=y({__name:"TerminalPage",setup(b){const n=B(),r=F(),i=q(()=>n.value?.find(a=>a.id===r.value));async function o(a){f.runTerminalAction(await p(),a,"remove")}return z(()=>{!r.value&&n.value?.length&&(r.value=n.value[0].id)}),(a,s)=>{const k=I,x=h,u=U;return w(n)?.length?(t(),d("div",X,[c("div",Z,[(t(!0),d(A,null,L(w(n),e=>(t(),d("button",{key:e.id,border:"r base",flex:"~ gap-2","items-center":"",px3:"",py2:"",class:$(e.id===i.value?.id?"bg-active":""),onClick:l=>r.value=e.id},[e.icon?(t(),m(k,{key:0,icon:e.icon},null,8,["icon"])):v("",!0),c("span",{class:$(e.id===i.value?.id?"":"op50")},_(e.name)+_(e.isTerminated?" (terminated)":""),3),e.isTerminated?(t(),m(x,{key:1,icon:"carbon-close","mx--2":"",border:!1,onClick:j(l=>o(e.id),["stop"])},null,8,["onClick"])):v("",!0)],10,H))),128))]),i.value?(t(),m(u,{id:i.value.id,key:i.value.id},null,8,["id"])):(t(),d("div",K,[s[0]||(s[0]=C(" Terminal ",-1)),c("code",null,_(w(r)),1),s[1]||(s[1]=C(" not found ",-1))]))])):(t(),d("div",O,[...s[2]||(s[2]=[c("em",{op50:""},"No terminal attached",-1)])]))}}}),ae=y({__name:"terminals",setup(b){return(n,r)=>{const i=Q,o=D;return t(),m(o,null,{default:G(()=>[N(i)]),_:1})}}});export{ae as default};
@@ -0,0 +1 @@
.xterm{padding-left:1rem;padding-right:1rem}
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
.timeline-scroller[data-v-da163089]::-webkit-scrollbar{height:100px;width:.1px}.timeline-scroller[data-v-da163089]::-webkit-scrollbar-track{background-color:transparent}.timeline-scroller[data-v-da163089]::-webkit-scrollbar-thumb{background-color:#8881;height:100px}.timeline-scroller[data-v-da163089]:hover::-webkit-scrollbar-thumb{background-color:#8882}
@@ -0,0 +1 @@
import{i as e,p as i}from"./vendor/unocss-eh8khx5b.js";import"./vendor/json-editor-vue-nstwj98r.js";e({defaults:{presets:[i({prefix:["i-",""],collections:{},cdn:"https://esm.sh/",scale:1.2,extraProperties:{display:"inline-block","vertical-align":"middle"}})]},bypassDefined:!0});
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
.jse-theme-dark{--jse-theme: dark;--jse-theme-color: #2f6dd0;--jse-theme-color-highlight: #467cd2;--jse-background-color: #1e1e1e;--jse-text-color: #d4d4d4;--jse-text-color-inverse: #4d4d4d;--jse-main-border: 1px solid #4f4f4f;--jse-menu-color: #fff;--jse-modal-background: #2f2f2f;--jse-modal-overlay-background: rgba(0,0,0,.5);--jse-modal-code-background: #2f2f2f;--jse-tooltip-color: var(--jse-text-color);--jse-tooltip-background: #4b4b4b;--jse-tooltip-border: 1px solid #737373;--jse-tooltip-action-button-color: inherit;--jse-tooltip-action-button-background: #737373;--jse-panel-background: #333;--jse-panel-background-border: 1px solid #464646;--jse-panel-color: var(--jse-text-color);--jse-panel-color-readonly: #737373;--jse-panel-border: 1px solid #3c3c3c;--jse-panel-button-color-highlight: #e5e5e5;--jse-panel-button-background-highlight: #464646;--jse-navigation-bar-background: #656565;--jse-navigation-bar-background-highlight: #7e7e7e;--jse-navigation-bar-dropdown-color: var(--jse-text-color);--jse-context-menu-background: #4b4b4b;--jse-context-menu-background-highlight: #595959;--jse-context-menu-separator-color: #595959;--jse-context-menu-color: var(--jse-text-color);--jse-context-menu-pointer-background: #737373;--jse-context-menu-pointer-background-highlight: #818181;--jse-context-menu-pointer-color: var(--jse-context-menu-color);--jse-key-color: #9cdcfe;--jse-value-color: var(--jse-text-color);--jse-value-color-number: #b5cea8;--jse-value-color-boolean: #569cd6;--jse-value-color-null: #569cd6;--jse-value-color-string: #ce9178;--jse-value-color-url: #ce9178;--jse-delimiter-color: #949494;--jse-edit-outline: 2px solid var(--jse-text-color);--jse-selection-background-color: #464646;--jse-selection-background-inactive-color: #333;--jse-hover-background-color: #343434;--jse-active-line-background-color: hsla(0,0%,100%,.06);--jse-search-match-background-color: #343434;--jse-collapsed-items-background-color: #333;--jse-collapsed-items-selected-background-color: #565656;--jse-collapsed-items-link-color: #b2b2b2;--jse-collapsed-items-link-color-highlight: #ec8477;--jse-search-match-color: #724c27;--jse-search-match-outline: 1px solid #966535;--jse-search-match-active-color: #9f6c39;--jse-search-match-active-outline: 1px solid #bb7f43;--jse-tag-background: #444;--jse-tag-color: #bdbdbd;--jse-table-header-background: #333;--jse-table-header-background-highlight: #424242;--jse-table-row-odd-background: hsla(0,0%,100%,.1);--jse-input-background: #3d3d3d;--jse-input-border: var(--jse-main-border);--jse-button-background: grey;--jse-button-background-highlight: #7a7a7a;--jse-button-color: #e0e0e0;--jse-button-secondary-background: #494949;--jse-button-secondary-background-highlight: #5d5d5d;--jse-button-secondary-background-disabled: #9d9d9d;--jse-button-secondary-color: var(--jse-text-color);--jse-a-color: #55abff;--jse-a-color-highlight: #4387c9;--jse-svelte-select-background: #3d3d3d;--jse-svelte-select-border: 1px solid #4f4f4f;--list-background: #3d3d3d;--item-hover-bg: #505050;--multi-item-bg: #5b5b5b;--input-color: #d4d4d4;--multi-clear-bg: #8a8a8a;--multi-item-clear-icon-color: #d4d4d4;--multi-item-outline: 1px solid #696969;--list-shadow: 0 2px 8px 0 rgba(0,0,0,.4);--jse-color-picker-background: #656565;--jse-color-picker-border-box-shadow: #8c8c8c 0 0 0 1px}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1 @@
*,:after,:before{border-color:var(--un-default-border-color, #e5e7eb);border-style:solid;border-width:0;box-sizing:border-box}:after,:before{--un-content: ""}:host,html{line-height:1.5;-webkit-text-size-adjust:100%;font-family:ui-sans-serif,system-ui,sans-serif,Apple Color Emoji,Segoe UI Emoji,Segoe UI Symbol,Noto Color Emoji;font-feature-settings:normal;font-variation-settings:normal;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-tap-highlight-color:transparent}body{line-height:inherit;margin:0}hr{border-top-width:1px;color:inherit;height:0}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,pre,samp{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-size:1em;font-variation-settings:normal}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{border-collapse:collapse;border-color:inherit;text-indent:0}button,input,optgroup,select,textarea{color:inherit;font-family:inherit;font-feature-settings:inherit;font-size:100%;font-variation-settings:inherit;font-weight:inherit;line-height:inherit;margin:0;padding:0}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dd,dl,figure,h1,h2,h3,h4,h5,h6,hr,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}menu,ol,ul{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{color:#9ca3af;opacity:1}input::placeholder,textarea::placeholder{color:#9ca3af;opacity:1}[role=button],button{cursor:pointer}:disabled{cursor:default}audio,canvas,embed,iframe,img,object,svg,video{display:block;vertical-align:middle}img,video{height:auto;max-width:100%}[hidden]:where(:not([hidden=until-found])){display:none}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
@@ -0,0 +1,32 @@
/**
* Copyright (c) 2014 The xterm.js authors. All rights reserved.
* Copyright (c) 2012-2013, Christopher Jeffrey (MIT License)
* https://github.com/chjj/term.js
* @license MIT
*
* Permission is hereby granted, free of charge, to any person obtaining a copy
* of this software and associated documentation files (the "Software"), to deal
* in the Software without restriction, including without limitation the rights
* to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
* copies of the Software, and to permit persons to whom the Software is
* furnished to do so, subject to the following conditions:
*
* The above copyright notice and this permission notice shall be included in
* all copies or substantial portions of the Software.
*
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
* IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
* FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
* AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
* LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
* OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
* THE SOFTWARE.
*
* Originally forked from (with the author's permission):
* Fabrice Bellard's javascript vt100 for jslinux:
* http://bellard.org/jslinux/
* Copyright (c) 2011 Fabrice Bellard
* The original design remains. The terminal itself
* has been extended to include xterm CSI codes, among
* other features.
*/.xterm{cursor:text;position:relative;-moz-user-select:none;user-select:none;-ms-user-select:none;-webkit-user-select:none}.xterm.focus,.xterm:focus{outline:none}.xterm .xterm-helpers{position:absolute;top:0;z-index:5}.xterm .xterm-helper-textarea{border:0;height:0;left:-9999em;margin:0;opacity:0;overflow:hidden;padding:0;position:absolute;resize:none;top:0;white-space:nowrap;width:0;z-index:-5}.xterm .composition-view{background:#000;color:#fff;display:none;position:absolute;white-space:nowrap;z-index:1}.xterm .composition-view.active{display:block}.xterm .xterm-viewport{background-color:#000;cursor:default;inset:0;overflow-y:scroll;position:absolute}.xterm .xterm-screen{position:relative}.xterm .xterm-screen canvas{left:0;position:absolute;top:0}.xterm .xterm-scroll-area{visibility:hidden}.xterm-char-measure-element{display:inline-block;left:-9999em;line-height:normal;position:absolute;top:0;visibility:hidden}.xterm.enable-mouse-events{cursor:default}.xterm .xterm-cursor-pointer,.xterm.xterm-cursor-pointer{cursor:pointer}.xterm.column-select.focus{cursor:crosshair}.xterm .xterm-accessibility:not(.debug),.xterm .xterm-message{color:transparent;inset:0;pointer-events:none;position:absolute;z-index:10}.xterm .xterm-accessibility-tree:not(.debug) ::-moz-selection{color:transparent}.xterm .xterm-accessibility-tree:not(.debug) ::selection{color:transparent}.xterm .xterm-accessibility-tree{-webkit-user-select:text;-moz-user-select:text;user-select:text;white-space:pre}.xterm .live-region{height:1px;left:-9999px;overflow:hidden;position:absolute;width:1px}.xterm-dim{opacity:1!important}.xterm-underline-1{text-decoration:underline}.xterm-underline-2{-webkit-text-decoration:double underline;text-decoration:double underline}.xterm-underline-3{-webkit-text-decoration:wavy underline;text-decoration:wavy underline}.xterm-underline-4{-webkit-text-decoration:dotted underline;text-decoration:dotted underline}.xterm-underline-5{-webkit-text-decoration:dashed underline;text-decoration:dashed underline}.xterm-overline{text-decoration:overline}.xterm-overline.xterm-underline-1{text-decoration:overline underline}.xterm-overline.xterm-underline-2{-webkit-text-decoration:overline double underline;text-decoration:overline double underline}.xterm-overline.xterm-underline-3{-webkit-text-decoration:overline wavy underline;text-decoration:overline wavy underline}.xterm-overline.xterm-underline-4{-webkit-text-decoration:overline dotted underline;text-decoration:overline dotted underline}.xterm-overline.xterm-underline-5{-webkit-text-decoration:overline dashed underline;text-decoration:overline dashed underline}.xterm-strikethrough{text-decoration:line-through}.xterm-screen .xterm-decoration-container .xterm-decoration{position:absolute;z-index:6}.xterm-screen .xterm-decoration-container .xterm-decoration.xterm-decoration-top-layer{z-index:7}.xterm-decoration-overview-ruler{pointer-events:none;position:absolute;right:0;top:0;z-index:8}.xterm-decoration-top{position:relative;z-index:2}
@@ -0,0 +1 @@
import{_ as w}from"./nnavbar.vue-bxefhipc.js";import{_ as D}from"./ncode-block.vue-j1bpwykw.js";import{bj as S,bk as j,S as B,j as P,n as U,a8 as E}from"./e1928lvz.js";import{J as c,$ as i,a0 as a,p as I,k as m,w as W,q as _,X as l,V as u,U as q,a8 as v,F as d,ag as z,a4 as G}from"./vendor/json-editor-vue-nstwj98r.js";import{_ as H}from"./help-fab.vue-kdw4qv3n.js";import"./client-hkqvtzyx.js";import"./vendor/shiki-jxvjmls6.js";import"./vendor/unocss-eh8khx5b.js";const J={class:"markdown-body"},L={__name:"virtual-files",setup(h,{expose:r}){return r({frontmatter:{}}),(p,o)=>(i(),c("div",J,[...o[0]||(o[0]=[a("h1",null,"Virtual Files",-1),a("p",null,"Virtual files are generated on the fly to support the conventions of the framework, and to provide a better developer experience.",-1)])]))}},R=["onClick"],X={key:0,"h-full":"","of-hidden":"",flex:"~ col"},A={border:"b base","flex-none":"",px4:"",py2:"","text-sm":"",op75:""},oe=I({__name:"virtual-files",setup(h){const r=m(""),n=S(),p=j(),o=m();W(()=>{if(!p.value)return;const e=`/_vfs.json/${encodeURIComponent(p.value)}`;fetch(e,{headers:{accept:"application/json"}}).then(t=>t.json()).then(t=>o.value=t.current)});function x(e){if(n.value?.rootDir)return e.startsWith(n.value?.rootDir)?e.slice(n.value.rootDir.length):e}const f=_(()=>n.value?n.value.entries.filter(e=>!e.id.startsWith(`${n.value?.rootDir||""}/.nuxt/`)).sort((e,t)=>e.id.localeCompare(t.id)):[]),k=_(()=>new B(f.value,{keys:["id","path"]})),b=_(()=>r.value?k.value.search(r.value).map(e=>e.item):f.value);return(e,t)=>{const y=w,g=D,C=U,$=P,F=E,N=L,V=H;return i(),c(d,null,[l(F,{class:"virtual-files","storage-key":"tab-virtual-files"},{left:u(()=>[l(y,{search:r.value,"onUpdate:search":t[0]||(t[0]=s=>r.value=s),"no-padding":"",p3:""},null,8,["search"]),(i(!0),c(d,null,z(b.value,s=>(i(),c(d,{key:s.id},[a("button",{block:"","w-full":"","select-none":"",truncate:"",px2:"",py1:"","text-start":"","text-sm":"","font-mono":"",class:G(s.id===o.value?.id?"text-primary n-bg-active":"text-secondary hover:n-bg-hover"),onClick:K=>p.value=s.id},v(x(s.id)),11,R),t[1]||(t[1]=a("div",{"x-divider":""},null,-1))],64))),128))]),right:u(()=>[o.value?.content?(i(),c("div",X,[a("div",A,[a("code",null,v(o.value.id),1)]),l(g,{"h-full":"","of-auto":"","text-sm":"",code:o.value.content,lang:"typescript"},null,8,["code"])])):(i(),q($,{key:1},{default:u(()=>[l(C,{px6:"",py2:""},{default:u(()=>[...t[2]||(t[2]=[a("span",{op75:""},"Select a file to start",-1)])]),_:1})]),_:1}))]),_:1}),l(V,null,{default:u(()=>[l(N)]),_:1})],64)}}});export{oe as default};
@@ -0,0 +1 @@
.virtual-files .shiki{background:none!important;padding:10px}
File diff suppressed because one or more lines are too long
File diff suppressed because one or more lines are too long
Loaded 100 of 15070 files, more files were not shown because too many files have changed in this diff. Show more