UNPKG

@nuxt/devtools

Version:

<a href="https://devtools.nuxt.com"><img width="1200" alt="Nuxt DevTools" src="https://github-production-user-asset-6210df.s3.amazonaws.com/904724/261577617-a10567bd-ad33-48cc-9bda-9e37dbe1929f.png"></a> <br>

10 lines (9 loc) 22.7 kB
import{d as he,r as P,c7 as $e,o as i,m as k,k as d,D as B,h as R,f as e,c8 as ie,t as U,p as O,v as Q,a7 as Qe,a8 as Ye,F as L,n as G,a4 as Ee,bS as ye,w as De,bR as je,c9 as Xe,ca as Ze,cb as et,aA as tt,cc as ot,am as nt,a9 as st,ak as rt,ay as ve,a as j,aa as at,ai as Ve,aB as lt,aY as it,cd as ut,e as dt,a0 as Ie,j as S,l as Z,i as v,G as ee,aw as ct,S as pt,_ as Ue,V as ft,y as Oe,al as mt,ce as vt,af as yt,R as ht,cf as gt,ar as bt}from"./Bysyzw-g.js";import{_ as _t}from"./Ci0JrwP0.js";import{_ as Ne}from"./CpQX28Pm.js";import{_ as kt}from"./DFUDf3T0.js";import{_ as Le}from"./CFByhje9.js";import{_ as wt}from"./omNoIW9g.js";import{_ as Ct}from"./CGCqTpKA.js";import{_ as xt}from"./CdlRa3-_.js";import{C as xe,S as Pe}from"./BcJws1i5.js";import{s as St}from"./B4nba3hY.js";import{_ as Tt}from"./C6_B1_1h.js";import{_ as Rt}from"./dPiMYs67.js";import"./ZTJOnUjs.js";import"./DK4YETzW.js";import"./3LqotSTl.js";import"./CXTghDHT.js";function $t(t,a){if(typeof t!="string")throw new TypeError("argument str must be a string");const s={},n=a||{},g=n.decode||Et;let m=0;for(;m<t.length;){const c=t.indexOf("=",m);if(c===-1)break;let y=t.indexOf(";",m);if(y===-1)y=t.length;else if(y<c){m=t.lastIndexOf(";",c-1)+1;continue}const b=t.slice(m,c).trim();if(n?.filter&&!n?.filter(b)){m=y+1;continue}if(s[b]===void 0){let u=t.slice(c+1,y).trim();u.codePointAt(0)===34&&(u=u.slice(1,-1)),s[b]=Dt(u,g)}m=y+1}return s}function Et(t){return t.includes("%")?decodeURIComponent(t):t}function Dt(t,a){try{return a(t)}catch{return t}}const ae=/^[\u0009\u0020-\u007E\u0080-\u00FF]+$/;function Se(t,a,s){const n=s||{},g=n.encode||encodeURIComponent;if(typeof g!="function")throw new TypeError("option encode is invalid");if(!ae.test(t))throw new TypeError("argument name is invalid");const m=g(a);if(m&&!ae.test(m))throw new TypeError("argument val is invalid");let c=t+"="+m;if(n.maxAge!==void 0&&n.maxAge!==null){const y=n.maxAge-0;if(Number.isNaN(y)||!Number.isFinite(y))throw new TypeError("option maxAge is invalid");c+="; Max-Age="+Math.floor(y)}if(n.domain){if(!ae.test(n.domain))throw new TypeError("option domain is invalid");c+="; Domain="+n.domain}if(n.path){if(!ae.test(n.path))throw new TypeError("option path is invalid");c+="; Path="+n.path}if(n.expires){if(!jt(n.expires)||Number.isNaN(n.expires.valueOf()))throw new TypeError("option expires is invalid");c+="; Expires="+n.expires.toUTCString()}if(n.httpOnly&&(c+="; HttpOnly"),n.secure&&(c+="; Secure"),n.priority)switch(typeof n.priority=="string"?n.priority.toLowerCase():n.priority){case"low":{c+="; Priority=Low";break}case"medium":{c+="; Priority=Medium";break}case"high":{c+="; Priority=High";break}default:throw new TypeError("option priority is invalid")}if(n.sameSite)switch(typeof n.sameSite=="string"?n.sameSite.toLowerCase():n.sameSite){case!0:{c+="; SameSite=Strict";break}case"lax":{c+="; SameSite=Lax";break}case"strict":{c+="; SameSite=Strict";break}case"none":{c+="; SameSite=None";break}default:throw new TypeError("option sameSite is invalid")}return n.partitioned&&(c+="; Partitioned"),c}function jt(t){return Object.prototype.toString.call(t)==="[object Date]"||t instanceof Date}const qe=he({__name:"ServerRouteListItem",props:{item:{},index:{default:0}},setup(t){const a=P(!0),s=$e();return(n,g)=>{const m=Ee,c=Ne,y=qe;return i(),k("div",null,[d("button",{flex:"~ gap-2","w-full":"","items-start":"","items-center":"","hover-bg-active":"",px2:"",py1:"",class:B([{"bg-active":e(s)===n.item.filepath}]),style:Qe({paddingLeft:`calc(0.5rem + ${n.index*1.5}em)`}),onClick:g[0]||(g[0]=b=>{a.value=!e(a),s.value=n.item.filepath})},[d("div",{class:B({"w-12":!n.item.routes}),"flex-none":"","text-left":""},[n.item.type==="collection"?(i(),R(m,{key:0,icon:"carbon:chevron-right","mb0.5":"","transform-rotate":e(a)?90:0,transition:""},null,8,["transform-rotate"])):(i(),R(c,{key:1,class:B(("getRequestMethodClass"in n?n.getRequestMethodClass:e(ie))(n.item.method||"*")),textContent:U((n.item.method||"*").toUpperCase())},null,8,["class","textContent"]))],2),d("span",{class:B({"flex items-center":n.item.routes}),"text-sm":"","font-mono":""},[n.item.type==="collection"?(i(),R(m,{key:0,title:`${n.item.routes?.length} routes`,icon:"carbon:folder",mr1:""},null,8,["title"])):O("",!0),Q(" "+U(n.item.route),1)],2)],6),g[1]||(g[1]=d("div",{"x-divider":""},null,-1)),e(a)?Ye(n.$slots,"default",{key:0},()=>[(i(!0),k(L,null,G(n.item.routes,b=>(i(),R(y,{key:b.filepath,item:b,index:n.index+1},null,8,["item","index"]))),128))]):O("",!0)])}}});function A(t){if(typeof t!="object")return t;var a,s,n=Object.prototype.toString.call(t);if(n==="[object Object]"){if(t.constructor!==Object&&typeof t.constructor=="function"){s=new t.constructor;for(a in t)t.hasOwnProperty(a)&&s[a]!==t[a]&&(s[a]=A(t[a]))}else{s={};for(a in t)a==="__proto__"?Object.defineProperty(s,a,{value:A(t[a]),configurable:!0,enumerable:!0,writable:!0}):s[a]=A(t[a])}return s}if(n==="[object Array]"){for(a=t.length,s=Array(a);a--;)s[a]=A(t[a]);return s}return n==="[object Set]"?(s=new Set,t.forEach(function(g){s.add(A(g))}),s):n==="[object Map]"?(s=new Map,t.forEach(function(g,m){s.set(A(m),A(g))}),s):n==="[object Date]"?new Date(+t):n==="[object RegExp]"?(s=new RegExp(t.source,t.flags),s.lastIndex=t.lastIndex,s):n==="[object DataView]"?new t.constructor(A(t.buffer)):n==="[object ArrayBuffer]"?t.slice(0):n.slice(-6)==="Array]"?new t.constructor(t):t}const Vt={path:"/",watch:!0,decode:t=>Ze(decodeURIComponent(t)),encode:t=>encodeURIComponent(typeof t=="string"?t:JSON.stringify(t))},le=window.cookieStore;function It(t,a){const s={...Vt,...a};s.filter??=b=>b===t;const n=Te(s)||{};let g;s.maxAge!==void 0?g=s.maxAge*1e3:s.expires&&(g=s.expires.getTime()-Date.now());const m=g!==void 0&&g<=0,c=A(m?void 0:n[t]??s.default?.()),y=g&&!m?Nt(c,g,s.watch&&s.watch!=="shallow"):P(c);{let b=null;try{!le&&typeof BroadcastChannel<"u"&&(b=new BroadcastChannel(`nuxt:cookies:${t}`))}catch{}const u=()=>{s.readonly||et(y.value,n[t])||(Ot(t,y.value,s),n[t]=A(y.value),b?.postMessage({value:s.encode(y.value)}))},$=q=>{const C=q.refresh?Te(s)?.[t]:s.decode(q.value);I=!0,y.value=C,n[t]=A(C),tt(()=>{I=!1})};let I=!1;const F=!!je();if(F&&ye(()=>{I=!0,u(),b?.close()}),le){const q=C=>{const _=C.changed.find(h=>h.name===t),N=C.deleted.find(h=>h.name===t);_&&$({value:_.value}),N&&$({value:null})};le.addEventListener("change",q),F&&ye(()=>le.removeEventListener("change",q))}else b&&(b.onmessage=({data:q})=>$(q));s.watch?De(y,()=>{I||u()},{deep:s.watch!=="shallow"}):u()}return y}function Te(t={}){return $t(document.cookie,t)}function Ut(t,a,s={}){return a==null?Se(t,a,{...s,maxAge:-1}):Se(t,a,s)}function Ot(t,a,s={}){document.cookie=Ut(t,a,s)}const Re=2147483647;function Nt(t,a,s){let n,g,m=0;const c=s?P(t):{value:t};return je()&&ye(()=>{g?.(),clearTimeout(n)}),Xe((y,b)=>{s&&(g=De(c,b));function u(){m=0,clearTimeout(n);const $=a-m,I=$<Re?$:Re;n=setTimeout(()=>{if(m+=I,m<a)return u();c.value=void 0,b()},I)}return{get(){return y(),c.value},set($){u(),c.value=$,b()}}})}const Lt={"h-full":"","w-full":"",flex:"~ col"},Pt={flex:"~ col gap-2","flex-none":"",p4:"","n-navbar-glass":""},qt={flex:"~ gap2 items-center"},At={relative:"","w-full":""},Mt={absolute:"","right-2":"","top-1.5":"",flex:"~ gap-1"},Bt={flex:"~ gap2 wrap","w-full":"","items-center":"",px4:"",pb2:"","text-center":"","text-sm":"",border:"b base"},Ft={class:"hidden md:block"},Ht={key:0,border:"b base","items-center":"",px4:"",py2:"",grid:"~ cols-[max-content_1fr] gap-2"},zt={"text-right":"","font-mono":""},Gt={key:1,border:"b base",p4:"",flex:"~ col gap-4","font-mono":""},Jt={flex:"~ gap-4"},Wt={flex:"~ gap2","mb--2":"","items-center":"",op50:""},Kt={key:2},Qt={key:3,border:"b base",relative:"","n-code-block":""},Yt={flex:"~ wrap","w-full":""},Xt=["onClick"],Zt={border:"b base",flex:"~ gap2","items-center":"",px4:"",py2:""},eo={key:1,"text-xs":"",op50:""},to={key:0,"flex-auto":"","overflow-auto":""},oo={border:"~ base","h-full":"","w-full":"",rounded:""},no=["data"],so={key:2,"flex-auto":"","overflow-auto":"",p4:""},ro={border:"~ base",rounded:""},ao=["src"],lo={key:1,controls:"",rounded:""},io=["src"],uo=he({__name:"ServerRouteDetails",props:{route:{}},emits:["open-default-input"],setup(t,{emit:a}){const s=t,n=a,[g,m]=ot(),c=nt(),y=st(),b=rt(),u=ve({contentType:"text/plain",data:"",statusCode:200,error:void 0,fetchTime:0}),$=j(()=>u.contentType.includes("application/json")?"json":u.contentType.includes("text/html")?"html":u.contentType.includes("text/css")?"css":u.contentType.includes("text/javascript")?"javascript":u.contentType.includes("image")||u.contentType.includes("video")?"media":u.contentType.includes("text/xml")||u.contentType.includes("application/xml")?"xml":u.contentType.includes("application/pdf")?"pdf":"text"),I=j(()=>{if($.value==="json")return JSON.stringify(u.data,null,2);if($.value==="media"||$.value==="pdf"){const r=new Blob([u.data],{type:u.contentType});return URL.createObjectURL(r)}return u.data}),F=P(!1),q=P(!1),C=at(),_=j(()=>s.route.route?.split(/((?:\*\*)?:\w+)/g)),N=j(()=>_.value?.filter(r=>r.startsWith(":")||r.startsWith("**:"))||[]),h=P(s.route.method||"GET"),E=P({}),w=ve({query:[{active:!0,key:"",value:"",type:"string"}],body:[{active:!0,key:"",value:"",type:"string"}],headers:[{active:!0,key:"Content-Type",value:"application/json",type:"string"}]}),V=P({}),{inputDefaults:x,sendFrom:H}=Ve("serverRoutes"),J=j(()=>b?.value?.app?.$fetch?H.value:"devtools"),ue=["GET","POST","PUT","PATCH","DELETE","HEAD"],de=["PATCH","POST","PUT","DELETE"],te=j(()=>de.includes(h.value.toUpperCase())),p=P(),oe=["input","json"],W=P(oe[0]),ne=j({get:()=>w[p.value],set:r=>{w[p.value]=r}}),ge=j(()=>({...K(x.value.query),...K(w.query)})),be=j(()=>({...K(x.value.headers),...K(w.headers)})),ce=j(()=>te.value?W.value==="json"?{...K(x.value.body),...V.value}:{...K(x.value.body),...K(w.body)}:void 0),Ae=j(()=>{let r=window?.location.origin;return r.charAt(r.length-1)==="/"&&(r=r.slice(0,-1)),r}),se=j(()=>{let r=new URLSearchParams(ge.value).toString();r&&(r=`?${r}`);const o=(_.value?.map(D=>(D.startsWith(":")||D.startsWith("**:"))&&E.value[D]||D).join("")||"")+r;let f=y.value?.app.baseURL||"";return(f==="./"||f===".")&&(f=""),f.endsWith("/")&&(f=f.slice(0,-1)),f+o}),_e=j(()=>Ae.value+se.value);function K(r){const o=Object.fromEntries(r.filter(({active:f,key:D,value:T})=>f&&D&&T!==void 0).map(({key:f,value:D})=>[f,D]));return Object.entries(o).length?o:void 0}async function ke(){q.value=!0,F.value=!0;const r=Date.now(),o=J.value==="app"?b.value.app.$fetch:$fetch;pt("server-routes:fetch",{method:h.value,sendFrom:J.value});try{u.data=await o(_e.value,{method:h.value.toUpperCase(),headers:be.value,query:ge.value,body:ce.value,onResponse({response:f}){u.contentType=(f.headers.get("content-type")||"").toString().toLowerCase().trim(),u.statusCode=f.status,u.error=void 0},onResponseError(f){u.error=f.response._data,u.data=f.response._data}})}catch{}F.value=!1,u.fetchTime=Date.now()-r}const we=j(()=>{const r=[],o=[],f=Object.entries(be.value).filter(([T,M])=>T&&M&&!(T==="Content-Type"&&M==="application/json")).map(([T,M])=>` '${T}': '${M}'`).join(`, `);h.value.toUpperCase()!=="GET"&&o.push(`method: '${h.value.toUpperCase()}'`),f&&o.push(`headers: { ${f} }`),ce.value&&o.push(`body: ${JSON.stringify(ce.value,null,2)}`);const D=o.length?`, { ${o.join(`, `).split(` `).map(T=>` ${T}`).join(` `)} }`:"";return r.push({name:"useFetch",lang:"javascript",docs:xe.nuxt.useFetch,code:`const { data, pending, error, refresh } = useFetch('${se.value}'${D})`}),r.push({name:"$fetch",lang:"javascript",docs:xe.nuxt.$fetch,code:`await $fetch('${se.value}'${D})`}),r}),Y=P(Be()),z=ve({key:"",value:""}),Me=j(()=>{const r=[];return N.value.length&&r.push({name:"Params",slug:"params",length:N.value.length}),r.push({name:"Query",slug:"query",length:w.query.length}),te.value&&r.push({name:"Body",slug:"body",length:w.body.length}),r.push({name:"Headers",slug:"headers",length:w.headers.length}),r.push({name:"Cookies",slug:"cookies",length:Y.value.length}),r.push({name:"Snippets",slug:"snippet"}),r});function Be(){return document.cookie.split("; ").map(r=>{const[o,f]=r.split("=");return{key:o,value:f}}).filter(r=>r.key)}function pe(r,o){if(!r)return;const f=Y.value.find(T=>T.key===r),D=It(r);f!==void 0?o===void 0&&(Y.value=Y.value.filter(T=>T.key!==r)):(Y.value.push({key:r,value:o}),z.key="",z.value=""),D.value=o}lt(()=>{W.value==="json"&&typeof V.value=="string"&&(V.value=JSON.parse(V.value))});const fe=it("nuxt-devtools:server-routes:inputs",()=>[],{window:window.parent});ut([w,p],()=>{const r=fe.value?.find(o=>o.path===s.route.filepath);if(r){p.value||(p.value=r.tab),r.tab!==p.value&&(r.tab=p.value);const{body:o,query:f,headers:D,params:T}=r.inputs;Object.assign(w,{body:o,query:f,headers:D}),E.value=T}else{const o={path:s.route.filepath,tab:N.value.length?"params":"query",inputs:{...w,...N.value.length?{params:E.value}:{}}};fe.value.push(o),p.value||(p.value=o.tab)}},{immediate:!0,deep:!0,debounce:500});function Fe(){fe.value=[],w.body=[],w.query=[],w.headers=[],E.value={},p.value=N.value.length?"params":"query"}const He=dt();return(r,o)=>{const f=Ue,D=kt,T=ft,M=Ee,Ce=Le,ze=wt,Ge=Oe,Je=mt,me=Ne,We=Ct,Ke=xt,re=Ie("tooltip");return i(),k("div",Lt,[d("div",Pt,[d("div",qt,[r.route.method?(i(),R(f,{key:0,class:B(["n-badge-base n-sm",("getRequestMethodClass"in r?r.getRequestMethodClass:e(ie))(e(h))]),"pointer-events-none":"","font-mono":"",tabindex:"-1"},{default:S(()=>[Q(U(e(h).toUpperCase()),1)]),_:1},8,["class"])):(i(),R(D,{key:1,modelValue:e(h),"onUpdate:modelValue":o[0]||(o[0]=l=>Z(h)?h.value=l:null),class:B(["n-badge-base n-sm",("getRequestMethodClass"in r?r.getRequestMethodClass:e(ie))(e(h))])},{default:S(()=>[(i(),k(L,null,G(ue,l=>d("option",{key:l,class:B(("getRequestMethodClass"in r?r.getRequestMethodClass:e(ie))(l))},U(l.toUpperCase()),3)),64))]),_:1},8,["modelValue","class"])),d("div",At,[v(T,{"model-value":e(se),readonly:"","flex-auto":"","font-mono":"",p:"x5 y2",n:"sm"},null,8,["model-value"]),d("div",Mt,[ee(v(f,{title:"Copy URL",n:"xs blue",icon:"carbon:copy",border:!1,onClick:o[1]||(o[1]=l=>e(He)(e(_e),"server-route-url"))},null,512),[[re,"Copy URL"]]),ee(v(f,{title:"Open in Editor",icon:"carbon-launch",n:"xs blue",border:!1,onClick:o[2]||(o[2]=l=>e(C)(r.route.filepath))},null,512),[[re,"Open in Editor"]])])]),v(f,{"h-full":"",n:"primary solid",onClick:ke},{default:S(()=>[v(M,{icon:"carbon:send"})]),_:1})])]),d("div",Bt,[(i(!0),k(L,null,G(e(Me),l=>ee((i(),R(f,{key:l.slug,class:B(e(p)===l.slug?"text-primary n-primary":"border-transparent shadow-none"),onClick:X=>p.value=l.slug},{default:S(()=>[v(M,{icon:("ServerRouteTabIcons"in r?r.ServerRouteTabIcons:e(Pe))[l.slug]},null,8,["icon"]),d("div",Ft,[Q(U(l.name)+" "+U(l?.length?`(${l.length})`:"")+" ",1),d("span",null,U(e(x)[l.slug]?.length?`(${e(x)[l.slug].length})`:""),1)])]),_:2},1032,["class","onClick"])),[[re,l.name]])),128)),o[12]||(o[12]=d("div",{"flex-auto":""},null,-1)),o[13]||(o[13]=d("div",{"text-xs":"",op50:""}," Send from ",-1)),v(D,{modelValue:e(J),"onUpdate:modelValue":o[3]||(o[3]=l=>Z(J)?J.value=l:null),class:"n-xs",disabled:!e(b)?.app?.$fetch},{default:S(()=>o[11]||(o[11]=[d("option",{value:"app"}," App ",-1),d("option",{value:"devtools"}," DevTools ",-1)])),_:1},8,["modelValue","disabled"]),ee(v(f,{n:"orange",class:"p-3",icon:"i-carbon-clean",onClick:Fe},null,512),[[re,"Clear Inputs Saved Cache"]])]),e(p)==="params"?(i(),k("div",Ht,[(i(!0),k(L,null,G(e(N),l=>(i(),k(L,{key:l},[d("div",zt,U(l),1),v(T,{modelValue:e(E)[l],"onUpdate:modelValue":X=>e(E)[l]=X,placeholder:l,"flex-1":""},null,8,["modelValue","onUpdate:modelValue","placeholder"])],64))),128))])):O("",!0),e(p)==="cookies"?(i(),k("div",Gt,[(i(!0),k(L,null,G(e(Y),l=>(i(),k("div",{key:l.key,flex:"~ gap-4 items-center"},[v(T,{placeholder:"Key...","model-value":l.key,disabled:"","op-70":""},null,8,["model-value"]),v(T,{placeholder:"Value...","model-value":l.value,"flex-1":"",n:"primary",onInput:X=>pe(l.key,X.target?.value)},null,8,["model-value","onInput"]),v(f,{title:"Delete",n:"red",onClick:X=>pe(l.key,void 0)},{default:S(()=>[v(M,{icon:"i-carbon-trash-can"})]),_:2},1032,["onClick"])]))),128)),d("div",Jt,[v(T,{modelValue:e(z).key,"onUpdate:modelValue":o[4]||(o[4]=l=>e(z).key=l),placeholder:"Key",n:"primary","flex-1":""},null,8,["modelValue"]),v(T,{modelValue:e(z).value,"onUpdate:modelValue":o[5]||(o[5]=l=>e(z).value=l),placeholder:"Value",n:"primary","flex-1":""},null,8,["modelValue"]),v(f,{title:"Add",n:"primary",onClick:o[6]||(o[6]=l=>pe(e(z).key,e(z).value))},{default:S(()=>[v(M,{icon:"i-carbon-save"})]),_:1})])])):O("",!0),v(e(g),null,{default:S(()=>[v(Ce,{modelValue:e(ne),"onUpdate:modelValue":o[9]||(o[9]=l=>Z(ne)?ne.value=l:null),default:{active:!0,type:"string"},"max-h-xs":"","of-auto":""},{default:S(()=>[e(x)[e(p)]?.length?(i(),k(L,{key:0},[d("div",Wt,[o[14]||(o[14]=d("div",{"w-5":"","x-divider":""},null,-1)),o[15]||(o[15]=d("div",{"flex-none":""}," Default Inputs ",-1)),v(f,{icon:"i-carbon-edit",border:!1,onClick:o[7]||(o[7]=l=>n("open-default-input"))}),o[16]||(o[16]=d("div",{"x-divider":""},null,-1))]),v(Ce,{modelValue:e(x)[e(p)],"onUpdate:modelValue":o[8]||(o[8]=l=>e(x)[e(p)]=l),disabled:"",p0:""},null,8,["modelValue"])],64)):O("",!0)]),_:1},8,["modelValue"])]),_:1}),e(p)==="snippet"?(i(),k("div",Kt,[e(we).length?(i(),R(ze,{key:0,"code-snippets":e(we)},null,8,["code-snippets"])):O("",!0)])):e(ne)?(i(),k("div",Qt,[e(p)==="body"?(i(),k(L,{key:0},[d("div",Yt,[(i(),k(L,null,G(oe,l=>d("button",{key:l,px4:"",py2:"",border:"r base",hover:"bg-active",class:B({"border-b":l!==e(W)}),onClick:X=>W.value=l},[d("div",{class:B({op30:l!==e(W)}),"font-mono":""},U(l),3)],10,Xt)),64)),o[17]||(o[17]=d("div",{border:"b base","flex-auto":""},null,-1))]),e(W)==="input"?(i(),R(e(m),{key:0})):e(W)==="json"?(i(),R(e(St),ct({key:1,modelValue:e(V),"onUpdate:modelValue":o[10]||(o[10]=l=>Z(V)?V.value=l:null),class:[e(c)==="dark"?"jse-theme-dark":"light","json-editor-vue of-auto text-sm outline-none"]},r.$attrs,{mode:"text","navigation-bar":!1,indentation:2,"tab-size":2}),null,16,["modelValue","class"])):O("",!0)],64)):(i(),R(e(m),{key:1}))])):O("",!0),e(q)?e(F)?(i(),R(Je,{key:5,"z-10":"","flex-auto":"","backdrop-blur":""},{default:S(()=>o[19]||(o[19]=[Q(" Fetching... ")])),_:1})):(i(),k(L,{key:6},[d("div",Zt,[o[21]||(o[21]=d("div",null,"Response",-1)),e(u).error?(i(),R(me,{key:0,n:"red"},{default:S(()=>o[20]||(o[20]=[Q(" Error ")])),_:1})):O("",!0),v(me,{n:e(u).error?"orange":"green",textContent:U(e(u).statusCode)},null,8,["n","textContent"]),e(u).contentType?(i(),k("code",eo,U(e(u).contentType),1)):O("",!0),e(u).contentType==="application/json"?(i(),R(We,{key:2,getter:()=>({input:e(I)})},null,8,["getter"])):O("",!0),o[22]||(o[22]=d("div",{"flex-auto":""},null,-1)),o[23]||(o[23]=d("div",{op50:""}," Request finished in ",-1)),v(me,{n:"green"},{default:S(()=>[Q(U(e(u).fetchTime)+" ms ",1)]),_:1})]),e($)==="pdf"?(i(),k("div",to,[d("div",oo,[d("object",{data:e(I),type:"application/pdf","flex-auto":"",width:"100%",height:"100%",rounded:""},null,8,no)])])):e($)!=="media"?(i(),R(Ke,{key:1,"flex-auto":"","overflow-auto":"","py-2":"",code:e(I),lang:e($)},null,8,["code","lang"])):(i(),k("div",so,[d("div",ro,[e(u).contentType.includes("image")?(i(),k("img",{key:0,rounded:"",src:e(I)},null,8,ao)):(i(),k("video",lo,[d("source",{src:e(I),type:"video/mp4"},null,8,io)]))])]))],64)):(i(),R(Ge,{key:4},{default:S(()=>[v(f,{n:"primary",onClick:ke},{default:S(()=>[v(M,{icon:"carbon:send"}),o[18]||(o[18]=Q(" Send request "))]),_:1})]),_:1}))])}}}),co={flex:"~ gap1","text-sm":""},po={key:0,op50:""},fo={op50:""},Do=he({__name:"server-routes",setup(t){const a=P(!1),s=vt(),n=$e(),{selectedRoute:g,view:m,inputDefaults:c}=Ve("serverRoutes"),y=j(()=>{!n.value&&g.value&&(n.value=g.value.filepath);const C=s.value?.find(_=>_.filepath===n.value);return n.value!==g.value?.filepath&&C&&(g.value=C),C}),b=P(""),u=j(()=>new yt(s.value||[],{keys:["method","route"],shouldSort:!0})),$=j(()=>s.value?b.value?u.value.search(b.value).map(_=>_.item):s.value:[]),I=j(()=>{const C=[],_=(h,E)=>{h.routes=h.routes||[],h.routes.push(E)},N=(h,E)=>{const w=E?E.routes?.find(x=>x.route===h):C.find(x=>x.route===h);if(w)return w;const V={route:h,filepath:h.replace(/\W/g,"-").toLowerCase(),type:"collection",routes:[]};return E?_(E,V):C.push(V),V};return $.value.forEach(h=>{let E,w;const V=h.filepath.split("/"),x=V.slice(V.indexOf("server")+1);if(h.type==="runtime"){x[0]="runtime";const H=V.indexOf("dist");H!==-1&&(E=V[H-1],E&&x.splice(1,0,E))}x.length>0&&x[x.length-1].includes(".")&&x.pop(),x.forEach(H=>{w=N(H,w)}),w?_(w,h):C.push(h)}),C});function F(){m.value=m.value==="tree"?"list":"tree"}function q(C){return C.charAt(0).toUpperCase()+C.slice(1)}return(C,_)=>{const N=Ue,h=_t,E=qe,w=uo,V=bt,x=Oe,H=ht,J=Le,ue=Tt,de=Rt,te=Ie("tooltip");return i(),k(L,null,[v(H,{"storage-key":"tab-server-routes"},{left:S(()=>[v(h,{search:e(b),"onUpdate:search":_[1]||(_[1]=p=>Z(b)?b.value=p:null),pb2:""},{actions:S(()=>[ee(v(N,{"text-lg":"",icon:e(m)==="list"?"i-carbon-list":"i-carbon-tree-view-alt",title:"Toggle view",border:!1,onClick:F},null,8,["icon"]),[[te,"Toggle View"]]),ee(v(N,{"text-lg":"",icon:"i-carbon-cics-sit-overrides",title:"Default Inputs",border:!1,onClick:_[0]||(_[0]=p=>a.value=!e(a))},null,512),[[te,"Default Inputs"]])]),default:S(()=>[d("div",co,[e(b)?(i(),k("span",po,U(e($).length)+" matched · ",1)):O("",!0),d("span",fo,U(e(s)?.length)+" routes in total",1)])]),_:1},8,["search"]),(i(!0),k(L,null,G(e(m)==="tree"?e(I):e($),p=>(i(),R(E,{key:p.filepath,item:p},null,8,["item"]))),128))]),right:S(()=>[(i(),R(gt,{max:10},[e(y)?(i(),R(w,{key:e(y).filepath,route:e(y),onOpenDefaultInput:_[2]||(_[2]=p=>a.value=!0)},null,8,["route"])):O("",!0)],1024)),e(y)?O("",!0):(i(),R(x,{key:0},{default:S(()=>[v(V,{px6:"",py2:""},{default:S(()=>_[5]||(_[5]=[d("span",{op75:""},"Select a route to start",-1)])),_:1})]),_:1}))]),_:1}),v(de,{modelValue:e(a),"onUpdate:modelValue":_[3]||(_[3]=p=>Z(a)?a.value=p:null),"auto-close":"","max-w-xl":"","min-w-xl":"",onClose:_[4]||(_[4]=p=>a.value=!1)},{default:S(()=>[d("div",null,[_[6]||(_[6]=d("div",{p4:"",border:"b base"},[d("span",{"text-lg":""},"Default Inputs"),d("br"),d("span",{"text-white":"",op50:""},"Merged as default for every request in DevTools")],-1)),(i(!0),k(L,null,G(Object.keys(e(c)),p=>(i(),R(ue,{key:p,text:`${q(p)} ${e(c)[p].length?`(${e(c)[p].length})`:""}`,padding:!1,icon:("ServerRouteTabIcons"in C?C.ServerRouteTabIcons:e(Pe))[p]},{default:S(()=>[v(J,{modelValue:e(c)[p],"onUpdate:modelValue":oe=>e(c)[p]=oe,py0:"",default:{active:!0,type:"string"}},null,8,["modelValue","onUpdate:modelValue"])]),_:2},1032,["text","icon"]))),128))])]),_:1},8,["modelValue"])],64)}}});export{Do as default};