@nuxt/devtools 4.0.0-alpha.18 → 4.0.0-alpha.19
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/_nuxt/{CodeDiff-C5IA82Lq.js.map.json → CodeDiff-BhzZ6fTd.js.map.json} +1 -1
- package/dist/_nuxt/{CodeSnippets-iUZQ267m.js.map.json → CodeSnippets-C7LxVstU.js.map.json} +1 -1
- package/dist/_nuxt/{ComposableItem-K51Uhl0G.js.map.json → ComposableItem-C0rRVuVk.js.map.json} +1 -1
- package/dist/_nuxt/{DataSchemaButton-DdHHdnES.js.map.json → DataSchemaButton-D-t7Fd9O.js.map.json} +1 -1
- package/dist/_nuxt/{DataSchemaDrawer-2qqeTeF6.js.map.json → DataSchemaDrawer-CRqKi4Gs.js.map.json} +1 -1
- package/dist/_nuxt/{FilepathItem-D6jrZnIo.js.map.json → FilepathItem-QhFtdBo3.js.map.json} +1 -1
- package/dist/_nuxt/{HelpFab-xcWoP6o_.js.map.json → HelpFab-DsqK9feu.js.map.json} +1 -1
- package/dist/_nuxt/{LaunchPage-DVRrHA9i.js.map.json → LaunchPage-DvnAdXoI.js.map.json} +1 -1
- package/dist/_nuxt/{NCheckbox-Cq1GuyrF.js.map.json → NCheckbox-C4hTNEJ1.js.map.json} +1 -1
- package/dist/_nuxt/{NDrawer-C_ZAB3z9.js.map.json → NDrawer-CkklqKLr.js.map.json} +1 -1
- package/dist/_nuxt/{NDropdown-CzJi2B9y.js.map.json → NDropdown-CgrUsKt7.js.map.json} +1 -1
- package/dist/_nuxt/{NIcon-B-t2-q1r.js.map.json → NIcon-50gk2nbO.js.map.json} +1 -1
- package/dist/_nuxt/{NLink-DIWpT2C-.js.map.json → NLink-CatISrot.js.map.json} +1 -1
- package/dist/_nuxt/{NNavbar-BShfBHAc.js.map.json → NNavbar-Du6Evn0c.js.map.json} +1 -1
- package/dist/_nuxt/{NSectionBlock-Cm4pPEIM.js.map.json → NSectionBlock-CWogkb2Y.js.map.json} +1 -1
- package/dist/_nuxt/{NSelect-9Nk3v_sQ.js.map.json → NSelect-C1Q6pEoo.js.map.json} +1 -1
- package/dist/_nuxt/{NSelectTabs-D8amX2yN.js.map.json → NSelectTabs-ccruddjj.js.map.json} +1 -1
- package/dist/_nuxt/{NSplitPane-CWyIovAp.js.map.json → NSplitPane-CtaObqWQ.js.map.json} +1 -1
- package/dist/_nuxt/{NTip-BVi1j0Ir.js.map.json → NTip-DdMJ2p97.js.map.json} +1 -1
- package/dist/_nuxt/{ServerRouteInputs-lclUilqu.js.map.json → ServerRouteInputs-Y1oZjFFT.js.map.json} +1 -1
- package/dist/_nuxt/{StacktraceList-BUhKgrAv.js.map.json → StacktraceList-c-F2IS3F.js.map.json} +1 -1
- package/dist/_nuxt/{StateEditor-D_NCPzZq.js.map.json → StateEditor-CDR7gMTz.js.map.json} +1 -1
- package/dist/_nuxt/{__blank-BgoalQAL.js.map.json → __blank-C9tG8tKE.js.map.json} +1 -1
- package/dist/_nuxt/{analyze-build-DSk_N3wx.js.map.json → analyze-build-BqtehgeE.js.map.json} +1 -1
- package/dist/_nuxt/{assets-6seYEHqs.js.map.json → assets-BuVkFuYO.js.map.json} +1 -1
- package/dist/_nuxt/{components-CTVOL1-D.js.map.json → components-uGD7fpTl.js.map.json} +1 -1
- package/dist/_nuxt/{custom-_name_-DRWuAoZa.js.map.json → custom-_name_-CL9ijc8K.js.map.json} +1 -1
- package/dist/_nuxt/{debug-CpWOyAbK.js.map.json → debug-D10Jwem2.js.map.json} +1 -1
- package/dist/_nuxt/{entry-uV9FV_26.js.map.json → entry-CqsJq8Bj.js.map.json} +1 -1
- package/dist/_nuxt/{error-404-BN7jSsJU.js.map.json → error-404-B3hvNTTL.js.map.json} +1 -1
- package/dist/_nuxt/{error-500-CX60RT79.js.map.json → error-500-C707LWWo.js.map.json} +1 -1
- package/dist/_nuxt/{error-YOq9ydYM.js.map.json → error-D03t_7ms.js.map.json} +1 -1
- package/dist/_nuxt/{head-Q3WHkZN-.js.map.json → head-BHeO3WM1.js.map.json} +1 -1
- package/dist/_nuxt/{hooks-Dfejz2-5.js.map.json → hooks-Dao-RDzo.js.map.json} +1 -1
- package/dist/_nuxt/{imports-CCepJr4G.js.map.json → imports-CY-qGueB.js.map.json} +1 -1
- package/dist/_nuxt/{modules-CDEu6e8J.js.map.json → modules-BTU4bGX2.js.map.json} +1 -1
- package/dist/_nuxt/{nuxt-B-ZgUV2U.js.map.json → nuxt-CU0ot_Hr.js.map.json} +1 -1
- package/dist/_nuxt/{nuxt-link-X36zPJaC.js.map.json → nuxt-link-DVKhBKYR.js.map.json} +1 -1
- package/dist/_nuxt/{open-graph-RnltEfE1.js.map.json → open-graph-DrWy0sHo.js.map.json} +1 -1
- package/dist/_nuxt/{overview-0981_RjH.js.map.json → overview-DMlMZwOJ.js.map.json} +1 -1
- package/dist/_nuxt/{pages-Dv_rq-A5.js.map.json → pages-BqpyOhlp.js.map.json} +1 -1
- package/dist/_nuxt/{pages-c-R2EyNA.js.map.json → pages-Dpy3RGh8.js.map.json} +1 -1
- package/dist/_nuxt/{pages-BJY0ZMcV.js.map.json → pages-SVg8-7rL.js.map.json} +1 -1
- package/dist/_nuxt/{payload-EEc-a5Rs.js.map.json → payload-B4tGg_yJ.js.map.json} +1 -1
- package/dist/_nuxt/{plugins-DBU4EaVz.js.map.json → plugins-sOeLpXdK.js.map.json} +1 -1
- package/dist/_nuxt/{ready-B0tgRAWs.js.map.json → ready-DyAGZGXh.js.map.json} +1 -1
- package/dist/_nuxt/{runtime-configs-eyjqyWy0.js.map.json → runtime-configs-CKsHjoDA.js.map.json} +1 -1
- package/dist/_nuxt/{server-routes-CmFWvg0q.js.map.json → server-routes-Dr4xIhnL.js.map.json} +1 -1
- package/dist/_nuxt/{server-tasks-y13wW_sS.js.map.json → server-tasks-DVSMIJ23.js.map.json} +1 -1
- package/dist/_nuxt/{settings-CQHWdQH5.js.map.json → settings-ClAb5Ncw.js.map.json} +1 -1
- package/dist/_nuxt/{state-components-BtOK14JS.js.map.json → state-components-CUy4qfKa.js.map.json} +1 -1
- package/dist/_nuxt/{state-modules-B1t4RCwZ.js.map.json → state-modules-BiTBg3sT.js.map.json} +1 -1
- package/dist/_nuxt/{state-tabs-DgyOko_b.js.map.json → state-tabs-DyXoC_gu.js.map.json} +1 -1
- package/dist/_nuxt/{storage-CL3RFmxG.js.map.json → storage-Bl77u--J.js.map.json} +1 -1
- package/dist/_nuxt/{timeline-CrhB_ydt.js.map.json → timeline-RijyQyqW.js.map.json} +1 -1
- package/dist/_nuxt/{utils-DdQYVRed.js.map.json → utils-B-D4Pftb.js.map.json} +1 -1
- package/dist/_nuxt/{virtual-files-WqYqMpE0.js.map.json → virtual-files-DKOje2lN.js.map.json} +1 -1
- package/dist/chunks/analyze-build.mjs +1 -1
- package/dist/chunks/module-main.mjs +34 -22
- package/dist/chunks/vite-inspect.mjs +1 -1
- package/dist/index.mjs.map.json +1 -1
- package/dist/module.json +1 -1
- package/dist/server.mjs.map.json +1 -1
- package/package.json +19 -19
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"utils-DdQYVRed.js","mappings":"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","names":[],"sources":["../../../../../../../../../../../node_modules/.pnpm/nuxt-nightly@5.0.0-29806258.d070492f_@oxc-project+types@0.148.0_@parcel+watcher@2.6.0_@_58112c23abe983eafebecaf0c138de24/node_modules/nuxt-nightly/dist/app/utils/debounce-tick.js","../../../../../../../../../../../node_modules/.pnpm/nuxt-nightly@5.0.0-29806258.d070492f_@oxc-project+types@0.148.0_@parcel+watcher@2.6.0_@_58112c23abe983eafebecaf0c138de24/node_modules/nuxt-nightly/dist/app/components/server-placeholder.js","../../../../../../../../../../../node_modules/.pnpm/nuxt-nightly@5.0.0-29806258.d070492f_@oxc-project+types@0.148.0_@parcel+watcher@2.6.0_@_58112c23abe983eafebecaf0c138de24/node_modules/nuxt-nightly/dist/app/components/client-only.js","../../../../../../../../../../../node_modules/.pnpm/nuxt-nightly@5.0.0-29806258.d070492f_@oxc-project+types@0.148.0_@parcel+watcher@2.6.0_@_58112c23abe983eafebecaf0c138de24/node_modules/nuxt-nightly/dist/compiler/runtime/index.js","../../../../../../../../../../../node_modules/.pnpm/nuxt-nightly@5.0.0-29806258.d070492f_@oxc-project+types@0.148.0_@parcel+watcher@2.6.0_@_58112c23abe983eafebecaf0c138de24/node_modules/nuxt-nightly/dist/app/diagnostics/data.js","../../../../../../../../../../../node_modules/.pnpm/nuxt-nightly@5.0.0-29806258.d070492f_@oxc-project+types@0.148.0_@parcel+watcher@2.6.0_@_58112c23abe983eafebecaf0c138de24/node_modules/nuxt-nightly/dist/app/composables/lazy-hydration.js","../../../../../../../../../../../node_modules/.pnpm/nuxt-nightly@5.0.0-29806258.d070492f_@oxc-project+types@0.148.0_@parcel+watcher@2.6.0_@_58112c23abe983eafebecaf0c138de24/node_modules/nuxt-nightly/dist/app/composables/asyncData.js","../../../../../../../../composables/state.ts","../../../../../../../../composables/utils.ts"],"sourcesContent":["import { queuePostFlushCb } from \"vue\";\n//#region src/app/utils/debounce-tick.ts\n/**\n* Debounce an async function so that repeated calls within the same tick are\n* collapsed into a single call (plus a trailing call if arguments arrived\n* while the debounced call was still pending).\n*\n* Adapted from https://github.com/unjs/perfect-debounce with the timeout\n* replaced by Vue's post-flush callback queue.\n*/\nfunction debounceTick(fn, options = {}) {\n\tlet leadingValue;\n\tlet active = false;\n\tlet resolveList = [];\n\tlet currentPromise;\n\tlet trailingArgs;\n\tconst applyFn = (_this, args) => {\n\t\tconst promise = _applyPromised(fn, _this, args);\n\t\tcurrentPromise = promise;\n\t\tpromise.finally(() => {\n\t\t\tcurrentPromise = void 0;\n\t\t\tif (trailingArgs && !active) {\n\t\t\t\tconst args = trailingArgs;\n\t\t\t\ttrailingArgs = void 0;\n\t\t\t\tapplyFn(_this, args);\n\t\t\t}\n\t\t});\n\t\treturn promise;\n\t};\n\treturn function(...args) {\n\t\ttrailingArgs = args;\n\t\tif (currentPromise) return currentPromise;\n\t\treturn new Promise((resolve) => {\n\t\t\tconst shouldCallNow = options.leading && !active;\n\t\t\tif (!active) {\n\t\t\t\tactive = true;\n\t\t\t\tqueuePostFlushCb(() => {\n\t\t\t\t\tactive = false;\n\t\t\t\t\tconst flushArgs = trailingArgs ?? args;\n\t\t\t\t\ttrailingArgs = void 0;\n\t\t\t\t\tconst promise = options.leading ? leadingValue : applyFn(this, flushArgs);\n\t\t\t\t\tfor (const _resolve of resolveList) _resolve(promise);\n\t\t\t\t\tresolveList = [];\n\t\t\t\t});\n\t\t\t}\n\t\t\tif (shouldCallNow) {\n\t\t\t\tleadingValue = applyFn(this, args);\n\t\t\t\tresolve(leadingValue);\n\t\t\t} else resolveList.push(resolve);\n\t\t});\n\t};\n}\nasync function _applyPromised(fn, _this, args) {\n\treturn await fn.apply(_this, args);\n}\n//#endregion\nexport { debounceTick };\n","import { createCommentVNode, createElementBlock, defineComponent } from \"vue\";\nimport { clientNodePlaceholder } from \"#build/nuxt.config.mjs\";\n//#region src/app/components/server-placeholder.ts\nconst ServerPlaceholder = defineComponent({\n\tname: \"ServerPlaceholder\",\n\trender() {\n\t\treturn clientNodePlaceholder ? createCommentVNode(\"placeholder\") : createElementBlock(\"div\");\n\t}\n});\n//#endregion\nexport { ServerPlaceholder as default };\n","import { useNuxtApp } from \"../nuxt.js\";\nimport { renderDiagnostics } from \"../diagnostics/render.js\";\nimport ServerPlaceholder from \"./server-placeholder.js\";\nimport { elToStaticVNode, isVaporSlot, sanitizeTag } from \"./utils.js\";\nimport { cloneVNode, createCommentVNode, createElementBlock, defineComponent, getCurrentInstance, h, onMounted, provide, shallowRef } from \"vue\";\nimport { clientNodePlaceholder, vapor } from \"#build/nuxt.config.mjs\";\nimport { isPromise } from \"@vue/shared\";\n//#region src/app/components/client-only.ts\nconst clientOnlySymbol = Symbol.for(\"nuxt:client-only\");\nconst STATIC_DIV = \"<div></div>\";\nfunction isPlaceholderComment(el) {\n\treturn el.nodeName === \"#comment\" && el.nodeValue === \"placeholder\";\n}\nfunction createPlaceholder(el) {\n\tif (el && !isPlaceholderComment(el)) return elToStaticVNode(el, STATIC_DIV);\n\treturn clientNodePlaceholder ? createCommentVNode(\"placeholder\") : h(\"div\");\n}\nconst ClientOnly = defineComponent({\n\tname: \"ClientOnly\",\n\tinheritAttrs: false,\n\tprops: [\n\t\t\"fallback\",\n\t\t\"placeholder\",\n\t\t\"placeholderTag\",\n\t\t\"fallbackTag\"\n\t],\n\t...false && { slots: Object },\n\tsetup(props, { slots, attrs }) {\n\t\tconst mounted = shallowRef(false);\n\t\tonMounted(() => {\n\t\t\tmounted.value = true;\n\t\t});\n\t\tif (false) {\n\t\t\tconst nuxtApp = useNuxtApp();\n\t\t\tnuxtApp._isNuxtPageUsed = true;\n\t\t\tnuxtApp._isNuxtLayoutUsed = true;\n\t\t}\n\t\tconst vm = getCurrentInstance();\n\t\tif (vm) vm._nuxtClientOnly = true;\n\t\tprovide(clientOnlySymbol, true);\n\t\treturn () => {\n\t\t\tif (mounted.value) {\n\t\t\t\tconst vnodes = slots.default?.();\n\t\t\t\tif (vnodes && vnodes.length === 1 && !(vapor && isVaporSlot(slots.default))) return [cloneVNode(vnodes[0], attrs)];\n\t\t\t\tif (false && vapor && isVaporSlot(slots.default) && attrs && Object.keys(attrs).length > 0) renderDiagnostics.NUXT_E4021();\n\t\t\t\treturn vnodes;\n\t\t\t}\n\t\t\tconst slot = slots.fallback || slots.placeholder;\n\t\t\tif (slot) return h(slot);\n\t\t\tconst fallbackStr = props.fallback || props.placeholder || \"\";\n\t\t\tconst fallbackTag = sanitizeTag(props.fallbackTag || props.placeholderTag, \"span\");\n\t\t\treturn createElementBlock(fallbackTag, attrs, fallbackStr);\n\t\t};\n\t}\n});\nconst cache = /* @__PURE__ */ new WeakMap();\n/* @__NO_SIDE_EFFECTS__ */\nfunction createClientOnly(component) {\n\tif (true) return ServerPlaceholder;\n\tif (cache.has(component)) return cache.get(component);\n\tconst clone = { ...component };\n\tif (clone.render) clone.render = (ctx, cache, $props, $setup, $data, $options) => {\n\t\tif ($setup.mounted$ ?? ctx.mounted$) {\n\t\t\tconst res = component.render?.bind(ctx)(ctx, cache, $props, $setup, $data, $options);\n\t\t\treturn res.children === null || typeof res.children === \"string\" ? cloneVNode(res) : h(res);\n\t\t}\n\t\treturn createPlaceholder(ctx._.vnode.el);\n\t};\n\telse {\n\t\tconst placeholderTemplate = clientNodePlaceholder ? \"<!--placeholder-->\" : \"<div></div>\";\n\t\tclone.template &&= `\n <template v-if=\"mounted$\">${component.template}</template>\n <template v-else>${placeholderTemplate}</template>\n `;\n\t}\n\tclone.setup = (props, ctx) => {\n\t\tconst nuxtApp = useNuxtApp();\n\t\tconst mounted$ = shallowRef(nuxtApp.isHydrating === false);\n\t\tconst instance = getCurrentInstance();\n\t\tif (nuxtApp.isHydrating) {\n\t\t\tconst attrs = { ...instance.attrs };\n\t\t\tconst directives = extractDirectives(instance);\n\t\t\tfor (const key in attrs) delete instance.attrs[key];\n\t\t\tonMounted(() => {\n\t\t\t\tObject.assign(instance.attrs, attrs);\n\t\t\t\tinstance.vnode.dirs = directives;\n\t\t\t});\n\t\t}\n\t\tonMounted(() => {\n\t\t\tmounted$.value = true;\n\t\t});\n\t\tconst setupState = component.setup?.(props, ctx) || {};\n\t\tif (isPromise(setupState)) return Promise.resolve(setupState).then((setupState) => {\n\t\t\tif (typeof setupState !== \"function\") {\n\t\t\t\tsetupState ||= {};\n\t\t\t\tsetupState.mounted$ = mounted$;\n\t\t\t\treturn setupState;\n\t\t\t}\n\t\t\treturn (...args) => {\n\t\t\t\tif (mounted$.value || !nuxtApp.isHydrating) {\n\t\t\t\t\tconst res = setupState(...args);\n\t\t\t\t\treturn res.children === null || typeof res.children === \"string\" ? cloneVNode(res) : h(res);\n\t\t\t\t}\n\t\t\t\treturn createPlaceholder(instance?.vnode.el);\n\t\t\t};\n\t\t});\n\t\telse {\n\t\t\tif (typeof setupState === \"function\") return (...args) => {\n\t\t\t\tif (mounted$.value) {\n\t\t\t\t\tconst res = setupState(...args);\n\t\t\t\t\tconst attrs = clone.inheritAttrs !== false ? ctx.attrs : void 0;\n\t\t\t\t\treturn res.children === null || typeof res.children === \"string\" ? cloneVNode(res, attrs) : h(res, attrs);\n\t\t\t\t}\n\t\t\t\treturn createPlaceholder(instance?.vnode.el);\n\t\t\t};\n\t\t\treturn Object.assign(setupState, { mounted$ });\n\t\t}\n\t};\n\tcache.set(component, clone);\n\treturn clone;\n}\nfunction extractDirectives(instance) {\n\tif (!instance || !instance.vnode.dirs) return null;\n\tconst directives = instance.vnode.dirs;\n\tinstance.vnode.dirs = null;\n\treturn directives;\n}\n//#endregion\nexport { clientOnlySymbol, createClientOnly, ClientOnly as default };\n","import { appDiagnostics } from \"../../app/diagnostics/core.js\";\n//#region src/compiler/runtime/index.ts\n/**\n* Define a factory for a function that should be registered for automatic key injection.\n* @since 4.2.0\n* @param factory\n*/\nfunction defineKeyedFunctionFactory(factory) {\n\tconst placeholder = function() {\n\t\tthrow appDiagnostics.NUXT_E1007({ name: factory.name });\n\t};\n\treturn Object.defineProperty(placeholder, \"__nuxt_factory\", {\n\t\tenumerable: false,\n\t\tget: () => factory.factory\n\t});\n}\n//#endregion\nexport { defineKeyedFunctionFactory };\n","import { docsBase, prodReporters, reporters } from \"./_shared.js\";\nimport { defineDiagnostics, defineProdDiagnostics } from \"nostics\";\n//#region src/app/diagnostics/data.ts\n/**\n* E3xxx\n* Data fetching (useFetch / useAsyncData) runtime diagnostics.\n*/\nconst dataDiagnostics = !import.meta.dev ? /* #__PURE__ */ defineProdDiagnostics({\n\tdocsBase,\n\treporters: prodReporters\n}) : /* #__PURE__ */ defineDiagnostics({\n\tdocsBase,\n\treporters,\n\tcodes: {\n\t\tNUXT_E3001: {\n\t\t\twhy: (p) => `The \\`useFetch\\` request URL must not start with \"//\" (received \\`${p.url}\\`).`,\n\t\t\tfix: \"Use an absolute URL with a protocol or a relative path instead.\"\n\t\t},\n\t\tNUXT_E3002: {\n\t\t\twhy: \"`useFetch` failed to hash the request body for the cache key.\",\n\t\t\tfix: \"Pass a serializable value (plain object, string, FormData) as the request body, or provide an explicit `key` to `useFetch`.\",\n\t\t\tdocs: false\n\t\t},\n\t\tNUXT_E3003: {\n\t\t\twhy: \"`useAsyncData`/`useFetch` was called after the component had already mounted, so the data fetch cannot be awaited during setup.\",\n\t\t\tfix: \"Use `$fetch()` for requests triggered after mount (e.g. in event handlers), or call `useAsyncData`/`useFetch` in the `setup()` function.\",\n\t\t\tdocs: false\n\t\t},\n\t\tNUXT_E3004: {\n\t\t\twhy: (p) => `Incompatible options detected for \"${p.key}\":\\n${p.warnings}`,\n\t\t\tfix: \"You can use a different key or move the call to a composable to ensure the options are shared across calls.\",\n\t\t\tdocs: false\n\t\t},\n\t\tNUXT_E3005: {\n\t\t\twhy: \"`execute` was passed directly to `watch`, which causes unintended behavior.\",\n\t\t\tfix: \"Wrap the call: `watch(source, () => execute())` instead of `watch(source, execute)`.\",\n\t\t\tdocs: false\n\t\t},\n\t\tNUXT_E3006: {\n\t\t\twhy: (p) => `\\`${p.fn}\\` handler returned \\`undefined\\`, so the request may be duplicated on the client side.`,\n\t\t\tfix: \"Return a value from the handler function (e.g. `return null` instead of returning nothing).\",\n\t\t\tdocs: false\n\t\t},\n\t\tNUXT_E3007: {\n\t\t\twhy: \"`asyncData` returned a non-object value.\",\n\t\t\tfix: \"Return a plain object from the `asyncData()` function, e.g. `asyncData() { return { key: value } }`.\",\n\t\t\tdocs: false\n\t\t},\n\t\tNUXT_E3008: {\n\t\t\twhy: \"`useAsyncData` key must be a non-empty string.\",\n\t\t\tfix: \"Pass a non-empty string as the first argument to `useAsyncData()`.\"\n\t\t},\n\t\tNUXT_E3009: {\n\t\t\twhy: \"`useAsyncData` handler must be a function.\",\n\t\t\tfix: \"Pass a function as the handler argument, e.g. `useAsyncData('key', () => $fetch('/api/data'))`.\"\n\t\t},\n\t\tNUXT_E3010: {\n\t\t\twhy: \"`useFetch` no longer accepts `params`, so it was dropped from the request.\",\n\t\t\tfix: \"Rename the option to `query`, which is what `params` was an alias for.\",\n\t\t\tdocs: false\n\t\t}\n\t}\n});\n//#endregion\nexport { dataDiagnostics };\n","//#region src/app/composables/lazy-hydration.ts\nconst neverHydratedSymbol = Symbol.for(\"nuxt:never-hydrated\");\nfunction defineLazyHydrationComponent(_strategy, _source) {}\n//#endregion\nexport { defineLazyHydrationComponent, neverHydratedSymbol };\n","import { traceAsync } from \"../internal/tracing.js\";\nimport { useNuxtApp } from \"../nuxt.js\";\nimport { getUserCaller, toArray } from \"../utils.js\";\nimport { createError } from \"./error.js\";\nimport { hashFunction, hashKey } from \"../utils/hash.js\";\nimport { debounceTick } from \"../utils/debounce-tick.js\";\nimport { clientOnlySymbol } from \"../components/client-only.js\";\nimport { onNuxtReady } from \"./ready.js\";\nimport { defineKeyedFunctionFactory } from \"../../compiler/runtime/index.js\";\nimport { dataDiagnostics } from \"../diagnostics/data.js\";\nimport { neverHydratedSymbol } from \"./lazy-hydration.js\";\nimport { computed, getCurrentInstance, getCurrentScope, inject, isRef, isShallow, nextTick, onBeforeMount, onScopeDispose, onServerPrefetch, onUnmounted, queuePostFlushCb, ref, shallowRef, toRef, toValue, unref, watch } from \"vue\";\nimport { asyncDataDefaults, granularCachedData, pendingWhenIdle, purgeCachedData, stripNeverHydratedData, tracingChannelNuxt, vapor } from \"#build/nuxt.config.mjs\";\n//#region src/app/composables/asyncData.ts\nconst createUseAsyncData = defineKeyedFunctionFactory({\n\tname: \"createUseAsyncData\",\n\tfactory(options = {}) {\n\t\tfunction useAsyncData(...args) {\n\t\t\tconst autoKey = typeof args[args.length - 1] === \"string\" ? args.pop() : void 0;\n\t\t\tif (_isAutoKeyNeeded(args[0], args[1])) args.unshift(autoKey);\n\t\t\tlet [_key, _handler, opts = {}] = args;\n\t\t\tlet keyChanging = false;\n\t\t\t/** True if key is a Ref or getter; false for static string. When false, key watcher is skipped. */\n\t\t\tconst isKeyReactive = isRef(_key) || typeof _key === \"function\";\n\t\t\tconst key = isKeyReactive ? computed(() => toValue(_key)) : { value: _key };\n\t\t\tif (!key.value || typeof key.value !== \"string\") throw dataDiagnostics.NUXT_E3008();\n\t\t\tif (typeof _handler !== \"function\") throw dataDiagnostics.NUXT_E3009();\n\t\t\tconst shouldFactoryOptionsOverride = typeof options === \"function\";\n\t\t\tconst nuxtApp = useNuxtApp();\n\t\t\tconst factoryOptions = shouldFactoryOptionsOverride ? options(opts) : options;\n\t\t\tif (!shouldFactoryOptionsOverride) for (const key in factoryOptions) {\n\t\t\t\tif (factoryOptions[key] === void 0) continue;\n\t\t\t\tif (opts[key] !== void 0) continue;\n\t\t\t\topts[key] = factoryOptions[key];\n\t\t\t}\n\t\t\topts.server ??= true;\n\t\t\topts.default ??= getDefault;\n\t\t\topts.getCachedData ??= getDefaultCachedData;\n\t\t\topts.lazy ??= false;\n\t\t\topts.immediate ??= true;\n\t\t\topts.deep ??= asyncDataDefaults.deep;\n\t\t\topts.dedupe ??= \"cancel\";\n\t\t\topts.enabled ??= true;\n\t\t\tif (true && stripNeverHydratedData && opts.serialize === void 0 && getCurrentInstance() && inject(neverHydratedSymbol, false)) opts.serialize = false;\n\t\t\tif (shouldFactoryOptionsOverride) for (const key in factoryOptions) {\n\t\t\t\tif (factoryOptions[key] === void 0) continue;\n\t\t\t\topts[key] = factoryOptions[key];\n\t\t\t}\n\t\t\tconst currentData = nuxtApp._asyncData[key.value];\n\t\t\tif (false && currentData) {\n\t\t\t\tconst warnings = [];\n\t\t\t\tconst values = createHash(_handler, opts);\n\t\t\t\tif (values.handler !== currentData._hash?.handler) warnings.push(`different handler`);\n\t\t\t\tfor (const opt of [\n\t\t\t\t\t\"transform\",\n\t\t\t\t\t\"pick\",\n\t\t\t\t\t\"getCachedData\",\n\t\t\t\t\t\"serialize\"\n\t\t\t\t]) if (values[opt] !== currentData._hash[opt]) warnings.push(`different \\`${opt}\\` option`);\n\t\t\t\tif (currentData._default.toString() !== opts.default.toString()) warnings.push(`different \\`default\\` value`);\n\t\t\t\tif (opts.deep && isShallow(currentData.data)) warnings.push(`mismatching \\`deep\\` option`);\n\t\t\t\tif (warnings.length) {\n\t\t\t\t\tconst caller = getUserCaller();\n\t\t\t\t\tdataDiagnostics.NUXT_E3004({\n\t\t\t\t\t\tkey: key.value,\n\t\t\t\t\t\twarnings: warnings.map((w) => `- ${w}`).join(\"\\n\"),\n\t\t\t\t\t\tsources: caller ? [`${caller.source}:${caller.line}:${caller.column}`] : void 0\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t\tfunction createInitialFetch() {\n\t\t\t\tconst initialFetchOptions = {\n\t\t\t\t\tcause: \"initial\",\n\t\t\t\t\tdedupe: opts.dedupe\n\t\t\t\t};\n\t\t\t\tconst existing = nuxtApp._asyncData[key.value];\n\t\t\t\tif (!existing?._init) {\n\t\t\t\t\tinitialFetchOptions.cachedData = opts.getCachedData(key.value, nuxtApp, { cause: \"initial\" });\n\t\t\t\t\tnuxtApp._asyncData[key.value] = buildAsyncData(nuxtApp, key.value, _handler, opts, initialFetchOptions.cachedData);\n\t\t\t\t\tnuxtApp._asyncData[key.value]._initialCachedData = initialFetchOptions.cachedData;\n\t\t\t\t} else if (nuxtApp._asyncDataPromises[key.value]) initialFetchOptions.cachedData = existing._initialCachedData;\n\t\t\t\treturn () => nuxtApp._asyncData[key.value].execute(initialFetchOptions);\n\t\t\t}\n\t\t\tconst initialFetch = createInitialFetch();\n\t\t\tconst asyncData = nuxtApp._asyncData[key.value];\n\t\t\tasyncData._deps++;\n\t\t\tconst fetchOnServer = opts.server !== false && nuxtApp.payload.serverRendered;\n\t\t\tconst isWithinVaporComponent = () => {\n\t\t\t\tif (!vapor || getCurrentInstance()) return false;\n\t\t\t\tconst scope = getCurrentScope();\n\t\t\t\treturn !!scope && scope !== nuxtApp._scope;\n\t\t\t};\n\t\t\tif (true && fetchOnServer && opts.immediate) {\n\t\t\t\tconst promise = initialFetch();\n\t\t\t\tif (getCurrentInstance() || isWithinVaporComponent()) onServerPrefetch(() => promise);\n\t\t\t\telse nuxtApp.hook(\"app:created\", async () => {\n\t\t\t\t\tawait promise;\n\t\t\t\t});\n\t\t\t}\n\t\t\tif (false) {\n\t\t\t\tconst instance = getCurrentInstance();\n\t\t\t\tconst inComponentSetup = !!instance || isWithinVaporComponent();\n\t\t\t\tif (instance && fetchOnServer && opts.immediate && !instance.sp) instance.sp = [];\n\t\t\t\tif (false && !nuxtApp.isHydrating && !nuxtApp._processingMiddleware && (!inComponentSetup || instance?.isMounted)) dataDiagnostics.NUXT_E3003();\n\t\t\t\tif (instance && !instance._nuxtOnBeforeMountCbs) {\n\t\t\t\t\tinstance._nuxtOnBeforeMountCbs = [];\n\t\t\t\t\tconst cbs = instance._nuxtOnBeforeMountCbs;\n\t\t\t\t\tonBeforeMount(() => {\n\t\t\t\t\t\tcbs.forEach((cb) => {\n\t\t\t\t\t\t\tcb();\n\t\t\t\t\t\t});\n\t\t\t\t\t\tcbs.splice(0, cbs.length);\n\t\t\t\t\t});\n\t\t\t\t\tonUnmounted(() => cbs.splice(0, cbs.length));\n\t\t\t\t}\n\t\t\t\tconst isWithinClientOnly = inComponentSetup && (instance?._nuxtClientOnly || inject(clientOnlySymbol, false));\n\t\t\t\tconst hasServerData = key.value in nuxtApp.payload.data;\n\t\t\t\tif (fetchOnServer && nuxtApp.isHydrating && (asyncData.error.value || asyncData.data.value !== void 0 && (hasServerData || asyncData._initialCachedData !== void 0))) {\n\t\t\t\t\tif (pendingWhenIdle) asyncData.pending.value = false;\n\t\t\t\t\tasyncData.status.value = asyncData.error.value ? \"error\" : \"success\";\n\t\t\t\t} else if (inComponentSetup && (!isWithinClientOnly && nuxtApp.payload.serverRendered && nuxtApp.isHydrating && (!fetchOnServer || hasServerData) || opts.lazy) && opts.immediate) {\n\t\t\t\t\tif (instance) instance._nuxtOnBeforeMountCbs.push(initialFetch);\n\t\t\t\t\telse onBeforeMount(() => {\n\t\t\t\t\t\tinitialFetch();\n\t\t\t\t\t});\n\t\t\t\t} else if (opts.immediate && asyncData.status.value !== \"success\") initialFetch();\n\t\t\t\tfunction unregister(key) {\n\t\t\t\t\tconst data = nuxtApp._asyncData[key];\n\t\t\t\t\tif (data?._deps) {\n\t\t\t\t\t\tdata._deps--;\n\t\t\t\t\t\tif (data._deps === 0) data?._off();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst hasScope = getCurrentScope();\n\t\t\t\tconst noop = () => {};\n\t\t\t\tconst unsubKeyWatcher = isKeyReactive ? watch(key, (newKey, oldKey) => {\n\t\t\t\t\tif ((newKey || oldKey) && newKey !== oldKey) {\n\t\t\t\t\t\tkeyChanging = true;\n\t\t\t\t\t\tconst hadData = nuxtApp._asyncData[oldKey]?.data.value !== void 0;\n\t\t\t\t\t\tconst wasRunning = nuxtApp._asyncDataPromises[oldKey] !== void 0;\n\t\t\t\t\t\tconst initialFetchOptions = {\n\t\t\t\t\t\t\tcause: \"initial\",\n\t\t\t\t\t\t\tdedupe: opts.dedupe\n\t\t\t\t\t\t};\n\t\t\t\t\t\tif (!nuxtApp._asyncData[newKey]?._init) {\n\t\t\t\t\t\t\tconst cachedData = opts.getCachedData(newKey, nuxtApp, { cause: \"initial\" });\n\t\t\t\t\t\t\tinitialFetchOptions.cachedData = cachedData;\n\t\t\t\t\t\t\tconst initialValue = oldKey && hadData && cachedData === void 0 ? nuxtApp._asyncData[oldKey].data.value : cachedData;\n\t\t\t\t\t\t\tnuxtApp._asyncData[newKey] = buildAsyncData(nuxtApp, newKey, _handler, opts, initialValue);\n\t\t\t\t\t\t\tnuxtApp._asyncData[newKey]._initialCachedData = cachedData;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tnuxtApp._asyncData[newKey]._deps++;\n\t\t\t\t\t\tif (oldKey) unregister(oldKey);\n\t\t\t\t\t\tif (opts._keyTriggersExecute !== false && (opts.immediate || hadData || wasRunning)) nuxtApp._asyncData[newKey].execute(initialFetchOptions);\n\t\t\t\t\t\tqueuePostFlushCb(() => {\n\t\t\t\t\t\t\tkeyChanging = false;\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}, { flush: \"sync\" }) : noop;\n\t\t\t\tconst unsubParamsWatcher = opts.watch ? watch(opts.watch, () => {\n\t\t\t\t\tif (keyChanging) return;\n\t\t\t\t\tnuxtApp._asyncData[key.value]?._execute({\n\t\t\t\t\t\tcause: \"watch\",\n\t\t\t\t\t\tdedupe: opts.dedupe\n\t\t\t\t\t});\n\t\t\t\t}) : noop;\n\t\t\t\tconst unsubEnabledWatcher = isRef(opts.enabled) || typeof opts.enabled === \"function\" ? watch(() => toValue(opts.enabled), (isEnabled) => {\n\t\t\t\t\tconst entry = nuxtApp._asyncData[key.value];\n\t\t\t\t\tif (isEnabled || !entry || !nuxtApp._asyncDataPromises[key.value]) return;\n\t\t\t\t\tentry._abortController?.abort(new DOMException(\"AsyncData request cancelled by `enabled: false`\", \"AbortError\"));\n\t\t\t\t\tentry._abortController = void 0;\n\t\t\t\t\tdelete nuxtApp._asyncDataPromises[key.value];\n\t\t\t\t\tif (pendingWhenIdle) entry.pending.value = false;\n\t\t\t\t\tentry.status.value = \"idle\";\n\t\t\t\t}) : noop;\n\t\t\t\tif (hasScope) onScopeDispose(() => {\n\t\t\t\t\tunsubKeyWatcher();\n\t\t\t\t\tunsubParamsWatcher();\n\t\t\t\t\tunsubEnabledWatcher();\n\t\t\t\t\tunregister(key.value);\n\t\t\t\t});\n\t\t\t}\n\t\t\tconst asyncReturn = {\n\t\t\t\tdata: writableComputedRef(() => nuxtApp._asyncData[key.value]?.data, !opts.deep),\n\t\t\t\tpending: writableComputedRef(() => nuxtApp._asyncData[key.value]?.pending),\n\t\t\t\tstatus: writableComputedRef(() => nuxtApp._asyncData[key.value]?.status),\n\t\t\t\terror: writableComputedRef(() => nuxtApp._asyncData[key.value]?.error),\n\t\t\t\trefresh: (...args) => {\n\t\t\t\t\tif (!nuxtApp._asyncData[key.value]?._init) return createInitialFetch()();\n\t\t\t\t\treturn nuxtApp._asyncData[key.value].execute(...args);\n\t\t\t\t},\n\t\t\t\texecute: (...args) => asyncReturn.refresh(...args),\n\t\t\t\tclear: () => {\n\t\t\t\t\tconst entry = nuxtApp._asyncData[key.value];\n\t\t\t\t\tif (entry?._abortController) try {\n\t\t\t\t\t\tentry._abortController.abort(new DOMException(\"AsyncData aborted by user.\", \"AbortError\"));\n\t\t\t\t\t} finally {\n\t\t\t\t\t\tentry._abortController = void 0;\n\t\t\t\t\t}\n\t\t\t\t\tclearNuxtDataByKey(nuxtApp, key.value);\n\t\t\t\t}\n\t\t\t};\n\t\t\tconst asyncDataPromise = Promise.resolve(nuxtApp._asyncDataPromises[key.value]).then(() => asyncReturn);\n\t\t\tObject.assign(asyncDataPromise, asyncReturn);\n\t\t\tObject.defineProperties(asyncDataPromise, {\n\t\t\t\tthen: {\n\t\t\t\t\tenumerable: true,\n\t\t\t\t\tvalue: asyncDataPromise.then.bind(asyncDataPromise)\n\t\t\t\t},\n\t\t\t\tcatch: {\n\t\t\t\t\tenumerable: true,\n\t\t\t\t\tvalue: asyncDataPromise.catch.bind(asyncDataPromise)\n\t\t\t\t},\n\t\t\t\tfinally: {\n\t\t\t\t\tenumerable: true,\n\t\t\t\t\tvalue: asyncDataPromise.finally.bind(asyncDataPromise)\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn asyncDataPromise;\n\t\t}\n\t\treturn useAsyncData;\n\t}\n});\nconst useAsyncData = createUseAsyncData.__nuxt_factory();\nconst useLazyAsyncData = createUseAsyncData.__nuxt_factory({\n\tlazy: true,\n\t_functionName: \"useLazyAsyncData\"\n});\nfunction writableComputedRef(getter, shallow = false) {\n\tconst forwardedRef = computed({\n\t\tget() {\n\t\t\treturn getter()?.value;\n\t\t},\n\t\tset(value) {\n\t\t\tconst ref = getter();\n\t\t\tif (ref) ref.value = value;\n\t\t}\n\t});\n\tif (shallow) forwardedRef.__v_isShallow = true;\n\treturn forwardedRef;\n}\nfunction _isAutoKeyNeeded(keyOrFetcher, fetcher) {\n\tif (typeof keyOrFetcher === \"string\") return false;\n\tif (typeof keyOrFetcher === \"object\" && keyOrFetcher !== null) return false;\n\tif (typeof keyOrFetcher === \"function\" && typeof fetcher === \"function\") return false;\n\treturn true;\n}\n/** @since 3.1.0 */\nfunction useNuxtData(key) {\n\tconst nuxtApp = useNuxtApp();\n\tif (!(key in nuxtApp.payload.data)) nuxtApp.payload.data[key] = void 0;\n\tif (nuxtApp._asyncData[key]) {\n\t\tconst data = nuxtApp._asyncData[key];\n\t\tdata._deps++;\n\t\tif (getCurrentScope()) onScopeDispose(() => {\n\t\t\tdata._deps--;\n\t\t\tif (data._deps === 0) data?._off();\n\t\t});\n\t}\n\treturn { data: computed({\n\t\tget() {\n\t\t\treturn nuxtApp._asyncData[key]?.data.value ?? nuxtApp.payload.data[key];\n\t\t},\n\t\tset(value) {\n\t\t\tif (nuxtApp._asyncData[key]) nuxtApp._asyncData[key].data.value = value;\n\t\t\telse nuxtApp.payload.data[key] = value;\n\t\t}\n\t}) };\n}\n/** @since 3.0.0 */\nasync function refreshNuxtData(keys) {\n\tif (true) return Promise.resolve();\n\tconst nuxtApp = useNuxtApp();\n\tif (nuxtApp.isHydrating) await new Promise((resolve) => onNuxtReady(resolve));\n\tconst _keys = keys ? toArray(keys) : void 0;\n\tawait nuxtApp.hooks.callHookParallel(\"app:data:refresh\", _keys);\n}\n/** @since 3.0.0 */\nfunction clearNuxtData(keys) {\n\tconst nuxtApp = useNuxtApp();\n\tconst _allKeys = Object.keys(nuxtApp.payload.data);\n\tconst _keys = !keys ? _allKeys : typeof keys === \"function\" ? _allKeys.filter(keys) : toArray(keys);\n\tfor (const key of _keys) clearNuxtDataByKey(nuxtApp, key);\n}\nfunction clearNuxtDataByKey(nuxtApp, key) {\n\tdelete nuxtApp.payload.data[key];\n\tdelete nuxtApp.payload._errors[key];\n\tif (nuxtApp._asyncData[key]) {\n\t\tnuxtApp._asyncData[key].data.value = unref(nuxtApp._asyncData[key]._default());\n\t\tnuxtApp._asyncData[key].error.value = void 0;\n\t\tif (pendingWhenIdle) nuxtApp._asyncData[key].pending.value = false;\n\t\tnuxtApp._asyncData[key].status.value = \"idle\";\n\t\tnuxtApp._asyncData[key]._initialCachedData = void 0;\n\t}\n\tdelete nuxtApp._asyncDataPromises[key];\n}\nfunction pick(obj, keys) {\n\tconst newObj = {};\n\tfor (const key of keys) newObj[key] = obj[key];\n\treturn newObj;\n}\nfunction buildAsyncData(nuxtApp, key, _handler, options, initialCachedData) {\n\tnuxtApp.payload._errors[key] ??= void 0;\n\tconst hasCustomGetCachedData = options.getCachedData !== getDefaultCachedData;\n\tconst baseHandler = false || !import.meta.prerender || !nuxtApp.ssrContext?.[\"~sharedPrerenderCache\"] ? _handler : (nuxtApp, options) => {\n\t\tconst value = nuxtApp.ssrContext[\"~sharedPrerenderCache\"].get(key);\n\t\tif (value) return value;\n\t\tconst promise = Promise.resolve().then(() => nuxtApp.runWithContext(() => _handler(nuxtApp, options)));\n\t\tnuxtApp.ssrContext[\"~sharedPrerenderCache\"].set(key, promise);\n\t\treturn promise;\n\t};\n\tconst handler = true && tracingChannelNuxt ? (nuxtApp, opts) => traceAsync(\"nuxt.data\", {\n\t\tkey,\n\t\tfunctionName: options._functionName\n\t}, () => Promise.resolve(baseHandler(nuxtApp, opts))) : baseHandler;\n\tconst _ref = options.deep ? ref : shallowRef;\n\tconst hasCachedData = initialCachedData !== void 0;\n\tconst unsubRefreshAsyncData = nuxtApp.hook(\"app:data:refresh\", async (keys) => {\n\t\tif (!keys || keys.includes(key)) await asyncData.execute({ cause: \"refresh:hook\" });\n\t});\n\tconst asyncData = {\n\t\tdata: _ref(hasCachedData ? initialCachedData : options.default()),\n\t\tpending: pendingWhenIdle ? shallowRef(!hasCachedData) : computed(() => asyncData.status.value === \"pending\"),\n\t\terror: toRef(nuxtApp.payload._errors, key),\n\t\tstatus: shallowRef(\"idle\"),\n\t\texecute: (...args) => {\n\t\t\tconst [_opts, newValue = void 0] = args;\n\t\t\tconst opts = _opts && newValue === void 0 && typeof _opts === \"object\" ? _opts : {};\n\t\t\tif (false && newValue !== void 0 && (!_opts || typeof _opts !== \"object\")) dataDiagnostics.NUXT_E3005();\n\t\t\tif (nuxtApp._asyncDataPromises[key]) {\n\t\t\t\tif ((opts.dedupe ?? options.dedupe) === \"defer\") return nuxtApp._asyncDataPromises[key];\n\t\t\t}\n\t\t\tif (granularCachedData || opts.cause === \"initial\" || nuxtApp.isHydrating) {\n\t\t\t\tconst cachedData = \"cachedData\" in opts ? opts.cachedData : options.getCachedData(key, nuxtApp, { cause: opts.cause ?? \"refresh:manual\" });\n\t\t\t\tif (cachedData !== void 0) {\n\t\t\t\t\tif (options.serialize !== false) nuxtApp.payload.data[key] = cachedData;\n\t\t\t\t\tasyncData.data.value = cachedData;\n\t\t\t\t\tasyncData.error.value = void 0;\n\t\t\t\t\tasyncData.status.value = \"success\";\n\t\t\t\t\treturn Promise.resolve(cachedData);\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (toValue(options.enabled) === false) return Promise.resolve(asyncData.data.value);\n\t\t\tif (pendingWhenIdle) asyncData.pending.value = true;\n\t\t\tif (asyncData._abortController) asyncData._abortController.abort(new DOMException(\"AsyncData request cancelled by deduplication\", \"AbortError\"));\n\t\t\tasyncData._abortController = new AbortController();\n\t\t\tasyncData.status.value = \"pending\";\n\t\t\tconst cleanupController = new AbortController();\n\t\t\tconst promise = new Promise((resolve, reject) => {\n\t\t\t\ttry {\n\t\t\t\t\tconst timeout = opts.timeout ?? options.timeout;\n\t\t\t\t\tconst mergedSignal = mergeAbortSignals([asyncData._abortController?.signal, opts?.signal], cleanupController.signal, timeout);\n\t\t\t\t\tif (mergedSignal.aborted) {\n\t\t\t\t\t\tconst reason = mergedSignal.reason;\n\t\t\t\t\t\treject(reason instanceof Error ? reason : new DOMException(String(reason ?? \"Aborted\"), \"AbortError\"));\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tmergedSignal.addEventListener(\"abort\", () => {\n\t\t\t\t\t\tconst reason = mergedSignal.reason;\n\t\t\t\t\t\treject(reason instanceof Error ? reason : new DOMException(String(reason ?? \"Aborted\"), \"AbortError\"));\n\t\t\t\t\t}, {\n\t\t\t\t\t\tonce: true,\n\t\t\t\t\t\tsignal: cleanupController.signal\n\t\t\t\t\t});\n\t\t\t\t\treturn Promise.resolve(handler(nuxtApp, { signal: mergedSignal })).then(resolve, reject);\n\t\t\t\t} catch (err) {\n\t\t\t\t\treject(err);\n\t\t\t\t}\n\t\t\t}).then(async (_result) => {\n\t\t\t\tif (nuxtApp._asyncDataPromises[key] !== promise) return;\n\t\t\t\tlet result = _result;\n\t\t\t\tif (options.transform) result = await options.transform(_result);\n\t\t\t\tif (options.pick) result = pick(result, options.pick);\n\t\t\t\tif (false && true && typeof result === \"undefined\") {\n\t\t\t\t\tconst caller = getUserCaller();\n\t\t\t\t\tdataDiagnostics.NUXT_E3006({\n\t\t\t\t\t\tfn: options._functionName || \"useAsyncData\",\n\t\t\t\t\t\tsources: caller ? [`${caller.source}:${caller.line}:${caller.column}`] : void 0\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tif (options.serialize !== false) nuxtApp.payload.data[key] = result;\n\t\t\t\tasyncData.data.value = result;\n\t\t\t\tasyncData.error.value = void 0;\n\t\t\t\tasyncData.status.value = \"success\";\n\t\t\t}).catch((error) => {\n\t\t\t\tif (nuxtApp._asyncDataPromises[key] !== promise) return nuxtApp._asyncDataPromises[key];\n\t\t\t\tif (asyncData._abortController?.signal.aborted) return nuxtApp._asyncDataPromises[key];\n\t\t\t\tif (typeof DOMException !== \"undefined\" && error instanceof DOMException && error.name === \"AbortError\") {\n\t\t\t\t\tasyncData.status.value = \"idle\";\n\t\t\t\t\treturn nuxtApp._asyncDataPromises[key];\n\t\t\t\t}\n\t\t\t\tasyncData.error.value = createError(error);\n\t\t\t\tasyncData.data.value = unref(options.default());\n\t\t\t\tasyncData.status.value = \"error\";\n\t\t\t}).finally(() => {\n\t\t\t\tcleanupController.abort();\n\t\t\t\tif (nuxtApp._asyncDataPromises[key] === promise) {\n\t\t\t\t\tif (pendingWhenIdle) asyncData.pending.value = false;\n\t\t\t\t\tdelete nuxtApp._asyncDataPromises[key];\n\t\t\t\t}\n\t\t\t});\n\t\t\tnuxtApp._asyncDataPromises[key] = promise;\n\t\t\treturn nuxtApp._asyncDataPromises[key];\n\t\t},\n\t\t_execute: debounceTick((...args) => asyncData.execute(...args)),\n\t\t_default: options.default,\n\t\t_deps: 0,\n\t\t_init: true,\n\t\t_hash: false ? createHash(_handler, options) : void 0,\n\t\t_off: () => {\n\t\t\tunsubRefreshAsyncData();\n\t\t\tif (nuxtApp._asyncData[key]?._init) nuxtApp._asyncData[key]._init = false;\n\t\t\tif (nuxtApp._asyncDataPromises[key]) {\n\t\t\t\tasyncData._abortController?.abort(new DOMException(\"AsyncData request cancelled by unmount\", \"AbortError\"));\n\t\t\t\tdelete nuxtApp._asyncDataPromises[key];\n\t\t\t\tif (asyncData.status.value === \"pending\") asyncData.status.value = \"idle\";\n\t\t\t\tif (pendingWhenIdle) asyncData.pending.value = false;\n\t\t\t}\n\t\t\tif (purgeCachedData && !hasCustomGetCachedData) nextTick(() => {\n\t\t\t\tif (!nuxtApp._asyncData[key]?._init) {\n\t\t\t\t\tclearNuxtDataByKey(nuxtApp, key);\n\t\t\t\t\tasyncData.execute = () => Promise.resolve();\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t};\n\treturn asyncData;\n}\nconst getDefault = () => void 0;\nconst getDefaultCachedData = (key, nuxtApp, ctx) => {\n\tif (nuxtApp.isHydrating) return nuxtApp.payload.data[key];\n\tif (ctx.cause !== \"refresh:manual\" && ctx.cause !== \"refresh:hook\") return nuxtApp.static.data[key];\n};\nfunction createHash(_handler, options) {\n\treturn {\n\t\thandler: hashFunction(_handler),\n\t\ttransform: options.transform ? hashFunction(options.transform) : void 0,\n\t\tpick: options.pick ? hashKey(options.pick) : void 0,\n\t\tgetCachedData: options.getCachedData ? hashFunction(options.getCachedData) : void 0,\n\t\tserialize: String(options.serialize ?? true)\n\t};\n}\nfunction mergeAbortSignals(signals, cleanupSignal, timeout) {\n\tconst list = signals.filter((s) => !!s);\n\tif (typeof timeout === \"number\" && timeout >= 0) {\n\t\tconst timeoutSignal = AbortSignal.timeout?.(timeout);\n\t\tif (timeoutSignal) list.push(timeoutSignal);\n\t}\n\tif (AbortSignal.any) return AbortSignal.any(list);\n\tconst controller = new AbortController();\n\tfor (const sig of list) if (sig.aborted) {\n\t\tconst reason = sig.reason ?? new DOMException(\"Aborted\", \"AbortError\");\n\t\ttry {\n\t\t\tcontroller.abort(reason);\n\t\t} catch {\n\t\t\tcontroller.abort();\n\t\t}\n\t\treturn controller.signal;\n\t}\n\tconst onAbort = () => {\n\t\tconst reason = list.find((s) => s.aborted)?.reason ?? new DOMException(\"Aborted\", \"AbortError\");\n\t\ttry {\n\t\t\tcontroller.abort(reason);\n\t\t} catch {\n\t\t\tcontroller.abort();\n\t\t}\n\t};\n\tfor (const sig of list) sig.addEventListener?.(\"abort\", onAbort, {\n\t\tonce: true,\n\t\tsignal: cleanupSignal\n\t});\n\treturn controller.signal;\n}\n//#endregion\nexport { clearNuxtData, createUseAsyncData, refreshNuxtData, useAsyncData, useLazyAsyncData, useNuxtData };\n","import type { Ref } from 'vue'\nimport type { HookInfo, RouteInfo } from '../../src/types'\nimport { objectPick } from '@antfu/utils'\nimport { $fetch } from 'ofetch'\nimport { computed } from 'vue'\nimport { useClientRouter } from './client'\nimport { rpc } from './rpc'\nimport { useAsyncState } from './utils'\n\nexport function useServerPages() {\n return useAsyncState('getServerPages', () => rpc.getServerPages())\n}\n\nexport function useServerRoutes() {\n return useAsyncState('getServerRoutes', () => rpc.getServerRoutes())\n}\n\nexport function useServerTasks() {\n return useAsyncState('getServerTasks', () => rpc.getServerTasks())\n}\n\nexport function useServerHooks() {\n return useAsyncState('getServerHooks', () => rpc.getServerHooks()) as Ref<HookInfo[] | undefined>\n}\n\nexport function useLayouts() {\n return useAsyncState('getServerLayouts', () => rpc.getServerLayouts())\n}\n\nexport function useAutoImports() {\n return useAsyncState('getAutoImports', () => rpc.getAutoImports())\n}\n\nexport function useStaticAssets() {\n return useAsyncState('getStaticAssets', () => rpc.getStaticAssets())\n}\n\nexport function useServerConfig() {\n return useAsyncState('getServerConfig', () => rpc.getServerConfig())\n}\n\nexport function useServerDebugContext() {\n return useAsyncState('getServerDebugContext', () => rpc.getServerDebugContext())\n}\n\nexport function useServerRuntimeConfig() {\n return useAsyncState('getServerRuntimeConfig', () => rpc.getServerRuntimeConfig())\n}\n\nexport function useModuleOptions() {\n return useAsyncState('getModuleOptions', () => rpc.getModuleOptions())\n}\n\nexport function useServerApp() {\n return useAsyncState('getServerApp', () => rpc.getServerApp())\n}\n\nexport function useCustomTabs() {\n return useAsyncState('getCustomTabs', () => rpc.getCustomTabs())\n}\n\nexport function useAnalyzeBuildInfo() {\n return useAsyncState('getAnalyzeBuildInfo', () => rpc.getAnalyzeBuildInfo())\n}\n\nexport interface VfsData {\n rootDir: string\n entries: {\n id: string\n path: string\n }[]\n}\n\nexport interface VfsFile {\n id: string\n content: string\n}\n\nexport function useVirtualFiles() {\n return useAsyncState('vfs-list', () => $fetch<VfsData>('/_vfs.json', { baseURL: '/', responseType: 'json' }))\n}\n\nexport function useMergedRouteList() {\n const serverPages = useServerPages()\n const router = useClientRouter()\n\n return computed((): RouteInfo[] => {\n return (router.value?.getRoutes() || [])\n .map(i => objectPick(i, ['path', 'name', 'meta', 'props', 'children']))\n .map((i) => {\n return {\n ...serverPages.value?.find(j => j.name && j.name === i.name),\n ...i,\n }\n })\n })\n}\n","import type { Component } from 'nuxt/schema'\nimport type { Ref } from 'vue'\nimport type { AsyncDataOptions } from '#app'\nimport type { ComponentRelationship, ComponentWithRelationships, NormalizedHeadTag, SocialPreviewCard, SocialPreviewResolved } from '~/../src/types'\nimport { useSessionStorage } from '@vueuse/core'\nimport { relative } from 'pathe'\nimport { triggerRef } from 'vue'\nimport { useAsyncData } from '#app/composables/asyncData'\nimport { useNuxtApp } from '#app/nuxt'\nimport { useState } from '#imports'\nimport { useClient } from './client'\nimport { useServerConfig } from './state'\n\nconst NODE_MODULES_RE = /[/\\\\]node_modules[/\\\\]/\nconst PACKAGE_NAME_RE = /^(@[a-z0-9-~][a-z0-9-._~]*\\/)?[a-z0-9-~][a-z0-9-._~]*$/\nconst BACKSLASH_RE = /\\\\/g\nconst NODE_MODULES_PATH_RE = /.*\\/node_modules\\/(.*)$/\n\nexport function isNodeModulePath(path: string) {\n return !!path.match(NODE_MODULES_RE) || isPackageName(path)\n}\n\nexport function isPackageName(name: string) {\n return name[0] === '#' || !!name.match(PACKAGE_NAME_RE)\n}\n\nexport function getModuleNameFromPath(path: string) {\n if (isPackageName(path))\n return path\n const match = path.replace(BACKSLASH_RE, '/').match(NODE_MODULES_PATH_RE)?.[1]\n if (!match)\n return undefined\n if (match.startsWith('@'))\n return match.split('/').slice(0, 2).join('/')\n return match.split('/')[0]\n}\n\nfunction getModuleSubpathFromPath(path: string) {\n const match = path.match(NODE_MODULES_PATH_RE)?.[1]\n if (!match)\n return undefined\n return match\n}\n\n/**\n * The `nuxt` package name itself, as it appears in `node_modules` / package\n * names. Aliased installs (`\"nuxt\": \"npm:nuxt-nightly@5x\"`, the older\n * `nuxt-edge` pre-release channel, ...) physically install under a different\n * package name, so anything that special-cases \"is this Nuxt's own code\"\n * needs to check all of them, not just the literal `'nuxt'` string.\n */\nexport const NUXT_PACKAGE_NAMES = new Set(['nuxt', 'nuxt-nightly', 'nuxt-edge'])\n\nexport function isNuxtPackageName(name: string | undefined) {\n return !!name && NUXT_PACKAGE_NAMES.has(name)\n}\n\nexport function isBuiltInModule(name: string | undefined) {\n if (!name)\n return\n return isNuxtPackageName(name) || ['#app', '#head', 'vue'].includes(name)\n}\n\nexport function parseReadablePath(path: string, root: string) {\n path = path.replace(BACKSLASH_RE, '/')\n if (isPackageName(path)) {\n return {\n moduleName: path,\n path,\n }\n }\n const moduleName = getModuleNameFromPath(path)\n const subpath = getModuleSubpathFromPath(path)\n if (moduleName && subpath) {\n return {\n moduleName,\n path: subpath,\n }\n }\n // Workaround https://github.com/unjs/pathe/issues/113\n try {\n let result = relative(root, path)\n if (!result.startsWith('./') && !result.startsWith('../'))\n result = `./${result}`\n if (result.startsWith('./.nuxt/'))\n result = `#build${result.slice(7)}`\n return { path: result }\n }\n catch {\n return { path }\n }\n}\n\nexport function useAsyncState<T>(key: string, fn: () => Promise<T>, options?: AsyncDataOptions<T>) {\n const nuxt = useNuxtApp()\n const { data } = useAsyncData(key, fn, {\n ...options,\n // Custom getCachedData serves two purposes:\n // 1. Returns previously fetched data from payload.data on remount, so pages render instantly\n // 2. Prevents Nuxt's purgeCachedData from clearing data when the last consumer unmounts\n getCachedData: key => nuxt.payload.data[key] as T,\n })\n return data as Ref<T | null>\n}\n\nexport function getIsMacOS() {\n return typeof navigator !== 'undefined' && navigator.platform.toLowerCase().includes('mac')\n}\n\n// @unocss-include\nconst requestMethodClass: Record<string, string> = {\n get: 'n-green',\n post: 'n-blue',\n put: 'n-orange',\n delete: 'n-red',\n patch: 'n-purple',\n head: 'n-teal',\n default: 'n-gray',\n}\n\nexport function getRequestMethodClass(method: string) {\n return requestMethodClass[method.toLowerCase()] || requestMethodClass.default\n}\n\nexport function getSocialPreviewCard(\n rawTags: NormalizedHeadTag[],\n tags: SocialPreviewCard,\n): SocialPreviewResolved {\n const resolvedTags: { [key: string]: string | undefined } = {}\n\n for (const [key, value] of Object.entries(tags)) {\n for (const tag of value) {\n const tagValue = rawTags.find(item => item.tag === tag.tag && (tag.name ? item.name === tag.name : true))?.value\n if (tagValue) {\n resolvedTags[key] = tagValue\n break\n }\n }\n }\n\n return {\n url: window.location.host,\n ...resolvedTags,\n }\n}\n\nexport function formatDuration(ms: number | string) {\n ms = Number(ms)\n if (Number.isNaN(ms) || ms < 0)\n return '-'\n if (ms < 1)\n return '<1ms'\n if (ms < 1000)\n return `${ms}ms`\n if (ms < 1000 * 60)\n return `${(ms / 1000).toFixed(2)}s`\n return `${(ms / 1000 / 60).toFixed(2)}min`\n}\n\nexport function useSessionState<T>(name: string, initialValue: T) {\n return useState(name, () => {\n return useSessionStorage(name, initialValue, { listenToStorageChanges: false })\n })\n}\n\nexport function getComponentRelationships(component: Component, relationships?: ComponentRelationship[] | null): ComponentWithRelationships {\n const dependencies = relationships\n ?.find(i => i.id === component.filePath)\n ?.deps\n ?.map(i => relationships?.find(j => j.id === i)?.id)\n .filter(Boolean) as string[] | undefined\n const dependents = relationships\n ?.filter(i => i.deps.includes(component.filePath))\n .map(i => i.id)\n\n return {\n component,\n dependencies,\n dependents,\n }\n}\n\nexport function pluralizeByCount(count: number, singular: string, plural = `${singular}s`) {\n return `${count} ${count <= 1 ? singular : plural}`\n}\n\nexport function refreshData() {\n const client = useClient()\n const nuxt = useNuxtApp()\n\n nuxt.hooks.callHookParallel('app:data:refresh', Object.keys(nuxt.payload.data))\n triggerRef(client)\n client.value.revision.value += 1\n}\n\nexport function reloadPage() {\n location.reload()\n}\n\nexport function useNuxtCompatibilityVersion() {\n const config = useServerConfig()\n return config.value?.future.compatibilityVersion\n}\n"],"version":3}
|
|
1
|
+
{"file":"utils-B-D4Pftb.js","mappings":"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","names":[],"sources":["../../../../../../../../../../../node_modules/.pnpm/nuxt-nightly@5.0.0-29806258.d070492f_@oxc-project+types@0.148.0_@parcel+watcher@2.6.0_@_e232bcb147fd638e1275d37890b37038/node_modules/nuxt-nightly/dist/app/utils/debounce-tick.js","../../../../../../../../../../../node_modules/.pnpm/nuxt-nightly@5.0.0-29806258.d070492f_@oxc-project+types@0.148.0_@parcel+watcher@2.6.0_@_e232bcb147fd638e1275d37890b37038/node_modules/nuxt-nightly/dist/app/components/server-placeholder.js","../../../../../../../../../../../node_modules/.pnpm/nuxt-nightly@5.0.0-29806258.d070492f_@oxc-project+types@0.148.0_@parcel+watcher@2.6.0_@_e232bcb147fd638e1275d37890b37038/node_modules/nuxt-nightly/dist/app/components/client-only.js","../../../../../../../../../../../node_modules/.pnpm/nuxt-nightly@5.0.0-29806258.d070492f_@oxc-project+types@0.148.0_@parcel+watcher@2.6.0_@_e232bcb147fd638e1275d37890b37038/node_modules/nuxt-nightly/dist/compiler/runtime/index.js","../../../../../../../../../../../node_modules/.pnpm/nuxt-nightly@5.0.0-29806258.d070492f_@oxc-project+types@0.148.0_@parcel+watcher@2.6.0_@_e232bcb147fd638e1275d37890b37038/node_modules/nuxt-nightly/dist/app/diagnostics/data.js","../../../../../../../../../../../node_modules/.pnpm/nuxt-nightly@5.0.0-29806258.d070492f_@oxc-project+types@0.148.0_@parcel+watcher@2.6.0_@_e232bcb147fd638e1275d37890b37038/node_modules/nuxt-nightly/dist/app/composables/lazy-hydration.js","../../../../../../../../../../../node_modules/.pnpm/nuxt-nightly@5.0.0-29806258.d070492f_@oxc-project+types@0.148.0_@parcel+watcher@2.6.0_@_e232bcb147fd638e1275d37890b37038/node_modules/nuxt-nightly/dist/app/composables/asyncData.js","../../../../../../../../composables/state.ts","../../../../../../../../composables/utils.ts"],"sourcesContent":["import { queuePostFlushCb } from \"vue\";\n//#region src/app/utils/debounce-tick.ts\n/**\n* Debounce an async function so that repeated calls within the same tick are\n* collapsed into a single call (plus a trailing call if arguments arrived\n* while the debounced call was still pending).\n*\n* Adapted from https://github.com/unjs/perfect-debounce with the timeout\n* replaced by Vue's post-flush callback queue.\n*/\nfunction debounceTick(fn, options = {}) {\n\tlet leadingValue;\n\tlet active = false;\n\tlet resolveList = [];\n\tlet currentPromise;\n\tlet trailingArgs;\n\tconst applyFn = (_this, args) => {\n\t\tconst promise = _applyPromised(fn, _this, args);\n\t\tcurrentPromise = promise;\n\t\tpromise.finally(() => {\n\t\t\tcurrentPromise = void 0;\n\t\t\tif (trailingArgs && !active) {\n\t\t\t\tconst args = trailingArgs;\n\t\t\t\ttrailingArgs = void 0;\n\t\t\t\tapplyFn(_this, args);\n\t\t\t}\n\t\t});\n\t\treturn promise;\n\t};\n\treturn function(...args) {\n\t\ttrailingArgs = args;\n\t\tif (currentPromise) return currentPromise;\n\t\treturn new Promise((resolve) => {\n\t\t\tconst shouldCallNow = options.leading && !active;\n\t\t\tif (!active) {\n\t\t\t\tactive = true;\n\t\t\t\tqueuePostFlushCb(() => {\n\t\t\t\t\tactive = false;\n\t\t\t\t\tconst flushArgs = trailingArgs ?? args;\n\t\t\t\t\ttrailingArgs = void 0;\n\t\t\t\t\tconst promise = options.leading ? leadingValue : applyFn(this, flushArgs);\n\t\t\t\t\tfor (const _resolve of resolveList) _resolve(promise);\n\t\t\t\t\tresolveList = [];\n\t\t\t\t});\n\t\t\t}\n\t\t\tif (shouldCallNow) {\n\t\t\t\tleadingValue = applyFn(this, args);\n\t\t\t\tresolve(leadingValue);\n\t\t\t} else resolveList.push(resolve);\n\t\t});\n\t};\n}\nasync function _applyPromised(fn, _this, args) {\n\treturn await fn.apply(_this, args);\n}\n//#endregion\nexport { debounceTick };\n","import { createCommentVNode, createElementBlock, defineComponent } from \"vue\";\nimport { clientNodePlaceholder } from \"#build/nuxt.config.mjs\";\n//#region src/app/components/server-placeholder.ts\nconst ServerPlaceholder = defineComponent({\n\tname: \"ServerPlaceholder\",\n\trender() {\n\t\treturn clientNodePlaceholder ? createCommentVNode(\"placeholder\") : createElementBlock(\"div\");\n\t}\n});\n//#endregion\nexport { ServerPlaceholder as default };\n","import { useNuxtApp } from \"../nuxt.js\";\nimport { renderDiagnostics } from \"../diagnostics/render.js\";\nimport ServerPlaceholder from \"./server-placeholder.js\";\nimport { elToStaticVNode, isVaporSlot, sanitizeTag } from \"./utils.js\";\nimport { cloneVNode, createCommentVNode, createElementBlock, defineComponent, getCurrentInstance, h, onMounted, provide, shallowRef } from \"vue\";\nimport { clientNodePlaceholder, vapor } from \"#build/nuxt.config.mjs\";\nimport { isPromise } from \"@vue/shared\";\n//#region src/app/components/client-only.ts\nconst clientOnlySymbol = Symbol.for(\"nuxt:client-only\");\nconst STATIC_DIV = \"<div></div>\";\nfunction isPlaceholderComment(el) {\n\treturn el.nodeName === \"#comment\" && el.nodeValue === \"placeholder\";\n}\nfunction createPlaceholder(el) {\n\tif (el && !isPlaceholderComment(el)) return elToStaticVNode(el, STATIC_DIV);\n\treturn clientNodePlaceholder ? createCommentVNode(\"placeholder\") : h(\"div\");\n}\nconst ClientOnly = defineComponent({\n\tname: \"ClientOnly\",\n\tinheritAttrs: false,\n\tprops: [\n\t\t\"fallback\",\n\t\t\"placeholder\",\n\t\t\"placeholderTag\",\n\t\t\"fallbackTag\"\n\t],\n\t...false && { slots: Object },\n\tsetup(props, { slots, attrs }) {\n\t\tconst mounted = shallowRef(false);\n\t\tonMounted(() => {\n\t\t\tmounted.value = true;\n\t\t});\n\t\tif (false) {\n\t\t\tconst nuxtApp = useNuxtApp();\n\t\t\tnuxtApp._isNuxtPageUsed = true;\n\t\t\tnuxtApp._isNuxtLayoutUsed = true;\n\t\t}\n\t\tconst vm = getCurrentInstance();\n\t\tif (vm) vm._nuxtClientOnly = true;\n\t\tprovide(clientOnlySymbol, true);\n\t\treturn () => {\n\t\t\tif (mounted.value) {\n\t\t\t\tconst vnodes = slots.default?.();\n\t\t\t\tif (vnodes && vnodes.length === 1 && !(vapor && isVaporSlot(slots.default))) return [cloneVNode(vnodes[0], attrs)];\n\t\t\t\tif (false && vapor && isVaporSlot(slots.default) && attrs && Object.keys(attrs).length > 0) renderDiagnostics.NUXT_E4021();\n\t\t\t\treturn vnodes;\n\t\t\t}\n\t\t\tconst slot = slots.fallback || slots.placeholder;\n\t\t\tif (slot) return h(slot);\n\t\t\tconst fallbackStr = props.fallback || props.placeholder || \"\";\n\t\t\tconst fallbackTag = sanitizeTag(props.fallbackTag || props.placeholderTag, \"span\");\n\t\t\treturn createElementBlock(fallbackTag, attrs, fallbackStr);\n\t\t};\n\t}\n});\nconst cache = /* @__PURE__ */ new WeakMap();\n/* @__NO_SIDE_EFFECTS__ */\nfunction createClientOnly(component) {\n\tif (true) return ServerPlaceholder;\n\tif (cache.has(component)) return cache.get(component);\n\tconst clone = { ...component };\n\tif (clone.render) clone.render = (ctx, cache, $props, $setup, $data, $options) => {\n\t\tif ($setup.mounted$ ?? ctx.mounted$) {\n\t\t\tconst res = component.render?.bind(ctx)(ctx, cache, $props, $setup, $data, $options);\n\t\t\treturn res.children === null || typeof res.children === \"string\" ? cloneVNode(res) : h(res);\n\t\t}\n\t\treturn createPlaceholder(ctx._.vnode.el);\n\t};\n\telse {\n\t\tconst placeholderTemplate = clientNodePlaceholder ? \"<!--placeholder-->\" : \"<div></div>\";\n\t\tclone.template &&= `\n <template v-if=\"mounted$\">${component.template}</template>\n <template v-else>${placeholderTemplate}</template>\n `;\n\t}\n\tclone.setup = (props, ctx) => {\n\t\tconst nuxtApp = useNuxtApp();\n\t\tconst mounted$ = shallowRef(nuxtApp.isHydrating === false);\n\t\tconst instance = getCurrentInstance();\n\t\tif (nuxtApp.isHydrating) {\n\t\t\tconst attrs = { ...instance.attrs };\n\t\t\tconst directives = extractDirectives(instance);\n\t\t\tfor (const key in attrs) delete instance.attrs[key];\n\t\t\tonMounted(() => {\n\t\t\t\tObject.assign(instance.attrs, attrs);\n\t\t\t\tinstance.vnode.dirs = directives;\n\t\t\t});\n\t\t}\n\t\tonMounted(() => {\n\t\t\tmounted$.value = true;\n\t\t});\n\t\tconst setupState = component.setup?.(props, ctx) || {};\n\t\tif (isPromise(setupState)) return Promise.resolve(setupState).then((setupState) => {\n\t\t\tif (typeof setupState !== \"function\") {\n\t\t\t\tsetupState ||= {};\n\t\t\t\tsetupState.mounted$ = mounted$;\n\t\t\t\treturn setupState;\n\t\t\t}\n\t\t\treturn (...args) => {\n\t\t\t\tif (mounted$.value || !nuxtApp.isHydrating) {\n\t\t\t\t\tconst res = setupState(...args);\n\t\t\t\t\treturn res.children === null || typeof res.children === \"string\" ? cloneVNode(res) : h(res);\n\t\t\t\t}\n\t\t\t\treturn createPlaceholder(instance?.vnode.el);\n\t\t\t};\n\t\t});\n\t\telse {\n\t\t\tif (typeof setupState === \"function\") return (...args) => {\n\t\t\t\tif (mounted$.value) {\n\t\t\t\t\tconst res = setupState(...args);\n\t\t\t\t\tconst attrs = clone.inheritAttrs !== false ? ctx.attrs : void 0;\n\t\t\t\t\treturn res.children === null || typeof res.children === \"string\" ? cloneVNode(res, attrs) : h(res, attrs);\n\t\t\t\t}\n\t\t\t\treturn createPlaceholder(instance?.vnode.el);\n\t\t\t};\n\t\t\treturn Object.assign(setupState, { mounted$ });\n\t\t}\n\t};\n\tcache.set(component, clone);\n\treturn clone;\n}\nfunction extractDirectives(instance) {\n\tif (!instance || !instance.vnode.dirs) return null;\n\tconst directives = instance.vnode.dirs;\n\tinstance.vnode.dirs = null;\n\treturn directives;\n}\n//#endregion\nexport { clientOnlySymbol, createClientOnly, ClientOnly as default };\n","import { appDiagnostics } from \"../../app/diagnostics/core.js\";\n//#region src/compiler/runtime/index.ts\n/**\n* Define a factory for a function that should be registered for automatic key injection.\n* @since 4.2.0\n* @param factory\n*/\nfunction defineKeyedFunctionFactory(factory) {\n\tconst placeholder = function() {\n\t\tthrow appDiagnostics.NUXT_E1007({ name: factory.name });\n\t};\n\treturn Object.defineProperty(placeholder, \"__nuxt_factory\", {\n\t\tenumerable: false,\n\t\tget: () => factory.factory\n\t});\n}\n//#endregion\nexport { defineKeyedFunctionFactory };\n","import { docsBase, prodReporters, reporters } from \"./_shared.js\";\nimport { defineDiagnostics, defineProdDiagnostics } from \"nostics\";\n//#region src/app/diagnostics/data.ts\n/**\n* E3xxx\n* Data fetching (useFetch / useAsyncData) runtime diagnostics.\n*/\nconst dataDiagnostics = !import.meta.dev ? /* #__PURE__ */ defineProdDiagnostics({\n\tdocsBase,\n\treporters: prodReporters\n}) : /* #__PURE__ */ defineDiagnostics({\n\tdocsBase,\n\treporters,\n\tcodes: {\n\t\tNUXT_E3001: {\n\t\t\twhy: (p) => `The \\`useFetch\\` request URL must not start with \"//\" (received \\`${p.url}\\`).`,\n\t\t\tfix: \"Use an absolute URL with a protocol or a relative path instead.\"\n\t\t},\n\t\tNUXT_E3002: {\n\t\t\twhy: \"`useFetch` failed to hash the request body for the cache key.\",\n\t\t\tfix: \"Pass a serializable value (plain object, string, FormData) as the request body, or provide an explicit `key` to `useFetch`.\",\n\t\t\tdocs: false\n\t\t},\n\t\tNUXT_E3003: {\n\t\t\twhy: \"`useAsyncData`/`useFetch` was called after the component had already mounted, so the data fetch cannot be awaited during setup.\",\n\t\t\tfix: \"Use `$fetch()` for requests triggered after mount (e.g. in event handlers), or call `useAsyncData`/`useFetch` in the `setup()` function.\",\n\t\t\tdocs: false\n\t\t},\n\t\tNUXT_E3004: {\n\t\t\twhy: (p) => `Incompatible options detected for \"${p.key}\":\\n${p.warnings}`,\n\t\t\tfix: \"You can use a different key or move the call to a composable to ensure the options are shared across calls.\",\n\t\t\tdocs: false\n\t\t},\n\t\tNUXT_E3005: {\n\t\t\twhy: \"`execute` was passed directly to `watch`, which causes unintended behavior.\",\n\t\t\tfix: \"Wrap the call: `watch(source, () => execute())` instead of `watch(source, execute)`.\",\n\t\t\tdocs: false\n\t\t},\n\t\tNUXT_E3006: {\n\t\t\twhy: (p) => `\\`${p.fn}\\` handler returned \\`undefined\\`, so the request may be duplicated on the client side.`,\n\t\t\tfix: \"Return a value from the handler function (e.g. `return null` instead of returning nothing).\",\n\t\t\tdocs: false\n\t\t},\n\t\tNUXT_E3007: {\n\t\t\twhy: \"`asyncData` returned a non-object value.\",\n\t\t\tfix: \"Return a plain object from the `asyncData()` function, e.g. `asyncData() { return { key: value } }`.\",\n\t\t\tdocs: false\n\t\t},\n\t\tNUXT_E3008: {\n\t\t\twhy: \"`useAsyncData` key must be a non-empty string.\",\n\t\t\tfix: \"Pass a non-empty string as the first argument to `useAsyncData()`.\"\n\t\t},\n\t\tNUXT_E3009: {\n\t\t\twhy: \"`useAsyncData` handler must be a function.\",\n\t\t\tfix: \"Pass a function as the handler argument, e.g. `useAsyncData('key', () => $fetch('/api/data'))`.\"\n\t\t},\n\t\tNUXT_E3010: {\n\t\t\twhy: \"`useFetch` no longer accepts `params`, so it was dropped from the request.\",\n\t\t\tfix: \"Rename the option to `query`, which is what `params` was an alias for.\",\n\t\t\tdocs: false\n\t\t}\n\t}\n});\n//#endregion\nexport { dataDiagnostics };\n","//#region src/app/composables/lazy-hydration.ts\nconst neverHydratedSymbol = Symbol.for(\"nuxt:never-hydrated\");\nfunction defineLazyHydrationComponent(_strategy, _source) {}\n//#endregion\nexport { defineLazyHydrationComponent, neverHydratedSymbol };\n","import { traceAsync } from \"../internal/tracing.js\";\nimport { useNuxtApp } from \"../nuxt.js\";\nimport { getUserCaller, toArray } from \"../utils.js\";\nimport { createError } from \"./error.js\";\nimport { hashFunction, hashKey } from \"../utils/hash.js\";\nimport { debounceTick } from \"../utils/debounce-tick.js\";\nimport { clientOnlySymbol } from \"../components/client-only.js\";\nimport { onNuxtReady } from \"./ready.js\";\nimport { defineKeyedFunctionFactory } from \"../../compiler/runtime/index.js\";\nimport { dataDiagnostics } from \"../diagnostics/data.js\";\nimport { neverHydratedSymbol } from \"./lazy-hydration.js\";\nimport { computed, getCurrentInstance, getCurrentScope, inject, isRef, isShallow, nextTick, onBeforeMount, onScopeDispose, onServerPrefetch, onUnmounted, queuePostFlushCb, ref, shallowRef, toRef, toValue, unref, watch } from \"vue\";\nimport { asyncDataDefaults, granularCachedData, pendingWhenIdle, purgeCachedData, stripNeverHydratedData, tracingChannelNuxt, vapor } from \"#build/nuxt.config.mjs\";\n//#region src/app/composables/asyncData.ts\nconst createUseAsyncData = defineKeyedFunctionFactory({\n\tname: \"createUseAsyncData\",\n\tfactory(options = {}) {\n\t\tfunction useAsyncData(...args) {\n\t\t\tconst autoKey = typeof args[args.length - 1] === \"string\" ? args.pop() : void 0;\n\t\t\tif (_isAutoKeyNeeded(args[0], args[1])) args.unshift(autoKey);\n\t\t\tlet [_key, _handler, opts = {}] = args;\n\t\t\tlet keyChanging = false;\n\t\t\t/** True if key is a Ref or getter; false for static string. When false, key watcher is skipped. */\n\t\t\tconst isKeyReactive = isRef(_key) || typeof _key === \"function\";\n\t\t\tconst key = isKeyReactive ? computed(() => toValue(_key)) : { value: _key };\n\t\t\tif (!key.value || typeof key.value !== \"string\") throw dataDiagnostics.NUXT_E3008();\n\t\t\tif (typeof _handler !== \"function\") throw dataDiagnostics.NUXT_E3009();\n\t\t\tconst shouldFactoryOptionsOverride = typeof options === \"function\";\n\t\t\tconst nuxtApp = useNuxtApp();\n\t\t\tconst factoryOptions = shouldFactoryOptionsOverride ? options(opts) : options;\n\t\t\tif (!shouldFactoryOptionsOverride) for (const key in factoryOptions) {\n\t\t\t\tif (factoryOptions[key] === void 0) continue;\n\t\t\t\tif (opts[key] !== void 0) continue;\n\t\t\t\topts[key] = factoryOptions[key];\n\t\t\t}\n\t\t\topts.server ??= true;\n\t\t\topts.default ??= getDefault;\n\t\t\topts.getCachedData ??= getDefaultCachedData;\n\t\t\topts.lazy ??= false;\n\t\t\topts.immediate ??= true;\n\t\t\topts.deep ??= asyncDataDefaults.deep;\n\t\t\topts.dedupe ??= \"cancel\";\n\t\t\topts.enabled ??= true;\n\t\t\tif (true && stripNeverHydratedData && opts.serialize === void 0 && getCurrentInstance() && inject(neverHydratedSymbol, false)) opts.serialize = false;\n\t\t\tif (shouldFactoryOptionsOverride) for (const key in factoryOptions) {\n\t\t\t\tif (factoryOptions[key] === void 0) continue;\n\t\t\t\topts[key] = factoryOptions[key];\n\t\t\t}\n\t\t\tconst currentData = nuxtApp._asyncData[key.value];\n\t\t\tif (false && currentData) {\n\t\t\t\tconst warnings = [];\n\t\t\t\tconst values = createHash(_handler, opts);\n\t\t\t\tif (values.handler !== currentData._hash?.handler) warnings.push(`different handler`);\n\t\t\t\tfor (const opt of [\n\t\t\t\t\t\"transform\",\n\t\t\t\t\t\"pick\",\n\t\t\t\t\t\"getCachedData\",\n\t\t\t\t\t\"serialize\"\n\t\t\t\t]) if (values[opt] !== currentData._hash[opt]) warnings.push(`different \\`${opt}\\` option`);\n\t\t\t\tif (currentData._default.toString() !== opts.default.toString()) warnings.push(`different \\`default\\` value`);\n\t\t\t\tif (opts.deep && isShallow(currentData.data)) warnings.push(`mismatching \\`deep\\` option`);\n\t\t\t\tif (warnings.length) {\n\t\t\t\t\tconst caller = getUserCaller();\n\t\t\t\t\tdataDiagnostics.NUXT_E3004({\n\t\t\t\t\t\tkey: key.value,\n\t\t\t\t\t\twarnings: warnings.map((w) => `- ${w}`).join(\"\\n\"),\n\t\t\t\t\t\tsources: caller ? [`${caller.source}:${caller.line}:${caller.column}`] : void 0\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t\tfunction createInitialFetch() {\n\t\t\t\tconst initialFetchOptions = {\n\t\t\t\t\tcause: \"initial\",\n\t\t\t\t\tdedupe: opts.dedupe\n\t\t\t\t};\n\t\t\t\tconst existing = nuxtApp._asyncData[key.value];\n\t\t\t\tif (!existing?._init) {\n\t\t\t\t\tinitialFetchOptions.cachedData = opts.getCachedData(key.value, nuxtApp, { cause: \"initial\" });\n\t\t\t\t\tnuxtApp._asyncData[key.value] = buildAsyncData(nuxtApp, key.value, _handler, opts, initialFetchOptions.cachedData);\n\t\t\t\t\tnuxtApp._asyncData[key.value]._initialCachedData = initialFetchOptions.cachedData;\n\t\t\t\t} else if (nuxtApp._asyncDataPromises[key.value]) initialFetchOptions.cachedData = existing._initialCachedData;\n\t\t\t\treturn () => nuxtApp._asyncData[key.value].execute(initialFetchOptions);\n\t\t\t}\n\t\t\tconst initialFetch = createInitialFetch();\n\t\t\tconst asyncData = nuxtApp._asyncData[key.value];\n\t\t\tasyncData._deps++;\n\t\t\tconst fetchOnServer = opts.server !== false && nuxtApp.payload.serverRendered;\n\t\t\tconst isWithinVaporComponent = () => {\n\t\t\t\tif (!vapor || getCurrentInstance()) return false;\n\t\t\t\tconst scope = getCurrentScope();\n\t\t\t\treturn !!scope && scope !== nuxtApp._scope;\n\t\t\t};\n\t\t\tif (true && fetchOnServer && opts.immediate) {\n\t\t\t\tconst promise = initialFetch();\n\t\t\t\tif (getCurrentInstance() || isWithinVaporComponent()) onServerPrefetch(() => promise);\n\t\t\t\telse nuxtApp.hook(\"app:created\", async () => {\n\t\t\t\t\tawait promise;\n\t\t\t\t});\n\t\t\t}\n\t\t\tif (false) {\n\t\t\t\tconst instance = getCurrentInstance();\n\t\t\t\tconst inComponentSetup = !!instance || isWithinVaporComponent();\n\t\t\t\tif (instance && fetchOnServer && opts.immediate && !instance.sp) instance.sp = [];\n\t\t\t\tif (false && !nuxtApp.isHydrating && !nuxtApp._processingMiddleware && (!inComponentSetup || instance?.isMounted)) dataDiagnostics.NUXT_E3003();\n\t\t\t\tif (instance && !instance._nuxtOnBeforeMountCbs) {\n\t\t\t\t\tinstance._nuxtOnBeforeMountCbs = [];\n\t\t\t\t\tconst cbs = instance._nuxtOnBeforeMountCbs;\n\t\t\t\t\tonBeforeMount(() => {\n\t\t\t\t\t\tcbs.forEach((cb) => {\n\t\t\t\t\t\t\tcb();\n\t\t\t\t\t\t});\n\t\t\t\t\t\tcbs.splice(0, cbs.length);\n\t\t\t\t\t});\n\t\t\t\t\tonUnmounted(() => cbs.splice(0, cbs.length));\n\t\t\t\t}\n\t\t\t\tconst isWithinClientOnly = inComponentSetup && (instance?._nuxtClientOnly || inject(clientOnlySymbol, false));\n\t\t\t\tconst hasServerData = key.value in nuxtApp.payload.data;\n\t\t\t\tif (fetchOnServer && nuxtApp.isHydrating && (asyncData.error.value || asyncData.data.value !== void 0 && (hasServerData || asyncData._initialCachedData !== void 0))) {\n\t\t\t\t\tif (pendingWhenIdle) asyncData.pending.value = false;\n\t\t\t\t\tasyncData.status.value = asyncData.error.value ? \"error\" : \"success\";\n\t\t\t\t} else if (inComponentSetup && (!isWithinClientOnly && nuxtApp.payload.serverRendered && nuxtApp.isHydrating && (!fetchOnServer || hasServerData) || opts.lazy) && opts.immediate) {\n\t\t\t\t\tif (instance) instance._nuxtOnBeforeMountCbs.push(initialFetch);\n\t\t\t\t\telse onBeforeMount(() => {\n\t\t\t\t\t\tinitialFetch();\n\t\t\t\t\t});\n\t\t\t\t} else if (opts.immediate && asyncData.status.value !== \"success\") initialFetch();\n\t\t\t\tfunction unregister(key) {\n\t\t\t\t\tconst data = nuxtApp._asyncData[key];\n\t\t\t\t\tif (data?._deps) {\n\t\t\t\t\t\tdata._deps--;\n\t\t\t\t\t\tif (data._deps === 0) data?._off();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t\tconst hasScope = getCurrentScope();\n\t\t\t\tconst noop = () => {};\n\t\t\t\tconst unsubKeyWatcher = isKeyReactive ? watch(key, (newKey, oldKey) => {\n\t\t\t\t\tif ((newKey || oldKey) && newKey !== oldKey) {\n\t\t\t\t\t\tkeyChanging = true;\n\t\t\t\t\t\tconst hadData = nuxtApp._asyncData[oldKey]?.data.value !== void 0;\n\t\t\t\t\t\tconst wasRunning = nuxtApp._asyncDataPromises[oldKey] !== void 0;\n\t\t\t\t\t\tconst initialFetchOptions = {\n\t\t\t\t\t\t\tcause: \"initial\",\n\t\t\t\t\t\t\tdedupe: opts.dedupe\n\t\t\t\t\t\t};\n\t\t\t\t\t\tif (!nuxtApp._asyncData[newKey]?._init) {\n\t\t\t\t\t\t\tconst cachedData = opts.getCachedData(newKey, nuxtApp, { cause: \"initial\" });\n\t\t\t\t\t\t\tinitialFetchOptions.cachedData = cachedData;\n\t\t\t\t\t\t\tconst initialValue = oldKey && hadData && cachedData === void 0 ? nuxtApp._asyncData[oldKey].data.value : cachedData;\n\t\t\t\t\t\t\tnuxtApp._asyncData[newKey] = buildAsyncData(nuxtApp, newKey, _handler, opts, initialValue);\n\t\t\t\t\t\t\tnuxtApp._asyncData[newKey]._initialCachedData = cachedData;\n\t\t\t\t\t\t}\n\t\t\t\t\t\tnuxtApp._asyncData[newKey]._deps++;\n\t\t\t\t\t\tif (oldKey) unregister(oldKey);\n\t\t\t\t\t\tif (opts._keyTriggersExecute !== false && (opts.immediate || hadData || wasRunning)) nuxtApp._asyncData[newKey].execute(initialFetchOptions);\n\t\t\t\t\t\tqueuePostFlushCb(() => {\n\t\t\t\t\t\t\tkeyChanging = false;\n\t\t\t\t\t\t});\n\t\t\t\t\t}\n\t\t\t\t}, { flush: \"sync\" }) : noop;\n\t\t\t\tconst unsubParamsWatcher = opts.watch ? watch(opts.watch, () => {\n\t\t\t\t\tif (keyChanging) return;\n\t\t\t\t\tnuxtApp._asyncData[key.value]?._execute({\n\t\t\t\t\t\tcause: \"watch\",\n\t\t\t\t\t\tdedupe: opts.dedupe\n\t\t\t\t\t});\n\t\t\t\t}) : noop;\n\t\t\t\tconst unsubEnabledWatcher = isRef(opts.enabled) || typeof opts.enabled === \"function\" ? watch(() => toValue(opts.enabled), (isEnabled) => {\n\t\t\t\t\tconst entry = nuxtApp._asyncData[key.value];\n\t\t\t\t\tif (isEnabled || !entry || !nuxtApp._asyncDataPromises[key.value]) return;\n\t\t\t\t\tentry._abortController?.abort(new DOMException(\"AsyncData request cancelled by `enabled: false`\", \"AbortError\"));\n\t\t\t\t\tentry._abortController = void 0;\n\t\t\t\t\tdelete nuxtApp._asyncDataPromises[key.value];\n\t\t\t\t\tif (pendingWhenIdle) entry.pending.value = false;\n\t\t\t\t\tentry.status.value = \"idle\";\n\t\t\t\t}) : noop;\n\t\t\t\tif (hasScope) onScopeDispose(() => {\n\t\t\t\t\tunsubKeyWatcher();\n\t\t\t\t\tunsubParamsWatcher();\n\t\t\t\t\tunsubEnabledWatcher();\n\t\t\t\t\tunregister(key.value);\n\t\t\t\t});\n\t\t\t}\n\t\t\tconst asyncReturn = {\n\t\t\t\tdata: writableComputedRef(() => nuxtApp._asyncData[key.value]?.data, !opts.deep),\n\t\t\t\tpending: writableComputedRef(() => nuxtApp._asyncData[key.value]?.pending),\n\t\t\t\tstatus: writableComputedRef(() => nuxtApp._asyncData[key.value]?.status),\n\t\t\t\terror: writableComputedRef(() => nuxtApp._asyncData[key.value]?.error),\n\t\t\t\trefresh: (...args) => {\n\t\t\t\t\tif (!nuxtApp._asyncData[key.value]?._init) return createInitialFetch()();\n\t\t\t\t\treturn nuxtApp._asyncData[key.value].execute(...args);\n\t\t\t\t},\n\t\t\t\texecute: (...args) => asyncReturn.refresh(...args),\n\t\t\t\tclear: () => {\n\t\t\t\t\tconst entry = nuxtApp._asyncData[key.value];\n\t\t\t\t\tif (entry?._abortController) try {\n\t\t\t\t\t\tentry._abortController.abort(new DOMException(\"AsyncData aborted by user.\", \"AbortError\"));\n\t\t\t\t\t} finally {\n\t\t\t\t\t\tentry._abortController = void 0;\n\t\t\t\t\t}\n\t\t\t\t\tclearNuxtDataByKey(nuxtApp, key.value);\n\t\t\t\t}\n\t\t\t};\n\t\t\tconst asyncDataPromise = Promise.resolve(nuxtApp._asyncDataPromises[key.value]).then(() => asyncReturn);\n\t\t\tObject.assign(asyncDataPromise, asyncReturn);\n\t\t\tObject.defineProperties(asyncDataPromise, {\n\t\t\t\tthen: {\n\t\t\t\t\tenumerable: true,\n\t\t\t\t\tvalue: asyncDataPromise.then.bind(asyncDataPromise)\n\t\t\t\t},\n\t\t\t\tcatch: {\n\t\t\t\t\tenumerable: true,\n\t\t\t\t\tvalue: asyncDataPromise.catch.bind(asyncDataPromise)\n\t\t\t\t},\n\t\t\t\tfinally: {\n\t\t\t\t\tenumerable: true,\n\t\t\t\t\tvalue: asyncDataPromise.finally.bind(asyncDataPromise)\n\t\t\t\t}\n\t\t\t});\n\t\t\treturn asyncDataPromise;\n\t\t}\n\t\treturn useAsyncData;\n\t}\n});\nconst useAsyncData = createUseAsyncData.__nuxt_factory();\nconst useLazyAsyncData = createUseAsyncData.__nuxt_factory({\n\tlazy: true,\n\t_functionName: \"useLazyAsyncData\"\n});\nfunction writableComputedRef(getter, shallow = false) {\n\tconst forwardedRef = computed({\n\t\tget() {\n\t\t\treturn getter()?.value;\n\t\t},\n\t\tset(value) {\n\t\t\tconst ref = getter();\n\t\t\tif (ref) ref.value = value;\n\t\t}\n\t});\n\tif (shallow) forwardedRef.__v_isShallow = true;\n\treturn forwardedRef;\n}\nfunction _isAutoKeyNeeded(keyOrFetcher, fetcher) {\n\tif (typeof keyOrFetcher === \"string\") return false;\n\tif (typeof keyOrFetcher === \"object\" && keyOrFetcher !== null) return false;\n\tif (typeof keyOrFetcher === \"function\" && typeof fetcher === \"function\") return false;\n\treturn true;\n}\n/** @since 3.1.0 */\nfunction useNuxtData(key) {\n\tconst nuxtApp = useNuxtApp();\n\tif (!(key in nuxtApp.payload.data)) nuxtApp.payload.data[key] = void 0;\n\tif (nuxtApp._asyncData[key]) {\n\t\tconst data = nuxtApp._asyncData[key];\n\t\tdata._deps++;\n\t\tif (getCurrentScope()) onScopeDispose(() => {\n\t\t\tdata._deps--;\n\t\t\tif (data._deps === 0) data?._off();\n\t\t});\n\t}\n\treturn { data: computed({\n\t\tget() {\n\t\t\treturn nuxtApp._asyncData[key]?.data.value ?? nuxtApp.payload.data[key];\n\t\t},\n\t\tset(value) {\n\t\t\tif (nuxtApp._asyncData[key]) nuxtApp._asyncData[key].data.value = value;\n\t\t\telse nuxtApp.payload.data[key] = value;\n\t\t}\n\t}) };\n}\n/** @since 3.0.0 */\nasync function refreshNuxtData(keys) {\n\tif (true) return Promise.resolve();\n\tconst nuxtApp = useNuxtApp();\n\tif (nuxtApp.isHydrating) await new Promise((resolve) => onNuxtReady(resolve));\n\tconst _keys = keys ? toArray(keys) : void 0;\n\tawait nuxtApp.hooks.callHookParallel(\"app:data:refresh\", _keys);\n}\n/** @since 3.0.0 */\nfunction clearNuxtData(keys) {\n\tconst nuxtApp = useNuxtApp();\n\tconst _allKeys = Object.keys(nuxtApp.payload.data);\n\tconst _keys = !keys ? _allKeys : typeof keys === \"function\" ? _allKeys.filter(keys) : toArray(keys);\n\tfor (const key of _keys) clearNuxtDataByKey(nuxtApp, key);\n}\nfunction clearNuxtDataByKey(nuxtApp, key) {\n\tdelete nuxtApp.payload.data[key];\n\tdelete nuxtApp.payload._errors[key];\n\tif (nuxtApp._asyncData[key]) {\n\t\tnuxtApp._asyncData[key].data.value = unref(nuxtApp._asyncData[key]._default());\n\t\tnuxtApp._asyncData[key].error.value = void 0;\n\t\tif (pendingWhenIdle) nuxtApp._asyncData[key].pending.value = false;\n\t\tnuxtApp._asyncData[key].status.value = \"idle\";\n\t\tnuxtApp._asyncData[key]._initialCachedData = void 0;\n\t}\n\tdelete nuxtApp._asyncDataPromises[key];\n}\nfunction pick(obj, keys) {\n\tconst newObj = {};\n\tfor (const key of keys) newObj[key] = obj[key];\n\treturn newObj;\n}\nfunction buildAsyncData(nuxtApp, key, _handler, options, initialCachedData) {\n\tnuxtApp.payload._errors[key] ??= void 0;\n\tconst hasCustomGetCachedData = options.getCachedData !== getDefaultCachedData;\n\tconst baseHandler = false || !import.meta.prerender || !nuxtApp.ssrContext?.[\"~sharedPrerenderCache\"] ? _handler : (nuxtApp, options) => {\n\t\tconst value = nuxtApp.ssrContext[\"~sharedPrerenderCache\"].get(key);\n\t\tif (value) return value;\n\t\tconst promise = Promise.resolve().then(() => nuxtApp.runWithContext(() => _handler(nuxtApp, options)));\n\t\tnuxtApp.ssrContext[\"~sharedPrerenderCache\"].set(key, promise);\n\t\treturn promise;\n\t};\n\tconst handler = true && tracingChannelNuxt ? (nuxtApp, opts) => traceAsync(\"nuxt.data\", {\n\t\tkey,\n\t\tfunctionName: options._functionName\n\t}, () => Promise.resolve(baseHandler(nuxtApp, opts))) : baseHandler;\n\tconst _ref = options.deep ? ref : shallowRef;\n\tconst hasCachedData = initialCachedData !== void 0;\n\tconst unsubRefreshAsyncData = nuxtApp.hook(\"app:data:refresh\", async (keys) => {\n\t\tif (!keys || keys.includes(key)) await asyncData.execute({ cause: \"refresh:hook\" });\n\t});\n\tconst asyncData = {\n\t\tdata: _ref(hasCachedData ? initialCachedData : options.default()),\n\t\tpending: pendingWhenIdle ? shallowRef(!hasCachedData) : computed(() => asyncData.status.value === \"pending\"),\n\t\terror: toRef(nuxtApp.payload._errors, key),\n\t\tstatus: shallowRef(\"idle\"),\n\t\texecute: (...args) => {\n\t\t\tconst [_opts, newValue = void 0] = args;\n\t\t\tconst opts = _opts && newValue === void 0 && typeof _opts === \"object\" ? _opts : {};\n\t\t\tif (false && newValue !== void 0 && (!_opts || typeof _opts !== \"object\")) dataDiagnostics.NUXT_E3005();\n\t\t\tif (nuxtApp._asyncDataPromises[key]) {\n\t\t\t\tif ((opts.dedupe ?? options.dedupe) === \"defer\") return nuxtApp._asyncDataPromises[key];\n\t\t\t}\n\t\t\tif (granularCachedData || opts.cause === \"initial\" || nuxtApp.isHydrating) {\n\t\t\t\tconst cachedData = \"cachedData\" in opts ? opts.cachedData : options.getCachedData(key, nuxtApp, { cause: opts.cause ?? \"refresh:manual\" });\n\t\t\t\tif (cachedData !== void 0) {\n\t\t\t\t\tif (options.serialize !== false) nuxtApp.payload.data[key] = cachedData;\n\t\t\t\t\tasyncData.data.value = cachedData;\n\t\t\t\t\tasyncData.error.value = void 0;\n\t\t\t\t\tasyncData.status.value = \"success\";\n\t\t\t\t\treturn Promise.resolve(cachedData);\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (toValue(options.enabled) === false) return Promise.resolve(asyncData.data.value);\n\t\t\tif (pendingWhenIdle) asyncData.pending.value = true;\n\t\t\tif (asyncData._abortController) asyncData._abortController.abort(new DOMException(\"AsyncData request cancelled by deduplication\", \"AbortError\"));\n\t\t\tasyncData._abortController = new AbortController();\n\t\t\tasyncData.status.value = \"pending\";\n\t\t\tconst cleanupController = new AbortController();\n\t\t\tconst promise = new Promise((resolve, reject) => {\n\t\t\t\ttry {\n\t\t\t\t\tconst timeout = opts.timeout ?? options.timeout;\n\t\t\t\t\tconst mergedSignal = mergeAbortSignals([asyncData._abortController?.signal, opts?.signal], cleanupController.signal, timeout);\n\t\t\t\t\tif (mergedSignal.aborted) {\n\t\t\t\t\t\tconst reason = mergedSignal.reason;\n\t\t\t\t\t\treject(reason instanceof Error ? reason : new DOMException(String(reason ?? \"Aborted\"), \"AbortError\"));\n\t\t\t\t\t\treturn;\n\t\t\t\t\t}\n\t\t\t\t\tmergedSignal.addEventListener(\"abort\", () => {\n\t\t\t\t\t\tconst reason = mergedSignal.reason;\n\t\t\t\t\t\treject(reason instanceof Error ? reason : new DOMException(String(reason ?? \"Aborted\"), \"AbortError\"));\n\t\t\t\t\t}, {\n\t\t\t\t\t\tonce: true,\n\t\t\t\t\t\tsignal: cleanupController.signal\n\t\t\t\t\t});\n\t\t\t\t\treturn Promise.resolve(handler(nuxtApp, { signal: mergedSignal })).then(resolve, reject);\n\t\t\t\t} catch (err) {\n\t\t\t\t\treject(err);\n\t\t\t\t}\n\t\t\t}).then(async (_result) => {\n\t\t\t\tif (nuxtApp._asyncDataPromises[key] !== promise) return;\n\t\t\t\tlet result = _result;\n\t\t\t\tif (options.transform) result = await options.transform(_result);\n\t\t\t\tif (options.pick) result = pick(result, options.pick);\n\t\t\t\tif (false && true && typeof result === \"undefined\") {\n\t\t\t\t\tconst caller = getUserCaller();\n\t\t\t\t\tdataDiagnostics.NUXT_E3006({\n\t\t\t\t\t\tfn: options._functionName || \"useAsyncData\",\n\t\t\t\t\t\tsources: caller ? [`${caller.source}:${caller.line}:${caller.column}`] : void 0\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t\tif (options.serialize !== false) nuxtApp.payload.data[key] = result;\n\t\t\t\tasyncData.data.value = result;\n\t\t\t\tasyncData.error.value = void 0;\n\t\t\t\tasyncData.status.value = \"success\";\n\t\t\t}).catch((error) => {\n\t\t\t\tif (nuxtApp._asyncDataPromises[key] !== promise) return nuxtApp._asyncDataPromises[key];\n\t\t\t\tif (asyncData._abortController?.signal.aborted) return nuxtApp._asyncDataPromises[key];\n\t\t\t\tif (typeof DOMException !== \"undefined\" && error instanceof DOMException && error.name === \"AbortError\") {\n\t\t\t\t\tasyncData.status.value = \"idle\";\n\t\t\t\t\treturn nuxtApp._asyncDataPromises[key];\n\t\t\t\t}\n\t\t\t\tasyncData.error.value = createError(error);\n\t\t\t\tasyncData.data.value = unref(options.default());\n\t\t\t\tasyncData.status.value = \"error\";\n\t\t\t}).finally(() => {\n\t\t\t\tcleanupController.abort();\n\t\t\t\tif (nuxtApp._asyncDataPromises[key] === promise) {\n\t\t\t\t\tif (pendingWhenIdle) asyncData.pending.value = false;\n\t\t\t\t\tdelete nuxtApp._asyncDataPromises[key];\n\t\t\t\t}\n\t\t\t});\n\t\t\tnuxtApp._asyncDataPromises[key] = promise;\n\t\t\treturn nuxtApp._asyncDataPromises[key];\n\t\t},\n\t\t_execute: debounceTick((...args) => asyncData.execute(...args)),\n\t\t_default: options.default,\n\t\t_deps: 0,\n\t\t_init: true,\n\t\t_hash: false ? createHash(_handler, options) : void 0,\n\t\t_off: () => {\n\t\t\tunsubRefreshAsyncData();\n\t\t\tif (nuxtApp._asyncData[key]?._init) nuxtApp._asyncData[key]._init = false;\n\t\t\tif (nuxtApp._asyncDataPromises[key]) {\n\t\t\t\tasyncData._abortController?.abort(new DOMException(\"AsyncData request cancelled by unmount\", \"AbortError\"));\n\t\t\t\tdelete nuxtApp._asyncDataPromises[key];\n\t\t\t\tif (asyncData.status.value === \"pending\") asyncData.status.value = \"idle\";\n\t\t\t\tif (pendingWhenIdle) asyncData.pending.value = false;\n\t\t\t}\n\t\t\tif (purgeCachedData && !hasCustomGetCachedData) nextTick(() => {\n\t\t\t\tif (!nuxtApp._asyncData[key]?._init) {\n\t\t\t\t\tclearNuxtDataByKey(nuxtApp, key);\n\t\t\t\t\tasyncData.execute = () => Promise.resolve();\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t};\n\treturn asyncData;\n}\nconst getDefault = () => void 0;\nconst getDefaultCachedData = (key, nuxtApp, ctx) => {\n\tif (nuxtApp.isHydrating) return nuxtApp.payload.data[key];\n\tif (ctx.cause !== \"refresh:manual\" && ctx.cause !== \"refresh:hook\") return nuxtApp.static.data[key];\n};\nfunction createHash(_handler, options) {\n\treturn {\n\t\thandler: hashFunction(_handler),\n\t\ttransform: options.transform ? hashFunction(options.transform) : void 0,\n\t\tpick: options.pick ? hashKey(options.pick) : void 0,\n\t\tgetCachedData: options.getCachedData ? hashFunction(options.getCachedData) : void 0,\n\t\tserialize: String(options.serialize ?? true)\n\t};\n}\nfunction mergeAbortSignals(signals, cleanupSignal, timeout) {\n\tconst list = signals.filter((s) => !!s);\n\tif (typeof timeout === \"number\" && timeout >= 0) {\n\t\tconst timeoutSignal = AbortSignal.timeout?.(timeout);\n\t\tif (timeoutSignal) list.push(timeoutSignal);\n\t}\n\tif (AbortSignal.any) return AbortSignal.any(list);\n\tconst controller = new AbortController();\n\tfor (const sig of list) if (sig.aborted) {\n\t\tconst reason = sig.reason ?? new DOMException(\"Aborted\", \"AbortError\");\n\t\ttry {\n\t\t\tcontroller.abort(reason);\n\t\t} catch {\n\t\t\tcontroller.abort();\n\t\t}\n\t\treturn controller.signal;\n\t}\n\tconst onAbort = () => {\n\t\tconst reason = list.find((s) => s.aborted)?.reason ?? new DOMException(\"Aborted\", \"AbortError\");\n\t\ttry {\n\t\t\tcontroller.abort(reason);\n\t\t} catch {\n\t\t\tcontroller.abort();\n\t\t}\n\t};\n\tfor (const sig of list) sig.addEventListener?.(\"abort\", onAbort, {\n\t\tonce: true,\n\t\tsignal: cleanupSignal\n\t});\n\treturn controller.signal;\n}\n//#endregion\nexport { clearNuxtData, createUseAsyncData, refreshNuxtData, useAsyncData, useLazyAsyncData, useNuxtData };\n","import type { Ref } from 'vue'\nimport type { HookInfo, RouteInfo } from '../../src/types'\nimport { objectPick } from '@antfu/utils'\nimport { $fetch } from 'ofetch'\nimport { computed } from 'vue'\nimport { useClientRouter } from './client'\nimport { rpc } from './rpc'\nimport { useAsyncState } from './utils'\n\nexport function useServerPages() {\n return useAsyncState('getServerPages', () => rpc.getServerPages())\n}\n\nexport function useServerRoutes() {\n return useAsyncState('getServerRoutes', () => rpc.getServerRoutes())\n}\n\nexport function useServerTasks() {\n return useAsyncState('getServerTasks', () => rpc.getServerTasks())\n}\n\nexport function useServerHooks() {\n return useAsyncState('getServerHooks', () => rpc.getServerHooks()) as Ref<HookInfo[] | undefined>\n}\n\nexport function useLayouts() {\n return useAsyncState('getServerLayouts', () => rpc.getServerLayouts())\n}\n\nexport function useAutoImports() {\n return useAsyncState('getAutoImports', () => rpc.getAutoImports())\n}\n\nexport function useStaticAssets() {\n return useAsyncState('getStaticAssets', () => rpc.getStaticAssets())\n}\n\nexport function useServerConfig() {\n return useAsyncState('getServerConfig', () => rpc.getServerConfig())\n}\n\nexport function useServerDebugContext() {\n return useAsyncState('getServerDebugContext', () => rpc.getServerDebugContext())\n}\n\nexport function useServerRuntimeConfig() {\n return useAsyncState('getServerRuntimeConfig', () => rpc.getServerRuntimeConfig())\n}\n\nexport function useModuleOptions() {\n return useAsyncState('getModuleOptions', () => rpc.getModuleOptions())\n}\n\nexport function useServerApp() {\n return useAsyncState('getServerApp', () => rpc.getServerApp())\n}\n\nexport function useCustomTabs() {\n return useAsyncState('getCustomTabs', () => rpc.getCustomTabs())\n}\n\nexport function useAnalyzeBuildInfo() {\n return useAsyncState('getAnalyzeBuildInfo', () => rpc.getAnalyzeBuildInfo())\n}\n\nexport interface VfsData {\n rootDir: string\n entries: {\n id: string\n path: string\n }[]\n}\n\nexport interface VfsFile {\n id: string\n content: string\n}\n\nexport function useVirtualFiles() {\n return useAsyncState('vfs-list', () => $fetch<VfsData>('/_vfs.json', { baseURL: '/', responseType: 'json' }))\n}\n\nexport function useMergedRouteList() {\n const serverPages = useServerPages()\n const router = useClientRouter()\n\n return computed((): RouteInfo[] => {\n return (router.value?.getRoutes() || [])\n .map(i => objectPick(i, ['path', 'name', 'meta', 'props', 'children']))\n .map((i) => {\n return {\n ...serverPages.value?.find(j => j.name && j.name === i.name),\n ...i,\n }\n })\n })\n}\n","import type { Component } from 'nuxt/schema'\nimport type { Ref } from 'vue'\nimport type { AsyncDataOptions } from '#app'\nimport type { ComponentRelationship, ComponentWithRelationships, NormalizedHeadTag, SocialPreviewCard, SocialPreviewResolved } from '~/../src/types'\nimport { useSessionStorage } from '@vueuse/core'\nimport { relative } from 'pathe'\nimport { triggerRef } from 'vue'\nimport { useAsyncData } from '#app/composables/asyncData'\nimport { useNuxtApp } from '#app/nuxt'\nimport { useState } from '#imports'\nimport { useClient } from './client'\nimport { useServerConfig } from './state'\n\nconst NODE_MODULES_RE = /[/\\\\]node_modules[/\\\\]/\nconst PACKAGE_NAME_RE = /^(@[a-z0-9-~][a-z0-9-._~]*\\/)?[a-z0-9-~][a-z0-9-._~]*$/\nconst BACKSLASH_RE = /\\\\/g\nconst NODE_MODULES_PATH_RE = /.*\\/node_modules\\/(.*)$/\n\nexport function isNodeModulePath(path: string) {\n return !!path.match(NODE_MODULES_RE) || isPackageName(path)\n}\n\nexport function isPackageName(name: string) {\n return name[0] === '#' || !!name.match(PACKAGE_NAME_RE)\n}\n\nexport function getModuleNameFromPath(path: string) {\n if (isPackageName(path))\n return path\n const match = path.replace(BACKSLASH_RE, '/').match(NODE_MODULES_PATH_RE)?.[1]\n if (!match)\n return undefined\n if (match.startsWith('@'))\n return match.split('/').slice(0, 2).join('/')\n return match.split('/')[0]\n}\n\nfunction getModuleSubpathFromPath(path: string) {\n const match = path.match(NODE_MODULES_PATH_RE)?.[1]\n if (!match)\n return undefined\n return match\n}\n\n/**\n * The `nuxt` package name itself, as it appears in `node_modules` / package\n * names. Aliased installs (`\"nuxt\": \"npm:nuxt-nightly@5x\"`, the older\n * `nuxt-edge` pre-release channel, ...) physically install under a different\n * package name, so anything that special-cases \"is this Nuxt's own code\"\n * needs to check all of them, not just the literal `'nuxt'` string.\n */\nexport const NUXT_PACKAGE_NAMES = new Set(['nuxt', 'nuxt-nightly', 'nuxt-edge'])\n\nexport function isNuxtPackageName(name: string | undefined) {\n return !!name && NUXT_PACKAGE_NAMES.has(name)\n}\n\nexport function isBuiltInModule(name: string | undefined) {\n if (!name)\n return\n return isNuxtPackageName(name) || ['#app', '#head', 'vue'].includes(name)\n}\n\nexport function parseReadablePath(path: string, root: string) {\n path = path.replace(BACKSLASH_RE, '/')\n if (isPackageName(path)) {\n return {\n moduleName: path,\n path,\n }\n }\n const moduleName = getModuleNameFromPath(path)\n const subpath = getModuleSubpathFromPath(path)\n if (moduleName && subpath) {\n return {\n moduleName,\n path: subpath,\n }\n }\n // Workaround https://github.com/unjs/pathe/issues/113\n try {\n let result = relative(root, path)\n if (!result.startsWith('./') && !result.startsWith('../'))\n result = `./${result}`\n if (result.startsWith('./.nuxt/'))\n result = `#build${result.slice(7)}`\n return { path: result }\n }\n catch {\n return { path }\n }\n}\n\nexport function useAsyncState<T>(key: string, fn: () => Promise<T>, options?: AsyncDataOptions<T>) {\n const nuxt = useNuxtApp()\n const { data } = useAsyncData(key, fn, {\n ...options,\n // Custom getCachedData serves two purposes:\n // 1. Returns previously fetched data from payload.data on remount, so pages render instantly\n // 2. Prevents Nuxt's purgeCachedData from clearing data when the last consumer unmounts\n getCachedData: key => nuxt.payload.data[key] as T,\n })\n return data as Ref<T | null>\n}\n\nexport function getIsMacOS() {\n return typeof navigator !== 'undefined' && navigator.platform.toLowerCase().includes('mac')\n}\n\n// @unocss-include\nconst requestMethodClass: Record<string, string> = {\n get: 'n-green',\n post: 'n-blue',\n put: 'n-orange',\n delete: 'n-red',\n patch: 'n-purple',\n head: 'n-teal',\n default: 'n-gray',\n}\n\nexport function getRequestMethodClass(method: string) {\n return requestMethodClass[method.toLowerCase()] || requestMethodClass.default\n}\n\nexport function getSocialPreviewCard(\n rawTags: NormalizedHeadTag[],\n tags: SocialPreviewCard,\n): SocialPreviewResolved {\n const resolvedTags: { [key: string]: string | undefined } = {}\n\n for (const [key, value] of Object.entries(tags)) {\n for (const tag of value) {\n const tagValue = rawTags.find(item => item.tag === tag.tag && (tag.name ? item.name === tag.name : true))?.value\n if (tagValue) {\n resolvedTags[key] = tagValue\n break\n }\n }\n }\n\n return {\n url: window.location.host,\n ...resolvedTags,\n }\n}\n\nexport function formatDuration(ms: number | string) {\n ms = Number(ms)\n if (Number.isNaN(ms) || ms < 0)\n return '-'\n if (ms < 1)\n return '<1ms'\n if (ms < 1000)\n return `${ms}ms`\n if (ms < 1000 * 60)\n return `${(ms / 1000).toFixed(2)}s`\n return `${(ms / 1000 / 60).toFixed(2)}min`\n}\n\nexport function useSessionState<T>(name: string, initialValue: T) {\n return useState(name, () => {\n return useSessionStorage(name, initialValue, { listenToStorageChanges: false })\n })\n}\n\nexport function getComponentRelationships(component: Component, relationships?: ComponentRelationship[] | null): ComponentWithRelationships {\n const dependencies = relationships\n ?.find(i => i.id === component.filePath)\n ?.deps\n ?.map(i => relationships?.find(j => j.id === i)?.id)\n .filter(Boolean) as string[] | undefined\n const dependents = relationships\n ?.filter(i => i.deps.includes(component.filePath))\n .map(i => i.id)\n\n return {\n component,\n dependencies,\n dependents,\n }\n}\n\nexport function pluralizeByCount(count: number, singular: string, plural = `${singular}s`) {\n return `${count} ${count <= 1 ? singular : plural}`\n}\n\nexport function refreshData() {\n const client = useClient()\n const nuxt = useNuxtApp()\n\n nuxt.hooks.callHookParallel('app:data:refresh', Object.keys(nuxt.payload.data))\n triggerRef(client)\n client.value.revision.value += 1\n}\n\nexport function reloadPage() {\n location.reload()\n}\n\nexport function useNuxtCompatibilityVersion() {\n const config = useServerConfig()\n return config.value?.future.compatibilityVersion\n}\n"],"version":3}
|
package/dist/_nuxt/{virtual-files-WqYqMpE0.js.map.json → virtual-files-DKOje2lN.js.map.json}
RENAMED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"file":"virtual-files-WqYqMpE0.js","mappings":"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","names":[],"sources":["../../../../../../../../components/docs/virtual-files.md","../../../../../../../../pages/modules/virtual-files.vue?vue&type=script&setup=true&lang.ts","../../../../../../../../pages/modules/virtual-files.vue"],"sourcesContent":["# Virtual Files\n\nVirtual files are generated on the fly to support the conventions of the framework, and to provide a better developer experience.\n","import { defineComponent as _defineComponent } from 'vue'\nimport { resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createBlock as _createBlock, toDisplayString as _toDisplayString, createCommentVNode as _createCommentVNode } from \"vue\"\nimport { ssrRenderComponent as _ssrRenderComponent, ssrRenderClass as _ssrRenderClass, ssrInterpolate as _ssrInterpolate, ssrRenderList as _ssrRenderList } from \"vue/server-renderer\"\n\nimport type { VfsFile } from '~/composables/state'\nimport Fuse from 'fuse.js'\nimport { computed, ref, watchEffect } from 'vue'\nimport { definePageMeta } from '#imports'\nimport { useVirtualFiles } from '~/composables/state'\nimport { useCurrentVirtualFile } from '~/composables/state-routes'\n\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'virtual-files',\n __ssrInlineRender: true,\n setup(__props) {\n\ndefinePageMeta({\n icon: 'i-carbon-border-none',\n title: 'Virtual Files',\n layout: 'full',\n category: 'advanced',\n})\n\nconst searchString = ref('')\n\nconst data = useVirtualFiles()\n\nconst fileId = useCurrentVirtualFile()\nconst current = ref<VfsFile>()\n\nwatchEffect(() => {\n if (!fileId.value)\n return\n const url = `/_vfs.json/${encodeURIComponent(fileId.value)}`\n fetch(url, {\n headers: {\n accept: 'application/json',\n },\n })\n .then(i => i.json())\n .then(i => current.value = i.current)\n})\n\nfunction toShortPath(path: string) {\n if (!data.value?.rootDir)\n return\n return path.startsWith(data.value?.rootDir)\n ? path.slice(data.value.rootDir.length)\n : path\n}\n\nconst files = computed(() => {\n if (!data.value)\n return []\n return data.value\n .entries\n .filter(i => !i.id.startsWith(`${data.value?.rootDir || ''}/.nuxt/`))\n .sort((a, b) => a.id.localeCompare(b.id))\n})\n\nconst fuse = computed(() => new Fuse(files.value, {\n keys: [\n 'id',\n 'path',\n ],\n}))\n\nconst filteredFiles = computed(() => {\n if (!searchString.value)\n return files.value\n return fuse.value.search(searchString.value).map(i => i.item)\n})\n\nreturn (_ctx: any,_push: any,_parent: any,_attrs: any) => {\n const _component_NSplitPane = _resolveComponent(\"NSplitPane\")!\n const _component_NNavbar = _resolveComponent(\"NNavbar\")!\n const _component_NCodeBlock = _resolveComponent(\"NCodeBlock\")!\n const _component_NPanelGrids = _resolveComponent(\"NPanelGrids\")!\n const _component_NCard = _resolveComponent(\"NCard\")!\n const _component_HelpFab = _resolveComponent(\"HelpFab\")!\n const _component_DocsVirtualFiles = _resolveComponent(\"DocsVirtualFiles\")!\n\n _push(`<!--[-->`)\n _push(_ssrRenderComponent(_component_NSplitPane, {\n class: \"virtual-files\",\n \"storage-key\": \"tab-virtual-files\"\n }, {\n left: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_NNavbar, {\n search: searchString.value,\n \"onUpdate:search\": ($event: any) => ((searchString).value = $event),\n \"no-padding\": \"\",\n p3: \"\"\n }, null, _parent, _scopeId))\n _push(`<!--[-->`)\n _ssrRenderList(filteredFiles.value, (f) => {\n _push(`<!--[--><button block w-full select-none truncate px2 py1 text-start text-sm font-mono class=\"${\n _ssrRenderClass(f.id === current.value?.id ? 'text-primary n-bg-active' : 'text-secondary hover:n-bg-hover')\n }\"${\n _scopeId\n }>${\n _ssrInterpolate(toShortPath(f.id))\n }</button><div x-divider${\n _scopeId\n }></div><!--]-->`)\n })\n _push(`<!--]-->`)\n } else {\n return [\n _createVNode(_component_NNavbar, {\n search: searchString.value,\n \"onUpdate:search\": ($event: any) => ((searchString).value = $event),\n \"no-padding\": \"\",\n p3: \"\"\n }, null, 8, [\"search\", \"onUpdate:search\"]),\n (_openBlock(true), _createBlock(_Fragment, null, _renderList(filteredFiles.value, (f) => {\n return (_openBlock(), _createBlock(_Fragment, {\n key: f.id\n }, [\n _createVNode(\"button\", {\n block: \"\",\n \"w-full\": \"\",\n \"select-none\": \"\",\n truncate: \"\",\n px2: \"\",\n py1: \"\",\n \"text-start\": \"\",\n \"text-sm\": \"\",\n \"font-mono\": \"\",\n class: f.id === current.value?.id ? 'text-primary n-bg-active' : 'text-secondary hover:n-bg-hover',\n onClick: ($event: any) => (fileId.value = f.id)\n }, _toDisplayString(toShortPath(f.id)), 11, [\"onClick\"]),\n _createVNode(\"div\", { \"x-divider\": \"\" })\n ], 64))\n }), 128))\n ]\n }\n }),\n right: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n if (current.value?.content) {\n _push(`<div h-full of-hidden flex=\"~ col\"${\n _scopeId\n }><div border=\"b base\" flex-none px4 py2 text-sm op75${\n _scopeId\n }><code${\n _scopeId\n }>${\n _ssrInterpolate(current.value.id)\n }</code></div>`)\n _push(_ssrRenderComponent(_component_NCodeBlock, {\n \"h-full\": \"\",\n \"of-auto\": \"\",\n \"text-sm\": \"\",\n code: current.value.content,\n lang: \"typescript\"\n }, null, _parent, _scopeId))\n _push(`</div>`)\n } else {\n _push(_ssrRenderComponent(_component_NPanelGrids, null, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_NCard, {\n px6: \"\",\n py2: \"\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<span op75${_scopeId}>Select a file to start</span>`)\n } else {\n return [\n _createVNode(\"span\", { op75: \"\" }, \"Select a file to start\")\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_NCard, {\n px6: \"\",\n py2: \"\"\n }, {\n default: _withCtx(() => [\n _createVNode(\"span\", { op75: \"\" }, \"Select a file to start\")\n ]),\n _: 1\n })\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n }\n } else {\n return [\n (current.value?.content)\n ? (_openBlock(), _createBlock(\"div\", {\n key: 0,\n \"h-full\": \"\",\n \"of-hidden\": \"\",\n flex: \"~ col\"\n }, [\n _createVNode(\"div\", {\n border: \"b base\",\n \"flex-none\": \"\",\n px4: \"\",\n py2: \"\",\n \"text-sm\": \"\",\n op75: \"\"\n }, [\n _createVNode(\"code\", null, _toDisplayString(current.value.id), 1)\n ]),\n _createVNode(_component_NCodeBlock, {\n \"h-full\": \"\",\n \"of-auto\": \"\",\n \"text-sm\": \"\",\n code: current.value.content,\n lang: \"typescript\"\n }, null, 8, [\"code\"])\n ]))\n : (_openBlock(), _createBlock(_component_NPanelGrids, { key: 1 }, {\n default: _withCtx(() => [\n _createVNode(_component_NCard, {\n px6: \"\",\n py2: \"\"\n }, {\n default: _withCtx(() => [\n _createVNode(\"span\", { op75: \"\" }, \"Select a file to start\")\n ]),\n _: 1\n })\n ]),\n _: 1\n }))\n ]\n }\n }),\n _: 1\n }, _parent))\n _push(_ssrRenderComponent(_component_HelpFab, null, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_DocsVirtualFiles, null, null, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_DocsVirtualFiles)\n ]\n }\n }),\n _: 1\n }, _parent))\n _push(`<!--]-->`)\n}\n}\n\n})","<script setup lang=\"ts\">\nimport type { VfsFile } from '~/composables/state'\nimport Fuse from 'fuse.js'\nimport { computed, ref, watchEffect } from 'vue'\nimport { definePageMeta } from '#imports'\nimport { useVirtualFiles } from '~/composables/state'\nimport { useCurrentVirtualFile } from '~/composables/state-routes'\n\ndefinePageMeta({\n icon: 'i-carbon-border-none',\n title: 'Virtual Files',\n layout: 'full',\n category: 'advanced',\n})\n\nconst searchString = ref('')\n\nconst data = useVirtualFiles()\n\nconst fileId = useCurrentVirtualFile()\nconst current = ref<VfsFile>()\n\nwatchEffect(() => {\n if (!fileId.value)\n return\n const url = `/_vfs.json/${encodeURIComponent(fileId.value)}`\n fetch(url, {\n headers: {\n accept: 'application/json',\n },\n })\n .then(i => i.json())\n .then(i => current.value = i.current)\n})\n\nfunction toShortPath(path: string) {\n if (!data.value?.rootDir)\n return\n return path.startsWith(data.value?.rootDir)\n ? path.slice(data.value.rootDir.length)\n : path\n}\n\nconst files = computed(() => {\n if (!data.value)\n return []\n return data.value\n .entries\n .filter(i => !i.id.startsWith(`${data.value?.rootDir || ''}/.nuxt/`))\n .sort((a, b) => a.id.localeCompare(b.id))\n})\n\nconst fuse = computed(() => new Fuse(files.value, {\n keys: [\n 'id',\n 'path',\n ],\n}))\n\nconst filteredFiles = computed(() => {\n if (!searchString.value)\n return files.value\n return fuse.value.search(searchString.value).map(i => i.item)\n})\n</script>\n\n<template>\n <NSplitPane class=\"virtual-files\" storage-key=\"tab-virtual-files\">\n <template #left>\n <NNavbar\n v-model:search=\"searchString\"\n no-padding p3\n />\n <template\n v-for=\"f of filteredFiles\" :key=\"f.id\"\n >\n <button\n block w-full select-none truncate px2 py1 text-start text-sm font-mono\n :class=\"f.id === current?.id ? 'text-primary n-bg-active' : 'text-secondary hover:n-bg-hover'\"\n @click=\"fileId = f.id\"\n >\n {{ toShortPath(f.id) }}\n </button>\n <div x-divider />\n </template>\n </template>\n\n <template #right>\n <div v-if=\"current?.content\" h-full of-hidden flex=\"~ col\">\n <div border=\"b base\" flex-none px4 py2 text-sm op75>\n <code>{{ current.id }}</code>\n </div>\n <NCodeBlock h-full of-auto text-sm :code=\"current.content\" lang=\"typescript\" />\n </div>\n <NPanelGrids v-else>\n <NCard px6 py2>\n <span op75>Select a file to start</span>\n </NCard>\n </NPanelGrids>\n </template>\n </NSplitPane>\n\n <HelpFab>\n <DocsVirtualFiles />\n </HelpFab>\n</template>\n\n<style>\n.virtual-files .shiki {\n padding: 10px;\n background: none !important;\n}\n</style>\n"],"version":3}
|
|
1
|
+
{"file":"virtual-files-DKOje2lN.js","mappings":"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","names":[],"sources":["../../../../../../../../components/docs/virtual-files.md","../../../../../../../../pages/modules/virtual-files.vue?vue&type=script&setup=true&lang.ts","../../../../../../../../pages/modules/virtual-files.vue"],"sourcesContent":["# Virtual Files\n\nVirtual files are generated on the fly to support the conventions of the framework, and to provide a better developer experience.\n","import { defineComponent as _defineComponent } from 'vue'\nimport { resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createBlock as _createBlock, toDisplayString as _toDisplayString, createCommentVNode as _createCommentVNode } from \"vue\"\nimport { ssrRenderComponent as _ssrRenderComponent, ssrRenderClass as _ssrRenderClass, ssrInterpolate as _ssrInterpolate, ssrRenderList as _ssrRenderList } from \"vue/server-renderer\"\n\nimport type { VfsFile } from '~/composables/state'\nimport Fuse from 'fuse.js'\nimport { computed, ref, watchEffect } from 'vue'\nimport { definePageMeta } from '#imports'\nimport { useVirtualFiles } from '~/composables/state'\nimport { useCurrentVirtualFile } from '~/composables/state-routes'\n\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'virtual-files',\n __ssrInlineRender: true,\n setup(__props) {\n\ndefinePageMeta({\n icon: 'i-carbon-border-none',\n title: 'Virtual Files',\n layout: 'full',\n category: 'advanced',\n})\n\nconst searchString = ref('')\n\nconst data = useVirtualFiles()\n\nconst fileId = useCurrentVirtualFile()\nconst current = ref<VfsFile>()\n\nwatchEffect(() => {\n if (!fileId.value)\n return\n const url = `/_vfs.json/${encodeURIComponent(fileId.value)}`\n fetch(url, {\n headers: {\n accept: 'application/json',\n },\n })\n .then(i => i.json())\n .then(i => current.value = i.current)\n})\n\nfunction toShortPath(path: string) {\n if (!data.value?.rootDir)\n return\n return path.startsWith(data.value?.rootDir)\n ? path.slice(data.value.rootDir.length)\n : path\n}\n\nconst files = computed(() => {\n if (!data.value)\n return []\n return data.value\n .entries\n .filter(i => !i.id.startsWith(`${data.value?.rootDir || ''}/.nuxt/`))\n .sort((a, b) => a.id.localeCompare(b.id))\n})\n\nconst fuse = computed(() => new Fuse(files.value, {\n keys: [\n 'id',\n 'path',\n ],\n}))\n\nconst filteredFiles = computed(() => {\n if (!searchString.value)\n return files.value\n return fuse.value.search(searchString.value).map(i => i.item)\n})\n\nreturn (_ctx: any,_push: any,_parent: any,_attrs: any) => {\n const _component_NSplitPane = _resolveComponent(\"NSplitPane\")!\n const _component_NNavbar = _resolveComponent(\"NNavbar\")!\n const _component_NCodeBlock = _resolveComponent(\"NCodeBlock\")!\n const _component_NPanelGrids = _resolveComponent(\"NPanelGrids\")!\n const _component_NCard = _resolveComponent(\"NCard\")!\n const _component_HelpFab = _resolveComponent(\"HelpFab\")!\n const _component_DocsVirtualFiles = _resolveComponent(\"DocsVirtualFiles\")!\n\n _push(`<!--[-->`)\n _push(_ssrRenderComponent(_component_NSplitPane, {\n class: \"virtual-files\",\n \"storage-key\": \"tab-virtual-files\"\n }, {\n left: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_NNavbar, {\n search: searchString.value,\n \"onUpdate:search\": ($event: any) => ((searchString).value = $event),\n \"no-padding\": \"\",\n p3: \"\"\n }, null, _parent, _scopeId))\n _push(`<!--[-->`)\n _ssrRenderList(filteredFiles.value, (f) => {\n _push(`<!--[--><button block w-full select-none truncate px2 py1 text-start text-sm font-mono class=\"${\n _ssrRenderClass(f.id === current.value?.id ? 'text-primary n-bg-active' : 'text-secondary hover:n-bg-hover')\n }\"${\n _scopeId\n }>${\n _ssrInterpolate(toShortPath(f.id))\n }</button><div x-divider${\n _scopeId\n }></div><!--]-->`)\n })\n _push(`<!--]-->`)\n } else {\n return [\n _createVNode(_component_NNavbar, {\n search: searchString.value,\n \"onUpdate:search\": ($event: any) => ((searchString).value = $event),\n \"no-padding\": \"\",\n p3: \"\"\n }, null, 8, [\"search\", \"onUpdate:search\"]),\n (_openBlock(true), _createBlock(_Fragment, null, _renderList(filteredFiles.value, (f) => {\n return (_openBlock(), _createBlock(_Fragment, {\n key: f.id\n }, [\n _createVNode(\"button\", {\n block: \"\",\n \"w-full\": \"\",\n \"select-none\": \"\",\n truncate: \"\",\n px2: \"\",\n py1: \"\",\n \"text-start\": \"\",\n \"text-sm\": \"\",\n \"font-mono\": \"\",\n class: f.id === current.value?.id ? 'text-primary n-bg-active' : 'text-secondary hover:n-bg-hover',\n onClick: ($event: any) => (fileId.value = f.id)\n }, _toDisplayString(toShortPath(f.id)), 11, [\"onClick\"]),\n _createVNode(\"div\", { \"x-divider\": \"\" })\n ], 64))\n }), 128))\n ]\n }\n }),\n right: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n if (current.value?.content) {\n _push(`<div h-full of-hidden flex=\"~ col\"${\n _scopeId\n }><div border=\"b base\" flex-none px4 py2 text-sm op75${\n _scopeId\n }><code${\n _scopeId\n }>${\n _ssrInterpolate(current.value.id)\n }</code></div>`)\n _push(_ssrRenderComponent(_component_NCodeBlock, {\n \"h-full\": \"\",\n \"of-auto\": \"\",\n \"text-sm\": \"\",\n code: current.value.content,\n lang: \"typescript\"\n }, null, _parent, _scopeId))\n _push(`</div>`)\n } else {\n _push(_ssrRenderComponent(_component_NPanelGrids, null, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_NCard, {\n px6: \"\",\n py2: \"\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<span op75${_scopeId}>Select a file to start</span>`)\n } else {\n return [\n _createVNode(\"span\", { op75: \"\" }, \"Select a file to start\")\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_NCard, {\n px6: \"\",\n py2: \"\"\n }, {\n default: _withCtx(() => [\n _createVNode(\"span\", { op75: \"\" }, \"Select a file to start\")\n ]),\n _: 1\n })\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n }\n } else {\n return [\n (current.value?.content)\n ? (_openBlock(), _createBlock(\"div\", {\n key: 0,\n \"h-full\": \"\",\n \"of-hidden\": \"\",\n flex: \"~ col\"\n }, [\n _createVNode(\"div\", {\n border: \"b base\",\n \"flex-none\": \"\",\n px4: \"\",\n py2: \"\",\n \"text-sm\": \"\",\n op75: \"\"\n }, [\n _createVNode(\"code\", null, _toDisplayString(current.value.id), 1)\n ]),\n _createVNode(_component_NCodeBlock, {\n \"h-full\": \"\",\n \"of-auto\": \"\",\n \"text-sm\": \"\",\n code: current.value.content,\n lang: \"typescript\"\n }, null, 8, [\"code\"])\n ]))\n : (_openBlock(), _createBlock(_component_NPanelGrids, { key: 1 }, {\n default: _withCtx(() => [\n _createVNode(_component_NCard, {\n px6: \"\",\n py2: \"\"\n }, {\n default: _withCtx(() => [\n _createVNode(\"span\", { op75: \"\" }, \"Select a file to start\")\n ]),\n _: 1\n })\n ]),\n _: 1\n }))\n ]\n }\n }),\n _: 1\n }, _parent))\n _push(_ssrRenderComponent(_component_HelpFab, null, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_DocsVirtualFiles, null, null, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_DocsVirtualFiles)\n ]\n }\n }),\n _: 1\n }, _parent))\n _push(`<!--]-->`)\n}\n}\n\n})","<script setup lang=\"ts\">\nimport type { VfsFile } from '~/composables/state'\nimport Fuse from 'fuse.js'\nimport { computed, ref, watchEffect } from 'vue'\nimport { definePageMeta } from '#imports'\nimport { useVirtualFiles } from '~/composables/state'\nimport { useCurrentVirtualFile } from '~/composables/state-routes'\n\ndefinePageMeta({\n icon: 'i-carbon-border-none',\n title: 'Virtual Files',\n layout: 'full',\n category: 'advanced',\n})\n\nconst searchString = ref('')\n\nconst data = useVirtualFiles()\n\nconst fileId = useCurrentVirtualFile()\nconst current = ref<VfsFile>()\n\nwatchEffect(() => {\n if (!fileId.value)\n return\n const url = `/_vfs.json/${encodeURIComponent(fileId.value)}`\n fetch(url, {\n headers: {\n accept: 'application/json',\n },\n })\n .then(i => i.json())\n .then(i => current.value = i.current)\n})\n\nfunction toShortPath(path: string) {\n if (!data.value?.rootDir)\n return\n return path.startsWith(data.value?.rootDir)\n ? path.slice(data.value.rootDir.length)\n : path\n}\n\nconst files = computed(() => {\n if (!data.value)\n return []\n return data.value\n .entries\n .filter(i => !i.id.startsWith(`${data.value?.rootDir || ''}/.nuxt/`))\n .sort((a, b) => a.id.localeCompare(b.id))\n})\n\nconst fuse = computed(() => new Fuse(files.value, {\n keys: [\n 'id',\n 'path',\n ],\n}))\n\nconst filteredFiles = computed(() => {\n if (!searchString.value)\n return files.value\n return fuse.value.search(searchString.value).map(i => i.item)\n})\n</script>\n\n<template>\n <NSplitPane class=\"virtual-files\" storage-key=\"tab-virtual-files\">\n <template #left>\n <NNavbar\n v-model:search=\"searchString\"\n no-padding p3\n />\n <template\n v-for=\"f of filteredFiles\" :key=\"f.id\"\n >\n <button\n block w-full select-none truncate px2 py1 text-start text-sm font-mono\n :class=\"f.id === current?.id ? 'text-primary n-bg-active' : 'text-secondary hover:n-bg-hover'\"\n @click=\"fileId = f.id\"\n >\n {{ toShortPath(f.id) }}\n </button>\n <div x-divider />\n </template>\n </template>\n\n <template #right>\n <div v-if=\"current?.content\" h-full of-hidden flex=\"~ col\">\n <div border=\"b base\" flex-none px4 py2 text-sm op75>\n <code>{{ current.id }}</code>\n </div>\n <NCodeBlock h-full of-auto text-sm :code=\"current.content\" lang=\"typescript\" />\n </div>\n <NPanelGrids v-else>\n <NCard px6 py2>\n <span op75>Select a file to start</span>\n </NCard>\n </NPanelGrids>\n </template>\n </NSplitPane>\n\n <HelpFab>\n <DocsVirtualFiles />\n </HelpFab>\n</template>\n\n<style>\n.virtual-files .shiki {\n padding: 10px;\n background: none !important;\n}\n</style>\n"],"version":3}
|
|
@@ -9,6 +9,7 @@ import './module-main.mjs';
|
|
|
9
9
|
import 'node:os';
|
|
10
10
|
import 'consola/utils';
|
|
11
11
|
import 'devframe/utils/serve-static';
|
|
12
|
+
import 'verkit';
|
|
12
13
|
import 'vite';
|
|
13
14
|
import '../shared/devtools.BNZC-DT8.mjs';
|
|
14
15
|
import '../dirs.mjs';
|
|
@@ -30,7 +31,6 @@ import 'node:assert';
|
|
|
30
31
|
import 'node:v8';
|
|
31
32
|
import 'magicast';
|
|
32
33
|
import 'magicast/helpers';
|
|
33
|
-
import 'verkit';
|
|
34
34
|
import '@vitejs/devtools-kit/constants';
|
|
35
35
|
import 'unstorage';
|
|
36
36
|
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import os, { homedir } from 'node:os';
|
|
2
2
|
import { onDevtoolsReady, deprecate, registerHostDiagnostics, NUXT_DEVTOOLS_GROUP_ID } from '@nuxt/devtools-kit';
|
|
3
|
-
import { logger, useNuxt,
|
|
3
|
+
import { logger, useNuxt, addPlugin, addVitePlugin, addTemplate, extendViteConfig, addImports } from '@nuxt/kit';
|
|
4
4
|
import { colors } from 'consola/utils';
|
|
5
5
|
import { serveStaticNodeMiddleware } from 'devframe/utils/serve-static';
|
|
6
6
|
import { join, dirname, resolve, isAbsolute } from 'pathe';
|
|
7
|
-
import {
|
|
7
|
+
import { isLess, isGreaterOrEqual } from 'verkit';
|
|
8
|
+
import { version as version$2, searchForWorkspaceRoot } from 'vite';
|
|
8
9
|
import { d as defaultAllowedExtensions, c as createDefaultTabOptions, s as setServerTasksEnabledByDefault } from '../shared/devtools.BNZC-DT8.mjs';
|
|
9
10
|
import { runtimeDir, packageDir } from '../dirs.mjs';
|
|
10
11
|
import { execFile } from 'node:child_process';
|
|
@@ -27,11 +28,10 @@ import v8 from 'node:v8';
|
|
|
27
28
|
import { resolveModule, getPackageInfo } from 'local-pkg';
|
|
28
29
|
import { parseModule } from 'magicast';
|
|
29
30
|
import { getDefaultExportOptions, addNuxtModule } from 'magicast/helpers';
|
|
30
|
-
import { isLess } from 'verkit';
|
|
31
31
|
import { DEVTOOLS_TERMINALS_DOCK_ID } from '@vitejs/devtools-kit/constants';
|
|
32
32
|
import { normalizeBaseKey, normalizeKey, createStorage, builtinDrivers } from 'unstorage';
|
|
33
33
|
|
|
34
|
-
const version$1 = "4.0.0-alpha.
|
|
34
|
+
const version$1 = "4.0.0-alpha.19";
|
|
35
35
|
const peerDependencies = {
|
|
36
36
|
"@nuxt/devtools-assets": "workspace:*",
|
|
37
37
|
"@nuxt/kit": "^4.0.0-0 || ^5.0.0-0",
|
|
@@ -12052,10 +12052,8 @@ async function enableModule(options, nuxt) {
|
|
|
12052
12052
|
}
|
|
12053
12053
|
await nuxt.callHook("devtools:before");
|
|
12054
12054
|
if (options.disableAuthorization) {
|
|
12055
|
-
|
|
12056
|
-
|
|
12057
|
-
if (devtoolsConfig.clientAuth === void 0)
|
|
12058
|
-
devtoolsConfig.clientAuth = false;
|
|
12055
|
+
extendViteDevToolsConfig((devtools) => {
|
|
12056
|
+
devtools.clientAuth ??= false;
|
|
12059
12057
|
});
|
|
12060
12058
|
}
|
|
12061
12059
|
nuxt.options.imports.collectMeta = true;
|
|
@@ -12091,20 +12089,25 @@ async function enableModule(options, nuxt) {
|
|
|
12091
12089
|
if (listener?.url)
|
|
12092
12090
|
publicDevServerOrigin = new URL(listener.url).origin;
|
|
12093
12091
|
});
|
|
12094
|
-
const
|
|
12095
|
-
|
|
12096
|
-
|
|
12097
|
-
|
|
12098
|
-
|
|
12099
|
-
|
|
12100
|
-
|
|
12101
|
-
|
|
12102
|
-
|
|
12103
|
-
|
|
12104
|
-
|
|
12105
|
-
|
|
12106
|
-
|
|
12107
|
-
|
|
12092
|
+
const branding = {
|
|
12093
|
+
productName: "Nuxt DevTools",
|
|
12094
|
+
tagline: "DevTools for Nuxt",
|
|
12095
|
+
primaryColor: "#099e61",
|
|
12096
|
+
logo: "https://nuxt.com/assets/design-kit/icon-green.svg",
|
|
12097
|
+
wordmark: {
|
|
12098
|
+
light: "https://cdn.jsdelivr.net/gh/nuxt/devtools@main/assets/nuxt-devtools-light.svg",
|
|
12099
|
+
dark: "https://cdn.jsdelivr.net/gh/nuxt/devtools@main/assets/nuxt-devtools-dark.svg"
|
|
12100
|
+
},
|
|
12101
|
+
windowTitle: "Nuxt DevTools"
|
|
12102
|
+
};
|
|
12103
|
+
if (isGreaterOrEqual(version$2, "8.3.0")) {
|
|
12104
|
+
extendViteDevToolsConfig((devtools) => {
|
|
12105
|
+
devtools.branding ??= branding;
|
|
12106
|
+
});
|
|
12107
|
+
} else {
|
|
12108
|
+
const DevTools = await import('@vitejs/devtools').then((r) => r.DevTools({ branding }));
|
|
12109
|
+
addVitePlugin(DevTools);
|
|
12110
|
+
}
|
|
12108
12111
|
let connectDevToolsKit;
|
|
12109
12112
|
addVitePlugin(defineViteDevToolsPlugin({
|
|
12110
12113
|
name: "nuxt:devtools",
|
|
@@ -12270,6 +12273,15 @@ window.__NUXT_DEVTOOLS_TIME_METRIC__.appInit = Date.now()
|
|
|
12270
12273
|
function defineViteDevToolsPlugin(plugin) {
|
|
12271
12274
|
return plugin;
|
|
12272
12275
|
}
|
|
12276
|
+
function extendViteDevToolsConfig(extend) {
|
|
12277
|
+
extendViteConfig((config) => {
|
|
12278
|
+
if (config.devtools === false)
|
|
12279
|
+
return;
|
|
12280
|
+
const devtools = typeof config.devtools === "object" ? config.devtools : {};
|
|
12281
|
+
extend(devtools);
|
|
12282
|
+
config.devtools = devtools;
|
|
12283
|
+
});
|
|
12284
|
+
}
|
|
12273
12285
|
|
|
12274
12286
|
const moduleMain = {
|
|
12275
12287
|
__proto__: null,
|
|
@@ -7,6 +7,7 @@ import 'node:os';
|
|
|
7
7
|
import 'consola/utils';
|
|
8
8
|
import 'devframe/utils/serve-static';
|
|
9
9
|
import 'pathe';
|
|
10
|
+
import 'verkit';
|
|
10
11
|
import 'vite';
|
|
11
12
|
import '../shared/devtools.BNZC-DT8.mjs';
|
|
12
13
|
import '../dirs.mjs';
|
|
@@ -29,7 +30,6 @@ import 'node:assert';
|
|
|
29
30
|
import 'node:v8';
|
|
30
31
|
import 'magicast';
|
|
31
32
|
import 'magicast/helpers';
|
|
32
|
-
import 'verkit';
|
|
33
33
|
import '@vitejs/devtools-kit/constants';
|
|
34
34
|
import 'unstorage';
|
|
35
35
|
|