@chillicream/nitro-embedded
Version:
Nitro GraphQL IDE
33 lines (32 loc) • 15.8 kB
JavaScript
import{fi as ke,b as c,lP as Se,f1 as De,lQ as Re,b1 as e,hF as ve,b8 as a,lR as le,B as R,kd as v,k0 as F,j$ as N,b9 as m,lS as we,lT as xe,hG as _e,cs as Ne,ct as ye,k1 as Me,k2 as Ee,lU as de,dt as ee,du as ue,a2 as w,f_ as He,ex as qe,c8 as x,ds as Pe,jW as Oe,jX as Ae,jY as $e,jZ as Be,lV as P,ba as ze,fz as je,bb as Fe,dK as Ge,lW as Ue,eF as We,fM as Ke,lX as Ve,fY as Ye,lY as Je,fB as Qe,bc as Xe,bd as Ze,lZ as et,fG as tt,be as nt,gB as K,gC as k,l_ as O,fo as te,fp as A,dL as g,dM as $,gA as V,l$ as Z,hE as G,k5 as _,hD as he,dI as ne,m0 as st,gD as it,m1 as ot,m2 as rt,fW as ct,m3 as at,g2 as lt,m4 as dt,eu as ut,jM as ht,jL as pt,m5 as ft}from"./main.3bb3e100.DR3PUywM.js";import{u as mt,a as B,b as S,L as It,c as gt,V as Ct,C as b,H as y,d as M,S as pe,T as U,e as E,f as fe,g as I,h as me,i as Ie,A as W,D as T,j as se,k as Lt,l as bt,m as Tt,n as kt,o as St,p as Dt,q as Rt,r as vt,s as wt,t as xt}from"./context-providers.3bb3e100.FKi0_TO-.js";import"./monaco.3bb3e100.1ZTTp31h.js";function z(){const t=mt(),n=ke();return c.useCallback(async(s,i)=>{await n(s),i&&t(s,i,void 0)},[t,n])}const j="log";function _t(){const t=Se(),n=B(j).toLocaleLowerCase(),s=c.useRef(null),i=c.useRef(t),o=c.useRef(t.followNewest),l=c.useRef(!0),h=De(),u=z(),r=Re(),p={activeId:t.activeId,activeChildId:t.activeChildId,entries:t.entries.filter(d=>{const{kind:f}=d;switch(f){case"basic":return d.message.toLocaleLowerCase().includes(n);case"http-request":return d.name?.toLocaleLowerCase().includes(n)||d.uri.toLocaleLowerCase().includes(n);case"scope":return d.name.includes(n)||d.details?.uri?.toLocaleLowerCase().includes(n);case"subscription-request":return d.uri.toLocaleLowerCase().includes(n);default:return S()}})};i.current=t,o.current=t.followNewest;const C=c.useCallback(d=>{l.current=!1,d.kind==="http-request"&&d.scopeId?h(d.scopeId,d.id):h(d.id)},[h]),L=c.useCallback(async d=>{d.item?.id&&await u(d.item.id,d.id)},[u]),J=c.useCallback(d=>{const{scrollTop:f,clientHeight:D,scrollHeight:Te}=d.currentTarget;l.current=!0,o.current=Te-D<=Math.ceil(f),r(o.current)},[r]),Q=c.useCallback(d=>{if(s.current=d,s.current&&i.current.entries.length){const f=i.current.activeId?i.current.entries.findIndex(({id:D})=>D===i.current.activeId):-1;f===-1?s.current.scrollToIndex({index:i.current.entries.length-1,align:"end"}):s.current.scrollToIndex({index:f,align:"end"})}},[]);c.useLayoutEffect(()=>{o.current&&s.current&&p.entries.length&&s.current.scrollToIndex({index:p.entries.length-1,align:"end"})},[p.entries.length]),c.useLayoutEffect(()=>{if(l.current&&!o.current&&t.activeId&&s.current&&i.current){const d=i.current.entries.findIndex(({id:f})=>f===t.activeId);d!==-1&&s.current.scrollToIndex({index:d,align:"end"})}l.current=!0},[t.activeId]),c.useEffect(()=>()=>r(!0),[r]);const be=c.useCallback((d,f)=>{const D=f.kind==="http-request"&&f.scopeId?f.id===p.activeChildId&&f.scopeId===p.activeId:f.id===p.activeId;return e(It,{onClick:()=>C(f),onDoubleClick:()=>L(f),className:D?"active":void 0,children:e(Nt,{active:D,logEntry:f})})},[p.activeId,p.activeChildId,C,L]);return p.entries.length?e(Ct,{innerListRef:Q,data:p.entries,computeItemKey:d=>`log-entry-${d}`,fixedItemSize:gt,tabIndex:-1,onScrollVirtualList:J,itemContent:be}):e(ve,{isFilterActive:!!n})}const Nt=c.memo(function({active:n,logEntry:s}){const{kind:i}=s;switch(i){case"basic":return e(yt,{active:n,logEntry:s});case"http-request":return e(Mt,{active:n,logEntry:s});case"scope":return e(Et,{active:n,logEntry:s});case"subscription-request":return e(Ht,{active:n,logEntry:s});default:return S()}}),yt=c.memo(function({active:n,logEntry:{id:s,level:i,message:o,timestamp:l,item:h}}){return a(m,{children:[e(Y,{id:s,active:n}),e(ge,{level:i}),e(q,{children:e(Ce,{level:i})}),e(M,{children:e(y,{text:o,highlightedText:B(j)})}),e(H,{item:h}),e(E,{children:N(l)})]})});function ge({level:t}){switch(t){case x.warning:return e(I,{children:e(Pe,{})});case x.error:return e(I,{children:e(ee,{})});default:return e(I,{children:e(qe,{})})}}const Ce=c.memo(function({level:n}){switch(n){case x.error:return e(b,{color:"error",label:"ERR"});case x.info:return e(b,{color:"info",label:"INFO"});case x.warning:return e(b,{color:"warning",label:"WARN"});default:return S()}}),Mt=c.memo(function({active:n,logEntry:{id:s,scopeId:i,status:o,name:l,started:h,duration:u,item:r,uri:p,method:C,statusCode:L,contentLength:J,lastChild:Q}}){return a(m,{children:[i?e(Pt,{active:n,last:Q??!1}):e(Y,{id:s,active:n,pending:o==="pending"}),e(Le,{status:o,statusCode:L}),e(q,{children:e(b,{color:"info",label:C})}),e(M,{children:e(y,{text:l?.length?l+": "+p:p,highlightedText:B(j)})}),e(ie,{children:e(fe,{status:o,statusCode:L})}),e(oe,{children:v(J)}),e(U,{children:F(u)}),e(H,{item:r}),e(E,{children:N(h)})]})}),Et=c.memo(function({active:n,logEntry:{id:s,name:i,level:o,started:l,duration:h,item:u,details:r,expanded:p}}){const C=B(j);return a(m,{children:[e(Y,{id:s,active:n,pending:r?.status==="pending",expandable:!0,expanded:p}),r?.kind==="introspection"?a(m,{children:[e(Le,{status:r.status,statusCode:r.statusCode}),e(q,{children:e(b,{color:"info",label:r.method})}),e(M,{children:e(y,{text:i?.length?i+": "+r.uri:r.uri,highlightedText:C})}),e(ie,{children:e(fe,{status:r.status,statusCode:r.statusCode})}),e(oe,{children:v(r.contentLength)}),e(U,{children:F(h)}),e(H,{item:u}),e(E,{children:N(l)})]}):a(m,{children:[e(ge,{level:o}),e(q,{children:e(Ce,{level:o})}),e(M,{children:e(y,{text:i,highlightedText:C})}),e(U,{children:F(h)}),e(H,{item:u}),e(E,{children:N(l)})]})]})});function Le({status:t,statusCode:n}){return t==="pending"?e(I,{children:e(de,{})}):t==="cancelled"?e(I,{children:e(He,{})}):!n||n>=300?e(I,{children:e(ee,{})}):e(I,{children:e(ue,{})})}const Ht=c.memo(function({active:n,logEntry:{id:s,status:i,started:o,duration:l,item:h,protocol:u,uri:r,contentLength:p}}){return a(m,{children:[e(Y,{id:s,active:n}),e(qt,{status:i}),e(q,{children:e(b,{color:"info",label:le(u)})}),e(M,{children:e(y,{text:r,highlightedText:B(j)})}),e(ie,{children:e(pe,{status:i})}),e(oe,{children:v(p)}),e(U,{children:F(l)}),e(H,{item:h}),e(E,{children:N(o)})]})});function qt({status:t}){return t==="pending"?e(I,{children:e(de,{})}):t==="failed"?e(I,{children:e(ee,{})}):e(I,{children:e(ue,{})})}function Y({id:t,active:n,pending:s,expandable:i,expanded:o}){const l=we(),h=xe(),u=c.useCallback(r=>{i&&(r.stopPropagation(),o?l(t):h(t))},[t,i,o,l,h]);return e(I,{onClick:u,children:s?e(_e,{}):i?o?e(Ne,{}):e(ye,{}):n?e(Me,{}):e(Ee,{})})}function Pt({active:t,last:n}){return e(I,{children:n?t?e(Oe,{}):e(Ae,{}):t?e($e,{}):e(Be,{})})}function H({item:t}){return e(At,{children:t&&a(m,{children:[e(I,{children:e(Ot,{kind:t.kind})}),e($t,{children:t.name})]})})}function Ot({kind:t}){if(!t)return e(P,{});switch(t){case nt:case et:return e(tt,{});case Ze:case Xe:case Je:return e(Qe,{});case Ve:return e(Ye,{});case Ke:case Ue:return e(We,{});case Fe:return e(Ge,{});case ze:return e(je,{});default:return S()}}const At=R("div")(({theme:t})=>w`
display: flex;
flex: 0 0 ${t.spacing(100)};
flex-direction: row;
align-items: center;
justify-content: flex-start;
padding: ${t.spacing(0,6,0,4)};
`),$t=R("div")(({theme:t})=>w`
flex: 0 0 ${t.spacing(78)};
overflow: hidden;
margin-left: ${t.spacing(2)};
text-overflow: ellipsis;
white-space: nowrap;
`),q=R("div")(({theme:t})=>w`
flex: 0 0 ${t.spacing(50)};
padding: ${t.spacing(0,6)};
white-space: nowrap;
`),ie=R("div")(({theme:t})=>w`
flex: 0 0 ${t.spacing(40)};
padding: ${t.spacing(0,6)};
white-space: nowrap;
`),oe=R("div")(({theme:t})=>w`
flex: 0 0 ${t.spacing(60)};
padding: ${t.spacing(0,6)};
white-space: nowrap;
text-align: right;
`);function Bt({logEntry:t}){return a(m,{children:[e(zt,{logEntry:t}),e(K,{}),e(k,{children:t&&e(jt,{logEntry:t})})]})}function zt({logEntry:t}){const n=O(),s=z(),i=c.useCallback(async()=>{t.item?.id&&await s(t.item.id)},[t.item?.id,s]);return a(V,{spacing:"right",children:[e(te,{children:"Details"}),e(A,{}),t.item?.id&&e(g,{tooltip:"Go to result item",onClick:i,children:e(P,{})}),e(g,{tooltip:"Close",onClick:n,children:e($,{})})]})}const re="log-entry-details";function jt({logEntry:t}){const n=Z(t.details);return typeof n=="string"?e(G,{id:re,content:n,enforceWordWrap:!0}):e(_,{id:re,content:n})}function Ft({logEntry:t}){const[n,s]=c.useState("transport");return a(m,{children:[e(Gt,{logEntry:t,viewId:n,updateViewId:s}),e(K,{}),e(k,{children:t&&e(Ut,{logEntry:t,viewId:n})})]})}function Gt({logEntry:t,viewId:n,updateViewId:s}){const{Tabs:i,Tab:o,MoreTabs:l}=he(),h=O(),u=z(),r=c.useCallback(async()=>{t.item?.id&&await u(t.item.id,t.id)},[t.id,t.item?.id,u]),p=c.useCallback((C,L)=>{s(L)},[s]);return a(V,{spacing:"right",children:[a(i,{value:n,"aria-label":"Log Entry Details",onChange:p,children:[e(o,{label:"Transport",value:"transport"}),e(o,{label:"Request Body",value:"request-body"}),e(o,{label:"Response Body",value:"response-body"})]}),e(l,{}),e(A,{}),t.item?.id&&e(g,{tooltip:"Go to result item",onClick:r,children:e(P,{})}),e(g,{tooltip:"Close",onClick:h,children:e($,{})})]})}const ce="request-body",X="response-body";function Ut({logEntry:t,viewId:n}){switch(n){case"transport":return e(Wt,{logEntry:t});case"request-body":{const s=Z(t.request.body);return typeof s=="string"?e(G,{id:ce,content:s}):e(_,{id:ce,content:s})}case"response-body":{const s=Z(t.response?.body);return(s===void 0||s==="")&&t.response?.error?e(_,{id:X,content:t.response.error}):typeof s=="string"?e(G,{id:X,content:s,followNewestLine:!0,scrollPositionInvalidation:t.id}):e(_,{id:X,content:s})}default:return S()}}function Wt({logEntry:t}){const{request:n,response:s}=t,i=n.headers?Object.entries(n.headers):[],o=s?.headers?Object.entries(s.headers):[],l=s?.contentLength??0,h=[{key:"url",name:"URL",description:n.uri},{key:"method",name:"Method",description:e(b,{color:"info",label:n.method})},{key:"status",name:"Status",description:e(me,{status:t.status})},s?.statusCode&&{key:"status-code",name:"Status Code",description:a(m,{children:[e(Ie,{statusCode:s.statusCode}),e(W,{children:s?.statusText&&`(${s.statusText})`})]})},{key:"response-size",name:"Response Size",description:v(l)},{key:"cache",name:"Cache",description:n.cache},n.credentials&&{key:"credentials",name:"Credentials",description:n.credentials},n.referrerPolicy&&{key:"referrer-policy",name:"Referrer Policy",description:n.referrerPolicy}].filter(Boolean);return e(k,{children:e(ne,{children:a(se,{children:[e(T,{title:"General HTTP Information",items:h,collapsible:!0}),i.length>0&&e(T,{title:"Request Headers",items:i.map(([u,r])=>({key:u,name:u,description:typeof r=="string"?r:r.join(", ")})),collapsible:!0}),o.length>0&&e(T,{title:"Response Headers",items:o.map(([u,r])=>({key:u,name:u,description:typeof r=="string"?r:r.join(", ")})),collapsible:!0})]})})})}function Kt({logEntry:t}){return a(m,{children:[e(Vt,{logEntry:t}),e(K,{}),e(k,{children:t&&e(Yt,{logEntry:t})})]})}function Vt({logEntry:t}){const n=O(),s=z(),i=c.useCallback(async()=>{t.item?.id&&await s(t.item.id,t.id)},[t.id,t.item?.id,s]);return a(V,{spacing:"right",children:[e(te,{children:"Transport"}),e(A,{}),t.item?.id&&e(g,{tooltip:"Go to result item",onClick:i,children:e(P,{})}),e(g,{tooltip:"Close",onClick:n,children:e($,{})})]})}function Yt({logEntry:t}){const{details:n}=t;if(!n)return null;const s=n.requestHeaders?Object.entries(n.requestHeaders):[],i=n.responseHeaders?Object.entries(n.responseHeaders):[];return e(k,{children:e(ne,{children:a(se,{children:[e(T,{title:"General HTTP Information",items:[{key:"url",name:"URL",description:n.uri},{key:"method",name:"Method",description:e(b,{color:"info",label:n.method})},{key:"status",name:"Status",description:e(me,{status:n.status})},n?.statusCode&&{key:"status-code",name:"Status Code",description:a(m,{children:[e(Ie,{statusCode:n.statusCode}),e(W,{children:n?.statusText&&`(${n.statusText})`})]})},{key:"response-size",name:"Response Size",description:v(n.contentLength)},{key:"cache",name:"Cache",description:n.cache},n.credentials&&{key:"credentials",name:"Credentials",description:n.credentials},n.referrerPolicy&&{key:"referrer-policy",name:"Referrer Policy",description:n.referrerPolicy}].filter(Boolean),collapsible:!0}),s.length>0&&e(T,{title:"Request Headers",items:s.map(([o,l])=>({key:o,name:o,description:l})),collapsible:!0}),i.length>0&&e(T,{title:"Response Headers",items:i.map(([o,l])=>({key:o,name:o,description:l})),collapsible:!0})]})})})}function Jt({logEntry:t}){const[n,s]=c.useState("transport");return a(m,{children:[e(Qt,{logEntry:t,viewId:n,updateViewId:s}),e(K,{}),e(k,{children:t&&e(en,{logEntry:t,viewId:n})})]})}function Qt({logEntry:t,viewId:n,updateViewId:s}){const{Tabs:i,Tab:o,MoreTabs:l}=he(),h=O(),u=z(),r=c.useCallback(async()=>{t.item?.id&&await u(t.item.id,t.id)},[t.id,t.item?.id,u]),p=c.useCallback((C,L)=>{s(L)},[s]);return a(V,{spacing:"right",children:[a(i,{value:n,"aria-label":"Log Entry Details",onChange:p,children:[e(o,{label:"Transport",value:"transport"}),e(o,{label:"Messages",value:"messages"}),e(o,{label:"Problems",value:"problems"})]}),e(l,{}),e(A,{}),t.item?.id&&e(g,{tooltip:"Go to result item",onClick:r,children:e(P,{})}),e(g,{tooltip:"Close",onClick:h,children:e($,{})})]})}const Xt="subscription-data",Zt="subscription-error";function en({logEntry:t,viewId:n}){switch(n){case"messages":return e(G,{id:Xt,content:t.data,followNewestLine:!0,scrollPositionInvalidation:t.id});case"problems":return e(_,{id:Zt,content:t.error});case"transport":return e(tn,{logEntry:t});default:return S()}}function tn({logEntry:t}){const n=t.connectionParams?Object.entries(t.connectionParams):[];return e(k,{children:e(ne,{children:a(se,{children:[e(T,{title:"General Information",items:[{key:"url",name:"URL",description:t.uri},{key:"protocol",name:"Protocol",description:a(m,{children:[e(b,{color:"info",label:le(t.protocol)}),a(W,{children:["(",t.protocol,")"]})]})},{key:"status",name:"Status",description:a(m,{children:[e(pe,{status:t.status}),a(W,{children:["(",t.status,")"]})]})},{key:"messages",name:"Messages",description:t.messages},{key:"response-size",name:"Response Size",description:v(t.contentLength)}],collapsible:!0}),n.length>0&&e(T,{title:"Connection Parameters",items:n.map(([s,i])=>({key:s,name:s,description:i})),collapsible:!0})]})})})}function nn(){const t=st();return t?e(it,{$separator:"left",children:e(sn,{logEntry:t})}):null}function sn({logEntry:t}){const{kind:n}=t;switch(n){case"basic":return e(Bt,{logEntry:t});case"http-request":return e(Ft,{logEntry:t});case"scope":return e(Kt,{logEntry:t});case"subscription-request":return e(Jt,{logEntry:t});default:return S()}}const ae="log";function on(){const t=ot(),n=Lt(ae),s=rt(),i=bt(ae);return a(rn,{role:"toolbar",children:[e(Tt,{searchTerm:n,onSearchTermChange:i}),e(g,{tooltip:"Clear Log",disabled:!t,onClick:s,children:e(ct,{})})]})}const rn=R("div")(({theme:t})=>w`
display: flex;
flex: 1 1 auto;
flex-direction: row;
max-width: ${t.spacing(300)};
`);function mn(){const t=kt(),n=O(),s=c.useCallback(()=>{t(),n()},[t,n]);return a(m,{children:[a(at,{children:[e(cn,{}),e(A,{}),e(on,{}),e(an,{}),e(g,{onClick:s,children:e($,{})})]}),e(dt,{children:e(lt,{children:e(ln,{})})})]})}function cn(){const{all:t}=ut();return a(te,{children:["Log (",t,")"]})}function an(){const t=St(),n=Dt();return Rt()?e(g,{tooltip:"Minimize",onClick:n,children:e(ht,{})}):e(g,{tooltip:"Maximize",onClick:t,children:e(pt,{})})}function ln(){const t=ft(),n=vt(),s=wt();return e(xt,{id:"log",asideCollapsible:!0,asideCollapsed:t===null,asideWidth:n,leftContent:e(dn,{}),mainPane:"left",relativeWidth:!0,rightContent:e(un,{}),onAsideWidthChange:s})}const dn=c.memo(_t),un=c.memo(nn);export{mn as default};