@nuxt/devtools 4.0.0-alpha.15 → 4.0.0-alpha.17

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (80) hide show
  1. package/dist/_nuxt/AuthRequiredPanel-znjaI7oT.js.map.json +1 -0
  2. package/dist/_nuxt/CodeDiff-DgjeLx6z.js.map.json +1 -0
  3. package/dist/_nuxt/CodeSnippets-CgfcaS4Z.js.map.json +1 -0
  4. package/dist/_nuxt/ComposableItem-BWQR7_fI.js.map.json +1 -0
  5. package/dist/_nuxt/DataSchemaButton-CqEfc2TV.js.map.json +1 -0
  6. package/dist/_nuxt/DataSchemaDrawer-Xj8YzNJN.js.map.json +1 -0
  7. package/dist/_nuxt/DurationDisplay-Dzweg1by.js.map.json +1 -0
  8. package/dist/_nuxt/FilepathItem-D75bkTSa.js.map.json +1 -0
  9. package/dist/_nuxt/HelpFab-CH7NlsDf.js.map.json +1 -0
  10. package/dist/_nuxt/LaunchPage-ByG-3KVi.js.map.json +1 -0
  11. package/dist/_nuxt/NBadge-BNJzHbtD.js.map.json +1 -0
  12. package/dist/_nuxt/NCard-mHVN2GYZ.js.map.json +1 -0
  13. package/dist/_nuxt/NCheckbox-OMIu_LTG.js.map.json +1 -0
  14. package/dist/_nuxt/NCodeBlock-C2Ewa6VO.js.map.json +1 -0
  15. package/dist/_nuxt/NDrawer-C6Opm19C.js.map.json +1 -0
  16. package/dist/_nuxt/NDropdown-DseEG3tA.js.map.json +1 -0
  17. package/dist/_nuxt/NIcon-cjduOh_B.js.map.json +1 -0
  18. package/dist/_nuxt/NIconTitle-C75MU0px.js.map.json +1 -0
  19. package/dist/_nuxt/NLink-Rsxlt1NN.js.map.json +1 -0
  20. package/dist/_nuxt/NMarkdown-DFwJ-ppZ.js.map.json +1 -0
  21. package/dist/_nuxt/NNavbar-CS-Z1Cle.js.map.json +1 -0
  22. package/dist/_nuxt/NPanelGrids-CEorXUWJ.js.map.json +1 -0
  23. package/dist/_nuxt/NSectionBlock-C7kcMkbf.js.map.json +1 -0
  24. package/dist/_nuxt/NSelect-geGP1eOG.js.map.json +1 -0
  25. package/dist/_nuxt/NSelectTabs-nUMnNQy-.js.map.json +1 -0
  26. package/dist/_nuxt/NSplitPane-Bh0o_t5e.js.map.json +1 -0
  27. package/dist/_nuxt/NTip-DRnTpLjG.js.map.json +1 -0
  28. package/dist/_nuxt/ServerRouteInputs-BhIrPxPN.js.map.json +1 -0
  29. package/dist/_nuxt/StacktraceList-B-ehJIQ-.js.map.json +1 -0
  30. package/dist/_nuxt/StateEditor-Yqdbqk_c.js.map.json +1 -0
  31. package/dist/_nuxt/__blank-BM2yOFO6.js.map.json +1 -0
  32. package/dist/_nuxt/analyze-build-Cemp_oBq.js.map.json +1 -0
  33. package/dist/_nuxt/assets-rTFAaows.js.map.json +1 -0
  34. package/dist/_nuxt/client-r5qP-99Q.js.map.json +1 -0
  35. package/dist/_nuxt/color-BL_mIEWV.js.map.json +1 -0
  36. package/dist/_nuxt/components-BJnHweOE.js.map.json +1 -0
  37. package/dist/_nuxt/constants-D9kP6ji9.js.map.json +1 -0
  38. package/dist/_nuxt/custom-_name_-DI8dnRDD.js.map.json +1 -0
  39. package/dist/_nuxt/debug-BcJZ8M6i.js.map.json +1 -0
  40. package/dist/_nuxt/default-Bzh4dZQ5.js.map.json +1 -0
  41. package/dist/_nuxt/entry-DZwY6FLS.js.map.json +1 -0
  42. package/dist/_nuxt/error-404-dySA7T2P.js.map.json +1 -0
  43. package/dist/_nuxt/error-500-2Ody89Er.js.map.json +1 -0
  44. package/dist/_nuxt/error-hGc4cWUU.js.map.json +1 -0
  45. package/dist/_nuxt/full-CvSnaO29.js.map.json +1 -0
  46. package/dist/_nuxt/head-BTCtirw3.js.map.json +1 -0
  47. package/dist/_nuxt/hooks-BVzlIVXR.js.map.json +1 -0
  48. package/dist/_nuxt/imports-B3k4BZF7.js.map.json +1 -0
  49. package/dist/_nuxt/modules-Ck915TxZ.js.map.json +1 -0
  50. package/dist/_nuxt/none-Df66KJph.js.map.json +1 -0
  51. package/dist/_nuxt/nuxt-C5VITehY.js.map.json +1 -0
  52. package/dist/_nuxt/nuxt-link-C-BBeF5l.js.map.json +1 -0
  53. package/dist/_nuxt/open-graph-ll_bjX_m.js.map.json +1 -0
  54. package/dist/_nuxt/overview-CyqDmfdE.js.map.json +1 -0
  55. package/dist/_nuxt/pages-BddDWJsZ.js.map.json +1 -0
  56. package/dist/_nuxt/pages-CrUWMxGz.js.map.json +1 -0
  57. package/dist/_nuxt/pages-DWELoQlh.js.map.json +1 -0
  58. package/dist/_nuxt/payload-29bFuqLh.js.map.json +1 -0
  59. package/dist/_nuxt/plugins-fmmRaH-S.js.map.json +1 -0
  60. package/dist/_nuxt/ready-BQ1fhXgL.js.map.json +1 -0
  61. package/dist/_nuxt/runtime-configs-iL68LNkj.js.map.json +1 -0
  62. package/dist/_nuxt/server-routes-Dy5_Ljmu.js.map.json +1 -0
  63. package/dist/_nuxt/server-tasks-CD-7IPFD.js.map.json +1 -0
  64. package/dist/_nuxt/settings-Qa45tU8e.js.map.json +1 -0
  65. package/dist/_nuxt/state-components-CksF081b.js.map.json +1 -0
  66. package/dist/_nuxt/state-modules-CyH4hWeN.js.map.json +1 -0
  67. package/dist/_nuxt/state-tabs-m1o-BX5R.js.map.json +1 -0
  68. package/dist/_nuxt/storage-BylO3p9r.js.map.json +1 -0
  69. package/dist/_nuxt/timeline-Dukbqafi.js.map.json +1 -0
  70. package/dist/_nuxt/utils-BfB0tRbX.js.map.json +1 -0
  71. package/dist/_nuxt/virtual-files-BQJM45QE.js.map.json +1 -0
  72. package/dist/chunks/module-main.mjs +1 -1
  73. package/dist/dirs.d.cts +1 -0
  74. package/dist/index.mjs.map.json +1 -0
  75. package/dist/module.d.cts +2 -0
  76. package/dist/module.json +1 -1
  77. package/dist/server.mjs.map.json +1 -0
  78. package/dist/types.d.cts +2 -0
  79. package/dist/webcomponents/index.d.cts +1 -0
  80. package/package.json +30 -30
@@ -0,0 +1 @@
1
+ {"file":"pages-CrUWMxGz.js","mappings":"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","names":[],"sources":["../../../../../../../../components/RoutePathItem.vue?vue&type=script&setup=true&lang.ts","../../../../../../../../components/RoutePathItem.vue","../../../../../../../../components/RoutesTable.vue?vue&type=script&setup=true&lang.ts","../../../../../../../../components/RoutesTable.vue","../../../../../../../../components/docs/pages.md","../../../../../../../../pages/modules/pages.vue?vue&type=script&setup=true&lang.ts","../../../../../../../../pages/modules/pages.vue"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { resolveComponent as _resolveComponent, withCtx as _withCtx, createTextVNode as _createTextVNode, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, withModifiers as _withModifiers } from \"vue\"\nimport { ssrRenderAttrs as _ssrRenderAttrs, ssrRenderClass as _ssrRenderClass, ssrRenderComponent as _ssrRenderComponent, ssrInterpolate as _ssrInterpolate, ssrRenderList as _ssrRenderList } from \"vue/server-renderer\"\n\nimport type { RouteInfo } from '~~/../src/types'\nimport { computed, ref } from 'vue'\n\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'RoutePathItem',\n __ssrInlineRender: true,\n props: {\n route: {}\n },\n emits: [\"navigate\"],\n setup(__props: any, { emit: __emit }) {\n\nconst props = __props\nconst emit = __emit\nconst EXPRESS_PARAM_RE = /(:\\w+[?*]?(?:\\(\\))?)/\nconst TRAILING_PARENS_RE = /\\(\\)$/\nconst MULTI_SLASH_RE = /\\/+/g\n\nconst partsInput = ref<string[]>([])\nconst parts = computed(() => {\n const _ = parseExpressRoute(props.route.path)\n // eslint-disable-next-line vue/no-side-effects-in-computed-properties\n partsInput.value = Array.from<string>({ length: _.length }).fill('')\n return _\n})\n\nfunction parseExpressRoute(route: string) {\n return route\n .split(EXPRESS_PARAM_RE)\n .filter(Boolean)\n .map(i => i[0] === ':'\n ? i.replace(TRAILING_PARENS_RE, '?')\n : i)\n}\n\nconst path = computed(() => parts.value\n .map(\n (i, idx) => i[0] === ':'\n ? partsInput.value[idx]\n : i,\n )\n .join('')\n .replace(MULTI_SLASH_RE, '/'))\nconst hasWildcard = computed(() => props.route.path.includes(':'))\n\nfunction navigate() {\n emit('navigate', path.value)\n}\n\nreturn (_ctx: any,_push: any,_parent: any,_attrs: any) => {\n const _component_VDropdown = _resolveComponent(\"VDropdown\")!\n const _component_NTextInput = _resolveComponent(\"NTextInput\")!\n const _component_NButton = _resolveComponent(\"NButton\")!\n\n if (!hasWildcard.value) {\n _push(`<button${\n _ssrRenderAttrs(_attrs)\n }><code>${\n _ssrInterpolate(__props.route.path)\n }</code></button>`)\n } else {\n _push(_ssrRenderComponent(_component_VDropdown, _attrs, {\n popper: _withCtx(({ hide }, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<div p2${\n _scopeId\n }><form flex=\"~ col\"${\n _scopeId\n }>`)\n if (hasWildcard.value) {\n _push(`<!--[--><div px2 text-sm op50${\n _scopeId\n }> Fill params and navigate: </div><div flex=\"~\" items-center p2 text-sm font-mono${\n _scopeId\n }><!--[-->`)\n _ssrRenderList(parts.value, (part, idx) => {\n _push(`<!--[-->`)\n if (part[0] === ':') {\n _push(_ssrRenderComponent(_component_NTextInput, {\n modelValue: partsInput.value[idx],\n \"onUpdate:modelValue\": ($event: any) => ((partsInput.value[idx]) = $event),\n \"w-20\": \"\",\n \"n-sm\": \"\",\n placeholder: part.slice(1)\n }, null, _parent, _scopeId))\n } else {\n _push(`<span${\n _scopeId\n }>${\n _ssrInterpolate(part)\n }</span>`)\n }\n _push(`<!--]-->`)\n })\n _push(`<!--]--></div><!--]-->`)\n } else {\n _push(`<!---->`)\n }\n _push(_ssrRenderComponent(_component_NButton, {\n type: \"submit\",\n block: \"\",\n n: \"primary\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(` Navigate `)\n } else {\n return [\n _createTextVNode(\" Navigate \")\n ]\n }\n }),\n _: 2\n }, _parent, _scopeId))\n _push(`</form></div>`)\n } else {\n return [\n _createVNode(\"div\", { p2: \"\" }, [\n _createVNode(\"form\", {\n flex: \"~ col\",\n onSubmit: _withModifiers(() => { navigate(); hide() }, [\"prevent\"])\n }, [\n (hasWildcard.value)\n ? (_openBlock(), _createBlock(_Fragment, { key: 0 }, [\n _createVNode(\"div\", {\n px2: \"\",\n \"text-sm\": \"\",\n op50: \"\"\n }, \" Fill params and navigate: \"),\n _createVNode(\"div\", {\n flex: \"~\",\n \"items-center\": \"\",\n p2: \"\",\n \"text-sm\": \"\",\n \"font-mono\": \"\"\n }, [\n (_openBlock(true), _createBlock(_Fragment, null, _renderList(parts.value, (part, idx) => {\n return (_openBlock(), _createBlock(_Fragment, { key: idx }, [\n (part[0] === ':')\n ? (_openBlock(), _createBlock(_component_NTextInput, {\n key: 0,\n modelValue: partsInput.value[idx],\n \"onUpdate:modelValue\": ($event: any) => ((partsInput.value[idx]) = $event),\n \"w-20\": \"\",\n \"n-sm\": \"\",\n placeholder: part.slice(1)\n }, null, 8, [\"modelValue\", \"onUpdate:modelValue\", \"placeholder\"]))\n : (_openBlock(), _createBlock(\"span\", { key: 1 }, _toDisplayString(part), 1))\n ], 64))\n }), 128))\n ])\n ], 64))\n : _createCommentVNode(\"\", true),\n _createVNode(_component_NButton, {\n type: \"submit\",\n block: \"\",\n n: \"primary\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" Navigate \")\n ]),\n _: 1\n })\n ], 40, [\"onSubmit\"])\n ])\n ]\n }\n }),\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<code block cursor-pointer${_scopeId}><!--[-->`)\n _ssrRenderList(parts.value, (part, idx) => {\n _push(`<span class=\"${\n _ssrRenderClass(part[0] === ':' ? 'text-gray border border-dashed rounded border-gray:50 px1' : '')\n }\"${\n _scopeId\n }>${\n _ssrInterpolate(part[0] === ':' ? part.slice(1) : part)\n }</span>`)\n })\n _push(`<!--]--></code>`)\n } else {\n return [\n _createVNode(\"code\", {\n block: \"\",\n \"cursor-pointer\": \"\"\n }, [\n (_openBlock(true), _createBlock(_Fragment, null, _renderList(parts.value, (part, idx) => {\n return (_openBlock(), _createBlock(\"span\", {\n key: idx,\n class: part[0] === ':' ? 'text-gray border border-dashed rounded border-gray:50 px1' : ''\n }, _toDisplayString(part[0] === ':' ? part.slice(1) : part), 3))\n }), 128))\n ])\n ]\n }\n }),\n _: 1\n }, _parent))\n }\n}\n}\n\n})","<script setup lang=\"ts\">\nimport type { RouteInfo } from '~~/../src/types'\nimport { computed, ref } from 'vue'\n\nconst props = defineProps<{\n route: RouteInfo\n}>()\nconst emit = defineEmits<{\n (e: 'navigate', path: string): void\n}>()\nconst EXPRESS_PARAM_RE = /(:\\w+[?*]?(?:\\(\\))?)/\nconst TRAILING_PARENS_RE = /\\(\\)$/\nconst MULTI_SLASH_RE = /\\/+/g\n\nconst partsInput = ref<string[]>([])\nconst parts = computed(() => {\n const _ = parseExpressRoute(props.route.path)\n // eslint-disable-next-line vue/no-side-effects-in-computed-properties\n partsInput.value = Array.from<string>({ length: _.length }).fill('')\n return _\n})\n\nfunction parseExpressRoute(route: string) {\n return route\n .split(EXPRESS_PARAM_RE)\n .filter(Boolean)\n .map(i => i[0] === ':'\n ? i.replace(TRAILING_PARENS_RE, '?')\n : i)\n}\n\nconst path = computed(() => parts.value\n .map(\n (i, idx) => i[0] === ':'\n ? partsInput.value[idx]\n : i,\n )\n .join('')\n .replace(MULTI_SLASH_RE, '/'))\nconst hasWildcard = computed(() => props.route.path.includes(':'))\n\nfunction navigate() {\n emit('navigate', path.value)\n}\n</script>\n\n<template>\n <button v-if=\"!hasWildcard\" @click=\"navigate\">\n <code>{{ route.path }}</code>\n </button>\n <VDropdown v-else>\n <code block cursor-pointer>\n <span\n v-for=\"part, idx of parts\" :key=\"idx\"\n :class=\"part[0] === ':' ? 'text-gray border border-dashed rounded border-gray:50 px1' : ''\"\n >\n {{ part[0] === ':' ? part.slice(1) : part }}\n </span>\n </code>\n <template #popper=\"{ hide }\">\n <div p2>\n <form flex=\"~ col\" @submit.prevent=\"() => { navigate(); hide() }\">\n <template v-if=\"hasWildcard\">\n <div px2 text-sm op50>\n Fill params and navigate:\n </div>\n <div flex=\"~\" items-center p2 text-sm font-mono>\n <template v-for=\"part, idx of parts\" :key=\"idx\">\n <NTextInput\n v-if=\"part[0] === ':'\"\n v-model=\"partsInput[idx]\"\n w-20 n-sm\n :placeholder=\"part.slice(1)\"\n />\n <span v-else>{{ part }}</span>\n </template>\n </div>\n </template>\n <NButton type=\"submit\" block n=\"primary\">\n Navigate\n </NButton>\n </form>\n </div>\n </template>\n </VDropdown>\n</template>\n","import { defineComponent as _defineComponent } from 'vue'\nimport { resolveComponent as _resolveComponent, mergeProps as _mergeProps } from \"vue\"\nimport { ssrRenderComponent as _ssrRenderComponent, ssrRenderAttrs as _ssrRenderAttrs, ssrInterpolate as _ssrInterpolate, ssrRenderList as _ssrRenderList } from \"vue/server-renderer\"\n\nimport type { NuxtLayout } from 'nuxt/schema'\nimport type { RouteInfo } from '~/../src/types'\nimport { computed } from 'vue'\nimport { useOpenInEditor } from '~/composables/editor'\nimport { useServerApp } from '~/composables/state'\nimport { useCopy } from '../composables/editor'\n\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'RoutesTable',\n __ssrInlineRender: true,\n props: {\n pages: {},\n layouts: {},\n matched: {},\n matchedPending: {}\n },\n emits: [\"navigate\"],\n setup(__props: any) {\n\nconst props = __props\n\n\n\nconst openInEditor = useOpenInEditor()\nconst serverApp = useServerApp()\nconst copy = useCopy()\n\nconst sorted = computed(() => {\n return props.pages.toSorted((a, b) => a.path.localeCompare(b.path))\n})\n\nfunction openLayout(name: string) {\n const layout = props.layouts.find(i => i.name === name)\n if (layout)\n openInEditor(layout.file)\n}\n\nfunction getMiddlewarePath(name: any) {\n if (typeof name !== 'string')\n return\n return serverApp.value?.middleware.find(i => i.name === name)?.path\n}\n\nreturn (_ctx: any,_push: any,_parent: any,_attrs: any) => {\n const _component_NBadge = _resolveComponent(\"NBadge\")!\n const _component_RoutePathItem = _resolveComponent(\"RoutePathItem\")!\n const _component_FilepathItem = _resolveComponent(\"FilepathItem\")!\n\n _push(`<div${_ssrRenderAttrs(_mergeProps({\n \"max-w-full\": \"\",\n \"of-auto\": \"\"\n }, _attrs))}><table w-full><thead border=\"b base\"><tr><th text-left></th><th text-left> Route Path </th><th text-left> Name </th><th text-left> Middleware </th><th> Layout </th></tr></thead><tbody><!--[-->`)\n _ssrRenderList(sorted.value, (item) => {\n _push(`<tr class=\"group\" h-7 border=\"b dashed transparent hover:base\"><td w-20 pr-1><div flex items-center justify-end>`)\n if (__props.matched.find(m => m.name === item.name)) {\n _push(_ssrRenderComponent(_component_NBadge, {\n n: \"green\",\n title: \"active\"\n }, null, _parent))\n } else if (__props.matchedPending.find(m => m.name === item.name)) {\n _push(_ssrRenderComponent(_component_NBadge, {\n n: \"teal\",\n title: \"next\"\n }, null, _parent))\n } else {\n _push(`<!---->`)\n }\n _push(`</div></td><td text-sm><div flex=\"inline gap3\" items-center>`)\n _push(_ssrRenderComponent(_component_RoutePathItem, {\n route: item,\n class: __props.matched.find(m => m.name === item.name) ? 'text-primary' : __props.matchedPending.find(m => m.name === item.name) ? 'text-teal' : '',\n \"ws-nowrap\": \"\",\n onNavigate: path => _ctx.$emit('navigate', path)\n }, null, _parent))\n _push(`<div flex=\"~ gap1\" pr2 op0 group-hover:op100>`)\n if (item.file || item.meta?.file) {\n _push(`<button text-sm op40 hover=\"op100 text-primary\" title=\"Open in editor\"><div i-carbon-script-reference></div></button>`)\n } else {\n _push(`<!---->`)\n }\n if (item.file || item.meta?.file) {\n _push(`<button text-sm op40 hover=\"op100 text-primary\" title=\"Copy path\"><div i-carbon-copy></div></button>`)\n } else {\n _push(`<!---->`)\n }\n _push(`</div></div></td><td w-0 ws-nowrap pr-1 text-left text-sm font-mono op50>${_ssrInterpolate(item.name)}</td><td w-0 ws-nowrap pr-1 text-center text-sm font-mono op50>`)\n _push(_ssrRenderComponent(_component_FilepathItem, {\n filepath: getMiddlewarePath(item.meta.middleware),\n override: `${item.meta.middleware || '-'}`\n }, null, _parent))\n _push(`</td><td w-0 ws-nowrap text-center text-sm font-mono>`)\n if (item.meta.layout === false) {\n _push(`<span>-</span>`)\n } else if (item.meta.layout) {\n _push(`<button>${_ssrInterpolate(item.meta.layout)}</button>`)\n } else {\n _push(`<button text-sm op15> (default) </button>`)\n }\n _push(`</td></tr>`)\n })\n _push(`<!--]--></tbody></table></div>`)\n}\n}\n\n})","<script setup lang=\"ts\">\nimport type { NuxtLayout } from 'nuxt/schema'\nimport type { RouteInfo } from '~/../src/types'\nimport { computed } from 'vue'\nimport { useOpenInEditor } from '~/composables/editor'\nimport { useServerApp } from '~/composables/state'\nimport { useCopy } from '../composables/editor'\n\nconst props = defineProps<{\n pages: RouteInfo[]\n layouts: NuxtLayout[]\n matched: RouteInfo[]\n matchedPending: RouteInfo[]\n}>()\n\ndefineEmits<{\n (e: 'navigate', path: string): void\n}>()\n\nconst openInEditor = useOpenInEditor()\nconst serverApp = useServerApp()\nconst copy = useCopy()\n\nconst sorted = computed(() => {\n return props.pages.toSorted((a, b) => a.path.localeCompare(b.path))\n})\n\nfunction openLayout(name: string) {\n const layout = props.layouts.find(i => i.name === name)\n if (layout)\n openInEditor(layout.file)\n}\n\nfunction getMiddlewarePath(name: any) {\n if (typeof name !== 'string')\n return\n return serverApp.value?.middleware.find(i => i.name === name)?.path\n}\n</script>\n\n<template>\n <div max-w-full of-auto>\n <table w-full>\n <thead border=\"b base\">\n <tr>\n <th text-left />\n <th text-left>\n Route Path\n </th>\n <th text-left>\n Name\n </th>\n <th text-left>\n Middleware\n </th>\n <th>\n Layout\n </th>\n </tr>\n </thead>\n <tbody>\n <tr v-for=\"item of sorted\" :key=\"item.name\" class=\"group\" h-7 border=\"b dashed transparent hover:base\">\n <td w-20 pr-1>\n <div flex items-center justify-end>\n <NBadge\n v-if=\"matched.find(m => m.name === item.name)\"\n n=\"green\"\n title=\"active\"\n v-text=\"'active'\"\n />\n <NBadge\n v-else-if=\"matchedPending.find(m => m.name === item.name)\"\n n=\"teal\"\n title=\"next\"\n v-text=\"'next'\"\n />\n </div>\n </td>\n <td text-sm>\n <div flex=\"inline gap3\" items-center>\n <RoutePathItem\n :route=\"item\"\n :class=\"matched.find(m => m.name === item.name) ? 'text-primary' : matchedPending.find(m => m.name === item.name) ? 'text-teal' : ''\"\n ws-nowrap\n @navigate=\"path => $emit('navigate', path)\"\n />\n <div flex=\"~ gap1\" pr2 op0 group-hover:op100>\n <button\n v-if=\"item.file || item.meta?.file\"\n text-sm op40 hover=\"op100 text-primary\"\n title=\"Open in editor\"\n @click=\"openInEditor((item.file || item.meta?.file) as string)\"\n >\n <div i-carbon-script-reference />\n </button>\n <button\n v-if=\"item.file || item.meta?.file\"\n text-sm op40 hover=\"op100 text-primary\"\n title=\"Copy path\"\n @click=\"copy((item.file || item.meta?.file) as string)\"\n >\n <div i-carbon-copy />\n </button>\n </div>\n </div>\n </td>\n <td w-0 ws-nowrap pr-1 text-left text-sm font-mono op50>\n {{ item.name }}\n </td>\n <td w-0 ws-nowrap pr-1 text-center text-sm font-mono op50>\n <FilepathItem\n :filepath=\"getMiddlewarePath(item.meta.middleware)\"\n :override=\"`${item.meta.middleware || '-'}`\"\n />\n </td>\n <td w-0 ws-nowrap text-center text-sm font-mono>\n <span v-if=\"item.meta.layout === false\">-</span>\n <button v-else-if=\"item.meta.layout\" @click=\"openLayout(item.meta.layout as string)\">\n {{ item.meta.layout }}\n </button>\n <button v-else text-sm op15 @click=\"openLayout('default')\">\n (default)\n </button>\n </td>\n </tr>\n </tbody>\n </table>\n </div>\n</template>\n","# Pages\n\nNuxt provides a file-based routing to create routes within your web application using Vue Router under the hood. Pages are Vue components and can have any valid extension that Nuxt supports (by default .vue, .js, .jsx, .mjs, .ts or .tsx). Nuxt will automatically create a route for every page in your `~/pages/` directory.\n\n[Learn more in the documentation](https://nuxt.com/docs/getting-started/routing)\n\n---\n\n## Middlewares\n\nNuxt provides a customizable route middleware framework that can be used throughout the application. This is ideal for extracting code that needs to run before navigating to a particular route.\n\n[Learn more in the documentation](https://nuxt.com/docs/guide/directory-structure/middleware)\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, renderList as _renderList, Fragment as _Fragment, toDisplayString as _toDisplayString } from \"vue\"\nimport { ssrRenderComponent as _ssrRenderComponent, ssrInterpolate as _ssrInterpolate, ssrRenderList as _ssrRenderList } from \"vue/server-renderer\"\n\nimport { computed, onMounted, ref } from 'vue'\nimport { definePageMeta } from '#imports'\nimport { useClient, useClientRoute, useClientRouter } from '~/composables/client'\nimport { useLayouts, useMergedRouteList, useServerApp, useServerConfig } from '~/composables/state'\nimport { useNuxtCompatibilityVersion } from '~/composables/utils'\n\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'pages',\n __ssrInlineRender: true,\n setup(__props) {\n\ndefinePageMeta({\n icon: 'carbon-tree-view-alt',\n title: 'Pages',\n show: () => {\n const client = useClient()\n return () => !!client.value\n },\n order: 1,\n})\n\nconst router = useClientRouter()\nconst route = useClientRoute()\nconst config = useServerConfig()\nconst serverApp = useServerApp()\n\nconst layouts = useLayouts()\n\nconst routes = useMergedRouteList()\n\nconst middleware = computed(() => serverApp.value?.middleware || [])\nconst routeInput = ref('')\nconst count = ref(0)\n\nconst currentRoute = computed(() => {\n // Additionall reactivity tracker\n // eslint-disable-next-line ts/no-unused-expressions\n (middleware.value, routeInput.value, layouts.value, count.value)\n return router.value?.currentRoute?.value?.path\n})\n\nonMounted(() => {\n if (route.value)\n routeInput.value = router.value?.currentRoute?.value?.path\n\n router.value?.beforeEach((to) => {\n routeInput.value = to.fullPath\n })\n router.value?.afterEach((to) => {\n routeInput.value = to.fullPath\n })\n})\n\nasync function navigate() {\n if (routeInput.value !== router.value?.currentRoute?.value?.path)\n router.value.push(routeInput.value || '/')\n}\n\nconst routeInputMatched = computed(() => {\n return router.value.resolve(routeInput.value || '/').matched\n})\n\nfunction navigateToRoute(path: string) {\n router.value.push(path)\n routeInput.value = path\n}\n\nconst compatibilityVersion = useNuxtCompatibilityVersion()\n\nconst pagesPath = computed(() => `./${compatibilityVersion === 4 ? 'app/' : ''}pages/index.vue`)\n\nreturn (_ctx: any,_push: any,_parent: any,_attrs: any) => {\n const _component_NTextInput = _resolveComponent(\"NTextInput\")!\n const _component_NSectionBlock = _resolveComponent(\"NSectionBlock\")!\n const _component_RoutesTable = _resolveComponent(\"RoutesTable\")!\n const _component_NBadge = _resolveComponent(\"NBadge\")!\n const _component_FilepathItem = _resolveComponent(\"FilepathItem\")!\n const _component_LaunchPage = _resolveComponent(\"LaunchPage\")!\n const _component_HelpFab = _resolveComponent(\"HelpFab\")!\n const _component_DocsPages = _resolveComponent(\"DocsPages\")!\n\n _push(`<!--[-->`)\n if (_unref(config)?.pages && _unref(router)) {\n _push(`<div h-full of-auto><div border=\"b base\" flex=\"~ col gap1\" n-navbar-glass px4 py3><div>`)\n if (currentRoute.value !== routeInput.value) {\n _push(`<!--[--><span op50>Navigate from </span><span font-mono>${_ssrInterpolate(currentRoute.value)}</span><span op50> to </span><!--]-->`)\n } else {\n _push(`<span op50>Current route</span>`)\n }\n _push(`</div>`)\n _push(_ssrRenderComponent(_component_NTextInput, {\n modelValue: routeInput.value,\n \"onUpdate:modelValue\": ($event: any) => ((routeInput).value = $event),\n \"font-mono\": \"\",\n icon: \"carbon-direction-right-01 scale-y--100\",\n class: currentRoute.value === routeInput.value ? '' : routeInputMatched.value.length ? 'text-green' : 'text-orange',\n onKeydown: navigate\n }, null, _parent))\n _push(`<div>`)\n if (currentRoute.value !== routeInput.value) {\n _push(`<!--[--><span>Press <b font-bold>Enter</b> to navigate</span>`)\n if (!routeInputMatched.value.length) {\n _push(`<span text-orange op75> (no match)</span>`)\n } else {\n _push(`<!---->`)\n }\n _push(`<!--]-->`)\n } else {\n _push(`<span op50>Edit path above to navigate</span>`)\n }\n _push(`</div></div>`)\n _push(_ssrRenderComponent(_component_NSectionBlock, {\n icon: \"carbon-tree-view\",\n text: \"Matched Routes\",\n padding: false\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<div min-h-14${_scopeId}>`)\n if (routeInputMatched.value.length) {\n _push(_ssrRenderComponent(_component_RoutesTable, {\n pages: routeInputMatched.value,\n layouts: _unref(layouts) || [],\n matched: _unref(route).matched,\n \"matched-pending\": routeInputMatched.value,\n onNavigate: navigateToRoute\n }, null, _parent, _scopeId))\n } else {\n _push(`<div class=\"py-4 text-center\"${\n _scopeId\n }><span op50${\n _scopeId\n }>No routes matched</span></div>`)\n }\n _push(`</div>`)\n } else {\n return [\n _createVNode(\"div\", { \"min-h-14\": \"\" }, [\n (routeInputMatched.value.length)\n ? (_openBlock(), _createBlock(_component_RoutesTable, {\n key: 0,\n pages: routeInputMatched.value,\n layouts: _unref(layouts) || [],\n matched: _unref(route).matched,\n \"matched-pending\": routeInputMatched.value,\n onNavigate: navigateToRoute\n }, null, 8, [\"pages\", \"layouts\", \"matched\", \"matched-pending\"]))\n : (_openBlock(), _createBlock(\"div\", {\n key: 1,\n class: \"py-4 text-center\"\n }, [\n _createVNode(\"span\", { op50: \"\" }, \"No routes matched\")\n ]))\n ])\n ]\n }\n }),\n _: 1\n }, _parent))\n _push(_ssrRenderComponent(_component_NSectionBlock, {\n icon: \"carbon-tree-view-alt\",\n text: \"All Routes\",\n description: `${_unref(routes).length} routes registered in your application`,\n padding: \"pr5\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_RoutesTable, {\n pages: _unref(routes),\n layouts: _unref(layouts) || [],\n matched: _unref(route).matched,\n \"matched-pending\": routeInputMatched.value,\n onNavigate: navigateToRoute\n }, null, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_RoutesTable, {\n pages: _unref(routes),\n layouts: _unref(layouts) || [],\n matched: _unref(route).matched,\n \"matched-pending\": routeInputMatched.value,\n onNavigate: navigateToRoute\n }, null, 8, [\"pages\", \"layouts\", \"matched\", \"matched-pending\"])\n ]\n }\n }),\n _: 1\n }, _parent))\n if (middleware.value.length) {\n _push(_ssrRenderComponent(_component_NSectionBlock, {\n icon: \"carbon:ibm-watson-studio\",\n text: \"Middleware\",\n description: `${middleware.value.length} middleware registered in your application`,\n padding: \"px13\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<table w-full${\n _scopeId\n }><thead border=\"b base\" h-7${\n _scopeId\n }><tr${\n _scopeId\n }><th text-left${\n _scopeId\n }> Name </th><th text-left${\n _scopeId\n }> Path </th></tr></thead><!--[-->`)\n _ssrRenderList(middleware.value, (m) => {\n _push(`<tr h-7${\n _scopeId\n }><td${\n _scopeId\n }><span mr1${\n _scopeId\n }>${\n _ssrInterpolate(m.name)\n }</span>`)\n if (m.global) {\n _push(_ssrRenderComponent(_component_NBadge, {\n n: \"green\",\n title: \"Registered at runtime as a global component\"\n }, null, _parent, _scopeId))\n } else {\n _push(`<!---->`)\n }\n _push(`</td><td${_scopeId}>`)\n _push(_ssrRenderComponent(_component_FilepathItem, {\n filepath: m.path\n }, null, _parent, _scopeId))\n _push(`</td></tr>`)\n })\n _push(`<!--]--></table>`)\n } else {\n return [\n _createVNode(\"table\", { \"w-full\": \"\" }, [\n _createVNode(\"thead\", {\n border: \"b base\",\n \"h-7\": \"\"\n }, [\n _createVNode(\"tr\", null, [\n _createVNode(\"th\", { \"text-left\": \"\" }, \" Name \"),\n _createVNode(\"th\", { \"text-left\": \"\" }, \" Path \")\n ])\n ]),\n (_openBlock(true), _createBlock(_Fragment, null, _renderList(middleware.value, (m) => {\n return (_openBlock(), _createBlock(\"tr\", {\n key: m.path,\n \"h-7\": \"\"\n }, [\n _createVNode(\"td\", null, [\n _createVNode(\"span\", { mr1: \"\" }, _toDisplayString(m.name), 1),\n (m.global)\n ? (_openBlock(), _createBlock(_component_NBadge, {\n key: 0,\n n: \"green\",\n title: \"Registered at runtime as a global component\",\n textContent: 'global'\n }))\n : _createCommentVNode(\"\", true)\n ]),\n _createVNode(\"td\", null, [\n _createVNode(_component_FilepathItem, {\n filepath: m.path\n }, null, 8, [\"filepath\"])\n ])\n ]))\n }), 128))\n ])\n ]\n }\n }),\n _: 1\n }, _parent))\n } else {\n _push(`<!---->`)\n }\n _push(`</div>`)\n } else {\n _push(_ssrRenderComponent(_component_LaunchPage, {\n icon: \"carbon-tree-view-alt\",\n name: \"wizard-pages\",\n title: \"Nuxt Routing\",\n description: `Create ${pagesPath.value} to enable routing`,\n actions: [\n {\n label: 'Learn more',\n src: 'https://nuxt.com/docs/getting-started/routing',\n attrs: {\n n: 'primary',\n },\n },\n {\n label: 'Enable Routing',\n async handle() {\n return _ctx.rpc.enablePages()\n },\n },\n ]\n }, null, _parent))\n }\n _push(_ssrRenderComponent(_component_HelpFab, null, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_DocsPages, null, null, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_DocsPages)\n ]\n }\n }),\n _: 1\n }, _parent))\n _push(`<!--]-->`)\n}\n}\n\n})","<script setup lang=\"ts\">\nimport { computed, onMounted, ref } from 'vue'\nimport { definePageMeta } from '#imports'\nimport { useClient, useClientRoute, useClientRouter } from '~/composables/client'\nimport { useLayouts, useMergedRouteList, useServerApp, useServerConfig } from '~/composables/state'\nimport { useNuxtCompatibilityVersion } from '~/composables/utils'\n\ndefinePageMeta({\n icon: 'carbon-tree-view-alt',\n title: 'Pages',\n show: () => {\n const client = useClient()\n return () => !!client.value\n },\n order: 1,\n})\n\nconst router = useClientRouter()\nconst route = useClientRoute()\nconst config = useServerConfig()\nconst serverApp = useServerApp()\n\nconst layouts = useLayouts()\n\nconst routes = useMergedRouteList()\n\nconst middleware = computed(() => serverApp.value?.middleware || [])\nconst routeInput = ref('')\nconst count = ref(0)\n\nconst currentRoute = computed(() => {\n // Additionall reactivity tracker\n // eslint-disable-next-line ts/no-unused-expressions\n (middleware.value, routeInput.value, layouts.value, count.value)\n return router.value?.currentRoute?.value?.path\n})\n\nonMounted(() => {\n if (route.value)\n routeInput.value = router.value?.currentRoute?.value?.path\n\n router.value?.beforeEach((to) => {\n routeInput.value = to.fullPath\n })\n router.value?.afterEach((to) => {\n routeInput.value = to.fullPath\n })\n})\n\nasync function navigate() {\n if (routeInput.value !== router.value?.currentRoute?.value?.path)\n router.value.push(routeInput.value || '/')\n}\n\nconst routeInputMatched = computed(() => {\n return router.value.resolve(routeInput.value || '/').matched\n})\n\nfunction navigateToRoute(path: string) {\n router.value.push(path)\n routeInput.value = path\n}\n\nconst compatibilityVersion = useNuxtCompatibilityVersion()\n\nconst pagesPath = computed(() => `./${compatibilityVersion === 4 ? 'app/' : ''}pages/index.vue`)\n</script>\n\n<template>\n <div v-if=\"config?.pages && router\" h-full of-auto>\n <div border=\"b base\" flex=\"~ col gap1\" n-navbar-glass px4 py3>\n <div>\n <template v-if=\"currentRoute !== routeInput\">\n <span op50>Navigate from </span>\n <span font-mono>{{ currentRoute }}</span>\n <span op50> to </span>\n </template>\n <template v-else>\n <span op50>Current route</span>\n </template>\n </div>\n <NTextInput\n v-model=\"routeInput\"\n font-mono\n icon=\"carbon-direction-right-01 scale-y--100\"\n :class=\"currentRoute === routeInput ? '' : routeInputMatched.length ? 'text-green' : 'text-orange'\"\n @keydown.enter=\"navigate\"\n />\n <div>\n <template v-if=\"currentRoute !== routeInput\">\n <span>Press <b font-bold>Enter</b> to navigate</span>\n <span v-if=\"!routeInputMatched.length\" text-orange op75> (no match)</span>\n </template>\n <template v-else>\n <span op50>Edit path above to navigate</span>\n </template>\n </div>\n </div>\n <NSectionBlock\n icon=\"carbon-tree-view\"\n text=\"Matched Routes\"\n :padding=\"false\"\n >\n <div min-h-14>\n <RoutesTable\n v-if=\"routeInputMatched.length\"\n :pages=\"routeInputMatched\"\n :layouts=\"layouts || []\"\n :matched=\"route.matched\"\n :matched-pending=\"routeInputMatched\"\n @navigate=\"navigateToRoute\"\n />\n <div v-else class=\"py-4 text-center\">\n <span op50>No routes matched</span>\n </div>\n </div>\n </NSectionBlock>\n <NSectionBlock\n icon=\"carbon-tree-view-alt\"\n text=\"All Routes\"\n :description=\"`${routes.length} routes registered in your application`\"\n padding=\"pr5\"\n >\n <RoutesTable\n :pages=\"routes\"\n :layouts=\"layouts || []\"\n :matched=\"route.matched\"\n :matched-pending=\"routeInputMatched\"\n @navigate=\"navigateToRoute\"\n />\n </NSectionBlock>\n <NSectionBlock\n v-if=\"middleware.length\"\n icon=\"carbon:ibm-watson-studio\"\n text=\"Middleware\"\n :description=\"`${middleware.length} middleware registered in your application`\"\n padding=\"px13\"\n >\n <table w-full>\n <thead border=\"b base\" h-7>\n <tr>\n <th text-left>\n Name\n </th>\n <th text-left>\n Path\n </th>\n </tr>\n </thead>\n <tr v-for=\"m of middleware\" :key=\"m.path\" h-7>\n <td>\n <span mr1>{{ m.name }}</span>\n <NBadge\n v-if=\"m.global\"\n n=\"green\"\n title=\"Registered at runtime as a global component\"\n v-text=\"'global'\"\n />\n </td>\n <td>\n <FilepathItem :filepath=\"m.path\" />\n </td>\n </tr>\n </table>\n </NSectionBlock>\n </div>\n <LaunchPage\n v-else\n icon=\"carbon-tree-view-alt\"\n name=\"wizard-pages\"\n title=\"Nuxt Routing\"\n :description=\"`Create ${pagesPath} to enable routing`\"\n :actions=\"[\n {\n label: 'Learn more',\n src: 'https://nuxt.com/docs/getting-started/routing',\n attrs: {\n n: 'primary',\n },\n },\n {\n label: 'Enable Routing',\n async handle() {\n return rpc.enablePages()\n },\n },\n ]\"\n />\n\n <HelpFab>\n <DocsPages />\n </HelpFab>\n</template>\n"],"version":3}
@@ -0,0 +1 @@
1
+ {"file":"pages-DWELoQlh.js","mappings":";;;AAQA,IAAM,kBAAkB,SAAS,CAWjC","names":[],"sources":["../../../../../../../../../../../node_modules/.pnpm/nuxt-nightly@5.0.0-29806258.d070492f_@oxc-project+types@0.148.0_@parcel+watcher@2.6.0_@_957e8ef33542258853c773b09ad5865f/node_modules/nuxt-nightly/dist/pages/runtime/composables.js"],"sourcesContent":["import { appDiagnostics } from \"../../app/diagnostics/core.js\";\nimport { getCurrentInstance } from \"vue\";\nimport { isInComponentSetup, useNuxtApp } from \"#app/nuxt\";\nimport { useRoute } from \"vue-router\";\n//#region src/pages/runtime/composables.ts\nconst warnRuntimeUsage = (method) => {\n\tappDiagnostics.NUXT_E1007({ name: method });\n};\nconst definePageMeta = (meta) => {\n\tif (import.meta.dev) {\n\t\tconst component = getCurrentInstance()?.type;\n\t\ttry {\n\t\t\tif (!component && isInComponentSetup(useNuxtApp())) return;\n\t\t\tconst isRouteComponent = component && useRoute().matched.some((p) => Object.values(p.components || {}).includes(component));\n\t\t\tconst isRenderingServerPage = import.meta.server && useNuxtApp().ssrContext?.islandContext;\n\t\t\tif (isRouteComponent || isRenderingServerPage || component?.__clientOnlyPage) return;\n\t\t} catch {}\n\t\twarnRuntimeUsage(\"definePageMeta\");\n\t}\n};\n/**\n* You can define route rules for the current page. Matching route rules will be created, based on the page's _path_.\n*\n* For example, a rule defined in `~/pages/foo/bar.vue` will be applied to `/foo/bar` requests. A rule in\n* `~/pages/foo/[id].vue` will be applied to `/foo/**` requests.\n*\n* For more control, such as if you are using a custom `path` or `alias` set in the page's `definePageMeta`, you\n* should set `routeRules` directly within your `nuxt.config`.\n*/\nconst defineRouteRules = /* @__NO_SIDE_EFFECTS__ */ (rules) => {};\n//#endregion\nexport { definePageMeta, defineRouteRules };\n"],"version":3}
@@ -0,0 +1 @@
1
+ {"file":"payload-29bFuqLh.js","mappings":"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","names":[],"sources":["../../../../../../../../components/StateGroup.vue?vue&type=script&setup=true&lang.ts","../../../../../../../../components/StateGroup.vue","../../../../../../../../components/docs/payload.md","../../../../../../../../pages/modules/payload.vue?vue&type=script&setup=true&lang.ts","../../../../../../../../pages/modules/payload.vue"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { resolveComponent as _resolveComponent, mergeProps as _mergeProps, withCtx as _withCtx, renderSlot as _renderSlot } from \"vue\"\nimport { ssrRenderSlot as _ssrRenderSlot, ssrRenderComponent as _ssrRenderComponent, ssrRenderAttrs as _ssrRenderAttrs, ssrRenderList as _ssrRenderList } from \"vue/server-renderer\"\n\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'StateGroup',\n __ssrInlineRender: true,\n props: {\n state: {},\n revision: {},\n prefix: { default: '' }\n },\n setup(__props: any) {\n\n\n\nreturn (_ctx: any,_push: any,_parent: any,_attrs: any) => {\n const _component_StateEditor = _resolveComponent(\"StateEditor\")!\n\n _push(`<div${_ssrRenderAttrs(_attrs)}>`)\n if (__props.state && Object.keys(__props.state).length > 0) {\n _push(`<div flex=\"~ col gap-1\"><!--[-->`)\n _ssrRenderList(__props.state, (value, key) => {\n _push(_ssrRenderComponent(_component_StateEditor, {\n key: key,\n revision: __props.revision,\n state: value,\n name: key.startsWith(__props.prefix) ? key.slice(__props.prefix.length) : key\n }, {\n actions: _withCtx((props, _push, _parent, _scopeId) => {\n if (_push) {\n _ssrRenderSlot(_ctx.$slots, \"actions\", _mergeProps({ ref_for: true }, props), null, _push, _parent, _scopeId)\n } else {\n return [\n _renderSlot(_ctx.$slots, \"actions\", _mergeProps({ ref_for: true }, props))\n ]\n }\n }),\n _: 2\n }, _parent))\n })\n _push(`<!--]--></div>`)\n } else {\n _push(`<div mt2 px4 italic op35> No data </div>`)\n }\n _push(`</div>`)\n}\n}\n\n})","<script setup lang=\"ts\">\nwithDefaults(\n defineProps<{\n state?: Record<string, any>\n revision?: number\n prefix?: string\n }>(),\n {\n prefix: '',\n },\n)\n</script>\n\n<template>\n <div>\n <div v-if=\"state && Object.keys(state).length > 0\" flex=\"~ col gap-1\">\n <StateEditor\n v-for=\"value, key of state\"\n :key=\"key\"\n :revision=\"revision\"\n :state=\"value\"\n :name=\"key.startsWith(prefix) ? key.slice(prefix.length) : key\"\n >\n <template #actions=\"props\">\n <slot name=\"actions\" v-bind=\"props\" />\n </template>\n </StateEditor>\n </div>\n <div v-else mt2 px4 italic op35>\n No data\n </div>\n </div>\n</template>\n","# State & Async Data\n\n// TODO\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, createTextVNode as _createTextVNode, resolveDirective as _resolveDirective, mergeProps as _mergeProps, withDirectives as _withDirectives, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode } from \"vue\"\nimport { ssrRenderComponent as _ssrRenderComponent, ssrGetDirectiveProps as _ssrGetDirectiveProps } from \"vue/server-renderer\"\n\nimport { computed } from 'vue'\nimport { definePageMeta } from '#imports'\nimport { useClient } from '~/composables/client'\n\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'payload',\n __ssrInlineRender: true,\n setup(__props) {\n\ndefinePageMeta({\n icon: 'carbon-data-set',\n title: 'Payload',\n category: 'analyze',\n show: () => {\n const client = useClient()\n return () => !!client.value\n },\n order: 7,\n})\n\nconst client = useClient()\nconst payload = computed(() => client.value?.nuxt.payload)\nconst revision = computed(() => client.value?.revision.value)\n\nasync function refreshData(keys?: string[]) {\n await client.value?.nuxt.hooks.callHookParallel('app:data:refresh', keys)\n}\n\nreturn (_ctx: any,_push: any,_parent: any,_attrs: any) => {\n const _component_NSectionBlock = _resolveComponent(\"NSectionBlock\")!\n const _component_StateGroup = _resolveComponent(\"StateGroup\")!\n const _component_NButton = _resolveComponent(\"NButton\")!\n const _component_StateEditor = _resolveComponent(\"StateEditor\")!\n const _component_HelpFab = _resolveComponent(\"HelpFab\")!\n const _component_DocsPayload = _resolveComponent(\"DocsPayload\")!\n const _directive_tooltip = _resolveDirective(\"tooltip\")!\n\n _push(`<!--[-->`)\n if (_unref(client)) {\n _push(`<div>`)\n _push(_ssrRenderComponent(_component_NSectionBlock, {\n icon: \"carbon-data-set\",\n text: \"State\",\n description: \"Keyed state from `useState`\",\n padding: false\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_StateGroup, {\n state: payload.value.state,\n revision: revision.value,\n prefix: \"$s\"\n }, null, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_StateGroup, {\n state: payload.value.state,\n revision: revision.value,\n prefix: \"$s\"\n }, null, 8, [\"state\", \"revision\"])\n ]\n }\n }),\n _: 1\n }, _parent))\n _push(_ssrRenderComponent(_component_NSectionBlock, {\n icon: \"carbon-data-blob\",\n text: \"Data\",\n description: \"Keyed state from `useAsyncData`\",\n padding: false\n }, {\n actions: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_NButton, {\n n: \"xs primary\",\n \"self-start\": \"\",\n icon: \"i-carbon-recycle\",\n onClick: ($event: any) => (refreshData())\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(` Re-fetch all data `)\n } else {\n return [\n _createTextVNode(\" Re-fetch all data \")\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_NButton, {\n n: \"xs primary\",\n \"self-start\": \"\",\n icon: \"i-carbon-recycle\",\n onClick: ($event: any) => (refreshData())\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" Re-fetch all data \")\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ]\n }\n }),\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_StateGroup, {\n state: payload.value.data,\n revision: revision.value\n }, {\n actions: _withCtx(({ isOpen, name }, _push, _parent, _scopeId) => {\n if (_push) {\n if (isOpen && name) {\n _push(_ssrRenderComponent(_component_NButton, _mergeProps({\n title: `Re-fetch '${name}'`,\n icon: \"carbon-recycle\",\n border: false,\n onClick: ($event: any) => (refreshData([name]))\n }, _ssrGetDirectiveProps(_ctx, _directive_tooltip, `Re-fetch '${name}'`, void 0, { bottom: true })), null, _parent, _scopeId))\n } else {\n _push(`<!---->`)\n }\n } else {\n return [\n (isOpen && name)\n ? _withDirectives((_openBlock(), _createBlock(_component_NButton, {\n key: 0,\n title: `Re-fetch '${name}'`,\n icon: \"carbon-recycle\",\n border: false,\n onClick: ($event: any) => (refreshData([name]))\n }, null, 8, [\"title\", \"onClick\"])), [\n [\n _directive_tooltip,\n `Re-fetch '${name}'`,\n void 0,\n { bottom: true }\n ]\n ])\n : _createCommentVNode(\"\", true)\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_StateGroup, {\n state: payload.value.data,\n revision: revision.value\n }, {\n actions: _withCtx(({ isOpen, name }) => [\n (isOpen && name)\n ? _withDirectives((_openBlock(), _createBlock(_component_NButton, {\n key: 0,\n title: `Re-fetch '${name}'`,\n icon: \"carbon-recycle\",\n border: false,\n onClick: ($event: any) => (refreshData([name]))\n }, null, 8, [\"title\", \"onClick\"])), [\n [\n _directive_tooltip,\n `Re-fetch '${name}'`,\n void 0,\n { bottom: true }\n ]\n ])\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }, 8, [\"state\", \"revision\"])\n ]\n }\n }),\n _: 1\n }, _parent))\n if (payload.value.functions && Object.keys(payload.value.functions).length) {\n _push(_ssrRenderComponent(_component_NSectionBlock, {\n icon: \"carbon-function\",\n text: \"Functions\",\n description: \"State for functions\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_StateEditor, {\n \"ml--6\": \"\",\n state: payload.value.functions,\n revision: revision.value\n }, null, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_StateEditor, {\n \"ml--6\": \"\",\n state: payload.value.functions,\n revision: revision.value\n }, null, 8, [\"state\", \"revision\"])\n ]\n }\n }),\n _: 1\n }, _parent))\n } else {\n _push(`<!---->`)\n }\n _push(`</div>`)\n } else {\n _push(`<!---->`)\n }\n _push(_ssrRenderComponent(_component_HelpFab, null, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_DocsPayload, null, null, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_DocsPayload)\n ]\n }\n }),\n _: 1\n }, _parent))\n _push(`<!--]-->`)\n}\n}\n\n})","<script setup lang=\"ts\">\nimport { computed } from 'vue'\nimport { definePageMeta } from '#imports'\nimport { useClient } from '~/composables/client'\n\ndefinePageMeta({\n icon: 'carbon-data-set',\n title: 'Payload',\n category: 'analyze',\n show: () => {\n const client = useClient()\n return () => !!client.value\n },\n order: 7,\n})\n\nconst client = useClient()\nconst payload = computed(() => client.value?.nuxt.payload)\nconst revision = computed(() => client.value?.revision.value)\n\nasync function refreshData(keys?: string[]) {\n await client.value?.nuxt.hooks.callHookParallel('app:data:refresh', keys)\n}\n</script>\n\n<template>\n <div v-if=\"client\">\n <NSectionBlock\n icon=\"carbon-data-set\"\n text=\"State\"\n description=\"Keyed state from `useState`\"\n :padding=\"false\"\n >\n <StateGroup\n :state=\"payload.state\"\n :revision=\"revision\"\n prefix=\"$s\"\n />\n </NSectionBlock>\n <NSectionBlock\n icon=\"carbon-data-blob\"\n text=\"Data\"\n description=\"Keyed state from `useAsyncData`\"\n :padding=\"false\"\n >\n <template #actions>\n <NButton\n n=\"xs primary\" self-start\n icon=\"i-carbon-recycle\"\n @click=\"refreshData()\"\n >\n Re-fetch all data\n </NButton>\n </template>\n <StateGroup\n :state=\"payload.data\"\n :revision=\"revision\"\n >\n <template #actions=\"{ isOpen, name }\">\n <NButton\n v-if=\"isOpen && name\"\n v-tooltip.bottom=\"`Re-fetch '${name}'`\"\n :title=\"`Re-fetch '${name}'`\"\n icon=\"carbon-recycle\"\n :border=\"false\"\n @click=\"refreshData([name])\"\n />\n </template>\n </StateGroup>\n </NSectionBlock>\n <NSectionBlock\n v-if=\"payload.functions && Object.keys(payload.functions).length\"\n icon=\"carbon-function\"\n text=\"Functions\"\n description=\"State for functions\"\n >\n <StateEditor\n ml--6\n :state=\"payload.functions\"\n :revision=\"revision\"\n />\n </NSectionBlock>\n </div>\n\n <HelpFab>\n <DocsPayload />\n </HelpFab>\n</template>\n"],"version":3}
@@ -0,0 +1 @@
1
+ {"file":"plugins-fmmRaH-S.js","mappings":"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","names":[],"sources":["../../../../../../../../components/PluginItem.vue?vue&type=script&setup=true&lang.ts","../../../../../../../../components/PluginItem.vue","../../../../../../../../components/help/HelpTip.vue?vue&type=script&setup=true&lang.ts","../../../../../../../../components/help/HelpTip.vue","../../../../../../../../components/help/HelpTipPerformance.vue","../../../../../../../../components/docs/plugins.md","../../../../../../../../pages/modules/plugins.vue?vue&type=script&setup=true&lang.ts","../../../../../../../../pages/modules/plugins.vue"],"sourcesContent":["import { defineComponent as _defineComponent } from 'vue'\nimport { resolveComponent as _resolveComponent, withCtx as _withCtx, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createVNode as _createVNode, mergeProps as _mergeProps } from \"vue\"\nimport { ssrRenderComponent as _ssrRenderComponent, ssrRenderAttrs as _ssrRenderAttrs, ssrInterpolate as _ssrInterpolate } from \"vue/server-renderer\"\n\nimport type { PluginInfoWithMetic } from '@nuxt/devtools-kit/types'\nimport { computed } from 'vue'\nimport { useServerConfig } from '~/composables/state'\nimport { parseReadablePath } from '~/composables/utils'\n\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'PluginItem',\n __ssrInlineRender: true,\n props: {\n plugin: {},\n index: {}\n },\n setup(__props: any) {\n\nconst props = __props\n\nconst config = useServerConfig()\nconst shortPath = computed(() => parseReadablePath(props.plugin.src, config.value?.rootDir || '').path)\n\nreturn (_ctx: any,_push: any,_parent: any,_attrs: any) => {\n const _component_FilepathItem = _resolveComponent(\"FilepathItem\")!\n const _component_NBadge = _resolveComponent(\"NBadge\")!\n const _component_DurationDisplay = _resolveComponent(\"DurationDisplay\")!\n\n _push(`<div${\n _ssrRenderAttrs(_mergeProps({\n flex: \"~ gap2\",\n \"items-center\": \"\"\n }, _attrs))\n }><div w8 text-right text-sm op25>${\n _ssrInterpolate(__props.index)\n }</div>`)\n _push(_ssrRenderComponent(_component_FilepathItem, {\n filepath: props.plugin.src,\n subpath: true\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<div${_scopeId}>`)\n if (shortPath.value.startsWith('#')) {\n _push(_ssrRenderComponent(_component_NBadge, { n: \"rose\" }, null, _parent, _scopeId))\n } else if (!shortPath.value.startsWith('.')) {\n _push(_ssrRenderComponent(_component_NBadge, { n: \"gray\" }, null, _parent, _scopeId))\n } else {\n _push(`<!---->`)\n }\n if (__props.plugin.mode === 'server') {\n _push(_ssrRenderComponent(_component_NBadge, { n: \"teal\" }, null, _parent, _scopeId))\n } else {\n _push(`<!---->`)\n }\n if (__props.plugin.mode === 'client') {\n _push(_ssrRenderComponent(_component_NBadge, { n: \"orange\" }, null, _parent, _scopeId))\n } else {\n _push(`<!---->`)\n }\n _push(`</div>`)\n } else {\n return [\n _createVNode(\"div\", null, [\n (shortPath.value.startsWith('#'))\n ? (_openBlock(), _createBlock(_component_NBadge, {\n key: 0,\n n: \"rose\",\n textContent: 'virtual'\n }))\n : (!shortPath.value.startsWith('.'))\n ? (_openBlock(), _createBlock(_component_NBadge, {\n key: 1,\n n: \"gray\",\n textContent: 'module'\n }))\n : _createCommentVNode(\"\", true),\n (__props.plugin.mode === 'server')\n ? (_openBlock(), _createBlock(_component_NBadge, {\n key: 2,\n n: \"teal\",\n textContent: 'server'\n }))\n : _createCommentVNode(\"\", true),\n (__props.plugin.mode === 'client')\n ? (_openBlock(), _createBlock(_component_NBadge, {\n key: 3,\n n: \"orange\",\n textContent: 'client'\n }))\n : _createCommentVNode(\"\", true)\n ])\n ]\n }\n }),\n _: 1\n }, _parent))\n if (__props.plugin.metric?.duration != null) {\n _push(`<div flex-auto text-right>`)\n _push(_ssrRenderComponent(_component_DurationDisplay, {\n duration: __props.plugin.metric?.duration,\n factor: 10\n }, null, _parent))\n _push(`</div>`)\n } else {\n _push(`<!---->`)\n }\n _push(`</div>`)\n}\n}\n\n})","<script setup lang=\"ts\">\nimport type { PluginInfoWithMetic } from '@nuxt/devtools-kit/types'\nimport { computed } from 'vue'\nimport { useServerConfig } from '~/composables/state'\nimport { parseReadablePath } from '~/composables/utils'\n\nconst props = defineProps<{\n plugin: PluginInfoWithMetic\n index?: number\n}>()\n\nconst config = useServerConfig()\nconst shortPath = computed(() => parseReadablePath(props.plugin.src, config.value?.rootDir || '').path)\n</script>\n\n<template>\n <div flex=\"~ gap2\" items-center>\n <div w8 text-right text-sm op25>\n {{ index }}\n </div>\n <FilepathItem :filepath=\"props.plugin.src\" :subpath=\"true\">\n <div>\n <NBadge\n v-if=\"shortPath.startsWith('#')\"\n n=\"rose\"\n v-text=\"'virtual'\"\n />\n <NBadge\n v-else-if=\"!shortPath.startsWith('.')\"\n n=\"gray\"\n v-text=\"'module'\"\n />\n <NBadge\n v-if=\"plugin.mode === 'server'\"\n n=\"teal\"\n v-text=\"'server'\"\n />\n <NBadge\n v-if=\"plugin.mode === 'client'\"\n n=\"orange\"\n v-text=\"'client'\"\n />\n </div>\n </FilepathItem>\n\n <div v-if=\"plugin.metric?.duration != null\" flex-auto text-right>\n <DurationDisplay :duration=\"plugin.metric?.duration\" :factor=\"10\" />\n </div>\n </div>\n</template>\n","import { defineComponent as _defineComponent } from 'vue'\nimport { resolveComponent as _resolveComponent, mergeProps as _mergeProps } from \"vue\"\nimport { ssrRenderComponent as _ssrRenderComponent, ssrRenderSlot as _ssrRenderSlot, ssrRenderAttrs as _ssrRenderAttrs, ssrInterpolate as _ssrInterpolate } from \"vue/server-renderer\"\n\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'HelpTip',\n __ssrInlineRender: true,\n props: {\n title: {},\n icon: {}\n },\n setup(__props: any) {\n\n\n\nreturn (_ctx: any,_push: any,_parent: any,_attrs: any) => {\n const _component_NIcon = _resolveComponent(\"NIcon\")!\n const _component_ContentSlot = _resolveComponent(\"ContentSlot\")!\n\n _push(`<div${_ssrRenderAttrs(_mergeProps({\n class: \"n-tip n-tip-base\",\n flex: \"~ col items-start\",\n \"mx--4\": \"\",\n px4: \"\",\n py4: \"\"\n }, _attrs))}><div flex=\"~ items-center gap-1\" font-bold>`)\n if (__props.icon) {\n _push(_ssrRenderComponent(_component_NIcon, {\n icon: __props.icon,\n class: \"n-tip-icon\"\n }, null, _parent))\n } else {\n _push(`<!---->`)\n }\n _push(`<div>${_ssrInterpolate(__props.title)}</div></div><div>`)\n _ssrRenderSlot(_ctx.$slots, \"default\", {}, () => {\n _push(_ssrRenderComponent(_component_ContentSlot, {\n use: _ctx.$slots.default,\n unwrap: \"p\"\n }, null, _parent))\n }, _push, _parent)\n _push(`</div></div>`)\n}\n}\n\n})","<script setup lang=\"ts\">\ndefineProps<{\n title: string\n icon?: string\n}>()\n</script>\n\n<template>\n <div class=\"n-tip n-tip-base\" flex=\"~ col items-start\" mx--4 px4 py4>\n <div flex=\"~ items-center gap-1\" font-bold>\n <NIcon v-if=\"icon\" :icon=\"icon\" class=\"n-tip-icon\" />\n <div>\n {{ title }}\n </div>\n </div>\n <div>\n <slot>\n <ContentSlot :use=\"$slots.default\" unwrap=\"p\" />\n </slot>\n </div>\n </div>\n</template>\n","<template>\n <HelpTip\n title=\"Performance Tip\"\n icon=\"carbon-meter\"\n n=\"lime6 dark:lime5\"\n >\n <slot />\n </HelpTip>\n</template>\n","# Plugins\n\nNuxt plugins allow you to extend the functionality of the Nuxt runtime and the Vue instance. You can add plugins to the `plugins/` directory and they will be automatically imported and registered.\n\n<HelpTipPerformance>\nPlugins always run before your application's runtime. The loading time of each plugin will directly impact your application's initial loading time.\n</HelpTipPerformance>\n\n[Learn more in the documentation](https://nuxt.com/docs/guide/directory-structure/plugins)\n","import { defineComponent as _defineComponent } from 'vue'\nimport { resolveComponent as _resolveComponent, withCtx as _withCtx, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createBlock as _createBlock, createVNode as _createVNode } from \"vue\"\nimport { ssrRenderComponent as _ssrRenderComponent, ssrRenderList as _ssrRenderList } from \"vue/server-renderer\"\n\nimport type { PluginInfoWithMetic } from '@nuxt/devtools-kit/types'\nimport { computed } from 'vue'\nimport { definePageMeta } from '#imports'\nimport { useClient } from '~/composables/client'\nimport { useServerApp } from '~/composables/state'\n\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'plugins',\n __ssrInlineRender: true,\n setup(__props) {\n\ndefinePageMeta({\n icon: 'carbon-plug',\n title: 'Plugins',\n category: 'analyze',\n})\n\nconst app = useServerApp()\nconst client = useClient()\n\nconst plugins = computed((): PluginInfoWithMetic[] => {\n const plugins = app.value?.plugins || []\n const metics = client.value?.metrics.clientPlugins() || []\n\n return plugins.map((plugin) => {\n const p = typeof plugin === 'string' ? { src: plugin } : plugin\n return {\n ...p,\n metric: metics.find(m => m.src === p.src || m.src.startsWith(p.src)),\n }\n })\n})\n\nconst totalTime = computed(() => {\n const metics = client.value?.metrics.clientPlugins() || []\n const minStart = Math.min(...metics.map(m => m.start))\n const maxEnd = Math.max(...metics.map(m => m.end))\n return maxEnd - minStart\n})\n\nreturn (_ctx: any,_push: any,_parent: any,_attrs: any) => {\n const _component_NSectionBlock = _resolveComponent(\"NSectionBlock\")!\n const _component_PluginItem = _resolveComponent(\"PluginItem\")!\n const _component_DurationDisplay = _resolveComponent(\"DurationDisplay\")!\n const _component_HelpFab = _resolveComponent(\"HelpFab\")!\n const _component_DocsPlugins = _resolveComponent(\"DocsPlugins\")!\n\n _push(`<!--[-->`)\n _push(_ssrRenderComponent(_component_NSectionBlock, {\n icon: \"carbon-plug\",\n text: \"Plugins\",\n description: `Total plugins: ${plugins.value.length}`\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<div pt4${_scopeId}><!--[-->`)\n _ssrRenderList(plugins.value, (plugin, idx) => {\n _push(_ssrRenderComponent(_component_PluginItem, {\n key: plugin.src,\n plugin: plugin,\n index: idx + 1,\n \"ml--4\": \"\",\n \"border-base\": \"\",\n py2: \"\",\n class: idx ? 'border-t' : ''\n }, null, _parent, _scopeId))\n })\n _push(`<!--]--><div class=\"text-sm\" flex=\"~ gap-1 items-center justify-start\" mt-3${\n _scopeId\n }><div i-carbon-timer text-lg op75${\n _scopeId\n }></div><span op50${\n _scopeId\n }>Total execution time:</span>`)\n _push(_ssrRenderComponent(_component_DurationDisplay, {\n duration: totalTime.value,\n factor: 10\n }, null, _parent, _scopeId))\n _push(`</div></div>`)\n } else {\n return [\n _createVNode(\"div\", { pt4: \"\" }, [\n (_openBlock(true), _createBlock(_Fragment, null, _renderList(plugins.value, (plugin, idx) => {\n return (_openBlock(), _createBlock(_component_PluginItem, {\n key: plugin.src,\n plugin: plugin,\n index: idx + 1,\n \"ml--4\": \"\",\n \"border-base\": \"\",\n py2: \"\",\n class: idx ? 'border-t' : ''\n }, null, 8, [\"plugin\", \"index\", \"class\"]))\n }), 128)),\n _createVNode(\"div\", {\n class: \"text-sm\",\n flex: \"~ gap-1 items-center justify-start\",\n \"mt-3\": \"\"\n }, [\n _createVNode(\"div\", {\n \"i-carbon-timer\": \"\",\n \"text-lg\": \"\",\n op75: \"\"\n }),\n _createVNode(\"span\", { op50: \"\" }, \"Total execution time:\"),\n _createVNode(_component_DurationDisplay, {\n duration: totalTime.value,\n factor: 10\n }, null, 8, [\"duration\"])\n ])\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_DocsPlugins, null, null, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_DocsPlugins)\n ]\n }\n }),\n _: 1\n }, _parent))\n _push(`<!--]-->`)\n}\n}\n\n})","<script setup lang=\"ts\">\nimport type { PluginInfoWithMetic } from '@nuxt/devtools-kit/types'\nimport { computed } from 'vue'\nimport { definePageMeta } from '#imports'\nimport { useClient } from '~/composables/client'\nimport { useServerApp } from '~/composables/state'\n\ndefinePageMeta({\n icon: 'carbon-plug',\n title: 'Plugins',\n category: 'analyze',\n})\n\nconst app = useServerApp()\nconst client = useClient()\n\nconst plugins = computed((): PluginInfoWithMetic[] => {\n const plugins = app.value?.plugins || []\n const metics = client.value?.metrics.clientPlugins() || []\n\n return plugins.map((plugin) => {\n const p = typeof plugin === 'string' ? { src: plugin } : plugin\n return {\n ...p,\n metric: metics.find(m => m.src === p.src || m.src.startsWith(p.src)),\n }\n })\n})\n\nconst totalTime = computed(() => {\n const metics = client.value?.metrics.clientPlugins() || []\n const minStart = Math.min(...metics.map(m => m.start))\n const maxEnd = Math.max(...metics.map(m => m.end))\n return maxEnd - minStart\n})\n</script>\n\n<template>\n <NSectionBlock\n icon=\"carbon-plug\"\n text=\"Plugins\"\n :description=\"`Total plugins: ${plugins.length}`\"\n >\n <div pt4>\n <PluginItem\n v-for=\"plugin, idx of plugins\"\n :key=\"plugin.src\"\n :plugin=\"plugin\"\n :index=\"idx + 1\"\n ml--4 border-base py2 :class=\"idx ? 'border-t' : ''\"\n />\n\n <div class=\"text-sm\" flex=\"~ gap-1 items-center justify-start\" mt-3>\n <div i-carbon-timer text-lg op75 />\n <span op50>Total execution time:</span>\n <DurationDisplay :duration=\"totalTime\" :factor=\"10\" />\n </div>\n </div>\n </NSectionBlock>\n\n <HelpFab>\n <DocsPlugins />\n </HelpFab>\n</template>\n"],"version":3}
@@ -0,0 +1 @@
1
+ {"file":"ready-BQ1fhXgL.js","mappings":"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","names":["useRoute","START_LOCATION"],"sources":["../../../../../../../../../../../node_modules/.pnpm/nuxt-nightly@5.0.0-29806258.d070492f_@oxc-project+types@0.148.0_@parcel+watcher@2.6.0_@_957e8ef33542258853c773b09ad5865f/node_modules/nuxt-nightly/dist/app/utils/http-status.js","../../../../../../../../../../../node_modules/.pnpm/nuxt-nightly@5.0.0-29806258.d070492f_@oxc-project+types@0.148.0_@parcel+watcher@2.6.0_@_957e8ef33542258853c773b09ad5865f/node_modules/nuxt-nightly/dist/app/components/injections.js","../../../../../../../../../../../node_modules/.pnpm/nuxt-nightly@5.0.0-29806258.d070492f_@oxc-project+types@0.148.0_@parcel+watcher@2.6.0_@_957e8ef33542258853c773b09ad5865f/node_modules/nuxt-nightly/dist/app/diagnostics/navigation.js","../../../../../../../../../../../node_modules/.pnpm/nuxt-nightly@5.0.0-29806258.d070492f_@oxc-project+types@0.148.0_@parcel+watcher@2.6.0_@_957e8ef33542258853c773b09ad5865f/node_modules/nuxt-nightly/dist/app/composables/router.js","../../../../../../../../../../../node_modules/.pnpm/nuxt-nightly@5.0.0-29806258.d070492f_@oxc-project+types@0.148.0_@parcel+watcher@2.6.0_@_957e8ef33542258853c773b09ad5865f/node_modules/nuxt-nightly/dist/app/composables/error.js","../../../../../../../../../../../node_modules/.pnpm/nuxt-nightly@5.0.0-29806258.d070492f_@oxc-project+types@0.148.0_@parcel+watcher@2.6.0_@_957e8ef33542258853c773b09ad5865f/node_modules/nuxt-nightly/dist/app/components/utils.js"],"sourcesContent":["//#region src/app/utils/http-status.ts\nconst DISALLOWED_STATUS_CHARS = /[^\\t\\u0020-\\u007E]/g;\n/**\n* Clamp a status code to the valid HTTP range, falling back to `defaultStatusCode`.\n*\n* @internal\n*/\nfunction sanitizeStatusCode(statusCode, defaultStatusCode = 200) {\n\tif (!statusCode) return defaultStatusCode;\n\tif (typeof statusCode === \"string\") statusCode = Number(statusCode);\n\tif (Number.isNaN(statusCode) || statusCode < 100 || statusCode > 599) return defaultStatusCode;\n\treturn statusCode;\n}\n/**\n* Strip characters that are not permitted in an HTTP reason phrase.\n*\n* @internal\n*/\nfunction sanitizeStatusMessage(statusMessage = \"\") {\n\treturn statusMessage.replace(DISALLOWED_STATUS_CHARS, \"\");\n}\n//#endregion\nexport { sanitizeStatusCode, sanitizeStatusMessage };\n","//#region src/app/components/injections.ts\nconst LayoutMetaSymbol = Symbol(\"layout-meta\");\nconst LayoutSymbol = Symbol(\"layout\");\nconst PageRouteSymbol = Symbol(\"route\");\n//#endregion\nexport { LayoutMetaSymbol, LayoutSymbol, PageRouteSymbol };\n","import { docsBase, prodReporters, reporters } from \"./_shared.js\";\nimport { defineDiagnostics, defineProdDiagnostics } from \"nostics\";\n//#region src/app/diagnostics/navigation.ts\n/**\n* E2xxx\n* Navigation / routing / middleware runtime diagnostics.\n*/\nconst navigationDiagnostics = !import.meta.dev ? /* #__PURE__ */ defineProdDiagnostics({\n\tdocsBase,\n\treporters: prodReporters\n}) : /* #__PURE__ */ defineDiagnostics({\n\tdocsBase,\n\treporters,\n\tcodes: {\n\t\tNUXT_E2001: {\n\t\t\twhy: (p) => `Navigating to external URL \\`${p.toPath}\\` is not allowed by default.`,\n\t\t\tfix: (p) => `Use \\`navigateTo('${p.toPath}', { external: true })\\` to allow external navigation.`\n\t\t},\n\t\tNUXT_E2002: {\n\t\t\twhy: (p) => `Cannot navigate to URL \\`${p.toPath}\\` with \\`${p.protocol}\\` protocol.`,\n\t\t\tfix: \"Script protocols (e.g. `javascript:`) are blocked for security. Use a valid `http:` or `https:` URL.\"\n\t\t},\n\t\tNUXT_E2003: {\n\t\t\twhy: \"`abortNavigation()` was called outside a route middleware handler.\",\n\t\t\tfix: \"Move this call inside a route middleware defined with `defineNuxtRouteMiddleware()` or `addRouteMiddleware()`.\"\n\t\t},\n\t\tNUXT_E2004: {\n\t\t\twhy: (p) => `Unknown route middleware: '${p.entry}'.`,\n\t\t\tfix: (p) => `Create a \\`middleware/${p.entry}.ts\\` file, or check the middleware name for typos.${p.validMiddleware?.length ? ` Valid middleware: ${p.validMiddleware.map((mw) => `'${mw}'`).join(\", \")}.` : \"\"}`\n\t\t},\n\t\tNUXT_E2005: {\n\t\t\twhy: (p) => `\\`useRoute\\` was called within middleware${p.middleware ? ` (\\`${p.middleware}\\`)` : \"\"}. This may lead to misleading results.\\n${p.trace}`,\n\t\t\tfix: \"Use the `to` and `from` arguments passed to the middleware function instead of `useRoute()`.\"\n\t\t},\n\t\tNUXT_E2006: {\n\t\t\twhy: \"No route middleware passed to `addRouteMiddleware`.\",\n\t\t\tfix: \"Pass a middleware function as the second argument: `addRouteMiddleware('name', (to, from) => { ... })`.\",\n\t\t\tdocs: false\n\t\t},\n\t\tNUXT_E2007: {\n\t\t\twhy: \"`setPageLayout` was called to change the layout on the server within a component, which will cause hydration errors.\",\n\t\t\tfix: \"Call `setPageLayout` in a route middleware or plugin instead of inside a component's `setup()`.\"\n\t\t},\n\t\tNUXT_E2008: {\n\t\t\twhy: \"`setPageLayout` was called to change the layout during hydration, which will cause hydration errors.\",\n\t\t\tfix: \"Set the layout in `definePageMeta` or in a route middleware before hydration occurs.\",\n\t\t\tdocs: false\n\t\t},\n\t\tNUXT_E2009: {\n\t\t\twhy: \"A middleware error was thrown but no error handlers are registered to handle it.\",\n\t\t\tfix: \"Register an error handler with `router.onError()` or add error handling within your middleware.\",\n\t\t\tdocs: false\n\t\t},\n\t\tNUXT_E2010: {\n\t\t\twhy: (p) => `\\`reloadNuxtApp\\` cannot navigate to \\`${p.path}\\` because it is on a different host.`,\n\t\t\tfix: \"Pass a path on the same host, or use `navigateTo(path, { external: true })` for cross-origin navigation.\",\n\t\t\tdocs: false\n\t\t},\n\t\tNUXT_E2011: {\n\t\t\twhy: (p) => `\\`<${p.componentName}>\\` refused to navigate to a URL with a script-capable protocol.`,\n\t\t\tfix: \"Script protocols (e.g. `javascript:`) are blocked for security. Use a valid `http:` or `https:` URL.\",\n\t\t\tdocs: false\n\t\t}\n\t}\n});\n//#endregion\nexport { navigationDiagnostics };\n","import { isInComponentSetup, useNuxtApp, useRuntimeConfig } from \"../nuxt.js\";\nimport { getUserTrace } from \"../utils.js\";\nimport { sanitizeStatusCode } from \"../utils/http-status.js\";\nimport { PageRouteSymbol } from \"../components/injections.js\";\nimport { navigationDiagnostics } from \"../diagnostics/navigation.js\";\nimport { createError, showError } from \"./error.js\";\nimport { getCurrentInstance, getCurrentScope, hasInjectionContext, inject, onScopeDispose } from \"vue\";\nimport { decodePath, hasProtocol, isScriptProtocol, joinURL, parseQuery, parseURL, withQuery } from \"ufo\";\n//#region src/app/composables/router.ts\n/** @since 3.0.0 */\nconst useRouter = (() => {\n\treturn useNuxtApp()?.$router;\n});\n/**\n* Whether the current effect scope is (a descendant of) the component instance's scope.\n* A detached scope (e.g. `createSharedComposable`) outlives the component, so the\n* per-page route injected there would freeze after navigation (#18903).\n*/\nfunction getParentScope(scope) {\n\tconst internal = scope;\n\treturn internal.parent ?? internal.subs?.sub;\n}\nfunction isScopeWithinInstance(instance) {\n\tconst instanceScope = instance.scope;\n\tlet scope = getCurrentScope();\n\twhile (scope) {\n\t\tif (scope === instanceScope) return true;\n\t\tscope = getParentScope(scope);\n\t}\n\treturn false;\n}\n/** @since 3.0.0 */\nconst useRoute = (() => {\n\tif (import.meta.dev && !getCurrentInstance() && isProcessingMiddleware()) {\n\t\tconst nuxtApp = useNuxtApp();\n\t\tif (!isInComponentSetup(nuxtApp)) {\n\t\t\tconst middleware = nuxtApp._processingMiddleware;\n\t\t\tconst trace = getUserTrace().map(({ source, line, column }) => `at ${source}:${line}:${column}`).join(\"\\n\");\n\t\t\tnavigationDiagnostics.NUXT_E2005({\n\t\t\t\tmiddleware: typeof middleware === \"string\" ? middleware : void 0,\n\t\t\t\ttrace\n\t\t\t});\n\t\t}\n\t}\n\tif (hasInjectionContext()) {\n\t\tconst instance = getCurrentInstance();\n\t\tif (!instance || isScopeWithinInstance(instance)) return inject(PageRouteSymbol, useNuxtApp()._route);\n\t}\n\treturn useNuxtApp()._route;\n});\n/** @since 3.0.0 */\nconst onBeforeRouteLeave = (guard) => {\n\tconst unsubscribe = useRouter().beforeEach((to, from, next) => {\n\t\tif (to === from) return;\n\t\treturn guard(to, from, next);\n\t});\n\tonScopeDispose(unsubscribe);\n};\n/** @since 3.0.0 */\nconst onBeforeRouteUpdate = (guard) => {\n\tconst unsubscribe = useRouter().beforeEach(guard);\n\tonScopeDispose(unsubscribe);\n};\n/** @since 3.0.0 */\n/* @__NO_SIDE_EFFECTS__ */\nfunction defineNuxtRouteMiddleware(middleware) {\n\treturn middleware;\n}\n/** @since 3.0.0 */\nconst addRouteMiddleware = (name, middleware, options = {}) => {\n\tconst nuxtApp = useNuxtApp();\n\tconst global = options.global || typeof name !== \"string\";\n\tconst mw = typeof name !== \"string\" ? name : middleware;\n\tif (!mw) {\n\t\tnavigationDiagnostics.NUXT_E2006({ cause: name });\n\t\treturn;\n\t}\n\tif (global) nuxtApp._middleware.global.push(mw);\n\telse nuxtApp._middleware.named[name] = mw;\n};\n/** @since 3.0.0 */\nconst isProcessingMiddleware = () => {\n\ttry {\n\t\tif (useNuxtApp()._processingMiddleware) return true;\n\t} catch {\n\t\treturn false;\n\t}\n\treturn false;\n};\nconst HTML_ATTR_UNSAFE_RE = /[&\"'<>]/g;\nconst HTML_ATTR_ENCODE_MAP = {\n\t\"&\": \"&amp;\",\n\t\"\\\"\": \"&quot;\",\n\t\"'\": \"&#x27;\",\n\t\"<\": \"&lt;\",\n\t\">\": \"&gt;\"\n};\nfunction encodeForHtmlAttr(value) {\n\treturn value.replace(HTML_ATTR_UNSAFE_RE, (c) => HTML_ATTR_ENCODE_MAP[c]);\n}\n/**\n* A helper that aids in programmatic navigation within your Nuxt application.\n*\n* Can be called on the server and on the client, within pages, route middleware, plugins, and more.\n* @param {RouteLocationRaw | undefined | null} [to] - The route to navigate to. Accepts a route object, string path, `undefined`, or `null`. Defaults to '/'.\n* @param {NavigateToOptions} [options] - Optional customization for controlling the behavior of the navigation.\n* @returns {Promise<void | NavigationFailure | false> | false | void | RouteLocationRaw} The navigation result, which varies depending on context and options.\n* @see https://nuxt.com/docs/4.x/api/utils/navigate-to\n* @since 3.0.0\n*/\nconst navigateTo = (to, options) => {\n\tto ||= \"/\";\n\tconst isPathForm = typeof to === \"string\" || \"path\" in to;\n\tconst toPath = typeof to === \"string\" ? to : \"path\" in to ? resolveRouteObject(to) : useRouter().resolve(to).href;\n\tif (import.meta.client && options?.open) {\n\t\tconst { protocol } = new URL(toPath, window.location.href);\n\t\tif (protocol && isScriptProtocol(protocol)) throw navigationDiagnostics.NUXT_E2002({\n\t\t\ttoPath,\n\t\t\tprotocol\n\t\t});\n\t\tconst openPath = isPathForm && !hasProtocol(toPath, { acceptRelative: true }) && !toPath.startsWith(\"#\") ? joinURL((/* @__PURE__ */ useRuntimeConfig()).app.baseURL, toPath) : toPath;\n\t\tconst { target = \"_blank\", windowFeatures = {} } = options.open;\n\t\tconst features = [];\n\t\tfor (const [feature, value] of Object.entries(windowFeatures)) if (value !== void 0) features.push(`${feature.toLowerCase()}=${value}`);\n\t\topen(openPath, target, features.join(\", \"));\n\t\treturn Promise.resolve();\n\t}\n\tconst isExternalHost = hasProtocol(toPath, { acceptRelative: true });\n\tconst isExternal = options?.external || isExternalHost;\n\tif (isExternal) {\n\t\tif (!options?.external) throw navigationDiagnostics.NUXT_E2001({ toPath });\n\t\tconst { protocol } = new URL(toPath, import.meta.client ? window.location.href : \"http://localhost\");\n\t\tif (protocol && isScriptProtocol(protocol)) throw navigationDiagnostics.NUXT_E2002({\n\t\t\ttoPath,\n\t\t\tprotocol\n\t\t});\n\t}\n\tconst inMiddleware = isProcessingMiddleware();\n\tif (import.meta.client && !isExternal && inMiddleware) {\n\t\tif (options?.replace) {\n\t\t\tif (typeof to === \"string\") {\n\t\t\t\tconst { pathname, search, hash } = parseURL(to);\n\t\t\t\treturn {\n\t\t\t\t\tpath: pathname,\n\t\t\t\t\t...search && { query: parseQuery(search) },\n\t\t\t\t\t...hash && { hash },\n\t\t\t\t\treplace: true\n\t\t\t\t};\n\t\t\t}\n\t\t\treturn {\n\t\t\t\t...to,\n\t\t\t\treplace: true\n\t\t\t};\n\t\t}\n\t\treturn to;\n\t}\n\tconst router = useRouter();\n\tconst nuxtApp = useNuxtApp();\n\tif (import.meta.server) {\n\t\tif (nuxtApp.ssrContext) {\n\t\t\tconst fullPath = typeof to === \"string\" || isExternal ? toPath : router.resolve(to).fullPath || \"/\";\n\t\t\tconst location = isExternal ? toPath : joinURL((/* @__PURE__ */ useRuntimeConfig()).app.baseURL, fullPath);\n\t\t\tconst redirect = async function(response) {\n\t\t\t\tawait nuxtApp.callHook(\"app:redirected\");\n\t\t\t\tconst encodedHeader = encodeURL(location, isExternalHost);\n\t\t\t\tconst encodedLoc = encodeForHtmlAttr(encodedHeader);\n\t\t\t\tnuxtApp.ssrContext[\"~renderResponse\"] = new Response(`<!DOCTYPE html><html><head><meta http-equiv=\"refresh\" content=\"0; url=${encodedLoc}\"></head></html>`, {\n\t\t\t\t\tstatus: sanitizeStatusCode(options?.redirectCode || 302, 302),\n\t\t\t\t\theaders: { location: encodedHeader }\n\t\t\t\t});\n\t\t\t\treturn response;\n\t\t\t};\n\t\t\tif (!isExternal && inMiddleware) {\n\t\t\t\tlet expectedPath = fullPath;\n\t\t\t\tif (typeof to === \"string\" && toPath.includes(\"?\")) {\n\t\t\t\t\tconst target = router.resolve(to);\n\t\t\t\t\texpectedPath = router.resolve({\n\t\t\t\t\t\tpath: target.path,\n\t\t\t\t\t\tquery: target.query,\n\t\t\t\t\t\thash: target.hash\n\t\t\t\t\t}).fullPath || \"/\";\n\t\t\t\t}\n\t\t\t\trouter.afterEach((final) => final.fullPath === expectedPath ? redirect(false) : void 0);\n\t\t\t\treturn to;\n\t\t\t}\n\t\t\treturn redirect(!inMiddleware ? void 0 : false);\n\t\t}\n\t}\n\tif (isExternal) {\n\t\tnuxtApp._scope.stop();\n\t\tif (options?.replace) location.replace(toPath);\n\t\telse location.href = toPath;\n\t\tif (inMiddleware) {\n\t\t\tif (!nuxtApp.isHydrating) return false;\n\t\t\treturn new Promise(() => {});\n\t\t}\n\t\treturn Promise.resolve();\n\t}\n\tconst encodedTo = typeof to === \"string\" ? encodeRoutePath(to) : to;\n\treturn options?.replace ? router.replace(encodedTo) : router.push(encodedTo);\n};\n/**\n* Produces the render function returned from `setup()` when\n* `experimental.navigateToEarlyReturn` short-circuits after a successful navigation.\n*\n* The returned function renders a placeholder comment both as a client render function\n* and as an inline `ssrRender` (where it is called with a `push` function). On the server\n* it is also assigned to `instance.ssrRender`, because the server renderer prefers the\n* component's compiled `ssrRender` over a render function returned from `setup()`, and the\n* compiled template must not run against the empty setup state left by the early return.\n* @internal\n*/\nfunction _navigateToEarlyReturn() {\n\tconst render = (_ctx, push) => {\n\t\tif (typeof push === \"function\") {\n\t\t\tpush(\"<!---->\");\n\t\t\treturn;\n\t\t}\n\t\treturn null;\n\t};\n\tif (import.meta.server) {\n\t\tconst instance = getCurrentInstance();\n\t\tif (instance) instance.ssrRender = render;\n\t}\n\treturn render;\n}\n/**\n* This will abort navigation within a Nuxt route middleware handler.\n* @since 3.0.0\n*/\nconst abortNavigation = (err) => {\n\tif (import.meta.dev && !isProcessingMiddleware()) throw navigationDiagnostics.NUXT_E2003();\n\tif (!err) return false;\n\terr = createError(err);\n\tif (err.fatal) useNuxtApp().runWithContext(() => showError(err));\n\tthrow err;\n};\n/**\n* Sets the layout for the current page.\n* @since 3.0.0\n*/\nconst setPageLayout = (layout, props) => {\n\tconst nuxtApp = useNuxtApp();\n\tif (import.meta.server) {\n\t\tif (import.meta.dev && isInComponentSetup(nuxtApp) && nuxtApp.payload.state._layout !== layout) navigationDiagnostics.NUXT_E2007();\n\t\tnuxtApp.payload.state._layout = layout;\n\t\tnuxtApp.payload.state._layoutProps = props;\n\t}\n\tif (import.meta.dev && nuxtApp.isHydrating && nuxtApp.payload.serverRendered && nuxtApp.payload.state._layout !== layout) navigationDiagnostics.NUXT_E2008();\n\tconst inMiddleware = isProcessingMiddleware();\n\tconst middlewareTo = import.meta.server && inMiddleware && nuxtApp._middlewareTo;\n\tif (middlewareTo) {\n\t\tmiddlewareTo.meta.layout = layout;\n\t\tmiddlewareTo.meta.layoutProps = props;\n\t}\n\tif (inMiddleware || import.meta.server || nuxtApp.isHydrating) {\n\t\tconst unsubscribe = useRouter().beforeResolve((to) => {\n\t\t\tto.meta.layout = layout;\n\t\t\tto.meta.layoutProps = props;\n\t\t\tunsubscribe();\n\t\t});\n\t}\n\tif (!inMiddleware) {\n\t\tconst route = useRoute();\n\t\troute.meta.layout = layout;\n\t\troute.meta.layoutProps = props;\n\t\tif (import.meta.client) {\n\t\t\tconst unsubscribe = useRouter().beforeResolve((to, from) => {\n\t\t\t\tif (to.path === from.path) {\n\t\t\t\t\tto.meta.layout = layout;\n\t\t\t\t\tto.meta.layoutProps = props;\n\t\t\t\t} else unsubscribe();\n\t\t\t});\n\t\t\tonScopeDispose(unsubscribe, true);\n\t\t}\n\t}\n};\n/**\n* @internal\n*/\nfunction resolveRouteObject(to) {\n\treturn withQuery(to.path || \"\", to.query || {}) + (to.hash || \"\");\n}\n/**\n* @internal\n*/\nfunction encodeURL(location, isExternalHost = false) {\n\tconst url = new URL(location, \"http://localhost\");\n\tif (!isExternalHost) return url.pathname.replace(/^\\/{2,}/, \"/\") + url.search + url.hash;\n\tif (location.startsWith(\"//\")) return url.toString().replace(url.protocol, \"\");\n\treturn url.toString();\n}\n/**\n* Encode the pathname of a route location string. Ensures decoded paths like\n* `/café` are percent-encoded to match vue-router's encoded route records.\n* Already-encoded paths are not double-encoded.\n* @internal\n*/\nfunction encodeRoutePath(url) {\n\tconst parsed = parseURL(url);\n\treturn encodeVueRouterPath(decodePath(parsed.pathname)) + parsed.search + parsed.hash;\n}\nconst ENC_PIPE_RE = /%7C/g;\nconst ENC_BRACKET_OPEN_RE = /%5B/g;\nconst ENC_BRACKET_CLOSE_RE = /%5D/g;\nconst ENC_ENC_SLASH_RE = /%252F/gi;\nconst HASH_RE = /#/g;\nconst QUESTION_MARK_RE = /\\?/g;\n/**\n* Apply vue-router's own path encoding, which leaves sub-delimiters like `&`\n* and `+` literal. This must stay in sync with `encodeVueRouterPath` in\n* `unrouting`, which encodes the route records we need to match against.\n*/\nfunction encodeVueRouterPath(value) {\n\treturn encodeURI(value).replace(ENC_PIPE_RE, \"|\").replace(ENC_BRACKET_OPEN_RE, \"[\").replace(ENC_BRACKET_CLOSE_RE, \"]\").replace(HASH_RE, \"%23\").replace(QUESTION_MARK_RE, \"%3F\").replace(ENC_ENC_SLASH_RE, \"%2F\");\n}\n//#endregion\nexport { _navigateToEarlyReturn, abortNavigation, addRouteMiddleware, defineNuxtRouteMiddleware, encodeRoutePath, encodeURL, navigateTo, onBeforeRouteLeave, onBeforeRouteUpdate, resolveRouteObject, setPageLayout, useRoute, useRouter };\n","import { appDiagnostics } from \"../diagnostics/core.js\";\nimport { useNuxtApp } from \"../nuxt.js\";\nimport { isBotUserAgent } from \"../utils.js\";\nimport { sanitizeStatusCode, sanitizeStatusMessage } from \"../utils/http-status.js\";\nimport { useRouter } from \"./router.js\";\nimport { toRef } from \"vue\";\n//#region src/app/composables/error.ts\nconst NUXT_ERROR_SIGNATURE = \"__nuxt_error\";\n/** @since 3.0.0 */\nconst useError = /* @__NO_SIDE_EFFECTS__ */ () => toRef(useNuxtApp().payload, \"error\");\n/** @since 3.0.0 */\nconst showError = (error) => {\n\tconst nuxtError = createError(error);\n\ttry {\n\t\tconst error = /* @__PURE__ */ useError();\n\t\tif (import.meta.client) useNuxtApp().hooks.callHook(\"app:error\", nuxtError);\n\t\terror.value ||= nuxtError;\n\t} catch {\n\t\tthrow nuxtError;\n\t}\n\treturn nuxtError;\n};\n/**\n* Notify the app of an error caught for a crawler without rendering the error\n* page, so the bot indexes the server-rendered HTML instead (#32137, #35338).\n*\n* @internal\n*/\nconst _notifyCrawlerError = (nuxtApp, error) => {\n\tconst result = nuxtApp.callHook(\"app:error\", createError(error));\n\tappDiagnostics.NUXT_E1012({\n\t\tuserAgent: navigator.userAgent,\n\t\tcause: error\n\t});\n\treturn result;\n};\n/**\n* Show the error page unless the current client is a crawler, in which case the\n* bot receives the already server-rendered HTML instead (#32137, #35338).\n*\n* @internal\n*/\nconst _showErrorUnlessCrawler = async (nuxtApp, error) => {\n\tif (import.meta.client && isBotUserAgent(navigator.userAgent)) {\n\t\tawait _notifyCrawlerError(nuxtApp, error);\n\t\treturn;\n\t}\n\tawait nuxtApp.runWithContext(() => showError(error));\n};\n/** @since 3.0.0 */\nconst clearError = async (options = {}) => {\n\tconst nuxtApp = useNuxtApp();\n\tconst error = /* @__PURE__ */ useError();\n\tnuxtApp.callHook(\"app:error:cleared\", options);\n\tif (options.redirect) await useRouter().replace(options.redirect);\n\terror.value = void 0;\n\tif (import.meta.dev && import.meta.client) for (const el of document.querySelectorAll(\"nuxt-error-overlay\")) el.remove();\n};\n/** @since 3.0.0 */\nconst isNuxtError = (error) => {\n\treturn !!error && typeof error === \"object\" && \"__nuxt_error\" in error;\n};\nvar NuxtError = class extends Error {\n\t[NUXT_ERROR_SIGNATURE] = true;\n\t/**\n\t* h3 recognises its own errors by constructor name rather than `instanceof`,\n\t* so errors thrown during SSR are only mapped to the right HTTP response if\n\t* `name` stays `HTTPError`.\n\t*/\n\tget name() {\n\t\treturn \"HTTPError\";\n\t}\n\t/** HTTP status code in range [100...599] */\n\tstatus;\n\t/** HTTP status text (reason phrase) */\n\tstatusText;\n\t/** Additional HTTP headers to be sent with the error response. */\n\theaders;\n\t/** Additional data attached to the error JSON body under `data`. */\n\tdata;\n\t/** Additional top-level properties to attach to the error JSON body. */\n\tbody;\n\t/** Whether the error was not handled by the application. */\n\tunhandled;\n\tfatal;\n\tcause;\n\tconstructor(message = \"\", opts = {}) {\n\t\tconst details = (typeof message === \"string\" ? opts : message) || {};\n\t\tconst cause = details.cause;\n\t\tconst status = sanitizeStatusCode(details.status || details.statusCode || cause?.status || cause?.statusCode, 500);\n\t\tconst statusText = sanitizeStatusMessage(details.statusText || details.statusMessage || cause?.statusText || cause?.statusMessage);\n\t\tsuper((typeof message === \"string\" ? message : \"\") || details.message || cause?.message || details.statusText || details.statusMessage || [\n\t\t\t\"HTTPError\",\n\t\t\tstatus,\n\t\t\tstatusText\n\t\t].filter(Boolean).join(\" \"), { cause: details });\n\t\tthis.status = status;\n\t\tthis.statusText = statusText || void 0;\n\t\tconst headers = details.headers || cause?.headers;\n\t\tthis.headers = headers ? new Headers(headers) : void 0;\n\t\tthis.unhandled = details.unhandled ?? cause?.unhandled ?? void 0;\n\t\tthis.data = details.data;\n\t\tthis.body = details.body;\n\t\tthis.cause = details instanceof Error ? details : details.cause;\n\t\tthis.fatal = details.fatal ?? !!this.unhandled;\n\t}\n\t/** @deprecated use `status` */\n\tget statusCode() {\n\t\treturn this.status;\n\t}\n\t/** @deprecated use `statusText` */\n\tget statusMessage() {\n\t\treturn this.statusText;\n\t}\n\ttoJSON() {\n\t\tconst unhandled = this.unhandled;\n\t\treturn {\n\t\t\tstatus: this.status,\n\t\t\tstatusText: this.statusText,\n\t\t\tunhandled,\n\t\t\tmessage: unhandled ? \"HTTPError\" : this.message,\n\t\t\tdata: unhandled ? void 0 : this.data,\n\t\t\t...unhandled ? void 0 : this.body\n\t\t};\n\t}\n};\n/** @since 3.0.0 */\nconst createError = (error) => {\n\tif (isNuxtError(error)) return error;\n\treturn typeof error === \"string\" ? new NuxtError(error) : new NuxtError(error.message ?? \"\", error);\n};\n//#endregion\nexport { NUXT_ERROR_SIGNATURE, NuxtError, _notifyCrawlerError, _showErrorUnlessCrawler, clearError, createError, isNuxtError, showError, useError };\n","import { renderDiagnostics } from \"../diagnostics/render.js\";\nimport { MAX_VFOR_LENGTH } from \"./vfor.js\";\nimport { Transition, createStaticVNode, h } from \"vue\";\nimport { isArray, isObject, isPromise, isString } from \"@vue/shared\";\nimport { defu } from \"defu\";\nimport { START_LOCATION } from \"#build/pages\";\n//#region src/app/components/utils.ts\n/**\n* Internal utility\n* @private\n*/\nconst _wrapInTransition = (props, children) => {\n\treturn { default: () => import.meta.client && props ? h(Transition, props === true ? {} : props, children) : children.default?.() };\n};\nconst ROUTE_KEY_PARENTHESES_RE = /(:\\w+)\\([^)]+\\)/g;\nconst ROUTE_KEY_SYMBOLS_RE = /(:\\w+)[?+*]/g;\nconst ROUTE_KEY_NORMAL_RE = /:\\w+/g;\nfunction generateRouteKey(route) {\n\tconst source = route?.meta.key ?? route.path.replace(ROUTE_KEY_PARENTHESES_RE, \"$1\").replace(ROUTE_KEY_SYMBOLS_RE, \"$1\").replace(ROUTE_KEY_NORMAL_RE, (r) => route.params[r.slice(1)]?.toString() || \"\");\n\treturn typeof source === \"function\" ? source(route) : source;\n}\n/**\n* Utility used within router guards\n* return true if the route has been changed with a page change during navigation\n*/\nfunction isChangingPage(to, from) {\n\tif (to === from || from === START_LOCATION) return false;\n\tif (generateRouteKey(to) !== generateRouteKey(from)) return true;\n\tif (to.matched.every((comp, index) => comp.components && comp.components.default === from.matched[index]?.components?.default)) return false;\n\treturn true;\n}\n/**\n* Detect a vapor slot function passed into a vdom component via interop.\n*\n* Vapor slots register `__vapor`/`__vs` markers on the slot function itself, so\n* we can recognise them without invoking the slot. Calling a vapor slot to\n* inspect the shape of its returned VNodes is not a safe dry run (its content is\n* not expressed as a VNode tree), so callers use this to skip VNode-shape\n* heuristics rather than silently make a wrong decision.\n*/\nfunction isVaporSlot(slot) {\n\treturn !!slot && (!!slot.__vapor || !!slot.__vs);\n}\nconst VALID_TAG_RE = /^[a-z][a-z0-9-]*$/i;\n/** Return `tag` if it is a safe HTML tag name, otherwise `fallback`. */\nfunction sanitizeTag(tag, fallback) {\n\treturn tag && VALID_TAG_RE.test(tag) ? tag : fallback;\n}\n/**\n* create buffer retrieved from @vue/server-renderer\n* @see https://github.com/vuejs/core/blob/9617dd4b2abc07a5dc40de6e5b759e851b4d0da1/packages/server-renderer/src/render.ts#L57\n* @private\n*/\nfunction createBuffer() {\n\tlet appendable = false;\n\tconst buffer = [];\n\treturn {\n\t\tgetBuffer() {\n\t\t\treturn buffer;\n\t\t},\n\t\tpush(item) {\n\t\t\tconst isStringItem = isString(item);\n\t\t\tif (appendable && isStringItem) buffer[buffer.length - 1] += item;\n\t\t\telse buffer.push(item);\n\t\t\tappendable = isStringItem;\n\t\t\tif (isPromise(item) || isArray(item) && item.hasAsync) buffer.hasAsync = true;\n\t\t}\n\t};\n}\n/**\n* helper for NuxtIsland to generate a correct array for scoped data\n*/\nfunction vforToArray(source) {\n\tif (isArray(source)) return source;\n\telse if (isString(source)) return source.split(\"\");\n\telse if (typeof source === \"number\") {\n\t\tif (import.meta.dev && !Number.isInteger(source)) renderDiagnostics.NUXT_E4013({ source });\n\t\tif (import.meta.dev && source > 1e4) renderDiagnostics.NUXT_E4017({\n\t\t\tsource,\n\t\t\tmax: MAX_VFOR_LENGTH\n\t\t});\n\t\tconst length = source > 1e4 ? MAX_VFOR_LENGTH : source;\n\t\tconst array = [];\n\t\tfor (let i = 0; i < length; i++) array[i] = i + 1;\n\t\treturn array;\n\t} else if (isObject(source)) {\n\t\tif (source[Symbol.iterator]) return Array.from(source, (item) => item);\n\t\telse {\n\t\t\tconst keys = Object.keys(source);\n\t\t\tconst array = new Array(keys.length);\n\t\t\tfor (let i = 0, l = keys.length; i < l; i++) {\n\t\t\t\tconst key = keys[i];\n\t\t\t\tarray[i] = source[key];\n\t\t\t}\n\t\t\treturn array;\n\t\t}\n\t}\n\treturn [];\n}\n/**\n* Retrieve the HTML content from an element\n* Handles `<!--[-->` Fragment elements\n* @param element the element to retrieve the HTML\n* @param withoutSlots purge all slots from the HTML string retrieved\n* @returns {string[]|undefined} An array of string which represent the content of each element. Use `.join('')` to retrieve a component vnode.el HTML\n*/\nfunction getFragmentHTML(element, withoutSlots = false) {\n\tif (element) {\n\t\tif (element.nodeName === \"#comment\" && element.nodeValue === \"[\") return getFragmentChildren(element, [], withoutSlots);\n\t\treturn [getElementHTML(element, withoutSlots)];\n\t}\n}\nfunction getFragmentChildren(element, blocks = [], withoutSlots = false) {\n\tlet current = element;\n\twhile (current?.nodeName && !isEndFragment(current)) {\n\t\tif (!isStartFragment(current)) blocks.push(getElementHTML(current, withoutSlots));\n\t\tcurrent = current.nextSibling;\n\t}\n\treturn blocks;\n}\nfunction getElementHTML(element, withoutSlots) {\n\tif (!withoutSlots || !element.querySelector?.(\"[data-island-slot]\")) return element.outerHTML;\n\tconst template = element.ownerDocument.createElement(\"template\");\n\ttemplate.innerHTML = element.outerHTML;\n\ttemplate.content.querySelectorAll(\"[data-island-slot]\").forEach((n) => {\n\t\tn.innerHTML = \"\";\n\t});\n\treturn template.innerHTML;\n}\n/**\n* Return a static vnode from an element\n* Default to a div if the element is not found and if a fallback is not provided\n* @param el renderer node retrieved from the component internal instance\n* @param staticNodeFallback fallback string to use if the element is not found. Must be a valid HTML string\n*/\nfunction elToStaticVNode(el, staticNodeFallback) {\n\tconst fragment = el ? getFragmentHTML(el) : staticNodeFallback ? [staticNodeFallback] : void 0;\n\tif (fragment) return createStaticVNode(fragment.join(\"\"), fragment.length);\n\treturn h(\"div\");\n}\nfunction isStartFragment(element) {\n\treturn element.nodeName === \"#comment\" && element.nodeValue === \"[\";\n}\nfunction isEndFragment(element) {\n\treturn element.nodeName === \"#comment\" && element.nodeValue === \"]\";\n}\nfunction toArray(value) {\n\treturn Array.isArray(value) ? value : [value];\n}\n/**\n* Internal utility\n* @private\n*/\nfunction _mergeTransitionProps(routeProps) {\n\tconst _props = [];\n\tfor (const prop of routeProps) {\n\t\tif (!prop) continue;\n\t\t_props.push({\n\t\t\t...prop,\n\t\t\tonAfterLeave: prop.onAfterLeave ? toArray(prop.onAfterLeave) : void 0,\n\t\t\tonBeforeLeave: prop.onBeforeLeave ? toArray(prop.onBeforeLeave) : void 0\n\t\t});\n\t}\n\treturn defu(..._props);\n}\n//#endregion\nexport { _mergeTransitionProps, _wrapInTransition, createBuffer, elToStaticVNode, getFragmentHTML, isChangingPage, isEndFragment, isStartFragment, isVaporSlot, sanitizeTag, toArray, vforToArray };\n"],"version":3}
@@ -0,0 +1 @@
1
+ {"file":"runtime-configs-iL68LNkj.js","mappings":"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","names":[],"sources":["../../../../../../../../components/docs/runtime-configs.md","../../../../../../../../pages/modules/runtime-configs.vue?vue&type=script&setup=true&lang.ts","../../../../../../../../pages/modules/runtime-configs.vue"],"sourcesContent":["# Runtime Configs\n\nNuxt provides a runtime config API to expose configuration within your application and server routes, with the ability to update it at runtime by setting environment variables.\n\nIn Nuxt DevTools, the editor allows you to edit the runtime config temporarily to see how the changes affect your application. To update them, you might want to update your `nuxt.config.js` file, or check more details in the documentation.\n\n[Learn more in the documentation](https://nuxt.com/docs/guide/going-further/runtime-config)\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode } from \"vue\"\nimport { ssrRenderComponent as _ssrRenderComponent } from \"vue/server-renderer\"\n\nimport { computed } from 'vue'\nimport { definePageMeta } from '#imports'\nimport { useClient } from '~/composables/client'\nimport { useServerRuntimeConfig } from '~/composables/state'\n\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'runtime-configs',\n __ssrInlineRender: true,\n setup(__props) {\n\ndefinePageMeta({\n icon: 'carbon-settings-services',\n title: 'Runtime Configs',\n category: 'analyze',\n show: () => {\n const client = useClient()\n return () => !!client.value\n },\n order: 6,\n})\n\nconst client = useClient()\nconst runtimeConfig = useServerRuntimeConfig()\nconst payload = computed(() => client.value?.nuxt.payload)\nconst revision = computed(() => client.value?.revision.value)\n\nconst privateConfig = computed(() => {\n const clone = {\n ...runtimeConfig.value,\n }\n delete clone.public\n delete clone.app\n return clone\n})\n\nreturn (_ctx: any,_push: any,_parent: any,_attrs: any) => {\n const _component_NSectionBlock = _resolveComponent(\"NSectionBlock\")!\n const _component_StateEditor = _resolveComponent(\"StateEditor\")!\n const _component_HelpFab = _resolveComponent(\"HelpFab\")!\n const _component_DocsRuntimeConfigs = _resolveComponent(\"DocsRuntimeConfigs\")!\n\n _push(`<!--[-->`)\n if (_unref(client)) {\n _push(`<div>`)\n _push(_ssrRenderComponent(_component_NSectionBlock, {\n icon: \"carbon-settings-services\",\n text: \"App Config\",\n padding: false\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_StateEditor, {\n state: _unref(client).app.appConfig,\n revision: revision.value\n }, null, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_StateEditor, {\n state: _unref(client).app.appConfig,\n revision: revision.value\n }, null, 8, [\"state\", \"revision\"])\n ]\n }\n }),\n _: 1\n }, _parent))\n _push(_ssrRenderComponent(_component_NSectionBlock, {\n icon: \"carbon-settings\",\n text: \"Public Runtime Config\",\n padding: false\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_StateEditor, {\n state: payload.value.config?.public,\n revision: revision.value\n }, null, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_StateEditor, {\n state: payload.value.config?.public,\n revision: revision.value\n }, null, 8, [\"state\", \"revision\"])\n ]\n }\n }),\n _: 1\n }, _parent))\n _push(_ssrRenderComponent(_component_NSectionBlock, {\n icon: \"i-carbon-code-signing-service\",\n text: \"Private Runtime Config\",\n open: false,\n padding: false,\n description: \"These values are not exposed to the client. Readonly in the DevTools.\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_StateEditor, {\n state: privateConfig.value,\n revision: revision.value,\n readonly: \"\"\n }, null, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_StateEditor, {\n state: privateConfig.value,\n revision: revision.value,\n readonly: \"\"\n }, null, 8, [\"state\", \"revision\"])\n ]\n }\n }),\n _: 1\n }, _parent))\n _push(`</div>`)\n } else {\n _push(`<!---->`)\n }\n _push(_ssrRenderComponent(_component_HelpFab, null, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_DocsRuntimeConfigs, null, null, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_DocsRuntimeConfigs)\n ]\n }\n }),\n _: 1\n }, _parent))\n _push(`<!--]-->`)\n}\n}\n\n})","<script setup lang=\"ts\">\nimport { computed } from 'vue'\nimport { definePageMeta } from '#imports'\nimport { useClient } from '~/composables/client'\nimport { useServerRuntimeConfig } from '~/composables/state'\n\ndefinePageMeta({\n icon: 'carbon-settings-services',\n title: 'Runtime Configs',\n category: 'analyze',\n show: () => {\n const client = useClient()\n return () => !!client.value\n },\n order: 6,\n})\n\nconst client = useClient()\nconst runtimeConfig = useServerRuntimeConfig()\nconst payload = computed(() => client.value?.nuxt.payload)\nconst revision = computed(() => client.value?.revision.value)\n\nconst privateConfig = computed(() => {\n const clone = {\n ...runtimeConfig.value,\n }\n delete clone.public\n delete clone.app\n return clone\n})\n</script>\n\n<template>\n <div v-if=\"client\">\n <NSectionBlock\n icon=\"carbon-settings-services\"\n text=\"App Config\"\n :padding=\"false\"\n >\n <StateEditor\n :state=\"client.app.appConfig\"\n :revision=\"revision\"\n />\n </NSectionBlock>\n\n <NSectionBlock\n icon=\"carbon-settings\"\n text=\"Public Runtime Config\"\n :padding=\"false\"\n >\n <StateEditor\n :state=\"payload.config?.public\"\n :revision=\"revision\"\n />\n </NSectionBlock>\n\n <NSectionBlock\n icon=\"i-carbon-code-signing-service\"\n text=\"Private Runtime Config\"\n :open=\"false\"\n :padding=\"false\"\n description=\"These values are not exposed to the client. Readonly in the DevTools.\"\n >\n <StateEditor\n :state=\"privateConfig\"\n :revision=\"revision\"\n readonly\n />\n </NSectionBlock>\n </div>\n\n <HelpFab>\n <DocsRuntimeConfigs />\n </HelpFab>\n</template>\n"],"version":3}