@nuxt/devtools 0.6.7 → 0.7.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/chunks/module-main.mjs +126 -75
- package/dist/chunks/plugin-metrics.mjs +15 -12
- package/dist/chunks/timeline.mjs +69 -0
- package/dist/chunks/vscode.mjs +5 -5
- package/dist/client/200.html +2 -2
- package/dist/client/404.html +2 -2
- package/dist/client/__blank/index.html +2 -2
- package/dist/client/_nuxt/AuthRequiredPanel.vue.17c2a7bd.js +1 -0
- package/dist/client/_nuxt/Badge.8d650e3b.js +1 -0
- package/dist/client/_nuxt/CodeDiff.vue.cc3f76a7.js +3 -0
- package/dist/client/_nuxt/CodeSnippets.vue.b4698473.js +1 -0
- package/dist/client/_nuxt/ComposableItem.vue.6d7b799a.js +1 -0
- package/dist/client/_nuxt/DrawerRight.vue.3ab85e5b.js +1 -0
- package/dist/client/_nuxt/DurationDisplay.vue.aba5fa70.js +1 -0
- package/dist/client/_nuxt/FilepathItem.vue.84aa0a31.js +1 -0
- package/dist/client/_nuxt/HelpFab.vue.a8d95bd1.js +1 -0
- package/dist/client/_nuxt/LaunchPage.vue.00d3a484.js +1 -0
- package/dist/client/_nuxt/NCheckbox.vue.63949e52.js +1 -0
- package/dist/client/_nuxt/NCodeBlock.vue.77e54b2e.js +2 -0
- package/dist/client/_nuxt/NIconTitle.vue.0a904b99.js +1 -0
- package/dist/client/_nuxt/NLink.vue.ec1f69e3.js +1 -0
- package/dist/client/_nuxt/{NMarkdown.vue.31d61f61.js → NMarkdown.vue.a74698d6.js} +1 -1
- package/dist/client/_nuxt/NSectionBlock.b074e0b8.js +1 -0
- package/dist/client/_nuxt/NSelect.vue.9556d6e0.js +1 -0
- package/dist/client/_nuxt/NSwitch.vue.6c2556d0.js +1 -0
- package/dist/client/_nuxt/NTip.vue.861372f7.js +1 -0
- package/dist/client/_nuxt/Navbar.vue.1a2a587f.js +1 -0
- package/dist/client/_nuxt/StateEditor.vue.05c4fc16.js +1 -0
- package/dist/client/_nuxt/__blank.3f7b27a6.js +1 -0
- package/dist/client/_nuxt/analyze-build.c314de67.js +1 -0
- package/dist/client/_nuxt/assets.722939b7.js +16 -0
- package/dist/client/_nuxt/client.ece13385.js +1 -0
- package/dist/client/_nuxt/{components.3a437d73.js → components.27bdfae4.js} +6 -6
- package/dist/client/_nuxt/{constants.d7bcda3c.js → constants.4e5eba24.js} +1 -1
- package/dist/client/_nuxt/custom-_name_.95a8297c.js +1 -0
- package/dist/client/_nuxt/default.7e3f9818.js +1 -0
- package/dist/client/_nuxt/entry.6507cb32.js +21 -0
- package/dist/client/_nuxt/entry.6f7d64f9.css +1 -0
- package/dist/client/_nuxt/{error-404.eb07c617.js → error-404.66ff8897.js} +1 -1
- package/dist/client/_nuxt/{error-500.8214e786.js → error-500.34984f69.js} +1 -1
- package/dist/client/_nuxt/full.748a1c93.js +1 -0
- package/dist/client/_nuxt/hooks.3ec974a8.js +1 -0
- package/dist/client/_nuxt/imports.8485b75c.js +1 -0
- package/dist/client/_nuxt/{index.98d48447.js → index.5152a001.js} +1 -1
- package/dist/client/_nuxt/{index.6a0822c9.js → index.7ae8a638.js} +2 -2
- package/dist/client/_nuxt/{json-editor-vue.9acffc14.js → json-editor-vue.bbdad521.js} +1 -1
- package/dist/client/_nuxt/{middleware.c2f916df.js → middleware.3c73e553.js} +1 -1
- package/dist/client/_nuxt/modules.67fd6240.js +2 -0
- package/dist/client/_nuxt/none.2f8cf810.js +1 -0
- package/dist/client/_nuxt/open-graph.79a7c77c.js +3 -0
- package/dist/client/_nuxt/overview.d953fa7e.js +1 -0
- package/dist/client/_nuxt/pages.7b386c55.js +1 -0
- package/dist/client/_nuxt/payload.f36f4355.js +1 -0
- package/dist/client/_nuxt/plugins.1c37e55d.js +1 -0
- package/dist/client/_nuxt/runtime-configs.67f4f0b3.js +1 -0
- package/dist/client/_nuxt/server-routes.64373863.js +9 -0
- package/dist/client/_nuxt/settings.b7df1779.js +1 -0
- package/dist/client/_nuxt/{state-components.493c1b8d.js → state-components.cd34df16.js} +1 -1
- package/dist/client/_nuxt/state-modules.c2527930.js +1 -0
- package/dist/client/_nuxt/storage.13c667f3.js +1 -0
- package/dist/client/_nuxt/{terminals.714ad795.js → terminals.1c5a4ee9.js} +7 -7
- package/dist/client/_nuxt/timeline.1ad3a70f.css +1 -0
- package/dist/client/_nuxt/timeline.741d9e72.js +57 -0
- package/dist/client/_nuxt/{unocss-runtime.552cd61f.js → unocss-runtime.d07b0096.js} +2 -2
- package/dist/client/_nuxt/virtual-files.4e8316be.js +1 -0
- package/dist/client/index.html +2 -2
- package/dist/client/modules/analyze-build/index.html +2 -2
- package/dist/client/modules/assets/index.html +2 -2
- package/dist/client/modules/components/index.html +2 -2
- package/dist/client/modules/hooks/index.html +2 -2
- package/dist/client/modules/imports/index.html +2 -2
- package/dist/client/modules/middleware/index.html +2 -2
- package/dist/client/modules/modules/index.html +2 -2
- package/dist/client/modules/open-graph/index.html +2 -2
- package/dist/client/modules/overview/index.html +2 -2
- package/dist/client/modules/pages/index.html +2 -2
- package/dist/client/modules/payload/index.html +2 -2
- package/dist/client/modules/plugins/index.html +2 -2
- package/dist/client/modules/runtime-configs/index.html +2 -2
- package/dist/client/modules/server-routes/index.html +2 -2
- package/dist/client/modules/storage/index.html +2 -2
- package/dist/client/modules/terminals/index.html +2 -2
- package/dist/client/modules/timeline/index.html +7 -0
- package/dist/client/modules/virtual-files/index.html +2 -2
- package/dist/client/settings/index.html +2 -2
- package/dist/{global-20ccb74c.d.ts → global-ea55645c.d.ts} +7 -1
- package/dist/module.d.ts +1 -1
- package/dist/module.json +1 -1
- package/dist/module.mjs +1 -1
- package/dist/runtime/function-metrics-helpers.d.ts +3 -0
- package/dist/runtime/function-metrics-helpers.mjs +63 -0
- package/dist/runtime/plugins/devtools.client.mjs +2 -1
- package/dist/runtime/plugins/view/client.d.ts +3 -1
- package/dist/runtime/plugins/view/client.mjs +60 -23
- package/dist/runtime/plugins/view/state.mjs +1 -1
- package/dist/runtime/plugins/view/utils.d.ts +1 -1
- package/dist/runtime/plugins/view/utils.mjs +15 -15
- package/dist/shared/{devtools.ce3f2385.mjs → devtools.d198e7a9.mjs} +7 -1
- package/dist/types.d.ts +1 -1
- package/package.json +26 -25
- package/dist/client/_nuxt/AuthRequiredPanel.vue.fc7f2968.js +0 -1
- package/dist/client/_nuxt/Badge.e05fc69f.js +0 -1
- package/dist/client/_nuxt/CodeSnippets.vue.a1fe908d.js +0 -1
- package/dist/client/_nuxt/DrawerRight.vue.3adebf89.js +0 -1
- package/dist/client/_nuxt/DurationDisplay.vue.c6aa67b3.js +0 -1
- package/dist/client/_nuxt/FilepathItem.vue.7520a5eb.js +0 -1
- package/dist/client/_nuxt/HelpFab.vue.6c2e0089.js +0 -1
- package/dist/client/_nuxt/LaunchPage.vue.ace7e996.js +0 -1
- package/dist/client/_nuxt/NCheckbox.vue.660c8c34.js +0 -1
- package/dist/client/_nuxt/NCodeBlock.vue.12f6d4d2.js +0 -2
- package/dist/client/_nuxt/NIconButton.vue.9dc5b644.js +0 -1
- package/dist/client/_nuxt/NIconTitle.vue.0db956c8.js +0 -1
- package/dist/client/_nuxt/NLink.vue.f3f95732.js +0 -1
- package/dist/client/_nuxt/NPanelGrids.cfd60e85.js +0 -1
- package/dist/client/_nuxt/NSectionBlock.216523d8.js +0 -1
- package/dist/client/_nuxt/NSelect.vue.38f0d91b.js +0 -1
- package/dist/client/_nuxt/NSwitch.vue.4e114eb7.js +0 -1
- package/dist/client/_nuxt/NTip.vue.d602d31e.js +0 -1
- package/dist/client/_nuxt/Navbar.vue.72301b0e.js +0 -1
- package/dist/client/_nuxt/PanelLeftRight.vue.d1539d19.js +0 -1
- package/dist/client/_nuxt/StateEditor.vue.c8fd02b3.js +0 -1
- package/dist/client/_nuxt/__blank.58b4eaa9.js +0 -1
- package/dist/client/_nuxt/analyze-build.66f9bc20.js +0 -1
- package/dist/client/_nuxt/assets.b60a4d67.js +0 -16
- package/dist/client/_nuxt/client.1e3208e3.js +0 -1
- package/dist/client/_nuxt/custom-_name_.1614dd97.js +0 -1
- package/dist/client/_nuxt/default.a69a326f.js +0 -1
- package/dist/client/_nuxt/entry.559460ac.js +0 -21
- package/dist/client/_nuxt/entry.e49b0ddd.css +0 -1
- package/dist/client/_nuxt/full.1f3e7ba7.js +0 -1
- package/dist/client/_nuxt/hooks.7a294c4b.js +0 -1
- package/dist/client/_nuxt/imports.8b3c700a.js +0 -1
- package/dist/client/_nuxt/modules.a1aceff5.js +0 -4
- package/dist/client/_nuxt/none.bf6672f1.js +0 -1
- package/dist/client/_nuxt/open-graph.f68f3562.js +0 -3
- package/dist/client/_nuxt/overview.9fbd51a4.js +0 -1
- package/dist/client/_nuxt/pages.8b6a187c.js +0 -1
- package/dist/client/_nuxt/payload.5851379a.js +0 -1
- package/dist/client/_nuxt/plugins.20750545.js +0 -1
- package/dist/client/_nuxt/runtime-configs.ce330378.js +0 -1
- package/dist/client/_nuxt/server-routes.08ebdd45.js +0 -9
- package/dist/client/_nuxt/settings.63ba52d8.js +0 -1
- package/dist/client/_nuxt/state-modules.c72270b1.js +0 -1
- package/dist/client/_nuxt/storage.d37c76d1.js +0 -1
- package/dist/client/_nuxt/virtual-files.7bf5357c.js +0 -1
|
@@ -1,5 +1,7 @@
|
|
|
1
1
|
import { computed, createApp, h, markRaw, nextTick, ref, shallowReactive, shallowRef, watch } from "vue";
|
|
2
2
|
import { createHooks } from "hookable";
|
|
3
|
+
import { debounce } from "perfect-debounce";
|
|
4
|
+
import { initTimelineMetrics } from "../../function-metrics-helpers.mjs";
|
|
3
5
|
import Main from "./Main.vue";
|
|
4
6
|
import { popupWindow, state } from "./state.mjs";
|
|
5
7
|
import { useAppConfig } from "#imports";
|
|
@@ -8,18 +10,19 @@ export { clientRef as client };
|
|
|
8
10
|
export async function setupDevToolsClient({
|
|
9
11
|
nuxt,
|
|
10
12
|
clientHooks,
|
|
11
|
-
timeMetric
|
|
13
|
+
timeMetric,
|
|
14
|
+
router
|
|
12
15
|
}) {
|
|
13
16
|
const isInspecting = ref(false);
|
|
14
17
|
const colorMode = useClientColorMode();
|
|
18
|
+
const timeline = initTimelineMetrics();
|
|
15
19
|
const client = shallowReactive({
|
|
16
20
|
nuxt: markRaw(nuxt),
|
|
17
21
|
appConfig: useAppConfig(),
|
|
18
22
|
hooks: createHooks(),
|
|
19
23
|
getClientHooksMetrics: () => Object.values(clientHooks),
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
},
|
|
24
|
+
clientPluginMetrics: window.__NUXT_DEVTOOLS_PLUGINS_METRIC__,
|
|
25
|
+
clientTimelineMetrics: timeline,
|
|
23
26
|
loadingTimeMetrics: timeMetric,
|
|
24
27
|
reloadPage() {
|
|
25
28
|
location.reload();
|
|
@@ -59,6 +62,7 @@ export async function setupDevToolsClient({
|
|
|
59
62
|
function updateClient() {
|
|
60
63
|
if (!client.inspector)
|
|
61
64
|
client.inspector = getInspectorInstance();
|
|
65
|
+
client.clientPluginMetrics = window.__NUXT_DEVTOOLS_PLUGINS_METRIC__;
|
|
62
66
|
try {
|
|
63
67
|
iframe?.contentWindow?.__NUXT_DEVTOOLS_VIEW__?.setClient(client);
|
|
64
68
|
} catch (e) {
|
|
@@ -143,25 +147,8 @@ export async function setupDevToolsClient({
|
|
|
143
147
|
instance: componentInspector
|
|
144
148
|
});
|
|
145
149
|
}
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
}
|
|
149
|
-
watch(() => [
|
|
150
|
-
client.nuxt.payload,
|
|
151
|
-
client.colorMode.value,
|
|
152
|
-
client.loadingTimeMetrics
|
|
153
|
-
], () => {
|
|
154
|
-
refreshReactivity();
|
|
155
|
-
}, { deep: true });
|
|
156
|
-
client.nuxt.vueApp.config.globalProperties?.$router?.afterEach(() => {
|
|
157
|
-
refreshReactivity();
|
|
158
|
-
});
|
|
159
|
-
client.nuxt.hook("app:mounted", () => {
|
|
160
|
-
refreshReactivity();
|
|
161
|
-
});
|
|
162
|
-
client.hooks.hook("devtools:navigate", (path) => {
|
|
163
|
-
state.value.route = path;
|
|
164
|
-
});
|
|
150
|
+
setupRouteTracking(timeline, router);
|
|
151
|
+
setupReactivity(client, router, timeline);
|
|
165
152
|
clientRef.value = client;
|
|
166
153
|
const documentPictureInPicture = window.documentPictureInPicture;
|
|
167
154
|
if (documentPictureInPicture?.requestWindow) {
|
|
@@ -262,3 +249,53 @@ export function useClientColorMode() {
|
|
|
262
249
|
getSystemColor();
|
|
263
250
|
return computed(() => explicitColor.value || systemColor.value || "light");
|
|
264
251
|
}
|
|
252
|
+
function setupRouteTracking(timeline, router) {
|
|
253
|
+
if (router && timeline.options.enabled) {
|
|
254
|
+
const start = timeline.events[0]?.start || Date.now();
|
|
255
|
+
timeline.events.unshift({
|
|
256
|
+
type: "route",
|
|
257
|
+
from: router.currentRoute.value.path,
|
|
258
|
+
to: router.currentRoute.value.path,
|
|
259
|
+
start,
|
|
260
|
+
end: start
|
|
261
|
+
});
|
|
262
|
+
}
|
|
263
|
+
let lastRouteEvent;
|
|
264
|
+
router?.afterEach(() => {
|
|
265
|
+
if (lastRouteEvent && !lastRouteEvent?.end)
|
|
266
|
+
lastRouteEvent.end = Date.now();
|
|
267
|
+
});
|
|
268
|
+
router?.beforeEach((to, from) => {
|
|
269
|
+
if (!timeline.options.enabled)
|
|
270
|
+
return;
|
|
271
|
+
lastRouteEvent = {
|
|
272
|
+
type: "route",
|
|
273
|
+
from: from.path,
|
|
274
|
+
to: to.path,
|
|
275
|
+
start: Date.now()
|
|
276
|
+
};
|
|
277
|
+
timeline.events.push(lastRouteEvent);
|
|
278
|
+
});
|
|
279
|
+
}
|
|
280
|
+
function setupReactivity(client, router, timeMetric) {
|
|
281
|
+
const refreshReactivity = debounce(() => {
|
|
282
|
+
client.hooks.callHook("host:update:reactivity");
|
|
283
|
+
}, 100, { trailing: true });
|
|
284
|
+
watch(() => [
|
|
285
|
+
client.nuxt.payload,
|
|
286
|
+
client.colorMode.value,
|
|
287
|
+
client.loadingTimeMetrics,
|
|
288
|
+
timeMetric
|
|
289
|
+
], () => {
|
|
290
|
+
refreshReactivity();
|
|
291
|
+
}, { deep: true });
|
|
292
|
+
router?.afterEach(() => {
|
|
293
|
+
refreshReactivity();
|
|
294
|
+
});
|
|
295
|
+
client.nuxt.hook("app:mounted", () => {
|
|
296
|
+
refreshReactivity();
|
|
297
|
+
});
|
|
298
|
+
client.hooks.hook("devtools:navigate", (path) => {
|
|
299
|
+
state.value.route = path;
|
|
300
|
+
});
|
|
301
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { Ref } from 'vue';
|
|
2
|
-
export declare function useObjectStorage<T>(key: string, initial: T,
|
|
2
|
+
export declare function useObjectStorage<T>(key: string, initial: T, listenToStorage?: boolean): Ref<T>;
|
|
3
3
|
export declare function useTransform<F, T>(data: Ref<F>, to: (data: F) => T, from: (data: T) => F): Ref<T>;
|
|
4
4
|
export declare function useEventListener(target: EventTarget, type: string, listener: any, options?: boolean | AddEventListenerOptions): void;
|
|
5
5
|
export declare function millisecondToHumanreadable(ms: number): [number, string];
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { computed, getCurrentScope, onScopeDispose, ref, watch } from "vue";
|
|
2
|
-
export function useObjectStorage(key, initial,
|
|
2
|
+
export function useObjectStorage(key, initial, listenToStorage = true) {
|
|
3
3
|
const raw = localStorage.getItem(key);
|
|
4
4
|
const data = ref(raw ? JSON.parse(raw) : initial);
|
|
5
5
|
for (const key2 in initial) {
|
|
@@ -8,21 +8,21 @@ export function useObjectStorage(key, initial, readonly = false) {
|
|
|
8
8
|
}
|
|
9
9
|
let updating = false;
|
|
10
10
|
let wrote = "";
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
11
|
+
watch(data, (value) => {
|
|
12
|
+
if (updating)
|
|
13
|
+
return;
|
|
14
|
+
wrote = JSON.stringify(value);
|
|
15
|
+
localStorage.setItem(key, wrote);
|
|
16
|
+
}, { deep: true, flush: "post" });
|
|
17
|
+
if (listenToStorage) {
|
|
18
|
+
useEventListener(window, "storage", (e) => {
|
|
19
|
+
if (e.key === key && e.newValue && e.newValue !== wrote) {
|
|
20
|
+
updating = true;
|
|
21
|
+
data.value = JSON.parse(e.newValue);
|
|
22
|
+
updating = false;
|
|
23
|
+
}
|
|
24
|
+
});
|
|
18
25
|
}
|
|
19
|
-
useEventListener(window, "storage", (e) => {
|
|
20
|
-
if (e.key === key && e.newValue && e.newValue !== wrote) {
|
|
21
|
-
updating = true;
|
|
22
|
-
data.value = JSON.parse(e.newValue);
|
|
23
|
-
updating = false;
|
|
24
|
-
}
|
|
25
|
-
});
|
|
26
26
|
return data;
|
|
27
27
|
}
|
|
28
28
|
export function useTransform(data, to, from) {
|
package/dist/types.d.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@nuxt/devtools",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.7.1",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": "nuxt/devtools",
|
|
7
7
|
"exports": {
|
|
@@ -30,13 +30,14 @@
|
|
|
30
30
|
"vite": "*"
|
|
31
31
|
},
|
|
32
32
|
"dependencies": {
|
|
33
|
-
"@nuxt/kit": "^3.6.
|
|
33
|
+
"@nuxt/kit": "^3.6.5",
|
|
34
34
|
"birpc": "^0.2.12",
|
|
35
|
-
"boxen": "^7.1.
|
|
36
|
-
"consola": "^3.2.
|
|
35
|
+
"boxen": "^7.1.1",
|
|
36
|
+
"consola": "^3.2.3",
|
|
37
|
+
"error-stack-parser-es": "^0.1.0",
|
|
37
38
|
"execa": "^7.1.1",
|
|
38
39
|
"fast-folder-size": "^2.1.0",
|
|
39
|
-
"fast-glob": "^3.3.
|
|
40
|
+
"fast-glob": "^3.3.1",
|
|
40
41
|
"get-port-please": "^3.0.1",
|
|
41
42
|
"global-dirs": "^3.0.1",
|
|
42
43
|
"h3": "^1.7.1",
|
|
@@ -53,16 +54,16 @@
|
|
|
53
54
|
"picocolors": "^1.0.0",
|
|
54
55
|
"pkg-types": "^1.0.3",
|
|
55
56
|
"rc9": "^2.1.1",
|
|
56
|
-
"semver": "^7.5.
|
|
57
|
+
"semver": "^7.5.4",
|
|
57
58
|
"sirv": "^2.0.3",
|
|
58
|
-
"unimport": "^3.0
|
|
59
|
-
"vite-plugin-inspect": "^0.7.
|
|
59
|
+
"unimport": "^3.1.0",
|
|
60
|
+
"vite-plugin-inspect": "^0.7.33",
|
|
60
61
|
"vite-plugin-vue-inspector": "^3.4.2",
|
|
61
62
|
"wait-on": "^7.0.1",
|
|
62
63
|
"which": "^3.0.1",
|
|
63
64
|
"ws": "^8.13.0",
|
|
64
|
-
"@nuxt/devtools-wizard": "0.
|
|
65
|
-
"@nuxt/devtools-kit": "0.
|
|
65
|
+
"@nuxt/devtools-wizard": "0.7.1",
|
|
66
|
+
"@nuxt/devtools-kit": "0.7.1"
|
|
66
67
|
},
|
|
67
68
|
"devDependencies": {
|
|
68
69
|
"@antfu/utils": "^0.7.5",
|
|
@@ -70,19 +71,19 @@
|
|
|
70
71
|
"@iconify-json/carbon": "^1.1.18",
|
|
71
72
|
"@iconify-json/logos": "^1.1.33",
|
|
72
73
|
"@iconify-json/ri": "^1.1.10",
|
|
73
|
-
"@iconify-json/simple-icons": "^1.1.
|
|
74
|
-
"@iconify-json/tabler": "^1.1.
|
|
75
|
-
"@nuxt/content": "^2.7.
|
|
74
|
+
"@iconify-json/simple-icons": "^1.1.61",
|
|
75
|
+
"@iconify-json/tabler": "^1.1.83",
|
|
76
|
+
"@nuxt/content": "^2.7.1",
|
|
76
77
|
"@nuxtjs/color-mode": "^3.3.0",
|
|
77
78
|
"@parcel/watcher": "^2.2.0",
|
|
78
79
|
"@types/markdown-it-link-attributes": "^3.0.1",
|
|
79
80
|
"@types/ua-parser-js": "^0.7.36",
|
|
80
|
-
"@unocss/nuxt": "^0.53.
|
|
81
|
-
"@unocss/preset-icons": "^0.53.
|
|
82
|
-
"@unocss/preset-uno": "^0.53.
|
|
83
|
-
"@unocss/runtime": "^0.53.
|
|
81
|
+
"@unocss/nuxt": "^0.53.6",
|
|
82
|
+
"@unocss/preset-icons": "^0.53.6",
|
|
83
|
+
"@unocss/preset-uno": "^0.53.6",
|
|
84
|
+
"@unocss/runtime": "^0.53.6",
|
|
84
85
|
"@vueuse/nuxt": "^10.2.1",
|
|
85
|
-
"esno": "^0.
|
|
86
|
+
"esno": "^0.17.0",
|
|
86
87
|
"flatted": "^3.2.7",
|
|
87
88
|
"floating-vue": "2.0.0-beta.24",
|
|
88
89
|
"fuse.js": "^6.6.2",
|
|
@@ -90,26 +91,26 @@
|
|
|
90
91
|
"markdown-it": "^13.0.1",
|
|
91
92
|
"markdown-it-link-attributes": "^4.0.1",
|
|
92
93
|
"nanoid": "^4.0.2",
|
|
93
|
-
"nuxt": "^3.6.
|
|
94
|
-
"nuxt-vitest": "^0.
|
|
94
|
+
"nuxt": "^3.6.5",
|
|
95
|
+
"nuxt-vitest": "^0.10.1",
|
|
95
96
|
"ofetch": "^1.1.1",
|
|
96
97
|
"ohash": "^1.1.2",
|
|
97
98
|
"shiki": "^0.14.3",
|
|
98
|
-
"shiki-es": "^0.
|
|
99
|
+
"shiki-es": "^0.14.0",
|
|
99
100
|
"simple-git": "^3.19.1",
|
|
100
101
|
"splitpanes": "^3.1.5",
|
|
101
102
|
"theme-vitesse": "^0.7.2",
|
|
102
103
|
"ua-parser-js": "^1.0.35",
|
|
103
|
-
"unocss": "^0.53.
|
|
104
|
+
"unocss": "^0.53.6",
|
|
104
105
|
"vanilla-jsoneditor": "^0.17.8",
|
|
105
106
|
"vis-data": "^7.1.6",
|
|
106
107
|
"vis-network": "^9.1.6",
|
|
107
|
-
"vite-plugin-vue-markdown": "^0.23.
|
|
108
|
-
"vue-tsc": "^1.8.
|
|
108
|
+
"vite-plugin-vue-markdown": "^0.23.7",
|
|
109
|
+
"vue-tsc": "^1.8.6",
|
|
109
110
|
"vue-virtual-scroller": "2.0.0-beta.8",
|
|
110
111
|
"xterm": "^5.2.1",
|
|
111
112
|
"xterm-addon-fit": "^0.7.0",
|
|
112
|
-
"@nuxt/devtools": "0.
|
|
113
|
+
"@nuxt/devtools": "0.7.1"
|
|
113
114
|
},
|
|
114
115
|
"scripts": {
|
|
115
116
|
"build": "pnpm dev:prepare && pnpm build:module && pnpm build:client && esno scripts/prepare.ts",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{g as y,a5 as x,ap as n,bd as _,z as l,r as m,q as c,h as g,w as d,a1 as w,o as A,b as s,a as e,d as i,I as N,aN as q,aX as T,be as V,j as B,J as C,a8 as D}from"./entry.559460ac.js";import{_ as I}from"./NIconButton.vue.9dc5b644.js";import{_ as P}from"./NPanelGrids.cfd60e85.js";const $=e("h3",{class:"mb2 text-lg font-medium leading-6",flex:"~ items-center gap-1","text-orange":""},[e("span",{class:"i-carbon-information-square"}),i(" Permissions required ")],-1),K=e("p",null," This operation requires permissions for running command and access files from the browser. ",-1),S=e("p",null,[i(" A request is sent to the server."),e("br"),i(" Please check your terminal for the instructions and then come back. ")],-1),j={flex:"~ gap-3",mt2:"","justify-end":""},z=e("p",null,"Or you can manually paste the token here:",-1),F=["onSubmit"],J=y({__name:"AuthRequiredPanel",setup(M){x(async()=>{n.value||_.value&&await l.verifyAuthToken(_.value)&&(n.value=!0),n.value||l.requestForAuth()});const o=m(""),r=m(!1);async function u(){const t=o.value.trim();r.value=!1,await l.verifyAuthToken(t).then(a=>{a?(n.value=!0,V(t)):r.value=!0})}return(t,a)=>{const f=B,p=C,h=I,v=D,k=P;return("isDevAuthed"in t?t.isDevAuthed:c(n))?w(t.$slots,"default",{key:1}):(A(),g(k,{key:0},{default:d(()=>[s(v,{flex:"~ col gap-2",mxa:"","items-center":"",p6:"","text-center":""},{default:d(()=>[$,K,S,e("div",j,[s(f,{disabled:"",icon:"i-carbon-time"},{default:d(()=>[i(" Waiting for authorization... ")]),_:1})]),z,e("form",{flex:"~ inline gap-2 items-center",onSubmit:T(u,["prevent"])},[s(p,{modelValue:c(o),"onUpdate:modelValue":a[0]||(a[0]=b=>N(o)?o.value=b:null),placeholder:"Enter token here",n:c(r)?"red":void 0,onKeydown:q(u,["enter"])},null,8,["modelValue","n","onKeydown"]),s(h,{icon:"i-carbon-arrow-right",onClick:u})],40,F)]),_:1})]),_:1}))}}});export{J as _};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_ as n,o,c as s,a1 as t}from"./entry.559460ac.js";const c={},r={class:"mx-0.5 select-none whitespace-nowrap rounded px-1.5 py-0.5 text-xs"};function _(e,a){return o(),s("span",r,[t(e.$slots,"default")])}const l=n(c,[["render",_]]);export{l as _};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_ as y}from"./NCodeBlock.vue.12f6d4d2.js";import{g as C,b5 as h,W as S,al as w,o as s,c as n,a,F as i,m as x,n as u,q as o,t as B,b as _,w as f,d as m,h as N,s as l,j as V}from"./entry.559460ac.js";const $={key:0,relative:"","n-code-block":""},D={flex:"~ wrap","w-full":""},E=["onClick"],F=a("div",{border:"b base","flex-auto":""},null,-1),j={flex:"~ gap-2",px3:"",pb3:"",n:"sm primary"},R=C({__name:"CodeSnippets",props:{codeSnippets:{}},setup(b){const c=b,e=h(c.codeSnippets[0]),k=S();return w(()=>{c.codeSnippets.includes(e.value)||(e.value=c.codeSnippets[0])}),(r,p)=>{const v=y,d=V;return r.codeSnippets.length?(s(),n("div",$,[a("div",D,[(s(!0),n(i,null,x(r.codeSnippets,(t,g)=>(s(),n("button",{key:g,px4:"",py2:"",border:"r base",hover:"bg-active",class:u(t===o(e)?"":"border-b"),onClick:q=>e.value=t},[a("div",{class:u(t===o(e)?"":"op30"),"font-mono":""},B(t.name),3)],10,E))),128)),F]),o(e)?(s(),n(i,{key:0},[_(v,{code:o(e).code,lang:o(e).lang,lines:!1,"w-full":"","of-auto":"",p3:""},null,8,["code","lang"]),a("div",j,[_(d,{icon:"carbon-copy",onClick:p[0]||(p[0]=t=>o(k)(o(e).code))},{default:f(()=>[m(" Copy ")]),_:1}),o(e)?.docs?(s(),N(d,{key:0,to:o(e).docs,target:"_blank",icon:"carbon-catalog"},{default:f(()=>[m(" Docs ")]),_:1},8,["to"])):l("",!0)])],64)):l("",!0)])):l("",!0)}}});export{R as _};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_ as i}from"./NIconButton.vue.9dc5b644.js";import{g as m,r as u,ae as f,af as p,h as d,w as _,ag as b,o as s,c as v,b as g,a as h,a1 as x,ah as y,q as k,s as B}from"./entry.559460ac.js";const C={relative:"","h-full":"","w-full":"","of-auto":""},V={inheritAttrs:!1},N=m({...V,__name:"DrawerRight",props:{modelValue:{type:Boolean},navbar:{},autoClose:{type:Boolean}},emits:["close"],setup(r,{emit:l}){const t=r,a=u(),{height:n}=f(()=>t.navbar,void 0,{box:"border-box"});return p(a,()=>{t.modelValue&&t.autoClose&&l("close")},{ignore:["a","button","summary"]}),(e,o)=>{const c=i;return s(),d(b,{"enter-active-class":"duration-200 ease-in","enter-from-class":"transform translate-x-1/1","enter-to-class":"opacity-100","leave-active-class":"duration-200 ease-out","leave-from-class":"opacity-100","leave-to-class":"transform translate-x-1/1"},{default:_(()=>[e.modelValue?(s(),v("div",y({key:0,ref_key:"el",ref:a,border:"l base",flex:"~ col gap-1",absolute:"","bottom-0":"","right-0":"","z-10":"","z-20":"","of-auto":"","text-sm":"","glass-effect":"",style:{top:`${k(n)}px`}},e.$attrs),[g(c,{absolute:"","right-2":"","top-2":"","z-20":"","text-xl":"",icon:"carbon-close",onClick:o[0]||(o[0]=$=>e.$emit("close"))}),h("div",C,[x(e.$slots,"default")])],16)):B("",!0)]),_:3})}}});export{N as _};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{g as a,o as s,c as i,d as u,t as f,n as p,a as c}from"./entry.559460ac.js";const d=c("span",{"ml-1":"","text-xs":"",op50:""},"ms",-1),l=a({__name:"DurationDisplay",props:{duration:{},factor:{default:1}},setup(r){const e=r;function o(t){return t?(t=t*e.factor,t<.5?"text-gray:50":t>1e3?"text-red-400":t>500?"text-orange-400":t>200?"text-yellow-400":""):"text-gray-400"}function n(t){return t?t<1?"<1":t.toFixed(2):"-"}return(t,m)=>(s(),i("div",{class:p(o(t.duration))},[u(f(n(t.duration)),1),d],2))}});export{l as _};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{g as u,T as f,V as c,l as k,aW as v,o as t,h as y,w as B,c as s,F as l,d,t as n,q as a,a as C,s as g,n as N,ad as b}from"./entry.559460ac.js";const w={key:0,op50:""},E=u({__name:"FilepathItem",props:{filepath:{},lineBreak:{type:Boolean},subpath:{type:Boolean},override:{}},setup(h){const r=h,m=f(),p=c(),o=k(()=>r.filepath&&p.value?v(r.filepath,p.value.rootDir):{path:r.filepath||""});return(e,i)=>(t(),y(b(e.filepath?"button":"span"),{class:N([e.filepath?"hover:underline":"",e.lineBreak?"":"ws-nowrap of-hidden truncate"]),"font-mono":"",title:e.override||e.filepath,onClick:i[0]||(i[0]=V=>e.filepath&&a(m)(e.filepath))},{default:B(()=>[e.override?(t(),s(l,{key:0},[d(n(e.override),1)],64)):a(o).moduleName?(t(),s(l,{key:1},[C("span",null,n(a(o).moduleName),1),e.subpath?(t(),s("span",w,n(a(o).path.slice(a(o).moduleName.length)),1)):g("",!0)],64)):(t(),s(l,{key:2},[d(n(a(o).path),1)],64))]),_:1},8,["class","title"]))}});export{E as _};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_}from"./NIconButton.vue.9dc5b644.js";import{g as f,r as m,q as o,c as s,a as d,b as a,w as i,ag as u,F as g,s as n,o as l,a1 as v,a7 as k}from"./entry.559460ac.js";const x=d("div",{"i-ri:question-mark":""},null,-1),h=[x],y={key:0,border:"l base",class:"prose",pos:"fixed bottom-0 right-0 top-0","z-200":"","w-150":"",px8:"",py4:"","bg-base":""},$=f({__name:"HelpFab",setup(w){const e=m(!1),{showHelpButtons:p}=k();return(b,t)=>{const c=_;return o(p)?(l(),s(g,{key:0},[d("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:t[0]||(t[0]=r=>e.value=!o(e))},h),a(u,{name:"fade-in"},{default:i(()=>[o(e)?(l(),s("div",{key:0,class:"fixed bottom-0 left-0 right-0 top-0 z-100","bg-black:20":"","backdrop-blur-2":"",onClick:t[1]||(t[1]=r=>e.value=!1)})):n("",!0)]),_:1}),a(u,{name:"slide-in"},{default:i(()=>[o(e)?(l(),s("div",y,[v(b.$slots,"default"),a(c,{icon:"carbon-close",pos:"absolute top-3 right-3","rounded-full":"","text-xl":"",onClick:t[2]||(t[2]=r=>e.value=!1)})])):n("",!0)]),_:3})],64)):n("",!0)}}});export{$ as _};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{g as k,h as o,w as a,o as n,b as r,a as c,t as i,s as m,c as g,m as b,ah as h,d as N,F as w,aZ as x,P as C,j as y,a8 as B}from"./entry.559460ac.js";import{_ as $}from"./NMarkdown.vue.31d61f61.js";import{_ as P}from"./NPanelGrids.cfd60e85.js";const V={"text-xl":""},v={flex:"~ gap2 wrap"},D=k({__name:"LaunchPage",props:{icon:{},title:{},description:{},actions:{}},emits:["action"],setup(F){return(e,I)=>{const _=x,l=$,p=C,d=y,u=B,f=P;return n(),o(f,null,{default:a(()=>[r(u,{flex:"~ col gap2",mxa:"","min-w-100":"","items-center":"",p6:""},{default:a(()=>[r(_,{mb2:"","text-5xl":"",icon:e.icon||e.icon,title:e.title},null,8,["icon","title"]),c("h1",V,i(e.title),1),e.description?(n(),o(l,{key:0,mb2:"","mt--1":"","text-center":"","text-base":"",op50:"",markdown:e.description},null,8,["markdown"])):m("",!0),c("div",v,[(n(!0),g(w,null,b(e.actions,(t,s)=>(n(),o(d,h({key:s,n:"solid primary",disabled:t.pending,to:t.src,target:t.src?"_blank":void 0},t.attrs,{onClick:()=>{t.handle?.(),e.$emit("action",s)}}),{default:a(()=>[t.pending?(n(),o(p,{key:0,icon:"carbon-circle-dash","animate-spin":""})):m("",!0),N(" "+i(t.label),1)]),_:2},1040,["disabled","to","target","onClick"]))),128))])]),_:1})]),_:1})}}});export{D as _};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{g as i,at as r,c as p,x as b,bk as u,q as a,a as n,I as h,aN as k,b as f,a1 as m,n as v,o as x,P as _}from"./entry.559460ac.js";const V=["checked","disabled"],y=["disabled"],B={class:"n-checkbox-box n-checked:n-checkbox-box-checked peer-active:n-active-base peer-focus-visible:n-focus-base n-transition"},$=i({__name:"NCheckbox",props:{modelValue:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1}},setup(c,{emit:t}){const e=r(c,"modelValue",t,{passive:!0});return(o,s)=>{const d=_;return x(),p("label",{class:"n-checkbox hover:n-checkbox-hover select-none items-center n-disabled:n-disabled",checked:a(e)||null,disabled:o.disabled||null},[b(n("input",{"onUpdate:modelValue":s[0]||(s[0]=l=>h(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),[[u,a(e)]]),n("span",B,[f(d,{class:"n-checkbox-icon scale-0 transform op0 n-transition n-checked:scale-100 n-checked:op100"})]),n("span",{class:v([a(e)?"":"op50","n-transition"])},[m(o.$slots,"default")],2)],8,V)}}});export{$ as _};
|
|
@@ -1,2 +0,0 @@
|
|
|
1
|
-
import{d as u}from"./client.1e3208e3.js";import{g as _,l as m,ak as k,o as n,c as s,n as r,a as t,F as d,m as f,t as g}from"./entry.559460ac.js";const h=["innerHTML"],C={class:"shiki"},v=["textContent"],y=t("br",null,null,-1),H=_({__name:"NCodeBlock",props:{code:{},lang:{},lines:{type:Boolean,default:!0},transformRendered:{}},emits:["loaded"],setup(a,{emit:c}){const o=a,l=m(()=>{const e=u.value?.devtools.renderCodeHighlight(o.code,o.lang)||{code:o.code,supported:!1};return e.supported&&o.transformRendered&&(e.code=o.transformRendered(e.code)),e.supported&&k(()=>c("loaded")),e});return(e,B)=>e.lang&&l.value.supported?(n(),s("pre",{key:0,class:r(["n-code-block",e.lines?"n-code-block-lines":""]),innerHTML:l.value.code},null,10,h)):(n(),s("pre",{key:1,class:r(["n-code-block",e.lines?"n-code-block-lines":""])},[t("pre",C,[t("code",null,[(n(!0),s(d,null,f(e.code.split(`
|
|
2
|
-
`),(i,p)=>(n(),s(d,{key:p},[t("span",{class:"line",textContent:g(i)},null,8,v),y],64))),128))])])],2))}});export{H as _};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{g as s,o as a,h as c,w as r,b as i,ah as p,ad as _,q as l,e as m,P as d}from"./entry.559460ac.js";const f=s({__name:"NIconButton",props:{to:{},icon:{},disabled:{type:Boolean}},setup(t){const n=t;return(o,u)=>{const e=d;return a(),c(_(o.to?l(m):"button"),p({to:o.to},o.$attrs,{class:["n-transition n-icon-button",{"n-disabled op10!":n.disabled}]}),{default:r(()=>[i(e,{icon:n.icon},null,8,["icon"])]),_:1},16,["to","class"])}}});export{f as _};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{g as t,o as s,c as o,n as a,s as n,a1 as r,a as l,t as i}from"./entry.559460ac.js";const c={flex:"~ gap-3","items-center":""},u=t({__name:"NIconTitle",props:{icon:{},text:{}},setup(p){return(e,m)=>(s(),o("div",c,[e.icon?(s(),o("div",{key:0,class:a(e.icon)},null,2)):n("",!0),r(e.$slots,"default",{},()=>[l("div",null,i(e.text),1)])]))}});export{u as _};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{g as n,o as a,h as o,w as r,a1 as s,ah as t,ad as p,q as i,e as l}from"./entry.559460ac.js";const h=n({__name:"NLink",props:{to:{},href:{},target:{}},setup(_){return(e,m)=>(a(),o(p(e.href||e.target?"a":i(l)),t(e.$props,{class:"n-link n-transition hover:n-link-hover n-link-base"}),{default:r(()=>[s(e.$slots,"default")]),_:3},16))}});export{h as _};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_ as n,o,c as s,a1 as t}from"./entry.559460ac.js";const c={},r={class:"n-panel-grids-center"};function _(e,a){return o(),s("div",r,[t(e.$slots,"default")])}const d=n(c,[["render",_]]);export{d as _};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{g,at as y,c as r,a as o,n,b,w,q as i,F as c,x as B,y as S,a1 as s,s as d,o as l,d as u,t as f,h as $,p as C,f as N,P as k,_ as x}from"./entry.559460ac.js";import{_ as I}from"./NIconTitle.vue.0db956c8.js";const v=t=>(C("data-v-a73dbcfe"),t=t(),N(),t),V=["open"],z={"text-base":""},T={key:0,"text-sm":"",op50:""},D=v(()=>o("div",{class:"flex-auto"},null,-1)),F=v(()=>o("div",{class:"x-divider"},null,-1)),q=g({__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(t){const a=y(t,"open",void 0,{passive:!0});function _(e){a.value=e.target.open}return(e,p)=>{const m=k,h=I;return l(),r(c,null,[o("details",{open:i(a),onToggle:_},[o("summary",{class:n(["cursor-pointer select-none hover:bg-active p4",e.collapse?"":"pointer-events-none"])},[b(h,{icon:e.icon,text:e.text,"text-xl":"",transition:"",class:n([i(a)?"op100":"op60",e.headerClass])},{default:w(()=>[o("div",null,[o("div",z,[s(e.$slots,"text",{},()=>[u(f(e.text),1)],!0)]),e.description||e.$slots.description?(l(),r("div",T,[s(e.$slots,"description",{},()=>[u(f(e.description),1)],!0)])):d("",!0)]),D,s(e.$slots,"actions",{},void 0,!0),e.collapse?(l(),$(m,{key:0,icon:"carbon-chevron-down",class:"chevron","cursor-pointer":"","place-self-start":"","text-base":"",op75:"",transition:"","duration-500":""})):d("",!0)]),_:3},8,["icon","text","class"])],2),p._lazyshow1||i(a)?(p._lazyshow1=!0,l(),r(c,null,[B(o("div",{class:n(["flex flex-col flex-gap2 pb6 pt2",typeof e.padding=="string"?e.padding:e.padding?"px4":""])},[s(e.$slots,"details",{},void 0,!0),o("div",{class:n([e.containerClass,"mt1"])},[s(e.$slots,"default",{},void 0,!0)],2),s(e.$slots,"footer",{},void 0,!0)],2),[[S,i(a)]])],64)):d("v-show-if",!0)],40,V),F],64)}}});const j=x(q,[["__scopeId","data-v-a73dbcfe"]]);export{j as _};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{g as u,at as p,c as t,a1 as l,x as f,bl as m,q as b,a as h,t as _,s as n,I as v,o as s,h as V,P as k}from"./entry.559460ac.js";const y={class:"n-text-input flex flex items-center border n-border-base rounded px-2 py-1 focus-within:n-focus-base focus-within:border-context n-bg-base"},B=["disabled"],g={key:0,value:"",disabled:"",hidden:""},S=u({__name:"NSelect",props:{modelValue:{default:void 0},placeholder:{default:""},icon:{default:""},disabled:{type:Boolean,default:!1}},setup(d,{emit:i}){const o=p(d,"modelValue",i,{passive:!0});return(e,a)=>{const r=k;return s(),t("div",y,[l(e.$slots,"icon",{},()=>[e.icon?(s(),V(r,{key:0,icon:e.icon,class:"mr-0.4em text-1.1em op50"},null,8,["icon"])):n("",!0)]),f(h("select",{"onUpdate:modelValue":a[0]||(a[0]=c=>v(o)?o.value=c:null),disabled:e.disabled,class:"w-full flex-auto n-bg-base !outline-none"},[e.placeholder?(s(),t("option",g,_(e.placeholder),1)):n("",!0),l(e.$slots,"default")],8,B),[[m,b(o)]])])}}});export{S as _};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{g as i,at as c,o as r,c as u,x as h,bk as p,q as t,a as l,I as b,aN as v,a1 as f}from"./entry.559460ac.js";const k=["checked","disabled"],m=["disabled"],w=l("div",{class:"n-switch-slider n-checked:n-switch-slider-checked peer-active:n-active-base peer-focus-visible:n-focus-base n-transition"},[l("div",{class:"n-checked:n-switch-thumb-checked n-switch-thumb n-transition"})],-1),B=i({__name:"NSwitch",props:{modelValue:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1}},setup(o,{emit:d}){const e=c(o,"modelValue",d,{passive:!0});return(a,s)=>(r(),u("label",{class:"n-switch n-switch-base hover:n-switch-hover n-disabled:n-disabled",checked:t(e)||null,disabled:a.disabled||null},[h(l("input",{"onUpdate:modelValue":s[0]||(s[0]=n=>b(e)?e.value=n:null),type:"checkbox",class:"peer absolute op0",disabled:a.disabled,onKeypress:s[1]||(s[1]=v(n=>e.value=!t(e),["enter"]))},null,40,m),[[p,t(e)]]),w,f(a.$slots,"default")],8,k))}});export{B as _};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{g as a,o,c,a1 as n,h as t,s as i,a as r,P as l}from"./entry.559460ac.js";const p={class:"n-tip n-tip-base"},u=a({__name:"NTip",props:{icon:{}},setup(_){return(e,m)=>{const s=l;return o(),c("div",p,[n(e.$slots,"icon",{},()=>[e.icon?(o(),t(s,{key:0,icon:e.icon,class:"n-tip-icon"},null,8,["icon"])):i("",!0)]),r("div",null,[n(e.$slots,"default")])])}}});export{u as _};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{g as r,c,a as d,a1 as s,n,o as i,b as p,J as u}from"./entry.559460ac.js";const f={flex:"~ gap4","items-center":""},g=r({__name:"Navbar",props:{search:{type:String,default:void 0},noPadding:{type:Boolean,default:!1}},emits:["update:search"],setup(a,{emit:t}){function o(e){t("update:search",e.target.value)}return(e,m)=>{const l=u;return i(),c("div",{flex:"~ col gap2",border:"b base","flex-1":"","navbar-glass":"",class:n([{p4:!a.noPadding}])},[d("div",f,[s(e.$slots,"search",{},()=>[p(l,{placeholder:"Search...",icon:"carbon-search",n:"primary","flex-auto":"",class:n({"px-5 py-2":!a.noPadding}),value:a.search,onInput:o},null,8,["class","value"])]),s(e.$slots,"actions")]),s(e.$slots,"default")],2)}}});export{g as _};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{bb as S,o as P,c as f,a1 as d,S as g,g as M,l as C,r as E,h as b,w as p,q as l,bh as k,b as c}from"./entry.559460ac.js";const y={name:"splitpanes",emits:["ready","resize","resized","pane-click","pane-maximize","pane-add","pane-remove","splitter-click"],props:{horizontal:{type:Boolean},pushOtherPanes:{type:Boolean,default:!0},dblClickSplitter:{type:Boolean,default:!0},rtl:{type:Boolean,default:!1},firstSplitter:{type:Boolean}},provide(){return{requestUpdate:this.requestUpdate,onPaneAdd:this.onPaneAdd,onPaneRemove:this.onPaneRemove,onPaneClick:this.onPaneClick}},data:()=>({container:null,ready:!1,panes:[],touch:{mouseDown:!1,dragging:!1,activeSplitter:null},splitterTaps:{splitter:null,timeoutId:null}}),computed:{panesCount(){return this.panes.length},indexedPanes(){return this.panes.reduce((e,s)=>(e[s.id]=s)&&e,{})}},methods:{updatePaneComponents(){this.panes.forEach(e=>{e.update&&e.update({[this.horizontal?"height":"width"]:`${this.indexedPanes[e.id].size}%`})})},bindEvents(){document.addEventListener("mousemove",this.onMouseMove,{passive:!1}),document.addEventListener("mouseup",this.onMouseUp),"ontouchstart"in window&&(document.addEventListener("touchmove",this.onMouseMove,{passive:!1}),document.addEventListener("touchend",this.onMouseUp))},unbindEvents(){document.removeEventListener("mousemove",this.onMouseMove,{passive:!1}),document.removeEventListener("mouseup",this.onMouseUp),"ontouchstart"in window&&(document.removeEventListener("touchmove",this.onMouseMove,{passive:!1}),document.removeEventListener("touchend",this.onMouseUp))},onMouseDown(e,s){this.bindEvents(),this.touch.mouseDown=!0,this.touch.activeSplitter=s},onMouseMove(e){this.touch.mouseDown&&(e.preventDefault(),this.touch.dragging=!0,this.calculatePanesSize(this.getCurrentMouseDrag(e)),this.$emit("resize",this.panes.map(s=>({min:s.min,max:s.max,size:s.size}))))},onMouseUp(){this.touch.dragging&&this.$emit("resized",this.panes.map(e=>({min:e.min,max:e.max,size:e.size}))),this.touch.mouseDown=!1,setTimeout(()=>{this.touch.dragging=!1,this.unbindEvents()},100)},onSplitterClick(e,s){"ontouchstart"in window&&(e.preventDefault(),this.dblClickSplitter&&(this.splitterTaps.splitter===s?(clearTimeout(this.splitterTaps.timeoutId),this.splitterTaps.timeoutId=null,this.onSplitterDblClick(e,s),this.splitterTaps.splitter=null):(this.splitterTaps.splitter=s,this.splitterTaps.timeoutId=setTimeout(()=>{this.splitterTaps.splitter=null},500)))),this.touch.dragging||this.$emit("splitter-click",this.panes[s])},onSplitterDblClick(e,s){let n=0;this.panes=this.panes.map((i,t)=>(i.size=t===s?i.max:i.min,t!==s&&(n+=i.min),i)),this.panes[s].size-=n,this.$emit("pane-maximize",this.panes[s]),this.$emit("resized",this.panes.map(i=>({min:i.min,max:i.max,size:i.size})))},onPaneClick(e,s){this.$emit("pane-click",this.indexedPanes[s])},getCurrentMouseDrag(e){const s=this.container.getBoundingClientRect(),{clientX:n,clientY:i}="ontouchstart"in window&&e.touches?e.touches[0]:e;return{x:n-s.left,y:i-s.top}},getCurrentDragPercentage(e){e=e[this.horizontal?"y":"x"];const s=this.container[this.horizontal?"clientHeight":"clientWidth"];return this.rtl&&!this.horizontal&&(e=s-e),e*100/s},calculatePanesSize(e){const s=this.touch.activeSplitter;let n={prevPanesSize:this.sumPrevPanesSize(s),nextPanesSize:this.sumNextPanesSize(s),prevReachedMinPanes:0,nextReachedMinPanes:0};const i=0+(this.pushOtherPanes?0:n.prevPanesSize),t=100-(this.pushOtherPanes?0:n.nextPanesSize),a=Math.max(Math.min(this.getCurrentDragPercentage(e),t),i);let o=[s,s+1],h=this.panes[o[0]]||null,r=this.panes[o[1]]||null;const u=h.max<100&&a>=h.max+n.prevPanesSize,v=r.max<100&&a<=100-(r.max+this.sumNextPanesSize(s+1));if(u||v){u?(h.size=h.max,r.size=Math.max(100-h.max-n.prevPanesSize-n.nextPanesSize,0)):(h.size=Math.max(100-r.max-n.prevPanesSize-this.sumNextPanesSize(s+1),0),r.size=r.max);return}if(this.pushOtherPanes){const m=this.doPushOtherPanes(n,a);if(!m)return;({sums:n,panesToResize:o}=m),h=this.panes[o[0]]||null,r=this.panes[o[1]]||null}h!==null&&(h.size=Math.min(Math.max(a-n.prevPanesSize-n.prevReachedMinPanes,h.min),h.max)),r!==null&&(r.size=Math.min(Math.max(100-a-n.nextPanesSize-n.nextReachedMinPanes,r.min),r.max))},doPushOtherPanes(e,s){const n=this.touch.activeSplitter,i=[n,n+1];return s<e.prevPanesSize+this.panes[i[0]].min&&(i[0]=this.findPrevExpandedPane(n).index,e.prevReachedMinPanes=0,i[0]<n&&this.panes.forEach((t,a)=>{a>i[0]&&a<=n&&(t.size=t.min,e.prevReachedMinPanes+=t.min)}),e.prevPanesSize=this.sumPrevPanesSize(i[0]),i[0]===void 0)?(e.prevReachedMinPanes=0,this.panes[0].size=this.panes[0].min,this.panes.forEach((t,a)=>{a>0&&a<=n&&(t.size=t.min,e.prevReachedMinPanes+=t.min)}),this.panes[i[1]].size=100-e.prevReachedMinPanes-this.panes[0].min-e.prevPanesSize-e.nextPanesSize,null):s>100-e.nextPanesSize-this.panes[i[1]].min&&(i[1]=this.findNextExpandedPane(n).index,e.nextReachedMinPanes=0,i[1]>n+1&&this.panes.forEach((t,a)=>{a>n&&a<i[1]&&(t.size=t.min,e.nextReachedMinPanes+=t.min)}),e.nextPanesSize=this.sumNextPanesSize(i[1]-1),i[1]===void 0)?(e.nextReachedMinPanes=0,this.panes[this.panesCount-1].size=this.panes[this.panesCount-1].min,this.panes.forEach((t,a)=>{a<this.panesCount-1&&a>=n+1&&(t.size=t.min,e.nextReachedMinPanes+=t.min)}),this.panes[i[0]].size=100-e.prevPanesSize-e.nextReachedMinPanes-this.panes[this.panesCount-1].min-e.nextPanesSize,null):{sums:e,panesToResize:i}},sumPrevPanesSize(e){return this.panes.reduce((s,n,i)=>s+(i<e?n.size:0),0)},sumNextPanesSize(e){return this.panes.reduce((s,n,i)=>s+(i>e+1?n.size:0),0)},findPrevExpandedPane(e){return[...this.panes].reverse().find(s=>s.index<e&&s.size>s.min)||{}},findNextExpandedPane(e){return this.panes.find(s=>s.index>e+1&&s.size>s.min)||{}},checkSplitpanesNodes(){Array.from(this.container.children).forEach(e=>{const s=e.classList.contains("splitpanes__pane"),n=e.classList.contains("splitpanes__splitter");!s&&!n&&(e.parentNode.removeChild(e),console.warn("Splitpanes: Only <pane> elements are allowed at the root of <splitpanes>. One of your DOM nodes was removed."))})},addSplitter(e,s,n=!1){const i=e-1,t=document.createElement("div");t.classList.add("splitpanes__splitter"),n||(t.onmousedown=a=>this.onMouseDown(a,i),typeof window<"u"&&"ontouchstart"in window&&(t.ontouchstart=a=>this.onMouseDown(a,i)),t.onclick=a=>this.onSplitterClick(a,i+1)),this.dblClickSplitter&&(t.ondblclick=a=>this.onSplitterDblClick(a,i+1)),s.parentNode.insertBefore(t,s)},removeSplitter(e){e.onmousedown=void 0,e.onclick=void 0,e.ondblclick=void 0,e.parentNode.removeChild(e)},redoSplitters(){const e=Array.from(this.container.children);e.forEach(n=>{n.className.includes("splitpanes__splitter")&&this.removeSplitter(n)});let s=0;e.forEach(n=>{n.className.includes("splitpanes__pane")&&(!s&&this.firstSplitter?this.addSplitter(s,n,!0):s&&this.addSplitter(s,n),s++)})},requestUpdate({target:e,...s}){const n=this.indexedPanes[e._.uid];Object.entries(s).forEach(([i,t])=>n[i]=t)},onPaneAdd(e){let s=-1;Array.from(e.$el.parentNode.children).some(t=>(t.className.includes("splitpanes__pane")&&s++,t===e.$el));const n=parseFloat(e.minSize),i=parseFloat(e.maxSize);this.panes.splice(s,0,{id:e._.uid,index:s,min:isNaN(n)?0:n,max:isNaN(i)?100:i,size:e.size===null?null:parseFloat(e.size),givenSize:e.size,update:e.update}),this.panes.forEach((t,a)=>t.index=a),this.ready&&this.$nextTick(()=>{this.redoSplitters(),this.resetPaneSizes({addedPane:this.panes[s]}),this.$emit("pane-add",{index:s,panes:this.panes.map(t=>({min:t.min,max:t.max,size:t.size}))})})},onPaneRemove(e){const s=this.panes.findIndex(i=>i.id===e._.uid),n=this.panes.splice(s,1)[0];this.panes.forEach((i,t)=>i.index=t),this.$nextTick(()=>{this.redoSplitters(),this.resetPaneSizes({removedPane:{...n,index:s}}),this.$emit("pane-remove",{removed:n,panes:this.panes.map(i=>({min:i.min,max:i.max,size:i.size}))})})},resetPaneSizes(e={}){!e.addedPane&&!e.removedPane?this.initialPanesSizing():this.panes.some(s=>s.givenSize!==null||s.min||s.max<100)?this.equalizeAfterAddOrRemove(e):this.equalize(),this.ready&&this.$emit("resized",this.panes.map(s=>({min:s.min,max:s.max,size:s.size})))},equalize(){const e=100/this.panesCount;let s=0;const n=[],i=[];this.panes.forEach(t=>{t.size=Math.max(Math.min(e,t.max),t.min),s-=t.size,t.size>=t.max&&n.push(t.id),t.size<=t.min&&i.push(t.id)}),s>.1&&this.readjustSizes(s,n,i)},initialPanesSizing(){let e=100;const s=[],n=[];let i=0;this.panes.forEach(a=>{e-=a.size,a.size!==null&&i++,a.size>=a.max&&s.push(a.id),a.size<=a.min&&n.push(a.id)});let t=100;e>.1&&(this.panes.forEach(a=>{a.size===null&&(a.size=Math.max(Math.min(e/(this.panesCount-i),a.max),a.min)),t-=a.size}),t>.1&&this.readjustSizes(e,s,n))},equalizeAfterAddOrRemove({addedPane:e,removedPane:s}={}){let n=100/this.panesCount,i=0;const t=[],a=[];e&&e.givenSize!==null&&(n=(100-e.givenSize)/(this.panesCount-1)),this.panes.forEach(o=>{i-=o.size,o.size>=o.max&&t.push(o.id),o.size<=o.min&&a.push(o.id)}),!(Math.abs(i)<.1)&&(this.panes.forEach(o=>{e&&e.givenSize!==null&&e.id===o.id||(o.size=Math.max(Math.min(n,o.max),o.min)),i-=o.size,o.size>=o.max&&t.push(o.id),o.size<=o.min&&a.push(o.id)}),i>.1&&this.readjustSizes(i,t,a))},readjustSizes(e,s,n){let i;e>0?i=e/(this.panesCount-s.length):i=e/(this.panesCount-n.length),this.panes.forEach((t,a)=>{if(e>0&&!s.includes(t.id)){const o=Math.max(Math.min(t.size+i,t.max),t.min),h=o-t.size;e-=h,t.size=o}else if(!n.includes(t.id)){const o=Math.max(Math.min(t.size+i,t.max),t.min),h=o-t.size;e-=h,t.size=o}t.update({[this.horizontal?"height":"width"]:`${this.indexedPanes[t.id].size}%`})}),Math.abs(e)>.1&&this.$nextTick(()=>{this.ready&&console.warn("Splitpanes: Could not resize panes correctly due to their constraints.")})}},watch:{panes:{deep:!0,immediate:!1,handler(){this.updatePaneComponents()}},horizontal(){this.updatePaneComponents()},firstSplitter(){this.redoSplitters()},dblClickSplitter(e){[...this.container.querySelectorAll(".splitpanes__splitter")].forEach((s,n)=>{s.ondblclick=e?i=>this.onSplitterDblClick(i,n):void 0})}},beforeUnmount(){this.ready=!1},mounted(){this.container=this.$refs.container,this.checkSplitpanesNodes(),this.redoSplitters(),this.resetPaneSizes(),this.$emit("ready"),this.ready=!0},render(){return S("div",{ref:"container",class:["splitpanes",`splitpanes--${this.horizontal?"horizontal":"vertical"}`,{"splitpanes--dragging":this.touch.dragging}]},this.$slots.default())}},w=(e,s)=>{const n=e.__vccOpts||e;for(const[i,t]of s)n[i]=t;return n},N={name:"pane",inject:["requestUpdate","onPaneAdd","onPaneRemove","onPaneClick"],props:{size:{type:[Number,String],default:null},minSize:{type:[Number,String],default:0},maxSize:{type:[Number,String],default:100}},data:()=>({style:{}}),mounted(){this.onPaneAdd(this)},beforeUnmount(){this.onPaneRemove(this)},methods:{update(e){this.style=e}},computed:{sizeNumber(){return this.size||this.size===0?parseFloat(this.size):null},minSizeNumber(){return parseFloat(this.minSize)},maxSizeNumber(){return parseFloat(this.maxSize)}},watch:{sizeNumber(e){this.requestUpdate({target:this,size:e})},minSizeNumber(e){this.requestUpdate({target:this,min:e})},maxSizeNumber(e){this.requestUpdate({target:this,max:e})}}};function _(e,s,n,i,t,a){return P(),f("div",{class:"splitpanes__pane",onClick:s[0]||(s[0]=o=>a.onPaneClick(o,e._.uid)),style:g(e.style)},[d(e.$slots,"default")],4)}const z=w(N,[["render",_]]),x=30,$=M({__name:"PanelLeftRight",props:{storageKey:{},leftSize:{}},setup(e){const s=e,n=k(),i=s.storageKey,t=i?C({get:()=>n.value[i]||s.leftSize||x,set:a=>{n.value[i]=a}}):E(s.leftSize||x);return(a,o)=>(P(),b(l(y),{"h-full":"","of-hidden":"",onResize:o[0]||(o[0]=h=>t.value=h[0].size)},{default:p(()=>[c(l(z),{border:"r base","h-full":"",class:"of-auto!",size:l(t),"min-size":"10"},{default:p(()=>[d(a.$slots,"left")]),_:3},8,["size"]),c(l(z),{relative:"","h-full":"",class:"of-auto!","min-size":"10"},{default:p(()=>[d(a.$slots,"right")]),_:3})]),_:3}))}});export{$ as _};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_ as h}from"./NIconButton.vue.9dc5b644.js";import{g as N,at as S,a2 as B,r as O,a_ as V,o as r,c as l,a as p,n as d,q as s,t as C,s as u,a1 as _,aD as w,aE as $,h as f,F as j,ah as J,a$ as P,I as z,ak as E}from"./entry.559460ac.js";import{U as M}from"./json-editor-vue.9acffc14.js";const R=["open"],U={flex:"~ gap2","select-none":"","items-center":"",px4:""},A={key:1,"bg-active":"",p5:"",italic:""},D=p("span",{op50:""},"No data",-1),F=[D],G=N({__name:"StateEditor",props:{name:{},open:{type:Boolean},state:{},readonly:{type:Boolean}},emits:["update:open"],setup(v,{emit:k}){const i=v,t=S(i,"open",k,{passive:!0}),g=B(),o=O();o.value=JSON.parse(JSON.stringify(i.state));const c=V(o,e=>{m(e,i.state)},{deep:!0});function m(e,n){for(const a in e)e[a]===null?n[a]=null:Array.isArray(e[a])?n[a]=e[a].slice():typeof e[a]=="object"?m(e[a],n[a]):n[a]=e[a]}async function b(){c.pause(),o.value=JSON.parse(JSON.stringify(i.state)),await E(),c.resume()}return(e,n)=>{const a=h;return r(),l("div",{class:"state-editor-details",open:e.name?s(t):!0},[p("div",U,[e.name?(r(),l("button",{key:0,flex:"~","cursor-pointer":"","items-center":"",class:d(s(t)?"":"op50"),onClick:n[0]||(n[0]=y=>t.value=!s(t))},[p("div",{"i-carbon-chevron-right":"",transition:"",class:d(s(t)?"rotate-90 op0":"")},null,2),p("code",{px3:"",py1:"","font-mono":"",class:d(s(t)?"bg-[#8881] rounded-t":"rounded hover:bg-active")},C(e.name),3)],2)):u("",!0),_(e.$slots,"actions",w($({isOpen:s(t),name:e.name,state:e.state}))),s(t)?(r(),f(a,{key:1,title:"Refresh View",icon:"carbon-renew",onClick:b})):u("",!0)]),s(t)||!e.name?(r(),l(j,{key:0},[e.state&&Object.keys(e.state).length>0?(r(),f(s(M),J({key:0,modelValue:s(o),"onUpdate:modelValue":n[1]||(n[1]=y=>z(o)?o.value=y:null)},e.$attrs,{class:["json-editor-vue",[s(g).value==="dark"?"jse-theme-dark":"",(e.name,"")]],"main-menu-bar":!1,"navigation-bar":!1,"status-bar":!1,"read-only":"readonly"in e?e.readonly:s(P),indentation:2,"tab-size":2}),null,16,["modelValue","class","read-only"])):(r(),l("div",A,F))],64)):u("",!0)],8,R)}}});export{G as _};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_ as o}from"./NPanelGrids.cfd60e85.js";import{g as n,h as t,w as _,o as a,a as s}from"./entry.559460ac.js";const r=s("div",null," Your App ",-1),u=n({__name:"__blank",setup(c){return(p,m)=>{const e=o;return a(),t(e,{"h-screen":"","w-screen":"",px5:""},{default:_(()=>[r]),_:1})}}});export{u as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{g as j,l as I,r as V,o,c as a,a as e,F as m,m as E,n as F,q as n,t as _,s as y,v as P,b as s,w as i,d as p,x as T,y as A,z as R,A as U,j as G,B as X,C as ee,D as te,E as ne,G as oe,H as C,h as w,I as S,e as le,J as ie,K as se}from"./entry.559460ac.js";import{_ as ae}from"./FilepathItem.vue.7520a5eb.js";import{_ as re}from"./NPanelGrids.cfd60e85.js";import{_ as ue}from"./PanelLeftRight.vue.d1539d19.js";import{_ as de}from"./NTip.vue.d602d31e.js";import{_ as ce}from"./NCodeBlock.vue.12f6d4d2.js";import{_ as me}from"./NCheckbox.vue.660c8c34.js";import{_ as _e}from"./HelpFab.vue.6c2e0089.js";import"./client.1e3208e3.js";import"./NIconButton.vue.9dc5b644.js";const pe={"h-full":"",grid:"~ rows-[max-content_1fr]"},fe={flex:"~ wrap","w-full":""},ve=["onClick"],he=e("div",{border:"b base","flex-auto":""},null,-1),ye={key:0,flex:"~ col gap-4 items-center justify-center",p4:""},xe=e("div",{"flex-auto":""},null,-1),$e={grid:"~ cols-[30px_1fr] gap-x-2 gap-y-3 items-center justify-center","w-100":""},be=e("div",{"i-carbon-commit":"","text-xl":""},null,-1),ge=e("div",{"text-sm":"",op50:""}," Name ",-1),we=e("div",{"i-carbon-time":"","text-xl":""},null,-1),ze=e("div",{"text-sm":"",op50:""}," Build duration ",-1),Be=e("div",{"i-carbon-cics-program":"","text-xl":""},null,-1),ke=e("div",{"text-sm":"",op50:""}," Client bundle size ",-1),Ce=e("div",{"i-carbon-bare-metal-server":"","text-xl":""},null,-1),Ne=e("div",{"text-sm":"",op50:""}," Nitro bundle size ",-1),Te=e("div",{"i-carbon-edge-node":"","text-xl":""},null,-1),Ae=e("div",{"text-sm":"",op50:""}," Built ",-1),De=e("div",{"i-carbon:folder-parent":"","text-xl":""},null,-1),Ie=e("div",{"text-sm":"",op50:""}," Report Path ",-1),Ve=e("div",{"flex-auto":""},null,-1),D="/__nuxt_devtools__/analyze/",Fe=j({__name:"BuildAnalyzeDetails",props:{current:{},prev:{}},setup(N){const f=N,v=I(()=>{const t=[{name:"Overview",id:"overview"}];return f.current.features.bundleClient&&t.push({name:"Client Bundle",id:"bundle-client"}),f.current.features.bundleNitro&&t.push({name:"Nitro Bundle",id:"bundle-nitro"}),f.current.features.viteInspect&&t.push({name:"Vite Inspect",id:"vite-inspect"}),t}),l=V(v.value[0]);function b(t){return t<1024?`${t}B`:t<1024*1024?`${(t/1024).toFixed(1)}KB`:t<1024*1024*1024?`${(t/1024/1024).toFixed(1)}MB`:`${(t/1024/1024/1024).toFixed(1)}GB`}function g(t){return`${((t.endTime-t.startTime)/1e3).toFixed(1)}s`}async function x(t){return R.clearAnalyzeBuilds(await U(),[t])}return(t,c)=>{const z=ae,B=G;return o(),a("div",pe,[e("div",fe,[(o(!0),a(m,null,E(n(v),(h,u)=>(o(),a("button",{key:u,px4:"",py2:"",border:"r base",hover:"bg-active",class:F(h.id===n(l).id?"":"border-b"),onClick:d=>l.value=h},[e("div",{class:F(h.id===n(l).id?"":"op30")},_(h.name),3)],10,ve))),128)),he]),n(l).id==="overview"?(o(),a("div",ye,[xe,e("div",$e,[be,e("div",null,[ge,e("div",null,_(t.current.name),1)]),we,e("div",null,[ze,e("div",null,_(g(t.current)),1)]),t.current.size?.clientBundle?(o(),a(m,{key:0},[Be,e("div",null,[ke,e("div",null,_(b(t.current.size.clientBundle)),1)])],64)):y("",!0),t.current.size.nitroBundle?(o(),a(m,{key:1},[Ce,e("div",null,[Ne,e("div",null,_(b(t.current.size.nitroBundle)),1)])],64)):y("",!0),Te,e("div",null,[Ae,e("div",null,_(n(P)(new Date(t.current.endTime))),1)]),De,e("div",null,[Ie,s(z,{filepath:t.current.analyzeDir},null,8,["filepath"])])]),Ve,s(B,{n:"rose",icon:"carbon-delete",onClick:c[0]||(c[0]=h=>x(t.current.name))},{default:i(()=>[p(" Delete this report ")]),_:1})])):y("",!0),c._lazyshow1||n(l).id==="bundle-client"?(c._lazyshow1=!0,o(),a(m,null,[T(e("iframe",{src:`${D}${t.current.slug}/client.html`,"h-full":"","w-full":""},null,8,["src"]),[[A,n(l).id==="bundle-client"]])],64)):y("v-show-if",!0),c._lazyshow2||n(l).id==="bundle-nitro"?(c._lazyshow2=!0,o(),a(m,null,[T(e("iframe",{src:`${D}${t.current.slug}/nitro.html`,"h-full":"","w-full":""},null,8,["src"]),[[A,n(l).id==="bundle-nitro"]])],64)):y("v-show-if",!0),c._lazyshow3||n(l).id==="vite-inspect"?(c._lazyshow3=!0,o(),a(m,null,[T(e("iframe",{src:`${D}${t.current.slug}/.vite-inspect/`,"h-full":"","w-full":""},null,8,["src"]),[[A,n(l).id==="vite-inspect"]])],64)):y("v-show-if",!0)])}}}),Re={class:"markdown-body"},Se=e("h1",null,"Build Analyze",-1),je=e("p",null,[p("DevTools provides a build analyze tool to help you understand the size of your app in production. Whenever you start a new build, it runs the command "),e("code",null,"nuxt build --analyze"),p(" and present the output data directly in DevTools for easy browsing and comparing.")],-1),Ee=[Se,je],Pe={__name:"analyze-build",setup(N,{expose:f}){return f({frontmatter:{}}),(l,b)=>(o(),a("div",Re,Ee))}},Ue={flex:"~ col"},Ge={flex:"~ gap-1 items-center wrap","text-sm":"",op60:""},Le=e("div",{"i-carbon-time":""},null,-1),qe=e("div",{"flex-auto":""},null,-1),He=e("div",{"x-divider":""},null,-1),Ke={flex:"~ items-center justify-center wrap",p4:""},Oe={flex:"~ col gap-1","w-250":"",p4:""},Je=e("h3",{class:"text-lg font-medium leading-6",mb2:""}," Start analyze build? ",-1),Me=e("p",{op50:""}," Enter the name of the build: ",-1),We=e("div",{my3:"","x-divider":""},null,-1),Ye=e("p",{op50:""}," The following command will be executed in your terminal: ",-1),Ze={flex:"~ gap-3",mt2:"","justify-end":""},rt=j({__name:"analyze-build",setup(N){const f=X(),v=ee(),l=te(),b=ne(),g=I(()=>{const u=b.query.slug;return v.value?.builds.find(d=>d.slug===u)??v.value?.builds[0]}),x=V(!1),t=V(""),c=I(()=>v.value?.builds.some(u=>u.name===t.value.trim()));async function z(){t.value=await R.generateAnalyzeBuildName(),await f.start()&&(C.value={name:t.value,processId:await R.startAnalyzeBuild(await U(),t.value)},x.value&&B())}function B(){C.value?.processId&&l.push(`/modules/terminals?id=${encodeURIComponent(C.value.processId)}`)}function h(u){return`${((u.endTime-u.startTime)/1e3).toFixed(1)}s`}return oe(()=>[{id:"action:analyze-build: start",title:"Start a new analyze build",icon:"i-carbon-edge-node",action:z}]),(u,d)=>{const L=le,k=G,q=Fe,H=re,K=ue,O=ie,J=de,M=ce,W=me,Y=se,Z=Pe,Q=_e;return o(),a(m,null,[s(K,{"left-size":30},{left:i(()=>[e("div",Ue,[(o(!0),a(m,null,E(n(v)?.builds,r=>(o(),a(m,{key:r.slug},[s(L,{flex:"~ col gap1","hover:bg-active":"",p3:"",class:F(r.slug===n(g)?.slug?"text-primary bg-active":""),to:`?slug=${encodeURIComponent(r.slug)}`},{default:i(()=>[e("code",null,_(r.name),1),e("div",Ge,[Le,e("span",null,_(h(r)),1),qe,e("span",null,_(n(P)(new Date(r.endTime))),1)])]),_:2},1032,["class","to"]),He],64))),128)),e("div",Ke,[("processAnalyzeBuildInfo"in u?u.processAnalyzeBuildInfo:n(C))?(o(),w(k,{key:1,n:"primary",icon:"carbon-circle-dash animate-spin",onClick:d[1]||(d[1]=r=>B())},{default:i(()=>[p(" Building... ")]),_:1})):(o(),w(k,{key:0,n:"primary",icon:"carbon-edge-node",onClick:d[0]||(d[0]=r=>z())},{default:i(()=>[p(" Start a new build ")]),_:1}))])])]),right:i(()=>[n(g)?(o(),w(q,{key:0,current:n(g)},null,8,["current"])):(o(),w(H,{key:1}))]),_:1}),s(n(f),null,{default:i(({resolve:r})=>[s(Y,{"model-value":!0,onClose:$=>r(!1)},{default:i(()=>[e("div",Oe,[Je,Me,s(O,{modelValue:n(t),"onUpdate:modelValue":d[2]||(d[2]=$=>S(t)?t.value=$:null),placeholder:"Build name"},null,8,["modelValue"]),n(c)?(o(),w(J,{key:0,"n-orange":""},{default:i(()=>[p(" A build with the same name already exists, continue would overrides the previous build result. ")]),_:1})):y("",!0),We,Ye,s(M,{code:`npx nuxi analyze --no-serve --name=${n(t)}`,lang:"bash",px4:"",py2:"",border:"~ base rounded",lines:!1},null,8,["code"]),s(W,{modelValue:n(x),"onUpdate:modelValue":d[3]||(d[3]=$=>S(x)?x.value=$:null),mt2:"",n:"primary"},{default:i(()=>[p(" Navigate to terminal ")]),_:1},8,["modelValue"]),e("div",Ze,[s(k,{onClick:$=>r(!1)},{default:i(()=>[p(" Cancel ")]),_:2},1032,["onClick"]),s(k,{n:"solid primary",onClick:$=>r(!0)},{default:i(()=>[p(" Start ")]),_:2},1032,["onClick"])])])]),_:2},1032,["onClose"])]),_:1}),s(Q,null,{default:i(()=>[s(Z)]),_:1})],64)}}});export{rt as default};
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import{_ as Z}from"./NIconButton.vue.9dc5b644.js";import{_ as Y}from"./Navbar.vue.72301b0e.js";import{g as j,r as T,L as U,o,c as l,b as m,q as n,a as e,d as z,F as I,m as O,h as F,w as S,s as N,n as G,M as V,N as H,O as ee,z as X,A as te,P as se,J as ne,j as K,l as y,Q as oe,R as ae,S as ie,t as x,T as le,U as q,V as re,W as ce,X as ue,Y as de,Z as pe,a0 as me,I as fe}from"./entry.559460ac.js";import{_ as _e}from"./NSectionBlock.216523d8.js";import{_ as he}from"./FilepathItem.vue.7520a5eb.js";import{_ as ve}from"./CodeSnippets.vue.a1fe908d.js";import{_ as ge}from"./DrawerRight.vue.3adebf89.js";import{D as xe}from"./constants.d7bcda3c.js";import"./NIconTitle.vue.0db956c8.js";import"./NCodeBlock.vue.12f6d4d2.js";import"./client.1e3208e3.js";const we={key:0,"h-full":"","w-full":"",flex:"","items-center":"","justify-center":""},be={for:"drop-zone-input","text-3xl":""},ye={key:1,relative:"","h-full":"","w-full":"",grid:"~ rows-[max-content_1fr_max-content]"},$e=e("div",{px6:"",py6:""},[e("h1",{"text-2xl":""}," Upload "),e("p",{"text-sm":"",op50:""}," Drag and drop files to upload ")],-1),ke={grid:"~ cols-minmax-8rem","overflow-auto":"",p6:""},Ce={flex:"","items-center":"","justify-center":"","of-hidden":"",rounded:"","rounded-t-lg":"","bg-active":"","object-cover":"",class:"aspect-1/1",border:"~ base"},Pe=["src"],Ae={flex:"~ gap1","items-center":""},Fe={flex:"~ gap-2","items-center":"","justify-center":"",p8:""},De=j({__name:"DropZone",props:{folder:{type:String,required:!0}},emits:["uploaded"],setup($,{emit:t}){const p=$,i=T(!1),w=T(),u=T([]),b=["image","video"];function P(a){w.value=a.target,i.value=!0}function B(a){a.target===w.value&&(i.value=!1)}function E(a){a.preventDefault()}function L(a){a.preventDefault(),g(a.dataTransfer.files)}function g(a){const f=Array.from(a||[]);if(f.length){const _=[],r=u.value.map(c=>c.name);for(const c of f)if(r.includes(c.name)){let h=1;const[C,R]=c.name.split(".");for(;r.includes(`${C} (${h}).${R}`);)h++;const M=`${C}-${h}.${R}`,J=new Blob([c],{type:c.type}),Q=new File([J],M,{lastModified:Date.now()});_.push(Q),r.push(M)}else c.type===""?V({message:"Folders are not supported yet",icon:"carbon:face-dissatisfied",classes:"text-orange"}):b.some(h=>c.type.includes(h))?_.push(c):V({message:`"${c.type}" file type is not allowed`,icon:"carbon:face-dissatisfied",classes:"text-orange"});u.value=[...u.value,..._]}}async function v(){if(H.value||ee.value)return;const a=[];for(const f of u.value){const _=new FileReader;_.readAsDataURL(f);const c=(await new Promise(h=>{_.onload=()=>h(_.result)})).split(";base64,").pop();a.push({name:f.name,data:c})}await X.writeStaticAssets(await te(),[...a],p.folder).then(()=>{t("uploaded"),A(),V({message:"Files uploaded successfully!",icon:"i-carbon:checkmark"})}).catch(f=>{console.error(f),A(),V({message:`Error uploading files: ${f}`,icon:"i-carbon-warning",classes:"text-red"})}),i.value=!1}function s(a){u.value?.splice(a,1)}function d(a){return URL.createObjectURL(a)}function D(a,f){const[_,r]=a.name.split("."),c=f.replace(/\.\w+$/,""),h=`${c}.${r}`;return c.length===0?(alert("File name must be at least 1 characters long"),_):(Object.defineProperty(a,"name",{value:h,writable:!1}),u.value.splice(u.value.indexOf(a),1,a),a)}function k(){u.value=[]}function A(){i.value=!1,k()}return U("dragenter",P),U("dragleave",B),U("dragover",E),U("drop",L),(a,f)=>{const _=Z,r=se,c=ne,h=K;return o(),l("div",{fixed:"","bottom-0":"","left-13":"","right-0":"","top-0":"","z-10":"","backdrop-blur-20":"","transition-all":"",class:G(n(i)?"opacity-100 visible":"opacity-0 invisible")},[m(_,{icon:"carbon-close",absolute:"","right-5":"","top-5":"","z-20":"","text-xl":"",onClick:A}),n(u)?.length?(o(),l("div",ye,[$e,e("div",ke,[(o(!0),l(I,null,O(n(u),(C,R)=>(o(),l("div",{key:C.name,flex:"~ col gap-2",relative:"","h-50":"","w-40":"","items-center":""},[e("div",Ce,[e("img",{"h-full":"","w-full":"","rounded-t-lg":"","object-cover":"",src:d(C)},null,8,Pe)]),e("div",Ae,[m(c,{n:"xs","flex-auto":"","model-value":C.name,"onUpdate:modelValue":M=>D(C,M.target.value)},null,8,["model-value","onUpdate:modelValue"]),m(_,{icon:"carbon-delete","flex-none":"",title:"Remove file",onClick:M=>s(R)},null,8,["onClick"])])]))),128))]),e("div",Fe,[n(u).length?(o(),F(h,{key:0,n:"red",onClick:k},{default:S(()=>[m(r,{icon:"carbon-clean"}),z(" Clear ")]),_:1})):N("",!0),m(h,{disabled:!n(u).length,n:"primary solid",onClick:v},{default:S(()=>[m(r,{icon:"carbon-cloud-upload"}),z(" Upload ")]),_:1},8,["disabled"])])])):(o(),l("div",we,[e("label",be,[m(r,{icon:"carbon-cloud-upload","mr-2":""}),z(" Drop files here or click to select ")]),e("input",{id:"drop-zone-input",type:"file",multiple:"",hidden:"",onChange:f[0]||(f[0]=C=>g(C.target.files))},null,32)]))],2)}}}),Ie=j({__name:"AssetFontPreview",props:{asset:{}},setup($){const t=$,p=y(()=>`devtools-assets-${oe(t.asset)}`);return ae(y(()=>`
|
|
2
|
-
@font-face {
|
|
3
|
-
font-family: '${p.value}';
|
|
4
|
-
src: url('${t.asset.publicPath}');
|
|
5
|
-
}
|
|
6
|
-
`)),(i,w)=>(o(),l("div",{"of-hidden":"",style:ie({fontFamily:`'${n(p)}'`})}," Aa Bb Cc Dd Ee Ff Gg Hh Ii Jj Kk Ll Mm Nn Oo Pp Qq Rr Ss Tt Uu Vv Ww Xx Yy Zz ",4))}}),Ne={flex:"","items-center":"","justify-center":"","of-hidden":"","bg-active":"","object-cover":"",p1:""},Se=["src"],Te={key:2,"i-carbon-document":"","text-3xl":"",op20:""},je={key:3,"w-full":"","self-start":"",p4:""},Ee=["textContent"],ze={key:4,"i-carbon-help":"","text-3xl":"",op20:""},W=j({__name:"AssetPreview",props:{asset:{},textContent:{}},setup($){return(t,p)=>{const i=Ie;return o(),l("div",Ne,[t.asset.type==="image"?(o(),l("img",{key:0,src:t.asset.publicPath},null,8,Se)):t.asset.type==="font"?(o(),F(i,{key:t.asset.publicPath,asset:t.asset,"self-stretch":"",p2:"","text-2xl":""},null,8,["asset"])):t.asset.type==="text"&&!t.textContent?(o(),l("div",Te)):t.asset.type==="text"&&t.textContent?(o(),l("div",je,[e("pre",{"max-h-10rem":"","of-hidden":"","text-xs":"","font-mono":"",textContent:x(t.textContent)},null,8,Ee)])):(o(),l("div",ze))])}}}),Be={flex:"~ col gap-1",hover:"bg-active","items-center":"","of-hidden":"",rounded:"",p2:""},Le={"w-full":"","of-hidden":"",truncate:"","ws-nowrap":"","text-center":"","text-xs":""},Me=j({__name:"AssetGridItem",props:{asset:{},folder:{}},setup($){const t=$,p=y(()=>t.folder&&t.asset.path.startsWith(t.folder)?t.asset.path.slice(t.folder.length):t.asset.path);return(i,w)=>{const u=W;return o(),l("button",Be,[m(u,{"h-30":"","w-30":"",rounded:"",border:"~ base",asset:i.asset},null,8,["asset"]),e("div",Le,x(n(p)),1)])}}}),Oe={flex:"~ gap-1","w-full":"","items-center":"",hover:"bg-active",rounded:"",px4:"",py2:""},Re={"of-hidden":"",truncate:"","ws-nowrap":"","text-center":""},Ue=j({__name:"AssetListItem",props:{asset:{}},setup($){const t=$,p=y(()=>t.asset.type==="image"?"i-carbon-image":t.asset.type==="video"?"i-carbon-video":t.asset.type==="audio"?"i-carbon-volume-up":t.asset.type==="font"?"i-carbon-text-small-caps":t.asset.type==="text"?"i-carbon-document":t.asset.type==="json"?"i-carbon-json":"i-carbon-document-blank");return(i,w)=>(o(),l("button",Oe,[e("div",{class:G(n(p))},null,2),e("div",Re,x(i.asset.path),1)]))}}),Ve={flex:"~ col gap-4","min-h-full":"","w-full":"","of-hidden":"",p4:""},Xe=e("div",{flex:"~ gap2","mb--2":"","items-center":"",op50:""},[e("div",{"x-divider":""}),e("div",{"flex-none":""}," Preview "),e("div",{"x-divider":""})],-1),Ze={flex:"~","items-center":"","justify-center":""},qe=e("div",{flex:"~ gap2","mb--2":"","items-center":"",op50:""},[e("div",{"x-divider":""}),e("div",{"flex-none":""}," Details "),e("div",{"x-divider":""})],-1),Ge={"max-w-full":"","w-full":"","table-fixed":""},Ke=e("td",{"w-30":"","ws-nowrap":"",pr5:"","text-right":"",op50:""}," Filepath ",-1),We={flex:"~ gap-1","w-full":"","items-center":""},Je=e("td",{"w-30":"","ws-nowrap":"",pr5:"","text-right":"",op50:""}," Public Path ",-1),Qe={flex:"~ gap-1","w-full":"","items-center":"","of-hidden":""},Ye={"flex-auto":"","of-hidden":"",truncate:"","ws-pre":"","font-mono":""},He=e("td",{"w-30":"","ws-nowrap":"",pr5:"","text-right":"",op50:""}," Type ",-1),et={capitalize:""},tt=e("td",{"w-30":"","ws-nowrap":"",pr5:"","text-right":"",op50:""}," Image Size ",-1),st={key:0},nt=e("td",{"w-30":"","ws-nowrap":"",pr5:"","text-right":"",op50:""}," Aspect Ratio ",-1),ot=e("td",{"w-30":"","ws-nowrap":"",pr5:"","text-right":"",op50:""}," File size ",-1),at=e("td",{"w-30":"","ws-nowrap":"",pr5:"","text-right":"",op50:""}," Last modified ",-1),it={op70:""},lt=e("div",{flex:"~ gap2","mb--2":"","items-center":"",op50:""},[e("div",{"x-divider":""}),e("div",{"flex-none":""}," Actions "),e("div",{"x-divider":""})],-1),rt={flex:"~ gap2 wrap"},ct=e("div",{"flex-auto":""},null,-1),ut=j({__name:"AssetDetails",props:{asset:{}},setup($){const t=$,p=le(),i=q(()=>{if(t.asset.type==="image")return X.getImageMeta(t.asset.filePath)}),w=q(()=>{if(t.asset.type==="text")return X.getTextAssetContent(t.asset.filePath)}),u=re(),b=y(()=>(u.value?._installedModules||[]).some(d=>d.meta?.name==="@nuxt/image"||d.meta?.name==="@nuxt/image-edge")),P=y(()=>{const s=[];if(t.asset.type==="image"){const d=i.value?.width?`
|
|
7
|
-
width="${i.value.width}"
|
|
8
|
-
height="${i.value.height}" `:" ";return s.push({lang:"vue-html",code:`<img${d}
|
|
9
|
-
src="${t.asset.publicPath}"
|
|
10
|
-
/>`,name:"Plain Image"}),b.value&&s.push({lang:"vue-html",code:`<NuxtImage${d}
|
|
11
|
-
src="${t.asset.publicPath}"
|
|
12
|
-
/>`,name:"Nuxt Image",docs:"https://image.nuxtjs.org/components/nuxt-img"},{lang:"vue-html",code:`<NuxtPicture${d}
|
|
13
|
-
src="${t.asset.publicPath}"
|
|
14
|
-
/>`,name:"Nuxt Picture",docs:"https://image.nuxtjs.org/components/nuxt-picture"}),s}return s.push({lang:"html",code:`<a download href="${t.asset.publicPath}">
|
|
15
|
-
Download ${t.asset.path.split("/").slice(-1)[0]}
|
|
16
|
-
</a>`,name:"Download link"}),s}),B=ce(),E=ue(()=>t.asset.mtime),L=y(()=>{const s=t.asset.size;return s<1024?`${s} B`:s<1024*1024?`${(s/1024).toFixed(2)} KB`:`${(s/1024/1024).toFixed(2)} MB`}),g=y(()=>{if(!i.value?.width||!i.value?.height)return"";const s=(D,k)=>k?s(k,D%k):D,d=s(i.value.width,i.value.height);return d>3?`${i.value.width/d}:${i.value.height/d}`:""}),v=y(()=>["image","text","video","font"].includes(t.asset.type));return(s,d)=>{const D=W,k=he,A=Z,a=K,f=ve;return o(),l("div",Ve,[n(v)?(o(),l(I,{key:0},[Xe,e("div",Ze,[m(D,{"max-h-80":"","min-h-20":"","min-w-20":"","w-auto":"",rounded:"",border:"~ base",asset:s.asset,"text-content":n(w)},null,8,["asset","text-content"])])],64)):N("",!0),qe,e("table",Ge,[e("tbody",null,[e("tr",null,[Ke,e("td",null,[e("div",We,[m(k,{filepath:s.asset.filePath,"text-left":""},null,8,["filepath"]),m(A,{"flex-none":"",title:"Open in Editor",icon:"carbon-launch",onClick:d[0]||(d[0]=_=>n(p)(s.asset.filePath))})])])]),e("tr",null,[Je,e("td",null,[e("div",Qe,[e("div",Ye,x(s.asset.publicPath),1),m(A,{"flex-none":"",title:"Copy public path",icon:"carbon-copy",onClick:d[1]||(d[1]=_=>n(B)(s.asset.publicPath))}),m(A,{"flex-none":"",to:s.asset.publicPath,icon:"carbon-launch",target:"_blank",title:"Open in browser"},null,8,["to"])])])]),e("tr",null,[He,e("td",et,x(s.asset.type),1)]),n(i)?.width?(o(),l(I,{key:0},[e("tr",null,[tt,e("td",null,x(n(i).width)+" x "+x(n(i).height),1)]),n(g)?(o(),l("tr",st,[nt,e("td",null,x(n(g)),1)])):N("",!0)],64)):N("",!0),e("tr",null,[ot,e("td",null,x(n(L)),1)]),e("tr",null,[at,e("td",null,[z(x(new Date(s.asset.mtime).toLocaleString())+" ",1),e("span",it,"("+x(n(E))+")",1)])])])]),lt,e("div",rt,[m(a,{to:s.asset.publicPath,download:"",target:"_blank",icon:"carbon-download"},{default:S(()=>[z(" Download ")]),_:1},8,["to"]),s.asset.type==="image"?(o(),F(a,{key:0,disabled:"",icon:"carbon-image-service"},{default:S(()=>[z(" Optimize image (Coming soon) ")]),_:1})):N("",!0)]),ct,n(P).length?(o(),F(f,{key:1,border:"t base","mx--4":"","mb--4":"","code-snippets":n(P)},null,8,["code-snippets"])):N("",!0)])}}}),dt={"h-full":"","of-auto":""},pt={"flex-none":"",flex:"~ gap2 items-center"},mt={op50:""},ft={key:0},_t={"mt--4":"",px2:"",grid:"~ cols-minmax-8rem"},ht={key:1,p2:"",grid:"~ cols-minmax-8rem"},vt={key:1},Dt=j({__name:"assets",setup($){const t=de(),p=T(""),i=y(()=>new pe(t.value||[],{keys:["path"]})),w=y(()=>p.value?i.value.search(p.value).map(v=>v.item):t.value||[]),u=y(()=>{const g={};for(const v of w.value){const s=`${v.path.split("/").slice(0,-1).join("/")}/`;g[s]||(g[s]=[]),g[s].push(v)}return Object.entries(g).sort(([v],[s])=>v.localeCompare(s))}),b=T(),P=T("grid");function B(){P.value=P.value==="list"?"grid":"list"}me("Escape",()=>{b.value=void 0});const E=T();function L(){}return(g,v)=>{const s=Z,d=Y,D=De,k=Me,A=_e,a=Ue,f=ut,_=ge;return o(),l("div",dt,[m(d,{ref_key:"navbar",ref:E,search:n(p),"onUpdate:search":v[0]||(v[0]=r=>fe(p)?p.value=r:null),pb2:""},{actions:S(()=>[e("div",pt,[m(s,{"text-lg":"",icon:n(P)==="grid"?"i-carbon-list":"i-carbon-grid",title:"Toggle view",onClick:B},null,8,["icon"])])]),default:S(()=>[e("div",mt,[n(p)?(o(),l("span",ft,x(n(w).length)+" matched · ",1)):N("",!0),e("span",null,x(n(t)?.length)+" assets in total",1)])]),_:1},8,["search"]),m(D,{folder:"/",onUploaded:L}),n(P)==="grid"?(o(),l(I,{key:0},[n(u).length>1?(o(!0),l(I,{key:0},O(n(u),([r,c])=>(o(),F(A,{key:r,text:r,description:`${c.length} items`,open:c.length<=("DETAILS_MAX_ITEMS"in g?g.DETAILS_MAX_ITEMS:n(xe)),padding:!1},{default:S(()=>[e("div",_t,[(o(!0),l(I,null,O(c,h=>(o(),F(k,{key:h.path,asset:h,folder:r,onClick:C=>b.value=h},null,8,["asset","folder","onClick"]))),128))])]),_:2},1032,["text","description","open"]))),128)):(o(),l("div",ht,[(o(!0),l(I,null,O(n(w),r=>(o(),F(k,{key:r.path,asset:r,onClick:c=>b.value=r},null,8,["asset","onClick"]))),128))]))],64)):(o(),l("div",vt,[(o(!0),l(I,null,O(n(w),r=>(o(),F(a,{key:r.path,asset:r,onClick:c=>b.value=r},null,8,["asset","onClick"]))),128))])),m(_,{"model-value":!!n(b),"auto-close":"","w-120":"",navbar:n(E),onClose:v[1]||(v[1]=r=>b.value=void 0)},{default:S(()=>[n(b)?(o(),F(f,{key:0,asset:n(b)},null,8,["asset"])):N("",!0)]),_:1},8,["model-value","navbar"])])}}});export{Dt as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{b5 as r,bg as f}from"./entry.559460ac.js";let o;const t=[];function s(n){if(t.push(n),!(typeof window>"u"))return window.__NUXT_DEVTOOLS__&&t.forEach(e=>e(window.__NUXT_DEVTOOLS__)),Object.defineProperty(window,"__NUXT_DEVTOOLS__",{set(e){e&&t.forEach(i=>i(e))},get(){return o.value},configurable:!0}),()=>{t.splice(t.indexOf(n),1)}}function u(){o||(o=r(),s(n));function n(e){o.value=e,e.host&&e.host.hooks.hook("host:update:reactivity",()=>{f(o)})}return o}const d=u();export{d};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_ as E}from"./NPanelGrids.cfd60e85.js";import{_ as M}from"./AuthRequiredPanel.vue.fc7f2968.js";import{g as q,a2 as N,r as x,l as g,ai as V,aj as $,a5 as j,ak as B,al as h,am as I,an as L,c as D,o as a,E as P,D as W,ao as F,ap as C,z as A,q as t,h as l,w as b,s as O,ad as R,F as S,a as c,d as y,t as T,b as U,a8 as z}from"./entry.559460ac.js";import{_ as G}from"./LaunchPage.vue.ace7e996.js";import"./NIconButton.vue.9dc5b644.js";import"./NMarkdown.vue.31d61f61.js";import"./client.1e3208e3.js";const w=new Map,X=q({__name:"IframeView",props:{tab:{}},setup(k){const m=k,r=N(),u=x(),d=g(()=>m.tab.name),e=x(),o=V($(u));j(()=>{const n=m.tab.view,i=n.persistent!==!1,f=["clipboard-write","clipboard-read"];if(w.get(d.value)&&i)e.value=w.get(d.value),e.value.style.visibility="visible";else{e.value=document.createElement("iframe"),e.value.setAttribute("allow",f.join("; ")),i&&w.set(d.value,e.value),e.value.src=n.src;try{e.value.style.opacity="0.01",e.value.onload=()=>{v(),s(),e.value.style.opacity="1"}}catch{e.value.style.opacity="1"}document.body.appendChild(e.value),B(_)}setTimeout(s,100)}),h(_),h(s),h(v),I(()=>{e.value&&(e.value.style.visibility="hidden")});function s(){if(!(!e.value||!e.value.contentWindow))try{const n=e.value.contentWindow.document.querySelector("html");n?.classList.toggle("dark",r.value==="dark"),n?.classList.toggle("light",r.value==="dark"),new MutationObserver(()=>{r.value=e.value?.contentWindow?.document.querySelector("html")?.classList.contains("dark")?"dark":"light"}).observe(n,{attributes:!0,attributeFilter:["class"]})}catch{}}const p=L();function v(){if(!(!e.value||!e.value.contentWindow))try{e.value.contentWindow.__NUXT_DEVTOOLS__=p.value}catch{}}function _(){e.value&&Object.assign(e.value.style,{position:"fixed",left:`${o.left}px`,top:`${o.top}px`,width:`${o.width}px`,height:`${o.height}px`,outline:"none"})}return(n,i)=>(a(),D("div",{ref_key:"anchor",ref:u,"h-full":"","w-full":""},null,512))}}),H={flex:"~ col gap2",mxa:"","items-center":""},J=c("div",{"i-carbon-queued":"",mb2:"","text-5xl":"",op50:""},null,-1),K={"text-xl":""},Q={"text-rose":""},Y=c("p",{op50:""}," It might because the module contributing this tab is not installed or enabled ",-1),Z=c("p",{mt8:"","animate-pulse":""}," Redirecting to overview page... ",-1),ce=q({__name:"custom-[name]",setup(k){const m=P(),r=W(),u=g(()=>m.params.name),d=F(),e=g(()=>d.value.find(o=>o.name===u.value));return j(()=>{e.value?e.value.requireAuth&&!C.value&&A.requestForAuth():setTimeout(()=>{e.value||r.push("/modules/overview")},2e3)}),(o,s)=>{const p=E,v=M,_=X,n=G,i=z;return a(),D(S,null,[t(e)?O("",!0):(a(),l(p,{key:0},{default:b(()=>[c("div",H,[J,c("p",K,[y(" Tab "),c("code",Q,T(t(u)),1),y(" not found ")]),Y,Z])]),_:1})),t(e).requireAuth&&!("isDevAuthed"in o?o.isDevAuthed:t(C))?(a(),l(v,{key:1})):t(e).view.type==="iframe"?(a(),l(_,{key:2,tab:t(e)},null,8,["tab"])):t(e).view.type==="vnode"?(a(),l(R(t(e).view.vnode),{key:3})):t(e).view.type==="launch"?(a(),l(n,{key:4,icon:t(e).view.icon||t(e).icon,title:t(e).view.title||t(e).title,description:t(e).view.description,actions:t(e).view.actions,onAction:s[0]||(s[0]=f=>("rpc"in o?o.rpc:t(A)).customTabAction(t(e).name,f))},null,8,["icon","title","description","actions"])):(a(),l(p,{key:5},{default:b(()=>[U(i,{flex:"~ col","h-full":"","items-center":"","justify-center":""},{default:b(()=>[y(" Unknown tab type "+T(t(e).view),1)]),_:1})]),_:1}))],64)}}});export{ce as default};
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
import{_ as o,o as s,c as t,a,a1 as c}from"./entry.559460ac.js";const n={},r={"h-full":"","of-auto":"","n-panel-grids":""},l={"h-full":"","bg-base":""};function _(e,d){return s(),t("div",r,[a("div",l,[c(e.$slots,"default")])])}const i=o(n,[["render",_]]);export{i as default};
|