@nuxt/devtools-nightly 0.0.0 → 2.0.0-beta.0-28940205.5b566fb

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (138) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +129 -0
  3. package/cli.mjs +2 -0
  4. package/dist/chunks/analyze-build.mjs +58 -0
  5. package/dist/chunks/module-main.mjs +2044 -0
  6. package/dist/chunks/plugin-metrics.mjs +68 -0
  7. package/dist/chunks/timeline.mjs +73 -0
  8. package/dist/chunks/vite-inspect.mjs +61 -0
  9. package/dist/chunks/vscode.mjs +195 -0
  10. package/dist/chunks/vue-devtools.mjs +30 -0
  11. package/dist/chunks/vue-inspector.mjs +15 -0
  12. package/dist/client/200.html +20 -0
  13. package/dist/client/404.html +20 -0
  14. package/dist/client/_nuxt/__blank-n15vnpb5.js +1 -0
  15. package/dist/client/_nuxt/analyze-build-kcwmvlyl.js +1 -0
  16. package/dist/client/_nuxt/assets-ivvrbi3q.js +16 -0
  17. package/dist/client/_nuxt/assets.css-hmxl533k.css +1 -0
  18. package/dist/client/_nuxt/b6bfxrb8.js +17 -0
  19. package/dist/client/_nuxt/builds/latest.json +1 -0
  20. package/dist/client/_nuxt/builds/meta/b8bbfd27-5704-4be8-a606-01af93c734ef.json +1 -0
  21. package/dist/client/_nuxt/client-c9f80qsp.js +1 -0
  22. package/dist/client/_nuxt/code-diff.vue-bhijg81q.js +8 -0
  23. package/dist/client/_nuxt/code-snippets.vue-i4e657wf.js +1 -0
  24. package/dist/client/_nuxt/components-krpx1826.js +1 -0
  25. package/dist/client/_nuxt/composable-item.vue-kwpzi9u7.js +1 -0
  26. package/dist/client/_nuxt/constants-b32h69zq.js +1 -0
  27. package/dist/client/_nuxt/custom-_name_-cepykbos.js +1 -0
  28. package/dist/client/_nuxt/default-mk5axw1k.js +1 -0
  29. package/dist/client/_nuxt/duration-display.vue-kqe6a4wx.js +1 -0
  30. package/dist/client/_nuxt/entry.css-nqz5coc9.css +1 -0
  31. package/dist/client/_nuxt/error-404-lp8coab3.js +1 -0
  32. package/dist/client/_nuxt/error-404.css-b3x40x40.css +1 -0
  33. package/dist/client/_nuxt/error-500-d4b6gi3u.js +1 -0
  34. package/dist/client/_nuxt/error-500.css-hilpkhd4.css +1 -0
  35. package/dist/client/_nuxt/error-ojb7cn7v.js +9 -0
  36. package/dist/client/_nuxt/filepath-item.vue-b829sn9l.js +1 -0
  37. package/dist/client/_nuxt/full-j8mngb76.js +1 -0
  38. package/dist/client/_nuxt/help-fab.css-ms50khsu.css +1 -0
  39. package/dist/client/_nuxt/help-fab.vue-gtlaa6k2.js +1 -0
  40. package/dist/client/_nuxt/hooks-htmew7il.js +1 -0
  41. package/dist/client/_nuxt/imports-18kqq3am.js +1 -0
  42. package/dist/client/_nuxt/index-dl6nn7ct.js +2 -0
  43. package/dist/client/_nuxt/index-e7wrzeix.js +1 -0
  44. package/dist/client/_nuxt/launch-page.vue-iyi310zf.js +1 -0
  45. package/dist/client/_nuxt/modules-hdu1ikfi.js +1 -0
  46. package/dist/client/_nuxt/nbadge-fktngirm.js +1 -0
  47. package/dist/client/_nuxt/ncheckbox.vue-fs1yhvat.js +1 -0
  48. package/dist/client/_nuxt/ncode-block.css-c9cb29at.css +1 -0
  49. package/dist/client/_nuxt/ncode-block.vue-gy1ero5j.js +2 -0
  50. package/dist/client/_nuxt/ndrawer.vue-cjxfdzsk.js +1 -0
  51. package/dist/client/_nuxt/ndropdown.vue-fe8ybtb0.js +1 -0
  52. package/dist/client/_nuxt/nicon-title.vue-ouqsubn7.js +1 -0
  53. package/dist/client/_nuxt/nlink.vue-jafnipxp.js +1 -0
  54. package/dist/client/_nuxt/nmarkdown.vue-hygash5x.js +1 -0
  55. package/dist/client/_nuxt/nnavbar.vue-d5x8tq5w.js +1 -0
  56. package/dist/client/_nuxt/none-i3w61o4x.js +1 -0
  57. package/dist/client/_nuxt/nsection-block-ivkmhmn9.js +1 -0
  58. package/dist/client/_nuxt/nsection-block.css-e7kbjm7k.css +1 -0
  59. package/dist/client/_nuxt/nselect-tabs.vue-sw71szzx.js +1 -0
  60. package/dist/client/_nuxt/nselect.vue-mkp3umn0.js +1 -0
  61. package/dist/client/_nuxt/open-graph-i5rptgvl.js +3 -0
  62. package/dist/client/_nuxt/open-graph.css-e21qzmvj.css +1 -0
  63. package/dist/client/_nuxt/overview-jzek603r.js +1 -0
  64. package/dist/client/_nuxt/pages-mhjzw1eo.js +1 -0
  65. package/dist/client/_nuxt/payload-kjhui3c5.js +1 -0
  66. package/dist/client/_nuxt/pinia-jy0feqo2.js +1 -0
  67. package/dist/client/_nuxt/plugins-d2vnj57a.js +1 -0
  68. package/dist/client/_nuxt/render-tree-malxu5t7.js +1 -0
  69. package/dist/client/_nuxt/runtime-configs-c8u0cuv7.js +1 -0
  70. package/dist/client/_nuxt/server-route-inputs.vue-dfs3eezs.js +1 -0
  71. package/dist/client/_nuxt/server-routes-ea89bftg.js +9 -0
  72. package/dist/client/_nuxt/server-tasks-guw0x7eh.js +1 -0
  73. package/dist/client/_nuxt/settings-nr7x6wel.js +1 -0
  74. package/dist/client/_nuxt/stacktrace-list.vue-cfyme80n.js +1 -0
  75. package/dist/client/_nuxt/state-components-f29eyhzi.js +1 -0
  76. package/dist/client/_nuxt/state-editor.vue-nd6tb0dn.js +1 -0
  77. package/dist/client/_nuxt/state-modules-gh2s62ky.js +1 -0
  78. package/dist/client/_nuxt/storage-d1qa6fff.js +1 -0
  79. package/dist/client/_nuxt/terminals-igsxvm6w.js +1 -0
  80. package/dist/client/_nuxt/terminals.css-mejv43xm.css +1 -0
  81. package/dist/client/_nuxt/timeline-lm6kcwsd.js +31 -0
  82. package/dist/client/_nuxt/timeline.css-lhkpu01p.css +1 -0
  83. package/dist/client/_nuxt/unocss-runtime-jzfgcoxk.js +1 -0
  84. package/dist/client/_nuxt/vendor/json-editor-vue-gi2fewby.js +3818 -0
  85. package/dist/client/_nuxt/vendor/json-editor-vue.css-mqq5uooj.css +1 -0
  86. package/dist/client/_nuxt/vendor/markdown-it-fvu08dbs.js +16 -0
  87. package/dist/client/_nuxt/vendor/shiki-bnvxb5wv.js +147 -0
  88. package/dist/client/_nuxt/vendor/unocss-3uirpnla.js +2 -0
  89. package/dist/client/_nuxt/vendor/unocss.css-mhvipxpl.css +1 -0
  90. package/dist/client/_nuxt/vendor/vis-dlwijd5n.js +98 -0
  91. package/dist/client/_nuxt/vendor/xterm-dbpzgj7s.js +9 -0
  92. package/dist/client/_nuxt/vendor/xterm.css-egmhki83.css +32 -0
  93. package/dist/client/_nuxt/virtual-files-jzsbborg.js +1 -0
  94. package/dist/client/_nuxt/virtual-files.css-gqpg2wnb.css +1 -0
  95. package/dist/client/_nuxt/vue-virtual-scroller.esm-hx1s7s1b.js +2 -0
  96. package/dist/client/index.html +20 -0
  97. package/dist/client/nuxt.svg +3 -0
  98. package/dist/dirs.d.mts +7 -0
  99. package/dist/dirs.d.ts +7 -0
  100. package/dist/dirs.mjs +28 -0
  101. package/dist/module.cjs +5 -0
  102. package/dist/module.d.mts +9 -0
  103. package/dist/module.d.ts +9 -0
  104. package/dist/module.json +9 -0
  105. package/dist/module.mjs +6 -0
  106. package/dist/runtime/auth/index.html +76 -0
  107. package/dist/runtime/function-metrics-helpers.d.ts +3 -0
  108. package/dist/runtime/function-metrics-helpers.js +69 -0
  109. package/dist/runtime/nitro/inline.d.ts +3 -0
  110. package/dist/runtime/nitro/inline.js +6 -0
  111. package/dist/runtime/plugins/devtools.client.d.ts +2 -0
  112. package/dist/runtime/plugins/devtools.client.js +56 -0
  113. package/dist/runtime/plugins/devtools.server.d.ts +2 -0
  114. package/dist/runtime/plugins/devtools.server.js +7 -0
  115. package/dist/runtime/plugins/view/FrameBox.vue +167 -0
  116. package/dist/runtime/plugins/view/Main.vue +422 -0
  117. package/dist/runtime/plugins/view/client.d.ts +12 -0
  118. package/dist/runtime/plugins/view/client.js +332 -0
  119. package/dist/runtime/plugins/view/state.d.ts +5 -0
  120. package/dist/runtime/plugins/view/state.js +17 -0
  121. package/dist/runtime/plugins/view/utils.d.ts +31 -0
  122. package/dist/runtime/plugins/view/utils.js +156 -0
  123. package/dist/runtime/settings.d.ts +4 -0
  124. package/dist/runtime/settings.js +2 -0
  125. package/dist/runtime/shared/hooks.d.ts +2 -0
  126. package/dist/runtime/shared/hooks.js +33 -0
  127. package/dist/runtime/use-nuxt-devtools.d.ts +8 -0
  128. package/dist/runtime/use-nuxt-devtools.js +23 -0
  129. package/dist/runtime/vue-devtools/overlay.d.ts +1 -0
  130. package/dist/runtime/vue-devtools/overlay.js +8 -0
  131. package/dist/shared/devtools-nightly.2a48a9e5.d.mts +62 -0
  132. package/dist/shared/devtools-nightly.2a48a9e5.d.ts +62 -0
  133. package/dist/shared/devtools-nightly.5ac54dae.mjs +121 -0
  134. package/dist/types.d.mts +42 -0
  135. package/dist/types.d.ts +42 -0
  136. package/dist/types.mjs +1 -0
  137. package/package.json +123 -2
  138. package/types.d.ts +1 -0
@@ -0,0 +1 @@
1
+ import{_ as j}from"./nbadge-fktngirm.js";import{_ as F}from"./ncode-block.vue-gy1ero5j.js";import{_ as W}from"./ncheckbox.vue-fs1yhvat.js";import{l as L,as as q,at as A,j as E,n as G,q as H,w as Q,e as z,x as J,au as K,H as O,V as X,W as Y,av as Z,ar as ee}from"./b6bfxrb8.js";import{k as te,b as P,Q as p,S as v,V as ae,u as s,a5 as $,W as w,F as M,a0 as o,M as ne,$ as u,U as _,a6 as c,l as se}from"./vendor/json-editor-vue-gi2fewby.js";const oe={key:0},le={p4:"",flex:"~ col gap-1"},re={class:"text-lg font-medium leading-6"},ue={flex:"~ gap-3",mt2:"","justify-end":""},ve=te({__name:"NpmVersionCheck",props:{packageName:{},options:{},showVersion:{type:Boolean,default:!0}},setup(l){const a=l,t=L(),{info:n,update:i,state:g,processId:y,restart:m}=q(a.packageName,a.options),k=P(!0),N=P(!0),U=A(),x=E(),D=G();async function C(){const r=await i(async e=>x.start(e));H("npm:update",{packageName:a.packageName,oldVersion:n.value?.current}),r&&N.value&&U.value.push({id:r,message:`${a.packageName} has been updated. Do you want to restart the Nuxt server now?`}),r&&k.value&&(D.value=r,t.push("/modules/terminals"))}return(r,e)=>{const b=j,S=F,V=W,T=Q,h=z,I=J;return p(),v(M,null,[ae(r.$slots,"default",{id:s(y),info:s(n),update:C,state:s(g),restart:s(m)},()=>[s(n)&&r.showVersion?(p(),v("code",oe,$(`v${s(n).current}`),1)):w("",!0),s(n)?.latest?(p(),v(M,{key:1},[s(n).needsUpdate?(p(),v("button",{key:0,onClick:e[0]||(e[0]=f=>C())},[o(b,{n:"green",title:"updates available",textContent:"updates available"})])):(p(),ne(b,{key:1,n:"gray",title:"latest",textContent:"latest"}))],64)):w("",!0)]),o(s(x),null,{default:u(({resolve:f,args:R})=>[o(I,{"model-value":!0,onClose:d=>f(!1)},{default:u(()=>[_("div",le,[_("h3",re," Update "+$(a.packageName)+"? ",1),e[8]||(e[8]=_("p",{op50:""}," The following command will be executed in your terminal: ",-1)),o(S,{code:R[0],lang:"bash",my3:"",px4:"",py2:"",border:"~ base rounded",lines:!1},null,8,["code"]),o(V,{modelValue:k.value,"onUpdate:modelValue":e[1]||(e[1]=d=>k.value=d),n:"primary"},{default:u(()=>e[3]||(e[3]=[c(" Navigate to terminal ")])),_:1},8,["modelValue"]),o(V,{modelValue:N.value,"onUpdate:modelValue":e[2]||(e[2]=d=>N.value=d),n:"primary"},{default:u(()=>e[4]||(e[4]=[c(" Restart Nuxt server after update ")])),_:1},8,["modelValue"]),_("div",ue,[o(T,{n:"sm amber","flex-auto":"",icon:"i-carbon-data-backup"},{default:u(()=>e[5]||(e[5]=[c(" Please make sure to backup your project first. ")])),_:1}),o(h,{onClick:d=>f(!1)},{default:u(()=>e[6]||(e[6]=[c(" Cancel ")])),_:2},1032,["onClick"]),o(h,{n:"solid primary",onClick:d=>f(!0)},{default:u(()=>e[7]||(e[7]=[c(" Update ")])),_:2},1032,["onClick"])])])]),_:2},1032,["onClose"])]),_:1})],64)}}}),B=["pages","meta","components","imports","nuxt-config-schema","@nuxt/devtools","@nuxt/telemetry"];function ie(){return ee("getModulesList",async()=>(await $fetch("https://api.nuxt.com/modules?version=3")).modules.filter(a=>!B.includes(a.npm)&&a.compatibility.nuxt.includes(">=3")))}function _e(){return K("installed-modules",()=>{const l=O(),a=ie();return se(()=>(l.value?._installedModules||[]).map(t=>{if(!t.entryPath)return;const n=!!(t.entryPath&&X(t.entryPath)),i=t.meta?.name?t.meta?.name:t.entryPath?n?Y(t.entryPath):l.value?.rootDir?Z(t.entryPath,l.value?.rootDir).path:void 0:void 0,g=!!l.value?.modules?.includes(i),y=a.value?.find(m=>m.npm===i)||a.value?.find(m=>m.name===i);return{name:i,isPackageModule:n,isUninstallable:g,info:y,...t}}).filter(t=>t&&(!t.name||!B.includes(t.name))))})}export{ve as _,ie as a,_e as u};
@@ -0,0 +1 @@
1
+ import{P as ne,bc as ae,l as oe,m as q,z as le,r as f,h as k,bd as z,e as se,v as re,D as ue,T as ie,c as de,p as pe,a3 as me}from"./b6bfxrb8.js";import{_ as ve}from"./nselect.vue-mkp3umn0.js";import{_ as fe}from"./nlink.vue-jafnipxp.js";import{_ as ce}from"./filepath-item.vue-b829sn9l.js";import{k as G,b as M,aw as E,G as ye,c as ge,w as _e,l as ke,u as c,Q as l,M as m,$ as r,U as s,a0 as d,y as be,S as u,F as x,ab as U,a5 as b,Y as F,Z as A,a6 as i,W as R,av as xe,a1 as we,a8 as Ce,ag as Ke,al as Se}from"./vendor/json-editor-vue-gi2fewby.js";import"./vendor/unocss-3uirpnla.js";import"./vendor/shiki-bnvxb5wv.js";const Ve={class:"h-[48px] flex items-center justify-between gap1 px-3"},$e={class:"w-full text-sm"},Ne=["value"],Ie=["onClick"],he={key:0,"h-full":"","of-hidden":"",flex:"~ col"},De={border:"b base",class:"h-[49px] flex flex-none items-center justify-between px-4 text-sm"},je={class:"flex items-center gap-4"},Me={key:1},Ue=["onKeyup"],Ae={key:0,op50:""},Be={key:1},Le={"font-bold":""},Pe={"text-sm":""},Te=G({__name:"StorageDetails",async setup(W){let p,g;const w=ne(),C=ae(),K=oe(),S=M(""),_=M(""),o=q("storage:current",""),t=M(),y=q("storage:file:state",""),{data:V}=([p,g]=E(()=>z("storageMounts",()=>f.getStorageMounts())),p=await p,g(),p),{data:$,refresh:B}=([p,g]=E(async()=>z("storageKeys",async()=>o.value?await f.getStorageKeys(o.value):[])),p=await p,g(),p),O=C.hook("storage:key:update",async(n,e)=>{if(!(!o.value||n.split(":")[0]!==o.value)&&(await B(),y.value===n)){if(e==="remove")return K.replace({query:{storage:o.value}});await I(y.value)}});ye(O),ge(o,()=>{B(),y.value=""}),_e(async()=>{if(!y.value){t.value=null;return}I(y.value)}),le("keydown",n=>{n.key==="s"&&(n.ctrlKey||n.metaKey)&&(h(),n.preventDefault())});function N(n){return n.replace(`${o.value}:`,"")}const Q=ke(()=>$.value?$.value.filter(n=>n.includes(S.value)):[]);async function I(n){const e=await f.getStorageItem(await k(),n);t.value={key:n,updatedKey:N(n),editingKey:!1,content:e,updatedContent:e}}async function Y(){if(!_.value||!o.value)return;const n=`${o.value}:${_.value}`;$.value?.includes(n)||await f.setStorageItem(await k(),n,""),K.replace({query:{storage:o.value,key:n}}),_.value=""}async function h(){t.value&&(await f.setStorageItem(await k(),t.value.key,t.value.updatedContent),await I(t.value.key))}async function Z(){!t.value||!o.value||(await f.removeStorageItem(await k(),t.value.key),t.value=null)}async function H(){if(!t.value||!o.value)return;const n=`${o.value}:${t.value.updatedKey}`,e=await k();await f.setStorageItem(e,n,t.value.updatedContent),await f.removeStorageItem(e,t.value.key),K.replace({query:{storage:o.value,key:n}})}return(n,e)=>{const D=se,J=ve,j=re,X=ue,L=fe,P=ie,T=de,ee=pe,te=ce;return c(o)?(l(),m(ee,{key:0,"storage-key":"tab-storage"},{left:r(()=>[s("div",Ve,[d(D,{icon:"carbon-chevron-left","ml--1":"",border:!1,onClick:e[0]||(e[0]=a=>o.value="")}),s("div",$e,[d(J,{modelValue:c(o),"onUpdate:modelValue":e[1]||(e[1]=a=>be(o)?o.value=a:null),n:"primary",icon:"carbon-data-base"},{default:r(()=>[(l(!0),u(x,null,U(c(V),(a,v)=>(l(),u("option",{key:v,value:v},b(v),9,Ne))),128))]),_:1},8,["modelValue"])])]),d(j,{modelValue:S.value,"onUpdate:modelValue":e[2]||(e[2]=a=>S.value=a),icon:"carbon-search",placeholder:"Search...",n:"primary sm",border:"y x-none base! rounded-0",class:"w-full py2 ring-0!"},null,8,["modelValue"]),(l(!0),u(x,null,U(Q.value,a=>(l(),u(x,{key:a},[s("button",{block:"","w-full":"",truncate:"",px2:"",py1:"","text-start":"","text-sm":"","font-mono":"",class:F(a===t.value?.key?"text-primary n-bg-active":"text-secondary hover:n-bg-hover"),onClick:v=>y.value=a},b(N(a)),11,Ie),e[8]||(e[8]=s("div",{"x-divider":""},null,-1))],64))),128)),d(j,{modelValue:_.value,"onUpdate:modelValue":e[3]||(e[3]=a=>_.value=a),icon:"carbon-add",placeholder:"key",n:"sm",border:"t-none x-none base! rounded-0",class:"w-full py2 font-mono ring-0!",onKeyup:A(Y,["enter"])},null,8,["modelValue"])]),right:r(()=>[t.value?.key?(l(),u("div",he,[s("div",De,[s("div",je,[t.value.editingKey?(l(),m(j,{key:0,modelValue:t.value.updatedKey,"onUpdate:modelValue":e[4]||(e[4]=a=>t.value.updatedKey=a),onKeyup:A(H,["enter"])},null,8,["modelValue"])):(l(),u("code",Me,[i(b(N(t.value.key))+" ",1),d(X,{icon:"carbon-edit",class:"cursor-pointer op50 hover:op100",onClick:e[5]||(e[5]=a=>t.value.editingKey=!0)})])),t.value.editingKey?R("",!0):(l(),m(D,{key:2,n:"green xs",disabled:t.value.content===t.value.updatedContent,class:F({"border-green":t.value.content!==t.value.updatedContent}),onClick:h},{default:r(()=>e[9]||(e[9]=[i(" Save ")])),_:1},8,["disabled","class"]))]),s("div",null,[d(D,{n:"red xs",onClick:Z},{default:r(()=>e[10]||(e[10]=[i(" Delete ")])),_:1})])]),typeof t.value.content=="object"?(l(),m(c(xe),we({key:0,modelValue:t.value.updatedContent,"onUpdate:modelValue":e[6]||(e[6]=a=>t.value.updatedContent=a),class:[[c(w)==="dark"?"jse-theme-dark":"light"],"json-editor-vue h-full of-auto text-sm outline-none"]},n.$attrs,{mode:"text","navigation-bar":!1,indentation:2,"tab-size":2}),null,16,["modelValue","class"])):Ce((l(),u("textarea",{key:1,"onUpdate:modelValue":e[7]||(e[7]=a=>t.value.updatedContent=a),placeholder:"Item value...",class:"h-full of-auto p-4 text-sm font-mono outline-none",onKeyup:A(Ke(h,["ctrl"]),["enter"])},null,40,Ue)),[[Se,t.value.updatedContent]])])):(l(),m(T,{key:1},{default:r(()=>[d(P,{px6:"",py4:""},{default:r(()=>[e[12]||(e[12]=i(" Select one key to start.")),e[13]||(e[13]=s("br",null,null,-1)),e[14]||(e[14]=i("Learn more about ")),d(L,{href:"https://nitro.unjs.io/guide/storage",n:"orange",target:"_blank"},{default:r(()=>e[11]||(e[11]=[i(" Nitro storage ")])),_:1})]),_:1})]),_:1}))]),_:1})):(l(),m(T,{key:1},{default:r(()=>[Object.keys(c(V)).length?(l(),u("p",Ae," Select one storage to start: ")):(l(),u("p",Be,[e[16]||(e[16]=i(" No custom storage defined in ")),e[17]||(e[17]=s("code",null,"nitro.storage",-1)),e[18]||(e[18]=i(".")),e[19]||(e[19]=s("br",null,null,-1)),e[20]||(e[20]=i(" Learn more about ")),d(L,{href:"https://nitro.unjs.io/guide/storage",n:"orange",target:"_blank"},{default:r(()=>e[15]||(e[15]=[i(" Nitro storage ")])),_:1})])),(l(!0),u(x,null,U(c(V),(a,v)=>(l(),m(P,{key:v,"min-w-80":"","cursor-pointer":"","p-4":"","text-left":"",hover:"border-green",onClick:qe=>o.value=v},{default:r(()=>[s("span",Le,b(v),1),e[21]||(e[21]=s("br",null,null,-1)),s("span",Pe,b(a.driver)+" driver",1),e[22]||(e[22]=s("br",null,null,-1)),a.base?(l(),m(te,{key:0,"text-xs":"",filepath:a.base},null,8,["filepath"])):R("",!0)]),_:2},1032,["onClick"]))),128))]),_:1}))}}}),Qe=G({__name:"storage",setup(W){return(p,g)=>{const w=Te,C=me;return l(),m(C,null,{default:r(()=>[d(w)]),_:1})}}});export{Qe as default};
@@ -0,0 +1 @@
1
+ import{bc as B,z as E,r as f,h as p,e as h,be as V,n as D,D as F,a3 as M}from"./b6bfxrb8.js";import{x as z,a as I}from"./vendor/xterm-dbpzgj7s.js";import{k as y,b as g,x as P,Q as t,S as d,U as c,a0 as A,M as m,W as v,a5 as _,F as N,l as R,w as L,u as w,ab as S,Y as C,ag as j,a6 as $,$ as q}from"./vendor/json-editor-vue-gi2fewby.js";import"./vendor/unocss-3uirpnla.js";import"./vendor/shiki-bnvxb5wv.js";const Q={border:"t base",flex:"~ gap-2","items-center":"",p2:""},U={"text-sm":"",op50:""},W=y({__name:"TerminalView",props:{id:{}},setup(b){const n=b,i=g(),r=B(),o=g();let a;P(async()=>{a=new z.Terminal({convertEol:!0,cols:80,screenReaderMode:!0});const u=new I.FitAddon;a.loadAddon(u),a.open(i.value),u.fit(),E(window,"resize",()=>{u.fit()}),o.value=await f.getTerminalDetail(await p(),n.id),o.value?.buffer&&a.write(o.value.buffer),r.hook("devtools:terminal:data",({id:e,data:l})=>{e===n.id&&a.write(l)})});async function s(){f.runTerminalAction(await p(),n.id,"clear"),a?.clear()}async function k(){f.runTerminalAction(await p(),n.id,"restart")}async function x(){f.runTerminalAction(await p(),n.id,"terminate")}return(u,e)=>{const l=h;return t(),d(N,null,[c("div",{ref_key:"container",ref:i,"h-full":"","w-full":"","of-auto":"","bg-black":""},null,512),c("div",Q,[A(l,{title:"Clear",icon:"i-carbon-clean",border:!1,onClick:e[0]||(e[0]=T=>s())}),o.value?.restartable?(t(),m(l,{key:0,title:"Restart",icon:"carbon-renew",border:!1,onClick:e[1]||(e[1]=T=>k())})):v("",!0),o.value?.terminatable?(t(),m(l,{key:1,title:"Terminate",icon:"carbon-delete",border:!1,onClick:e[2]||(e[2]=T=>x())})):v("",!0),c("span",U,_(o.value?.description),1)])],64)}}}),Y={key:0,"h-full":"","w-full":"","of-hidden":"",grid:"~ rows-[max-content_1fr_max-content]"},G={flex:"~",border:"b base","flex-1":"","items-center":"","n-navbar-glass":""},H=["onClick"],J={key:1,p10:""},K={key:1,"h-full":"",flex:"","items-center":"","justify-center":""},O=y({__name:"TerminalPage",setup(b){const n=V(),i=D(),r=R(()=>n.value?.find(a=>a.id===i.value));async function o(a){f.runTerminalAction(await p(),a,"remove")}return L(()=>{!i.value&&n.value?.length&&(i.value=n.value[0].id)}),(a,s)=>{const k=F,x=h,u=W;return w(n)?.length?(t(),d("div",Y,[c("div",G,[(t(!0),d(N,null,S(w(n),e=>(t(),d("button",{key:e.id,border:"r base",flex:"~ gap-2","items-center":"",px3:"",py2:"",class:C(e.id===r.value?.id?"bg-active":""),onClick:l=>i.value=e.id},[e.icon?(t(),m(k,{key:0,icon:e.icon},null,8,["icon"])):v("",!0),c("span",{class:C(e.id===r.value?.id?"":"op50")},_(e.name)+_(e.isTerminated?" (terminated)":""),3),e.isTerminated?(t(),m(x,{key:1,icon:"carbon-close","mx--2":"",border:!1,onClick:j(l=>o(e.id),["stop"])},null,8,["onClick"])):v("",!0)],10,H))),128))]),r.value?(t(),m(u,{id:r.value.id,key:r.value.id},null,8,["id"])):(t(),d("div",J,[s[0]||(s[0]=$(" Terminal ")),c("code",null,_(w(i)),1),s[1]||(s[1]=$(" not found "))]))])):(t(),d("div",K,s[2]||(s[2]=[c("em",{op50:""},"No terminal attached",-1)])))}}}),ae=y({__name:"terminals",setup(b){return(n,i)=>{const r=O,o=M;return t(),m(o,null,{default:q(()=>[A(r)]),_:1})}}});export{ae as default};
@@ -0,0 +1 @@
1
+ .xterm{padding-left:1rem;padding-right:1rem}
@@ -0,0 +1,31 @@
1
+ import{a4 as W,K as z,z as j,bf as Y,_ as U,P as X,I as K,e as O,a6 as q,X as Q,bg as Z,H as ee,j as se,J as ne,c as oe,r as G,C as te,x as ae}from"./b6bfxrb8.js";import{_ as V}from"./duration-display.vue-kqe6a4wx.js";import{k as B,l as w,Q as t,S as i,U as o,X as T,a5 as m,u as g,F as f,ab as E,M as v,b as C,c as le,n as re,W as x,a0 as u,Y as R,R as P,$ as h,av as ie,a1 as pe,a6 as F,ah as ce}from"./vendor/json-editor-vue-gi2fewby.js";import{_ as H}from"./nbadge-fktngirm.js";import{_ as de}from"./composable-item.vue-kwpzi9u7.js";import{_ as ue}from"./stacktrace-list.vue-cfyme80n.js";import{_ as me}from"./ndrawer.vue-cjxfdzsk.js";import{_ as ke}from"./launch-page.vue-iyi310zf.js";import{_ as ye}from"./nlink.vue-jafnipxp.js";import{_ as fe}from"./code-diff.vue-bhijg81q.js";import{_ as ve}from"./help-fab.vue-gtlaa6k2.js";import"./vendor/unocss-3uirpnla.js";import"./vendor/shiki-bnvxb5wv.js";import"./nmarkdown.vue-hygash5x.js";import"./client-c9f80qsp.js";import"./filepath-item.vue-b829sn9l.js";import"./constants-b32h69zq.js";import"./ncode-block.vue-gy1ero5j.js";const he=B({__name:"TimelineItemFunction",props:{item:{}},setup(y){const d=y,p=w(()=>W(d.item.name,50,60,"_op_")),n=w(()=>p.value.replace(/_op_/,"1")),e=w(()=>W(d.item.name,50,40)),l=w(()=>p.value.replace(/_op_/,"0.2"));return(a,r)=>(t(),i("button",{class:"group",style:T({color:n.value,borderLeft:`2px solid ${n.value}`}),relative:"","text-sm":"",transition:"","hover:z-1000":"","bg-base":""},[o("div",{style:T({backgroundColor:l.value}),absolute:"","bottom-0":"","left--1px":"","top-0":"","w-full":"","text-sm":"","transition-all":"","duration-300":""},null,4),o("div",{style:T({color:e.value,"--c":n.value}),border:"r-2 t-2 y-2 transparent","min-w-max":"",px1:"","text-left":"","group-hover":"border-$c"},m(a.item.name),5)],4))}}),_e={relative:"","h-full":""},be={absolute:"","left-2":"","top-2.3em":"","text-xs":"",op50:""},ge=B({__name:"TimelineSegment",props:{segment:{}},emits:["select"],setup(y,{emit:d}){const p=y,n=d,e=z(()=>p.segment.start,{updateInterval:1e3,showSecond:!0,controls:!1,messages:{justNow:"",past:l=>l,future:l=>l,invalid:"-",second:l=>l?`${l}s`:"",minute:l=>`${l}m`,hour:l=>`${l}h`,week:l=>`${l}w`,day:l=>`${l}d`,month:l=>`${l}mo`,year:l=>`${l}y`}});return(l,a)=>{const r=he;return t(),i("div",_e,[o("button",{absolute:"","left-0":"","right-0":"","top-0":"","bg-green:5":"",px2:"",py1:"","text-left":"","text-xs":"","text-green6":"","font-mono":"",onClick:a[0]||(a[0]=s=>l.segment.route?n("select",l.segment.route):void 0)},m(l.segment.route?.event.to),1),o("div",be,m(g(e))+" ago ",1),o("div",null,[(t(!0),i(f,null,E(l.segment.functions,(s,c)=>(t(),v(r,{key:c,item:s.event,style:T({position:"absolute",minWidth:`${s.relativeWidth*100}%`,maxWidth:`${s.relativeWidth*100}%`,top:`${4+s.layer*1.6}em`,left:`${s.relativeStart*100}%`}),onClick:k=>n("select",s)},null,8,["item","style","onClick"]))),128))])])}}}),xe=3e3,De=50;function Ae(y){const d=[];let p={start:0,end:0,events:[],functions:[],duration:0};for(const n of y){const e=n.end||n.start;(n.start-p.end>xe||n.type==="route")&&(p={start:n.start,end:e,events:[],functions:[],duration:0},d.push(p)),p.events.push(n),p.end=e+De}return d.forEach((n,e)=>{const l=n.end-n.start,a=[];n.duration=l,n.previousGap=e>0?n.start-d[e-1].end:0,n.events.forEach(r=>{const s=r.end||r.start;let c=0;r.type!=="route"&&(c=a.findIndex(D=>D<=r.start),c===-1?(c=a.length,a.push(s+1e3)):a[c]=s+1e3);const k={event:r,segment:n,relativeStart:(r.start-n.start)/l,relativeWidth:(s-r.start)/l,layer:c};r.type==="function"?n.functions.push(k):n.route=k})}),d}const $e={relative:""},Ce={key:0,border:"x base","h-full":"","flex-inline":"","bg-true-gray-1":"",py15:"","text-xs":"","write-vertical-left":"",op50:"","dark:bg-true-gray-9":""},Be=B({__name:"TimelineTable",props:{data:{}},emits:["select"],setup(y,{emit:d}){const p=y,n=d,e=C(),l=C(),a=C(),r=C(),s=C(!0),c=C(1.5),k=w(()=>Ae(p.data.events)),D=w(()=>(p.data.events.length,e.value?.scrollWidth||window.innerWidth));function A(){r.value&&(r.value.style.width=`${D.value}px`)}function S(){s.value&&e.value&&(e.value.scrollTo({left:e.value.scrollWidth-e.value.clientWidth,behavior:"smooth"}),a.value.scrollTo({left:e.value.scrollWidth-e.value.clientWidth,behavior:"smooth"}))}return le(()=>p.data.events.length,async()=>{await re(),A(),S()},{flush:"post"}),j(e,"scroll",()=>{a.value.scrollLeft!==e.value.scrollLeft&&(A(),a.value.scrollLeft=e.value.scrollLeft,s.value=e.value.scrollLeft>=e.value.scrollWidth-e.value.clientWidth)}),j(a,"scroll",()=>{a.value.scrollLeft!==e.value.scrollLeft&&(A(),e.value.scrollLeft=a.value.scrollLeft)}),j(e,"wheel",_=>{_.altKey?(c.value=Y(c.value+_.deltaY/200,.5,3),A()):e.value.scrollLeft+=_.deltaY}),(_,I)=>{const $=V,M=ge;return t(),i(f,null,[o("div",$e,[o("div",{ref_key:"minimap",ref:l,border:"t b base",relative:"","h-50px":"","ws-nowrap":"","border-base":""},[(t(!0),i(f,null,E(k.value,(b,N)=>(t(),i("div",{key:N,relative:"","h-full":"","flex-inline":"",style:T({width:`${Math.max(100,b.duration/10)/D.value*100}%`})},[(t(!0),i(f,null,E(b.functions,(L,J)=>(t(),i("div",{key:J,"h-3px":"",rounded:"",style:T({width:`max(${L.relativeWidth*100}%, 10px)`,position:"absolute",top:`${L.layer*4}px`,left:`${L.relativeStart*100}%`,backgroundColor:("getHashColorFromString"in _?_.getHashColorFromString:g(W))(L.event.name,50,60)})},null,4))),128)),b.route?(t(),i("div",{key:0,absolute:"","top-0":"","h-full":"","w-px":"","border-l":"","border-green6":"",op10:"",style:T({left:`${b.route.relativeStart*100}%`})},null,4)):x("",!0)],4))),128))],512),o("div",{ref_key:"minimapScroller",ref:a,class:"timeline-scroller",absolute:"","inset-0":"","h-full":"","w-full":"","of-x-scroll":""},[o("div",{ref_key:"minimapScrollerInner",ref:r,"h-1px":""},null,512)],512)]),o("div",{ref_key:"scroller",ref:e,relative:"","h-full":"","w-full":"","of-x-scroll":"","of-y-hidden":"","ws-nowrap":"","n-panel-grids":""},[(t(!0),i(f,null,E(k.value,(b,N)=>(t(),i(f,{key:N},[b.previousGap&&b.previousGap>=200?(t(),i("div",Ce,[u($,{op50:"",duration:b.previousGap,color:!1},null,8,["duration"])])):x("",!0),u(M,{"flex-inline":"","of-x-hidden":"","hover:of-x-visible":"","bg-base":"",class:R(N===k.value.length-1?"border-r border-base":""),segment:b,style:T({width:`${Math.max(50,b.duration/10)*c.value}px`}),onSelect:I[0]||(I[0]=L=>n("select",L))},null,8,["class","segment","style"])],64))),128))],512)],64)}}}),we=U(Be,[["__scopeId","data-v-18afc15e"]]),Te={border:"t base",flex:"~ col","h-full":"","of-y-auto":"","text-sm":""},Se=["onClick"],Ne={flex:"~","ml--1":"","font-mono":""},Fe={key:0,mr2:"",op30:""},Ee={op75:""},Ie={flex:"~ col items-start"},Le={"text-xs":"","font-mono":"",op30:""},Me={"text-green":"","font-bold":"","font-mono":""},We=B({__name:"TimelineList",props:{data:{}},emits:["select"],setup(y,{emit:d}){const p=d;return(n,e)=>{const l=V;return t(),i("div",Te,[(t(!0),i(f,null,E(n.data.events,(a,r)=>(t(),i("button",{key:r,border:"b base",px3:"",py2:"",flex:"~ items-center gap-2",hover:"bg-active",onClick:s=>p("select",a)},[a.type==="function"?(t(),i(f,{key:0},[e[2]||(e[2]=o("div",{"i-carbon-function":"",op50:""},null,-1)),o("div",{"font-mono":"",style:T({color:a.type==="function"?("getHashColorFromString"in n?n.getHashColorFromString:g(W))(a.name,50,60):""})},m(a.name),5),o("div",Ne,[e[0]||(e[0]=o("div",{op30:""}," ( ",-1)),(t(!0),i(f,null,E(a.args,(s,c)=>(t(),i(f,{key:c},[c?(t(),i("div",Fe," , ")):x("",!0),o("div",Ee,m(s===null?"null":s===void 0?"undefined":typeof s=="function"?"[function]":Array.isArray(s)?"[Array]":typeof s=="object"?"[object]":JSON.stringify(s)),1)],64))),128)),e[1]||(e[1]=o("div",{op30:""}," ) ",-1))])],64)):(t(),i(f,{key:1},[e[3]||(e[3]=o("div",{"mr-1":"","h-7":"","w-7":"",flex:"","rounded-lg":"","bg-primary:5":"",p1:"","text-green6":""},[o("div",{"i-carbon-direction-rotary-right":"",ma:"","text-lg":""})],-1)),o("div",Ie,[o("div",Le,m(a.from),1),o("div",Me,m(a.to),1)])],64)),e[4]||(e[4]=o("div",{"flex-auto":""},null,-1)),a.end?(t(),v(l,{key:2,duration:a.end-a.start,color:a.type==="function"},null,8,["duration","color"])):x("",!0)],8,Se))),128)),e[5]||(e[5]=o("div",{"min-h-100":""},null,-1))])}}}),Ve={key:0,"text-blue":""},je={key:1,"text-purple":""},ze={key:2,"text-green":""},Oe={key:3,"text-gray":""},Re={key:4,"text-gray":""},Ge={key:5,"text-gray":""},Pe={key:0,"bg-red:10":"",px2:"",py1:"","text-red":""},He={key:1},Je={p2:"","text-sm":"",border:"t base"},Ye=B({__name:"TimelineArgumentView",props:{value:{}},setup(y){const d=y,p=C(),n=C();function e(){try{p.value=JSON.parse(JSON.stringify(d.value))}catch(s){console.error(s),n.value=s}}const l=B({emits:["setup"],setup(s,{emit:c}){return c("setup"),()=>null}}),a=X(),r=K();return(s,c)=>{const k=O,D=P("VMenu");return typeof s.value=="string"?(t(),i("div",Ve,m(JSON.stringify(s.value)),1)):typeof s.value=="number"?(t(),i("div",je,m(s.value),1)):typeof s.value=="boolean"?(t(),i("div",ze,m(s.value),1)):typeof s.value>"u"?(t(),i("div",Oe," undefined ")):typeof s.value=="function"?(t(),i("div",Re," [Function"+m(s.value.name?`: ${s.value.name}`:"")+"] ",1)):s.value===null?(t(),i("div",Ge," null ")):(t(),v(D,{key:6,placement:"top"},{popper:h(()=>[u(g(l),{onSetup:e}),n.value?(t(),i("div",Pe," Failed to display object: "+m(n.value),1)):p.value?(t(),i("div",He,[u(g(ie),pe({"model-value":p.value},s.$attrs,{class:["json-editor-vue",[g(a)==="dark"?"jse-theme-dark":""]],"main-menu-bar":!1,"navigation-bar":!1,"status-bar":!1,"read-only":!0,indentation:2,"tab-size":2}),null,16,["model-value","class"]),o("div",Je,[u(k,{title:"Copy to clipboard",icon:"carbon-copy",onClick:c[0]||(c[0]=A=>g(r)(JSON.stringify(p.value,null,2),"timeline-argument"))},{default:h(()=>c[1]||(c[1]=[F(" Copy ")])),_:1})])])):x("",!0)]),default:h(()=>[o("span",{"rounded-sm":"",px1:"","py0.5":"","text-sm":"",class:R([Array.isArray(s.value)?"text-amber bg-amber:10":"text-orange bg-orange:10"])},m(Array.isArray(s.value)?`[Array(${s.value.length})]`:"[Object]"),3)]),_:1}))}}}),Ue={key:0,"p-4":"",flex:"~ col gap-2","text-base":""},Xe={"mx--1":""},Ke={flex:"~ gap-1","font-mono":""},qe={key:1},Qe={key:0,op30:""},Ze={flex:"~ gap-1","text-sm":""},es={class:"text-sm text-gray-400"},ss=B({__name:"TimelineDetailsFunction",props:{record:{}},setup(y){const d=y,p=z(()=>d.record.start,{showSecond:!0}),n=q(),e=w(()=>n.value?.metadata),l=w(()=>n.value?.imports.find(a=>a.as===d.record.name));return(a,r)=>{const s=H,c=de,k=Ye,D=V,A=ue;return a.record?(t(),i("div",Ue,[o("div",Xe,[u(s,{n:"yellow",textContent:"Function call"})]),o("div",Ke,[l.value?(t(),v(c,{key:0,item:l.value,metadata:e.value,counter:!1,classes:"px2 py1","mx--2":""},null,8,["item","metadata"])):(t(),i("span",qe,m(a.record.name),1)),r[0]||(r[0]=o("span",{ml1:"",op30:""},"(",-1)),(t(!0),i(f,null,E(a.record.args,(S,_)=>(t(),i(f,{key:_},[_?(t(),i("span",Qe,", ")):x("",!0),u(k,{value:S},null,8,["value"])],64))),128)),r[1]||(r[1]=o("span",{op30:""},")",-1))]),o("div",Ze,[a.record.end?(t(),v(D,{key:0,duration:a.record.end-a.record.start},null,8,["duration"])):x("",!0),r[2]||(r[2]=o("span",{mx1:"",op50:""},"·",-1)),o("div",es,m(g(p)),1)]),a.record.stacktrace?(t(),v(A,{key:0,stacktrace:a.record.stacktrace,class:"text-xs text-gray-400"},null,8,["stacktrace"])):x("",!0)])):x("",!0)}}}),ns={key:0,"p-4":"",flex:"~ col gap-2"},os={"mx--1":""},ts={flex:"~ gap-1 items-center","font-mono":""},as={op50:""},ls={flex:"~ gap-1","text-sm":""},rs={class:"text-sm text-gray-400"},is=B({__name:"TimelineDetailsRoute",props:{record:{}},setup(y){const d=y,p=z(()=>d.record.start,{showSecond:!0});return(n,e)=>{const l=H,a=V;return n.record?(t(),i("div",ns,[o("div",os,[u(l,{n:"green",textContent:"Route Change"})]),o("div",ts,[o("span",as,m(n.record.from),1),e[0]||(e[0]=o("span",{"i-carbon-arrow-right":"",op50:""},null,-1)),o("span",null,m(n.record.to),1)]),o("div",ls,[n.record.end?(t(),v(a,{key:0,duration:n.record.end-n.record.start},null,8,["duration"])):x("",!0),e[1]||(e[1]=o("span",{mx1:"",op50:""},"·",-1)),o("div",rs,m(g(p)),1)])])):x("",!0)}}}),ps={key:0,"h-screen":"","of-hidden":""},cs={"h-screen":"","w-full":"",flex:"","flex-col":""},ds={"h-10":"",flex:"~ gap-2 items-center justify-end",p2:"",px3:""},us={"text-sm":""},ms={"min-h-50":"",px3:"",py2:""},ks=B({__name:"TimelineView",setup(y){const d=Q(),p=C("table"),n=C(),e=w(()=>d.value?.metrics.clientTimeline());function l(){e.value&&(e.value.events=[])}function a(){p.value=p.value==="table"?"list":"table"}return(r,s)=>{const c=P("VTooltip"),k=O,D=we,A=We,S=ss,_=is,I=me;return e.value?(t(),i("div",ps,[o("div",cs,[o("div",ds,[u(c,{flex:""},{popper:h(()=>[o("div",us,m(e.value.options.enabled?"Recording...":"Paused"),1)]),default:h(()=>[o("div",{"text-lg":"",class:R(e.value.options.enabled?"i-carbon-radio-button-checked text-primary animate-pulse":"i-carbon-pause-outline op30")},null,2)]),_:1}),e.value.options.enabled?(t(),v(k,{key:1,size:"small",ml1:"","text-sm":"",n:"orange",icon:"i-carbon-stop",onClick:s[1]||(s[1]=$=>e.value.options.enabled=!1)},{default:h(()=>s[6]||(s[6]=[F(" Stop Tracking ")])),_:1})):(t(),v(k,{key:0,size:"small",ml1:"","text-sm":"",n:"primary",icon:"i-carbon-play",onClick:s[0]||(s[0]=$=>e.value.options.enabled=!0)},{default:h(()=>s[5]||(s[5]=[F(" Start Tracking ")])),_:1})),s[7]||(s[7]=o("div",{"flex-auto":""},null,-1)),u(k,{icon:p.value==="table"?"i-carbon-roadmap":"i-carbon-list",class:"ml-2",title:"Toggle View",border:!1,onClick:a},null,8,["icon"]),u(k,{icon:"i-carbon-trash-can","hover-text-red":"",class:"ml-2",border:!1,onClick:l})]),p.value==="table"?(t(),v(D,{key:0,data:{...e.value},onSelect:s[2]||(s[2]=$=>n.value=$.event)},null,8,["data"])):(t(),v(A,{key:1,data:{...e.value},onSelect:s[3]||(s[3]=$=>n.value=$)},null,8,["data"]))]),u(I,{"model-value":!!n.value,"auto-close":"",transition:"bottom",left:"#nuxt-devtools-side-nav",onClose:s[4]||(s[4]=$=>n.value=void 0)},{default:h(()=>[o("div",ms,[n.value?.type==="function"?(t(),v(S,{key:0,record:n.value},null,8,["record"])):n.value?.type==="route"?(t(),v(_,{key:1,record:n.value},null,8,["record"])):x("",!0)])]),_:1},8,["model-value"])])):x("",!0)}}}),ys={class:"markdown-body"},fs={__name:"timeline",setup(y,{expose:d}){return d({frontmatter:{}}),(n,e)=>(t(),i("div",ys,e[0]||(e[0]=[o("h1",null,"Timeline",-1),o("blockquote",{"text-orange":"","bg-orange:10":"",py1:""}," This is an experimental feature ",-1),ce(`<p>Timeline tracks your route navigations and functions calls in your Nuxt application. It can be used to debug performance issues and to understand how your application works.</p><h2>Function calls</h2><p>Nuxt DevTools tracks function calls by wrapping them in the build time. It works for functions referenced by auto-imports, or explicit imports through <code>import {} from &#39;#imports&#39;</code>.</p><pre class="shiki shiki-themes vitesse-light vitesse-dark" style="background-color:#ffffff;--shiki-dark-bg:#121212;color:#393a34;--shiki-dark:#dbd7caee;" tabindex="0"><code><span class="line"><span style="color:#999999;--shiki-dark:#666666;">&lt;</span><span style="color:#1E754F;--shiki-dark:#4D9375;">script</span><span style="color:#B07D48;--shiki-dark:#BD976A;"> setup</span><span style="color:#999999;--shiki-dark:#666666;">&gt;</span></span>
2
+ <span class="line"><span style="color:#1E754F;--shiki-dark:#4D9375;">import</span><span style="color:#999999;--shiki-dark:#666666;"> {</span><span style="color:#B07D48;--shiki-dark:#BD976A;"> useRoute</span><span style="color:#999999;--shiki-dark:#666666;"> }</span><span style="color:#1E754F;--shiki-dark:#4D9375;"> from</span><span style="color:#B5695977;--shiki-dark:#C98A7D77;"> &#39;</span><span style="color:#B56959;--shiki-dark:#C98A7D;">#app/composables/router</span><span style="color:#B5695977;--shiki-dark:#C98A7D77;">&#39;</span></span>
3
+ <span class="line"><span style="color:#1E754F;--shiki-dark:#4D9375;">import</span><span style="color:#999999;--shiki-dark:#666666;"> {</span><span style="color:#B07D48;--shiki-dark:#BD976A;"> useNuxtApp</span><span style="color:#999999;--shiki-dark:#666666;"> }</span><span style="color:#1E754F;--shiki-dark:#4D9375;"> from</span><span style="color:#B5695977;--shiki-dark:#C98A7D77;"> &#39;</span><span style="color:#B56959;--shiki-dark:#C98A7D;">#imports</span><span style="color:#B5695977;--shiki-dark:#C98A7D77;">&#39;</span></span>
4
+ <span class="line"><span style="color:#1E754F;--shiki-dark:#4D9375;">import</span><span style="color:#999999;--shiki-dark:#666666;"> {</span><span style="color:#B07D48;--shiki-dark:#BD976A;"> useMouse</span><span style="color:#999999;--shiki-dark:#666666;"> }</span><span style="color:#1E754F;--shiki-dark:#4D9375;"> from</span><span style="color:#B5695977;--shiki-dark:#C98A7D77;"> &#39;</span><span style="color:#B56959;--shiki-dark:#C98A7D;">@vueuse/core</span><span style="color:#B5695977;--shiki-dark:#C98A7D77;">&#39;</span></span>
5
+ <span class="line"></span>
6
+ <span class="line"><span style="color:#AB5959;--shiki-dark:#CB7676;">const</span><span style="color:#B07D48;--shiki-dark:#BD976A;"> route</span><span style="color:#999999;--shiki-dark:#666666;"> =</span><span style="color:#59873A;--shiki-dark:#80A665;"> useRoute</span><span style="color:#999999;--shiki-dark:#666666;">()</span><span style="color:#A0ADA0;--shiki-dark:#758575DD;"> // tracked</span></span>
7
+ <span class="line"><span style="color:#AB5959;--shiki-dark:#CB7676;">const</span><span style="color:#B07D48;--shiki-dark:#BD976A;"> app</span><span style="color:#999999;--shiki-dark:#666666;"> =</span><span style="color:#59873A;--shiki-dark:#80A665;"> useNuxtApp</span><span style="color:#999999;--shiki-dark:#666666;">()</span><span style="color:#A0ADA0;--shiki-dark:#758575DD;"> // tracked</span></span>
8
+ <span class="line"></span>
9
+ <span class="line"><span style="color:#A0ADA0;--shiki-dark:#758575DD;">// NOT tracked because it&#39;s directly imported</span></span>
10
+ <span class="line"><span style="color:#AB5959;--shiki-dark:#CB7676;">const</span><span style="color:#B07D48;--shiki-dark:#BD976A;"> mouse</span><span style="color:#999999;--shiki-dark:#666666;"> =</span><span style="color:#59873A;--shiki-dark:#80A665;"> useMouse</span><span style="color:#999999;--shiki-dark:#666666;">()</span></span>
11
+ <span class="line"><span style="color:#999999;--shiki-dark:#666666;">&lt;/</span><span style="color:#1E754F;--shiki-dark:#4D9375;">script</span><span style="color:#999999;--shiki-dark:#666666;">&gt;</span></span>
12
+ <span class="line"></span></code></pre><p>By default, it tracks Nuxt provided composables as well as user defined functions. You can include/exclude functions by using the <code>include</code> and <code>exclude</code> options in the <code>nuxt.config.js</code> file.</p><pre class="shiki shiki-themes vitesse-light vitesse-dark" style="background-color:#ffffff;--shiki-dark-bg:#121212;color:#393a34;--shiki-dark:#dbd7caee;" tabindex="0"><code><span class="line"><span style="color:#1E754F;--shiki-dark:#4D9375;">export</span><span style="color:#1E754F;--shiki-dark:#4D9375;"> default</span><span style="color:#59873A;--shiki-dark:#80A665;"> defineNuxtConfig</span><span style="color:#999999;--shiki-dark:#666666;">({</span></span>
13
+ <span class="line"><span style="color:#998418;--shiki-dark:#B8A965;"> devtools</span><span style="color:#999999;--shiki-dark:#666666;">:</span><span style="color:#999999;--shiki-dark:#666666;"> {</span></span>
14
+ <span class="line"><span style="color:#998418;--shiki-dark:#B8A965;"> timeline</span><span style="color:#999999;--shiki-dark:#666666;">:</span><span style="color:#999999;--shiki-dark:#666666;"> {</span></span>
15
+ <span class="line"><span style="color:#998418;--shiki-dark:#B8A965;"> functions</span><span style="color:#999999;--shiki-dark:#666666;">:</span><span style="color:#999999;--shiki-dark:#666666;"> {</span></span>
16
+ <span class="line"><span style="color:#998418;--shiki-dark:#B8A965;"> include</span><span style="color:#999999;--shiki-dark:#666666;">:</span><span style="color:#999999;--shiki-dark:#666666;"> [</span></span>
17
+ <span class="line"><span style="color:#A0ADA0;--shiki-dark:#758575DD;"> // track \`useMouse\`</span></span>
18
+ <span class="line"><span style="color:#B5695977;--shiki-dark:#C98A7D77;"> &#39;</span><span style="color:#B56959;--shiki-dark:#C98A7D;">useMouse</span><span style="color:#B5695977;--shiki-dark:#C98A7D77;">&#39;</span><span style="color:#999999;--shiki-dark:#666666;">,</span></span>
19
+ <span class="line"><span style="color:#A0ADA0;--shiki-dark:#758575DD;"> // track all functions starting with \`use\`</span></span>
20
+ <span class="line"><span style="color:#B5695977;--shiki-dark:#C98A7D77;"> /</span><span style="color:#1E754F;--shiki-dark:#4D9375;">^</span><span style="color:#AB5E3F;--shiki-dark:#C4704F;">use</span><span style="color:#999999;--shiki-dark:#666666;">[</span><span style="color:#A65E2B;--shiki-dark:#C99076;">A-Z</span><span style="color:#999999;--shiki-dark:#666666;">]</span><span style="color:#B5695977;--shiki-dark:#C98A7D77;">/</span><span style="color:#999999;--shiki-dark:#666666;">,</span></span>
21
+ <span class="line"><span style="color:#A0ADA0;--shiki-dark:#758575DD;"> // track all functions from @vueuse/core</span></span>
22
+ <span class="line"><span style="color:#B07D48;--shiki-dark:#BD976A;"> entry</span><span style="color:#999999;--shiki-dark:#666666;"> =&gt;</span><span style="color:#B07D48;--shiki-dark:#BD976A;"> entry</span><span style="color:#999999;--shiki-dark:#666666;">.</span><span style="color:#B07D48;--shiki-dark:#BD976A;">from</span><span style="color:#AB5959;--shiki-dark:#CB7676;"> ===</span><span style="color:#B5695977;--shiki-dark:#C98A7D77;"> &#39;</span><span style="color:#B56959;--shiki-dark:#C98A7D;">@vueuse/core</span><span style="color:#B5695977;--shiki-dark:#C98A7D77;">&#39;</span><span style="color:#999999;--shiki-dark:#666666;">,</span></span>
23
+ <span class="line"><span style="color:#999999;--shiki-dark:#666666;"> ],</span></span>
24
+ <span class="line"><span style="color:#998418;--shiki-dark:#B8A965;"> exclude</span><span style="color:#999999;--shiki-dark:#666666;">:</span><span style="color:#999999;--shiki-dark:#666666;"> [</span></span>
25
+ <span class="line"><span style="color:#B5695977;--shiki-dark:#C98A7D77;"> &#39;</span><span style="color:#B56959;--shiki-dark:#C98A7D;">useRouter</span><span style="color:#B5695977;--shiki-dark:#C98A7D77;">&#39;</span></span>
26
+ <span class="line"><span style="color:#999999;--shiki-dark:#666666;"> ]</span></span>
27
+ <span class="line"><span style="color:#999999;--shiki-dark:#666666;"> }</span></span>
28
+ <span class="line"><span style="color:#999999;--shiki-dark:#666666;"> }</span></span>
29
+ <span class="line"><span style="color:#999999;--shiki-dark:#666666;"> }</span></span>
30
+ <span class="line"><span style="color:#999999;--shiki-dark:#666666;">})</span></span>
31
+ <span class="line"></span></code></pre>`,6)])))}},vs={flex:"~ col gap-2","w-150":"",p4:"",border:"t base"},hs={op50:""},_s={flex:"~ gap-3",mt2:"","justify-end":""},Vs=B({__name:"timeline",setup(y){const d=Z(),p=ee(),n=se(),e=ne();async function l(){try{const[a,r]=await G.enableTimeline(!0);if(!await n.start(a,r))return;await G.enableTimeline(!1)}catch{te({message:"Failed to enable timeline automatically. Check the terminal for more details.",icon:"i-carbon-warning",classes:"text-red"})}}return(a,r)=>{const s=ks,c=ke,k=oe,D=ye,A=fe,S=O,_=ae,I=fs,$=ve;return t(),i(f,null,[g(d)?.timeline?.enabled?(t(),v(s,{key:0})):(t(),i(f,{key:1},[u(k,null,{default:h(()=>[u(c,{icon:"i-carbon-roadmap",name:"feature-timeline",title:"Timeline",description:"Timeline enables the inspection of when composable being executed and the route changes.",actions:[{label:"Enable"}],onAction:l})]),_:1}),u(g(n),null,{default:h(({resolve:M,args:b})=>[u(_,{"model-value":!0,onClose:N=>M(!1)},{default:h(()=>[o("div",vs,[r[5]||(r[5]=o("h2",{"text-xl":""},[o("span",{capitalize:""},"Enable Timeline?")],-1)),o("p",hs,[r[1]||(r[1]=F(" Your ")),u(D,{role:"button",n:"primary",underline:"",onClick:r[0]||(r[0]=N=>g(e)(g(p)?._nuxtConfigFile)),textContent:"Nuxt config"}),r[2]||(r[2]=F(" will be updated as: "))]),u(A,{from:b[0],to:b[1],"max-h-80":"","of-auto":"",py2:"",border:"~ base rounded",lang:"ts"},null,8,["from","to"]),r[6]||(r[6]=o("p",null,[o("span",{op50:""},"Then Nuxt will "),o("span",{"text-orange":""},"restart automatically"),F(". ")],-1)),o("div",_s,[u(S,{onClick:N=>M(!1)},{default:h(()=>r[3]||(r[3]=[F(" Cancel ")])),_:2},1032,["onClick"]),u(S,{n:"solid primary",capitalize:"",onClick:N=>M(!0)},{default:h(()=>r[4]||(r[4]=[F(" Enable ")])),_:2},1032,["onClick"])])])]),_:2},1032,["onClose"])]),_:1})],64)),u($,null,{default:h(()=>[u(I)]),_:1})],64)}}});export{Vs as default};
@@ -0,0 +1 @@
1
+ .timeline-scroller[data-v-18afc15e]::-webkit-scrollbar{height:100px;width:.1px}.timeline-scroller[data-v-18afc15e]::-webkit-scrollbar-track{background-color:transparent}.timeline-scroller[data-v-18afc15e]::-webkit-scrollbar-thumb{background-color:#8881;height:100px}.timeline-scroller[data-v-18afc15e]:hover::-webkit-scrollbar-thumb{background-color:#8882}
@@ -0,0 +1 @@
1
+ import{g as e,k as s}from"./vendor/unocss-3uirpnla.js";e({defaults:{presets:[s({prefix:["i-",""],collections:{},cdn:"https://esm.sh/",scale:1.2,extraProperties:{display:"inline-block","vertical-align":"middle"}})]},bypassDefined:!0});