1import{p as m,a as Ee,c as st,i as G,q as lt,w as ct,b as ke,j as Nt,f as Pt,e as Tt,v as zt,y as Xt,J as Kt}from"./i18n-DhLovEFo.js";import{a$ as ea,M as $e,t as R,a as o,O as Ce,P as g,f as ht,V as Lt,N as re,S as n,Q as a,T as t,a3 as we,U as V,W as Te,R as b,a2 as xe,a1 as Ge,v as k,x as p,X as e,Z as ve,_ as _t,a0 as B,$ as S,ab as Ae,a5 as Bt,G as Vt,b0 as ta,Y as At,aq as qt,ao as jt,as as St}from"./index-9Ev7iYt6.js";import{C as Ft}from"./clear-DzKqjVu1.js";import{a as aa,g as sa}from"./Blocks-CGGdLdT-.js";import{B as Yt}from"./Button-U40IzBe8.js";import{L as Wt}from"./index-BKfLiH8b.js";import"./ScrollFade.svelte_svelte_type_style_lang-ogAEaD61.js";import"./StreamingBar.svelte_svelte_type_style_lang-D07DuzRz.js";import{B as Le}from"./Block-MCGnkHAA.js";import{h as Mt}from"./html-CfSn455r.js";import{a as ra}from"./input-BhZahYna.js";import"./size-COeWeQdF.js";import"./state.svelte-x6BRflgj.js";import"./index-BlQXYsaG.js";import"./index-tFQomdd2.js";import"./snippet-xbRfGdXG.js";import"./Image-CVAEcPj3.js";import"./ImagePreview-DJ7FK62O.js";import"./BlockLabel-CqQRDPfZ.js";import"./DownloadLink-hEoT-mAd.js";import"./Empty-B_oS1nZx.js";import"./ShareButton-qU8V1sqI.js";import"./Download-BvDI8Efl.js";import"./Image-BtruDAal.js";import"./IconButtonWrapper-DATTLsrh.js";import"./FullscreenButton-CgU9eLeA.js";import"./Maximize-DX4p_OSq.js";import"./Clear-D8pztZ4O.js";import"./index-B_pwUImq.js";function Gt(d,s){var i=d.$$events?.[s.type],c=ea(i)?i.slice():i==null?[]:[i];for(var v of c)v.call(this,s)}var na=ht('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="currentColor" d="M12.1 2a9.8 9.8 0 0 0-5.4 1.6l6.4 6.4a2.1 2.1 0 0 1 .2 3a2.1 2.1 0 0 1-3-.2L3.7 6.4A9.84 9.84 0 0 0 2 12.1a10.14 10.14 0 0 0 10.1 10.1a11 11 0 0 0 2.6-.3l6.7 6.7a5 5 0 0 0 7.1-7.1l-6.7-6.7a11 11 0 0 0 .3-2.6A10 10 0 0 0 12.1 2m8 10.1a7.6 7.6 0 0 1-.3 2.1l-.3 1.1l.8.8l6.7 6.7a2.88 2.88 0 0 1 .9 2.1A2.72 2.72 0 0 1 27 27a2.9 2.9 0 0 1-4.2 0l-6.7-6.7l-.8-.8l-1.1.3a7.6 7.6 0 0 1-2.1.3a8.27 8.27 0 0 1-5.7-2.3A7.63 7.63 0 0 1 4 12.1a8.3 8.3 0 0 1 .3-2.2l4.4 4.4a4.14 4.14 0 0 0 5.9.2a4.14 4.14 0 0 0-.2-5.9L10 4.2a6.5 6.5 0 0 1 2-.3a8.27 8.27 0 0 1 5.7 2.3a8.5 8.5 0 0 1 2.4 5.9"></path></svg>');function Et(d,s){$e(s,!1);let i=m(s,"icon_size",12,16);var c={get icon_size(){return i()},set icon_size(_){i(_),g()}},v=na();return R(()=>{Ee(v,"width",i()),Ee(v,"height",i())}),o(d,v),Ce(c)}var ia=ht('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="currentColor" d="M17.74 30L16 29l4-7h6a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2H6a2 2 0 0 0-2 2v12a2 2 0 0 0 2 2h9v2H6a4 4 0 0 1-4-4V8a4 4 0 0 1 4-4h20a4 4 0 0 1 4 4v12a4 4 0 0 1-4 4h-4.84Z"></path><path fill="currentColor" d="M8 10h16v2H8zm0 6h10v2H8z"></path></svg>');function Zt(d,s){$e(s,!1);let i=m(s,"icon_size",12,16);var c={get icon_size(){return i()},set icon_size(_){i(_),g()}},v=ia();return R(()=>{Ee(v,"width",i()),Ee(v,"height",i())}),o(d,v),Ce(c)}var oa=ht('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 32 32"><path fill="currentColor" d="M19 10h7v2h-7zm0 5h7v2h-7zm0 5h7v2h-7z"></path><path fill="currentColor" d="M28 5H4a2 2 0 0 0-2 2v18a2 2 0 0 0 2 2h24a2.003 2.003 0 0 0 2-2V7a2 2 0 0 0-2-2M4 7h11v18H4Zm13 18V7h11l.002 18Z"></path></svg>');function Ht(d,s){$e(s,!1);let i=m(s,"icon_size",12,16);var c={get icon_size(){return i()},set icon_size(_){i(_),g()}},v=oa();return R(()=>{Ee(v,"width",i()),Ee(v,"height",i())}),o(d,v),Ce(c)}var la=b('<div class="wrap prose svelte-1m8i4xt"><h1>API Docs</h1> <p class="attention svelte-1m8i4xt">No API Routes found for <code class="svelte-1m8i4xt"> </code></p> <p>To expose an API endpoint of your app in this page, set the <code>api_name</code> parameter of the event listener. <br/> For more information, visit the <a href="https://gradio.app/sharing_your_app/#api-page" target="_blank">API Page guide</a> . To hide the API documentation button and this page, set <code>footer_links=["gradio", "settings"]</code> in the <code>Blocks.launch()</code> method.</p></div> <button class="svelte-1m8i4xt"><!></button>',1);function ca(d,s){$e(s,!1);const i=Lt();let c=m(s,"root",12);var v={get root(){return c()},set root(E){c(E),g()}};st();var _=la(),H=re(_),O=n(a(H),2),Z=n(a(O)),A=a(Z,!0);t(Z),t(O),we(2),t(H);var x=n(H,2),w=a(x);return Ft(w),t(x),R(()=>V(A,c())),Te("click",x,()=>i("close")),o(d,_),Ce(v)}var da=b('<div class="loading-dot self-baseline svelte-uv8a36"></div>
1 <p class="self-baseline btn-text svelte-uv8a36">API Recorder</p>',1),pa=b('<h2 class="svelte-uv8a36"><img alt="" class="svelte-uv8a36"/> <div class="title svelte-uv8a36"><!> documentation <div class="url svelte-uv8a36"> </div></div> <span class="counts svelte-uv8a36"><!> <p><span class="url svelte-uv8a36"> </span> <!><!><br/></p></span></h2> <button class="svelte-uv8a36"><!></button>',1);function va(d,s){$e(s,!1);let i=m(s,"root",12),c=m(s,"api_count",12),v=m(s,"current_language",12,"python");const _=Lt();var H={get root(){return i()},set root(y){i(y),g()},get api_count(){return c()},set api_count(y){c(y),g()},get current_language(){return v()},set current_language(y){v(y),g()}};st();var O=pa(),Z=re(O),A=a(Z),x=n(A,2),w=a(x);{var E=y=>{var Y=xe("MCP");o(y,Y)},ce=y=>{var Y=Ge(),oe=re(Y);{var te=$=>{var K=xe("CLI");o($,K)},I=$=>{var K=xe("API");o($,K)};G(oe,$=>{v()==="cli"?$(te):$(I,!1)},!0)}o(y,Y)};G(w,y=>{v()==="mcp"?y(E):y(ce,!1)})}var ee=n(w,2),N=a(ee,!0);t(ee),t(x);var h=n(x,2),l=a(h);{var P=y=>{Yt(y,{size:"sm",variant:"secondary",elem_id:"start-api-recorder",onclick:()=>_("close",{api_recorder_visible:!0}),children:(Y,oe)=>{var te=da();we(2),o(Y,te)},$$slots:{default:!0}})};G(l,y=>{v()!=="mcp"&&v()!=="cli"&&y(P)})}var U=n(l,2),T=a(U),F=a(T,!0);t(T);var C=n(T,2);{var f=y=>{var Y=xe("MCP Tool");o(y,Y)},L=y=>{var Y=Ge(),oe=re(Y);{var te=$=>{var K=xe(`CLI 2 endpoint`);o($,K)},I=$=>{var K=xe("API endpoint");o($,K)};G(oe,$=>{v()==="cli"?$(te):$(I,!1)},!0)}o(y,Y)};G(C,y=>{v()==="mcp"?y(f):y(L,!1)})}var de=n(C);{var j=y=>{var Y=xe("s");o(y,Y)};G(de,y=>{c()>1&&y(j)})}we(),t(U),t(h),t(Z);var z=n(Z,2),X=a(z);return Ft(X),t(z),R(()=>{Ee(A,"src",aa),V(N,i()),V(F,c())}),Te("click",z,()=>_("close")),o(d,O),Ce(H)}function ut(d,s,i=null){return s===void 0?i==="py"?"None":null:d===null&&i==="py"?"None":s==="string"||s==="str"?i===null?d:'"'+d+'"':s==="number"?i===null?parseFloat(d):d:s==="boolean"||s=="bool"?i==="py"?(d=String(d),d==="true"?"True":"False"):i==="js"||i==="bash"?d:d==="true":s==="List[str]"?(d=JSON.stringify(d),d):s.startsWith("Literal['")?'"'+d+'"':i===null?d===""?null:JSON.parse(d):typeof d=="string"?d===""?i==="py"?"None":"null":d:(i==="bash"&&(d=Dt(d)),i==="py"&&(d=Rt(d)),_a(d))}function Dt(d){return typeof d=="object"&&d!==null&&!Array.isArray(d)&&"url"in d&&d.url&&"meta"in d&&d.meta?._type==="gradio.FileData"?{path:d.url,meta:{_type:"gradio.FileData"}}:(Array.isArray(d)?d.forEach((s,i)=>{typeof s=="object"&&s!==null&&(d[i]=Dt(s))}):typeof d=="object"&&d!==null&&Object.keys(d).forEach(s=>{d[s]=Dt(d[s])}),d)}function Rt(d){return typeof d=="object"&&d!==null&&!Array.isArray(d)&&"url"in d&&d.url&&"meta"in d&&d.meta?._type==="gradio.FileData"?`handle_file('${d.url}')`:(Array.isArray(d)?d.forEach((s,i)=>{typeof s=="object"&&s!==null&&(d[i]=Rt(s))}):typeof d=="object"&&d!==null&&Object.keys(d).forEach(s=>{d[s]=Rt(d[s])}),d)}function _a(d){let s=JSON.stringify(d,(v,_)=>_===null?"UNQUOTEDNone":typeof _=="string"&&_.startsWith("handle_file(")&&_.endsWith(")")?`UNQUOTED${_}`:_);const i=/"UNQUOTEDhandle_file\(([^)]*)\)"/g;s=s.replace(i,(v,_)=>`handle_file(${_})`);const c=/"UNQUOTEDNone"/g;return s.replace(c,"None")}function ot(d){return d<1?`${Math.round(d*1e3)} ms`:`${d.toFixed(2)} s`}var ua=b(" <!>:",1),ha=b(" <!>:",1),ma=b(" <!>",1),ga=b('<span style="font-weight:bold">Required</span>'),fa=b('<span>Default:</span><span class="code svelte-1nfxyth" style="font-size: var(--text-sm);"> </span>',1),ya=b('<hr class="hr svelte-1nfxyth"/> <div style="margin:10px;"><p style="white-space: nowrap; overflow-x: auto;"><span class="code svelte-1nfxyth" style="margin-right: 10px;"> </span> <span class="code highlight svelte-1nfxyth" style="margin-right: 10px;"><!></span> <!></p> <p class="desc svelte-1nfxyth"> </p></div>',1),ba=b('<div class="load-wrap"><!></div>'),wa=b('<h4 class="svelte-1nfxyth"><div class="toggle-icon svelte-1nfxyth"><div class="toggle-dot svelte-1nfxyth"></div></div> <!></h4> <div></div> <!>',1);function xa(d,s){$e(s,!1);let i=m(s,"is_running",12),c=m(s,"endpoint_returns",12),v=m(s,"js_returns",12),_=m(s,"current_language",12);var H={get is_running(){return i()},set is_running(h){i(h),g()},get endpoint_returns(){return c()},set endpoint_returns(h){c(h),g()},get js_returns(){return v()},set js_returns(h){v(h),g()},get current_language(){return _()},set current_language(h){_(h),g()}};st();var O=wa(),Z=re(O),A=n(a(Z),2);{var x=h=>{var l=ua(),P=re(l),U=n(P);{var T=F=>{var C=xe("s");o(F,C)};G(U,F=>{p(c()),k(()=>c().length!=1)&&F(T)})}we(),R(()=>V(P,`Accepts a JSON object with ${p(c()),k(()=>c().length)??""} 3 key`)),o(h,l)},w=h=>{var l=ha(),P=re(l),U=n(P);{var T=F=>{var C=xe("s");o(F,C)};G(U,F=>{p(c()),k(()=>c().length!=1)&&F(T)})}we(),R(()=>V(P,`Accepts ${p(c()),k(()=>c().length)??""} 4 parameter`)),o(h,l)};G(A,h=>
4{_()==="bash"?h(x):h(w,!1)})}t(Z);var E=n(Z,2);let ce;lt(E,5,c,ct,(h,l,P)=>{let U=()=>e(l).label,T=()=>e(l).python_type,F=()=>e(l).component,C=()=>e(l).parameter_name,f=()=>e(l).parameter_has_default,L=()=>e(l).parameter_default;var de=ya(),j=n(re(de),2),z=a(j),X=a(z),y=a(X,!0);t(X);var Y=n(X,2),oe=a(Y);{var te=q=>{var W=ma(),ie=re(W,!0),_e=n(ie);{var fe=le=>{var ue=xe(`Â | 5 None`);o(le,ue)};G(_e,le=>{f()&&L()===null&&le(fe)})}R(()=>V(ie,(T(),k(()=>T().type)))),o(q,W)},I=q=>{var W=Ge(),ie=re(W);{var _e=le=>{var ue=xe();R(()=>V(ue,(T(),k(()=>T().type)))),o(le,ue)},fe=le=>{var ue=xe();R(()=>V(ue,(p(v()),k(()=>v()[P].type||"any")))),o(le,ue)};G(ie,le=>{_()==="bash"?le(_e):le(fe,!1)},!0)}o(q,W)};G(oe,q=>{_()==="python"?q(te):q(I,!1)})}t(Y);var $=n(Y,2);{var K=q=>{var W=ga();o(q,W)},ne=q=>{var W=fa(),ie=n(re(W)),_e=a(ie,!0);t(ie),R(fe=>V(_e,fe),[()=>(p(ut),L(),T(),k(()=>ut(L(),T().type,"py")))]),o(q,W)};G($,q=>{!f()||_()=="bash"?q(K):q(ne,!1)})}t(z);var se=n(z,2),ae=a(se);t(se),t(j),R(()=>{V(y,C()||`[${P}]`),V(ae,`The input value that is provided in the "${U()??""}" ${F()??""} 6 component. ${T(),k(()=>T().description)??""}`)}),o(h,de)}),t(E);var ee=n(E,2);{var N=h=>{var l=ba(),P=a(l);Wt(P,{margin:!1}),t(l),o(h,l)};G(ee,h=>{i()&&h(N)})}return R(()=>ce=ke(E,1,"",null,ce,{hide:i()})),o(d,O),Ce(H)}var $a=ht('<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" fill="currentColor" focusable="false" role="img" width="1em" height="1em" preserveAspectRatio="xMidYMid meet" viewBox="0 0 32 32"><path d="M28,10V28H10V10H28m0-2H10a2,2,0,0,0-2,2V28a2,2,0,0,0,2,2H28a2,2,0,0,0,2-2V10a2,2,0,0,0-2-2Z" transform="translate(0)"></path><path d="M4,18H2V4A2,2,0,0,1,4,2H18V4H4Z" transform="translate(0)"></path><rect fill="none" width="32" height="32"></rect></svg>');function Ot(d,s){$e(s,!1);let i=m(s,"classNames",12,"");var c={get classNames(){return i()},set classNames(_){i(_),g()}},v=$a();return R(()=>ke(v,0,Nt(i()),"svelte-etvp4k")),o(d,v),Ce(c)}var Ca=ht('<svg xmlns="http://www.w3.org/2000/svg" aria-hidden="true" height="16" viewBox="0 0 16 16" version="1.1" width="16" data-view-component="true"><path fill-rule="evenodd" fill="rgb(255, 124, 1)" d="M13.78 4.22a.75.75 0 010 1.06l-7.25 7.25a.75.75 0 01-1.06 0L2.22 9.28a.75.75 0 011.06-1.06L6 10.94l6.72-6.72a.75.75 0 011.06 0z"></path></svg>');function Jt(d,s){$e(s,!1);let i=m(s,"classNames",12,"");var c={get classNames(){return i()},set classNames(_){i(_),g()}},v=Ca();return R(()=>ke(v,0,Nt(i()||"icon-size"),"svelte-5quqiz")),o(d,v),Ce(c)}var Ia=b('<button class="copy-button svelte-egghn7" aria-live="polite"><span class="inline-flex items-center justify-center rounded-md p-0.5 max-sm:p-0"><!></span></button>');function ze(d,s){$e(s,!1);let i=m(s,"code",12),c=B(!1);function v(){navigator.clipboard.writeText(i()),S(c,!0),setTimeout(()=>{S(c,!1)},1500)}ve(()=>e(c),()=>{e(c)}),_t();var _={get code(){return i()},set code(w){i(w),g()}},H=Ia(),O=a(H),Z=a(O);{var A=w=>{Jt(w,{classNames:"w-3 h-3 max-sm:w-2.5 max-sm:h-2.5"})},x=w=>{Ot(w,{classNames:"w-3 h-3 max-sm:w-2.5 max-sm:h-2.5"})};G(Z,w=>{e(c)?w(A):w(x,!1)})}return t(O),t(H),Te("click",H,v),o(d,H),Ce(_)}var ka=b('<code class="svelte-1ts4a2g"><div class="copy svelte-1ts4a2g"><!></div> <div><pre class="svelte-1ts4a2g"></pre></div></code>'),ja=b('<code class="svelte-1ts4a2g"><div class="copy svelte-1ts4a2g"><!></div> <div><pre class="svelte-1ts4a2g"></pre></div></code>'),Pa=b('<code class="svelte-1ts4a2g"><div class="copy svelte-1ts4a2g"><!></div> <div><pre class="svelte-1ts4a2g"></pre></div></code>'),Ta=b('<code class="svelte-1ts4a2g"><div class="copy svelte-1ts4a2g"><!></div> <div><pre class="svelte-1ts4a2g"></pre></div></code>'),Na=b('<code class="svelte-1ts4a2g"><div class="copy svelte-1ts4a2g"><!></div> <div><pre class="svelte-1ts4a2g"></pre></div></code>'),Sa=b('<p class="step svelte-1ts4a2g">First, install the HF CLI.</p> <p class="os-label svelte-1ts4a2g">On macOS and Linux:</p> <!> <p class="os-label svelte-1ts4a2g">On Windows:</p> <!> <p class="step svelte-1ts4a2g">Then, install the Gradio extension:</p>',1),Ma=b('<code class="svelte-1ts4a2g"><div class="copy svelte-1ts4a2g"><!></div> <div><pre class="svelte-1ts4a2g"> </pre></div></code>'),za=b("<!> <!>",1);function Aa(d,s){$e(s,!1);const i=B();let c=m(s,"current_language",12),v=m(s,"cli_flavor",12,"hf"),_="pip install gradio_client",H="npm i -D @gradio/client",O="curl --version";const Z="curl -LsSf https://hf.co/cli/install.sh | bash",A='powershell -ExecutionPolicy ByPass -c "irm https://hf.co/cli/install.ps1 | iex"';ve(()=>p(v()),()=>{S(i,v()==="hf"?"hf extensions install gradio-app/hf-gradio":"pip install gradio --upgrade")}),_t();var x={get current_language(){return c()},set current_language(N){c(N),g()},get cli_flavor(){return v()},set cli_flavor(N){v(N),g()}},w=Ge(),E=re(w);{var ce=N=>{Le(N,{children:(h,l)=>{var P=ka(),U=a(P),T=a(U);ze(T,{code:_}),t(U);var F=n(U,2),C=a(F);C.textContent="$ pip install gradio_client",t(F),t(P),o(h,P)},$$slots:{default:!0}})},ee=N=>{var h=Ge(),l=re(h);{var P=T=>{Le(T,{children:(F,C)=>{var f=ja(),L=a(f),de=a(L);ze(de,{code:H}),t(L);var j=n(L,2),z=a(j);z.textContent="$ npm i -D @gradio/client",t(j),t(f),o(F,f)},$$slots:{default:!0}})}
6,U=T=>{var F=Ge(),C=re(F);{var f=de=>{Le(de,{children:(j,z)=>{var X=Pa(),y=a(X),Y=a(y);ze(Y,{code:O}),t(y);var oe=n(y,2),te=a(oe);te.textContent="$ curl --version",t(oe),t(X),o(j,X)},$$slots:{default:!0}})},L=de=>{var j=Ge(),z=re(j);{var X=y=>{var Y=za(),oe=re(Y);{var te=$=>{var K=Sa(),ne=n(re(K),4);Le(ne,{children:(ae,q)=>{var W=Ta(),ie=a(W),_e=a(ie);ze(_e,{code:Z}),t(ie);var fe=n(ie,2),le=a(fe);le.textContent="$ curl -LsSf https://hf.co/cli/install.sh | bash",t(fe),t(W),o(ae,W)},$$slots:{default:!0}});var se=n(ne,4);Le(se,{children:(ae,q)=>{var W=Na(),ie=a(W),_e=a(ie);ze(_e,{code:A}),t(ie);var fe=n(ie,2),le=a(fe);le.textContent='$ powershell -ExecutionPolicy ByPass -c "irm https://hf.co/cli/install.ps1 | iex"',t(fe),t(W),o(ae,W)},$$slots:{default:!0}}),we(2),o($,K)};G(oe,$=>{v()==="hf"&&$(te)})}var I=n(oe,2);Le(I,{children:($,K)=>{var ne=Ma(),se=a(ne),ae=a(se);ze(ae,{get code(){return e(i)}}),t(se);var q=n(se,2),W=a(q),ie=a(W);t(W),t(q),t(ne),R(()=>V(ie,`$ ${e(i)??""}`)),o($,ne)},$$slots:{default:!0}}),o(y,Y)};G(z,y=>{c()==="cli"&&y(X)},!0)}o(de,j)};G(C,de=>{c()==="bash"?de(f):de(L,!1)},!0)}o(T,F)};G(l,T=>{c()==="javascript"?T(P):T(U,!1)},!0)}o(N,h)};G(E,N=>{c()==="python"?N(ce):N(ee,!1)})}return o(d,w),Ce(x)}var qa=b('<div class="tooltip-chart svelte-1q3jha5"><div class="tooltip-arrow svelte-1q3jha5"></div> <div class="chart-bars svelte-1q3jha5"><div class="chart-bar-container svelte-1q3jha5"><div class="chart-bar-label svelte-1q3jha5">p50</div> <div class="chart-bar-wrapper svelte-1q3jha5"><div class="chart-bar svelte-1q3jha5"></div></div> <div class="chart-bar-value svelte-1q3jha5"> </div></div> <div class="chart-bar-container svelte-1q3jha5"><div class="chart-bar-label svelte-1q3jha5">p90</div> <div class="chart-bar-wrapper svelte-1q3jha5"><div class="chart-bar svelte-1q3jha5"></div></div> <div class="chart-bar-value svelte-1q3jha5"> </div></div> <div class="chart-bar-container svelte-1q3jha5"><div class="chart-bar-label svelte-1q3jha5">p99</div> <div class="chart-bar-wrapper svelte-1q3jha5"><div class="chart-bar svelte-1q3jha5"></div></div> <div class="chart-bar-value svelte-1q3jha5"> </div></div></div></div>');function Da(d,s){$e(s,!1);const i=B();let c=m(s,"p50",12),v=m(s,"p90",12),_=m(s,"p99",12);ve(()=>(p(c()),p(v()),p(_())),()=>{S(i,Math.max(c(),v(),_()))}),_t();var H={get p50(){return c()},set p50(L){c(L),g()},get p90(){return v()},set p90(L){v(L),g()},get p99(){return _()},set p99(L){_(L),g()}};st();var O=qa(),Z=n(a(O),2),A=a(Z),x=n(a(A),2),w=a(x);t(x);var E=n(x,2),ce=a(E,!0);t(E),t(A);var ee=n(A,2),N=n(a(ee),2),h=a(N);t(N);var l=n(N,2),P=a(l,!0);t(l),t(ee);var U=n(ee,2),T=n(a(U),2),F=a(T);t(T);var C=n(T,2),f=a(C,!0);return t(C),t(U),t(Z),t(O),R((L,de,j)=>{Pt(w,`width: ${c()/e(i)*100}%`),V(ce,L),Pt(h,`width: ${v()/e(i)*100}%`),V(P,de),Pt(F,`width: ${_()/e(i)*100}%`),V(f,j)},[()=>(p(ot),p(c()),k(()=>ot(c()))),()=>(p(ot),p(v()),k(()=>ot(v()))),()=>(p(ot),p(_()),k(()=>ot(_())))]),o(d,O),Ce(H)}var Ra=b('<span class="most-recently-used svelte-13swnto">Most recently used</span>'),Oa=b('<span class="analytics-inline svelte-13swnto"><span class="analytics-content svelte-13swnto"><span class="analytics-text-wrapper svelte-13swnto"> </span> <div class="analytics-tooltip svelte-13swnto"><!></div></span> <!></span>'),La=b('<h3 class="svelte-13swnto">API name: <span class="post svelte-13swnto"> </span> <span class="desc svelte-13swnto"> <!></span></h3>');function Ga(d,s){$e(s,!1);const i=B();let c=m(s,"api_name",12,null),v=m(s,"description",12,null),_=m(s,"analytics",12),H=m(s,"last_api_call",12,null),O=m(s,"dependency_id",12,null);const Z=c()?_()[c()]?.success_rate:0;ve(()=>(p(H()),p(O())),()=>{S(i,H()?.fn_index===O())}),_t();var A={get api_name(){return c()},set api_name(l){c(l),g()},get description(){return v()},set description(l){v(l),g()},get analytics(){return _()},set analytics(l){_(l),g()},get last_api_call(){return H()},set last_api_call(l){H(l),g()},get dependency_id(){return O()},set dependency_id(l){O(l),g()}};st();var x=La(),w=n(a(x)),E=a(w,!0);t(w);var ce=n(w,2),ee=a(ce),N=n(ee);{var h=l=>{const P=Ae(()=>(p(_()),p(c()),k(()=>_()[c()]))),U=Ae(()=>(p(e(P)),k(()=>e(P).process_time_percentiles["50th"]))),T=Ae(()=>(p(e(P)),k(()=>e(P).process_time_percentiles["90th"]))),F=Ae(()=>(p(e(P)),k(()=>e(P).process_time_percentiles["99th"])));var C=Oa(),f=a(C),L=a(f),de=a(L);t(L);var j=n(L,2),z=a(j);Da(z,{get p50(){return e(U)},get p90(){return e(T)},get p99(){return e(F)}}),t(j),t(f);var X=n(f,2);{var y=Y=>{var oe=Ra();o(Y,oe)};G(X,Y=>{e(i)&&Y(y)})}t(C),R((Y,oe)=>V(de,`${p(e(P)),k(()=>e(P).total_requests)??""} requests (${Y??""}% successful, p50: ${oe??""})`),[()=>k(()=>Math.round(Z*100)),()=>(p(ot),p(e(U)),k(()=>ot(e(U))))]),o(l,C)};G(N,l=>{p(_()),p(c()),k(()=>_()&&c()&&_()[c()])&&l(h)})}return t(ce),t(x),R(()=>{V(E,"/"+c()),V(ee,`${v()??""} `)}),o(d,x),Ce(A)}var Ea=b('<code class="svelte-1v9rhoq"><div class="copy svelte-1v9rhoq"><!></div> <pre class="svelte-1v9rhoq"><!></pre></code>'),Za=b('<code class="svelte-1v9rhoq"><div class="copy svelte-1v9rhoq"><!></div> <pre class="svelte-1v9rhoq"><!></pre></code>'),Ha=b('<code class="svelte-1v9rhoq"><div class="copy svelte-1v9rhoq"><!></div> <pre class="svelte-1v9rhoq"><!></pre></code>'),Ua=b('<code class="svelte-1v9rhoq"><div class="copy svelte-1v9rhoq"><!></div> <pre class="svelte-1v9rhoq"><!></pre></code>'),Ba=b('<div class="container svelte-1v9rhoq"><!> <div><!></div> <div><!></div> <div><!></div> <div><!></div></div>');function Va(d,s){$e(s,!1);const i=B(),c=B(),v=B(),_=B(),H=B();
6let O=m(s,"dependency",12),Z=m(s,"current_language",12),A=m(s,"api_description",12,null),x=m(s,"analytics",12),w=m(s,"code_snippets",12),E=m(s,"last_api_call",12,null),ce=m(s,"cli_command",12,"");function ee(I){return I.replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">")}function N(I){let $=ee(I);return $=$.replace(/\b(from|import|print)\b/g,'<span class="kw">$1</span>'),$=$.replace(/(Client\()("[^"]*")(\))/g,'$1<span class="str">$2</span>$3'),$=$.replace(/(api_name=)("[^"]*")/g,'$1<span class="api-name">$2</span>'),$}function h(I){let $=ee(I);return $=$.replace(/\b(import|from|const|await)\b/g,'<span class="kw">$1</span>'),$=$.replace(/(Client\.connect\()("[^"]*")(\))/g,'$1<span class="str">$2</span>$3'),$=$.replace(/(\.predict\()("[^"]*")/g,'$1<span class="api-name">$2</span>'),$}function l(I){return ee(I)}ve(()=>(p(w()),p(ce())),()=>{S(i,(w().cli||"").replace("{command}",ce()))}),ve(()=>p(w()),()=>{S(c,N(w().python||""))}),ve(()=>p(w()),()=>{S(v,h(w().javascript||""))}),ve(()=>p(w()),()=>{S(_,l(w().bash||""))}),ve(()=>e(i),()=>{S(H,l(e(i)))}),_t();var P={get dependency(){return O()},set dependency(I){O(I),g()},get current_language(){return Z()},set current_language(I){Z(I),g()},get api_description(){return A()},set api_description(I){A(I),g()},get analytics(){return x()},set analytics(I){x(I),g()},get code_snippets(){return w()},set code_snippets(I){w(I),g()},get last_api_call(){return E()},set last_api_call(I){E(I),g()},get cli_command(){return ce()},set cli_command(I){ce(I),g()}};st();var U=Ba(),T=a(U);Ga(T,{get api_name(){return p(O()),k(()=>O().api_name)},get description(){return A()},get analytics(){return x()},get last_api_call(){return E()},get dependency_id(){return p(O()),k(()=>O().id)}});var F=n(T,2);let C;var f=a(F);Le(f,{children:(I,$)=>{var K=Ea(),ne=a(K),se=a(ne);{let W=Ae(()=>(p(w()),k(()=>w().python||"")));ze(se,{get code(){return e(W)}})}t(ne);var ae=n(ne,2),q=a(ae);Mt(q,()=>e(c)),t(ae),t(K),o(I,K)},$$slots:{default:!0}}),t(F);var L=n(F,2);let de;var j=a(L);Le(j,{children:(I,$)=>{var K=Za(),ne=a(K),se=a(ne);{let W=Ae(()=>(p(w()),k(()=>w().javascript||"")));ze(se,{get code(){return e(W)}})}t(ne);var ae=n(ne,2),q=a(ae);Mt(q,()=>e(v)),t(ae),t(K),o(I,K)},$$slots:{default:!0}}),t(L);var z=n(L,2);let X;var y=a(z);Le(y,{children:(I,$)=>{var K=Ha(),ne=a(K),se=a(ne);{let W=Ae(()=>(p(w()),k(()=>w().bash||"")));ze(se,{get code(){return e(W)}})}t(ne);var ae=n(ne,2),q=a(ae);Mt(q,()=>e(_)),t(ae),t(K),o(I,K)},$$slots:{default:!0}}),t(z);var Y=n(z,2);let oe;var te=a(Y);return Le(te,{children:(I,$)=>{var K=Ua(),ne=a(K),se=a(ne);ze(se,{get code(){return e(i)}}),t(ne);var ae=n(ne,2),q=a(ae);Mt(q,()=>e(H)),t(ae),t(K),o(I,K)},$$slots:{default:!0}}),t(Y),t(U),R(()=>{C=ke(F,1,"svelte-1v9rhoq",null,C,{hidden:Z()!=="python"}),de=ke(L,1,"svelte-1v9rhoq",null,de,{hidden:Z()!=="javascript"}),X=ke(z,1,"svelte-1v9rhoq",null,X,{hidden:Z()!=="bash"}),oe=ke(Y,1,"svelte-1v9rhoq",null,oe,{hidden:Z()!=="cli"})}),o(d,U),Ce(P)}var Fa=b(` 7client.<span class="highlight"> <span class="api-name svelte-154to14"> </span> 8) 9</span>`,1),Ya=b(`<code class="svelte-154to14"><div class="copy svelte-154to14"><!></div> <div><pre class="svelte-154to14"><span class="highlight">from</span> gradio_client <span class="highlight">import</span> Client, file 10 11client = Client(<span class="token string svelte-154to14"> </span><!>) 12<!></pre></div></code>`),Wa=b(` 13await client.predict(<span class="api-name svelte-154to14"> </span><!>); 14 `,1),Ja=b(`<code class="svelte-154to14"><div class="copy svelte-154to14"><!></div> <div><pre class="svelte-154to14">import { Client } from "@gradio/client"; 15 16const app = await Client.connect(<span class="token string svelte-154to14"> </span><!>); 17 <!></pre></div></code>`),Qa=b('<pre class="svelte-154to14"> </pre> <br/>',1),Xa=b('<code class="svelte-154to14"><div class="copy svelte-154to14"><!></div> <div></div></code>'),Ka=b('<div class="container svelte-154to14"><!></div>');function es(d,s){$e(s,!1);
17let i=m(s,"dependencies",12),c=m(s,"short_root",12),v=m(s,"root",12),_=m(s,"api_prefix",12,""),H=m(s,"current_language",12),O=m(s,"username",12),Z=B(),A=B(),x=B(),w=B(),E=m(s,"api_calls",28,()=>[]);async function ce(){return await(await fetch(v().replace(/\/$/,"")+_()+"/info/?all_endpoints=true")).json()}let ee,N=B([]),h=B([]),l=B([]);function P(C,f){const L=`/${i()[C.fn_index].api_name}`,j=C.data.filter(z=>typeof z<"u").map((z,X)=>{if(ee[L]){const y=ee[L].parameters[X];if(!y)return;const Y=y.parameter_name,oe=y.python_type.type;if(f==="py")return` ${Y}=${ut(z,oe,"py")}`;if(f==="js")return` ${Y}: ${ut(z,oe,"js")}`;if(f==="bash")return` "${Y}": ${ut(z,oe,"bash")}`}return` ${ut(z,void 0,f)}`}).filter(z=>typeof z<"u").join(`, 18`);if(j){if(f==="py")return`${j}, 19`;if(f==="js")return`{ 20${j}, 21}`;if(f==="bash")return`{ 22${j} 23}`}return f==="py"?"":` 24`}Bt(async()=>{ee=(await ce()).named_endpoints;let f=E().map(z=>P(z,"py")),L=E().map(z=>P(z,"js")),de=E().map(z=>P(z,"bash")),j=E().map(z=>i()[z.fn_index].api_name||"");S(N,f.map((z,X)=>({call:z,api_name:j[X]}))),S(h,L.map((z,X)=>({call:z,api_name:j[X]}))),S(l,de.map((z,X)=>({call:z,api_name:j[X]}))),await Vt(),S(A,e(Z).innerText)});var U={get dependencies(){return i()},set dependencies(C){i(C),g()},get short_root(){return c()},set short_root(C){c(C),g()},get root(){return v()},set root(C){v(C),g()},get api_prefix(){return _()},set api_prefix(C){_(C),g()},get current_language(){return H()},set current_language(C){H(C),g()},get username(){return O()},set username(C){O(C),g()},get api_calls(){return E()},set api_calls(C){E(C),g()}};st();var T=Ka(),F=a(T);return Le(F,{border_mode:"focus",children:(C,f)=>{var L=Ge(),de=re(L);{var j=X=>{var y=Ya(),Y=a(y),oe=a(Y);ze(oe,{get code(){return e(A)}}),t(Y);var te=n(Y,2),I=a(te),$=n(a(I),4),K=a($);t($);var ne=n($);{var se=q=>{var W=xe();R(()=>V(W,`, auth=("${O()??""}", **password**)`)),o(q,W)};G(ne,q=>{O()!==null&&q(se)})}var ae=n(ne,2);lt(ae,1,()=>e(N),ct,(q,W)=>{let ie=()=>e(W).call,_e=()=>e(W).api_name;we();var fe=Fa(),le=n(re(fe)),ue=a(le),qe=n(ue),We=a(qe);t(qe),we(),t(le),R(()=>{V(ue,`predict( 25${ie()??""} api_name=`),V(We,`"/${_e()??""}"`)}),o(q,fe)}),t(I),t(te),Tt(te,q=>S(Z,q),()=>e(Z)),t(y),R(()=>V(K,`"${c()??""}"`)),o(X,y)},z=X=>{var y=Ge(),Y=re(y);{var oe=I=>{var $=Ja(),K=a($),ne=a(K);{let le=Ae(()=>(e(x),k(()=>e(x)?.innerText)));ze(ne,{get code(){return e(le)}})}t(K);var se=n(K,2),ae=a(se),q=n(a(ae)),W=a(q);t(q);var ie=n(q);{var _e=le=>{var ue=xe();R(()=>V(ue,`, {auth: ["${O()??""}", **password**]}`)),o(le,ue)};G(ie,le=>{O()!==null&&le(_e)})}var fe=n(ie,2);lt(fe,1,()=>e(h),ct,(le,ue)=>{let qe=()=>e(ue).call,We=()=>e(ue).api_name;we();var De=Wa(),rt=n(re(De)),mt=a(rt);t(rt);var M=n(rt);{var r=u=>{var J=xe();R(()=>V(J,`, ${qe()??""}`)),o(u,J)};G(M,u=>{qe()&&u(r)})}we(),R(()=>V(mt,` 26 "/${We()??""}"`)),o(le,De)}),t(ae),t(se),Tt(se,le=>S(x,le),()=>e(x)),t($),R(()=>V(W,`"${c()??""}"`)),o(I,$)},te=I=>{var $=Ge(),K=re($);{var ne=se=>{var ae=Xa(),q=a(ae),W=a(q);{let _e=Ae(()=>(e(w),k(()=>e(w)?.innerText)));ze(W,{get code(){return e(_e)}})}t(q);var ie=n(q,2);lt(ie,5,()=>e(l),ct,(_e,fe)=>{let le=()=>e(fe).call,ue=()=>e(fe).api_name;var qe=Qa(),We=re(qe),De=a(We);t(We),we(2),R(()=>V(De,`curl -X POST ${c()??""}call/v2/${ue()??""} -s -H "Content-Type: application/json" -d '${le()??""}' \\ 27 | awk -F'"' '{ print $4}' \\ 28 | read EVENT_ID; curl -N ${c()??""}call/${ue()??""}/$EVENT_ID`)),o(_e,qe)}),t(ie),Tt(ie,_e=>S(w,_e),()=>e(w)),t(ae),o(se,ae)};G(K,se=>{H()==="bash"&&se(ne)},!0)}o(I,$)};G(Y,I=>{H()==="javascript"?I(oe):I(te,!1)},!0)}o(X,y)};G(de,X=>{H()==="python"?X(j):X(z,!1)})}o(C,L)},$$slots:{default:!0}}),t(T),o(d,T),Ce(U)}const ts="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20aria-hidden='true'%20focusable='false'%20role='img'%20width='1em'%20height='1em'%20preserveAspectRatio='xMidYMid%20meet'%20viewBox='0%200%2032%2032'%20%3e%3cpath%20d='M15.84.5a16.4,16.4,0,0,0-3.57.32C9.1,1.39,8.53,2.53,8.53,4.64V7.48H16v1H5.77a4.73,4.73,0,0,0-4.7,3.74,14.82,14.82,0,0,0,0,7.54c.57,2.28,1.86,3.82,4,3.82h2.6V20.14a4.73,4.73,0,0,1,4.63-4.63h7.38a3.72,3.72,0,0,0,3.73-3.73V4.64A4.16,4.16,0,0,0,19.65.82,20.49,20.49,0,0,0,15.84.5ZM11.78,2.77a1.39,1.39,0,0,1,1.38,1.46,1.37,1.37,0,0,1-1.38,1.38A1.42,1.42,0,0,1,10.4,4.23,1.44,1.44,0,0,1,11.78,2.77Z'%20fill='%235a9fd4'%20%3e%3c/path%3e%3cpath%20d='M16.16,31.5a16.4,16.4,0,0,0,3.57-.32c3.17-.57,3.74-1.71,3.74-3.82V24.52H16v-1H26.23a4.73,4.73,0,0,0,4.7-3.74,14.82,14.82,0,0,0,0-7.54c-.57-2.28-1.86-3.82-4-3.82h-2.6v3.41a4.73,4.73,0,0,1-4.63,4.63H12.35a3.72,3.72,0,0,0-3.73,3.73v7.14a4.16,4.16,0,0,0,3.73,3.82A20.49,20.49,0,0,0,16.16,31.5Zm4.06-2.27a1.39,1.39,0,0,1-1.38-1.46,1.37,1.37,0,0,1,1.38-1.38,1.42,1.42,0,0,1,1.38,1.38A1.44,1.44,0,0,1,20.22,29.23Z'%20fill='%23ffd43b'%20%3e%3c/path%3e%3c/svg%3e",as="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20aria-hidden='true'%20focusable='false'%20role='img'%20width='1em'%20height='1em'%20preserveAspectRatio='xMidYMid%20meet'%20viewBox='0%200%2032%2032'%20%3e%3crect%20width='32'%20height='32'%20fill='%23f7df1e'%3e%3c/rect%3e%3cpath%20d='M21.5,25a3.27,3.27,0,0,0,3,1.83c1.25,0,2-.63,2-1.49,0-1-.81-1.39-2.19-2L23.56,23C21.39,22.1,20,20.94,20,18.49c0-2.25,1.72-4,4.41-4a4.44,4.44,0,0,1,4.27,2.41l-2.34,1.5a2,2,0,0,0-1.93-1.29,1.31,1.31,0,0,0-1.44,1.29c0,.9.56,1.27,1.85,1.83l.75.32c2.55,1.1,4,2.21,4,4.72,0,2.71-2.12,4.19-5,4.19a5.78,5.78,0,0,1-5.48-3.07Zm-10.63.26c.48.84.91,1.55,1.94,1.55s1.61-.39,1.61-1.89V14.69h3V25c0,3.11-1.83,4.53-4.49,4.53a4.66,4.66,0,0,1-4.51-2.75Z'%20%3e%3c/path%3e%3c/svg%3e",ss="data:image/svg+xml,%3csvg%20xmlns='http://www.w3.org/2000/svg'%20xmlns:xlink='http://www.w3.org/1999/xlink'%20version='1.1'%20id='Layer_1'%20x='0px'%20y='0px'%20viewBox='0%200%20150%20150'%20style='enable-background:new%200%200%20150%20150;%20background-color:%20%2372a824;'%20xml:space='preserve'%3e%3cscript%20xmlns=''/%3e%3cstyle%20type='text/css'%3e%20.st0{fill:%23FFFFFF;}%20%3c/style%3e%3cg%3e%3cpath%20class='st0'%20d='M118.9,40.3L81.7,18.2c-2.2-1.3-4.7-2-7.2-2s-5,0.7-7.2,2L30.1,40.3c-4.4,2.6-7.2,7.5-7.2,12.8v44.2%20c0,5.3,2.7,10.1,7.2,12.8l37.2,22.1c2.2,1.3,4.7,2,7.2,2c2.5,0,5-0.7,7.2-2l37.2-22.1c4.4-2.6,7.2-7.5,7.2-12.8V53%20C126.1,47.8,123.4,42.9,118.9,40.3z%20M90.1,109.3l0.1,3.2c0,0.4-0.2,0.8-0.5,1l-1.9,1.1c-0.3,0.2-0.5,0-0.6-0.4l0-3.1%20c-1.
286,0.7-3.2,0.8-4.3,0.4c-0.2-0.1-0.3-0.4-0.2-0.7l0.7-2.9c0.1-0.2,0.2-0.5,0.3-0.6c0.1-0.1,0.1-0.1,0.2-0.1%20c0.1-0.1,0.2-0.1,0.3,0c1.1,0.4,2.6,0.2,3.9-0.5c1.8-0.9,2.9-2.7,2.9-4.5c0-1.6-0.9-2.3-3-2.3c-2.7,0-5.2-0.5-5.3-4.5%20c0-3.3,1.7-6.7,4.4-8.8l0-3.2c0-0.4,0.2-0.8,0.5-1l1.8-1.2c0.3-0.2,0.5,0,0.6,0.4l0,3.2c1.3-0.5,2.5-0.7,3.6-0.4%20c0.2,0.1,0.3,0.4,0.2,0.7l-0.7,2.8c-0.1,0.2-0.2,0.4-0.3,0.6c-0.1,0.1-0.1,0.1-0.2,0.1c-0.1,0-0.2,0.1-0.3,0%20c-0.5-0.1-1.6-0.4-3.4,0.6c-1.9,1-2.6,2.6-2.5,3.8c0,1.5,0.8,1.9,3.3,1.9c3.4,0.1,4.9,1.6,5,5C94.7,103.4,92.9,107,90.1,109.3z%20M109.6,103.9c0,0.3,0,0.6-0.3,0.7l-9.4,5.7c-0.2,0.1-0.4,0-0.4-0.3v-2.4c0-0.3,0.2-0.5,0.4-0.6l9.3-5.5c0.2-0.1,0.4,0,0.4,0.3%20V103.9z%20M116.1,49.6L80.9,71.3c-4.4,2.6-7.6,5.4-7.6,10.7v43.4c0,3.2,1.3,5.2,3.2,5.8c-0.6,0.1-1.3,0.2-2,0.2%20c-2.1,0-4.1-0.6-5.9-1.6l-37.2-22.1c-3.6-2.2-5.9-6.2-5.9-10.5V53c0-4.3,2.3-8.4,5.9-10.5l37.2-22.1c1.8-1.1,3.8-1.6,5.9-1.6%20s4.1,0.6,5.9,1.6l37.2,22.1c3.1,1.8,5.1,5,5.7,8.5C122.1,48.4,119.3,47.7,116.1,49.6z'/%3e%3c/g%3e%3c/svg%3e";var rs=b('<span class="code svelte-17pn6bc"></span>'),ns=b('<hr class="hr svelte-17pn6bc"/> <div style="margin:10px;"><p><!> <span class="code highlight svelte-17pn6bc"><!></span></p> <p class="desc svelte-17pn6bc"> </p></div>',1),is=b('<div class="load-wrap"><!></div>'),os=b('<h4 class="svelte-17pn6bc"><div class="toggle-icon svelte-17pn6bc"><div class="toggle-dot toggle-right svelte-17pn6bc"></div></div> Returns <!></h4> <div></div> <!>',1);function ls(d,s){$e(s,!1);let i=m(s,"is_running",12),c=m(s,"endpoint_returns",12),v=m(s,"js_returns",12),_=m(s,"current_language",12);var H={get is_running(){return i()},set is_running(h){i(h),g()},get endpoint_returns(){return c()},set endpoint_returns(h){c(h),g()},get js_returns(){return v()},set js_returns(h){v(h),g()},get current_language(){return _()},set current_language(h){_(h),g()}};st();var O=os(),Z=re(O),A=n(a(Z),2);{var x=h=>{var l=xe();R(()=>V(l,`${_()=="python"?"tuple":_()=="bash"?"array":"list"} of ${p(c()),k(()=>c().length)??""} 29 elements`)),o(h,l)},w=h=>{var l=xe();R(()=>V(l,`${_()=="bash"?"an array of ":""}1 element`)),o(h,l)};G(A,h=>{p(c()),k(()=>c().length>1)?h(x):h(w,!1)})}t(Z);var E=n(Z,2);let ce;lt(E,5,c,ct,(h,l,P)=>{let U=()=>e(l).label,T=()=>e(l).python_type,F=()=>e(l).component;var C=ns(),f=n(re(C),2),L=a(f),de=a(L);{var j=I=>{var $=rs();$.textContent=`[${P}]`,o(I,$)};G(de,I=>{p(c()),k(()=>c().length>1)&&I(j)})}var z=n(de,2),X=a(z);{var y=I=>{var $=xe();R(()=>V($,(T(),k(()=>T().type)))),o(I,$)},Y=I=>{var $=Ge(),K=re($);{var ne=ae=>{var q=xe();R(()=>V(q,(T(),k(()=>T().type)))),o(ae,q)},se=ae=>{var q=xe();R(()=>V(q,(p(v()),k(()=>v()[P].type)))),o(ae,q)};G(K,ae=>{_()==="bash"?ae(ne):ae(se,!1)},!0)}o(I,$)};G(X,I=>{_()==="python"?I(y):I(Y,!1)})}t(z),t(L);var oe=n(L,2),te=a(oe);t(oe),t(f),R(()=>V(te,`The output value that appears in the "${U()??""}" ${F()??""} 30 component.`)),o(h,C)}),t(E);var ee=n(E,2);{var N=h=>{var l=is(),P=a(l);Wt(P,{margin:!1}),t(l),o(h,l)};G(ee,h=>{i()&&h(N)})}return R(()=>ce=ke(E,1,"",null,ce,{hide:i()})),o(d,O),Ce(H)}const cs="data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjE0IDIyIDEyMiAxMDYiIHN0eWxlPSJiYWNrZ3JvdW5kLWNvbG9yOiAjZmZmZmZmOyI+CjxyZWN0IHg9IjIyIiB5PSIyOCIgd2lkdGg9IjEwNiIgaGVpZ2h0PSI5NCIgcng9IjgiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzM3NDE1MSIgc3Ryb2tlLXdpZHRoPSI2Ii8+CjxyZWN0IHg9IjIyIiB5PSIyOCIgd2lkdGg9IjEwNiIgaGVpZ2h0PSIyMCIgcng9IjgiIGZpbGw9IiMzNzQxNTEiIGZpbGwtb3BhY2l0eT0iMC4wOCIvPgo8Y2lyY2xlIGN4PSIzOCIgY3k9IjM4IiByPSI0IiBmaWxsPSIjZmY1ZjU3Ii8+CjxjaXJjbGUgY3g9IjUyIiBjeT0iMzgiIHI9IjQiIGZpbGw9IiNmZWJjMmUiLz4KPGNpcmNsZSBjeD0iNjYiIGN5PSIzOCIgcj0iNCIgZmlsbD0iIzI4Yzg0MCIvPgo8dGV4dCB4PSIzOCIgeT0iNzYiIGZpbGw9IiMzNzQxNTEiIGZvbnQtZmFtaWx5PSJtb25vc3BhY2UiIGZvbnQtc2l6ZT0iMjIiIGZvbnQtd2VpZ2h0PSJib2xkIj4mZ3Q7XzwvdGV4dD4KPHJlY3QgeD0iMzgiIHk9Ijg4IiB3aWR0aD0iNTAiIGhlaWdodD0iNCIgcng9IjIiIGZpbGw9IiMzNzQxNTEiIGZpbGwtb3BhY2l0eT0iMC4zNSIvPgo8cmVjdCB4PSIzOCIgeT0iMTAwIiB3aWR0aD0iMzUiIGhlaWdodD0iNCIgcng9IjIiIGZpbGw9IiMzNzQxNTEiIGZpbGwtb3BhY2l0eT0iMC4yIi8+Cjwvc3ZnPgo=";var ds=b('<code class="svelte-1cyp2hi"><div class="copy svelte-1cyp2hi"><!></div> <div><pre class="svelte-1cyp2hi"> </pre></div></code>'),ps=b('<code class="svelte-1cyp2hi"><div class="copy svelte-1cyp2hi"><!></div> <div><pre class="svelte-1cyp2hi"> </pre></div></code>'),vs=b('<code class="svelte-1cyp2hi"><div class="copy svelte-1cyp2hi"><!></div> <div><pre class="svelte-1cyp2hi"> </pre></div></code>'),_s=b(`<div class="skill-content svelte-1cyp2hi"><p class="padded svelte-1cyp2hi">1. Make sure you are using the latest version of Gradio:</p> <!> <p class="padded svelte-1cyp2hi">
302. Install the usage of this Space as a Skill for your coding agent by 31 running this in your terminal:</p> <!> <p class="hint svelte-1cyp2hi">Instead of <span class="inline-code svelte-1cyp2hi">--claude</span>, you can use <span class="inline-code svelte-1cyp2hi">--cursor</span>, <span class="inline-code svelte-1cyp2hi">--codex</span>, or <span class="inline-code svelte-1cyp2hi">--opencode</span>. Combine flags to install for 32 multiple agents. Use <span class="inline-code svelte-1cyp2hi">--global</span> to install user-level 33 instead of per-project.</p> <p class="padded svelte-1cyp2hi">3. This will add a skill to your coding agent that describes how to use this 34 Space via Python, JavaScript, and cURL API. The skill will look like this:</p> <!></div>`);function us(d,s){$e(s,!1);const i=B(),c=B(),v=B(),_=B(),H=B(),O=B(),Z=B();let A=m(s,"space_id",12);ve(()=>p(A()),()=>{S(i,A()||"")}),ve(()=>e(i),()=>{S(c,e(i).replace("/","-"))}),ve(()=>{},()=>{S(v,"pip install --upgrade gradio")}),ve(()=>e(i),()=>{S(_,`gradio skills add ${e(i)} --claude`)}),ve(()=>e(i),()=>{S(H,`gradio skills add ${e(i)} --cursor`)}),ve(()=>e(i),()=>{S(O,`gradio skills add ${e(i)} --codex`)}),ve(()=>(e(c),e(i)),()=>{S(Z,`--- 35name: ${e(c)} 36description: Use the ${e(i)} Gradio Space via API. Provides Python, JavaScript, and cURL usage examples. 37--- 38 39# ${e(i)} 40 41This skill describes how to use the ${e(i)} Gradio Space programmatically. 42 43## API Endpoints 44...`)}),_t();var x={get space_id(){return A()},set space_id(N){A(N),g()}},w=_s(),E=n(a(w),2);Le(E,{children:(N,h)=>{var l=ds(),P=a(l),U=a(P);ze(U,{get code(){return e(v)}}),t(P);var T=n(P,2),F=a(T),C=a(F);t(F),t(T),t(l),R(()=>V(C,`$ ${e(v)??""}`)),o(N,l)},$$slots:{default:!0}});var ce=n(E,4);Le(ce,{children:(N,h)=>{var l=ps(),P=a(l),U=a(P);ze(U,{get code(){return e(_)}}),t(P);var T=n(P,2),F=a(T),C=a(F);t(F),t(T),t(l),R(()=>V(C,`$ ${e(_)??""}`)),o(N,l)},$$slots:{default:!0}});var ee=n(ce,6);return Le(ee,{children:(N,h)=>{var l=vs(),P=a(l),U=a(P);ze(U,{get code(){return e(Z)}}),t(P);var T=n(P,2),F=a(T),C=a(F,!0);t(F),t(T),t(l),R(()=>V(C,e(Z))),o(N,l)},$$slots:{default:!0}}),t(w),o(d,w),Ce(x)}const Ut=""+new URL("mcp-DNm9doVd.svg",import.meta.url).href,hs="data:image/svg+xml,%3csvg%20width='200'%20height='200'%20viewBox='0%200%20100%20100'%20fill='none'%20xmlns='http://www.w3.org/2000/svg'%3e%3cline%20x1='50'%20y1='20'%20x2='50'%20y2='35'%20stroke='black'%20stroke-width='4'%20stroke-linecap='round'/%3e%3ccircle%20cx='50'%20cy='15'%20r='5'%20stroke='black'%20stroke-width='4'%20fill='none'/%3e%3crect%20x='15'%20y='35'%20width='70'%20height='50'%20rx='8'%20stroke='black'%20stroke-width='4'%20fill='none'/%3e%3crect%20x='5'%20y='48'%20width='10'%20height='24'%20rx='2'%20stroke='black'%20stroke-width='4'%20fill='none'/%3e%3crect%20x='85'%20y='48'%20width='10'%20height='24'%20rx='2'%20stroke='black'%20stroke-width='4'%20fill='none'/%3e%3ccircle%20cx='35'%20cy='60'%20r='4'%20stroke='black'%20stroke-width='4'%20fill='none'/%3e%3ccircle%20cx='65'%20cy='60'%20r='4'%20stroke='black'%20stroke-width='4'%20fill='none'/%3e%3c/svg%3e",ms=""+new URL("hf-logo-8sK58_pS.svg",import.meta.url).href;var gs=b('<button type="button"> </button>'),fs=b(`<div class="mcp-url svelte-1uo4thf"><label for="mcp-server-url" class="svelte-1uo4thf"><span class="status-indicator active svelte-1uo4thf">â</span>MCP Server URL 45 (Streamable HTTP)</label> <div class="textbox svelte-1uo4thf"><input id="mcp-server-url" type="text" readonly="" class="svelte-1uo4thf"/> <!></div></div>`),ys=b('<!> <p class="svelte-1uo4thf"> </p>',1),bs=b('<div class="tool-selection-controls svelte-1uo4thf"><button class="select-all-btn svelte-1uo4thf">Select All</button> <button class="select-none-btn svelte-1uo4thf">Select None</button></div>'),ws=b('<input type="checkbox" class="tool-checkbox svelte-1uo4thf"/>'),xs=b('<div class="tool-analytics-wrapper svelte-1uo4thf" style="margin-left: 1em;"><span class="tool-analytics svelte-1uo4thf" style="color: var(--body-text-color-subdued);"> </span></div>'),$s=b('<div class="parameter svelte-1uo4thf"><code class="svelte-1uo4thf"> </code> <span class="parameter-type svelte-1uo4thf"> </span> <p class="parameter-description svelte-1uo4thf"> </p></div>'),Cs=b('<div class="tool-parameters svelte-1uo4thf"></div>'),Is=b('<p class="svelte-1uo4thf">Takes no input parameters</p>'),ks=b('<div class="tool-content svelte-1uo4thf"><!></div>'),js=b('<div class="tool-item svelte-1uo4thf"><div class="tool-header-wrapper svelte-1uo4thf"><!> <button class="tool-header svelte-1uo4thf"><span style="display: inline-block" class="svelte-1uo4thf"><span style="display: inline-block; padding-right: 6px; vertical-align: sub" class="svelte-1uo4thf"><!></span> <span class="tool-name svelte-1uo4thf"> </span> <span class="tool-description svelte-1uo4thf"> </span> <!></span> <span class="tool-arrow svelte-1uo4thf"> </span></button></div> <!></div>
45'),Ps=b('<code class="svelte-1uo4thf"><div class="copy svelte-1uo4thf"><!></div> <div class="svelte-1uo4thf"><pre class="svelte-1uo4thf"> </pre></div></code>'),Ts=b('<code class="svelte-1uo4thf"><div class="copy svelte-1uo4thf"><!></div> <div class="svelte-1uo4thf"><pre class="svelte-1uo4thf"> </pre></div></code>'),Ns=b(`<div class="file-upload-section svelte-1uo4thf"><label class="checkbox-label svelte-1uo4thf"><input type="checkbox" class="checkbox svelte-1uo4thf"/> Include Gradio file upload tool</label> <p class="file-upload-explanation svelte-1uo4thf">The <code class="svelte-1uo4thf">upload_files_to_gradio</code> tool uploads files from your 46 local <code class="svelte-1uo4thf">UPLOAD_DIRECTORY</code> (or any of its subdirectories) to 47 the Gradio app. This is needed because MCP servers require files to be 48 provided as URLs. You can omit this tool if you prefer to upload files 49 manually. This tool requires <a href="https://docs.astral.sh/uv/getting-started/installation/" target="_blank" class="svelte-1uo4thf">uv</a> to be installed.</p></div>`),Ss=b(`<div class="transport-selection svelte-1uo4thf"><div class="snippets svelte-1uo4thf"><span class="transport-label svelte-1uo4thf">Transport:</span> <!></div></div> <!> <div class="tool-selection svelte-1uo4thf"><strong class="svelte-1uo4thf"> <span style="display: inline-block; vertical-align: sub;" class="svelte-1uo4thf"><!></span>), Resources (<span style="display: inline-block; vertical-align: sub;" class="svelte-1uo4thf"><!></span>), and Prompts (<span style="display: inline-block; vertical-align: sub;" class="svelte-1uo4thf"><!></span>)</strong> <!></div> <div class="mcp-tools svelte-1uo4thf"></div> <p class="svelte-1uo4thf"> </p> <div><strong class="svelte-1uo4thf">Streamable HTTP Transport</strong>: To add this MCP to clients that 50 support Streamable HTTP, simply add the following configuration to your MCP 51 config. <p class="svelte-1uo4thf"> </p> <!></div> <div><strong class="svelte-1uo4thf">STDIO Transport</strong>: For clients that only support stdio (e.g. 52 Claude Desktop), first <a href="https://nodejs.org/en/download/" target="_blank" class="svelte-1uo4thf">install Node.js</a>. Then, you can use the following command: <p class="svelte-1uo4thf"> </p> <!></div> <!> <p class="svelte-1uo4thf"> </p> <p class="svelte-1uo4thf"><a target="_blank" class="svelte-1uo4thf">Read more about MCP in the Gradio docs</a></p>`,1),Ms=b(`This Gradio app can also serve as an MCP server, with an MCP tool 53 corresponding to each API endpoint. To enable this, launch this Gradio app 54 with <code class="svelte-1uo4thf">.launch(mcp_server=True)</code> or set the <code class="svelte-1uo4thf">GRADIO_MCP_SERVER</code> env variable to <code class="svelte-1uo4thf">"True"</code>.`,1);function zs(d,s){$e(s,!1);const i=B(),c=B(),v=B();let _=m(s,"mcp_server_active",12),H=m(s,"mcp_server_url_streamable",12),O=m(s,"root",12),Z=m(s,"tools",12),A=m(s,"all_tools",28,()=>[]),x=m(s,"selected_tools",28,()=>new Set),w=m(s,"mcp_json_stdio",12),E=m(s,"file_data_present",12),ce=m(s,"mcp_docs",12),ee=m(s,"analytics",12),N=m(s,"config_snippets",12),h=B("streamable_http"),l=B(!0);const P=[["streamable_http","Streamable HTTP"],["stdio","STDIO"]],U={tool:Et,resource:Ht,prompt:Zt};function T(j,z){if(!j)return null;const X=JSON.parse(JSON.stringify(j));if(z&&E()){const y={command:"uvx",args:["--from","gradio[mcp]","gradio","upload-mcp",O(),"<UPLOAD_DIRECTORY>"]};X.mcpServers.upload_files_to_gradio=y}else delete X.mcpServers?.upload_files_to_gradio;return X}ve(()=>p(H()),()=>{S(i,H())}),ve(()=>(p(w()),p(H()),e(l)),()=>{S(c,T(w()?{mcpServers:{gradio:{url:H()}}}:null,e(l)))}),ve(()=>(p(w()),e(l)),()=>{S(v,T(w(),e(l)))}),ve(()=>(e(c),e(v)),()=>{N({streamable_http:JSON.stringify(e(c),null,2),stdio:JSON.stringify(e(v),null,2)})}),_t();var F={get mcp_server_active(){return _()},set mcp_server_active(j){_(j),g()},get mcp_server_url_streamable(){return H()},set mcp_server_url_streamable(j){H(j),g()},get root(){return O()},set root(j){O(j),g()},get tools(){return Z()},set tools(j){Z(j),g()},get all_tools(){return A()},set all_tools(j){A(j),g()},get selected_tools(){return x()},set selected_tools(j){x(j),g()},get mcp_json_stdio(){return w()},set mcp_json_stdio(j){w(j),g()},get file_data_present(){return E()},set file_data_present(j){E(j),g()},get mcp_docs(){return ce()},set mcp_docs(j){ce(j),g()},get analytics(){return ee()},set analytics(j){ee(j),g()},get config_snippets(){return N()},set config_snippets(j){N(j),g()}};st();var C=Ge(),f=re(C);{var L=j=>{var z=Ss(),X=re(z),y=a(X),Y=n(a(y),2);lt(Y,1,()=>P,ct,(Q,D)=>{var pe=At(()=>qt(e(D),2));let ge=()=>e(pe)[0],Ne=()=>e(pe)[1];var ye=gs(),Se=a(ye,!0);t(ye),R(()=>{ke(ye,1,`snippet ${e(h)===ge()?"current-lang":"inactive-lang"}`,"svelte-1uo4thf"),V(Se,Ne())}),Te("click",ye,()=>S(h,ge())),o(Q,ye)}),t(y),t(X);var oe=n(X,2);{var te=Q=>{var D=ys(),pe=re(D);Le(pe,{children:(ge,Ne)=>{var ye=fs(),Se=n(a(ye),2),Ze=a(Se);zt(Ze);var Je=n(Ze,2);ze(Je,{get code(){return e(i)}}),t(Se),t(ye),R(()=>Kt(Ze,e(i))),o(ge,ye)},$$slots:{default:!0}}),we(2),o(Q,D)};G(oe,Q=>{e(h)!=="stdio"&&Q(te)})}var I=n(oe,2),$=a(I),K=a($),ne=n(K),se=a(ne);Et(se,{}),t(ne);var ae=n(ne,2),q=a(ae);Ht(q,{}),t(ae);var W=n(ae,2),ie=a(W);Zt(ie,{}),t(W),we(),t($);var _e=n($,2);{var fe=Q=>{var D=bs(),pe=a(D),ge=n(pe,2);t(D),Te("click",pe,()=>{x(new Set(A().map(Ne=>Ne.name)))}),Te("click",ge,()=>{x(new Set)}),o(Q,D)};G(_e,Q=>
54{p(A()),k(()=>A().length>0)&&Q(fe)})}t(I);var le=n(I,2);lt(le,5,()=>(p(A()),p(Z()),k(()=>A().length>0?A():Z())),ct,(Q,D,pe)=>{const ge=Ae(()=>(p(ee()),e(D),k(()=>ee()[e(D).meta.endpoint_name]?.success_rate||0)));var Ne=js(),ye=a(Ne),Se=a(ye);{var Ze=be=>{var he=ws();zt(he),R(He=>{Xt(he,He),he.disabled=e(h)!=="streamable_http",Pt(he,e(h)!=="streamable_http"?"opacity: 0.5; cursor: not-allowed;":"")},[()=>(p(x()),e(D),e(h),k(()=>x().has(e(D).name)||e(h)!=="streamable_http"))]),Te("change",he,He=>{He.currentTarget.checked?x().add(e(D).name):x().delete(e(D).name),x(x())}),o(be,he)};G(Se,be=>{p(A()),k(()=>A().length>0)&&be(Ze)})}var Je=n(Se,2),dt=a(Je),pt=a(dt),gt=a(pt);{var $t=be=>{const he=Ae(()=>(e(D),k(()=>U[e(D).meta.mcp_type])));e(he)(be,{})};G(gt,be=>{e(D),k(()=>U[e(D).meta.mcp_type])&&be($t)})}t(pt);var nt=n(pt,2),bt=a(nt,!0);t(nt);var Re=n(nt,2),me=a(Re,!0);t(Re);var Be=n(Re,2);{var Ve=be=>{const he=Ae(()=>(p(ee()),e(D),k(()=>ee()[e(D).meta.endpoint_name]))),He=Ae(()=>(p(e(he)),k(()=>e(he).process_time_percentiles["50th"])));var ft=xs(),wt=a(ft),it=a(wt);t(wt),t(ft),R((Ie,Pe)=>V(it,`${p(e(he)),k(()=>e(he).total_requests)??""} requests (${Ie??""}% successful, p50: ${Pe??""})`),[()=>(p(e(ge)),k(()=>
54Math.round(e(ge)*100))),()=>(p(ot),p(e(He)),k(()=>ot(e(He))))]),o(be,ft)};G(Be,be=>{p(ee()),e(D),k(()=>ee()[e(D).meta.endpoint_name])&&be(Ve)})}t(dt);var Qe=n(dt,2),et=a(Qe,!0);t(Qe),t(Je),t(ye);var je=n(ye,2);{var Ye=be=>{var he=ks(),He=a(he);{var ft=it=>{var Ie=Cs();lt(Ie,5,()=>(e(D),k(()=>Object.entries(e(D).parameters))),ct,(Pe,Xe)=>{var vt=At(()=>qt(e(Xe),2));let tt=()=>e(vt)[0],Me=()=>e(vt)[1];var Ke=$s(),at=a(Ke),yt=a(at,!0);t(at);var Oe=n(at,2),Ue=a(Oe);t(Oe);var Fe=n(Oe,2),xt=a(Fe,!0);t(Fe),t(Ke),R(Ct=>{V(yt,tt()),V(Ue,`(${Me(),k(()=>Me().type)??""}${Ct??""})`),V(xt,(Me(),k(()=>Me().description?Me().description:"â ï¸ No description for this parameter in function docstring")))},[()=>(Me(),k(()=>Me().default!==void 0?`, default: ${JSON.stringify(Me().default)}`:""))]),o(Pe,Ke)}),t(Ie),o(it,Ie)},wt=it=>{var Ie=Is();o(it,Ie)};G(He,it=>{e(D),k(()=>Object.keys(e(D).parameters).length>0)?it(ft):it(wt,!1)})}t(he),o(be,he)};G(je,be=>{e(D),k(()=>e(D).expanded)&&be(Ye)})}t(Ne),R(()=>{V(bt,(e(D),k(()=>e(D).name))),V(me,(e(D),k(()=>e(D).description?e(D).description:"â ï¸ No description provided in function docstring"))),V(et,(e(D),k(()=>e(D).expanded?"â¼":"â¶")))}),Te("click",Je,()=>(e(D).expanded=!e(D).expanded,ta(()=>(A(),Z())))),o(Q,Ne)}),t(le);var ue=n(le,4);let qe;var We=n(a(ue),4);Le(We,{children:(Q,D)=>{var pe=Ps(),ge=a(pe),Ne=a(ge);ze(Ne,{get code(){return p(N()),k(()=>N().streamable_http)}}),t(ge);var ye=n(ge,2),Se=a(ye),Ze=a(Se,!0);t(Se),t(ye),t(pe),R(()=>V(Ze,(p(N()),k(()=>N().streamable_http)))),o(Q,pe)},$$slots:{default:!0}}),t(ue);var De=n(ue,2);let rt;var mt=n(a(De),6);Le(mt,{children:(Q,D)=>{var pe=Ts(),ge=a(pe),Ne=a(ge);ze(Ne,{get code(){return p(N()),k(()=>N().stdio)}}),t(ge);var ye=n(ge,2),Se=a(ye),Ze=a(Se,!0);t(Se),t(ye),t(pe),R(()=>V(Ze,(p(N()),k(()=>N().stdio)))),o(Q,pe)},$$slots:{default:!0}}),t(De);var M=n(De,2);{var r=Q=>{var D=Ns(),pe=a(D),ge=a(pe);zt(ge),we(),t(pe),we(2),t(D),ra(ge,()=>e(l),Ne=>S(l,Ne)),o(Q,D)};G(M,Q=>{E()&&Q(r)})}var u=n(M,4),J=a(u);t(u),R(()=>{V(K,`${p(A()),p(Z()),k(()=>A().length>0?A().length:Z().length)??""} Available MCP Tools 55 (`),qe=ke(ue,1,"svelte-1uo4thf",null,qe,{hidden:e(h)!=="streamable_http"}),rt=ke(De,1,"svelte-1uo4thf",null,rt,{hidden:e(h)!=="stdio"}),Ee(J,"href",ce())}),o(j,z)},de=j=>{var z=Ms();we(6),o(j,z)};G(f,j=>{_()?j(L):j(de,!1)})}return o(d,C),Ce(F)}var As=ht('<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.75" stroke-linecap="round" stroke-linejoin="round"><path d="M7 7h10v10"></path><path d="M7 17 17 7"></path></svg>');function qs(d,s){$e(s,!1);let i=m(s,"classNames",12,"");var c={get classNames(){return i()},set classNames(_){i(_),g()}},v=As();return R(()=>ke(v,0,Nt(i()||"menu-icon-arrow"),"svelte-1s9m4x9")),o(d,v),Ce(c)}var Ds=ht('<svg width="1em" height="1em" viewBox="0 0 12 7" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M1 1L6 6L11 1" stroke="currentColor"></path></svg>');function Rs(d,s){$e(s,!1);let i=m(s,"classNames",12,"");var c={get classNames(){return i()},set classNames(_){i(_),g()}},v=Ds();return R(()=>ke(v,0,Nt(i()),"svelte-1u0oj9c")),o(d,v),Ce(c)}var Os=ht('<svg width="1em" height="1em" viewBox="5 5 22 22" fill="none" xmlns="http://www.w3.org/2000/svg"><title>HuggingChat</title><path d="M16.0006 25.9992C13.8266 25.999 11.7118 25.2901 9.97686 23.9799C8.2419 22.6698 6.98127 20.8298 6.38599 18.7388C5.79071 16.6478 5.89323 14.4198 6.678 12.3923C7.46278 10.3648 8.88705 8.64837 10.735 7.50308C12.5829 6.35779 14.7538 5.84606 16.9187 6.04544C19.0837 6.24481 21.1246 7.14442 22.7323 8.60795C24.34 10.0715 25.4268 12.0192 25.8281 14.1559C26.2293 16.2926 25.9232 18.5019 24.9561 20.449C24.7703 20.8042 24.7223 21.2155 24.8211 21.604L25.4211 23.8316C25.4803 24.0518 25.4805 24.2837 25.4216 24.5039C25.3627 24.7242 25.2468 24.925 25.0856 25.0862C24.9244 25.2474 24.7235 25.3633 24.5033 25.4222C24.283 25.4811 24.0512 25.4809 23.831 25.4217L21.6034 24.8217C21.2172 24.7248 20.809 24.7729 20.4558 24.9567C19.0683 25.6467 17.5457 26.0068 16.0006 26.0068V25.9992Z" fill="black" class="block dark:hidden svelte-pw1cre"></path><path d="M9.62598 16.0013C9.62598 15.3799 10.1294 14.8765 10.7508 14.8765C11.3721 14.8765 11.8756 15.3799 11.8756 16.0013C11.8756 17.0953 12.3102 18.1448 13.0838 18.9184C13.8574 19.692 14.9069 20.1266 16.001 20.1267C17.095 20.1267 18.1445 19.692 18.9181 18.9184C19.6918 18.1448 20.1264 17.0953 20.1264 16.0013C20.1264 15.3799 20.6299 14.8765 21.2512 14.8765C21.8725 14.8765 22.3759 15.3799 22.3759 16.0013C22.3759 17.6921 21.7046 19.3137 20.509 20.5093C19.3134 21.7049 17.6918 22.3762 16.001 22.3762C14.3102 22.3762 12.6885 21.7049 11.4929 20.5093C10.2974 19.3137 9.62598 17.6921 9.62598 16.0013Z" fill="white" class="block dark:hidden svelte-pw1cre"></path><path d="M16.0006 25.9992C13.8266 25.999 11.7118 25.2901 9.97686 23.9799C8.2419 22.6698 6.98127 20.8298 6.38599 18.7388C5.79071 16.6478 5.89323 14.4198 6.678 12.3923C7.46278 10.3648 8.88705 8.64837 10.735 7.50308C12.5829 6.35779 14.7538 5.84606 16.9187 6.04544C19.0837 6.24481 21.1246 7.14442 22.7323 8.60795C24.34 10.0715 25.4268 12.0192 25.8281 14.1559C26.2293 16.2926 25.9232 18.5019 24.9561 20.449C24.7703 20.8042 24.7223 21.2155 24.8211 21.604L25.4211 23.8316C25.4803 24.0518 25.48
5505 24.2837 25.4216 24.5039C25.3627 24.7242 25.2468 24.925 25.0856 25.0862C24.9244 25.2474 24.7235 25.3633 24.5033 25.4222C24.283 25.4811 24.0512 25.4809 23.831 25.4217L21.6034 24.8217C21.2172 24.7248 20.809 24.7729 20.4558 24.9567C19.0683 25.6467 17.5457 26.0068 16.0006 26.0068V25.9992Z" fill="white" class="hidden dark:block svelte-pw1cre"></path><path d="M9.62598 16.0013C9.62598 15.3799 10.1294 14.8765 10.7508 14.8765C11.3721 14.8765 11.8756 15.3799 11.8756 16.0013C11.8756 17.0953 12.3102 18.1448 13.0838 18.9184C13.8574 19.692 14.9069 20.1266 16.001 20.1267C17.095 20.1267 18.1445 19.692 18.9181 18.9184C19.6918 18.1448 20.1264 17.0953 20.1264 16.0013C20.1264 15.3799 20.6299 14.8765 21.2512 14.8765C21.8725 14.8765 22.3759 15.3799 22.3759 16.0013C22.3759 17.6921 21.7046 19.3137 20.509 20.5093C19.3134 21.7049 17.6918 22.3762 16.001 22.3762C14.3102 22.3762 12.6885 21.7049 11.4929 20.5093C10.2974 19.3137 9.62598 17.6921 9.62598 16.0013Z" fill="black" class="hidden dark:block svelte-pw1cre"></path></svg>');function Ls(d,s){$e(s,!1);let i=m(s,"classNames",12,"");var c={get classNames(){return i()},set classNames(_){i(_),g()}},v=Os();return R(()=>ke(v,0,Nt(i()||"icon-size"),"svelte-pw1cre")),o(d,v),Ce(c)}var Gs=b('<div class="backdrop-overlay svelte-de9ybk" aria-hidden="true" style="background: transparent;"></div> <div role="menu" class="menu-dropdown svelte-de9ybk" aria-label="Copy menu"><button role="menuitem" class="base-menu-item svelte-de9ybk"><div class="menu-icon-container svelte-de9ybk"><!></div> <div class="menu-text-container svelte-de9ybk"><div class="menu-text-primary svelte-de9ybk">Copy Page</div> <div class="menu-text-secondary svelte-de9ybk"> </div></div></button> <button role="menuitem" class="base-menu-item svelte-de9ybk"><div class="menu-icon-container svelte-de9ybk"><!></div> <div class="menu-text-container svelte-de9ybk"><div class="menu-text-primary svelte-de9ybk">Open in HuggingChat <!></div> <div class="menu-text-secondary svelte-de9ybk"> </div></div></button></div>',1),Es=b('<div class="container-wrapper svelte-de9ybk"><div class="trigger-wrapper svelte-de9ybk"><button class="copy-button svelte-de9ybk" aria-live="polite"><span class="icon-wrapper svelte-de9ybk"><!></span> <span> </span></button> <button class="menu-toggle-button svelte-de9ybk" aria-haspopup="menu"><!></button></div> <!></div>');function Zs(d,s){$e(s,!1);let i=m(s,"current_language",12),c=m(s,"space_id",12),v=m(s,"root",12),_=m(s,"api_count",12),H=m(s,"tools",12),O=m(s,"py_docs",12),Z=m(s,"js_docs",12),A=m(s,"bash_docs",12),x=m(s,"mcp_docs",12),w=m(s,"spaces_docs_suffix",12),E=m(s,"mcp_server_active",12),ce=m(s,"mcp_server_url_streamable",12),ee=m(s,"config_snippets",12),N=m(s,"markdown_code_snippets",12),h=m(s,"dependencies",12),l=m(s,"info",12),P=m(s,"js_info",12),U=B({python:"",javascript:"",bash:"",mcp:""}),T=B(i()==="python"?"Python":i()==="javascript"?"JavaScript":i()==="bash"?"Bash":i()==="cli"?"CLI":"MCP"),F=B(`Copy ${e(T)} Docs as Markdown for LLMs`),C=B(!1),f=B(!1),L=B(null),de=B(null),j=B("");const z=typeof window<"u";function X(){S(f,!0),z&&e(L)&&Vt().then(()=>{if(!e(L))return;const r=e(L).getBoundingClientRect(),u=6,J=Math.max(r.width+80,220),Q=Math.max(window.innerWidth-r.right,u);S(j,`top:${r.bottom+u}px;right:${Q}px;min-width:${J}px;`)})}function y(){S(f,!1)}function Y(){e(f)?y():X()}function oe(){return`https://huggingface.co/chat/?prompt=${encodeURIComponent(`-------------------------------- 56${e(U)[i()]} 57-------------------------------- 58 59Read the documentation above so I can ask questions about it.`)}`}function te(){z&&window.open(oe(),"_blank","noopener,noreferrer"),y()}function I(r){if(!e(f)||!z)return;const u=r.target;e(de)?.contains(u)||e(L)?.contains(u)||y()}function $(r){r.key==="Escape"&&e(f)&&y()}function K(){e(f)&&y()}function ne(){e(f)&&y()}async function se(r){try{if(!e(U)[r]){console.warn("Nothing to copy");return}if(typeof navigator<"u"&&!!navigator.clipboard&&typeof navigator.clipboard.writeText=="function")await navigator.clipboard.writeText(e(U)[r]);else{console.warn("Clipboard API unavailable");return}S(C,!0),setTimeout(()=>{S(C,!1)},1500)}catch(u){console.error("Failed to write to clipboard",u)}}ve(()=>(p(c()),p(v()),p(_()),p(O()),p(w()),p(h()),p(l()),p(N()),p(P())),()=>{jt(U,e(U).python=` 60# Python API documentation for ${c()||v()} 61API Endpoints: ${_()} 62 631. Install the Python client [docs](${O()}) if you don't already have it installed. 64 65\`\`\`bash 66pip install gradio_client 67\`\`\` 68 692. Find the API endpoint below corresponding to your desired function in the app. Copy the code snippet, replacing the placeholder values with your own input data. ${c()?"If this is a private Space, you may
69need to pass your Hugging Face token as well. [Read more]("+O()+w()+").":""} 70 71${h().filter(r=>r.api_visibility==="public"&&l().named_endpoints["/"+r.api_name]).map(r=>`### API Name: /${r.api_name} 72${l()?.named_endpoints["/"+r.api_name]?.description?"Description: "+l()?.named_endpoints["/"+r.api_name]?.description:""} 73 74\`\`\`python 75${N()[r.api_name]?.python} 76\`\`\` 77 78Accepts ${l()?.named_endpoints["/"+r.api_name]?.parameters?.length} parameter${l()?.named_endpoints["/"+r.api_name]?.parameters?.length!=1?"s":""}: 79 80${l()?.named_endpoints["/"+r.api_name]?.parameters?.map(u=>{const Q=!u.parameter_has_default?"Required":`Default: ${ut(u.parameter_default,u.python_type.type,"py")}`,D=`${u.python_type.type}${u.parameter_has_default&&u.parameter_default===null?" | None":""}`;return`${u.parameter_name||`[${P().named_endpoints["/"+r.api_name]?.parameters.findIndex(pe=>pe.parameter_name===pe.parameter_name)}]`}: 81- Type: ${D} 82- ${Q} 83- The input value that is provided in the ${u.label} ${u.component} component. ${u.python_type.description}`}).join(` 84 85`)} 86 87Returns ${l()?.named_endpoints["/"+r.api_name]?.returns?.length>1?`tuple of ${l()?.named_endpoints["/"+r.api_name]?.returns?.length} elements`:"1 element"}: 88 89${l()?.named_endpoints["/"+r.api_name]?.returns?.map((u,J)=>{const Q=u.python_type.type;return`${l()?.named_endpoints["/"+r.api_name]?.returns?.length>1?`[${J}]: `:""}- Type: ${Q} 90- The output value that appears in the "${u.label}" ${u.component} component.`}).join(` 91 92`)} 93`).join(` 94 95 96`)} 97`)}),ve(()=>(p(c()),p(v()),p(_()),p(Z()),p(w()),p(h()),p(l()),p(N()),p(P())),()=>{jt(U,e(U).javascript=` 98# JavaScript API documentation for ${c()||v()} 99API Endpoints: ${_()} 100 1011. Install the JavaScript client [docs](${Z()}) if you don't already have it installed. 102 103\`\`\`bash 104npm i -D @gradio/client 105\`\`\` 106 1072. Find the API endpoint below corresponding to your desired function in the app. Copy the code snippet, replacing the placeholder values with your own input data. ${c()?"If this is a private Space, you may need to pass your Hugging Face token as well. [Read more]("+Z()+w()+").":""} 108 109${h().filter(r=>r.api_visibility==="public"&&l().named_endpoints["/"+r.api_name]).map(r=>`### API Name: /${r.api_name} 110${l()?.named_endpoints["/"+r.api_name]?.description?"Description: "+l()?.named_endpoints["/"+r.api_name]?.description:""} 111 112\`\`\`javascript 113${N()[r.api_name]?.javascript} 114\`\`\` 115 116Accepts ${l()?.named_endpoints["/"+r.api_name]?.parameters?.length} parameter${l()?.named_endpoints["/"+r.api_name]?.parameters?.length!=1?"s":""}: 117 118${l()?.named_endpoints["/"+r.api_name]?.parameters?.map(u=>{const Q=!u.parameter_has_default?"Required":`Default: ${ut(u.parameter_default,u.python_type.type,"py")}`,D=`${P().named_endpoints["/"+r.api_name]?.parameters.find(pe=>pe.parameter_name===u.parameter_name)?.type||"any"}`;return`${u.parameter_name||`[${P().named_endpoints["/"+r.api_name]?.parameters.findIndex(pe=>pe.parameter_name===u.parameter_name)}]`}: 119- Type: ${D} 120- ${Q} 121- The input value that is provided in the ${u.label} ${u.component} component. ${u.python_type.description}`}).join(` 122 123`)} 124 125Returns ${l()?.named_endpoints["/"+r.api_name]?.returns?.length>1?`list of ${l()?.named_endpoints["/"+r.api_name]?.returns?.length} elements`:"1 element"}: 126 127${l()?.named_endpoints["/"+r.api_name]?.returns?.map((u,J)=>{const Q=P().named_endpoints["/"+r.api_name]?.returns[J]?.type;return`${l()?.named_endpoints["/"+r.api_name]?.returns?.length>1?`[${J}]: `:""}- Type: ${Q} 128- The output value that appears in the "${u.label}" ${u.component} component.`}).join(` 129 130`)}`).join(` 131 132 133`)} 134`)}),ve(()=>(p(c()),p(v()),p(_()),p(A()),p(h()),p(l()),p(N())),()=>{jt(U,e(U).bash=` 135# Bash API documentation for ${c()||v()} 136API Endpoints: ${_()} 137 1381. Confirm that you have cURL installed on your system. 139 140\`\`\`bash 141curl --version 142\`\`\` 143 1442. Find the API endpoint below corresponding to your desired function in the app. Copy the code snippet, replacing the placeholder values with your own input data. 145 146Making a prediction and getting a result requires 2 requests: a POST and a GET request. The POST request returns an EVENT_ID, which is used in the second GET request to fetch the results. In these snippets, we've used awk and read to parse the results, combining these two requests into one command for ease of use. 147 148If your endpoint accepts files, you must first upload them via a POST to \`/upload\`, then reference the returned path with the meta key: \`{"path": "...", "meta": {"_type": "gradio.FileData"}}\`. See [curl docs](${A()}). 149 150${h().filter(r=>
150r.api_visibility==="public"&&l().named_endpoints["/"+r.api_name]).map(r=>`### API Name: /${r.api_name} 151${l()?.named_endpoints["/"+r.api_name]?.description?"Description: "+l()?.named_endpoints["/"+r.api_name]?.description:""} 152 153\`\`\`bash 154${N()[r.api_name]?.bash} 155\`\`\` 156 157Accepts a JSON object with ${l()?.named_endpoints["/"+r.api_name]?.parameters?.length} key${l()?.named_endpoints["/"+r.api_name]?.parameters?.length!=1?"s":""}: 158 159${l()?.named_endpoints["/"+r.api_name]?.parameters?.map(u=>{const J="Required",Q=`${u.python_type.type}`;return`${u.parameter_name}: 160- Type: ${Q} 161- ${J} 162- The input value that is provided in the ${u.label} ${u.component} component. ${u.python_type.description}`}).join(` 163 164`)} 165 166Returns ${l()?.named_endpoints["/"+r.api_name]?.returns?.length>1?`an array of ${l()?.named_endpoints["/"+r.api_name]?.returns?.length} elements`:"an array of 1 element"}: 167 168${l()?.named_endpoints["/"+r.api_name]?.returns?.map((u,J)=>{const Q=u.python_type.type;return`${l()?.named_endpoints["/"+r.api_name]?.returns?.length>1?`[${J}]: `:""}- Type: ${Q} 169- The output value that appears in the "${u.label}" ${u.component} component.`}).join(` 170 171`)} 172`).join(` 173 174 175`)} 176`)}),ve(()=>(p(c()),p(v()),p(H()),p(E()),p(ce()),p(ee()),p(x())),()=>{jt(U,e(U).mcp=` 177# MCP documentation for ${c()||v()} 178MCP Tools: ${H().length} 179 180${E()?` 181 182This page documents two transports: Streamable HTTP and STDIO. 183 184### Streamable HTTP 185 186MCP Server URL (Streamable HTTP): ${ce()} 187 188${H().length} available MCP tools, resources, and prompts: 189 190${H().map(r=>`### ${r.name} 191Type: ${r.meta.mcp_type} 192Description: ${r.description?r.description:"No description provided in function docstring"} 193Parameters: ${Object.keys(r.parameters).length} 194${Object.keys(r.parameters).map(u=>`- ${u} (${r.parameters[u].type}): ${r.parameters[u].description?r.parameters[u].description:"No description provided in function docstring"}`).join(` 195`)} 196`).join(` 197 198`)} 199 200Streamable HTTP Transport: To add this MCP to clients that support Streamable HTTP, simply add the following configuration to your MCP config. 201 202\`\`\`json 203${ee().streamable_http} 204\`\`\` 205 206The \`upload_files_to_gradio\` tool uploads files from your local \`UPLOAD_DIRECTORY\` (or any of its subdirectories) to the Gradio app. 207This is needed because MCP servers require files to be provided as URLs. You can omit this tool if you prefer to upload files manually. This tool requires [uv](https://docs.astral.sh/uv/getting-started/installation/) to be installed. 208 209### STDIO Transport 210 211 212${H().length} available MCP tools, resources, and prompts: 213 214${H().map(r=>`### ${r.name} 215Type: ${r.meta.mcp_type} 216Description: ${r.description?r.description:"No description provided in function docstring"} 217Parameters: ${Object.keys(r.parameters).length} 218${Object.keys(r.parameters).map(u=>`- ${u} (${r.parameters[u].type}): ${r.parameters[u].description?r.parameters[u].description:"No description provided in function docstring"}`).join(` 219`)} 220`).join(` 221 222`)} 223 224STDIO Transport: For clients that only support stdio (e.g. Claude Desktop), first [install Node.js](https://nodejs.org/en/download/). Then, you can use the following command: 225 226\`\`\`json 227${ee().stdio} 228\`\`\` 229 230The \`upload_files_to_gradio\` tool uploads files from your local \`UPLOAD_DIRECTORY\` (or any of its subdirectories) to the Gradio app. 231This is needed because MCP servers require files to be provided as URLs. You can omit this tool if you prefer to upload files manually. This tool requires [uv](https://docs.astral.sh/uv/getting-started/installation/) to be installed. 232 233Read more about the MCP in the [Gradio docs](${x()}). 234`:'This Gradio app can also serve as an MCP server, with an MCP tool corresponding to each API endpoint. \nTo enable this, launch this Gradio app with `.launch(mcp_server=True)` or set the `.launch(mcp_server=True)`or set the `GRADIO_MCP_SERVER` env variable to `"True"`.'} 235 236`)}),ve(()=>p(i()),()=>{i()}),ve(()=>p(i()),()=>{S(T,i()==="python"?"Python":i()==="javascript"?"JavaScript":i()==="bash"?"Bash":i()==="cli"?"CLI":"MCP")}),ve(()=>e(T),()=>{S(F,`Copy ${e(T)} Docs as Markdown for LLMs`)}),ve(()=>e(C),()=>{e(C)}),_t();var ae={get current_language(){return i()},set current_language(r){i(r),g()},get space_id(){return c()},set space_id(r){c(r),g()},get root(){return v()},set root(r){v(r),g()},get api_count(){return _()},set api_count(r){_(r),g()},get tools(){return H()},set tools(r){H(r),g()},get py_docs(){return O()},set py_docs(r){O(r),g()},get js_docs(){return Z()},set js_docs(r){Z(r),g()},get bash_docs(){return A()},set bash_docs(r){A(r),g()},get mcp_docs(){return x()},set mcp_docs(r){x(r),g()},get spaces_docs_suffix(){return w()},set spaces_docs_suffix(r){w(r),g()},get mcp_server_active(){return E()},set mcp_server_active(r){E(r),g()},get mcp_server_url_streamable(){return ce()},set mcp_server_url_streamable(r){ce(r),g()},get config_snippets(){return ee()},set config_snippets(r){ee(r),g()},get markdown_code_snippets(){return N()},set markdown_code_snippets(r){N(r),g()},get dependencies(){return h()},set dependencies(r){h(r),g()},get info(){return l()},set info(r){l(r),g()},get js_info(){return P()},set js_info(r){P(r),g()}};st();var q=Es();Te("mousedown",St,I),Te("keydown",St,$),Te("resize",St,K),Te("scroll",St,ne);var W=a(q),ie=a(W),_e=a(ie),fe=a(_e);{var le=r=>{Jt(r,{})},ue=r=>{Ot(r,{})};G(fe,r=>
236{e(C)?r(le):r(ue,!1)})}t(_e);var qe=n(_e,2),We=a(qe,!0);t(qe),t(ie);var De=n(ie,2),rt=a(De);{let r=Ae(()=>`caret-icon ${e(f)?"rotate-180":"rotate-0"}`);Rs(rt,{get classNames(){return e(r)}})}t(De),t(W),Tt(W,r=>S(L,r),()=>e(L));var mt=n(W,2);{var M=r=>{var u=Gs(),J=re(u),Q=n(J,2),D=a(Q),pe=a(D),ge=a(pe);Ot(ge,{classNames:"menu-icon"}),t(pe);var Ne=n(pe,2),ye=n(a(Ne),2),Se=a(ye,!0);t(ye),t(Ne),t(D);var Ze=n(D,2),Je=a(Ze),dt=a(Je);Ls(dt,{classNames:"menu-icon"}),t(Je);var pt=n(Je,2),gt=a(pt),$t=n(a(gt));qs($t,{classNames:"menu-icon-arrow"}),t(gt);var nt=n(gt,2),bt=a(nt);t(nt),t(pt),t(Ze),t(Q),Tt(Q,Re=>S(de,Re),()=>e(de)),R(()=>{Pt(Q,e(j)),V(Se,e(F)),V(bt,`Ask Questions About The ${e(T)??""} Docs`)}),Te("click",J,y),Te("click",D,()=>{se(i()),y()}),Te("click",Ze,()=>{te(),y()}),o(r,u)};G(mt,r=>{e(f)&&r(M)})}return t(q),R(()=>{V(We,e(C)?`Copied ${e(T)} Docs!`:"Copy Page"),Ee(De,"aria-expanded",e(f)),Ee(De,"aria-label",e(f)?"Close copy menu":"Open copy menu")}),Te("click",ie,()=>se(i())),Te("click",De,Y),o(d,q),Ce(ae)}var Hs=b('<li><img alt=""/> </li>'),Us=b(`<div><p id="num-recorded-api-calls" style="font-size: var(--text-lg); font-weight:bold; margin: 10px 0px;">ðª Recorded API Calls <span class="api-count svelte-1ujc8oz"> </span></p> <p> </p> <!> <p>Note: Some API calls only affect the UI, so when using the 237 clients, the desired result may be achieved with only a subset of 238 the recorded calls.</p></div> <p style="font-size: var(--text-lg); font-weight:bold; margin: 30px 0px 10px;">API Documentation</p>`,1),Bs=b(`1. Install the <span style="text-transform:capitalize"> </span> client (<a target="_blank" class="svelte-1ujc8oz">docs</a>) if you don't already have it installed.`,1),Vs=b('<p class="padded svelte-1ujc8oz"><!></p>'),Fs=b('<div class="cli-flavor-selector svelte-1ujc8oz"><li><img alt="Gradio" class="svelte-1ujc8oz"/> Gradio CLI</li> <li><img alt="HF" class="svelte-1ujc8oz"/> HF CLI</li></div>'),Ys=b(`If this is a private Space, you may need to pass 239 your Hugging Face token as well (<a class="underline svelte-1ujc8oz" target="_blank">read more</a>).`,1),Ws=b('<div class="loading-dot svelte-1ujc8oz"></div>
239 <p class="self-baseline svelte-1ujc8oz">API Recorder</p>',1),Js=b(`<br/> <br/>Making a 240 prediction and getting a result requires <strong>2 requests</strong>: a <code class="svelte-1ujc8oz">POST</code> and a <code class="svelte-1ujc8oz">GET</code> request. The <code class="svelte-1ujc8oz">POST</code> request 241 returns an <code class="svelte-1ujc8oz">EVENT_ID</code>, which is used in the second <code class="svelte-1ujc8oz">GET</code> request to fetch the results. In these 242 snippets, we've used <code class="svelte-1ujc8oz">awk</code> and <code class="svelte-1ujc8oz">read</code> to 243 parse the results, combining these two requests into one command 244 for ease of use. <br/> <br/> If your endpoint accepts files, you must first upload them via a <code class="svelte-1ujc8oz">POST</code> to <code class="svelte-1ujc8oz">/upload</code>, then reference the 245 returned path with the <code class="svelte-1ujc8oz">meta</code> key: <code class="svelte-1ujc8oz"></code>. <!> See <a target="_blank" class="svelte-1ujc8oz">curl docs</a>.`,1),Qs=b(`<!> <p class="padded svelte-1ujc8oz">2. Find the API endpoint below corresponding to your desired 246 function in the app. Copy the code snippet, replacing the 247 placeholder values with your own input data. <!> Or use the <!> to automatically generate your API requests. <!></p>`,1),Xs=b("<!> <!> <div><!></div> <div><!></div> <!>",1),Ks=b('<div class="endpoint-container svelte-1ujc8oz"><!> <!> <!></div>'),er=b('<div class="banner-wrap svelte-1ujc8oz"><!></div> <div class="docs-wrap svelte-1ujc8oz"><div class="client-doc svelte-1ujc8oz" style="display: flex; align-items: center; justify-content: space-between;"><p style="font-size: var(--text-lg);">Choose one of the following ways to interact with the API.</p> <!></div> <div class="endpoint svelte-1ujc8oz"><div class="snippets svelte-1ujc8oz"></div> <!> <div></div></div></div>',1);function Nr(d,s){$e(s,!1);const i=B(),c=B(),v=B(),_=B(),H=B(),O=B(),Z=B();let A=m(s,"dependencies",12),x=m(s,"root",12),w=m(s,"app",12),E=m(s,"space_id",12),ce=m(s,"root_node",12),ee=m(s,"username",12),N=m(s,"last_api_call",12,null);const h="https://www.gradio.app/guides/getting-started-with-the-js-client",l="https://www.gradio.app/guides/getting-started-with-the-python-client",P="https://www.gradio.app/guides/querying-gradio-apps-with-curl",U="#connecting-to-a-hugging-face-space",T="https://www.gradio.app/guides/building-mcp-server-with-gradio";let F=A().filter(M=>M.api_visibility==="public").length;x()===""&&x(location.protocol+"//"+location.host+location.pathname),x().endsWith("/")||x(x()+"/");let C=m(s,"api_calls",28,()=>[]),f=B("python"),L=B("gradio");function de(M,r){const u=new URL(window.location.href);u.searchParams.set(M,r),history.replaceState(null,"",u.toString())}function j(M){return new URL(window.location.href).searchParams.get(M)}function z(M){return["python","javascript","bash","skill","mcp","cli"].includes(M??"")}let X=!1,y=B(!1);async function Y(){return await(await fetch(x().replace(/\/$/,"")+w().api_prefix+"/info")).json()}async function oe(){return await w().view_api()}let te=B(),I=B(),$=B();Y().then(M=>{S(te,M)}),oe().then(M=>{S(I,M)});async function K(){return await(await fetch(x().replace(/\/$/,"")+"/monitoring/summary")).json()}K().then(M=>{S($,M.functions)});const ne=Lt();let se=B([]),ae=[],q=B(),W=B(!1),ie=B(new Set),_e=E()?E().split("/").pop()+"_":"";function fe(M){return _e&&M.startsWith(_e)?M.slice(_e.length):M}const le={command:"uvx",args:["--from","gradio[mcp]","gradio","upload-mcp",x(),"<UPLOAD_DIRECTORY>"]};async function ue(){try{let M=`${x()}gradio_api/mcp/schema`;const u=await(await fetch(M)).json();S(W,u.map(J=>J.meta?.file_data_present).some(J=>J)),S(se,u.map(J=>({name:J.name,description:J.description||"",parameters:J.inputSchema?.properties||{},meta:J.meta,expanded:!1,endpoint_name:J.endpoint_name}))),S(ie,new Set(e(se).map(J=>J.name))),ae=u.map(J=>J.meta?.headers||[]).flat(),ae.length>0?S(q,{mcpServers:{gradio:{command:"npx",args:["mcp-remote",e(O),"--transport","streamable-http",...ae.map(J=>["--header",`${J}: <YOUR_HEADER_VALUE>`]).flat()]}}}):(S(q,{mcpServers:{gradio:{command:"npx",args:["mcp-remote",e(O),"--trans
247port","streamable-http"]}}}),e(W)&&jt(q,e(q).mcpServers.upload_files_to_gradio=le))}catch(M){console.error("Failed to fetch MCP tools:",M),S(se,[])}}let qe=B({});Bt(()=>{const M=new AbortController,r=M.signal;document.body.style.overflow="hidden","parentIFrame"in window&&window.parentIFrame?.scrollTo(0,0);const u=j("lang");z(u)&&S(f,u);const J=`${x()}gradio_api/mcp/schema`;return fetch(J,{signal:r}).then(Q=>{S(y,Q.ok),e(y)?(ue(),z(u)||S(f,"mcp")):z(u)||S(f,"python"),M.abort()}).catch(()=>{S(y,!1)}),()=>{document.body.style.overflow="auto"}}),ve(()=>e(L),()=>{S(i,e(L)==="hf"?"hf gradio":"gradio")}),ve(()=>(p(A()),e(te),p(N())),()=>{S(c,(()=>{const M=A().filter(r=>r.api_visibility==="public"&&e(te)?.named_endpoints?.["/"+r.api_name]);if(e(te)&&N()){const r=M.find(J=>J.id===N().fn_index),u=M.filter(J=>J.id!==N().fn_index);return r?[r,...u]:M}return M})())}),ve(()=>(p(E()),Ut),()=>{S(v,[["python","Python",ts],["javascript","JavaScript",as],["cli","CLI",hs],["bash","cURL",ss],...E()?[["skill","Skill",cs]]:[],["mcp","MCP",Ut]])}),ve(()=>e(ie),()=>{S(_,Array.from(e(ie)))}),ve(()=>e(_),()=>{S(H,e(_).map(fe))}),ve(()=>(e(_),e(se),p(x()),e(H)),()=>{S(O,e(_).length>0&&e(_).length<e(se).length?`${x()}gradio_api/mcp/?tools=${e(H).join(",")}`:`${x()}gradio_api/mcp/`)}),ve(()=>(e(te),p(A()),e(i)),()=>{S(Z,(()=>{const M={};if(!e(te)?.named_endpoints)return M;for(const r of A()){const u=r.api_name;if(!u)continue;const J=e(te).named_endpoints["/"+u];if(!J?.code_snippets)continue;const Q=J.code_snippets;M[u]={python:Q.python||"",javascript:Q.javascript||"",bash:Q.bash||"",cli:(Q.cli||"").replace("{command}",e(i))}}return M})())}),_t();var We={get dependencies(){return A()},set dependencies(M){A(M),g()},get root(){return x()},set root(M){x(M),g()},get app(){return w()},set app(M){w(M),g()},get space_id(){return E()},set space_id(M){E(M),g()},get root_node(){return ce()},set root_node(M){ce(M),g()},get username(){return ee()},set username(M){ee(M),g()},get last_api_call(){return N()},set last_api_call(M){N(M),g()},get api_calls(){return C()},set api_calls(M){C(M),g()}};st();var De=Ge(),rt=re(De);{var mt=M=>{var r=Ge(),u=re(r);{var J=D=>{var pe=er(),ge=re(pe),Ne=a(ge);{let Re=Ae(()=>E()||x());va(Ne,{get root(){return e(Re)},get api_count(){return F},get current_language(){return e(f)},$$events:{close(me){Gt.call(this,s,me)}}})}t(ge);var ye=n(ge,2),Se=a(ye),Ze=n(a(Se),2);Zs(Ze,{get current_language(){return e(f)},get space_id(){return E()},get root(){return x()},get api_count(){return F},get tools(){return e(se)},py_docs:l,js_docs:h,bash_docs:P,mcp_docs:T,spaces_docs_suffix:U,get mcp_server_active(){return e(y)},get mcp_server_url_streamable(){return e(O)},get config_snippets(){return e(qe)},get markdown_code_snippets(){return e(Z)},get dependencies(){return A()},get info(){return e(te)},get js_info(){return e(I)}}),t(Se);var Je=n(Se,2),dt=a(Je);lt(dt,5,()=>e(v),ct,(Re,me)=>{var Be=At(()=>qt(e(me),3));let Ve=()=>e(Be)[0],Qe=()=>e(Be)[1],et=()=>e(Be)[2];var je=Hs(),Ye=a(je);let be;var he=n(Ye);t(je),R(()=>{ke(je,1,`snippet 248 ${e(f)===Ve()?"current-lang":"inactive-lang"}`,"svelte-1ujc8oz"),Ee(Ye,"src",et()),be=ke(Ye,1,"svelte-1ujc8oz",null,be,{"agent-icon":Ve()==="cli"}),V(he,` ${Qe()??""}`)}),Te("click",je,()=>{S(f,Ve()),de("lang",Ve())}),o(Re,je)}),t(dt);var pt=n(dt,2);{var gt=Re=>{var me=Us(),Be=re(me),Ve=a(Be),Qe=n(a(Ve)),et=a(Qe);t(Qe),t(Ve);var je=n(Ve,2),Ye=a(je);t(je);var be=n(je,2);{let he=Ae(()=>E()||x());es(be,{get current_language(){return e(f)},get api_calls(){return C()},get dependencies(){return A()},get root(){return x()},get api_prefix(){return p(w()),k(()=>w().api_prefix)},get short_root(){return e(he)},get username(){return ee()}})}we(2),t(Be),we(2),R(()=>{V(et,`[${p(C()),k(()=>C().length)??""}]`),V(Ye,`Here is the code snippet to replay the most recently recorded API 249 calls using the ${e(f)??""} 250 client.`)}),o(Re,me)},$t=Re=>{var me=Xs(),Be=re(me);{var Ve=Ie=>{var Pe=Vs(),Xe=a(Pe);{var vt=Me=>{var Ke=Bs(),at=n(re(Ke)),yt=a(at,!0);t(at);var Oe=n(at,2);we(),R(()=>{V(yt,e(f)),Ee(Oe,"href",e(f)=="python"?l:h)}),o(Me,Ke)},tt=Me=>{var Ke=Ge(),at=re(Ke);{var yt=Ue=>{var Fe=xe("1. Confirm that you have cURL installed on your system.");o(Ue,Fe)},Oe=Ue=>{var Fe=Ge(),xt=re(Fe);{var Ct=It=>{var kt=xe("1. Install the CLI if you don't already have it installed.");o(It,kt)};G(xt,It=>{e(f)=="cli"&&It(Ct)},!0)}o(Ue,Fe)};G(at,Ue=>{e(f)=="bash"?Ue(yt):Ue(Oe,!1)},!0)}o(Me,Ke)};G(Xe,Me=>{e(f)=="python"||e(f)=="javascript"?Me(vt):Me(tt,!1)})}t(Pe),o(Ie,Pe)};G(Be,Ie=>{e(f)!=="skill"&&Ie(Ve)})}var Qe=n(Be,2);{var et=Ie=>
250{var Pe=Fs(),Xe=a(Pe),vt=a(Xe);we(),t(Xe);var tt=n(Xe,2),Me=a(tt);we(),t(tt),t(Pe),R(()=>{ke(Xe,1,`snippet ${e(L)==="gradio"?"current-lang":"inactive-lang"}`,"svelte-1ujc8oz"),Ee(vt,"src",sa),ke(tt,1,`snippet ${e(L)==="hf"?"current-lang":"inactive-lang"}`,"svelte-1ujc8oz"),Ee(Me,"src",ms)}),Te("click",Xe,()=>{S(L,"gradio")}),Te("click",tt,()=>{S(L,"hf")}),o(Ie,Pe)};G(Qe,Ie=>{e(f)==="cli"&&Ie(et)})}var je=n(Qe,2);let Ye;var be=a(je);us(be,{get space_id(){return E()}}),t(je);var he=n(je,2);let He;var ft=a(he);{let Ie=Ae(()=>(e(se),e(ie),k(()=>e(se).filter(Pe=>e(ie).has(Pe.name)))));zs(ft,{get mcp_server_active(){return e(y)},get mcp_server_url_streamable(){return e(O)},get tools(){return e(Ie)},get all_tools(){return e(se)},get mcp_json_stdio(){return e(q)},get file_data_present(){return e(W)},mcp_docs:T,get analytics(){return e($)},get root(){return x()},get selected_tools(){return e(ie)},set selected_tools(Pe){S(ie,Pe)},get config_snippets(){return e(qe)},set config_snippets(Pe){S(qe,Pe)},$$legacy:!0})}t(he);var wt=n(he,2);{var it=Ie=>{var Pe=Qs(),Xe=re(Pe);Aa(Xe,{get current_language(){return e(f)},get cli_flavor(){return e(L)}});var vt=n(Xe,2),tt=n(a(vt));{var Me=Oe=>{var Ue=Ys(),Fe=n(re(Ue));we(),R(()=>Ee(Fe,"href",e(f)=="python"?l+U:e(f)=="javascript"?h+U:P)),o(Oe,Ue)};G(tt,Oe=>{E()&&Oe(Me)})}var Ke=n(tt,2);Yt(Ke,{size:"sm",variant:"secondary",onclick:()=>ne("close",{api_recorder_visible:!0}),children:(Oe,Ue)=>{var Fe=Ws();we(2),o(Oe,Fe)},$$slots:{default:!0}});var at=n(Ke,2);{var yt=Oe=>{var Ue=Js(),Fe=n(re(Ue),30);Fe.textContent='{"path": "...", "meta": {"_type": "gradio.FileData"}}';var xt=n(Fe,2);{var Ct=kt=>{var Qt=xe(`Note: connecting to an authenticated app requires an 251 additional request.`);o(kt,Qt)};G(xt,kt=>{ee()!==null&&kt(Ct)})}var It=n(xt,2);Ee(It,"href",P),we(),o(Oe,Ue)};G(at,Oe=>{e(f)=="bash"&&Oe(yt)})}t(vt),o(Ie,Pe)};G(wt,Ie=>{e(f)!=="mcp"&&e(f)!=="skill"&&Ie(it)})}R(()=>{Ye=ke(je,1,"svelte-1ujc8oz",null,Ye,{hidden:e(f)!=="skill"}),He=ke(he,1,"svelte-1ujc8oz",null,He,{hidden:e(f)!=="mcp"})}),o(Re,me)};G(pt,Re=>{p(C()),k(()=>C().length)?Re(gt):Re($t,!1)})}var nt=n(pt,2);let bt;lt(nt,5,()=>e(c),ct,(Re,me)=>{var Be=Ge(),Ve=re(Be);{var Qe=et=>{var je=Ks(),Ye=a(je);Va(Ye,{get dependency(){return e(me)},get current_language(){return e(f)},get api_description(){return e(te),e(me),k(()=>e(te).named_endpoints["/"+e(me).api_name].description)},get analytics(){return e($)},get last_api_call(){return N()},get code_snippets(){return e(te),e(me),k(()=>e(te).named_endpoints["/"+e(me).api_name].code_snippets)},get cli_command(){return e(i)}});var be=n(Ye,2);{let He=Ae(()=>e(f)==="cli"?"python":e(f));xa(be,{get endpoint_returns(){return e(te),e(me),k(()=>e(te).named_endpoints["/"+e(me).api_name].parameters)},get js_returns(){return e(I),e(me),k(()=>e(I).named_endpoints["/"+e(me).api_name].parameters)},is_running:X,get current_language(){return e(He)}})}var he=n(be,2);{let He=Ae(()=>e(f)==="cli"?"python":e(f));ls(he,{get endpoint_returns(){return e(te),e(me),k(()=>e(te).named_endpoints["/"+e(me).api_name].returns)},get js_returns(){return e(I),e(me),k(()=>e(I).named_endpoints["/"+e(me).api_name].returns)},is_running:X,get current_language(){return e(He)}})}t(je),o(et,je)};G(Ve,et=>{e(te),e(me),k(()=>e(te).named_endpoints["/"+e(me).api_name])&&et(Qe)})}o(Re,Be)}),t(nt),t(Je),t(ye),R(()=>bt=ke(nt,1,"svelte-1ujc8oz",null,bt,{hidden:e(f)==="mcp"||e(f)==="skill"})),o(D,pe)},Q=D=>{ca(D,{get root(){return x()},$$events:{close(pe){Gt.call(this,s,pe)}}})};G(u,D=>{F?D(J):D(Q,!1)})}o(M,r)};G(rt,M=>{e(te)&&e($)&&M(mt)})}return o(d,De),Ce(We)}export{Nr as default};
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.