@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.
- package/dist/_nuxt/AuthRequiredPanel-znjaI7oT.js.map.json +1 -0
- package/dist/_nuxt/CodeDiff-DgjeLx6z.js.map.json +1 -0
- package/dist/_nuxt/CodeSnippets-CgfcaS4Z.js.map.json +1 -0
- package/dist/_nuxt/ComposableItem-BWQR7_fI.js.map.json +1 -0
- package/dist/_nuxt/DataSchemaButton-CqEfc2TV.js.map.json +1 -0
- package/dist/_nuxt/DataSchemaDrawer-Xj8YzNJN.js.map.json +1 -0
- package/dist/_nuxt/DurationDisplay-Dzweg1by.js.map.json +1 -0
- package/dist/_nuxt/FilepathItem-D75bkTSa.js.map.json +1 -0
- package/dist/_nuxt/HelpFab-CH7NlsDf.js.map.json +1 -0
- package/dist/_nuxt/LaunchPage-ByG-3KVi.js.map.json +1 -0
- package/dist/_nuxt/NBadge-BNJzHbtD.js.map.json +1 -0
- package/dist/_nuxt/NCard-mHVN2GYZ.js.map.json +1 -0
- package/dist/_nuxt/NCheckbox-OMIu_LTG.js.map.json +1 -0
- package/dist/_nuxt/NCodeBlock-C2Ewa6VO.js.map.json +1 -0
- package/dist/_nuxt/NDrawer-C6Opm19C.js.map.json +1 -0
- package/dist/_nuxt/NDropdown-DseEG3tA.js.map.json +1 -0
- package/dist/_nuxt/NIcon-cjduOh_B.js.map.json +1 -0
- package/dist/_nuxt/NIconTitle-C75MU0px.js.map.json +1 -0
- package/dist/_nuxt/NLink-Rsxlt1NN.js.map.json +1 -0
- package/dist/_nuxt/NMarkdown-DFwJ-ppZ.js.map.json +1 -0
- package/dist/_nuxt/NNavbar-CS-Z1Cle.js.map.json +1 -0
- package/dist/_nuxt/NPanelGrids-CEorXUWJ.js.map.json +1 -0
- package/dist/_nuxt/NSectionBlock-C7kcMkbf.js.map.json +1 -0
- package/dist/_nuxt/NSelect-geGP1eOG.js.map.json +1 -0
- package/dist/_nuxt/NSelectTabs-nUMnNQy-.js.map.json +1 -0
- package/dist/_nuxt/NSplitPane-Bh0o_t5e.js.map.json +1 -0
- package/dist/_nuxt/NTip-DRnTpLjG.js.map.json +1 -0
- package/dist/_nuxt/ServerRouteInputs-BhIrPxPN.js.map.json +1 -0
- package/dist/_nuxt/StacktraceList-B-ehJIQ-.js.map.json +1 -0
- package/dist/_nuxt/StateEditor-Yqdbqk_c.js.map.json +1 -0
- package/dist/_nuxt/__blank-BM2yOFO6.js.map.json +1 -0
- package/dist/_nuxt/analyze-build-Cemp_oBq.js.map.json +1 -0
- package/dist/_nuxt/assets-rTFAaows.js.map.json +1 -0
- package/dist/_nuxt/client-r5qP-99Q.js.map.json +1 -0
- package/dist/_nuxt/color-BL_mIEWV.js.map.json +1 -0
- package/dist/_nuxt/components-BJnHweOE.js.map.json +1 -0
- package/dist/_nuxt/constants-D9kP6ji9.js.map.json +1 -0
- package/dist/_nuxt/custom-_name_-DI8dnRDD.js.map.json +1 -0
- package/dist/_nuxt/debug-BcJZ8M6i.js.map.json +1 -0
- package/dist/_nuxt/default-Bzh4dZQ5.js.map.json +1 -0
- package/dist/_nuxt/entry-DZwY6FLS.js.map.json +1 -0
- package/dist/_nuxt/error-404-dySA7T2P.js.map.json +1 -0
- package/dist/_nuxt/error-500-2Ody89Er.js.map.json +1 -0
- package/dist/_nuxt/error-hGc4cWUU.js.map.json +1 -0
- package/dist/_nuxt/full-CvSnaO29.js.map.json +1 -0
- package/dist/_nuxt/head-BTCtirw3.js.map.json +1 -0
- package/dist/_nuxt/hooks-BVzlIVXR.js.map.json +1 -0
- package/dist/_nuxt/imports-B3k4BZF7.js.map.json +1 -0
- package/dist/_nuxt/modules-Ck915TxZ.js.map.json +1 -0
- package/dist/_nuxt/none-Df66KJph.js.map.json +1 -0
- package/dist/_nuxt/nuxt-C5VITehY.js.map.json +1 -0
- package/dist/_nuxt/nuxt-link-C-BBeF5l.js.map.json +1 -0
- package/dist/_nuxt/open-graph-ll_bjX_m.js.map.json +1 -0
- package/dist/_nuxt/overview-CyqDmfdE.js.map.json +1 -0
- package/dist/_nuxt/pages-BddDWJsZ.js.map.json +1 -0
- package/dist/_nuxt/pages-CrUWMxGz.js.map.json +1 -0
- package/dist/_nuxt/pages-DWELoQlh.js.map.json +1 -0
- package/dist/_nuxt/payload-29bFuqLh.js.map.json +1 -0
- package/dist/_nuxt/plugins-fmmRaH-S.js.map.json +1 -0
- package/dist/_nuxt/ready-BQ1fhXgL.js.map.json +1 -0
- package/dist/_nuxt/runtime-configs-iL68LNkj.js.map.json +1 -0
- package/dist/_nuxt/server-routes-Dy5_Ljmu.js.map.json +1 -0
- package/dist/_nuxt/server-tasks-CD-7IPFD.js.map.json +1 -0
- package/dist/_nuxt/settings-Qa45tU8e.js.map.json +1 -0
- package/dist/_nuxt/state-components-CksF081b.js.map.json +1 -0
- package/dist/_nuxt/state-modules-CyH4hWeN.js.map.json +1 -0
- package/dist/_nuxt/state-tabs-m1o-BX5R.js.map.json +1 -0
- package/dist/_nuxt/storage-BylO3p9r.js.map.json +1 -0
- package/dist/_nuxt/timeline-Dukbqafi.js.map.json +1 -0
- package/dist/_nuxt/utils-BfB0tRbX.js.map.json +1 -0
- package/dist/_nuxt/virtual-files-BQJM45QE.js.map.json +1 -0
- package/dist/chunks/module-main.mjs +1 -1
- package/dist/dirs.d.cts +1 -0
- package/dist/index.mjs.map.json +1 -0
- package/dist/module.d.cts +2 -0
- package/dist/module.json +1 -1
- package/dist/server.mjs.map.json +1 -0
- package/dist/types.d.cts +2 -0
- package/dist/webcomponents/index.d.cts +1 -0
- package/package.json +30 -30
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"modules-Ck915TxZ.js","mappings":"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","names":[],"sources":["../../../../../../../../composables/state-subprocess.ts","../../../../../../../../components/ModuleItemBase.vue?vue&type=script&setup=true&lang.ts","../../../../../../../../components/ModuleItemBase.vue","../../../../../../../../components/ModuleItem.vue?vue&type=script&setup=true&lang.ts","../../../../../../../../components/ModuleItem.vue","../../../../../../../../components/ModuleItemInstall.vue?vue&type=script&setup=true&lang.ts","../../../../../../../../components/ModuleItemInstall.vue","../../../../../../../../components/ModuleInstallList.vue?vue&type=script&setup=true&lang.ts","../../../../../../../../components/ModuleInstallList.vue","../../../../../../../../components/ModuleActionDialog.vue?vue&type=script&setup=true&lang.ts","../../../../../../../../components/ModuleActionDialog.vue","../../../../../../../../components/docs/modules.md","../../../../../../../../pages/modules/modules.vue?vue&type=script&setup=true&lang.ts","../../../../../../../../pages/modules/modules.vue"],"sourcesContent":["import type { InstallingModulestate } from '~/../src/types'\nimport { ref } from 'vue'\n\nexport const processInstallingModules = ref<InstallingModulestate[]>([])\n","import { defineComponent as _defineComponent } from 'vue'\nimport { resolveComponent as _resolveComponent, withCtx as _withCtx, toDisplayString as _toDisplayString, createTextVNode as _createTextVNode, createVNode as _createVNode, renderSlot as _renderSlot, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, unref as _unref, renderList as _renderList, Fragment as _Fragment, mergeProps as _mergeProps } from \"vue\"\nimport { ssrRenderSlot as _ssrRenderSlot, ssrRenderComponent as _ssrRenderComponent, ssrRenderClass as _ssrRenderClass, ssrRenderAttr as _ssrRenderAttr, ssrInterpolate as _ssrInterpolate, ssrRenderList as _ssrRenderList } from \"vue/server-renderer\"\n\nimport type { InstalledModuleInfo, ModuleStaticInfo } from '../../src/types'\nimport { computed } from 'vue'\nimport { useOpenInEditor } from '~/composables/editor'\n\nconst iconBase = 'https://ipx.nuxt.com/s_80,f_webp/gh/nuxt/modules/main/icons/'\nconst avatarBase = 'https://ipx.nuxt.com/s_44,f_webp/gh_avatar/'\nconst githubBase = 'https://github.com/'\nconst npmxBase = 'https://npmx.dev/package/'\n\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'ModuleItemBase',\n __ssrInlineRender: true,\n props: {\n mod: {},\n info: {},\n compact: { type: Boolean },\n maintainers: { type: Boolean, default: true }\n },\n setup(__props: any) {\n\nconst props = __props\n\nconst data = computed(() => ({\n ...props.mod?.meta,\n ...props.mod,\n ...props.info,\n}))\n\nconst { format: formatNumber } = Intl.NumberFormat(navigator.language || 'en', { notation: 'compact', maximumFractionDigits: 1 })\n\nconst stars = computed(() => formatNumber(data.value.stats?.stars || 0))\nconst downloads = computed(() => formatNumber(data.value.stats?.downloads || 0))\n\nconst openInEditor = useOpenInEditor()\n\nreturn (_ctx: any,_push: any,_parent: any,_attrs: any) => {\n const _component_NCard = _resolveComponent(\"NCard\")!\n const _component_NuxtLink = _resolveComponent(\"NuxtLink\")!\n const _component_NIcon = _resolveComponent(\"NIcon\")!\n const _component_DurationDisplay = _resolveComponent(\"DurationDisplay\")!\n\n _push(_ssrRenderComponent(_component_NCard, _mergeProps({\n p4: \"\",\n flex: \"~ gap2\"\n }, _attrs), {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<div flex=\"~ col gap2\" flex-auto of-hidden px1${_scopeId}>`)\n _ssrRenderSlot(_ctx.$slots, \"main\", {}, () => {\n _push(`<div gap-1t flex items-center text-ellipsis ws-nowrap text-lg${_scopeId}>`)\n if (__props.mod.isPackageModule) {\n _push(_ssrRenderComponent(_component_NuxtLink, {\n to: npmxBase + (data.value.npm || data.value.name),\n target: \"_blank\",\n hover: \"underline text-primary\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`${_ssrInterpolate(data.value.name)}`)\n } else {\n return [\n _createTextVNode(_toDisplayString(data.value.name), 1)\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n } else if (__props.mod.entryPath) {\n _push(`<button role=\"button\" hover=\"underline text-primary\"${\n _scopeId\n }>${\n _ssrInterpolate(data.value.name)\n }</button>`)\n } else {\n _push(`<span${\n _scopeId\n }>${\n _ssrInterpolate(data.value.name)\n }</span>`)\n }\n _ssrRenderSlot(_ctx.$slots, \"badge\", {}, null, _push, _parent, _scopeId)\n _push(`</div>`)\n if (data.value.description ) {\n _push(`<div class=\"${\n _ssrRenderClass(__props.compact ? 'ws-nowrap of-hidden truncate' : 'line-clamp-2')\n }\" mt--1 text-sm op50${\n _scopeId\n }>${\n _ssrInterpolate(data.value.description)\n }</div>`)\n } else {\n _push(`<!---->`)\n }\n _push(`<div flex-auto${_scopeId}></div>`)\n if (data.value.website) {\n _push(`<div flex=\"~ gap-2\" title=\"Documentation\"${\n _scopeId\n }><span i-carbon-link flex-none text-lg op50${\n _scopeId\n }></span>`)\n _push(_ssrRenderComponent(_component_NuxtLink, {\n to: data.value.website,\n target: \"_blank\",\n \"of-hidden\": \"\",\n truncate: \"\",\n \"ws-nowrap\": \"\",\n \"text-sm\": \"\",\n op50: \"\",\n hover: \"op100 underline text-primary\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`${_ssrInterpolate(data.value.website.replace(/^https?:\\/\\//, ''))}`)\n } else {\n return [\n _createTextVNode(_toDisplayString(data.value.website.replace(/^https?:\\/\\//, '')), 1)\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n _push(`</div>`)\n } else {\n _push(`<!---->`)\n }\n if (data.value.github) {\n _push(`<div flex=\"~ gap-2\"${\n _scopeId\n }><span i-carbon-logo-github flex-none text-lg op50${\n _scopeId\n }></span>`)\n _push(_ssrRenderComponent(_component_NuxtLink, {\n to: data.value.github,\n target: \"_blank\",\n \"of-hidden\": \"\",\n truncate: \"\",\n \"ws-nowrap\": \"\",\n \"text-sm\": \"\",\n op50: \"\",\n hover: \"op100 underline text-primary\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`${_ssrInterpolate(data.value.github.replace(/^https?:\\/\\/github.com\\//, ''))}`)\n } else {\n return [\n _createTextVNode(_toDisplayString(data.value.github.replace(/^https?:\\/\\/github.com\\//, '')), 1)\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n _push(`</div>`)\n } else {\n _push(`<!---->`)\n }\n }, _push, _parent, _scopeId)\n _ssrRenderSlot(_ctx.$slots, \"items\", {}, null, _push, _parent, _scopeId)\n if (data.value.stats) {\n _push(`<div flex=\"~ gap-4 items-center\"${_scopeId}>`)\n if (data.value.stats.stars) {\n _push(`<div flex=\"~ gap-2 items-center\" op50${_scopeId}>`)\n _push(_ssrRenderComponent(_component_NIcon, {\n icon: \"carbon-star\",\n \"flex-none\": \"\",\n \"text-lg\": \"\"\n }, null, _parent, _scopeId))\n _push(`<span${\n _scopeId\n }>${\n _ssrInterpolate(stars.value)\n }</span></div>`)\n } else {\n _push(`<!---->`)\n }\n if (data.value.stats.downloads) {\n _push(`<div flex=\"~ gap-2 items-center\" op50${_scopeId}>`)\n _push(_ssrRenderComponent(_component_NIcon, {\n icon: \"carbon-download\",\n \"flex-none\": \"\",\n \"text-lg\": \"\"\n }, null, _parent, _scopeId))\n _push(`<span${\n _scopeId\n }>${\n _ssrInterpolate(downloads.value)\n }</span></div>`)\n } else {\n _push(`<!---->`)\n }\n _push(`</div>`)\n } else {\n _push(`<!---->`)\n }\n if (__props.mod.timings?.setup) {\n _push(`<div${_scopeId}>`)\n _push(_ssrRenderComponent(_component_DurationDisplay, {\n title: \"Module Setup Time\",\n flex: \"~ items-center\",\n duration: __props.mod.timings.setup,\n factor: 0.5\n }, {\n before: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_NIcon, {\n icon: \"carbon-time\",\n mr2: \"\",\n \"flex-none\": \"\",\n \"text-lg\": \"\",\n op50: \"\"\n }, null, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_NIcon, {\n icon: \"carbon-time\",\n mr2: \"\",\n \"flex-none\": \"\",\n \"text-lg\": \"\",\n op50: \"\"\n })\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n _push(`</div>`)\n } else {\n _push(`<!---->`)\n }\n _push(`</div><div flex=\"~ col\" items-end${_scopeId}>`)\n if (data.value.icon || __props.mod.isPackageModule) {\n _push(`<div h-20 w-20 flex flex-none rounded bg-gray:3 p4${_scopeId}>`)\n if (data.value.icon) {\n _push(`<img${\n _ssrRenderAttr(\"src\", iconBase + data.value.icon)\n }${\n _ssrRenderAttr(\"alt\", __props.mod.name)\n } ma${\n _scopeId\n }>`)\n } else {\n _push(`<div i-carbon-cube ma flex-none text-4xl op30${_scopeId}></div>`)\n }\n _push(`</div>`)\n } else {\n _push(`<!---->`)\n }\n if (data.value.maintainers?.length && __props.maintainers) {\n _push(`<div flex=\"~\" mt2 flex-auto items-end justify-end${_scopeId}><!--[-->`)\n _ssrRenderList(data.value.maintainers, (m) => {\n _push(_ssrRenderComponent(_component_NuxtLink, {\n key: m.name,\n target: \"_blank\",\n to: githubBase + m.github,\n title: m.name\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<img${\n _ssrRenderAttr(\"src\", avatarBase + m.github)\n } h-6 w-6 rounded-full${\n _scopeId\n }>`)\n } else {\n return [\n _createVNode(\"img\", {\n src: avatarBase + m.github,\n \"h-6\": \"\",\n \"w-6\": \"\",\n \"rounded-full\": \"\"\n }, null, 8, [\"src\"])\n ]\n }\n }),\n _: 2\n }, _parent, _scopeId))\n })\n _push(`<!--]--></div>`)\n } else {\n _push(`<!---->`)\n }\n if (_ctx.$slots.actions) {\n _push(`<!--[--><div flex-auto${\n _scopeId\n }></div><div flex justify-end${\n _scopeId\n }>`)\n _ssrRenderSlot(_ctx.$slots, \"actions\", {}, null, _push, _parent, _scopeId)\n _push(`</div><!--]-->`)\n } else {\n _push(`<!---->`)\n }\n _push(`</div>`)\n } else {\n return [\n _createVNode(\"div\", {\n flex: \"~ col gap2\",\n \"flex-auto\": \"\",\n \"of-hidden\": \"\",\n px1: \"\"\n }, [\n _renderSlot(_ctx.$slots, \"main\", {}, () => [\n _createVNode(\"div\", {\n \"gap-1t\": \"\",\n flex: \"\",\n \"items-center\": \"\",\n \"text-ellipsis\": \"\",\n \"ws-nowrap\": \"\",\n \"text-lg\": \"\"\n }, [\n (__props.mod.isPackageModule)\n ? (_openBlock(), _createBlock(_component_NuxtLink, {\n key: 0,\n to: npmxBase + (data.value.npm || data.value.name),\n target: \"_blank\",\n hover: \"underline text-primary\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(data.value.name), 1)\n ]),\n _: 1\n }, 8, [\"to\"]))\n : (__props.mod.entryPath)\n ? (_openBlock(), _createBlock(\"button\", {\n key: 1,\n role: \"button\",\n hover: \"underline text-primary\",\n onClick: ($event: any) => (_unref(openInEditor)(__props.mod.entryPath!))\n }, _toDisplayString(data.value.name), 9, [\"onClick\"]))\n : (_openBlock(), _createBlock(\"span\", { key: 2 }, _toDisplayString(data.value.name), 1)),\n _renderSlot(_ctx.$slots, \"badge\")\n ]),\n (data.value.description )\n ? (_openBlock(), _createBlock(\"div\", {\n key: 0,\n class: __props.compact ? 'ws-nowrap of-hidden truncate' : 'line-clamp-2',\n \"mt--1\": \"\",\n \"text-sm\": \"\",\n op50: \"\"\n }, _toDisplayString(data.value.description), 3))\n : _createCommentVNode(\"\", true),\n _createVNode(\"div\", { \"flex-auto\": \"\" }),\n (data.value.website)\n ? (_openBlock(), _createBlock(\"div\", {\n key: 1,\n flex: \"~ gap-2\",\n title: \"Documentation\"\n }, [\n _createVNode(\"span\", {\n \"i-carbon-link\": \"\",\n \"flex-none\": \"\",\n \"text-lg\": \"\",\n op50: \"\"\n }),\n _createVNode(_component_NuxtLink, {\n to: data.value.website,\n target: \"_blank\",\n \"of-hidden\": \"\",\n truncate: \"\",\n \"ws-nowrap\": \"\",\n \"text-sm\": \"\",\n op50: \"\",\n hover: \"op100 underline text-primary\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(data.value.website.replace(/^https?:\\/\\//, '')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ]))\n : _createCommentVNode(\"\", true),\n (data.value.github)\n ? (_openBlock(), _createBlock(\"div\", {\n key: 2,\n flex: \"~ gap-2\"\n }, [\n _createVNode(\"span\", {\n \"i-carbon-logo-github\": \"\",\n \"flex-none\": \"\",\n \"text-lg\": \"\",\n op50: \"\"\n }),\n _createVNode(_component_NuxtLink, {\n to: data.value.github,\n target: \"_blank\",\n \"of-hidden\": \"\",\n truncate: \"\",\n \"ws-nowrap\": \"\",\n \"text-sm\": \"\",\n op50: \"\",\n hover: \"op100 underline text-primary\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(data.value.github.replace(/^https?:\\/\\/github.com\\//, '')), 1)\n ]),\n _: 1\n }, 8, [\"to\"])\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _renderSlot(_ctx.$slots, \"items\"),\n (data.value.stats)\n ? (_openBlock(), _createBlock(\"div\", {\n key: 0,\n flex: \"~ gap-4 items-center\"\n }, [\n (data.value.stats.stars)\n ? (_openBlock(), _createBlock(\"div\", {\n key: 0,\n flex: \"~ gap-2 items-center\",\n op50: \"\"\n }, [\n _createVNode(_component_NIcon, {\n icon: \"carbon-star\",\n \"flex-none\": \"\",\n \"text-lg\": \"\"\n }),\n _createVNode(\"span\", null, _toDisplayString(stars.value), 1)\n ]))\n : _createCommentVNode(\"\", true),\n (data.value.stats.downloads)\n ? (_openBlock(), _createBlock(\"div\", {\n key: 1,\n flex: \"~ gap-2 items-center\",\n op50: \"\"\n }, [\n _createVNode(_component_NIcon, {\n icon: \"carbon-download\",\n \"flex-none\": \"\",\n \"text-lg\": \"\"\n }),\n _createVNode(\"span\", null, _toDisplayString(downloads.value), 1)\n ]))\n : _createCommentVNode(\"\", true)\n ]))\n : _createCommentVNode(\"\", true),\n (__props.mod.timings?.setup)\n ? (_openBlock(), _createBlock(\"div\", { key: 1 }, [\n _createVNode(_component_DurationDisplay, {\n title: \"Module Setup Time\",\n flex: \"~ items-center\",\n duration: __props.mod.timings.setup,\n factor: 0.5\n }, {\n before: _withCtx(() => [\n _createVNode(_component_NIcon, {\n icon: \"carbon-time\",\n mr2: \"\",\n \"flex-none\": \"\",\n \"text-lg\": \"\",\n op50: \"\"\n })\n ]),\n _: 1\n }, 8, [\"duration\"])\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _createVNode(\"div\", {\n flex: \"~ col\",\n \"items-end\": \"\"\n }, [\n (data.value.icon || __props.mod.isPackageModule)\n ? (_openBlock(), _createBlock(\"div\", {\n key: 0,\n \"h-20\": \"\",\n \"w-20\": \"\",\n flex: \"\",\n \"flex-none\": \"\",\n rounded: \"\",\n \"bg-gray:3\": \"\",\n p4: \"\"\n }, [\n (data.value.icon)\n ? (_openBlock(), _createBlock(\"img\", {\n key: 0,\n src: iconBase + data.value.icon,\n alt: __props.mod.name,\n ma: \"\"\n }, null, 8, [\"src\", \"alt\"]))\n : (_openBlock(), _createBlock(\"div\", {\n key: 1,\n \"i-carbon-cube\": \"\",\n ma: \"\",\n \"flex-none\": \"\",\n \"text-4xl\": \"\",\n op30: \"\"\n }))\n ]))\n : _createCommentVNode(\"\", true),\n (data.value.maintainers?.length && __props.maintainers)\n ? (_openBlock(), _createBlock(\"div\", {\n key: 1,\n flex: \"~\",\n mt2: \"\",\n \"flex-auto\": \"\",\n \"items-end\": \"\",\n \"justify-end\": \"\"\n }, [\n (_openBlock(true), _createBlock(_Fragment, null, _renderList(data.value.maintainers, (m) => {\n return (_openBlock(), _createBlock(_component_NuxtLink, {\n key: m.name,\n target: \"_blank\",\n to: githubBase + m.github,\n title: m.name\n }, {\n default: _withCtx(() => [\n _createVNode(\"img\", {\n src: avatarBase + m.github,\n \"h-6\": \"\",\n \"w-6\": \"\",\n \"rounded-full\": \"\"\n }, null, 8, [\"src\"])\n ]),\n _: 2\n }, 1032, [\"to\", \"title\"]))\n }), 128))\n ]))\n : _createCommentVNode(\"\", true),\n (_ctx.$slots.actions)\n ? (_openBlock(), _createBlock(_Fragment, { key: 2 }, [\n _createVNode(\"div\", { \"flex-auto\": \"\" }),\n _createVNode(\"div\", {\n flex: \"\",\n \"justify-end\": \"\"\n }, [\n _renderSlot(_ctx.$slots, \"actions\")\n ])\n ], 64))\n : _createCommentVNode(\"\", true)\n ])\n ]\n }\n }),\n _: 3\n }, _parent))\n}\n}\n\n})","<script setup lang=\"ts\">\nimport type { InstalledModuleInfo, ModuleStaticInfo } from '../../src/types'\nimport { computed } from 'vue'\nimport { useOpenInEditor } from '~/composables/editor'\n\nconst props = withDefaults(\n defineProps<{\n mod: InstalledModuleInfo\n info?: ModuleStaticInfo\n compact?: boolean\n maintainers?: boolean\n }>(),\n {\n maintainers: true,\n },\n)\n\nconst data = computed(() => ({\n ...props.mod?.meta,\n ...props.mod,\n ...props.info,\n}))\n\nconst iconBase = 'https://ipx.nuxt.com/s_80,f_webp/gh/nuxt/modules/main/icons/'\nconst avatarBase = 'https://ipx.nuxt.com/s_44,f_webp/gh_avatar/'\nconst githubBase = 'https://github.com/'\nconst npmxBase = 'https://npmx.dev/package/'\n\nconst { format: formatNumber } = Intl.NumberFormat(navigator.language || 'en', { notation: 'compact', maximumFractionDigits: 1 })\n\nconst stars = computed(() => formatNumber(data.value.stats?.stars || 0))\nconst downloads = computed(() => formatNumber(data.value.stats?.downloads || 0))\n\nconst openInEditor = useOpenInEditor()\n</script>\n\n<template>\n <NCard p4 flex=\"~ gap2\">\n <div flex=\"~ col gap2\" flex-auto of-hidden px1>\n <slot name=\"main\">\n <div gap-1t flex items-center text-ellipsis ws-nowrap text-lg>\n <NuxtLink\n v-if=\"mod.isPackageModule\"\n :to=\"npmxBase + (data.npm || data.name)\"\n target=\"_blank\"\n hover=\"underline text-primary\"\n >\n {{ data.name }}\n </NuxtLink>\n <button\n v-else-if=\"mod.entryPath\"\n role=\"button\"\n hover=\"underline text-primary\"\n @click=\"openInEditor(mod.entryPath!)\"\n >\n {{ data.name }}\n </button>\n <span v-else>\n {{ data.name }}\n </span>\n <slot name=\"badge\" />\n </div>\n\n <div\n v-if=\"data.description \"\n :class=\"compact ? 'ws-nowrap of-hidden truncate' : 'line-clamp-2'\"\n mt--1 text-sm op50\n >\n {{ data.description }}\n </div>\n\n <div flex-auto />\n\n <div v-if=\"data.website\" flex=\"~ gap-2\" title=\"Documentation\">\n <span i-carbon-link flex-none text-lg op50 />\n <NuxtLink\n :to=\"data.website\"\n target=\"_blank\"\n of-hidden truncate ws-nowrap text-sm op50\n hover=\"op100 underline text-primary\"\n >\n {{ data.website.replace(/^https?:\\/\\//, '') }}\n </NuxtLink>\n </div>\n <div v-if=\"data.github\" flex=\"~ gap-2\">\n <span i-carbon-logo-github flex-none text-lg op50 />\n <NuxtLink\n :to=\"data.github\"\n target=\"_blank\"\n of-hidden truncate ws-nowrap text-sm op50\n hover=\"op100 underline text-primary\"\n >\n {{ data.github.replace(/^https?:\\/\\/github.com\\//, '') }}\n </NuxtLink>\n </div>\n </slot>\n\n <slot name=\"items\" />\n\n <div v-if=\"data.stats\" flex=\"~ gap-4 items-center\">\n <div v-if=\"data.stats.stars\" flex=\"~ gap-2 items-center\" op50>\n <NIcon icon=\"carbon-star\" flex-none text-lg />\n <span>\n {{ stars }}\n </span>\n </div>\n <div v-if=\"data.stats.downloads\" flex=\"~ gap-2 items-center\" op50>\n <NIcon icon=\"carbon-download\" flex-none text-lg />\n <span>\n {{ downloads }}\n </span>\n </div>\n </div>\n\n <div v-if=\"mod.timings?.setup\">\n <DurationDisplay\n title=\"Module Setup Time\"\n flex=\"~ items-center\"\n :duration=\"mod.timings.setup\"\n :factor=\"0.5\"\n >\n <template #before>\n <NIcon icon=\"carbon-time\" mr2 flex-none text-lg op50 />\n </template>\n </DurationDisplay>\n </div>\n </div>\n <div flex=\"~ col\" items-end>\n <div\n v-if=\"data.icon || mod.isPackageModule\"\n\n h-20 w-20 flex flex-none rounded bg-gray:3 p4\n >\n <img v-if=\"data.icon\" :src=\"iconBase + data.icon\" :alt=\"mod.name\" ma>\n <div v-else i-carbon-cube ma flex-none text-4xl op30 />\n </div>\n <div v-if=\"data.maintainers?.length && maintainers\" flex=\"~\" mt2 flex-auto items-end justify-end>\n <NuxtLink\n v-for=\"m of data.maintainers\"\n :key=\"m.name\"\n target=\"_blank\"\n :to=\"githubBase + m.github\"\n :title=\"m.name\"\n >\n <img :src=\"avatarBase + m.github\" h-6 w-6 rounded-full>\n </NuxtLink>\n </div>\n <template v-if=\"$slots.actions\">\n <div flex-auto />\n <div flex justify-end>\n <slot name=\"actions\" />\n </div>\n </template>\n </div>\n </NCard>\n</template>\n","import { defineComponent as _defineComponent } from 'vue'\nimport { resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, unref as _unref, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, toDisplayString as _toDisplayString, mergeProps as _mergeProps } from \"vue\"\nimport { ssrRenderComponent as _ssrRenderComponent, ssrRenderAttr as _ssrRenderAttr, ssrInterpolate as _ssrInterpolate } from \"vue/server-renderer\"\n\nimport type { InstalledModuleInfo } from '../../src/types'\nimport { computed } from 'vue'\nimport { rpc } from '~/composables/rpc'\n\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'ModuleItem',\n __ssrInlineRender: true,\n props: {\n mod: {}\n },\n setup(__props: any) {\n\nconst props = __props\n\nconst staticInfo = computed(() => props.mod.info)\nconst data = computed(() => ({\n ...props.mod?.meta,\n ...props.mod,\n ...staticInfo.value,\n}))\n\nreturn (_ctx: any,_push: any,_parent: any,_attrs: any) => {\n const _component_ModuleItemBase = _resolveComponent(\"ModuleItemBase\")!\n const _component_FilepathItem = _resolveComponent(\"FilepathItem\")!\n const _component_NpmVersionCheck = _resolveComponent(\"NpmVersionCheck\")!\n\n _push(_ssrRenderComponent(_component_ModuleItemBase, _mergeProps({\n mod: __props.mod,\n info: staticInfo.value\n }, _attrs), {\n items: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n if (__props.mod.entryPath) {\n _push(`<div flex=\"~ gap-2\" title=\"Open on filesystem\"${\n _scopeId\n }><span i-carbon-folder-move-to flex-none text-lg op50${\n _scopeId\n }></span>`)\n _push(_ssrRenderComponent(_component_FilepathItem, {\n filepath: __props.mod.entryPath,\n \"text-sm\": \"\",\n op50: \"\",\n hover: \"text-primary op100\"\n }, null, _parent, _scopeId))\n _push(`</div>`)\n } else {\n _push(`<!---->`)\n }\n if (data.value.npm) {\n _push(_ssrRenderComponent(_component_NpmVersionCheck, {\n key: data.value.npm,\n \"package-name\": data.value.npm,\n options: { dev: true }\n }, {\n default: _withCtx(({ info, update, state, id, restart }, _push, _parent, _scopeId) => {\n if (_push) {\n if (state === 'running') {\n _push(`<button flex=\"~ gap-2\" animate-pulse items-center${\n _ssrRenderAttr(\"title\", id ? 'Open the output in the Terminals dock' : undefined)\n }${\n _scopeId\n }><span i-carbon-circle-dash flex-none animate-spin text-lg op50${\n _scopeId\n }></span><code text-sm op50${\n _scopeId\n }>Upgrading...</code></button>`)\n } else if (state === 'updated') {\n _push(`<div mx--2${\n _scopeId\n }><button flex=\"~ gap-2\" hover=\"bg-primary/20\" items-center rounded bg-primary:10 px2 text-sm text-primary${\n _scopeId\n }><span i-carbon-intent-request-active flex-none text-lg text-primary${\n _scopeId\n }></span><code text-xs${\n _scopeId\n }>Update installed, click to restart</code></button></div>`)\n } else if (info?.needsUpdate) {\n _push(`<div mx--2${\n _scopeId\n }><button flex=\"~ gap-2\" title=\"Click to upgrade\" items-center rounded px2 text-sm hover=\"bg-active\"${\n _scopeId\n }><span i-carbon-intent-request-upgrade flex-none text-lg op50${\n _scopeId\n }></span><code op50${\n _scopeId\n }>v${\n _ssrInterpolate(info.current)\n }</code><div i-carbon-arrow-right op50${\n _scopeId\n }></div><code text-green${\n _scopeId\n }>v${\n _ssrInterpolate(info.latest)\n }</code></button></div>`)\n } else if (info?.latest) {\n _push(`<div flex=\"~ gap-2\" items-center title=\"NPM\"${\n _scopeId\n }><span i-carbon-cube flex-none text-lg op50${\n _scopeId\n }></span><code text-sm op50${\n _scopeId\n }>v${\n _ssrInterpolate(info.current)\n }</code></div>`)\n } else {\n _push(`<!---->`)\n }\n } else {\n return [\n (state === 'running')\n ? (_openBlock(), _createBlock(\"button\", {\n key: 0,\n flex: \"~ gap-2\",\n \"animate-pulse\": \"\",\n \"items-center\": \"\",\n title: id ? 'Open the output in the Terminals dock' : undefined,\n onClick: ($event: any) => (id ? _unref(rpc).revealTerminal(id) : undefined)\n }, [\n _createVNode(\"span\", {\n \"i-carbon-circle-dash\": \"\",\n \"flex-none\": \"\",\n \"animate-spin\": \"\",\n \"text-lg\": \"\",\n op50: \"\"\n }),\n _createVNode(\"code\", {\n \"text-sm\": \"\",\n op50: \"\"\n }, \"Upgrading...\")\n ], 8, [\"title\", \"onClick\"]))\n : (state === 'updated')\n ? (_openBlock(), _createBlock(\"div\", {\n key: 1,\n \"mx--2\": \"\"\n }, [\n _createVNode(\"button\", {\n flex: \"~ gap-2\",\n hover: \"bg-primary/20\",\n \"items-center\": \"\",\n rounded: \"\",\n \"bg-primary:10\": \"\",\n px2: \"\",\n \"text-sm\": \"\",\n \"text-primary\": \"\",\n onClick: restart\n }, [\n _createVNode(\"span\", {\n \"i-carbon-intent-request-active\": \"\",\n \"flex-none\": \"\",\n \"text-lg\": \"\",\n \"text-primary\": \"\"\n }),\n _createVNode(\"code\", { \"text-xs\": \"\" }, \"Update installed, click to restart\")\n ], 8, [\"onClick\"])\n ]))\n : (info?.needsUpdate)\n ? (_openBlock(), _createBlock(\"div\", {\n key: 2,\n \"mx--2\": \"\"\n }, [\n _createVNode(\"button\", {\n flex: \"~ gap-2\",\n title: \"Click to upgrade\",\n \"items-center\": \"\",\n rounded: \"\",\n px2: \"\",\n \"text-sm\": \"\",\n hover: \"bg-active\",\n onClick: ($event: any) => (update())\n }, [\n _createVNode(\"span\", {\n \"i-carbon-intent-request-upgrade\": \"\",\n \"flex-none\": \"\",\n \"text-lg\": \"\",\n op50: \"\"\n }),\n _createVNode(\"code\", { op50: \"\" }, \"v\" + _toDisplayString(info.current), 1),\n _createVNode(\"div\", {\n \"i-carbon-arrow-right\": \"\",\n op50: \"\"\n }),\n _createVNode(\"code\", { \"text-green\": \"\" }, \"v\" + _toDisplayString(info.latest), 1)\n ], 8, [\"onClick\"])\n ]))\n : (info?.latest)\n ? (_openBlock(), _createBlock(\"div\", {\n key: 3,\n flex: \"~ gap-2\",\n \"items-center\": \"\",\n title: \"NPM\"\n }, [\n _createVNode(\"span\", {\n \"i-carbon-cube\": \"\",\n \"flex-none\": \"\",\n \"text-lg\": \"\",\n op50: \"\"\n }),\n _createVNode(\"code\", {\n \"text-sm\": \"\",\n op50: \"\"\n }, \"v\" + _toDisplayString(info.current), 1)\n ]))\n : _createCommentVNode(\"\", true)\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n } else {\n _push(`<!---->`)\n }\n } else {\n return [\n (__props.mod.entryPath)\n ? (_openBlock(), _createBlock(\"div\", {\n key: 0,\n flex: \"~ gap-2\",\n title: \"Open on filesystem\"\n }, [\n _createVNode(\"span\", {\n \"i-carbon-folder-move-to\": \"\",\n \"flex-none\": \"\",\n \"text-lg\": \"\",\n op50: \"\"\n }),\n _createVNode(_component_FilepathItem, {\n filepath: __props.mod.entryPath,\n \"text-sm\": \"\",\n op50: \"\",\n hover: \"text-primary op100\"\n }, null, 8, [\"filepath\"])\n ]))\n : _createCommentVNode(\"\", true),\n (data.value.npm)\n ? (_openBlock(), _createBlock(_component_NpmVersionCheck, {\n key: data.value.npm,\n \"package-name\": data.value.npm,\n options: { dev: true }\n }, {\n default: _withCtx(({ info, update, state, id, restart }) => [\n (state === 'running')\n ? (_openBlock(), _createBlock(\"button\", {\n key: 0,\n flex: \"~ gap-2\",\n \"animate-pulse\": \"\",\n \"items-center\": \"\",\n title: id ? 'Open the output in the Terminals dock' : undefined,\n onClick: ($event: any) => (id ? _unref(rpc).revealTerminal(id) : undefined)\n }, [\n _createVNode(\"span\", {\n \"i-carbon-circle-dash\": \"\",\n \"flex-none\": \"\",\n \"animate-spin\": \"\",\n \"text-lg\": \"\",\n op50: \"\"\n }),\n _createVNode(\"code\", {\n \"text-sm\": \"\",\n op50: \"\"\n }, \"Upgrading...\")\n ], 8, [\"title\", \"onClick\"]))\n : (state === 'updated')\n ? (_openBlock(), _createBlock(\"div\", {\n key: 1,\n \"mx--2\": \"\"\n }, [\n _createVNode(\"button\", {\n flex: \"~ gap-2\",\n hover: \"bg-primary/20\",\n \"items-center\": \"\",\n rounded: \"\",\n \"bg-primary:10\": \"\",\n px2: \"\",\n \"text-sm\": \"\",\n \"text-primary\": \"\",\n onClick: restart\n }, [\n _createVNode(\"span\", {\n \"i-carbon-intent-request-active\": \"\",\n \"flex-none\": \"\",\n \"text-lg\": \"\",\n \"text-primary\": \"\"\n }),\n _createVNode(\"code\", { \"text-xs\": \"\" }, \"Update installed, click to restart\")\n ], 8, [\"onClick\"])\n ]))\n : (info?.needsUpdate)\n ? (_openBlock(), _createBlock(\"div\", {\n key: 2,\n \"mx--2\": \"\"\n }, [\n _createVNode(\"button\", {\n flex: \"~ gap-2\",\n title: \"Click to upgrade\",\n \"items-center\": \"\",\n rounded: \"\",\n px2: \"\",\n \"text-sm\": \"\",\n hover: \"bg-active\",\n onClick: ($event: any) => (update())\n }, [\n _createVNode(\"span\", {\n \"i-carbon-intent-request-upgrade\": \"\",\n \"flex-none\": \"\",\n \"text-lg\": \"\",\n op50: \"\"\n }),\n _createVNode(\"code\", { op50: \"\" }, \"v\" + _toDisplayString(info.current), 1),\n _createVNode(\"div\", {\n \"i-carbon-arrow-right\": \"\",\n op50: \"\"\n }),\n _createVNode(\"code\", { \"text-green\": \"\" }, \"v\" + _toDisplayString(info.latest), 1)\n ], 8, [\"onClick\"])\n ]))\n : (info?.latest)\n ? (_openBlock(), _createBlock(\"div\", {\n key: 3,\n flex: \"~ gap-2\",\n \"items-center\": \"\",\n title: \"NPM\"\n }, [\n _createVNode(\"span\", {\n \"i-carbon-cube\": \"\",\n \"flex-none\": \"\",\n \"text-lg\": \"\",\n op50: \"\"\n }),\n _createVNode(\"code\", {\n \"text-sm\": \"\",\n op50: \"\"\n }, \"v\" + _toDisplayString(info.current), 1)\n ]))\n : _createCommentVNode(\"\", true)\n ]),\n _: 1\n }, 8, [\"package-name\"]))\n : _createCommentVNode(\"\", true)\n ]\n }\n }),\n _: 1\n }, _parent))\n}\n}\n\n})","<script setup lang=\"ts\">\nimport type { InstalledModuleInfo } from '../../src/types'\nimport { computed } from 'vue'\nimport { rpc } from '~/composables/rpc'\n\nconst props = defineProps<{\n mod: InstalledModuleInfo\n}>()\n\nconst staticInfo = computed(() => props.mod.info)\nconst data = computed(() => ({\n ...props.mod?.meta,\n ...props.mod,\n ...staticInfo.value,\n}))\n</script>\n\n<template>\n <ModuleItemBase :mod=\"mod\" :info=\"staticInfo\">\n <template #items>\n <div v-if=\"mod.entryPath\" flex=\"~ gap-2\" title=\"Open on filesystem\">\n <span i-carbon-folder-move-to flex-none text-lg op50 />\n <FilepathItem :filepath=\"mod.entryPath\" text-sm op50 hover=\"text-primary op100\" />\n </div>\n\n <!-- NPM Version bump -->\n <NpmVersionCheck v-if=\"data.npm\" :key=\"data.npm\" :package-name=\"data.npm\" :options=\"{ dev: true }\">\n <template #default=\"{ info, update, state, id, restart }\">\n <button\n v-if=\"state === 'running'\" flex=\"~ gap-2\"\n animate-pulse items-center\n :title=\"id ? 'Open the output in the Terminals dock' : undefined\"\n @click=\"id ? rpc.revealTerminal(id) : undefined\"\n >\n <span i-carbon-circle-dash flex-none animate-spin text-lg op50 />\n <code text-sm op50>Upgrading...</code>\n </button>\n <div v-else-if=\"state === 'updated'\" mx--2>\n <button\n flex=\"~ gap-2\"\n hover=\"bg-primary/20\"\n items-center rounded bg-primary:10 px2 text-sm text-primary\n @click=\"restart\"\n >\n <span i-carbon-intent-request-active flex-none text-lg text-primary />\n <code text-xs>Update installed, click to restart</code>\n </button>\n </div>\n <div v-else-if=\"info?.needsUpdate\" mx--2>\n <button\n flex=\"~ gap-2\" title=\"Click to upgrade\" items-center rounded px2 text-sm\n hover=\"bg-active\"\n @click=\"update()\"\n >\n <span i-carbon-intent-request-upgrade flex-none text-lg op50 />\n <code op50>v{{ info.current }}</code>\n <div i-carbon-arrow-right op50 />\n <code text-green>v{{ info.latest }}</code>\n </button>\n </div>\n <div v-else-if=\"info?.latest\" flex=\"~ gap-2\" items-center title=\"NPM\">\n <span i-carbon-cube flex-none text-lg op50 />\n <code text-sm op50>v{{ info.current }}</code>\n </div>\n </template>\n </NpmVersionCheck>\n </template>\n </ModuleItemBase>\n</template>\n","import { defineComponent as _defineComponent } from 'vue'\nimport { resolveComponent as _resolveComponent, withCtx as _withCtx, createTextVNode as _createTextVNode, createVNode as _createVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, createSlots as _createSlots, mergeProps as _mergeProps } from \"vue\"\nimport { ssrRenderComponent as _ssrRenderComponent } from \"vue/server-renderer\"\n\nimport type { ModuleActionType, ModuleStaticInfo } from '../../src/types'\nimport { computed } from 'vue'\nimport { ModuleDialog } from '~/composables/dialog'\nimport { rpc } from '~/composables/rpc'\nimport { useInstalledModules } from '~/composables/state-modules'\nimport { processInstallingModules } from '~/composables/state-subprocess'\nimport { telemetry } from '~/composables/telemetry'\n\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'ModuleItemInstall',\n __ssrInlineRender: true,\n props: {\n item: {}\n },\n emits: ['start'],\n setup(__props: any, { emit: __emit }) {\n\nconst props = __props\n\nconst emit = __emit\n\nconst installedModules = useInstalledModules()\nconst installedInfo = computed(() => installedModules.value.find(i => i.name === props.item.npm))\nconst isInstalled = computed(() => installedInfo.value && installedInfo.value.isPackageModule)\nconst isUninstallable = computed(() => installedInfo.value && installedInfo.value.isPackageModule && installedInfo.value.isUninstallable)\n\nasync function useModuleAction(item: ModuleStaticInfo, type: ModuleActionType) {\n const method = type === 'install' ? rpc.installNuxtModule : rpc.uninstallNuxtModule\n const result = await method(item.npm, true)\n\n telemetry(`modules:${type}`, {\n moduleName: item.npm,\n })\n\n if (!result.commands)\n return\n\n if (!await ModuleDialog.start(item, result, type))\n return\n\n processInstallingModules.value.push({\n name: item.npm,\n info: item,\n processId: result.processId,\n })\n\n emit('start')\n\n try {\n // Thread the dry-run's unique session id into the execution call so the\n // server registers the very session we're tracking. The execution RPC\n // awaits the process, so clearing the pending entry here (no `onTerminalExit`\n // needed) settles the UI whether it succeeds or throws.\n await method(item.npm, false, result.processId)\n }\n finally {\n const index = processInstallingModules.value.findIndex(i => i.processId === result.processId)\n if (index !== -1)\n processInstallingModules.value.splice(index, 1)\n }\n}\n\nconst anyObj = {} as any\n\nreturn (_ctx: any,_push: any,_parent: any,_attrs: any) => {\n const _component_ModuleItemBase = _resolveComponent(\"ModuleItemBase\")!\n const _component_NBadge = _resolveComponent(\"NBadge\")!\n const _component_NDropdown = _resolveComponent(\"NDropdown\")!\n const _component_NButton = _resolveComponent(\"NButton\")!\n\n _push(_ssrRenderComponent(_component_ModuleItemBase, _mergeProps({\n mod: anyObj,\n role: isInstalled.value ? '' : 'button',\n info: __props.item,\n mb2: \"\",\n \"h-full\": \"\",\n class: isInstalled.value ? 'border-dashed op75' : 'hover:bg-active!',\n compact: true,\n onClick: ($event: any) => (isInstalled.value ? null : useModuleAction(__props.item, 'install'))\n }, _attrs), _createSlots({ _: 2 }, [\n (isInstalled.value)\n ? {\n name: \"badge\",\n fn: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_NBadge, { n: \"green\" }, null, _parent, _scopeId))\n if (isUninstallable.value) {\n _push(_ssrRenderComponent(_component_NDropdown, { n: \"sm green\" }, {\n trigger: _withCtx(({ click }, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_NButton, {\n icon: \"carbon-overflow-menu-vertical\",\n border: false,\n onClick: ($event: any) => (click())\n }, null, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_NButton, {\n icon: \"carbon-overflow-menu-vertical\",\n border: false,\n onClick: ($event: any) => (click())\n }, null, 8, [\"onClick\"])\n ]\n }\n }),\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_NButton, {\n icon: \"carbon-trash-can\",\n n: \"red\",\n onClick: ($event: any) => (useModuleAction(__props.item, 'uninstall'))\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(` Uninstall `)\n } else {\n return [\n _createTextVNode(\" Uninstall \")\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_NButton, {\n icon: \"carbon-trash-can\",\n n: \"red\",\n onClick: ($event: any) => (useModuleAction(__props.item, 'uninstall'))\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" Uninstall \")\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n } else {\n _push(`<!---->`)\n }\n } else {\n return [\n _createVNode(_component_NBadge, {\n n: \"green\",\n textContent: 'Installed'\n }),\n (isUninstallable.value)\n ? (_openBlock(), _createBlock(_component_NDropdown, {\n key: 0,\n n: \"sm green\"\n }, {\n trigger: _withCtx(({ click }) => [\n _createVNode(_component_NButton, {\n icon: \"carbon-overflow-menu-vertical\",\n border: false,\n onClick: ($event: any) => (click())\n }, null, 8, [\"onClick\"])\n ]),\n default: _withCtx(() => [\n _createVNode(_component_NButton, {\n icon: \"carbon-trash-can\",\n n: \"red\",\n onClick: ($event: any) => (useModuleAction(__props.item, 'uninstall'))\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" Uninstall \")\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ]),\n _: 1\n }))\n : _createCommentVNode(\"\", true)\n ]\n }\n }),\n key: \"0\"\n }\n : undefined\n ]), _parent))\n}\n}\n\n})","<script setup lang=\"ts\">\nimport type { ModuleActionType, ModuleStaticInfo } from '../../src/types'\nimport { computed } from 'vue'\nimport { ModuleDialog } from '~/composables/dialog'\nimport { rpc } from '~/composables/rpc'\nimport { useInstalledModules } from '~/composables/state-modules'\nimport { processInstallingModules } from '~/composables/state-subprocess'\nimport { telemetry } from '~/composables/telemetry'\n\nconst props = defineProps<{\n item: ModuleStaticInfo\n}>()\n\nconst emit = defineEmits(['start'])\n\nconst installedModules = useInstalledModules()\nconst installedInfo = computed(() => installedModules.value.find(i => i.name === props.item.npm))\nconst isInstalled = computed(() => installedInfo.value && installedInfo.value.isPackageModule)\nconst isUninstallable = computed(() => installedInfo.value && installedInfo.value.isPackageModule && installedInfo.value.isUninstallable)\n\nasync function useModuleAction(item: ModuleStaticInfo, type: ModuleActionType) {\n const method = type === 'install' ? rpc.installNuxtModule : rpc.uninstallNuxtModule\n const result = await method(item.npm, true)\n\n telemetry(`modules:${type}`, {\n moduleName: item.npm,\n })\n\n if (!result.commands)\n return\n\n if (!await ModuleDialog.start(item, result, type))\n return\n\n processInstallingModules.value.push({\n name: item.npm,\n info: item,\n processId: result.processId,\n })\n\n emit('start')\n\n try {\n // Thread the dry-run's unique session id into the execution call so the\n // server registers the very session we're tracking. The execution RPC\n // awaits the process, so clearing the pending entry here (no `onTerminalExit`\n // needed) settles the UI whether it succeeds or throws.\n await method(item.npm, false, result.processId)\n }\n finally {\n const index = processInstallingModules.value.findIndex(i => i.processId === result.processId)\n if (index !== -1)\n processInstallingModules.value.splice(index, 1)\n }\n}\n\nconst anyObj = {} as any\n</script>\n\n<template>\n <ModuleItemBase\n :mod=\"anyObj\"\n :role=\"isInstalled ? '' : 'button'\"\n :info=\"item\"\n mb2 h-full\n :class=\"isInstalled ? 'border-dashed op75' : 'hover:bg-active!'\"\n :compact=\"true\"\n @click=\"isInstalled ? null : useModuleAction(item, 'install')\"\n >\n <template v-if=\"isInstalled\" #badge>\n <NBadge n=\"green\" v-text=\"'Installed'\" />\n <NDropdown v-if=\"isUninstallable\" n=\"sm green\">\n <template #trigger=\"{ click }\">\n <NButton icon=\"carbon-overflow-menu-vertical\" :border=\"false\" @click=\"click()\" />\n </template>\n <NButton icon=\"carbon-trash-can\" n=\"red\" @click=\"useModuleAction(item, 'uninstall')\">\n Uninstall\n </NButton>\n </NDropdown>\n </template>\n </ModuleItemBase>\n</template>\n","import { defineComponent as _defineComponent } from 'vue'\nimport { resolveComponent as _resolveComponent, withCtx as _withCtx, toDisplayString as _toDisplayString, createVNode as _createVNode, createTextVNode as _createTextVNode, openBlock as _openBlock, createBlock as _createBlock, createCommentVNode as _createCommentVNode, renderList as _renderList, Fragment as _Fragment, unref as _unref, 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 { ModuleStaticInfo } from '../../src/types'\nimport Fuse from 'fuse.js'\nimport { computed, ref } from 'vue'\nimport { RecycleScroller } from 'vue-virtual-scroller'\nimport { useInstalledModules, useModulesList } from '~/composables/state-modules'\n\ntype SortingFunction<T> = (a: T, b: T) => number\n\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'ModuleInstallList',\n __ssrInlineRender: true,\n emits: ['close'],\n setup(__props, { emit: __emit }) {\n\nconst emit = __emit\n\nconst collection = useModulesList()\nconst installedModules = useInstalledModules()\n\nconst sortingOptions = ['downloads', 'stars', 'updated', 'created'] as const\nconst ascendingOrder = ref(false)\nconst selectedSortingOption = ref<typeof sortingOptions[number]>(sortingOptions[0])\nconst excludeInstalled = ref(true)\n\nconst sortingFactors: Record<typeof sortingOptions[number], SortingFunction<ModuleStaticInfo>> = {\n downloads: (a, b) => a.stats.downloads - b.stats.downloads,\n stars: (a, b) => a.stats.stars - b.stats.stars,\n created: (a, b) => a.stats.createdAt - b.stats.createdAt,\n updated: (a, b) => a.stats.publishedAt - b.stats.publishedAt,\n}\n\nconst sortedItems = computed(() => collection.value\n ?.toSorted((a, b) => sortingFactors[selectedSortingOption.value](a, b) * (ascendingOrder.value ? 1 : -1)))\n\nconst search = ref('')\nconst fuse = computed(() => new Fuse(collection.value || [], {\n keys: [\n 'name',\n 'description',\n 'npm',\n 'category',\n ],\n sortFn: (a, b) => {\n const itemA = collection.value?.[a.idx]\n const itemB = collection.value?.[b.idx]\n if (itemA && itemB)\n return sortingFactors[selectedSortingOption.value](itemA, itemB) * (ascendingOrder.value ? 1 : -1)\n return (a.score - b.score)\n },\n threshold: 0.2,\n}))\n\nconst items = computed(() => {\n let filteredItems = sortedItems.value\n if (excludeInstalled.value) {\n filteredItems = (filteredItems || []).filter(item => !installedModules.value.some(installed => installed.name === item.name))\n }\n if (!search.value)\n return filteredItems\n return fuse.value.search(search.value).map(r => r.item).filter(item => filteredItems?.includes(item))\n})\n\nreturn (_ctx: any,_push: any,_parent: any,_attrs: any) => {\n const _component_NIconTitle = _resolveComponent(\"NIconTitle\")!\n const _component_NNavbar = _resolveComponent(\"NNavbar\")!\n const _component_NDropdown = _resolveComponent(\"NDropdown\")!\n const _component_NButton = _resolveComponent(\"NButton\")!\n const _component_NIcon = _resolveComponent(\"NIcon\")!\n const _component_NCheckbox = _resolveComponent(\"NCheckbox\")!\n const _component_ModuleItemInstall = _resolveComponent(\"ModuleItemInstall\")!\n\n _push(`<div${_ssrRenderAttrs(_mergeProps({\n \"h-full\": \"\",\n flex: \"~ col gap-4\"\n }, _attrs))}>`)\n _push(_ssrRenderComponent(_component_NIconTitle, {\n mx6: \"\",\n mt6: \"\",\n \"text-xl\": \"\",\n op75: \"\",\n icon: \"i-carbon-intent-request-create\",\n text: \"Install Module\"\n }, null, _parent))\n _push(_ssrRenderComponent(_component_NNavbar, {\n search: search.value,\n \"onUpdate:search\": ($event: any) => ((search).value = $event),\n \"no-padding\": \"\",\n \"px-6\": \"\",\n \"pb-3\": \"\",\n \"pt-2\": \"\"\n }, {\n actions: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_NDropdown, {\n direction: \"end\",\n n: \"sm primary\"\n }, {\n trigger: _withCtx(({ click }, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<div flex=\"~ items-center\"${_scopeId}>`)\n _push(_ssrRenderComponent(_component_NButton, {\n icon: ascendingOrder.value ? 'tabler:sort-ascending' : 'tabler:sort-descending',\n \"h-full\": \"\",\n \"rounded-r-none\": \"\",\n onClick: ($event: any) => (ascendingOrder.value = !ascendingOrder.value)\n }, null, _parent, _scopeId))\n _push(_ssrRenderComponent(_component_NButton, {\n flex: \"~ justify-between\",\n \"min-w-30\": \"\",\n \"border-l-0\": \"\",\n \"rounded-l-none\": \"\",\n \"px-2\": \"\",\n capitalize: \"\",\n hover: \"border-l-1\",\n onClick: ($event: any) => (click())\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`${_ssrInterpolate(selectedSortingOption.value)} `)\n _push(_ssrRenderComponent(_component_NIcon, { icon: \"carbon:chevron-down\" }, null, _parent, _scopeId))\n } else {\n return [\n _createTextVNode(_toDisplayString(selectedSortingOption.value) + \" \", 1),\n _createVNode(_component_NIcon, { icon: \"carbon:chevron-down\" })\n ]\n }\n }),\n _: 2\n }, _parent, _scopeId))\n _push(`</div>`)\n } else {\n return [\n _createVNode(\"div\", { flex: \"~ items-center\" }, [\n _createVNode(_component_NButton, {\n icon: ascendingOrder.value ? 'tabler:sort-ascending' : 'tabler:sort-descending',\n \"h-full\": \"\",\n \"rounded-r-none\": \"\",\n onClick: ($event: any) => (ascendingOrder.value = !ascendingOrder.value)\n }, null, 8, [\"icon\", \"onClick\"]),\n _createVNode(_component_NButton, {\n flex: \"~ justify-between\",\n \"min-w-30\": \"\",\n \"border-l-0\": \"\",\n \"rounded-l-none\": \"\",\n \"px-2\": \"\",\n capitalize: \"\",\n hover: \"border-l-1\",\n onClick: ($event: any) => (click())\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(selectedSortingOption.value) + \" \", 1),\n _createVNode(_component_NIcon, { icon: \"carbon:chevron-down\" })\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ])\n ]\n }\n }),\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<div flex=\"~ col\" w-30 of-auto${_scopeId}><!--[-->`)\n _ssrRenderList(sortingOptions, (item) => {\n _push(_ssrRenderComponent(_component_NButton, {\n key: item,\n border: false,\n p2: \"\",\n hover: \"n-checkbox-hover text-green\",\n onClick: ($event: any) => (selectedSortingOption.value = item)\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<span flex=\"~ justify-between\" w-full text-xs capitalize op75${\n _scopeId\n }>${\n _ssrInterpolate(item)\n } `)\n if (selectedSortingOption.value === item) {\n _push(_ssrRenderComponent(_component_NIcon, { icon: \"carbon:checkmark\" }, null, _parent, _scopeId))\n } else {\n _push(`<!---->`)\n }\n _push(`</span>`)\n } else {\n return [\n _createVNode(\"span\", {\n flex: \"~ justify-between\",\n \"w-full\": \"\",\n \"text-xs\": \"\",\n capitalize: \"\",\n op75: \"\"\n }, [\n _createTextVNode(_toDisplayString(item) + \" \", 1),\n (selectedSortingOption.value === item)\n ? (_openBlock(), _createBlock(_component_NIcon, {\n key: 0,\n icon: \"carbon:checkmark\"\n }))\n : _createCommentVNode(\"\", true)\n ])\n ]\n }\n }),\n _: 2\n }, _parent, _scopeId))\n })\n _push(`<!--]--></div>`)\n } else {\n return [\n _createVNode(\"div\", {\n flex: \"~ col\",\n \"w-30\": \"\",\n \"of-auto\": \"\"\n }, [\n (_openBlock(), _createBlock(_Fragment, null, _renderList(sortingOptions, (item) => {\n return _createVNode(_component_NButton, {\n key: item,\n border: false,\n p2: \"\",\n hover: \"n-checkbox-hover text-green\",\n onClick: ($event: any) => (selectedSortingOption.value = item)\n }, {\n default: _withCtx(() => [\n _createVNode(\"span\", {\n flex: \"~ justify-between\",\n \"w-full\": \"\",\n \"text-xs\": \"\",\n capitalize: \"\",\n op75: \"\"\n }, [\n _createTextVNode(_toDisplayString(item) + \" \", 1),\n (selectedSortingOption.value === item)\n ? (_openBlock(), _createBlock(_component_NIcon, {\n key: 0,\n icon: \"carbon:checkmark\"\n }))\n : _createCommentVNode(\"\", true)\n ])\n ]),\n _: 2\n }, 1032, [\"onClick\"])\n }), 64))\n ])\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_NDropdown, {\n direction: \"end\",\n n: \"sm primary\"\n }, {\n trigger: _withCtx(({ click }) => [\n _createVNode(\"div\", { flex: \"~ items-center\" }, [\n _createVNode(_component_NButton, {\n icon: ascendingOrder.value ? 'tabler:sort-ascending' : 'tabler:sort-descending',\n \"h-full\": \"\",\n \"rounded-r-none\": \"\",\n onClick: ($event: any) => (ascendingOrder.value = !ascendingOrder.value)\n }, null, 8, [\"icon\", \"onClick\"]),\n _createVNode(_component_NButton, {\n flex: \"~ justify-between\",\n \"min-w-30\": \"\",\n \"border-l-0\": \"\",\n \"rounded-l-none\": \"\",\n \"px-2\": \"\",\n capitalize: \"\",\n hover: \"border-l-1\",\n onClick: ($event: any) => (click())\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(selectedSortingOption.value) + \" \", 1),\n _createVNode(_component_NIcon, { icon: \"carbon:chevron-down\" })\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ])\n ]),\n default: _withCtx(() => [\n _createVNode(\"div\", {\n flex: \"~ col\",\n \"w-30\": \"\",\n \"of-auto\": \"\"\n }, [\n (_openBlock(), _createBlock(_Fragment, null, _renderList(sortingOptions, (item) => {\n return _createVNode(_component_NButton, {\n key: item,\n border: false,\n p2: \"\",\n hover: \"n-checkbox-hover text-green\",\n onClick: ($event: any) => (selectedSortingOption.value = item)\n }, {\n default: _withCtx(() => [\n _createVNode(\"span\", {\n flex: \"~ justify-between\",\n \"w-full\": \"\",\n \"text-xs\": \"\",\n capitalize: \"\",\n op75: \"\"\n }, [\n _createTextVNode(_toDisplayString(item) + \" \", 1),\n (selectedSortingOption.value === item)\n ? (_openBlock(), _createBlock(_component_NIcon, {\n key: 0,\n icon: \"carbon:checkmark\"\n }))\n : _createCommentVNode(\"\", true)\n ])\n ]),\n _: 2\n }, 1032, [\"onClick\"])\n }), 64))\n ])\n ]),\n _: 1\n })\n ]\n }\n }),\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<div flex=\"~ items-center gap-2\"${_scopeId}>`)\n _push(_ssrRenderComponent(_component_NCheckbox, {\n modelValue: excludeInstalled.value,\n \"onUpdate:modelValue\": ($event: any) => ((excludeInstalled).value = $event),\n n: \"primary md\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<span op75${_scopeId}>Exclude installed modules</span>`)\n } else {\n return [\n _createVNode(\"span\", { op75: \"\" }, \"Exclude installed modules\")\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n _push(`<div flex=\"~ gap1\" text-sm op50${_scopeId}>`)\n if (search.value || excludeInstalled.value) {\n _push(`<span${\n _scopeId\n }>${\n _ssrInterpolate(items.value?.length)\n } matched · </span>`)\n } else {\n _push(`<!---->`)\n }\n _push(`<span${\n _scopeId\n }>${\n _ssrInterpolate(_unref(collection)?.length)\n } modules in total</span></div></div>`)\n } else {\n return [\n _createVNode(\"div\", { flex: \"~ items-center gap-2\" }, [\n _createVNode(_component_NCheckbox, {\n modelValue: excludeInstalled.value,\n \"onUpdate:modelValue\": ($event: any) => ((excludeInstalled).value = $event),\n n: \"primary md\"\n }, {\n default: _withCtx(() => [\n _createVNode(\"span\", { op75: \"\" }, \"Exclude installed modules\")\n ]),\n _: 1\n }, 8, [\"modelValue\", \"onUpdate:modelValue\"]),\n _createVNode(\"div\", {\n flex: \"~ gap1\",\n \"text-sm\": \"\",\n op50: \"\"\n }, [\n (search.value || excludeInstalled.value)\n ? (_openBlock(), _createBlock(\"span\", { key: 0 }, _toDisplayString(items.value?.length) + \" matched · \", 1))\n : _createCommentVNode(\"\", true),\n _createVNode(\"span\", null, _toDisplayString(_unref(collection)?.length) + \" modules in total\", 1)\n ])\n ])\n ]\n }\n }),\n _: 1\n }, _parent))\n _push(`<div flex-auto of-auto flex=\"~ col gap-2\" pl6 pr4>`)\n _push(_ssrRenderComponent(_unref(RecycleScroller), {\n class: \"scroller\",\n items: (items.value || []) as any[],\n \"item-size\": 200,\n \"key-field\": \"name\"\n }, {\n default: _withCtx(({ item }, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_ModuleItemInstall, {\n item: (item as ModuleStaticInfo),\n onStart: ($event: any) => (emit('close'))\n }, null, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_ModuleItemInstall, {\n item: (item as ModuleStaticInfo),\n onStart: ($event: any) => (emit('close'))\n }, null, 8, [\"item\", \"onStart\"])\n ]\n }\n }),\n _: 1\n }, _parent))\n _push(`</div></div>`)\n}\n}\n\n})","<script setup lang=\"ts\">\nimport type { ModuleStaticInfo } from '../../src/types'\nimport Fuse from 'fuse.js'\nimport { computed, ref } from 'vue'\nimport { RecycleScroller } from 'vue-virtual-scroller'\nimport { useInstalledModules, useModulesList } from '~/composables/state-modules'\n\ntype SortingFunction<T> = (a: T, b: T) => number\n\nconst emit = defineEmits(['close'])\n\nconst collection = useModulesList()\nconst installedModules = useInstalledModules()\n\nconst sortingOptions = ['downloads', 'stars', 'updated', 'created'] as const\nconst ascendingOrder = ref(false)\nconst selectedSortingOption = ref<typeof sortingOptions[number]>(sortingOptions[0])\nconst excludeInstalled = ref(true)\n\nconst sortingFactors: Record<typeof sortingOptions[number], SortingFunction<ModuleStaticInfo>> = {\n downloads: (a, b) => a.stats.downloads - b.stats.downloads,\n stars: (a, b) => a.stats.stars - b.stats.stars,\n created: (a, b) => a.stats.createdAt - b.stats.createdAt,\n updated: (a, b) => a.stats.publishedAt - b.stats.publishedAt,\n}\n\nconst sortedItems = computed(() => collection.value\n ?.toSorted((a, b) => sortingFactors[selectedSortingOption.value](a, b) * (ascendingOrder.value ? 1 : -1)))\n\nconst search = ref('')\nconst fuse = computed(() => new Fuse(collection.value || [], {\n keys: [\n 'name',\n 'description',\n 'npm',\n 'category',\n ],\n sortFn: (a, b) => {\n const itemA = collection.value?.[a.idx]\n const itemB = collection.value?.[b.idx]\n if (itemA && itemB)\n return sortingFactors[selectedSortingOption.value](itemA, itemB) * (ascendingOrder.value ? 1 : -1)\n return (a.score - b.score)\n },\n threshold: 0.2,\n}))\n\nconst items = computed(() => {\n let filteredItems = sortedItems.value\n if (excludeInstalled.value) {\n filteredItems = (filteredItems || []).filter(item => !installedModules.value.some(installed => installed.name === item.name))\n }\n if (!search.value)\n return filteredItems\n return fuse.value.search(search.value).map(r => r.item).filter(item => filteredItems?.includes(item))\n})\n</script>\n\n<template>\n <div h-full flex=\"~ col gap-4\">\n <NIconTitle\n mx6 mt6\n text-xl op75\n icon=\"i-carbon-intent-request-create\"\n text=\"Install Module\"\n />\n <NNavbar v-model:search=\"search\" no-padding px-6 pb-3 pt-2>\n <template #actions>\n <NDropdown direction=\"end\" n=\"sm primary\">\n <template #trigger=\"{ click }\">\n <div flex=\"~ items-center\">\n <NButton\n :icon=\"ascendingOrder ? 'tabler:sort-ascending' : 'tabler:sort-descending'\"\n h-full rounded-r-none\n @click=\"ascendingOrder = !ascendingOrder\"\n />\n <NButton\n flex=\"~ justify-between\"\n min-w-30 border-l-0 rounded-l-none px-2 capitalize\n hover=\"border-l-1\"\n @click=\"click()\"\n >\n {{ selectedSortingOption }}\n <NIcon icon=\"carbon:chevron-down\" />\n </NButton>\n </div>\n </template>\n <div flex=\"~ col\" w-30 of-auto>\n <NButton\n v-for=\"item of sortingOptions\"\n :key=\"item\"\n :border=\"false\" p2\n hover=\"n-checkbox-hover text-green\"\n @click=\"selectedSortingOption = item\"\n >\n <span flex=\"~ justify-between\" w-full text-xs capitalize op75>\n {{ item }}\n <NIcon v-if=\"selectedSortingOption === item\" icon=\"carbon:checkmark\" />\n </span>\n </NButton>\n </div>\n </NDropdown>\n </template>\n <div flex=\"~ items-center gap-2\">\n <NCheckbox v-model=\"excludeInstalled\" n=\"primary md\">\n <span op75>Exclude installed modules</span>\n </NCheckbox>\n <div flex=\"~ gap1\" text-sm op50>\n <span v-if=\"search || excludeInstalled\">{{ items?.length }} matched · </span>\n <span>{{ collection?.length }} modules in total</span>\n </div>\n </div>\n </NNavbar>\n\n <div flex-auto of-auto flex=\"~ col gap-2\" pl6 pr4>\n <RecycleScroller\n v-slot=\"{ item }\"\n class=\"scroller\"\n :items=\"(items || []) as any[]\"\n :item-size=\"200\"\n key-field=\"name\"\n >\n <ModuleItemInstall :item=\"(item as ModuleStaticInfo)\" @start=\"emit('close')\" />\n </RecycleScroller>\n </div>\n </div>\n</template>\n","import { defineComponent as _defineComponent } from 'vue'\nimport { unref as _unref, resolveComponent as _resolveComponent, withCtx as _withCtx, createTextVNode as _createTextVNode, toDisplayString as _toDisplayString, createVNode as _createVNode } from \"vue\"\nimport { ssrRenderComponent as _ssrRenderComponent, ssrRenderClass as _ssrRenderClass, ssrInterpolate as _ssrInterpolate } from \"vue/server-renderer\"\n\nimport { ModuleDialog } from '~/composables/dialog'\nimport { useOpenInEditor } from '~/composables/editor'\nimport { useServerConfig } from '~/composables/state'\n\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'ModuleActionDialog',\n __ssrInlineRender: true,\n setup(__props) {\n\nconst config = useServerConfig()\nconst openInEditor = useOpenInEditor()\n\nconst anyObj = {} as any\n\nreturn (_ctx: any,_push: any,_parent: any,_attrs: any) => {\n const _component_NDialog = _resolveComponent(\"NDialog\")!\n const _component_ModuleItemBase = _resolveComponent(\"ModuleItemBase\")!\n const _component_NCodeBlock = _resolveComponent(\"NCodeBlock\")!\n const _component_NLink = _resolveComponent(\"NLink\")!\n const _component_CodeDiff = _resolveComponent(\"CodeDiff\")!\n const _component_NTip = _resolveComponent(\"NTip\")!\n const _component_NButton = _resolveComponent(\"NButton\")!\n\n _push(_ssrRenderComponent(_unref(ModuleDialog), _attrs, {\n default: _withCtx(({ resolve, args }, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_NDialog, {\n \"model-value\": true,\n onClose: ($event: any) => (resolve(false))\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_ModuleItemBase, {\n mod: anyObj,\n info: args[0],\n border: \"none\",\n \"w-150\": \"\",\n \"n-panel-grids\": \"\"\n }, null, _parent, _scopeId))\n _push(`<div flex=\"~ col gap-2\" w-150 p4 border=\"t base\"${\n _scopeId\n }><h2 text-xl class=\"${\n _ssrRenderClass(args[2] === 'install' ? 'text-primary' : 'text-red')\n }\"${\n _scopeId\n }><span capitalize${\n _scopeId\n }>${\n _ssrInterpolate(args[2])\n }</span> <code${\n _scopeId\n }>${\n _ssrInterpolate(args[0].name)\n }</code>? </h2><p op50${\n _scopeId\n }> The following command will be executed in your terminal: </p>`)\n _push(_ssrRenderComponent(_component_NCodeBlock, {\n code: args[1].commands.join(' '),\n lang: \"bash\",\n px4: \"\",\n py2: \"\",\n border: \"~ base rounded\",\n lines: false\n }, null, _parent, _scopeId))\n _push(`<p op50${_scopeId}> Then your `)\n _push(_ssrRenderComponent(_component_NLink, {\n role: \"button\",\n n: \"primary\",\n underline: \"\",\n onClick: ($event: any) => (_unref(openInEditor)(_unref(config)?._nuxtConfigFile))\n }, null, _parent, _scopeId))\n _push(` will be updated as: </p>`)\n _push(_ssrRenderComponent(_component_CodeDiff, {\n from: args[1].configOriginal,\n to: args[1].configGenerated,\n \"max-h-80\": \"\",\n \"of-auto\": \"\",\n py2: \"\",\n border: \"~ base rounded\",\n lang: \"ts\"\n }, null, _parent, _scopeId))\n _push(`<p${\n _scopeId\n }><span op50${\n _scopeId\n }>After that, Nuxt will </span><span text-orange${\n _scopeId\n }>restart automatically</span>. </p><div flex=\"~ gap-3\" mt2 justify-end${\n _scopeId\n }>`)\n _push(_ssrRenderComponent(_component_NTip, {\n n: \"sm amber\",\n \"flex-auto\": \"\",\n icon: \"i-carbon-data-backup\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(` Please make sure to backup your project first. `)\n } else {\n return [\n _createTextVNode(\" Please make sure to backup your project first. \")\n ]\n }\n }),\n _: 2\n }, _parent, _scopeId))\n _push(_ssrRenderComponent(_component_NButton, {\n onClick: ($event: any) => (resolve(false))\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(` Cancel `)\n } else {\n return [\n _createTextVNode(\" Cancel \")\n ]\n }\n }),\n _: 2\n }, _parent, _scopeId))\n _push(_ssrRenderComponent(_component_NButton, {\n n: \"solid\",\n capitalize: \"\",\n class: args[2] === 'install' ? 'n-primary' : 'n-red',\n onClick: ($event: any) => (resolve(true))\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`${_ssrInterpolate(args[2])}`)\n } else {\n return [\n _createTextVNode(_toDisplayString(args[2]), 1)\n ]\n }\n }),\n _: 2\n }, _parent, _scopeId))\n _push(`</div></div>`)\n } else {\n return [\n _createVNode(_component_ModuleItemBase, {\n mod: anyObj,\n info: args[0],\n border: \"none\",\n \"w-150\": \"\",\n \"n-panel-grids\": \"\"\n }, null, 8, [\"info\"]),\n _createVNode(\"div\", {\n flex: \"~ col gap-2\",\n \"w-150\": \"\",\n p4: \"\",\n border: \"t base\"\n }, [\n _createVNode(\"h2\", {\n \"text-xl\": \"\",\n class: args[2] === 'install' ? 'text-primary' : 'text-red'\n }, [\n _createVNode(\"span\", { capitalize: \"\" }, _toDisplayString(args[2]), 1),\n _createTextVNode(),\n _createVNode(\"code\", null, _toDisplayString(args[0].name), 1),\n _createTextVNode(\"? \")\n ], 2),\n _createVNode(\"p\", { op50: \"\" }, \" The following command will be executed in your terminal: \"),\n _createVNode(_component_NCodeBlock, {\n code: args[1].commands.join(' '),\n lang: \"bash\",\n px4: \"\",\n py2: \"\",\n border: \"~ base rounded\",\n lines: false\n }, null, 8, [\"code\"]),\n _createVNode(\"p\", { op50: \"\" }, [\n _createTextVNode(\" Then your \"),\n _createVNode(_component_NLink, {\n role: \"button\",\n n: \"primary\",\n underline: \"\",\n onClick: ($event: any) => (_unref(openInEditor)(_unref(config)?._nuxtConfigFile)),\n textContent: 'Nuxt config'\n }, null, 8, [\"onClick\"]),\n _createTextVNode(\" will be updated as: \")\n ]),\n _createVNode(_component_CodeDiff, {\n from: args[1].configOriginal,\n to: args[1].configGenerated,\n \"max-h-80\": \"\",\n \"of-auto\": \"\",\n py2: \"\",\n border: \"~ base rounded\",\n lang: \"ts\"\n }, null, 8, [\"from\", \"to\"]),\n _createVNode(\"p\", null, [\n _createVNode(\"span\", { op50: \"\" }, \"After that, Nuxt will \"),\n _createVNode(\"span\", { \"text-orange\": \"\" }, \"restart automatically\"),\n _createTextVNode(\". \")\n ]),\n _createVNode(\"div\", {\n flex: \"~ gap-3\",\n mt2: \"\",\n \"justify-end\": \"\"\n }, [\n _createVNode(_component_NTip, {\n n: \"sm amber\",\n \"flex-auto\": \"\",\n icon: \"i-carbon-data-backup\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" Please make sure to backup your project first. \")\n ]),\n _: 1\n }),\n _createVNode(_component_NButton, {\n onClick: ($event: any) => (resolve(false))\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" Cancel \")\n ]),\n _: 1\n }, 8, [\"onClick\"]),\n _createVNode(_component_NButton, {\n n: \"solid\",\n capitalize: \"\",\n class: args[2] === 'install' ? 'n-primary' : 'n-red',\n onClick: ($event: any) => (resolve(true))\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(args[2]), 1)\n ]),\n _: 2\n }, 1032, [\"class\", \"onClick\"])\n ])\n ])\n ]\n }\n }),\n _: 2\n }, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_NDialog, {\n \"model-value\": true,\n onClose: ($event: any) => (resolve(false))\n }, {\n default: _withCtx(() => [\n _createVNode(_component_ModuleItemBase, {\n mod: anyObj,\n info: args[0],\n border: \"none\",\n \"w-150\": \"\",\n \"n-panel-grids\": \"\"\n }, null, 8, [\"info\"]),\n _createVNode(\"div\", {\n flex: \"~ col gap-2\",\n \"w-150\": \"\",\n p4: \"\",\n border: \"t base\"\n }, [\n _createVNode(\"h2\", {\n \"text-xl\": \"\",\n class: args[2] === 'install' ? 'text-primary' : 'text-red'\n }, [\n _createVNode(\"span\", { capitalize: \"\" }, _toDisplayString(args[2]), 1),\n _createTextVNode(),\n _createVNode(\"code\", null, _toDisplayString(args[0].name), 1),\n _createTextVNode(\"? \")\n ], 2),\n _createVNode(\"p\", { op50: \"\" }, \" The following command will be executed in your terminal: \"),\n _createVNode(_component_NCodeBlock, {\n code: args[1].commands.join(' '),\n lang: \"bash\",\n px4: \"\",\n py2: \"\",\n border: \"~ base rounded\",\n lines: false\n }, null, 8, [\"code\"]),\n _createVNode(\"p\", { op50: \"\" }, [\n _createTextVNode(\" Then your \"),\n _createVNode(_component_NLink, {\n role: \"button\",\n n: \"primary\",\n underline: \"\",\n onClick: ($event: any) => (_unref(openInEditor)(_unref(config)?._nuxtConfigFile)),\n textContent: 'Nuxt config'\n }, null, 8, [\"onClick\"]),\n _createTextVNode(\" will be updated as: \")\n ]),\n _createVNode(_component_CodeDiff, {\n from: args[1].configOriginal,\n to: args[1].configGenerated,\n \"max-h-80\": \"\",\n \"of-auto\": \"\",\n py2: \"\",\n border: \"~ base rounded\",\n lang: \"ts\"\n }, null, 8, [\"from\", \"to\"]),\n _createVNode(\"p\", null, [\n _createVNode(\"span\", { op50: \"\" }, \"After that, Nuxt will \"),\n _createVNode(\"span\", { \"text-orange\": \"\" }, \"restart automatically\"),\n _createTextVNode(\". \")\n ]),\n _createVNode(\"div\", {\n flex: \"~ gap-3\",\n mt2: \"\",\n \"justify-end\": \"\"\n }, [\n _createVNode(_component_NTip, {\n n: \"sm amber\",\n \"flex-auto\": \"\",\n icon: \"i-carbon-data-backup\"\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" Please make sure to backup your project first. \")\n ]),\n _: 1\n }),\n _createVNode(_component_NButton, {\n onClick: ($event: any) => (resolve(false))\n }, {\n default: _withCtx(() => [\n _createTextVNode(\" Cancel \")\n ]),\n _: 1\n }, 8, [\"onClick\"]),\n _createVNode(_component_NButton, {\n n: \"solid\",\n capitalize: \"\",\n class: args[2] === 'install' ? 'n-primary' : 'n-red',\n onClick: ($event: any) => (resolve(true))\n }, {\n default: _withCtx(() => [\n _createTextVNode(_toDisplayString(args[2]), 1)\n ]),\n _: 2\n }, 1032, [\"class\", \"onClick\"])\n ])\n ])\n ]),\n _: 2\n }, 1032, [\"onClose\"])\n ]\n }\n }),\n _: 1\n }, _parent))\n}\n}\n\n})","<script setup lang=\"ts\">\nimport { ModuleDialog } from '~/composables/dialog'\nimport { useOpenInEditor } from '~/composables/editor'\nimport { useServerConfig } from '~/composables/state'\n\nconst config = useServerConfig()\nconst openInEditor = useOpenInEditor()\n\nconst anyObj = {} as any\n</script>\n\n<template>\n <ModuleDialog v-slot=\"{ resolve, args }\">\n <NDialog :model-value=\"true\" @close=\"resolve(false)\">\n <ModuleItemBase :mod=\"anyObj\" :info=\"args[0]\" border=\"none\" w-150 n-panel-grids />\n <div flex=\"~ col gap-2\" w-150 p4 border=\"t base\">\n <h2 text-xl :class=\"args[2] === 'install' ? 'text-primary' : 'text-red'\">\n <span capitalize>{{ args[2] }}</span> <code>{{ args[0].name }}</code>?\n </h2>\n\n <p op50>\n The following command will be executed in your terminal:\n </p>\n <NCodeBlock :code=\"args[1].commands.join(' ')\" lang=\"bash\" px4 py2 border=\"~ base rounded\" :lines=\"false\" />\n\n <p op50>\n Then your <NLink role=\"button\" n=\"primary\" underline @click=\"openInEditor(config?._nuxtConfigFile)\" v-text=\"'Nuxt config'\" /> will be updated as:\n </p>\n\n <CodeDiff\n :from=\"args[1].configOriginal\"\n :to=\"args[1].configGenerated\"\n max-h-80 of-auto py2 border=\"~ base rounded\"\n lang=\"ts\"\n />\n\n <p>\n <span op50>After that, Nuxt will </span><span text-orange>restart automatically</span>.\n </p>\n\n <div flex=\"~ gap-3\" mt2 justify-end>\n <NTip n=\"sm amber\" flex-auto icon=\"i-carbon-data-backup\">\n Please make sure to backup your project first.\n </NTip>\n\n <NButton @click=\"resolve(false)\">\n Cancel\n </NButton>\n <NButton n=\"solid\" capitalize :class=\"args[2] === 'install' ? 'n-primary' : 'n-red'\" @click=\"resolve(true)\">\n {{ args[2] }}\n </NButton>\n </div>\n </div>\n </NDialog>\n </ModuleDialog>\n</template>\n","# Modules\n\nNuxt provides a module system to extend the framework core and simplify integrations. You don't need to develop everything from scratch or maintain boilerplate if there is already a Nuxt module for it. Adding Nuxt modules is possible using `nuxt.config`.\n\nYou can explore the list of modules on [nuxt.com/modules](https://nuxt.com/modules) or install them directly inside the DevTools.\n\n[Learn more in the documentation](https://nuxt.com/docs/guide/concepts/modules)\n","import { defineComponent as _defineComponent } from 'vue'\nimport { resolveComponent as _resolveComponent, withCtx as _withCtx, createVNode as _createVNode, toDisplayString as _toDisplayString, renderList as _renderList, Fragment as _Fragment, openBlock as _openBlock, createBlock as _createBlock, unref as _unref, createCommentVNode as _createCommentVNode } from \"vue\"\nimport { ssrRenderComponent as _ssrRenderComponent, ssrRenderAttr as _ssrRenderAttr, ssrRenderList as _ssrRenderList, ssrInterpolate as _ssrInterpolate } from \"vue/server-renderer\"\n\nimport { computed, ref } from 'vue'\nimport { definePageMeta } from '#imports'\nimport { rpc } from '~/composables/rpc'\nimport { registerCommands } from '~/composables/state-commands'\nimport { useInstalledModules } from '~/composables/state-modules'\n\nconst iconBase = 'https://ipx.nuxt.com/s_80,f_webp/gh/nuxt/modules/main/icons/'\n\n\nexport default /*@__PURE__*/_defineComponent({\n __name: 'modules',\n __ssrInlineRender: true,\n setup(__props) {\n\ndefinePageMeta({\n icon: 'carbon-3d-mpr-toggle',\n title: 'Modules',\n order: 5,\n})\n\nconst installModuleOpen = ref(false)\nconst installedModules = useInstalledModules()\n\nconst packageModules = computed(() => installedModules.value.filter(i => i.isPackageModule))\nconst userModules = computed(() => installedModules.value.filter(i => !i.isPackageModule))\n\nregisterCommands(() => [\n {\n id: 'action:modules:install',\n title: 'Install a new module',\n icon: 'i-carbon-intent-request-create ',\n action: () => {\n installModuleOpen.value = true\n },\n },\n])\n\nreturn (_ctx: any,_push: any,_parent: any,_attrs: any) => {\n const _component_NSectionBlock = _resolveComponent(\"NSectionBlock\")!\n const _component_ModuleItem = _resolveComponent(\"ModuleItem\")!\n const _component_NCard = _resolveComponent(\"NCard\")!\n const _component_NButton = _resolveComponent(\"NButton\")!\n const _component_ModuleInstallList = _resolveComponent(\"ModuleInstallList\")!\n const _component_ModuleActionDialog = _resolveComponent(\"ModuleActionDialog\")!\n const _component_HelpFab = _resolveComponent(\"HelpFab\")!\n const _component_DocsModules = _resolveComponent(\"DocsModules\")!\n\n _push(`<!--[--><div h-full w-full of-auto>`)\n _push(_ssrRenderComponent(_component_NSectionBlock, {\n icon: \"carbon-3d-mpr-toggle\",\n text: \"Installed Modules\",\n \"container-class\": \"grid grid-cols-minmax-400px gap3 px4\",\n padding: false,\n description: `Total modules: ${packageModules.value.length}`\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<!--[-->`)\n _ssrRenderList(packageModules.value, (m) => {\n _push(_ssrRenderComponent(_component_ModuleItem, {\n key: m.name,\n mod: m\n }, null, _parent, _scopeId))\n })\n _push(`<!--]--><!--[-->`)\n _ssrRenderList(_ctx.processInstallingModules, (m) => {\n _push(`<button block min-h-30 title=\"Open the output in the Terminals dock\"${_scopeId}>`)\n _push(_ssrRenderComponent(_component_NCard, {\n border: \"1.5 dashed\",\n \"h-full\": \"\",\n \"animate-pulse\": \"\",\n p4: \"\",\n transition: \"\",\n hover: \"border-primary\",\n flex: \"~ col gap-1 items-center justify-center\",\n role: \"button\",\n class: \"group\"\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<div relative h-20 w-20 flex flex-none rounded bg-gray:3 p3${\n _scopeId\n }><img${\n _ssrRenderAttr(\"src\", iconBase + m.info.icon)\n }${\n _ssrRenderAttr(\"alt\", m.info.name)\n } ma${\n _scopeId\n }><div i-carbon-cube ma text-4xl op30${\n _scopeId\n }></div></div><div text-lg group-hover=\"text-primary\" transition flex=\"~ gap-2 items-center\"${\n _scopeId\n }><div i-carbon-circle-dash animate-spin text-xl op75${\n _scopeId\n }></div><span op75${\n _scopeId\n }>Installing ${\n _ssrInterpolate(m.name)\n }...</span></div>`)\n } else {\n return [\n _createVNode(\"div\", {\n relative: \"\",\n \"h-20\": \"\",\n \"w-20\": \"\",\n flex: \"\",\n \"flex-none\": \"\",\n rounded: \"\",\n \"bg-gray:3\": \"\",\n p3: \"\"\n }, [\n _createVNode(\"img\", {\n src: iconBase + m.info.icon,\n alt: m.info.name,\n ma: \"\"\n }, null, 8, [\"src\", \"alt\"]),\n _createVNode(\"div\", {\n \"i-carbon-cube\": \"\",\n ma: \"\",\n \"text-4xl\": \"\",\n op30: \"\"\n })\n ]),\n _createVNode(\"div\", {\n \"text-lg\": \"\",\n \"group-hover\": \"text-primary\",\n transition: \"\",\n flex: \"~ gap-2 items-center\"\n }, [\n _createVNode(\"div\", {\n \"i-carbon-circle-dash\": \"\",\n \"animate-spin\": \"\",\n \"text-xl\": \"\",\n op75: \"\"\n }),\n _createVNode(\"span\", { op75: \"\" }, \"Installing \" + _toDisplayString(m.name) + \"...\", 1)\n ])\n ]\n }\n }),\n _: 2\n }, _parent, _scopeId))\n _push(`</button>`)\n })\n _push(`<!--]-->`)\n _push(_ssrRenderComponent(_component_NCard, {\n border: \"1.5 dashed\",\n \"min-h-30\": \"\",\n p4: \"\",\n transition: \"\",\n hover: \"border-primary\",\n flex: \"~ col gap-2 items-center justify-center\",\n role: \"button\",\n class: \"group\",\n onClick: ($event: any) => (installModuleOpen.value = true)\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<div i-carbon-intent-request-create text-4xl op40 group-hover=\"op75 text-primary\" transition${\n _scopeId\n }></div><div text-lg op40 group-hover=\"op75 text-primary\" transition${\n _scopeId\n }> Install New Module </div>`)\n } else {\n return [\n _createVNode(\"div\", {\n \"i-carbon-intent-request-create\": \"\",\n \"text-4xl\": \"\",\n op40: \"\",\n \"group-hover\": \"op75 text-primary\",\n transition: \"\"\n }),\n _createVNode(\"div\", {\n \"text-lg\": \"\",\n op40: \"\",\n \"group-hover\": \"op75 text-primary\",\n transition: \"\"\n }, \" Install New Module \")\n ]\n }\n }),\n _: 1\n }, _parent, _scopeId))\n } else {\n return [\n (_openBlock(true), _createBlock(_Fragment, null, _renderList(packageModules.value, (m) => {\n return (_openBlock(), _createBlock(_component_ModuleItem, {\n key: m.name,\n mod: m\n }, null, 8, [\"mod\"]))\n }), 128)),\n (_openBlock(true), _createBlock(_Fragment, null, _renderList(_ctx.processInstallingModules, (m) => {\n return (_openBlock(), _createBlock(\"button\", {\n key: m.processId,\n block: \"\",\n \"min-h-30\": \"\",\n title: \"Open the output in the Terminals dock\",\n onClick: ($event: any) => (_unref(rpc).revealTerminal(m.processId))\n }, [\n _createVNode(_component_NCard, {\n border: \"1.5 dashed\",\n \"h-full\": \"\",\n \"animate-pulse\": \"\",\n p4: \"\",\n transition: \"\",\n hover: \"border-primary\",\n flex: \"~ col gap-1 items-center justify-center\",\n role: \"button\",\n class: \"group\"\n }, {\n default: _withCtx(() => [\n _createVNode(\"div\", {\n relative: \"\",\n \"h-20\": \"\",\n \"w-20\": \"\",\n flex: \"\",\n \"flex-none\": \"\",\n rounded: \"\",\n \"bg-gray:3\": \"\",\n p3: \"\"\n }, [\n _createVNode(\"img\", {\n src: iconBase + m.info.icon,\n alt: m.info.name,\n ma: \"\"\n }, null, 8, [\"src\", \"alt\"]),\n _createVNode(\"div\", {\n \"i-carbon-cube\": \"\",\n ma: \"\",\n \"text-4xl\": \"\",\n op30: \"\"\n })\n ]),\n _createVNode(\"div\", {\n \"text-lg\": \"\",\n \"group-hover\": \"text-primary\",\n transition: \"\",\n flex: \"~ gap-2 items-center\"\n }, [\n _createVNode(\"div\", {\n \"i-carbon-circle-dash\": \"\",\n \"animate-spin\": \"\",\n \"text-xl\": \"\",\n op75: \"\"\n }),\n _createVNode(\"span\", { op75: \"\" }, \"Installing \" + _toDisplayString(m.name) + \"...\", 1)\n ])\n ]),\n _: 2\n }, 1024)\n ], 8, [\"onClick\"]))\n }), 128)),\n _createVNode(_component_NCard, {\n border: \"1.5 dashed\",\n \"min-h-30\": \"\",\n p4: \"\",\n transition: \"\",\n hover: \"border-primary\",\n flex: \"~ col gap-2 items-center justify-center\",\n role: \"button\",\n class: \"group\",\n onClick: ($event: any) => (installModuleOpen.value = true)\n }, {\n default: _withCtx(() => [\n _createVNode(\"div\", {\n \"i-carbon-intent-request-create\": \"\",\n \"text-4xl\": \"\",\n op40: \"\",\n \"group-hover\": \"op75 text-primary\",\n transition: \"\"\n }),\n _createVNode(\"div\", {\n \"text-lg\": \"\",\n op40: \"\",\n \"group-hover\": \"op75 text-primary\",\n transition: \"\"\n }, \" Install New Module \")\n ]),\n _: 1\n }, 8, [\"onClick\"])\n ]\n }\n }),\n _: 1\n }, _parent))\n if (userModules.value.length) {\n _push(_ssrRenderComponent(_component_NSectionBlock, {\n icon: \"carbon-3d-mpr-toggle\",\n text: \"User Modules\",\n \"container-class\": \"grid grid-cols-minmax-400px gap3 px4\",\n padding: false,\n description: `Total modules: ${userModules.value.length}`\n }, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(`<!--[-->`)\n _ssrRenderList(userModules.value, (m) => {\n _push(`<!--[-->`)\n if (m.meta?.name || m.entryPath) {\n _push(_ssrRenderComponent(_component_ModuleItem, { mod: m }, null, _parent, _scopeId))\n } else {\n _push(`<!---->`)\n }\n _push(`<!--]-->`)\n })\n _push(`<!--]-->`)\n } else {\n return [\n (_openBlock(true), _createBlock(_Fragment, null, _renderList(userModules.value, (m) => {\n return (_openBlock(), _createBlock(_Fragment, {\n key: m.meta?.name || m.entryPath\n }, [\n (m.meta?.name || m.entryPath)\n ? (_openBlock(), _createBlock(_component_ModuleItem, {\n key: 0,\n mod: m\n }, null, 8, [\"mod\"]))\n : _createCommentVNode(\"\", true)\n ], 64))\n }), 128))\n ]\n }\n }),\n _: 1\n }, _parent))\n } else {\n _push(`<!---->`)\n }\n if (installModuleOpen.value) {\n _push(`<div class=\"fixed bottom-0 left-0 right-0 top-0 z-100\" bg-black:20 backdrop-blur-2></div>`)\n } else {\n _push(`<!---->`)\n }\n if (installModuleOpen.value) {\n _push(`<div border=\"l base\" pos=\"fixed bottom-0 right-0 top-0\" z-200 w-150 bg-base>`)\n _push(_ssrRenderComponent(_component_NButton, {\n icon: \"carbon-close\",\n pos: \"absolute top-3 right-3 z-10\",\n \"rounded-full\": \"\",\n \"text-xl\": \"\",\n border: false,\n onClick: ($event: any) => (installModuleOpen.value = false)\n }, null, _parent))\n _push(_ssrRenderComponent(_component_ModuleInstallList, {\n onClose: ($event: any) => (installModuleOpen.value = false)\n }, null, _parent))\n _push(`</div>`)\n } else {\n _push(`<!---->`)\n }\n _push(_ssrRenderComponent(_component_ModuleActionDialog, null, null, _parent))\n _push(`</div>`)\n _push(_ssrRenderComponent(_component_HelpFab, null, {\n default: _withCtx((_, _push, _parent, _scopeId) => {\n if (_push) {\n _push(_ssrRenderComponent(_component_DocsModules, null, null, _parent, _scopeId))\n } else {\n return [\n _createVNode(_component_DocsModules)\n ]\n }\n }),\n _: 1\n }, _parent))\n _push(`<!--]-->`)\n}\n}\n\n})","<script setup lang=\"ts\">\nimport { computed, ref } from 'vue'\nimport { definePageMeta } from '#imports'\nimport { rpc } from '~/composables/rpc'\nimport { registerCommands } from '~/composables/state-commands'\nimport { useInstalledModules } from '~/composables/state-modules'\n\ndefinePageMeta({\n icon: 'carbon-3d-mpr-toggle',\n title: 'Modules',\n order: 5,\n})\n\nconst installModuleOpen = ref(false)\nconst installedModules = useInstalledModules()\n\nconst packageModules = computed(() => installedModules.value.filter(i => i.isPackageModule))\nconst userModules = computed(() => installedModules.value.filter(i => !i.isPackageModule))\n\nconst iconBase = 'https://ipx.nuxt.com/s_80,f_webp/gh/nuxt/modules/main/icons/'\n\nregisterCommands(() => [\n {\n id: 'action:modules:install',\n title: 'Install a new module',\n icon: 'i-carbon-intent-request-create ',\n action: () => {\n installModuleOpen.value = true\n },\n },\n])\n</script>\n\n<template>\n <div h-full w-full of-auto>\n <NSectionBlock\n icon=\"carbon-3d-mpr-toggle\"\n text=\"Installed Modules\"\n container-class=\"grid grid-cols-minmax-400px gap3 px4\"\n :padding=\"false\"\n :description=\"`Total modules: ${packageModules.length}`\"\n >\n <ModuleItem\n v-for=\"m of packageModules\"\n :key=\"m.name\"\n :mod=\"m\"\n />\n <button\n v-for=\"m of processInstallingModules\"\n :key=\"m.processId\" block min-h-30\n title=\"Open the output in the Terminals dock\"\n @click=\"rpc.revealTerminal(m.processId)\"\n >\n <NCard\n border=\"1.5 dashed\"\n h-full animate-pulse p4 transition\n hover=\"border-primary\"\n flex=\"~ col gap-1 items-center justify-center\"\n role=\"button\"\n class=\"group\"\n >\n <div relative h-20 w-20 flex flex-none rounded bg-gray:3 p3>\n <img :src=\"iconBase + m.info.icon\" :alt=\"m.info.name\" ma>\n <div i-carbon-cube ma text-4xl op30 />\n </div>\n <div text-lg group-hover=\"text-primary\" transition flex=\"~ gap-2 items-center\">\n <div i-carbon-circle-dash animate-spin text-xl op75 />\n <span op75>Installing {{ m.name }}...</span>\n </div>\n </NCard>\n </button>\n <NCard\n border=\"1.5 dashed\"\n min-h-30 p4 transition\n hover=\"border-primary\"\n flex=\"~ col gap-2 items-center justify-center\"\n role=\"button\"\n class=\"group\"\n @click=\"installModuleOpen = true\"\n >\n <div i-carbon-intent-request-create text-4xl op40 group-hover=\"op75 text-primary\" transition />\n <div text-lg op40 group-hover=\"op75 text-primary\" transition>\n Install New Module\n </div>\n </NCard>\n </NSectionBlock>\n <NSectionBlock\n v-if=\"userModules.length\"\n icon=\"carbon-3d-mpr-toggle\"\n text=\"User Modules\"\n container-class=\"grid grid-cols-minmax-400px gap3 px4\"\n :padding=\"false\"\n :description=\"`Total modules: ${userModules.length}`\"\n >\n <template v-for=\"m of userModules\" :key=\"m.meta?.name || m.entryPath\">\n <ModuleItem\n v-if=\"m.meta?.name || m.entryPath\"\n :mod=\"m\"\n />\n </template>\n </NSectionBlock>\n\n <Transition name=\"fade-in\">\n <div\n v-if=\"installModuleOpen\"\n class=\"fixed bottom-0 left-0 right-0 top-0 z-100\"\n bg-black:20 backdrop-blur-2 @click=\"installModuleOpen = false\"\n />\n </Transition>\n <Transition name=\"slide-in\">\n <div\n v-if=\"installModuleOpen\" border=\"l base\"\n pos=\"fixed bottom-0 right-0 top-0\" z-200 w-150 bg-base\n >\n <NButton\n icon=\"carbon-close\"\n pos=\"absolute top-3 right-3 z-10\"\n rounded-full text-xl :border=\"false\"\n @click=\"installModuleOpen = false\"\n />\n <ModuleInstallList @close=\"installModuleOpen = false\" />\n </div>\n </Transition>\n <ModuleActionDialog />\n </div>\n\n <HelpFab>\n <DocsModules />\n </HelpFab>\n</template>\n"],"version":3}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"none-Df66KJph.js","mappings":"","names":[],"sources":["../../../../../../../../layouts/none.vue"],"sourcesContent":["<template>\n <div relative w-full>\n <slot />\n </div>\n</template>\n"],"version":3}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"nuxt-C5VITehY.js","mappings":"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","names":[],"sources":["../../../../../../../../../../../node_modules/.pnpm/nuxt-nightly@5.0.0-29806258.d070492f_@oxc-project+types@0.148.0_@parcel+watcher@2.6.0_@_957e8ef33542258853c773b09ad5865f/node_modules/nuxt-nightly/dist/app/diagnostics/_shared.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/core.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/internal/tracing.js","../../../../../../../../../virtual:nuxt:node_modules%2F.cache%2Fnuxt%2F.nuxt%2Fnuxt.config.mjs","../../../../../../../../../../../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/nuxt.js"],"sourcesContent":["import { createConsoleReporter } from \"nostics\";\nimport { ansiFormatter } from \"nostics/formatters/ansi\";\nimport { createDevReporter } from \"nostics/reporters/dev\";\n//#region src/app/diagnostics/_shared.ts\n/**\n* Shared configuration for the runtime (E<N>xxx) diagnostics catalogs.\n*\n* Catalogs are split by domain and imported directly where used (no barrel),\n* so the browser bundle only pulls in the codes a module references. Pair the\n* pure-call annotations on each `defineDiagnostics()` with dev-guarded,\n* statement-level report calls so report-only diagnostics strip from production.\n*\n* Codes are stable, fully-qualified `NUXT_E<NNNN>` identifiers. Codes with a\n* dedicated docs page resolve a `see:` URL via {@link docsBase}; the rest opt\n* out with `docs: false`.\n*/\nfunction docsBase(code) {\n\treturn `https://nuxt.com/docs/4.x/errors/${code.replace(\"NUXT_\", \"\").toLowerCase()}`;\n}\nconst ansi = (open, close) => (s) => `\\x1B[${open}m${s}\\x1B[${close}m`;\nconst colors = {\n\tred: ansi(31, 39),\n\tyellow: ansi(33, 39),\n\tcyan: ansi(36, 39),\n\tgray: ansi(90, 39),\n\tbold: ansi(1, 22),\n\tdim: ansi(2, 22)\n};\nconst devReporters = import.meta.dev && !import.meta.test ? [/* @__PURE__ */ createDevReporter()] : [];\nconst reporters = [/* @__PURE__ */ createConsoleReporter(import.meta.client || import.meta.test ? void 0 : { formatter: ansiFormatter(colors) }), ...devReporters];\nconst prodReporter = (diagnostic) => {\n\tconsole.error(`[${diagnostic.name}]`);\n};\nconst prodReporters = [prodReporter];\n//#endregion\nexport { docsBase, prodReporters, reporters };\n","import { docsBase, prodReporters, reporters } from \"./_shared.js\";\nimport { defineDiagnostics, defineProdDiagnostics } from \"nostics\";\n//#region src/app/diagnostics/core.ts\n/**\n* E1xxx\n* Core / Nuxt-instance / lifecycle runtime diagnostics.\n*/\nconst appDiagnostics = !import.meta.dev ? /* #__PURE__ */ defineProdDiagnostics({\n\tdocsBase,\n\treporters: prodReporters\n}) : /* #__PURE__ */ defineDiagnostics({\n\tdocsBase,\n\treporters,\n\tcodes: {\n\t\tNUXT_E1001: {\n\t\t\twhy: \"A composable that requires access to the Nuxt instance was called outside of a plugin, Nuxt hook, Nuxt middleware, or Vue setup function. This is probably not a Nuxt bug.\",\n\t\t\tfix: \"Move this call inside a Vue `setup()` function, a Nuxt plugin, or a Nuxt middleware.\"\n\t\t},\n\t\tNUXT_E1003: {\n\t\t\twhy: (p) => `Could not access \\`${p.key}\\`. The only available runtime config keys on the client side are ${p.keys} and ${p.lastKey}.`,\n\t\t\tfix: (p) => `Move \\`${p.key}\\` under \\`runtimeConfig.public\\` in \\`nuxt.config\\` to make it available on the client side.`,\n\t\t\tdocs: false\n\t\t},\n\t\tNUXT_E1004: {\n\t\t\twhy: \"`setInterval` should not be used on the server.\",\n\t\t\tfix: \"Wrap it in an `onNuxtReady`, `onBeforeMount`, or `onMounted` lifecycle hook, or guard it with `import.meta.client` so it only runs in the browser.\",\n\t\t\tdocs: false\n\t\t},\n\t\tNUXT_E1005: {\n\t\t\twhy: \"Error caught during app initialization.\",\n\t\t\tfix: \"Check your plugins, `app:created`, and `app:beforeMount` hooks for unhandled errors.\",\n\t\t\tdocs: false\n\t\t},\n\t\tNUXT_E1006: {\n\t\t\twhy: \"To transform a callback into a string, `onPrehydrate` must be processed by the Nuxt build pipeline.\",\n\t\t\tfix: \"If it is called in a third-party library, add the library to `build.transpile`.\"\n\t\t},\n\t\tNUXT_E1007: {\n\t\t\twhy: (p) => `\\`${p.name}\\` is a compiler macro or compiler-hint helper and cannot be called at runtime. Its arguments are meant to be compiled away.`,\n\t\t\tfix: \"Call it statically from inside the directories scanned by the Nuxt compiler. For a page hint, call it from the `<script setup>` block of a page component in `pages/`.\"\n\t\t},\n\t\tNUXT_E1009: {\n\t\t\twhy: \"Error while mounting app.\",\n\t\t\tfix: \"Check your plugins and app initialization code for unhandled errors.\",\n\t\t\tdocs: false\n\t\t},\n\t\tNUXT_E1010: {\n\t\t\twhy: \"Response headers cannot be set in the browser.\",\n\t\t\tfix: \"Guard this code with `import.meta.server` or move it to a server-only context.\",\n\t\t\tdocs: false\n\t\t},\n\t\tNUXT_E1011: {\n\t\t\twhy: \"Error in `vue:setup`. Callbacks must be synchronous.\",\n\t\t\tfix: \"Remove `async` from your `vue:setup` hook callbacks, or move asynchronous work to another hook such as `app:created`.\",\n\t\t\tdocs: false\n\t\t},\n\t\tNUXT_E1012: {\n\t\t\twhy: (p) => `Not rendering error page for bot with user agent \\`${p.userAgent}\\`.`,\n\t\t\tfix: \"Crawlers receive the server-rendered HTML instead of the error page so they index the content. No action is needed unless you did not expect this request to be treated as a bot.\",\n\t\t\tdocs: false\n\t\t},\n\t\tNUXT_E1013: {\n\t\t\twhy: \"`onPrehydrate` was called with a `key` inside a component that has no vdom instance (for example a Vapor component). The keyed selector cannot be scoped to the component element, so the callback falls back to running unkeyed against the whole document.\",\n\t\t\tfix: \"Call keyed `onPrehydrate` from a vdom component, or drop the `key` argument if the callback is safe to run unscoped.\",\n\t\t\tdocs: false\n\t\t}\n\t}\n});\n//#endregion\nexport { appDiagnostics };\n","//#region src/app/internal/tracing.ts\nlet _channels;\nfunction getChannel(name) {\n\t_channels ??= {};\n\tif (name in _channels) return _channels[name];\n\tconst dc = globalThis.process?.getBuiltinModule?.(\"node:diagnostics_channel\");\n\tconst channel = dc?.tracingChannel ? dc.tracingChannel(name) : null;\n\t_channels[name] = channel;\n\treturn channel;\n}\nfunction traceAsync(name, context, fn) {\n\tconst channel = getChannel(name);\n\tif (!channel || channel.hasSubscribers === false) return fn();\n\treturn channel.tracePromise(fn, context);\n}\n//#endregion\nexport { traceAsync };\n","export const appBaseURL = \"/__NUXT_DEVTOOLS_BASE__/\"\n\nexport const appBuildAssetsDir = \"/_nuxt/\"\n\nexport const appCdnURL = \"\"\n\nexport const appHead = {\"meta\":[{\"name\":\"viewport\",\"content\":\"width=device-width, initial-scale=1\"},{\"charset\":\"utf-8\"}],\"link\":[],\"style\":[],\"script\":[],\"noscript\":[]}\n\nexport const appLayoutTransition = false\n\nexport const appPageTransition = false\n\nexport const appViewTransition = {\"enabled\":false}\n\nexport const appKeepalive = false\n\nexport const appRootId = \"__nuxt\"\n\nexport const appRootTag = \"div\"\n\nexport const appRootAttrs = {\"id\":\"__nuxt\"}\n\nexport const appTeleportTag = \"div\"\n\nexport const appTeleportId = \"teleports\"\n\nexport const appTeleportAttrs = {\"id\":\"teleports\"}\n\nexport const appSpaLoaderTag = \"div\"\n\nexport const appSpaLoaderAttrs = {\"id\":\"__nuxt-loader\"}\n\nexport const componentIslands = false\n\nexport const componentIslandsActive = false\n\nexport const payloadExtraction = false\n\nexport const prefetchPreloadTags = false\n\nexport const cookieStore = true\n\nexport const appManifest = true\n\nexport const remoteComponentIslands = false\n\nexport const selectiveClient = false\n\nexport const devPagesDir = null\n\nexport const devRootDir = null\n\nexport const devLogs = false\n\nexport const nuxtLinkDefaults = {\"componentName\":\"NuxtLink\",\"prefetch\":true,\"prefetchOn\":{\"visibility\":true}}\n\nexport const asyncDataDefaults = {\"deep\":false}\n\nexport const useStateDefaults = {\"resetOnClear\":true}\n\nexport const fetchDefaults = {}\n\nexport const vueAppRootContainer = '#__nuxt'\n\nexport const viewTransition = false\n\nexport const appId = \"nuxt-app\"\n\nexport const outdatedBuildInterval = 3600000\n\nexport const multiApp = false\n\nexport const chunkErrorEvent = \"vite:preloadError\"\n\nexport const crawlLinks = true\n\nexport const spaLoadingTemplateOutside = true\n\nexport const purgeCachedData = true\n\nexport const granularCachedData = true\n\nexport const stripNeverHydratedData = false\n\nexport const pendingWhenIdle = false\n\nexport const alwaysRunFetchOnKeyChange = false\n\nexport const asyncCallHook = false\n\nexport const clientNodePlaceholder = true\n\nexport const tracingChannelNuxt = false\n\nexport const runtimeCompiler = false\n\nexport const vapor = false\n\nexport const hasPluginDependencies = false\n\nexport const hasParallelPlugins = false\n\nexport const hasPluginHooks = false\n\nexport const hasIslandOptOutPlugins = false","import { traceAsync } from \"./internal/tracing.js\";\nimport { appDiagnostics } from \"./diagnostics/core.js\";\nimport { effectScope, getCurrentInstance, getCurrentScope, hasInjectionContext, reactive, shallowReactive } from \"vue\";\nimport \"./types/augments.js\";\nimport { createHooks } from \"hookable\";\nimport { getContext } from \"unctx\";\nimport { appId, asyncCallHook, chunkErrorEvent, componentIslands, hasIslandOptOutPlugins, hasParallelPlugins, hasPluginDependencies, hasPluginHooks, multiApp, tracingChannelNuxt, vapor } from \"#build/nuxt.config.mjs\";\n//#region src/app/nuxt.ts\nfunction getNuxtAppCtx(id = appId || \"nuxt-app\") {\n\treturn getContext(id, { asyncContext: !!__NUXT_ASYNC_CONTEXT__ && import.meta.server });\n}\nconst NuxtPluginIndicator = \"__nuxt_plugin\";\n/** @since 3.0.0 */\nfunction createNuxtApp(options) {\n\tlet hydratingCount = 0;\n\tconst nuxtApp = {\n\t\t_id: options.id || appId || \"nuxt-app\",\n\t\t_scope: effectScope(),\n\t\tprovide: void 0,\n\t\tversions: {\n\t\t\tget nuxt() {\n\t\t\t\treturn __NUXT_VERSION__;\n\t\t\t},\n\t\t\tget vue() {\n\t\t\t\treturn nuxtApp.vueApp.version;\n\t\t\t}\n\t\t},\n\t\tpayload: shallowReactive({\n\t\t\t...options.ssrContext?.payload || {},\n\t\t\tdata: shallowReactive({}),\n\t\t\tstate: reactive({}),\n\t\t\tonce: /* @__PURE__ */ new Set(),\n\t\t\t_errors: shallowReactive({})\n\t\t}),\n\t\tstatic: { data: {} },\n\t\trunWithContext(fn) {\n\t\t\tif (nuxtApp._scope.active && !getCurrentScope()) return nuxtApp._scope.run(() => callWithNuxt(nuxtApp, fn));\n\t\t\treturn callWithNuxt(nuxtApp, fn);\n\t\t},\n\t\tisHydrating: import.meta.client,\n\t\tdeferHydration() {\n\t\t\tif (!nuxtApp.isHydrating) return () => {};\n\t\t\thydratingCount++;\n\t\t\tlet called = false;\n\t\t\treturn () => {\n\t\t\t\tif (called) return;\n\t\t\t\tcalled = true;\n\t\t\t\thydratingCount--;\n\t\t\t\tif (hydratingCount === 0) {\n\t\t\t\t\tnuxtApp.isHydrating = false;\n\t\t\t\t\treturn nuxtApp.callHook(\"app:suspense:resolve\");\n\t\t\t\t}\n\t\t\t};\n\t\t},\n\t\t_asyncDataPromises: {},\n\t\t_asyncData: shallowReactive({}),\n\t\t_state: shallowReactive({}),\n\t\t_payloadRevivers: {},\n\t\t...options\n\t};\n\tif (import.meta.server) nuxtApp.payload.serverRendered = true;\n\tif (import.meta.server && nuxtApp.ssrContext) {\n\t\tnuxtApp.payload.path = nuxtApp.ssrContext.url;\n\t\tnuxtApp.ssrContext.nuxt = nuxtApp;\n\t\tnuxtApp.ssrContext.payload = nuxtApp.payload;\n\t\tnuxtApp.ssrContext.config = {\n\t\t\tpublic: nuxtApp.ssrContext.runtimeConfig.public,\n\t\t\tapp: nuxtApp.ssrContext.runtimeConfig.app\n\t\t};\n\t}\n\tif (import.meta.client) {\n\t\tconst __NUXT__ = multiApp ? window.__NUXT__?.[nuxtApp._id] : window.__NUXT__;\n\t\tif (__NUXT__) for (const key in __NUXT__) switch (key) {\n\t\t\tcase \"data\":\n\t\t\tcase \"state\":\n\t\t\tcase \"_errors\":\n\t\t\t\tObject.assign(nuxtApp.payload[key], __NUXT__[key]);\n\t\t\t\tbreak;\n\t\t\tdefault: nuxtApp.payload[key] = __NUXT__[key];\n\t\t}\n\t}\n\tnuxtApp.hooks = createHooks();\n\tnuxtApp.hook = nuxtApp.hooks.hook;\n\tif (import.meta.server) {\n\t\tconst contextCaller = async function(hooks, args) {\n\t\t\tfor (const hook of hooks) await nuxtApp.runWithContext(() => hook(...args));\n\t\t};\n\t\tnuxtApp.hooks.callHook = (name, ...args) => nuxtApp.hooks.callHookWith(contextCaller, name, args);\n\t} else if (asyncCallHook) {\n\t\tconst _callHook = nuxtApp.hooks.callHook;\n\t\tnuxtApp.hooks.callHook = (name, ...args) => Promise.resolve().then(() => _callHook(name, ...args));\n\t}\n\tnuxtApp.callHook = nuxtApp.hooks.callHook;\n\tnuxtApp.provide = (name, value) => {\n\t\tconst $name = \"$\" + name;\n\t\tdefineGetter(nuxtApp, $name, value);\n\t\tdefineGetter(nuxtApp.vueApp.config.globalProperties, $name, value);\n\t};\n\tdefineGetter(nuxtApp.vueApp, \"$nuxt\", nuxtApp);\n\tdefineGetter(nuxtApp.vueApp.config.globalProperties, \"$nuxt\", nuxtApp);\n\tif (import.meta.client) {\n\t\tif (chunkErrorEvent) window.addEventListener(chunkErrorEvent, (event) => {\n\t\t\tnuxtApp.callHook(\"app:chunkError\", { error: event.payload });\n\t\t\tif (event.payload?.message?.includes(\"Unable to preload CSS\")) event.preventDefault();\n\t\t});\n\t\twindow.useNuxtApp ||= useNuxtApp;\n\t\tconst unreg = nuxtApp.hook(\"app:error\", (...args) => {\n\t\t\tappDiagnostics.NUXT_E1005({ cause: args.length > 1 ? args : args[0] });\n\t\t});\n\t\tnuxtApp.hook(\"app:mounted\", unreg);\n\t}\n\tconst runtimeConfig = import.meta.server ? options.ssrContext.runtimeConfig : nuxtApp.payload.config;\n\tnuxtApp.provide(\"config\", import.meta.client && import.meta.dev ? wrappedConfig(runtimeConfig) : runtimeConfig);\n\treturn nuxtApp;\n}\n/** @since 3.12.0 */\nfunction registerPluginHooks(nuxtApp, plugin) {\n\tif (plugin.hooks) nuxtApp.hooks.addHooks(plugin.hooks);\n}\n/** @since 3.0.0 */\nasync function applyPlugin(nuxtApp, plugin) {\n\tif (typeof plugin === \"function\") {\n\t\tconst run = () => nuxtApp.runWithContext(() => plugin(nuxtApp));\n\t\tconst { provide } = await (import.meta.server && tracingChannelNuxt ? traceAsync(\"nuxt.plugin\", { plugin: {\n\t\t\tname: plugin._name,\n\t\t\tparallel: plugin.parallel,\n\t\t\tdependsOn: plugin.dependsOn\n\t\t} }, run) : run()) || {};\n\t\tif (provide && typeof provide === \"object\") for (const key in provide) nuxtApp.provide(key, provide[key]);\n\t}\n}\n/** @since 3.0.0 */\nasync function applyPlugins(nuxtApp, plugins) {\n\tif (hasPluginDependencies || hasParallelPlugins) return applyPluginsWithDependencies(nuxtApp, plugins);\n\tlet error;\n\tconst checkIslandEnv = import.meta.server && componentIslands && hasIslandOptOutPlugins;\n\tif (hasPluginHooks) for (const plugin of plugins) {\n\t\tif (checkIslandEnv && nuxtApp.ssrContext?.islandContext && plugin.env?.islands === false) continue;\n\t\tregisterPluginHooks(nuxtApp, plugin);\n\t}\n\tfor (const plugin of plugins) {\n\t\tif (checkIslandEnv && nuxtApp.ssrContext?.islandContext && plugin.env?.islands === false) continue;\n\t\ttry {\n\t\t\tawait applyPlugin(nuxtApp, plugin);\n\t\t} catch (e) {\n\t\t\tif (!nuxtApp.payload.error) throw e;\n\t\t\terror ||= e;\n\t\t}\n\t}\n\tif (error) throw nuxtApp.payload.error || error;\n}\nasync function applyPluginsWithDependencies(nuxtApp, plugins) {\n\tconst resolvedPlugins = /* @__PURE__ */ new Set();\n\tconst unresolvedPlugins = [];\n\tconst parallels = [];\n\tlet error;\n\tlet promiseDepth = 0;\n\tasync function executePlugin(plugin) {\n\t\tconst unresolvedPluginsForThisPlugin = plugin.dependsOn?.filter((name) => plugins.some((p) => p._name === name) && !resolvedPlugins.has(name)) ?? [];\n\t\tif (unresolvedPluginsForThisPlugin.length > 0) unresolvedPlugins.push([new Set(unresolvedPluginsForThisPlugin), plugin]);\n\t\telse {\n\t\t\tconst promise = applyPlugin(nuxtApp, plugin).then(async () => {\n\t\t\t\tif (plugin._name) {\n\t\t\t\t\tresolvedPlugins.add(plugin._name);\n\t\t\t\t\tawait Promise.all(unresolvedPlugins.map(async ([dependsOn, unexecutedPlugin]) => {\n\t\t\t\t\t\tif (dependsOn.has(plugin._name)) {\n\t\t\t\t\t\t\tdependsOn.delete(plugin._name);\n\t\t\t\t\t\t\tif (dependsOn.size === 0) {\n\t\t\t\t\t\t\t\tpromiseDepth++;\n\t\t\t\t\t\t\t\tawait executePlugin(unexecutedPlugin);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}));\n\t\t\t\t}\n\t\t\t}).catch((e) => {\n\t\t\t\tif (!plugin.parallel && !nuxtApp.payload.error) throw e;\n\t\t\t\terror ||= e;\n\t\t\t});\n\t\t\tif (plugin.parallel) parallels.push(promise);\n\t\t\telse await promise;\n\t\t}\n\t}\n\tconst checkIslandEnv = import.meta.server && componentIslands && hasIslandOptOutPlugins;\n\tif (hasPluginHooks) for (const plugin of plugins) {\n\t\tif (checkIslandEnv && nuxtApp.ssrContext?.islandContext && plugin.env?.islands === false) continue;\n\t\tregisterPluginHooks(nuxtApp, plugin);\n\t}\n\tfor (const plugin of plugins) {\n\t\tif (checkIslandEnv && nuxtApp.ssrContext?.islandContext && plugin.env?.islands === false) continue;\n\t\tawait executePlugin(plugin);\n\t}\n\tawait Promise.all(parallels);\n\tif (promiseDepth) for (let i = 0; i < promiseDepth; i++) await Promise.all(parallels);\n\tif (error) throw nuxtApp.payload.error || error;\n}\n/** @since 3.0.0 */\n/* @__NO_SIDE_EFFECTS__ */\nfunction defineNuxtPlugin(plugin) {\n\tif (typeof plugin === \"function\") return plugin;\n\tconst _name = plugin._name || plugin.name;\n\tdelete plugin.name;\n\treturn Object.assign(plugin.setup || (() => {}), plugin, {\n\t\t[NuxtPluginIndicator]: true,\n\t\t_name\n\t});\n}\nconst definePayloadPlugin = defineNuxtPlugin;\n/** @since 3.0.0 */\nfunction isNuxtPlugin(plugin) {\n\treturn typeof plugin === \"function\" && \"__nuxt_plugin\" in plugin;\n}\n/**\n* Ensures that the setup function passed in has access to the Nuxt instance via `useNuxtApp`.\n* @param nuxt A Nuxt instance\n* @param setup The function to call\n* @since 3.0.0\n*/\nfunction callWithNuxt(nuxt, setup, args) {\n\tconst fn = () => args ? setup(...args) : setup();\n\tconst nuxtAppCtx = getNuxtAppCtx(nuxt._id);\n\tif (import.meta.server) return nuxt.vueApp.runWithContext(() => nuxtAppCtx.callAsync(nuxt, fn));\n\telse {\n\t\tnuxtAppCtx.set(nuxt);\n\t\treturn nuxt.vueApp.runWithContext(fn);\n\t}\n}\nfunction tryUseNuxtApp(id) {\n\tlet nuxtAppInstance;\n\tif (hasInjectionContext()) nuxtAppInstance = getCurrentInstance()?.appContext.app.$nuxt;\n\tnuxtAppInstance ||= getNuxtAppCtx(id).tryUse();\n\treturn nuxtAppInstance || null;\n}\nfunction useNuxtApp(id) {\n\tconst nuxtAppInstance = tryUseNuxtApp(id);\n\tif (!nuxtAppInstance) throw appDiagnostics.NUXT_E1001();\n\treturn nuxtAppInstance;\n}\n/**\n* Whether the current execution context is a component setup rather than a plugin or the app scope.\n*\n* Vapor components have no vdom `getCurrentInstance()`, but their setup runs within a dedicated\n* effect scope distinct from the nuxt app's own scope (which plugins run in), so the scope\n* discriminates the two cases.\n* @internal\n*/\nfunction isInComponentSetup(nuxtApp) {\n\tif (getCurrentInstance()) return true;\n\tif (!vapor) return false;\n\tconst scope = getCurrentScope();\n\treturn !!scope && scope !== nuxtApp._scope;\n}\n/** @since 3.0.0 */\n/* @__NO_SIDE_EFFECTS__ */\nfunction useRuntimeConfig() {\n\treturn useNuxtApp().$config;\n}\nfunction defineGetter(obj, key, val) {\n\tObject.defineProperty(obj, key, { get: () => val });\n}\n/** @since 3.0.0 */\nfunction defineAppConfig(config) {\n\treturn config;\n}\n/**\n* Configure error getter on runtime secret property access that doesn't exist on the client side\n*/\nconst loggedKeys = /* @__PURE__ */ new Set();\nfunction wrappedConfig(runtimeConfig) {\n\tif (!import.meta.dev || import.meta.server) return runtimeConfig;\n\tconst keys = [];\n\tfor (const key in runtimeConfig) keys.push(`\\`${key}\\``);\n\tconst lastKey = keys.pop();\n\treturn new Proxy(runtimeConfig, { get(target, p, receiver) {\n\t\tif (typeof p === \"string\" && p !== \"public\" && !(p in target) && !p.startsWith(\"__v\")) {\n\t\t\tif (!loggedKeys.has(p)) {\n\t\t\t\tloggedKeys.add(p);\n\t\t\t\tappDiagnostics.NUXT_E1003({\n\t\t\t\t\tkey: p,\n\t\t\t\t\tkeys: keys.join(\", \"),\n\t\t\t\t\tlastKey\n\t\t\t\t});\n\t\t\t}\n\t\t}\n\t\treturn Reflect.get(target, p, receiver);\n\t} });\n}\n//#endregion\nexport { NuxtPluginIndicator, applyPlugin, applyPlugins, callWithNuxt, createNuxtApp, defineAppConfig, defineNuxtPlugin, definePayloadPlugin, getNuxtAppCtx, isInComponentSetup, isNuxtPlugin, registerPluginHooks, tryUseNuxtApp, useNuxtApp, useRuntimeConfig };\n"],"version":3}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"file":"nuxt-link-C-BBeF5l.js","mappings":"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","names":["useRouter$1","routerOptions0"],"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/router.options.js","../../../../../../../../../virtual:nuxt:node_modules%2F.cache%2Fnuxt%2F.nuxt%2Frouter.options.mjs","../../../../../../../../../../../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/nuxt-link.js"],"sourcesContent":["import { useNuxtApp } from \"#app/nuxt\";\nimport { START_LOCATION } from \"vue-router\";\nimport { useRouter as useRouter$1 } from \"#app/composables/router\";\nimport { isChangingPage } from \"#app/components/utils\";\n//#region src/pages/runtime/router.options.ts\nvar router_options_default = { scrollBehavior(to, from, savedPosition) {\n\tconst nuxtApp = useNuxtApp();\n\tconst router = useRouter$1();\n\tconst hashScrollBehaviour = router.options?.scrollBehaviorType ?? \"auto\";\n\tif (to.path.replace(/\\/$/, \"\") === from.path.replace(/\\/$/, \"\")) {\n\t\tif (from.hash && !to.hash) return savedPosition ?? {\n\t\t\tleft: 0,\n\t\t\ttop: 0\n\t\t};\n\t\tif (to.hash) return {\n\t\t\tel: to.hash,\n\t\t\ttop: _getHashElementScrollMarginTop(to.hash),\n\t\t\tbehavior: hashScrollBehaviour\n\t\t};\n\t\treturn false;\n\t}\n\tif ((typeof to.meta.scrollToTop === \"function\" ? to.meta.scrollToTop(to, from) : to.meta.scrollToTop) === false) return false;\n\tif (from === START_LOCATION) return _calculatePosition(to, from, savedPosition, hashScrollBehaviour);\n\treturn new Promise((resolve) => {\n\t\tconst doScroll = () => {\n\t\t\trequestAnimationFrame(() => {\n\t\t\t\tif (router.currentRoute.value.fullPath !== to.fullPath) {\n\t\t\t\t\tresolve(false);\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tresolve(_calculatePosition(to, from, savedPosition, hashScrollBehaviour));\n\t\t\t});\n\t\t};\n\t\tnuxtApp.hooks.hookOnce(\"page:loading:end\", () => {\n\t\t\tconst transitionPromise = nuxtApp[\"~transitionPromise\"];\n\t\t\tif (transitionPromise) transitionPromise.then(doScroll);\n\t\t\telse doScroll();\n\t\t});\n\t});\n} };\nfunction _getHashElementScrollMarginTop(selector) {\n\ttry {\n\t\tconst elem = document.querySelector(selector);\n\t\tif (elem) return (Number.parseFloat(getComputedStyle(elem).scrollMarginTop) || 0) + (Number.parseFloat(getComputedStyle(document.documentElement).scrollPaddingTop) || 0);\n\t} catch {}\n\treturn 0;\n}\nfunction _calculatePosition(to, from, savedPosition, defaultHashScrollBehaviour) {\n\tif (savedPosition) return savedPosition;\n\tif (to.hash) return {\n\t\tel: to.hash,\n\t\ttop: _getHashElementScrollMarginTop(to.hash),\n\t\tbehavior: isChangingPage(to, from) ? defaultHashScrollBehaviour : \"instant\"\n\t};\n\treturn {\n\t\tleft: 0,\n\t\ttop: 0\n\t};\n}\n//#endregion\nexport { router_options_default as default };\n","import routerOptions0 from \"/home/runner/work/devtools/devtools/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/router.options.js\";\nconst configRouterOptions = {\n hashMode: true,\n scrollBehaviorType: \"auto\",\n sensitive: true\n}\nexport const hashMode = true\nexport default {\n...configRouterOptions,\n...routerOptions0,\n}","import { useNuxtApp, useRuntimeConfig } from \"../nuxt.js\";\nimport { navigationDiagnostics } from \"../diagnostics/navigation.js\";\nimport { encodeRoutePath, navigateTo, resolveRouteObject, useRouter } from \"../composables/router.js\";\nimport { renderDiagnostics } from \"../diagnostics/render.js\";\nimport { cancelIdleCallback, requestIdleCallback } from \"../compat/idle-callback.js\";\nimport { onNuxtReady } from \"../composables/ready.js\";\nimport { preloadRouteComponents } from \"../composables/preload.js\";\nimport { computed, defineComponent, h, inject, onBeforeUnmount, onMounted, provide, ref, resolveComponent, shallowRef, unref } from \"vue\";\nimport { componentIslands, nuxtLinkDefaults } from \"#build/nuxt.config.mjs\";\nimport { hasProtocol, isScriptProtocol, joinURL, parseQuery, withTrailingSlash, withoutTrailingSlash } from \"ufo\";\nimport { hashMode } from \"#build/router.options.mjs\";\n//#region src/app/components/nuxt-link.ts\nconst firstNonUndefined = (...args) => args.find((arg) => arg !== void 0);\n/**\n* Reject URL strings that would resolve to a script-capable protocol when used as the\n* `href` of an anchor element. Returns the value unchanged when safe, or `null`.\n*\n* The denylist is delegated to `ufo`'s `isScriptProtocol` so it stays in sync with the\n* check used by `navigateTo` (currently `javascript:`, `data:`, `vbscript:`, `blob:`).\n* ASCII whitespace and control characters are stripped first because browser URL\n* parsers tolerate them before the scheme, and `view-source:` is peeled recursively\n* because Chromium resolves it transparently to the inner URL.\n*/\nfunction sanitizeExternalHref(value) {\n\tlet candidate = value.replace(/[\\u0000-\\u001F\\s]+/g, \"\");\n\twhile (candidate.toLowerCase().startsWith(\"view-source:\")) candidate = candidate.slice(12);\n\tconst colon = candidate.indexOf(\":\");\n\tif (colon > 0 && isScriptProtocol(candidate.slice(0, colon + 1))) return null;\n\treturn value;\n}\nconst NuxtLinkDevKeySymbol = Symbol(\"nuxt-link-dev-key\");\n/* @__NO_SIDE_EFFECTS__ */\nfunction defineNuxtLink(options) {\n\tconst componentName = options.componentName || \"NuxtLink\";\n\tfunction checkPropConflicts(props, main, sub) {\n\t\tif (false && props[main] !== void 0 && props[sub] !== void 0) renderDiagnostics.NUXT_E4010({\n\t\t\tcomponentName,\n\t\t\tmain,\n\t\t\tsub\n\t\t});\n\t}\n\tfunction isHashLinkWithoutHashMode(link) {\n\t\treturn !hashMode && typeof link === \"string\" && link.startsWith(\"#\");\n\t}\n\tfunction resolveTrailingSlashBehavior(to, resolve, trailingSlash) {\n\t\tconst effectiveTrailingSlash = trailingSlash ?? options.trailingSlash;\n\t\tif (!to || effectiveTrailingSlash !== \"append\" && effectiveTrailingSlash !== \"remove\") return to;\n\t\tif (typeof to === \"string\") return applyTrailingSlashBehavior(to, effectiveTrailingSlash);\n\t\tconst path = \"path\" in to && to.path !== void 0 ? to.path : resolve(to).path;\n\t\treturn {\n\t\t\t...to,\n\t\t\tname: void 0,\n\t\t\tpath: applyTrailingSlashBehavior(path, effectiveTrailingSlash)\n\t\t};\n\t}\n\t/**\n\t* The link state `<NuxtLink>` renders with. Kept separate from `useNuxtLink` so the component\n\t* does not resolve the `<RouterLink>` link state backing `route`/`isActive`/`isExactActive`,\n\t* which it never reads.\n\t*/\n\tfunction useLinkTarget(props) {\n\t\tconst router = useRouter();\n\t\tconst config = /* @__PURE__ */ useRuntimeConfig();\n\t\tconst hasTarget = computed(() => !!unref(props.target) && unref(props.target) !== \"_self\");\n\t\tconst isAbsoluteUrl = computed(() => {\n\t\t\tconst path = unref(props.to) || unref(props.href) || \"\";\n\t\t\treturn typeof path === \"string\" && hasProtocol(path, { acceptRelative: true });\n\t\t});\n\t\tconst isExternal = computed(() => {\n\t\t\tif (unref(props.external)) return true;\n\t\t\tconst path = unref(props.to) || unref(props.href) || \"\";\n\t\t\tif (typeof path === \"object\") return false;\n\t\t\treturn path === \"\" || isAbsoluteUrl.value;\n\t\t});\n\t\tconst to = computed(() => {\n\t\t\tcheckPropConflicts(props, \"to\", \"href\");\n\t\t\tconst path = unref(props.to) || unref(props.href) || \"\";\n\t\t\tif (isExternal.value) return path;\n\t\t\treturn resolveTrailingSlashBehavior(path, router.resolve, unref(props.trailingSlash));\n\t\t});\n\t\tconst href = computed(() => {\n\t\t\tconst effectiveTrailingSlash = unref(props.trailingSlash) ?? options.trailingSlash;\n\t\t\tif (!to.value || isAbsoluteUrl.value || isHashLinkWithoutHashMode(to.value)) {\n\t\t\t\tconst raw = to.value;\n\t\t\t\treturn typeof raw === \"string\" ? sanitizeExternalHref(raw) : raw;\n\t\t\t}\n\t\t\tif (isExternal.value) {\n\t\t\t\tconst path = typeof to.value === \"object\" && \"path\" in to.value ? resolveRouteObject(to.value) : to.value;\n\t\t\t\tconst href = typeof path === \"object\" ? router.resolve(path).href : path;\n\t\t\t\tconst safe = typeof href === \"string\" ? sanitizeExternalHref(href) : href;\n\t\t\t\treturn safe === null ? null : applyTrailingSlashBehavior(safe, effectiveTrailingSlash);\n\t\t\t}\n\t\t\tif (typeof to.value === \"object\") return router.resolve(to.value)?.href ?? null;\n\t\t\treturn applyTrailingSlashBehavior(joinURL(config.app.baseURL, to.value), effectiveTrailingSlash);\n\t\t});\n\t\treturn {\n\t\t\tto,\n\t\t\thasTarget,\n\t\t\tisAbsoluteUrl,\n\t\t\tisExternal,\n\t\t\thref,\n\t\t\tasync navigate(_e) {\n\t\t\t\tif (href.value === null) {\n\t\t\t\t\tif (false) navigationDiagnostics.NUXT_E2011({ componentName });\n\t\t\t\t\treturn;\n\t\t\t\t}\n\t\t\t\tawait navigateTo(href.value, {\n\t\t\t\t\treplace: unref(props.replace),\n\t\t\t\t\texternal: isExternal.value || hasTarget.value\n\t\t\t\t});\n\t\t\t}\n\t\t};\n\t}\n\tfunction useNuxtLink(props) {\n\t\tconst router = useRouter();\n\t\tconst target = useLinkTarget(props);\n\t\tconst builtinRouterLink = resolveComponent(\"RouterLink\");\n\t\tconst useBuiltinLink = builtinRouterLink && typeof builtinRouterLink !== \"string\" ? builtinRouterLink.useLink : void 0;\n\t\tconst link = target.isExternal.value ? void 0 : useBuiltinLink?.({\n\t\t\t...props,\n\t\t\tto: target.to,\n\t\t\tviewTransition: unref(props.viewTransition)\n\t\t});\n\t\treturn {\n\t\t\t...target,\n\t\t\tisActive: link?.isActive ?? computed(() => target.to.value === router.currentRoute.value.path),\n\t\t\tisExactActive: link?.isExactActive ?? computed(() => target.to.value === router.currentRoute.value.path),\n\t\t\troute: link?.route ?? computed(() => router.resolve(target.to.value))\n\t\t};\n\t}\n\tfunction checkNuxtLinkNesting() {\n\t\tif (inject(NuxtLinkDevKeySymbol, false)) renderDiagnostics.NUXT_E4009();\n\t\telse provide(NuxtLinkDevKeySymbol, true);\n\t}\n\t/**\n\t* Render an internal link as a plain anchor, matching the markup `<RouterLink>` produces\n\t* for the same location.\n\t*/\n\tfunction renderStaticInternalLink(props, slots, router, rawTo) {\n\t\tif (false) {\n\t\t\tcheckPropConflicts(props, \"to\", \"href\");\n\t\t\tcheckPropConflicts(props, \"noRel\", \"rel\");\n\t\t}\n\t\tconst route = router.resolve(resolveTrailingSlashBehavior(rawTo, router.resolve, props.trailingSlash));\n\t\tconst currentRoute = router.currentRoute.value;\n\t\tconst index = activeRecordIndex(route, currentRoute);\n\t\tconst isActive = index > -1 && includesParams(currentRoute.params, route.params);\n\t\tconst isExactActive = index > -1 && index === currentRoute.matched.length - 1 && isSameRouteLocationParams(currentRoute.params, route.params);\n\t\tlet dataInternal;\n\t\tif (componentIslands && useNuxtApp().ssrContext?.islandContext) {\n\t\t\tconst flags = [];\n\t\t\tif (props.replace) flags.push(\"replace\");\n\t\t\tif ((typeof props.prefetchOn === \"string\" ? props.prefetchOn === \"visibility\" : props.prefetchOn?.visibility ?? options.prefetchOn?.visibility) && (props.prefetch ?? options.prefetch) !== false && props.noPrefetch !== true) flags.push(\"prefetch\");\n\t\t\tdataInternal = flags.join(\" \");\n\t\t}\n\t\tconst routerOptions = router.options;\n\t\treturn h(\"a\", {\n\t\t\t\"aria-current\": isExactActive ? props.ariaCurrentValue ?? \"page\" : null,\n\t\t\t\"href\": route.href,\n\t\t\t\"class\": {\n\t\t\t\t[getLinkClass(props.activeClass || options.activeClass, routerOptions.linkActiveClass, \"router-link-active\")]: isActive,\n\t\t\t\t[getLinkClass(props.exactActiveClass || options.exactActiveClass, routerOptions.linkExactActiveClass, \"router-link-exact-active\")]: isExactActive\n\t\t\t},\n\t\t\t\"rel\": props.rel || void 0,\n\t\t\t\"data-internal\": dataInternal\n\t\t}, slots.default?.({\n\t\t\troute,\n\t\t\thref: route.href,\n\t\t\tisActive,\n\t\t\tisExactActive,\n\t\t\tnavigate: () => navigateTo(route.href, { replace: props.replace })\n\t\t}));\n\t}\n\treturn defineComponent({\n\t\tname: componentName,\n\t\tprops: {\n\t\t\tto: {\n\t\t\t\ttype: [String, Object],\n\t\t\t\trequired: false\n\t\t\t},\n\t\t\thref: {\n\t\t\t\ttype: [String, Object],\n\t\t\t\trequired: false\n\t\t\t},\n\t\t\ttarget: {\n\t\t\t\ttype: String,\n\t\t\t\trequired: false\n\t\t\t},\n\t\t\trel: {\n\t\t\t\ttype: String,\n\t\t\t\trequired: false\n\t\t\t},\n\t\t\tnoRel: {\n\t\t\t\ttype: Boolean,\n\t\t\t\tdefault: void 0,\n\t\t\t\trequired: false\n\t\t\t},\n\t\t\tprefetch: {\n\t\t\t\ttype: Boolean,\n\t\t\t\tdefault: void 0,\n\t\t\t\trequired: false\n\t\t\t},\n\t\t\tprefetchOn: {\n\t\t\t\ttype: [String, Object],\n\t\t\t\trequired: false\n\t\t\t},\n\t\t\tnoPrefetch: {\n\t\t\t\ttype: Boolean,\n\t\t\t\tdefault: void 0,\n\t\t\t\trequired: false\n\t\t\t},\n\t\t\tactiveClass: {\n\t\t\t\ttype: String,\n\t\t\t\trequired: false\n\t\t\t},\n\t\t\texactActiveClass: {\n\t\t\t\ttype: String,\n\t\t\t\trequired: false\n\t\t\t},\n\t\t\tprefetchedClass: {\n\t\t\t\ttype: String,\n\t\t\t\trequired: false\n\t\t\t},\n\t\t\treplace: {\n\t\t\t\ttype: Boolean,\n\t\t\t\tdefault: void 0,\n\t\t\t\trequired: false\n\t\t\t},\n\t\t\tariaCurrentValue: {\n\t\t\t\ttype: String,\n\t\t\t\trequired: false\n\t\t\t},\n\t\t\texternal: {\n\t\t\t\ttype: Boolean,\n\t\t\t\tdefault: void 0,\n\t\t\t\trequired: false\n\t\t\t},\n\t\t\tcustom: {\n\t\t\t\ttype: Boolean,\n\t\t\t\tdefault: void 0,\n\t\t\t\trequired: false\n\t\t\t},\n\t\t\ttrailingSlash: {\n\t\t\t\ttype: String,\n\t\t\t\trequired: false\n\t\t\t}\n\t\t},\n\t\tuseLink: useNuxtLink,\n\t\tsetup(props, { slots }) {\n\t\t\tconst router = useRouter();\n\t\t\tif (true && !props.custom) {\n\t\t\t\tconst rawTo = props.to || props.href || \"\";\n\t\t\t\tif (!(props.external || typeof rawTo === \"string\" && (rawTo === \"\" || hasProtocol(rawTo, { acceptRelative: true }))) && !isHashLinkWithoutHashMode(rawTo) && (!props.target || props.target === \"_self\")) {\n\t\t\t\t\tif (false) checkNuxtLinkNesting();\n\t\t\t\t\treturn () => renderStaticInternalLink(props, slots, router, rawTo);\n\t\t\t\t}\n\t\t\t}\n\t\t\tconst routerLinkComponent = resolveComponent(\"RouterLink\");\n\t\t\tconst { to, href, navigate, isExternal, hasTarget, isAbsoluteUrl } = useLinkTarget(props);\n\t\t\tconst prefetched = shallowRef(false);\n\t\t\tconst el = true ? void 0 : ref(null);\n\t\t\tconst elRef = true ? void 0 : (ref) => {\n\t\t\t\tel.value = props.custom ? ref?.$el?.nextElementSibling : ref?.$el;\n\t\t\t};\n\t\t\tfunction shouldPrefetch(mode) {\n\t\t\t\tif (true) return false;\n\t\t\t\treturn Boolean(!prefetched.value && (typeof props.prefetchOn === \"string\" ? props.prefetchOn === mode : props.prefetchOn?.[mode] ?? options.prefetchOn?.[mode]) && (props.prefetch ?? options.prefetch) !== false && props.noPrefetch !== true && props.target !== \"_blank\" && !isSlowConnection());\n\t\t\t}\n\t\t\tasync function prefetch(nuxtApp = useNuxtApp()) {\n\t\t\t\tif (true) return;\n\t\t\t\tif (prefetched.value) return;\n\t\t\t\tif (href.value === null) return;\n\t\t\t\tprefetched.value = true;\n\t\t\t\tconst path = typeof to.value === \"string\" ? to.value : isExternal.value ? resolveRouteObject(to.value) : router.resolve(to.value).fullPath;\n\t\t\t\tconst normalizedPath = isExternal.value ? new URL(path, window.location.href).href : path;\n\t\t\t\tawait Promise.all([nuxtApp.hooks.callHook(\"link:prefetch\", normalizedPath)?.catch(() => {}), !false && !isExternal.value && !hasTarget.value && preloadRouteComponents(to.value, router).catch(() => {})]);\n\t\t\t}\n\t\t\tif (false && !props.custom) {\n\t\t\t\tcheckPropConflicts(props, \"noPrefetch\", \"prefetch\");\n\t\t\t\tif (shouldPrefetch(\"visibility\")) {\n\t\t\t\t\tconst nuxtApp = useNuxtApp();\n\t\t\t\t\tlet idleId;\n\t\t\t\t\tlet unobserve = null;\n\t\t\t\t\tonMounted(() => {\n\t\t\t\t\t\tconst observer = useObserver();\n\t\t\t\t\t\tonNuxtReady(() => {\n\t\t\t\t\t\t\tidleId = requestIdleCallback(() => {\n\t\t\t\t\t\t\t\tif (el?.value?.tagName) unobserve = observer.observe(el.value, async () => {\n\t\t\t\t\t\t\t\t\tunobserve?.();\n\t\t\t\t\t\t\t\t\tunobserve = null;\n\t\t\t\t\t\t\t\t\tawait prefetch(nuxtApp);\n\t\t\t\t\t\t\t\t});\n\t\t\t\t\t\t\t});\n\t\t\t\t\t\t});\n\t\t\t\t\t});\n\t\t\t\t\tonBeforeUnmount(() => {\n\t\t\t\t\t\tif (idleId) cancelIdleCallback(idleId);\n\t\t\t\t\t\tunobserve?.();\n\t\t\t\t\t\tunobserve = null;\n\t\t\t\t\t});\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (false && true && !props.custom) checkNuxtLinkNesting();\n\t\t\treturn () => {\n\t\t\t\tconst target = props.target || null;\n\t\t\t\tcheckPropConflicts(props, \"noRel\", \"rel\");\n\t\t\t\tconst rel = firstNonUndefined(props.noRel ? \"\" : props.rel, options.externalRelAttribute, isAbsoluteUrl.value || hasTarget.value ? \"noopener noreferrer\" : \"\") || null;\n\t\t\t\tconst getCustomSlotProps = (routerLinkSlotProps) => ({\n\t\t\t\t\thref: href.value,\n\t\t\t\t\tnavigate,\n\t\t\t\t\tget route() {\n\t\t\t\t\t\tif (!href.value) return;\n\t\t\t\t\t\tconst url = new URL(href.value, false ? window.location.href : \"http://localhost\");\n\t\t\t\t\t\treturn {\n\t\t\t\t\t\t\tpath: url.pathname,\n\t\t\t\t\t\t\tfullPath: url.pathname,\n\t\t\t\t\t\t\tget query() {\n\t\t\t\t\t\t\t\treturn parseQuery(url.search);\n\t\t\t\t\t\t\t},\n\t\t\t\t\t\t\thash: url.hash,\n\t\t\t\t\t\t\tparams: {},\n\t\t\t\t\t\t\tname: void 0,\n\t\t\t\t\t\t\tmatched: [],\n\t\t\t\t\t\t\tredirectedFrom: void 0,\n\t\t\t\t\t\t\tmeta: {},\n\t\t\t\t\t\t\thref: href.value\n\t\t\t\t\t\t};\n\t\t\t\t\t},\n\t\t\t\t\trel,\n\t\t\t\t\ttarget,\n\t\t\t\t\tisExternal: isExternal.value || hasTarget.value,\n\t\t\t\t\tisActive: false,\n\t\t\t\t\tisExactActive: false,\n\t\t\t\t\t...routerLinkSlotProps,\n\t\t\t\t\tprefetch,\n\t\t\t\t\tprefetched: prefetched.value,\n\t\t\t\t\tshouldPrefetch\n\t\t\t\t});\n\t\t\t\tif (!isExternal.value && !hasTarget.value && !isHashLinkWithoutHashMode(to.value)) {\n\t\t\t\t\tconst routerLinkProps = {\n\t\t\t\t\t\tref: elRef,\n\t\t\t\t\t\tto: to.value,\n\t\t\t\t\t\tactiveClass: props.activeClass || options.activeClass,\n\t\t\t\t\t\texactActiveClass: props.exactActiveClass || options.exactActiveClass,\n\t\t\t\t\t\treplace: props.replace,\n\t\t\t\t\t\tariaCurrentValue: props.ariaCurrentValue,\n\t\t\t\t\t\tcustom: props.custom\n\t\t\t\t\t};\n\t\t\t\t\tif (!props.custom) {\n\t\t\t\t\t\tif (false) {\n\t\t\t\t\t\t\tif (shouldPrefetch(\"interaction\")) {\n\t\t\t\t\t\t\t\trouterLinkProps.onPointerenter = prefetch.bind(null, void 0);\n\t\t\t\t\t\t\t\trouterLinkProps.onFocus = prefetch.bind(null, void 0);\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t\tif (prefetched.value) routerLinkProps.class = props.prefetchedClass || options.prefetchedClass;\n\t\t\t\t\t\t}\n\t\t\t\t\t\trouterLinkProps.rel = props.rel || void 0;\n\t\t\t\t\t\tif (true && componentIslands && useNuxtApp().ssrContext?.islandContext) {\n\t\t\t\t\t\t\tconst flags = [];\n\t\t\t\t\t\t\tif (props.replace) flags.push(\"replace\");\n\t\t\t\t\t\t\tif ((typeof props.prefetchOn === \"string\" ? props.prefetchOn === \"visibility\" : props.prefetchOn?.visibility ?? options.prefetchOn?.visibility) && (props.prefetch ?? options.prefetch) !== false && props.noPrefetch !== true) flags.push(\"prefetch\");\n\t\t\t\t\t\t\trouterLinkProps[\"data-internal\"] = flags.join(\" \");\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn h(routerLinkComponent, routerLinkProps, props.custom && slots.default ? { default: (slotProps) => slots.default(getCustomSlotProps(slotProps)) } : slots.default);\n\t\t\t\t}\n\t\t\t\tif (props.custom) {\n\t\t\t\t\tif (!slots.default) return null;\n\t\t\t\t\treturn slots.default(getCustomSlotProps());\n\t\t\t\t}\n\t\t\t\treturn h(\"a\", {\n\t\t\t\t\tref: el,\n\t\t\t\t\thref: href.value || null,\n\t\t\t\t\trel,\n\t\t\t\t\ttarget,\n\t\t\t\t\tonClick: async (event) => {\n\t\t\t\t\t\tif (isExternal.value || hasTarget.value) return;\n\t\t\t\t\t\tevent.preventDefault();\n\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\tconst encodedHref = encodeRoutePath(href.value ?? \"\");\n\t\t\t\t\t\t\treturn await (props.replace ? router.replace(encodedHref) : router.push(encodedHref));\n\t\t\t\t\t\t} finally {\n\t\t\t\t\t\t\tif (false && isHashLinkWithoutHashMode(to.value)) {\n\t\t\t\t\t\t\t\tconst rawHash = to.value.slice(1);\n\t\t\t\t\t\t\t\tlet hash = rawHash;\n\t\t\t\t\t\t\t\ttry {\n\t\t\t\t\t\t\t\t\thash = decodeURIComponent(rawHash);\n\t\t\t\t\t\t\t\t} catch {}\n\t\t\t\t\t\t\t\tdocument.getElementById(hash)?.focus();\n\t\t\t\t\t\t\t}\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t}, slots.default?.());\n\t\t\t};\n\t\t}\n\t});\n}\nconst NuxtLink = /* @__PURE__ */ defineNuxtLink(nuxtLinkDefaults);\nfunction isSameRouteRecord(a, b) {\n\treturn (a.aliasOf || a) === (b.aliasOf || b);\n}\nfunction getOriginalPath(record) {\n\treturn record ? record.aliasOf ? record.aliasOf.path : record.path : \"\";\n}\nfunction isEquivalentArray(a, b) {\n\treturn Array.isArray(b) ? a.length === b.length && a.every((value, i) => value === b[i]) : a.length === 1 && a[0] === b;\n}\nfunction isSameParamValue(a, b) {\n\treturn Array.isArray(a) ? isEquivalentArray(a, b) : Array.isArray(b) ? isEquivalentArray(b, a) : (a && a.valueOf()) === (b && b.valueOf());\n}\nfunction isSameRouteLocationParams(a, b) {\n\tif (Object.keys(a).length !== Object.keys(b).length) return false;\n\tfor (const key in a) if (!isSameParamValue(a[key], b[key])) return false;\n\treturn true;\n}\nfunction includesParams(outer, inner) {\n\tfor (const key in inner) {\n\t\tconst innerValue = inner[key];\n\t\tconst outerValue = outer[key];\n\t\tif (typeof innerValue === \"string\") {\n\t\t\tif (innerValue !== outerValue) return false;\n\t\t} else if (!Array.isArray(outerValue) || outerValue.length !== innerValue.length || innerValue.some((value, i) => value.valueOf() !== outerValue[i].valueOf())) return false;\n\t}\n\treturn true;\n}\nfunction activeRecordIndex(route, currentRoute) {\n\tconst { matched } = route;\n\tconst { length } = matched;\n\tconst routeMatched = matched[length - 1];\n\tconst currentMatched = currentRoute.matched;\n\tif (!routeMatched || !currentMatched.length) return -1;\n\tconst index = currentMatched.findIndex(isSameRouteRecord.bind(null, routeMatched));\n\tif (index > -1) return index;\n\tconst parentRecordPath = getOriginalPath(matched[length - 2]);\n\treturn length > 1 && getOriginalPath(routeMatched) === parentRecordPath && currentMatched[currentMatched.length - 1].path !== parentRecordPath ? currentMatched.findIndex(isSameRouteRecord.bind(null, matched[length - 2])) : index;\n}\n/** Resolve an active-link class, falling back from the per-link value to the router-wide one. */\nfunction getLinkClass(propClass, globalClass, defaultClass) {\n\treturn propClass ?? globalClass ?? defaultClass;\n}\nfunction applyTrailingSlashBehavior(to, trailingSlash) {\n\tif (trailingSlash !== \"append\" && trailingSlash !== \"remove\") return to;\n\tconst normalizeFn = trailingSlash === \"append\" ? withTrailingSlash : withoutTrailingSlash;\n\tif (hasProtocol(to) && !to.startsWith(\"http\")) return to;\n\treturn normalizeFn(to, true);\n}\n/** @internal */\nfunction useObserver() {\n\tif (true) return;\n\tconst nuxtApp = useNuxtApp();\n\tif (nuxtApp._observer) return nuxtApp._observer;\n\tlet observer = null;\n\tconst callbacks = /* @__PURE__ */ new Map();\n\tconst observe = (element, callback) => {\n\t\tobserver ||= new IntersectionObserver((entries) => {\n\t\t\tfor (const entry of entries) {\n\t\t\t\tconst callback = callbacks.get(entry.target);\n\t\t\t\tif ((entry.isIntersecting || entry.intersectionRatio > 0) && callback) callback();\n\t\t\t}\n\t\t});\n\t\tcallbacks.set(element, callback);\n\t\tobserver.observe(element);\n\t\treturn () => {\n\t\t\tcallbacks.delete(element);\n\t\t\tobserver?.unobserve(element);\n\t\t\tif (callbacks.size === 0) {\n\t\t\t\tobserver?.disconnect();\n\t\t\t\tobserver = null;\n\t\t\t}\n\t\t};\n\t};\n\treturn nuxtApp._observer = { observe };\n}\nconst IS_2G_RE = /2g/;\n/** @internal */\nfunction isSlowConnection() {\n\tif (true) return;\n\tconst cn = navigator.connection;\n\tif (cn && (cn.saveData || IS_2G_RE.test(cn.effectiveType))) return true;\n\treturn false;\n}\n//#endregion\nexport { NuxtLink as default, defineNuxtLink, isSlowConnection, useObserver };\n"],"version":3}
|