PageSourceSearch

https://tamrzghlwl98-abqary.hf.space/_app/immutable/nodes/30.DHpBrdBN.js

js tamrzghlwl98-abqary.hf.space collected 2026-10-03 17:27:14 UTC 14,785 bytes, 11 lines download raw bytes

1import"../chunks/CWj6FrbW.js";import"../chunks/69_IOA4Y.js";import{p as ht,g as bt,o as Rt,aW as W,l as t,c as o,r as s,n as h,aX as pt,k as v,t as $,x as ut,z as d,d as E,q as C,a as y,b as yt,e as K,s as Ot,m as j,f as D,w as re,y as oe,i as gt,u as le,A as ie,B as st,E as Nt}from"../chunks/CUER8V2o.js";import{i as rt}from"../chunks/B75Mpj1d.js";import{e as Jt,i as Wt}from"../chunks/DokM-4Dh.js";import{a as U,b as ne,s as Bt}from"../chunks/APQ7ZUWJ.js";import{b as ft}from"../chunks/CiRpJQgD.js";import{b as xt}from"../chunks/Cn_YEXpj.js";import{i as _t}from"../chunks/rK_0sfWx.js";import{f as de}from"../chunks/CsWaRabF.js";import{t as mt}from"../chunks/HGaYnvZ1.js";import{g as ce}from"../chunks/BG-oip0q.js";import{a as ve}from"../chunks/WGYuJ2Xt.js";import{b as ue,u as ge,c as me,a as pe}from"../chunks/N_5TL-Re.js";import{c as fe}from"../chunks/tekYSfEF.js";import{s as xe}from"../chunks/_UcCb4Vt.js";import{C as he}from"../chunks/DXprVEwj.js";import{D as be}from"../chunks/Dp-M6rRP.js";import{D as ye}from"../chunks/CdEdJrwA.js";import{p as ot}from"../chunks/Cbw259J3.js";import{A as _e}from"../chunks/B31oMVda.js";import{C as we}from"../chunks/jQdngBRY.js";import{P as ke}from"../chunks/D_A0ec5K.js";import{A as $e}from"../chunks/Bruls7OV.js";import{M as Ce}from"../chunks/DOTBNxRW.js";import{X as De}from"../chunks/Bs_rr7s6.js";import{D as Me}from"../chunks/CezOBLQw.js";import{E as Ee}from"../chunks/B_LRRRNU.js";var Se=D('<div class="flex gap-2 group"><div class="flex items-start pt-1"><div class="px-2 py-1 text-sm font-semibold uppercase min-w-[6rem] text-left rounded-lg transition"> </div></div> <div class="flex-1"><textarea class="w-full bg-transparent outline-hidden rounded-lg p-2 text-sm resize-none overflow-hidden" rows="1"></textarea></div> <div class=" pt-1"><button class=" group-hover:text-gray-500 dark:text-gray-500 dark:hover:text-gray-300 transition"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="2" stroke="currentColor" class="w-5 h-5"><path stroke-linecap="round" stroke-linejoin="round" d="M15 12H9m12 0a9 9 0 1 1-18 0 9 9 0 0 1 18 0Z"></path></svg></button></div></div>');function He(X,T){ht(T,!1);const r=()=>K(B,"$i18n",N),[N,q]=Ot(),B=bt("i18n");let _=ot(T,"message",12),R=ot(T,"idx",8),Q=ot(T,"onDelete",8),p=j();Rt(()=>{W(p,t(p).style.height=""),W(p,t(p).style.height=t(p).scrollHeight+"px")}),_t();var V=Se(),b=o(V),Y=o(b),F=o(Y,!0);s(Y),s(b);var S=h(b,2),z=o(S);pt(z),xt(z,I=>v(p,I),()=>t(p)),s(S);var A=h(S,2),O=o(A);s(A),s(V),$((I,w)=>{E(F,I),U(z,"id",`${ut(_()),d(()=>_().role)??""}-${R()??""}-textarea`),U(z,"placeholder",w)},[()=>(r(),ut(_()),d(()=>r().t(_().role))),()=>(r(),ut(_()),d(()=>r().t("Enter {{role}} message here",{role:_().role==="user"?r().t("a user"):r().t("an assistant")})))]),C("input",z,I=>{W(p,t(p).style.height=""),W(p,t(p).style.height=t(p).scrollHeight+"px")}),C("focus",z,I=>{W(p,t(p).style.height=""),W(p,t(p).style.height=t(p).scrollHeight+"px")}),ft(z,()=>_().content,I=>_(_().content=I,!0)),C("click",O,()=>{Q()()}),y(X,V),yt(),q()}var je=D('<div class="py-3 space-y-3"></div>');function ze(X,T){ht(T,!1),bt("i18n");let r=ot(T,"messages",28,()=>[]);_t();var N=je();Jt(N,5,r,Wt,(q,B,_)=>{He(q,{get message(){return t(B)},idx:_,onDelete:()=>{r(r().filter((R,Q)=>Q!==_))}})}),s(N),y(X,N),yt()}var Ie=D('<div class="text-gray-700 dark:text-gray-100"><div class="flex justify-between px-4.5 pt-4.5 pb-2"><div class="text-lg font-medium self-center"> </div>
1 <button class="self-center"><!></button></div> <div class="px-4.5 pb-5 overflow-y-auto max-h-[70vh]"><!></div></div>'),Pe=D('<div class=" flex-1 text-gray-500 line-clamp-1"> </div>'),Ae=D('<div class="flex gap-2 justify-between items-center"><div class=" shrink-0 font-medium ml-1.5"> </div> <!> <div class="shrink-0"><button class="p-1.5 bg-transparent hover:bg-white/5 transition rounded-lg"><!></button></div></div>'),Te=D('<div slot="content"><div class="pt-1 px-1.5"><textarea class="w-full h-full bg-transparent resize-none outline-hidden text-sm" rows="4"></textarea></div></div>'),Ue=D('<button class="p-1.5 text-sm font-medium bg-transparent hover:bg-gray-100 dark:hover:bg-gray-800 text-gray-500 dark:text-gray-400 transition rounded-lg"><!></button>'),Ne=D('<button class="flex gap-2 items-center px-3 py-1.5 text-sm cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-800 rounded-xl select-none w-full"><div class="flex items-center line-clamp-1"> </div></button> <button class="flex gap-2 items-center px-3 py-1.5 text-sm cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-800 rounded-xl select-none w-full"><div class="flex items-center line-clamp-1"> </div></button>',1),Be=D('<button slot="trigger" class="flex gap-2 items-center px-3 py-1.5 text-sm cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-800 rounded-xl select-none w-full"><!> <div class="flex items-center"> </div></button>'),Re=D('<div slot="content"><div class="min-w-[200px] rounded-2xl px-1 py-1 border border-gray-100 dark:border-gray-800 z-50 bg-white dark:bg-gray-850 dark:text-white shadow-lg"><!></div></div>'),Oe=D('<option class="bg-gray-50 dark:bg-gray-700"> </option>'),Je=D('<button class="px-3.5 py-1.5 text-sm font-medium disabled:bg-gray-50 dark:disabled:hover:bg-gray-850 disabled:cursor-not-allowed bg-gray-50 hover:bg-gray-100 text-gray-900 dark:bg-gray-850 dark:hover:bg-gray-800 dark:text-gray-200 transition rounded-lg"> </button> <button class="px-3.5 py-1.5 text-sm font-medium bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-lg"> </button>',1),We=D('<button class="px-3 py-1.5 text-sm font-medium bg-gray-300 text-black transition rounded-lg"> </button>'),Xe=D('<!> <div class=" flex flex-col justify-between w-full overflow-y-auto h-full"><div class="mx-auto w-full md:px-0 h-full relative"><div class=" flex flex-col h-full px-3.5"><div class="flex w-full items-center gap-1.5"><!> <!></div> <div class=" pb-2.5 flex flex-col justify-between w-full flex-auto overflow-auto h-0" id="messages-container"><div class=" h-full w-full flex flex-col"><div class="flex-1 p-1"><!></div></div></div> <div class="pb-3"><div class="border border-gray-100/30 dark:border-gray-850/30 w-full px-3 py-2.5 rounded-xl"><div class="py-0.5"><textarea class=" w-full h-full bg-transparent resize-none outline-hidden text-sm" rows="2"></textarea></div> <div class="flex justify-between flex-col sm:flex-row items-start sm:items-center gap-2 mt-2"><div class="shrink-0"><button type="button"><!></button></div> <div class="flex items-center justify-between gap-2 w-full sm:w-auto"><div class="flex-1"><select class=" bg-transparent border border-gray-100/30 dark:border-gray-850/30 rounded-lg py-1 px-2 -mx-0.5 text-sm outline-hidden w-full"></select></div> <button id="playground-controls-toggle"><!></button> <div class="flex gap-2 shrink-0"><!></div></div></div></div></div></div></div></div>',1);function qe(X,T){ht(T,!1);const r=()=>K(V,"$i18n",R),N=()=>K(pe,"$models",R),q=()=>K(ge,"$user",R),B=()=>K(ue,"$settings",R),_=()=>K(me,"$config",R),[R,Q]=Ot(),{saveAs:p}=de,V=bt("i18n");
1let b=j(""),Y=j(!1),F=!1,S=j(),z=j(),A=j(!1),O=j(!1),I=j({}),w=j(""),P=j("user"),L=j(""),g=j([]);const wt=()=>{const e=t(z);e&&(e.scrollTop=e==null?void 0:e.scrollHeight)},Xt=()=>{F=!0},kt=async()=>{await st(),t(S)&&(W(S,t(S).style.height=""),W(S,t(S).style.height=Math.min(t(S).scrollHeight,555)+"px"))},qt=async()=>{var m;if(t(b)===""){mt.error(r().t("Please select a model."));return}const e=N().find(c=>c.id===t(b));if(!e){v(b,"");return}const l=Object.fromEntries(Object.entries(t(I)).filter(([c,x])=>x!=null)),[a,i]=await fe(localStorage.token,{model:e.id,stream:!0,messages:[t(w)?{role:"system",content:t(w)}:void 0,...t(g)].filter(c=>c),...Object.keys(l).length>0?l:{}},`${ve}/api`);let n;((m=t(g).at(-1))==null?void 0:m.role)==="assistant"?n=t(g).at(-1):(n={role:"assistant",content:""},t(g).push(n),v(g,t(g))),await st();const u=document.getElementById(`assistant-${t(g).length-1}-textarea`);if(a&&a.ok){const c=a.body.pipeThrough(new TextDecoderStream).pipeThrough(xe(`
2`)).getReader();for(;;){const{value:x,done:H}=await c.read();if(H||F){F&&i.abort("User: Stop Response");break}try{let M=x.split(`
3`);for(const f of M)if(f!=="")if(f==="data: [DONE]")v(g,t(g));else{let J=JSON.parse(f.replace(/^data: /,""));if(n.content==""&&J.choices[0].delta.content==`
4`)continue;u.style.height=u.scrollHeight+"px",n.content+=J.choices[0].delta.content??"",v(g,t(g)),u.style.height=u.scrollHeight+"px",await st()}}catch(M){}wt()}}},$t=async()=>{t(L)&&(t(g).push({role:t(P),content:t(L)}),v(g,t(g)),v(L,""),await st(),wt())},Yt=async()=>{t(b)&&(await $t(),v(Y,!0),await qt(),v(Y,!1),F=!1)},Ft=()=>{const e=Math.floor(Date.now()/1e3),l={};let a=null,i=null;if(t(w)){const m=crypto.randomUUID();l[m]={id:m,parentId:null,childrenIds:[],role:"system",content:t(w),timestamp:e},i=m}for(const m of t(g)){const c=crypto.randomUUID();i&&l[i]&&l[i].childrenIds.push(c),l[c]={id:c,parentId:i,childrenIds:[],role:m.role,content:m.content,timestamp:e,...m.role==="assistant"&&t(b)?{model:t(b)}:{}},a=c,i=c}const n={chat:{title:"Playground Chat",models:[t(b)],params:t(w)?{system:t(w)}:{},history:{messages:l,currentId:a}},meta:{},pinned:!1,created_at:e,updated_at:e},u=new Blob([JSON.stringify([n],null,2)],{type:"application/json"});p(u,`playground-chat-${Date.now()}.json`),mt.success(r().t("Chat exported successfully"))},Lt=()=>{let e="";t(w)&&(e+=`### SYSTEM
5${t(w)}
6
7`);for(const a of t(g))e+=`### ${a.role.toUpperCase()}
8${a.content}
9
10`;const l=new Blob([e.trim()],{type:"text/plain"});p(l,`playground-chat-${Date.now()}.txt`),mt.success(r().t("Chat exported successfully"))};Rt(async()=>{var e,l,a,i,n;((e=q())==null?void 0:e.role)!=="admin"&&await ce("/"),(l=B())!=null&&l.models?v(b,(a=B())==null?void 0:a.models[0]):(i=_())!=null&&i.default_models?v(b,(n=_())==null?void 0:n.default_models.split(",")[0]):v(b,"")}),re(()=>t(A),()=>{t(A)&&kt()}),oe(),_t();var Ct=Xe(),Dt=gt(Ct);Ce(Dt,{size:"sm",get show(){return t(O)},set show(e){v(O,e)},children:(e,l)=>{var a=Ie(),i=o(a),n=o(i),u=o(n,!0);s(n);var m=h(n,2),c=o(m);De(c,{className:"size-5"}),s(m),s(i);var x=h(i,2),H=o(x);{let M=le(()=>(q(),d(()=>{var f;return((f=q())==null?void 0:f.role)==="admin"})));_e(H,{get admin(){return t(M)},custom:!0,get params(){return t(I)},set params(f){v(I,f)},$$legacy:!0})}s(x),s(a),$((M,f)=>{E(u,M),U(m,"aria-label",f)},[()=>(r(),d(()=>r().t("Controls"))),()=>(r(),d(()=>r().t("Close")))]),C("click",m,()=>{v(O,!1)}),y(e,a)},$$slots:{default:!0},$$legacy:!0});var Mt=h(Dt,2),Et=o(Mt),St=o(Et),lt=o(St),Ht=o(lt);he(Ht,{className:"w-full flex-1",buttonClassName:"w-full rounded-lg text-sm border border-gray-100/30 dark:border-gray-850/30 w-full py-1 px-1.5",grow:!0,get open(){return t(A)},set open(e){v(A,e)},children:(e,l)=>{var a=Ae(),i=o(a),n=o(i,!0);s(i);var u=h(i,2);{var m=k=>{var et=Pe(),vt=o(et,!0);s(et),$(()=>E(vt,t(w))),y(k,et)},c=ie(()=>(t(A),t(w),d(()=>!t(A)&&t(w).trim())));rt(u,k=>{t(c)&&k(m)})}var x=h(u,2),H=o(x),M=o(H);{var f=k=>{we(k,{className:"size-3.5"})},J=k=>{ke(k,{className:"size-3.5"})};rt(M,k=>{t(A)?k(f):k(J,-1)})}s(H),s(x),s(a),$(k=>E(n,k),[()=>(r(),d(()=>r().t("System Instructions")))]),y(e,a)},$$slots:{default:!0,content:(e,l)=>{var a=Te(),i=o(a),n=o(i);pt(n),xt(n,u=>v(S,u),()=>t(S)),s(i),s(a),$(u=>U(n,"placeholder",u),[()=>(r(),d(()=>r().t("You're a helpful assistant.")))]),ft(n,()=>t(w),u=>v(w,u)),C("input",n,()=>{kt()}),y(e,a)}},$$legacy:!0});var Zt=h(Ht,2);be(Zt,{children:(e,l)=>{var a=Ue(),i=o(a);Ee(i,{className:"size-4"}),s(a),$(n=>U(a,"aria-label",n),[()=>(r(),d(()=>r().t("More options")))]),y(e,a)},$$slots:{default:!0,content:(e,l)=>{var a=Re(),i=o(a),n=o(i);ye(n,{children:(u,m)=>{var c=Ne(),x=gt(c),H=o(x),M=o(H,!0);s(H),s(x);var f=h(x,2),J=o(f),k=o(J,!0);s(J),s(f),$((et,vt)=>{x.disabled=(t(g),d(()=>t(g).length===0)),E(M,et),f.disabled=(t(g),d(()=>t(g).length===0)),E(k,vt)},[()=>(r(),d(()=>r().t("Export chat (.json)"))),()=>(r(),d(()=>r().t("Plain text (.txt)")))]),C("click",x,()=>{Ft()}),C("click",f,()=>{Lt()}),y(u,c)},$$slots:{default:!0,trigger:(u,m)=>{var c=Be(),x=o(c);
10Me(x,{strokeWidth:"1.5"});var H=h(x,2),M=o(H,!0);s(H),s(c),$(f=>E(M,f),[()=>(r(),d(()=>r().t("Download")))]),y(u,c)}}}),s(i),s(a),y(e,a)}}}),s(lt);var at=h(lt,2),jt=o(at),zt=o(jt),Gt=o(zt);ze(Gt,{get messages(){return t(g)},set messages(e){v(g,e)},$$legacy:!0}),s(zt),s(jt),s(at),xt(at,e=>v(z,e),()=>t(z));var It=h(at,2),Pt=o(It),it=o(Pt),tt=o(it);pt(tt),s(it);var At=h(it,2),nt=o(At),Z=o(nt),Kt=o(Z);{var Qt=e=>{var l=Nt();$(a=>E(l,a),[()=>(r(),d(()=>r().t("User")))]),y(e,l)},Vt=e=>{var l=Nt();$(a=>E(l,a),[()=>(r(),d(()=>r().t("Assistant")))]),y(e,l)};rt(Kt,e=>{t(P)==="user"?e(Qt):e(Vt,-1)})}s(Z),s(nt);var Tt=h(nt,2),dt=o(Tt),ct=o(dt);Jt(ct,5,N,Wt,(e,l)=>{var a=Oe(),i=o(a,!0);s(a);var n={};$(()=>{E(i,(t(l),d(()=>t(l).name))),n!==(n=(t(l),d(()=>t(l).id)))&&(a.value=(a.__value=(t(l),d(()=>t(l).id)))??"")}),y(e,a)}),s(ct),s(dt);var G=h(dt,2),te=o(G);$e(te,{className:"size-4"}),s(G);var Ut=h(G,2),ee=o(Ut);{var ae=e=>{var l=Je(),a=gt(l),i=o(a,!0);s(a);var n=h(a,2),u=o(n,!0);s(n),$((m,c)=>{a.disabled=t(L)==="",E(i,m),E(u,c)},[()=>(r(),d(()=>r().t("Add"))),()=>(r(),d(()=>r().t("Run")))]),C("click",a,()=>{$t(),v(P,t(P)==="user"?"assistant":"user")}),C("click",n,()=>{Yt()}),y(e,l)},se=e=>{var l=We(),a=o(l,!0);s(l),$(i=>E(a,i),[()=>(r(),d(()=>r().t("Cancel")))]),C("click",l,()=>{Xt()}),y(e,l)};rt(ee,e=>{t(Y)?e(se,-1):e(ae)})}s(Ut),s(Tt),s(At),s(Pt),s(It),s(St),s(Et),s(Mt),$((e,l,a)=>{U(tt,"placeholder",e),Bt(Z,1,`px-3.5 py-1.5 text-sm font-medium bg-gray-50 hover:bg-gray-100 text-gray-900 dark:bg-gray-850 dark:hover:bg-gray-800 dark:text-gray-200 transition rounded-lg shrink-0 ${B(),d(()=>{var i;return((i=B())==null?void 0:i.highContrastMode)??!1?"":"outline-hidden"})??""}`),U(Z,"aria-pressed",t(P)==="assistant"),U(Z,"aria-label",l),Bt(G,1,`p-1.5 text-sm font-medium bg-transparent hover:bg-gray-100 dark:hover:bg-gray-800 transition rounded-lg ${t(O)?"text-black dark:text-white":"text-gray-500 dark:text-gray-400"}`),U(G,"aria-label",a)},[()=>(r(),t(P),d(()=>r().t("Enter {{role}} message here",{role:t(P)==="user"?r().t("a user"):r().t("an assistant")}))),()=>(r(),t(P),d(()=>r().t(t(P)==="user"?"Switch to Assistant role":"Switch to User role"))),()=>(r(),d(()=>r().t("Controls")))]),ft(tt,()=>t(L),e=>v(L,e)),C("input",tt,e=>{e.target.style.height="",e.target.style.height=Math.min(e.target.scrollHeight,150)+"px"}),C("focus",tt,e=>{e.target.style.height="",e.target.style.height=Math.min(e.target.scrollHeight,150)+"px"}),C("click",Z,()=>{v(P,t(P)==="user"?"assistant":"user")}),ne(ct,()=>t(b),e=>v(b,e)),C("click",G,()=>{v(O,!t(O))}),y(X,Ct),yt(),Q()}function ya(X){qe(X,{})}export{ya as component};
11//# sourceMappingURL=30.DHpBrdBN.js.map

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.