import{$ as e,At as t,C as n,Ct as r,F as i,I as a,Mt as o,Ot as s,P as c,Qt as l,R as u,S as d,T as f,V as p,W as m,X as h,Y as g,_,b as v,ct as y,dt as b,en as x,ft as S,g as C,h as w,m as T,nt as E,p as D,s as O,tn as k,wt as ee,yt as A}from"./vendor/json-editor-vue-9tyg6b65.js";import{xt as j}from"./ready-e441jhq2.js";import{w as te}from"./utils-ivfwadyv.js";import{t as M}from"./nuxt-link-f6563zm1.js";import{S as ne,h as N,l as P}from"./client-kfvz1zfh.js";import{t as F}from"./_plugin-vue_export-helper-d9irwgla.js";import{t as re}from"./nicon-hgcqr03x.js";import{t as I}from"./nbutton-g8ropw1z.js";import{t as L}from"./ncard-d0lyv7bx.js";import{r as R}from"./state-routes-pcpgumo2.js";import{t as z}from"./telemetry-c1eueoux.js";import{d as B,f as V,n as H,o as U,p as W,s as ie}from"#entry";import{t as G}from"./ndropdown-jzrbrnq5.js";import{t as K}from"./ncode-block-cfw508sn.js";import{t as ae}from"./pages-dm1j9w83.js";import{t as oe}from"./nlink-hrlod3mt.js";import{t as q}from"./ncheckbox-oir9zn2f.js";import{t as se}from"./filepath-item-evfn93g6.js";import{t as J}from"./help-fab-myoje00l.js";import{t as ce}from"./nnavbar-eonyi8yr.js";import{t as Y}from"./nicon-title-hifk5b9y.js";import{t as le}from"./nsection-block-lfx32fn0.js";import{t as ue}from"./nbadge-nhg3871m.js";import{t as de}from"./duration-display-c5md5mx9.js";import{n as X,r as fe,t as pe}from"./state-modules-nite742v.js";import{t as me}from"./code-diff-oj53ogcw.js";var he={flex:`~ col gap2`,"flex-auto":``,"of-hidden":``,px1:``},ge={"gap-1t":``,flex:``,"items-center":``,"text-ellipsis":``,"ws-nowrap":``,"text-lg":``},_e={key:2},ve={key:1,flex:`~ gap-2`,title:`Documentation`},ye={key:2,flex:`~ gap-2`},be={key:0,flex:`~ gap-4 items-center`},xe={key:0,flex:`~ gap-2 items-center`,op50:``},Se={key:1,flex:`~ gap-2 items-center`,op50:``},Ce={key:1},we={flex:`~ col`,"items-end":``},Te={key:0,"h-20":``,"w-20":``,flex:``,"flex-none":``,rounded:``,"bg-gray:3":``,p4:``},Ee=[`src`,`alt`],De={key:1,"i-carbon-cube":``,ma:``,"flex-none":``,"text-4xl":``,op30:``},Oe={key:1,flex:`~`,mt2:``,"flex-auto":``,"items-end":``,"justify-end":``},ke=[`src`],Ae={flex:``,"justify-end":``},je=`https://ipx.nuxt.com/s_80,f_webp/gh/nuxt/modules/main/icons/`,Me=`https://ipx.nuxt.com/s_44,f_webp/gh_avatar/`,Ne=`https://github.com/`,Pe=`https://www.npmjs.com/package/`,Fe=Object.assign(f({__name:`ModuleItemBase`,props:{mod:{},info:{},compact:{type:Boolean},maintainers:{type:Boolean,default:!0}},setup(e){let t=e,r=D(()=>({...t.mod?.meta,...t.mod,...t.info})),{format:i}=Intl.NumberFormat(navigator.language||`en`,{notation:`compact`,maximumFractionDigits:1}),a=D(()=>i(r.value.stats?.stars||0)),s=D(()=>i(r.value.stats?.downloads||0)),c=B();return(t,i)=>{let u=M,f=re,p=de,v=L;return m(),w(v,{p4:``,flex:`~ gap2`},{default:b(()=>[T(`div`,he,[h(t.$slots,`main`,{},()=>[T(`div`,ge,[e.mod.isPackageModule?(m(),w(u,{key:0,to:Pe+(r.value.npm||r.value.name),target:`_blank`,hover:`underline text-primary`},{default:b(()=>[d(k(r.value.name),1)]),_:1},8,[`to`])):e.mod.entryPath?(m(),_(`button`,{key:1,role:`button`,hover:`underline text-primary`,onClick:i[0]||=t=>o(c)(e.mod.entryPath)},k(r.value.name),1)):(m(),_(`span`,_e,k(r.value.name),1)),h(t.$slots,`badge`)]),r.value.description?(m(),_(`div`,{key:0,class:l(e.compact?`ws-nowrap of-hidden truncate`:`line-clamp-2`),"mt--1":``,"text-sm":``,op50:``},k(r.value.description),3)):C(``,!0),i[3]||=T(`div`,{"flex-auto":``},null,-1),r.value.website?(m(),_(`div`,ve,[i[1]||=T(`span`,{"i-carbon-link":``,"flex-none":``,"text-lg":``,op50:``},null,-1),n(u,{to:r.value.website,target:`_blank`,"of-hidden":``,truncate:``,"ws-nowrap":``,"text-sm":``,op50:``,hover:`op100 underline text-primary`},{default:b(()=>[d(k(r.value.website.replace(/^https?:\/\//,``)),1)]),_:1},8,[`to`])])):C(``,!0),r.value.github?(m(),_(`div`,ye,[i[2]||=T(`span`,{"i-carbon-logo-github":``,"flex-none":``,"text-lg":``,op50:``},null,-1),n(u,{to:r.value.github,target:`_blank`,"of-hidden":``,truncate:``,"ws-nowrap":``,"text-sm":``,op50:``,hover:`op100 underline text-primary`},{default:b(()=>[d(k(r.value.github.replace(/^https?:\/\/github.com\//,``)),1)]),_:1},8,[`to`])])):C(``,!0)]),h(t.$slots,`items`),r.value.stats?(m(),_(`div`,be,[r.value.stats.stars?(m(),_(`div`,xe,[n(f,{icon:`carbon-star`,"flex-none":``,"text-lg":``}),T(`span`,null,k(a.value),1)])):C(``,!0),r.value.stats.downloads?(m(),_(`div`,Se,[n(f,{icon:`carbon-download`,"flex-none":``,"text-lg":``}),T(`span`,null,k(s.value),1)])):C(``,!0)])):C(``,!0),e.mod.timings?.setup?(m(),_(`div`,Ce,[n(p,{title:`Module Setup Time`,flex:`~ items-center`,duration:e.mod.timings.setup,factor:.5},{before:b(()=>[n(f,{icon:`carbon-time`,mr2:``,"flex-none":``,"text-lg":``,op50:``})]),_:1},8,[`duration`])])):C(``,!0)]),T(`div`,we,[r.value.icon||e.mod.isPackageModule?(m(),_(`div`,Te,[r.value.icon?(m(),_(`img`,{key:0,src:je+r.value.icon,alt:e.mod.name,ma:``},null,8,Ee)):(m(),_(`div`,De))])):C(``,!0),r.value.maintainers?.length&&e.maintainers?(m(),_(`div`,Oe,[(m(!0),_(O,null,g(r.value.maintainers,e=>(m(),w(u,{key:e.name,target:`_blank`,to:Ne+e.github,title:e.name},{default:b(()=>[T(`img`,{src:Me+e.github,"h-6":``,"w-6":``,"rounded-full":``},null,8,ke)]),_:2},1032,[`to`,`title`]))),128))])):C(``,!0),t.$slots.actions?(m(),_(O,{key:2},[i[4]||=T(`div`,{"flex-auto":``},null,-1),T(`div`,Ae,[h(t.$slots,`actions`)])],64)):C(``,!0)])]),_:3})}}}),{__name:`ModuleItemBase`}),Ie={key:0,flex:`~ gap-2`,title:`Open on filesystem`},Z={key:1,"mx--2":``},Le=[`onClick`],Re={key:2,"mx--2":``},ze=[`onClick`],Be={op50:``},Ve={"text-green":``},He={key:3,flex:`~ gap-2`,"items-center":``,title:`NPM`},Ue={"text-sm":``,op50:``},We=Object.assign(f({__name:`ModuleItem`,props:{mod:{}},setup(e){let t=e,r=D(()=>t.mod.info),i=D(()=>({...t.mod?.meta,...t.mod,...r.value})),a=R();return(t,o)=>{let s=se,c=M,l=fe,u=Fe;return m(),w(u,{mod:e.mod,info:r.value},{items:b(()=>[e.mod.entryPath?(m(),_(`div`,Ie,[o[0]||=T(`span`,{"i-carbon-folder-move-to":``,"flex-none":``,"text-lg":``,op50:``},null,-1),n(s,{filepath:e.mod.entryPath,"text-sm":``,op50:``,hover:`text-primary op100`},null,8,[`filepath`])])):C(``,!0),i.value.npm?(m(),w(l,{key:i.value.npm,"package-name":i.value.npm,options:{dev:!0}},{default:b(({info:e,update:t,state:n,id:r,restart:i})=>[n===`running`?(m(),w(c,{key:0,flex:`~ gap-2`,"animate-pulse":``,"items-center":``,to:r?`/modules/terminals`:void 0,onClick:e=>r?a.value=r:void 0},{default:b(()=>[...o[1]||=[T(`span`,{"i-carbon-circle-dash":``,"flex-none":``,"animate-spin":``,"text-lg":``,op50:``},null,-1),T(`code`,{"text-sm":``,op50:``},`Upgrading...`,-1)]]),_:1},8,[`to`,`onClick`])):n===`updated`?(m(),_(`div`,Z,[T(`button`,{flex:`~ gap-2`,hover:`bg-primary/20`,"items-center":``,rounded:``,"bg-primary:10":``,px2:``,"text-sm":``,"text-primary":``,onClick:i},[...o[2]||=[T(`span`,{"i-carbon-intent-request-active":``,"flex-none":``,"text-lg":``,"text-primary":``},null,-1),T(`code`,{"text-xs":``},`Update installed, click to restart`,-1)]],8,Le)])):e?.needsUpdate?(m(),_(`div`,Re,[T(`button`,{flex:`~ gap-2`,title:`Click to upgrade`,"items-center":``,rounded:``,px2:``,"text-sm":``,hover:`bg-active`,onClick:e=>t()},[o[3]||=T(`span`,{"i-carbon-intent-request-upgrade":``,"flex-none":``,"text-lg":``,op50:``},null,-1),T(`code`,Be,`v`+k(e.current),1),o[4]||=T(`div`,{"i-carbon-arrow-right":``,op50:``},null,-1),T(`code`,Ve,`v`+k(e.latest),1)],8,ze)])):e?.latest?(m(),_(`div`,He,[o[5]||=T(`span`,{"i-carbon-cube":``,"flex-none":``,"text-lg":``,op50:``},null,-1),T(`code`,Ue,`v`+k(e.current),1)])):C(``,!0)]),_:1},8,[`package-name`])):C(``,!0)]),_:1},8,[`mod`,`info`])}}}),{__name:`ModuleItem`}),Ge=Object.assign(f({__name:`ModuleItemInstall`,props:{item:{}},emits:[`start`],setup(e,{emit:t}){let r=e,i=t,a=pe(),o=D(()=>a.value.find(e=>e.name===r.item.npm)),s=D(()=>o.value&&o.value.isPackageModule),c=D(()=>o.value&&o.value.isPackageModule&&o.value.isUninstallable);async function u(e,t){let n=t===`install`?N.installNuxtModule:N.uninstallNuxtModule,r=await n(await P(),e.npm,!0);z(`modules:${t}`,{moduleName:e.npm}),r.commands&&await ne.start(e,r,t)&&(H.value.push({name:e.npm,info:e,processId:r.processId}),i(`start`),await n(await P(),e.npm,!1))}let f={};return(t,r)=>{let i=ue,a=I,o=G,p=Fe;return m(),w(p,{mod:f,role:s.value?``:`button`,info:e.item,mb2:``,"h-full":``,class:l(s.value?`border-dashed op75`:`hover:bg-active!`),compact:!0,onClick:r[1]||=t=>s.value?null:u(e.item,`install`)},v({_:2},[s.value?{name:`badge`,fn:b(()=>[n(i,{n:`green`,textContent:`Installed`}),c.value?(m(),w(o,{key:0,n:`sm green`},{trigger:b(({click:e})=>[n(a,{icon:`carbon-overflow-menu-vertical`,border:!1,onClick:t=>e()},null,8,[`onClick`])]),default:b(()=>[n(a,{icon:`carbon-trash-can`,n:`red`,onClick:r[0]||=t=>u(e.item,`uninstall`)},{default:b(()=>[...r[2]||=[d(` Uninstall `,-1)]]),_:1})]),_:1})):C(``,!0)]),key:`0`}:void 0]),1032,[`role`,`info`,`class`])}}}),{__name:`ModuleItemInstall`});function Ke(e){return e==null?`null`:typeof e==`function`?`a function`:`'${e}'`}function qe(e,t,n){if(!n)return t;let r=typeof n==`function`?n(e,t):e?.[n];if(r==null)throw Error(`Key is ${r} on item (keyField is ${Ke(n)})`);return r}function Je(e,t,n){return qe(e,t,n)}function Ye(e,t){return e.map((e,n)=>Je(e,n,t))}function Xe(e,t,n){let r=[],i=[];for(let a=0;a0?c:null)}return{keys:r,sizes:i}}function Ze(e,t,n){if(!e||e.keys.length!==t.length||e.sizes.length!==t.length)return!1;for(let r=0;r0&&(r[e.keys[t]]=n)}return r}function $e(e,t){if(!e.length||t.length<=e.length)return 0;let n=e[0],r=t.indexOf(n);if(r<=0||r+e.lengtht.length-r)return 0;for(let n=0;n=n&&o<=i?null:et(e))}function it(e,n,r,i,a){let o=rt(e);return{el:D(()=>{let e=o.value.el;return t(n??e)}),before:D(()=>{let e=o.value.before;return t(r??e)}),after:D(()=>{let e=o.value.after;return t(i??e)}),scrollParent:D(()=>{let e=o.value.scrollParent;return t(e)}),callbacks:{onResize:()=>(a?.onResize??o.value.onResize)?.(),onVisible:()=>(a?.onVisible??o.value.onVisible)?.(),onHidden:()=>(a?.onHidden??o.value.onHidden)?.(),onUpdate:(e,t,n,r)=>(a?.onUpdate??o.value.onUpdate)?.(e,t,n,r)}}}var at={itemsLimit:1e3};function Q(e){return typeof window<`u`&&e===window}var ot=(()=>{if(typeof document>`u`)return`negative`;let e=document.createElement(`div`),t=document.createElement(`div`);e.style.width=`4px`,e.style.height=`1px`,e.style.overflow=`auto`,e.style.direction=`rtl`,t.style.width=`8px`,t.style.height=`1px`,e.appendChild(t),document.body.appendChild(e),e.scrollLeft=-1;let n=e.scrollLeft<0;return document.body.removeChild(e),n?`negative`:`default`})();function st(e,t,n){return t!==`horizontal`||!n||Q(n)||getComputedStyle(n).direction!==`rtl`?e:ot===`negative`?-e:e}function ct(e,t,n){return st(e,t,n)}function lt(e,t,n,r){let i=ct(n,t,e),a=!!(r!=null&&r.smooth);Q(e)?t===`vertical`?e.scrollTo({top:i,behavior:a?`smooth`:`auto`}):e.scrollTo({left:i,behavior:a?`smooth`:`auto`}):typeof e.scrollTo==`function`?e.scrollTo(t===`vertical`?{top:i,behavior:a?`smooth`:`auto`}:{left:i,behavior:a?`smooth`:`auto`}):t===`vertical`?e.scrollTop=i:e.scrollLeft=i}function ut(e,t,n,r){if(n){if(r&&r!==window){let e=r;return t===`vertical`?e.clientHeight:e.clientWidth}return t===`vertical`?window.innerHeight:window.innerWidth}return t===`vertical`?e.clientHeight:e.clientWidth}var dt=/auto|scroll/;function ft(e,t){return e.parentNode===null?t:ft(e.parentNode,[...t,e])}function pt(e,t){return getComputedStyle(e,null).getPropertyValue(t)}function mt(e){return pt(e,`overflow`)+pt(e,`overflow-y`)+pt(e,`overflow-x`)}function ht(e){return dt.test(mt(e))}function gt(e){if(!(e instanceof HTMLElement||e instanceof SVGElement))return;if(e.parentNode===null)return document.scrollingElement||document.documentElement;let t=ft(e.parentNode,[]);for(let e=0;eTt(e,t))}function Dt(e,t,n,r){if(e.length!==n.length||t.length!==r.length)return!1;for(let i=0;i{let e=t(q().items);return wt(e),e}),h=r([]),g=r(0),_=r(0),v=r(0),b=r(!1),x=0,S=0,C=0,w=0,T=!1,E=null,O=new Map,k=new Map,j=!1,te=0,M=0,ne=!1,N=null,P=null,F=null,re=0,I=null,L=null,R=[],z=[],B=null,V=null,H=null,U=!1,W=!1,ie=!1,G=new Set,K=r({}),ae=[],oe={accumulator:0};function q(){return d.value}function se(){return l?.pageMode??q().pageMode}let J=D(()=>t(q().enabled??!0)),ce=D(()=>_t(f.el.value,f.scrollParent.value)),Y=D(()=>{let e=m.value;return e.length>0&&typeof e[0]!=`object`}),le=D(()=>{let e=q();if($(e.itemSize)===null){let t=m.value,n=Array.from({length:t.length});oe.accumulator=0,n[-1]=oe;let r=e.minItemSize,i=K.value,a=Y.value,o=1e4,s=0,c;for(let l=0,u=t.length;lh.value.filter(e=>(e._vs_visibilityStamp,e.nr.used)).sort((e,t)=>e.nr.index-t.nr.index)),de=D(()=>{let e=q(),t=Y.value?null:e.keyField;return Xe(m.value,t,(t,n,r)=>bt(t,n,e.itemSize,K.value[r],e.sizeField))});function X(e=q()){return e.direction??`vertical`}function fe(e=q()){let t=X(e),n=e.flowMode??!1;return n&&t!==`vertical`&&(W||=(console.warn(`[vue-recycle-scroller] flowMode only supports vertical lists. Falling back to standard positioning.`),!0),n=!1),n&&e.gridItems&&(ie||=(console.warn(`[vue-recycle-scroller] flowMode does not support gridItems. Falling back to standard positioning.`),!0),n=!1),tt({direction:t,disableTransform:e.disableTransform??!1,flowMode:n,gridItems:e.gridItems})}function pe(){h.value.sort((e,t)=>e.nr.used===t.nr.used?e.nr.used&&t.nr.used?e.nr.index-t.nr.index:e.nr.id-t.nr.id:e.nr.used?-1:1)}function me(e){let t=q();return K.value=Qe(e,m.value,Y.value?null:t.keyField),Object.keys(K.value).length>0}function he(e){let t=k.get(e);return t||(t=[],k.set(e,t)),t}function ge(e,t,n,r,i){let a=A({id:St++,index:t,used:!0,key:r,type:i}),o=ee({item:n,position:0,offset:0,nr:a,_vs_styleStamp:0,_vs_visibilityStamp:0});return e.push(o),o}function _e(e){let t=he(e);if(t&&t.length){let e=t.pop();return e.nr.used=!0,kt(e),e}}function ve(e,t){let n=h.value,r=n.indexOf(e);if(r===-1)return;let i=Math.max(0,Math.min(t,n.length-1));r!==i&&(n.splice(r,1),n.splice(i,0,e))}function ye(e){ve(e,h.value.length-1)}function be(){let e=h.value,t=0;for(;t=S&&(r=n.activeStart+n.activeCount,n.activeCount++),r!=null&&ve(e,r)}function Se(e,t=!1){let n=e.nr.type;he(n).push(e),e.nr.used=!1,e.position=q().hiddenPosition??-999999,kt(e),O.delete(e.nr.key),t&&ye(e)}function Ce(){O.clear(),k.clear();for(let e=0,t=h.value.length;e{G.delete(t),e()}),G.add(t),t}function Te(){for(let e of G)cancelAnimationFrame(e);G.clear()}function Ee(){N&&=(clearTimeout(N),null),P&&=(clearTimeout(P),null),F&&=(clearTimeout(F),null),V&&=(clearTimeout(V),null),H&&=(clearTimeout(H),null)}function De(){var e,t;J.value&&((t=(e=f.callbacks).onResize)==null||t.call(e),b.value&&Q(!1))}function Oe(){if(!J.value)return;B&&!U&&Re();let e=q();if(!j){if(j=!0,N)return;let t=()=>we(()=>{j=!1;let{continuous:t}=Q(!1,!0);t||(P&&clearTimeout(P),P=setTimeout(Oe,e.updateInterval+100))});t(),e.updateInterval&&(N=setTimeout(()=>{N=null,j&&t()},e.updateInterval))}}function ke(e,t){var n,r,i,a;J.value&&b.value&&(e||t.boundingClientRect.width!==0||t.boundingClientRect.height!==0?((r=(n=f.callbacks).onVisible)==null||r.call(n),we(()=>{Q(!1)})):(a=(i=f.callbacks).onHidden)==null||a.call(i))}function Ae(){return ce.value??window}function je(){let e=f.before.value;return e?X(q())===`vertical`?e.scrollHeight:e.scrollWidth:0}function Me(){let e=f.el.value;if(!e)return{start:0,end:0};let t=X(q()),n=t===`vertical`,r;if(se()){let t=e.getBoundingClientRect(),i=n?t.height:t.width,a=ce.value,o=!a||a===window,s=o?0:a.getBoundingClientRect().top,c=o?0:a.getBoundingClientRect().left,l=o?window.innerHeight:a.clientHeight,u=o?window.innerWidth:a.clientWidth,d=n?-(t.top-s):-(t.left-c),f=n?l:u;d<0&&(f+=d,d=0),d+f>i&&(f=i-d),r={start:d,end:d+f}}else r=n?{start:e.scrollTop,end:e.scrollTop+e.clientHeight}:{start:st(e.scrollLeft,t,e),end:st(e.scrollLeft,t,e)+e.clientWidth};return r}function Ne(){let e=f.el.value;if(!e)return{start:0,end:0};if(X(q())===`vertical`){let t=st(e.scrollLeft,`horizontal`,e);return{start:t,end:t+e.clientWidth}}return{start:e.scrollTop,end:e.scrollTop+e.clientHeight}}function Pe(e,t,n,r){let i=je(),a=e.start-r-i,o=e.end+r-i;return x>0&&a<=(n[x-1]?.accumulator??0)||x(n[x]?.accumulator??1/0)||S>1&&o<=(n[S-2]?.accumulator??0)||S(n[S-1]?.accumulator??1/0)}function Fe(e){let t=q(),n=$(t.itemSize);return n===null?le.value[e]?.size||Number(t.minItemSize)||0:n}function Ie(e){let t=q();return nt(e,{direction:X(t),mode:fe(t),itemSize:$(t.itemSize),gridItems:t.gridItems,itemSecondarySize:t.itemSecondarySize})}function Z(e){let t=q(),n=t.gridItems||1,r=$(t.itemSize);return e<=0?0:r===null?le.value[e-1]?.accumulator||0:Math.floor(e/n)*r}function Le(e){let t=q(),n=m.value.length,r=t.gridItems||1,i=$(t.itemSize);if(!n)return 0;if(i!==null){let t=Math.floor(e/i)*r;return Math.min(Math.max(t,0),n-1)}let a=0,o=n-1,s=0;for(;a<=o;){let t=Math.floor((a+o)/2);Z(t)<=e?(s=t,a=t+1):o=t-1}return s}function Re(){V&&=(clearTimeout(V),null),B=null}function ze(){V&&clearTimeout(V),V=setTimeout(()=>{B=null,V=null},150)}function Be(e,t){if(!e.length){Re();return}let n=Math.max(Me().start-je(),0),r=Math.min(Le(n),e.length-1),i=e[r],a=t?qe(i,r,t):r,o=je()+Z(r);B={key:a,offset:Me().start-o}}function Ve(e){if(!B)return!1;let t=q(),n=Ye(e??m.value,Y.value?null:t.keyField).indexOf(B.key);if(n===-1)return Re(),!1;let r=je()+Z(n)+B.offset,i=Me().start;return Math.abs(r-i)<.5?!1:(U=!0,pt(r),we(()=>{U=!1}),!0)}function He(){if(Ue(),!J.value)return;let e=se()?Ae():f.el.value;e&&(I=e,I.addEventListener(`scroll`,Oe,yt()?{passive:!0}:!1),se()&&e===window&&(L=e,L.addEventListener(`resize`,De)))}function Ue(){I&&=(I.removeEventListener(`scroll`,Oe),null),L&&=(L.removeEventListener(`resize`,De),null)}function We(e,t,n,r,i,a){let o=Math.ceil(e/t)*n,s=Math.max(0,Math.floor(i.start/n)),c=Math.min(Math.ceil(i.end/n),Math.ceil(e/t)),l=Math.max(0,Math.floor(a.start/r)),u=Math.min(Math.ceil(a.end/r),t),d=[];for(let n=s;n=e)break;d.push(n)}}let f=d[0]??0,p=d.at(-1)??-1;return{renderedIndices:d,startIndex:f,endIndex:p+1,visibleStartIndex:f,visibleEndIndex:p,totalSize:o}}function Ge(){let e=q(),t=$(e.itemSize);if(!e.gridItems||t==null)return!1;let n=f.el.value;if(!n)return!1;let r=e.itemSecondarySize||t,i=X(e)===`vertical`?n.clientWidth:n.clientHeight;return r*e.gridItems>i}function Ke(e,t,n,r){if(Math.abs(e-t)!==1||t<0||t>=n)return e;let i=e>t?Z(t)+Fe(t):Z(t);return Math.abs(i-r)<=jt?t:e}function Je(e,t,n,r,i){if(Math.abs(e-t)!==1)return e;let a=i?t-1:t;if(a<0||a>=n)return e;let o=e>t?Z(a)+Fe(a):Z(a);return Math.abs(o-r)<=jt?t:e}function Ze(e,t,n){let r={...e,visibleStartIndex:Ke(e.visibleStartIndex,C,t,n.rawViewportStart),visibleEndIndex:Je(e.visibleEndIndex,w,t,n.rawViewportEnd,!1),startIndex:Ke(e.startIndex,x,t,n.renderStart),endIndex:Je(e.endIndex,S,t,n.renderEnd,!0)};r.startIndex>r.visibleStartIndex&&(r.startIndex=r.visibleStartIndex);let i=Math.min(t,r.visibleEndIndex+1);return r.endIndex=c||d)||a!==null&&t>=a)&&!(o>1&&a!=null&&u>=s))return{continuous:!0}}te=e.start,M=n.start;let h=i.buffer;u.start-=h,u.end+=h,m.start-=h,m.end+=h;let g=0,_=f.before.value;_&&(g=_.scrollHeight,u.start-=g);let v=f.after.value;if(v){let e=v.scrollHeight;u.end+=e}let b=fe(i)===`flow`&&a===null&&!t&&T&&Math.abs(e.start-r)<=Mt&&Math.abs(n.start-l)<=Mt;if(a===null){let t,n=0,r=p-1,i=~~(p/2),a;do a=i,t=y[i]?.accumulator??0,tu.start&&(r=i),i=~~((n+r)/2);while(i!==a);for(i<0&&(i=0),A=i,N=y[p-1]?.accumulator??0,j=i;jp&&(j=p)),P=A;P1){let e=We(p,o,a,s,u,m);k=e.renderedIndices,ee=new Set(k),A=e.startIndex,j=e.endIndex,P=e.visibleStartIndex,I=e.visibleEndIndex,N=e.totalSize}else{A=~~(u.start/a*o);let e=A%o;A-=e,j=Math.ceil(u.end/a*o),P=Math.max(0,Math.floor((u.start-g)/a*o)),I=Math.floor((u.end-g)/a*o),A<0&&(A=0),j>p&&(j=p),P<0&&(P=0),I>p&&(I=p),N=Math.ceil(p/o)*a}}let R=typeof i.itemsLimit==`number`&&i.itemsLimit>0?i.itemsLimit:at.itemsLimit;(k?.length??j-A)>R&&ot(),g.value=N,_.value=0,v.value=fe(i)===`flow`?N:0;let z,B=A<=S&&j>=x,V=fe(i)===`flow`,H=V&&B&&!e,U=null;if(!B||e)Ce();else{let e=e=>{let t=D[e];t&&(z=t,z.nr.used&&((ee?ee.has(z.nr.index):z.nr.index>=A&&z.nr.index=0;t--)e(t);U=be()}else for(let t=0,n=D.length;t{let t=y[e]&&y[e].size,n=a||t||re||1;W=d[e];let r=u?qe(W,e,u):e;z=b.get(r);let i=!1;if(z)z.item!==W&&(z.item=W),z.nr.used||console.warn(`Expected existing view's used flag to be true, got ${z.nr.used}`);else{if(ie=W[l],z=_e(ie),z){let t=z.nr.index!==e||z.nr.key!==r;z.item=W,z.nr.index=e,z.nr.key=r,z.nr.type!==ie&&console.warn(`Reused view's type does not match pool's type`),t&&Ot(z)}else z=ge(D,e,W,r,ie);b.set(r,z),i=!0}a===null?(z.position=y[e-1]?.accumulator||0,z.offset=0):(z.position=Math.floor(e/o)*a,z.offset=e%o*s),U&&i&&xe(z,e,U),G??=z.position,K+=n}),V?(G==null?(_.value=0,v.value=N):(_.value=G,v.value=Math.max(0,N-G-K)),H||pe()):(_.value=0,v.value=0),x=A,S=j,C=P,w=I,T=!0,i.emitUpdate&&((r=(n=f.callbacks).onUpdate)==null||r.call(n,A,j,P,I)),fe(i)!==`flow`&&(F&&clearTimeout(F),F=setTimeout(dt,i.updateInterval+300)),{continuous:B}}function ot(){throw H=setTimeout(()=>{H=null,console.warn(`It seems the scroller element isn't scrolling, so it tries to render all the items at once.`,`Scroller:`,f.el.value),console.warn(`Make sure the scroller has a fixed height (or width) and 'overflow-y' (or 'overflow-x') set to 'auto' so it can scroll correctly and only render the items visible in the scroll viewport.`)}),Error(`Rendered items limit reached`)}function ct(){if(Ge())return!1;let e=h.value.filter(({nr:e})=>e.used);for(let t=1;te.nr.index-t.nr.index),ct()&&(Q(!1),F&&clearTimeout(F))}}function ft(e,t){if(!J.value)return;let n=q(),r=X(n),i=f.el.value;if(!i)return;let a=Math.max(0,Math.min(e,m.value.length-1)),o=Me().start,s=ut(i,r,n.pageMode,ce.value),c=et(Z(a),Fe(a),o,s,t?.align,t?.offset??0);if(c==null)return;pt(c,t);let l=$(n.itemSize);if(n.gridItems&&l!=null){let e=f.el.value;if(!e)return;let i=n.gridItems,o=n.itemSecondarySize||l,s=a%i*o,c=r===`vertical`?`horizontal`:`vertical`,u=et(s,o,c===`horizontal`?st(e.scrollLeft,`horizontal`,e):e.scrollTop,c===`horizontal`?e.clientWidth:e.clientHeight,t?.align,t?.offset??0);u!=null&<(e,c,u,t)}}function pt(e,t){if(!J.value)return;let n=X(q()),r=f.el.value;if(r){if(se()){let i=ce.value??window,a=n===`vertical`?`top`:`left`,o=i===window,s=o?document.scrollingElement||document.documentElement:i,c=s.getBoundingClientRect(),l=r.getBoundingClientRect(),u=o?n===`vertical`?window.scrollY:window.scrollX:st(n===`vertical`?s.scrollTop:s.scrollLeft,n,s),d=l[a]-c[a];lt(o?window:s,n,e+u+d,t)}else lt(r,n,e,t)}}let mt=q(),ht=m.value;return R=Ye(ht,ht.length>0&&typeof ht[0]!=`object`?null:mt.keyField),z=Et(ht,mt.typeField),mt.cache&&me(mt.cache),J.value&&mt.prerender&&(ne=!0,Q(!1)),mt.gridItems&&$(mt.itemSize)==null&&console.error(`[vue-recycle-scroller] You must provide an itemSize when using gridItems`),p(()=>{J.value&&(He(),i(()=>{ne=!1,Q(!0),b.value=!0}))}),a(()=>{if(!J.value)return;let e=te;typeof e==`number`&&i(()=>{pt(e)})}),u(()=>{Ee(),Te(),Ue()}),y(J,e=>{e?(He(),i(()=>{Q(!0),b.value=!0})):(Ue(),Ee(),Te(),b.value=!1)}),y(()=>q().cache,e=>{J.value&&(me(e),Q(!0))}),y(()=>t(q().items).slice(),(e,t)=>{if(!J.value)return;let n=q(),r=Y.value?null:n.keyField,i=Ye(e,r),a=Et(e,n.typeField),o=R,s=!Dt(i,a,o,z);n.shift&&$e(o,i)>0?Be(t??[],r):Re(),R=i,z=a,Ve(e),Q(s)}),y(()=>q().keyField,()=>{if(!J.value)return;let e=q(),t=Y.value?null:e.keyField;R=Ye(m.value,t),z=Et(m.value,e.typeField),Re(),Q(!0)}),y(()=>q().typeField,()=>{if(!J.value)return;let e=q();z=Et(m.value,e.typeField),Re(),Q(!0)}),y(se,()=>{J.value&&(Ue(),He(),Q(!1))}),y(f.el,()=>{J.value&&(Ue(),He(),Q(!1))}),y(ce,()=>{!J.value||!se()||(Ue(),He(),Q(!1))}),y(le,()=>{J.value&&(Ve()&&ze(),Q(!1))}),y(()=>q().gridItems,()=>{J.value&&Q(!0)}),y(()=>q().itemSecondarySize,()=>{J.value&&Q(!0)}),{pool:h,visiblePool:ue,totalSize:g,startSpacerSize:_,endSpacerSize:v,ready:b,sizes:le,simpleArray:Y,scrollToItem:ft,scrollToPosition:pt,getScroll:Me,findItemIndex:Le,getItemOffset:Z,getItemSize:Fe,getViewStyle:Ie,cacheSnapshot:de,restoreCache:me,updateVisibleItems:Q,handleResize:De,handleVisibilityChange:ke,sortViews:dt}}var Pt=new WeakMap;function Ft(e){return typeof e==`function`?{callback:e,observer:null,intersection:void 0,visible:null}:{callback:e.callback,observer:null,intersection:e.intersection,visible:null}}function It(e,t){Lt(e);let n=Ft(t.value);if(Pt.set(e,n),typeof IntersectionObserver>`u`){let t=e.getBoundingClientRect();n.visible=!0,n.callback(!0,{boundingClientRect:t})}else n.observer=new IntersectionObserver(e=>{let t=e[0],r=!!(t!=null&&t.isIntersecting);n.visible!==null&&n.visible===r||(n.visible=r,n.callback(r,t))},n.intersection),n.observer.observe(e)}function Lt(e){let t=Pt.get(e);t!=null&&t.observer&&(t.observer.disconnect(),t.observer=null)}var Rt={mounted(e,t){It(e,t)},updated(e,t){t.value!==t.oldValue&&It(e,t)},unmounted(e){Lt(e),Pt.delete(e)}},zt=f({__name:`ItemView`,props:{view:{},itemTag:{}},setup(t){let n=t;return(t,r)=>(m(),w(e(n.itemTag),{class:`vue-recycle-scroller__item-view`},{default:b(()=>[h(t.$slots,`default`,{item:n.view.item,index:n.view.nr.index,active:n.view.nr.used})]),_:3}))}}),Bt=((e,t)=>{let n=e.__vccOpts||e;for(let[e,r]of t)n[e]=r;return n})(f({__name:`ResizeObserver`,emits:[`notify`],setup(e,{emit:t}){let n=t,i=r(),a=null,o=null;function s(){n(`notify`)}return p(()=>{let e=i.value?.parentElement;if(e){if(typeof ResizeObserver<`u`){a=new ResizeObserver(()=>{s()}),a.observe(e);return}o=()=>s(),window.addEventListener(`resize`,o)}}),u(()=>{a&&=(a.disconnect(),null),o&&=(window.removeEventListener(`resize`,o),null)}),(e,t)=>(m(),_(`div`,{ref_key:`el`,ref:i,class:`vue-recycle-scroller__resize-observer`,"aria-hidden":`true`},null,512))}}),[[`__scopeId`,`data-v-08cc04ab`]]),Vt=f({__name:`RecycleScroller`,props:{items:{},keyField:{default:`id`},direction:{default:`vertical`},listTag:{default:`div`},itemTag:{default:`div`},itemSize:{default:null},gridItems:{default:void 0},itemSecondarySize:{default:void 0},minItemSize:{default:null},sizeField:{default:`size`},typeField:{default:`type`},buffer:{default:200},pageMode:{type:Boolean,default:!1},scrollParent:{default:void 0},shift:{type:Boolean,default:!1},cache:{default:void 0},prerender:{default:0},emitUpdate:{type:Boolean,default:!1},disableTransform:{type:Boolean,default:!1},flowMode:{type:Boolean,default:!1},hiddenPosition:{default:void 0},updateInterval:{default:0},itemsLimit:{default:void 0},skipHover:{type:Boolean,default:!1},enabled:{type:Boolean,default:!0},listClass:{default:``},itemClass:{default:``}},emits:[`resize`,`visible`,`hidden`,`update`,`scrollStart`,`scrollEnd`],setup(t,{expose:i,emit:a}){let u=t,d=a,f=Rt,p=r(),v=r(),y=r(),T=r(null),k=s(u,`items`),{pool:ee,visiblePool:A,totalSize:j,startSpacerSize:te,endSpacerSize:M,ready:ne,scrollToItem:N,scrollToPosition:P,getScroll:F,findItemIndex:re,getItemOffset:I,getItemSize:L,getViewStyle:R,cacheSnapshot:z,restoreCache:B,updateVisibleItems:V,handleResize:H,handleVisibilityChange:U}=Nt(D(()=>({items:k,el:p,before:v,after:y,keyField:u.keyField,direction:u.direction,itemSize:u.itemSize,gridItems:u.gridItems,itemSecondarySize:u.itemSecondarySize,minItemSize:u.minItemSize,sizeField:u.sizeField,typeField:u.typeField,buffer:u.buffer,pageMode:u.pageMode,scrollParent:u.scrollParent,shift:u.shift,cache:u.cache,prerender:u.prerender,emitUpdate:u.emitUpdate,disableTransform:u.disableTransform,flowMode:u.flowMode,hiddenPosition:u.hiddenPosition,updateInterval:u.updateInterval,itemsLimit:u.itemsLimit,enabled:u.enabled,onResize:()=>d(`resize`),onVisible:()=>d(`visible`),onHidden:()=>d(`hidden`),onUpdate:(e,t,n,r)=>{d(`update`,e,t,n,r),n<=0&&d(`scrollStart`),r>=u.items.length-1&&d(`scrollEnd`)}}))),W=D(()=>tt({direction:u.direction,disableTransform:u.disableTransform,flowMode:u.flowMode,gridItems:u.gridItems})===`flow`),ie=D(()=>({height:`${te.value}px`})),G=D(()=>({height:`${M.value}px`}));function K(e){T.value=e}function ae(){T.value=null}let oe=D(()=>{let e={[u.direction===`vertical`?`minHeight`:`minWidth`]:`${j.value}px`},t=$(u.itemSize);if(u.gridItems&&t!=null){let n=(u.itemSecondarySize||t)*u.gridItems;e[u.direction===`vertical`?`minWidth`:`minHeight`]=`${n}px`}return e});return i({el:p,visiblePool:A,startSpacerSize:te,endSpacerSize:M,scrollToItem:N,scrollToPosition:P,getScroll:F,findItemIndex:re,getItemOffset:I,getItemSize:L,cacheSnapshot:z,restoreCache:B,updateVisibleItems:V}),(t,r)=>S((m(),_(`div`,{ref_key:`el`,ref:p,class:l([`vue-recycle-scroller`,{"grid-mode":u.gridItems,"flow-mode":W.value,ready:o(ne),"page-mode":u.pageMode,[`direction-${u.direction}`]:!0}])},[t.$slots.before?(m(),_(`div`,{key:0,ref_key:`before`,ref:v,class:`vue-recycle-scroller__slot`},[h(t.$slots,`before`)],512)):C(``,!0),(m(),w(e(u.listTag),{style:x(oe.value),class:l([`vue-recycle-scroller__item-wrapper`,u.listClass])},{default:b(()=>[W.value&&o(te)>0?(m(),w(e(u.itemTag),{key:0,"aria-hidden":`true`,class:`vue-recycle-scroller__item-spacer`,style:x(ie.value)},null,8,[`style`])):C(``,!0),(m(!0),_(O,null,g(o(ee),e=>(m(),w(zt,c({key:e.nr.id,view:e,"item-tag":u.itemTag,style:o(ne)?o(R)(e):null,class:[`vue-recycle-scroller__item-view`,[u.itemClass,{hover:!u.skipHover&&T.value===e.nr.key}]]},E(u.skipHover?{}:{mouseenter:()=>{K(e.nr.key)},mouseleave:()=>{ae()}})),{default:b(e=>[h(t.$slots,`default`,c({ref_for:!0},e))]),_:2},1040,[`view`,`item-tag`,`style`,`class`]))),128)),W.value&&o(M)>0?(m(),w(e(u.itemTag),{key:1,"aria-hidden":`true`,class:`vue-recycle-scroller__item-spacer`,style:x(G.value)},null,8,[`style`])):C(``,!0),u.items.length===0?h(t.$slots,`empty`,{key:2}):C(``,!0)]),_:3},8,[`style`,`class`])),t.$slots.after?(m(),_(`div`,{key:1,ref_key:`after`,ref:y,class:`vue-recycle-scroller__slot`},[h(t.$slots,`after`)],512)):C(``,!0),n(Bt,{onNotify:o(H)},null,8,[`onNotify`])],2)),[[o(f),o(U)]])}}),Ht={"h-full":``,flex:`~ col gap-4`},Ut={flex:`~ items-center`},Wt={flex:`~ col`,"w-30":``,"of-auto":``},Gt={flex:`~ justify-between`,"w-full":``,"text-xs":``,capitalize:``,op75:``},Kt={flex:`~ items-center gap-2`},qt={flex:`~ gap1`,"text-sm":``,op50:``},Jt={key:0},Yt={"flex-auto":``,"of-auto":``,flex:`~ col gap-2`,pl6:``,pr4:``},Xt=Object.assign(f({__name:`ModuleInstallList`,emits:[`close`],setup(e,{emit:t}){let i=t,a=X(),s=pe(),c=[`downloads`,`stars`,`updated`,`created`],l=r(!1),u=r(c[0]),f=r(!0),p={downloads:(e,t)=>e.stats.downloads-t.stats.downloads,stars:(e,t)=>e.stats.stars-t.stats.stars,created:(e,t)=>e.stats.createdAt-t.stats.createdAt,updated:(e,t)=>e.stats.publishedAt-t.stats.publishedAt},h=D(()=>a.value?.toSorted((e,t)=>p[u.value](e,t)*(l.value?1:-1))),v=r(``),y=D(()=>new ie(a.value||[],{keys:[`name`,`description`,`npm`,`category`],sortFn:(e,t)=>{let n=a.value?.[e.idx],r=a.value?.[t.idx];return n&&r?p[u.value](n,r)*(l.value?1:-1):e.score-t.score},threshold:.2})),x=D(()=>{let e=h.value;return f.value&&(e=(e||[]).filter(e=>!s.value.some(t=>t.name===e.name))),v.value?y.value.search(v.value).map(e=>e.item).filter(t=>e?.includes(t)):e});return(e,t)=>{let r=Y,s=I,p=re,h=G,y=q,S=ce,E=Ge;return m(),_(`div`,Ht,[n(r,{mx6:``,mt6:``,"text-xl":``,op75:``,icon:`i-carbon-intent-request-create`,text:`Install Module`}),n(S,{search:v.value,"onUpdate:search":t[2]||=e=>v.value=e,"no-padding":``,"px-6":``,"pb-3":``,"pt-2":``},{actions:b(()=>[n(h,{direction:`end`,n:`sm primary`},{trigger:b(({click:e})=>[T(`div`,Ut,[n(s,{icon:l.value?`tabler:sort-ascending`:`tabler:sort-descending`,"h-full":``,"rounded-r-none":``,onClick:t[0]||=e=>l.value=!l.value},null,8,[`icon`]),n(s,{flex:`~ justify-between`,"min-w-30":``,"border-l-0":``,"rounded-l-none":``,"px-2":``,capitalize:``,hover:`border-l-1`,onClick:t=>e()},{default:b(()=>[d(k(u.value)+` `,1),n(p,{icon:`carbon:chevron-down`})]),_:1},8,[`onClick`])])]),default:b(()=>[T(`div`,Wt,[(m(),_(O,null,g(c,e=>n(s,{key:e,border:!1,p2:``,hover:`n-checkbox-hover text-green`,onClick:t=>u.value=e},{default:b(()=>[T(`span`,Gt,[d(k(e)+` `,1),u.value===e?(m(),w(p,{key:0,icon:`carbon:checkmark`})):C(``,!0)])]),_:2},1032,[`onClick`])),64))])]),_:1})]),default:b(()=>[T(`div`,Kt,[n(y,{modelValue:f.value,"onUpdate:modelValue":t[1]||=e=>f.value=e,n:`primary md`},{default:b(()=>[...t[4]||=[T(`span`,{op75:``},`Exclude installed modules`,-1)]]),_:1},8,[`modelValue`]),T(`div`,qt,[v.value||f.value?(m(),_(`span`,Jt,k(x.value?.length)+` matched · `,1)):C(``,!0),T(`span`,null,k(o(a)?.length)+` modules in total`,1)])])]),_:1},8,[`search`]),T(`div`,Yt,[n(o(Vt),{class:`scroller`,items:x.value||[],"item-size":200,"key-field":`name`},{default:b(({item:e})=>[n(E,{item:e,onStart:t[3]||=e=>i(`close`)},null,8,[`item`])]),_:1},8,[`items`])])])}}}),{__name:`ModuleInstallList`}),Zt={flex:`~ col gap-2`,"w-150":``,p4:``,border:`t base`},Qt={capitalize:``},$t={op50:``},en={flex:`~ gap-3`,mt2:``,"justify-end":``},tn=Object.assign(f({__name:`ModuleActionDialog`,setup(e){let t=te(),r=B(),i={};return(e,a)=>{let s=Fe,c=K,u=oe,f=me,p=W,h=I,g=V;return m(),w(o(ne),null,{default:b(({resolve:e,args:m})=>[n(g,{"model-value":!0,onClose:t=>e(!1)},{default:b(()=>[n(s,{mod:i,info:m[0],border:`none`,"w-150":``,"n-panel-grids":``},null,8,[`info`]),T(`div`,Zt,[T(`h2`,{"text-xl":``,class:l(m[2]===`install`?`text-primary`:`text-red`)},[T(`span`,Qt,k(m[2]),1),a[1]||=d(),T(`code`,null,k(m[0].name),1),a[2]||=d(`? `,-1)],2),a[7]||=T(`p`,{op50:``},` The following command will be executed in your terminal: `,-1),n(c,{code:m[1].commands.join(` `),lang:`bash`,px4:``,py2:``,border:`~ base rounded`,lines:!1},null,8,[`code`]),T(`p`,$t,[a[3]||=d(` Then your `,-1),n(u,{role:`button`,n:`primary`,underline:``,onClick:a[0]||=e=>o(r)(o(t)?._nuxtConfigFile),textContent:`Nuxt config`}),a[4]||=d(` will be updated as: `,-1)]),n(f,{from:m[1].configOriginal,to:m[1].configGenerated,"max-h-80":``,"of-auto":``,py2:``,border:`~ base rounded`,lang:`ts`},null,8,[`from`,`to`]),a[8]||=T(`p`,null,[T(`span`,{op50:``},`After that, Nuxt will `),T(`span`,{"text-orange":``},`restart automatically`),d(`. `)],-1),T(`div`,en,[n(p,{n:`sm amber`,"flex-auto":``,icon:`i-carbon-data-backup`},{default:b(()=>[...a[5]||=[d(` Please make sure to backup your project first. `,-1)]]),_:1}),n(h,{onClick:t=>e(!1)},{default:b(()=>[...a[6]||=[d(` Cancel `,-1)]]),_:1},8,[`onClick`]),n(h,{n:`solid`,capitalize:``,class:l(m[2]===`install`?`n-primary`:`n-red`),onClick:t=>e(!0)},{default:b(()=>[d(k(m[2]),1)]),_:2},1032,[`class`,`onClick`])])])]),_:2},1032,[`onClose`])]),_:1})}}}),{__name:`ModuleActionDialog`}),nn={},rn={class:`markdown-body`};function an(e,t){return m(),_(`div`,rn,[...t[0]||=[T(`template`,null,[T(`div`,{class:`markdown-body`},[T(`h1`,null,`Modules`),T(`p`,null,[d(`Nuxt 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 `),T(`code`,{"v-pre":``},`nuxt.config`),d(`.`)]),T(`p`,null,[d(`You can explore the list of modules on `),T(`a`,{href:`https://nuxt.com/modules`,target:`_blank`,rel:`noopener`},`nuxt.com/modules`),d(` or install them directly inside the DevTools.`)]),T(`p`,null,[T(`a`,{href:`https://nuxt.com/docs/guide/concepts/modules`,target:`_blank`,rel:`noopener`},`Learn more in the documentation`)])])],-1)]])}var on=F(nn,[[`render`,an]]),sn={"h-full":``,"w-full":``,"of-auto":``},cn={relative:``,"h-20":``,"w-20":``,flex:``,"flex-none":``,rounded:``,"bg-gray:3":``,p3:``},ln=[`src`,`alt`],un={"text-lg":``,"group-hover":`text-primary`,transition:``,flex:`~ gap-2 items-center`},dn={op75:``},fn={key:0,border:`l base`,pos:`fixed bottom-0 right-0 top-0`,"z-200":``,"w-150":``,"bg-base":``},pn=`https://ipx.nuxt.com/s_80,f_webp/gh/nuxt/modules/main/icons/`,mn=f({__name:`modules`,setup(e){ae({icon:`carbon-3d-mpr-toggle`,title:`Modules`,order:5});let t=r(!1),i=pe(),a=R(),s=D(()=>i.value.filter(e=>e.isPackageModule)),c=D(()=>i.value.filter(e=>!e.isPackageModule));return U(()=>[{id:`action:modules:install`,title:`Install a new module`,icon:`i-carbon-intent-request-create `,action:()=>{t.value=!0}}]),(e,r)=>{let i=We,l=L,u=M,d=le,f=I,p=Xt,h=tn,v=on,y=J;return m(),_(O,null,[T(`div`,sn,[n(d,{icon:`carbon-3d-mpr-toggle`,text:`Installed Modules`,"container-class":`grid grid-cols-minmax-400px gap3 px4`,padding:!1,description:`Total modules: ${s.value.length}`},{default:b(()=>[(m(!0),_(O,null,g(s.value,e=>(m(),w(i,{key:e.name,mod:e},null,8,[`mod`]))),128)),(m(!0),_(O,null,g(`processInstallingModules`in e?e.processInstallingModules:o(H),e=>(m(),w(u,{key:e.processId,block:``,"min-h-30":``,to:`/modules/terminals`,onClick:t=>a.value=e.processId},{default:b(()=>[n(l,{border:`1.5 dashed`,"h-full":``,"animate-pulse":``,p4:``,transition:``,hover:`border-primary`,flex:`~ col gap-1 items-center justify-center`,role:`button`,class:`group`},{default:b(()=>[T(`div`,cn,[T(`img`,{src:pn+e.info.icon,alt:e.info.name,ma:``},null,8,ln),r[4]||=T(`div`,{"i-carbon-cube":``,ma:``,"text-4xl":``,op30:``},null,-1)]),T(`div`,un,[r[5]||=T(`div`,{"i-carbon-circle-dash":``,"animate-spin":``,"text-xl":``,op75:``},null,-1),T(`span`,dn,`Installing `+k(e.name)+`...`,1)])]),_:2},1024)]),_:2},1032,[`onClick`]))),128)),n(l,{border:`1.5 dashed`,"min-h-30":``,p4:``,transition:``,hover:`border-primary`,flex:`~ col gap-2 items-center justify-center`,role:`button`,class:`group`,onClick:r[0]||=e=>t.value=!0},{default:b(()=>[...r[6]||=[T(`div`,{"i-carbon-intent-request-create":``,"text-4xl":``,op40:``,"group-hover":`op75 text-primary`,transition:``},null,-1),T(`div`,{"text-lg":``,op40:``,"group-hover":`op75 text-primary`,transition:``},` Install New Module `,-1)]]),_:1})]),_:1},8,[`description`]),c.value.length?(m(),w(d,{key:0,icon:`carbon-3d-mpr-toggle`,text:`User Modules`,"container-class":`grid grid-cols-minmax-400px gap3 px4`,padding:!1,description:`Total modules: ${c.value.length}`},{default:b(()=>[(m(!0),_(O,null,g(c.value,e=>(m(),_(O,{key:e.meta?.name||e.entryPath},[e.meta?.name||e.entryPath?(m(),w(i,{key:0,mod:e},null,8,[`mod`])):C(``,!0)],64))),128))]),_:1},8,[`description`])):C(``,!0),n(j,{name:`fade-in`},{default:b(()=>[t.value?(m(),_(`div`,{key:0,class:`fixed bottom-0 left-0 right-0 top-0 z-100`,"bg-black:20":``,"backdrop-blur-2":``,onClick:r[1]||=e=>t.value=!1})):C(``,!0)]),_:1}),n(j,{name:`slide-in`},{default:b(()=>[t.value?(m(),_(`div`,fn,[n(f,{icon:`carbon-close`,pos:`absolute top-3 right-3 z-10`,"rounded-full":``,"text-xl":``,border:!1,onClick:r[2]||=e=>t.value=!1}),n(p,{onClose:r[3]||=e=>t.value=!1})])):C(``,!0)]),_:1}),n(h)]),n(y,null,{default:b(()=>[n(v)]),_:1})],64)}}});export{mn as default};