1const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["../chunks/C2Gx4Rc_.js","../chunks/C1FmrZbK.js","../chunks/QjJsDpFa.js","../chunks/BJAJhFBJ.js","../chunks/BzfgYq-h.js"])))=>i.map(i=>d[i]); 2import"../chunks/CWj6FrbW.js";import"../chunks/69_IOA4Y.js";import{S as ig,bT as X1,K as dg,r,R as J1,az as Z1,bU as Q1,t as g,a as i,E as Jr,p as vr,g as mr,x as Kt,B as it,y as la,c as a,n as o,l as e,k as s,z as l,d,q as ke,b as cr,e as ct,s as hr,m as h,D as na,f as u,aD as ja,aE as es,i as Qe,h as Wr,aC as ll,aJ as Mr,C as Qr,u as v,o as ea,A as Al,aG as We,bg as Ir,bV as ou,bW as su,b4 as Ja,aQ as yd,aY as em,aK as So,bw as af,bv as lf,b6 as nu,aW as tm,a2 as rm}from"../chunks/7a2fV5I9.js";import{i as G}from"../chunks/Dw-yaK-_.js";import{s as Ka}from"../chunks/CiyEWm25.js";import{t as of}from"../chunks/SSgOjjKL.js";import{s as k,c as me,a as Be,r as vt,d as bl,i as am,f as lm,g as ts,b as al,h as om,j as vg}from"../chunks/3tOhmI7k.js";import{i as gr}from"../chunks/CWFN-V6k.js";import{t as rt}from"../chunks/B1RxOmHW.js";import{f as no}from"../chunks/BGgher5A.js";import{g as fa}from"../chunks/B_B5nTAF.js";import{p as Td}from"../chunks/B-K6OmaW.js";import{f as sf}from"../chunks/Bre5lY_g.js";import{d as sm,f as nf,h as Pu,n as nm,i as im,j as $d,k as dm,l as vm,m as cg,o as cm,p as um,a as so,g as La,q as gm,r as _m,s as fm,t as pm,v as mm,w as hm,x as xm,y as bm,z as ym,A as $m,B as wm}from"../chunks/tdtdASma.js";import{a as km}from"../chunks/D_BdqKZF.js";import{v as Em,r as Am,i as Im,b as Sm,c as Nm,d as Pm,p as Cm,e as Tm,f as Lm,h as Om,j as Mm,k as Rm,l as df,m as iu,n as Dm,o as Um,q as Bm,t as Gm,a as jm,u as Hm,s as Fm,w as Wm,x as zm,y as Km,z as Ym,A as Vm}from"../chunks/CFQBFPIt.js";import{S as qm,F as Xm,u as Jm,v as Zm,D as Qm,g as vf}from"../chunks/BSzRx_1y.js";import{k as cf,u as Tl,l as eh,m as th,n as rh,o as ah,g as lh,s as oh,p as sh,a as uf}from"../chunks/CAxgicfj.js";import{b as ia,m as Cu,d as No,h as qa,l as gf,v as Ld,E as ug,u as du,W as vl,ae as _f,c as wd,g as nh,af as ih,ag as gg,f as tl,p as Bs,s as As,N as _g,q as vu,ah as nd}from"../chunks/BzfgYq-h.js";import{e as ua,u as ka,s as hl,a as $a,c as _a,m as Gl,q as kd,af as cu,ag as dh,z as Cl,i as cl,n as Tu,Q as Gs,R as Od,ad as ff,ah as vh,P as El,g as Ul,ai as Lu,aj as pf,ak as js,al as mf,am as ch,an as Rs,ao as uh,o as Ds,ap as fg,aq as pg,ar as hf,r as Ou,d as ba,p as Ed,as as id,at as gh,au as _h,av as mg,aw as Zo,l as fh,K as ph,W as Mu,ax as mh,ay as xf,az as hh,aA as xh,Y as Eo,aB as bh,aC as Us,N as yh,aD as Is,C as $h,aE as wh,aF as kh,aG as Eh,aH as Ah,aI as hg,aJ as Ih,aK as Sh,aL as Nh,Z as bf,_ as Io,aM as uu,M as Wo,aN as Ph,aO as Ch,aP as Th,a4 as Rc,$ as dd,t as Lh}from"../chunks/BmB58o_w.js";import{e as lr,i as Ar}from"../chunks/CDs8OzhH.js";import{p as Xe,b as Oa,l as xg}from"../chunks/DPBuKmzL.js";import{S as Ws}from"../chunks/D-EvzYhP.js";import{b as Oh,m as Mh,c as gu,d as Rh,e as Dh,g as bg,f as yf,h as Uh,a as Bh,i as Gh}from"../chunks/r1KjJivQ.js";import{t as jh,g as $f}from"../chunks/wRmTAzPY.js";import{c as Hh}from"../chunks/Btmng-zA.js";import{p as ca,s as xl}from"../chunks/Bfc47y5P.js";import{g as Ad,c as Ru,e as Du,f as Fh,h as Wh,i as zh,j as Kh,k as Yh,m as wf,n as kf,o as Vh,p as qh,q as Xh,r as Jh,s as Zh,t as Qh,v as ex}from"../chunks/DXtexrge.js";import{D as io}from"../chunks/DhS58ybw.js";import{D as vo}from"../chunks/CboLYV0R.js";import{T as Lt}from"../chunks/BsoPO1g0.js";import{b as dt,c as _u,a as as}from"../chunks/DrctxlrS.js";import{S as ra}from"../chunks/2p5Upk8k.js";import{M as Wa}from"../chunks/C7eVKYlM.js";import{X as Po,E as Id,C as tx,A as Md,S as rx,D as ax,F as Sd,T as lx,a as Ef,b as fu,c as ox,d as sx,i as Qo,f as Nd,s as bd,k as Pd,r as nx,e as ix,g as dx,h as Af,j as vx,W as cx,m as ux,l as Va,n as gx}from"../chunks/DVAhugba.js";import{E as _x,C as fx}from"../chunks/CXtBKdIL.js";import{E as Rd,P as px,g as mx,L as hx,a as xx}from"../chunks/BflTMJB0.js";import{_ as pu}from"../chunks/C1FmrZbK.js";import{D as yg}from"../chunks/CGwhmPsw.js";import{g as Hs}from"../chunks/__7d91Lc.js";import{M as Uu}from"../chunks/PhGxva-t.js";import{C as Ca}from"../chunks/BsRdE2LK.js";import{G as zs}from"../chunks/BdLSpcrE.js";import{L as Ks}from"../chunks/C_70V0p_.js";import{C as Ba}from"../chunks/VRbDrCGZ.js";import{C as bx}from"../chunks/BnCjJ8JV.js";import{C as Bu}from"../chunks/Bzw9PJk4.js";import{P as Ya}from"../chunks/vr6NnVie.js";import{b as Gu}from"../chunks/x6O0Ils2.js";import"../chunks/DHDdF2hJ.js";import"../chunks/CKKb5HiZ.js";import{m as yx,n as $x,o as wx,q as kx,t as Ex,v as Ax,w as Ix,x as Sx,g as Nx}from"../chunks/DtgRq8KU.js";import{A as ju}from"../chunks/CvE-5lsK.js";import{M as Px}from"../chunks/DVv8tHZh.js";import{H as If}from"../chunks/FfUnmdM-.js";import{L as Hu}from"../chunks/M0GeTstH.js";import{X as wa}from"../chunks/IqCUZuIq.js";import{C as Cx}from"../chunks/BwVZHUMe.js";import{c as Tx}from"../chunks/Cl6Xka7r.js";import{c as Fu}from"../chunks/FxibMJEO.js";import{S as $g}from"../chunks/242QKLwC.js";import{C as Dd}from"../chunks/WDpvigIS.js";import{S as Cr}from"../chunks/DykNE3_l.js";import{E as Sf}from"../chunks/D8XsQTRR.js";import{T as ma}from"../chunks/DKYZ2I4S.js";import{U as Lx,C as Ox,T as Wu}from"../chunks/Cnv-k5bP.js";import{b as Mx}from"../chunks/YoyIeg0L.js";import{g as Rx,v as Dx,d as wg,a as kg,p as Eg,c as Ag,u as Ux,b as Bx,e as Nf,f as Gx}from"../chunks/C_CxKi8v.js";import{g as jx,c as Hx}from"../chunks/DKxluP3e.js";import{A as zu}from"../chunks/woEqk4zA.js";import{M as Ys}from"../chunks/brXx8PnO.js";import{S as Nt}from"../chunks/CKdYWes-.js";import{g as Pf,a as Fx,b as Wx,u as zx}from"../chunks/DNDQV1Hj.js";import{s as Ig,c as Kx,d as Yx,e as Vx}from"../chunks/DYcd1Z5v.js";import{C as ha}from"../chunks/Bi6L21WR.js";import{b as qx,D as Xx}from"../chunks/CUjOl_fs.js";import{D as Vs}from"../chunks/BWN1CQWt.js";import{S as Ud}from"../chunks/CBBDko0h.js";import{v as Jx,b as Cf,h as Zx,u as Qx,i as eb,d as Dc,e as tb,j as rb,l as ab,k as lb}from"../chunks/C2X-vRQU.js";import{T as ob}from"../chunks/kHqUq8zs.js";import{A as Tf,a as Lf,L as Of}from"../chunks/CiSttPhG.js";import{L as Ku}from"../chunks/BNA-avzd.js";import{A as sb}from"../chunks/31cqHnL0.js";import{C as nb}from"../chunks/DrYPBTns.js";import{B as ib,A as db}from"../chunks/wGpOrVdD.js";import{G as Yu}from"../chunks/DuvXukAh.js";import{h as Vu}from"../chunks/Dxy4iZ9H.js";import{g as qu,a as vb}from"../chunks/D9L9UdG9.js";import"../chunks/dm1FmSOd.js";import{f as cb,e as ub,h as Mf,u as gb,c as Sg,a as _b,i as fb,j as pb,t as mb}from"../chunks/BsmuVvJY.js";import{C as hb,P as xb,D as bb,B as yb,M as $b,T as Uc}from"../chunks/D5kHwzKB.js";import{P as wb}from"../chunks/Crwh6-fq.js";import{D as kb}from"../chunks/CInwXf4O.js";import{P as mu,a as hu}from"../chunks/CnkF-02C.js";import{E as Ng}from"../chunks/D7uo45nt.js";import{E as Pg}from"../chunks/B2SXYspn.js";import{C as Eb}from"../chunks/BSVySTB7.js";import{D as Ab}from"../chunks/ONjWL7M_.js";import{S as Ib}from"../chunks/BgJF1ty_.js";import{T as Sb}from"../chunks/D0Sth1Gs.js";import{i as Nb,j as Pb}from"../chunks/Bpnq7Ztk.js";import{M as Cb}from"../chunks/DX_X7top.js";import{q as Tb,s as Lb,v as Ob,w as Mb,x as Rb,y as Db,z as Ub,A as Bb}from"../chunks/CSCwIF3S.js";import{g as Rf,r as Gb,u as Df,a as jb,b as Hb}from"../chunks/BLmAthdA.js";import{g as Fb,b as Wb,v as Bc,u as zb}from"../chunks/BSW39qzn.js";import{C as Kb}from"../chunks/BbITVtzl.js";import{d as Yb}from"../chunks/Brqc_rRr.js";let Gc=null;function Vb(){var _,t;
2if(Gc===null){var He=Z1("select");He.innerHTML=Q1("<option><span>t</span></option>"),Gc=((t=(_=He.firstChild)==null?void 0:_.firstChild)==null?void 0:t.nodeType)===1}return Gc}function qb(He,_){var t=dg;Vb()||(ig(!1),He.textContent="",He.append(X1("")));try{_()}finally{t&&(dg?r(He):(ig(!0),J1(He)))}}const xu=He=>{typeof document>"u"||document.documentElement.style.setProperty("--app-text-scale",`${He}`)},qo=He=>typeof He=="string"?He.trim().replace(/[\u0000-\u001f\u007f]/g,""):"",Xo=He=>{if(typeof document>"u")return;const _=qo(He);if(!_){document.documentElement.style.removeProperty("--app-font-family");return}document.documentElement.style.setProperty("--app-font-family",`"${_.replace(/\\/g,"\\\\").replace(/"/g,'\\"')}"`)},Xb=(He,_)=>_.some(t=>He instanceof t);let Cg,Tg;function Jb(){return Cg||(Cg=[IDBDatabase,IDBObjectStore,IDBIndex,IDBCursor,IDBTransaction])}function Zb(){return Tg||(Tg=[IDBCursor.prototype.advance,IDBCursor.prototype.continue,IDBCursor.prototype.continuePrimaryKey])}const Uf=new WeakMap,bu=new WeakMap,Bf=new WeakMap,jc=new WeakMap,Xu=new WeakMap;function Qb(He){const _=new Promise((t,f)=>{const n=()=>{He.removeEventListener("success",Ie),He.removeEventListener("error",X)},Ie=()=>{t(Bl(He.result)),n()},X=()=>{f(He.error),n()};He.addEventListener("success",Ie),He.addEventListener("error",X)});return _.then(t=>{t instanceof IDBCursor&&Uf.set(t,He)}).catch(()=>{}),Xu.set(_,He),_}function ey(He){if(bu.has(He))return;const _=new Promise((t,f)=>{const n=()=>{He.removeEventListener("complete",Ie),He.removeEventListener("error",X),He.removeEventListener("abort",X)},Ie=()=>{t(),n()},X=()=>{f(He.error||new DOMException("AbortError","AbortError")),n()};He.addEventListener("complete",Ie),He.addEventListener("error",X),He.addEventListener("abort",X)});bu.set(He,_)}let yu={get(He,_,t){if(He instanceof IDBTransaction){if(_==="done")return bu.get(He);if(_==="objectStoreNames")return He.objectStoreNames||Bf.get(He);if(_==="store")return t.objectStoreNames[1]?void 0:t.objectStore(t.objectStoreNames[0])}return Bl(He[_])},set(He,_,t){return He[_]=t,!0},has(He,_){return He instanceof IDBTransaction&&(_==="done"||_==="store")?!0:_ in He}};function ty(He){yu=He(yu)}function ry(He){return He===IDBDatabase.prototype.transaction&&!("objectStoreNames"in IDBTransaction.prototype)?function(_,...t){const f=He.call(Hc(this),_,...t);return Bf.set(f,_.sort?_.sort():[_]),Bl(f)}:Zb().includes(He)?function(..._){return He.apply(Hc(this),_),Bl(Uf.get(this))}:function(..._){return Bl(He.apply(Hc(this),_))}}function ay(He){return typeof He=="function"?ry(He):(He instanceof IDBTransaction&&ey(He),Xb(He,Jb())?new Proxy(He,yu):He)}function Bl(He){if(He instanceof IDBRequest)return Qb(He);if(jc.has(He))return jc.get(He);const _=ay(He);return _!==He&&(jc.set(He,_),Xu.set(_,He)),_}const Hc=He=>Xu.get(He);function ly(He,_,{blocked:t,upgrade:f,blocking:n,terminated:Ie}={}){const X=indexedDB.open(He,_),R=Bl(X);return f&&X.addEventListener("upgradeneeded",I=>{f(Bl(X.result),I.oldVersion,I.newVersion,Bl(X.transaction),I)}),t&&X.addEventListener("blocked",I=>t(I.oldVersion,I.newVersion,I)),R.then(I=>{Ie&&I.addEventListener("close",()=>Ie()),n&&I.addEventListener("versionchange",c=>n(c.oldVersion,c.newVersion,c))}).catch(()=>{}),R}function Lg(He,{blocked:_}={}){const t=indexedDB.deleteDatabase(He);return _&&t.addEventListener("blocked",f=>_(f.oldVersion,f)),Bl(t).then(()=>{})}const oy=["get","getKey","getAll","getAllKeys","count"],sy=["put","add","delete","clear"],Fc=new Map;function Og(He,_){if(!(He instanceof IDBDatabase&&!(_ in He)&&typeof _=="string"))return;if(Fc.get(_))return Fc.get(_);const t=_.replace(/FromIndex$/,""),f=_!==t,n=sy.includes(t);if(!(t in(f?IDBIndex:IDBObjectStore).prototype)||!(n||oy.includes(t)))return;const Ie=async function(X,...R){const I=this.transaction(X,n?"readwrite":"readonly");let c=I.store;return f&&(c=c.index(R.shift())),(await Promise.all([c[t](...R),n&&I.done]))[0]};return Fc.set(_,Ie),Ie}ty(He=>({...He,get:(_,t,f)=>Og(_,t)||He.get(_,t,f),has:(_,t)=>!!Og(_,t)||He.has(_,t)}));var ny=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"><path d="M12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C17.5228 2 22 6.47715 22 12C22 17.5228 17.5228 22 12 22Z" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path><path d="M16.5 14.5C16.5 14.5 15 16.5 12 16.5C9 16.5 7.5 14.5 7.5 14.5" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path><path d="M15.5 9C15.2239 9 15 8.77614 15 8.5C15 8.22386 15.2239 8 15.5 8C15.7761 8 16 8.22386 16 8.5C16 8.77614 15.7761 9 15.5 9Z" fill="currentColor" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path>
2<path d="M8.5 9C8.22386 9 8 8.77614 8 8.5C8 8.22386 8.22386 8 8.5 8C8.77614 8 9 8.22386 9 8.5C9 8.77614 8.77614 9 8.5 9Z" fill="currentColor" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function Gf(He,_){let t=Xe(_,"className",8,"size-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=ny();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}var iy=u('<div class=" flex items-center"><!></div>'),dy=u('<div class="ml-2 self-center"><!></div>'),vy=u('<div><div class=" flex justify-between dark:text-gray-300 px-4 pt-3 pb-1"><div class=" text-sm self-center"> </div> <button class="self-center rounded-lg p-1 text-gray-500 transition hover:bg-gray-50 hover:text-gray-700 dark:text-gray-400 dark:hover:bg-gray-800 dark:hover:text-gray-200"><!></button></div> <div class="flex flex-col md:flex-row w-full px-4 pb-4 md:space-x-4 dark:text-gray-200"><div class=" flex flex-col w-full sm:flex-row sm:justify-center sm:space-x-6"><form class="flex flex-col w-full"><div><div class="text-xs text-gray-500 mb-1.5"> </div> <div class="flex items-center px-2.5 py-2 gap-3 border border-gray-100/50 dark:border-gray-850/50 rounded-xl"><!> <input id="status-message" type="text" autocomplete="off" required=""/> <button type="button"><!></button></div></div> <div class="flex justify-end pt-3 text-sm font-normal gap-1.5"><button type="submit"> <!></button></div></form></div></div></div>');function cy(He,_){vr(_,!1);const t=()=>ct(R,"$i18n",Ie),f=()=>ct(ka,"$user",Ie),n=()=>ct(ua,"$settings",Ie),[Ie,X]=hr(),R=mr("i18n");let I=Xe(_,"show",12,!1),c=Xe(_,"onSave",8,()=>{}),x=h(""),A=h(""),E=h(!1);const V="rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500",B=async()=>{s(E,!0),await cf(localStorage.token,{status_emoji:e(x),status_message:e(A)}).catch(Se=>(rt.error(`${Se}`),s(E,!1),null))?(rt.success(t().t("Status updated successfully")),c()()):rt.error(t().t("Failed to update status")),I(!1),s(E,!1)},j=async()=>{var Se,Y;s(x,((Se=f())==null?void 0:Se.status_emoji)||""),s(A,((Y=f())==null?void 0:Y.status_message)||""),await na();const Te=document.getElementById("status-message");Te&&(Te.focus(),Te.select())},w=()=>{s(x,""),s(A,""),s(E,!1)};Kt(()=>it(I()),()=>{I()?j():w()}),la(),gr(),Wa(He,{size:"sm",get show(){return I()},set show(Te){I(Te)},children:(Te,Se)=>{var Y=vy(),ee=a(Y),ae=a(ee),Pe=a(ae,!0);r(ae);var se=o(ae,2),m=a(se);Po(m,{className:"size-4"}),r(se),r(ee);var ce=o(ee,2),De=a(ce),Le=a(De),Ne=a(Le),Ce=a(Ne),we=a(Ce,!0);r(Ce);var oe=o(Ce,2),de=a(oe);_x(de,{onClose:()=>{},onSubmit:O=>{s(x,O)},children:(O,ie)=>{var M=iy(),ve=a(M);{var te=_e=>{Rd(_e,{get shortCode(){return e(x)}})},ge=_e=>{Gf(_e,{})};G(ve,_e=>{e(x)?_e(te):_e(ge,-1)})}r(M),i(O,M)},$$slots:{default:!0}});var be=o(de,2);vt(be);var Me=o(be,2),qe=a(Me);Po(qe,{}),r(Me),r(oe),r(Ne);var Re=o(Ne,2),ue=a(Re),xe=a(ue),K=o(xe);{var Oe=O=>{var ie=dy(),M=a(ie);ra(M,{}),r(ie),i(O,ie)};G(K,O=>{e(E)&&O(Oe)})}r(ue),r(Re),r(Le),r(De),r(ce),r(Y),g((O,ie,M,ve)=>{d(Pe,O),d(we,ie),k(be,1,(n(),l(()=>{var te;return`w-full flex-1 text-sm ${((te=n())==null?void 0:te.highContrastMode)??!1?V:"bg-transparent outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700"}`}))),Be(be,"placeholder",M),k(ue,1,`px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-950 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full flex flex-row space-x-1 items-center ${e(E)?" cursor-not-allowed":""}`),ue.disabled=e(E),d(xe,`${ve??""} `)},[()=>(t(),l(()=>t().t("Set your status"))),()=>(t(),l(()=>t().t("Status"))),()=>(t(),l(()=>t().t("What's on your mind?"))),()=>(t(),l(()=>
2t().t("Save")))]),ke("click",se,()=>{I(!1)}),dt(be,()=>e(A),O=>s(A,O)),ke("click",Me,()=>{s(x,""),s(A,"")}),ke("submit",Le,ca(()=>{B()})),i(Te,Y)},$$slots:{default:!0},$$legacy:!0}),cr(),X()}var uy=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"><path d="M15 4V2M15 4V6M15 4H10.5M3 10V19C3 20.1046 3.89543 21 5 21H19C20.1046 21 21 20.1046 21 19V10H3Z" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path><path d="M3 10V6C3 4.89543 3.89543 4 5 4H7" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path><path d="M7 2V6" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path><path d="M21 10V6C21 4.89543 20.1046 4 19 4H18.5" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function $u(He,_){let t=Xe(_,"className",8,"size-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=uy();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}var gy=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"><path d="M12 6L12 12L18 12" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path><path d="M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function wu(He,_){let t=Xe(_,"className",8,"size-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=gy();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}var _y=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"><path d="M13.5 6L10 18.5" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path><path d="M6.5 8.5L3 12L6.5 15.5" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path><path d="M17.5 8.5L21 12L17.5 15.5" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function ku(He,_){let t=Xe(_,"className",8,"size-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=_y();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}var fy=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"><path d="M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path><path d="M9 9C9 5.49997 14.5 5.5 14.5 9C14.5 11.5 12 10.9999 12 13.9999" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path><path d="M12 18.01L12.01 17.9989" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function py(He,_){let t=Xe(_,"className",8,"size-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=fy();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}var my=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"><path d="M12 12H19M19 12L16 15M19 12L16 9" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path><path d="M19 6V5C19 3.89543 18.1046 3 17 3H7C5.89543 3 5 3.89543 5 5V19C5 20.1046 5.89543 21 7 21H17C18.1046 21 19 20.1046 19 19V18" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function hy(He,_){let t=Xe(_,"className",8,"size-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=my();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}var xy=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"><path d="M9 19L3.78974 20.7368C3.40122 20.8663 3 20.5771 3 20.1675L3 5.43246C3 5.1742 3.16526 4.94491 3.41026 4.86325L9 3M9 19L15 21M9 19L9 3M15 21L20.5897 19.1368C20.8347 19.0551 21 18.8258 21 18.5675L21 3.83246C21 3.42292 20.5988 3.13374 20.2103 3.26325L15 5M15 21L15 5M15 5L9 3" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function by(He,_){let t=Xe(_,"className",8,"size-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=xy();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}var yy=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"><path d="M4 19V5C4 3.89543 4.89543 3 6 3H19.4C19.7314 3 20 3.26863 20 3.6V16.7143" stroke="currentColor" stroke-linecap="round"></path><path d="M6 17L20 17" stroke="currentColor" stroke-linecap="round"></path><path d="M6 21L20 21" stroke="currentColor" stroke-linecap="round"></path><path d="M6 21C4.89543 21 4 20.1046 4 19C4 17.8954 4.89543 17 6 17" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path><path d="M9 7L15 7" stroke="currentColor" stroke-linecap="round"></path></svg>');function Fs(He,_){let t=Xe(_,"className",8,"size-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=yy();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}var $y=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"><path d="M9.5 14.5L3 21" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path><path d="M5.00007 9.48528L14.1925 18.6777L15.8895 16.9806L15.4974 13.1944L21.0065 8.5211L15.1568 2.67141L10.4834 8.18034L6.69713 7.78823L5.00007 9.48528Z" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function Jo(He,_){let t=Xe(_,"className",8,"size-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=$y();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}var wy=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"><path d="M9.5 14.5L3 21" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path><path d="M7.67602 7.8896L6.69713 7.78823L5.00007 9.48528L14.1925 18.6777L15.8895 16.9806L15.7879 16M11.4847 7L15.1568 2.67141L21.0065 8.5211L16.6991 12.175" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path><path d="M3 3L21 21" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function Ao(He,_){let t=Xe(_,"className",8,"size-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=wy();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}var ky=Jr('<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor" aria-hidden="true"><path stroke-linecap="round" stroke-linejoin="round" d="M10.343 3.94c.09-.542.56-.94 1.11-.94h1.093c.55 0 1.02.398 1.11.94l.149.894c.07.424.384.764.78.93.398.164.855.142 1.205-.108l.737-.527a1.125 1.125 0 011.45.12l.773.774c.39.389.44 1.002.12 1.45l-.527.737c-.25.35-.272.806-.107 1.204.165.397.505.71.93.78l.893.15c.543.09.94.56.94 1.109v1.094c0 .55-.397 1.02-.94 1.11l-.893.149c-.425.07-.765.383-.93.78-.165.398-.143.854.107 1.204l.527.738c.32.447.269 1.06-.12 1.45l-.774.773a1.125 1.125 0 01-1.449.12l-.738-.527c-.35-.25-.806-.272-1.203-.107-.397.165-.71.505-.781.929l-.149.894c-.09.542-.56.94-1.11.94h-1.094c-.55 0-1.019-.398-1.11-.94l-.148-.894c-.071-.424-.384-.764-.781-.93-.398-.164-.854-.142-1.204.108l-.738.527c-.447.32-1.06.269-1.45-.12l-.773-.774a1.125 1.125 0 01-.12-1.45l.527-.737c.25-.35.273-.806.108-1.204-.165-.397-.505-.71-.93-.78l-.894-.15c-.542-.09-.94-.56-.94-1.109v-1.094c0-.55.398-1.02.94-1.11l.894-.149c.424-.07.765-.383.93-.78.165-.398.143-.854-.107-1.204l-.527-.738a1.125 1.125 0 01.
212-1.45l.773-.773a1.125 1.125 0 011.45-.12l.737.527c.35.25.807.272 1.204.107.397-.165.71-.505.78-.929l.15-.894z"></path><path stroke-linecap="round" stroke-linejoin="round" d="M15 12a3 3 0 11-6 0 3 3 0 016 0z"></path></svg>');function jf(He,_){let t=Xe(_,"className",8,"w-5 h-5"),f=Xe(_,"strokeWidth",8,"1.5");var n=ky();g(()=>{Be(n,"stroke-width",f()),k(n,0,me(t()))}),i(He,n)}var Ey=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"><path d="M10 12C10 14.2091 8.20914 16 6 16C3.79086 16 2 14.2091 2 12C2 9.79086 3.79086 8 6 8C8.20914 8 10 9.79086 10 12ZM10 12H22V15" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path><path d="M18 12V15" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function Ay(He,_){let t=Xe(_,"className",8,"size-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=Ey();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}var Iy=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"><path d="M5 20V19C5 15.134 8.13401 12 12 12V12C15.866 12 19 15.134 19 19V20" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path><path d="M12 12C14.2091 12 16 10.2091 16 8C16 5.79086 14.2091 4 12 4C9.79086 4 8 5.79086 8 8C8 10.2091 9.79086 12 12 12Z" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function Hf(He,_){let t=Xe(_,"className",8,"size-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=Iy();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}var Sy=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"><path d="M13.9922 17H16.9922M19.9922 17H16.9922M16.9922 17V14M16.9922 17V20" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path><path d="M4 9.4V4.6C4 4.26863 4.26863 4 4.6 4H9.4C9.73137 4 10 4.26863 10 4.6V9.4C10 9.73137 9.73137 10 9.4 10H4.6C4.26863 10 4 9.73137 4 9.4Z" stroke="currentColor"></path><path d="M4 19.4V14.6C4 14.2686 4.26863 14 4.6 14H9.4C9.73137 14 10 14.2686 10 14.6V19.4C10 19.7314 9.73137 20 9.4 20H4.6C4.26863 20 4 19.7314 4 19.4Z" stroke="currentColor"></path><path d="M14 9.4V4.6C14 4.26863 14.2686 4 14.6 4H19.4C19.7314 4 20 4.26863 20 4.6V9.4C20 9.73137 19.7314 10 19.4 10H14.6C14.2686 10 14 9.73137 14 9.4Z" stroke="currentColor"></path></svg>');function Eu(He,_){let t=Xe(_,"className",8,"size-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=Sy(),Ie=o(a(n)),X=o(Ie),R=o(X);r(n),g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f()),Be(Ie,"stroke-width",f()),Be(X,"stroke-width",f()),Be(R,"stroke-width",f())}),i(He,n)}var Ny=u('<div class="ml-auto flex shrink-0 items-center justify-end gap-1 rounded-full px-1.5 py-0.5 text-[0.6875rem] leading-none text-gray-500 dark:text-gray-400"><span class="size-1.5 rounded-full bg-green-500"></span> <span> </span></div>'),Py=u('<div><button class="flex h-[1.6875rem] items-center gap-2 rounded-xl px-2 text-xs w-full hover:bg-gray-100 dark:hover:bg-gray-900 transition cursor-pointer select-none text-left" type="button"><div class="self-center shrink-0 size-4.5 flex items-center justify-center"><img alt="" class="size-4.5 rounded-full object-cover"/></div> <div class="self-center min-w-0 flex-1 truncate"> </div> <!></button></div>'),Cy=u('<div class="self-center shrink-0 size-4.5 flex items-center justify-center"><!></div>'),Ty=u('<button class="flex size-5 items-center justify-center" type="button"><!></button>'),Ly=u('<div class="user-menu-status"><button class="w-full h-[1.6875rem] gap-2 rounded-xl px-2 hover:bg-gray-100 dark:hover:bg-gray-900 transition cursor-pointer select-none text-xs flex items-center text-left" type="button"><!> <!> <div class="self-center"><!></div></button></div>'),Oy=u('<div class="user-menu-status"><button class="w-full h-[1.6875rem] gap-2 rounded-xl px-2 hover:bg-gray-100 dark:hover:bg-gray-900 transition cursor-pointer select-none text-xs flex items-center text-left" type="button"><div class="self-center shrink-0 size-4.5 flex items-center justify-center"><!></div> <div class="self-center truncate"> </div></button></div>'),My=u('<hr class="border-gray-50/30 dark:border-gray-800/30 my-0.5 mx-1 p-0"/>'),Ss=u('<button type="button" class="p-1 mr-1 rounded-lg hover:bg-gray-100/60 dark:hover:bg-gray-700/60 transition"><!></button>'),Ry=u('<div class="flex items-center w-full"><a href="/workspace" draggable="false" class="flex flex-1 h-[1.6875rem] items-center gap-2 rounded-xl px-2 text-[0.8125rem] hover:bg-gray-100 dark:hover:bg-gray-900 transition cursor-pointer select-none">
2<div class="self-center"><!></div> <div class="self-center truncate"> </div></a> <!></div>'),Dy=u('<div class="flex items-center w-full"><a href="/notes" draggable="false" class="flex flex-1 h-[1.6875rem] items-center gap-2 rounded-xl px-2 text-[0.8125rem] hover:bg-gray-100 dark:hover:bg-gray-900 transition cursor-pointer select-none"><div class="self-center"><!></div> <div class="self-center truncate"> </div></a> <!></div>'),Uy=u('<div class="flex items-center w-full"><a href="/calendar" draggable="false" class="flex flex-1 h-[1.6875rem] items-center gap-2 rounded-xl px-2 text-[0.8125rem] hover:bg-gray-100 dark:hover:bg-gray-900 transition cursor-pointer select-none"><div class="self-center"><!></div> <div class="self-center truncate"> </div></a> <!></div>'),By=u('<div class="flex items-center w-full"><a href="/automations" draggable="false" class="flex flex-1 h-[1.6875rem] items-center gap-2 rounded-xl px-2 text-[0.8125rem] hover:bg-gray-100 dark:hover:bg-gray-900 transition cursor-pointer select-none"><div class="self
2-center"><!></div> <div class="self-center truncate"> </div></a> <!></div>'),Gy=u('<div class="flex items-center w-full"><a href="/playground" draggable="false" class="flex flex-1 h-[1.6875rem] items-center gap-2 rounded-xl px-2 text-[0.8125rem] hover:bg-gray-100 dark:hover:bg-gray-900 transition cursor-pointer select-none"><div class="self-center"><!></div> <div class="self-center truncate"> </div></a> <!></div>'),jy=u('<a href="https://docs.openwebui.com" target="_blank" draggable="false" class="flex h-[1.6875rem] items-center gap-2 rounded-xl px-2 text-[0.8125rem] w-full hover:bg-gray-100 dark:hover:bg-gray-900 transition cursor-pointer select-none" id="chat-share-button"><div class="self-center"><!></div> <div class=" self-center truncate"> </div></a> <a href="https://github.com/open-webui/open-webui/releases" target="_blank" draggable="false" class="flex h-[1.6875rem] items-center gap-2 rounded-xl px-2 text-[0.8125rem] w-full hover:bg-gray-100 dark:hover:bg-gray-900 transition cursor-pointer select-none" id="chat-share-button"><div class="self-center"><!></div> <div class=" self-center truncate"> </div></a>',1),Hy=u('<hr class="border-gray-50/30 dark:border-gray-800/30 my-0.5 mx-1 p-0"/> <!> <button class="flex h-[1.6875rem] items-center gap-2 rounded-xl px-2 text-[0.8125rem] w-full hover:bg-gray-100 dark:hover:bg-gray-900 transition cursor-pointer select-none" type="button" id="chat-share-button"><div class="self-center"><!></div> <div class=" self-center truncate"> </div></button>',1),Fy=u('<a href="/admin" draggable="false" class="flex h-[1.6875rem] items-center gap-2 rounded-xl px-2 text-[0.8125rem] w-full hover:bg-gray-100 dark:hover:bg-gray-900 transition cursor-pointer select-none"><div class="self-center"><!></div> <div class=" self-center truncate"> </div></a>'),Wy=u('<!> <!> <!> <!> <!> <!> <!> <!> <!> <hr class="border-gray-50/30 dark:border-gray-800/30 my-0.5 mx-1 p-0"/> <!> <button class="flex h-[1.6875rem] items-center gap-2 rounded-xl px-2 text-[0.8125rem] w-full hover:bg-gray-100 dark:hover:bg-gray-900 transition cursor-pointer select-none" type="button"><div class="self-center"><!></div> <div class=" self-center truncate"> </div></button> <button class="flex h-[1.6875rem] items-center gap-2 rounded-xl px-2 text-[0.8125rem] w-full hover:bg-gray-100 dark:hover:bg-gray-900 transition cursor-pointer select-none" type="button"><div class="self-center"><!></div> <div class=" self-center truncate"> </div></button>',1),zy=u('<div slot="content"><!></div>'),Ky=u("<!> <!>",1);function Mg(He,_){vr(_,!1);const t=()=>ct(ua,"$settings",R),f=()=>ct(_a,"$config",R),n=()=>ct(ka,"$user",R),Ie=()=>ct(Gl,"$mobile",R),X=()=>ct(x,"$i18n",R),[R,I]=hr(),c=h(),x=mr("i18n");let A=Xe(_,"show",12,!1),E=Xe(_,"role",8,""),V=Xe(_,"profile",8,!1),B=Xe(_,"help",8,!1),j=Xe(_,"className",8,"w-[15rem]"),w=Xe(_,"align",8,"end"),Te=Xe(_,"showActiveUsers",8,!0),Se=h(!1),Y=h(!1);const ee=ja(),ae=["notes","workspace"],Pe=we=>e(c).includes(we),se=async we=>{let oe;Pe(we)?oe=e(c).filter(de=>de!==we):oe=[...e(c),we],await ua.set({...t(),pinnedMenuItems:oe}),await Tl(localStorage.token,{ui:t()})};let m=h(null);const ce=async()=>{const we=await sm(localStorage.token).catch(oe=>{});we?s(m,we):s(m,null)},De=we=>{var oe,de;ee("change",we),we&&((de=(oe=f())==null?void 0:oe.features)!=null&&de.enable_public_active_users_count||E()==="admin")&&ce()};Kt(()=>t(),()=>{var we;s(c,((we=t())==null?void 0:we.pinnedMenuItems)??ae)}),la(),gr();var Le=Ky();ke("keydown",es,we=>{we.key==="Shift"&&s(Y,!0)}),ke("keyup",es,we=>{we.key==="Shift"&&s(Y,!1)});var Ne=Qe(Le);cy(Ne,{onSave:async()=>{ka.set(await Ad(localStorage.token))},get show(){return e(Se)},set show(we){s(Se,we)},$$legacy:!0});var Ce=o(Ne,2);io(Ce,{onOpenChange:De,get align(){return w()},get show(){return A()},set show(we){A(we)},children:(we,oe)=>{var de=Wr(),be=Qe(de);Ka(be,_,"default",{},null),i(we,de)},$$slots:{default:!0,content:(we,oe)=>{var de=zy(),be=a(de);vo(be,{get className(){return`${j()??""} font-sans text-xs`},children:(Me,qe)=>{var Re=Wy(),ue=Qe(Re);{var xe=tt=>{var Je=Py(),je=a(Je),ne=a(je),J=a(ne);r(ne);var W=o(ne,2),Z=a(W,!0);r(W);var Ee=o(W,2);{var Ge=p=>{{let $=v(()=>(e(m),X(),l(()=>{var S,L;return(S=e(m))!=null&&S.model_ids&&((L=e(m))==null?void 0:L.model_ids.length)>0?`${X().t("Running")}: ${e(m).model_ids.join(", ")} â¨`:X().t("Active Users")})));Lt(p,{get content(){return e($)},children:(S,L)=>{var fe=Ny(),y=o(a(fe),2),b=a(y,!0);r(y),r(fe),g(()=>d(b,(e(m),l(()=>
2e(m).user_count)))),ke("mouseenter",fe,()=>{var N,z;((z=(N=f())==null?void 0:N.features)!=null&&z.enable_public_active_users_count||E()==="admin")&&ce()}),i(S,fe)},$$slots:{default:!0}})}};G(Ee,p=>{it(Te()),f(),it(E()),e(m),l(()=>{var $,S,L;return Te()&&(((S=($=f())==null?void 0:$.features)==null?void 0:S.enable_public_active_users_count)||E()==="admin")&&((L=e(m))==null?void 0:L.user_count)})&&p(Ge)})}r(je),r(Je),g(()=>{Be(J,"src",(it(ia),n(),l(()=>`${ia}/users/${n().id}/profile/image`))),d(Z,(n(),l(()=>n().name)))}),ke("click",je,async()=>{A(!1),await hl.set("account"),Ie()&&(await na(),$a.set(!1))}),i(tt,Je)};G(ue,tt=>{n()&&tt(xe)})}var K=o(ue,2);{var Oe=tt=>{var Je=Wr(),je=Qe(Je);{var ne=W=>{var Z=Ly(),Ee=a(Z),Ge=a(Ee);{var p=fe=>{var y=Cy(),b=a(y);{let N=v(()=>(n(),l(()=>{var z;return(z=n())==null?void 0:z.status_emoji})));Rd(b,{className:"size-3.5",get shortCode(){return e(N)}})}r(y),i(fe,y)};G(Ge,fe=>{n(),l(()=>{var y;return(y=n())==null?void 0:y.status_emoji})&&fe(p)})}var $=o(Ge,2);{let fe=v(()=>(n(),l(()=>{var y;return(y=n())==null?void 0:y.status_message})));Lt($,{get content(){return e(fe)},className:"self-center line-clamp-2 flex-1 text-left",children:(y,b)=>{ll();var N=Mr();g(()=>d(N,(n(),l(()=>{var z;return(z=n())==null?void 0:z.status_message})))),i(y,N)},$$slots:{default:!0}})}var S=o($,2),L=a(S);{let fe=v(()=>(X(),l(()=>X().t("Clear status"))));Lt(L,{get content(){return e(fe)},children:(y,b)=>{var N=Ty(),z=a(N);Po(z,{className:"size-3.5 opacity-50",strokeWidth:"1.5"}),r(N),ke("click",N,async Ue=>{Ue.preventDefault(),Ue.stopPropagation(),Ue.stopImmediatePropagation(),await cf(localStorage.token,{status_emoji:"",status_message:""})?(rt.success(X().t("Status cleared successfully")),ka.set(await Ad(localStorage.token))):rt.error(X().t("Failed to clear status"))}),i(y,N)},$$slots:{default:!0}})}r(S),r(Ee),r(Z),ke("click",Ee,()=>{A(!1),s(Se,!0)}),i(W,Z)},J=W=>{var Z=Oy(),Ee=a(Z),Ge=a(Ee),p=a(Ge);Gf(p,{className:"size-3.5",strokeWidth:"1.5"}),r(Ge);var $=o(Ge,2),S=a($,!0);r($),r(Ee),r(Z),g(L=>d(S,L),[()=>(X(),l(()=>X().t("Update your status")))]),ke("click",Ee,()=>{A(!1),s(Se,!0)}),i(W,Z)};G(je,W=>{n(),l(()=>{var Z,Ee;return((Z=n())==null?void 0:Z.status_emoji)||((Ee=n())==null?void 0:Ee.status_message)})?W(ne):W(J,-1)})}i(tt,Je)};G(K,tt=>{V()&&tt(Oe)})}var O=o(K,2);{var ie=tt=>{var Je=My();i(tt,Je)};G(O,tt=>{V()&&tt(ie)})}var M=o(O,2);{var ve=tt=>{var Je=Ry(),je=a(Je),ne=a(je),J=a(ne);Eu(J,{className:"size-3.5",strokeWidth:"1.5"}),r(ne);var W=o(ne,2),Z=a(W,!0);r(W),r(je);var Ee=o(je,2);{var Ge=p=>{{let $=v(()=>(X(),l(()=>Pe("workspace")?X().t("Unpin from Sidebar"):X().t("Pin to Sidebar"))));Lt(p,{get content(){return e($)},children:(S,L)=>{var fe=Ss(),y=a(fe);{var b=Ue=>{Ao(Ue,{className:"size-3.5",strokeWidth:"1.5"})},N=Qr(()=>l(()=>Pe("workspace"))),z=Ue=>{Jo(Ue,{className:"size-3.5",strokeWidth:"1.5"})};G(y,Ue=>{e(N)?Ue(b):Ue(z,-1)})}r(fe),ke("click",fe,ca(xl(()=>se("workspace")))),i(S,fe)},$$slots:{default:!0}})}};G(Ee,p=>{e(Y)&&p(Ge)})}r(Je),g(p=>d(Z,p),[()=>(X(),l(()=>X().t("Workspace")))]),ke("click",je,async p=>{p.metaKey||p.ctrlKey||p.shiftKey||p.button===1||(p.preventDefault(),A(!1),fa("/workspace"),Ie()&&(await na(),$a.set(!1)))}),i(tt,Je)};G(M,tt=>{n(),l(()=>{var Je,je,ne,J,W,Z,Ee,Ge,p,$,S,L,fe,y,b,N;return((Je=n())==null?void 0:Je.role)==="admin"||((J=(ne=(je=n())==null?void 0:je.permissions)==null?void 0:ne.workspace)==null?void 0:J.models)||((Ee=(Z=(W=n())==null?void 0:W.permissions)==null?void 0:Z.workspace)==null?void 0:Ee.knowledge)||(($=(p=(Ge=n())==null?void 0:Ge.permissions)==null?void 0:p.workspace)==null?void 0:$.prompts)||((fe=(L=(S=n())==null?void 0:S.permissions)==null?void 0:L.workspace)==null?void 0:fe.tools)||((N=(b=(y=n())==null?void 0:y.permissions)==null?void 0:b.workspace)==null?void 0:N.skills)})&&tt(ve)})}var te=o(M,2);{var ge=tt=>{var Je=Dy(),je=a(Je),ne=a(je),J=a(ne);Fs(J,{className:"size-3.5",strokeWidth:"1.5"}),r(ne);var W=o(ne,2),Z=a(W,!0);r(W),r(je);var Ee=o(je,2);{var Ge=p=>{{let $=v(()=>(X(),l(()=>Pe("notes")?X().t("Unpin from Sidebar"):X().t("Pin to Sidebar"))));Lt(p,{get content(){return e($)},children:(S,L)=>{var fe=Ss(),y=a(fe);{var b=Ue=>{Ao(Ue,{className:"size-3.5",strokeWidth:"1.5"})},N=Qr(()=>l(()=>Pe("notes"))),z=Ue=>{Jo(Ue,{className:"size-3.5",strokeWidth:"1.5"})};G(y,Ue=>{e(N)?Ue(b):Ue(z,-1)})}r(fe),ke("click",fe,ca(xl(()=>se("notes")))),i(S,fe)},$$slots:{default:!0}})}};G(Ee,p=>{e(Y)&&p(Ge)})}r(Je),g(p=>d(Z,p),[()=>(X(),l(()=>X().t("Notes")))]),ke("click",je,async p=>{p.metaKey||p.ctrlKey||p.shiftKey||p.button===1||(p.preventDefault(),A(!1),fa("/notes"),Ie()&&(await na(),$a.set(!1)))}),i(tt,Je)};G(te,tt=>{f(),n(),l(()=>{var Je,je,ne,J,W,Z;return(((je=(Je=f())==null?void 0:Je.features)==null?void 0:je.enable_notes)??!1)&&(((ne=n())==null?void 0:ne.role)==="admin"||(((Z=(W=(J=n())==null?void 0:J.permissions)==null?void 0:W.features)==null?void 0:Z.notes)??!0))})&&tt(ge)})}var _e=o(te,2);{var Ae=tt=>{var Je=Uy(),je=a(Je),ne=a(je),J=a(ne);$u(J,{className:"size-3.5",strokeWidth:"1.5"}),r(ne);var W=o(ne,2),Z=a(W,!0);r(W),r(je);var Ee=o(je,2);{var Ge=p=>{{let $=v(()=>(X(),l(()=>Pe("calendar")?X().t("Unpin from Sidebar"):X().t("Pin to Sidebar"))));Lt(p,{get content(){return e($)},children:(S,L)=>{var fe=Ss(),y=a(fe);{var b=Ue=>{Ao(Ue,{className:"size-3.5",strokeWidth:"1.5"})},N=Qr(()=>l(()=>Pe("calendar"))),z=Ue=>{Jo(Ue,{className:"size-3.5",strokeWidth:"1.5"})};G(y,Ue=>{e(N)?Ue(b):Ue(z,-1)})}r(fe),ke("click",fe,ca(xl(()=>se("calendar")))),i(S,fe)},$$slots:{default:!0}})}};G(Ee,p=>{e(Y)&&p(Ge)})}r(Je),g(p=>d(Z,p),[()=>(X(),l(()=>X().t("Calendar")))]),ke("click",je,async p=>{p.metaKey||p.ctrlKey||p.shiftKey||p.button===1||(p.preventDefault(),A(!1),fa("/calendar"),Ie()&&(await na(),$a.set(!1)))}),i(tt,Je)};G(_e,tt=>{f(),n(),l(()=>{var Je,je,ne,J,W,Z;return((je=(Je=f())==null?void 0:Je.features)==null?void 0:je.enable_calendar)&&(((ne=n())==null?void 0:ne.role)==="admin"||((Z=(W=(J=n())==null?void 0:J.permissions)==null?void 0:W.features)==null?void 0:Z.calendar))})&&tt(Ae)})}var U=o(_e,2);{var T=tt=>{var Je=By(),je=a(Je),ne=a(je),J=a(ne);wu(J,{className:"size-3.5",strokeWidth:"1.5"}),r(ne);var W=o(ne,2),Z=a(W,!0);r(W),r(je);var Ee=o(je,2);{var Ge=p=>{{let $=v(()=>(X(),l(()=>Pe("automations")?X().t("Unpin from Sidebar"):X().t("Pin to Sidebar"))));Lt(p,{get content(){return e($)},children:(S,L)=>{var fe=Ss(),y=a(fe);{var b=Ue=>{Ao(Ue,{className:"size-3.5",strokeWidth:"1.5"})},N=Qr(()=>l(()=>Pe("automations"))),z=Ue=>{Jo(Ue,{className:"size-3.5",strokeWidth:"1.5"})};G(y,Ue=>{e(N)?Ue(b):Ue(z,-1)})}r(fe),ke("click",fe,ca(xl(()=>se("automations")))),i(S,fe)},$$slots:{default:!0}})}};G(Ee,p=>{e(Y)&&p(Ge)})}r(Je),g(p=>d(Z,p),[()=>(X(),l(()=>X().t("Automations")))]),ke("click",je,async p=>{p.metaKey||p.ctrlKey||p.shiftKey||p.button===1||(p.preventDefault(),A(!1),fa("/automations"),Ie()&&(await na(),$a.set(!1)))}),i(tt,Je)};G(U,tt=>{f(),n(),l(()=>{var Je,je,ne,J,W,Z;return((je=(Je=f())==null?void 0:Je.features)==null?void 0:je.enable_automations)&&(((ne=n())==null?void 0:ne.role)==="admin"||((Z=(W=(J=n())==null?void 0:J.permissions)==null?void 0:W.features)==null?void 0:Z.automations))})&&tt(T)})}var C=o(U,2);{var D=tt=>{var Je=Gy(),je=a(Je),ne=a(je),J=a(ne);ku(J,{className:"size-3.5",strokeWidth:"1.5"}),r(ne);var W=o(ne,2),Z=a(W,!0);r(W),r(je);var Ee=o(je,2);{var Ge=p=>{{let $=v(()=>(X(),l(()=>Pe("playground")?X().t("Unpin from Sidebar"):X().t("Pin to Sidebar"))));Lt(p,{get content(){return e($)},children:(S,L)=>{var fe=Ss(),y=a(fe);{var b=Ue=>{Ao(Ue,{className:"size-3.5",strokeWidth:"1.5"})},N=Qr(()=>l(()=>Pe("playground"))),z=Ue=>{Jo(Ue,{className:"size-3.5",strokeWidth:"1.5"})};G(y,Ue=>{e(N)?Ue(b):Ue(z,-1)})}r(fe),ke("click",fe,ca(xl(()=>se("playground")))),i(S,fe)},$$slots:{default:!0}})}};G(Ee,p=>{e(Y)&&p(Ge)})}r(Je),g(p=>d(Z,p),[()=>(X(),l(()=>X().t("Playground")))]),ke("click",je,async p=>{p.metaKey||p.ctrlKey||p.shiftKey||p.button===1||(p.preventDefault(),A(!1),fa("/playground"),Ie()&&(await na(),$a.set(!1)))}),i(tt,Je)};G(C,tt=>{E()==="admin"&&tt(D)})}var F=o(C,2);{var H=tt=>{var Je=Hy(),je=o(Qe(Je),2);{var ne=p=>{var $=jy(),S=Qe($),L=a(S),fe=a(L);py(fe,{className:"size-3.5"}),r(L);var y=o(L,2),b=a(y,!0);r(y),r(S);var N=o(S,2),z=a(N),Ue=a(z);by(Ue,{className:"size-3.5"}),r(z);var Ye=o(z,2),Ve=a(Ye,!0);r(Ye),r(N),g((lt,st)=>{d(b,lt),d(Ve,st)},[()=>(X(),l(()=>X().t("Documentation"))),()=>(X(),l(()=>X().t("Releases")))]),ke("click",S,()=>{A(!1)}),ke("click",N,()=>{A(!1)}),i(p,$)};G(je,p=>{n(),l(()=>{var $;return(($=n())==null?void 0:$.role)==="admin"})&&p(ne)})}var J=o(je,2),W=a(J),Z=a(W);Ay(Z,{className:"size-3.5"}),r(W);var Ee=o(W,2),Ge=a(Ee,!0);r(Ee),r(J),g(p=>d(Ge,p),[()=>(X(),l(()=>X().t("Keyboard")))]),ke("click",J,async()=>{A(!1),hl.set("shortcuts"),Ie()&&(await na(),$a.set(!1))}),i(tt,Je)};G(F,tt=>{B()&&tt(H)})}var pe=o(F,4);{var ye=tt=>{var Je=Fy(),je=a(Je),ne=a(je);Hf(ne,{className:"size-3.5",strokeWidth:"1.5"}),r(je);var J=o(je,2),W=a(J,!0);r(J),r(Je),g(Z=>d(W,Z),[()=>(X(),l(()=>X().t("Admin Panel")))]),ke("click",Je,async Z=>{Z.metaKey||Z.ctrlKey||Z.shiftKey||Z.button===1||(Z.preventDefault(),A(!1),fa("/admin"),Ie()&&(await na(),$a.set(!1)))}),i(tt,Je)};G(pe,tt=>{E()==="admin"&&tt(ye)})}var he=o(pe,2),q=a(he),P=a(q);jf(P,{className:"size-3.5",strokeWidth:"1.5"}),r(q);var Q=o(q,2),re=a(Q,!0);r(Q),r(he);var le=o(he,2),$e=a(le),ze=a($e);hy(ze,{className:"size-3.5",strokeWidth:"1.5"}),r($e);var Fe=o($e,2),at=a(Fe,!0);r(Fe),r(le),g((tt,Je)=>{d(re,tt),d(at,Je)},[()=>(X(),l(()=>X().t("Settings"))),()=>(X(),l(()=>X().t("Sign Out")))]),ke("click",he,async()=>{A(!1),await hl.set(!0),Ie()&&(await na(),$a.set(!1))}),ke("click",le,async()=>{const tt=await Ru();localStorage.removeItem("token"),location.href=Du(tt==null?void 0:tt.redirect_url),A(!1)}),i(Me,Re)},$$slots:{default:!0}}),r(de),i(we,de)}},$$legacy:!0}),i(He,Le),cr(),I()}var Yy=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"><path d="M19.4 20H9.6C9.26863 20 9 19.7314 9 19.4V9.6C9 9.26863 9.26863 9 9.6 9H19.4C19.7314 9 20 9.26863 20 9.6V19.4C20 19.7314 19.7314 20 19.4 20Z" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path><path d="M15 9V4.6C15 4.26863 14.7314 4 14.4 4H4.6C4.26863 4 4 4.26863 4 4.6V14.4C4 14.7314 4.26863 15 4.6 15H9" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function Vy(He,_){let t=Xe(_,"className",8,"size-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=Yy();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}
2var qy=u('<div class="hidden w-full h-full flex-col"><div id="full-messages-container"><!></div></div>'),Wc=u('<button draggable="false" class="flex h-[1.6875rem] gap-2 items-center rounded-xl px-2 text-[0.8125rem] cursor-pointer hover:bg-gray-100 dark:hover:bg-gray-900 w-full"><!> <div class="flex items-center"> </div></button>'),Xy=u('<button draggable="false" class="flex h-[1.6875rem] gap-2 items-center rounded-xl px-2 text-[0.8125rem] cursor-pointer hover:bg-gray-100 dark:hover:bg-gray-900 w-full"><div class="flex items-center line-clamp-1"> </div></button> <button draggable="false" class="flex h-[1.6875rem] gap-2 items-center rounded-xl px-2 text-[0.8125rem] cursor-pointer hover:bg-gray-100 dark:hover:bg-gray-900 w-full"><div class="flex items-center line-clamp-1"> </div></button> <button draggable="false" class="flex h-[1.6875rem] gap-2 items-center rounded-xl px-2 text-[0.8125rem] cursor-pointer hover:bg-gray-100 dark:hover:bg-gray-900 select-none w-full"><div class="flex items-center line-clamp-1"> </div></button>',1),Jy=u('<button slot="trigger" draggable="false" class="flex h-[1.6875rem] gap-2 items-center rounded-xl px-2 text-[0.8125rem] cursor-pointer hover:bg-gray-100 dark:hover:bg-gray-900 w-full"><!> <div class="flex items-center"> </div></button>'),Rg=u('<!> <div class="flex items-center"> </div>',1),Zy=u('<button draggable="false" class="flex h-[1.6875rem] gap-2 items-center rounded-xl px-2 text-[0.8125rem] cursor-pointer hover:bg-gray-100 dark:hover:bg-gray-900 overflow-hidden w-full"><div class="shrink-0"><!></div> <div class="truncate"> </div></button>'),Qy=u('<button slot="trigger" draggable="false" class="flex h-[1.6875rem] gap-2 items-center rounded-xl px-2 text-[0.8125rem] cursor-pointer hover:bg-gray-100 dark:hover:bg-gray-900 select-none w-full"><!> <div class="flex items-center"> </div></button>'),e2=u('<!> <!> <button draggable="false" class="flex h-[1.6875rem] gap-2 items-center rounded-xl px-2 text-[0.8125rem] cursor-pointer hover:bg-gray-100 dark:hover:bg-gray-900 w-full"><!> <div class="flex items-center"> </div></button> <button draggable="false" class="flex h-[1.6875rem] gap-2 items-center rounded-xl px-2 text-[0.8125rem] cursor-pointer hover:bg-gray-100 dark:hover:bg-gray-900 w-full"><!> <div class="flex items-center"> </div></button> <hr class="border-gray-50/30 dark:border-gray-800/30 mx-1 my-0.5"/> <button draggable="false" class="flex h-[1.6875rem] gap-2 items-center rounded-xl px-2 text-[0.8125rem] cursor-pointer hover:bg-gray-100 dark:hover:bg-gray-900 w-full"><!></button> <!> <!> <button draggable="false" class="flex h-[1.6875rem] gap-2 items-center rounded-xl px-2 text-[0.8125rem] cursor-pointer hover:bg-gray-100 dark:hover:bg-gray-900 w-full"><!> <div class="flex items-center"> </div></button> <!>',1),t2=u('<div slot="content"><!></div>'),r2=u("<!> <!>",1);function Ff(He,_){vr(_,!1);const t=()=>ct(ua,"$settings",X),f=()=>ct(ka,"$user",X),n=()=>ct(c,"$i18n",X),Ie=()=>ct(kd,"$folders",X),[X,R]=hr(),{saveAs:I}=no,c=mr("i18n");let x=Xe(_,"shareHandler",8),A=Xe(_,"moveChatHandler",8),E=Xe(_,"cloneChatHandler",8),V=Xe(_,"archiveChatHandler",8),B=Xe(_,"renameHandler",8),j=Xe(_,"deleteHandler",8),w=Xe(_,"onOpen",8,()=>{}),Te=Xe(_,"onClose",8),Se=Xe(_,"markUnreadHandler",8,()=>{}),Y=Xe(_,"chatId",8,""),ee=h(),ae=h(!1),Pe=h(!1),se=h(null),m=h(!1),ce=Xe(_,"onPinChange",8,()=>{});const De=async()=>{await cu(localStorage.token,Y()),ce()()},Le=async()=>{s(Pe,await dh(localStorage.token,Y()))},Ne=async Re=>{const ue=Re.chat.history;return Cu(ue,ue.currentId).reduce((Oe,O,ie,M)=>{const ve=Hs(O.output)||O.content||"";return`${Oe}### ${O.role.toUpperCase()} 3${ve} 4 5`},"").trim()},Ce=async()=>{const Re=await Cl(localStorage.token,Y());if(!Re)return;const ue=await Ne(Re);let xe=new Blob([ue],{type:"text/plain"});I(xe,`chat-${Re.chat.title}.txt`)},we=async()=>{var xe;if(s(se,await Cl(localStorage.token,Y())),!e(se))return;const[{default:Re},{default:ue}]=await Promise.all([pu(()=>import("../chunks/C2Gx4Rc_.js"),__vite__mapDeps([0,1,2]),import.meta.url),pu(()=>import("../chunks/CoXxwYf1.js"),[],import.meta.url)]);if(((xe=t())==null?void 0:xe.stylizedPdfExport)??!0){s(m,!0),await na();const K=document.getElementById("full-messages-container");if(K)try{const Oe=document.documentElement.classList.contains("dark"),O=800,ie=K.cloneNode(!0);ie.classList.add("text-black"),ie.classList.add("dark:text-white"),ie.style.width=`${O}px`,ie.style.position="absolute",ie.style.left="-9999px",ie.style.height="auto",document.body.appendChild(ie),ie.querySelectorAll(".message-listitem").forEach(D=>{D.style.contentVisibility="visible"}),await new Promise(D=>requestAnimationFrame(D));const M=await ue(ie,{backgroundColor:Oe?"#000":"#fff",useCORS:!0,scale:2,width:O});document.body.removeChild(ie);const ve=new Re("p","mm","a4"),te=210,ge=297,_e=M.width/O,Ae=M.width/te,U=Math.floor(Ae*ge);let T=0,C=0;for(;T<M.height;){const D=Math.min(U,M.height-T),F=document.createElement("canvas");F.width=M.width,F.height=D,F.getContext("2d").drawImage(M,0,T,M.width,D,0,0,M.width,D);const pe=F.toDataURL("image/jpeg",.7),ye=D*te/M.width;C>0&&ve.addPage(),Oe&&(ve.setFillColor(0,0,0),ve.rect(0,0,te,ge,"F")),ve.addImage(pe,"JPEG",0,0,te,ye),T+=D,C++}ve.save(`chat-${e(se).chat.title}.pdf`),s(m,!1)}catch(Oe){}}else{const K=await Ne(e(se)),Oe=new Re,O=15,ie=20,M=15,ve=20,te=Oe.internal.pageSize.getWidth(),ge=Oe.internal.pageSize.getHeight(),_e=te-O-M,Ae=8;
5Oe.setFontSize(Ae);const U=Ae*1,T=K.split(` 6`);let C=ie;for(let D of T){const F=Oe.splitTextToSize(D,_e);for(let H of F)C+U>ge-ve&&(Oe.addPage(),C=ie),Oe.text(H,O,C),C+=U*.5;C+=U*.1}Oe.save(`chat-${e(se).chat.title}.pdf`)}},oe=async()=>{const Re=await Cl(localStorage.token,Y());if(Re){let ue=new Blob([JSON.stringify([Re])],{type:"application/json"});I(ue,`chat-export-${Date.now()}.json`)}};Kt(()=>e(ae),()=>{e(ae)&&Le()}),la(),gr();var de=r2(),be=Qe(de);{var Me=Re=>{var ue=qy(),xe=a(ue),K=a(xe);{let Oe=v(()=>(e(se),l(()=>{var O;return`chat-preview-${((O=e(se))==null?void 0:O.id)??""}`})));Uu(K,{className:"h-full flex pt-4 pb-8 w-full",get chatId(){return e(Oe)},get user(){return f()},readOnly:!0,get history(){return e(se),l(()=>e(se).chat.history)},get messages(){return e(se),l(()=>e(se).chat.messages)},autoScroll:!0,sendMessage:()=>{},continueResponse:()=>{},regenerateResponse:()=>{},messagesCount:null,editCodeBlock:!1})}r(xe),r(ue),i(Re,ue)};G(be,Re=>{e(se)&&e(m)&&Re(Me)})}var qe=o(be,2);Oa(io(qe,{onOpenChange:Re=>{Re?w()():Te()()},get show(){return e(ae)},set show(Re){s(ae,Re)},children:(Re,ue)=>{{let xe=v(()=>(n(),l(()=>n().t("More"))));Lt(Re,{get content(){return e(xe)},children:(K,Oe)=>{var O=Wr(),ie=Qe(O);Ka(ie,_,"default",{},null),i(K,O)},$$slots:{default:!0}})}},$$slots:{default:!0,content:(Re,ue)=>{var xe=t2(),K=a(xe);vo(K,{className:"select-none min-w-[12.5rem] transition",children:(Oe,O)=>{var ie=e2(),M=Qe(ie);{var ve=je=>{var ne=Wc(),J=a(ne);rx(J,{className:"size-3.5",strokeWidth:"1.5"});var W=o(J,2),Z=a(W,!0);r(W),r(ne),g(Ee=>d(Z,Ee),[()=>(n(),l(()=>n().t("Share")))]),ke("click",ne,()=>{x()()}),i(je,ne)};G(M,je=>{f(),l(()=>{var ne,J,W;return((ne=f())==null?void 0:ne.role)==="admin"||(((W=(J=f().permissions)==null?void 0:J.chat)==null?void 0:W.share)??!0)})&&je(ve)})}var te=o(M,2);{var ge=je=>{yg(je,{contentClass:"select-none z-50",children:(ne,J)=>{var W=Xy(),Z=Qe(W),Ee=a(Z),Ge=a(Ee,!0);r(Ee),r(Z);var p=o(Z,2),$=a(p),S=a($,!0);r($),r(p);var L=o(p,2),fe=a(L),y=a(fe,!0);r(fe),r(L),g((b,N,z)=>{d(Ge,b),d(S,N),d(y,z)},[()=>(n(),l(()=>n().t("Export chat (.json)"))),()=>(n(),l(()=>n().t("Plain text (.txt)"))),()=>(n(),l(()=>n().t("PDF document (.pdf)")))]),ke("click",Z,()=>{oe()}),ke("click",p,()=>{Ce()}),ke("click",L,()=>{we()}),i(ne,W)},$$slots:{default:!0,trigger:(ne,J)=>{var W=Jy(),Z=a(W);ax(Z,{className:"size-3.5",strokeWidth:"1.5"});var Ee=o(Z,2),Ge=a(Ee,!0);r(Ee),r(W),g(p=>d(Ge,p),[()=>(n(),l(()=>n().t("Download")))]),i(ne,W)}}})};G(te,je=>{f(),l(()=>{var ne,J,W;return((ne=f())==null?void 0:ne.role)==="admin"||(((W=(J=f().permissions)==null?void 0:J.chat)==null?void 0:W.export)??!0)})&&je(ge)})}var _e=o(te,2),Ae=a(_e);Id(Ae,{className:"size-3.5",strokeWidth:"1.5"});var U=o(Ae,2),T=a(U,!0);r(U),r(_e);var C=o(_e,2),D=a(C);tx(D,{className:"size-3.5",strokeWidth:"1.5"});var F=o(D,2),H=a(F,!0);r(F),r(C);var pe=o(C,4),ye=a(pe);{var he=je=>{var ne=Rg(),J=Qe(ne);Ao(J,{className:"size-3.5",strokeWidth:"1.5"});var W=o(J,2),Z=a(W,!0);r(W),g(Ee=>d(Z,Ee),[()=>(n(),l(()=>n().t("Unpin")))]),i(je,ne)},q=je=>{var ne=Rg(),J=Qe(ne);Jo(J,{className:"size-3.5",strokeWidth:"1.5"});var W=o(J,2),Z=a(W,!0);r(W),g(Ee=>d(Z,Ee),[()=>(n(),l(()=>n().t("Pin")))]),i(je,ne)};G(ye,je=>{e(Pe)?je(he):je(q,-1)})}r(pe);var P=o(pe,2);{var Q=je=>{var ne=Wc(),J=a(ne);Vy(J,{className:"size-3.5",strokeWidth:"1.5"});var W=o(J,2),Z=a(W,!0);r(W),r(ne),g(Ee=>d(Z,Ee),[()=>(n(),l(()=>n().t("Clone")))]),ke("click",ne,()=>{e(ee).close(),E()()}),i(je,ne)};G(P,je=>{f(),l(()=>{var ne,J,W,Z;return((ne=f())==null?void 0:ne.role)==="admin"||(((Z=(W=(J=f())==null?void 0:J.permissions)==null?void 0:W.chat)==null?void 0:Z.import)??!0)})&&je(Q)})}var re=o(P,2);{var le=je=>{yg(je,{contentClass:"select-none z-50 max-h-52 overflow-y-auto scrollbar-hidden",children:(ne,J)=>{var W=Wr(),Z=Qe(W);lr(Z,1,()=>(Ie(),l(()=>Ie().sort((Ee,Ge)=>Ge.updated_at-Ee.updated_at))),Ar,(Ee,Ge)=>{var p=Zy(),$=a(p),S=a($);Sd(S,{className:"size-3.5"}),r($);var L=o($,2),fe=a(L,!0);r(L),r(p),g(()=>d(fe,(e(Ge),l(()=>{var y;return((y=e(Ge))==null?void 0:y.name)??"Folder"})))),ke("click",p,()=>{A()(Y(),e(Ge).id)}),i(Ee,p)}),i(ne,W)},$$slots:{default:!0,trigger:(ne,J)=>{var W=Qy(),Z=a(W);Sd(Z,{className:"size-3.5"});var Ee=o(Z,2),Ge=a(Ee,!0);r(Ee),r(W),g(p=>d(Ge,p),[()=>(n(),l(()=>n().t("Move")))]),i(ne,W)}}})};G(re,je=>{it(Y()),Ie(),l(()=>Y()&&Ie().length>0)&&je(le)})}var $e=o(re,2),ze=a($e);Md(ze,{className:"size-3.5",strokeWidth:"1.7"});var Fe=o(ze,2),at=a(Fe,!0);r(Fe),r($e);var tt=o($e,2);{var Je=je=>{var ne=Wc(),J=a(ne);lx(J,{className:"size-3.5",strokeWidth:"1.5"});var W=o(J,2),Z=a(W,!0);r(W),r(ne),g(Ee=>d(Z,Ee),[()=>(n(),l(()=>n().t("Delete")))]),ke("click",ne,()=>{j()()}),i(je,ne)};G(tt,je=>{f(),l(()=>{var ne,J,W,Z;return((ne=f())==null?void 0:ne.role)==="admin"||(((Z=(W=(J=f())==null?void 0:J.permissions)==null?void 0:W.chat)==null?void 0:Z.delete)??!0)})&&je(Je)})}g((je,ne,J)=>{d(T,je),d(H,ne),d(at,J)},[()=>(n(),l(()=>n().t("Rename"))),()=>(n(),l(()=>n().t("Mark as unread"))),()=>(n(),l(()=>n().t("Archive")))]),ke("click",_e,()=>{e(ee).close(),B()()}),ke("click",C,()=>{e(ee).close(),Se()()}),ke("click",pe,()=>{e(ee).close(),De()}),ke("click",$e,()=>{V()()}),i(Oe,ie)},$$slots:{default:!0}}),r(xe),i(Re,xe)}},$$legacy:!0}),Re=>s(ee,Re),()=>e(ee)),i(He,de),cr(),R()}var a2=u('<div class="fixed top-0 left-0 w-screen h-[100dvh] z-[99999] touch-none pointer-events-none"><div class=" absolute text-white z-99999"><!></div></div>');function Wf(He,_){vr(_,!1);let t=Xe(_,"x",8),f=Xe(_,"y",8),n=h(null);ea(()=>{document.body.appendChild(e(n)),document.body.style.overflow="hidden"}),Al(()=>{if(e(n)&&e(n).parentNode)try{e(n).parentNode.removeChild(e(n))}catch(I){console.warn("Failed to remove popupElement:",I)}document.body.style.overflow="unset"}),gr();var Ie=a2(),X=a(Ie),R=a(X);Ka(R,_,"default",{},null),r(X),r(Ie),Oa(Ie,I=>s(n,I),()=>e(n)),g(()=>bl(X,`top: ${f()+10}px; left: ${t()+10}px;`)),i(He,Ie),cr()}var l2=u('<div class="flex w-full items-center justify-center py-8 text-gray-500 dark:text-gray-400"><!></div>'),o2=u('<div class="flex w-full items-center justify-center px-6 py-6 text-center text-sm text-gray-500 dark:text-gray-400"> </div>'),s2=u('<div class="border-b border-gray-50/60 px-3 py-2 dark:border-gray-800/25"><div class="truncate text-[0.8125rem] font-medium leading-5 text-gray-900 dark:text-gray-100"> </div></div> <div class="max-h-[min(15rem,calc(100vh-4rem))] overflow-y-auto bg-white scrollbar-hover @container dark:bg-gray-850"><!></div>',1);function n2(He,_){vr(_,!1);const t=()=>ct(R,"$i18n",n),f=()=>ct(ka,"$user",n),[n,Ie]=hr(),X=h(),R=mr("i18n");let I=Xe(_,"chatId",8,""),c=Xe(_,"title",8,""),x=Xe(_,"openPreview",8,!1),A=Xe(_,"side",8,"right"),E=Xe(_,"align",8,"start"),V=Xe(_,"sideOffset",8,12),B=h(null),j=h([""]),w=h(null),Te=h(!1),Se=h(!1),Y=h(""),ee=h(""),ae=0;const Pe=async()=>{await na(),requestAnimationFrame(()=>{e(B)&&(We(B,e(B).scrollTop=e(B).scrollHeight),requestAnimationFrame(()=>{e(B)&&We(B,e(B).scrollTop=e(B).scrollHeight)}))}),setTimeout(()=>{e(B)&&We(B,e(B).scrollTop=e(B).scrollHeight)},80)},se=async Le=>{var we;if(!Le||e(Se)||e(ee)===Le)return;const Ne=++ae;s(ee,Le),s(Se,!0),s(Y,""),s(Te,!1),s(w,null),s(j,[""]);const Ce=await Cl(localStorage.token,Le).catch(()=>null);Ne===ae&&((we=Ce==null?void 0:Ce.chat)!=null&&we.history?(s(j,Array.isArray(Ce.chat.models)?Ce.chat.models:[Ce.chat.models??""]),s(w,Ce.chat.history),s(Te,!0),Pe()):Ce?s(Te,!0):s(Y,t().t("Failed to load chat preview")),s(Se,!1))};Al(()=>{ae+=1}),Kt(()=>it(I()),()=>{s(X,`chat-hover-preview-messages-${I()}`)}),Kt(()=>
6(it(x()),it(I()),e(ee)),()=>{x()&&I()&&e(ee)!==I()&&se(I())}),Kt(()=>(it(x()),e(Te)),()=>{x()&&e(Te)&&Pe()}),la(),gr();var m=Wr(),ce=Qe(m);{var De=Le=>{px(Le,{children:(Ne,Ce)=>{mx(Ne,{class:"z-[9999] hidden max-h-[min(17.5rem,calc(100vh-1.5rem))] w-[20rem] max-w-[calc(100vw-1.5rem)] overflow-hidden rounded-2xl bg-white shadow-[0_16px_40px_-28px_rgba(0,0,0,0.55)] ring-1 ring-black/5 transition md:block dark:bg-gray-850 dark:text-white dark:ring-white/10",get side(){return A()},get align(){return E()},get sideOffset(){return V()},children:(we,oe)=>{var de=s2(),be=Qe(de),Me=a(be),qe=a(Me,!0);r(Me),r(be);var Re=o(be,2),ue=a(Re);{var xe=O=>{var ie=l2(),M=a(ie);ra(M,{className:"size-5"}),r(ie),i(O,ie)},K=O=>{var ie=o2(),M=a(ie,!0);r(ie),g(()=>d(M,e(Y))),i(O,ie)},Oe=O=>{{let ie=v(()=>`chat-hover-preview-${I()}`);Uu(O,{className:"flex w-full pt-2 pb-0 [&_.message-listitem]:!mb-1 [&_.message-listitem]:!max-w-none [&_.message-listitem]:!px-3 [&_.pb-18]:!pb-1.5 [&_.markdown-prose]:!text-xs [&_.markdown-prose]:!leading-snug [&_.whitespace-pre-wrap]:!text-xs [&_.whitespace-pre-wrap]:!leading-snug [&_.text-\\[0\\.9375rem\\]]:!text-xs [&_.text-sm]:!text-xs [&_.tool-call-body_pre]:!text-[0.6875rem] [&_.rounded-3xl]:!rounded-2xl [&_.chat-user_.rounded-3xl]:!bg-gray-50 dark:[&_.chat-user_.rounded-3xl]:!bg-gray-800 [&_.px-4]:!px-3 [&_.py-3]:!py-2 [&_.py-1\\.5]:!py-1 [&_button]:!pointer-events-none",get chatId(){return e(ie)},get user(){return f()},prompt:"",readOnly:!0,compactPreview:!0,get selectedModels(){return e(j)},atSelectedModel:null,get history(){return e(w)},autoScroll:!0,get messagesContainerId(){return e(X)},messagesCount:8,sendMessage:()=>{},continueResponse:()=>{},regenerateResponse:()=>{},mergeResponses:()=>{},chatActionHandler:()=>{}})}};G(ue,O=>{e(Se)?O(xe):e(Y)?O(K,1):e(Te)&&O(Oe,2)})}r(Re),Oa(Re,O=>s(B,O),()=>e(B)),g(O=>{d(qe,O),Be(Re,"id",e(X))},[()=>(it(c()),t(),l(()=>c()||t().t("Chat")))]),i(we,de)},$$slots:{default:!0}})},$$slots:{default:!0}})};G(ce,Le=>{x()&&Le(De)})}i(He,m),cr(),Ie()}var i2=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"><path d="M3 20.2895V5C3 3.89543 3.89543 3 5 3H19C20.1046 3 21 3.89543 21 5V15C21 16.1046 20.1046 17 19 17H7.96125C7.35368 17 6.77906 17.2762 6.39951 17.7506L4.06852 20.6643C3.71421 21.1072 3 20.8567 3 20.2895Z" stroke="currentColor"></path></svg>');function d2(He,_){let t=Xe(_,"className",8,"size-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=i2(),Ie=a(n);r(n),g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f()),Be(Ie,"stroke-width",f())}),i(He,n)}var v2=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"><path d="M20 12.5C20.2761 12.5 20.5 12.2761 20.5 12C20.5 11.7239 20.2761 11.5 20 11.5C19.7239 11.5 19.5 11.7239 19.5 12C19.5 12.2761 19.7239 12.5 20 12.5Z" fill="currentColor" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path><path d="M12 12.5C12.2761 12.5 12.5 12.2761 12.5 12C12.5 11.7239 12.2761 11.5 12 11.5C11.7239 11.5 11.5 11.7239 11.5 12C11.5 12.2761 11.7239 12.5 12 12.5Z" fill="currentColor" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path><path d="M4 12.5C4.27614 12.5 4.5 12.2761 4.5 12C4.5 11.7239 4.27614 11.5 4 11.5C3.72386 11.5 3.5 11.7239 3.5 12C3.5 12.2761 3.72386 12.5 4 12.5Z" fill="currentColor" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function Cd(He,_){let t=Xe(_,"className",8,"size-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=v2();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}var c2=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"><path d="M8 15C12.8747 15 15 12.949 15 8C15 12.949 17.1104 15 22 15C17.1104 15 15 17.1104 15 22C15 17.1104 12.8747 15 8 15Z" stroke="currentColor" stroke-linejoin="round"></path><path d="M2 6.5C5.13376 6.5 6.5 5.18153 6.5 2C6.5 5.18153 7.85669 6.5 11 6.5C7.85669 6.5 6.5 7.85669 6.5 11C6.5 7.85669 5.13376 6.5 2 6.5Z" stroke="currentColor" stroke-linejoin="round"></path></svg>');function u2(He,_){let t=Xe(_,"className",8,"size-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=c2();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}const zf=new Image;zf.src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=";let wo=null;var g2=u('<img alt="" class="size-3.5 rounded-full shrink-0 object-cover mr-1.5"/>'),_2=u('<div class="shrink-0 self-center pr-2"><!></div>'),f2=u('<div class="shrink-0 self-center pr-2.5 flex transition-opacity duration-300"><div class="size-1.5 bg-sky-500 rounded-full"></div></div>'),p2=u('<div class="shrink-0 self-center text-[0.625rem] text-gray-400 dark:text-gray-500 pl-2"> </div>'),m2=u('<!> <!> <div class="flex self-center flex-1 w-full min-w-0"><!> <div dir="auto"> </div></div> <!>',1),h2=u('<div class=" text-sm text-gray-500 flex-1 line-clamp-3"> <span class=" font-normal"> </span>.</div>'),x2=u('<div class=" bg-black/80 backdrop-blur-2xl px-2 py-1 rounded-lg w-fit max-w-40"><div class="flex items-center gap-1"><!> <div class=" text-xs text-white line-clamp-1"> </div></div></div>'),b2=u('<div id="sidebar-chat-item"><input class=" bg-transparent w-full outline-hidden mr-10"/></div>'),y2=u('<a id="sidebar-chat-item" draggable="false"><!></a>'),$2=u("<!> <!>",1),w2=u('<button class="flex size-5 items-center justify-center self-center dark:hover:text-white transition disabled:cursor-not-allowed" id="generate-title-button"><!></button>'),k2=u('<div class="flex self-center items-center space-x-1.5 z-10 translate-y-[0.5px] -translate-x-[0.5px]"><!></div>'),E2=u('<button class="flex size-5 items-center justify-center self-center dark:hover:text-white transition disabled:cursor-not-allowed" type="button"><!></button>
6'),A2=u('<button class=" self-center dark:hover:text-white transition disabled:cursor-not-allowed" type="button"><!></button>'),I2=u('<div class=" flex items-center self-center space-x-1.5"><!> <!></div>'),S2=u('<button type="button" aria-label="Chat Menu" class="flex size-5 items-center justify-center self-center dark:hover:text-white transition m-0"><!></button>'),N2=u('<button id="delete-chat-button" class="hidden"><!></button>'),P2=u('<div class="flex self-center z-10 items-end"><!> <!></div>'),C2=u('<div id="sidebar-chat-item-menu"><!></div>'),T2=u('<!> <!> <!> <div id="sidebar-chat-group"><!> <!></div>',1);function Au(He,_){vr(_,!1);const t=()=>ct(j,"$i18n",I),f=()=>ct(cl,"$chatId",I),n=()=>ct(ua,"$settings",I),Ie=()=>ct(Gl,"$mobile",I),X=()=>ct(Ul,"$selectedFolder",I),R=()=>ct(ka,"$user",I),[I,c]=hr(),x=h(),A=h(),E=h(),V=h(),B=S=>{var L=m2(),fe=Qe(L);{var y=Ze=>{{let ot=v(()=>Le()||"Unknown");Lt(Ze,{get content(){return e(ot)},children:(ut,_t)=>{var nt=g2();g(()=>Be(nt,"src",`${ia??""}/users/${Ne()??""}/profile/image`)),ke("error",nt,et=>{et.currentTarget.src.endsWith("/static/favicon.png")||(et.currentTarget.src=`${No}/static/favicon.png`)}),i(ut,nt)},$$slots:{default:!0}})}};G(fe,Ze=>{Ne()&&Ze(y)})}var b=o(fe,2);{var N=Ze=>{var ot=_2(),ut=a(ot);ra(ut,{className:"size-3"}),r(ot),i(Ze,ot)};G(b,Ze=>{se()&&Ze(N)})}var z=o(b,2),Ue=a(z);{var Ye=Ze=>{var ot=f2();i(Ze,ot)};G(Ue,Ze=>{e(A)&&Ze(Ye)})}var Ve=o(Ue,2),lt=a(Ve,!0);r(Ve),r(z);var st=o(z,2);{var Ke=Ze=>{var ot=p2(),ut=a(ot,!0);r(ot),g(_t=>d(ut,_t),[()=>(it(ae()),it(ee()),l(()=>oe(ae()??ee())))]),i(Ze,ot)};G(st,Ze=>{(ae()??ee())&&!e(E)&&!(Ie()&&!De())&&Ze(Ke)})}g(()=>{k(Ve,1,`text-left self-center overflow-hidden w-full h-5 truncate ${e(A)?"font-normal text-gray-800 dark:text-gray-200":""} ${(Ie()||e(E))&&!De()?"pr-12":""}`),d(lt,Y()),Ve.dir=Ve.dir}),i(S,L)},j=mr("i18n"),w=ja();let Te=Xe(_,"className",8,""),Se=Xe(_,"id",8),Y=Xe(_,"title",8),ee=Xe(_,"createdAt",8,null),ae=Xe(_,"updatedAt",8,null),Pe=Xe(_,"lastReadAt",12,null),se=Xe(_,"active",8,!1),m=Xe(_,"selected",8,!1),ce=Xe(_,"shiftKey",8,!1),De=Xe(_,"readonly",8,!1),Le=Xe(_,"ownerName",8,null),Ne=Xe(_,"ownerUserId",8,null),Ce=Xe(_,"onReadStateChange",8,()=>{}),we=Xe(_,"onDragEnd",8,()=>{});function oe(S){const fe=Date.now()-S*1e3,y=Math.floor(fe/1e3),b=Math.floor(y/60),N=Math.floor(b/60),z=Math.floor(N/24),Ue=Math.floor(z/7),Ye=Math.floor(z/365);return Ye>0?t().t("{{COUNT}}y",{COUNT:Ye,context:"time_ago"}):Ue>0?t().t("{{COUNT}}w",{COUNT:Ue,context:"time_ago"}):z>0?t().t("{{COUNT}}d",{COUNT:z,context:"time_ago"}):N>0?t().t("{{COUNT}}
6h",{COUNT:N,context:"time_ago"}):b>0?t().t("{{COUNT}}m",{COUNT:b,context:"time_ago"}):t().t("1m",{context:"time_ago"})}let de=null,be=h(!1),Me=h(!1),qe=h(!1),Re=h(!1);const ue=()=>{e(Re)&&s(Re,!1)};let xe=h(null);const K=S=>{s(Re,!1),w("select"),X()&&Ul.set(null),s(A,!1),Pe(Date.now()/1e3),Ie()&&(S==null||S.preventDefault(),fa(`/c/${Se()}`),$a.set(!1))},Oe=async S=>{De()||(S.preventDefault(),S.stopPropagation(),s(H,!0),ze())},O=async()=>{const S=await pf(localStorage.token,Se()).catch(L=>(rt.error(`${L}`),null));S&&(s(xe,null),Pe(S.last_read_at??0),Ce()(S))};let ie=h(!1),M=h(!1),ve=h(Y());const te=async(S,L)=>{L===""?rt.error(t().t("Title cannot be an empty string.")):(await ff(localStorage.token,S,{title:L}),S===f()&&vh.set(L),await El(localStorage.token,{refreshPinned:!0}),w("change"))},ge=async S=>{var fe,y,b,N;if(!(((fe=R())==null?void 0:fe.role)==="admin"||(((N=(b=(y=R())==null?void 0:y.permissions)==null?void 0:b.chat)==null?void 0:N.import)??!0))){rt.error(t().t("Access prohibited"));return}const L=await mf(localStorage.token,S,t().t("Clone of {{TITLE}}",{TITLE:Y()})).catch(z=>(rt.error(`${z}`),null));L&&(fa(`/c/${L.id}`),await El(localStorage.token,{refreshPinned:!0}))};let _e=h(!1);const Ae=async S=>{if(e(_e))return;s(_e,!0),await Tu(localStorage.token,S).catch(fe=>(rt.error(`${fe}`),null))&&(Gs.set(await Od(localStorage.token)),f()===S&&(await fa("/"),await cl.set(""),await na()),w("change")),s(_e,!1)};let U=h(!1);const T=async S=>{if(!e(U)){s(U,!0);try{await Lu(localStorage.token,S),f()===S&&(await fa("/"),cl.set("")),w("change"),rt.success(t().t("Chat archived."))}catch(L){rt.error(t().t("Failed to archive chat."))}finally{s(U,!1)}}},C=async(S,L)=>{S&&L?await js(localStorage.token,S,L).catch(y=>(rt.error(`${y}`),null))&&(await El(localStorage.token,{refreshPinned:!0}),w("change"),rt.success(t().t("Chat moved successfully"))):rt.error(t().t("Failed to move chat"))};let D=h(),F=h(!1),H=h(!1),pe=h(!1),ye=h(0),he=h(0);const q=S=>{S.stopPropagation(),s(Re,!1),S.dataTransfer.setDragImage(zf,0,0),S.dataTransfer.setData("text/plain",JSON.stringify({type:"chat",id:Se()})),S.dataTransfer.setData("application/x-open-webui-drag",""),s(pe,!0),We(D,e(D).style.opacity="0.5")},P=S=>{S.stopPropagation(),s(ye,S.clientX),s(he,S.clientY)},Q=S=>{S.stopPropagation(),We(D,e(D).style.opacity="1"),s(pe,!1),we()(S)},re=S=>{e(D).contains(S.target)||e(M)&&(e(ve)!==Y()&&te(Se(),e(ve)),s(M,!1),s(ve,""))};ea(()=>{const S=e(D);if(S)return document.addEventListener("click",re,!0),S.addEventListener("dragstart",q),S.addEventListener("drag",P),S.addEventListener("dragend",Q),()=>{document.removeEventListener("click",re,!0),S.removeEventListener("dragstart",q),S.removeEventListener("drag",P),S.removeEventListener("dragend",Q),wo===ue&&(wo=null)}});let le=h(!1);const $e=S=>{S.key==="Enter"?(S.preventDefault(),setTimeout(()=>{const L=document.getElementById(`chat-title-input-${Se()}`);L&&L.blur()},0)):S.key==="Escape"&&(S.preventDefault(),s(M,!1),s(ve,""))},ze=async()=>{s(ve,Y()),s(M,!0),s(Re,!1),await na(),setTimeout(()=>{const S=document.getElementById(`chat-title-input-${Se()}`);S&&(S.focus(),S.select())},0)},Fe=async()=>{var N;s(F,!0),de=await Cl(localStorage.token,Se());const S=de.chat,L=S==null?void 0:S.history;let fe=[];L!=null&&L.messages&&(L!=null&&L.currentId)?fe=Cu(L,L.currentId).map(z=>({role:z.role,content:Hs(z.output)||z.content||""})):fe=((S==null?void 0:S.messages)??[]).map(z=>({role:z.role,content:Hs(z.output)||z.content||""}));let y="";if(Se()===f())try{y=JSON.parse(sessionStorage.selectedModels||"[]").find(z=>z)??""}catch{}if(!y&&(L!=null&&L.messages)&&(L!=null&&L.currentId)){let z=L.currentId;for(;z;){const Ue=L.messages[z];if(!Ue)break;if(Ue.role==="assistant"&&Ue.model){y=Ue.model;break}z=Ue.parentId}}y||(y=((N=S==null?void 0:S.models)==null?void 0:N.at(0))??""),s(ve,"");const b=await nf(localStorage.token,y,fe).catch(z=>(rt.error(`${z}`),null));b?(b!==Y()&&te(Se(),b),s(M,!1)):s(ve,Y()),s(F,!1)};Kt(()=>e(Re),()=>{e(Re)&&wo!==ue&&(wo==null||wo(),wo=ue)}),Kt(()=>(it(Se()),f(),it(ae())),()=>{Se()===f()&&s(xe,ae()??Date.now()/1e3)}),Kt(()=>(it(Pe()),e(xe)),()=>{s(x,Math.max(Pe()??0,e(xe)??0)||null)}),Kt(()=>(it(Se()),f(),it(se()),e(x),it(ae())),()=>{s(A,Se()!==f()&&!se()&&(e(x)===null||ae()!==null&&ae()>e(x)))}),Kt(()=>(it(Se()),f(),e(M),e(be),e(Me),e(qe),it(m())),()=>{s(E,Se()===f()||e(M)||e(be)||e(Me)||e(qe)||m())}),Kt(()=>(it(Se()),f(),e(M),n(),it(m()),Ie()),()=>{var S,L;s(V,` w-full flex justify-between rounded-xl px-2 py-1.5 ${Se()===f()||e(M)?((S=n())==null?void 0:S.highContrastMode)??!1?"bg-black/[0.035] dark:bg-white/[0.06] selected":"bg-black/[0.035] dark:bg-white/[0.045] selected":m()?((L=n())==null?void 0:L.highContrastMode)??!1?"bg-black/[0.035] dark:bg-white/[0.055] selected":"bg-black/[0.035] dark:bg-white/[0.045] selected":Ie()?"":" hover:bg-gray-100 dark:hover:bg-gray-900 group-hover:bg-gray-100 dark:group-hover:bg-gray-900"} whitespace-nowrap text-ellipsis transition`)}),la(),gr();var at=T2(),tt=Qe(at);Ef(tt,{get chatId(){return Se()},get show(){return e(ie)},set show(S){s(ie,S)},$$legacy:!0});var Je=o(tt,2);{let S=v(()=>(t(),l(()=>t().t("Delete chat?"))));Ca(Je,{get title(){return e(S)},get show(){return e(le)},set show(L){s(le,L)},$$events:{confirm:()=>{Ae(Se())}},children:(L,fe)=>{var y=h2(),b=a(y),N=o(b),z=a(N,!0);r(N),ll(),r(y),g(Ue=>{d(b,`${Ue??""}
6 `),d(z,Y())},[()=>(t(),l(()=>t().t("This will delete")))]),i(L,y)},$$slots:{default:!0},$$legacy:!0})}var je=o(Je,2);{var ne=S=>{Wf(S,{get x(){return e(ye)},get y(){return e(he)},children:(L,fe)=>{var y=x2(),b=a(y),N=a(b);d2(N,{className:" size-[1.125rem]",strokeWidth:"1.5"});var z=o(N,2),Ue=a(z,!0);r(z),r(b),r(y),g(()=>d(Ue,Y())),i(L,y)},$$slots:{default:!0}})};G(je,S=>{e(pe)&&e(ye)&&e(he)&&S(ne)})}var J=o(je,2),W=a(J);{var Z=S=>{var L=b2(),fe=a(L);vt(fe),r(L),g(y=>{k(L,1,` w-full flex justify-between rounded-xl px-2 py-1.5 ${it(Se()),f(),e(M),n(),it(m()),l(()=>{var b,N;return Se()===f()||e(M)?((b=n())==null?void 0:b.highContrastMode)??!1?"bg-black/[0.035] dark:bg-white/[0.06] selected":"bg-black/[0.035] dark:bg-white/[0.045] selected":m()?((N=n())==null?void 0:N.highContrastMode)??!1?"bg-black/[0.035] dark:bg-white/[0.055] selected":"bg-black/[0.035] dark:bg-white/[0.045] selected":"hover:bg-gray-100 dark:hover:bg-gray-900 group-hover:bg-gray-100 dark:group-hover:bg-gray-900"})??""} whitespace-nowrap text-ellipsis relative transition ${e(F)?"cursor-not-allowed":""}`),Be(fe,"id",`chat-title-input-${Se()??""}`),Be(fe,"placeholder",y),fe.disabled=e(F)},[()=>(e(F),t(),l(()=>e(F)?t().t("Generating..."):""))]),dt(fe,()=>e(ve),y=>s(ve,y)),ke("keydown",fe,$e),ke("blur",fe,async y=>{if(e(H)){y.preventDefault(),y.stopPropagation(),await na(),setTimeout(()=>{const b=document.getElementById(`chat-title-input-${Se()}`);b&&b.focus()},0),s(H,!1);return}}),i(S,L)},Ee=S=>{var L=y2(),fe=a(L);B(fe),r(L),g(()=>{k(L,1,me(e(V))),Be(L,"href",`/c/${Se()??""}`),Be(L,"aria-current",Se()===f()?"page":void 0)}),ke("click",L,K),i(S,L)},Ge=S=>{{let L=v(()=>(e(M),e(pe),n(),l(()=>{var fe;return e(M)||e(pe)||!(((fe=n())==null?void 0:fe.chatHoverPreview)??!0)})));hx(S,{openDelay:300,closeDelay:0,get disabled(){return e(L)},get open(){return e(Re)},set open(fe){s(Re,fe)},children:(fe,y)=>{var b=$2(),N=Qe(b);{let Ue=v(()=>Se()===f()?"page":void 0);xx(N,{id:"sidebar-chat-item",get class(){return e(V)},get href(){return`/c/${Se()??""}`},get"aria-current"(){return e(Ue)},onclick:K,ondblclick:Oe,draggable:"false",children:(Ye,Ve)=>{B(Ye)},$$slots:{default:!0}})}var z=o(N,2);{let Ue=v(()=>e(ve)||Y());n2(z,{get chatId(){return Se()},get title(){return e(Ue)},get openPreview(){return e(Re)},side:"right",align:"center"})}i(fe,b)},$$slots:{default:!0},$$legacy:!0})}};G(W,S=>{e(M)?S(Z):Ie()?S(Ee,1):S(Ge,-1)})}var p=o(W,2);{var $=S=>{var L=C2(),fe=a(L);{var y=z=>{var Ue=k2(),Ye=a(Ue);{let Ve=v(()=>(t(),l(()=>t().t("Generate"))));Lt(Ye,{get content(){return e(Ve)},children:(lt,st)=>{var Ke=w2(),Ze=a(Ke);u2(Ze,{strokeWidth:"1.5"}),r(Ke),g(()=>Ke.disabled=e(F)),ke("click",Ke,()=>{Fe()}),i(lt,Ke)},$$slots:{default:!0}})}r(Ue),i(z,Ue)},b=z=>{var Ue=I2(),Ye=a(Ue);{let st=v(()=>(t(),l(()=>t().t("Archive"))));Lt(Ye,{get content(){return e(st)},className:"flex items-center",children:(Ke,Ze)=>{var ot=E2(),ut=a(ot);Md(ut,{className:"size-3.5",strokeWidth:"1.7"}),r(ot),g(()=>ot.disabled=e(U)),ke("click",ot,()=>{T(Se())}),i(Ke,ot)},$$slots:{default:!0}})}var Ve=o(Ye,2);{var lt=st=>{{let Ke=v(()=>(t(),l(()=>t().t("Delete"))));Lt(st,{get content(){return e(Ke)},children:(Ze,ot)=>{var ut=A2(),_t=a(ut);zs(_t,{className:"size-3.5",strokeWidth:"1.7"}),r(ut),g(()=>ut.disabled=e(_e)),ke("click",ut,()=>{Ae(Se())}),i(Ze,ut)},$$slots:{default:!0}})}};G(Ve,st=>{R(),l(()=>{var Ke,Ze,ot,ut;return((Ke=R())==null?void 0:Ke.role)==="admin"||(((ut=(ot=(Ze=R())==null?void 0:Ze.permissions)==null?void 0:ot.chat)==null?void 0:ut.delete)??!0)})&&st(lt)})}r(Ue),i(z,Ue)},N=z=>{var Ue=P2(),Ye=a(Ue);Ff(Ye,{get chatId(){return Se()},cloneChatHandler:()=>{ge(Se())},shareHandler:()=>{s(ie,!0)},moveChatHandler:C,archiveChatHandler:()=>{T(Se())},renameHandler:ze,deleteHandler:()=>{s(le,!0)},markUnreadHandler:O,onOpen:()=>{s(qe,!0),w("select")},onClose:()=>{s(qe,!1),w("unselect")},onPinChange:async()=>{w("change")},children:(st,Ke)=>{var Ze=S2(),ot=a(Ze);Cd(ot,{className:"size-3.5",strokeWidth:"2"}),r(Ze),i(st,Ze)},$$slots:{default:!0}});var Ve=o(Ye,2);{var lt=st=>{var Ke=N2(),Ze=a(Ke);Cd(Ze,{className:"size-3.5",strokeWidth:"2"}),r(Ke),g(ot=>Be(Ke,"aria-label",ot),[()=>(t(),l(()=>t().t("Delete")))]),ke("click",Ke,()=>{s(le,!0)}),i(st,Ke)};G(Ve,st=>
6{it(Se()),f(),R(),l(()=>{var Ke,Ze,ot,ut;return Se()===f()&&(((Ke=R())==null?void 0:Ke.role)==="admin"||(((ut=(ot=(Ze=R())==null?void 0:Ze.permissions)==null?void 0:ot.chat)==null?void 0:ut.delete)??!0))})&&st(lt)})}r(Ue),i(z,Ue)};G(fe,z=>{e(M)?z(y):ce()&&e(be)?z(b,1):z(N,-1)})}r(L),g(()=>k(L,1,`${Ie()||e(E)?"selected":"hover-reveal"} absolute ${Te()==="pr-2"?"right-[0.5rem]":"right-1"} inset-y-0 mr-1.5 flex items-center`)),i(S,L)};G(p,S=>{De()||S($)})}r(J),Oa(J,S=>s(D,S),()=>e(D)),g(()=>{k(J,1,` w-full ${Te()??""} relative group`),Be(J,"draggable",!e(M)&&!De())}),ke("mouseenter",J,()=>{s(be,!0)}),ke("mouseleave",J,()=>{s(be,!1)}),ke("focusin",J,()=>{s(Me,!0)}),ke("focusout",J,()=>{s(Me,!1)}),i(He,at),cr(),c()}var L2=u('<div class="absolute top-0 left-0 w-full h-full rounded-xs bg-gray-100/50 dark:bg-gray-700/20 bg-opacity-50 dark:bg-opacity-10 z-50 pointer-events-none touch-none"></div>'),O2=u('<div class=" p-[0.0625rem]"><!></div>'),M2=u('<button class="p-0.5 dark:hover:bg-gray-850 rounded-lg touch-auto"><!></button>'),R2=u('<button class="absolute z-10 right-2 hover-reveal self-center flex items-center dark:text-gray-300"><!></button>'),D2=u('<div id="sidebar-folder-button"><button class="w-full py-1.5 pl-2 flex items-center gap-1.5 text-xs font-normal"><!> <div> </div></button> <!></div>'),U2=u('<div slot="content" class="w-full"><!></div>'),B2=u("<!> <!>",1),G2=u("<div><!></div>");function j2(He,_){vr(_,!1),mr("i18n");const t=ja();let f=Xe(_,"open",12,!0),n=Xe(_,"id",8,""),Ie=Xe(_,"name",8,""),X=Xe(_,"collapsible",8,!0),R=Xe(_,"className",8,""),I=Xe(_,"buttonClassName",8,"text-gray-600 dark:text-gray-400"),c=Xe(_,"chevron",8,!0),x=Xe(_,"onAddLabel",8,""),A=Xe(_,"onAdd",8,null),E=Xe(_,"dragAndDrop",8,!0),V=h(),B=h(!1),j=h(!1);const w=Pe=>{Pe.preventDefault(),Pe.stopPropagation(),s(j,!0)},Te=Pe=>{if(Pe.preventDefault(),Pe.stopPropagation(),e(V).contains(Pe.target)){if(Pe.dataTransfer.items&&Pe.dataTransfer.items.length>0)for(const se of Array.from(Pe.dataTransfer.items))if(se.kind==="file"){const m=se.getAsFile();if(m&&m.type==="application/json"){const ce=new FileReader;ce.onload=async function(De){try{const Le=JSON.parse(De.target.result);f(!0),t("import",Le)}catch(Le){}},ce.readAsText(m)}}else{f(!0);try{const m=Pe.dataTransfer.getData("text/plain");if(m){const ce=JSON.parse(m);t("drop",ce)}}catch{}finally{s(j,!1)}break}s(j,!1)}},Se=Pe=>{Pe.preventDefault(),Pe.stopPropagation(),s(j,!1)};ea(()=>{const Pe=localStorage.getItem(`${n()}-folder-state`);Pe!==null&&f(Pe==="true"),s(B,!0),E()&&(e(V).addEventListener("dragover",w),e(V).addEventListener("drop",Te),e(V).addEventListener("dragleave",Se))}),Al(()=>{E()&&(e(V).removeEventListener("dragover",w),e(V).removeEventListener("drop",Te),e(V).removeEventListener("dragleave",Se))}),gr();var Y=G2(),ee=a(Y);{var ae=Pe=>{var se=B2(),m=Qe(se);{var ce=Ce=>{var we=L2();i(Ce,we)};G(m,Ce=>{e(j)&&Ce(ce)})}var De=o(m,2);{var Le=Ce=>{Bu(Ce,{className:"w-full ",buttonClassName:"w-full",onChange:we=>{t("change",we),localStorage.setItem(`${n()}-folder-state`,`${we}`)},get open(){return f()},set open(we){f(we)},children:(we,oe)=>{var de=D2(),be=a(de),Me=a(be);{var qe=Oe=>{var O=O2(),ie=a(O);{var M=te=>{Ba(te,{className:" size-3",strokeWidth:"2"})},ve=te=>{bx(te,{className:" size-3",strokeWidth:"2"})};G(ie,te=>{f()?te(M):te(ve,-1)})}r(O),i(Oe,O)};G(Me,Oe=>{c()&&Oe(qe)})}var Re=o(Me,2),ue=a(Re,!0);r(Re),r(be);var xe=o(be,2);{var K=Oe=>{var O=R2(),ie=a(O);Lt(ie,{get content(){return x()},children:(M,ve)=>{var te=M2(),ge=a(te);Ya(ge,{className:" size-3",strokeWidth:"2.5"}),r(te),ke("click",te,_e=>{}),i(M,te)},$$slots:{default:!0}}),r(O),ke("pointerup",O,M=>{M.stopPropagation()}),ke("click",O,M=>{M.stopPropagation(),A()()}),i(Oe,O)};G(xe,Oe=>{A()&&Oe(K)})}r(de),g(()=>{k(de,1,` w-full group rounded-xl relative flex items-center justify-between hover:bg-gray-100 dark:hover:bg-gray-900 transition ${I()??""}`),k(Re,1,`translate-y-[0.5px] ${c()?"":"pl-0.5"}`),d(ue,Ie())}),i(we,de)},$$slots:{default:!0,content:(we,oe)=>{var de=U2(),be=a(de);Ka(be,_,"default",{},null),r(de),i(we,de)}},$$legacy:!0})},Ne=Ce=>{var we=Wr(),oe=Qe(we);Ka(oe,_,"default",{},null),i(Ce,we)};G(De,Ce=>{X()?Ce(Le):Ce(Ne,-1)})}i(Pe,se)};G(ee,Pe=>
6{e(B)&&Pe(ae)})}r(Y),Oa(Y,Pe=>s(V,Pe),()=>e(V)),g(()=>k(Y,1,`relative ${R()??""}`)),i(He,Y),cr()}var H2=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"><path d="M9 6L15 12L9 18" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function Iu(He,_){let t=Xe(_,"className",8,"size-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=H2();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}var F2=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"><path d="M6 12H12M18 12H12M12 12V6M12 12V18" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function W2(He,_){let t=Xe(_,"className",8,"size-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=F2();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}var z2=u('<div class="absolute inset-0 z-50 rounded-md bg-gray-100/50 pointer-events-none touch-none dark:bg-gray-700/20"></div>'),K2=u('<button type="button" class="flex items-center justify-center w-7 h-7 rounded-lg text-gray-300 hover:text-gray-500 dark:text-gray-600 dark:hover:text-gray-400 transition-colors duration-100"><!></button>'),Y2=u('<div class="flex items-center justify-between h-6 w-full pl-3.5 pr-1.5 shrink-0"><button type="button"><span> </span> <span class="flex opacity-0 group-hover:opacity-100 group-focus-within:opacity-100 transition-all duration-100"><!></span></button> <div class="contents"><!></div> <!></div>'),V2=u('<div slot="content"><!></div>'),q2=u("<!> <!>",1),X2=u("<div><!></div>");function Ns(He,_){vr(_,!1);const t=ja();let f=Xe(_,"open",12,!0),n=Xe(_,"id",8,""),Ie=Xe(_,"name",8,""),X=Xe(_,"collapsible",8,!0),R=Xe(_,"className",8,""),I=Xe(_,"buttonClassName",8,""),c=Xe(_,"contentClassName",8,"px-1.5"),x=Xe(_,"onAddLabel",8,""),A=Xe(_,"onAdd",8,null),E=Xe(_,"dragAndDrop",8,!0),V=h(),B=h(!1),j=h(!1);const w=se=>{f(se),t("change",se),localStorage.setItem(`${n()}-folder-state`,`${se}`)},Te=se=>{se.preventDefault(),se.stopPropagation(),s(j,!0)},Se=se=>{var m;if(se.preventDefault(),se.stopPropagation(),!!e(V).contains(se.target)){if((m=se.dataTransfer)!=null&&m.items&&se.dataTransfer.items.length>0)for(const ce of Array.from(se.dataTransfer.items))if(ce.kind==="file"){const De=ce.getAsFile();if(De&&De.type==="application/json"){const Le=new FileReader;Le.onload=async function(Ne){var Ce;try{const we=JSON.parse((Ce=Ne.target)==null?void 0:Ce.result);f(!0),t("import",we)}catch(we){}},Le.readAsText(De)}}else{f(!0);try{const De=se.dataTransfer.getData("text/plain");De&&t("drop",JSON.parse(De))}catch{}finally{s(j,!1)}break}s(j,!1)}},Y=se=>{se.preventDefault(),se.stopPropagation(),s(j,!1)};ea(()=>{const se=localStorage.getItem(`${n()}-folder-state`);se!==null&&f(se==="true"),s(B,!0),E()&&(e(V).addEventListener("dragover",Te),e(V).addEventListener("drop",Se),e(V).addEventListener("dragleave",Y))}),Al(()=>{E()&&(e(V).removeEventListener("dragover",Te),e(V).removeEventListener("drop",Se),e(V).removeEventListener("dragleave",Y))}),gr();var ee=X2(),ae=a(ee);{var Pe=se=>{var m=q2(),ce=Qe(m);{var De=we=>{var oe=z2();i(we,oe)};G(ce,we=>{e(j)&&we(De)})}var Le=o(ce,2);{var Ne=we=>{Bu(we,{className:"w-full",buttonClassName:"w-full",onChange:w,get open(){return f()},set open(oe){f(oe)},children:(oe,de)=>{var be=Y2(),Me=a(be),qe=a(Me),Re=a(qe,!0);r(qe);var ue=o(qe,2),xe=a(ue);Iu(xe,{className:"size-[0.6875rem]"}),r(ue),r(Me);var K=o(Me,2),Oe=a(K);Ka(Oe,_,"action",{},null),r(K);var O=o(K,2);{var ie=M=>{var ve=K2(),te=a(ve);Lt(te,{get content(){return x()},children:(ge,_e)=>{W2(ge,{className:"size-3.5"})},$$slots:{default:!0}}),r(ve),g(()=>Be(ve,"aria-label",x())),ke("click",ve,ge=>{ge.stopPropagation(),A()()}),i(M,ve)};G(O,M=>{A()&&M(ie)})}r(be),g(()=>{k(Me,1,`group flex flex-1 h-full items-center gap-1 text-left text-xs text-gray-400 hover:text-gray-500 dark:text-gray-500 dark:hover:text-gray-400 transition-colors duration-100 ${I()??""}`),Be(Me,"aria-expanded",f()),Be(Me,"aria-controls",`${n()??""}-content`),d(Re,Ie()),bl(ue,`transform: rotate(${f()?"90deg":"0deg"})`)}),ke("click",K,M=>M.stopPropagation()),i(oe,be)},$$slots:{default:!0,content:(oe,de)=>{var be=V2(),Me=a(be);Ka(Me,_,"default",{},null),r(be),g(()=>{Be(be,"id",`${n()??""}-content`),k(be,1,`w-full ${c()??""}`)}),i(oe,be)}},$$legacy:!0})},Ce=we=>{var oe=Wr(),de=Qe(oe);Ka(de,_,"default",{},null),i(we,oe)};G(Le,we=>{X()?we(Ne):we(Ce,-1)})}i(se,m)};G(ae,se=>{e(B)&&se(Pe)})}r(ee),Oa(ee,se=>s(V,se),()=>e(V)),g(()=>k(ee,1,`relative ${R()??""}`)),i(He,ee),cr()}var J2=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"><path d="M6 9L12 15L18 9" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function Dg(He,_){let t=Xe(_,"className",8,"size-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=J2();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}var Z2=u('<div class=" text-sm text-gray-700 dark:text-gray-300 flex-1 line-clamp-3 mb-2"> </div> <div class="flex items-center gap-1.5"><input type="checkbox"/> <div class="text-xs text-gray-500"> </div></div>',1),Q2=u('<div class=" bg-black/80 backdrop-blur-2xl px-2 py-1 rounded-lg w-fit max-w-40"><div class="flex items-center gap-1"><!> <div class=" text-xs text-white line-clamp-1"> </div></div></div>'),e$=u('<div class="absolute top-0 left-0 w-full h-full rounded-xs bg-gray-100/50 dark:bg-gray-700/20 bg-opacity-50 dark:bg-opacity-10 z-50 pointer-events-none touch-none"></div>'),Ug=u('<div class="flex group-hover:hidden transition-all"><!></div> <div class="hidden group-hover:flex transition-all p-[0.0625rem]"><!></div>',1),t$=u('<input type="text" class="w-full h-full bg-transparent outline-hidden"/>'),r$=u('<div class="inline-flex h-4 min-w-4 shrink-0 items-center justify-center rounded-md bg-sky-500/10 px-1 text-[0.625rem] font-semibold leading-4 text-sky-600 dark:bg-sky-400/10 dark:text-sky-300"> </div>'),a$=u('<div class="min-w-0 truncate"> </div> <!>',1),l$=u('<div class="flex size-5 items-center justify-center self-center dark:hover:text-white transition m-0 touch-auto"><!></div>'),o$=u('<button class="absolute z-10 right-2 hover-reveal self-center flex items-center dark:text-gray-300"><!></button>'),s$=u('<div class="w-full group"><div role="button" tabindex="0"><button class="text-gray-600 dark:text-gray-400 transition-all p-1 hover:bg-gray-100 dark:hover:bg-gray-900 rounded-lg"><!></button> <div class="translate-y-[0.5px] flex min-w-0 flex-1 items-center gap-1.5 pr-6 text-start"><!></div> <!></div></div>'),Bg=u('<div class="flex gap-1 px-2 py-1.5" aria-label="Loading"><span class="size-1 rounded-full bg-gray-400 animate-pulse dark:bg-gray-600"></span> <span class="size-1 rounded-full bg-gray-400 animate-pulse [animation-delay:150ms] dark:bg-gray-600"></span> <span class="size-1 rounded-full bg-gray-400 animate-pulse [animation-delay:300ms] dark:bg-gray-600"></span></div>'),n$=u('<div class="px-2 py-0.5 text-[0.6875rem] text-gray-400 dark:text-gray-600"> </div>'),i$=u('<button class="w-full px-2 py-0.5 text-left text-[0.6875rem] text-gray-400 transition hover:text-gray-700 disabled:cursor-not-allowed dark:text-gray-600 dark:hover:text-gray-300"><!></button>'),d$=u('<div class="ml-3 pl-1 mt-[0.0625rem] flex flex-col overflow-y-auto scrollbar-hidden border-s border-gray-100 dark:border-gray-900"><!> <!> <!> <!> <!></div>
6'),v$=u('<div slot="content" class="w-full"><!></div>'),c$=u("<!> <!> <!> <!> <!> <div><!> <!></div>",1);function Su(He,_){vr(_,!1);const t=()=>ct(ka,"$user",R),f=()=>ct(x,"$i18n",R),n=()=>ct(Ul,"$selectedFolder",R),Ie=()=>ct(Gl,"$mobile",R),X=()=>ct($a,"$showSidebar",R),[R,I]=hr(),c=h(),x=mr("i18n"),A=ja(),{saveAs:E}=no;let V=Xe(_,"folderRegistry",28,()=>({})),B=Xe(_,"open",12,!1),j=Xe(_,"folders",12),w=Xe(_,"folderId",8),Te=Xe(_,"shiftKey",8,!1),Se=Xe(_,"className",8,""),Y=Xe(_,"deleteFolderContents",12,!0),ee=Xe(_,"parentDragged",8,!1),ae=Xe(_,"onDelete",8,()=>{}),Pe=Xe(_,"onItemMove",8,()=>{}),se=Xe(_,"onFolderUnreadCounts",8,()=>{}),m=h(),ce=h(!1),De=h(!1),Le=h(!1),Ne=h(!1),Ce=h(null),we=h(!1),oe=h(!1),de=h(null),be=h("");const Me=y=>new Intl.NumberFormat(void 0,{notation:"compact",compactDisplay:"short"}).format(y),qe=y=>!(y.active??!1)&&(y.last_read_at==null||typeof y.updated_at=="number"&&typeof y.last_read_at=="number"&&y.updated_at>y.last_read_at),Re=y=>[...y].sort((b,N)=>Number(qe(N))-Number(qe(b))||Number(N.updated_at??0)-Number(b.updated_at??0)),ue=(y,b)=>{const N=[...y],z=new Map(N.map((Ue,Ye)=>[Ue.id,Ye]));for(const Ue of b){if(!(Ue!=null&&Ue.id))continue;const Ye=z.get(Ue.id);Ye===void 0?(z.set(Ue.id,N.length),N.push(Ue)):N[Ye]={...N[Ye],...Ue}}return Re(N)},xe=y=>{var b,N;y!=null&&y.folder_unread_counts&&se()(y.folder_unread_counts),typeof(y==null?void 0:y.last_read_at)=="number"&&((N=(b=V()[w()])==null?void 0:b.setChatReadAt)==null||N.call(b,y.chat_id,y.last_read_at))},K=async()=>{var b,N;const y=await Mh(localStorage.token,w()).catch(z=>(rt.error(`${z}`),null));if(y){y.folder_unread_counts&&se()(y.folder_unread_counts);for(const z of y.folder_ids??[])z!==w()&&((N=(b=V()[z])==null?void 0:b.setFolderItems)==null||N.call(b));e(ye)&&s(ye,Re(e(ye).map(z=>{var Ue;return!z.user_id||z.user_id===((Ue=t())==null?void 0:Ue.id)?{...z,last_read_at:z.updated_at}:z})))}},Oe=y=>{y.stopPropagation(),!(e(oe)||ee()||!e(c))&&(y.preventDefault(),s(we,!0))},O=async y=>{var b,N,z,Ue;if(y.preventDefault(),y.stopPropagation(),!(e(oe)||ee()||!e(c))&&e(m).contains(y.target)){if(y.dataTransfer.items&&y.dataTransfer.items.length>0)for(const Ye of Array.from(y.dataTransfer.items))if(Ye.kind==="file"){const Ve=Ye.getAsFile();if(Ve&&Ve.type==="application/json"){const lt=new FileReader;lt.onload=async function(st){try{const Ke=JSON.parse(st.target.result);B(!0),A("import",{folderId:w(),items:Ke})}catch(Ke){}},lt.readAsText(Ve)}}else{const Ve=y.dataTransfer.getData("text/plain");try{const lt=JSON.parse(Ve),{type:st,id:Ke,item:Ze}=lt;if(st==="folder"){if(B(!0),Ke===w())return;await gu(localStorage.token,Ke,w()).catch(ut=>(rt.error(`${ut}`),null))&&A("update")}else if(st==="chat"){B(!0);let ot=await Cl(localStorage.token,Ke).catch(ut=>null);if(!ot&&Ze){if(!(((b=t())==null?void 0:b.role)==="admin"||(((Ue=(z=(N=t())==null?void 0:N.permissions)==null?void 0:z.chat)==null?void 0:Ue.import)??!0))){rt.error(f().t("Access prohibited"));return}ot=await Rs(localStorage.token,[{chat:Ze.chat,meta:(Ze==null?void 0:Ze.meta)??{},pinned:!1,folder_id:null,created_at:(Ze==null?void 0:Ze.created_at)??null,updated_at:(Ze==null?void 0:Ze.updated_at)??null}]).catch(ut=>(rt.error(`${ut}`),null))}if(ot){const ut=await js(localStorage.token,ot.id,w()).catch(_t=>(rt.error(`${_t}`),null));Pe()({originFolderId:ot.folder_id,targetFolderId:w(),e:y}),ut&&A("update")}}}catch(lt){}break}le(),s(we,!1)}},ie=y=>{y.preventDefault(),!(e(oe)||ee()||!e(c))&&s(we,!1)},M=new Image;M.src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAABCAQAAAC1HAwCAAAAC0lEQVR42mNkYAAAAAYAAjCB0C8AAAAASUVORK5CYII=";let ve=h(),te=h();const ge=y=>{y.stopPropagation(),y.dataTransfer.setDragImage(M,0,0),y.dataTransfer.setData("text/plain",JSON.stringify({type:"folder",id:w()})),y.dataTransfer.setData("application/x-open-webui-drag",""),s(oe,!0),We(m,e(m).style.opacity="0.5")},_e=y=>{y.stopPropagation(),s(ve,y.clientX),s(te,y.clientY)},Ae=y=>{y.stopPropagation(),We(m,e(m).style.opacity="1"),s(oe,!1)};ea(async()=>{var y;B(j()[w()].is_expanded),V(V()[w()]={setFolderItems:le,upsertChat:b=>{b.folder_id&&b.folder_id!==w()||(re=ue(re,[b]),(B()||e(ye))&&s(ye,ue(e(ye)??[],[b])))},setChatActive:(b,N)=>{if(e(ye)){let z=!1;return s(ye,Re(e(ye).map(Ue=>Ue.id!==b?Ue:(z=!0,{...Ue,active:N})))),z}return!1},setChatReadAt:(b,N)=>{if(e(ye)){let z=!1;return s(ye,Re(e(ye).map(Ue=>Ue.id!==b?Ue:(z=!0,{...Ue,last_read_at:N})))),z}return!1},setAllChatsRead:()=>{e(ye)&&s(ye,Re(e(ye).map(b=>{var N;return!b.user_id||b.user_id===((N=t())==null?void 0:N.id)?{...b,last_read_at:b.updated_at}:b})))}},!0),e(m)&&(e(m).addEventListener("dragover",Oe),e(m).addEventListener("drop",O),e(m).addEventListener("dragleave",ie),e(m).addEventListener("dragstart",ge),e(m).addEventListener("drag",_e),e(m).addEventListener("dragend",Ae)),(y=j()[w()])!=null&&y.new&&(delete j()[w()].new,await na(),Fe()
6)}),Al(()=>{delete V()[w()],e(m)&&(e(m).removeEventListener("dragover",Oe),e(m).removeEventListener("drop",O),e(m).removeEventListener("dragleave",ie),e(m).removeEventListener("dragstart",ge),e(m).removeEventListener("drag",_e),e(m).removeEventListener("dragend",Ae))});let U=h(!1);const T=async()=>{await Rh(localStorage.token,w(),Y()).catch(b=>(rt.error(`${b}`),null))&&(rt.success(f().t("Folder deleted successfully")),ae()(w()))},C=async({name:y,meta:b,data:N})=>{var Ye;if(y===""){rt.error(f().t("Folder name cannot be empty."));return}const z=j()[w()].name;if(y=y.trim(),j(j()[w()].name=y,!0),await Dh(localStorage.token,w(),{name:y,...b?{meta:b}:{},...N?{data:N}:{}}).catch(Ve=>(rt.error(`${Ve}`),j(j()[w()].name=z,!0),null))){if(j(j()[w()].name=y,!0),N&&j(j()[w()].data=N,!0),rt.success(f().t("Folder updated successfully")),((Ye=n())==null?void 0:Ye.id)===w()){const Ve=await bg(localStorage.token,w()).catch(lt=>(rt.error(`${lt}`),null));Ve&&await Ul.set(Ve)}A("update")}},D=async()=>{await Uh(localStorage.token,w(),B()).catch(y=>(rt.error(`${y}`),null))};let F;const H=()=>{clearTimeout(F),F=setTimeout(()=>{D()},500)},pe=10;let ye=h(null),he=h(1),q=h(!1),P=h(!1),Q=!1,re=[];const le=async(y=!1)=>{if(B()&&e(P)){y||(Q=!0);return}if(B()&&s(P,!0),await na(),B()){const b=y?e(he)+1:1;try{const N=await Oh(localStorage.token,w(),{page:b}),z=(N==null?void 0:N.chats)??[],Ue=y?ue(e(ye)??[],z):z;s(ye,ue(Ue,re)),re=re.filter(Ye=>!z.some(Ve=>Ve.id===Ye.id)),s(he,b),s(q,(N==null?void 0:N.has_more)??z.length===pe)}catch{const z=await ch(localStorage.token,w(),b).catch(Ve=>(rt.error(`${Ve}`),[])),Ue=z??[],Ye=y?ue(e(ye)??[],Ue):Ue;s(ye,ue(Ye,re)),re=re.filter(Ve=>!Ue.some(lt=>lt.id===Ve.id)),s(he,b),s(q,((z==null?void 0:z.length)??0)===pe)}finally{s(P,!1),Q&&(Q=!1,le())}}else B()||(s(ye,null),s(he,1),s(q,!1),Q=!1)},$e=y=>y instanceof Element&&!!y.closest('button, a, input, [role="menu"]'),ze=async()=>{const y=await bg(localStorage.token,w()).catch(b=>(rt.error(`${b}`),null));y&&await Ul.set({...j()[w()],...y}),await fa(`/folders/${w()}`),Ie()&&$a.set(!X())},Fe=async()=>{await na(),s(be,j()[w()].name),s(Le,!0),await na(),await na();const y=document.getElementById(`folder-${w()}-input`);y&&(y.focus(),y.select())},at=async()=>{const y=await uh(localStorage.token,w()).catch(N=>(rt.error(`${N}`),null));if(!y)return;const b=new Blob([JSON.stringify(y)],{type:"application/json"});E(b,`folder-${j()[w()].name}-export-${Date.now()}.json`)},tt=async({name:y,meta:b,data:N,parent_id:z})=>{if(y===""){rt.error(f().t("Folder name cannot be empty."));return}y=y.trim(),await yf(localStorage.token,{name:y,data:N,meta:b,parent_id:z}).catch(Ye=>(rt.error(`${Ye}`),null))&&(rt.success(f().t("Folder created successfully")),A("update"))};Kt(()=>(it(j()),it(w())),()=>{var y,b;s(c,!((y=j()[w()])!=null&&y.shared)||((b=j()[w()])==null?void 0:b.permission)==="write")}),Kt(()=>(it(B()),e(ye)),()=>{!B()&&e(ye)!==null&&(s(ye,null),s(he,1),s(q,!1))}),Kt(()=>(it(B()),e(ye),e(P)),()=>{B()&&e(ye)===null&&!e(P)&&le()}),la();var Je={setFolderItems:le};gr();var je=c$(),ne=Qe(je);{let y=v(()=>(f(),l(()=>f().t("Delete folder?"))));Ca(ne,{get title(){return e(y)},get show(){return e(U)},set show(b){s(U,b)},$$events:{confirm:()=>{T()}},children:(b,N)=>{var z=Z2(),Ue=Qe(z),Ye=a(Ue,!0);r(Ue);var Ve=o(Ue,2),lt=a(Ve);vt(lt);var st=o(lt,2),Ke=a(st,!0);r(st),r(Ve),g((Ze,ot)=>{d(Ye,Ze),d(Ke,ot)},[()=>(f(),it(j()),it(w()),l(()=>f().t('Are you sure you want to delete "{{NAME}}"?',{NAME:j()[w()].name}))),()=>(f(),l(()=>f().t("Delete all contents inside this folder")))]),_u(lt,Y),i(b,z)},$$slots:{default:!0},$$legacy:!0})}var J=o(ne,2);fu(J,{edit:!0,get folderId(){return w()},onSubmit:C,get show(){return e(ce)},set show(y){s(ce,y)},$$legacy:!0});var W=o(J,2);fu(W,{get parentId(){return e(Ce)},onSubmit:tt,get show(){return e(Ne)},set show(y){s(Ne,y)},$$legacy:!0});var Z=o(W,2);ox(Z,{get folder(){return it(j()),it(w()),l(()=>j()[w()])},get show(){return e(De)},set show(y){s(De,y)},$$legacy:!0});var Ee=o(Z,2);{var Ge=y=>{Wf(y,{get x(){return e(ve)},get y(){return e(te)},children:(b,N)=>{var z=Q2(),Ue=a(z),Ye=a(Ue);Sd(Ye,{className:"size-3.5",strokeWidth:"1.5"});
6var Ve=o(Ye,2),lt=a(Ve,!0);r(Ve),r(Ue),r(z),g(()=>d(lt,(it(j()),it(w()),l(()=>j()[w()].name)))),i(b,z)},$$slots:{default:!0}})};G(Ee,y=>{e(oe)&&e(ve)&&e(te)&&y(Ge)})}var p=o(Ee,2),$=a(p);{var S=y=>{var b=e$();i(y,b)};G($,y=>{e(we)&&y(S)})}var L=o($,2);Bu(L,{className:"w-full",buttonClassName:"w-full",onChange:y=>{A("open",y)},get open(){return B()},set open(y){B(y)},children:(y,b)=>{var N=s$(),z=a(N),Ue=a(z),Ye=a(Ue);{var Ve=nt=>{var et=Ug(),gt=Qe(et),It=a(gt);Rd(It,{className:"size-3.5",get shortCode(){return it(j()),it(w()),l(()=>j()[w()].meta.icon)}}),r(gt);var Mt=o(gt,2),jt=a(Mt);{var Tt=$t=>{Dg($t,{className:" size-3",strokeWidth:"1.5"})},yt=$t=>{Iu($t,{className:" size-3",strokeWidth:"1.5"})};G(jt,$t=>{B()?$t(Tt):$t(yt,-1)})}r(Mt),i(nt,et)},lt=nt=>{var et=Ug(),gt=Qe(et),It=a(gt);Sd(It,{className:"size-3.5",strokeWidth:"1.5"}),r(gt);var Mt=o(gt,2),jt=a(Mt);{var Tt=$t=>{Dg($t,{className:" size-3",strokeWidth:"1.5"})},yt=$t=>{Iu($t,{className:" size-3",strokeWidth:"1.5"})};G(jt,$t=>{B()?$t(Tt):$t(yt,-1)})}r(Mt),i(nt,et)};G(Ye,nt=>{it(j()),it(w()),l(()=>{var et,gt;return(gt=(et=j()[w()])==null?void 0:et.meta)==null?void 0:gt.icon})?nt(Ve):nt(lt,-1)})}r(Ue);var st=o(Ue,2),Ke=a(st);{var Ze=nt=>{var et=t$();vt(et),g(()=>Be(et,"id",`folder-${w()??""}-input`)),dt(et,()=>e(be),gt=>s(be,gt)),ke("blur",et,()=>{C({name:e(be)}),s(Le,!1)}),ke("click",et,gt=>{gt.stopPropagation()}),ke("mousedown",et,gt=>{gt.stopPropagation()}),ke("keydown",et,gt=>{gt.key==="Enter"&&(C({name:e(be)}),s(Le,!1))}),i(nt,et)},ot=nt=>{var et=a$(),gt=Qe(et),It=a(gt,!0);r(gt);var Mt=o(gt,2);{var jt=Tt=>{var yt=r$(),$t=a(yt,!0);r(yt),g((rr,Rt)=>{Be(yt,"title",rr),d($t,Rt)},[()=>(f(),l(()=>f().t("Unread"))),()=>(it(j()),it(w()),l(()=>Me(j()[w()].unread_count)))]),i(Tt,yt)};G(Mt,Tt=>{it(j()),it(w()),l(()=>{var yt,$t;return!((yt=j()[w()])!=null&&yt.shared)&&((($t=j()[w()])==null?void 0:$t.unread_count)??0)>0})&&Tt(jt)})}g(()=>d(It,(it(j()),it(w()),l(()=>j()[w()].name)))),i(nt,et)};G(Ke,nt=>{e(Le)?nt(Ze):nt(ot,-1)})}r(st);var ut=o(st,2);{var _t=nt=>{var et=o$(),gt=a(et);sx(gt,{onEdit:()=>{s(ce,!0)},onShare:()=>{s(De,!0)},onDelete:()=>{s(U,!0)},onExport:()=>{at()},onCreateSubFolder:()=>{s(Ce,w()),s(Ne,!0)},onMarkAllRead:K,children:(It,Mt)=>{var jt=l$(),Tt=a(jt);Cd(Tt,{className:"size-3.5",strokeWidth:"2"}),r(jt),i(It,jt)},$$slots:{default:!0}}),r(et),i(nt,et)};G(ut,nt=>{e(c)&&nt(_t)})}r(z),r(N),g(()=>{Be(z,"id",`folder-${w()??""}-button`),k(z,1,`relative w-full py-1 px-1.5 rounded-xl flex items-center gap-1.5 hover:bg-gray-100 dark:hover:bg-gray-900 transition ${n(),it(w()),l(()=>{var nt;return((nt=n())==null?void 0:nt.id)===w()?"bg-gray-100/80 dark:bg-gray-850/50 selected":""})??""}`)}),ke("click",Ue,nt=>{nt.stopPropagation(),nt.stopImmediatePropagation(),B(!B()),H()}),ke("dblclick",z,nt=>{e(c)&&(e(de)&&(clearTimeout(e(de)),s(de,null)),Fe())}),ke("click",z,async nt=>{nt.stopPropagation(),!$e(nt.target)&&(e(de)&&(clearTimeout(e(de)),s(de,null)),s(de,setTimeout(async()=>{await ze(),s(de,null)},100)))}),ke("keydown",z,nt=>{nt.currentTarget===nt.target&&(nt.key==="Enter"||nt.key===" ")&&(nt.preventDefault(),ze())}),i(y,N)},$$slots:{default:!0,content:(y,b)=>{var N=v$(),z=a(N);{var Ue=Ye=>{var Ve=d$(),lt=a(Ve);{var st=gt=>{const It=v(()=>(it(j()),it(w()),l(()=>{var Tt;return(Tt=j()[w()])==null?void 0:Tt.childrenIds.map(yt=>j()[yt]).sort((yt,$t)=>yt.name.localeCompare($t.name,void 0,{numeric:!0,sensitivity:"base"}))})));var Mt=Wr(),jt=Qe(Mt);lr(jt,1,()=>e(It),Tt=>`${w()}-${Tt.id}`,(Tt,yt)=>{var $t=Wr(),rr=Qe($t);Su(rr,{get folders(){return j()},get folderId(){return e(yt),l(()=>e(yt).id)},get shiftKey(){return Te()},get parentDragged(){return e(oe)},get onItemMove(){return Pe()},get onDelete(){return ae()},get onFolderUnreadCounts(){return se()},get folderRegistry(){return V()},set folderRegistry(Rt){V(Rt)},$$events:{import:Rt=>{A("import",Rt.detail)},update:Rt=>{A("update",Rt.detail)},change:Rt=>{A("change",Rt.detail)}},$$legacy:!0}),i(Tt,$t)}),i(gt,Mt)};G(lt,gt=>{it(j()),it(w()),l(()=>{var It;return(It=j()[w()])==null?void 0:It.childrenIds})&>(st)})}var Ke=o(lt,2);{var Ze=gt=>{var It=Bg();i(gt,It)};G(Ke,gt=>{e(ye)===null&&e(P)&>(Ze)})}var ot=o(Ke,2);{var ut=gt=>{var It=n$(),Mt=a(It,!0);r(It),g(jt=>d(Mt,jt),[()=>(f(),l(()=>f().t("No chats")))]),i(gt,It)};G(ot,gt=>{e(ye),e(P),l(()=>e(ye)!==null&&e(ye).length===0&&!e(P))&>(ut)})}var _t=o(ot,2);lr(_t,1,()=>e(ye)??[],gt=>gt.id,(gt,It)=>{{let Mt=v(()=>(e(It),l(()=>e(It).active??!1))),jt=v(()=>(it(j()),it(w()),e(It),l(()=>{var $t;return($t=j()[w()])!=null&&$t.shared?e(It).owner_name??null:null}))),Tt=v(()=>(it(j()),it(w()),e(It),l(()=>{var $t;return($t=j()[w()])!=null&&$t.shared&&e(It).owner_name?e(It).user_id:null}))),yt=v(()=>(e(It),t(),l(()=>{var $t;return e(It).user_id!==(($t=t())==null?void 0:$t.id)})));Au(gt,{get id(){return e(It),l(()=>e(It).id)},get title(){return e(It),l(()=>e(It).title)},get createdAt(){return e(It),l(()=>e(It).created_at)},get updatedAt(){return e(It),l(()=>e(It).updated_at)},get lastReadAt(){return e(It),l(()=>e(It).last_read_at)},get active(){return e(Mt)},get ownerName(){return e(jt)},get ownerUserId(){return e(Tt)},get readonly(){return e(yt)},get shiftKey(){return Te()},onReadStateChange:xe,$$events:{change:$t=>{A("change",$t.detail)}}})}});var nt=o(_t,2);{var et=gt=>{var It=i$(),Mt=a(It);{var jt=yt=>{var $t=Bg();i(yt,$t)},Tt=yt=>{var $t=Mr();g(rr=>d($t,rr),[()=>(f(),l(()=>f().t("Show more")))]),i(yt,$t)};G(Mt,yt=>{e(P)?yt(jt):yt(Tt,-1)})}r(It),g(()=>It.disabled=e(P)),ke("click",It,()=>le(!0)),i(gt,It)};G(nt,gt=>{e(q)&>(et)})}r(Ve),i(Ye,Ve)};G(z,Ye=>{it(j()),it(w()),e(ye),e(q),e(P),l(()=>{var Ve;return(((Ve=j()[w()])==null?void 0:Ve.childrenIds)??[]).length>0||e(ye)!==null||e(q)||e(P)})&&Ye(Ue)})}r(N),i(y,N)}},$$legacy:!0}),r(p),Oa(p,y=>s(m,y),()=>e(m)),g(()=>{k(p,1,`relative ${Se()??""}`),Be(p,"draggable",(it(j()),it(w()),l(()=>{var y;return!((y=j()[w()])!=null&&y.shared)})))}),i(He,je),Gu(_,"setFolderItems",le);var fe=cr(Je);return I(),fe}var u$=u('<div class="w-full pl-2.5 text-[0.6875rem] text-gray-400 dark:text-gray-600 pt-2 pb-0.5"> </div> <!>',1),g$=u("<!> <!>",1);function _$(He,_){vr(_,!1);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr(),Ie=mr("i18n"),X=ja();let R=Xe(_,"folderRegistry",28,()=>({})),I=Xe(_,"folders",24,()=>({})),c=Xe(_,"shiftKey",8,!1),x=Xe(_,"onDelete",8,()=>{}),A=Xe(_,"onFolderUnreadCounts",8,()=>{}),E=h([]),V=h([]);const B=Y=>{var ee;Y.originFolderId&&((ee=R()[Y.originFolderId])==null||ee.setFolderItems())};Kt(()=>it(I()),()=>{const Y=Object.keys(I()).filter(ee=>{const ae=I()[ee];return ae.name?ae.shared?!ae.parent_id||!I()[ae.parent_id]:ae.parent_id===null:!1}).sort((ee,ae)=>(I()[ee].name??"").localeCompare(I()[ae].name??"",void 0,{numeric:!0,sensitivity:"base"}));s(E,Y.filter(ee=>!I()[ee].shared)),s(V,Y.filter(ee=>I()[ee].shared))}),la(),gr();var j=g$(),w=Qe(j);lr(w,1,()=>e(E),Y=>Y,(Y,ee)=>{Su(Y,{className:"",get folders(){return I()},get folderId(){return e(ee)},get shiftKey(){return c()},get onDelete(){return x()},onItemMove:B,get onFolderUnreadCounts(){return A()},get folderRegistry(){return R()},set folderRegistry(ae){R(ae)},$$events:{import:ae=>{X("import",ae.detail)},update:ae=>{X("update",ae.detail)},change:ae=>{X("change",ae.detail)}},$$legacy:!0})});var Te=o(w,2);{var Se=Y=>{var ee=u$(),ae=Qe(ee),Pe=a(ae,!0);r(ae);var se=o(ae,2);lr(se,1,()=>e(V),m=>m,(m,ce)=>{Su(m,{className:"",get folders(){return I()},get folderId(){return e(ce)},get shiftKey(){return c()},get onDelete(){return x()},onItemMove:B,get onFolderUnreadCounts(){return A()},get folderRegistry(){return R()},set folderRegistry(De){R(De)},$$events:{import:De=>{X("import",De.detail)},update:De=>{X("update",De.detail)},change:De=>{X("change",De.detail)}},$$legacy:!0})}),g(m=>d(Pe,m),[()=>(t(),l(()=>t().t("Shared")))]),i(Y,ee)};G(Te,Y=>{e(V),l(()=>e(V).length>0)&&Y(Se)})}i(He,j),cr(),n()}var f$=u('<div class=" rounded-lg flex flex-col gap-2"><div><div class=" text-xs font-normal mb-2.5 text-gray-500"> </div> <div class="flex gap-2.5 items-center mb-1"><div><div class=" p-2 bg-black/5 dark:bg-white/5 rounded-full"><!></div></div> <div><select id="models" class="outline-hidden bg-transparent text-sm font-normal block w-fit pr-10 max-w-full placeholder-gray-400"><option class=" text-gray-700" selected="">
6 </option><option class=" text-gray-700" selected=""> </option></select> <div class=" text-xs text-gray-400 font-normal"><!></div></div></div></div></div>');function p$(He,_){vr(_,!1);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr(),Ie=mr("i18n");let X=Xe(_,"onChange",8,()=>{}),R=Xe(_,"state",12,"private");gr();var I=f$(),c=a(I),x=a(c),A=a(x,!0);r(x);var E=o(x,2),V=a(E),B=a(V),j=a(B);{var w=Ce=>{Hu(Ce,{className:"w-5 h-5",strokeWidth:"1.8"})},Te=Ce=>{If(Ce,{className:"w-5 h-5",strokeWidth:"1.8"})};G(j,Ce=>{R()==="private"?Ce(w):Ce(Te,-1)})}r(B),r(V);var Se=o(V,2),Y=a(Se),ee=a(Y),ae=a(ee,!0);r(ee),ee.value=ee.__value="public";var Pe=o(ee),se=a(Pe,!0);r(Pe),Pe.value=Pe.__value="private",r(Y);var m;am(Y);var ce=o(Y,2),De=a(ce);{var Le=Ce=>{var we=Mr();g(oe=>d(we,oe),[()=>(t(),l(()=>t().t("Only invited users can access")))]),i(Ce,we)},Ne=Ce=>{var we=Mr();g(oe=>d(we,oe),[()=>(t(),l(()=>t().t("Visible to all users")))]),i(Ce,we)};G(De,Ce=>{R()==="private"?Ce(Le):Ce(Ne,-1)})}r(ce),r(Se),r(E),r(c),r(I),g((Ce,we,oe)=>{d(A,Ce),d(ae,we),d(se,oe),m!==(m=R()==="private"?"private":"public")&&(Y.value=Y.__value=R()==="private"?"private":"public",lm(Y,R()==="private"?"private":"public"))},[()=>(t(),l(()=>t().t("Visibility"))),()=>(t(),l(()=>t().t("Public"))),()=>(t(),l(()=>t().t("Private")))]),ke("change",Y,Ce=>{Ce.target.value==="public"?R("public"):R("private"),X()(R())}),i(He,I),cr(),n()}var Gg=u('<button type="button" class="p-1.5 rounded-lg hover:bg-gray-100 dark:hover:bg-gray-800 transition"><!></button>'),m$=u('<div class="mt-1 mb-3 px-3.5 py-3 border border-gray-100 dark:border-gray-850 rounded-2xl"><div class="flex items-center gap-3"><button type="button" class="shrink-0 rounded-xl overflow-hidden hover:opacity-80 transition"><img class="size-8 object-cover" alt=""/></button> <div class="flex-1"><div class=" text-gray-500 text-xs"> </div> <input type="text" class="w-full text-sm bg-transparent outline-none placeholder:text-gray-300 dark:placeholder:text-gray-700"/></div> <div class="flex items-center gap-1"><!> <!></div></div></div>'),h$=u('<input type="file" hidden="" accept="image/*"/> <div class="text-xs -mx-1"><button type="button" class="w-full flex items-center gap-3 px-3.5 py-3 hover:bg-gray-50 dark:hover:bg-gray-900 rounded-xl transition"><img class="rounded-full size-8 object-cover flex-shrink-0" alt=""/> <div class="flex-1 text-left min-w-0"><div class="font-normal text-gray-900 dark:text-white truncate"> </div> <div class="text-gray-500 text-xs"> <!></div></div> <!></button> <!></div>',1);function x$(He,_){vr(_,!1);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr(),Ie=mr("i18n");let X=Xe(_,"webhook",8),R=Xe(_,"expanded",8,!1),I=Xe(_,"onClick",8,()=>{}),c=Xe(_,"onDelete",8,()=>{}),x=Xe(_,"onUpdate",8,de=>{}),A=h(X().name),E=h(X().profile_image_url||""),V=h(),B=h();const j=()=>{var be;if(!((be=e(B))!=null&&be.length))return;const de=new FileReader;de.onload=Me=>{var ue,xe;const qe=`${(ue=Me.target)==null?void 0:ue.result}`,Re=(xe=e(B)[0])==null?void 0:xe.type;if(["image/gif","image/webp"].includes(Re))s(E,qe);else{const K=new Image;K.src=qe,K.onload=()=>{const Oe=document.createElement("canvas"),O=100;Oe.width=O,Oe.height=O;const ie=Oe.getContext("2d"),M=K.width/K.height,ve=M>1?O*M:O,te=M>1?O:O/M,ge=(O-ve)/2,_e=(O-te)/2;ie.drawImage(K,ge,_e,ve,te),s(E,Oe.toDataURL("image/webp",.8))}}s(B,null)},de.readAsDataURL(e(B)[0])},w=()=>{navigator.clipboard.writeText(`${ia}/channels/webhooks/${X().id}/${X().token}`),rt.success(t().t("Copied"))};Kt(()=>(e(A),it(X()),e(E),it(x())),()=>{(e(A)!==X().name||e(E)!==(X().profile_image_url||""))&&x()({name:e(A).trim()||X().name,profile_image_url:e(E)})}),la(),gr();var Te=h$(),Se=Qe(Te);Oa(Se,de=>s(V,de),()=>e(V));var Y=o(Se,2),ee=a(Y),ae=a(ee),Pe=o(ae,2),se=a(Pe),m=a(se,!0);r(se);var ce=o(se,2),De=a(ce),Le=o(De);{var Ne=de=>{var be=Mr();g(Me=>d(be,Me),[()=>(t(),it(X()),l(()=>t().t("by {{name}}",{name:X().user.name})))]),i(de,be)};G(Le,de=>{it(X()),l(()=>{var be;return(be=X().user)==null?void 0:be.name})&&de(Ne)})}r(ce),r(Pe);var Ce=o(Pe,2);{let de=v(()=>R()?"rotate-180":"");Ba(Ce,{get className(){return`size-3.5 text-gray-400 transition-transform duration-200 ${e(de)??""}`}})}r(ee);var we=o(ee,2);{var oe=de=>{var be=m$(),Me=a(be),qe=a(Me),Re=a(qe);r(qe);var ue=o(qe,2),xe=a(ue),K=a(xe,!0);r(xe);var Oe=o(xe,2);vt(Oe),r(ue);var O=o(ue,2),ie=a(O);{let ve=v(()=>(t(),l(()=>t().t("Copy URL"))));Lt(ie,{get content(){return e(ve)},children:(te,ge)=>{var _e=Gg(),Ae=a(_e);Cx(Ae,{className:"size-4 text-gray-500"}),r(_e),ke("click",_e,w),i(te,_e)},$$slots:{default:!0}})}var M=o(ie,2);{let ve=v(()=>(t(),l(()=>
6t().t("Delete"))));Lt(M,{get content(){return e(ve)},children:(te,ge)=>{var _e=Gg(),Ae=a(_e);zs(Ae,{className:"size-4 text-gray-500"}),r(_e),ke("click",_e,function(...U){var T;(T=c())==null||T.apply(this,U)}),i(te,_e)},$$slots:{default:!0}})}r(O),r(Me),r(be),g((ve,te)=>{Be(Re,"src",e(E)||`${No}/static/favicon.png`),d(K,ve),Be(Oe,"placeholder",te)},[()=>(t(),l(()=>t().t("Name"))),()=>(t(),l(()=>t().t("Webhook Name")))]),ke("click",qe,()=>e(V).click()),dt(Oe,()=>e(A),ve=>s(A,ve)),i(de,be)};G(we,de=>{R()&&de(oe)})}r(Y),g(de=>{Be(ae,"src",e(E)||`${No}/static/favicon.png`),d(m,e(A)),d(De,`${de??""} `)},[()=>(t(),it(qa),it(X()),l(()=>t().t("Created on {{date}}",{date:qa(X().created_at/1e6).format("MMM D, YYYY")})))]),as(Se,()=>e(B),de=>s(B,de)),ke("change",Se,j),ke("click",ee,function(...de){var be;(be=I())==null||be.apply(this,de)}),i(He,Te),cr(),n()}var b$=u('<div class="flex justify-center py-10"><!></div>'),y$=u('<div class="w-full py-2"></div>'),$$=u('<div class="text-gray-500 text-xs text-center py-8 px-10"> </div>'),w$=u('<span class="shrink-0"><!></span>'),k$=u('<div><div class="flex justify-between dark:text-gray-100 px-4 pt-3 mb-1"><div class="flex w-full justify-between items-center mr-3"><div class="self-center text-base flex gap-1.5 items-center"><div> </div> <span class="text-sm text-gray-500"> </span></div> <button type="button" class="px-3 py-1.5 gap-1 rounded-xl bg-gray-100/50 dark:bg-gray-850/50 text-black dark:text-white transition font-normal text-xs flex items-center justify-center"><!> <span> </span></button></div>
6 <button class="self-center rounded-lg p-1 text-gray-500 transition hover:bg-gray-50 hover:text-gray-700 dark:text-gray-400 dark:hover:bg-gray-800 dark:hover:text-gray-200"><!></button></div> <div class="flex flex-col w-full px-4 pb-4 dark:text-gray-200"><form class="flex flex-col w-full"><!> <div class="flex justify-end text-sm font-normal gap-1.5"><button type="submit"> <!></button></div></form></div></div>'),E$=u("<!> <!>",1);function A$(He,_){vr(_,!1);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr(),Ie=mr("i18n");let X=Xe(_,"show",12,!1),R=Xe(_,"channel",8,null),I=h([]),c=h(!1),x=h(!1),A=h(!1),E=h(null),V=h({});const B=async()=>{s(c,!0);try{s(I,await yx(localStorage.token,R().id))}catch{s(I,[])}s(c,!1)},j=async()=>{s(x,!0);try{const Pe=await wx(localStorage.token,R().id,{name:"New Webhook"});Pe&&(s(I,[...e(I),Pe]),s(E,Pe.id))}catch(Pe){rt.error(`${Pe}`)}s(x,!1)},w=async()=>{s(x,!0);try{for(const[Pe,se]of Object.entries(e(V)))await kx(localStorage.token,R().id,Pe,se);s(V,{}),await B(),rt.success(t().t("Saved"))}catch(Pe){rt.error(`${Pe}`)}s(x,!1)},Te=async()=>{if(e(E)){try{await $x(localStorage.token,R().id,e(E)),s(I,e(I).filter(Pe=>Pe.id!==e(E))),rt.success(t().t("Deleted"))}catch(Pe){rt.error(`${Pe}`)}s(E,null),s(A,!1)}};Kt(()=>(it(X()),it(R())),()=>{X()&&R()&&(B(),s(E,null),s(V,{}))}),la(),gr();var Se=E$(),Y=Qe(Se);Ca(Y,{get show(){return e(A)},set show(Pe){s(A,Pe)},$$events:{confirm:Te},$$legacy:!0});var ee=o(Y,2);{var ae=Pe=>{Wa(Pe,{size:"sm",get show(){return X()},set show(se){X(se)},children:(se,m)=>{var ce=k$(),De=a(ce),Le=a(De),Ne=a(Le),Ce=a(Ne),we=a(Ce,!0);r(Ce);var oe=o(Ce,2),de=a(oe,!0);r(oe),r(Ne);var be=o(Ne,2),Me=a(be);Ya(Me,{className:"size-3.5"});var qe=o(Me,2),Re=a(qe,!0);r(qe),r(be),r(Le);var ue=o(Le,2),xe=a(ue);wa(xe,{className:"size-4"}),r(ue),r(De);var K=o(De,2),Oe=a(K),O=a(Oe);{var ie=T=>{var C=b$(),D=a(C);ra(D,{className:"size-5"}),r(C),i(T,C)},M=T=>{var C=y$();lr(C,5,()=>e(I),D=>D.id,(D,F)=>{{let H=v(()=>(e(E),e(F),l(()=>e(E)===e(F).id)));x$(D,{get webhook(){return e(F)},get expanded(){return e(H)},onClick:()=>{s(E,e(E)===e(F).id?null:e(F).id)},onDelete:()=>{s(A,!0)},onUpdate:pe=>{We(V,e(V)[e(F).id]=pe)}})}}),r(C),i(T,C)},ve=T=>{var C=$$(),D=a(C,!0);r(C),g(F=>d(D,F),[()=>(t(),l(()=>t().t("No webhooks yet")))]),i(T,C)};G(O,T=>{e(c)?T(ie):(e(I),l(()=>e(I).length>0)?T(M,1):T(ve,-1))})}var te=o(O,2),ge=a(te),_e=a(ge),Ae=o(_e);{var U=T=>{var C=w$(),D=a(C);ra(D,{}),r(C),i(T,C)};G(Ae,T=>{e(x)&&T(U)})}r(ge),r(te),r(Oe),r(K),r(ce),g((T,C,D)=>{d(we,T),d(de,(e(I),l(()=>e(I).length))),be.disabled=e(x),d(Re,C),k(ge,1,`px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full flex items-center gap-2 whitespace-nowrap ${e(x)?"cursor-not-allowed":""}`),ge.disabled=e(x),d(_e,`${D??""} `)},[()=>(t(),l(()=>t().t("Webhooks"))),()=>(t(),l(()=>t().t("New Webhook"))),()=>(t(),l(()=>t().t("Save")))]),ke("click",be,j),ke("click",ue,()=>X(!1)),ke("submit",Oe,T=>{T.preventDefault(),w()}),i(se,ce)},$$slots:{default:!0},$$legacy:!0})};G(ee,Pe=>{R()&&Pe(ae)})}i(He,Se),cr(),n()}var I$=u("<option><!></option>"),S$=u('<select class="w-full text-sm bg-transparent placeholder:text-gray-300 dark:placeholder:text-gray-700 outline-hidden"></select>'),N$=u('<div class="flex flex-col w-full mt-2 mb-1"><div class=" mb-1 text-xs text-gray-500"> </div> <div class="flex-1"><!></div></div>'),P$=u('<div class="-mx-2 mb-1 mt-2.5 px-2"><!></div>'),C$=u("<div><!></div>"),T$=u('<div class="flex w-full mt-2 items-center justify-between"><div class="text-xs text-gray-500"> </div> <button class="text-xs bg-transparent placeholder:text-gray-300 dark:placeholder:text-gray-700 outline-hidden text-left" type="button"> </button></div>'),L$=u('<button class="px-3.5 py-1.5 text-sm font-normal dark:bg-black dark:hover:bg-black/90 dark:text-white bg-white text-black hover:bg-gray-100 transition rounded-full flex flex-row space-x-1 items-center" type="button"> </button>'),O$=u('<div class="ml-2 self-center"><!></div>'),M$=u('<div><div class=" flex justify-between dark:text-gray-300 px-4 pt-3 pb-1"><div class=" text-sm self-center"><!></div>
6 <button class="self-center rounded-lg p-1 text-gray-500 transition hover:bg-gray-50 hover:text-gray-700 dark:text-gray-400 dark:hover:bg-gray-800 dark:hover:text-gray-200"><!></button></div> <div class="flex flex-col md:flex-row w-full px-4 pb-4 md:space-x-4 dark:text-gray-200"><div class=" flex flex-col w-full sm:flex-row sm:justify-center sm:space-x-6"><form class="flex flex-col w-full"><!> <div class=" text-gray-300 dark:text-gray-700 text-xs"><!></div> <div class="flex flex-col w-full mt-2"><div class=" mb-1 text-xs text-gray-500"> <span class="text-xs text-gray-200 dark:text-gray-800 ml-0.5"><!></span></div> <div class="flex-1"><input class="w-full text-sm bg-transparent placeholder:text-gray-300 dark:placeholder:text-gray-700 outline-hidden" type="text" autocomplete="off" max="100"/></div></div> <!> <!> <!> <div class="flex justify-end pt-3 text-sm font-normal gap-1.5"><!> <button type="submit"><!> <!></button></div></form></div></div></div>'),R$=u("<!> <!> <!>",1);function Kf(He,_){vr(_,!1);const t=()=>ct(R,"$i18n",Ie),f=()=>ct(ka,"$user",Ie),n=()=>ct(Td,"$page",Ie),[Ie,X]=hr(),R=mr("i18n");let I=Xe(_,"show",12,!1),c=Xe(_,"onSubmit",8,()=>{}),x=Xe(_,"onUpdate",8,()=>{}),A=Xe(_,"channel",8,null),E=Xe(_,"edit",8,!1),V=h(["group","dm"]),B=h(""),j=h(""),w=h(null),Te=h([]),Se=[],Y=h([]),ee=h(!1);const ae=de=>{de==="group"?e(w)===null&&s(w,!0):s(w,null)},Pe=async()=>{if(s(ee,!0),e(j).length>128){rt.error(t().t("Channel name must be less than 128 characters")),s(ee,!1);return}await c()({type:e(B),name:e(j).replace(/\s/g,"-"),is_private:e(B)==="group"?e(w)??!0:null,access_grants:e(B)===""?e(Te):[],group_ids:Se,user_ids:e(Y)}),I(!1),s(ee,!1)},se=()=>{var de,be,Me,qe,Re,ue;((de=f())==null?void 0:de.role)==="admin"?s(V,["","group","dm"]):s(V,["group","dm"]),s(B,((be=A())==null?void 0:be.type)??e(V)[0]),A()&&(s(j,((Me=A())==null?void 0:Me.name)??""),e(B)==="group"?s(w,typeof((qe=A())==null?void 0:qe.is_private)=="boolean"?A().is_private:!0):s(w,null),s(Te,((Re=A())==null?void 0:Re.access_grants)??[]),s(Y,((ue=A())==null?void 0:ue.user_ids)??[]))};let m=h(!1),ce=h(!1);const De=async()=>{var Me;if(s(m,!1),!((Me=A())!=null&&Me.id)){I(!1);return}const de=A().id;await Ex(localStorage.token,de).catch(qe=>{rt.error(qe.message)})&&(rt.success(t().t("Channel deleted successfully")),x()(),n().url.pathname===`/channels/${de}`&&fa("/")),I(!1)},Le=()=>{s(B,""),s(j,""),s(Te,[]),s(Y,[]),s(ee,!1)};Kt(()=>e(j),()=>{e(j)&&s(j,e(j).replace(/\s/g,"-").toLocaleLowerCase())}),Kt(()=>e(B),()=>{ae(e(B))}),Kt(()=>it(I()),()=>{I()?se():Le()}),la(),gr();var Ne=R$(),Ce=Qe(Ne);Wa(Ce,{size:"md",get show(){return I()},set show(de){I(de)},children:(de,be)=>{var Me=M$(),qe=a(Me),Re=a(qe),ue=a(Re);{var xe=p=>{var $=Mr();g(S=>d($,S),[()=>(t(),l(()=>t().t("Edit Channel")))]),i(p,$)},K=p=>{var $=Mr();g(S=>d($,S),[()=>(t(),l(()=>t().t("Create Channel")))]),i(p,$)};G(ue,p=>{E()?p(xe):p(K,-1)})}r(Re);var Oe=o(Re,2),O=a(Oe);Po(O,{className:"size-4"}),r(Oe),r(qe);var ie=o(qe,2),M=a(ie),ve=a(M),te=a(ve);{var ge=p=>{var $=N$(),S=a($),L=a(S,!0);r(S);var fe=o(S,2),y=a(fe);{let b=v(()=>(e(B),t(),l(()=>e(B)==="dm"?t().t("A private conversation between you and selected users"):e(B)==="group"?t().t("A collaboration channel where people join as members"):t().t("A discussion channel where access is controlled by groups and permissions"))));Lt(y,{get content(){return e(b)},placement:"top-start",children:(N,z)=>{var Ue=S$();lr(Ue,7,()=>e(V),Ye=>Ye,(Ye,Ve,lt)=>{var st=I$(),Ke=a(st);{var Ze=nt=>{var et=Mr();g(gt=>d(et,gt),[()=>(t(),l(()=>t().t("Group Channel")))]),i(nt,et)},ot=nt=>{var et=Mr();g(gt=>d(et,gt),[()=>(t(),l(()=>t().t("Direct Message")))]),i(nt,et)},ut=nt=>{var et=Mr();g(gt=>d(et,gt),[()=>(t(),l(()=>t().t("Channel")))]),i(nt,et)};G(Ke,nt=>{e(Ve)==="group"?nt(Ze):e(Ve)==="dm"?nt(ot,1):e(Ve)===""&&nt(ut,2)})}r(st);var _t={};g(()=>{ts(st,e(lt)===0),_t!==(_t=e(Ve))&&(st.value=(st.__value=e(Ve))??"")}),i(Ye,st)}),r(Ue),al(Ue,()=>e(B),Ye=>s(B,Ye)),i(N,Ue)},$$slots:{default:!0}})}r(fe),r($),g(b=>d(L,b),[()=>(t(),l(()=>t().t("Channel Type")))]),i(p,$)};G(te,p=>{E()||p(ge)})}var _e=o(te,2),Ae=a(_e);{var U=p=>{var $=Mr();g(S=>d($,S),[()=>(t(),l(()=>t().t("Discussion channel where access is based on groups and permissions")))]),i(p,$)},T=p=>{var $=Mr();g(S=>d($,S),[()=>(t(),l(()=>t().t("Collaboration channel where people join as members")))]),i(p,$)},C=p=>{var $=Mr();g(S=>d($,S),[()=>(t(),l(()=>t().t("Private conversation between selected users")))]),i(p,$)};G(Ae,p=>{e(B)===""?p(U):e(B)==="group"?p(T,1):e(B)==="dm"&&p(C,2)})}r(_e);var D=o(_e,2),F=a(D),H=a(F),pe=o(H),ye=a(pe);{var he=p=>{var $=Mr();g(S=>d($,S),[()=>(t(),l(()=>t().t("Optional")))]),i(p,$)};G(ye,p=>{e(B)==="dm"&&p(he)})}r(pe),r(F);var q=o(F,2),P=a(q);vt(P),r(q),r(D);var Q=o(D,2);{var re=p=>{var $=P$(),S=a($);{var L=y=>
6{ju(y,{accessRoles:["read","write"],get accessGrants(){return e(Te)},set accessGrants(b){s(Te,b)},$$legacy:!0})},fe=y=>{{let b=v(()=>e(w)?"private":"public");p$(y,{get state(){return e(b)},onChange:N=>{N==="private"?s(w,!0):s(w,!1),e(w)}})}};G(S,y=>{e(B)===""?y(L):e(B)==="group"&&y(fe,1)})}r($),i(p,$)};G(Q,p=>{e(B)!=="dm"&&p(re)})}var le=o(Q,2);{var $e=p=>{var $=C$(),S=a($);Px(S,{includeGroups:!1,get userIds(){return e(Y)},set userIds(L){s(Y,L)},$$legacy:!0}),r($),i(p,$)},ze=Qr(()=>(e(B),l(()=>["dm"].includes(e(B)))));G(le,p=>{e(ze)&&p($e)})}var Fe=o(le,2);{var at=p=>{var $=T$(),S=a($),L=a(S,!0);r(S);var fe=o(S,2),y=a(fe,!0);r(fe),r($),g((b,N)=>{d(L,b),d(y,N)},[()=>(t(),l(()=>t().t("Webhooks"))),()=>(t(),l(()=>t().t("Manage")))]),ke("click",fe,()=>{s(ce,!0)}),i(p,$)};G(Fe,p=>{E()&&p(at)})}var tt=o(Fe,2),Je=a(tt);{var je=p=>{var $=L$(),S=a($,!0);r($),g(L=>d(S,L),[()=>(t(),l(()=>t().t("Delete")))]),ke("click",$,()=>{s(m,!0)}),i(p,$)};G(Je,p=>{E()&&p(je)})}var ne=o(Je,2),J=a(ne);{var W=p=>{var $=Mr();g(S=>d($,S),[()=>(t(),l(()=>t().t("Update")))]),i(p,$)},Z=p=>{var $=Mr();g(S=>d($,S),[()=>(t(),l(()=>t().t("Create")))]),i(p,$)};G(J,p=>{E()?p(W):p(Z,-1)})}var Ee=o(J,2);{var Ge=p=>{var $=O$(),S=a($);ra(S,{}),r($),i(p,$)};G(Ee,p=>{e(ee)&&p(Ge)})}r(ne),r(tt),r(ve),r(M),r(ie),r(Me),g((p,$)=>{d(H,`${p??""} `),Be(P,"placeholder",$),P.required=e(B)!=="dm",k(ne,1,`px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-950 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full flex flex-row space-x-1 items-center ${e(ee)?" cursor-not-allowed":""}`),ne.disabled=e(ee)},[()=>(t(),l(()=>t().t("Channel Name"))),()=>(t(),l(()=>`${t().t("new-channel")}`))]),ke("click",Oe,()=>{I(!1)}),dt(P,()=>e(j),p=>s(j,p)),ke("submit",ve,ca(()=>{Pe()})),i(de,Me)},$$slots:{default:!0},$$legacy:!0});var we=o(Ce,2);{let de=v(()=>(t(),l(()=>t().t("Are you sure you want to delete this channel?")))),be=v(()=>(t(),l(()=>t().t("Delete"))));Ca(we,{get message(){return e(de)},get confirmLabel(){return e(be)},get show(){return e(m)},set show(Me){s(m,Me)},$$events:{confirm:()=>{De()}},$$legacy:!0})}var oe=o(we,2);A$(oe,{get channel(){return A()},get show(){return e(ce)},set show(de){s(ce,de)},$$legacy:!0}),i(He,Ne),cr(),X()}var D$=u("<img/>"),U$=u('<span class="absolute inline-flex h-full w-full animate-ping rounded-full bg-green-400 opacity-75"></span>'),B$=u('<div class="absolute bottom-0 right-0"><span class="relative flex size-2"><!> <span></span></span></div>'),G$=u('<div class="flex ml-[0.0625rem] mr-0.5 relative"><!> <!></div>'),j$=u('<div class=" size-4 justify-center flex items-center ml-1"><!></div>'),H$=u('<span class="min-w-0 truncate"> </span>'),F$=u('<div class=" self-center shrink-0"><!></div>'),W$=u('<span class="min-w-0 flex gap-1.5"><!> <div class="min-w-0 truncate italic"> </div></span>'),z$=u('<span class="min-w-0 truncate"> </span> <!>',1),K$=u('<div class="inline-flex h-4 min-w-4 shrink-0 items-center justify-center rounded-md bg-sky-500/10 px-1 text-[0.625rem] font-semibold leading-4 text-sky-600 dark:bg-sky-400/10 dark:text-sky-300"> </div>'),jg=u('<div class="ml-0.5 mr-1 hover-reveal self-center flex shrink-0 items-center dark:text-gray-300"><button type="button" class="p-0.5 dark:hover:bg-gray-850 rounded-lg touch-auto"><!></button></div>'),Y$=u('<!> <div id="sidebar-channel-item"><a class="min-w-0 flex flex-1" draggable="false"><div class="flex min-w-0 flex-1 items-center gap-1"><div><!></div> <div class="text-left self-center min-w-0 flex-1 pr-1 flex items-center gap-1.5"><!> <!></div></div></a> <!></div>',1);function V$(He,_){vr(_,!1);const t=()=>ct(c,"$i18n",R),f=()=>ct(Td,"$page",R),n=()=>ct(Ds,"$channels",R),Ie=()=>ct(Gl,"$mobile",R),X=()=>ct(ka,"$user",R),[R,I]=hr(),c=mr("i18n");let x=Xe(_,"onUpdate",8,()=>{}),A=Xe(_,"className",8,""),E=Xe(_,"channel",8),V=h(!1),B=h();const j=ue=>Array.isArray(ue)&&ue.some(xe=>(xe==null?void 0:xe.principal_type)==="user"&&(xe==null?void 0:xe.principal_id)==="*"&&(xe==null?void 0:xe.permission)==="read"),w=ue=>(ue==null?void 0:ue.type)==="group"&&typeof(ue==null?void 0:ue.is_private)=="boolean"?!ue.is_private:j(ue==null?void 0:ue.access_grants),Te=ue=>new Intl.NumberFormat(void 0,{notation:"compact",compactDisplay:"short"}).format(ue);gr();var Se=Y$(),Y=Qe(Se);Kf(Y,{get channel(){return E()},edit:!0,get onUpdate(){return x()},onSubmit:async ue=>{const{name:xe,is_private:K,access_grants:Oe,group_ids:O,user_ids:ie}=ue??{};await Ax(localStorage.token,E().id,{name:xe,is_private:K,access_grants:Oe,group_ids:O,user_ids:ie}).catch(ve=>{rt.error(ve.message)})&&rt.success(t().t("Channel updated successfully")),x()()},get show(){return e(V)},set show(ue){s(V,ue)},$$legacy:!0});var ee=o(Y,2),ae=a(ee),Pe=a(ae),se=a(Pe),m=a(se);{var ce=ue=>{var xe=Wr(),K=Qe(xe);{var Oe=ie=>{const M=v(()=>(it(E()),X(),l(()=>E().users.filter(Ae=>{var U;return Ae.id!==((U=X())==null?void 0:U.id)}))));var ve=G$(),te=a(ve);lr(te,1,()=>(it(e(M)),l(()=>e(M).slice(0,2))),Ar,(Ae,U,T)=>
6{var C=D$();k(C,1,` size-5.5 rounded-full border-2 border-white dark:border-gray-900 ${T===1?"-ml-2.5":""}`),g(()=>{Be(C,"src",(it(ia),e(U),l(()=>`${ia}/users/${e(U).id}/profile/image`))),Be(C,"alt",(e(U),l(()=>e(U).name)))}),i(Ae,C)});var ge=o(te,2);{var _e=Ae=>{var U=B$(),T=a(U),C=a(T);{var D=H=>{var pe=U$();i(H,pe)};G(C,H=>{it(e(M)),l(()=>{var pe;return(pe=e(M)[0])==null?void 0:pe.is_active})&&H(D)})}var F=o(C,2);r(T),r(U),g(()=>k(F,1,`relative inline-flex size-2 rounded-full ${it(e(M)),l(()=>{var H;return(H=e(M)[0])!=null&&H.is_active?"bg-green-500":"bg-gray-300 dark:bg-gray-700"})??""} border-[1.5px] border-white dark:border-gray-900`)),i(Ae,U)};G(ge,Ae=>{it(e(M)),l(()=>e(M).length===1)&&Ae(_e)})}r(ve),i(ie,ve)},O=ie=>{Hf(ie,{className:"size-4 ml-1 mr-0.5",strokeWidth:"1.5"})};G(K,ie=>{it(E()),l(()=>{var M;return(M=E())==null?void 0:M.users})?ie(Oe):ie(O,-1)})}i(ue,xe)},De=ue=>{var xe=j$(),K=a(xe);{var Oe=M=>{If(M,{className:"size-3",strokeWidth:"1.8"})},O=Qr(()=>(it(E()),l(()=>w(E())))),ie=M=>{Hu(M,{className:"size-3.5",strokeWidth:"1.7"})};G(K,M=>{e(O)?M(Oe):M(ie,-1)})}r(xe),i(ue,xe)};G(m,ue=>{it(E()),l(()=>{var xe;return((xe=E())==null?void 0:xe.type)==="dm"})?ue(ce):ue(De,-1)})}r(se);var Le=o(se,2),Ne=a(Le);{var Ce=ue=>{var xe=H$(),K=a(xe,!0);r(xe),g(()=>d(K,(it(E()),l(()=>E().name)))),i(ue,xe)},we=ue=>{var xe=z$(),K=Qe(xe),Oe=a(K,!0);r(K);var O=o(K,2);{var ie=M=>{const ve=v(()=>(it(E()),X(),l(()=>E().users.find(Ae=>{var U;return Ae.id!==((U=X())==null?void 0:U.id)}))));var te=Wr(),ge=Qe(te);{var _e=Ae=>{var U=W$(),T=a(U);{var C=H=>{var pe=F$(),ye=a(pe);{let he=v(()=>(it(e(ve)),l(()=>{var q;return(q=e(ve))==null?void 0:q.status_emoji})));Rd(ye,{className:"size-3.5",get shortCode(){return e(he)}})}r(pe),i(H,pe)};G(T,H=>{it(e(ve)),l(()=>{var pe;return(pe=e(ve))==null?void 0:pe.status_emoji})&&H(C)})}var D=o(T,2),F=a(D,!0);r(D),r(U),g(()=>d(F,(it(e(ve)),l(()=>{var H;return(H=e(ve))==null?void 0:H.status_message})))),i(Ae,U)};G(ge,Ae=>{it(e(ve)),l(()=>{var U,T;return((U=e(ve))==null?void 0:U.status_emoji)||((T=e(ve))==null?void 0:T.status_message)})&&Ae(_e)})}i(M,te)};G(O,M=>{it(E()),l(()=>{var ve,te;return((te=(ve=E())==null?void 0:ve.users)==null?void 0:te.length)===2})&&M(ie)})}g(M=>d(Oe,M),[()=>(it(E()),X(),l(()=>{var M,ve;return(ve=(M=E())==null?void 0:M.users)==null?void 0:ve.filter(te=>{var ge;return te.id!==((ge=X())==null?void 0:ge.id)}).map(te=>te.name).join(", ")}))]),i(ue,xe)};G(Ne,ue=>{it(E()),l(()=>{var xe;return(xe=E())==null?void 0:xe.name})?ue(Ce):ue(we,-1)})}var oe=o(Ne,2);{var de=ue=>{var xe=K$(),K=a(xe,!0);r(xe),g((Oe,O)=>{Be(xe,"title",Oe),d(K,O)},[()=>(t(),l(()=>t().t("Unread"))),()=>(it(E()),l(()=>Te(E().unread_count)))]),i(ue,xe)};G(oe,ue=>{it(E()),l(()=>{var xe;return((xe=E())==null?void 0:xe.unread_count)>0})&&ue(de)})}r(Le),r(Pe),r(ae);var be=o(ae,2);{var Me=ue=>{var xe=jg(),K=a(xe),Oe=a(K);Po(Oe,{className:"size-3.5"}),r(K),r(xe),ke("click",K,async O=>{O.stopImmediatePropagation(),O.stopPropagation(),Ds.update(ie=>ie.filter(M=>M.id!==E().id)),await Ix(localStorage.token,E().id,!1).catch(ie=>{rt.error(`${ie}`)})}),i(ue,xe)},qe=Qr(()=>(it(E()),l(()=>{var ue;return["dm"].includes((ue=E())==null?void 0:ue.type)}))),Re=ue=>{var xe=jg(),K=a(xe),Oe=a(K);jf(Oe,{className:"size-3.5",strokeWidth:"1.5"}),r(K),r(xe),ke("click",K,O=>{O.stopImmediatePropagation(),O.stopPropagation(),s(V,!0)}),i(ue,xe)};G(be,ue=>{e(qe)?ue(Me):(X(),it(E()),l(()=>{var xe,K;return((xe=X())==null?void 0:xe.role)==="admin"||E().user_id===((K=X())==null?void 0:K.id)})&&ue(Re,1))})}r(ee),Oa(ee,ue=>s(B,ue),()=>e(B)),g(()=>{k(ee,1,` w-full ${A()??""} rounded-xl flex relative group hover:bg-gray-100 dark:hover:bg-gray-900 ${f(),it(E()),l(()=>f().url.pathname===`/channels/${E().id}`?"bg-gray-100 dark:bg-gray-900 selected":"")??""} ${it(E()),l(()=>{var ue;return((ue=E())==null?void 0:ue.type)==="dm"?"px-1 py-[0.1875rem]":"p-1"})??""} ${it(E()),l(()=>{var ue;return((ue=E())==null?void 0:ue.unread_count)>0?"font-normal dark:text-white text-black":" dark:text-gray-400 text-gray-600"})??""} cursor-pointer select-none`),Be(ae,"href",`/channels/${it(E()),l(()=>E().id)??""}`)}),ke("click",ae,()=>{E(),n()&&Ds.set(n().map(ue=>(ue.id===E().id&&(ue.unread_count=0),ue))),Ie()&&$a.set(!1)}),i(He,Se),cr(),I()}var q$=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none"><path d="M17 17L21 21" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path><path d="M3 11C3 15.4183 6.58172 19 11 19C13.213 19 15.2161 18.1015 16.6644 16.6493C18.1077 15.2022 19 13.2053 19 11C19 6.58172 15.4183 3 11 3C6.58172 3 3 6.58172 3 11Z" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function Nu(He,_){let t=Xe(_,"className",8,"size-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=q$();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}
6var X$=u('<div class="self-center pl-1.5 translate-y-[0.5px] rounded-l-xl bg-transparent"><button class="p-0.5 rounded-full hover:bg-gray-100 dark:hover:bg-gray-900 transition"><!></button></div>'),J$=u('<button><div class="dark:text-gray-300 text-gray-700 font-normal line-clamp-1 shrink-0"> </div> <div class=" text-gray-500 line-clamp-1"> </div></button>'),Z$=u('<div class="px-1 font-normal dark:text-gray-300 text-gray-700 mb-1 capitalize"> </div> <div class="max-h-60 overflow-auto"></div>',1),Q$=u('<button><div class="dark:text-gray-300 text-gray-700 font-normal"> </div> <div class=" text-gray-500 line-clamp-1"> </div></button>'),e5=u('<div class="px-1 font-normal dark:text-gray-300 text-gray-700 mb-1"> </div> <div class=" max-h-60 overflow-auto"></div>',1),t5=u('<div class="absolute top-0 mt-8 left-0 right-1 border border-gray-100 dark:border-gray-900 bg-gray-50 dark:bg-gray-950 rounded-2xl z-10 shadow-lg" id="search-options-container"><div class="px-3 py-2.5 text-xs group"><!></div></div>'),r5=u('<div class="px-1 mb-1 flex justify-center space-x-2 relative z-10" id="search-container"><div class="flex w-full rounded-xl" id="chat-search"><div class="self-center py-2 rounded-l-xl bg-transparent dark:text-gray-300"><!></div> <input id="search-input" class="w-full rounded-r-xl py-1.5 pl-2.5 text-sm bg-transparent dark:text-gray-300 outline-hidden" autocomplete="off" maxlength="500"/> <!></div> <!></div>');function a5(He,_){vr(_,!1);const t=()=>ct(I,"$i18n",Ie),f=()=>ct(Gs,"$tags",Ie),n=()=>ct(kd,"$folders",Ie),[Ie,X]=hr(),R=ja(),I=mr("i18n");let c=Xe(_,"placeholder",8,""),x=Xe(_,"value",12,""),A=Xe(_,"showClearButton",8,!1),E=Xe(_,"onFocus",8,()=>{}),V=Xe(_,"onKeydown",8,Me=>{}),B=h(0),j=h(null),w=h(""),Te=[{name:"tag:",description:t().t("search for tags")},{name:"folder:",description:t().t("search for folders")},{name:"pinned:",description:t().t("search for pinned chats")},{name:"shared:",description:t().t("search for shared chats")},{name:"archived:",description:t().t("search for archived chats")}],Se=h(!1),Y=h(!1),ee=h(Te),ae=h([]);const Pe=async()=>{e(w),await na(),e(w).startsWith("tag:")?s(ae,[...f(),{id:"none",name:t().t("Untagged")}].filter(Me=>{const qe=e(w).slice(4);if(qe){const Re=qe.replaceAll(" ","_").toLowerCase();return Me.id!==Re?Me.id.startsWith(Re):!1}else return!0}).map(Me=>({id:Me.id,name:Me.name,type:"tag"}))):e(w).startsWith("folder:")?s(ae,[...n()].filter(Me=>{const qe=e(w).slice(7);if(qe){const Re=Me.name.replaceAll(" ","_").toLowerCase(),ue=qe.replaceAll(" ","_").toLowerCase();return Re!==ue?Re.startsWith(ue):!1}else return!0}).map(Me=>({id:Me.name.replaceAll(" ","_").toLowerCase(),name:Me.name,type:"folder"}))):e(w).startsWith("pinned:")?s(ae,[{id:"true",name:"true",type:"pinned"},{id:"false",name:"false",type:"pinned"}].filter(Me=>{const qe=e(w).slice(7);return qe?Me.id.startsWith(qe)&&Me.id!==qe:!0})):e(w).startsWith("shared:")?s(ae,[{id:"true",name:"true",type:"shared"},{id:"false",name:"false",type:"shared"}].filter(Me=>{const qe=e(w).slice(7);return qe?Me.id.startsWith(qe)&&Me.id!==qe:!0})):e(w).startsWith("archived:")?s(ae,[{id:"true",name:"true",type:"archived"},{id:"false",name:"false",type:"archived"}].filter(Me=>{const qe=e(w).slice(9);return qe?Me.id.startsWith(qe)&&Me.id!==qe:!0})):s(ae,[])},se=async()=>{await Gs.set(await Od(localStorage.token))},m=()=>{x(""),R("input")};Kt(()=>it(x()),()=>{s(w,x()?x().split(" ").at(-1):x())}),Kt(()=>e(w),()=>{s(ee,Te.filter(Me=>Me.name.startsWith(e(w))))}),Kt(()=>e(w),()=>{e(w)&&e(w)!==null&&Pe()}),la(),gr();var ce=r5(),De=a(ce),Le=a(De),Ne=a(Le);Nu(Ne,{}),r(Le);var Ce=o(Le,2);vt(Ce);var we=o(Ce,2);{var oe=Me=>{var qe=X$(),Re=a(qe),ue=a(Re);Po(ue,{className:"size-3",strokeWidth:"1.5"}),r(Re),r(qe),ke("click",Re,m),i(Me,qe)};G(we,Me=>{A()&&x()&&Me(oe)})}r(De);var de=o(De,2);{var be=Me=>{var qe=t5(),Re=a(qe),ue=a(Re);{var xe=Oe=>{var O=Z$(),ie=Qe(O),M=a(ie,!0);r(ie);var ve=o(ie,2);lr(ve,5,()=>e(ae),Ar,(te,ge,_e)=>{var Ae=J$();Be(Ae,"id",`search-item-${_e}`);var U=a(Ae),T=a(U,!0);r(U);var C=o(U,2),D=a(C,!0);r(C),r(Ae),g(()=>{k(Ae,1,` px-1.5 py-0.5 flex gap-1 hover:bg-gray-100 dark:hover:bg-gray-900 w-full rounded ${e(B)===_e?"bg-gray-100 dark:bg-gray-900":""}
6`),Be(Ae,"data-selected",e(B)===_e),d(T,(e(ge),l(()=>e(ge).name))),d(D,(e(ge),l(()=>e(ge).id)))}),ke("click",Ae,xl(async()=>{const F=x().split(" ");F.pop(),F.push(`${e(ge).type}:${e(ge).id} `),x(F.join(" ")),s(ae,[]),R("input")})),i(te,Ae)}),r(ve),g(()=>d(M,e(j))),i(Oe,O)},K=Oe=>{var O=e5(),ie=Qe(O),M=a(ie,!0);r(ie);var ve=o(ie,2);lr(ve,5,()=>e(ee),Ar,(te,ge,_e)=>{var Ae=Q$();Be(Ae,"id",`search-option-${_e}`);var U=a(Ae),T=a(U,!0);r(U);var C=o(U,2),D=a(C,!0);r(C),r(Ae),g(()=>{k(Ae,1,` px-1.5 py-0.5 flex gap-1 hover:bg-gray-100 dark:hover:bg-gray-900 w-full rounded ${e(B)===_e?"bg-gray-100 dark:bg-gray-900":""}`),d(T,(e(ge),l(()=>e(ge).name))),d(D,(e(ge),l(()=>e(ge).description)))}),ke("click",Ae,xl(async()=>{const F=x().split(" ");F.pop(),F.push(`${e(ge).name}`),s(j,e(ge).name.replace(":","")),x(F.join(" ")),R("input")})),i(te,Ae)}),r(ve),g(te=>d(M,te),[()=>(t(),l(()=>t().t("Search options")))]),i(Oe,O)};G(ue,Oe=>{e(ae),l(()=>e(ae).length>0)?Oe(xe):(e(ee),l(()=>e(ee).length>0)&&Oe(K,1))})}r(Re),r(qe),of(1,qe,()=>sf,()=>({duration:50})),ke("mouseenter",qe,()=>{s(Y,!0),s(B,null)}),ke("mouseleave",qe,()=>{s(Y,!1),s(B,0)}),i(Me,qe)};G(de,Me=>{e(Se),e(ee),e(ae),l(()=>e(Se)&&(e(ee).length>0||e(ae).length>0))&&Me(be)})}r(ce),g(Me=>Be(Ce,"placeholder",Me),[()=>(it(c()),t(),l(()=>c()?c():t().t("Search")))]),dt(Ce,x),ke("input",Ce,()=>{R("input")}),ke("click",Ce,()=>{e(Se)||(E()(),s(Y,!1),s(Se,!0),se())}),ke("blur",Ce,()=>{e(Y)||s(Se,!1)}),ke("keydown",Ce,Me=>{if(Me.isComposing||Me.keyCode===229)return;if(Me.key==="Enter"){if(e(ae).length>0){document.getElementById(`search-item-${e(B)}`).click();return}if(e(ee).length>0){document.getElementById(`search-option-${e(B)}`).click();return}}Me.key==="ArrowUp"?(Me.preventDefault(),s(B,Math.max(0,e(B)-1))):Me.key==="ArrowDown"?(Me.preventDefault(),e(ae).length>0?e(B)===e(ae).length-1?s(Se,!1):s(B,Math.min(e(B)+1,e(ae).length-1)):e(B)===e(ee).length-1?s(Se,!1):s(B,Math.min(e(B)+1,e(ee).length-1))):(e(Se)||(E()(),s(Y,!1),s(Se,!0),se()),s(B,0));const qe=document.querySelector('[data-selected="true"]');qe==null||qe.scrollIntoView({block:"center",inline:"nearest",behavior:"instant"}),document.getElementById("search-options-container")||V()(Me)}),i(He,ce),cr(),X()}var l5=u('<div class="text-sm text-gray-500 flex-1 line-clamp-3"> <span class="font-normal"> </span>.</div>'),o5=u('<button draggable="false"><div class="pr-2"><!></div> <div class=" flex-1 text-left"><div class="text-ellipsis line-clamp-1 w-full"> </div></div></button>'),s5=u('<div class="text-xs text-gray-500 dark:text-gray-400 text-center px-5 py-4"> </div>'),n5=u("<div> </div>
6"),i5=u('<button class="self-center dark:hover:text-white transition disabled:cursor-not-allowed"><!></button>'),d5=u('<div class="flex-1 min-w-0"><input class="bg-transparent w-full outline-none"/></div> <div class="flex items-center shrink-0 pl-1"><!></div>',1),v5=u('<mark class="rounded bg-yellow-200/70 px-0.5 text-inherit dark:bg-yellow-500/30"> </mark>'),c5=u('<div class="text-xs text-gray-500 dark:text-gray-400 line-clamp-2 mt-0.5"></div>'),u5=u('<a class="flex-1 min-w-0" draggable="false"><div class="text-ellipsis line-clamp-1 w-full"> </div> <!></a>'),Hg=u('<button class="self-center dark:hover:text-white transition" type="button"><!></button>'),g5=u('<div class="flex items-center space-x-1.5"><!> <!></div>'),_5=u('<button aria-label="Chat Menu" class="self-center dark:hover:text-white transition"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="w-4 h-4"><path d="M2 8a1.5 1.5 0 1 1 3 0 1.5 1.5 0 0 1-3 0ZM6.5 8a1.5 1.5 0 1 1 3 0 1.5 1.5 0 0 1-3 0ZM12.5 6.5a1.5 1.5 0 1 0 0 3 1.5 1.5 0 0 0 0-3Z"></path></svg></button>'),f5=u('<div class="flex items-center"><!></div>'),p5=u('<!> <div><!> <div class="absolute right-3 top-1/2 -translate-y-1/2 flex items-center gap-3 pl-6 shrink-0"><div class="text-gray-500 dark:text-gray-400 text-xs"> </div> <!></div></div>',1),m5=u('<div class="w-full flex justify-center py-4 text-xs animate-pulse items-center gap-2"><!> <div class=" "> </div></div>'),h5=u('<div aria-hidden="true" class="h-px my-3"></div> <!> <!> <!>',1),x5=u('<div class="w-full h-full flex justify-center items-center"><!></div>'),b5=u('<div class="w-full h-full flex justify-center items-center text-gray-500 dark:text-gray-400 text-sm"> </div>'),y5=u('<div class="w-full h-full flex flex-col"><!></div>'),$5=u('<div class="py-2.5 dark:text-gray-300 text-gray-700"><div class="px-3.5 pb-1"><!></div> <div class="flex px-3.5 pb-0.5"><div class="flex flex-col overflow-y-auto h-96 md:h-[40rem] max-h-full scrollbar-hidden w-full flex-1 pr-2"><div class="w-full text-xs text-gray-500 dark:text-gray-500 font-normal pb-2 px-2"> </div> <!> <!></div> <div class="hidden md:flex md:flex-1 w-full overflow-y-auto h-96 md:h-[40rem] scrollbar-hidden @container"><!></div></div></div>'),w5=u("<!> <!> <!>",1);function k5(He,_){vr(_,!1);const t=()=>ct(I,"$i18n",X),f=()=>ct(cl,"$currentChatId",X),n=()=>ct(_a,"$config",X),Ie=()=>ct(ka,"$user",X),[X,R]=hr(),I=mr("i18n");qa.extend(Fu),qa.extend(gf);let c=Xe(_,"show",12,!1),x=Xe(_,"onClose",8,()=>{}),A=h(!1),E=h(!1),V=h(""),B=h(""),j=h(null),w=h(""),Te=h(!1);const Se=he=>{he.key==="Shift"&&s(Te,!0)},Y=he=>{he.key==="Shift"&&s(Te,!1)};let ee=h(!1);const ae=async()=>{await El(localStorage.token,{refreshPinned:!0})},Pe=async he=>{var Q;const q=(Q=e(Me))==null?void 0:Q.find(re=>re.id===he);await mf(localStorage.token,he,t().t("Clone of {{TITLE}}",{TITLE:(q==null?void 0:q.title)??"Chat"})).catch(re=>(rt.error(`${re}`),null))&&(await ae(),await T())},se=async he=>{await pf(localStorage.token,he).catch(P=>(rt.error(`${P}`),null))&&await ae()},m=async he=>{var q;try{await Lu(localStorage.token,he),s(Me,((q=e(Me))==null?void 0:q.filter(P=>P.id!==he))??null),f()===he&&(await fa("/"),cl.set("")),await ae(),rt.success(t().t("Chat archived."))}catch{rt.error(t().t("Failed to archive chat."))}},ce=async he=>{var P;await Tu(localStorage.token,he).catch(Q=>(rt.error(`${Q}`),null))&&(s(Me,((P=e(Me))==null?void 0:P.filter(Q=>Q.id!==he))??null),Gs.set(await Od(localStorage.token)),f()===he&&(await fa("/"),cl.set("")),await ae())},De=async(he,q)=>{var P;he&&q&&await js(localStorage.token,he,q).catch(re=>(rt.error(`${re}`),null))&&(s(Me,((P=e(Me))==null?void 0:P.filter(re=>re.id!==he))??null),await ae(),rt.success(t().t("Chat moved successfully")))},Le=async he=>{var P,Q;s(j,he),s(w,((Q=(P=e(Me))==null?void 0:P.find(re=>re.id===he))==null?void 0:Q.title)??""),await na();const q=document.getElementById(`search-chat-title-input-${he}`);q&&(q.focus(),q.select())},Ne=async()=>{if(!e(j))return;const he=e(w).trim();if(he===""){rt.error(t().t("Title cannot be an empty string."));return}await ff(localStorage.token,e(j),{title:he}),e(Me)&&s(Me,e(Me).map(q=>q.id===e(j)?{...q,title:he}:q)),s(j,null),s(w,""),await ae()},Ce=()=>{s(j,null),s(w,"")},we=async()=>{var $e;if(!e(j)||e(ee))return;s(ee,!0);const he=await Cl(localStorage.token,e(j)).catch(()=>null);
6if(!he){rt.error(t().t("Failed to load chat")),s(ee,!1);return}const q=he.chat,P=q==null?void 0:q.history;let Q=[];P!=null&&P.messages&&(P!=null&&P.currentId)?Q=Cu(P,P.currentId).map(ze=>({role:ze.role,content:Hs(ze.output)||ze.content||""})):Q=((q==null?void 0:q.messages)??[]).map(ze=>({role:ze.role,content:Hs(ze.output)||ze.content||""}));let re="";if(P!=null&&P.messages&&(P!=null&&P.currentId)){let ze=P.currentId;for(;ze;){const Fe=P.messages[ze];if(!Fe)break;if(Fe.role==="assistant"&&Fe.model){re=Fe.model;break}ze=Fe.parentId}}re||(re=(($e=q==null?void 0:q.models)==null?void 0:$e.at(0))??""),s(w,"");const le=await nf(localStorage.token,re,Q).catch(ze=>(rt.error(`${ze}`),null));le&&s(w,le),s(ee,!1),le&&await Ne()};let oe=h([{label:t().t("Start a new conversation"),onClick:async()=>{await fa(`/${e(de)?`?q=${e(de)}`:""}`),c(!1),x()()},icon:Id}]),de=h(""),be=1,Me=h(null),qe=h(!1),Re=h(!1),ue,xe=h(null),K=h(null),Oe=h([""]),O=h(null),ie=h(null),M=h(null);const ve="chat-preview",te=["tag:","folder:","pinned:","archived:","shared:"],ge=he=>he.trim().split(/\s+/).filter(q=>!te.some(P=>q.toLowerCase().startsWith(P))).join(" ").trim(),_e=(he,q)=>{const P=ge(q).toLowerCase(),Q=P?he.toLowerCase().indexOf(P):-1;if(Q===-1)return[{text:he,highlight:!1}];const re=Math.max(Q-60,0),le=Math.min(Q+P.length+80,he.length),$e=`${re>0?"...":""}${he.slice(re,le)}${le<he.length?"...":""}`,ze=$e.toLowerCase().indexOf(P);return[{text:$e.slice(0,ze),highlight:!1},{text:$e.slice(ze,ze+P.length),highlight:!0},{text:$e.slice(ze+P.length),highlight:!1}].filter(Fe=>Fe.text)},Ae=async()=>{await na(),requestAnimationFrame(()=>{e(M)&&(We(M,e(M).scrollTop=e(M).scrollHeight),requestAnimationFrame(()=>{e(M)&&We(M,e(M).scrollTop=e(M).scrollHeight)}))}),setTimeout(()=>{e(M)&&We(M,e(M).scrollTop=e(M).scrollHeight)},80)},U=async he=>{var re,le,$e,ze,Fe;if(!e(Me)||e(Me).length===0||he===null){s(K,null),s(ie,null),s(O,null),s(Oe,[""]);return}const q=he-e(oe).length;if(q<0||q>=e(Me).length){s(K,null),s(ie,null),s(O,null),s(Oe,[""]);return}const P=e(Me)[q].id,Q=await Cl(localStorage.token,P).catch(async at=>null);if(Q)s(K,Q),(re=Q==null?void 0:Q.chat)!=null&&re.history?(s(Oe,(((le=Q==null?void 0:Q.chat)==null?void 0:le.models)??void 0)!==void 0?($e=Q==null?void 0:Q.chat)==null?void 0:$e.models:[((ze=Q==null?void 0:Q.chat)==null?void 0:ze.models)??""]),s(O,(Fe=Q==null?void 0:Q.chat)==null?void 0:Fe.history),s(ie,[]),await Ae()):s(ie,[]);else{rt.error(t().t("Failed to load chat preview")),s(K,null),s(ie,null),s(O,null),s(Oe,[""]);return}},T=async()=>{c()&&(ue&&clearTimeout(ue),be=1,s(Me,null),e(de)===""?s(Me,await fg(localStorage.token,be)):ue=setTimeout(async()=>{s(Me,await pg(localStorage.token,e(de),be)),(e(Me)??[]).length===0?s(Re,!0):s(Re,!1)},500),s(K,null),s(ie,null),s(O,null),s(Oe,[""]),(e(Me)??[]).length===0?s(Re,!0):s(Re,!1))},C=async()=>{s(qe,!0),be+=1;let he=[];if(e(de)?he=await pg(localStorage.token,e(de),be):he=await fg(localStorage.token,be),s(Re,he.length===0),he.length>0){const q=new Set(e(Me).map(Q=>Q.id)),P=he.filter(Q=>!q.has(Q.id));s(Me,[...e(Me),...P])}s(qe,!1)},D=he=>{if(he.isComposing||he.keyCode===229||document.getElementById("search-options-container")||!c()||e(j))return;if(he.code==="Escape")c(!1),x()();else if(he.code==="Enter"){const Q=document.querySelector('[data-arrow-selected="true"]');Q&&(Q==null||Q.click(),c(!1));return}else if(he.code==="ArrowDown"){const Q=document.getElementById("search-input");if(Q&&document.activeElement===Q){Q.blur(),s(xe,0);return}s(xe,Math.min(e(xe)+1,(e(Me)??[]).length-1+e(oe).length))}else if(he.code==="ArrowUp"){if(e(xe)===0){const Q=document.getElementById("search-input");if(Q&&document.activeElement!==Q){Q.focus(),s(xe,0);return}}s(xe,Math.max(e(xe)-1,0))}const P=document.querySelector('[data-arrow-selected="true"]');P==null||P.scrollIntoView({block:"center",inline:"nearest",behavior:"instant"})};ea(()=>{var he,q,P,Q,re,le;s(oe,[...e(oe),...(((q=(he=n())==null?void 0:he.features)==null?void 0:q.enable_notes)??!1)&&(((P=Ie())==null?void 0:P.role)==="admin"||(((le=(re=(Q=Ie())==null?void 0:Q.permissions)==null?void 0:re.features)==null?void 0:le.notes)??!0))?[{label:t().t("Create a new note"),onClick:async()=>{await fa(`/notes?content=${e(de)}`),c(!1),x()()},icon:Fs}]:[]]),document.addEventListener("keydown",D),document.addEventListener("keydown",Se),document.addEventListener("keyup",Y)}),Al(()=>{ue&&clearTimeout(ue),document.removeEventListener("keydown",D),document.removeEventListener("keydown",Se),document.removeEventListener("keyup",Y)}),Kt(()=>(e(qe),e(Me),e(xe)),()=>{!e(qe)&&e(Me)&&U(e(xe))}),Kt(()=>it(c()),()=>{c()?T():(s(j,null),s(w,""),s(ee,!1))}),la(),gr();var F=w5(),H=Qe(F);Ef(H,{get chatId(){return e(V)},get show(){return e(A)},set show(he){s(A,he)},$$legacy:!0});var pe=o(H,2);{let he=v(()=>(t(),l(()=>t().t("Delete chat?"))));Ca(pe,{get title(){return e(he)},get show(){return e(E)},set show(q){s(E,q)},$$events:{confirm:()=>{ce(e(V))}},children:(q,P)=>{var Q=l5(),re=a(Q),le=o(re),$e=a(le,!0);r(le),ll(),r(Q),g(ze=>{d(re,`${ze??""} `),d($e,e(B))},[()=>(t(),l(()=>t().t("This will delete")))]),i(q,Q)},$$slots:{default:!0},$$legacy:!0})}var ye=o(pe,2);Wa(ye,{size:"xl",get show(){return c()},set show(he){c(he)},children:(he,q)=>{var P=$5(),Q=a(P),re=a(Q);{let Ee=v(()=>(t(),l(()=>t().t("Search"))));a5(re,{get placeholder(){return e(Ee)},showClearButton:!0,onFocus:()=>{s(xe,null),s(ie,null)},onKeydown:Ge=>{if(Ge.code==="Enter"&&(e(Me)??[]).length>0){const $=document.querySelector('[data-arrow-selected="true"]');$&&($==null||$.click()),c(!1);return}else Ge.code==="ArrowDown"?s(xe,Math.min(e(xe)+1,(e(Me)??[]).length-1+e(oe).length)):Ge.code==="ArrowUp"?s(xe,Math.max(e(xe)-1,0)):s(xe,0);const p=document.querySelector('[data-arrow-selected="true"]');p==null||p.scrollIntoView({block:"center",inline:"nearest",behavior:"instant"})},get value(){return e(de)},set value(Ge){s(de,Ge)},$$events:{input:T},$$legacy:!0})}r(Q);var le=o(Q,2),$e=a(le),ze=a($e),Fe=a(ze,!0);r(ze);var at=o(ze,2);lr(at,3,()=>e(oe),Ee=>Ee.label,(Ee,Ge,p)=>{var $=o5(),S=a($),L=a(S);Tx(L,()=>e(Ge).icon,(N,z)=>{z(N,{})}),r(S);var fe=o(S,2),y=a(fe),b=a(y,!0);r(y),r(fe),r($),g(N=>{k($,1,`w-full flex items-center rounded-lg text-sm py-1.5 px-2.5 hover:bg-gray-50/70 dark:hover:bg-gray-850/50 ${e(xe)===e(p)?"bg-gray-50/70 dark:bg-gray-850/50":""}
6`),Be($,"data-arrow-selected",e(xe)===e(p)?"true":void 0),d(b,N)},[()=>(t(),e(Ge),l(()=>t().t(e(Ge).label)))]),ke("mouseenter",$,()=>{s(xe,e(p))}),ke("click",$,async()=>{await e(Ge).onClick()}),i(Ee,$)});var tt=o(at,2);{var Je=Ee=>{var Ge=h5(),p=o(Qe(Ge),2);{var $=y=>{var b=s5(),N=a(b,!0);r(b),g(z=>d(N,z),[()=>(t(),l(()=>t().t("No results found")))]),i(y,b)};G(p,y=>{e(Me),l(()=>e(Me).length===0)&&y($)})}var S=o(p,2);lr(S,3,()=>e(Me),y=>y.id,(y,b,N)=>{var z=p5(),Ue=Qe(z);{var Ye=et=>{var gt=n5(),It=a(gt,!0);r(gt),g(Mt=>{k(gt,1,`w-full text-xs text-gray-500 dark:text-gray-500 font-normal ${e(N)===0?"":"pt-4"} pb-1.5 px-2`),d(It,Mt)},[()=>(t(),e(b),l(()=>t().t(e(b).time_range)))]),i(et,gt)};G(Ue,et=>{it(e(N)),e(b),e(Me),l(()=>e(N)===0||e(N)>0&&e(b).time_range!==e(Me)[e(N)-1].time_range)&&et(Ye)})}var Ve=o(Ue,2),lt=a(Ve);{var st=et=>{var gt=d5(),It=Qe(gt),Mt=a(It);vt(Mt),r(It);var jt=o(It,2),Tt=a(jt);{let yt=v(()=>(t(),l(()=>t().t("Generate"))));Lt(Tt,{get content(){return e(yt)},children:($t,rr)=>{var Rt=i5(),Wt=a(Rt);{var or=Et=>{ra(Et,{className:"size-4"})},$r=Et=>{qm(Et,{strokeWidth:"2"})};G(Wt,Et=>{e(ee)?Et(or):Et($r,-1)})}r(Rt),g(()=>Rt.disabled=e(ee)),ke("mousedown",Rt,ca(()=>{})),ke("click",Rt,ca(xl(()=>{we()}))),i($t,Rt)},$$slots:{default:!0}})}r(jt),g(yt=>{Be(Mt,"id",`search-chat-title-input-${e(b),l(()=>e(b).id)??""}`),Be(Mt,"placeholder",yt),Mt.disabled=e(ee)},[()=>(e(ee),t(),l(()=>e(ee)?t().t("Generating..."):""))]),dt(Mt,()=>e(w),yt=>s(w,yt)),ke("keydown",Mt,yt=>{yt.stopPropagation(),yt.key==="Enter"?(yt.preventDefault(),Ne()):yt.key==="Escape"&&(yt.preventDefault(),Ce())}),ke("blur",Mt,()=>{e(ee)||Ne()}),i(et,gt)},Ke=et=>{var gt=u5(),It=a(gt),Mt=a(It,!0);r(It);var jt=o(It,2);{var Tt=yt=>{var $t=c5();lr($t,5,()=>(e(b),e(de),l(()=>_e(e(b).snippet,e(de)))),Ar,(rr,Rt)=>{var Wt=Wr(),or=Qe(Wt);{var $r=St=>{var Dt=v5(),ar=a(Dt,!0);r(Dt),g(()=>d(ar,(e(Rt),l(()=>e(Rt).text)))),i(St,Dt)},Et=St=>{var Dt=Mr();g(()=>d(Dt,(e(Rt),l(()=>e(Rt).text)))),i(St,Dt)};G(or,St=>{e(Rt),l(()=>e(Rt).highlight)?St($r):St(Et,-1)})}i(rr,Wt)}),r($t),i(yt,$t)};G(jt,yt=>{e(b),l(()=>{var $t;return($t=e(b))==null?void 0:$t.snippet})&&yt(Tt)})}r(gt),g(()=>{Be(gt,"href",`/c/${e(b),l(()=>e(b).id)??""}`),d(Mt,(e(b),l(()=>{var yt;return(yt=e(b))==null?void 0:yt.title})))}),ke("click",gt,async()=>{await fa(`/c/${e(b).id}`),c(!1),x()()}),i(et,gt)};G(lt,et=>{e(j),e(b),l(()=>e(j)===e(b).id)?et(st):et(Ke,-1)})}var Ze=o(lt,2),ot=a(Ze),ut=a(ot,!0);r(ot);var _t=o(ot,2);{var nt=et=>{var gt=Wr(),It=Qe(gt);{var Mt=Tt=>{var yt=g5(),$t=a(yt);{let Wt=v(()=>(t(),l(()=>t().t("Archive"))));Lt($t,{get content(){return e(Wt)},className:"flex items-center",children:(or,$r)=>{var Et=Hg(),St=a(Et);Md(St,{className:"size-4 translate-y-[0.5px]",strokeWidth:"2"}),r(Et),ke("click",Et,xl(()=>{m(e(b).id)})),i(or,Et)},$$slots:{default:!0}})}var rr=o($t,2);{var Rt=Wt=>{{let or=v(()=>(t(),l(()=>t().t("Delete"))));Lt(Wt,{get content(){return e(or)},children:($r,Et)=>{var St=Hg(),Dt=a(St);zs(Dt,{strokeWidth:"2"}),r(St),ke("click",St,xl(()=>{ce(e(b).id)})),i($r,St)},$$slots:{default:!0}})}};G(rr,Wt=>{Ie(),l(()=>{var or,$r,Et,St;return((or=Ie())==null?void 0:or.role)==="admin"||(((St=(Et=($r=Ie())==null?void 0:$r.permissions)==null?void 0:Et.chat)==null?void 0:St.delete)??!0)})&&Wt(Rt)})}r(yt),i(Tt,yt)},jt=Tt=>{var yt=f5(),$t=a(yt);Ff($t,{get chatId(){return e(b),l(()=>e(b).id)},shareHandler:()=>{s(V,e(b).id),s(A,!0)},moveChatHandler:De,cloneChatHandler:()=>{Pe(e(b).id)},archiveChatHandler:()=>{m(e(b).id)},renameHandler:()=>{Le(e(b).id)},markUnreadHandler:()=>{se(e(b).id)},deleteHandler:()=>{s(V,e(b).id),s(B,e(b).title),s(E,!0)},onClose:()=>{},onPinChange:async()=>{await ae(),await T()},children:(rr,Rt)=>{var Wt=_5();i(rr,Wt)},$$slots:{default:!0}}),r(yt),i(Tt,yt)};G(It,Tt=>{e(Te)?Tt(Mt):Tt(jt,-1)})}i(et,gt)};G(_t,et=>{e(j),e(b),l(()=>e(j)!==e(b).id)&&et(nt)})}r(Ze),r(Ve),g(et=>{k(Ve,1,`w-full flex justify-between items-center rounded-lg text-sm py-1.5 pl-2.5 pr-32 hover:bg-gray-50/70 dark:hover:bg-gray-850/50 group/item relative ${e(xe),it(e(N)),e(oe),l(()=>e(xe)===e(N)+e(oe).length?"bg-gray-50/70 dark:bg-gray-850/50":"")??""}`),Be(Ve,"data-arrow-selected",(e(xe),it(e(N)),e(oe),l(()=>e(xe)===e(N)+e(oe).length?"true":void 0))),d(ut,et)},[()=>(t(),it(qa),e(b),l(()=>{var et;return t().t(qa(((et=e(b))==null?void 0:et.updated_at)*1e3).calendar(null,{sameDay:"[Today]",nextDay:"[Tomorrow]",nextWeek:"dddd",lastDay:"[Yesterday]",lastWeek:"[Last] dddd",sameElse:"L"}))}
6))]),ke("mouseenter",Ve,()=>{s(xe,e(N)+e(oe).length)}),i(y,z)});var L=o(S,2);{var fe=y=>{Ks(y,{$$events:{visible:b=>{e(qe)||C()}},children:(b,N)=>{var z=m5(),Ue=a(z);ra(Ue,{className:" size-4"});var Ye=o(Ue,2),Ve=a(Ye,!0);r(Ye),r(z),g(lt=>d(Ve,lt),[()=>(t(),l(()=>t().t("Loading...")))]),i(b,z)},$$slots:{default:!0}})};G(L,y=>{e(Re)||y(fe)})}i(Ee,Ge)},je=Ee=>{var Ge=x5(),p=a(Ge);ra(p,{className:"size-5"}),r(Ge),i(Ee,Ge)};G(tt,Ee=>{e(Me)?Ee(Je):Ee(je,-1)})}r($e);var ne=o($e,2);Be(ne,"id",ve);var J=a(ne);{var W=Ee=>{var Ge=b5(),p=a(Ge,!0);r(Ge),g($=>d(p,$),[()=>(t(),l(()=>t().t("Select a conversation to preview")))]),i(Ee,Ge)},Z=Ee=>{var Ge=y5(),p=a(Ge);{let $=v(()=>(e(K),l(()=>{var S;return`chat-preview-${((S=e(K))==null?void 0:S.id)??""}`})));Uu(p,{className:"h-full flex pt-4 pb-8 w-full",get chatId(){return e($)},get user(){return Ie()},readOnly:!0,get selectedModels(){return e(Oe)},autoScroll:!0,messagesContainerId:ve,messagesCount:8,sendMessage:()=>{},continueResponse:()=>{},regenerateResponse:()=>{},get history(){return e(O)},set history(S){s(O,S)},$$legacy:!0})}r(Ge),i(Ee,Ge)};G(J,Ee=>{e(ie)===null?Ee(W):Ee(Z,-1)})}r(ne),Oa(ne,Ee=>s(M,Ee),()=>e(M)),r(le),r(P),g(Ee=>d(Fe,Ee),[()=>(t(),l(()=>t().t("Actions")))]),i(he,P)},$$slots:{default:!0},$$legacy:!0}),i(He,F),cr(),R()}var E5=u('<button class=" self-center dark:hover:text-white transition" type="button"><!></button>'),A5=u('<div class="absolute right-5 top-2.5"><div class=" flex items-center self-center space-x-1.5"><!></div></div>'),I5=u('<div class=" flex justify-center text-gray-800 dark:text-gray-200 cursor-grab relative group"><a class="grow flex items-center space-x-2 rounded-xl px-2 py-[0.4375rem] group-hover:bg-gray-100 dark:group-hover:bg-gray-900 transition" draggable="false"><div class="self-center shrink-0"><img class=" size-4 rounded-full" alt="logo"/></div> <div class="flex self-center translate-y-[0.5px]"><div class=" self-center text-[0.8125rem] leading-5 line-clamp-1"> </div></div></a> <!></div>');function S5(He,_){vr(_,!1);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr(),Ie=mr("i18n");let X=Xe(_,"model",8,null),R=Xe(_,"shiftKey",8,!1),I=Xe(_,"onClick",8,()=>{}),c=Xe(_,"onUnpin",8,()=>{}),x=h(!1);gr();var A=Wr(),E=Qe(A);{var V=B=>{var j=I5(),w=a(j),Te=a(w),Se=a(Te);r(Te);var Y=o(Te,2),ee=a(Y),ae=a(ee,!0);r(ee),r(Y),r(w);var Pe=o(w,2);{var se=m=>{var ce=A5(),De=a(ce),Le=a(De);{let Ne=v(()=>(t(),l(()=>t().t("Unpin"))));Lt(Le,{get content(){return e(Ne)},className:"flex items-center",children:(Ce,we)=>{var oe=E5(),de=a(oe);Ao(de,{className:"size-3.5",strokeWidth:"1.5"}),r(oe),ke("click",oe,()=>{c()()}),i(Ce,oe)},$$slots:{default:!0}})}r(De),r(ce),i(m,ce)};G(Pe,m=>{e(x)&&R()&&c()&&m(se)})}r(j),g(()=>{Be(j,"data-id",(it(X()),l(()=>{var m;return(m=X())==null?void 0:m.id}))),Be(w,"href",`/?model=${it(X()),l(()=>{var m;return(m=X())==null?void 0:m.id})??""}`),Be(Se,"src",(it(ia),it(X()),t(),l(()=>`${ia}/models/model/profile/image?id=${X().id}&lang=${t().language}`))),d(ae,(it(X()),l(()=>{var m;return((m=X())==null?void 0:m.name)??X().id})))}),ke("error",Se,m=>{m.currentTarget.src="/favicon.png"}),ke("click",w,function(...m){var ce;(ce=I())==null||ce.apply(this,m)}),ke("mouseenter",j,m=>{s(x,!0)}),ke("mouseleave",j,m=>{s(x,!1)}),i(B,j)};G(E,B=>{X()&&B(V)})}i(He,A),cr(),n()}var N5=u('<div class="mt-0.5 pb-1.5" id="pinned-models-list"></div>');function P5(He,_){vr(_,!1);const t=()=>ct(Gl,"$mobile",R),f=()=>ct(hf,"$visiblePinnedModels",R),n=()=>ct(ua,"$settings",R),Ie=()=>ct(Ou,"$pinnedModels",R),X=()=>ct(ba,"$models",R),[R,I]=hr();let c=Xe(_,"selectedChatId",12,null),x=Xe(_,"shiftKey",8,!1);const A=()=>{const V=document.getElementById("pinned-models-list");V&&!t()&&new Ws(V,{animation:150,setData(B,j){B.setData("text/plain",JSON.stringify({type:"model",id:j.dataset.id}))},onUpdate:async B=>{const j=[...f()],[w]=j.splice(B.oldIndex,1);j.splice(B.newIndex,0,w),ua.set({...n(),pinnedModels:[...j,...Ie().filter(Te=>!f().includes(Te))]}),await Tl(localStorage.token,{ui:n()})}})};ea(async()=>{await na(),A()}),gr();var E=N5();lr(E,5,f,V=>V,(V,B)=>{{let j=v(()=>(X(),e(B),l(()=>X().find(w=>w.id===e(B)))));S5(V,{get model(){return e(j)},get shiftKey(){return x()},onClick:()=>{c(null),cl.set(""),t()&&$a.set(!1)},onUnpin:()=>{ua.set({...n(),pinnedModels:Ie().filter(w=>w!==e(B))}),Tl(localStorage.token,{ui:n()})}})}}
6),r(E),i(He,E),cr(),I()}var C5=u('<div class="flex items-center text-gray-800 dark:text-gray-200 cursor-grab relative group rounded-xl px-2 py-1.5 hover:bg-gray-100 dark:hover:bg-gray-900 transition"><a class="grow flex items-center gap-2.5 text-[0.8125rem] leading-5" draggable="false"><div class="self-center"><!></div> <div class="flex-1 text-ellipsis line-clamp-1"> </div></a> <button class="hover-reveal self-center p-0.5 hover:bg-gray-200 dark:hover:bg-gray-800 rounded-lg transition"><!></button></div>'),T5=u('<div class="mt-0.5 pb-1.5" id="pinned-notes-list"></div>');function L5(He,_){vr(_,!1);const t=()=>ct(ua,"$settings",X),f=()=>ct(Ed,"$pinnedNotes",X),n=()=>ct(Gl,"$mobile",X),Ie=()=>ct(c,"$i18n",X),[X,R]=hr(),I=h(),c=mr("i18n");let x=Xe(_,"selectedChatId",12,null);const A=()=>{const V=document.getElementById("pinned-notes-list");V&&!n()&&new Ws(V,{animation:150,setData(B,j){B.setData("text/plain",JSON.stringify({type:"note",id:j.dataset.id})),B.setData("application/x-open-webui-drag","")},onUpdate:async B=>{const j=B.item.dataset.id,w=B.newIndex,Te=e(I).map(Y=>Y.id),Se=Te.indexOf(j);Te.splice(Se,1),Te.splice(w,0,j),ua.set({...t(),pinnedNotesOrder:Te}),await Tl(localStorage.token,{ui:t()})}})};ea(async()=>{await na(),A()}),Kt(()=>(t(),f()),()=>{s(I,(()=>{var j;const V=(j=t())==null?void 0:j.pinnedNotesOrder;if(!V||V.length===0)return f();const B=new Map(V.map((w,Te)=>[w,Te]));return[...f()].sort((w,Te)=>{const Se=B.has(w.id)?B.get(w.id):1/0,Y=B.has(Te.id)?B.get(Te.id):1/0;return Se-Y})})())}),la(),gr();var E=T5();lr(E,5,()=>e(I),V=>V.id,(V,B)=>{var j=C5(),w=a(j),Te=a(w),Se=a(Te);Fs(Se,{className:"size-3.5",strokeWidth:"1.5"}),r(Te);var Y=o(Te,2),ee=a(Y,!0);r(Y),r(w);var ae=o(w,2),Pe=a(ae);Po(Pe,{className:"size-3.5",strokeWidth:"1.5"}),r(ae),r(j),g(se=>{Be(j,"data-id",(e(B),l(()=>e(B).id))),Be(w,"href",(e(B),l(()=>`/notes/${e(B).id}`))),d(ee,(e(B),l(()=>e(B).title))),Be(ae,"aria-label",se)},[()=>(Ie(),l(()=>Ie().t("Unpin")))]),ke("click",w,()=>{x(null),cl.set(""),n()&&$a.set(!1)}),ke("click",ae,ca(xl(async()=>{await jh(localStorage.token,e(B).id);const se=await $f(localStorage.token).catch(()=>[]);Ed.set(se)}))),i(V,j)}),r(E),i(He,E),cr(),R()}var O5=u("<div><span> </span></div>");function Fg(He,_){vr(_,!1);const t=()=>ct(ua,"$settings",n),f=()=>ct(Pd,"$keybindings",n),[n,Ie]=hr(),X=h();let R=Xe(_,"name",8),I=Xe(_,"className",8,""),c=!1,x=h(!1);ea(()=>{c=/Mac/i.test(navigator.userAgent),s(x,!0)});function A(w){const Te=w.toLowerCase();return Te==="mod"?c?"â":"Ctrl":Te==="shift"?c?"â§":"Shift":Te.startsWith("key")?w.slice(-1):w}function E(){var Se;const w=R();return Qo(w)?Nd(f()[w]):(((Se=bd[w])==null?void 0:Se.keys)??[]).map(A).join(c?"":"+")}Kt(()=>t(),()=>{var w;s(X,((w=t())==null?void 0:w.keyboardShortcuts)!==!1)}),la(),gr();var V=Wr(),B=Qe(V);{var j=w=>{var Te=O5(),Se=a(Te),Y=a(Se,!0);r(Se),r(Te),g(ee=>{k(Te,1,`hidden md:flex items-center self-center text-xs text-gray-400 dark:text-gray-600 ${I()??""}`),d(Y,ee)},[()=>l(E)]),i(w,Te)};G(B,w=>{e(x)&&e(X)&&w(j)})}i(He,V),cr(),Ie()}function M5(He,_){vr(_,!1);const t=h(),f=h(),n=h(),Ie=h(),X=h(),R=16,I=8,c=1.2,x=.55,A=210;let E=Xe(_,"open",8,!1),V=Xe(_,"enabled",8,!1),B=Xe(_,"width",8,245),j=Xe(_,"onOpenChange",8,()=>{}),w=h(!1),Te=!1,Se=!1,Y=null,ee=0,ae=0,Pe=0,se=0,m=0,ce=0,De=h(0),Le=h(!1),Ne=null,Ce=null,we=!1,oe=h(null),de=h(null);const be=U=>U instanceof Element&&!!U.closest('input, textarea, select, [role="dialog"], [role="menu"], [contenteditable="true"], [data-sidebar-no-gesture]'),Me=()=>{if(typeof window>"u")return!1;const U=window.getSelection();return!!U&&!U.isCollapsed},qe=(U,T)=>{if(!(U instanceof Element)||T===0||typeof window>"u")return!1;let C=U;for(;C&&C!==document.documentElement&&C!==document.body;){const D=C,F=window.getComputedStyle(D).overflowX;if(/(auto|scroll|overlay)/.test(F)&&D.scrollWidth>D.clientWidth+1){const pe=D.scrollWidth-D.clientWidth;return T>0?D.scrollLeft>0:D.scrollLeft<pe-1}C=C.parentElement}return!1},Re=U=>{we===U||typeof document>"u"||(we=U,document.documentElement.classList.toggle("mobile-swipe-panel-active",U),document.body.classList.toggle("mobile-swipe-panel-active",U))},ue=()=>{Ne&&(clearTimeout(Ne),Ne=null)},xe=()=>{Ce&&(cancelAnimationFrame(Ce),Ce=null)},K=()=>{var U;return typeof window<"u"&&((U=window.matchMedia)==null?void 0:U.call(window,"(prefers-reduced-motion: reduce)").matches)},Oe=U=>{ue(),xe(),s(w,U||e(w));const T=()=>{s(Le,!1),Ne=null},C=()=>{s(Le,!K()),s(De,U?1:0),Ne=setTimeout(T,e(Le)?A:0)};if(U&&e(De)<=.01){s(De,0),s(Le,!1),Ce=requestAnimationFrame(()=>{Ce=null,C()});return}C()},O=()=>{Te=!1,Se=!1,Y=null,m=0,Re(!1)},ie=()=>{O(),Oe(E())},M=U=>{if(!V()||U.touches.length!==1||be(U.target)||Me())return;const T=U.touches[0],C=T.clientX;if(E())Y="close",ce=e(De)||1;else{if(C<R)return;Y="open",ce=0,s(w,!0),s(De,0)}ue(),s(Le,!1),Te=!0,Se=!1,ee=C,ae=T.clientY,Pe=C,se=U.timeStamp,m=0},ve=U=>{if(!Te||!Y||U.touches.length!==1)return;const T=U.touches[0],C=T.clientX-ee,D=T.clientY-ae,F=Math.abs(C),H=Math.abs(D);if(!Se){if(Me()){ie();return}if((Y==="open"&&C>0||Y==="close"&&C<0)&&s(De,Math.max(0,Math.min(1,ce+C/e(t)))),F<I&&H<I)return;if(F>H&&qe(U.target,C)){ie();return}if(H>
6F||F<H*c){ie();return}Se=!0,Re(!0)}U.preventDefault();const pe=U.timeStamp,ye=Math.max(1,pe-se);m=(T.clientX-Pe)/ye,Pe=T.clientX,se=pe,s(De,Math.max(0,Math.min(1,ce+C/e(t))))},te=()=>{if(!Te)return;if(!Se){ie();return}let U=Y==="open"?e(De)>.35:e(De)>.65;m>x?U=!0:m<-x&&(U=!1),O(),Oe(U),j()(U)},ge=()=>{Te&&ie()};ea(()=>{window.addEventListener("touchstart",M,{passive:!0}),window.addEventListener("touchmove",ve,{passive:!1}),window.addEventListener("touchend",te),window.addEventListener("touchcancel",ge)}),Al(()=>{window.removeEventListener("touchstart",M),window.removeEventListener("touchmove",ve),window.removeEventListener("touchend",te),window.removeEventListener("touchcancel",ge),ue(),xe(),Re(!1)}),Kt(()=>it(B()),()=>{s(t,B()||245)}),Kt(()=>(it(E()),e(oe),it(V()),e(de)),()=>{(E()!==e(oe)||V()!==e(de))&&(s(oe,E()),s(de,V()),V()?Oe(E()):(s(w,!1),s(De,E()?1:0),s(Le,!1),Re(!1)))}),Kt(()=>(it(V()),e(De)),()=>{s(f,V()?Math.max(0,Math.min(1,e(De))):1)}),Kt(()=>(it(E()),it(V()),e(w)),()=>{s(n,E()||V()&&e(w))}),Kt(()=>(it(V()),e(f),e(Le)),()=>{s(Ie,V()?`transform: translateX(${(e(f)-1)*100}%); transition: ${e(Le)?`transform ${A}ms cubic-bezier(0.22, 1, 0.36, 1)`:"none"};`:"")}),Kt(()=>(it(V()),e(f),e(Le)),()=>{s(X,V()?`opacity: ${e(f)*.6}; transition: ${e(Le)?`opacity ${A}ms cubic-bezier(0.22, 1, 0.36, 1)`:"none"};`:"")}),la(),gr();var _e=Wr(),Ae=Qe(_e);Ka(Ae,_,"default",{get visible(){return e(n)},get progress(){return e(f)},get panelStyle(){return e(Ie)},get backdropStyle(){return e(X)}},null),i(He,_e),cr()}var R5=u("<div></div>"),D5=u('<button><div class="self-center flex size-[calc(30px*var(--app-text-scale,1))] items-center justify-center rounded-lg transition group-hover:bg-gray-100 dark:group-hover:bg-gray-900"><img class="sidebar-new-chat-icon size-5 rounded-full group-hover:hidden" alt=""/> <!></div></button>'),U5=u('<a class=" cursor-pointer flex size-8 items-center justify-center transition group" href="/" draggable="false"><div class="self-center flex size-[calc(30px*var(--app-text-scale,1))] items-center justify-center rounded-lg transition group-hover:bg-gray-100 dark:group-hover:bg-gray-900"><!></div></a>'),B5=u('<button class=" cursor-pointer flex size-8 items-center justify-center transition group" draggable="false"><div class="self-center flex size-[calc(30px*var(--app-text-scale,1))] items-center justify-center rounded-lg transition group-hover:bg-gray-100 dark:group-hover:bg-gray-900"><!></div></button>'),G5=u('<a class=" cursor-pointer flex size-8 items-center justify-center transition group" draggable="false"><div><!></div></a>'),j5=u("<div><!></div>"),Wg=u('<div class="absolute -bottom-0.5 -right-0.5"><span class="relative flex size-2.5"><span></span></span></div>'),H5=u('<button type="button" class=" cursor-pointer flex size-8.5 items-center justify-center transition group"><div class="self-center relative flex size-[calc(30px*var(--app-text-scale,1))] items-center justify-center rounded-lg transition group-hover:bg-gray-100 dark:group-hover:bg-gray-900"><img class="size-5.5 object-cover rounded-full"/> <!></div></button>'),F5=u('<div class="w-[calc(42px*var(--app-text-scale,1))] shrink-0 py-[calc(0.25rem*var(--app-text-scale,1))] px-[calc(0.25rem*var(--app-text-scale,1))] flex flex-col justify-between text-gray-700 dark:text-gray-300 hover:bg-gray-50/30 dark:hover:bg-gray-800/30 h-full z-10 transition-all border-e-[0.5px] border-gray-50 dark:border-gray-850/30 svelte-6dohdz" id="sidebar" role="navigation"><button><div class="pb-1"><!></div> <div class="-gap-0.5"><div><!></div> <div><!></div> <!></div></button> <div><div><div class=" flex justify-center items-center"><!></div></div></div></div>'),W5=u('<button><div class=" self-center"><!></div></button>'),z5=u('<div class="px-1 flex justify-center text-gray-700 dark:text-gray-300"><a draggable="false"><div class="self-center flex size-4 shrink-0 items-center justify-center"><!></div> <div class="flex self-center translate-y-[0.5px]"><div class=" self-center text-[0.8125rem] leading-5"> </div></div></a></div>'),K5=u('<hr class=" border-gray-100/40 dark:border-gray-800/10 my-1.5 w-full"/>'),zc=u("<!> <!>",1),Y5=u('<div class="ml-3 pl-1 mt-[0.0625rem] flex flex-col overflow-y-auto scrollbar-hidden border-s border-gray-100 dark:border-gray-900 text-gray-700 dark:text-gray-300"></div>
6'),V5=u('<div class="mb-1"><div class="flex flex-col space-y-1 rounded-xl"><!></div></div>'),q5=u("<div> </div>"),zg=u('<div class="w-full flex justify-center py-1 text-xs animate-pulse items-center gap-2"><!> <div class=" "> </div></div>'),X5=u('<!> <div class=" flex-1 flex flex-col overflow-y-auto scrollbar-hidden"><div class="pt-1.5"><!></div></div>',1),J5=u('<button type="button" class="flex items-center justify-center w-7 h-7 rounded-lg text-gray-300 hover:text-gray-500 dark:text-gray-600 dark:hover:text-gray-400 transition-colors duration-100"><!></button>'),Z5=u('<button class="flex h-[1.6875rem] w-full items-center gap-2 rounded-xl px-2 text-[0.8125rem] select-none cursor-pointer hover:bg-gray-100 dark:hover:bg-gray-900"><!> <div class="flex items-center"> </div></button>'),Q5=u('<div slot="content"><!></div>'),ew=u('<button type="button" class=" flex items-center rounded-xl py-1.5 px-1.5 w-full hover:bg-gray-100 dark:hover:bg-gray-900 transition"><div class=" self-center mr-3 relative flex-shrink-0"><img class="size-5.5 object-cover rounded-full"/> <!></div> <div class=" self-center font-normal truncate"> </div></button>'),tw=u('<div class="relative flex items-center justify-center group border-r border-gray-50 dark:border-gray-850/30 hover:border-gray-200 dark:hover:border-gray-800 transition z-20 bg-transparent p-0 appearance-none" id="sidebar-resizer" role="separator"><div class=" absolute -left-1.5 -right-1.5 -top-0 -bottom-0 z-20 cursor-col-resize bg-transparent" style="touch-action: none;"></div></div>'),rw=u('<div role="navigation"><div class=" my-auto flex flex-col justify-between h-screen max-h-[100dvh] w-[var(--sidebar-width)] overflow-x-hidden scrollbar-hidden z-50 border-e border-gray-50 dark:border-gray-850/30"><div class="sidebar px-1 pt-1.5 pb-1 flex justify-between space-x-1 text-gray-600 dark:text-gray-400 sticky top-0 z-10 -mb-2"><a class="flex items-center rounded-xl size-8.5 h-full justify-center hover:bg-gray-100 dark:hover:bg-gray-900 transition no-drag-region" href="/" draggable="false"><img crossorigin="anonymous" class="sidebar-new-chat-icon size-5 rounded-full" alt=""/></a> <a href="/" class="flex flex-1 px-0.5"><div id="sidebar-webui-name" class=" self-center font-normal text-gray-700 dark:text-gray-200"> </div></a> <!> <div></div></div> <div class="relative flex flex-col flex-1 overflow-y-auto scrollbar-hidden space-y-1.5 pt-2.5 pb-2.5"><div class="pb-1"><div class="px-1 flex justify-center text-gray-700 dark:text-gray-300"><a id="sidebar-new-chat-button" class="group grow flex items-center space-x-2 rounded-xl px-2 py-1.5 hover:bg-gray-100 dark:hover:bg-gray-900 transition outline-none" href="/" draggable="false"><div class="self-center flex size-4 shrink-0 items-center justify-center"><!></div> <div class="flex flex-1 self-center translate-y-[0.5px]"><div class=" self-center text-[0.8125rem] leading-5"> </div></div> <!></a></div> <div class="px-1 flex justify-center text-gray-700 dark:text-gray-300"><button id="sidebar-search-button" class="group grow flex items-center space-x-2 rounded-xl px-2 py-1.5 hover:bg-gray-100 dark:hover:bg-gray-900 transition outline-none" draggable="false"><div class="self-center flex size-4 shrink-0 items-center justify-center"><!></div> <div class="flex flex-1 self-center translate-y-[0.5px]"><div class=" self-center text-[0.8125rem] leading-5"> </div></div> <!></button></div> <div id="pinned-menu-items-list"></div></div> <!> <!> <!> <!> <!></div> <div class="px-1 pt-1 pb-1.5 sticky bottom-0 z-10 -mt-2 sidebar"><div class=" sidebar-bg-gradient-to-t bg-linear-to-t from-gray-50 dark:from-gray-950 to-transparent from-50% pointer-events-none absolute inset-0 -z-10 -mt-6"></div> <div class="flex flex-col"><!></div></div></div></div> <!>',1),aw=u('<!> <!> <button id="sidebar-new-chat-button" class="hidden"></button> <!> <!>',1),lw=u("<!> <!> <!>",1);function ow(He,_){vr(_,!1);const t=()=>ct(ka,"$user",ae),f=()=>ct(cl,"$chatId",ae),n=()=>ct(ua,"$settings",ae),Ie=()=>ct(_a,"$config",ae),X=()=>ct(Td,"$page",ae),R=()=>ct(Gl,"$mobile",ae),I=()=>ct(Ul,"$selectedFolder",ae),c=()=>ct(De,"$i18n",ae),x=()=>ct($a,"$showSidebar",ae),A=()=>ct(id,"$sidebarWidth",ae),E=()=>ct(fh,"$socket",ae),V=()=>ct(ph,"$isApp",ae),B=()=>ct(Zo,"$showSearch",ae),j=()=>ct(Mu,"$WEBUI_NAME",ae),w=()=>ct(hf,"$visiblePinnedModels",ae),Te=()=>ct(Ed,"$pinnedNotes",ae),Se=()=>ct(Ds,"$channels",ae),Y=()=>ct(mh,"$pinnedChats",ae),ee=()=>ct(xf,"$chats",ae),[ae,Pe]=hr(),se=h(),m=h(),ce=h(),De=mr("i18n"),Le=["notes","workspace"];let Ne=h(0),Ce=h(),we=h(!1),oe=h(null),de=h(!1),be=h(!1),Me=h(!1),qe=h(!1),Re=h(!1),ue=h(!0),xe=h(!1),K=h(!1),Oe=h(!1),O=h(!1),ie=h({}),M=h({}),ve=[];const te=Ke=>{var Ze,ot;Ke!=null&&Ke.id&&((ot=(Ze=e(M)[Ke.id])==null?void 0:Ze.setFolderItems)==null||ot.call(Ze))},ge=Ke=>{var Ze,ot,ut,_t,nt,et,gt,It,Mt,jt,Tt,yt,$t,rr,Rt,Wt,or,$r,Et,St,Dt,ar,Tr,tr,ur,_r,br,kt,jr,qt,At,Ot,Ht,Xt,er;switch(Ke){case"notes":return(((ot=(Ze=Ie())==null?void 0:Ze.features)==null?void 0:ot.enable_notes)??!1)&&(((ut=t())==null?void 0:ut.role)==="admin"||(((et=(nt=(_t=t())==null?void 0:_t.permissions)==null?void 0:nt.features)==null?void 0:et.notes)??!0));case"workspace":return((gt=t())==null?void 0:gt.role)==="admin"||((jt=(Mt=(It=t())==null?void 0:It.permissions)==null?void 0:Mt.workspace)==null?void 0:jt.models)||
6(($t=(yt=(Tt=t())==null?void 0:Tt.permissions)==null?void 0:yt.workspace)==null?void 0:$t.knowledge)||((Wt=(Rt=(rr=t())==null?void 0:rr.permissions)==null?void 0:Rt.workspace)==null?void 0:Wt.prompts)||((Et=($r=(or=t())==null?void 0:or.permissions)==null?void 0:$r.workspace)==null?void 0:Et.tools)||((ar=(Dt=(St=t())==null?void 0:St.permissions)==null?void 0:Dt.workspace)==null?void 0:ar.skills);case"automations":return((tr=(Tr=Ie())==null?void 0:Tr.features)==null?void 0:tr.enable_automations)&&(((ur=t())==null?void 0:ur.role)==="admin"||((kt=(br=(_r=t())==null?void 0:_r.permissions)==null?void 0:br.features)==null?void 0:kt.automations));case"calendar":return((qt=(jr=Ie())==null?void 0:jr.features)==null?void 0:qt.enable_calendar)&&(((At=t())==null?void 0:At.role)==="admin"||((Xt=(Ht=(Ot=t())==null?void 0:Ot.permissions)==null?void 0:Ht.features)==null?void 0:Xt.calendar));case"playground":return((er=t())==null?void 0:er.role)==="admin";default:return!1}},_e=Ke=>({notes:{label:"Notes",href:"/notes",iconType:"note"},workspace:{label:"Workspace",href:"/workspace",iconType:"workspace"},automations:{label:"Automations",href:"/automations",iconType:"automations"},calendar:{label:"Calendar",href:"/calendar",iconType:"calendar"},playground:{label:"Playground",href:"/playground",iconType:"playground"}})[Ke],Ae={notes:"/notes",workspace:"/workspace",calendar:"/calendar",automations:"/automations",playground:"/playground"},U=Ke=>{for(const[Ze,ot]of Object.entries(Ae))if(Ke===ot||Ke.startsWith(`${ot}/`))return Ze;return null},T=()=>{const Ke=document.getElementById("pinned-menu-items-list");Ke&&!R()&&new Ws(Ke,{animation:150,onUpdate:async Ze=>{const ot=Ze.item.dataset.id,ut=Ze.newIndex,_t=[...e(m)],nt=_t.indexOf(ot);_t.splice(nt,1),_t.splice(ut,0,ot),ua.set({...n(),pinnedMenuItems:_t}),await Tl(localStorage.token,{ui:n()})}})},C=async()=>{var ut,_t,nt;if(((_t=(ut=Ie())==null?void 0:ut.features)==null?void 0:_t.enable_folders)===!1)return;const[Ke,Ze]=await Promise.all([Bh(localStorage.token).catch(et=>[]),Gh(localStorage.token).catch(et=>[])]);kd.set(Ke.sort((et,gt)=>gt.updated_at-et.updated_at)),ve=Ze;const ot={};for(const et of Ke)ot[et.id]={...ot[et.id]||{},...et};for(const et of Ke)et.parent_id&&(ot[et.parent_id]||(ot[et.parent_id]={}),ot[et.parent_id].childrenIds=ot[et.parent_id].childrenIds?[...ot[et.parent_id].childrenIds,et.id]:[et.id],ot[et.parent_id].childrenIds.sort((gt,It)=>ot[It].updated_at-ot[gt].updated_at));for(const et of ve)ot[et.id]||(ot[et.id]={...et,shared:!0});for(const et of ve)(nt=ot[et.id])!=null&&nt.shared&&et.parent_id&&ot[et.parent_id]&&(ot[et.parent_id].childrenIds=ot[et.parent_id].childrenIds?[...new Set([...ot[et.parent_id].childrenIds,et.id])]:[et.id]);s(ie,ot)},D=async({name:Ke,data:Ze,parent_id:ot})=>{if(Ke=Ke==null?void 0:Ke.trim(),!Ke){rt.error(c().t("Folder name cannot be empty."));return}const ut=Object.values(e(ie)).filter(et=>et.parent_id===ot);if(ut.find(et=>et.name.toLowerCase()===Ke.toLowerCase())){let et=1;for(;ut.find(gt=>gt.name.toLowerCase()===`${Ke} ${et}`.toLowerCase());)et++;Ke=`${Ke} ${et}`}const _t=Ld();s(ie,{...e(ie),[_t]:{id:_t,name:Ke,parent_id:ot,created_at:Date.now(),updated_at:Date.now()}}),await yf(localStorage.token,{name:Ke,data:Ze,parent_id:ot}).catch(et=>(rt.error(`${et}`),null))&&(await C(),s(Oe,!0))},F=async()=>{const Ke=await Nx(localStorage.token).catch(Ze=>null);Ke&&await Ds.set(Ke.sort((Ze,ot)=>["",null,"group","dm"].indexOf(Ze.type)-["",null,"group","dm"].indexOf(ot.type)))},H=async()=>{s(qe,!1),s(Me,!1),await Promise.all([(async()=>{const Ke=await Od(localStorage.token);Gs.set(Ke)})(),(async()=>{var Ke,Ze,ot,ut,_t,nt;if((Ze=(Ke=Ie())==null?void 0:Ke.features)!=null&&Ze.enable_notes&&(((ot=t())==null?void 0:ot.role)==="admin"||(((nt=(_t=(ut=t())==null?void 0:ut.permissions)==null?void 0:_t.features)==null?void 0:nt.notes)??!0))){const et=await $f(localStorage.token).catch(()=>[]);Ed.set(et)}})(),(async()=>{await ye()})()])},pe=async()=>{var Ke,Ze,ot,ut,_t,nt;(Ze=(Ke=Ie())==null?void 0:Ke.features)!=null&&Ze.enable_channels&&(((ot=t())==null?void 0:ot.role)==="admin"||(((nt=(_t=(ut=t())==null?void 0:ut.permissions)==null?void 0:_t.features)==null?void 0:nt.channels)??!0))&&await F(),await H()},ye=async()=>{const Ke=await El(localStorage.token,{refreshPinned:!0});Ke.accepted&&(await C(),await Promise.all(Object.values(e(M)).map(Ze=>{var ot;return(ot=Ze==null?void 0:Ze.setFolderItems)==null?void 0:ot.call(Ze)})),s(qe,Ke.allLoaded),s(Me,!0))},he=async()=>
6{if(e(be)||e(qe)||!x())return;s(be,!0);const Ke=await bh(localStorage.token);s(qe,Ke.allLoaded),s(be,!1)},q=Ke=>{s(ie,Object.fromEntries(Object.entries(e(ie)).map(([Ze,ot])=>[Ze,Ze in Ke?{...ot,unread_count:Ke[Ze]}:ot]))),kd.update(Ze=>Ze.map(ot=>ot.id in Ke?{...ot,unread_count:Ke[ot.id]}:ot))},P=Ke=>{var Ze;if(Ke!=null&&Ke.folder_unread_counts&&q(Ke.folder_unread_counts),Ke!=null&&Ke.chat_id&&typeof(Ke==null?void 0:Ke.last_read_at)=="number"){mg(Ke.chat_id,Ke.last_read_at);for(const ot of Object.values(e(M)))(Ze=ot==null?void 0:ot.setChatReadAt)==null||Ze.call(ot,Ke.chat_id,Ke.last_read_at)}},Q=async()=>{var Ze;const Ke=await hh(localStorage.token).catch(ot=>(rt.error(`${ot}`),null));if(Ke){s(O,!1),Ke.folder_unread_counts&&q(Ke.folder_unread_counts),xh();for(const ot of Object.values(e(M)))(Ze=ot==null?void 0:ot.setAllChatsRead)==null||Ze.call(ot)}},re=async(Ke,Ze=!1,ot=null)=>{if(!e(se)){rt.error(c().t("Access prohibited"));return}for(const ut of Ke)ut.chat&&await Rs(localStorage.token,[{chat:ut.chat,meta:(ut==null?void 0:ut.meta)??{},pinned:Ze,folder_id:ot,created_at:(ut==null?void 0:ut.created_at)??null,updated_at:(ut==null?void 0:ut.updated_at)??null}]);H()},le=async Ke=>{for(const Ze of Ke){const ot=new FileReader;ot.onload=async ut=>{const _t=ut.target.result;try{const nt=JSON.parse(_t);re(nt)}catch{rt.error(c().t("Invalid file format."))}},ot.readAsText(Ze)}},$e=async(Ke,Ze,ot)=>{(Ke==="delete"||Ke==="add")&&H()},ze=Ke=>{var Ze,ot;Ke.preventDefault(),(ot=(Ze=Ke.dataTransfer)==null?void 0:Ze.types)!=null&&ot.includes("Files")},Fe=()=>{},at=async Ke=>{var Ze,ot;if(Ke.preventDefault(),(Ze=Ke.dataTransfer)!=null&&Ze.files){const ut=Array.from((ot=Ke.dataTransfer)==null?void 0:ot.files);ut&&ut.length>0&&le(ut)}},tt=Ke=>{Ke.key==="Shift"&&s(we,!0)},Je=Ke=>{Ke.key==="Shift"&&s(we,!1)},je=()=>{},ne=()=>{s(we,!1),s(oe,null)},J=()=>{R()&&$a.set(!1)},W=220,Z=480;let Ee=h(!1),Ge=h(null),p=null,$=0,S=0;const L=Ke=>{var Ze;R()||(Ke.preventDefault(),s(Ee,!0),s(Ge,Ke.pointerId),p=Ke.currentTarget,(Ze=p.setPointerCapture)==null||Ze.call(p,Ke.pointerId),S=Ke.clientX,$=A()??245,document.body.style.userSelect="none")},fe=Ke=>{var Ze;e(Ee)&&(Ke&&e(Ge)!==null&&Ke.pointerId!==e(Ge)||(s(Ee,!1),e(Ge)!==null&&((Ze=p==null?void 0:p.hasPointerCapture)!=null&&Ze.call(p,e(Ge)))&&p.releasePointerCapture(e(Ge)),s(Ge,null),p=null,document.body.style.userSelect="",localStorage.setItem("sidebarWidth",String(A()))))},y=Ke=>{const Ze=Ke-S,ot=Math.min(Z,Math.max(W,$+Ze));id.set(ot),document.documentElement.style.setProperty("--sidebar-width",`${ot}px`)};Al(()=>{e(Ee)&&(document.body.style.userSelect="")}),ea(async()=>{try{const _t=Number(localStorage.getItem("sidebarWidth"));!Number.isNaN(_t)&&_t>=W&&_t<=Z&&id.set(_t)}catch{}document.documentElement.style.setProperty("--sidebar-width",`${A()}px`),id.subscribe(_t=>{document.documentElement.style.setProperty("--sidebar-width",`${_t}px`)}),$a.set(R()?!1:localStorage.sidebar==="true");const Ke=[Gl.subscribe(_t=>{if(x()&&_t&&$a.set(!1),x()&&!_t){const nt=document.getElementsByTagName("nav")[0];nt&&(nt.style["-webkit-app-region"]="drag")}}),$a.subscribe(async _t=>{localStorage.sidebar=_t;const nt=document.getElementsByTagName("nav")[0];nt&&(R()&&_t?nt.style["-webkit-app-region"]="no-drag":nt.style["-webkit-app-region"]="drag")})];window.addEventListener("keydown",tt),window.addEventListener("keyup",Je),window.addEventListener("focus",je),window.addEventListener("blur",ne);const Ze=document.getElementById("sidebar");Ze&&(Ze.addEventListener("dragover",ze),Ze.addEventListener("drop",at),Ze.addEventListener("dragleave",Fe));const ot=E();ot==null||ot.on("events",b),ot==null||ot.on("connect",ye);const ut=gh(async(_t,nt)=>{var et,gt,It,Mt;return _t===null?C():_t?nt?(gt=(et=e(M)[_t])==null?void 0:et.upsertChat)==null?void 0:gt.call(et,nt):(Mt=(It=e(M)[_t])==null?void 0:It.setFolderItems)==null?void 0:Mt.call(It):Promise.all(Object.values(e(M)).map(jt=>{var Tt;return(Tt=jt==null?void 0:jt.setFolderItems)==null?void 0:Tt.call(jt)}))});return await na(),await pe(),T(),()=>{Ke.forEach(_t=>_t()),window.removeEventListener("keydown",tt),window.removeEventListener("keyup",Je),window.removeEventListener("focus",je),window.removeEventListener("blur",ne),Ze&&(Ze.removeEventListener("dragover",ze),Ze.removeEventListener("drop",at),Ze.removeEventListener("dragleave",Fe)),ot==null||ot.off("events",b),ot==null||ot.off("connect",ye),ut()}});const b=async Ke=>{var Ze,ot,ut,_t,nt,et,gt,It;if(((Ze=Ke.data)==null?void 0:Ze.type)==="chat:active"){const Mt=Ke.data.data??{},jt=Mt.active??!1,Tt=_h(Ke.chat_id,jt);let yt=!1;for(const $t of Object.values(e(M)))yt=((ot=$t==null?void 0:$t.setChatActive)==null?void 0:ot.call($t,Ke.chat_id,jt))||yt;!yt&&jt&&Mt.folder_id&&await((_t=(ut=e(M)[Mt.folder_id])==null?void 0:ut.setFolderItems)==null?void 0:_t.call(ut)),!Tt&&jt&&await ye()}else if(((nt=Ke.data)==null?void 0:nt.type)==="chat:list"){const Mt=Ke.data.data??{},jt=Mt.folder_unread_counts;if(jt&&q(jt),typeof Mt.last_read_at=="number"){mg(Ke.chat_id,Mt.last_read_at);for(const Tt of Object.values(e(M)))(et=Tt==null?void 0:Tt.setChatReadAt)==null||et.call(Tt,Ke.chat_id,Mt.last_read_at);return}await ye(),Mt.folder_id&&await((It=(gt=e(M)[Mt.folder_id])==null?void 0:gt.setFolderItems)==null?void 0:It.call(gt))}},N=async()=>{var Ke,Ze,ot,ut;s(oe,null),Ul.set(null),J(),((Ke=t())==null?void 0:Ke.role)!=="admin"&&((ut=(ot=(Ze=t())==null?void 0:Ze.permissions)==null?void 0:ot.chat)!=null&&ut.temporary_enforced)?await Eo.set(!0):await Eo.set(!1)},z=async()=>{s(oe,null),cl.set(""),J(),await na()},Ue=/Windows/i.test(navigator.userAgent);Kt(()=>t(),()=>{var Ke,Ze,ot,ut;s(se,((Ke=t())==null?void 0:Ke.role)==="admin"||(((ut=(ot=(Ze=t())==null?void 0:Ze.permissions)==null?void 0:ot.chat)==null?void 0:ut.import)??!0))}),Kt(()=>f(),()=>{s(oe,f()||null)}),Kt(()=>n(),()=>{var Ke;s(m,((Ke=n())==null?void 0:Ke.pinnedMenuItems)??Le)}),Kt(()=>X(),()=>{s(ce,U(X().url.pathname))}),Kt(()=>I(),()=>{te(I())}),la(),gr();var Ye=lw();ke("pointermove",es,Ke=>{e(Ee)&&(e(Ge)!==null&&Ke.pointerId!==e(Ge)||y(Ke.clientX))}),ke("pointerup",es,fe),ke("pointercancel",es,fe);var Ve=Qe(Ye);Kf(Ve,{onSubmit:async Ke=>{var It;let{type:Ze,name:ot,is_private:ut,access_grants:_t,group_ids:nt,user_ids:et}=Ke??{};if(ot=ot==null?void 0:ot.trim(),Ze==="dm"){if(!et||et.length===0){rt.error(c().t("Please select at least one user for Direct Message channel."));return}}else if(!ot){rt.error(c().t("Channel name cannot be empty."));return}const gt=await Sx(localStorage.token,{type:Ze,name:ot,is_private:ut,access_grants:_t,group_ids:nt,user_ids:et}).catch(Mt=>(rt.error(`${Mt}`),null));gt&&(E().emit("join-channels",{auth:{token:(It=t())==null?void 0:It.token}}),await F(),s(de,!1),s(K,!0),fa(`/channels/${gt.id}`))},get show(){return e(de)},set show(Ke){s(de,Ke)},$$legacy:!0});var lt=o(Ve,2);fu(lt,{onSubmit:async Ke=>{await D(Ke),s(Re,!1)},get show(){return e(Re)},set show(Ke){s(Re,Ke)},$$legacy:!0});var st=o(lt,2);M5(st,{get open(){return x()},get enabled(){return R()},get width(){return A()},onOpenChange:Ke=>$a.set(Ke),children:Ir,$$slots:{default:(Ke,Ze)=>{const ot=v(()=>Ze.visible),ut=v(()=>Ze.progress),_t=v(()=>Ze.panelStyle),nt=v(()=>Ze.backdropStyle);
6var et=aw(),gt=Qe(et);{var It=Rt=>{var Wt=R5();g(()=>{k(Wt,1,` ${V()?" ml-[4.5rem] md:ml-0":""} fixed md:hidden z-40 top-0 right-0 left-0 bottom-0 bg-black w-full min-h-screen h-screen flex justify-center overflow-hidden overscroll-contain ${e(ut)>.02?"":"pointer-events-none"}`),bl(Wt,e(nt))}),ke("mousedown",Wt,()=>{$a.set(!1)}),i(Rt,Wt)};G(gt,Rt=>{e(ot)&&Rt(It)})}var Mt=o(gt,2);k5(Mt,{onClose:()=>{R()&&$a.set(!1)},get show(){return su(),B()},set show(Rt){ou(Zo,Rt)},$$legacy:!0});var jt=o(Mt,2),Tt=o(jt,2);{var yt=Rt=>{var Wt=F5(),or=a(Wt),$r=a(or),Et=a($r);{let At=v(()=>(x(),c(),l(()=>x()?c().t("Close Sidebar"):c().t("Open Sidebar"))));Lt(Et,{get content(){return e(At)},placement:"right",children:(Ot,Ht)=>{var Xt=D5(),er=a(Xt),xr=a(er),Qt=o(xr,2);$g(Qt,{className:"size-4 hidden group-hover:flex"}),r(er),r(Xt),g(fr=>{k(Xt,1,`flex size-8.5 items-center justify-center transition group ${Ue?"cursor-pointer":"cursor-[e-resize]"}`),Be(Xt,"aria-label",fr),Be(xr,"src",`${No}/static/favicon.png`)},[()=>(x(),c(),l(()=>x()?c().t("Close Sidebar"):c().t("Open Sidebar")))]),i(Ot,Xt)},$$slots:{default:!0}})}r($r);var St=o($r,2),Dt=a(St),ar=a(Dt);{let At=v(()=>(c(),l(()=>c().t("New Chat"))));Lt(ar,{get content(){return e(At)},placement:"right",children:(Ot,Ht)=>{var Xt=U5(),er=a(Xt),xr=a(er);Id(xr,{className:"size-4",strokeWidth:"1.5"}),r(er),r(Xt),g(Qt=>Be(Xt,"aria-label",Qt),[()=>(c(),l(()=>c().t("New Chat")))]),ke("click",Xt,async Qt=>{Qt.stopImmediatePropagation(),Qt.preventDefault(),fa("/"),N()}),i(Ot,Xt)},$$slots:{default:!0}})}r(Dt);var Tr=o(Dt,2),tr=a(Tr);{let At=v(()=>(c(),l(()=>c().t("Search"))));Lt(tr,{get content(){return e(At)},placement:"right",children:(Ot,Ht)=>{var Xt=B5(),er=a(Xt),xr=a(er);Nu(xr,{className:"size-4",strokeWidth:"1.5"}),r(er),r(Xt),g(Qt=>Be(Xt,"aria-label",Qt),[()=>(c(),l(()=>c().t("Search")))]),ke("click",Xt,Qt=>{Qt.stopImmediatePropagation(),Qt.preventDefault(),Zo.set(!0)}),i(Ot,Xt)},$$slots:{default:!0}})}r(Tr);var ur=o(Tr,2);lr(ur,1,()=>e(m),At=>At,(At,Ot)=>{const Ht=v(()=>(e(Ot),l(()=>_e(e(Ot)))));var Xt=Wr(),er=Qe(Xt);{var xr=fr=>{var wt=j5(),ht=a(wt);{let zt=v(()=>(c(),it(e(Ht)),l(()=>c().t(e(Ht).label))));Lt(ht,{get content(){return e(zt)},placement:"right",children:(ir,dr)=>{var Ct=G5(),Er=a(Ct),Bt=a(Er);{var Ft=yr=>{Fs(yr,{className:"size-4",strokeWidth:"1.5"})},Zt=yr=>{Eu(yr,{className:"size-4",strokeWidth:"1.5"})},wr=yr=>{wu(yr,{className:"size-4",strokeWidth:"1.5"})},kr=yr=>{$u(yr,{className:"size-4",strokeWidth:"1.5"})},Hr=yr=>{ku(yr,{className:"size-4",strokeWidth:"1.5"})};G(Bt,yr=>{e(Ot)==="notes"?yr(Ft):e(Ot)==="workspace"?yr(Zt,1):e(Ot)==="automations"?yr(wr,2):e(Ot)==="calendar"?yr(kr,3):e(Ot)==="playground"&&yr(Hr,4)})}r(Er),r(Ct),g(yr=>{Be(Ct,"href",(it(e(Ht)),l(()=>e(Ht).href))),Be(Ct,"aria-label",yr),k(Er,1,`self-center flex size-[calc(30px*var(--app-text-scale,1))] items-center justify-center rounded-lg transition ${e(Ot),e(ce),n(),l(()=>{var Sr;return e(Ot)===e(ce)?((Sr=n())==null?void 0:Sr.highContrastMode)??!1?"bg-black/[0.035] dark:bg-white/[0.06]":"bg-black/[0.035] dark:bg-white/[0.045]":"group-hover:bg-gray-100 dark:group-hover:bg-gray-900"})??""}`)},[()=>(c(),it(e(Ht)),l(()=>c().t(e(Ht).label)))]),ke("click",Ct,async yr=>{yr.stopImmediatePropagation(),yr.preventDefault(),fa(e(Ht).href),z()}),i(ir,Ct)},$$slots:{default:!0}})}r(wt),i(fr,wt)},Qt=Qr(()=>(it(e(Ht)),e(Ot),l(()=>e(Ht)&&ge(e(Ot)))));G(er,fr=>{e(Qt)&&fr(xr)})}i(At,Xt)}),r(St),r(or);var _r=o(or,2),br=a(_r),kt=a(br),jr=a(kt);{var qt=At=>{{let Ot=v(()=>(t(),l(()=>{var Xt;return(Xt=t())==null?void 0:Xt.role}))),Ht=v(()=>(Ie(),l(()=>{var Xt,er;return((er=(Xt=Ie())==null?void 0:Xt.features)==null?void 0:er.enable_user_status)??!0})));Mg(At,{get role(){return e(Ot)},get profile(){return e(Ht)},children:(Xt,er)=>{var xr=H5(),Qt=a(xr),fr=a(Qt),wt=o(fr,2);{var ht=zt=>{var ir=Wg(),dr=a(ir),Ct=a(dr);k(Ct,1,"relative inline-flex size-2.5 rounded-full bg-green-500 border-2 border-white dark:border-gray-900"),r(dr),r(ir),i(zt,ir)};G(wt,zt=>{Ie(),l(()=>{var ir,dr;return(dr=(ir=Ie())==null?void 0:ir.features)==null?void 0:dr.enable_user_status})&&zt(ht)})}r(Qt),r(xr),g((zt,ir,dr)=>{Be(xr,"aria-label",zt),Be(fr,"src",(it(ia),t(),l(()=>{var Ct;return`${ia}/users/${(Ct=t())==null?void 0:Ct.id}/profile/image`}))),Be(fr,"alt",ir),Be(fr,"aria-label",dr)},[()=>(c(),l(()=>c().t("User menu"))),()=>(c(),l(()=>c().t("Open User Profile Menu"))),()=>(c(),l(()=>c().t("Open User Profile Menu")))]),i(Xt,xr)},$$slots:{default:!0}})}};G(jr,At=>{t()!==void 0&&t()!==null&&At(qt)})}r(kt),r(br),r(_r),r(Wt),g(At=>{Be(Wt,"aria-label",At),k(or,1,`flex flex-col flex-1 ${Ue?"cursor-pointer":"cursor-[e-resize]"}`)},[()=>(c(),l(()=>c().t("Chat history")))]),ke("click",or,async()=>{$a.set(!x())}),i(Rt,Wt)};G(Tt,Rt=>{!R()&&!x()&&Rt(yt)})}var $t=o(Tt,2);{var rr=Rt=>{var Wt=rw(),or=Qe(Wt),$r=a(or),Et=a($r),St=a(Et),Dt=a(St);r(St);var ar=o(St,2),Tr=a(ar),tr=a(Tr,!0);r(Tr),r(ar);var ur=o(ar,2);{let Pt=v(()=>(x(),c(),l(()=>x()?c().t("Close Sidebar"):c().t("Open Sidebar"))));Lt(ur,{get content(){return e(Pt)},placement:"bottom",children:(Gt,nr)=>{var ft=W5(),pt=a(ft),Ut=a(pt);$g(Ut,{className:"size-4"}),r(pt),r(ft),g(Vt=>{k(ft,1,`flex size-[1.875rem] justify-center items-center rounded-lg hover:bg-gray-100 dark:hover:bg-gray-900 transition ${Ue?"cursor-pointer":"cursor-[w-resize]"}`),Be(ft,"aria-label",Vt)},[()=>(x(),c(),l(()=>x()?c().t("Close Sidebar"):c().t("Open Sidebar")))]),ke("click",ft,()=>{$a.set(!x())}),i(Gt,ft)},$$slots:{default:!0}})}var _r=o(ur,2);r(Et);var br=o(Et,2),kt=a(br),jr=a(kt),qt=a(jr),At=a(qt),Ot=a(At);Id(Ot,{className:" size-4",strokeWidth:"1.5"}),r(At);var Ht=o(At,2),Xt=a(Ht),er=a(Xt,!0);r(Xt),r(Ht);var xr=o(Ht,2);Fg(xr,{name:"newChat",className:" hover-reveal "}),r(qt),r(jr);var Qt=o(jr,2),fr=a(Qt),wt=a(fr),ht=a(wt);Nu(ht,{strokeWidth:"1.5",className:"size-4"}),r(wt);var zt=o(wt,2),ir=a(zt),dr=a(ir,!0);r(ir),r(zt);var Ct=o(zt,2);Fg(Ct,{name:"search",className:" hover-reveal "}),r(fr),r(Qt);var Er=o(Qt,2);lr(Er,5,()=>e(m),Pt=>Pt,(Pt,Gt)=>{const nr=v(()=>(e(Gt),l(()=>_e(e(Gt)))));var ft=Wr(),pt=Qe(ft);{var Ut=Dr=>{var Yr=z5(),Nr=a(Yr),zr=a(Nr),Fr=a(zr);{var Rr=Pr=>{Fs(Pr,{className:"size-4",strokeWidth:"1.5"})},Ur=Pr=>{Eu(Pr,{className:"size-4",strokeWidth:"1.5"})},Vr=Pr=>{wu(Pr,{className:"size-4",strokeWidth:"1.5"})},qr=Pr=>{$u(Pr,{className:"size-4",strokeWidth:"1.5"})},Zr=Pr=>{ku(Pr,{className:"size-4",strokeWidth:"1.5"})};G(Fr,Pr=>{e(Gt)==="notes"?Pr(Rr):e(Gt)==="workspace"?Pr(Ur,1):e(Gt)==="automations"?Pr(Vr,2):e(Gt)==="calendar"?Pr(qr,3):e(Gt)==="playground"&&Pr(Zr,4)})}r(zr);var ta=o(zr,2),oa=a(ta),da=a(oa,!0);r(oa),r(ta),r(Nr),r(Yr),g((Pr,Ea)=>{Be(Yr,"data-id",e(Gt)),Be(Nr,"id",`sidebar-${e(Gt)??""}-button`),k(Nr,1,`grow flex items-center space-x-2 rounded-xl px-2 py-1.5 transition ${e(Gt),e(ce),n(),l(()=>{var Ma;return e(Gt)===e(ce)?((Ma=n())==null?void 0:Ma.highContrastMode)??!1?"bg-black/[0.035] dark:bg-white/[0.06]":"bg-black/[0.035] dark:bg-white/[0.045]":"hover:bg-gray-100 dark:hover:bg-gray-900"})??""}`,"svelte-6dohdz"),Be(Nr,"href",(it(e(nr)),l(()=>e(nr).href))),Be(Nr,"aria-label",Pr),d(da,Ea)},[()=>(c(),it(e(nr)),l(()=>c().t(e(nr).label))),()=>(c(),it(e(nr)),l(()=>c().t(e(nr).label)))]),ke("click",Nr,z),i(Dr,Yr)},Vt=Qr(()=>(it(e(nr)),e(Gt),l(()=>e(nr)&&ge(e(Gt)))));G(pt,Dr=>{e(Vt)&&Dr(Ut)})}i(Pt,ft)}),r(Er),r(kt);var Bt=o(kt,2);{var Ft=Pt=>{{let Gt=v(()=>(c(),l(()=>c().t("Models"))));Ns(Pt,{id:"sidebar-models",get name(){return e(Gt)},dragAndDrop:!1,get open(){return e(ue)},set open(nr){s(ue,nr)},children:(nr,ft)=>{P5(nr,{get shiftKey(){return e(we)},get selectedChatId(){return e(oe)},set selectedChatId(pt){s(oe,pt)},$$legacy:!0})},$$slots:{default:!0},$$legacy:!0})}};G(Bt,Pt=>{w(),l(()=>w().length>0)&&Pt(Ft)})}var Zt=o(Bt,2);{var wr=Pt=>{{let Gt=v(()=>(c(),l(()=>c().t("Notes")))),nr=v(()=>(c(),l(()=>c().t("New Note"))));Ns(Pt,{id:"sidebar-pinned-notes",get name(){return e(Gt)},dragAndDrop:!1,onAdd:async()=>
6{const ft=await Hh("New Note");ft&&fa(`/notes/${ft.id}`)},get onAddLabel(){return e(nr)},get open(){return e(xe)},set open(ft){s(xe,ft)},children:(ft,pt)=>{L5(ft,{get selectedChatId(){return e(oe)},set selectedChatId(Ut){s(oe,Ut)},$$legacy:!0})},$$slots:{default:!0},$$legacy:!0})}};G(Zt,Pt=>{Ie(),t(),Te(),l(()=>{var Gt,nr,ft,pt,Ut,Vt;return(((nr=(Gt=Ie())==null?void 0:Gt.features)==null?void 0:nr.enable_notes)??!1)&&(((ft=t())==null?void 0:ft.role)==="admin"||(((Vt=(Ut=(pt=t())==null?void 0:pt.permissions)==null?void 0:Ut.features)==null?void 0:Vt.notes)??!0))&&Te().length>0})&&Pt(wr)})}var kr=o(Zt,2);{var Hr=Pt=>{{let Gt=v(()=>(c(),l(()=>c().t("Channels")))),nr=v(()=>(t(),it(na),e(de),l(()=>{var pt,Ut,Vt,Dr;return((pt=t())==null?void 0:pt.role)==="admin"||(((Dr=(Vt=(Ut=t())==null?void 0:Ut.permissions)==null?void 0:Vt.features)==null?void 0:Dr.channels)??!0)?async()=>{await na(),setTimeout(()=>{s(de,!0)},0)}:null}))),ft=v(()=>(c(),l(()=>c().t("Create Channel"))));Ns(Pt,{id:"sidebar-channels",get name(){return e(Gt)},dragAndDrop:!1,get onAdd(){return e(nr)},get onAddLabel(){return e(ft)},get open(){return e(K)},set open(pt){s(K,pt)},children:(pt,Ut)=>{var Vt=Wr(),Dr=Qe(Vt);lr(Dr,3,Se,Yr=>`${Yr==null?void 0:Yr.id}`,(Yr,Nr,zr)=>{var Fr=zc(),Rr=Qe(Fr);V$(Rr,{get channel(){return e(Nr)},onUpdate:async()=>{await F()}});var Ur=o(Rr,2);{var Vr=qr=>{var Zr=K5();i(qr,Zr)};G(Ur,qr=>{it(e(zr)),Se(),e(Nr),l(()=>{var Zr;return e(zr)<Se().length-1&&e(Nr).type!==((Zr=Se()[e(zr)+1])==null?void 0:Zr.type)})&&qr(Vr)})}i(Yr,Fr)}),i(pt,Vt)},$$slots:{default:!0},$$legacy:!0})}};G(kr,Pt=>{Ie(),t(),l(()=>{var Gt,nr,ft,pt,Ut,Vt;return((nr=(Gt=Ie())==null?void 0:Gt.features)==null?void 0:nr.enable_channels)&&(((ft=t())==null?void 0:ft.role)==="admin"||(((Vt=(Ut=(pt=t())==null?void 0:pt.permissions)==null?void 0:Ut.features)==null?void 0:Vt.channels)??!0))})&&Pt(Hr)})}var yr=o(kr,2);{var Sr=Pt=>{{let Gt=v(()=>(c(),l(()=>c().t("Folders")))),nr=v(()=>(c(),l(()=>c().t("New Folder"))));Ns(Pt,{id:"sidebar-folders",get name(){return e(Gt)},onAdd:()=>{s(Re,!0)},get onAddLabel(){return e(nr)},get open(){return e(Oe)},set open(ft){s(Oe,ft)},$$events:{drop:async ft=>{const{type:pt,id:Ut,item:Vt}=ft.detail;if(pt==="folder"){if(e(ie)[Ut].parent_id===null)return;await gu(localStorage.token,Ut,null).catch(Yr=>(rt.error(`${Yr}`),null))&&await C()}}},children:(ft,pt)=>{_$(ft,{get folders(){return e(ie)},get shiftKey(){return e(we)},onFolderUnreadCounts:q,onDelete:Ut=>{Ul.set(null),H()},get folderRegistry(){return e(M)},set folderRegistry(Ut){s(M,Ut)},$$events:{update:()=>{H()},import:Ut=>{const{folderId:Vt,items:Dr}=Ut.detail;re(Dr,!1,Vt)},change:async()=>{H()}},$$legacy:!0})},$$slots:{default:!0},$$legacy:!0})}};G(yr,Pt=>{Ie(),t(),l(()=>{var Gt,nr,ft,pt,Ut,Vt;return((nr=(Gt=Ie())==null?void 0:Gt.features)==null?void 0:nr.enable_folders)&&(((ft=t())==null?void 0:ft.role)==="admin"||(((Vt=(Ut=(pt=t())==null?void 0:pt.permissions)==null?void 0:Ut.features)==null?void 0:Vt.folders)??!0))})&&Pt(Sr)})}var Br=o(yr,2);{let Pt=v(()=>(c(),l(()=>c().t("Chats"))));Ns(Br,{id:"sidebar-chats",get name(){return e(Pt)},$$events:{change:async Gt=>{Ul.set(null)},import:Gt=>{re(Gt.detail)},drop:async Gt=>{var Ut;const{type:nr,id:ft,item:pt}=Gt.detail;if(nr==="chat"){let Vt=await Cl(localStorage.token,ft).catch(Dr=>null);if(!Vt&&pt){if(!e(se)){rt.error(c().t("Access prohibited"));return}Vt=await Rs(localStorage.token,[{chat:pt.chat,meta:(pt==null?void 0:pt.meta)??{},pinned:!1,folder_id:null,created_at:(pt==null?void 0:pt.created_at)??null,updated_at:(pt==null?void 0:pt.updated_at)??null}])}if(Vt){if(!Vt.folder_id&&!Vt.pinned)return;Vt.folder_id&&(await js(localStorage.token,Vt.id,null).catch(Dr=>(rt.error(`${Dr}`),null)),(Ut=e(M)[Vt.folder_id])==null||Ut.setFolderItems()),Vt.pinned&&await cu(localStorage.token,Vt.id),H()}}else if(nr==="folder"){if(e(ie)[ft].parent_id===null)return;
6await gu(localStorage.token,ft,null).catch(Dr=>(rt.error(`${Dr}`),null))&&await C()}}},children:(Gt,nr)=>{var ft=X5(),pt=Qe(ft);{var Ut=Fr=>{var Rr=V5(),Ur=a(Rr),Vr=a(Ur);{let qr=v(()=>(c(),l(()=>c().t("Pinned"))));j2(Vr,{id:"sidebar-pinned-chats",buttonClassName:" text-gray-500",get name(){return e(qr)},$$events:{import:Zr=>{re(Zr.detail,!0)},drop:async Zr=>{const{type:ta,id:oa,item:da}=Zr.detail;if(ta==="chat"){let Pr=await Cl(localStorage.token,oa).catch(Ea=>null);if(!Pr&&da){if(!e(se)){rt.error(c().t("Access prohibited"));return}Pr=await Rs(localStorage.token,[{chat:da.chat,meta:(da==null?void 0:da.meta)??{},pinned:!1,folder_id:null,created_at:(da==null?void 0:da.created_at)??null,updated_at:(da==null?void 0:da.updated_at)??null}])}Pr&&(Pr.folder_id&&await js(localStorage.token,Pr.id,null).catch(Ea=>(rt.error(`${Ea}`),null)),Pr.pinned||await cu(localStorage.token,Pr.id),H())}}},children:(Zr,ta)=>{var oa=Y5();lr(oa,7,Y,(da,Pr)=>`pinned-chat-${(da==null?void 0:da.id)??Pr}`,(da,Pr)=>{{let Ea=v(()=>(e(Pr),l(()=>e(Pr).active??!1))),Ma=v(()=>(e(oe),e(Pr),l(()=>e(oe)===e(Pr).id)));Au(da,{className:"",get id(){return e(Pr),l(()=>e(Pr).id)},get title(){return e(Pr),l(()=>e(Pr).title)},get createdAt(){return e(Pr),l(()=>e(Pr).created_at)},get updatedAt(){return e(Pr),l(()=>e(Pr).updated_at)},get lastReadAt(){return e(Pr),l(()=>e(Pr).last_read_at)},get active(){return e(Ea)},get shiftKey(){return e(we)},get selected(){return e(Ma)},onReadStateChange:P,$$events:{select:()=>{s(oe,e(Pr).id)},unselect:()=>{s(oe,null)},change:async()=>{H()},tag:ya=>{const{type:Ra,name:Ha}=ya.detail;$e(Ra,Ha,e(Pr).id)}}})}}),r(oa),i(Zr,oa)},$$slots:{default:!0}})}r(Ur),r(Rr),i(Fr,Rr)};G(pt,Fr=>{Y(),l(()=>Y().length>0)&&Fr(Ut)})}var Vt=o(pt,2),Dr=a(Vt),Yr=a(Dr);{var Nr=Fr=>{var Rr=zc(),Ur=Qe(Rr);lr(Ur,3,ee,(Zr,ta)=>`chat-${(Zr==null?void 0:Zr.id)??ta}`,(Zr,ta,oa)=>{var da=zc(),Pr=Qe(da);{var Ea=ya=>{var Ra=q5(),Ha=a(Ra,!0);r(Ra),g(Xa=>{k(Ra,1,`w-full pl-2.5 text-xs text-gray-500 dark:text-gray-500 font-normal ${e(oa)===0?"":"pt-4"} pb-1`),d(Ha,Xa)},[()=>(c(),e(ta),l(()=>c().t(e(ta).time_range)))]),i(ya,Ra)};G(Pr,ya=>{it(e(oa)),e(ta),ee(),l(()=>e(oa)===0||e(oa)>0&&e(ta).time_range!==ee()[e(oa)-1].time_range)&&ya(Ea)})}var Ma=o(Pr,2);{let ya=v(()=>(e(ta),l(()=>e(ta).active??!1))),Ra=v(()=>(e(oe),e(ta),l(()=>e(oe)===e(ta).id)));Au(Ma,{className:"",get id(){return e(ta),l(()=>e(ta).id)},get title(){return e(ta),l(()=>e(ta).title)},get createdAt(){return e(ta),l(()=>e(ta).created_at)},get updatedAt(){return e(ta),l(()=>e(ta).updated_at)},get lastReadAt(){return e(ta),l(()=>e(ta).last_read_at)},get active(){return e(ya)},get shiftKey(){return e(we)},get selected(){return e(Ra)},onReadStateChange:P,$$events:{select:()=>{s(oe,e(ta).id)},unselect:()=>{s(oe,null)},change:async()=>{H()},tag:Ha=>{const{type:Xa,name:ol}=Ha.detail;$e(Xa,ol,e(ta).id)}}})}i(Zr,da)});var Vr=o(Ur,2);{var qr=Zr=>{Ks(Zr,{$$events:{visible:ta=>{e(be)||he()}},children:(ta,oa)=>{var da=zg(),Pr=a(da);ra(Pr,{className:" size-4"});var Ea=o(Pr,2),Ma=a(Ea,!0);r(Ea),r(da),g(ya=>d(Ma,ya),[()=>(c(),l(()=>c().t("Loading...")))]),i(ta,da)},$$slots:{default:!0}})};G(Vr,Zr=>{e(Me)&&!e(qe)&&Zr(qr)})}i(Fr,Rr)},zr=Fr=>{var Rr=zg(),Ur=a(Rr);ra(Ur,{className:" size-4"});var Vr=o(Ur,2),qr=a(Vr,!0);r(Vr),r(Rr),g(Zr=>d(qr,Zr),[()=>(c(),l(()=>c().t("Loading...")))]),i(Fr,Rr)};G(Yr,Fr=>{ee()?Fr(Nr):Fr(zr,-1)})}r(Dr),r(Vt),i(Gt,ft)},$$slots:{default:!0,action:(Gt,nr)=>{io(Gt,{align:"end",get show(){return e(O)},set show(ft){s(O,ft)},children:(ft,pt)=>{{let Ut=v(()=>(c(),l(()=>c().t("More"))));Lt(ft,{get content(){return e(Ut)},children:(Vt,Dr)=>{var Yr=J5(),Nr=a(Yr);Cd(Nr,{className:"size-3.5",strokeWidth:"2"}),r(Yr),g(zr=>Be(Yr,"aria-label",zr),[()=>(c(),l(()=>c().t("More")))]),i(Vt,Yr)},$$slots:{default:!0}})}},$$slots:{default:!0,content:(ft,pt)=>{var Ut=Q5(),Vt=a(Ut);vo(Vt,{className:"min-w-[10.625rem]",children:(Dr,Yr)=>{var Nr=Z5(),zr=a(Nr);Dd(zr,{className:"size-3.5"});var Fr=o(zr,2),Rr=a(Fr,!0);r(Fr),r(Nr),g(Ur=>d(Rr,Ur),[()=>(c(),l(()=>c().t("Mark all as read")))]),ke("click",Nr,Q),i(Dr,Nr)},$$slots:{default:!0}}),r(Ut),i(ft,Ut)}},$$legacy:!0})}}})}r(br);var pr=o(br,2),sr=o(a(pr),2),Kr=a(sr);{var Yt=Pt=>{{let Gt=v(()=>(t(),l(()=>{var ft;return(ft=t())==null?void 0:ft.role}))),nr=v(()=>(Ie(),l(()=>{var ft,pt;return((pt=(ft=Ie())==null?void 0:ft.features)==null?void 0:pt.enable_user_status)??!0})));Mg(Pt,{get role(){return e(Gt)},get profile(){return e(nr)},className:"w-[calc(var(--sidebar-width)-1rem)]",children:(ft,pt)=>{var Ut=ew(),Vt=a(Ut),Dr=a(Vt),Yr=o(Dr,2);{var Nr=Rr=>{var Ur=Wg(),Vr=a(Ur),qr=a(Vr);k(qr,1,"relative inline-flex size-2.5 rounded-full bg-green-500 border-2 border-white dark:border-gray-900"),r(Vr),r(Ur),i(Rr,Ur)};G(Yr,Rr=>{Ie(),l(()=>{var Ur,Vr;return(Vr=(Ur=Ie())==null?void 0:Ur.features)==null?void 0:Vr.enable_user_status})&&Rr(Nr)})}r(Vt);var zr=o(Vt,2),Fr=a(zr,!0);r(zr),r(Ut),g((Rr,Ur,Vr)=>{Be(Ut,"aria-label",Rr),Be(Dr,"src",(it(ia),t(),l(()=>{var qr;return`${ia}/users/${(qr=t())==null?void 0:qr.id}/profile/image`}))),Be(Dr,"alt",Ur),Be(Dr,"aria-label",Vr),d(Fr,(t(),l(()=>{var qr;return(qr=t())==null?void 0:qr.name})))},[()=>(c(),l(()=>c().t("User menu"))),()=>(c(),l(()=>c().t("Open User Profile Menu"))),()=>(c(),l(()=>c().t("Open User Profile Menu")))]),i(ft,Ut)},$$slots:{default:!0}})}};G(Kr,Pt=>{t()!==void 0&&t()!==null&&Pt(Yt)})}r(sr),r(pr),r($r),r(or),Oa(or,Pt=>s(Ce,Pt),()=>e(Ce));var Or=o(or,2);{var Lr=Pt=>{var Gt=tw();ke("pointerdown",Gt,L),i(Pt,Gt)};G(Or,Pt=>{!R()&&e(ot)&&Pt(Lr)})}g((Pt,Gt,nr,ft,pt)=>{Be(or,"id",e(ot)?"sidebar":void 0),Be(or,"aria-label",Pt),Be(or,"aria-hidden",!x()),or.inert=!x(),k(or,1,`h-screen max-h-[100dvh] min-h-screen select-none ${R()?e(ot)?"bg-gray-50 dark:bg-gray-950 z-50":"bg-transparent z-0 pointer-events-none":`bg-gray-50 dark:bg-gray-950 z-50 ${x()?"":"pointer-events-none"}`} ${V()?"ml-[4.5rem] md:ml-0 ":(R(),"")} shrink-0 text-gray-700 dark:text-gray-300 text-[0.8125rem] leading-5 fixed top-0 left-0 overflow-x-hidden 7 `,"svelte-6dohdz"),bl(or,R()?e(_t):`width: ${x()?"var(--sidebar-width)":"0"}; transition: width 250ms cubic-bezier(0.22, 1, 0.36, 1);`),Be(or,"data-state",x()),Be(Dt,"src",`${No}/static/favicon.png`),d(tr,j()),k(_r,1,`${e(Ne)>0?"visible":"invisible"} sidebar-bg-gradient-to-b bg-linear-to-b from-gray-50 dark:from-gray-950 to-transparent from-50% pointer-events-none absolute inset-0 -z-10 -mb-6`),Be(qt,"aria-label",Gt),d(er,nr),Be(fr,"aria-label",ft),d(dr,pt)},[()=>(c(),l(()=>c().t("Chat history"))),()=>(c(),l(()=>c().t("New Chat"))),()=>(c(),l(()=>c().t("New Chat"))),()=>(c(),l(()=>c().t("Search"))),()=>(c(),l(()=>c().t("Search")))]),ke("click",St,N),ke("click",ar,N),ke("click",qt,N),ke("click",fr,()=>{Zo.set(!0)}),ke("scroll",br,Pt=>{Pt.target.scrollTop===0?s(Ne,0):s(Ne,Pt.target.scrollTop)}),i(Rt,Wt)};G($t,Rt=>{(e(ot)||!R())&&Rt(rr)})}ke("click",jt,()=>{fa("/"),N()}),i(Ke,et)}}}
7),i(He,Ye),cr(),Pe()}var sw=u('<div class="py-2.5 space-y-2.5"><div class="flex flex-col w-full"><div class="mb-1 text-xs text-gray-600 dark:text-gray-400"> </div> <div class="flex-1"><!></div></div> <div class="flex flex-col w-full"><div class="mb-1 text-xs text-gray-600 dark:text-gray-400"> </div> <div class="flex-1"><!></div></div> <div class="flex flex-col w-full"><div class="mb-1 text-xs text-gray-600 dark:text-gray-400"> </div> <div class="flex-1"><!></div></div></div> <div class="flex justify-end"><button> </button></div>',1),nw=u('<form class="flex flex-col text-sm"><div class="flex items-center justify-between gap-2.5"><div class="text-xs text-gray-600 dark:text-gray-400"> </div> <button type="button"> </button></div> <p class="mt-0.5 text-[0.6875rem] text-gray-400 dark:text-gray-600"> </p> <!></form>');function iw(He,_){vr(_,!1);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr(),Ie=mr("i18n");let X=h(!1),R=h(""),I=h(""),c=h("");const x="text-xs text-gray-500 transition-colors hover:text-gray-900 dark:text-gray-500 dark:hover:text-white",A=async()=>{if(e(I)===e(c)){if(await Fh(localStorage.token,e(R),e(I)).catch(se=>(rt.error(`${se}`),null))){rt.success(t().t("Password updated. Please sign in again."));const se=await Ru().catch(m=>null);localStorage.removeItem("token"),location.href=Du(se==null?void 0:se.redirect_url)}s(R,""),s(I,""),s(c,"")}else rt.error(t().t("The passwords you entered don't quite match. Please double-check and try again.")),s(I,""),s(c,"")};gr();var E=nw(),V=a(E),B=a(V),j=a(B,!0);r(B);var w=o(B,2);k(w,1,me(x));var Te=a(w,!0);r(w),r(V);var Se=o(V,2),Y=a(Se,!0);r(Se);var ee=o(Se,2);{var ae=Pe=>{var se=sw(),m=Qe(se),ce=a(m),De=a(ce),Le=a(De,!0);r(De);var Ne=o(De,2),Ce=a(Ne);{let M=v(()=>t().t("Enter your current password"));Cr(Ce,{variant:"settings",type:"password",get placeholder(){return e(M)},autocomplete:"current-password",required:!0,get value(){return e(R)},set value(ve){s(R,ve)},$$legacy:!0})}r(Ne),r(ce);var we=o(ce,2),oe=a(we),de=a(oe,!0);r(oe);var be=o(oe,2),Me=a(be);{let M=v(()=>t().t("Enter your new password"));Cr(Me,{variant:"settings",type:"password",get placeholder(){return e(M)},autocomplete:"new-password",required:!0,get value(){return e(I)},set value(ve){s(I,ve)},$$legacy:!0})}r(be),r(we);var qe=o(we,2),Re=a(qe),ue=a(Re,!0);r(Re);var xe=o(Re,2),K=a(xe);{let M=v(()=>t().t("Confirm your new password"));Cr(K,{variant:"settings",type:"password",get placeholder(){return e(M)},autocomplete:"off",required:!0,get value(){return e(c)},set value(ve){s(c,ve)},$$legacy:!0})}r(xe),r(qe),r(m);var Oe=o(m,2),O=a(Oe);k(O,1,me(x));var ie=a(O,!0);r(O),r(Oe),g((M,ve,te,ge)=>{d(Le,M),d(de,ve),d(ue,te),d(ie,ge)},[()=>t().t("Current Password"),()=>t().t("New Password"),()=>t().t("Confirm Password"),()=>t().t("Update password")]),i(Pe,se)};G(ee,Pe=>{e(X)&&Pe(ae)})}r(E),g((Pe,se,m)=>{d(j,Pe),d(Te,se),d(Y,m)},[()=>t().t("Change Password"),()=>e(X)?t().t("Hide"):t().t("Show"),()=>t().t("Update the password used for email and password sign-in.")]),ke("click",w,()=>{s(X,!e(X))}),ke("submit",E,ca(()=>{A()})),i(He,E),cr(),n()}var dw=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" stroke="currentColor" fill="none" viewBox="0 0 24 24"><path d="M21.8883 13.5C21.1645 18.3113 17.013 22 12 22C6.47715 22 2 17.5228 2 12C2 6.47715 6.47715 2 12 2C16.1006 2 19.6248 4.46819 21.1679 8" stroke-linecap="round" stroke-linejoin="round"></path><path d="M17 8H21.4C21.7314 8 22 7.73137 22 7.4V3" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function Yf(He,_){let t=Xe(_,"className",8,"w-4 h-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=dw();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}var vw=u('<label class="text-xs text-gray-600 dark:text-gray-400"> </label>'),cw=u('<p class="mt-0.5 text-[0.6875rem] text-gray-400 dark:text-gray-600"> </p>'),uw=u("<div><!> <div><!></div> <!></div>");function Pl(He,_){let t=Xe(_,"label",8,""),f=Xe(_,"description",8,""),n=Xe(_,"forId",8,""),Ie=Xe(_,"className",8,"");var X=uw(),R=a(X);{var I=V=>{var B=vw(),j=a(B,!0);r(B),g(()=>{Be(B,"for",n()||void 0),d(j,t())}),i(V,B)};G(R,V=>{t()&&V(I)})}var c=o(R,2),x=a(c);Ka(x,_,"default",{},null),r(c);var A=o(c,2);{var E=V=>{var B=cw(),j=a(B,!0);r(B),g(()=>d(j,f())),i(V,B)};G(A,V=>{f()&&V(E)})}r(X),g(()=>{k(X,1,me(Ie())),k(c,1,me(t()?"mt-1":""))}),i(He,X)}var gw=u('<p class="-mt-1 text-[0.6875rem] text-gray-400 dark:text-gray-600"> </p>
7'),_w=u('<div><div><!></div> <div class="min-w-0"><!></div></div> <!>',1);function xa(He,_){let t=Xe(_,"label",8,""),f=Xe(_,"description",8,""),n=Xe(_,"className",8,""),Ie=Xe(_,"labelClassName",8,"");var X=_w(),R=Qe(X),I=a(R),c=a(I);Ka(c,_,"label",{},B=>{var j=Mr();g(()=>d(j,t())),i(B,j)}),r(I);var x=o(I,2),A=a(x);Ka(A,_,"default",{},null),r(x),r(R);var E=o(R,2);{var V=B=>{var j=gw(),w=a(j,!0);r(j),g(()=>d(w,f())),i(B,j)};G(E,B=>{f()&&B(V)})}g(()=>{k(R,1,`flex items-center justify-between gap-2.5 ${n()??""}`),k(I,1,`min-w-0 text-xs text-gray-600 dark:text-gray-400 ${Ie()??""}`)}),i(He,X)}var fw=u("<!>",1),pw=u("<div><select><!></select> <!></div>");function aa(He,_){const t=xg(_,["children","$$slots","$$events","$$legacy"]),f=xg(t,["value","id","name","ariaLabel","placeholder","required","disabled","className","selectClassName"]);let n=Xe(_,"value",12,""),Ie=Xe(_,"id",8,""),X=Xe(_,"name",8,""),R=Xe(_,"ariaLabel",8,""),I=Xe(_,"placeholder",8,""),c=Xe(_,"required",8,!1),x=Xe(_,"disabled",8,!1),A=Xe(_,"className",8,"w-fit max-w-full"),E=Xe(_,"selectClassName",8,"");var V=pw(),B=a(V);om(B,()=>({...f,id:Ie()||void 0,name:X()||void 0,"aria-label":R()||void 0,title:I()||void 0,required:c(),disabled:x(),class:`h-7 w-full max-w-full appearance-none truncate rounded-lg border border-gray-100/50 !bg-gray-50/40 ps-2.5 pe-8 text-left text-xs text-gray-700 outline-hidden transition-colors ![background-image:none] [appearance:none] [field-sizing:content] [-webkit-appearance:none] focus:border-blue-400 disabled:opacity-50 dark:border-white/[0.04] dark:!bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500 ${E()??""}`})),qb(B,()=>{var w=a(B),Te=fw(),Se=Qe(Te);Ka(Se,_,"default",{},null),i(w,Te)});var j=o(B,2);Ba(j,{className:"pointer-events-none absolute end-2 top-1/2 size-3.5 -translate-y-1/2 text-gray-400 dark:text-gray-500",strokeWidth:"2"}),r(V),g(()=>k(V,1,`relative inline-flex ${A()??""}`)),al(B,n),ke("change",B,function(w){Mx.call(this,_,w)}),i(He,V)}var mw=u('<h3 class="mb-2 text-xs text-gray-600 dark:text-gray-400"> </h3>'),hw=u('<section><!> <div class="flex flex-col gap-2.5"><!></div></section>');function Na(He,_){let t=Xe(_,"title",8,""),f=Xe(_,"first",8,!1),n=Xe(_,"className",8,"");var Ie=hw(),X=a(Ie);{var R=x=>{var A=mw(),E=a(A,!0);r(A),g(()=>d(E,t())),i(x,A)};G(X,x=>{t()&&x(R)})}var I=o(X,2),c=a(I);Ka(c,_,"default",{},null),r(I),r(Ie),g(()=>k(Ie,1,`w-full ${f()?"":"mt-4"} ${n()??""}`)),i(He,Ie)}var Kg=u('<input type="text" required=""/>'),xw=u('<option selected=""> </option> <option> </option> <option> </option> <option> </option>',1),Yg=u("<!> <!>",1),bw=u('<input type="date" required=""/>'),yw=u("<!> <!> <!> <!> <!>",1),$w=u('<div><div class="min-w-0 truncate font-mono text-xs text-gray-700 dark:text-gray-300"> </div> <div class="min-w-0 flex-1 truncate text-xs text-gray-500 dark:text-gray-500"> </div> <button type="button"> </button></div>'),ww=u('<div class="text-xs text-gray-400 dark:text-gray-600"> </div>'),kw=u('<button type="button"> </button>'),Ew=u('<span slot="label"> </span>'),Vg=Jr('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="w-4 h-4"><path fill-rule="evenodd" d="M16.704 4.153a.75.75 0 01.143 1.052l-8 10.5a.75.75 0 01-1.127.075l-4.5-4.5a.75.75 0 011.06-1.06l3.894 3.893 7.48-9.817a.75.75 0 011.05-.143z" clip-rule="evenodd"></path></svg>'),qg=Jr('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="w-4 h-4"><path fill-rule="evenodd" d="M11.986 3H12a2 2 0 0 1 2 2v6a2 2 0 0 1-1.5 1.937V7A2.5 2.5 0 0 0 10 4.5H4.063A2 2 0 0 1 6 3h.014A2.25 2.25 0 0 1 8.25 1h1.5a2.25 2.25 0 0 1 2.236 2ZM10.5 4v-.75a.75.75 0 0 0-.75-.75h-1.5a.75.75 0 0 0-.75.75V4h3Z" clip-rule="evenodd"></path><path fill-rule="evenodd" d="M3 6a1 1 0 0 0-1 1v7a1 1 0 0 0 1 1h7a1 1 0 0 0 1-1V7a1 1 0 0 0-1-1H3Zm1.75 2.5a.75.75 0 0 0 0 1.5h3.5a.75.75 0 0 0 0-1.5h-3.5ZM4 11.75a.75.75 0 0 1 .75-.75h3.5a.75.75 0 0 1 0 1.5h-3.5a.75.75 0 0 1-.75-.75Z" clip-rule="evenodd"></path></svg>'),Aw=u('<div class="flex"><!> <button class="ml-1.5 rounded-sm px-1.5 py-1 text-gray-500 transition hover:text-gray-700 dark:hover:text-gray-300"><!></button></div>'),Iw=u('<button type="button" class="rounded-sm px-1.5 py-1 text-gray-500 transition hover:text-gray-700 dark:hover:text-gray-300"><!></button>'),Sw=u('<button type="button"><!> <div class="flex items-center"> </div></button> <hr class="border-gray-50 dark:border-gray-850/30"/> <button type="button"><!> <div class="flex items-center"> </div></button>',1),Nw=u('<div slot="content"><!></div>'),Pw=u('<!> <button class="ml-1.5 rounded-sm px-1.5 py-1 text-gray-500 transition hover:text-gray-700 dark:hover:text-gray-300"><!></button> <!>',1),Cw=u('<button type="button"><!> </button>
7'),Tw=u('<div class="flex"><!></div>'),Lw=u('<div class="flex flex-col gap-2.5"><!> <!></div>'),Ow=u('<div class="text-sm text-gray-500"> </div>'),Mw=u('<button class="text-xs text-gray-500 transition-colors hover:text-gray-900 dark:text-gray-500 dark:hover:text-white" type="button"> </button>'),Rw=u('<form class="p-4"><h2 class="mb-3 text-sm font-medium text-gray-900 dark:text-white"> </h2> <div class="mb-1 text-[0.625rem] text-gray-400 dark:text-gray-600"> </div> <input type="text" autocomplete="off" spellcheck="false"/> <div class="mb-1 mt-3 text-[0.625rem] text-gray-400 dark:text-gray-600"> </div> <!> <div class="mt-4 flex items-center justify-between gap-2"><div><!></div> <div class="flex items-center gap-3"><button class="text-xs text-gray-500 transition-colors hover:text-gray-900 dark:text-gray-500 dark:hover:text-white" type="button"> </button> <button class="rounded-full bg-black px-3.5 py-1.5 text-sm font-normal text-white transition hover:bg-gray-900 dark:bg-white dark:text-black dark:hover:bg-gray-100" type="submit"> </button></div></div></form>'),Dw=u('<div id="tab-account" class="flex h-full flex-col text-sm"><div class="flex-1 min-h-0 w-full overflow-y-auto scrollbar-hover pr-1.5"><h2 class="mb-4 text-sm font-medium text-gray-900 dark:text-white"> </h2> <!> <section class="mt-4 w-full"><div class="mb-0.5 flex items-center justify-between gap-2 text-xs text-gray-600 dark:text-gray-400"><div class="flex min-w-0 items-center gap-1.5"> <span class="text-gray-400 dark:text-gray-600"> </span></div> <button type="button"> </button></div> <div class="flex flex-col gap-1 py-1"><!> <!></div> <div class="text-[0.6875rem] text-gray-400 dark:text-gray-600"> </div></section> <!> <!></div> <div class="shrink-0 flex w-full justify-end pt-3 text-sm font-normal"><button class="px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full"> </button></div></div> <!> <!>',1);function Uw(He,_){vr(_,!1);const t=()=>ct(R,"$i18n",Ie),f=()=>ct(ka,"$user",Ie),n=()=>ct(_a,"$config",Ie),[Ie,X]=hr(),R=mr("i18n");let I=Xe(_,"saveHandler",8),c=h(""),x=h(""),A=h(""),E=h(""),V=h(""),B=h(""),j=h(!1),w=h(!1),Te=h(""),Se=h(!1),Y=h(!1),ee=h(!1),ae=h([]),Pe=h(!1),se=h(null),m=h(""),ce=h("");const De="w-full resize-y rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500",Le="h-7 w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500",Ne="w-full resize-none rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500",Ce="text-xs text-gray-500 transition-colors hover:text-gray-900 dark:text-gray-500 dark:hover:text-white",we="flex w-full items-center gap-1.5",oe=/^[a-z][a-z0-9_]*$/,de=(ne={})=>{s(ae,Object.entries(ne).map(([J,W])=>({key:J,value:String(W??"")})))},be=(ne=null)=>{const J=ne===null?null:e(ae)[ne];s(se,ne),s(m,(J==null?void 0:J.key)??""),s(ce,(J==null?void 0:J.value)??""),s(Pe,!0)},Me=ne=>{s(ae,e(ae).filter((J,W)=>W!==ne))},qe=()=>{const ne=e(m).trim();if(!oe.test(ne)){rt.error(t().t("Variable keys must use lowercase snake case."));return}if(e(ae).some((W,Z)=>Z!==e(se)&&W.key===ne)){rt.error(t().t("Variable keys must be unique."));return}const J={key:ne,value:e(ce)??""};s(ae,e(se)===null?[...e(ae),J]:e(ae).map((W,Z)=>Z===e(se)?J:W)),s(Pe,!1)},Re=()=>{e(se)!==null&&Me(e(se)),s(Pe,!1)},ue=()=>{const ne={};for(const J of e(ae)){const W=J.key.trim();if(!(!W&&!J.value)){if(!oe.test(W))throw t().t("Variable keys must use lowercase snake case.");if(Object.prototype.hasOwnProperty.call(ne,W))throw t().t("Variable keys must be unique.");ne[W]=J.value??""}}return ne},xe=async()=>{var Z,Ee;let ne;try{ne=ue()}catch(Ge){return rt.error(`${Ge}`),!1}e(x)!==((Z=f())==null?void 0:Z.name)&&(e(c)===ug((Ee=f())==null?void 0:Ee.name)||e(c)==="")&&s(c,ug(e(x)));const J=await zh(localStorage.token,{name:e(x),profile_image_url:e(c),bio:e(A)?e(A):null,gender:e(V)?e(V):null,date_of_birth:e(B)?e(B):null}).catch(Ge=>{rt.error(`${Ge}`)}),W=await th(localStorage.token,ne).catch(Ge=>(rt.error(`${Ge}`),null));if(J&&W){de(W.variables??{});const Ge=await Ad(localStorage.token).catch(p=>(rt.error(`${p}`),null));return await ka.set(Ge),!0}return!1},K=async()=>{s(Te,await Yh(localStorage.token)),e(Te)?rt.success(t().t("API Key created.")):rt.error(t().t("Failed to create API Key."))},Oe=async()=>{await Kh(localStorage.token).catch(J=>(rt.error(`${J}`),!1))&&(s(Te,""),rt.success(t().t("API Key deleted.")))};ea(async()=>{var W,Z,Ee,Ge;const ne=await Ad(localStorage.token).catch(p=>(rt.error(`${p}`),null));ne&&(s(x,(ne==null?void 0:ne.name)??""),s(c,(ne==null?void 0:ne.profile_image_url)??""),s(A,(ne==null?void 0:ne.bio)??""),s(E,(ne==null?void 0:ne.gender)??""),s(V,e(E)),s(B,(ne==null?void 0:ne.date_of_birth)??""));const J=await eh(localStorage.token).catch(p=>(rt.error(`${p}`),null));de((J==null?void 0:J.variables)??{}),ne&&(((Z=(W=n())==null?void 0:W.features)==null?void 0:Z.enable_api_keys)??!0)&&((ne==null?void 0:ne.role)==="admin"||(((Ge=(Ee=ne==null?void 0:ne.permissions)==null?void 0:Ee.features)==null?void 0:Ge.api_keys)??!1))&&s(Te,await Wh(localStorage.token).catch(p=>""))}),gr();var O=Dw(),ie=Qe(O),M=a(ie),ve=a(M),te=a(ve,!0);r(ve);var ge=o(ve,2);{let ne=v(()=>(t(),l(()=>t().t("Profile"))));Na(ge,{get title(){return e(ne)},first:!0,children:(J,W)=>{var Z=yw(),Ee=Qe(Z);{let L=v(()=>(f(),l(()=>{var fe;return(fe=f())==null?void 0:fe.name})));Lx(Ee,{get user(){return f()},variant:"account",get displayName(){return e(L)},get profileImageUrl(){return e(c)},set profileImageUrl(fe){s(c,fe)},$$legacy:!0})}var Ge=o(Ee,2);{let L=v(()=>(t(),l(()=>t().t("Name")))),fe=v(()=>(t(),l(()=>t().t("Set the display name shown across your account."))));Pl(Ge,{get label(){return e(L)},get description(){return e(fe)},children:(y,b)=>{var N=Kg();vt(N),k(N,1,me(Le)),g((z,Ue)=>{Be(N,"aria-label",z),Be(N,"placeholder",Ue)},[()=>(t(),l(()=>t().t("Name"))),()=>(t(),l(()=>t().t("Enter your name")))]),dt(N,()=>e(x),z=>s(x,z)),i(y,N)},$$slots:{default:!0}})}var p=o(Ge,2);{let L=v(()=>(t(),l(()=>t().t("Bio")))),fe=v(()=>(t(),l(()=>t().t("Add optional profile context visible where profiles are shown.")))
7);Pl(p,{get label(){return e(L)},get description(){return e(fe)},children:(y,b)=>{{let N=v(()=>(t(),l(()=>t().t("Bio")))),z=v(()=>(t(),l(()=>t().t("Share your background and interests"))));ma(y,{className:De,minSize:60,get ariaLabel(){return e(N)},get placeholder(){return e(z)},get value(){return e(A)},set value(Ue){s(A,Ue)},$$legacy:!0})}},$$slots:{default:!0}})}var $=o(p,2);{let L=v(()=>(t(),l(()=>t().t("Gender")))),fe=v(()=>(t(),l(()=>t().t("Choose the gender value stored on your profile."))));Pl($,{get label(){return e(L)},get description(){return e(fe)},children:(y,b)=>{var N=Yg(),z=Qe(N);{let Ve=v(()=>(t(),l(()=>t().t("Gender"))));aa(z,{className:"w-full",get ariaLabel(){return e(Ve)},get value(){return e(E)},set value(lt){s(E,lt)},$$events:{change:()=>{e(E),e(E)==="custom"?s(V,""):s(V,e(E))}},children:(lt,st)=>{var Ke=xw(),Ze=Qe(Ke),ot=a(Ze,!0);r(Ze),Ze.value=Ze.__value="";var ut=o(Ze,2),_t=a(ut,!0);r(ut),ut.value=ut.__value="male";var nt=o(ut,2),et=a(nt,!0);r(nt),nt.value=nt.__value="female";var gt=o(nt,2),It=a(gt,!0);r(gt),gt.value=gt.__value="custom",g((Mt,jt,Tt,yt)=>{d(ot,Mt),d(_t,jt),d(et,Tt),d(It,yt)},[()=>(t(),l(()=>t().t("Prefer not to say"))),()=>(t(),l(()=>t().t("Male"))),()=>(t(),l(()=>t().t("Female"))),()=>(t(),l(()=>t().t("Custom")))]),i(lt,Ke)},$$slots:{default:!0},$$legacy:!0})}var Ue=o(z,2);{var Ye=Ve=>{var lt=Kg();vt(lt),k(lt,1,"mt-1 h-7 w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500"),g((st,Ke)=>{Be(lt,"aria-label",st),Be(lt,"placeholder",Ke)},[()=>(t(),l(()=>t().t("Custom Gender"))),()=>(t(),l(()=>t().t("Enter your gender")))]),dt(lt,()=>e(V),st=>s(V,st)),i(Ve,lt)};G(Ue,Ve=>{e(E)==="custom"&&Ve(Ye)})}i(y,N)},$$slots:{default:!0}})}var S=o($,2);{let L=v(()=>(t(),l(()=>t().t("Birth Date")))),fe=v(()=>(t(),l(()=>t().t("Set the birth date saved with your profile."))));Pl(S,{get label(){return e(L)},get description(){return e(fe)},children:(y,b)=>{var N=bw();vt(N),k(N,1,"h-7 w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500 dark:scheme-dark"),g(z=>Be(N,"aria-label",z),[()=>(t(),l(()=>t().t("Birth Date")))]),dt(N,()=>e(B),z=>s(B,z)),i(y,N)},$$slots:{default:!0}})}i(J,Z)},$$slots:{default:!0}})}var _e=o(ge,2),Ae=a(_e),U=a(Ae),T=a(U),C=o(T),D=a(C,!0);r(C),r(U);var F=o(U,2);k(F,1,me(Ce));var H=a(F,!0);r(F),r(Ae);var pe=o(Ae,2),ye=a(pe);lr(ye,1,()=>e(ae),Ar,(ne,J,W)=>{var Z=$w();k(Z,1,me(we));var Ee=a(Z),Ge=a(Ee,!0);r(Ee);var p=o(Ee,2),$=a(p,!0);r(p);var S=o(p,2);k(S,1,me(Ce));var L=a(S,!0);r(S),r(Z),g((fe,y,b)=>{d(Ge,fe),d($,y),d(L,b)},[()=>(e(J),t(),l(()=>e(J).key||t().t("key_name"))),()=>(e(J),t(),l(()=>e(J).value||t().t("Empty"))),()=>(t(),l(()=>t().t("Edit")))]),ke("click",S,()=>be(W)),i(ne,Z)});var he=o(ye,2);{var q=ne=>{var J=ww(),W=a(J,!0);r(J),g(Z=>d(W,Z),[()=>(t(),l(()=>t().t("No user variables configured.")))]),i(ne,J)};G(he,ne=>{e(ae),l(()=>e(ae).length===0)&&ne(q)})}r(pe);var P=o(pe,2),Q=a(P,!0);r(P),r(_e);var re=o(_e,2);{var le=ne=>{{let J=v(()=>(t(),l(()=>t().t("Password"))));Na(ne,{get title(){return e(J)},children:(W,Z)=>{iw(W,{})},$$slots:{default:!0}})}};G(re,ne=>{n(),l(()=>{var J,W;return((J=n())==null?void 0:J.features.enable_login_form)&&((W=n())==null?void 0:W.features.enable_password_change_form)})&&ne(le)})}var $e=o(re,2);{var ze=ne=>{{let J=v(()=>(t(),l(()=>t().t("API keys"))));Na(ne,{get title(){return e(J)},children:(W,Z)=>{var Ee=Yg(),Ge=Qe(Ee);{let S=v(()=>(t(),l(()=>t().t("Show or hide sensitive account secrets."))));xa(Ge,{get description(){return e(S)},children:(L,fe)=>{var y=kw();k(y,1,me(Ce));var b=a(y,!0);r(y),g(N=>d(b,N),[()=>(e(j),t(),l(()=>e(j)?t().t("Hide"):t().t("Show")))]),ke("click",y,()=>{s(j,!e(j))}),i(L,y)},$$slots:{default:!0,label:(L,fe)=>{var y=Ew(),b=a(y,!0);r(y),g(N=>
7d(b,N),[()=>(t(),l(()=>t().t("Secrets")))]),i(L,y)}}})}var p=o(Ge,2);{var $=S=>{var L=Lw(),fe=a(L);{var y=z=>{{let Ue=v(()=>(t(),l(()=>t().t("JWT Token")))),Ye=v(()=>(t(),l(()=>t().t("Copy the current session token for authenticated requests."))));Pl(z,{get label(){return e(Ue)},get description(){return e(Ye)},children:(Ve,lt)=>{var st=Aw(),Ke=a(st);Cr(Ke,{variant:"settings",value:l(()=>localStorage.token),readOnly:!0});var Ze=o(Ke,2),ot=a(Ze);{var ut=nt=>{var et=Vg();i(nt,et)},_t=nt=>{var et=qg();i(nt,et)};G(ot,nt=>{e(w)?nt(ut):nt(_t,-1)})}r(Ze),r(st),g(nt=>Be(Ze,"aria-label",nt),[()=>(t(),l(()=>t().t("Copy Token")))]),ke("click",Ze,()=>{du(localStorage.token),s(w,!0),setTimeout(()=>{s(w,!1)},2e3)}),i(Ve,st)},$$slots:{default:!0}})}};G(fe,z=>{f(),l(()=>{var Ue;return((Ue=f())==null?void 0:Ue.role)==="admin"})&&z(y)})}var b=o(fe,2);{var N=z=>{{let Ue=v(()=>(t(),l(()=>t().t("API Key")))),Ye=v(()=>(t(),l(()=>t().t("Create, copy, or rotate your API key."))));Pl(z,{get label(){return e(Ue)},get description(){return e(Ye)},children:(Ve,lt)=>{var st=Tw(),Ke=a(st);{var Ze=ut=>{var _t=Pw(),nt=Qe(_t);Cr(nt,{variant:"settings",get value(){return e(Te)},readOnly:!0});var et=o(nt,2),gt=a(et);{var It=Tt=>{var yt=Vg();i(Tt,yt)},Mt=Tt=>{var yt=qg();i(Tt,yt)};G(gt,Tt=>{e(Se)?Tt(It):Tt(Mt,-1)})}r(et);var jt=o(et,2);io(jt,{align:"end",sideOffset:4,get show(){return e(Y)},set show(Tt){s(Y,Tt)},children:(Tt,yt)=>{{let $t=v(()=>(t(),l(()=>t().t("More"))));Lt(Tt,{get content(){return e($t)},children:(rr,Rt)=>{var Wt=Iw(),or=a(Wt);Sf(or,{strokeWidth:"2",className:"size-4"}),r(Wt),g($r=>Be(Wt,"aria-label",$r),[()=>(t(),l(()=>t().t("More")))]),i(rr,Wt)},$$slots:{default:!0}})}},$$slots:{default:!0,content:(Tt,yt)=>{var $t=Nw(),rr=a($t);vo(rr,{className:"min-w-[10.625rem]",children:(Rt,Wt)=>{var or=Sw(),$r=Qe(or),Et=a($r);Yf(Et,{strokeWidth:"2",className:"size-3.5 scale-90"});var St=o(Et,2),Dt=a(St,!0);r(St),r($r);var ar=o($r,4),Tr=a(ar);wa(Tr,{strokeWidth:"2",className:"size-3.5"});var tr=o(Tr,2),ur=a(tr,!0);r(tr),r(ar),g((_r,br)=>{d(Dt,_r),d(ur,br)},[()=>(t(),l(()=>t().t("Create new key"))),()=>(t(),l(()=>t().t("Delete")))]),ke("click",$r,()=>{s(Y,!1),K()}),ke("click",ar,()=>{s(Y,!1),s(ee,!0)}),i(Rt,or)},$$slots:{default:!0}}),r($t),i(Tt,$t)}},$$legacy:!0}),g(Tt=>Be(et,"aria-label",Tt),[()=>(t(),l(()=>t().t("Copy API Key")))]),ke("click",et,()=>{du(e(Te)),s(Se,!0),setTimeout(()=>{s(Se,!1)},2e3)}),i(ut,_t)},ot=ut=>{var _t=Cw();k(_t,1,"inline-flex items-center gap-1.5 text-xs text-gray-500 transition-colors hover:text-gray-900 dark:text-gray-500 dark:hover:text-white");var nt=a(_t);Ya(nt,{strokeWidth:"2",className:"size-3.5"});var et=o(nt);r(_t),g(gt=>d(et,` ${gt??""}`),[()=>(t(),l(()=>t().t("Create new secret key")))]),ke("click",_t,()=>{K()}),i(ut,_t)};G(Ke,ut=>{e(Te)?ut(Ze):ut(ot,-1)})}r(st),i(Ve,st)},$$slots:{default:!0}})}};G(b,z=>{n(),f(),l(()=>{var Ue,Ye,Ve,lt,st,Ke;return(((Ye=(Ue=n())==null?void 0:Ue.features)==null?void 0:Ye.enable_api_keys)??!0)&&(((Ve=f())==null?void 0:Ve.role)==="admin"||(((Ke=(st=(lt=f())==null?void 0:lt.permissions)==null?void 0:st.features)==null?void 0:Ke.api_keys)??!1))})&&z(N)})}r(L),i(S,L)};G(p,S=>{e(j)&&S($)})}i(W,Ee)},$$slots:{default:!0}})}};G($e,ne=>{n(),f(),l(()=>{var J,W,Z,Ee,Ge,p;return(((W=(J=n())==null?void 0:J.features)==null?void 0:W.enable_api_keys)??!0)&&(((Z=f())==null?void 0:Z.role)==="admin"||(((p=(Ge=(Ee=f())==null?void 0:Ee.permissions)==null?void 0:Ge.features)==null?void 0:p.api_keys)??!1))})&&ne(ze)})}r(M);var Fe=o(M,2),at=a(Fe),tt=a(at,!0);r(at),r(Fe),r(ie);var Je=o(ie,2);{let ne=v(()=>(t(),l(()=>t().t("Delete API Key?")))),J=v(()=>(t(),l(()=>t().t("Delete"))));Ca(Je,{get title(){return e(ne)},get confirmLabel(){return e(J)},get show(){return e(ee)},set show(W){s(ee,W)},$$events:{confirm:Oe},children:(W,Z)=>{var Ee=Ow(),Ge=a(Ee,!0);r(Ee),g(p=>d(Ge,p),[()=>(t(),l(()=>t().t("This will revoke the current API key.")))]),i(W,Ee)},$$slots:{default:!0},$$legacy:!0})}var je=o(Je,2);Wa(je,{size:"sm",get show(){return e(Pe)},set show(ne){s(Pe,ne)},children:(ne,J)=>{var W=Rw(),Z=a(W),Ee=a(Z,!0);r(Z);var Ge=o(Z,2),p=a(Ge,!0);r(Ge);var $=o(Ge,2);vt($),k($,1,me(Le));var S=o($,2),L=a(S,!0);r(S);var fe=o(S,2);{let Ke=v(()=>(t(),l(()=>t().t("Variable value")))),Ze=v(()=>(t(),l(()=>t().t("Value"))));ma(fe,{className:Ne,rows:"6",minSize:132,get ariaLabel(){return e(Ke)},get placeholder(){return e(Ze)},get value(){return e(ce)},set value(ot){s(ce,ot)},$$legacy:!0})}var y=o(fe,2),b=a(y),N=a(b);{var z=Ke=>{var Ze=Mw(),ot=a(Ze,!0);r(Ze),g(ut=>d(ot,ut),[()=>(t(),l(()=>t().t("Delete")))]),ke("click",Ze,Re),i(Ke,Ze)};G(N,Ke=>{e(se)!==null&&Ke(z)})}r(b);var Ue=o(b,2),Ye=a(Ue),Ve=a(Ye,!0);r(Ye);var lt=o(Ye,2),st=a(lt,!0);r(lt),r(Ue),r(y),r(W),g((Ke,Ze,ot,ut,_t,nt,et)=>{d(Ee,Ke),d(p,Ze),Be($,"aria-label",ot),Be($,"placeholder",ut),d(L,_t),d(Ve,nt),d(st,et)},[()=>(e(se),t(),l(()=>e(se)===null?t().t("Add User Variable"):t().t("Edit User Variable"))),()=>(t(),l(()=>t().t("Key"))),()=>(t(),l(()=>t().t("Variable key"))),()=>(t(),l(()=>t().t("key_name"))),()=>(t(),l(()=>t().t("Value"))),()=>(t(),l(()=>t().t("Cancel"))),()=>(t(),l(()=>t().t("Done")))]),dt($,()=>e(m),Ke=>
7s(m,Ke)),ke("click",Ye,()=>{s(Pe,!1)}),ke("submit",W,ca(qe)),i(ne,W)},$$slots:{default:!0},$$legacy:!0}),g((ne,J,W,Z,Ee)=>{d(te,ne),d(T,`${J??""} `),d(D,(e(ae),l(()=>e(ae).length))),d(H,W),d(Q,Z),d(tt,Ee)},[()=>(t(),l(()=>t().t("Account"))),()=>(t(),l(()=>t().t("User Variables"))),()=>(t(),l(()=>t().t("Add"))),()=>(t(),l(()=>t().t("Use these in model system prompts as {{example}}.",{example:"{{user.variables.key_name}}"}))),()=>(t(),l(()=>t().t("Save")))]),ke("click",F,()=>be()),ke("click",at,async()=>{await xe()&&I()()}),i(He,O),cr(),X()}var Bw=u("<button> </button>"),Gw=u('<a target="_blank"> </a>'),jw=u('<div slot="label" class="flex flex-col text-xs text-gray-600 dark:text-gray-400"><div class="flex gap-1"><!> <!></div> <button><div> </div></button></div>'),Hw=u('<div class="text-xs text-gray-600 dark:text-gray-400"> </div>'),Fw=u("<span> </span> -",1),Ww=u('<div class="text-xs text-gray-600 dark:text-gray-400"><!> <span class="capitalize"> </span> license purchased by <span class="capitalize"> </span></div>'),zw=u('<div class="flex flex-wrap gap-x-3 gap-y-1 text-xs text-gray-400 dark:text-gray-600"><a class="hover:text-gray-700 dark:hover:text-gray-400" href="https://discord.gg/5rJgQTnV4s" target="_blank">Discord</a> <a class="hover:text-gray-700 dark:hover:text-gray-400" href="https://twitter.com/OpenWebUI" target="_blank">X</a> <a class="hover:text-gray-700 dark:hover:text-gray-400" href="https://github.com/open-webui/open-webui" target="_blank">GitHub</a></div>'),Kw=u('<!> <div class="text-xs text-gray-400 dark:text-gray-500">Emoji graphics provided by <a href="https://github.com/jdecked/twemoji" target="_blank">Twemoji</a>, licensed under <a href="https://creativecommons.org/licenses/by/4.0/" target="_blank">CC-BY 4.0</a>.</div> <div class="text-xs text-gray-400 dark:text-gray-500"> <a href="https://openwebui.com" target="_blank" class="underline">Open WebUI Inc.</a> <a href="https://github.com/open-webui/open-webui/blob/main/LICENSE" target="_blank">All rights reserved.</a></div> <div class="text-xs text-gray-400 dark:text-gray-500"> <a class="text-gray-500 dark:text-gray-400" href="https://github.com/tjbck" target="_blank">Tim J. Baek</a></div>',1),Yw=u('<div id="tab-about" class="flex flex-col h-full justify-between text-sm"><h2 class="text-sm font-medium text-gray-900 dark:text-white mb-4"> </h2> <div class="flex-1 min-h-0 overflow-y-auto scrollbar-hover pr-1.5"><!> <!> <!></div></div>');function Vw(He,_){vr(_,!1);const t=()=>ct(_a,"$config",Ie),f=()=>ct(R,"$i18n",Ie),n=()=>ct(Mu,"$WEBUI_NAME",Ie),[Ie,X]=hr(),R=mr("i18n");let I=h(""),c=h(null),x=h({current:"",latest:""});const A="text-xs text-gray-500 transition-colors hover:text-gray-900 dark:text-gray-500 dark:hover:text-white",E=async()=>{s(c,null),s(x,await Pu(localStorage.token).catch(ae=>({current:vl,latest:vl}))),e(x),s(c,wd(e(x).latest,e(x).current)),e(c)};ea(async()=>{var ae,Pe;s(I,await Rx(localStorage.token).catch(se=>"")),(Pe=(ae=t())==null?void 0:ae.features)!=null&&Pe.enable_version_update_check&&E()}),gr();var V=Yw(),B=a(V),j=a(B,!0);r(B);var w=o(B,2),Te=a(w);{let ae=v(()=>`${n()} ${f().t("Version")}`);Na(Te,{get title(){return e(ae)},first:!0,children:(Pe,se)=>{{let m=v(()=>f().t("View the installed version and check release updates."));xa(Pe,{get description(){return e(m)},children:(ce,De)=>{var Le=Wr(),Ne=Qe(Le);{var Ce=we=>{var oe=Bw();k(oe,1,me(A));var de=a(oe,!0);r(oe),g(be=>d(de,be),[()=>f().t("Check for updates")]),ke("click",oe,()=>{E()}),i(we,oe)};G(Ne,we=>{var oe,de;(de=(oe=t())==null?void 0:oe.features)!=null&&de.enable_version_update_check&&we(Ce)})}i(ce,Le)},$$slots:{default:!0,label:(ce,De)=>{var Le=jw(),Ne=a(Le),Ce=a(Ne);Lt(Ce,{get content(){return _f},children:(qe,Re)=>{ll();var ue=Mr();g(()=>d(ue,`v${vl}`)),i(qe,ue)},$$slots:{default:!0}});var we=o(Ce,2);{var oe=qe=>{var Re=Gw(),ue=a(Re,!0);r(Re),g(xe=>{Be(Re,"href",`https://github.com/open-webui/open-webui/releases/tag/v${e(x).latest??""}`),d(ue,xe)},[()=>e(c)===null?f().t("Checking for updates..."):e(c)?`(v${e(x).latest} ${f().t("available!")})`:f().t("(latest)")]),i(qe,Re)};G(we,qe=>{var Re,ue;(ue=(Re=t())==null?void 0:Re.features)!=null&&ue.enable_version_update_check&&qe(oe)})}r(Ne);var de=o(Ne,2);k(de,1,me(A));var be=a(de),Me=a(be,!0);r(be),r(de),r(Le),g(qe=>d(Me,qe),[()=>f().t("See what's new")]),ke("click",de,()=>{Us.set(!0)}),i(ce,Le)}}})}},$$slots:{default:!0}})}var Se=o(Te,2);{var Y=ae=>{{let Pe=v(()=>f().t("Ollama Version"));Na(ae,{get title(){return e(Pe)},children:(se,m)=>{var ce=Hw(),De=a(ce,!0);r(ce),g(()=>d(De,e(I)??"N/A")),i(se,ce)},$$slots:{default:!0}})}};G(Se,ae=>{e(I)&&ae(Y)})}var ee=o(Se,2);{let ae=v(()=>f().t("Community"));Na(ee,{get title(){return e(ae)},children:(Pe,se)=>{var m=Kw(),ce=Qe(m);{var De=de=>{var be=Ww(),Me=a(be);{var qe=O=>{var ie=Fw(),M=Qe(ie),ve=a(M,!0);r(M),ll(),g(()=>d(ve,n())),i(O,ie)},Re=Qr(()=>!n().includes("Open WebUI"));G(Me,O=>{e(Re)&&O(qe)})}var ue=o(Me,2),xe=a(ue,!0);r(ue);var K=o(ue,2),Oe=a(K,!0);r(K),r(be),g(()=>{var O,ie,M,ve;d(xe,(ie=(O=t())==null?void 0:O.license_metadata)==null?void 0:ie.type),d(Oe,(ve=(M=t())==null?void 0:M.license_metadata)==null?void 0:ve.organization_name)}),i(de,be)},Le=de=>{var be=zw();i(de,be)};G(ce,de=>{var be;(be=t())!=null&&be.license_metadata?de(De):de(Le,-1)})}var Ne=o(ce,4),Ce=a(Ne);ll(3),r(Ne);var we=o(Ne,2),oe=a(we);ll(),r(we),g((de,be)=>{d(Ce,`Copyright (c) ${de??""} `),d(oe,`${be??""} `)},[()=>new Date().getFullYear(),()=>f().t("Created by")]),i(Pe,m)},$$slots:{default:!0}})}r(w),r(V),g(ae=>d(j,ae),[()=>f().t("About")]),i(He,V),cr(),X()}var qw=u("<option>ð· Her</option>"),Xw=u("<option> </option> <option> </option> <option> </option> <option> </option> <!>",1),Jw=u("<option> </option>"),Zw=u(`<div class="-mt-1 text-[0.6875rem] text-gray-400 dark:text-gray-600">Couldn't find your language? <a class="font-normal underline text-gray-400 dark:text-gray-600" href="https://github.com/open-webui/open-webui/blob/main/docs/CONTRIBUTING.md#-translations-and-internationalization" target="_blank">Help us translate Open WebUI!</a></div>`),Qw=u("<!> <!> <!>",1),ek=u('<button type="button"> </button>'),tk=u('<span slot="label"> </span>'),rk=u("<!> <!>",1),ak=u('<div class="flex flex-col h-full justify-between text-sm" id="tab-general"><h2 class="text-sm font-medium text-gray-900 dark:text-white mb-4"> </h2> <div class="flex-1 min-h-0 overflow-y-auto scrollbar-hover pr-1.5"><!> <!> <!></div> <div class="shrink-0 flex justify-end pt-3 text-sm font-normal"><button class="px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full"> </button></div></div>');function lk(He,_){vr(_,!1);const t=()=>ct(c,"$i18n",X),f=()=>ct(_a,"$config",X),n=()=>ct(ua,"$settings",X),Ie=()=>ct(ka,"$user",X),[X,R]=hr(),I=ja(),c=mr("i18n");let x=Xe(_,"saveSettings",8);Xe(_,"getModels",8);let A=["dark","light","oled-dark"],E=h("system"),V=h([]),B=h(t().language),j=h(""),w=h(!1);const Te="w-full resize-y rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500",Se="text-xs text-gray-500 transition-colors hover:text-gray-900 dark:text-gray-500 dark:hover:text-white";let Y=h({stream_response:null,stream_delta_chunk_size:null,function_calling:null,reasoning_tags:null,seed:null,temperature:null,reasoning_effort:null,logit_bias:null,frequency_penalty:null,presence_penalty:null,repeat_penalty:null,repeat_last_n:null,mirostat:null,mirostat_eta:null,mirostat_tau:null,top_k:null,top_p:null,min_p:null,stop:null,tfs_z:null,num_ctx:null,num_batch:null,num_keep:null,max_tokens:null,use_mmap:null,use_mlock:null,num_thread:null,num_gpu:null,think:null,format:null,keep_alive:null});const ee=async()=>{x()({system:e(j)!==""?e(j):void 0,params:{stream_response:e(Y).stream_response!==null?e(Y).stream_response:void 0,stream_delta_chunk_size:e(Y).stream_delta_chunk_size!==null?e(Y).stream_delta_chunk_size:void 0,function_calling:e(Y).function_calling!==null?e(Y).function_calling:void 0,reasoning_tags:e(Y).reasoning_tags!==null?e(Y).reasoning_tags:void 0,seed:(e(Y).seed!==null?e(Y).seed:void 0)??void 0,stop:e(Y).stop?e(Y).stop.split(",").filter(qe=>qe):void 0,temperature:e(Y).temperature!==null?e(Y).temperature:void 0,reasoning_effort:e(Y).reasoning_effort!==null?e(Y).reasoning_effort:void 0,logit_bias:e(Y).logit_bias!==null?e(Y).logit_bias:void 0,frequency_penalty:e(Y).frequency_penalty!==null?e(Y).frequency_penalty:void 0,presence_penalty:e(Y).presence_penalty!==null?e(Y).presence_penalty:void 0,repeat_penalty:e(Y).repeat_penalty!==null?e(Y).repeat_penalty:void 0,repeat_last_n:e(Y).repeat_last_n!==null?e(Y).repeat_last_n:void 0,mirostat:e(Y).mirostat!==null?e(Y).mirostat:void 0,mirostat_eta:e(Y).mirostat_eta!==null?e(Y).mirostat_eta:void 0,mirostat_tau:e(Y).mirostat_tau!==null?e(Y).mirostat_tau:void 0,top_k:e(Y).top_k!==null?e(Y).top_k:void 0,top_p:e(Y).top_p!==null?e(Y).top_p:void 0,min_p:e(Y).min_p!==null?e(Y).min_p:void 0,tfs_z:e(Y).tfs_z!==null?e(Y).tfs_z:void 0,num_ctx:e(Y).num_ctx!==null?e(Y).num_ctx:void 0,num_batch:e(Y).num_batch!==null?e(Y).num_batch:void 0,num_keep:e(Y).num_keep!==null?e(Y).num_keep:void 0,max_tokens:e(Y).max_tokens!==null?e(Y).max_tokens:void 0,use_mmap:e(Y).use_mmap!==null?e(Y).use_mmap:void 0,use_mlock:e(Y).use_mlock!==null?e(Y).use_mlock:void 0,num_thread:e(Y).num_thread!==null?e(Y).num_thread:void 0,num_gpu:e(Y).num_gpu!==null?e(Y).num_gpu:void 0,think:e(Y).think!==null?e(Y).think:void 0,keep_alive:e(Y).keep_alive!==null?e(Y).keep_alive:void 0,format:e(Y).format!==null?e(Y).format:void 0,...e(Y).custom_params&&Object.keys(e(Y).custom_params).length>0?{custom_params:e(Y).custom_params}:{}}}),I("save")};ea(async()=>{var qe,Re,ue,xe,K,Oe;s(E,localStorage.theme??"system"),s(V,await jx()),(Re=(qe=f())==null?void 0:qe.features)!=null&&Re.enable_easter_eggs||s(V,e(V).filter(O=>O.code!=="dg-DG")),s(j,n().system??""),s(Y,{...e(Y),...n().params}),We(Y,e(Y).stop=(xe=(ue=n())==null?void 0:ue.params)!=null&&xe.stop?(((Oe=(K=n())==null?void 0:K.params)==null?void 0:Oe.stop)??[]).join(","):null)});const ae=qe=>{let Re=qe==="oled-dark"?"dark":qe==="her"?"light":qe;qe==="system"&&(Re=window.matchMedia("(prefers-color-scheme: dark)").matches?"dar
7k":"light"),Re==="dark"&&!qe.includes("oled")&&(document.documentElement.style.setProperty("--color-gray-800","#333"),document.documentElement.style.setProperty("--color-gray-850","#262626"),document.documentElement.style.setProperty("--color-gray-900","#171717"),document.documentElement.style.setProperty("--color-gray-950","#0d0d0d")),A.filter(xe=>xe!==Re).forEach(xe=>{xe.split(" ").forEach(K=>{document.documentElement.classList.remove(K)})}),Re.split(" ").forEach(xe=>{document.documentElement.classList.add(xe)});const ue=document.querySelector('meta[name="theme-color"]');if(ue)if(qe.includes("system")){const xe=window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light";""+xe,ue.setAttribute("content",xe==="light"?"#ffffff":"#171717")}else""+qe,ue.setAttribute("content",qe==="dark"?"#171717":qe==="oled-dark"?"#000000":qe==="her"?"#983724":"#ffffff");typeof window<"u"&&window.applyTheme&&window.applyTheme(),qe.includes("oled")&&(document.documentElement.style.setProperty("--color-gray-800","#101010"),document.documentElement.style.setProperty("--color-gray-850","#050505"),document.documentElement.style.setProperty("--color-gray-900","#000000"),document.documentElement.style.setProperty("--color-gray-950","#000000"),document.documentElement.classList.add("dark"))},Pe=qe=>{yh.set(qe),localStorage.setItem("theme",qe),ae(qe)};gr();var se=ak(),m=a(se),ce=a(m,!0);r(m);var De=o(m,2),Le=a(De);{let qe=v(()=>(t(),l(()=>t().t("WebUI Settings"))));Na(Le,{get title(){return e(qe)},first:!0,children:(Re,ue)=>{var xe=Qw(),K=Qe(xe);{let M=v(()=>(t(),l(()=>t().t("Theme")))),ve=v(()=>(t(),l(()=>t().t("Choose the color theme used by the interface."))));xa(K,{get label(){return e(M)},get description(){return e(ve)},children:(te,ge)=>{{let _e=v(()=>(t(),l(()=>t().t("Theme")))),Ae=v(()=>(t(),l(()=>t().t("Select a theme"))));aa(te,{get ariaLabel(){return e(_e)},get placeholder(){return e(Ae)},get value(){return e(E)},set value(U){s(E,U)},$$events:{change:()=>Pe(e(E))},children:(U,T)=>{var C=Xw(),D=Qe(C),F=a(D);r(D),D.value=D.__value="system";var H=o(D,2),pe=a(H);r(H),H.value=H.__value="dark";var ye=o(H,2),he=a(ye);r(ye),ye.value=ye.__value="oled-dark";var q=o(ye,2),P=a(q);r(q),q.value=q.__value="light";var Q=o(q,2);{var re=le=>{var $e=qw();$e.value=$e.__value="her",i(le,$e)};G(Q,le=>{f(),l(()=>{var $e,ze;return(ze=($e=f())==null?void 0:$e.features)==null?void 0:ze.enable_easter_eggs})&&le(re)})}g((le,$e,ze,Fe)=>{d(F,`âï¸ ${le??""}`),d(pe,`ð ${$e??""}`),d(he,`ð ${ze??""}`),d(P,`âï¸ ${Fe??""}`)},[()=>(t(),l(()=>t().t("System"))),()=>(t(),l(()=>t().t("Dark"))),()=>(t(),l(()=>t().t("OLED Dark"))),()=>(t(),l(()=>t().t("Light")))]),i(U,C)},$$slots:{default:!0},$$legacy:!0})}},$$slots:{default:!0}})}var Oe=o(K,2);{let M=v(()=>(t(),l(()=>t().t("Language")))),ve=v(()=>(t(),l(()=>t().t("Choose the language used for interface text."))));xa(Oe,{get label(){return e(M)},get description(){return e(ve)},children:(te,ge)=>{{let _e=v(()=>(t(),l(()=>t().t("Language")))),Ae=v(()=>(t(),l(()=>t().t("Select a language"))));aa(te,{get ariaLabel(){return e(_e)},get placeholder(){return e(Ae)},get value(){return e(B)},set value(U){s(B,U)},$$events:{change:U=>{Hx(e(B))}},children:(U,T)=>{var C=Wr(),D=Qe(C);lr(D,1,()=>e(V),Ar,(F,H)=>{var pe=Jw(),ye=a(pe,!0);r(pe);var he={};g(()=>{d(ye,(e(H),l(()=>e(H).title))),he!==(he=(e(H),l(()=>e(H).code)))&&(pe.value=(pe.__value=(e(H),l(()=>e(H).code)))??"")}),i(F,pe)}),i(U,C)},$$slots:{default:!0},$$legacy:!0})}},$$slots:{default:!0}})}var O=o(Oe,2);{var ie=M=>{var ve=Zw();i(M,ve)};G(O,M=>{t(),f(),l(()=>{var ve;return t().language==="en-US"&&!(((ve=f())==null?void 0:ve.license_metadata)??!1)})&&M(ie)})}i(Re,xe)},$$slots:{default:!0}})}var Ne=o(Le,2);{var Ce=qe=>{{let Re=v(()=>(t(),l(()=>t().t("System Prompt"))));Na(qe,{get title(){return e(Re)},children:(ue,xe)=>{{let K=v(()=>(t(),l(()=>t().t("Set the default system prompt for new chats."))));Pl(ue,{get description(){return e(K)},children:(Oe,O)=>{{let ie=v(()=>(t(),l(()=>t().t("Enter system prompt here"))));ma(Oe,{className:Te,rows:"4",get placeholder(){return e(ie)},get value(){return e(j)},set value(M){s(j,M)},$$legacy:!0})}},$$slots:{default:!0}})}},$$slots:{default:!0}})}};G(Ne,qe=>{Ie(),l(()=>{var Re,ue,xe,K,Oe;return((Re=Ie())==null?void 0:Re.role)==="admin"||(((xe=(ue=Ie())==null?void 0:ue.permissions.chat)==null?void 0:xe.controls)??!0)&&(((Oe=(K=Ie())==null?void 0:K.permissions.chat)==null?void 0:Oe.system_prompt)??!0)})&&qe(Ce)})}var we=o(Ne,2);{var oe=qe=>{{let Re=v(()=>(t(),l(()=>t().t("Advanced Parameters"))));Na(qe,{get title(){return e(Re)},children:(ue,xe)=>{var K=rk(),Oe=Qe(K);{let M=v(()=>(t(),l(()=>t().t("Show or hide custom generation parameters."))));xa(Oe,{get description(){return e(M)},children:(ve,te)=>{var ge=ek();k(ge,1,me(Se));var _e=a(ge,!0);r(ge),g(Ae=>{Be(ge,"aria-expanded",e(w)),d(_e,Ae)},[()=>(e(w),t(),l(()=>e(w)?t().t("Hide"):t().t("Show")))]),ke("click",ge,()=>{s(w,!e(w))}),i(ve,ge)},$$slots:{default:!0,label:(ve,te)=>{var ge=tk(),_e=a(ge,!0);r(ge),g(Ae=>d(_e,Ae),[()=>(t(),l(()=>t().t("Model parameters")))]),i(ve,ge)}}})}var O=o(Oe,2);{var ie=M=>{{let ve=v(()=>(Ie(),l(()=>{var te;return((te=Ie())==null?void 0:te.role)==="admin"})));zu(M,{get admin(){return e(ve)},custom:!0,get params(){return e(Y)},set params(te){s(Y,te)},$$legacy:!0})}};G(O,M=>{e(w)&&M(ie)})}i(ue,K)},$$slots:{default:!0}})}};G(we,qe=>{Ie(),l(()=>{var Re,ue,xe,K,Oe;return((Re=Ie())==null?void 0:Re.role)==="admin"||(((xe=(ue=Ie())==null?void 0:ue.permissions.chat)==null?void 0:xe.controls)??!0)&&(((Oe=(K=Ie())==null?void 0:K.permissions.chat)==null?void 0:Oe.params)??!0)})&&qe(oe)})}r(De);var de=o(De,2),be=a(de),Me=a(be,!0);r(be),r(de),r(se),g((qe,Re)=>{d(ce,qe),d(Me,Re)},[()=>(t(),l(()=>t().t("General"))),()=>(t(),l(()=>t().t("Save")))]),ke("click",be,()=>{ee()}),i(He,se),cr(),R()}var Xg=u("<span> </span>"),ok=u('<button type="button"><!></button>'),sk=u('<div class="text-gray-500 dark:text-gray-400 text-xs w-full text-center py-5"> </div>'),nk=u('<div class=" py-1 flex w-full justify-between items-start"><div class="flex flex-col items-start pr-2">
7<input class=" self-center text-xs outline-none w-20"/> <input class=" self-center text-xs outline-none w-20 text-gray-600 dark:text-gray-400"/></div> <div class="flex items-center gap-2 w-full"><!></div> <button class="pl-3 text-xs flex rounded-sm transition" type="button"><!></button></div> <hr class="border-gray-50 dark:border-gray-850/30 my-2"/>',1),ik=u('<div><div class=" flex justify-between text-gray-900 dark:text-white px-4 pt-3 pb-1"><h1 class="text-sm font-medium self-center"> </h1> <button class="self-center rounded-lg p-1 text-gray-500 transition hover:bg-gray-50 hover:text-gray-700 dark:text-gray-400 dark:hover:bg-gray-800 dark:hover:text-gray-200"><!></button></div> <div class="flex flex-col md:flex-row w-full px-4 pb-4 md:space-x-4 text-gray-600 dark:text-gray-400"><div class=" flex flex-col w-full sm:flex-row sm:justify-center sm:space-x-6"><form class="flex flex-col w-full px-1"><div><div class="text-xs flex items-center justify-between mb-2"><div class="font-normal"> </div> <div class="flex items-center gap-2 text-gray-500 dark:text-gray-500"><button type="button"><!></button> <!></div></div> <!></div> <div class="flex justify-end text-sm font-normal"><button class="px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full" type="submit"> </button></div></form></div></div></div>');function dk(He,_){vr(_,!1);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr(),Ie=mr("i18n");let X=Xe(_,"show",12,!1),R=Xe(_,"onSave",8,()=>{}),I=Xe(_,"floatingActionButtons",12,null);const c=async()=>{R()(I()),X(!1)};ea(()=>{}),Kt(()=>it(X()),()=>{X()}),la(),gr(),Wa(He,{size:"sm",className:"bg-white dark:bg-gray-900 rounded-4xl",get show(){return X()},set show(x){X(x)},children:(x,A)=>{var E=ik(),V=a(E),B=a(V),j=a(B,!0);r(B);var w=o(B,2),Te=a(w);wa(Te,{className:"size-4"}),r(w),r(V);var Se=o(V,2),Y=a(Se),ee=a(Y),ae=a(ee),Pe=a(ae),se=a(Pe),m=a(se,!0);r(se);var ce=o(se,2),De=a(ce),Le=a(De);{var Ne=xe=>{var K=Xg(),Oe=a(K,!0);r(K),g(O=>d(Oe,O),[()=>(t(),l(()=>t().t("Default")))]),i(xe,K)},Ce=xe=>{var K=Xg(),Oe=a(K,!0);r(K),g(O=>d(Oe,O),[()=>(t(),l(()=>t().t("Custom")))]),i(xe,K)};G(Le,xe=>{I()===null?xe(Ne):xe(Ce,-1)})}r(De);var we=o(De,2);{var oe=xe=>{var K=ok(),Oe=a(K);Ya(Oe,{className:"size-4 "}),r(K),ke("click",K,()=>{let O="new-button",ie=0;for(;I().some(M=>M.id===O);)ie++,O=`new-button-${ie}`;I([...I(),{id:O,label:`${t().t("New Button")}`,input:!0,prompt:`{{CONTENT}} 8 9 10{{INPUT_CONTENT}}`}])}),i(xe,K)};G(we,xe=>{I()!==null&&xe(oe)})}r(ce),r(Pe);var de=o(Pe,2);{var be=xe=>{var K=sk(),Oe=a(K,!0);r(K),g(O=>d(Oe,O),[()=>(t(),l(()=>t().t("Default action buttons will be used.")))]),i(xe,K)},Me=xe=>{var K=Wr(),Oe=Qe(K);lr(Oe,1,I,Ar,(O,ie,M)=>{var ve=nk(),te=Qe(ve),ge=a(te),_e=a(ge);vt(_e);var Ae=o(_e,2);vt(Ae),r(ge);var U=o(ge,2),T=a(U);{let F=v(()=>(t(),l(()=>t().t("Button Prompt")))),H=v(()=>(t(),l(()=>t().t("Button Prompt"))));ma(T,{className:" self-center text-xs w-full outline-none",get placeholder(){return e(F)},get ariaLabel(){return e(H)},minSize:30,get value(){return e(ie).prompt},set value(pe){e(ie).prompt=pe,Ja(()=>I())},$$legacy:!0})}r(U);var C=o(U,2),D=a(C);Ys(D,{className:"h-4 w-4"}),r(C),r(te),ll(2),g((F,H,pe,ye,he)=>{Be(_e,"placeholder",F),Be(_e,"aria-label",H),Be(Ae,"placeholder",pe),Be(Ae,"aria-label",ye),Be(C,"aria-label",he)},[()=>(t(),l(()=>t().t("Button Label"))),()=>(t(),l(()=>t().t("Button Label"))),()=>(t(),l(()=>t().t("Button ID"))),()=>(t(),l(()=>t().t("Button ID"))),()=>(t(),l(()=>t().t("Remove action")))]),dt(_e,()=>e(ie).label,F=>(e(ie).label=F,Ja(()=>I()))),dt(Ae,()=>e(ie).id,F=>(e(ie).id=F,Ja(()=>I()))),ke("click",C,()=>{I(I().filter(F=>F.id!==e(ie).id))}),i(O,ve)}),i(xe,K)};G(de,xe=>{it(I()),l(()=>I()===null||I().length===0)?xe(be):xe(Me,-1)})}r(ae);var qe=o(ae,2),Re=a(qe),ue=a(Re,!0);r(Re),r(qe),r(ee),r(Y),r(Se),r(E),g((xe,K,Oe,O)=>{d(j,xe),Be(w,"aria-label",K),d(m,Oe),d(ue,O)},[()=>(t(),l(()=>t().t("Quick Actions"))),()=>(t(),l(()=>t().t("Close modal"))),()=>(t(),l(()=>t().t("Actions"))),()=>(t(),l(()=>t().t("Save")))]),ke("click",w,()=>{X(!1)}),ke("click",De,()=>{I()===null?I([{id:"ask",label:t().t("Ask"),input:!0,prompt:`{{SELECTED_CONTENT}} 11 12 13{{INPUT_CONTENT}}`},{id:"explain",label:t().t("Explain"),input:!1,prompt:`{{SELECTED_CONTENT}} 14 15 16${t().t("Explain")}`}]):I(null)}),ke("submit",ee,xe=>{xe.preventDefault(),c()}),i(x,E)},$$slots:{default:!0},$$legacy:!0}),cr(),n()}var vk=u('<div><div class=" flex justify-between text-gray-900 dark:text-white px-4 pt-3 pb-1"><h1 class="text-sm font-medium self-center"> </h1>
16 <button class="self-center rounded-lg p-1 text-gray-500 transition hover:bg-gray-50 hover:text-gray-700 dark:text-gray-400 dark:hover:bg-gray-800 dark:hover:text-gray-200"><!></button></div> <div class="flex flex-col md:flex-row w-full px-4 pb-4 md:space-x-4 text-gray-600 dark:text-gray-400"><div class=" flex flex-col w-full sm:flex-row sm:justify-center sm:space-x-6"><form class="flex flex-col w-full px-1"><div><div><div class=" py-0.5 flex flex-col w-full text-sm"><div id="image-compression-size-label" class="mb-2 text-xs text-gray-600 dark:text-gray-400"> </div> <div class="p-1 flex-1 flex gap-2"><div class=" flex-1"><label class="sr-only" for="image-comp-width"> </label> <input id="image-comp-width" type="number" class="h-7 w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-center text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500" min="0"/></div> <div class="self-center text-gray-500 dark:text-gray-400"><!></div> <div class="flex-1"><label class="sr-only" for="image-comp-height"> </label> <input id="image-comp-height" type="number" class="h-7 w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-center text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500" min="0"/></div></div></div></div></div> <div class="flex justify-end text-sm font-normal"><button class="px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full" type="submit"> </button></div></form></div></div></div>');function ck(He,_){vr(_,!1);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr(),Ie=mr("i18n");let X=Xe(_,"show",12,!1),R=Xe(_,"size",12,null),I=Xe(_,"onSave",8,()=>{});const c=async()=>{I()(R()),X(!1)};ea(()=>{}),gr(),Wa(He,{size:"sm",className:"bg-white dark:bg-gray-900 rounded-4xl",get show(){return X()},set show(x){X(x)},children:(x,A)=>{var E=vk(),V=a(E),B=a(V),j=a(B,!0);r(B);var w=o(B,2),Te=a(w);wa(Te,{className:"size-4"}),r(w),r(V);var Se=o(V,2),Y=a(Se),ee=a(Y),ae=a(ee),Pe=a(ae),se=a(Pe),m=a(se),ce=a(m,!0);r(m);var De=o(m,2),Le=a(De),Ne=a(Le),Ce=a(Ne,!0);r(Ne);var we=o(Ne,2);vt(we),r(Le);var oe=o(Le,2),de=a(oe);wa(de,{}),r(oe);var be=o(oe,2),Me=a(be),qe=a(Me,!0);r(Me);var Re=o(Me,2);vt(Re),r(be),r(De),r(se),r(Pe),r(ae);var ue=o(ae,2),xe=a(ue),K=a(xe,!0);r(xe),r(ue),r(ee),r(Y),r(Se),r(E),g((Oe,O,ie,M,ve,te,ge,_e)=>{d(j,Oe),Be(w,"aria-label",O),d(ce,ie),d(Ce,M),Be(we,"placeholder",ve),d(qe,te),Be(Re,"placeholder",ge),d(K,_e)},[()=>(t(),l(()=>t().t("Manage"))),()=>(t(),l(()=>t().t("Close modal"))),()=>(t(),l(()=>t().t("Image Max Compression Size"))),()=>(t(),l(()=>t().t("Image Max Compression Size width"))),()=>(t(),l(()=>t().t("Width"))),()=>(t(),l(()=>t().t("Image Max Compression Size height"))),()=>(t(),l(()=>t().t("Height"))),()=>(t(),l(()=>t().t("Save")))]),ke("click",w,()=>{X(!1)}),dt(we,()=>R().width,Oe=>R(R().width=Oe,!0)),dt(Re,()=>R().height,Oe=>R(R().height=Oe,!0)),ke("submit",ee,Oe=>{Oe.preventDefault(),c()}),i(x,E)},$$slots:{default:!0},$$legacy:!0}),cr(),n()}var Jg=u("<span> </span>"),uk=u('<div class=" flex items-center gap-2 px-1 pb-1"><button type="button" class="rounded-lg p-1 transition outline-gray-200 hover:bg-gray-100 dark:outline-gray-700 dark:hover:bg-gray-800" aria-labelledby="ui-scale-label"><!></button> <div class="flex-1 flex items-center"><input id="ui-scale-slider" class="w-full" type="range" min="1" max="1.5" aria-labelledby="ui-scale-label" aria-valuemin="1" aria-valuemax="1.5"/></div> <button type="button" class="rounded-lg p-1 transition outline-gray-200 hover:bg-gray-100 dark:outline-gray-700 dark:hover:bg-gray-800" aria-labelledby="ui-scale-label"><!></button></div>'),gk=u('<div class="mt-1.5 flex items-center pb-1"><input id="font-family-input" class="h-7 w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500" type="text" placeholder="Aptos"/></div>'),_k=u('<div><div><div id="toast-notifications-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="whats-new-label"> </div> <div><!></div></div> <p> </p></div>
16',1),fk=u('<div><div><div id="chat-bubble-username-label"> </div> <div><!></div></div> <p> </p></div>'),pk=u('<div><div><div id="temp-chat-default-label"> </div> <div><!></div></div> <p> </p></div>'),Zg=u('<button type="button"> </button>'),mk=u('<div><div><div id="prompt-autocompletion-label"> </div> <div><!></div></div> <p> </p></div>'),hk=u('<div><div><div id="show-formatting-toolbar-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="insert-prompt-as-rich-text-label"> </div> <div><!></div></div> <p> </p></div>',1),xk=u('<div><div><div id="image-compression-in-channels-label"> </div> <div><!></div></div> <p> </p></div>'),bk=u('<!> <!> <input type="file" hidden="" accept="image/*"/> <div class="flex flex-col gap-2.5"><h3> </h3> <div><div><label id="ui-scale-label" for="ui-scale-slider"> </label> <div><button aria-live="polite" type="button"><!></button></div></div> <!> <p> </p></div> <div><div><label id="font-family-label" for="font-family-input"> </label> <div><button aria-labelledby="font-family-label font-family-state" type="button"><span id="font-family-state"> </span></button></div></div> <!> <p> </p></div> <div><div><div id="accessibility-mode-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="use-chat-title-as-tab-title-label"> </div> <div><!></div></div> <p> </p></div> <div><div id="allow-user-location-label"><div> </div> <div><!></div></div> <p> </p></div> <div><div><div id="haptic-feedback-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="copy-formatted-label"> </div> <div><!></div></div> <p> </p></div> <!> <div> </div> <div><div><div id="enable-message-queue-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="chat-direction-label"> </div> <button aria-labelledby="chat-direction-label chat-direction-mode" type="button"><span id="chat-direction-mode"> </span></button></div> <p> </p></div> <div><div><div id="landing-page-mode-label"> </div> <button aria-labelledby="landing-page-mode-label notification-sound-state" type="button"><span id="notification-sound-state"> </span></button></div> <p> </p></div> <div><div><div id="chat-background-label"> </div> <button aria-labelledby="chat-background-label background-image-url-state" type="button"><span id="background-image-url-state"> </span></button></div> <p> </p></div> <div><div><div id="chat-bubble-ui-label"> </div> <div><!></div></div> <p> </p></div> <!> <div><div><div id="widescreen-mode-label"> </div> <div><!></div></div> <p> </p></div> <!> <div><div><div id="fade-streaming-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="render-markdown-user-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="render-markdown-assistant-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="render-markdown-in-previews-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="auto-generation-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="follow-up-auto-generation-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="chat-tags-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="auto-copy-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="response-auto-scroll-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="scroll-on-branch-change-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="insert-suggestion-prompt-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="keep-follow-up-prompts-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="insert-follow-up-prompt-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="regenerate-menu-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="always-collapse-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="always-expand-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="chat-hover-preview-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="keep-followup-prompts-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="terminal-file-display-label"> </div> <button aria-labelledby="terminal-file-display-label terminal-file-display-state" t
16ype="button"><span id="terminal-file-display-state"> </span></button></div> <p> </p></div> <div><div><div id="show-files-on-terminal-select-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="terminal-preview-allow-same-origin-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="stylized-pdf-export-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="floating-action-buttons-label"> </div> <div><!> <!></div></div> <p> </p></div> <div><div><div id="web-search-in-chat-label"> </div> <button aria-labelledby="web-search-in-chat-label web-search-state" type="button"><span id="web-search-state"> </span></button></div> <p> </p></div> <div> </div> <div><div><div id="enter-key-behavior-label ctrl-enter-to-send-state"> </div> <button aria-labelledby="enter-key-behavior-label" type="button"><span id="ctrl-enter-to-send-state"> </span></button></div> <p> </p></div> <div><div><div id="rich-input-label"> </div> <div><!></div></div> <p> </p></div> <!> <!> <div><div><div id="paste-large-label"> </div> <div><!></div></div> <p> </p></div> <div> </div> <div><div><div id="detect-artifacts-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="iframe-sandbox-allow-scripts-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="iframe-sandbox-allow-same-origin-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="iframe-sandbox-allow-forms-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="iframe-sandbox-allow-downloads-label"> </div> <div><!></div></div> <p> </p></div> <div> </div> <div><div><div id="allow-voice-interruption-in-call-label"> </div> <div><!></div></div> <p> </p></div> <div><div><div id="display-emoji-label"> </div> <div><!></div></div> <p> </p></div> <div> </div> <div><div><div id="default-upload-mode-label"> </div> <button aria-labelledby="default-upload-mode-label default-upload-mode-state" type="button"><span id="default-upload-mode-state"> </span></button></div> <p> </p></div> <div><div><div id="image-compression-label"> </div> <div><!> <!></div></div> <p> </p></div> <!></div>',1);function Vf(He,_){vr(_,!1);const t=()=>ct(ua,"$settings",X),f=()=>ct(_a,"$config",X),n=()=>ct(A,"$i18n",X),Ie=()=>ct(ka,"$user",X),[X,R]=hr(),I=h(),c=h(),x=h(),A=mr("i18n");let E=Xe(_,"saveSettings",8),V=Xe(_,"settingsValue",8,null),B=Xe(_,"personalSettingsValue",24,()=>({})),j=h(null),w=h(null),Te=h(null),Se=h(!0),Y=h(!0),ee=h(!0),ae=h(!1),Pe=h(!1),se=h(!0),m=h(!0),ce=h(!0),De=h("sidebar"),Le=h(!1),Ne="",Ce=h(!1),we=h(!1),oe=h(!0),de=h(!1),be=h(!0),Me=h(!1),qe=h(!1),Re=h(!1),ue=h(!1),xe=h(!1),K=h(!1),Oe=h(!1),O=h(!0),ie=h(!0),M=h(""),ve=h(!0),te=h("auto"),ge=h(!1),_e=h(!1),Ae=h(!1),U=h(!0),T=h(!1),C=h(!0),D=h(!0),F=h(!1),H=h(!0),pe=h(!0),ye=h(!0),he=h(!0),q=h(null),P=h(!1),Q=h({width:"",height:""}),re=h(!0),le=h(!0),$e=h(!0),ze=h(!0),Fe=h("focused"),at=h(!1),tt=h(!1),Je=h(!1),je=h(null),ne=h(!0),J=h(!1),W=h(!0),Z=h(!0),Ee=h(!1),Ge=h(!1),p=h(!1),$=h(null),S=h(null),L=h(""),fe=h(!1),y=h(!1);const b="flex items-center justify-between gap-2.5",N="min-w-0 text-xs text-gray-600 dark:text-gray-400",z="flex shrink-0 items-center justify-end gap-1.5",Ue="mt-4 text-xs text-gray-400 dark:text-gray-600",Ye="text-xs text-gray-400 dark:text-gray-600",Ve="mt-1.5 text-[0.6875rem] text-gray-400 dark:text-gray-600",lt="text-xs text-gray-500 transition-colors hover:text-gray-900 dark:text-gray-500 dark:hover:text-white",st=(xt,bt)=>{let Gr=xt;for(const Xr of bt.split(".")){if(!Gr||typeof Gr!="object"||!Object.prototype.hasOwnProperty.call(Gr,Xr))return!1;Gr=Gr[Xr]}return!0},Ke={titleAutoGenerate:"title.auto"},Ze=xt=>{const bt=Ke[xt]??xt;return!e(c)&&st(e(x),bt)&&!st(B(),bt)},ot=async()=>{s(M,e(M)===""?"chat":""),E()({landingPageMode:e(M)})},ut=async()=>{if(e(c)){E()({userLocation:e(Le)});return}if(e(Le)){const xt=await nh().catch(bt=>(rt.error(bt.message),null));xt?(await rh(localStorage.token,{location:xt}),rt.success(n().t("User location successfully retrieved."))):s(Le,!1)}E()({userLocation:e(Le)})},_t=async()=>{E()({title:{...e(I).title??{},auto:e(Se)}})},nt=async()=>
16{if(e(c)){E()({responseAutoCopy:e(ae)});return}await navigator.clipboard.readText().then(()=>"granted").catch(()=>"")==="granted"?E()({responseAutoCopy:e(ae)}):(s(ae,!1),rt.error(n().t("Clipboard write permission denied. Please check your browser settings to grant the necessary access.")))},et=async()=>{e(te)==="auto"?s(te,"LTR"):e(te)==="LTR"?s(te,"RTL"):e(te)==="RTL"&&s(te,"auto"),E()({chatDirection:e(te)})},gt=async()=>{s(ge,!e(ge)),E()({ctrlEnterToSend:e(ge)})},It=async()=>{const xt=qo(e(L))||null;s(S,xt),s(L,xt??""),e(c)||Xo(e(S)||Tt()),E()({models:[Ne],imageCompressionSize:e(Q),fontFamily:e(S)})},Mt=async()=>{s(je,e(je)===null?"always":null),E()({webSearch:e(je)})},jt=xt=>{s($,xt),e(c)||xu(e($)),E()({textScale:e($)})},Tt=()=>qo(e(x).fontFamily)||null,yt=xt=>{s(L,xt),s(S,qo(xt)||null),e(c)||Xo(e(S)||Tt())},$t=xt=>{const bt=qo(xt);s(S,bt||null),s(L,bt),e(c)||Xo(e(S)||Tt()),E()({fontFamily:e(S)})},rr=()=>{!e(y)&&(e(S)===null||Ze("fontFamily"))?(s(S,e(S)??Tt()),s(L,e(S)??""),s(y,!0),e(c)||Xo(e(S))):(s(y,!1),s(S,null),s(L,""),e(c)||Xo(Tt()),E()({fontFamily:e(S)}))},Rt=()=>{var xt,bt,Gr,Xr,ga,pa,Pa,Aa,Ta,Ia,Sa,sl,nl,to,fl,ro,pl,ao,Qa,el,lo,oo,xi,bi,yi,$i,wi,ki,Ei,Ai,Ii,Si,Ni,Pi,Ci,Ti,Li,Oi,Mi,Ri,Di,Ui,Bi,Gi,ji,Hi,Fi,Wi,zi,Ki,Yi,Vi,qi,Xi,Ji,Zi,Qi,ed,td,rd,ad,ld,od,sd;s(Se,((bt=(xt=e(I))==null?void 0:xt.title)==null?void 0:bt.auto)??!0),s(ee,((Gr=e(I))==null?void 0:Gr.autoTags)??!0),s(Y,((Xr=e(I))==null?void 0:Xr.autoFollowUps)??!0),s(we,((ga=e(I))==null?void 0:ga.highContrastMode)??!1),s(oe,((pa=e(I))==null?void 0:pa.detectArtifacts)??!0),s(ae,((Pa=e(I))==null?void 0:Pa.responseAutoCopy)??!1),s(Ce,((Aa=e(I))==null?void 0:Aa.showUsername)??!1),s($e,((Ta=e(I))==null?void 0:Ta.showUpdateToast)??!0),s(ze,((Ia=e(I))==null?void 0:Ia.showChangelog)??!0),s(at,((Sa=e(I))==null?void 0:Sa.showEmojiInCall)??!1),s(tt,((sl=e(I))==null?void 0:sl.voiceInterruption)??!1),s(de,((nl=e(I))==null?void 0:nl.displayMultiModelResponsesInTabs)??!1),s(U,((to=e(I))==null?void 0:to.chatFadeStreamingText)??!0),s(be,((fl=e(I))==null?void 0:fl.richTextInput)??!0),s(Me,((ro=e(I))==null?void 0:ro.showFormattingToolbar)??!1),s(qe,((pl=e(I))==null?void 0:pl.insertPromptAsRichText)??!1),s(Re,((ao=e(I))==null?void 0:ao.promptAutocomplete)??!1),s(xe,((Qa=e(I))==null?void 0:Qa.insertSuggestionPrompt)??!1),s(K,((el=e(I))==null?void 0:el.keepFollowUpPrompts)??!1),s(Oe,((lo=e(I))==null?void 0:lo.insertFollowUpPrompt)??!1),s(O,((oo=e(I))==null?void 0:oo.regenerateMenu)??!0),s(ie,((xi=e(I))==null?void 0:xi.enableMessageQueue)??!0),s(ue,((bi=e(I))==null?void 0:bi.largeTextAsFile)??!1),s(_e,((yi=e(I))==null?void 0:yi.copyFormatted)??!1),s(T,(($i=e(I))==null?void 0:$i.collapseCodeBlocks)??!1),s(C,((wi=e(I))==null?void 0:wi.renderMarkdownInUserMessages)??!0),s(D,((ki=e(I))==null?void 0:ki.renderMarkdownInAssistantMessages)??!0),s(F,((Ei=e(I))==null?void 0:Ei.expandDetails)??!1),s(H,((Ai=e(I))==null?void 0:Ai.chatHoverPreview)??!0),s(pe,((Ii=e(I))==null?void 0:Ii.renderMarkdownInPreviews)??!0),s(M,((Si=e(I))==null?void 0:Si.landingPageMode)??""),s(ve,((Ni=e(I))==null?void 0:Ni.chatBubble)??!0),s(Pe,((Pi=e(I))==null?void 0:Pi.widescreenMode)??!1),(Ci=e(I))==null||Ci.splitLargeChunks,s(se,((Ti=e(I))==null?void 0:Ti.scrollOnBranchChange)??!0),s(m,((Li=e(I))==null?void 0:Li.scrollOnResponseGeneration)??!0),s(ce,((Oi=e(I))==null?void 0:Oi.showFilesOnTerminalSelect)??!0),s(De,((Mi=e(I))==null?void 0:Mi.terminalFileDisplay)==="inline"?"inline":"sidebar"),s(Ae,((Ri=e(I))==null?void 0:Ri.temporaryChatByDefault)??!1),s(te,((Di=e(I))==null?void 0:Di.chatDirection)??"auto"),s(Le,((Ui=e(I))==null?void 0:Ui.userLocation)??!1),s(ye,((Bi=e(I))==null?void 0:Bi.showChatTitleInTab)??!0),s(ne,((Gi=e(I))==null?void 0:Gi.iframeSandboxAllowScripts)??!0),s(J,((ji=e(I))==null?void 0:ji.iframeSandboxAllowSameOrigin)??!1),s(W,((Hi=e(I))==null?void 0:Hi.iframeSandboxAllowForms)??!0),s(Z,((Fi=e(I))==null?void 0:Fi.iframeSandboxAllowDownloads)??!0),s(Ee,((Wi=e(I))==null?void 0:Wi.terminalPreviewAllowSameOrigin)??!1),s(le,((zi=e(I))==null?void 0:zi.stylizedPdfExport)??!0),s(Je,((Ki=e(I))==null?void 0:Ki.hapticFeedback)??!1),s(ge,((Yi=e(I))==null?void 0:Yi.ctrlEnterToSend)??!1),s(he,((Vi=e(I))==null?void 0:Vi.showFloatingActionButtons)??!0),s(q,((qi=e(I))==null?void 0:qi.floatingActionButtons)??null),s(P,((Xi=e(I))==null?void 0:Xi.imageCompression)??!1),s(Q,((Ji=e(I))==null?void 0:Ji.imageCompressionSize)??{width:"",height:""}),s(re,((Zi=e(I))==null?void 0:Zi.imageCompressionInChannels)??!0),Ne=((ed=(Qi=e(I))==null?void 0:Qi.models)==null?void 0:ed.at(0))??"",(td=f())!=null&&td.default_models&&(Ne=f().default_models.split(",")[0]),s(j,((rd=e(I))==null?void 0:rd.backgroundImageUrl)??null),s(je,((ad=e(I))==null?void 0:ad.webSearch)??null),s($,((ld=e(I))==null?void 0:ld.textScale)??null),s(S,qo((od=e(I))==null?void 0:od.fontFamily)||null),s(L,e(S)??""),s(fe,!1),s(y,!1),s(Fe,((sd=e(I))==null?void 0:sd.defaultUploadContext)??"focused")};let Wt=h(V());ea(async()=>{Rt()}),Kt(()=>(it(V()),t()),()=>{s(I,V()??t()??{})}),Kt(()=>it(V()),()=>{s(c,V()!==null)}),Kt(()=>f(),()=>{var xt,bt;s(x,((bt=(xt=f())==null?void 0:xt.ui)==null?void 0:bt.default_interface_settings)??{})}),Kt(()=>(it(V()),e(Wt)),()=>{V()!==e(Wt)&&(s(Wt,V()),Rt())}),la();var or={save:It};gr();var $r=bk(),Et=Qe($r);dk(Et,{onSave:()=>{E()({floatingActionButtons:e(q)})},get show(){return e(Ge)},set show(xt){s(Ge,xt)},get floatingActionButtons(){return e(q)},set floatingActionButtons(xt){s(q,xt)},$$legacy:!0});var St=o(Et,2);ck(St,{onSave:()=>{E()({imageCompressionSize:e(Q)})},get show(){return e(p)},set show(xt){s(p,xt)},get size(){return e(Q)},set size(xt){s(Q,xt)},$$legacy:!0});var Dt=o(St,2);Oa(Dt,xt=>s(Te,xt),()=>e(Te));var ar=o(Dt,2),Tr=a(ar);k(Tr,1,me(Ye));var tr=a(Tr,!0);r(Tr);var ur=o(Tr,2),_r=a(ur);k(_r,1,me(b));var br=a(_r);k(br,1,me(N));var kt=a(br,!0);r(br);var jr=o(br,2);k(jr,1,me(z));var qt=a(jr);k(qt,1,me(lt));var At=a(qt);{var Ot=xt=>{var bt=Jg(),Gr=a(bt,!0);r(bt),g(Xr=>d(Gr,Xr),[()=>(n(),l(()=>n().t("Default")))]),i(xt,bt)},Ht=Qr(()=>(e($),e(fe),l(()=>e($)===null||Ze("textScale")&&!e(fe)))),Xt=xt=>{var bt=Jg(),Gr=a(bt);r(bt),g(()=>d(Gr,`${e($)??""}x`)),i(xt,bt)};G(At,xt=>{e(Ht)?xt(Ot):xt(Xt,-1)})}r(qt),r(jr),r(_r);var er=o(_r,2);{var xr=xt=>{var bt=uk(),Gr=a(bt),Xr=a(Gr);Ys(Xr,{className:"h-3.5 w-3.5"}),r(Gr);var ga=o(Gr,2),pa=a(ga);vt(pa),Be(pa,"step",.01),r(ga);var Pa=o(ga,2),Aa=a(Pa);Ya(Aa,{className:"h-3.5 w-3.5"}),r(Pa),r(bt),g((Ta,Ia)=>{Be(Gr,"aria-label",Ta),Be(pa,"aria-valuenow",e($)),Be(pa,"aria-valuetext",`${e($)}
16x`),Be(Pa,"aria-label",Ia)},[()=>(n(),l(()=>n().t("Decrease UI Scale"))),()=>(n(),l(()=>n().t("Increase UI Scale")))]),ke("click",Gr,()=>{s($,Math.max(1,parseFloat(((e($)??1)-.1).toFixed(2)))),jt(e($))}),dt(pa,()=>e($),Ta=>s($,Ta)),ke("change",pa,()=>{jt(e($)??1)}),ke("click",Pa,()=>{s($,Math.min(1.5,parseFloat(((e($)??1)+.1).toFixed(2)))),jt(e($))}),i(xt,bt)},Qt=Qr(()=>(e($),e(fe),l(()=>e($)!==null&&(e(fe)||!Ze("textScale")))));G(er,xt=>{e(Qt)&&xt(xr)})}var fr=o(er,2);k(fr,1,me(Ve));var wt=a(fr,!0);r(fr),r(ur);var ht=o(ur,2),zt=a(ht);k(zt,1,me(b));var ir=a(zt);k(ir,1,me(N));var dr=a(ir,!0);r(ir);var Ct=o(ir,2);k(Ct,1,me(z));var Er=a(Ct);k(Er,1,me(lt));var Bt=a(Er),Ft=a(Bt,!0);r(Bt),r(Er),r(Ct),r(zt);var Zt=o(zt,2);{var wr=xt=>{var bt=gk(),Gr=a(bt);vt(Gr),r(bt),dt(Gr,()=>e(L),Xr=>s(L,Xr)),ke("input",Gr,Xr=>yt(Xr.currentTarget.value)),ke("change",Gr,Xr=>$t(Xr.currentTarget.value)),i(xt,bt)},kr=Qr(()=>(e(y),e(S),l(()=>e(y)||e(S)!==null&&!Ze("fontFamily"))));G(Zt,xt=>{e(kr)&&xt(wr)})}var Hr=o(Zt,2);k(Hr,1,me(Ve));var yr=a(Hr,!0);r(Hr),r(ht);var Sr=o(ht,2),Br=a(Sr);k(Br,1,me(b));var pr=a(Br);k(pr,1,me(N));var sr=a(pr,!0);r(pr);var Kr=o(pr,2);k(Kr,1,me(z));var Yt=a(Kr);{let xt=v(()=>l(()=>Ze("highContrastMode")));Nt(Yt,{ariaLabelledbyId:"accessibility-mode-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(we)},set state(bt){s(we,bt)},$$events:{change:()=>{E()({highContrastMode:e(we)})}},$$legacy:!0})}r(Kr),r(Br);var Or=o(Br,2);k(Or,1,me(Ve));var Lr=a(Or,!0);r(Or),r(Sr);var Pt=o(Sr,2),Gt=a(Pt);k(Gt,1,me(b));var nr=a(Gt);k(nr,1,me(N));var ft=a(nr,!0);r(nr);var pt=o(nr,2);k(pt,1,me(z));var Ut=a(pt);{let xt=v(()=>l(()=>Ze("showChatTitleInTab")));Nt(Ut,{ariaLabelledbyId:"use-chat-title-as-tab-title-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(ye)},set state(bt){s(ye,bt)},$$events:{change:()=>{E()({showChatTitleInTab:e(ye)})}},$$legacy:!0})}r(pt),r(Gt);var Vt=o(Gt,2);k(Vt,1,me(Ve));var Dr=a(Vt,!0);r(Vt),r(Pt);var Yr=o(Pt,2),Nr=a(Yr);k(Nr,1,me(b));var zr=a(Nr);k(zr,1,me(N));var Fr=a(zr,!0);r(zr);var Rr=o(zr,2);k(Rr,1,me(z));var Ur=a(Rr);{let xt=v(()=>l(()=>Ze("userLocation")));Nt(Ur,{ariaLabelledbyId:"allow-user-location-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(Le)},set state(bt){s(Le,bt)},$$events:{change:()=>{ut()}},$$legacy:!0})}r(Rr),r(Nr);var Vr=o(Nr,2);k(Vr,1,me(Ve));var qr=a(Vr,!0);r(Vr),r(Yr);var Zr=o(Yr,2),ta=a(Zr);k(ta,1,me(b));var oa=a(ta);k(oa,1,me(N));var da=a(oa);r(oa);var Pr=o(oa,2);k(Pr,1,me(z));var Ea=a(Pr);{let xt=v(()=>l(()=>Ze("hapticFeedback")));Nt(Ea,{ariaLabelledbyId:"haptic-feedback-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(Je)},set state(bt){s(Je,bt)},$$events:{change:()=>{E()({hapticFeedback:e(Je)})}},$$legacy:!0})}r(Pr),r(ta);var Ma=o(ta,2);k(Ma,1,me(Ve));var ya=a(Ma,!0);r(Ma),r(Zr);var Ra=o(Zr,2),Ha=a(Ra);k(Ha,1,me(b));var Xa=a(Ha);k(Xa,1,me(N));var ol=a(Xa,!0);r(Xa);var yl=o(Xa,2);k(yl,1,me(z));var ul=a(yl);{let xt=v(()=>l(()=>Ze("copyFormatted")));Nt(ul,{ariaLabelledbyId:"copy-formatted-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(_e)},set state(bt){s(_e,bt)},$$events:{change:()=>{E()({copyFormatted:e(_e)})}},$$legacy:!0})}r(yl),r(Ha);var $l=o(Ha,2);k($l,1,me(Ve));var gl=a($l,!0);r($l),r(Ra);var Ll=o(Ra,2);{var _l=xt=>{var bt=_k(),Gr=Qe(bt),Xr=a(Gr);k(Xr,1,me(b));var ga=a(Xr);k(ga,1,me(N));var pa=a(ga,!0);r(ga);var Pa=o(ga,2);k(Pa,1,me(z));var Aa=a(Pa);{let Qa=v(()=>l(()=>Ze("showUpdateToast")));Nt(Aa,{ariaLabelledbyId:"toast-notifications-label",tooltip:!0,get inherited(){return e(Qa)},get state(){return e($e)},set state(el){s($e,el)},$$events:{change:()=>{E()({showUpdateToast:e($e)})}},$$legacy:!0})}r(Pa),r(Xr);var Ta=o(Xr,2);k(Ta,1,me(Ve));var Ia=a(Ta,!0);r(Ta),r(Gr);var Sa=o(Gr,2),sl=a(Sa);k(sl,1,me(b));var nl=a(sl);k(nl,1,me(N));var to=a(nl,!0);r(nl);var fl=o(nl,2);k(fl,1,me(z));var ro=a(fl);{let Qa=v(()=>l(()=>Ze("showChangelog")));Nt(ro,{ariaLabelledbyId:"whats-new-label",tooltip:!0,get inherited(){return e(Qa)},get state(){return e(ze)},set state(el){s(ze,el)},$$events:{change:()=>{E()({showChangelog:e(ze)})}},$$legacy:!0})}r(fl),r(sl);var pl=o(sl,2);k(pl,1,me(Ve));var ao=a(pl,!0);r(pl),r(Sa),g((Qa,el,lo,oo)=>{d(pa,Qa),d(Ia,el),d(to,lo),d(ao,oo)},[()=>(n(),l(()=>n().t("Toast Notifications for New Updates"))),()=>(n(),l(()=>n().t("Show update toasts to admins when new versions are available."))),()=>(n(),l(()=>n().t(`Show "What's New" Modal on Login`))),()=>(n(),l(()=>n().t("Open the changelog modal after sign-in when enabled.")))]),i(xt,bt)};G(Ll,xt=>{Ie(),l(()=>{var bt;return((bt=Ie())==null?void 0:bt.role)==="admin"})&&xt(_l)})}var Da=o(Ll,2);k(Da,1,me(Ue));var Ga=a(Da,!0);r(Da);var Fa=o(Da,2),Za=a(Fa);k(Za,1,me(b));var za=a(Za);k(za,1,me(N));var il=a(za,!0);r(za);var wl=o(za,2);k(wl,1,me(z));var Gd=a(wl);{let xt=v(()=>l(()=>Ze("enableMessageQueue")));Nt(Gd,{ariaLabelledbyId:"enable-message-queue-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(ie)},set state(bt){s(ie,bt)},$$events:{change:()=>{E()({enableMessageQueue:e(ie)})}},$$legacy:!0})}r(wl),r(Za);var To=o(Za,2);k(To,1,me(Ve));var ls=a(To,!0);r(To),r(Fa);var Lo=o(Fa,2),Hl=a(Lo);k(Hl,1,me(b));var Fl=a(Hl);k(Fl,1,me(N));var jd=a(Fl,!0);r(Fl);var co=o(Fl,2);k(co,1,me(lt));var Oo=a(co),os=a(Oo,!0);r(Oo),r(co),r(Hl);var uo=o(Hl,2);k(uo,1,me(Ve));var ss=a(uo,!0);r(uo),r(Lo);var go=o(Lo,2),Mo=a(go);k(Mo,1,me(b));var _o=a(Mo);k(_o,1,me(N));var ns=a(_o,!0);r(_o);var Ol=o(_o,2);k(Ol,1,me(lt));var Wl=a(Ol),Hd=a(Wl,!0);r(Wl),r(Ol),r(Mo);var zl=o(Mo,2);k(zl,1,me(Ve));var Fd=a(zl,!0);r(zl),r(go);var is=o(go,2),Ro=a(is);k(Ro,1,me(b));var fo=a(Ro);k(fo,1,me(N));var ds=a(fo,!0);r(fo);var Kl=o(fo,2);k(Kl,1,me(lt));var vs=a(Kl),qs=a(vs,!0);
16r(vs),r(Kl),r(Ro);var cs=o(Ro,2);k(cs,1,me(Ve));var Xs=a(cs,!0);r(cs),r(is);var po=o(is,2),Yl=a(po);k(Yl,1,me(b));var mo=a(Yl);k(mo,1,me(N));var us=a(mo,!0);r(mo);var Vl=o(mo,2);k(Vl,1,me(z));var Wd=a(Vl);{let xt=v(()=>l(()=>Ze("chatBubble")));Nt(Wd,{tooltip:!0,ariaLabelledbyId:"chat-bubble-ui-label",get inherited(){return e(xt)},get state(){return e(ve)},set state(bt){s(ve,bt)},$$events:{change:()=>{E()({chatBubble:e(ve)})}},$$legacy:!0})}r(Vl),r(Yl);var ho=o(Yl,2);k(ho,1,me(Ve));var zd=a(ho,!0);r(ho),r(po);var Js=o(po,2);{var gs=xt=>{var bt=fk(),Gr=a(bt);k(Gr,1,me(b));var Xr=a(Gr);k(Xr,1,me(N));var ga=a(Xr,!0);r(Xr);var pa=o(Xr,2);k(pa,1,me(z));var Pa=a(pa);{let Ia=v(()=>l(()=>Ze("showUsername")));Nt(Pa,{ariaLabelledbyId:"chat-bubble-username-label",tooltip:!0,get inherited(){return e(Ia)},get state(){return e(Ce)},set state(Sa){s(Ce,Sa)},$$events:{change:()=>{E()({showUsername:e(Ce)})}},$$legacy:!0})}r(pa),r(Gr);var Aa=o(Gr,2);k(Aa,1,me(Ve));var Ta=a(Aa,!0);r(Aa),r(bt),g((Ia,Sa)=>{d(ga,Ia),d(Ta,Sa)},[()=>(n(),l(()=>n().t("Display the Username Instead of You in the Chat"))),()=>(n(),l(()=>n().t("Show your username label instead of You in chat bubbles.")))]),i(xt,bt)};G(Js,xt=>{e(ve)||xt(gs)})}var Do=o(Js,2),ql=a(Do);k(ql,1,me(b));var Xl=a(ql);k(Xl,1,me(N));var Kd=a(Xl,!0);r(Xl);var Jl=o(Xl,2);k(Jl,1,me(z));var Zs=a(Jl);{let xt=v(()=>l(()=>Ze("widescreenMode")));Nt(Zs,{ariaLabelledbyId:"widescreen-mode-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(Pe)},set state(bt){s(Pe,bt)},$$events:{change:()=>{E()({widescreenMode:e(Pe)})}},$$legacy:!0})}r(Jl),r(ql);var xo=o(ql,2);k(xo,1,me(Ve));var _s=a(xo,!0);r(xo),r(Do);var Uo=o(Do,2);{var Qs=xt=>{var bt=pk(),Gr=a(bt);k(Gr,1,me(b));var Xr=a(Gr);k(Xr,1,me(N));var ga=a(Xr,!0);r(Xr);var pa=o(Xr,2);k(pa,1,me(z));var Pa=a(pa);{let Ia=v(()=>l(()=>Ze("temporaryChatByDefault")));Nt(Pa,{ariaLabelledbyId:"temp-chat-default-label",tooltip:!0,get inherited(){return e(Ia)},get state(){return e(Ae)},set state(Sa){s(Ae,Sa)},$$events:{change:()=>{E()({temporaryChatByDefault:e(Ae)})}},$$legacy:!0})}r(pa),r(Gr);var Aa=o(Gr,2);k(Aa,1,me(Ve));var Ta=a(Aa,!0);r(Aa),r(bt),g((Ia,Sa)=>{d(ga,Ia),d(Ta,Sa)},[()=>(n(),l(()=>n().t("Temporary Chat by Default"))),()=>(n(),l(()=>n().t("Start new chats as temporary unless changed.")))]),i(xt,bt)};G(Uo,xt=>{Ie(),l(()=>{var bt,Gr,Xr,ga;return((bt=Ie())==null?void 0:bt.role)==="admin"||((ga=(Xr=(Gr=Ie())==null?void 0:Gr.permissions)==null?void 0:Xr.chat)==null?void 0:ga.temporary)})&&xt(Qs)})}var fs=o(Uo,2),bo=a(fs);k(bo,1,me(b));var Zl=a(bo);k(Zl,1,me(N));var en=a(Zl,!0);r(Zl);var ps=o(Zl,2);k(ps,1,me(z));var ms=a(ps);{let xt=v(()=>l(()=>Ze("chatFadeStreamingText")));Nt(ms,{ariaLabelledbyId:"fade-streaming-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(U)},set state(bt){s(U,bt)},$$events:{change:()=>{E()({chatFadeStreamingText:e(U)})}},$$legacy:!0})}r(ps),r(bo);var hs=o(bo,2);k(hs,1,me(Ve));var Bo=a(hs,!0);r(hs),r(fs);var xs=o(fs,2),sa=a(xs);k(sa,1,me(b));var Ua=a(sa);k(Ua,1,me(N));var dl=a(Ua,!0);r(Ua);var rl=o(Ua,2);k(rl,1,me(z));var Ql=a(rl);{let xt=v(()=>l(()=>Ze("renderMarkdownInUserMessages")));Nt(Ql,{ariaLabelledbyId:"render-markdown-user-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(C)},set state(bt){s(C,bt)},$$events:{change:()=>{E()({renderMarkdownInUserMessages:e(C)})}},$$legacy:!0})}r(rl),r(sa);var Il=o(sa,2);k(Il,1,me(Ve));var yo=a(Il,!0);r(Il),r(xs);var $o=o(xs,2),kl=a($o);k(kl,1,me(b));var eo=a(kl);k(eo,1,me(N));var Yd=a(eo,!0);r(eo);var bs=o(eo,2);k(bs,1,me(z));var Vd=a(bs);{let xt=v(()=>l(()=>Ze("renderMarkdownInAssistantMessages")));Nt(Vd,{ariaLabelledbyId:"render-markdown-assistant-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(D)},set state(bt){s(D,bt)},$$events:{change:()=>{E()({renderMarkdownInAssistantMessages:e(D)})}},$$legacy:!0})}r(bs),r(kl);var ys=o(kl,2);k(ys,1,me(Ve));var qd=a(ys,!0);r(ys),r($o);var $s=o($o,2),Go=a($s);k(Go,1,me(b));var jo=a(Go);k(jo,1,me(N));var Xd=a(jo,!0);r(jo);var ws=o(jo,2);k(ws,1,me(z));var Jd=a(ws);{let xt=v(()=>l(()=>Ze("renderMarkdownInPreviews")));Nt(Jd,{ariaLabelledbyId:"render-markdown-in-previews-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(pe)},set state(bt){s(pe,bt)},$$events:{change:()=>{E()({renderMarkdownInPreviews:e(pe)})}},$$legacy:!0})}r(ws),r(Go);var ks=o(Go,2);k(ks,1,me(Ve));var Zd=a(ks,!0);r(ks),r($s);var Es=o($s,2),Ho=a(Es);k(Ho,1,me(b));var Fo=a(Ho);k(Fo,1,me(N));var tn=a(Fo,!0);r(Fo);var Qd=o(Fo,2);k(Qd,1,me(z));var ap=a(Qd);{let xt=v(()=>l(()=>Ze("titleAutoGenerate")));Nt(ap,{ariaLabelledbyId:"auto-generation-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(Se)},set state(bt){s(Se,bt)},$$events:{change:()=>{_t()}},$$legacy:!0})}r(Qd),r(Ho);var ev=o(Ho,2);k(ev,1,me(Ve));var lp=a(ev,!0);r(ev),r(Es);var tv=o(Es,2),rn=a(tv);k(rn,1,me(b));var an=a(rn);k(an,1,me(N));var op=a(an,!0);r(an);var rv=o(an,2);k(rv,1,me(z));var sp=a(rv);{let xt=v(()=>l(()=>Ze("autoFollowUps")));Nt(sp,{ariaLabelledbyId:"follow-up-auto-generation-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(Y)},set state(bt){s(Y,bt)},$$events:{change:()=>{E()({autoFollowUps:e(Y)})}},$$legacy:!0})}r(rv),r(rn);var av=o(rn,2);k(av,1,me(Ve));var np=a(av,!0);r(av),r(tv);var lv=o(tv,2),ln=a(lv);k(ln,1,me(b));var on=a(ln);k(on,1,me(N));var ip=a(on,!0);r(on);var ov=o(on,2);k(ov,1,me(z));var dp=a(ov);{let xt=v(()=>l(()=>Ze("autoTags")));Nt(dp,{ariaLabelledbyId:"chat-tags-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(ee)},set state(bt){s(ee,bt)},$$events:{change:()=>{E()({autoTags:e(ee)})}},$$legacy:!0})}r(ov),r(ln);var sv=o(ln,2);k(sv,1,me(Ve));var vp=a(sv,!0);r(sv),r(lv);var nv=o(lv,2),sn=a(nv);k(sn,1,me(b));var nn=a(sn);k(nn,1,me(N));var cp=a(nn,!0);r(nn);var iv=o(nn,2);k(iv,1,me(z));var up=a(iv);{let xt=v(()=>l(()=>Ze("responseAutoCopy")));Nt(up,{ariaLabelledbyId:"auto-copy-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(ae)},set state(bt){s(ae,bt)},$$events:{change:()=>{nt()}},$$legacy:!0})}r(iv),r(sn);var dv=o(sn,2);k(dv,1,me(Ve));var gp=a(dv,!0);r(dv),r(nv);var vv=o(nv,2),dn=a(vv);k(dn,1,me(b));var vn=a(dn);k(vn,1,me(N));var _p=a(vn,!0);r(vn);var cv=o(vn,2);k(cv,1,me(z));var fp=a(cv);{let xt=v(()=>l(()=>Ze("scrollOnResponseGeneration")));Nt(fp,{ariaLabelledbyId:"response-auto-scroll-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(m)},set state(bt){s(m,bt)},$$events:{change:()=>{E()({scrollOnResponseGeneration:e(m)})}},$$legacy:!0})}r(cv),r(dn);var uv=o(dn,2);k(uv,1,me(Ve));var pp=a(uv,!0);r(uv),r(vv);var gv=o(vv,2),cn=a(gv);k(cn,1,me(b));var un=a(cn);k(un,1,me(N));var mp=a(un,!0);
16r(un);var _v=o(un,2);k(_v,1,me(z));var hp=a(_v);{let xt=v(()=>l(()=>Ze("scrollOnBranchChange")));Nt(hp,{ariaLabelledbyId:"scroll-on-branch-change-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(se)},set state(bt){s(se,bt)},$$events:{change:()=>{E()({scrollOnBranchChange:e(se)})}},$$legacy:!0})}r(_v),r(cn);var fv=o(cn,2);k(fv,1,me(Ve));var xp=a(fv,!0);r(fv),r(gv);var pv=o(gv,2),gn=a(pv);k(gn,1,me(b));var _n=a(gn);k(_n,1,me(N));var bp=a(_n,!0);r(_n);var mv=o(_n,2);k(mv,1,me(z));var yp=a(mv);{let xt=v(()=>l(()=>Ze("insertSuggestionPrompt")));Nt(yp,{ariaLabelledbyId:"insert-suggestion-prompt-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(xe)},set state(bt){s(xe,bt)},$$events:{change:()=>{E()({insertSuggestionPrompt:e(xe)})}},$$legacy:!0})}r(mv),r(gn);var hv=o(gn,2);k(hv,1,me(Ve));var $p=a(hv,!0);r(hv),r(pv);var xv=o(pv,2),fn=a(xv);k(fn,1,me(b));var pn=a(fn);k(pn,1,me(N));var wp=a(pn,!0);r(pn);var bv=o(pn,2);k(bv,1,me(z));var kp=a(bv);{let xt=v(()=>l(()=>Ze("keepFollowUpPrompts")));Nt(kp,{ariaLabelledbyId:"keep-follow-up-prompts-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(K)},set state(bt){s(K,bt)},$$events:{change:()=>{E()({keepFollowUpPrompts:e(K)})}},$$legacy:!0})}r(bv),r(fn);var yv=o(fn,2);k(yv,1,me(Ve));var Ep=a(yv,!0);r(yv),r(xv);var $v=o(xv,2),mn=a($v);k(mn,1,me(b));var hn=a(mn);k(hn,1,me(N));var Ap=a(hn,!0);r(hn);var wv=o(hn,2);k(wv,1,me(z));var Ip=a(wv);{let xt=v(()=>l(()=>Ze("insertFollowUpPrompt")));Nt(Ip,{ariaLabelledbyId:"insert-follow-up-prompt-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(Oe)},set state(bt){s(Oe,bt)},$$events:{change:()=>{E()({insertFollowUpPrompt:e(Oe)})}},$$legacy:!0})}r(wv),r(mn);var kv=o(mn,2);k(kv,1,me(Ve));var Sp=a(kv,!0);r(kv),r($v);var Ev=o($v,2),xn=a(Ev);k(xn,1,me(b));var bn=a(xn);k(bn,1,me(N));var Np=a(bn,!0);r(bn);var Av=o(bn,2);k(Av,1,me(z));var Pp=a(Av);{let xt=v(()=>l(()=>Ze("regenerateMenu")));Nt(Pp,{ariaLabelledbyId:"regenerate-menu-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(O)},set state(bt){s(O,bt)},$$events:{change:()=>{E()({regenerateMenu:e(O)})}},$$legacy:!0})}r(Av),r(xn);var Iv=o(xn,2);k(Iv,1,me(Ve));var Cp=a(Iv,!0);r(Iv),r(Ev);var Sv=o(Ev,2),yn=a(Sv);k(yn,1,me(b));var $n=a(yn);k($n,1,me(N));var Tp=a($n,!0);r($n);var Nv=o($n,2);k(Nv,1,me(z));var Lp=a(Nv);{let xt=v(()=>l(()=>Ze("collapseCodeBlocks")));Nt(Lp,{ariaLabelledbyId:"always-collapse-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(T)},set state(bt){s(T,bt)},$$events:{change:()=>{E()({collapseCodeBlocks:e(T)})}},$$legacy:!0})}r(Nv),r(yn);var Pv=o(yn,2);k(Pv,1,me(Ve));var Op=a(Pv,!0);r(Pv),r(Sv);var Cv=o(Sv,2),wn=a(Cv);k(wn,1,me(b));var kn=a(wn);k(kn,1,me(N));var Mp=a(kn,!0);r(kn);var Tv=o(kn,2);k(Tv,1,me(z));var Rp=a(Tv);{let xt=v(()=>l(()=>Ze("expandDetails")));Nt(Rp,{ariaLabelledbyId:"always-expand-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(F)},set state(bt){s(F,bt)},$$events:{change:()=>{E()({expandDetails:e(F)})}},$$legacy:!0})}r(Tv),r(wn);var Lv=o(wn,2);k(Lv,1,me(Ve));var Dp=a(Lv,!0);r(Lv),r(Cv);var Ov=o(Cv,2),En=a(Ov);k(En,1,me(b));var An=a(En);k(An,1,me(N));var Up=a(An,!0);r(An);var Mv=o(An,2);k(Mv,1,me(z));var Bp=a(Mv);{let xt=v(()=>l(()=>Ze("chatHoverPreview")));Nt(Bp,{ariaLabelledbyId:"chat-hover-preview-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(H)},set state(bt){s(H,bt)},$$events:{change:()=>{E()({chatHoverPreview:e(H)})}},$$legacy:!0})}r(Mv),r(En);var Rv=o(En,2);k(Rv,1,me(Ve));var Gp=a(Rv,!0);r(Rv),r(Ov);var Dv=o(Ov,2),In=a(Dv);k(In,1,me(b));var Sn=a(In);k(Sn,1,me(N));var jp=a(Sn,!0);r(Sn);var Uv=o(Sn,2);k(Uv,1,me(z));var Hp=a(Uv);{let xt=v(()=>l(()=>Ze("displayMultiModelResponsesInTabs")));Nt(Hp,{ariaLabelledbyId:"keep-followup-prompts-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(de)},set state(bt){s(de,bt)},$$events:{change:()=>{E()({displayMultiModelResponsesInTabs:e(de)})}},$$legacy:!0})}r(Uv),r(In);var Bv=o(In,2);k(Bv,1,me(Ve));var Fp=a(Bv,!0);r(Bv),r(Dv);var Gv=o(Dv,2),Nn=a(Gv);k(Nn,1,me(b));var Pn=a(Nn);k(Pn,1,me(N));var Wp=a(Pn,!0);r(Pn);var Cn=o(Pn,2);k(Cn,1,me(lt));var eg=a(Cn),zp=a(eg,!0);r(eg),r(Cn),r(Nn);var jv=o(Nn,2);k(jv,1,me(Ve));var Kp=a(jv,!0);r(jv),r(Gv);var Hv=o(Gv,2),Tn=a(Hv);k(Tn,1,me(b));var Ln=a(Tn);k(Ln,1,me(N));var Yp=a(Ln,!0);r(Ln);var Fv=o(Ln,2);k(Fv,1,me(z));var Vp=a(Fv);{let xt=v(()=>l(()=>Ze("showFilesOnTerminalSelect")));Nt(Vp,{ariaLabelledbyId:"show-files-on-terminal-select-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(ce)},set state(bt){s(ce,bt)},$$events:{change:()=>{E()({showFilesOnTerminalSelect:e(ce)})}},$$legacy:!0})}r(Fv),r(Tn);var Wv=o(Tn,2);k(Wv,1,me(Ve));var qp=a(Wv,!0);r(Wv),r(Hv);var zv=o(Hv,2),On=a(zv);k(On,1,me(b));var Mn=a(On);k(Mn,1,me(N));var Xp=a(Mn,!0);r(Mn);var Kv=o(Mn,2);k(Kv,1,me(z));var Jp=a(Kv);{let xt=v(()=>l(()=>Ze("terminalPreviewAllowSameOrigin")));
16Nt(Jp,{ariaLabelledbyId:"terminal-preview-allow-same-origin-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(Ee)},set state(bt){s(Ee,bt)},$$events:{change:()=>{E()({terminalPreviewAllowSameOrigin:e(Ee)})}},$$legacy:!0})}r(Kv),r(On);var Yv=o(On,2);k(Yv,1,me(Ve));var Zp=a(Yv,!0);r(Yv),r(zv);var Vv=o(zv,2),Rn=a(Vv);k(Rn,1,me(b));var Dn=a(Rn);k(Dn,1,me(N));var Qp=a(Dn,!0);r(Dn);var qv=o(Dn,2);k(qv,1,me(z));var e0=a(qv);{let xt=v(()=>l(()=>Ze("stylizedPdfExport")));Nt(e0,{ariaLabelledbyId:"stylized-pdf-export-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(le)},set state(bt){s(le,bt)},$$events:{change:()=>{E()({stylizedPdfExport:e(le)})}},$$legacy:!0})}r(qv),r(Rn);var Xv=o(Rn,2);k(Xv,1,me(Ve));var t0=a(Xv,!0);r(Xv),r(Vv);var Jv=o(Vv,2),Un=a(Jv);k(Un,1,me(b));var Bn=a(Un);k(Bn,1,me(N));var r0=a(Bn,!0);r(Bn);var Zv=o(Bn,2);k(Zv,1,me(z));var tg=a(Zv);{var a0=xt=>{var bt=Zg();k(bt,1,me(lt));var Gr=a(bt,!0);r(bt),g((Xr,ga)=>{Be(bt,"aria-label",Xr),d(Gr,ga)},[()=>(n(),l(()=>n().t("Open Modal To Manage Floating Quick Actions"))),()=>(n(),l(()=>n().t("Manage")))]),ke("click",bt,()=>{s(Ge,!0)}),i(xt,bt)};G(tg,xt=>{e(he)&&xt(a0)})}var l0=o(tg,2);{let xt=v(()=>l(()=>Ze("showFloatingActionButtons")));Nt(l0,{ariaLabelledbyId:"floating-action-buttons-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(he)},set state(bt){s(he,bt)},$$events:{change:()=>{E()({showFloatingActionButtons:e(he)})}},$$legacy:!0})}r(Zv),r(Un);var Qv=o(Un,2);k(Qv,1,me(Ve));var o0=a(Qv,!0);r(Qv),r(Jv);var ec=o(Jv,2),Gn=a(ec);k(Gn,1,me(b));var jn=a(Gn);k(jn,1,me(N));var s0=a(jn,!0);r(jn);var Hn=o(jn,2);k(Hn,1,me(lt));var rg=a(Hn),n0=a(rg,!0);r(rg),r(Hn),r(Gn);var tc=o(Gn,2);k(tc,1,me(Ve));var i0=a(tc,!0);r(tc),r(ec);var Fn=o(ec,2);k(Fn,1,me(Ue));var d0=a(Fn,!0);r(Fn);var rc=o(Fn,2),Wn=a(rc);k(Wn,1,me(b));var zn=a(Wn);k(zn,1,me(N));var v0=a(zn,!0);r(zn);var Kn=o(zn,2);k(Kn,1,me(lt));var ag=a(Kn),c0=a(ag,!0);r(ag),r(Kn),r(Wn);var ac=o(Wn,2);k(ac,1,me(Ve));var u0=a(ac,!0);r(ac),r(rc);var lc=o(rc,2),Yn=a(lc);k(Yn,1,me(b));var Vn=a(Yn);k(Vn,1,me(N));var g0=a(Vn,!0);r(Vn);var oc=o(Vn,2);k(oc,1,me(z));var _0=a(oc);{let xt=v(()=>l(()=>Ze("richTextInput")));Nt(_0,{tooltip:!0,ariaLabelledbyId:"rich-input-label",get inherited(){return e(xt)},get state(){return e(be)},set state(bt){s(be,bt)},$$events:{change:()=>{E()({richTextInput:e(be)})}},$$legacy:!0})}r(oc),r(Yn);var sc=o(Yn,2);k(sc,1,me(Ve));var f0=a(sc,!0);r(sc),r(lc);var lg=o(lc,2);{var p0=xt=>{var bt=mk(),Gr=a(bt);k(Gr,1,me(b));var Xr=a(Gr);k(Xr,1,me(N));var ga=a(Xr,!0);r(Xr);var pa=o(Xr,2);k(pa,1,me(z));var Pa=a(pa);{let Ia=v(()=>l(()=>Ze("promptAutocomplete")));Nt(Pa,{ariaLabelledbyId:"prompt-autocompletion-label",tooltip:!0,get inherited(){return e(Ia)},get state(){return e(Re)},set state(Sa){s(Re,Sa)},$$events:{change:()=>{E()({promptAutocomplete:e(Re)})}},$$legacy:!0})}r(pa),r(Gr);var Aa=o(Gr,2);k(Aa,1,me(Ve));var Ta=a(Aa,!0);r(Aa),r(bt),g((Ia,Sa)=>{d(ga,Ia),d(Ta,Sa)},[()=>(n(),l(()=>n().t("Prompt Autocompletion"))),()=>(n(),l(()=>n().t("Suggest completions while composing prompts.")))]),i(xt,bt)};G(lg,xt=>{f(),l(()=>{var bt,Gr;return(Gr=(bt=f())==null?void 0:bt.features)==null?void 0:Gr.enable_autocomplete_generation})&&xt(p0)})}var og=o(lg,2);{var m0=xt=>{var bt=hk(),Gr=Qe(bt),Xr=a(Gr);k(Xr,1,me(b));var ga=a(Xr);k(ga,1,me(N));var pa=a(ga,!0);r(ga);var Pa=o(ga,2);k(Pa,1,me(z));var Aa=a(Pa);{let Qa=v(()=>l(()=>Ze("showFormattingToolbar")));Nt(Aa,{ariaLabelledbyId:"show-formatting-toolbar-label",tooltip:!0,get inherited(){return e(Qa)},get state(){return e(Me)},set state(el){s(Me,el)},$$events:{change:()=>{E()({showFormattingToolbar:e(Me)})}},$$legacy:!0})}r(Pa),r(Xr);var Ta=o(Xr,2);k(Ta,1,me(Ve));var Ia=a(Ta,!0);r(Ta),r(Gr);var Sa=o(Gr,2),sl=a(Sa);k(sl,1,me(b));var nl=a(sl);k(nl,1,me(N));var to=a(nl,!0);r(nl);var fl=o(nl,2);k(fl,1,me(z));var ro=a(fl);{let Qa=v(()=>l(()=>Ze("insertPromptAsRichText")));Nt(ro,{ariaLabelledbyId:"insert-prompt-as-rich-text-label",tooltip:!0,get inherited(){return e(Qa)},get state(){return e(qe)},set state(el){s(qe,el)},$$events:{change:()=>{E()({insertPromptAsRichText:e(qe)})}},$$legacy:!0})}r(fl),r(sl);var pl=o(sl,2);k(pl,1,me(Ve));var ao=a(pl,!0);r(pl),r(Sa),g((Qa,el,lo,oo)=>{d(pa,Qa),d(Ia,el),d(to,lo),d(ao,oo)},[()=>(n(),l(()=>n().t("Show Formatting Toolbar"))),()=>(n(),l(()=>n().t("Show formatting controls in the rich text composer."))),()=>(n(),l(()=>n().t("Insert Prompt as Rich Text"))),()=>(n(),l(()=>n().t("Paste inserted prompts as rich text when possible.")))]),i(xt,bt)};G(og,xt=>{e(be)&&xt(m0)})}var nc=o(og,2),qn=a(nc);k(qn,1,me(b));var Xn=a(qn);k(Xn,1,me(N));var h0=a(Xn,!0);r(Xn);var ic=o(Xn,2);k(ic,1,me(z));var x0=a(ic);{let xt=v(()=>l(()=>Ze("largeTextAsFile")));Nt(x0,{tooltip:!0,ariaLabelledbyId:"paste-large-label",get inherited(){return e(xt)},get state(){return e(ue)},set state(bt){s(ue,bt)},$$events:{change:()=>{E()({largeTextAsFile:e(ue)})}},$$legacy:!0})}r(ic),r(qn);var dc=o(qn,2);k(dc,1,me(Ve));var b0=a(dc,!0);r(dc),r(nc);var Jn=o(nc,2);k(Jn,1,me(Ue));var y0=a(Jn,!0);r(Jn);var vc=o(Jn,2),Zn=a(vc);k(Zn,1,me(b));var Qn=a(Zn);k(Qn,1,me(N));var $0=a(Qn,!0);r(Qn);var cc=o(Qn,2);k(cc,1,me(z));var w0=a(cc);{let xt=v(()=>l(()=>Ze("detectArtifacts")));Nt(w0,{ariaLabelledbyId:"detect-artifacts-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(oe)},set state(bt){s(oe,bt)},$$events:{change:()=>{E()({detectArtifacts:e(oe)})}},$$legacy:!0})}r(cc),r(Zn);var uc=o(Zn,2);k(uc,1,me(Ve));var k0=a(uc,!0);r(uc),r(vc);var gc=o(vc,2),ei=a(gc);k(ei,1,me(b));var ti=a(ei);k(ti,1,me(N));var E0=a(ti,!0);r(ti);var _c=o(ti,2);k(_c,1,me(z));var A0=a(_c);{let xt=v(()=>l(()=>Ze("iframeSandboxAllowScripts")));Nt(A0,{ariaLabelledbyId:"iframe-sandbox-allow-scripts-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(ne)},set state(bt){s(ne,bt)},$$events:{change:()=>{E()({iframeSandboxAllowScripts:e(ne)})}},$$legacy:!0})}r(_c),r(ei);var fc=o(ei,2);k(fc,1,me(Ve));var I0=a(fc,!0);r(fc),r(gc);var pc=o(gc,2),ri=a(pc);k(ri,1,me(b));var ai=a(ri);k(ai,1,me(N));var S0=a(ai,!0);r(ai);var mc=o(ai,2);k(mc,1,me(z));var N0=a(mc);{let xt=v(()=>l(()=>Ze("iframeSandboxAllowSameOrigin")));
16Nt(N0,{ariaLabelledbyId:"iframe-sandbox-allow-same-origin-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(J)},set state(bt){s(J,bt)},$$events:{change:()=>{E()({iframeSandboxAllowSameOrigin:e(J)})}},$$legacy:!0})}r(mc),r(ri);var hc=o(ri,2);k(hc,1,me(Ve));var P0=a(hc,!0);r(hc),r(pc);var xc=o(pc,2),li=a(xc);k(li,1,me(b));var oi=a(li);k(oi,1,me(N));var C0=a(oi,!0);r(oi);var bc=o(oi,2);k(bc,1,me(z));var T0=a(bc);{let xt=v(()=>l(()=>Ze("iframeSandboxAllowForms")));Nt(T0,{ariaLabelledbyId:"iframe-sandbox-allow-forms-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(W)},set state(bt){s(W,bt)},$$events:{change:()=>{E()({iframeSandboxAllowForms:e(W)})}},$$legacy:!0})}r(bc),r(li);var yc=o(li,2);k(yc,1,me(Ve));var L0=a(yc,!0);r(yc),r(xc);var $c=o(xc,2),si=a($c);k(si,1,me(b));var ni=a(si);k(ni,1,me(N));var O0=a(ni,!0);r(ni);var wc=o(ni,2);k(wc,1,me(z));var M0=a(wc);{let xt=v(()=>l(()=>Ze("iframeSandboxAllowDownloads")));Nt(M0,{ariaLabelledbyId:"iframe-sandbox-allow-downloads-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(Z)},set state(bt){s(Z,bt)},$$events:{change:()=>{E()({iframeSandboxAllowDownloads:e(Z)})}},$$legacy:!0})}r(wc),r(si);var kc=o(si,2);k(kc,1,me(Ve));var R0=a(kc,!0);r(kc),r($c);var ii=o($c,2);k(ii,1,me(Ue));var D0=a(ii,!0);r(ii);var Ec=o(ii,2),di=a(Ec);k(di,1,me(b));var vi=a(di);k(vi,1,me(N));var U0=a(vi,!0);r(vi);var Ac=o(vi,2);k(Ac,1,me(z));var B0=a(Ac);{let xt=v(()=>l(()=>Ze("voiceInterruption")));Nt(B0,{ariaLabelledbyId:"allow-voice-interruption-in-call-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(tt)},set state(bt){s(tt,bt)},$$events:{change:()=>{E()({voiceInterruption:e(tt)})}},$$legacy:!0})}r(Ac),r(di);var Ic=o(di,2);k(Ic,1,me(Ve));var G0=a(Ic,!0);r(Ic),r(Ec);var Sc=o(Ec,2),ci=a(Sc);k(ci,1,me(b));var ui=a(ci);k(ui,1,me(N));var j0=a(ui,!0);r(ui);var Nc=o(ui,2);k(Nc,1,me(z));var H0=a(Nc);{let xt=v(()=>l(()=>Ze("showEmojiInCall")));Nt(H0,{ariaLabelledbyId:"display-emoji-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(at)},set state(bt){s(at,bt)},$$events:{change:()=>{E()({showEmojiInCall:e(at)})}},$$legacy:!0})}r(Nc),r(ci);var Pc=o(ci,2);k(Pc,1,me(Ve));var F0=a(Pc,!0);r(Pc),r(Sc);var gi=o(Sc,2);k(gi,1,me(Ue));var W0=a(gi,!0);r(gi);var Cc=o(gi,2),_i=a(Cc);k(_i,1,me(b));var fi=a(_i);k(fi,1,me(N));var z0=a(fi,!0);r(fi);var pi=o(fi,2);k(pi,1,me(lt));var sg=a(pi),K0=a(sg,!0);r(sg),r(pi),r(_i);var Tc=o(_i,2);k(Tc,1,me(Ve));var Y0=a(Tc,!0);r(Tc),r(Cc);var Lc=o(Cc,2),mi=a(Lc);k(mi,1,me(b));var hi=a(mi);k(hi,1,me(N));var V0=a(hi,!0);r(hi);var Oc=o(hi,2);k(Oc,1,me(z));var ng=a(Oc);{var q0=xt=>{var bt=Zg();k(bt,1,me(lt));var Gr=a(bt,!0);r(bt),g((Xr,ga)=>{Be(bt,"aria-label",Xr),d(Gr,ga)},[()=>(n(),l(()=>n().t("Open Modal To Manage Image Compression"))),()=>(n(),l(()=>n().t("Manage")))]),ke("click",bt,()=>{s(p,!0)}),i(xt,bt)};G(ng,xt=>{e(P)&&xt(q0)})}var X0=o(ng,2);{let xt=v(()=>l(()=>Ze("imageCompression")));Nt(X0,{ariaLabelledbyId:"image-compression-label",tooltip:!0,get inherited(){return e(xt)},get state(){return e(P)},set state(bt){s(P,bt)},$$events:{change:()=>{E()({imageCompression:e(P)})}},$$legacy:!0})}r(Oc),r(mi);var Mc=o(mi,2);k(Mc,1,me(Ve));var J0=a(Mc,!0);r(Mc),r(Lc);var Z0=o(Lc,2);{var Q0=xt=>{var bt=xk(),Gr=a(bt);k(Gr,1,me(b));var Xr=a(Gr);k(Xr,1,me(N));var ga=a(Xr,!0);r(Xr);var pa=o(Xr,2);k(pa,1,me(z));var Pa=a(pa);{let Ia=v(()=>l(()=>Ze("imageCompressionInChannels")));Nt(Pa,{ariaLabelledbyId:"image-compression-in-channels-label",tooltip:!0,get inherited(){return e(Ia)},get state(){return e(re)},set state(Sa){s(re,Sa)},$$events:{change:()=>{E()({imageCompressionInChannels:e(re)})}},$$legacy:!0})}r(pa),r(Gr);var Aa=o(Gr,2);k(Aa,1,me(Ve));var Ta=a(Aa,!0);r(Aa),r(bt),g((Ia,Sa)=>{d(ga,Ia),d(Ta,Sa)},[()=>(n(),l(()=>n().t("Compress Images in Channels"))),()=>(n(),l(()=>n().t("Apply image compression to channel uploads too.")))]),i(xt,bt)};G(Z0,xt=>{e(P)&&xt(Q0)})}r(ar),g((xt,bt,Gr,Xr,ga,pa,Pa,Aa,Ta,Ia,Sa,sl,nl,to,fl,ro,pl,ao,Qa,el,lo,oo,xi,bi,yi,$i,wi,ki,Ei,Ai,Ii,Si,Ni,Pi,Ci,Ti,Li,Oi,Mi,Ri,Di,Ui,Bi,Gi,ji,Hi,Fi,Wi,zi,Ki,Yi,Vi,qi,Xi,Ji,Zi,Qi,ed,td,rd,ad,ld,od,sd,t1,r1,a1,l1,o1,s1,n1,i1,d1,v1,c1,u1,g1,_1,f1,p1,m1,h1,x1,b1,y1,$1,w1,k1,E1,A1,I1,S1,N1,P1,C1,T1,L1,O1,M1,R1,D1,U1,B1,G1,j1,H1,F1,W1,z1,K1,Y1,V1,q1)=>{d(tr,xt),d(kt,bt),d(wt,Gr),d(dr,Xr),d(Ft,ga),d(yr,pa),d(sr,Pa),d(Lr,Aa),d(ft,Ta),d(Dr,Ia),d(Fr,Sa),d(qr,sl),d(da,`${nl??""} (${to??""})`),d(ya,fl),d(ol,ro),d(gl,pl),d(Ga,ao),d(il,Qa),d(ls,el),d(jd,lo),d(os,oo),d(ss,xi),d(ns,bi),d(Hd,yi),d(Fd,$i),d(ds,wi),d(qs,ki),d(Xs,Ei),d(us,Ai),d(zd,Ii),d(Kd,Si),d(_s,Ni),d(en,Pi),d(Bo,Ci),d(dl,Ti),d(yo,Li),d(Yd,Oi),d(qd,Mi),d(Xd,Ri),d(Zd,Di),d(tn,Ui),d(lp,Bi),d(op,Gi),d(np,ji),d(ip,Hi),d(vp,Fi),d(cp,Wi),d(gp,zi),d(_p,Ki),d(pp,Yi),d(mp,Vi),d(xp,qi),d(bp,Xi),d($p,Ji),d(wp,Zi),d(Ep,Qi),d(Ap,ed),d(Sp,td),d(Np,rd),d(Cp,ad),d(Tp,ld),d(Op,od),d(Mp,sd),d(Dp,t1),d(Up,r1),d(Gp,a1),d(jp,l1),d(Fp,o1),d(Wp,s1),d(zp,n1),d(Kp,i1),d(Yp,d1),d(qp,v1),d(Xp,c1),d(Zp,u1),d(Qp,g1),d(t0,_1),d(r
160,f1),d(o0,p1),d(s0,m1),d(n0,h1),d(i0,x1),d(d0,b1),d(v0,y1),d(c0,$1),d(u0,w1),d(g0,k1),d(f0,E1),d(h0,A1),d(b0,I1),d(y0,S1),d($0,N1),d(k0,P1),d(E0,C1),d(I0,T1),d(S0,L1),d(P0,O1),d(C0,M1),d(L0,R1),d(O0,D1),d(R0,U1),d(D0,B1),d(U0,G1),d(G0,j1),d(j0,H1),d(F0,F1),d(W0,W1),d(z0,z1),d(K0,K1),d(Y0,Y1),d(V0,V1),d(J0,q1)},[()=>(n(),l(()=>n().t("UI"))),()=>(n(),l(()=>n().t("UI Scale"))),()=>(n(),l(()=>n().t("Set a local zoom level for the app interface."))),()=>(n(),l(()=>n().t("Font Family"))),()=>(e(y),e(S),n(),l(()=>!e(y)&&(e(S)===null||Ze("fontFamily"))?n().t("Default"):n().t("Custom"))),()=>(n(),l(()=>n().t("Use a local font family for the app interface."))),()=>(n(),l(()=>n().t("Accessibility Mode"))),()=>(n(),l(()=>n().t("Enable accessibility-focused visual enhancements."))),()=>(n(),l(()=>n().t("Display Chat Title in Tab"))),()=>(n(),l(()=>n().t("Use the active chat title as the browser tab title."))),()=>(n(),l(()=>n().t("Allow User Location"))),()=>(n(),l(()=>n().t("Share your current location with features that can use it."))),()=>(n(),l(()=>n().t("Haptic Feedback"))),()=>(n(),l(()=>n().t("Android"))),()=>(n(),l(()=>n().t("Use device vibration feedback on supported Android devices."))),()=>(n(),l(()=>n().t("Copy Formatted Text"))),()=>(n(),l(()=>n().t("Copy rich formatted content instead of plain text."))),()=>(n(),l(()=>n().t("Chat"))),()=>(n(),l(()=>n().t("Enable Message Queue"))),()=>(n(),l(()=>n().t("Queue outgoing messages instead of interrupting active responses."))),()=>(n(),l(()=>n().t("Chat Direction"))),()=>(e(te),n(),l(()=>e(te)==="LTR"?n().t("LTR"):e(te)==="RTL"?n().t("RTL"):n().t("Auto"))),()=>(n(),l(()=>n().t("Choose automatic, left-to-right, or right-to-left text flow."))),()=>(n(),l(()=>n().t("Landing Page Mode"))),()=>(e(M),n(),l(()=>e(M)===""?n().t("Default"):n().t("Chat"))),()=>(n(),l(()=>n().t("Choose whether the app opens to the default home or chat view."))),()=>(n(),l(()=>
16n().t("Chat Background Image"))),()=>(e(j),n(),l(()=>e(j)!==null?n().t("Reset"):n().t("Upload"))),()=>(n(),l(()=>n().t("Upload or reset the image shown behind chat content."))),()=>(n(),l(()=>n().t("Chat Bubble UI"))),()=>(n(),l(()=>n().t("Render messages in compact bubble containers."))),()=>(n(),l(()=>n().t("Widescreen Mode"))),()=>(n(),l(()=>n().t("Use a wider chat layout on large displays."))),()=>(n(),l(()=>n().t("Fade Effect for Streaming Text"))),()=>(n(),l(()=>n().t("Fade streaming text as it arrives."))),()=>(n(),l(()=>n().t("Render Markdown in User Messages"))),()=>(n(),l(()=>n().t("Format Markdown syntax in your own messages."))),()=>(n(),l(()=>n().t("Render Markdown in Assistant Messages"))),()=>(n(),l(()=>n().t("Format Markdown syntax in assistant responses."))),()=>(n(),l(()=>n().t("Render Markdown in Previews"))),()=>(n(),l(()=>n().t("Format Markdown in previews and compact content surfaces."))),()=>(n(),l(()=>n().t("Title Auto-Generation"))),()=>(n(),l(()=>n().t("Generate chat titles automatically from conversation content."))),()=>(n(),l(()=>n().t("Follow-Up Auto-Generation"))),()=>(n(),l(()=>n().t("Generate suggested follow-up prompts after responses."))),()=>(n(),l(()=>n().t("Chat Tags Auto-Generation"))),()=>(n(),l(()=>n().t("Generate tags for chats automatically."))),()=>(n(),l(()=>n().t("Auto-Copy Response to Clipboard"))),()=>(n(),l(()=>n().t("Copy the latest assistant response when it completes."))),()=>(n(),l(()=>n().t("Response Auto-Scroll"))),()=>(n(),l(()=>n().t("Follow assistant responses as they are generated."))),()=>(n(),l(()=>n().t("Scroll On Branch Change"))),()=>(n(),l(()=>n().t("Scroll to the active branch when switching response branches."))),()=>(n(),l(()=>n().t("Insert Suggestion Prompt to Input"))),()=>(n(),l(()=>n().t("Place selected suggestion text into the composer."))),()=>(n(),l(()=>n().t("Keep Follow-Up Prompts in Chat"))),()=>(n(),l(()=>n().t("Keep generated follow-up prompts visible in the chat."))),()=>(n(),l(()=>n().t("Insert Follow-Up Prompt to Input"))),()=>(n(),l(()=>n().t("Insert selected follow-up prompts directly into the composer."))),()=>(n(),l(()=>n().t("Regenerate Menu"))),()=>(n(),l(()=>n().t("Show the regenerate action menu for assistant responses."))),()=>(n(),l(()=>n().t("Always Collapse Code Blocks"))),()=>(n(),l(()=>n().t("Collapse code blocks by default."))),()=>(n(),l(()=>n().t("Always Expand Details"))),()=>(n(),l(()=>n().t("Open detail blocks by default."))),()=>(n(),l(()=>n().t("Chat Hover Previews"))),()=>(n(),l(()=>n().t("Show a floating preview of recent messages when hovering a chat in the sidebar."))),()=>(n(),l(()=>n().t("Display Multi-model Responses in Tabs"))),()=>(n(),l(()=>n().t("Group multi-model responses into tabs."))),()=>(n(),l(()=>n().t("Terminal File Display"))),()=>(e(De),n(),l(()=>e(De)==="inline"?n().t("Inline"):n().t("Sidebar"))),()=>(n(),l(()=>n().t("Choose where terminal display_file results appear by default."))),()=>(n(),l(()=>n().t("Show Files on Terminal Select"))),()=>(n(),l(()=>n().t("Open the file browser after selecting a terminal."))),()=>(n(),l(()=>n().t("Terminal Preview Allow Same Origin"))),()=>(n(),l(()=>n().t("Allow terminal previews to access same-origin browser APIs."))),()=>(n(),l(()=>n().t("Stylized PDF Export"))),()=>(n(),l(()=>n().t("Use styled formatting when exporting chats to PDF."))),()=>(n(),l(()=>n().t("Floating Quick Actions"))),()=>(n(),l(()=>n().t("Show the floating quick-action toolbar in chat."))),()=>(n(),l(()=>n().t("Web Search in Chat"))),()=>(e(je),n(),l(()=>e(je)==="always"?n().t("Always"):n().t("Default"))),()=>(n(),l(()=>n().t("Set web search availability for new chats."))),()=>(n(),l(()=>n().t("Input"))),()=>(n(),l(()=>n().t("Enter Key Behavior"))),()=>(e(ge),n(),l(()=>e(ge)===!0?n().t("Ctrl+Enter to Send"):n().t("Enter to Send"))),()=>(n(),l(()=>n().t("Choose whether Enter sends immediately or uses Ctrl+Enter."))),()=>(n(),l(()=>n().t("Rich Text Input for Chat"))),()=>(n(),l(()=>n().t("Use the rich composer instead of a plain textarea."))),()=>(n(),l(()=>n().t("Paste Large Text as File"))),()=>(n(),l(()=>n().t("Convert long pasted text into a file attachment."))),()=>(n(),l(()=>n().t("Artifacts"))),()=>(n(),l(()=>n().t("Detect Artifacts Automatically"))),()=>(n(),l(()=>n().t("Detect generated artifacts and show them in the artifact workspace."))),()=>(n(),l(()=>n().t("iframe Sandbox Allow Scripts"))),()=>(n(),l(()=>n().t("Allow scripts inside sandboxed iframes."))),()=>(n(),l(()=>
16n().t("iframe Sandbox Allow Same Origin"))),()=>(n(),l(()=>n().t("Allow artifacts to access same-origin browser APIs inside the sandbox."))),()=>(n(),l(()=>n().t("iframe Sandbox Allow Forms"))),()=>(n(),l(()=>n().t("Allow forms inside sandboxed artifact iframes."))),()=>(n(),l(()=>n().t("iframe Sandbox Allow Downloads"))),()=>(n(),l(()=>n().t("Allow downloads inside sandboxed iframes."))),()=>(n(),l(()=>n().t("Voice"))),()=>(n(),l(()=>n().t("Allow Voice Interruption in Call"))),()=>(n(),l(()=>n().t("Let speech interrupt the assistant during a voice call."))),()=>(n(),l(()=>n().t("Display Emoji in Call"))),()=>(n(),l(()=>n().t("Show emoji feedback in the call interface."))),()=>(n(),l(()=>n().t("File"))),()=>(n(),l(()=>n().t("Default Upload Mode"))),()=>(e(Fe),n(),l(()=>e(Fe)==="full"?n().t("Using Entire Document"):n().t("Using Focused Retrieval"))),()=>(n(),l(()=>n().t("Attach files with full content or focused retrieval by default."))),()=>(n(),l(()=>n().t("Image Compression"))),()=>(n(),l(()=>n().t("Compress uploaded images before sending or storage.")))]),as(Dt,()=>e(w),xt=>s(w,xt)),ke("change",Dt,()=>{var bt,Gr;let xt=new FileReader;xt.onload=Xr=>{let ga=`${Xr.target.result}`;s(j,ga),E()({backgroundImageUrl:e(j)})},e(w)&&e(w).length>0&&["image/gif","image/webp","image/jpeg","image/png"].includes(e(w)[0].type)?xt.readAsDataURL(e(w)[0]):(`${(Gr=(bt=e(w))==null?void 0:bt[0])==null?void 0:Gr.type}`,s(w,null))}),ke("click",qt,()=>{e($)===null||Ze("textScale")&&!e(fe)?(s($,e($)??e(x).textScale??1),s(fe,!0)):(s(fe,!1),e(c)||xu(e(x).textScale??1),s($,null),E()({textScale:e($)}))}),ke("click",Er,rr),ke("click",co,et),ke("click",Ol,()=>{ot()}),ke("click",Kl,()=>{var xt;e(j)!==null?(s(j,null),E()({backgroundImageUrl:e(j)})):(xt=e(Te))==null||xt.click()}),ke("click",Cn,()=>{s(De,e(De)==="inline"?"sidebar":"inline"),E()({terminalFileDisplay:e(De)})}),ke("click",Hn,()=>{Mt()}),ke("click",Kn,()=>{gt()}),ke("click",pi,()=>{s(Fe,e(Fe)==="full"?"focused":"full"),E()({defaultUploadContext:e(Fe)})}),i(He,$r),Gu(_,"save",It);var e1=cr(or);return R(),e1}var yk=u('<form id="tab-interface" class="flex flex-col h-full justify-between text-sm"><h2 class="text-sm font-medium text-gray-900 dark:text-white mb-4"> </h2> <div class="flex-1 min-h-0 overflow-y-auto scrollbar-hover pr-1.5"><!></div> <div class="shrink-0 flex justify-end text-sm font-normal"><button class="px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full" type="submit"> </button></div></form>');function $k(He,_){vr(_,!1);const t=()=>ct(X,"$i18n",f),[f,n]=hr(),Ie=ja(),X=mr("i18n");let R=Xe(_,"saveSettings",8),I=Xe(_,"personalSettingsValue",24,()=>({})),c=h();gr();var x=yk(),A=a(x),E=a(A,!0);r(A);var V=o(A,2),B=a(V);Oa(Vf(B,{get saveSettings(){return R()},get personalSettingsValue(){return I()},$$legacy:!0}),Se=>s(c,Se),()=>e(c)),r(V);var j=o(V,2),w=a(j),Te=a(w,!0);r(w),r(j),r(x),g((Se,Y)=>{d(E,Se),d(Te,Y)},[()=>(t(),l(()=>t().t("Interface"))),()=>(t(),l(()=>t().t("Save")))]),ke("submit",x,ca(async()=>{var Se;await((Se=e(c))==null?void 0:Se.save()),Ie("save")})),i(He,x),cr(),n()}const Co=async(He,_,t="GET",f)=>{let n=null;const Ie=await fetch(He,{method:t,headers:{Accept:"application/json","Content-Type":"application/json",Authorization:`Bearer ${_}`},...f?{body:JSON.stringify(f)}:{}}).then(async X=>{if(!X.ok)throw await X.json();return X.json()}).catch(X=>(n=X.detail,null));if(n)throw n;return Ie},wk=async He=>{const _=await Co(`${ia}/notifications/events`,He);return(_==null?void 0:_.events)??_??[]},kk=async He=>Co(`${ia}/notifications/targets`,He),Ek=async(He,_)=>Co(`${ia}/notifications/targets`,He,"POST",_),Qg=async(He,_,t)=>Co(`${ia}/notifications/targets/${_}`,He,"PUT",t),Ak=async(He,_)=>Co(`${ia}/notifications/targets/${_}`,He,"DELETE"),Ik=async(He,_)=>Co(`${ia}/notifications/targets/${_}/default`,He,"PUT"),Sk=async(He,_)=>Co(`${ia}/notifications/targets/${_}/test`,He,"POST");var e_=u('<p class="text-[0.6875rem] text-gray-400 dark:text-gray-600"> </p>'),Nk=u('<span class="shrink-0 text-[0.625rem] text-gray-400 dark:text-gray-600"> </span>'),Pk=u('<button class="text-[0.625rem] text-gray-400 transition-colors duration-100 hover:text-gray-600 dark:hover:text-gray-300" type="button"> </button>'),Ck=u('<hr class="my-1 h-px border-0 bg-gray-100/50 dark:bg-white/[0.03]"/>'),Tk=u('<div class="flex items-center gap-3 px-1 py-1.5"><div class="min-w-0 flex-1"><div class="flex min-w-0 items-center gap-2"><span class="truncate text-[0.71875rem] text-gray-700 dark:text-gray-300"> </span> <span class="shrink-0 text-[0.625rem] text-gray-400 dark:text-gray-600"> </span> <!></div> <div class="truncate text-[0.625rem] leading-tight text-gray-400 dark:text-gray-600"> </div> <div class="truncate text-[0.625rem] leading-tight text-gray-400 dark:text-gray-600"> <!></div></div> <div class="flex shrink-0 items-center gap-2"><button class="text-[0.625rem] text-gray-400 transition-colors duration-100 hover:text-gray-600 dark:hover:text-gray-300" type="button"> </button> <!> <button class="text-[0.625rem] text-gray-400 transition-colors duration-100 hover:text-gray-600 dark:hover:text-gray-300" type="button"> </button> <button class="text-[0.625rem] text-gray-400 transition-colors duration-100 hover:text-gray-600 dark:hover:text-gray-300" type="button"> </button></div> <div class="flex w-9 shrink-0 justify-end"><!></div></div> <!>',1),Lk=u('<div class="flex flex-col"></div>'),Ok=u('<div class="mt-3 flex items-center justify-between"><span class="text-xs font-medium text-gray-700 dark:text-gray-300"> </span> <button class="flex h-6 w-6 items-center justify-center rounded-lg text-gray-400 transition-colors duration-75 hover:text-gray-700 dark:text-gray-600 dark:hover:text-gray-300" type="button"><!></button></div> <!>',1),t_=u('<button type="button"> </button>'),Mk=u('<div class="mt-3 mb-1 text-[0.625rem] text-gray-400 dark:text-gray-600"> </div> <div class="flex gap-1"></div>',1),Rk=u('<div class="p-4"><h2 class="mb-3 text-sm font-medium text-gray-900 dark:text-white"> </h2> <div class="text-[0.625rem] text-gray-400 dark:text-gray-600"> </div> <input autocomplete="off" spellcheck="false" class="block w-full bg-transparent py-0.5 font-mono text-[0.8125rem] text-gray-700 outline-none placeholder:text-gray-300 dark:text-gray-300 dark:placeholder:text-gray-700"/> <div class="mt-2 text-[0.625rem] text-gray-400 dark:text-gray-600"> </div> <input type="url" autocomplete="off" spellcheck="false" class="block w-full bg-transparent py-0.5 font-mono text-[0.8125rem] text-gray-700 outline-none placeholder:text-gray-300 dark:text-gray-300 dark:placeholder:text-gray-700"/> <div class="mt-3 mb-1 text-[0.625rem] text-gray-400 dark:text-gray-600"> </div> <div class="flex flex-wrap gap-1"></div> <!> <p class="mt-3 text-[0.625rem] text-gray-400 dark:text-gray-600"> </p> <div class="mt-4 flex justify-end gap-3"><button class="text-[0.8125rem] text-gray-400 transition-colors duration-100 hover:text-gray-600 dark:hover:text-gray-300" type="button"> </button> <button class="text-[0.8125rem] text-gray-700 transition-colors duration-100 hover:text-gray-900 disabled:opacity-30 dark:text-gray-300 dark:hover:text-white" type="button"> </button></div></div>'),Dk=u('<div id="tab-notifications" class="flex h-full flex-col text-sm"><div class="flex-1 min-h-0 w-full overflow-y-auto scrollbar-hover pr-1.5"><h2 class="mb-4 text-sm font-medium text-gray-900 dark:text-white"> </h2> <div class="flex flex-col gap-2.5"><label class="flex cursor-pointer items-center justify-between"><span class="text-xs text-gray-600 dark:text-gray-400"> </span> <!></label> <p class="-mt-1 text-[0.6875rem] text-gray-400 dark:text-gray-600"> </p> <label class="flex cursor-pointer items-center justify-between"><span class="text-xs text-gray-600 dark:text-gray-400"> </span> <!></label> <!></div></div></div> <!>',1);function Uk(He,_){vr(_,!1);const t=()=>ct(_a,"$config",X),f=()=>ct(ka,"$user",X),n=()=>ct(c,"$i18n",X),Ie=()=>ct(ua,"$settings",X),[X,R]=hr(),I=h(),c=mr("i18n");let x=Xe(_,"saveSettings",8),A=h(!1),E=h(!0),V=h([]),B=h([{event:"chat.finished",label:"Chat finished",description:"A chat run finished successfully."},{event:"chat.failed",label:"Chat failed",description:"A chat run failed."}]),j=h(!1),w=h(!1),Te=h(null),Se=h(!1),Y=h({id:"",url:"",enabled:!0,events:[],delivery:"away"}),ee=h(!1);const ae=async()=>{e(A)?(s(A,!1),x()({notificationEnabled:e(A)})):("Notification"in window?await Notification.requestPermission():"denied")==="granted"?(s(A,!0),x()({notificationEnabled:e(A)})):rt.error(n().t("Response notifications cannot be activated as the website permissions have been denied. Please visit your browser settings to grant the necessary access."))},Pe=async()=>{var Ae;
16if(e(I)){s(j,!0),s(ee,!0);try{const[U,T]=await Promise.allSettled([wk(localStorage.token),kk(localStorage.token)]);U.status==="fulfilled"&&((Ae=U.value)!=null&&Ae.length)&&s(B,U.value),T.status==="fulfilled"?s(V,T.value.targets??[]):rt.error(`${T.reason}`)}catch(U){rt.error(`${U}`)}finally{s(j,!1)}}},se=()=>{s(Te,null),s(Se,!0),s(Y,{id:"",url:"",enabled:!0,events:[],delivery:"away"})},m=Ae=>{s(Te,Ae.id),s(Se,!0),s(Y,{id:Ae.id,url:"",enabled:Ae.enabled,events:[...Ae.events],delivery:Ae.delivery})},ce=Ae=>{We(Y,e(Y).events=e(Y).events.includes(Ae)?e(Y).events.filter(U=>U!==Ae):[...e(Y).events,Ae])},De=async()=>{s(w,!0);try{const Ae=e(Y).id.trim(),U={...Ae?{id:Ae}:{},type:"webhook",enabled:e(Y).enabled,events:e(Y).events,delivery:e(Y).delivery,...e(Y).url.trim()?{config:{url:e(Y).url.trim()}}:{}};e(Te)?await Qg(localStorage.token,e(Te),U):await Ek(localStorage.token,U),await Pe(),s(Se,!1),rt.success(n().t("Settings saved successfully!"))}catch(Ae){rt.error(`${Ae}`)}finally{s(w,!1)}},Le=async(Ae,U)=>{try{await Qg(localStorage.token,Ae.id,U),await Pe()}catch(T){rt.error(`${T}`)}},Ne=async Ae=>{try{await Sk(localStorage.token,Ae.id),rt.success(n().t("Test notification sent."))}catch(U){rt.error(`${U}`)}};ea(async()=>{var Ae;s(A,Ie().notificationEnabled??!1),s(E,((Ae=Ie())==null?void 0:Ae.notificationSound)??!0)}),Kt(()=>(t(),f()),()=>{var Ae,U,T,C,D,F;s(I,((U=(Ae=t())==null?void 0:Ae.features)==null?void 0:U.enable_user_webhooks)&&(((T=f())==null?void 0:T.role)==="admin"||(((F=(D=(C=f())==null?void 0:C.permissions)==null?void 0:D.features)==null?void 0:F.webhooks)??!1)))}),Kt(()=>(e(I),e(ee)),()=>{e(I)&&!e(ee)&&Pe()}),la(),gr();var Ce=Dk(),we=Qe(Ce),oe=a(we),de=a(oe),be=a(de,!0);r(de);var Me=o(de,2),qe=a(Me),Re=a(qe),ue=a(Re,!0);r(Re);var xe=o(Re,2);{let Ae=v(()=>(n(),l(()=>n().t("Browser Notifications"))));Nt(xe,{get state(){return e(A)},get ariaLabel(){return e(Ae)},$$events:{change:ae}})}r(qe);var K=o(qe,2),Oe=a(K,!0);r(K);var O=o(K,2),ie=a(O),M=a(ie,!0);r(ie);var ve=o(ie,2);{let Ae=v(()=>(n(),l(()=>n().t("Notification Sound"))));Nt(ve,{get ariaLabel(){return e(Ae)},get state(){return e(E)},set state(U){s(E,U)},$$events:{change:()=>{x()({notificationSound:e(E)})}},$$legacy:!0})}r(O);var te=o(O,2);{var ge=Ae=>{var U=Ok(),T=Qe(U),C=a(T),D=a(C,!0);r(C);var F=o(C,2),H=a(F);Ya(H,{className:"size-3.5",strokeWidth:"2"}),r(F),r(T);var pe=o(T,2);{var ye=P=>{var Q=e_(),re=a(Q,!0);r(Q),g(le=>d(re,le),[()=>(n(),l(()=>n().t("Loading...")))]),i(P,Q)},he=P=>{var Q=e_(),re=a(Q,!0);r(Q),g(le=>d(re,le),[()=>(n(),l(()=>n().t("No notification targets configured.")))]),i(P,Q)},q=P=>{var Q=Lk();lr(Q,5,()=>e(V),Ar,(re,le,$e)=>{const ze=v(()=>(e(B),e(le),l(()=>e(B).filter(_t=>e(le).events.includes(_t.event)).map(_t=>_t.label).join(", "))));var Fe=Tk(),at=Qe(Fe),tt=a(at),Je=a(tt),je=a(Je),ne=a(je,!0);r(je);var J=o(je,2),W=a(J,!0);r(J);var Z=o(J,2);{var Ee=_t=>{var nt=Nk(),et=a(nt,!0);r(nt),g(gt=>d(et,gt),[()=>(n(),l(()=>n().t("Default")))]),i(_t,nt)};G(Z,_t=>{e(le),l(()=>e(le).is_default)&&_t(Ee)})}r(Je);var Ge=o(Je,2),p=a(Ge,!0);r(Ge);var $=o(Ge,2),S=a($),L=o(S);{var fe=_t=>{var nt=Mr();g(et=>d(nt,`· ${et??""}`),[()=>(e(le),n(),l(()=>e(le).delivery==="away"?n().t("Only when away"):n().t("Always")))]),i(_t,nt)};G(L,_t=>{e(le),l(()=>e(le).events.length)&&_t(fe)})}r($),r(tt);var y=o(tt,2),b=a(y),N=a(b,!0);r(b);var z=o(b,2);{var Ue=_t=>{var nt=Pk(),et=a(nt,!0);r(nt),g(gt=>d(et,gt),[()=>(n(),l(()=>n().t("Make Default")))]),ke("click",nt,async()=>{await Ik(localStorage.token,e(le).id),await Pe()}),i(_t,nt)};G(z,_t=>{e(le),l(()=>!e(le).is_default)&&_t(Ue)})}var Ye=o(z,2),Ve=a(Ye,!0);r(Ye);var lt=o(Ye,2),st=a(lt,!0);r(lt),r(y);var Ke=o(y,2),Ze=a(Ke);{let _t=v(()=>(n(),l(()=>n().t("Enabled"))));Nt(Ze,{get state(){return e(le),l(()=>e(le).enabled)},get ariaLabel(){return e(_t)},$$events:{change:nt=>Le(e(le),{enabled:nt.detail})}})}r(Ke),r(at);var ot=o(at,2);{var ut=_t=>{var nt=Ck();i(_t,nt)};G(ot,_t=>{e(V),l(()=>$e<e(V).length-1)&&_t(ut)})}g((_t,nt,et,gt,It)=>{d(ne,(e(le),l(()=>e(le).id))),d(W,_t),d(p,(e(le),l(()=>{var Mt;return(Mt=e(le).config)==null?void 0:Mt.url_masked}))),d(S,`${nt??""} `),d(N,et),d(Ve,gt),d(st,It)},[()=>(n(),l(()=>n().t("Webhook"))),()=>(it(e(ze)),n(),l(()=>e(ze)||n().t("No chat alerts"))),()=>(n(),l(()=>n().t("Send Test"))),()=>(n(),l(()=>n().t("Edit"))),()=>(n(),l(()=>n().t("Remove")))]),ke("click",b,()=>Ne(e(le))),ke("click",Ye,()=>m(e(le))),ke("click",lt,async()=>{await Ak(localStorage.token,e(le).id),await Pe()}),i(re,Fe)}),r(Q),i(P,Q)};G(pe,P=>{e(j)?P(ye):(e(V),l(()=>!e(V).length)?P(he,1):P(q,-1))})}g((P,Q,re)=>{d(D,P),Be(F,"title",Q),Be(F,"aria-label",re)},[()=>(n(),l(()=>n().t("Notification Targets"))),()=>(n(),l(()=>n().t("Add Notification Target"))),()=>(n(),l(()=>
16n().t("Add Notification Target")))]),ke("click",F,se),i(Ae,U)};G(te,Ae=>{e(I)&&Ae(ge)})}r(Me),r(oe),r(we);var _e=o(we,2);Wa(_e,{size:"sm",get show(){return e(Se)},set show(Ae){s(Se,Ae)},children:(Ae,U)=>{var T=Rk(),C=a(T),D=a(C,!0);r(C);var F=o(C,2),H=a(F,!0);r(F);var pe=o(F,2);vt(pe);var ye=o(pe,2),he=a(ye,!0);r(ye);var q=o(ye,2);vt(q);var P=o(q,2),Q=a(P,!0);r(P);var re=o(P,2);lr(re,5,()=>e(B),Ar,(J,W)=>{var Z=t_(),Ee=a(Z,!0);r(Z),g(Ge=>{k(Z,1,`h-6 rounded-md px-2 text-[0.6875rem] transition-colors ${Ge??""}`),d(Ee,(e(W),l(()=>e(W).label)))},[()=>(e(Y),e(W),l(()=>e(Y).events.includes(e(W).event)?"bg-gray-200/60 text-gray-900 dark:bg-white/10 dark:text-white":"text-gray-500 hover:text-gray-800 dark:hover:text-gray-300"))]),ke("click",Z,()=>ce(e(W).event)),i(J,Z)}),r(re);var le=o(re,2);{var $e=J=>{var W=Mk(),Z=Qe(W),Ee=a(Z,!0);r(Z);var Ge=o(Z,2);lr(Ge,4,()=>["away","always"],Ar,(p,$)=>{var S=t_(),L=a(S,!0);r(S),g(fe=>{k(S,1,`h-6 rounded-md px-2 text-[0.6875rem] transition-colors ${e(Y),l(()=>e(Y).delivery===$?"bg-gray-200/60 text-gray-900 dark:bg-white/10 dark:text-white":"text-gray-500 hover:text-gray-800 dark:hover:text-gray-300")??""}`),d(L,fe)},[()=>(n(),l(()=>$==="away"?n().t("Only when away"):n().t("Always")))]),ke("click",S,()=>We(Y,e(Y).delivery=$)),i(p,S)}),r(Ge),g(p=>d(Ee,p),[()=>(n(),l(()=>n().t("Automatic Delivery")))]),i(J,W)};G(le,J=>{e(Y),l(()=>e(Y).events.length)&&J($e)})}var ze=o(le,2),Fe=a(ze,!0);r(ze);var at=o(ze,2),tt=a(at),Je=a(tt,!0);r(tt);var je=o(tt,2),ne=a(je,!0);r(je),r(at),r(T),g((J,W,Z,Ee,Ge,p,$,S,L,fe)=>{d(D,J),d(H,W),Be(pe,"placeholder",Z),d(he,Ee),Be(q,"placeholder",Ge),d(Q,p),d(Fe,$),d(Je,S),je.disabled=L,d(ne,fe)},[()=>(e(Te),n(),l(()=>e(Te)?n().t("Edit"):n().t("Add Notification Target"))),()=>(n(),l(()=>n().t("Target ID for notify"))),()=>(n(),l(()=>n().t("Target ID"))),()=>(n(),l(()=>n().t("Webhook"))),()=>(e(Te),n(),l(()=>e(Te)?n().t("Keep current webhook URL"):"https://hooks.slack.com/services/...")),()=>(n(),l(()=>n().t("Automatic Events"))),()=>(n(),l(()=>n().t("The notify tool always sends to an enabled target, regardless of automatic event settings."))),()=>(n(),l(()=>n().t("Cancel"))),()=>(e(w),e(Te),e(Y),l(()=>e(w)||!e(Te)&&!e(Y).url.trim())),()=>(e(w),n(),l(()=>e(w)?n().t("Saving..."):n().t("Save")))]),dt(pe,()=>e(Y).id,J=>We(Y,e(Y).id=J)),dt(q,()=>e(Y).url,J=>We(Y,e(Y).url=J)),ke("click",tt,()=>s(Se,!1)),ke("click",je,De),i(Ae,T)},$$slots:{default:!0},$$legacy:!0}),g((Ae,U,T,C)=>{d(be,Ae),d(ue,U),d(Oe,T),d(M,C)},[()=>(n(),l(()=>n().t("Notifications"))),()=>(n(),l(()=>n().t("Browser Notifications"))),()=>(n(),l(()=>n().t("Allow browser notifications for completed responses."))),()=>(n(),l(()=>n().t("Notification Sound")))]),i(He,Ce),cr(),R()}var r_=u('<span class="inline-flex min-h-[1.125rem] max-w-[9.5rem] shrink-0 items-center justify-center rounded-full bg-gray-100 px-[0.4375rem] py-0.5 text-center text-[0.625rem] font-medium leading-none text-gray-500 dark:bg-white/6 dark:text-gray-400"> </span>'),Bk=u('<span class="inline-flex max-w-full items-baseline gap-1"><span class="truncate whitespace-pre-line"> </span> <span class="text-[0.625rem] text-gray-400 dark:text-gray-600">*</span></span>'),Gk=u('<span class="whitespace-pre-line"> </span>'),jk=u("<div><div><!></div> <!></div>");function a_(He,_){vr(_,!1);const t=()=>ct(Pd,"$keybindings",n),f=()=>ct(A,"$i18n",n),[n,Ie]=hr();let X=Xe(_,"id",8,void 0),R=Xe(_,"shortcut",8),I=Xe(_,"isMac",8),c=Xe(_,"compact",8,!1),x=Xe(_,"keysOnly",8,!1);const A=mr("i18n");let E;ea(async()=>{var Pe;const ae=navigator;if((Pe=ae.keyboard)!=null&&Pe.getLayoutMap)try{E=await ae.keyboard.getLayoutMap()}catch(se){}});function V(ae){switch(ae){case"mod":return I()?"â":"Ctrl";case"shift":return I()?"â§":"Shift";case"alt":return I()?"â¥":"Alt"}if(E&&E.has(ae)){const se=E.get(ae)??ae;return se.length===1?se.toUpperCase():se}const Pe=ae.toLowerCase();switch(Pe){case"backspace":case"delete":return I()?"â«":"Delete";case"escape":return"Esc";case"enter":return I()?"â©ï¸":"Enter";case"tab":return I()?"â¥":"Tab";case"arrowup":return"â";case"arrowdown":return"â";case"quote":return"'";case"period":return".";case"slash":return"/";case"semicolon":return";";default:return Pe.startsWith("key")||Pe.startsWith("digit")?ae.slice(-1).toUpperCase():ae.toUpperCase()}}function B(ae){return ae.filter(Pe=>!(Pe.toLowerCase()==="delete"&&ae.includes("Backspace")))}function j(ae){return B(ae).map(V).join(I()?"":" + ")}function w(){return X()&&Qo(X())?Nd(t()[X()])||f().t("Unassigned"):j(R().keys)}gr();var Te=Wr(),Se=Qe(Te);{var Y=ae=>{var Pe=r_(),se=a(Pe,!0);r(Pe),g(m=>d(se,m),[()=>l(w)]),i(ae,Pe)},ee=ae=>{var Pe=jk(),se=a(Pe),m=a(se);{var ce=Ce=>{{let we=v(()=>(f(),it(R()),l(()=>f().t(R().tooltip))));Lt(Ce,{get content(){return e(we)},children:(oe,de)=>{var be=Bk(),Me=a(be),qe=a(Me,!0);r(Me),ll(2),r(be),g(Re=>d(qe,Re),[()=>(f(),it(R()),l(()=>f().t(R().name)))]),i(oe,be)},$$slots:{default:!0}})}},De=Ce=>{var we=Gk(),oe=a(we,!0);r(we),g(de=>d(oe,de),[()=>(f(),it(R()),l(()=>f().t(R().name)))]),i(Ce,we)};G(m,Ce=>{it(R()),l(()=>R().tooltip)?Ce(ce):Ce(De,-1)})}r(se);var Le=o(se,2);{var Ne=Ce=>{var we=r_(),oe=a(we,!0);r(we),g(de=>d(oe,de),[()=>l(w)]),i(Ce,we)};G(Le,Ce=>{c()||Ce(Ne)})}r(Pe),g(()=>{k(Pe,1,me(c()?"min-w-0 flex-1 text-[0.71875rem] leading-tight text-gray-700 dark:text-gray-300":"flex min-h-8 w-full items-center gap-3 px-1 py-1.5")),k(se,1,me(c()?"":"min-w-0 flex-1 text-[0.71875rem] leading-tight text-gray-700 dark:text-gray-300"))}),i(ae,Pe)};G(Se,ae=>{x()?ae(Y):ae(ee,-1)})}i(He,Te),cr(),Ie()}var Hk=u('<span class="inline-flex min-h-[1.125rem] items-center rounded-full bg-gray-100 px-[0.4375rem] py-0.5 text-[0.625rem] font-medium leading-none text-gray-500 dark:bg-white/6 dark:text-gray-400"> </span>'),Fk=u('<button class="inline-flex min-h-[1.125rem] items-center rounded-full bg-gray-100 px-[0.4375rem] py-0.5 text-center text-[0.625rem] font-medium leading-none text-gray-500 dark:bg-white/6 dark:text-gray-400"> </button>'),Wk=u('<button class="text-[0.625rem] text-gray-500 transition hover:text-gray-400 dark:text-gray-600"> </button>'),zk=u('<span class="text-[0.5625rem] text-amber-500">!</span>'),Kk=u("<!> <!>",1),Yk=u('<div class="flex min-h-8 w-full items-center gap-3 px-1 py-1.5"><!> <div class="flex w-[9.5rem] shrink-0 items-center justify-end gap-1"><!></div></div>'),Vk=u('<div><div class="px-1 pb-0.5 pt-1 text-xs text-gray-400 dark:text-gray-600"> </div> <div class="divide-y divide-gray-100/70 dark:divide-white/[0.03]"></div></div>'),qk=u('<div id="tab-shortcuts" class="flex h-full flex-col text-sm"><div class="mb-4 flex items-center justify-between"><h2 class="text-sm font-medium text-gray-900 dark:text-white"> </h2> <button class="text-xs text-gray-500 transition-colors hover:text-gray-900 dark:text-gray-500 dark:hover:text-white"> </button></div> <div class="mb-3"><div class="flex items-center justify-between gap-2.5"><div id="enable-keyboard-shortcuts-label" class="min-w-0 text-xs text-gray-600 dark:text-gray-400"> </div> <div class="flex shrink-0 items-center justify-end gap-1.5"><!></div></div> <p class="mt-1.5 text-[0.6875rem] text-gray-400 dark:text-gray-600"> </p></div> <div class="flex-1 min-h-0 overflow-y-auto scrollbar-hover pr-1.5"><div class="flex items-center gap-2 px-1 pb-1"><span class="flex-1 text-[0.625rem] text-gray-400 dark:text-gray-600"> </span> <span class="w-[9.5rem] shrink-0 text-right text-[0.625rem] text-gray-400 dark:text-gray-600"> </span></div> <!></div></div>');function Xk(He,_){vr(_,!1);const t=()=>ct(ua,"$settings",Ie),f=()=>ct(Pd,"$keybindings",Ie),n=()=>ct(R,"$i18n",Ie),[Ie,X]=hr(),R=mr("i18n");let I=Xe(_,"saveSettings",8),c=h({}),x=h(!1),A=h(null),E=h(!0);ea(()=>{var K;s(x,/Mac/i.test(navigator.userAgent)),s(E,((K=t())==null?void 0:K.keyboardShortcuts)??!0)});const V=async K=>{Pd.set(K),await Tl(localStorage.token,{keybindings:K})},B=async(K,Oe)=>{Qo(K)&&await V({...f(),[K]:Oe})},j=async()=>{nx(),await Tl(localStorage.token,{keybindings:dx})},w=(K,Oe)=>
16{if(!Qo(K)||!Oe)return null;for(const[O,ie]of Object.entries(f()))if(O!==K&&ie===Oe)return O;return null},Te=async K=>{if(!e(A))return;if(K.preventDefault(),K.stopPropagation(),K.key==="Escape"){s(A,null);return}const Oe=ix(K);Oe&&(await B(e(A),Oe),s(A,null))};Kt(()=>t(),()=>{const K=Object.entries(bd).filter(([,Oe])=>Oe.setting?t()[Oe.setting.id]===Oe.setting.value:!0);s(c,K.reduce((Oe,[O,ie])=>{const M=ie.category;return Oe[M]||(Oe[M]=[]),Oe[M].push({id:O,shortcut:ie}),Oe},{}))}),la(),gr();var Se=qk();ke("keydown",es,Te);var Y=a(Se),ee=a(Y),ae=a(ee,!0);r(ee);var Pe=o(ee,2),se=a(Pe,!0);r(Pe),r(Y);var m=o(Y,2),ce=a(m),De=a(ce),Le=a(De,!0);r(De);var Ne=o(De,2),Ce=a(Ne);Nt(Ce,{ariaLabelledbyId:"enable-keyboard-shortcuts-label",tooltip:!0,get state(){return e(E)},set state(K){s(E,K)},$$events:{change:()=>{I()({keyboardShortcuts:e(E)})}},$$legacy:!0}),r(Ne),r(ce);var we=o(ce,2),oe=a(we,!0);r(we),r(m);var de=o(m,2),be=a(de),Me=a(be),qe=a(Me,!0);r(Me);var Re=o(Me,2),ue=a(Re,!0);r(Re),r(be);var xe=o(be,2);lr(xe,1,()=>(e(c),l(()=>Object.entries(e(c)))),Ar,(K,Oe,O)=>{var ie=Qr(()=>yd(e(Oe),2));let M=()=>e(ie)[0],ve=()=>e(ie)[1];var te=Vk();k(te,1,me(O>0?"mt-3":""));var ge=a(te),_e=a(ge,!0);r(ge);var Ae=o(ge,2);lr(Ae,5,ve,Ar,(U,T)=>{let C=()=>e(T).id,D=()=>e(T).shortcut;const F=v(()=>(it(Qo),C(),l(()=>Qo(C())))),H=v(()=>(it(e(F)),f(),C(),l(()=>e(F)?f()[C()]:""))),pe=v(()=>(it(e(F)),C(),it(e(H)),l(()=>e(F)?w(C(),e(H)):null)));var ye=Yk(),he=a(ye);a_(he,{get id(){return C()},get shortcut(){return D()},get isMac(){return e(x)},compact:!0});var q=o(he,2),P=a(q);{var Q=le=>{var $e=Kk(),ze=Qe($e);{var Fe=ne=>{var J=Hk(),W=a(J,!0);r(J),g(Z=>d(W,Z),[()=>(n(),l(()=>n().t("Press keys...")))]),i(ne,J)},at=ne=>{var J=Fk(),W=a(J,!0);r(J),g((Z,Ee)=>{Be(J,"title",Z),d(W,Ee)},[()=>(n(),l(()=>n().t("Click to rebind"))),()=>(it(Nd),it(e(H)),l(()=>Nd(e(H))))]),ke("click",J,()=>s(A,C())),i(ne,J)},tt=ne=>{var J=Wk(),W=a(J,!0);r(J),g(Z=>d(W,Z),[()=>(n(),l(()=>n().t("Unassigned")))]),ke("click",J,()=>s(A,C())),i(ne,J)};G(ze,ne=>{e(A)===C()?ne(Fe):e(H)?ne(at,1):ne(tt,-1)})}var Je=o(ze,2);{var je=ne=>{var J=zk();g(W=>Be(J,"title",W),[()=>(n(),it(bd),it(e(pe)),l(()=>{var W;return n().t("Also bound to {{action}}",{action:n().t(((W=bd[e(pe)])==null?void 0:W.name)??e(pe))})}))]),i(ne,J)};G(Je,ne=>{e(pe)&&ne(je)})}i(le,$e)},re=le=>{a_(le,{get id(){return C()},get shortcut(){return D()},get isMac(){return e(x)},keysOnly:!0})};G(P,le=>{e(F)?le(Q):le(re,-1)})}r(q),r(ye),i(U,ye)}),r(Ae),r(te),g(U=>d(_e,U),[()=>(n(),M(),l(()=>n().t(M())))]),i(K,te)}),r(de),r(Se),g((K,Oe,O,ie,M,ve)=>{d(ae,K),d(se,Oe),d(Le,O),d(oe,ie),d(qe,M),d(ue,ve)},[()=>(n(),l(()=>n().t("Keyboard"))),()=>(n(),l(()=>n().t("Reset Defaults"))),()=>(n(),l(()=>n().t("Enable Keyboard Shortcuts"))),()=>(n(),l(()=>n().t("When disabled, keyboard shortcuts will not trigger any actions."))),()=>(n(),l(()=>n().t("Command"))),()=>(n(),l(()=>n().t("Key")))]),ke("click",Pe,j),i(He,Se),cr(),X()}var l_=u("<option> </option> <option> </option>",1),Jk=u('<input type="text" class="h-7 w-24 rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-right text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500"/>'),Kc=u("<!> <!>",1),Zk=u('<option disabled="" selected=""> </option> <option>fp32</option> <option>fp16</option> <option>q8</option> <option>q4</option>',1),Qk=u('<div class="relative flex items-center gap-1.5 text-xs text-gray-400 dark:text-gray-600"><input type="number" min="0" step="0.01" class="h-7 w-16 rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-right text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500"/> x</div>'),eE=u("<!> <!> <!> <!>",1),o_=u("<option> </option>"),s_=u('<input list="voice-list"/> <datalist id="voice-list"></datalist>',1),tE=u('<div class="flex items-center gap-2 text-xs text-gray-600 dark:text-gray-400"><!> <div class="shimmer"> </div></div> <div class="text-[0.6875rem] text-gray-400 dark:text-gray-600"> </div>',1),rE=u('<option class="bg-gray-100 dark:bg-gray-700"> </option>'),aE=u("<option> </option> <!>",1),lE=u('<form id="tab-audio" class="flex flex-col h-full justify-between text-sm"><h2 class="text-sm font-medium text-gray-900 dark:text-white mb-4"> </h2> <div class="flex-1 min-h-0 overflow-y-auto scrollbar-hover pr-1.5"><!> <!> <!></div> <div class="shrink-0 flex justify-end text-sm font-normal"><button class="px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full" t
16ype="submit"> </button></div></form>');function oE(He,_){vr(_,!1);const t=()=>ct(_a,"$config",Ie),f=()=>ct(ua,"$settings",Ie),n=()=>ct(I,"$i18n",Ie),[Ie,X]=hr(),R=ja(),I=mr("i18n");let c=Xe(_,"saveSettings",8),x=h(!1),A=h(!1),E=h(!1),V=h(""),B=h(""),j=h(""),w=h({}),Te=h(null),Se=h(null),Y=h([]),ee=h(""),ae=h(1);const Pe="h-7 w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500",se=async()=>{if(e(j)==="browser-kokoro")e(Te)||await Le(),s(Y,Object.entries(e(Te).voices).map(([O,ie])=>({id:O,name:ie.name,localService:!1})));else if(t().audio.tts.engine===""){const O=setInterval(async()=>{s(Y,await speechSynthesis.getVoices()),e(Y).length>0&&clearInterval(O)},100)}else{const O=await Pf(localStorage.token).catch(ie=>{rt.error(`${ie}`)});O&&s(Y,O.voices)}},m=async O=>{s(A,O),c()({responseAutoPlayback:e(A)})}
16,ce=async O=>{s(x,O),c()({speechAutoSend:e(x)})};ea(async()=>{var O,ie,M,ve,te,ge,_e,Ae,U,T,C,D,F,H,pe,ye,he,q,P,Q,re,le;s(ae,((ie=(O=f().audio)==null?void 0:O.tts)==null?void 0:ie.playbackRate)??1),f().conversationMode,s(x,f().speechAutoSend??!1),s(A,f().responseAutoPlayback??!1),s(V,((te=(ve=(M=f())==null?void 0:M.audio)==null?void 0:ve.stt)==null?void 0:te.engine)??""),s(B,((Ae=(_e=(ge=f())==null?void 0:ge.audio)==null?void 0:_e.stt)==null?void 0:Ae.language)??""),s(j,((C=(T=(U=f())==null?void 0:U.audio)==null?void 0:T.tts)==null?void 0:C.engine)??""),s(w,((H=(F=(D=f())==null?void 0:D.audio)==null?void 0:F.tts)==null?void 0:H.engineConfig)??{}),((he=(ye=(pe=f())==null?void 0:pe.audio)==null?void 0:ye.tts)==null?void 0:he.defaultVoice)===t().audio.tts.voice?s(ee,((Q=(P=(q=f())==null?void 0:q.audio)==null?void 0:P.tts)==null?void 0:Q.voice)??t().audio.tts.voice??""):s(ee,t().audio.tts.voice??""),s(E,((le=(re=f().audio)==null?void 0:re.tts)==null?void 0:le.nonLocalVoices)??!1),await se()});const De=async()=>{e(j)==="browser-kokoro"&&await Le()},Le=async()=>{var O;if(e(j)==="browser-kokoro"&&(s(Y,[]),(O=e(w))!=null&&O.dtype)){s(Te,null),s(Se,null);const ie="onnx-community/Kokoro-82M-v1.0-ONNX",{KokoroTTS:M}=await pu(async()=>{const{KokoroTTS:ve}=await import("../chunks/BJAJhFBJ.js");return{KokoroTTS:ve}},__vite__mapDeps([3,4,1]),import.meta.url);s(Te,await M.from_pretrained(ie,{dtype:e(w).dtype,device:navigator!=null&&navigator.gpu?"webgpu":"wasm",progress_callback:ve=>{s(Se,ve)}})),await se()}};Kt(()=>(e(j),e(w)),()=>{e(j)&&e(w)&&De()}),la(),gr();var Ne=lE(),Ce=a(Ne),we=a(Ce,!0);r(Ce);var oe=o(Ce,2),de=a(oe);{let O=v(()=>(n(),l(()=>n().t("STT Settings"))));Na(de,{get title(){return e(O)},first:!0,children:(ie,M)=>{var ve=Kc(),te=Qe(ve);{var ge=Ae=>{var U=Kc(),T=Qe(U);{let D=v(()=>(n(),l(()=>n().t("Speech-to-Text Engine")))),F=v(()=>(n(),l(()=>n().t("Choose the engine used to transcribe voice input."))));xa(T,{get label(){return e(D)},get description(){return e(F)},children:(H,pe)=>{{let ye=v(()=>(n(),l(()=>n().t("Speech-to-Text Engine")))),he=v(()=>(n(),l(()=>n().t("Select an engine"))));aa(H,{get ariaLabel(){return e(ye)},get placeholder(){return e(he)},get value(){return e(V)},set value(q){s(V,q)},children:(q,P)=>{var Q=l_(),re=Qe(Q),le=a(re,!0);r(re),re.value=re.__value="";var $e=o(re,2),ze=a($e,!0);r($e),$e.value=$e.__value="web",g((Fe,at)=>{d(le,Fe),d(ze,at)},[()=>(n(),l(()=>n().t("Default"))),()=>(n(),l(()=>n().t("Web API")))]),i(q,Q)},$$slots:{default:!0},$$legacy:!0})}},$$slots:{default:!0}})}var C=o(T,2);{let D=v(()=>(n(),l(()=>n().t("Language")))),F=v(()=>(n(),l(()=>n().t("Set a speech recognition language or leave it blank to detect automatically."))));xa(C,{get label(){return e(D)},get description(){return e(F)},children:(H,pe)=>{{let ye=v(()=>(n(),l(()=>n().t("The language of the input audio. Supplying the input language in ISO-639-1 (e.g. en) format will improve accuracy and latency. Leave blank to automatically detect the language."))));Lt(H,{get content(){return e(ye)},placement:"top",children:(he,q)=>{var P=Jk();vt(P),g((Q,re)=>{Be(P,"aria-label",Q),Be(P,"placeholder",re)},[()=>(n(),l(()=>n().t("Speech-to-Text Language"))),()=>(n(),l(()=>n().t("e.g. en")))]),dt(P,()=>e(B),Q=>s(B,Q)),i(he,P)},$$slots:{default:!0}})}},$$slots:{default:!0}})}i(Ae,U)};G(te,Ae=>{t(),l(()=>t().audio.stt.engine!=="web")&&Ae(ge)})}var _e=o(te,2);{let Ae=v(()=>(n(),l(()=>n().t("Instant Auto-Send After Voice Transcription")))),U=v(()=>(n(),l(()=>n().t("Send transcribed voice input immediately after speech recognition finishes."))));xa(_e,{get label(){return e(Ae)},get description(){return e(U)},children:(T,C)=>{{let D=v(()=>(n(),l(()=>n().t("Instant Auto-Send After Voice Transcription"))));Nt(T,{get state(){return e(x)},get ariaLabel(){return e(D)},$$events:{change:F=>{ce(F.detail)}}})}},$$slots:{default:!0}})}i(ie,ve)},$$slots:{default:!0}})}var be=o(de,2);{let O=v(()=>(n(),l(()=>n().t("TTS Settings"))));Na(be,{get title(){return e(O)},children:(ie,M)=>{var ve=eE(),te=Qe(ve);{let T=v(()=>(n(),l(()=>n().t("Text-to-Speech Engine")))),C=v(()=>(n(),l(()=>n().t("Choose the engine used to read assistant responses aloud."))));xa(te,{get label(){return e(T)},get description(){return e(C)},children:(D,F)=>{{let H=v(()=>(n(),l(()=>n().t("Text-to-Speech Engine")))),pe=v(()=>(n(),l(()=>n().t("Select an engine"))));aa(D,{get ariaLabel(){return e(H)},get placeholder(){return e(pe)},get value(){return e(j)},set value(ye){s(j,ye)},children:(ye,he)=>{var q=l_(),P=Qe(q),Q=a(P,!0);r(P),P.value=P.__value="";var re=o(P,2),le=a(re,!0);r(re),re.value=re.__value="browser-kokoro",g(($e,ze)=>{d(Q,$e),d(le,ze)},[()=>(n(),l(()=>n().t("Default"))),()=>(n(),l(()=>n().t("Kokoro.js (Browser)")))]),i(ye,q)},$$slots:{default:!0},$$legacy:!0})}},$$slots:{default:!0}})}var ge=o(te,2);{var _e=T=>{{let C=v(()=>(n(),l(()=>n().t("Kokoro.js Dtype")))),D=v(()=>(n(),l(()=>n().t("Select the local model precision used by Kokoro.js."))));xa(T,{get label(){return e(C)},get description(){return e(D)},children:(F,H)=>{{let pe=v(()=>(n(),l(()=>n().t("Kokoro.js Dtype")))),ye=v(()=>(n(),l(()=>n().t("Select dtype"))));aa(F,{get ariaLabel(){return e(pe)},get placeholder(){return e(ye)},get value(){return e(w).dtype},set value(he){We(w,e(w).dtype=he)},children:(he,q)=>{var P=Zk(),Q=Qe(P),re=a(Q,!0);r(Q),Q.value=Q.__value="";var le=o(Q,2);le.value=le.__value="fp32";var $e=o(le,2);$e.value=$e.__value="fp16";var ze=o($e,2);ze.value=ze.__value="q8";var Fe=o(ze,2);Fe.value=Fe.__value="q4",g(at=>d(re,at),[()=>(n(),l(()=>n().t("Select dtype")))]),i(he,P)},$$slots:{default:!0},$$legacy:!0})}},$$slots:{default:!0}})}};G(ge,T=>{e(j)==="browser-kokoro"&&T(_e)})}var Ae=o(ge,2);{let T=v(()=>(n(),l(()=>n().t("Auto-Playback Response")))),C=v(()=>(n(),l(()=>n().t("Play assistant responses aloud automatically."))));xa(Ae,{get label(){return e(T)},get description(){return e(C)},children:(D,F)=>{{let H=v(()=>(n(),l(()=>n().t("Auto-Playback Response"))));Nt(D,{get state(){return e(A)},get ariaLabel(){return e(H)},$$events:{change:pe=>{m(pe.detail)}}})}},$$slots:{default:!0}})}var U=o(Ae,2);{let T=v(()=>(n(),l(()=>n().t("Speech Playback Speed")))),C=v(()=>(n(),l(()=>n().t("Adjust how quickly spoken responses are played."))));xa(U,{get label(){return e(T)},get description(){return e(C)},children:(D,F)=>
16{var H=Qk(),pe=a(H);vt(pe),ll(),r(H),g(ye=>Be(pe,"aria-label",ye),[()=>(n(),l(()=>n().t("Speech Playback Speed")))]),dt(pe,()=>e(ae),ye=>s(ae,ye)),i(D,H)},$$slots:{default:!0}})}i(ie,ve)},$$slots:{default:!0}})}var Me=o(be,2);{var qe=O=>{var ie=Wr(),M=Qe(ie);{var ve=ge=>{{let _e=v(()=>(n(),l(()=>n().t("Voice"))));Na(ge,{get title(){return e(_e)},children:(Ae,U)=>{{let T=v(()=>(n(),l(()=>n().t("Set Voice")))),C=v(()=>(n(),l(()=>n().t("Choose the Kokoro.js voice used for speech output."))));Pl(Ae,{get label(){return e(T)},get description(){return e(C)},children:(D,F)=>{var H=s_(),pe=Qe(H);vt(pe),k(pe,1,me(Pe));var ye=o(pe,2);lr(ye,5,()=>e(Y),Ar,(he,q,P,Q)=>{var re=o_(),le=a(re,!0);r(re);var $e={};g(()=>{d(le,(e(q),l(()=>e(q).name))),$e!==($e=(e(q),l(()=>e(q).id)))&&(re.value=(re.__value=(e(q),l(()=>e(q).id)))??"")}),i(he,re)}),r(ye),g((he,q)=>{Be(pe,"aria-label",he),Be(pe,"placeholder",q)},[()=>(n(),l(()=>n().t("Voice"))),()=>(n(),l(()=>n().t("Select a voice")))]),dt(pe,()=>e(ee),he=>s(ee,he)),i(D,H)},$$slots:{default:!0}})}},$$slots:{default:!0}})}},te=ge=>{{let _e=v(()=>(n(),l(()=>n().t("Voice"))));Na(ge,{get title(){return e(_e)},children:(Ae,U)=>{var T=tE(),C=Qe(T),D=a(C);ra(D,{className:"size-4"});var F=o(D,2),H=a(F);r(F),r(C);var pe=o(C,2),ye=a(pe,!0);r(pe),g((he,q,P)=>{d(H,`${he??""} 17 ${q??""}`),d(ye,P)},[()=>(n(),l(()=>n().t("Loading Kokoro.js..."))),()=>(e(Se),l(()=>e(Se)&&e(Se).status==="progress"?`(${Math.round(e(Se).progress*10)/10}%)`:"")),()=>(n(),l(()=>n().t("Please do not close the settings page while loading the model.")))]),i(Ae,T)},$$slots:{default:!0}})}};G(M,ge=>{e(Te)?ge(ve):ge(te,-1)})}i(O,ie)},Re=O=>{{let ie=v(()=>(n(),l(()=>n().t("Voice"))));Na(O,{get title(){return e(ie)},children:(M,ve)=>{var te=Kc(),ge=Qe(te);{let Ae=v(()=>(n(),l(()=>n().t("Set Voice")))),U=v(()=>(n(),l(()=>n().t("Choose the browser voice used for speech output."))));Pl(ge,{get label(){return e(Ae)},get description(){return e(U)},children:(T,C)=>{{let D=v(()=>(n(),l(()=>n().t("Voice"))));aa(T,{className:"w-full",get ariaLabel(){return e(D)},get value(){return e(ee)},set value(F){s(ee,F)},children:(F,H)=>{var pe=aE(),ye=Qe(pe),he=a(ye,!0);r(ye),ye.value=ye.__value="";var q=o(ye,2);lr(q,1,()=>(e(Y),e(E),l(()=>e(Y).filter(P=>e(E)||P.localService===!0))),Ar,(P,Q)=>{var re=rE(),le=a(re,!0);r(re);var $e={};g(()=>{ts(re,(e(ee),e(Q),l(()=>e(ee)===e(Q).name))),d(le,(e(Q),l(()=>e(Q).name))),$e!==($e=(e(Q),l(()=>e(Q).name)))&&(re.value=(re.__value=(e(Q),l(()=>e(Q).name)))??"")}),i(P,re)}),g(P=>{ts(ye,e(ee)!==""),d(he,P)},[()=>(n(),l(()=>n().t("Default")))]),i(F,pe)},$$slots:{default:!0},$$legacy:!0})}},$$slots:{default:!0}})}var _e=o(ge,2);{let Ae=v(()=>(n(),l(()=>n().t("Allow non-local voices")))),U=v(()=>(n(),l(()=>n().t("Include voices that are not provided by a local speech service."))));xa(_e,{get label(){return e(Ae)},get description(){return e(U)},children:(T,C)=>{Nt(T,{get state(){return e(E)},set state(D){s(E,D)},$$legacy:!0})},$$slots:{default:!0}})}i(M,te)},$$slots:{default:!0}})}},ue=O=>{{let ie=v(()=>(n(),l(()=>n().t("Voice"))));Na(O,{get title(){return e(ie)},children:(M,ve)=>{{let te=v(()=>(n(),l(()=>n().t("Set Voice")))),ge=v(()=>(n(),l(()=>n().t("Choose the configured text-to-speech service voice."))));Pl(M,{get label(){return e(te)},get description(){return e(ge)},children:(_e,Ae)=>{var U=s_(),T=Qe(U);vt(T),k(T,1,me(Pe));var C=o(T,2);lr(C,5,()=>e(Y),Ar,(D,F,H,pe)=>{var ye=o_(),he=a(ye,!0);r(ye);var q={};g(()=>{d(he,(e(F),l(()=>e(F).name))),q!==(q=(e(F),l(()=>e(F).id)))&&(ye.value=(ye.__value=(e(F),l(()=>e(F).id)))??"")}),i(D,ye)}),r(C),g((D,F)=>{Be(T,"aria-label",D),Be(T,"placeholder",F)},[()=>(n(),l(()=>n().t("Voice"))),()=>(n(),l(()=>n().t("Select a voice")))]),dt(T,()=>e(ee),D=>s(ee,D)),i(_e,U)},$$slots:{default:!0}})}},$$slots:{default:!0}})}};G(Me,O=>{e(j)==="browser-kokoro"?O(qe):(t(),l(()=>t().audio.tts.engine==="")?O(Re,1):(t(),l(()=>t().audio.tts.engine!=="")&&O(ue,2)))})}r(oe);var xe=o(oe,2),K=a(xe),Oe=a(K,!0);r(K),r(xe),r(Ne),g((O,ie)=>{d(we,O),d(Oe,ie)},[()=>(n(),l(()=>n().t("Audio"))),()=>(n(),l(()=>n().t("Save")))]),ke("submit",Ne,ca(async()=>{var O,ie,M;c()({audio:{stt:{engine:e(V)!==""?e(V):void 0,language:e(B)!==""?e(B):void 0},tts:{engine:e(j)!==""?e(j):void 0,engineConfig:e(w),playbackRate:e(ae),voice:e(ee)!==""?e(ee):void 0,defaultVoice:((M=(ie=(O=t())==null?void 0:O.audio)==null?void 0:ie.tts)==null?void 0:M.voice)??"",nonLocalVoices:t().audio.tts.engine===""?e(E):void 0}}}),R("save")})),i(He,Ne),cr(),X()}var sE=u('<div slot="footer"><div class="flex flex-wrap text-sm font-normal gap-1.5 mt-2 m-1 justify-end w-full"><button class=" px-3.5 py-1.5 font-normal hover:bg-black/5 dark:hover:bg-white/5 outline outline-1 outline-gray-100 dark:outline-gray-800 rounded-3xl"><!></button></div></div>'),nE=u("<!>
17 <!>",1);function iE(He,_){vr(_,!1);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr(),Ie=mr("i18n");let X=Xe(_,"show",12,!1),R=Xe(_,"onUpdate",8,()=>{}),I=h(!1),c=h(null),x=1,A=h(""),E=h("updated_at"),V=h("desc"),B=h(!1),j=h(!1),w,Te=h(!1),Se=h({});const Y=async()=>{X()&&(w&&clearTimeout(w),x=1,s(c,null),e(A)===""?s(c,await Is(localStorage.token,x,e(Se))):w=setTimeout(async()=>{s(c,await Is(localStorage.token,x,e(Se)))},500),(e(c)??[]).length===0?s(B,!0):s(B,!1))},ee=async()=>{s(j,!0),x+=1;let Le=[];e(A)?Le=await Is(localStorage.token,x,e(Se)):Le=await Is(localStorage.token,x,e(Se)),s(B,Le.length===0),Le.length>0&&s(c,[...e(c)||[],...Le]),s(j,!1)},ae=async Le=>{const Ne=await $h(localStorage.token,Le).catch(Ce=>(rt.error(`${Ce}`),null));Ne===!0?(rt.success(t().t("Chat unshared successfully.")),R()(),se()):Ne===!1&&rt.error(t().t("Failed to unshare chat."))},Pe=async()=>{s(I,!0);try{await wh(localStorage.token),rt.success(t().t("All shared chats have been unshared.")),R()(),await se()}catch(Le){rt.error(`${Le}`)}finally{s(I,!1)}},se=async()=>{s(c,await Is(localStorage.token))};Kt(()=>(e(A),e(E),e(V)),()=>{s(Se,{...e(A)?{query:e(A)}:{},...e(E)?{order_by:e(E)}:{},...e(V)?{direction:e(V)}:{}})}),Kt(()=>e(Se),()=>{e(Se)!==null&&Y()}),Kt(()=>it(X()),()=>{X()&&se()}),la(),gr();var m=nE(),ce=Qe(m);{let Le=v(()=>(t(),l(()=>t().t("Are you sure you want to unshare all shared chats? This will remove all share links.")))),Ne=v(()=>(t(),l(()=>t().t("Unshare All"))));Ca(ce,{get message(){return e(Le)},get confirmLabel(){return e(Ne)},get show(){return e(Te)},set show(Ce){s(Te,Ce)},$$events:{confirm:()=>{Pe()}},$$legacy:!0})}var De=o(ce,2);{let Le=v(()=>(t(),l(()=>t().t("Shared Chats")))),Ne=v(()=>(t(),l(()=>t().t("You have no shared conversations."))));Ox(De,{get title(){return e(Le)},get emptyPlaceholder(){return e(Ne)},shareUrl:!1,get chatList(){return e(c)},get allChatsLoaded(){return e(B)},get chatListLoading(){return e(j)},onUpdate:()=>{R()(),se()},loadHandler:ee,unshareHandler:ae,get show(){return X()},set show(Ce){X(Ce)},get query(){return e(A)},set query(Ce){s(A,Ce)},get orderBy(){return e(E)},set orderBy(Ce){s(E,Ce)},get direction(){return e(V)},set direction(Ce){s(V,Ce)},$$slots:{footer:(Ce,we)=>{var oe=sE(),de=a(oe),be=a(de),Me=a(be);{var qe=ue=>{ra(ue,{className:"size-4"})},Re=ue=>{var xe=Mr();g(K=>d(xe,K),[()=>(t(),l(()=>t().t("Unshare All Shared Chats")))]),i(ue,xe)};G(Me,ue=>{e(I)?ue(qe):ue(Re,-1)})}r(be),r(de),r(oe),g(()=>be.disabled=e(I)),ke("click",be,()=>{s(Te,!0)}),i(Ce,oe)}},$$legacy:!0})}i(He,m),cr(),n()}var n_=u('<div class="text-sm font-medium text-gray-500 dark:text-gray-500"> </div>'),dE=u('<div class="self-center pl-1.5 pr-1 translate-y-[0.5px] rounded-l-xl bg-transparent"><button class="p-0.5 rounded-full hover:bg-gray-100 dark:hover:bg-gray-900 transition"><!></button></div>'),i_=u('<span class="font-normal"><!></span>'),d_=u('<span class="invisible"><!></span>'),vE=u('<div class="flex text-xs font-normal mb-1.5"><button class="px-1.5 py-1 cursor-pointer select-none basis-3/5"><div class="flex gap-1.5 items-center"> <!></div></button> <button class="px-1.5 py-1 cursor-pointer select-none hidden sm:flex sm:basis-2/5 justify-end"><div class="flex gap-1.5 items-center"> <!></div></button></div>'),cE=u('<div class="text-xs text-gray-500 dark:text-gray-400 text-center px-5 min-h-20 w-full h-full flex justify-center items-center"> </div>'),uE=u("<button><!></button>"),gE=u('<div class="w-full flex justify-between items-center rounded-lg text-sm py-2 px-3 hover:bg-gray-50/70 dark:hover:bg-gray-850/50 cursor-pointer"><div class="basis-3/5 min-w-0"><div class="text-ellipsis line-clamp-1"> </div> <div class="text-xs text-gray-500"> </div></div> <div class="basis-2/5 flex items-center justify-end"><!> <div class="flex justify-end pl-2.5 text-gray-600 dark:text-gray-300"><!></div></div></div>'),_E=u('<div class="w-full flex justify-center py-1 text-xs animate-pulse items-center gap-2"><!> <div> </div></div>'),fE=u('<div class="w-full"><!> <div class="text-left text-sm w-full mb-3 max-h-[32rem] overflow-y-scroll"><!> <!> <!></div></div>'),pE=u('<div class="w-full h-full flex justify-center items-center min-h-20"><!></div>
17'),mE=u('<div><div class="flex justify-between dark:text-gray-300 px-4 pt-3 pb-1"><div class="flex items-center gap-2 text-sm font-medium self-center"><div> </div> <!></div> <button class="self-center rounded-lg p-1 text-gray-500 transition hover:bg-gray-50 hover:text-gray-700 dark:text-gray-400 dark:hover:bg-gray-800 dark:hover:text-gray-200"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="size-4"><path fill-rule="evenodd" d="M6.28 5.22a.75.75 0 00-1.06 1.06L8.94 10l-3.72 3.72a.75.75 0 101.06 1.06L10 11.06l3.72 3.72a.75.75 0 101.06-1.06L11.06 10l3.72-3.72a.75.75 0 00-1.06-1.06L10 8.94 6.28 5.22z" clip-rule="evenodd"></path></svg></button></div> <div class="flex flex-col w-full px-5 pb-4 dark:text-gray-200"><div class="flex w-full space-x-2 mb-0.5"><div class="flex flex-1"><div class="self-center ml-1 mr-3"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="w-4 h-4"><path fill-rule="evenodd" d="M9 3.5a5.5 5.5 0 100 11 5.5 5.5 0 000-11zM2 9a7 7 0 1112.452 4.391l3.328 3.329a.75.75 0 11-1.06 1.06l-3.329-3.328A7 7 0 012 9z" clip-rule="evenodd"></path></svg></div> <input class="w-full text-sm pr-4 py-1 rounded-r-xl outline-hidden bg-transparent" maxlength="500"/> <!></div></div> <div class="flex flex-col w-full"><!></div></div></div>'),hE=u("<!> <!> <!>",1);function xE(He,_){vr(_,!1);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr(),Ie=mr("i18n");let X=Xe(_,"show",12,!1),R=h(null),I=h(null),c=h(""),x=h("created_at"),A=h("desc"),E=0,V=h(!1),B=h(!1),j=h(),w=h(null),Te=h(!1),Se=h(null),Y=h(!1),ee=h(!1);const ae=50,Pe=be=>{if(be===0)return"0 B";const Me=1024,qe=["B","KB","MB","GB"],Re=Math.floor(Math.log(be)/Math.log(Me));return parseFloat((be/Math.pow(Me,Re)).toFixed(1))+" "+qe[Re]},se=be=>{e(x)===be?s(A,e(A)==="asc"?"desc":"asc"):(s(x,be),s(A,"asc")),m()},m=async()=>{if(X()){E=0,s(R,null),s(V,!1);try{const be=e(c)?`*${e(c)}*`:"*",Me=await Ig(localStorage.token,be,0,ae);s(R,De(Me)),s(V,Me.length<ae),e(c)||s(I,await Kx(localStorage.token))}catch{s(R,[]),s(V,!0)}}},ce=async()=>{if(!(e(B)||e(V))){s(B,!0),E+=1;try{const be=e(c)?`*${e(c)}*`:"*",Me=await Ig(localStorage.token,be,E*ae,ae);s(V,Me.length<ae),Me.length>0&&s(R,De([...e(R)||[],...Me]))}catch{s(V,!0)}s(B,!1)}},De=be=>be.sort((Me,qe)=>{var xe,K;let Re=Me[e(x)]??0,ue=qe[e(x)]??0;return e(x)==="filename"&&(Re=((xe=Me.filename)==null?void 0:xe.toLowerCase())??"",ue=((K=qe.filename)==null?void 0:K.toLowerCase())??""),e(A)==="asc"?Re>ue?1:-1:Re<ue?1:-1}),Le=async be=>{var Me;try{await Yx(localStorage.token,be),rt.success(t().t("File deleted successfully.")),s(R,((Me=e(R))==null?void 0:Me.filter(qe=>qe.id!==be))??null),e(I)!==null&&em(I,-1)}catch(qe){rt.error(`${qe}`)}},Ne=be=>{var Me;s(Se,{id:be.id,name:be.filename,type:"file",size:(Me=be.meta)==null?void 0:Me.size,meta:be.meta}),s(Y,!0)};ea(()=>{const be=Re=>{Re.key==="Shift"&&s(ee,!0)},Me=Re=>{Re.key==="Shift"&&s(ee,!1)},qe=()=>{s(ee,!1)};return window.addEventListener("keydown",be),window.addEventListener("keyup",Me),window.addEventListener("blur",qe),()=>{clearTimeout(e(j)),window.removeEventListener("keydown",be),window.removeEventListener("keyup",Me),window.removeEventListener("blur",qe)}}),Al(()=>{clearTimeout(e(j))}),Kt(()=>(it(X()),e(c),e(j)),()=>{X()&&e(c)!==void 0&&(clearTimeout(e(j)),s(j,setTimeout(()=>{m()},300)))}),la(),gr();var Ce=hE(),we=Qe(Ce);Ca(we,{get show(){return e(Te)},set show(be){s(Te,be)},$$events:{confirm:()=>{e(w)&&(Le(e(w)),s(w,null))}},$$legacy:!0});var oe=o(we,2);Xm(oe,{get item(){return e(Se)},edit:!1,get show(){return e(Y)},set show(be){s(Y,be)},$$legacy:!0});var de=o(oe,2);Wa(de,{size:"xl",get show(){return X()},set show(be){X(be)},children:(be,Me)=>{var qe=mE(),Re=a(qe),ue=a(Re),xe=a(ue),K=a(xe,!0);r(xe);var Oe=o(xe,2);{var O=H=>{var pe=n_(),ye=a(pe,!0);r(pe),g(()=>d(ye,(e(R),l(()=>e(R).length)))),i(H,pe)},ie=H=>{var pe=n_(),ye=a(pe,!0);r(pe),g(()=>d(ye,e(I))),i(H,pe)};G(Oe,H=>{e(c)&&e(R)?H(O):e(I)!==null&&H(ie,1)})}r(ue);var M=o(ue,2);r(Re);var ve=o(Re,2),te=a(ve),ge=a(te),_e=o(a(ge),2);vt(_e);var Ae=o(_e,2);{var U=H=>{var pe=dE(),ye=a(pe),he=a(ye);wa(he,{className:"size-3",strokeWidth:"2"}),r(ye),r(pe),ke("click",ye,()=>{s(c,"")}),i(H,pe)};G(Ae,H=>{e(c)&&H(U)})}r(ge),r(te);var T=o(te,2),C=a(T);{var D=H=>{var pe=fE(),ye=a(pe);{var he=ze=>{var Fe=vE(),at=a(Fe),tt=a(at),Je=a(tt),je=o(Je);{var ne=S=>{var L=i_(),fe=a(L);{var y=N=>{ha(N,{className:"size-2"})},b=N=>{Ba(N,{className:"size-2"})};G(fe,N=>{e(A)==="asc"?N(y):N(b,-1)})}r(L),i(S,L)},J=S=>{var L=d_(),fe=a(L);ha(fe,{className:"size-2"}),r(L),i(S,L)};G(je,S=>{e(x)==="filename"?S(ne):S(J,-1)})}r(tt),r(at);var W=o(at,2),Z=a(W),Ee=a(Z),Ge=o(Ee);{var p=S=>{var L=i_(),fe=a(L);{var y=N=>{ha(N,{className:"size-2"})},b=N=>{Ba(N,{className:"size-2"})};G(fe,N=>{e(A)==="asc"?N(y):N(b,-1)})}r(L),i(S,L)},$=S=>{var L=d_(),fe=a(L);ha(fe,{className:"size-2"}),r(L),i(S,L)};G(Ge,S=>{e(x)==="created_at"?S(p):S($,-1)})}r(Z),r(W),r(Fe),g((S,L)=>{d(Je,`${S??""} `),d(Ee,`${L??""} `)},[()=>(t(),l(()=>t().t("Filename"))),()=>(t(),l(()=>t().t("Created at")))]),ke("click",at,()=>se("filename")),ke("click",W,()=>se("created_at")),i(ze,Fe)};G(ye,ze=>{e(R),l(()=>e(R).length>0)&&ze(he)})}var q=o(ye,2),P=a(q);{var Q=ze=>{var Fe=cE(),at=a(Fe,!0);r(Fe),g(tt=>d(at,tt),[()=>(t(),l(()=>t().t("No files found")))]),i(ze,Fe)};G(P,ze=>{e(R),l(()=>e(R).length===0)&&ze(Q)})}var re=o(P,2);lr(re,1,()=>e(R),ze=>ze.id,(ze,Fe)=>{var at=gE(),tt=a(at),Je=a(tt),je=a(Je,!0);r(Je);var ne=o(Je,2),J=a(ne,!0);r(ne),r(tt);var W=o(tt,2),Z=a(W);{let p=v(()=>(it(qa),e(Fe),l(()=>qa(e(Fe).created_at*1e3).format("MMM D, YYYY h:mm A"))));Lt(Z,{get content(){return e(p)},className:"hidden sm:flex text-gray-500 dark:text-gray-400 text-xs",children:($,S)=>{ll();var L=Mr();g(fe=>d(L,fe),[()=>(it(qa),e(Fe),l(()=>qa(e(Fe).created_at*1e3).format("MMM D, YYYY")))]),i($,L)},$$slots:{default:!0}})}var Ee=o(Z,2),Ge=a(Ee);{let p=v(()=>(e(ee),t(),l(()=>(e(ee),t().t("Delete File")))));Lt(Ge,{get content(){return e(p)},children:($,S)=>{var L=uE(),fe=a(L);zs(fe,{class:"size-4",strokeWidth:"1.5"}),r(L),g(()=>
17k(L,1,`self-center w-fit px-1 text-sm rounded-xl ${e(ee)?"text-red-500":""}`)),ke("click",L,xl(()=>{e(ee)?Le(e(Fe).id):(s(w,e(Fe).id),s(Te,!0))})),i($,L)},$$slots:{default:!0}})}r(Ee),r(W),r(at),g(p=>{d(je,(e(Fe),l(()=>e(Fe).filename))),d(J,p)},[()=>(e(Fe),l(()=>{var p;return Pe(((p=e(Fe).meta)==null?void 0:p.size)??0)}))]),ke("click",at,()=>Ne(e(Fe))),i(ze,at)});var le=o(re,2);{var $e=ze=>{Ks(ze,{$$events:{visible:()=>{e(B)||ce()}},children:(Fe,at)=>{var tt=_E(),Je=a(tt);ra(Je,{className:"size-4"});var je=o(Je,2),ne=a(je,!0);r(je),r(tt),g(J=>d(ne,J),[()=>(t(),l(()=>t().t("Loading...")))]),i(Fe,tt)},$$slots:{default:!0}})};G(le,ze=>{e(V)||ze($e)})}r(q),r(pe),i(H,pe)},F=H=>{var pe=pE(),ye=a(pe);ra(ye,{className:"size-5"}),r(pe),i(H,pe)};G(C,H=>{e(R)!==null?H(D):H(F,-1)})}r(T),r(ve),r(qe),g((H,pe,ye)=>{d(K,H),Be(M,"aria-label",pe),Be(_e,"placeholder",ye)},[()=>(t(),l(()=>t().t("Files"))),()=>(t(),l(()=>t().t("Close"))),()=>(t(),l(()=>t().t("Search Files")))]),ke("click",M,()=>{X(!1)}),dt(_e,()=>e(c),H=>s(c,H)),i(be,qe)},$$slots:{default:!0},$$legacy:!0}),i(He,Ce),cr(),n()}var zo=u('<button type="button"> </button>'),bE=u("<!> <!> <!> <!> <!>",1),yE=u('<!> <!> <!> <!> <div id="tab-chats" class="flex flex-col h-full text-sm"><h2 class="text-sm font-medium text-gray-900 dark:text-white mb-4"> </h2> <div class="flex-1 min-h-0 overflow-y-auto scrollbar-hover pr-1.5"><input id="chat-import-input" type="file" accept=".json" hidden=""/> <!> <!></div></div>',1);function $E(He,_){vr(_,!1);const t=()=>ct(R,"$i18n",n),f=()=>ct(ka,"$user",n),[n,Ie]=hr(),{saveAs:X}=no,R=mr("i18n");Xe(_,"saveSettings",8);let I=h(),c=h(!1),x=h(!1),A=h(!1),E=h(!1),V=h();const B="text-xs text-gray-500 transition-colors hover:text-gray-900 dark:text-gray-500 dark:hover:text-white",j=async oe=>{const de=await Rs(localStorage.token,oe.map(be=>be.chat?{chat:be.chat,meta:be.meta??{},pinned:!1,folder_id:(be==null?void 0:be.folder_id)??null,created_at:(be==null?void 0:be.created_at)??null,updated_at:(be==null?void 0:be.updated_at)??null}:{chat:be,meta:{},pinned:!1,folder_id:null,created_at:(be==null?void 0:be.created_at)??null,updated_at:(be==null?void 0:be.updated_at)??null}));de&&rt.success(`Successfully imported ${de.length} chats.`),await El(localStorage.token,{refreshPinned:!0})},w=async()=>{let oe=new Blob([JSON.stringify(await kh(localStorage.token))],{type:"application/json"});X(oe,`chat-export-${Date.now()}.json`)},Te=async()=>{await fa("/"),await Eh(localStorage.token).catch(oe=>{rt.error(`${oe}`)}),await El(localStorage.token,{clearPinned:!0})},Se=async()=>{await fa("/"),await Ah(localStorage.token).catch(oe=>{rt.error(`${oe}`)}),await El(localStorage.token)};Kt(()=>(e(I),gg),()=>{if(e(I)){e(I);let oe=new FileReader;oe.onload=de=>{let be=JSON.parse(de.target.result);if(ih(be)=="openai")try{be=gg(be)}catch(Me){}j(be)},e(I).length>0&&oe.readAsText(e(I)[0])}}),la(),gr();var Y=yE(),ee=Qe(Y);iE(ee,{get show(){return e(A)},set show(oe){s(A,oe)},$$legacy:!0});var ae=o(ee,2);xE(ae,{get show(){return e(E)},set show(oe){s(E,oe)},$$legacy:!0});var Pe=o(ae,2);{let oe=v(()=>(t(),l(()=>t().t("Archive All Chats")))),de=v(()=>(t(),l(()=>t().t("Are you sure you want to archive all chats? This action cannot be undone."))));Ca(Pe,{get title(){return e(oe)},get message(){return e(de)},get show(){return e(c)},set show(be){s(c,be)},$$events:{confirm:Te,cancel:()=>{s(c,!1)}},$$legacy:!0})}var se=o(Pe,2);{let oe=v(()=>(t(),l(()=>t().t("Delete All Chats")))),de=v(()=>(t(),l(()=>t().t("Are you sure you want to delete all chats? This action cannot be undone."))));Ca(se,{get title(){return e(oe)},get message(){return e(de)},get show(){return e(x)},set show(be){s(x,be)},$$events:{confirm:Se,cancel:()=>{s(x,!1)}},$$legacy:!0})}var m=o(se,2),ce=a(m),De=a(ce,!0);r(ce);var Le=o(ce,2),Ne=a(Le);Oa(Ne,oe=>s(V,oe),()=>e(V));var Ce=o(Ne,2);{let oe=v(()=>(t(),l(()=>t().t("Chats"))));Na(Ce,{get title(){return e(oe)},first:!0,children:(de,be)=>{var Me=bE(),qe=Qe(Me);{var Re=M=>{{let ve=v(()=>(t(),l(()=>t().t("Import Chats")))),te=v(()=>(t(),l(()=>t().t("Import chat history from a JSON export file."))));xa(M,{get label(){return e(ve)},get description(){return e(te)},children:(ge,_e)=>{var Ae=zo();k(Ae,1,me(B));var U=a(Ae,!0);r(Ae),g(T=>d(U,T),[()=>(t(),l(()=>t().t("Import")))]),ke("click",Ae,()=>{e(V).click()}),i(ge,Ae)},$$slots:{default:!0}})}};G(qe,M=>{f(),l(()=>{var ve,te,ge;return((ve=f())==null?void 0:ve.role)==="admin"||(((ge=(te=f().permissions)==null?void 0:te.chat)==null?void 0:ge.import)??!0)})&&M(Re)})}var ue=o(qe,2);{var xe=M=>{{let ve=v(()=>(t(),l(()=>t().t("Export Chats")))),te=v(()=>(t(),l(()=>t().t("Download your chat history as a JSON export."))));xa(M,{get label(){return e(ve)},get description(){return e(te)},children:(ge,_e)=>{var Ae=zo();k(Ae,1,me(B));var U=a(Ae,!0);r(Ae),g(T=>d(U,T),[()=>(t(),l(()=>t().t("Export")))]),ke("click",Ae,()=>{w()}),i(ge,Ae)},$$slots:{default:!0}})}};G(ue,M=>{f(),l(()=>{var ve,te,ge;return((ve=f())==null?void 0:ve.role)==="admin"||(((ge=(te=f().permissions)==null?void 0:te.chat)==null?void 0:ge.export)??!0)})&&M(xe)})}var K=o(ue,2);{let M=v(()=>(t(),l(()=>t().t("Shared Chats")))),ve=v(()=>(t(),l(()=>t().t("Review and manage chats you have shared."))));xa(K,{get label(){return e(M)},get description(){return e(ve)},children:(te,ge)=>{var _e=zo();k(_e,1,me(B));var Ae=a(_e,!0);r(_e),g(U=>d(Ae,U),[()=>(t(),l(()=>t().t("Manage")))]),ke("click",_e,()=>{s(A,!0)}),i(te,_e)},$$slots:{default:!0}})}var Oe=o(K,2);{let M=v(()=>(t(),l(()=>t().t("Archive All Chats")))),ve=v(()=>(t(),l(()=>t().t("Move every chat into the archive after confirmation."))));xa(Oe,{get label(){return e(M)},get description(){return e(ve)},children:(te,ge)=>{var _e=zo();k(_e,1,me(B));var Ae=a(_e,!0);r(_e),g(U=>d(Ae,U),[()=>(t(),l(()=>t().t("Archive All")))]),ke("click",_e,()=>{s(c,!0)}),i(te,_e)},$$slots:{default:!0}})}var O=o(Oe,2);{var ie=M=>{{let ve=v(()=>(t(),l(()=>t().t("Delete All Chats")))),te=v(()=>(t(),l(()=>t().t("Permanently delete every chat after confirmation."))));xa(M,{get label(){return e(ve)},get description(){return e(te)},children:(ge,_e)=>{var Ae=zo();k(Ae,1,me(B));var U=a(Ae,!0);r(Ae),g(T=>d(U,T),[()=>(t(),l(()=>t().t("Delete All")))]),ke("click",Ae,()=>{s(x,!0)}),i(ge,Ae)},$$slots:{default:!0}})}};G(O,M=>{f(),l(()=>{var ve,te,ge,_e;return((ve=f())==null?void 0:ve.role)==="admin"||(((_e=(ge=(te=f())==null?void 0:te.permissions)==null?void 0:ge.chat)==null?void 0:_e.delete)??!0)})&&M(ie)})}i(de,Me)},$$slots:{default:!0}})}var we=o(Ce,2);{let oe=v(()=>(t(),l(()=>t().t("Files"))));Na(we,{get title(){return e(oe)},children:(de,be)=>{{let Me=v(()=>(t(),l(()=>t().t("Manage Files")))),qe=v(()=>(t(),l(()=>t().t("Open the file manager for uploaded files."))));xa(de,{get label(){return e(Me)},get description(){return e(qe)},children:(Re,ue)=>{var xe=zo();k(xe,1,me(B));var K=a(xe,!0);r(xe),g(Oe=>d(K,Oe),[()=>(t(),l(()=>t().t("Manage")))]),ke("click",xe,()=>
17{s(E,!0)}),i(Re,xe)},$$slots:{default:!0}})}},$$slots:{default:!0}})}r(Le),r(m),g(oe=>d(De,oe),[()=>(t(),l(()=>t().t("Data Controls")))]),as(Ne,()=>e(I),oe=>s(I,oe)),i(He,Y),cr(),Ie()}var wE=u('<div class="flex flex-1 items-center justify-center"><!></div>'),kE=u('<div class="flex flex-1 items-center justify-center text-xs text-gray-500"> </div>'),EE=u('<div class="grid grid-cols-2 gap-x-6 gap-y-3 md:grid-cols-5"><div><div class="text-sm font-medium text-gray-900 dark:text-white"> </div> <div class="mt-0.5 text-[0.6875rem] text-gray-400 dark:text-gray-600"> </div></div> <div><div class="text-sm font-medium text-gray-900 dark:text-white"> </div> <div class="mt-0.5 text-[0.6875rem] text-gray-400 dark:text-gray-600"> </div></div> <div><div class="text-sm font-medium text-gray-900 dark:text-white"> </div> <div class="mt-0.5 text-[0.6875rem] text-gray-400 dark:text-gray-600"> </div></div> <div><div class="text-sm font-medium text-gray-900 dark:text-white"> </div> <div class="mt-0.5 text-[0.6875rem] text-gray-400 dark:text-gray-600"> </div></div> <div><div class="text-sm font-medium text-gray-900 dark:text-white"> </div> <div class="mt-0.5 text-[0.6875rem] text-gray-400 dark:text-gray-600"> </div></div></div>'),AE=u('<button type="button"> </button>'),IE=u("<div></div>"),SE=u('<div class="h-full w-full"></div>'),NE=u('<div class="truncate"> </div>'),PE=u('<div class="flex min-w-0 items-center gap-1.5"><span></span> <span class="max-w-28 truncate"> </span></div>'),CE=u('<div class="mt-2 flex flex-wrap gap-x-3 gap-y-1 text-[0.6875rem] text-gray-400 dark:text-gray-600"></div>'),v_=u('<div class="text-xs text-gray-500 dark:text-gray-400"> </div>'),Ko=u('<span class="text-xs text-gray-900 dark:text-white"> </span>'),TE=u("<!> <!> <!> <!> <!> <!>",1),c_=u('<span class="text-xs text-gray-500 dark:text-gray-400"> </span>'),LE=u("<!> <!> <!>",1),OE=u('<div class="scrollbar-hover min-h-0 flex-1 overflow-y-auto pr-1.5"><!> <section class="mt-4 w-full"><div class="mb-2 flex min-w-0 items-center justify-between gap-3"><h3 class="min-w-0 shrink truncate text-xs text-gray-400 dark:text-gray-600"> </h3> <div class="flex min-w-0 max-w-[70%] shrink items-center gap-3 overflow-hidden whitespace-nowrap"></div></div> <div class="pb-1"><div class="w-full min-w-0 overflow-hidden"><div class="mx-auto grid grid-flow-col"></div> <div class="mx-auto mt-2 grid text-[0.6875rem] leading-none text-gray-400 dark:text-gray-600"></div></div> <!></div></section> <!> <div class="mt-4 text-right text-[0.6875rem] text-gray-400 dark:text-gray-600"> </div></div>'),ME=u('<div class="flex h-full min-h-0 flex-col"><div class="mb-4"><h2 class="text-sm font-medium text-gray-900 dark:text-white"> </h2></div> <!></div>');function RE(He,_){vr(_,!1);const t=()=>ct(ba,"$models",n),f=()=>ct(Y,"$i18n",n),[n,Ie]=hr(),X=h(),R=h(),I=h(),c=h(),x=h(),A=h(),E=h(),V=h(),B=h(),j=h(),w=h(),Te=h(),Se=h(),Y=mr("i18n");let ee=h(null),ae=h(!0),Pe=h("daily"),se=h(0);const m=8,ce=10,De=4,Le=26,Ne=26,Ce=6,we=[["bg-gray-100 dark:bg-gray-800","bg-green-100 dark:bg-green-900/40","bg-green-300 dark:bg-green-700/60","bg-green-500 dark:bg-green-600/80","bg-green-700 dark:bg-green-500"],["bg-gray-100 dark:bg-gray-800","bg-blue-100 dark:bg-blue-900/40","bg-blue-300 dark:bg-blue-700/60","bg-blue-500 dark:bg-blue-600/80","bg-blue-700 dark:bg-blue-500"],["bg-gray-100 dark:bg-gray-800","bg-purple-100 dark:bg-purple-900/40","bg-purple-300 dark:bg-purple-700/60","bg-purple-500 dark:bg-purple-600/80","bg-purple-700 dark:bg-purple-500"],["bg-gray-100 dark:bg-gray-800","bg-orange-100 dark:bg-orange-900/40","bg-orange-300 dark:bg-orange-700/60","bg-orange-500 dark:bg-orange-600/80","bg-orange-700 dark:bg-orange-500"],["bg-gray-100 dark:bg-gray-800","bg-rose-100 dark:bg-rose-900/40","bg-rose-300 dark:bg-rose-700/60","bg-rose-500 dark:bg-rose-600/80","bg-rose-700 dark:bg-rose-500"],["bg-gray-100 dark:bg-gray-800","bg-yellow-100 dark:bg-yellow-900/40","bg-yellow-300 dark:bg-yellow-700/60","bg-yellow-500 dark:bg-yellow-600/80","bg-yellow-700 dark:bg-yellow-500"],["bg-gray-100 dark:bg-gray-800","bg-cyan-100 dark:bg-cyan-900/40","bg-cyan-300 dark:bg-cyan-700/60","bg-cyan-500 dark:bg-cyan-600/80","bg-cyan-700 dark:bg-cyan-500"],["bg-gray-100 dark:bg-gray-800","bg-red-100 dark:bg-red-900/40","bg-red-300 dark:bg-red-700/60","bg-red-500 dark:bg-red-600/80","bg-red-700 dark:bg-red-500"],["bg-gray-100 dark:bg-gray-800","bg-neutral-200 dark:bg-neutral-800","bg-neutral-400 dark:bg-neutral-600","bg-neutral-600 dar
17k:bg-neutral-400","bg-neutral-800 dark:bg-neutral-200"]],oe=[{value:"daily",label:"Daily"},{value:"weekly",label:"Weekly"},{value:"cumulative",label:"Cumulative"}],de=async()=>{s(ae,!0);try{s(ee,await ah(localStorage.token))}catch(C){s(ee,null)}s(ae,!1)},be=C=>{const D=new Date(`${C}T00:00:00`),F=(D.getDay()+6)%7;D.setDate(D.getDate()-F);const H=`${D.getMonth()+1}`.padStart(2,"0"),pe=`${D.getDate()}`.padStart(2,"0");return`${D.getFullYear()}-${H}-${pe}`},Me=(C,D,F,H)=>D==="daily"?C:C.map(pe=>{const ye=D==="weekly"?F.get(be(pe.date)):H.get(pe.date);return ye?{...ye,date:pe.date}:pe}),qe=(C,D)=>{if(C.length===0)return[];const F=C.slice(-Math.max(7,D*7)),H=Array.from({length:(7-F.length%7)%7},()=>null);return[...F,...H]},Re=(C,D)=>{const F=[];let H="",pe=-Ce;return C.forEach((ye,he)=>{if(!ye)return;const q=ye.date.slice(0,7);if(q===H)return;const P=Math.floor(he/7)+1;if(P-pe<Ce){H=q;return}F.push({label:new Date(`${ye.date}T00:00:00`).toLocaleString(void 0,{month:"short"}),column:P,span:Math.min(Ce,D-P+1)}),pe=P,H=q}),F},ue=C=>{var F;return((F=Object.entries(C.models??{}).sort((H,pe)=>pe[1]-H[1])[0])==null?void 0:F[0])??null},xe=C=>{if(!C)return we[0];const D=C.toLowerCase().charCodeAt(0),F=Math.max(0,D-97)%we.length;return we[F]},K=C=>{const D=C.messages;return D>=20?4:D>=10?3:D>=5?2:D>0?1:0},Oe=C=>{const D=e(Pe)==="weekly"?`${f().t("Week of")} ${be(C.date)}`:e(Pe)==="cumulative"?`${f().t("Through")} ${C.date}`:C.date,F=ue(C),H=Object.entries(C.models??{}).sort((ye,he)=>he[1]-ye[1]),pe=H.length>0?H.slice(0,3).map(([ye,he])=>`${ie(ye)} ${he}`).join(", "):f().t("No model data");return`${D}: ${tl(C.tokens)} ${f().t("tokens")}, ${C.messages.toLocaleString()} ${f().t("messages")}, ${C.chats.toLocaleString()} ${f().t("chats")}${F?` (${ie(F)})`:""}. ${pe}`},O=C=>{if(!C)return"0m";const D=Math.floor(C/86400),F=Math.floor(C%86400/3600),H=Math.floor(C%3600/60);return D>0?`${D}d ${F}h`:F>0?`${F}h ${H}m`:`${H}m`},ie=C=>C?e(X).get(C)??C:"-";ea(de),Kt(()=>t(),()=>{s(X,new Map(t().map(C=>[C.id,C.name||C.id])))}),Kt(()=>e(ee),()=>{var C;s(R,((C=e(ee))==null?void 0:C.heatmap)??[])}),Kt(()=>e(ee),()=>{var C;s(I,new Map((((C=e(ee))==null?void 0:C.weekly_heatmap)??[]).map(D=>[D.date,D])))}),Kt(()=>e(ee),()=>{var C;s(c,new Map((((C=e(ee))==null?void 0:C.cumulative_heatmap)??[]).map(D=>[D.date,D])))}),Kt(()=>(e(R),e(Pe),e(I),e(c)),()=>{s(x,Me(e(R),e(Pe),e(I),e(c)))}),Kt(()=>e(x),()=>{s(A,Math.max(Math.ceil(e(x).length/7),1))}),Kt(()=>(e(se),e(A)),()=>{s(E,e(se)?Math.max(Math.min(e(A),Le),Math.floor((e(se)+De)/(m+De))):Math.min(e(A),Ne))}),Kt(()=>(e(A),e(E)),()=>{s(V,Math.min(e(A),e(E)))}),Kt(()=>(e(x),e(V)),()=>{s(B,qe(e(x),e(V)))}),Kt(()=>e(B),()=>{s(j,Math.max(Math.ceil(e(B).length/7),1))}),Kt(()=>e(j),()=>{s(w,`${e(j)*ce+(e(j)-1)*De}px`)}),Kt(()=>(e(B),e(j)),()=>{s(Te,Re(e(B),e(j)))}),Kt(()=>e(ee),()=>{var C,D;s(Se,(((C=e(ee))==null?void 0:C.totals.messages)??0)>0||(((D=e(ee))==null?void 0:D.totals.lifetime_tokens)??0)>0)}),la(),gr();var M=ME(),ve=a(M),te=a(ve),ge=a(te,!0);r(te),r(ve);var _e=o(ve,2);{var Ae=C=>{var D=wE(),F=a(D);ra(F,{className:"size-5"}),r(D),i(C,D)},U=C=>{var D=kE(),F=a(D,!0);r(D),g(H=>d(F,H),[()=>(f(),l(()=>f().t("Failed to load usage")))]),i(C,D)},T=C=>{var D=OE(),F=a(D);{let ne=v(()=>(f(),l(()=>f().t("Overview"))));Na(F,{get title(){return e(ne)},first:!0,children:(J,W)=>{var Z=EE(),Ee=a(Z),Ge=a(Ee),p=a(Ge,!0);r(Ge);var $=o(Ge,2),S=a($,!0);r($),r(Ee);var L=o(Ee,2),fe=a(L),y=a(fe,!0);r(fe);var b=o(fe,2),N=a(b,!0);r(b),r(L);var z=o(L,2),Ue=a(z),Ye=a(Ue,!0);r(Ue);var Ve=o(Ue,2),lt=a(Ve,!0);r(Ve),r(z);var st=o(z,2),Ke=a(st),Ze=a(Ke,!0);r(Ke);var ot=o(Ke,2),ut=a(ot,!0);r(ot),r(st);var _t=o(st,2),nt=a(_t),et=a(nt,!0);r(nt);var gt=o(nt,2),It=a(gt,!0);r(gt),r(_t),r(Z),g((Mt,jt,Tt,yt,$t,rr,Rt,Wt,or,$r)=>{d(p,Mt),d(S,jt),d(y,Tt),d(N,yt),d(Ye,$t),d(lt,rr),d(Ze,Rt),d(ut,Wt),d(et,or),d(It,$r)},[()=>(it(tl),e(ee),l(()=>tl(e(ee).totals.lifetime_tokens))),()=>(f(),l(()=>f().t("Lifetime tokens"))),()=>(it(tl),e(ee),l(()=>tl(e(ee).totals.peak_daily_tokens))),()=>(f(),l(()=>f().t("Peak tokens"))),()=>(e(ee),l(()=>O(e(ee).totals.longest_chat_seconds))),()=>(f(),l(()=>f().t("Longest active chat"))),()=>(e(ee),l(()=>
17e(ee).totals.current_streak.toLocaleString())),()=>(f(),l(()=>f().t("Current streak"))),()=>(e(ee),l(()=>e(ee).totals.longest_streak.toLocaleString())),()=>(f(),l(()=>f().t("Longest streak")))]),i(J,Z)},$$slots:{default:!0}})}var H=o(F,2),pe=a(H),ye=a(pe),he=a(ye,!0);r(ye);var q=o(ye,2);lr(q,5,()=>oe,Ar,(ne,J)=>{var W=AE(),Z=a(W,!0);r(W),g(Ee=>{k(W,1,`min-w-0 shrink truncate whitespace-nowrap text-xs transition-colors ${e(Pe),e(J),l(()=>e(Pe)===e(J).value?"text-gray-900 dark:text-white":"text-gray-400 hover:text-gray-700 dark:hover:text-gray-200")??""} 18 `),d(Z,Ee)},[()=>(f(),e(J),l(()=>f().t(e(J).label)))]),ke("click",W,()=>{s(Pe,e(J).value)}),i(ne,W)}),r(q),r(pe);var P=o(pe,2),Q=a(P),re=a(Q);lr(re,5,()=>e(B),Ar,(ne,J)=>{var W=Wr(),Z=Qe(W);{var Ee=p=>{{let $=v(()=>(e(J),l(()=>Oe(e(J)))));Lt(p,{get content(){return e($)},children:(S,L)=>{var fe=IE();g((y,b)=>{k(fe,1,`h-full w-full rounded-[0.125rem] ${y??""}`),Be(fe,"aria-label",b)},[()=>(e(J),l(()=>xe(ue(e(J)))[K(e(J))])),()=>(e(J),l(()=>Oe(e(J))))]),i(S,fe)},$$slots:{default:!0}})}},Ge=p=>{var $=SE();i(p,$)};G(Z,p=>{e(J)?p(Ee):p(Ge,-1)})}i(ne,W)}),r(re);var le=o(re,2);lr(le,5,()=>e(Te),Ar,(ne,J)=>{var W=NE(),Z=a(W,!0);r(W),g(()=>{bl(W,`grid-column: ${e(J),l(()=>e(J).column)??""} / span ${e(J),l(()=>e(J).span)??""};`),d(Z,(e(J),l(()=>e(J).label)))}),i(ne,W)}),r(le),r(Q);var $e=o(Q,2);{var ze=ne=>{var J=CE();lr(J,5,()=>(e(ee),l(()=>e(ee).top_models.slice(0,6))),Ar,(W,Z)=>{var Ee=PE(),Ge=a(Ee),p=o(Ge,2),$=a(p,!0);r(p),r(Ee),g((S,L)=>{k(Ge,1,`size-2 shrink-0 rounded-[0.125rem] ${S??""}`),d($,L)},[()=>(e(Z),l(()=>xe(e(Z).model_id)[3])),()=>(e(Z),l(()=>ie(e(Z).model_id)))]),i(W,Ee)}),r(J),i(ne,J)};G($e,ne=>{e(ee),l(()=>e(ee).top_models.length>0)&&ne(ze)})}r(P),r(H);var Fe=o(H,2);{var at=ne=>{{let J=v(()=>(f(),l(()=>f().t("Activity"))));Na(ne,{get title(){return e(J)},children:(W,Z)=>{var Ee=v_(),Ge=a(Ee,!0);r(Ee),g(p=>d(Ge,p),[()=>(f(),l(()=>f().t("No usage data found")))]),i(W,Ee)},$$slots:{default:!0}})}},tt=ne=>{var J=LE(),W=Qe(J);{let p=v(()=>(f(),l(()=>f().t("Activity insights"))));Na(W,{get title(){return e(p)},children:($,S)=>{var L=TE(),fe=Qe(L);{let Ye=v(()=>(f(),l(()=>f().t("Models"))));xa(fe,{get label(){return e(Ye)},children:(Ve,lt)=>{var st=Ko(),Ke=a(st,!0);r(st),g(Ze=>d(Ke,Ze),[()=>(e(ee),l(()=>e(ee).totals.models_used.toLocaleString()))]),i(Ve,st)},$$slots:{default:!0}})}var y=o(fe,2);{let Ye=v(()=>(f(),l(()=>f().t("Average tokens per chat"))));xa(y,{get label(){return e(Ye)},children:(Ve,lt)=>{var st=Ko(),Ke=a(st,!0);r(st),g(Ze=>d(Ke,Ze),[()=>(it(tl),e(ee),l(()=>tl(e(ee).insights.average_tokens_per_chat)))]),i(Ve,st)},$$slots:{default:!0}})}var b=o(y,2);{let Ye=v(()=>(f(),l(()=>f().t("Average messages per active day"))));xa(b,{get label(){return e(Ye)},children:(Ve,lt)=>{var st=Ko(),Ke=a(st,!0);r(st),g(Ze=>d(Ke,Ze),[()=>(e(ee),l(()=>e(ee).insights.average_messages_per_active_day.toLocaleString()))]),i(Ve,st)},$$slots:{default:!0}})}var N=o(b,2);{let Ye=v(()=>(f(),l(()=>f().t("User messages"))));xa(N,{get label(){return e(Ye)},children:(Ve,lt)=>{var st=Ko(),Ke=a(st);r(st),g(Ze=>d(Ke,`${Ze??""} · ${e(ee),l(()=>e(ee).insights.user_message_share)??""}%`),[()=>(e(ee),l(()=>e(ee).totals.user_messages.toLocaleString()))]),i(Ve,st)},$$slots:{default:!0}})}var z=o(N,2);{let Ye=v(()=>(f(),l(()=>f().t("Assistant messages"))));xa(z,{get label(){return e(Ye)},children:(Ve,lt)=>{var st=Ko(),Ke=a(st);r(st),g(Ze=>d(Ke,`${Ze??""} · ${e(ee),l(()=>e(ee).insights.assistant_message_share)??""}%`),[()=>(e(ee),l(()=>e(ee).totals.assistant_messages.toLocaleString()))]),i(Ve,st)},$$slots:{default:!0}})}var Ue=o(z,2);{let Ye=v(()=>(f(),l(()=>f().t("Total chats"))));xa(Ue,{get label(){return e(Ye)},children:(Ve,lt)=>{var st=Ko(),Ke=a(st,!0);r(st),g(Ze=>d(Ke,Ze),[()=>(e(ee),l(()=>e(ee).totals.total_chats.toLocaleString()))]),i(Ve,st)},$$slots:{default:!0}})}i($,L)},$$slots:{default:!0}})}var Z=o(W,2);{let p=v(()=>(f(),l(()=>f().t("Top models"))));Na(Z,{get title(){return e(p)},children:($,S)=>{var L=Wr(),fe=Qe(L);{var y=N=>{var z=v_(),Ue=a(z,!0);r(z),g(Ye=>d(Ue,Ye),[()=>(f(),l(()=>f().t("No model usage found")))]),i(N,z)},b=N=>{var z=Wr(),Ue=Qe(z);lr(Ue,1,()=>(e(ee),l(()=>e(ee).top_models)),Ar,(Ye,Ve)=>{{let lt=v(()=>(e(Ve),l(()=>ie(e(Ve).model_id))));xa(Ye,{get label(){return e(lt)},children:(st,Ke)=>{var Ze=c_(),ot=a(Ze);r(Ze),g((ut,_t,nt)=>d(ot,`${ut??""} 19 ${_t??""} · ${nt??""}`),[()=>(e(Ve),l(()=>
19e(Ve).messages.toLocaleString())),()=>(f(),l(()=>f().t("messages"))),()=>(it(tl),e(Ve),l(()=>tl(e(Ve).total_tokens)))]),i(st,Ze)},$$slots:{default:!0}})}}),i(N,z)};G(fe,N=>{e(ee),l(()=>e(ee).top_models.length===0)?N(y):N(b,-1)})}i($,L)},$$slots:{default:!0}})}var Ee=o(Z,2);{var Ge=p=>{{let $=v(()=>(f(),l(()=>f().t("Most used tools"))));Na(p,{get title(){return e($)},children:(S,L)=>{var fe=Wr(),y=Qe(fe);lr(y,1,()=>(e(ee),l(()=>e(ee).top_tools)),Ar,(b,N)=>{xa(b,{get label(){return e(N),l(()=>e(N).name)},children:(z,Ue)=>{var Ye=c_(),Ve=a(Ye);r(Ye),g((lt,st)=>d(Ve,`${lt??""} 20 ${st??""}`),[()=>(e(N),l(()=>e(N).count.toLocaleString())),()=>(f(),l(()=>f().t("runs")))]),i(z,Ye)},$$slots:{default:!0}})}),i(S,fe)},$$slots:{default:!0}})}};G(Ee,p=>{e(ee),l(()=>e(ee).top_tools.length>0)&&p(Ge)})}i(ne,J)};G(Fe,ne=>{e(Se)?ne(tt,-1):ne(at)})}var Je=o(Fe,2),je=a(Je,!0);r(Je),r(D),g((ne,J)=>{d(he,ne),bl(re,`width: min(100%, ${e(w)??""}); gap: 4px; aspect-ratio: ${e(j)??""} / 7; grid-template-columns: repeat(${e(j)??""}, minmax(0, 1fr)); grid-template-rows: repeat(7, minmax(0, 1fr));`),bl(le,`width: min(100%, ${e(w)??""}); column-gap: 4px; grid-template-columns: repeat(${e(j)??""}, minmax(0, 1fr));`),d(je,J)},[()=>(f(),l(()=>f().t("Token activity"))),()=>(f(),l(()=>f().t("Token counts are estimates and may not reflect actual API usage")))]),qx(Q,"clientWidth",ne=>s(se,ne)),i(C,D)};G(_e,C=>{e(ae)?C(Ae):e(ee)?C(T,-1):C(U,1)})}r(M),g(C=>d(ge,C),[()=>(f(),l(()=>f().t("Usage")))]),i(He,M),cr(),Ie()}var DE=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24"><path d="M5 5V8V11" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path><path d="M8.50005 8C12.5001 8 11.0001 8 15.0001 8C15.0001 8 15.0001 8 15.0001 8C15.0001 8 20.0001 8 20.0001 12.7059C20.0001 18 15.0001 18 15.0001 18C11.5715 18 9.71434 18 6.28577 18" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path><path d="M11.5 11.5C10.1332 10.1332 9.36683 9.36683 8 8C9.36683 6.63317 10.1332 5.86683 11.5 4.5" stroke="currentColor" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function u_(He,_){let t=Xe(_,"className",8,"size-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=DE();g(()=>{Be(n,"stroke-width",f()),k(n,0,me(t()))}),i(He,n)}var UE=u('<span class="ml-2 font-normal text-gray-500 dark:text-gray-500"> </span>'),BE=u('<div class="shrink-0"><button class="rounded-lg p-0.5 text-gray-400 transition-colors hover:text-gray-700 dark:text-gray-600 dark:hover:text-gray-300" type="button"><!></button></div>'),GE=u('<button class="flex h-7 items-center gap-1.5 rounded-lg bg-transparent px-1.5 text-xs text-gray-500 transition-colors hover:text-gray-900 dark:text-gray-500 dark:hover:text-white" type="button"><span> </span> <!></button>'),jE=u('<button class="flex h-[1.6875rem] w-full cursor-pointer select-none items-center gap-2 rounded-lg bg-transparent px-2 text-xs hover:text-gray-900 disabled:cursor-default disabled:opacity-30 dark:hover:text-gray-100" type="button"><!> <div class="min-w-0 flex-1 truncate text-left"> </div></button> <button class="flex h-[1.6875rem] w-full cursor-pointer select-none items-center gap-2 rounded-lg bg-transparent px-2 text-xs hover:text-gray-900 disabled:cursor-default disabled:opacity-30 dark:hover:text-gray-100" type="button"><!> <div class="min-w-0 flex-1 truncate text-left"> </div></button>',1),HE=u('<div slot="content"><!></div>'),FE=u('<div class="flex min-h-20 items-center justify-center"><!></div>'),WE=u('<div class="flex min-h-20 items-center justify-center px-4 text-center text-xs text-gray-500 dark:text-gray-400"> </div>'),g_=u('<button class="rounded-lg p-1 text-gray-400 transition-colors hover:text-gray-700 dark:text-gray-600 dark:hover:text-gray-300" type="button"><!></button>'),zE=u('<div class="flex w-full justify-between gap-2 px-1 py-1 text-xs"><a class="mr-auto min-w-0 max-w-xl flex-1 self-center truncate text-gray-600 hover:text-black dark:text-gray-400 dark:hover:text-white"> </a> <div class="hidden w-24 shrink-0 self-center justify-end text-gray-400 dark:text-gray-600 sm:flex"> </div> <div class="flex shrink-0 items-center justify-end text-gray-500 dark:text-gray-500"><!> <!></div></div>'),KE=u('<div class="flex w-full items-center justify-center gap-2 py-1 text-xs animate-pulse"><!> <div> </div></div>'),YE=u('<div class="flex items-center px-1 text-xs text-gray-400 dark:text-gray-600"><button class="flex flex-1 items-center gap-1 py-0.5 text-left" type="button"> <!></button> <button class="hidden w-24 items-center justify-end gap-1 py-0.5 text-right sm:flex" type="button"> <!></button></div> <div></div> <!>',1),VE=u('<!> <!> <div id="tab-archived-chats" class="flex flex-col h-full text-sm"><div class="mb-3 flex items-center justify-between"><h2 class="text-sm font-medium text-gray-900 dark:text-white"> <!></h2></div> <div class="flex h-7 shrink-0 items-center w-full gap-2"><div class="flex min-w-0 flex-1 items-center gap-2"><!> <input data-settings-search="" class="min-w-0 flex-1 bg-transparent py-0.5 text-xs text-gray-700 outline-hidden placeholder:text-gray-300 dark:text-gray-300 dark:placeholder:text-gray-700" maxlength="500"/> <!></div> <!></div> <div class="mt-3 flex-1 min-h-0 overflow-y-auto scrollbar-hover pr-1.5"><!></div></div>',1);function qE(He,_){vr(_,!1);const t=()=>ct(I,"$i18n",Ie),f=()=>ct(cl,"$chatId",Ie),n=()=>ct(ka,"$user",Ie),[Ie,X]=hr(),{saveAs:R}=no;qa.extend(gf),qa.extend(Fu);const I=mr("i18n");let c=h(!1),x=h(null),A=h(null),E=1,V=h(""),B=h("updated_at"),j=h("desc"),w=h(!1),Te=h(!1),Se=null,Y=h(null),ee=h(!1),ae=h(!1);const Pe=()=>({...e(V)?{query:e(V)}:{},...e(B)?{order_by:e(B)}:{},...e(j)?{direction:e(j)}:{}}),se=async()=>{E=1,s(x,null),s(x,await hg(localStorage.token,E,Pe())),s(w,(e(x)??[]).length===0),s(A,await Ih(localStorage.token))},m=()=>{Se&&clearTimeout(Se),e(V)===""?se():Se=setTimeout(se,300)},ce=async()=>{s(Te,!0),E+=1;const D=await hg(localStorage.token,E,Pe());s(w,D.length===0),D.length>0&&s(x,[...e(x)||[],...D]),s(Te,!1)},De=async D=>{e(B)===D?s(j,e(j)==="asc"?"desc":"asc"):(s(B,D),s(j,"asc")),await se()},Le=async()=>{const D=await Sh(localStorage.token),F=new Blob([JSON.stringify(D)],{type:"application/json"});
20R(F,`${t().t("archived-chat-export")}-${Date.now()}.json`)},Ne=async D=>{var F;await Lu(localStorage.token,D).catch(H=>{rt.error(`${H}`)}),s(x,((F=e(x))==null?void 0:F.filter(H=>H.id!==D))??null),e(A)!==null&&s(A,e(A)-1),await El(localStorage.token)},Ce=async()=>{var F;if(!e(Y))return;const D=e(Y);await Tu(localStorage.token,D).catch(H=>{rt.error(`${H}`)}),s(x,((F=e(x))==null?void 0:F.filter(H=>H.id!==D))??null),e(A)!==null&&s(A,e(A)-1),s(Y,null),f()===D&&(await fa("/"),cl.set("")),await El(localStorage.token)},we=async()=>{s(c,!0);try{await Nh(localStorage.token),rt.success(t().t("All chats have been unarchived.")),await se(),await El(localStorage.token)}catch(D){rt.error(`${D}`)}finally{s(c,!1)}};ea(se),gr();var oe=VE(),de=Qe(oe);Ca(de,{get show(){return e(ee)},set show(D){s(ee,D)},$$events:{confirm:()=>{Ce()}},$$legacy:!0});var be=o(de,2);{let D=v(()=>t().t("Are you sure you want to unarchive all archived chats?")),F=v(()=>t().t("Unarchive All"));Ca(be,{get message(){return e(D)},get confirmLabel(){return e(F)},get show(){return e(ae)},set show(H){s(ae,H)},$$events:{confirm:()=>{we()}},$$legacy:!0})}var Me=o(be,2),qe=a(Me),Re=a(qe),ue=a(Re),xe=o(ue);{var K=D=>{var F=UE(),H=a(F,!0);r(F),g(pe=>d(H,pe),[()=>tl(e(A))]),i(D,F)};G(xe,D=>{e(A)!==null&&D(K)})}r(Re),r(qe);var Oe=o(qe,2),O=a(Oe),ie=a(O);Ud(ie,{className:"size-3.5 shrink-0 text-gray-400 dark:text-gray-600"});var M=o(ie,2);vt(M);var ve=o(M,2);{var te=D=>{var F=BE(),H=a(F),pe=a(H);wa(pe,{className:"size-3",strokeWidth:"2"}),r(H),r(F),g(ye=>Be(H,"aria-label",ye),[()=>t().t("Clear search")]),ke("click",H,()=>{s(V,""),m()}),i(D,F)};G(ve,D=>{e(V)&&D(te)})}r(O);var ge=o(O,2);io(ge,{align:"end",children:(D,F)=>{{let H=v(()=>t().t("Actions"));Lt(D,{get content(){return e(H)},children:(pe,ye)=>{var he=GE(),q=a(he),P=a(q,!0);r(q);var Q=o(q,2);Ba(Q,{className:"size-3",strokeWidth:"2.5"}),r(he),g(re=>d(P,re),[()=>t().t("Actions")]),i(pe,he)},$$slots:{default:!0}})}},$$slots:{default:!0,content:(D,F)=>{var H=HE(),pe=a(H);vo(pe,{className:"w-[10.625rem] shadow-sm",children:(ye,he)=>{var q=jE(),P=Qe(q),Q=a(P);{var re=je=>{ra(je,{className:"size-3.5 shrink-0"})},le=je=>{u_(je,{className:"size-3.5 shrink-0",strokeWidth:"1.5"})};G(Q,je=>{e(c)?je(re):je(le,-1)})}var $e=o(Q,2),ze=a($e,!0);r($e),r(P);var Fe=o(P,2),at=a(Fe);Vs(at,{className:"size-3.5 shrink-0",strokeWidth:"1.5"});var tt=o(at,2),Je=a(tt,!0);r(tt),r(Fe),g((je,ne)=>{P.disabled=e(c)||e(A)===0,d(ze,je),Fe.disabled=e(c)||e(A)===0,d(Je,ne)},[()=>t().t("Unarchive All"),()=>t().t("Export")]),ke("click",P,()=>{s(ae,!0)}),ke("click",Fe,Le),i(ye,q)},$$slots:{default:!0}}),r(H),i(D,H)}}}),r(Oe);var _e=o(Oe,2),Ae=a(_e);{var U=D=>{var F=FE(),H=a(F);ra(H,{className:"size-5"}),r(F),i(D,F)},T=D=>{var F=WE(),H=a(F,!0);r(F),g(pe=>d(H,pe),[()=>t().t("You have no archived conversations.")]),i(D,F)},C=D=>{var F=YE(),H=Qe(F),pe=a(H),ye=a(pe),he=o(ye);{var q=at=>{var tt=Wr(),Je=Qe(tt);{var je=J=>{ha(J,{className:"size-2"})},ne=J=>{Ba(J,{className:"size-2"})};G(Je,J=>{e(j)==="asc"?J(je):J(ne,-1)})}i(at,tt)};G(he,at=>{e(B)==="title"&&at(q)})}r(pe);var P=o(pe,2),Q=a(P),re=o(Q);{var le=at=>{var tt=Wr(),Je=Qe(tt);{var je=J=>{ha(J,{className:"size-2"})},ne=J=>{Ba(J,{className:"size-2"})};G(Je,J=>{e(j)==="asc"?J(je):J(ne,-1)})}i(at,tt)};G(re,at=>{e(B)==="updated_at"&&at(le)})}r(P),r(H);var $e=o(H,2);lr($e,5,()=>e(x),at=>at.id,(at,tt)=>{var Je=zE(),je=a(Je),ne=a(je,!0);r(je);var J=o(je,2),W=a(J,!0);r(J);var Z=o(J,2),Ee=a(Z);{let $=v(()=>t().t("Unarchive Chat"));Lt(Ee,{get content(){return e($)},children:(S,L)=>{var fe=g_(),y=a(fe);u_(y,{className:"size-3.5",strokeWidth:"1.5"}),r(fe),g(b=>Be(fe,"aria-label",b),[()=>t().t("Unarchive Chat")]),ke("click",fe,()=>{Ne(e(tt).id)}),i(S,fe)},$$slots:{default:!0}})}var Ge=o(Ee,2);{var p=$=>{{let S=v(()=>t().t("Delete Chat"));Lt($,{get content(){return e(S)},children:(L,fe)=>{var y=g_(),b=a(y);Wu(b,{className:"size-3.5",strokeWidth:"1.5"}),r(y),g(N=>Be(y,"aria-label",N),[()=>t().t("Delete Chat")]),ke("click",y,()=>{s(Y,e(tt).id),s(ee,!0)}),i(L,y)},$$slots:{default:!0}})}};G(Ge,$=>{var S,L,fe,y;(((S=n())==null?void 0:S.role)==="admin"||(((y=(fe=(L=n())==null?void 0:L.permissions)==null?void 0:fe.chat)==null?void 0:y.delete)??!0))&&$(p)})}r(Z),r(Je),g($=>{var S,L;Be(je,"href",`/c/${e(tt).id}`),Be(je,"title",(S=e(tt))==null?void 0:S.title),d(ne,(L=e(tt))==null?void 0:L.title),d(W,$)},[()=>{var $;return t().t(qa((($=e(tt))==null?void 0:$.updated_at)*1e3).calendar(null,{sameDay:"[Today]",nextDay:"[Tomorrow]",nextWeek:"dddd",lastDay:"[Yesterday]",lastWeek:"[Last] dddd",sameElse:"L"}))}]),ke("click",je,$=>{$.preventDefault(),hl.set(!1),fa(`/c/${e(tt).id}`)}),i(at,Je)}),r($e);var ze=o($e,2);{var Fe=at=>{Ks(at,{$$events:{visible:()=>{e(Te)||ce()}},children:(tt,Je)=>{var je=KE(),ne=a(je);ra(ne,{className:"size-4"});var J=o(ne,2),W=a(J,!0);r(J),r(je),g(Z=>d(W,Z),[()=>t().t("Loading...")]),i(tt,je)},$$slots:{default:!0}})};G(ze,at=>{e(w)||at(Fe)})}g((at,tt)=>{d(ye,`${at??""} `),d(Q,`${tt??""} `)},[()=>t().t("Title"),()=>t().t("Updated at")]),ke("click",pe,()=>De("title")),ke("click",P,()=>De("updated_at")),i(D,F)};G(Ae,D=>{e(x)===null?D(U):e(x).length===0?D(T,1):D(C,-1)})}r(_e),r(Me),g((D,F)=>{d(ue,`${D??""} `),Be(M,"placeholder",F)},[()=>t().t("Archived Chats"),()=>t().t("Search")]),dt(M,()=>e(V),D=>s(V,D)),ke("input",M,m),i(He,oe),cr(),X()}var XE=u('<span class="text-[0.625rem] font-normal uppercase leading-none text-gray-400 dark:text-gray-600"> </span>');function Bd(He,_){vr(_,!1);const t=()=>ct(R,"$i18n",f),[f,n]=hr(),Ie=h(),X=h(),R=mr("i18n");Kt(()=>t(),()=>{s(Ie,t().t("Experimental"))}),Kt(()=>t(),()=>{s(X,t().t("This is an experimental feature, it may not function as expected and is subject to change at any time."))}),la(),gr(),Lt(He,{get content(){return e(X)},className:"inline-flex",children:(I,c)=>{var x=XE(),A=a(x,!0);r(x),g(()=>d(A,e(Ie))),i(I,x)},$$slots:{default:!0}}),cr(),n()}const JE=async He=>{let _=null;const t=await fetch(`${ia}/memories/`,{method:"GET",headers:{Accept:"application/json","Content-Type":"application/json",authorization:`Bearer ${He}`}}).then(async f=>{if(!f.ok)throw await f.json();return f.json()}).catch(f=>(_=f.detail,null));if(_)throw _;return t},ZE=async(He,_,t="user",f="")=>{let n=null;const Ie=await fetch(`${ia}/memories/add`,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json",authorization:`Bearer ${He}`},body:JSON.stringify({content:_,type:t,path:f})}).then(async X=>{if(!X.ok)throw await X.json();return X.json()}).catch(X=>(n=X.detail,null));if(n)throw n;return Ie},QE=async(He,_,t,f,n)=>{let Ie=null;const X={content:t,...f?{type:f}:{},...n!==void 0?{path:n}:{}},R=await fetch(`${ia}/memories/${_}/update`,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json",authorization:`Bearer ${He}`},body:JSON.stringify(X)}).then(async I=>{if(!I.ok)throw await I.json();return I.json()}).catch(I=>(Ie=I.detail,null));if(Ie)throw Ie;return R},eA=async He=>{let _=null;const t=await fetch(`${ia}/memories/reindex`,{method:"POST",headers:{Accept:"application/json","Content-Type":"application/json",authorization:`Bearer ${He}`}}).then(async f=>{if(!f.ok)throw await f.json();return f.json()}).catch(f=>(_=f.detail,null));if(_)throw _;return t},tA=async(He,_)=>{let t=null;const f=await fetch(`${ia}/memories/${_}`,{method:"DELETE",headers:{Accept:"application/json","Content-Type":"application/json",authorization:`Bearer ${He}`}}).then(async n=>{if(!n.ok)throw await n.json();return n.json()}).then(n=>n).catch(n=>(t=n.detail,null));if(t)throw t;return f},rA=async He=>{let _=null;const t=await fetch(`${ia}/memories/delete/user`,{method:"DELETE",headers:{Accept:"application/json","Content-Type":"application/json",authorization:`Bearer ${He}`}}).then(async f=>{if(!f.ok)throw await f.json();return f.json()}).then(f=>f).catch(f=>(_=f.detail,null));if(_)throw _;return t};var aA=u('<span class="shrink-0"><!></span>'),lA=u('<div><div class=" flex justify-between dark:text-gray-300 px-5 pt-4 pb-2"><div class=" text-lg font-medium self-center"><!></div>
20 <button class="self-center"><!></button></div> <div class="flex flex-col md:flex-row w-full px-4 pb-4 md:space-x-4 dark:text-gray-200"><div class=" flex flex-col w-full sm:flex-row sm:justify-center sm:space-x-6"><form class="flex flex-col w-full"><div class="px-1"><div class="flex w-full justify-between items-center mb-1.5"><div class="text-xs text-gray-500"> </div> <button type="button" class="text-xs text-gray-700 dark:text-gray-300"><!></button></div> <textarea class="bg-transparent w-full text-sm outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700" rows="6" style="resize: vertical;"></textarea> <div class="flex flex-col w-full mt-1.5"><label for="memory-path" class="mb-0.5 text-xs text-gray-500"> <span class="opacity-50"> </span></label> <input id="memory-path" class="w-full text-sm bg-transparent outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700" autocomplete="off"/></div></div> <div class="flex justify-end pt-1 text-sm font-medium"><button type="submit"><!> <!></button></div></form></div></div></div>');function oA(He,_){vr(_,!1);const t=()=>ct(c,"$i18n",f),[f,n]=hr(),Ie=h(),X=ja();let R=Xe(_,"show",12),I=Xe(_,"memory",8,null);const c=mr("i18n");let x=h(!1),A=h(""),E=h("user"),V=h("");const B=async()=>{s(x,!0),await(e(Ie)?QE(localStorage.token,I().id,e(A),e(E),e(V)):ZE(localStorage.token,e(A),e(E),e(V))).catch(w=>(rt.error(`${w}`),null))&&(rt.success(e(Ie)?t().t("Memory updated successfully"):t().t("Memory added successfully")),R(!1),X("save")),s(x,!1)};Kt(()=>it(I()),()=>{var j;s(Ie,!!((j=I())!=null&&j.id))}),Kt(()=>(it(R()),it(I())),()=>{var j,w,Te;R()&&(s(A,((j=I())==null?void 0:j.content)??""),s(E,((w=I())==null?void 0:w.type)??"user"),s(V,((Te=I())==null?void 0:Te.path)??""))}),la(),gr(),Wa(He,{size:"sm",get show(){return R()},set show(j){R(j)},children:(j,w)=>{var Te=lA(),Se=a(Te),Y=a(Se),ee=a(Y);{var ae=T=>{var C=Mr();g(D=>d(C,D),[()=>(t(),l(()=>t().t("Edit Memory")))]),i(T,C)},Pe=T=>{var C=Mr();g(D=>d(C,D),[()=>(t(),l(()=>t().t("Add Memory")))]),i(T,C)};G(ee,T=>{e(Ie)?T(ae):T(Pe,-1)})}r(Y);var se=o(Y,2),m=a(se);wa(m,{className:"size-5"}),r(se),r(Se);var ce=o(Se,2),De=a(ce),Le=a(De),Ne=a(Le),Ce=a(Ne),we=a(Ce),oe=a(we,!0);r(we);var de=o(we,2),be=a(de);{var Me=T=>{var C=Mr();g(D=>d(C,D),[()=>(t(),l(()=>t().t("User")))]),i(T,C)},qe=T=>{var C=Mr();g(D=>d(C,D),[()=>(t(),l(()=>t().t("Context")))]),i(T,C)};G(be,T=>{e(E)==="user"?T(Me):T(qe,-1)})}r(de),r(Ce);var Re=o(Ce,2);So(Re);var ue=o(Re,2),xe=a(ue),K=a(xe),Oe=o(K),O=a(Oe);r(Oe),r(xe);var ie=o(xe,2);vt(ie),r(ue),r(Ne);var M=o(Ne,2),ve=a(M),te=a(ve);{var ge=T=>{var C=Mr();g(D=>d(C,D),[()=>(t(),l(()=>t().t("Update")))]),i(T,C)},_e=T=>{var C=Mr();g(D=>d(C,D),[()=>(t(),l(()=>t().t("Add")))]),i(T,C)};G(te,T=>{e(Ie)?T(ge):T(_e,-1)})}var Ae=o(te,2);{var U=T=>{var C=aA(),D=a(C);ra(D,{}),r(C),i(T,C)};G(Ae,T=>{e(x)&&T(U)})}r(ve),r(M),r(Le),r(De),r(ce),r(Te),g((T,C,D,F,H)=>{d(oe,T),Be(Re,"placeholder",C),d(K,`${D??""} `),d(O,`(${F??""})`),Be(ie,"placeholder",H),k(ve,1,`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-full flex items-center gap-2 whitespace-nowrap ${e(x)?" cursor-not-allowed":""}`),ve.disabled=e(x)},[()=>(t(),l(()=>t().t("Type"))),()=>(e(E),t(),l(()=>e(E)==="user"?t().t("Add a preference, fact, or instruction about you"):t().t("Add durable context for future chats"))),()=>(t(),l(()=>t().t("Path"))),()=>(t(),l(()=>t().t("optional"))),()=>(t(),l(()=>
20t().t("Path")))]),ke("click",se,()=>R(!1)),ke("click",de,()=>{s(E,e(E)==="user"?"context":"user")}),dt(Re,()=>e(A),T=>s(A,T)),dt(ie,()=>e(V),T=>s(V,T)),ke("submit",Le,ca(B)),i(j,Te)},$$slots:{default:!0},$$legacy:!0}),cr(),n()}var sA=u('<div slot="label" class="flex items-center gap-2"> <!></div>'),nA=u('<span class="ml-1 text-gray-400 dark:text-gray-600"> </span>'),iA=u('<div class="flex min-h-16 w-full items-center justify-center"><!></div>'),dA=u('<div class="shrink-0"><button class="rounded-lg p-0.5 text-gray-400 transition-colors hover:text-gray-700 dark:text-gray-600 dark:hover:text-gray-300" type="button"><!></button></div>'),vA=u('<div class="flex min-w-0 flex-1 items-center gap-2"><!> <input data-settings-search="" class="min-w-0 flex-1 bg-transparent py-0.5 text-xs text-gray-700 outline-hidden placeholder:text-gray-300 dark:text-gray-300 dark:placeholder:text-gray-700" maxlength="500"/> <!></div>'),cA=u('<div class="min-w-0 flex-1"></div>'),uA=u('<button class="flex h-7 items-center gap-1.5 rounded-lg bg-transparent px-1.5 text-xs text-gray-500 transition-colors hover:text-gray-900 dark:text-gray-500 dark:hover:text-white" type="button"><span> </span> <!></button>'),gA=u('<button class="flex h-[1.6875rem] w-full cursor-pointer select-none items-center gap-2 rounded-lg bg-transparent px-2 text-xs hover:text-gray-900 disabled:cursor-default disabled:opacity-30 dark:hover:text-gray-100" type="button"><!> <div class="min-w-0 flex-1 truncate text-left"> </div></button> <button class="flex h-[1.6875rem] w-full cursor-pointer select-none items-center gap-2 rounded-lg bg-transparent px-2 text-xs hover:text-gray-900 disabled:cursor-default disabled:opacity-30 dark:hover:text-gray-100" type="button"><!> <div class="min-w-0 flex-1 truncate text-left"> </div></button>',1),_A=u('<div slot="content"><!></div>'),fA=u('<div class="min-h-16 text-[0.6875rem] text-gray-400 dark:text-gray-600"><!></div>'),pA=u('<div class="flex items-start justify-between gap-3"><div class="min-w-0 whitespace-pre-wrap break-words text-xs text-gray-700 dark:text-gray-300"> </div> <div class="flex shrink-0 items-center justify-end gap-2"><button type="button"> </button> <button type="button"> </button></div></div>'),mA=u('<div class="flex flex-col gap-2"></div>'),hA=u('<div class="mb-2 flex min-w-0 items-center justify-between gap-3"><!> <!></div> <!>',1),xA=u('<div><div class="mb-1 flex items-center"><div class="text-xs text-gray-600 dark:text-gray-400"> <!></div></div> <!></div>'),bA=u("<!> <!>",1),yA=u('<div class="text-sm text-gray-500 flex-1"> <div class="mt-2 max-h-32 overflow-y-auto whitespace-pre-wrap break-words rounded-lg border border-gray-100/50 bg-gray-50/40 p-2 text-xs text-gray-600 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-400"> </div></div>'),$A=u('<form id="tab-personalization" class="flex flex-col h-full justify-between text-sm"><h2 class="text-sm font-medium text-gray-900 dark:text-white mb-4"> </h2> <div class="flex-1 min-h-0 overflow-y-auto scrollbar-hover pr-1.5"><!></div> <div class="shrink-0 flex justify-end text-sm font-normal"><button class="px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full" type="submit"> </button></div></form> <!> <!> <!>',1);function wA(He,_){vr(_,!1);const t=()=>ct(x,"$i18n",Ie),f=()=>ct(ua,"$settings",Ie),n=()=>ct(_a,"$config",Ie),[Ie,X]=hr(),R=h(),I=h(),c=ja(),x=mr("i18n");let A=Xe(_,"saveSettings",8),E=h(!1),V=h([]),B=h(!0),j=h(!1),w=h(null),Te=h(!1),Se=h(!1),Y=h("");const ee=async()=>{s(B,!0),s(V,await JE(localStorage.token).catch(Re=>(rt.error(`${Re}`),[]))??[]),s(B,!1)},ae=Re=>{s(w,Re),s(Se,!0)},Pe=Re=>{s(w,Re),s(j,!0)};let se=async()=>{await rA(localStorage.token).catch(ue=>(rt.error(`${ue}`),null))&&e(V).length>0&&(rt.success(t().t("Memory cleared successfully")),s(V,[])),s(Te,!1)};ea(async()=>{var Re,ue,xe;s(E,((Re=f())==null?void 0:Re.memory)??((xe=(ue=n())==null?void 0:ue.features)==null?void 0:xe.enable_memories)??!1),await ee()}),Kt(()=>(e(Y),e(V)),()=>{s(R,e(Y)?e(V).filter(Re=>{var xe,K,Oe;const ue=e(Y).toLowerCase();return((xe=Re.content)==null?void 0:xe.toLowerCase().includes(ue))||((K=Re.path)==null?void 0:K.toLowerCase().includes(ue))||((Oe=Re.type)==null?void 0:Oe.toLowerCase().includes(ue))}):e(V))}),Kt(()=>e(R),()=>
20{s(I,[...e(R)].sort((Re,ue)=>(ue.updated_at??0)-(Re.updated_at??0)))}),la(),gr();var m=$A(),ce=Qe(m),De=a(ce),Le=a(De,!0);r(De);var Ne=o(De,2),Ce=a(Ne);{let Re=v(()=>(t(),l(()=>t().t("Memory"))));Na(Ce,{get title(){return e(Re)},first:!0,children:(ue,xe)=>{var K=bA(),Oe=Qe(K);{let M=v(()=>(t(),l(()=>t().t("You can personalize your interactions with LLMs by adding memories through the 'Manage' button below, making them more helpful and tailored to you.").replace(t().t("Manage"),t().t("Add Memory")))));xa(Oe,{get description(){return e(M)},children:(ve,te)=>{Nt(ve,{get state(){return e(E)},set state(ge){s(E,ge)},$$events:{change:async()=>{A()({memory:e(E)})}},$$legacy:!0})},$$slots:{default:!0,label:(ve,te)=>{var ge=sA(),_e=a(ge),Ae=o(_e);Bd(Ae,{}),r(ge),g(U=>d(_e,`${U??""} `),[()=>(t(),l(()=>t().t("Memory")))]),i(ve,ge)}}})}var O=o(Oe,2);{var ie=M=>{var ve=xA(),te=a(ve),ge=a(te),_e=a(ge),Ae=o(_e);{var U=F=>{var H=nA(),pe=a(H,!0);r(H),g(()=>d(pe,(e(V),l(()=>e(V).length)))),i(F,H)};G(Ae,F=>{e(B)||F(U)})}r(ge),r(te);var T=o(te,2);{var C=F=>{var H=iA(),pe=a(H);ra(pe,{className:"size-4"}),r(H),i(F,H)},D=F=>{var H=hA(),pe=Qe(H),ye=a(pe);{var he=$e=>{var ze=vA(),Fe=a(ze);Ud(Fe,{className:"size-3.5 shrink-0 text-gray-400 dark:text-gray-600"});var at=o(Fe,2);vt(at);var tt=o(at,2);{var Je=je=>{var ne=dA(),J=a(ne),W=a(J);wa(W,{className:"size-3",strokeWidth:"2"}),r(J),r(ne),g(Z=>Be(J,"aria-label",Z),[()=>(t(),l(()=>t().t("Clear search")))]),ke("click",J,()=>{s(Y,"")}),i(je,ne)};G(tt,je=>{e(Y)&&je(Je)})}r(ze),g(je=>Be(at,"placeholder",je),[()=>(t(),l(()=>t().t("Search Memories")))]),dt(at,()=>e(Y),je=>s(Y,je)),i($e,ze)},q=$e=>{var ze=cA();i($e,ze)};G(ye,$e=>{e(V),l(()=>e(V).length>0)?$e(he):$e(q,-1)})}var P=o(ye,2);io(P,{align:"end",children:($e,ze)=>{{let Fe=v(()=>(t(),l(()=>t().t("Actions"))));Lt($e,{get content(){return e(Fe)},children:(at,tt)=>{var Je=uA(),je=a(Je),ne=a(je,!0);r(je);var J=o(je,2);Ba(J,{className:"size-3",strokeWidth:"2.5"}),r(Je),g(W=>d(ne,W),[()=>(t(),l(()=>t().t("Actions")))]),i(at,Je)},$$slots:{default:!0}})}},$$slots:{default:!0,content:($e,ze)=>{var Fe=_A(),at=a(Fe);vo(at,{className:"w-[10.625rem] shadow-sm",children:(tt,Je)=>{var je=gA(),ne=Qe(je),J=a(ne);Ya(J,{className:"size-3.5 shrink-0",strokeWidth:"1.5"});var W=o(J,2),Z=a(W,!0);r(W),r(ne);var Ee=o(ne,2),Ge=a(Ee);Wu(Ge,{className:"size-3.5 shrink-0",strokeWidth:"1.5"});var p=o(Ge,2),$=a(p,!0);r(p),r(Ee),g((S,L)=>{d(Z,S),Ee.disabled=(e(V),l(()=>e(V).length===0)),d($,L)},[()=>(t(),l(()=>t().t("Add Memory"))),()=>(t(),l(()=>t().t("Clear memory")))]),ke("click",ne,()=>{s(w,null),s(j,!0)}),ke("click",Ee,()=>{s(Te,!0)}),i(tt,je)},$$slots:{default:!0}}),r(Fe),i($e,Fe)}}}),r(pe);var Q=o(pe,2);{var re=$e=>{var ze=fA(),Fe=a(ze);{var at=Je=>{var je=Mr();g(ne=>d(je,ne),[()=>(t(),l(()=>t().t("Memories accessible by LLMs will be shown here.")))]),i(Je,je)},tt=Je=>{var je=Mr();g(ne=>d(je,ne),[()=>(t(),l(()=>t().t("No results found")))]),i(Je,je)};G(Fe,Je=>{e(V),l(()=>e(V).length===0)?Je(at):Je(tt,-1)})}r(ze),i($e,ze)},le=$e=>{var ze=mA();lr(ze,5,()=>e(I),Fe=>Fe.id,(Fe,at)=>{var tt=pA(),Je=a(tt),je=a(Je,!0);r(Je);var ne=o(Je,2),J=a(ne);k(J,1,"shrink-0 text-xs text-gray-500 transition-colors hover:text-gray-900 dark:text-gray-500 dark:hover:text-white hover:underline");var W=a(J,!0);r(J);var Z=o(J,2);k(Z,1,"shrink-0 text-xs text-gray-500 transition-colors hover:text-gray-900 dark:text-gray-500 dark:hover:text-white hover:underline");var Ee=a(Z,!0);r(Z),r(ne),r(tt),g((Ge,p)=>{d(je,(e(at),l(()=>e(at).content))),d(W,Ge),d(Ee,p)},[()=>(t(),l(()=>t().t("Edit"))),()=>(t(),l(()=>t().t("Remove")))]),ke("click",J,()=>Pe(e(at))),ke("click",Z,()=>ae(e(at))),i(Fe,tt)}),r(ze),i($e,ze)};G(Q,$e=>{e(I),l(()=>e(I).length===0)?$e(re):$e(le,-1)})}i(F,H)};G(T,F=>{e(B)?F(C):F(D,-1)})}r(ve),g(F=>d(_e,`${F??""} `),[()=>(t(),l(()=>t().t("Saved Memories")))]),i(M,ve)};G(O,M=>{e(E)&&M(ie)})}i(ue,K)},$$slots:{default:!0}})}r(Ne);var we=o(Ne,2),oe=a(we),de=a(oe,!0);r(oe),r(we),r(ce);var be=o(ce,2);{let Re=v(()=>(t(),l(()=>t().t("Clear Memory")))),ue=v(()=>(t(),l(()=>t().t("Are you sure you want to clear all memories? This action cannot be undone."))));Ca(be,{get title(){return e(Re)},get message(){return e(ue)},get show(){return e(Te)},$$events:{confirm:se,cancel:()=>{s(Te,!1)}}})}var Me=o(be,2);{let Re=v(()=>(t(),l(()=>t().t("Delete Memory?"))));Ca(Me,{get title(){return e(Re)},get show(){return e(Se)},$$events:{confirm:async()=>
20{if(!e(w))return;await tA(localStorage.token,e(w).id).catch(xe=>(rt.error(`${xe}`),null))&&(rt.success(t().t("Memory deleted successfully")),await ee()),s(Se,!1)},cancel:()=>{s(Se,!1)}},children:(ue,xe)=>{var K=yA(),Oe=a(K),O=o(Oe),ie=a(O,!0);r(O),r(K),g(M=>{d(Oe,`${M??""} `),d(ie,(e(w),l(()=>{var ve;return(ve=e(w))==null?void 0:ve.content})))},[()=>(t(),l(()=>t().t("Are you sure you want to delete this memory? This action cannot be undone.")))]),i(ue,K)},$$slots:{default:!0}})}var qe=o(Me,2);oA(qe,{get memory(){return e(w)},get show(){return e(j)},set show(Re){s(j,Re)},$$events:{save:async()=>{await ee()}},$$legacy:!0}),g((Re,ue)=>{d(Le,Re),d(de,ue)},[()=>(t(),l(()=>t().t("Personalization"))),()=>(t(),l(()=>t().t("Save")))]),ke("submit",ce,ca(()=>{c("save")})),i(He,m),cr(),X()}var kA=Jr('<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" aria-hidden="true" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M9.594 3.94c.09-.542.56-.94 1.11-.94h2.593c.55 0 1.02.398 1.11.94l.213 1.281c.063.374.313.686.645.87.074.04.147.083.22.127.325.196.72.257 1.075.124l1.217-.456a1.125 1.125 0 0 1 1.37.49l1.296 2.247a1.125 1.125 0 0 1-.26 1.431l-1.003.827c-.293.241-.438.613-.43.992a7.723 7.723 0 0 1 0 .255c-.008.378.137.75.43.991l1.004.827c.424.35.534.955.26 1.43l-1.298 2.247a1.125 1.125 0 0 1-1.369.491l-1.217-.456c-.355-.133-.75-.072-1.076.124a6.47 6.47 0 0 1-.22.128c-.331.183-.581.495-.644.869l-.213 1.281c-.09.543-.56.94-1.11.94h-2.594c-.55 0-1.019-.398-1.11-.94l-.213-1.281c-.062-.374-.312-.686-.644-.87a6.52 6.52 0 0 1-.22-.127c-.325-.196-.72-.257-1.076-.124l-1.217.456a1.125 1.125 0 0 1-1.369-.49l-1.297-2.247a1.125 1.125 0 0 1 .26-1.431l1.004-.827c.292-.24.437-.613.43-.991a6.932 6.932 0 0 1 0-.255c.007-.38-.138-.751-.43-.992l-1.004-.827a1.125 1.125 0 0 1-.26-1.43l1.297-2.247a1.125 1.125 0 0 1 1.37-.491l1.216.456c.356.133.751.072 1.076-.124.072-.044.146-.086.22-.128.332-.183.582-.495.644-.869l.214-1.28Z"></path><path stroke-linecap="round" stroke-linejoin="round" d="M15 12a3 3 0 1 1-6 0 3 3 0 0 1 6 0Z"></path></svg>');function jl(He,_){let t=Xe(_,"className",8,"w-4 h-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=kA();g(()=>{Be(n,"stroke-width",f()),k(n,0,me(t()))}),i(He,n)}var EA=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor"><path d="M21.731 2.269a2.625 2.625 0 0 0-3.712 0l-1.157 1.157 3.712 3.712 1.157-1.157a2.625 2.625 0 0 0 0-3.712ZM19.513 8.199l-3.712-3.712-12.15 12.15a5.25 5.25 0 0 0-1.32 2.214l-.8 2.685a.75.75 0 0 0 .933.933l2.685-.8a5.25 5.25 0 0 0 2.214-1.32L19.513 8.2Z"></path></svg>');function AA(He,_){let t=Xe(_,"className",8,"w-4 h-4");Xe(_,"strokeWidth",8,"1.5");var f=EA();g(()=>k(f,0,me(t()))),i(He,f)}var IA=u('<div class="flex gap-2"><div class="flex w-full justify-between items-center"><div class=" text-xs text-gray-500"> </div> <div><button type="button" class=" text-xs text-gray-700 dark:text-gray-300"><!></button></div></div></div>'),SA=u('<datalist id="suggestions"><option></option><option></option><option></option><option></option><option></option><option></option><option></option></datalist>
20'),NA=u('<button class="self-center p-1 bg-transparent hover:bg-gray-100 dark:hover:bg-gray-850 rounded-lg transition" type="button"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true" class="w-4 h-4"><path fill-rule="evenodd" d="M15.312 11.424a5.5 5.5 0 01-9.201 2.466l-.312-.311h2.433a.75.75 0 000-1.5H3.989a.75.75 0 00-.75.75v4.242a.75.75 0 001.5 0v-2.43l.31.31a7 7 0 0011.712-3.138.75.75 0 00-1.449-.39zm1.23-3.723a.75.75 0 00.219-.53V2.929a.75.75 0 00-1.5 0V5.36l-.31-.31A7 7 0 003.239 8.188a.75.75 0 101.448.389A5.5 5.5 0 0113.89 6.11l.311.31h-2.432a.75.75 0 000 1.5h4.243a.75.75 0 00.53-.219z" clip-rule="evenodd"></path></svg></button>'),PA=u("<option> </option> <option> </option>",1),CA=u("<option> </option> <!>",1),vd=u("<div> </div>"),TA=u('<div class="flex flex-row justify-between items-center w-full mt-1"><label for="api-type-toggle"> </label> <div><button type="button" id="api-type-toggle" class=" text-xs text-gray-700 dark:text-gray-300"><!></button></div></div>'),LA=u('<div class="flex gap-2 mt-2"><div class="flex flex-col w-full"><label for="headers-input"> </label> <div class="flex-1"><!></div></div></div>'),OA=u('<input type="text" id="allowed-passthrough-params-input" autocomplete="off"/>'),MA=u('<div class="flex gap-2 mt-2"><div class="flex flex-col w-full"><label for="allowed-passthrough-params-input"> </label> <div class="flex-1"><!></div></div></div>'),RA=u('<input type="text" id="prefix-id-input" autocomplete="off"/>'),DA=u('<div class="flex flex-row justify-between items-center w-full mt-2"><label for="provider-select"> </label> <div><select id="provider-select" class="text-xs text-gray-700 dark:text-gray-300 bg-transparent outline-hidden"><option> </option><option> </option><option> </option><option> </option><option> </option></select></div></div>'),UA=u('<div class="flex gap-2 mt-2"><div class="flex flex-col w-full"><label for="api-version-input"> </label> <div class="flex-1"><input id="api-version-input" type="text" autocomplete="off" required=""/></div></div></div>'),BA=u('<li class=" flex gap-2 w-full justify-between items-center"><div class=" text-sm flex-1 py-1 rounded-lg"> </div> <div class="shrink-0"><button type="button"><!></button></div></li>'),GA=u('<ul class="flex flex-col"></ul>'),jA=u("<div><!></div>"),HA=u('<!> <!> <div class="flex gap-2 mt-2"><div class="flex flex-col w-full"><label for="prefix-id-input"> </label> <div class="flex-1"><!></div></div></div> <!> <!> <div class="flex flex-col w-full mt-2"><div class="mb-1 flex justify-between"><div> </div></div> <!></div> <div class="flex items-center"><label class="sr-only" for="add-model-id-input"> </label> <input id="add-model-id-input"/> <div><button type="button"><!></button></div></div> <div class="flex gap-2 mt-2"><div class="flex flex-col w-full"><div> </div> <div class="flex-1 mt-0.5"><!></div></div></div>',1),FA=u('<button class="px-1 py-1.5 text-sm font-medium text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-200 hover:underline transition" type="button"> </button>'),WA=u('<span class="shrink-0"><!></span>'),zA=u('<div><div class=" flex justify-between dark:text-gray-100 px-5 pt-4 pb-1.5"><h1 class="text-lg font-medium self-center font-primary"><!></h1>
20 <button class="self-center"><!></button></div> <div class="flex flex-col md:flex-row w-full px-4 pb-4 md:space-x-4 dark:text-gray-200"><div class=" flex flex-col w-full sm:flex-row sm:justify-center sm:space-x-6"><form class="flex flex-col w-full"><div class="px-1"><!> <div class="flex gap-2 mt-1.5"><div class="flex flex-col w-full"><label for="url-input"> </label> <div class="flex-1"><input id="url-input" type="text" autocomplete="off" required=""/> <!></div></div> <!> <div class="flex flex-col shrink-0 self-end"><label class="sr-only" for="toggle-connection"> </label> <!></div></div> <div class="flex gap-2 mt-2"><div class="flex flex-col w-full"><label for="select-bearer-or-session"> </label> <div class="flex gap-2"><div class="flex-shrink-0 self-start"><select id="select-bearer-or-session"><option> </option><option> </option><!></select></div> <div class="flex flex-1 items-center"><!></div></div></div></div> <!> <div class="flex items-center justify-between"><button type="button" class="flex items-center gap-1 text-xs text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-200 transition mt-2"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor"><path fill-rule="evenodd" d="M7.21 14.77a.75.75 0 01.02-1.06L11.168 10 7.23 6.29a.75.75 0 111.04-1.08l4.5 4.25a.75.75 0 010 1.08l-4.5 4.25a.75.75 0 01-1.06-.02z" clip-rule="evenodd"></path></svg> </button></div> <!></div> <div class="flex justify-between items-center pt-3 text-sm font-medium"><div><!></div> <button type="submit"> <!></button></div></form></div></div></div>'),KA=u("<!> <!>",1);function rs(He,_){vr(_,!1);const t=()=>ct(X,"$i18n",f),[f,n]=hr(),Ie=h(),X=mr("i18n");let R=Xe(_,"onSubmit",8,()=>{}),I=Xe(_,"onDelete",8,()=>{}),c=Xe(_,"show",12,!1),x=Xe(_,"edit",8,!1),A=Xe(_,"ollama",8,!1),E=Xe(_,"direct",8,!1),V=Xe(_,"connection",8,null),B=h(""),j=h(""),w=h("bearer"),Te=h("external"),Se=h(""),Y=h(""),ee=h(!0),ae=h(""),Pe=h(""),se=h(""),m=h(""),ce=h([]),De=h(""),Le=h([]),Ne=h(!1),Ce=h(!1),we=h(!1);const oe="bg-transparent outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700",de="bg-transparent pr-5 outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700",be=M=>M.split(",").map(ve=>ve.trim()).filter(Boolean),Me=async()=>{s(B,e(B).replace(/\/$/,"")),await Dx(localStorage.token,{url:e(B),key:e(j)}).catch(ve=>{rt.error(`${ve}`)})&&rt.success(t().t("Server connection verified"))},qe=async()=>{s(B,e(B).replace(/\/$/,""));let M=null;if(e(se))try{if(M=JSON.parse(e(se)),typeof M!="object"||Array.isArray(M))throw M=null,new Error("Headers must be a valid JSON object");s(se,JSON.stringify(M,null,2))}catch{rt.error(t().t("Headers must be a valid JSON object"));return}await Jx(localStorage.token,{url:e(B),key:e(j),config:{auth_type:e(w),...e(Se)?{provider:e(Se)}:{},...e(Ie)?{azure:!0}:{},api_version:e(ae),passthrough_params:be(e(m)),...M?{headers:M}:{}}},E()).catch(te=>{rt.error(`${te}`)})&&rt.success(t().t("Server connection verified"))},Re=()=>{A()?Me():qe()},ue=()=>{const M=e(De).trim();if(M){if(e(Le).includes(M)){rt.error(t().t("Model ID is already added"));return}s(Le,[...e(Le),M]),s(De,"")}},xe=async()=>{if(s(Ne,!0),!A()&&!e(B)){s(Ne,!1),rt.error(t().t("URL is required"));return}if(e(Ie)){if(!e(ae)){s(Ne,!1),s(we,!0),rt.error(t().t("API Version is required"));return}if(!e(j)&&!["azure_ad","microsoft_entra_id"].includes(e(w))){s(Ne,!1),rt.error(t().t("Key is required"));return}if(e(Le).length===0){s(Ne,!1),s(we,!0),rt.error(t().t("Deployment names are required for Azure OpenAI"));return}}if(e(se))try{const ve=JSON.parse(e(se));if(typeof ve!="object"||Array.isArray(ve))throw new Error("Headers must be a valid JSON object");s(se,JSON.stringify(ve,null,2))}catch{rt.error(t().t("Headers must be a valid JSON object"));return}s(B,e(B).replace(/\/$/,""));const M={url:e(B),key:e(j),config:{enable:e(ee),tags:e(ce),prefix_id:e(Y),model_ids:e(Le),connection_type:e(Te),auth_type:e(w),headers:e(se)?JSON.parse(e(se)):void 0,passthrough_params:be(e(m)),...e(Se)?{provider:e(Se)}:{},...!A()&&e(Ie)?{azure:!0}:{},...e(Ie)?{api_version:e(ae)}:{},...e(Pe)?{api_type:e(Pe)}:{}}};await R()(M),s(Ne,!1),c(!1),s(B,""),s(j,""),s(w,"bearer"),s(Y,""),s(m,""),s(we,!1),s(ce,[]),s(Le,[])},K=()=>{var M,ve,te,ge,_e,Ae,U,T,C,D,F,H,pe;V()&&(s(B,V().url),s(j,V().key),s(w,V().config.auth_type??"bearer"),s(se,(M=V().config)!=null&&M.headers?JSON.stringify(V().c
20onfig.headers,null,2):""),s(ee,((ve=V().config)==null?void 0:ve.enable)??!0),s(ce,nm((te=V().config)==null?void 0:te.tags)),s(Y,((ge=V().config)==null?void 0:ge.prefix_id)??""),s(m,Array.isArray((_e=V().config)==null?void 0:_e.passthrough_params)?V().config.passthrough_params.join(", "):((Ae=V().config)==null?void 0:Ae.passthrough_params)??""),s(Le,[...new Set(((U=V().config)==null?void 0:U.model_ids)??[])]),A()?s(Te,((T=V().config)==null?void 0:T.connection_type)??"local"):(s(Te,((C=V().config)==null?void 0:C.connection_type)??"external"),s(Se,((D=V().config)==null?void 0:D.provider)??((F=V().config)!=null&&F.azure?"azure":"")),s(ae,((H=V().config)==null?void 0:H.api_version)??""),s(Pe,((pe=V().config)==null?void 0:pe.api_type)??"")))};ea(()=>{K()}),Kt(()=>(e(Se),e(B),it(E())),()=>{s(Ie,e(Se)==="azure"||(e(B).includes("azure.")||e(B).includes("cognitive.microsoft.com"))&&!E()&&e(Se)===""&&!/\/openai\/v1(\/|$)/.test(e(B)))}),Kt(()=>it(c()),()=>{c()&&K()}),la(),gr();var Oe=KA(),O=Qe(Oe);Wa(O,{size:"sm",get show(){return c()},set show(M){c(M)},children:(M,ve)=>{var te=zA(),ge=a(te),_e=a(ge),Ae=a(_e);{var U=Et=>{var St=Mr();g(Dt=>d(St,Dt),[()=>(t(),l(()=>t().t("Edit Connection")))]),i(Et,St)},T=Et=>{var St=Mr();g(Dt=>d(St,Dt),[()=>(t(),l(()=>t().t("Add Connection")))]),i(Et,St)};G(Ae,Et=>{x()?Et(U):Et(T,-1)})}r(_e);var C=o(_e,2),D=a(C);wa(D,{className:"size-5"}),r(C),r(ge);var F=o(ge,2),H=a(F),pe=a(H),ye=a(pe),he=a(ye);{var q=Et=>{var St=IA(),Dt=a(St),ar=a(Dt),Tr=a(ar,!0);r(ar);var tr=o(ar,2),ur=a(tr),_r=a(ur);{var br=jr=>{var qt=Mr();g(At=>d(qt,At),[()=>(t(),l(()=>t().t("Local")))]),i(jr,qt)},kt=jr=>{var qt=Mr();g(At=>d(qt,At),[()=>(t(),l(()=>t().t("External")))]),i(jr,qt)};G(_r,jr=>{e(Te)==="local"?jr(br):jr(kt,-1)})}r(ur),r(tr),r(Dt),r(St),g(jr=>d(Tr,jr),[()=>(t(),l(()=>t().t("Connection Type")))]),ke("click",ur,()=>{s(Te,e(Te)==="local"?"external":"local")}),i(Et,St)};G(he,Et=>{E()||Et(q)})}var P=o(he,2),Q=a(P),re=a(Q);k(re,1,`mb-0.5 text-xs text-gray-500 21 `);var le=a(re,!0);r(re);var $e=o(re,2),ze=a($e);vt(ze),k(ze,1,`w-full text-sm ${oe}`);var Fe=o(ze,2);{var at=Et=>{var St=SA(),Dt=a(St);Dt.value=Dt.__value="https://api.openai.com/v1";var ar=o(Dt);ar.value=ar.__value="https://api.anthropic.com/v1";var Tr=o(ar);Tr.value=Tr.__value="https://generativelanguage.googleapis.com/v1beta/openai";var tr=o(Tr);tr.value=tr.__value="https://api.mistral.ai/v1";var ur=o(tr);ur.value=ur.__value="https://api.groq.com/openai/v1";var _r=o(ur);_r.value=_r.__value="https://openrouter.ai/api/v1";var br=o(_r);br.value=br.__value="https://api.x.ai/v1",r(St),i(Et,St)};G(Fe,Et=>{A()||Et(at)})}r($e),r(Q);var tt=o(Q,2);{let Et=v(()=>(t(),l(()=>t().t("Verify Connection"))));Lt(tt,{get content(){return e(Et)},className:"self-end -mb-1",children:(St,Dt)=>{var ar=NA();g(Tr=>Be(ar,"aria-label",Tr),[()=>(t(),l(()=>t().t("Verify Connection")))]),ke("click",ar,()=>{Re()}),i(St,ar)},$$slots:{default:!0}})}var Je=o(tt,2),je=a(Je),ne=a(je,!0);r(je);var J=o(je,2);{let Et=v(()=>(e(ee),t(),l(()=>e(ee)?t().t("Enabled"):t().t("Disabled"))));Lt(J,{get content(){return e(Et)},children:(St,Dt)=>{Nt(St,{id:"toggle-connection",get state(){return e(ee)},set state(ar){s(ee,ar)},$$legacy:!0})},$$slots:{default:!0}})}r(Je),r(P);var W=o(P,2),Z=a(W),Ee=a(Z);k(Ee,1,"text-xs text-gray-500");var Ge=a(Ee,!0);r(Ee);var p=o(Ee,2),$=a(p),S=a($);k(S,1,`w-full text-sm ${de}`);var L=a(S),fe=a(L,!0);r(L),L.value=L.__value="none";var y=o(L),b=a(y,!0);r(y),y.value=y.__value="bearer";var N=o(y);{var z=Et=>{var St=CA(),Dt=Qe(St),ar=a(Dt,!0);r(Dt),Dt.value=Dt.__value="session";var Tr=o(Dt,2);{var tr=ur=>{var _r=PA(),br=Qe(_r),kt=a(br,!0);r(br),br.value=br.__value="system_oauth";var jr=o(br,2),qt=a(jr,!0);r(jr),jr.value=jr.__value="microsoft_entra_id",g((At,Ot)=>{d(kt,At),d(qt,Ot)},[()=>(t(),l(()=>t().t("OAuth"))),()=>(t(),l(()=>t().t("Entra ID")))]),i(ur,_r)};G(Tr,ur=>{E()||ur(tr)})}g(ur=>d(ar,ur),[()=>(t(),l(()=>t().t("Session")))]),i(Et,St)};G(N,Et=>{A()||Et(z)})}r(S),r($);var Ue=o($,2),Ye=a(Ue);{var Ve=Et=>{{let St=v(()=>(t(),l(()=>t().t("API Key"))));Cr(Et,{get placeholder(){return e(St)},required:!1,get value(){return e(j)},set value(Dt){s(j,Dt)},$$legacy:!0})}},lt=Et=>{var St=vd();k(St,1,"text-xs self-center translate-y-[1px] text-gray-500");var Dt=a(St,!0);r(St),g(ar=>d(Dt,ar),[()=>(t(),l(()=>t().t("No authentication")))]),i(Et,St)},st=Et=>{var St=vd();k(St,1,"text-xs self-center translate-y-[1px] text-gray-500");var Dt=a(St,!0);r(St),g(ar=>d(Dt,ar),[()=>(t(),l(()=>t().t("Forwards system user session credentials to authenticate")))]),i(Et,St)},Ke=Et=>{var St=vd();k(St,1,"text-xs self-center translate-y-[1px] text-gray-500");var Dt=a(St,!0);r(St),g(ar=>d(Dt,ar),[()=>(t(),l(()=>t().t("Forwards system user OAuth access token to authenticate")))]),i(Et,St)},Ze=Et=>{var St=vd();k(St,1,"text-xs self-center translate-y-[1px] text-gray-500");var Dt=a(St,!0);r(St),g(ar=>d(Dt,ar),[()=>(t(),l(()=>t().t("Uses DefaultAzureCredential to authenticate")))]),i(Et,St)},ot=Qr(()=>(e(w),l(()=>["azure_ad","microsoft_entra_id"].includes(e(w)))));G(Ye,Et=>{e(w)==="bearer"?Et(Ve):e(w)==="none"?Et(lt,1):e(w)==="session"?Et(st,2):e(w)==="system_oauth"?Et(Ke,3):e(ot)&&Et(Ze,4)})}r(Ue),r(p),r(Z),r(W);var ut=o(W,2);{var _t=Et=>{var St=TA(),Dt=a(St);k(Dt,1,`mb-0.5 text-xs text-gray-500 22 `);var ar=a(Dt,!0);r(Dt);var Tr=o(Dt,2),tr=a(Tr),ur=a(tr);{var _r=kt=>{var jr=Mr();g(qt=>d(jr,qt),[()=>(t(),l(()=>t().t("Responses")))]),i(kt,jr)},br=kt=>{var jr=Mr();g(qt=>d(jr,qt),[()=>(t(),l(()=>t().t("Chat Completions")))]),i(kt,jr)};G(ur,kt=>{e(Pe)==="responses"?kt(_r):kt(br,-1)})}r(tr),r(Tr),r(St),g(kt=>d(ar,kt),[()=>(t(),l(()=>t().t("API Type")))]),ke("click",tr,()=>{s(Pe,e(Pe)==="responses"?"":"responses")}),i(Et,St)};G(ut,Et=>{!A()&&!E()&&Et(_t)})}var nt=o(ut,2),et=a(nt),gt=a(et),It=o(gt);r(et),r(nt);var Mt=o(nt,2);{var jt=Et=>{var St=HA(),Dt=Qe(St);{var ar=pr=>{var sr=LA(),Kr=a(sr),Yt=a(Kr);k(Yt,1,`mb-0.5 text-xs text-gray-500 23 `);var Or=a(Yt,!0);r(Yt);var Lr=o(Yt,2),Pt=a(Lr);{let Gt=v(()=>(t(),l(()=>t().t('Enter additional headers in JSON format (e.g. {"X-Custom-Header": "value"}'))));Lt(Pt,{get content(){return e(Gt)},children:(nr,ft)=>{{let pt=v(()=>(t(),l(()=>t().t("Enter additional headers in JSON format"))));ma(nr,{className:"w-full text-sm outline-hidden",get placeholder(){return e(pt)},required:!1,minSize:30,get value(){return e(se)},set value(Ut){s(se,Ut)},$$legacy:!0})}},$$slots:{default:!0}})}r(Lr),r(Kr),r(sr),g(Gt=>d(Or,Gt),[()=>(t(),l(()=>t().t("Headers")))]),i(pr,sr)};G(Dt,pr=>{E()||pr(ar)})}var Tr=o(Dt,2);{var tr=pr=>{var sr=MA(),Kr=a(sr),Yt=a(Kr);k(Yt,1,`mb-0.5 text-xs text-gray-500 24 `);var Or=a(Yt,!0);r(Yt);var Lr=o(Yt,2),Pt=a(Lr);{let Gt=v(()=>(t(),l(()=>t().t("Comma-separated top-level request parameters this upstream may receive without translation. Use * to allow all captured passthrough params."))));Lt(Pt,{get content(){return e(Gt)},children:(nr,ft)=>{var pt=OA();vt(pt),k(pt,1,`w-full text-sm ${oe}`),g(Ut=>Be(pt,"placeholder",Ut),[()=>(t(),l(()=>t().t("thinking, output_config")))]),dt(pt,()=>e(m),Ut=>s(m,Ut)),i(nr,pt)},$$slots:{default:!0}})}r(Lr),r(Kr),r(sr),g(Gt=>d(Or,Gt),[()=>(t(),l(()=>t().t("Passthrough params")))]),i(pr,sr)};G(Tr,pr=>{!A()&&!E()&&pr(tr)})}var ur=o(Tr,2),_r=a(ur),br=a(_r);k(br,1,`mb-0.5 text-xs text-gray-500 25 `);var kt=a(br,!0);r(br);var jr=o(br,2),qt=a(jr);{let pr=v(()=>(t(),l(()=>t().t("Prefix ID is used to avoid conflicts with other connections by adding a prefix to the model IDs - leave empty to disable"))));Lt(qt,{get content(){return e(pr)},children:(sr,Kr)=>{var Yt=RA();vt(Yt),k(Yt,1,`w-full text-sm ${oe}`),g(Or=>Be(Yt,"placeholder",Or),[()=>(t(),l(()=>t().t("Prefix ID")))]),dt(Yt,()=>e(Y),Or=>s(Y,Or)),i(sr,Yt)},$$slots:{default:!0}})}r(jr),r(_r),r(ur);var At=o(ur,2);{var Ot=pr=>{var sr=DA(),Kr=a(sr);k(Kr,1,`mb-0.5 text-xs text-gray-500 26 `);var Yt=a(Kr,!0);r(Kr);
26var Or=o(Kr,2),Lr=a(Or),Pt=a(Lr),Gt=a(Pt,!0);r(Pt),Pt.value=Pt.__value="";var nr=o(Pt),ft=a(nr,!0);r(nr),nr.value=nr.__value="azure";var pt=o(nr),Ut=a(pt,!0);r(pt),pt.value=pt.__value="llama.cpp";var Vt=o(pt),Dr=a(Vt,!0);r(Vt),Vt.value=Vt.__value="lmstudio";var Yr=o(Vt),Nr=a(Yr,!0);r(Yr),Yr.value=Yr.__value="litellm",r(Lr),r(Or),r(sr),g((zr,Fr,Rr,Ur,Vr,qr)=>{d(Yt,zr),d(Gt,Fr),d(ft,Rr),d(Ut,Ur),d(Dr,Vr),d(Nr,qr)},[()=>(t(),l(()=>t().t("Provider"))),()=>(t(),l(()=>t().t("Default"))),()=>(t(),l(()=>t().t("Azure OpenAI"))),()=>(t(),l(()=>t().t("llama.cpp"))),()=>(t(),l(()=>t().t("LM Studio"))),()=>(t(),l(()=>t().t("LiteLLM")))]),al(Lr,()=>e(Se),zr=>s(Se,zr)),i(pr,sr)};G(At,pr=>{!A()&&!E()&&pr(Ot)})}var Ht=o(At,2);{var Xt=pr=>{var sr=UA(),Kr=a(sr),Yt=a(Kr);k(Yt,1,`mb-0.5 text-xs text-gray-500 27 `);var Or=a(Yt,!0);r(Yt);var Lr=o(Yt,2),Pt=a(Lr);vt(Pt),k(Pt,1,`w-full text-sm ${oe}`),r(Lr),r(Kr),r(sr),g((Gt,nr)=>{d(Or,Gt),Be(Pt,"placeholder",nr)},[()=>(t(),l(()=>t().t("API Version"))),()=>(t(),l(()=>t().t("API Version")))]),dt(Pt,()=>e(ae),Gt=>s(ae,Gt)),i(pr,sr)};G(Ht,pr=>{e(Ie)&&pr(Xt)})}var er=o(Ht,2),xr=a(er),Qt=a(xr);k(Qt,1,`mb-0.5 text-xs text-gray-500 28 `);var fr=a(Qt,!0);r(Qt),r(xr);var wt=o(xr,2);{var ht=pr=>{var sr=GA();lr(sr,5,()=>e(Le),Ar,(Kr,Yt,Or,Lr)=>{var Pt=BA(),Gt=a(Pt),nr=a(Gt,!0);r(Gt);var ft=o(Gt,2),pt=a(ft),Ut=a(pt);Ys(Ut,{strokeWidth:"2",className:"size-3.5"}),r(pt),r(ft),r(Pt),g(Vt=>{d(nr,e(Yt)),Be(pt,"aria-label",Vt)},[()=>(t(),e(Yt),l(()=>t().t("Remove {{MODELID}} from list.",{MODELID:e(Yt)})))]),ke("click",pt,()=>{s(Le,e(Le).filter((Vt,Dr)=>Dr!==Or))}),i(Kr,Pt)}),r(sr),i(pr,sr)},zt=pr=>{var sr=jA();k(sr,1,`text-gray-500 text-xs text-center py-2 px-10 29 `);var Kr=a(sr);{var Yt=Pt=>{var Gt=Mr();g(nr=>d(Gt,nr),[()=>(t(),e(B),l(()=>t().t('Leave empty to include all models from "{{url}}/api/tags" endpoint',{url:e(B)})))]),i(Pt,Gt)},Or=Pt=>{var Gt=Mr();g(nr=>d(Gt,nr),[()=>(t(),l(()=>t().t("Deployment names are required for Azure OpenAI")))]),i(Pt,Gt)},Lr=Pt=>{var Gt=Mr();g(nr=>d(Gt,nr),[()=>(t(),e(B),l(()=>t().t('Leave empty to include all models from "{{url}}/models" endpoint',{url:e(B)})))]),i(Pt,Gt)};G(Kr,Pt=>{A()?Pt(Yt):e(Ie)?Pt(Or,1):Pt(Lr,-1)})}r(sr),i(pr,sr)};G(wt,pr=>{e(Le),l(()=>e(Le).length>0)?pr(ht):pr(zt,-1)})}r(er);var ir=o(er,2),dr=a(ir),Ct=a(dr,!0);r(dr);var Er=o(dr,2);vt(Er);var Bt=o(Er,2),Ft=a(Bt),Zt=a(Ft);Ya(Zt,{className:"size-3.5",strokeWidth:"2"}),r(Ft),r(Bt),r(ir);var wr=o(ir,2),kr=a(wr),Hr=a(kr);k(Hr,1,`mb-0.5 text-xs text-gray-500 30 `);var yr=a(Hr,!0);r(Hr);var Sr=o(Hr,2),Br=a(Sr);ob(Br,{get tags(){return e(ce)},set tags(pr){s(ce,pr)},$$events:{add:pr=>{s(ce,[...e(ce),{name:pr.detail}])},delete:pr=>{s(ce,e(ce).filter(sr=>sr.name!==pr.detail))}},$$legacy:!0}),r(Sr),r(kr),r(wr),g((pr,sr,Kr,Yt,Or,Lr)=>{d(kt,pr),d(fr,sr),d(Ct,Kr),k(Er,1,`w-full text-sm ${oe} ${e(De)?"":"text-gray-500"}`),Be(Er,"placeholder",Yt),Be(Ft,"aria-label",Or),d(yr,Lr)},[()=>(t(),l(()=>t().t("Prefix ID"))),()=>(t(),l(()=>t().t("Model IDs"))),()=>(t(),l(()=>t().t("Add a model ID"))),()=>(t(),l(()=>t().t("Add a model ID"))),()=>(t(),l(()=>t().t("Add"))),()=>(t(),l(()=>t().t("Tags")))]),dt(Er,()=>e(De),pr=>s(De,pr)),ke("click",Ft,()=>{ue()}),i(Et,St)};G(Mt,Et=>{e(we)&&Et(jt)})}r(ye);var Tt=o(ye,2),yt=a(Tt),$t=a(yt);{var rr=Et=>{var St=FA(),Dt=a(St,!0);r(St),g(ar=>d(Dt,ar),[()=>(t(),l(()=>t().t("Delete")))]),ke("click",St,()=>{s(Ce,!0)}),i(Et,St)};G($t,Et=>{x()&&Et(rr)})}r(yt);var Rt=o(yt,2),Wt=a(Rt),or=o(Wt);{var $r=Et=>{var St=WA(),Dt=a(St);ra(Dt,{}),r(St),i(Et,St)};G(or,Et=>{e(Ne)&&Et($r)})}r(Rt),r(Tt),r(pe),r(H),r(F),r(te),g((Et,St,Dt,ar,Tr,tr,ur,_r,br)=>{Be(C,"aria-label",Et),d(le,St),Be(ze,"placeholder",Dt),Be(ze,"list",A()?void 0:"suggestions"),d(ne,ar),d(Ge,Tr),d(fe,tr),d(b,ur),k(gt,0,`w-3 h-3 transition-transform ${e(we)?"rotate-90":""}`),d(It,` ${_r??""}`),k(Rt,1,`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-full flex items-center gap-2 whitespace-nowrap ${e(Ne)?" cursor-not-allowed":""}`),Rt.disabled=e(Ne),d(Wt,`${br??""} `)},[()=>(t(),l(()=>t().t("Close modal"))),()=>(t(),l(()=>t().t("URL"))),()=>(t(),l(()=>t().t("API Base URL"))),()=>(t(),l(()=>t().t("Toggle whether current connection is active."))),()=>(t(),l(()=>t().t("Auth"))),()=>(t(),l(()=>t().t("None"))),()=>(t(),l(()=>t().t("Bearer"))),()=>(t(),l(()=>t().t("Advanced"))),()=>(t(),l(()=>t().t("Save")))]),ke("click",C,()=>{c(!1)}),dt(ze,()=>e(B),Et=>s(B,Et)),al(S,()=>e(w),Et=>s(w,Et)),ke("click",et,()=>s(we,!e(we))),ke("submit",pe,Et=>{Et.preventDefault(),xe()}),i(M,te)},$$slots:{default:!0},$$legacy:!0});var ie=o(O,2);{let M=v(()=>(t(),l(()=>t().t("Are you sure you want to delete this connection? This action cannot be undone.")))),ve=v(()=>(t(),l(()=>
30t().t("Delete"))));Ca(ie,{get message(){return e(M)},get confirmLabel(){return e(ve)},get show(){return e(Ce)},set show(te){s(Ce,te)},$$events:{confirm:()=>{I()(),c(!1)}},$$legacy:!0})}i(He,Oe),cr(),n()}var YA=u('<div class="absolute top-0 bottom-0 left-0 right-0 opacity-60 bg-white dark:bg-gray-900 z-10"></div>'),VA=u('<!> <div class="flex w-full gap-2"><div class="flex-1 relative"><input autocomplete="off"/></div></div>',1),qA=u('<button class="flex size-6 items-center justify-center rounded-lg text-gray-400 transition-colors hover:text-gray-700 dark:text-gray-600 dark:hover:text-gray-300" type="button"><!></button>'),XA=u('<!> <div class="flex w-full items-center gap-3"><!> <div class="flex shrink-0 items-center gap-1"><!> <!></div></div>',1);function JA(He,_){vr(_,!1);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr(),Ie=mr("i18n");let X=Xe(_,"onDelete",8,()=>{}),R=Xe(_,"onSubmit",8,()=>{}),I=Xe(_,"pipeline",8,!1),c=Xe(_,"url",12,""),x=Xe(_,"key",12,""),A=Xe(_,"config",28,()=>({})),E=h(!1);gr();var V=XA(),B=Qe(V);{let ee=v(()=>({url:c(),key:x(),config:A()}));rs(B,{edit:!0,direct:!0,get connection(){return e(ee)},onDelete:()=>{X()(),s(E,!1)},onSubmit:ae=>{c(ae.url),x(ae.key),A(ae.config),R()(ae)},get show(){return e(E)},set show(ae){s(E,ae)},$$legacy:!0})}var j=o(B,2),w=a(j);{let ee=v(()=>(t(),it(c()),l(()=>t().t('WebUI will make requests to "{{url}}/chat/completions"',{url:c()}))));Lt(w,{className:"w-full relative",get content(){return e(ee)},placement:"top-start",children:(ae,Pe)=>{var se=VA(),m=Qe(se);{var ce=Ce=>{var we=YA();i(Ce,we)};G(m,Ce=>{it(A()),l(()=>{var we;return!(((we=A())==null?void 0:we.enable)??!0)})&&Ce(ce)})}var De=o(m,2),Le=a(De),Ne=a(Le);vt(Ne),r(Le),r(De),g(Ce=>{k(Ne,1,`h-7 w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500 ${I()?"pr-8":""}`),Be(Ne,"placeholder",Ce)},[()=>(t(),l(()=>t().t("API Base URL")))]),dt(Ne,c),i(ae,se)},$$slots:{default:!0}})}var Te=o(w,2),Se=a(Te);{let ee=v(()=>(t(),l(()=>t().t("Configure"))));Lt(Se,{get content(){return e(ee)},className:"self-start",children:(ae,Pe)=>{var se=qA(),m=a(se);jl(m,{}),r(se),g(ce=>Be(se,"aria-label",ce),[()=>(t(),l(()=>
30t().t("Open modal to configure connection")))]),ke("click",se,()=>{s(E,!0)}),i(ae,se)},$$slots:{default:!0}})}var Y=o(Se,2);{let ee=v(()=>(it(A()),t(),l(()=>{var ae;return((ae=A())==null?void 0:ae.enable)??!0?t().t("Enabled"):t().t("Disabled")})));Lt(Y,{get content(){return e(ee)},children:(ae,Pe)=>{Nt(ae,{get state(){return A().enable},set state(se){A(A().enable=se,!0)},$$events:{change:()=>{A(A().enable=A().enable??!1,!0),R()({url:c(),key:x(),config:A()})}},$$legacy:!0})},$$slots:{default:!0}})}r(Te),r(j),i(He,V),cr(),n()}var ZA=u('<button class="flex size-6 items-center justify-center rounded-lg text-gray-400 transition-colors hover:text-gray-700 dark:text-gray-600 dark:hover:text-gray-300" type="button"><!></button>'),QA=u('<div class="flex items-center justify-between gap-2.5"><div class="min-w-0 text-[0.6875rem] text-gray-400 dark:text-gray-600"> </div> <!></div> <div class="flex flex-col gap-2"></div> <div class="text-[0.6875rem] text-gray-400 dark:text-gray-600"> </div>',1),e3=u('<div class="flex h-full justify-center"><div class="my-auto"><!></div></div>'),t3=u('<!> <form id="tab-connections" class="flex flex-col h-full justify-between text-sm"><h2 class="text-sm font-medium text-gray-900 dark:text-white mb-4"> </h2> <div class="flex-1 min-h-0 overflow-y-auto scrollbar-hover pr-1.5"><!></div> <div class="shrink-0 flex justify-end pt-3 text-sm font-normal"><button class="px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full" type="submit"> </button></div></form>',1);function r3(He,_){vr(_,!1);const t=()=>ct(ua,"$settings",n),f=()=>ct(X,"$i18n",n),[n,Ie]=hr(),X=mr("i18n");let R=Xe(_,"saveSettings",8),I=h(null),c=h(!1);const x=async m=>{e(I).OPENAI_API_BASE_URLS.push(m.url),e(I).OPENAI_API_KEYS.push(m.key),We(I,e(I).OPENAI_API_CONFIGS[e(I).OPENAI_API_BASE_URLS.length-1]=m.config),await A()},A=async()=>{if(We(I,e(I).OPENAI_API_BASE_URLS=e(I).OPENAI_API_BASE_URLS.map(m=>m.replace(/\/$/,""))),e(I).OPENAI_API_KEYS.length!==e(I).OPENAI_API_BASE_URLS.length&&(e(I).OPENAI_API_KEYS.length>e(I).OPENAI_API_BASE_URLS.length&&We(I,e(I).OPENAI_API_KEYS=e(I).OPENAI_API_KEYS.slice(0,e(I).OPENAI_API_BASE_URLS.length)),e(I).OPENAI_API_KEYS.length<e(I).OPENAI_API_BASE_URLS.length)){const m=e(I).OPENAI_API_BASE_URLS.length-e(I).OPENAI_API_KEYS.length;for(let ce=0;ce<m;ce++)e(I).OPENAI_API_KEYS.push("")}await R()({directConnections:e(I)})};ea(async()=>{var m;s(I,((m=t())==null?void 0:m.directConnections)??{OPENAI_API_BASE_URLS:[],OPENAI_API_KEYS:[],OPENAI_API_CONFIGS:{}})}),gr();var E=t3(),V=Qe(E);rs(V,{direct:!0,onSubmit:x,get show(){return e(c)},set show(m){s(c,m)},$$legacy:!0});var B=o(V,2),j=a(B),w=a(j,!0);r(j);var Te=o(j,2),Se=a(Te);{var Y=m=>{{let ce=v(()=>(f(),l(()=>
30f().t("Manage Direct Connections"))));Na(m,{get title(){return e(ce)},first:!0,children:(De,Le)=>{var Ne=QA(),Ce=Qe(Ne),we=a(Ce),oe=a(we,!0);r(we);var de=o(we,2);{let Re=v(()=>(f(),l(()=>f().t("Add Connection"))));Lt(de,{get content(){return e(Re)},children:(ue,xe)=>{var K=ZA(),Oe=a(K);Ya(Oe,{}),r(K),g(O=>Be(K,"aria-label",O),[()=>(f(),l(()=>f().t("Add Connection")))]),ke("click",K,()=>{s(c,!0)}),i(ue,K)},$$slots:{default:!0}})}r(Ce);var be=o(Ce,2);lr(be,5,()=>(e(I),l(()=>{var Re;return((Re=e(I))==null?void 0:Re.OPENAI_API_BASE_URLS)??[]})),Ar,(Re,ue,xe)=>{JA(Re,{onSubmit:()=>{A()},onDelete:()=>{We(I,e(I).OPENAI_API_BASE_URLS=e(I).OPENAI_API_BASE_URLS.filter((Oe,O)=>xe!==O)),We(I,e(I).OPENAI_API_KEYS=e(I).OPENAI_API_KEYS.filter((Oe,O)=>xe!==O));let K={};e(I).OPENAI_API_BASE_URLS.forEach((Oe,O)=>{K[O]=e(I).OPENAI_API_CONFIGS[O<xe?O:O+1]}),We(I,e(I).OPENAI_API_CONFIGS=K)},get url(){return(e(I),l(()=>{var K;return((K=e(I))==null?void 0:K.OPENAI_API_BASE_URLS)??[]}))[xe]},set url(K){(e(I),l(()=>{var Oe;return((Oe=e(I))==null?void 0:Oe.OPENAI_API_BASE_URLS)??[]}))[xe]=K,Ja(()=>e(I))},get key(){return e(I).OPENAI_API_KEYS[xe]},set key(K){We(I,e(I).OPENAI_API_KEYS[xe]=K)},get config(){return e(I).OPENAI_API_CONFIGS[xe]},set config(K){We(I,e(I).OPENAI_API_CONFIGS[xe]=K)},$$legacy:!0})}),r(be);var Me=o(be,2),qe=a(Me,!0);r(Me),g((Re,ue)=>{d(oe,Re),d(qe,ue)},[()=>(f(),l(()=>f().t("Connect to your own OpenAI compatible API endpoints."))),()=>(f(),l(()=>f().t("CORS must be properly configured by the provider to allow requests from Open WebUI.")))]),i(De,Ne)},$$slots:{default:!0}})}},ee=m=>{var ce=e3(),De=a(ce),Le=a(De);ra(Le,{className:"size-6"}),r(De),r(ce),i(m,ce)};G(Se,m=>{e(I)!==null?m(Y):m(ee,-1)})}r(Te);var ae=o(Te,2),Pe=a(ae),se=a(Pe,!0);r(Pe),r(ae),r(B),g((m,ce)=>{d(w,m),d(se,ce)},[()=>(f(),l(()=>f().t("Connections"))),()=>(f(),l(()=>f().t("Save")))]),ke("submit",B,ca(()=>{A()})),i(He,E),cr(),Ie()}var a3=u(' <span class="text-gray-500"> </span>',1),l3=u('<button type="button" class=" text-xs text-gray-700 dark:text-gray-300"><!></button>'),o3=u('<div class="text-xs text-gray-700 dark:text-gray-300"> </div>'),s3=u('<span class="opacity-50"> </span>'),n3=u('<div class="flex flex-col flex-1"><div class="flex justify-between mb-0.5"><label for="enter-id"> <!></label></div> <div class="flex flex-1 items-center"><input id="enter-id" type="text" placeholder="auto" autocomplete="off"/></div></div>
30'),i3=u('<button class="self-center p-1 bg-transparent hover:bg-gray-100 dark:hover:bg-gray-850 rounded-lg transition" type="button"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="w-4 h-4" aria-hidden="true"><path fill-rule="evenodd" d="M15.312 11.424a5.5 5.5 0 01-9.201 2.466l-.312-.311h2.433a.75.75 0 000-1.5H3.989a.75.75 0 00-.75.75v4.242a.75.75 0 001.5 0v-2.43l.31.31a7 7 0 0011.712-3.138.75.75 0 00-1.449-.39zm1.23-3.723a.75.75 0 00.219-.53V2.929a.75.75 0 00-1.5 0V5.36l-.31-.31A7 7 0 003.239 8.188a.75.75 0 101.448.389A5.5 5.5 0 0113.89 6.11l.311.31h-2.432a.75.75 0 000 1.5h4.243a.75.75 0 00.53-.219z" clip-rule="evenodd"></path></svg></button>'),d3=u('<button class=" text-xs underline dark:text-gray-500 dark:hover:text-gray-200 text-gray-700 hover:text-gray-900 disabled:opacity-50 disabled:no-underline transition" type="button"> </button>'),v3=u('<div class="flex flex-col justify-end items-center shrink-0"><!></div>'),c3=u('<button class=" text-xs underline dark:text-gray-500 dark:hover:text-gray-200 text-gray-700 hover:text-gray-900 transition" type="button"> </button>'),u3=u('<div class="text-xs font-normal px-1.5 rounded-md bg-yellow-500/20 text-yellow-700 dark:text-yellow-200"> </div>'),g3=u('<div class="text-xs font-normal px-1.5 rounded-md bg-green-500/20 text-green-700 dark:text-green-200"> </div>'),_3=u('<div class="flex items-center gap-2"><!> <div class="flex flex-col justify-end items-center shrink-0"><!></div> <!></div>'),f3=u("<option> </option> <option> </option>",1),p3=u("<option> </option> <!>",1),Ps=u("<div> </div>"),m3=u('<div class="flex flex-col gap-1.5 w-full mt-0.5"><!> <!> <div class="flex flex-1 items-center"><input type="text" autocomplete="off"/></div></div>'),h3=u('<div class="flex-1 flex items-center"><label for="url-or-path" class="sr-only"> </label> <input type="text" id="url-or-path" autocomplete="off" required=""/></div>'),x3=u('<div><label for="url-or-path" class="sr-only"> </label> <textarea autocomplete="off" required="" rows="5"></textarea></div>'),b3=u('<div class="flex gap-2 mt-2"><div class="flex flex-col w-full"><div class="flex justify-between items-center mb-0.5"><div class="flex gap-2 items-center"><div for="select-bearer-or-session"> </div></div></div> <div class="flex gap-2"><div class="flex-shrink-0 self-start"><select id="select-bearer-or-session"><option> </option><option> </option></select></div> <div class="flex flex-1 items-center"><!></div></div> <!></div></div>'),y3=u('<div class="flex gap-2 mt-2"><div class="flex flex-col w-full"><label for="oauth-scope"> </label> <div class="flex flex-1 items-center"><input id="oauth-scope" type="text" autocomplete="off"/></div></div></div> <div class="flex gap-2 mt-2"><div class="flex flex-col w-full"><label for="oauth-resource-parameter"> </label> <div class="flex flex-1 items-center"><select id="oauth-resource-parameter"><option> </option><option> </option><option> </option></select></div></div></div>',1),$3=u('<div class="flex gap-2 mt-2"><div class="flex flex-col w-full"><label for="headers-input"> </label> <div class="flex-1"><!></div></div></div>'),__=u("<!> <!> <!>",1),w3=u('<hr class=" border-gray-100/50 dark:border-gray-700/10 my-2.5 w-full"/> <div class="flex flex-col w-full mt-2"><label for="function-name-filter-list"> </label> <div class="flex-1"><input id="function-name-filter-list" type="text" autocomplete="off"/></div></div>',1),k3=u('<div class=" bg-yellow-500/20 text-yellow-700 dark:text-yellow-200 rounded-2xl text-xs px-4 py-3 mb-2 mt-1"><span class="font-normal"> </span> <a class="font-normal underline" href="https://docs.openwebui.com/" target="_blank"> </a></div>'),E3=u('<button class="px-1 py-1.5 text-sm font-medium text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-200 hover:underline transition" type="button"> </button>'),A3=u('<span class="shrink-0"><!></span>'),I3=u('<div><div class=" flex justify-between dark:text-gray-100 px-5 pt-4 pb-2"><h1 class=" text-lg font-medium self-center font-primary"><!></h1> <div class="flex items-center gap-3"><div class="flex gap-1.5 text-xs justify-end"><button class=" hover:underline" type="button"> </button> <button class=" hover:underline" type="button"> </button></div>
30 <button class="self-center"><!></button></div></div> <div class="flex flex-col md:flex-row w-full px-4 pb-4 md:space-x-4 dark:text-gray-200"><div class=" flex flex-col w-full sm:flex-row sm:justify-center sm:space-x-6"><input type="file" hidden="" accept=".json"/> <form class="flex flex-col w-full"><div class="px-1"><div class="flex gap-2 mb-1.5"><div class="flex w-full justify-between items-center"><div class=" text-xs text-gray-500"> </div> <div><!></div></div></div> <div class="flex gap-2"><div class="flex flex-col flex-1"><div class="flex justify-between mb-0.5"><label for="enter-name"> </label></div> <div class="flex flex-1 items-center"><input id="enter-name" type="text" autocomplete="off"/></div></div> <!></div> <div class="flex flex-col w-full mt-1 mb-1.5"><label for="description"> </label> <div class="flex-1"><input id="description" type="text" autocomplete="off"/></div></div> <div class="flex gap-2"><div class="flex flex-col w-full"><div class="flex justify-between mb-0.5"><label for="api-base-url"> </label></div> <div class="flex flex-1 items-center"><input id="api-base-url" type="text" autocomplete="off" required=""/> <!> <!></div></div></div> <div class="flex gap-2 mt-2"><div class="flex flex-col w-full"><div class="flex justify-between items-center"><div class="flex gap-2 items-center"><div for="select-bearer-or-session"> </div></div> <!></div> <div class="flex gap-2"><div class="flex-shrink-0 self-start"><select id="select-bearer-or-session"><option> </option><option> </option><option> </option><!></select></div> <div class="flex flex-1 items-center"><!></div></div></div></div> <div class="flex items-center justify-between"><button type="button" class="flex items-center gap-1 text-xs text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-200 transition mt-2"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor"><path fill-rule="evenodd" d="M7.21 14.77a.75.75 0 01.02-1.06L11.168 10 7.23 6.29a.75.75 0 111.04-1.08l4.5 4.25a.75.75 0 010 1.08l-4.5 4.25a.75.75 0 01-1.06-.02z" clip-rule="evenodd"></path></svg> </button> <!></div> <!> <!></div> <!> <div class="flex justify-between items-center pt-3 text-sm font-medium"><div><!></div> <button type="submit"> <!></button></div></form></div></div></div>');function Ju(He,_){vr(_,!1);const t=()=>ct(X,"$i18n",f),[f,n]=hr(),{saveAs:Ie}=no,X=mr("i18n");let R=Xe(_,"onSubmit",8,()=>{}),I=Xe(_,"onDelete",8,()=>{}),c=Xe(_,"show",12,!1),x=Xe(_,"edit",8,!1),A=Xe(_,"direct",8,!1),E=Xe(_,"connection",8,null),V=h(null),B=h("openapi"),j=h(""),w=h("url"),Te=h(""),Se=h("openapi.json"),Y=h("bearer"),ee=h(""),ae=h(""),Pe=h(""),se=h([]),m=h(""),ce=h(""),De=h(""),Le=h(null),Ne=h(""),Ce=h(""),we=h(""),oe=h(""),de=h("auto"),be=h(!0),Me=h(!1),qe=h(!1),Re=h(!1),ue=h(!1);const xe="bg-transparent outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700",K="bg-transparent pr-5 outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700",Oe=["oauth_2.1","oauth_2.1_static"],O=()=>Oe.includes(e(Y))?t().t("Check OAuth Discovery"):t().t("Verify Connection"),ie=()=>Oe.includes(e(Y))?t().t("OAuth discovery successful"):t().t("Connection successful"),M=()=>{if(!e(m)){rt.error(t().t("Please enter a valid ID"));return}if(!x()){rt.error(t().t("Please save the connection before authorizing OAuth"));return}Im({id:`server:mcp:${e(m)}`,serverId:e(m),authType:"mcp"})},ve=async()=>{if(e(j)===""){rt.error(t().t("Please enter a valid URL"));return}if(e(m)===""){rt.error(t().t("Please enter a valid ID"));return}if(e(Y)==="oauth_2.1_static"&&(!e(Ne)||!e(Ce))){rt.error(t().t("Please enter Client ID and Client Secret"));return}const H={url:e(j),client_id:e(m),...e(oe)?{oauth_scope:e(oe)}:{},...e(Y)==="oauth_2.1_static"?{client_secret:e(Ce),oauth_server_url:e(we)}:{}},pe=await Am(localStorage.token,H,"mcp").catch(ye=>(rt.error(t().t("Registration failed")),null));pe&&(rt.warning(t().t("Please save the connection to persist the OAuth client information and do not change the ID")),rt.success(t().t("Registration successful")),s(Le,(pe==null?void 0:pe.oauth_client_info)??null))},te=async()=>
30{if(e(j)===""){rt.error(t().t("Please enter a valid URL"));return}if(["openapi",""].includes(e(B))){if(e(w)==="json"&&e(Te)===""){rt.error(t().t("Please enter a valid JSON spec"));return}if(e(w)==="url"&&e(Se)===""){rt.error(t().t("Please enter a valid path"));return}}if(e(ae))try{let H=JSON.parse(e(ae));if(typeof H!="object"||Array.isArray(H))throw H=null,new Error("Headers must be a valid JSON object");s(ae,JSON.stringify(H,null,2))}catch{rt.error(t().t("Headers must be a valid JSON object"));return}if(A()){const H=await im(e(Y)==="bearer"?e(ee):localStorage.token,e(Se).includes("://")?e(Se):`${e(j)}${e(Se).startsWith("/")?"":"/"}${e(Se)}`).catch(pe=>{rt.error(t().t("Connection failed"))});H&&rt.success(t().t("Connection successful"))}else{const H=await Em(localStorage.token,{url:e(j),path:e(Se),type:e(B),auth_type:e(Y),headers:e(ae)?JSON.parse(e(ae)):void 0,key:e(ee),config:{enable:e(be),access_grants:e(se)},info:{id:e(m),name:e(ce),description:e(De),...Oe.includes(e(Y))?{...e(we)?{oauth_server_url:e(we)}:{},...e(oe)?{oauth_scope:e(oe)}:{},oauth_resource_parameter:e(de)}:{}}}).catch(pe=>{rt.error(t().t("Connection failed"))});H&&rt.success(ie())}},ge=async H=>{const pe=H.target.files[0];if(!pe)return;const ye=new FileReader;ye.onload=he=>{const q=he.target.result;try{let P=JSON.parse(q);if(Array.isArray(P)){if(P.length===0){rt.error(t().t("Please select a valid JSON file"));return}P=P[0]}P.type&&s(B,P.type),P.url&&s(j,P.url),P.spec_type&&s(w,P.spec_type),P.spec&&s(Te,P.spec),P.path&&s(Se,P.path),P.auth_type&&s(Y,P.auth_type),P.headers&&s(ae,JSON.stringify(P.headers,null,2)),P.key&&s(ee,P.key),P.info&&(s(m,P.info.id??""),s(ce,P.info.name??""),s(De,P.info.description??""),s(oe,P.info.oauth_scope??""),s(de,P.info.oauth_resource_parameter??"auto")),P.config&&(s(be,P.config.enable??!0),s(se,P.config.access_grants??[])),rt.success(t().t("Import successful"))}catch{rt.error(t().t("Please select a valid JSON file"))}},ye.readAsText(pe)},_e=async()=>{const H=JSON.stringify([{type:e(B),url:e(j),spec_type:e(w),spec:e(Te),path:e(Se),auth_type:e(Y),headers:e(ae)?JSON.parse(e(ae)):void 0,key:e(ee),info:{id:e(m),name:e(ce),description:e(De),...e(B)==="mcp"&&["oauth_2.1","oauth_2.1_static"].includes(e(Y))?{...e(oe)?{oauth_scope:e(oe)}:{},oauth_resource_parameter:e(de)}:{}}}]),pe=new Blob([H],{type:"application/json"});Ie(pe,`tool-server-${e(m)||e(ce)||"export"}.json`)},Ae=async()=>{if(s(Me,!0),e(B)!=="mcp"&&s(j,e(j).replace(/\/$/,"")),e(m).includes(":")||e(m).includes("|")){rt.error(t().t('ID cannot contain ":" or "|" characters')),s(Me,!1);return}if(e(B)==="mcp"&&Oe.includes(e(Y))&&!e(Le)){rt.error(t().t("Please register the OAuth client")),s(Me,!1);return}if(e(w)==="json")try{const pe=JSON.parse(e(Te));s(Te,JSON.stringify(pe,null,2))}catch{rt.error(t().t("Please enter a valid JSON spec")),s(Me,!1);return}if(e(ae))try{const pe=JSON.parse(e(ae));if(typeof pe!="object"||Array.isArray(pe))throw new Error("Headers must be a valid JSON object");s(ae,JSON.stringify(pe,null,2))}catch{rt.error(t().t("Headers must be a valid JSON object")),s(Me,!1);return}const H={type:e(B),url:e(j),spec_type:e(w),spec:e(Te),path:e(Se),auth_type:e(Y),headers:e(ae)?JSON.parse(e(ae)):void 0,key:e(ee),config:{enable:e(be),function_name_filter_list:e(Pe),access_grants:e(se)},info:{id:e(m),name:e(ce),description:e(De),...e(B)==="mcp"&&Oe.includes(e(Y))?{...e(oe)?{oauth_scope:e(oe)}:{},oauth_resource_parameter:e(de)}:{},...e(Le)?{oauth_client_info:e(Le)}:{},...e(Y)==="oauth_2.1_static"?{oauth_client_id:e(Ne),oauth_client_secret:e(Ce),oauth_server_url:e(we)}:{}}};await R()(H),s(Me,!1),c(!1),s(B,"openapi"),s(j,""),s(w,"url"),s(Te,""),s(Se,"openapi.json"),s(ee,""),s(Y,"bearer"),s(m,""),s(ce,""),s(De,""),s(Le,null),s(Ne,""),s(Ce,""),s(we,""),s(oe,""),s(de,"auto"),s(be,!0),s(Pe,""),s(se,[])},U=()=>{var H,pe,ye,he,q,P,Q,re,le,$e,ze,Fe,at,tt,Je,je,ne,J,W;E()&&(s(B,((H=E())==null?void 0:H.type)??"openapi"),s(j,E().url),s(w,((pe=E())==null?void 0:pe.spec_type)??"url"),s(Te,((ye=E())==null?void 0:ye.spec)??""),s(Se,((he=E())==null?void 0:he.path)??"openapi.json"),s(Y,((q=E())==null?void 0:q.auth_type)??"bearer"),s(ae,(P=E())!=null&&P.headers?JSON.stringify(E().headers,null,2):""),s(ee,((Q=E())==null?void 0:Q.key)??""),s(m,((re=E().info)==null?void 0:re.id)??""),s(ce,((le=E().info)==null?void 0:le.name)??""),s(De,(($e=E().info)==null?void 0:$e.description)??""),s(Le,((ze=E().info)==null?void 0:ze.oauth_client_info)??null),s(Ne,((Fe=E().info)==null?void 0:Fe.oauth_client_id)??""),s(Ce,((at=E().info)==null?void 0:at.oauth_client_secret)??""),s(we,((tt=E().info)==null?void 0:tt.oauth_server_url)??""),s(oe,((Je=E().info)==null?void 0:Je.oauth_scope)??""),s(de,((je=E().info)==null?void 0:je.oauth_resource_parameter)??"auto"),s(be,((ne=E().config)==null?void 0:ne.enable)??!0),s(Pe,((J=E().config)==null?void 0:J.function_name_filter_list)??""),s(se,((W=E().c
30onfig)==null?void 0:W.access_grants)??[]))};ea(()=>{U()}),Kt(()=>it(c()),()=>{c()&&U()}),la(),gr();var T=__(),C=Qe(T);Wa(C,{size:"sm",get show(){return c()},set show(H){c(H)},children:(H,pe)=>{var ye=I3(),he=a(ye),q=a(he),P=a(q);{var Q=ft=>{var pt=Mr();g(Ut=>d(pt,Ut),[()=>(t(),l(()=>t().t("Edit Connection")))]),i(ft,pt)},re=ft=>{var pt=Mr();g(Ut=>d(pt,Ut),[()=>(t(),l(()=>t().t("Add Connection")))]),i(ft,pt)};G(P,ft=>{x()?ft(Q):ft(re,-1)})}r(q);var le=o(q,2),$e=a(le),ze=a($e),Fe=a(ze,!0);r(ze);var at=o(ze,2),tt=a(at,!0);r(at),r($e);var Je=o($e,2),je=a(Je);wa(je,{className:"size-5"}),r(Je),r(le),r(he);var ne=o(he,2),J=a(ne),W=a(J);Oa(W,ft=>s(V,ft),()=>e(V));var Z=o(W,2),Ee=a(Z),Ge=a(Ee),p=a(Ge),$=a(p),S=a($,!0);r($);var L=o($,2),fe=a(L);{var y=ft=>{var pt=l3(),Ut=a(pt);{var Vt=Nr=>{var zr=Mr();g(Fr=>d(zr,Fr),[()=>(t(),l(()=>t().t("OpenAPI")))]),i(Nr,zr)},Dr=Qr(()=>(e(B),l(()=>["","openapi"].includes(e(B))))),Yr=Nr=>{var zr=a3(),Fr=Qe(zr),Rr=o(Fr),Ur=a(Rr,!0);r(Rr),g((Vr,qr)=>{d(Fr,`${Vr??""} `),d(Ur,qr)},[()=>(t(),l(()=>t().t("MCP"))),()=>(t(),l(()=>t().t("Streamable HTTP")))]),i(Nr,zr)};G(Ut,Nr=>{e(Dr)?Nr(Vt):e(B)==="mcp"&&Nr(Yr,1)})}r(pt),ke("click",pt,()=>{s(B,["","openapi"].includes(e(B))?"mcp":"openapi")}),i(ft,pt)},b=ft=>{var pt=o3(),Ut=a(pt,!0);r(pt),g(Vt=>d(Ut,Vt),[()=>(t(),l(()=>t().t("OpenAPI")))]),i(ft,pt)};G(fe,ft=>{A()?ft(b,-1):ft(y)})}r(L),r(p),r(Ge);var N=o(Ge,2),z=a(N),Ue=a(z),Ye=a(Ue);k(Ye,1,"text-xs text-gray-500");var Ve=a(Ye,!0);r(Ye),r(Ue);var lt=o(Ue,2),st=a(lt);vt(st),k(st,1,`w-full flex-1 text-sm ${xe}`),r(lt),r(z);var Ke=o(z,2);{var Ze=ft=>{var pt=n3(),Ut=a(pt),Vt=a(Ut);k(Vt,1,"text-xs text-gray-500");var Dr=a(Vt),Yr=o(Dr);{var Nr=Rr=>{var Ur=s3(),Vr=a(Ur);r(Ur),g(qr=>d(Vr,`(${qr??""})`),[()=>(t(),l(()=>t().t("optional")))]),i(Rr,Ur)};G(Yr,Rr=>{e(B)!=="mcp"&&Rr(Nr)})}r(Vt),r(Ut);var zr=o(Ut,2),Fr=a(zr);vt(Fr),k(Fr,1,`w-full flex-1 text-sm font-mono ${xe}`),r(zr),r(pt),g(Rr=>{d(Dr,`${Rr??""} `),Fr.required=e(B)==="mcp"},[()=>(t(),l(()=>t().t("ID")))]),dt(Fr,()=>e(m),Rr=>s(m,Rr)),i(ft,pt)};G(Ke,ft=>{A()||ft(Ze)})}r(N);var ot=o(N,2),ut=a(ot);k(ut,1,"mb-0.5 text-xs text-gray-500");var _t=a(ut,!0);r(ut);var nt=o(ut,2),et=a(nt);vt(et),k(et,1,`w-full text-sm ${xe}`),r(nt),r(ot);var gt=o(ot,2),It=a(gt),Mt=a(It),jt=a(Mt);k(jt,1,"text-xs text-gray-500");var Tt=a(jt,!0);r(jt),r(Mt);var yt=o(Mt,2),$t=a(yt);vt($t),k($t,1,`w-full flex-1 text-sm ${xe}`);var rr=o($t,2);{let ft=v(()=>l(O));Lt(rr,{get content(){return e(ft)},className:"shrink-0 flex items-center mr-1",children:(pt,Ut)=>{var Vt=i3();g(Dr=>Be(Vt,"aria-label",Dr),[()=>l(O)]),ke("click",Vt,()=>{te()}),i(pt,Vt)},$$slots:{default:!0}})}var Rt=o(rr,2);{let ft=v(()=>(e(be),t(),l(()=>e(be)?t().t("Enabled"):t().t("Disabled"))));Lt(Rt,{get content(){return e(ft)},children:(pt,Ut)=>{Nt(pt,{get state(){return e(be)},set state(Vt){s(be,Vt)},$$legacy:!0})},$$slots:{default:!0}})}r(yt),r(It),r(gt);var Wt=o(gt,2),or=a(Wt),$r=a(or),Et=a($r),St=a(Et);k(St,1,"text-xs text-gray-500");var Dt=a(St,!0);r(St),r(Et);var ar=o(Et,2);{var Tr=ft=>{var pt=_3(),Ut=a(pt);{var Vt=Rr=>{var Ur=v3(),Vr=a(Ur);{let qr=v(()=>(it(x()),t(),l(()=>x()?t().t("Authorize OAuth"):t().t("Please save the connection before authorizing OAuth"))));Lt(Vr,{get content(){return e(qr)},children:(Zr,ta)=>{var oa=d3(),da=a(oa,!0);r(oa),g(Pr=>{oa.disabled=!x(),d(da,Pr)},[()=>(t(),l(()=>t().t("Authorize OAuth")))]),ke("click",oa,M),i(Zr,oa)},$$slots:{default:!0}})}r(Ur),i(Rr,Ur)};G(Ut,Rr=>{e(Le)&&Rr(Vt)})}var Dr=o(Ut,2),Yr=a(Dr);{let Rr=v(()=>(e(Le),t(),l(()=>e(Le)?t().t("Register Again"):t().t("Register Client"))));Lt(Yr,{get content(){return e(Rr)},children:(Ur,Vr)=>{var qr=c3(),Zr=a(qr,!0);r(qr),g(ta=>d(Zr,ta),[()=>(t(),l(()=>t().t("Register Client")))]),ke("click",qr,()=>{ve()}),i(Ur,qr)},$$slots:{default:!0}})}r(Dr);var Nr=o(Dr,2);{var zr=Rr=>{var Ur=u3(),Vr=a(Ur,!0);r(Ur),g(qr=>d(Vr,qr),[()=>(t(),l(()=>t().t("Not Registered")))]),i(Rr,Ur)},Fr=Rr=>{var Ur=g3(),Vr=a(Ur,!0);r(Ur),g(qr=>d(Vr,qr),[()=>(t(),l(()=>t().t("Registered")))]),i(Rr,Ur)};G(Nr,Rr=>{e(Le)?Rr(Fr,-1):Rr(zr)})}r(pt),i(ft,pt)},tr=Qr(()=>(e(Y),l(()=>Oe.includes(e(Y)))));G(ar,ft=>{e(tr)&&ft(Tr)})}r($r);var ur=o($r,2),_r=a(ur),br=a(_r);k(br,1,`w-full text-sm ${K}`);var kt=a(br),jr=a(kt,!0);r(kt),kt.value=kt.__value="none";var qt=o(kt),At=a(qt,!0);r(qt),qt.value=qt.__value="bearer";var Ot=o(qt),Ht=a(Ot,!0);r(Ot),Ot.value=Ot.__value="session";var Xt=o(Ot);{var er=ft=>{var pt=p3(),Ut=Qe(pt),Vt=a(Ut,!0);r(Ut),Ut.value=Ut.__value="system_oauth";var Dr=o(Ut,2);{var Yr=Nr=>{var zr=f3(),Fr=Qe(zr),Rr=a(Fr,!0);r(Fr),Fr.value=Fr.__value="oauth_2.1";var Ur=o(Fr,2),Vr=a(Ur,!0);r(Ur),Ur.value=Ur.__value="oauth_2.1_static",g((qr,Zr)=>{d(Rr,qr),d(Vr,Zr)},[()=>(t(),l(()=>t().t("OAuth 2.1"))),()=>(t(),l(()=>t().t("OAuth 2.1 (Static)")))]),i(Nr,zr)};G(Dr,Nr=>{e(B)==="mcp"&&Nr(Yr)})}g(Nr=>d(Vt,Nr),[()=>(t(),l(()=>t().t("OAuth")))]),i(ft,pt)};G(Xt,ft=>{A()||ft(er)})}r(br),r(_r);var xr=o(_r,2),Qt=a(xr);{var fr=ft=>{{let pt=v(()=>(t(),l(()=>t().t("API Key"))));Cr(ft,{get placeholder(){return e(pt)},required:!1,get value(){return e(ee)},set value(Ut){s(ee,Ut)},$$legacy:!0})}},wt=ft=>{var pt=Ps();k(pt,1,"text-xs self-center translate-y-[1px] text-gray-500");var Ut=a(pt,!0);r(pt),g(Vt=>d(Ut,Vt),[()=>(t(),l(()=>t().t("No authentication")))]),i(ft,pt)},ht=ft=>{var pt=Ps();k(pt,1,"text-xs self-center translate-y-[1px] text-gray-500");var Ut=a(pt,!0);r(pt),g(Vt=>d(Ut,Vt),[()=>(t(),l(()=>t().t("Forwards system user session credentials to authenticate")))]),i(ft,pt)},zt=ft=>{var pt=Ps();k(pt,1,"text-xs self-center translate-y-[1px] text-gray-500");var Ut=a(pt,!0);r(pt),g(Vt=>d(Ut,Vt),[()=>(t(),l(()=>t().t("Forwards system user OAuth access token to authenticate")))]),i(ft,pt)},ir=ft=>{var pt=Ps();k(pt,1,"flex items-center text-xs self-center translate-y-[1px] text-gray-500");var Ut=a(pt,!0);r(pt),g(Vt=>d(Ut,Vt),[()=>(t(),l(()=>t().t("Uses OAuth 2.1 Dynamic Client Registration")))]),i(ft,pt)},dr=ft=>{var pt=m3(),Ut=a(pt);{let Nr=v(()=>(t(),l(()=>t().t("Client ID"))));Cr(Ut,{get placeholder(){return e(Nr)},required:!1,get value(){return e(Ne)},set value(zr){s(Ne,zr)},$$legacy:!0})}var Vt=o(Ut,2);{let Nr=v(()=>(t(),l(()=>t().t("Client Secret"))));Cr(Vt,{get placeholder(){return e(Nr)},required:!1,get value(){return e(Ce)},set value(zr){s(Ce,zr)},$$legacy:!0})}var Dr=o(Vt,2),Yr=a(Dr);vt(Yr),k(Yr,1,`w-full text-sm ${xe}`),r(Dr),r(pt),g(Nr=>Be(Yr,"placeholder",Nr),[()=>(t(),l(()=>t().t("OAuth Server URL")))]),dt(Yr,()=>e(we),Nr=>s(we,Nr)),i(ft,pt)};G(Qt,ft=>{e(Y)==="bearer"?ft(fr):e(Y)==="none"?ft(wt,1):e(Y)==="session"?ft(ht,2):e(Y)==="system_oauth"?ft(zt,3):e(Y)==="oauth_2.1"?ft(ir,4):e(Y)==="oauth_2.1_static"&&ft(dr,5)})}r(xr),r(ur),r(or),r(Wt);var Ct=o(Wt,2),Er=a(Ct),Bt=a(Er),Ft=o(Bt);r(Er);var Zt=o(Er,2);{var wr=ft=>{{let pt=v(()=>(t(),l(()=>
30t().t("Access Control"))));Lf(ft,{className:"mt-2",get label(){return e(pt)},$$events:{click:()=>{s(Re,!0)}}})}};G(Zt,ft=>{A()||ft(wr)})}r(Ct);var kr=o(Ct,2);{var Hr=ft=>{var pt=__(),Ut=Qe(pt);{var Vt=Ur=>{var Vr=b3(),qr=a(Vr),Zr=a(qr),ta=a(Zr),oa=a(ta);k(oa,1,"text-xs text-gray-500");var da=a(oa,!0);r(oa),r(ta),r(Zr);var Pr=o(Zr,2),Ea=a(Pr),Ma=a(Ea);k(Ma,1,`w-full text-sm ${K}`);var ya=a(Ma),Ra=a(ya,!0);r(ya),ya.value=ya.__value="url";var Ha=o(ya),Xa=a(Ha,!0);r(Ha),Ha.value=Ha.__value="json",r(Ma),r(Ea);var ol=o(Ea,2),yl=a(ol);{var ul=Da=>{var Ga=h3(),Fa=a(Ga),Za=a(Fa,!0);r(Fa);var za=o(Fa,2);vt(za),k(za,1,`w-full text-sm ${xe}`),r(Ga),g((il,wl)=>{d(Za,il),Be(za,"placeholder",wl)},[()=>(t(),l(()=>t().t("openapi.json URL or Path"))),()=>(t(),l(()=>t().t("openapi.json URL or Path")))]),dt(za,()=>e(Se),il=>s(Se,il)),i(Da,Ga)},$l=Da=>{var Ga=x3();k(Ga,1,"text-xs w-full self-center translate-y-[1px] text-gray-500");var Fa=a(Ga),Za=a(Fa,!0);r(Fa);var za=o(Fa,2);So(za),k(za,1,`w-full text-sm ${xe}`),r(Ga),g((il,wl)=>{d(Za,il),Be(za,"placeholder",wl)},[()=>(t(),l(()=>t().t("JSON Spec"))),()=>(t(),l(()=>t().t("JSON Spec")))]),dt(za,()=>e(Te),il=>s(Te,il)),i(Da,Ga)};G(yl,Da=>{e(w)==="url"?Da(ul):e(w)==="json"&&Da($l,1)})}r(ol),r(Pr);var gl=o(Pr,2);{var Ll=Da=>{var Ga=Ps();k(Ga,1,"text-xs mt-1 text-gray-500");var Fa=a(Ga,!0);r(Ga),g(Za=>d(Fa,Za),[()=>(t(),e(Se),e(j),l(()=>t().t('WebUI will make requests to "{{url}}"',{url:e(Se).includes("://")?e(Se):`${e(j)}${e(Se).startsWith("/")?"":"/"}${e(Se)}`})))]),i(Da,Ga)},_l=Qr(()=>(e(w),l(()=>["","url"].includes(e(w)))));G(gl,Da=>{e(_l)&&Da(Ll)})}r(qr),r(Vr),g((Da,Ga,Fa)=>{d(da,Da),d(Ra,Ga),d(Xa,Fa)},[()=>(t(),l(()=>t().t("OpenAPI Spec"))),()=>(t(),l(()=>t().t("URL"))),()=>(t(),l(()=>t().t("JSON")))]),al(Ma,()=>e(w),Da=>s(w,Da)),i(Ur,Vr)},Dr=Qr(()=>(e(B),l(()=>["","openapi"].includes(e(B)))));G(Ut,Ur=>{e(Dr)&&Ur(Vt)})}var Yr=o(Ut,2);{var Nr=Ur=>{var Vr=y3(),qr=Qe(Vr),Zr=a(qr),ta=a(Zr);k(ta,1,"mb-0.5 text-xs text-gray-500");var oa=a(ta,!0);r(ta);var da=o(ta,2),Pr=a(da);vt(Pr),k(Pr,1,`w-full text-sm ${xe}`),r(da),r(Zr),r(qr);var Ea=o(qr,2),Ma=a(Ea),ya=a(Ma);k(ya,1,"mb-0.5 text-xs text-gray-500");var Ra=a(ya,!0);r(ya);var Ha=o(ya,2),Xa=a(Ha);k(Xa,1,`w-full text-sm ${K}`);var ol=a(Xa),yl=a(ol,!0);r(ol),ol.value=ol.__value="auto";var ul=o(ol),$l=a(ul,!0);r(ul),ul.value=ul.__value="include";var gl=o(ul),Ll=a(gl,!0);r(gl),gl.value=gl.__value="omit",r(Xa),r(Ha),r(Ma),r(Ea),g((_l,Da,Ga,Fa,Za,za)=>{d(oa,_l),Be(Pr,"placeholder",Da),d(Ra,Ga),d(yl,Fa),d($l,Za),d(Ll,za)},[()=>(t(),l(()=>t().t("OAuth Scopes"))),()=>(t(),l(()=>t().t("Use discovered scopes"))),()=>(t(),l(()=>t().t("OAuth Resource Parameter"))),()=>(t(),l(()=>t().t("Automatic"))),()=>(t(),l(()=>t().t("Include"))),()=>(t(),l(()=>t().t("Omit")))]),dt(Pr,()=>e(oe),_l=>s(oe,_l)),al(Xa,()=>e(de),_l=>s(de,_l)),i(Ur,Vr)},zr=Qr(()=>(e(B),e(Y),l(()=>e(B)==="mcp"&&Oe.includes(e(Y)))));G(Yr,Ur=>{e(zr)&&Ur(Nr)})}var Fr=o(Yr,2);{var Rr=Ur=>{var Vr=$3(),qr=a(Vr),Zr=a(qr);k(Zr,1,`mb-0.5 text-xs text-gray-500 31 `);var ta=a(Zr,!0);r(Zr);var oa=o(Zr,2),da=a(oa);{let Pr=v(()=>(t(),l(()=>t().t('Enter additional headers in JSON format (e.g. {"X-Custom-Header": "value"}'))));Lt(da,{get content(){return e(Pr)},children:(Ea,Ma)=>{{let ya=v(()=>(t(),l(()=>t().t("Enter additional headers in JSON format"))));ma(Ea,{className:"w-full text-sm outline-hidden",get placeholder(){return e(ya)},required:!1,minSize:30,get value(){return e(ae)},set value(Ra){s(ae,Ra)},$$legacy:!0})}},$$slots:{default:!0}})}r(oa),r(qr),r(Vr),g(Pr=>d(ta,Pr),[()=>(t(),l(()=>t().t("Headers")))]),i(Ur,Vr)};G(Fr,Ur=>{A()||Ur(Rr)})}i(ft,pt)};G(kr,ft=>{e(qe)&&ft(Hr)})}var yr=o(kr,2);{var Sr=ft=>{var pt=w3(),Ut=o(Qe(pt),2),Vt=a(Ut);k(Vt,1,"mb-1 text-xs text-gray-500");var Dr=a(Vt,!0);r(Vt);var Yr=o(Vt,2),Nr=a(Yr);vt(Nr),k(Nr,1,`w-full text-sm ${xe}`),r(Yr),r(Ut),g((zr,Fr)=>{d(Dr,zr),Be(Nr,"placeholder",Fr)},[()=>(t(),l(()=>t().t("Function Name Filter List"))),()=>(t(),l(()=>t().t("Enter function name filter list (e.g. func1, !func2)")))]),dt(Nr,()=>e(Pe),zr=>s(Pe,zr)),i(ft,pt)};G(yr,ft=>{A()||ft(Sr)})}r(Ee);var Br=o(Ee,2);{var pr=ft=>{var pt=k3(),Ut=a(pt),Vt=a(Ut);r(Ut);var Dr=o(Ut),Yr=o(Dr),Nr=a(Yr,!0);r(Yr),r(pt),g((zr,Fr,Rr)=>{d(Vt,`${zr??""}:`),d(Dr,` ${Fr??""} `),d(Nr,Rr)},[()=>(t(),l(()=>t().t("Warning"))),()=>(t(),l(()=>t().t("MCP support is experimental and its specification changes often, which can lead to incompatibilities. OpenAPI specification support is directly maintained by the Open WebUI team, making it the more reliable option for compatibility."))),()=>(t(),l(()=>t().t("Read more â")))]),i(ft,pt)};G(Br,ft=>{e(B)==="mcp"&&ft(pr)})}var sr=o(Br,2),Kr=a(sr),Yt=a(Kr);{var Or=ft=>{var pt=E3(),Ut=a(pt,!0);r(pt),g(Vt=>d(Ut,Vt),[()=>(t(),l(()=>t().t("Delete")))]),ke("click",pt,()=>{s(ue,!0)}),i(ft,pt)};G(Yt,ft=>{x()&&ft(Or)})}r(Kr);var Lr=o(Kr,2),Pt=a(Lr),Gt=o(Pt);{var nr=ft=>{var pt=A3(),Ut=a(pt);ra(Ut,{}),r(pt),i(ft,pt)};G(Gt,ft=>{e(Me)&&ft(nr)})}r(Lr),r(sr),r(Z),r(J),r(ne),r(ye),g((ft,pt,Ut,Vt,Dr,Yr,Nr,zr,Fr,Rr,Ur,Vr,qr,Zr,ta,oa)=>{d(Fe,ft),d(tt,pt),Be(Je,"aria-label",Ut),d(S,Vt),d(Ve,Dr),Be(st,"placeholder",Yr),d(_t,Nr),Be(et,"placeholder",zr),d(Tt,Fr),Be($t,"placeholder",Rr),d(Dt,Ur),d(jr,Vr),d(At,qr),d(Ht,Zr),k(Bt,0,`w-3 h-3 transition-transform ${e(qe)?"rotate-90":""}`),d(Ft,` ${ta??""}`),k(Lr,1,`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-full flex items-center gap-2 whitespace-nowrap ${e(Me)?" cursor-not-allowed":""}`),Lr.disabled=e(Me),d(Pt,`${oa??""} `)},[()=>(t(),l(()=>t().t("Import"))),()=>(t(),l(()=>t().t("Export"))),()=>(t(),l(()=>t().t("Close Configure Connection Modal"))),()=>(t(),l(()=>t().t("Type"))),()=>(t(),l(()=>t().t("Name"))),()=>(t(),l(()=>t().t("Enter name"))),()=>(t(),l(()=>t().t("Description"))),()=>(t(),l(()=>t().t("Enter description"))),()=>(t(),l(()=>t().t("URL"))),()=>(t(),l(()=>t().t("API Base URL"))),()=>(t(),l(()=>t().t("Auth"))),()=>(t(),l(()=>t().t("None"))),()=>(t(),l(()=>t().t("Bearer"))),()=>(t(),l(()=>t().t("Session"))),()=>(t(),l(()=>t().t("Advanced"))),()=>(t(),l(()=>t().t("Save")))]),ke("click",ze,()=>{var ft;(ft=e(V))==null||ft.click()}),ke("click",at,_e),ke("click",Je,()=>{c(!1)}),ke("change",W,ft=>{ge(ft)}),dt(st,()=>e(ce),ft=>s(ce,ft)),dt(et,()=>e(De),ft=>s(De,ft)),dt($t,()=>e(j),ft=>s(j,ft)),al(br,()=>e(Y),ft=>s(Y,ft)),ke("click",Er,()=>s(qe,!e(qe))),ke("submit",Z,ft=>{ft.preventDefault(),Ae()}),i(H,ye)},$$slots:{default:!0},$$legacy:!0});var D=o(C,2);Tf(D,{get show(){return e(Re)},set show(H){s(Re,H)},get accessGrants(){return e(se)},set accessGrants(H){s(se,H)},$$legacy:!0});var F=o(D,2);{let H=v(()=>(t(),l(()=>t().t("Are you sure you want to delete this connection? This action cannot be undone.")))),pe=v(()=>(t(),l(()=>
31t().t("Delete"))));Ca(F,{get message(){return e(H)},get confirmLabel(){return e(pe)},get show(){return e(ue)},set show(ye){s(ue,ye)},$$events:{confirm:()=>{I()(),c(!1)}},$$legacy:!0})}i(He,T),cr(),n()}var S3=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path d="M10.0503 10.6066L2.97923 17.6777C2.19818 18.4587 2.19818 19.725 2.97923 20.5061V20.5061C3.76027 21.2871 5.0266 21.2871 5.80765 20.5061L12.8787 13.435" stroke-linecap="round" stroke-linejoin="round"></path><path d="M10.0502 10.6066C9.20638 8.45358 9.37134 5.6286 11.1109 3.88909C12.8504 2.14957 16.0606 1.76777 17.8284 2.82843L14.7877 5.8691L14.5051 8.98014L17.6161 8.69753L20.6568 5.65685C21.7175 7.42462 21.3357 10.6349 19.5961 12.3744C17.8566 14.1139 15.0316 14.2789 12.8786 13.435" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function Zu(He,_){let t=Xe(_,"className",8,"w-4 h-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=S3();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}var N3=u('<div class="w-full bg-transparent capitalize outline-hidden"> <span class="text-gray-500"> </span></div>'),P3=u("<div> </div>"),C3=u('<div class="flex w-full"><div><!> <!></div></div>'),T3=u('<button class="flex size-6 items-center justify-center rounded-lg text-gray-400 transition-colors hover:text-gray-700 dark:text-gray-600 dark:hover:text-gray-300" type="button"><!></button>'),L3=u('<!> <div class="flex w-full items-center gap-3 text-xs text-gray-600 dark:text-gray-400"><!> <div class="flex shrink-0 items-center gap-1"><!> <!></div></div>',1);function qf(He,_){vr(_,!1);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr(),Ie=mr("i18n");let X=Xe(_,"onDelete",8,()=>{}),R=Xe(_,"onSubmit",8,()=>{}),I=Xe(_,"connection",12,null),c=Xe(_,"direct",8,!1),x=h(!1);gr();var A=L3(),E=Qe(A);Ju(E,{edit:!0,get direct(){return c()},get connection(){return I()},onDelete:()=>{X()(),s(x,!1)},onSubmit:Se=>{I(Se),R()(Se)},get show(){return e(x)},set show(Se){s(x,Se)},$$legacy:!0});var V=o(E,2),B=a(V);Lt(B,{className:"w-full relative",content:"",placement:"top-start",children:(Se,Y)=>{var ee=C3(),ae=a(ee),Pe=a(ae);{let De=v(()=>(it(I()),t(),l(()=>{var Le;return((Le=I())==null?void 0:Le.type)==="mcp"?t().t("MCP"):t().t("OpenAPI")})));Lt(Pe,{get content(){return e(De)},children:(Le,Ne)=>{Zu(Le,{})},$$slots:{default:!0}})}var se=o(Pe,2);{var m=De=>{var Le=N3(),Ne=a(Le),Ce=o(Ne),we=a(Ce,!0);r(Ce),r(Le),g(()=>{d(Ne,`${it(I()),l(()=>{var oe,de,be;return((de=(oe=I())==null?void 0:oe.info)==null?void 0:de.name)??((be=I())==null?void 0:be.url)})??""} `),d(we,(it(I()),l(()=>{var oe,de;return((de=(oe=I())==null?void 0:oe.info)==null?void 0:de.id)??""})))}),i(De,Le)},ce=De=>{var Le=P3(),Ne=a(Le,!0);r(Le),g(()=>d(Ne,(it(I()),l(()=>{var Ce;return(Ce=I())==null?void 0:Ce.url})))),i(De,Le)};G(se,De=>{it(I()),l(()=>{var Le,Ne;return(Ne=(Le=I())==null?void 0:Le.info)==null?void 0:Ne.name})?De(m):De(ce,-1)})}r(ae),r(ee),g(()=>k(ae,1,`flex-1 relative flex gap-1.5 items-center ${it(I()),l(()=>{var De,Le;return((Le=(De=I())==null?void 0:De.config)==null?void 0:Le.enable)??!0?"":"opacity-50"})??""}`)),i(Se,ee)},$$slots:{default:!0}});var j=o(B,2),w=a(j);{let Se=v(()=>(t(),l(()=>t().t("Configure"))));Lt(w,{get content(){return e(Se)},className:"self-start",children:(Y,ee)=>{var ae=T3(),Pe=a(ae);jl(Pe,{}),r(ae),ke("click",ae,()=>{s(x,!0)}),i(Y,ae)},$$slots:{default:!0}})}var Te=o(w,2);{let Se=v(()=>(it(I()),t(),l(()=>{var Y,ee;return((ee=(Y=I())==null?void 0:Y.config)==null?void 0:ee.enable)??!0?t().t("Enabled"):t().t("Disabled")})));Lt(Te,{get content(){return e(Se)},children:(Y,ee)=>{{let ae=v(()=>(it(I()),l(()=>{var Pe,se;return((se=(Pe=I())==null?void 0:Pe.config)==null?void 0:se.enable)??!0})));Nt(Y,{get state(){return e(ae)},$$events:{change:()=>{var Pe,se;I().config||I(I().config={},!0),I(I().config.enable=!(((se=(Pe=I())==null?void 0:Pe.config)==null?void 0:se.enable)??!0),!0),R()(I())}}})}},$$slots:{default:!0}})}r(j),r(V),i(He,A),cr(),n()}var O3=u('<div class="flex flex-col flex-1"><div class="flex justify-between mb-0.5"><label for="terminal-id"> <span class="opacity-50"> </span></label></div> <div class="flex flex-1 items-center"><input id="terminal-id" type="text" placeholder="auto" autocomplete="off"/></div></div>'),M3=Jr('<svg class="w-4 h-4 animate-spin" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24"><circle class="opacity-25" cx="12" cy="12" r="10" stroke="currentColor" stroke-width="4"></circle><path class="opacity-75" fill="currentColor" d="M4 12a8 8 0 018-8V0C5.373 0 0 5.373 0 12h4z"></path></svg>'),R3=Jr('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" aria-hidden="true" class="w-4 h-4"><path fill-rule="evenodd" d="M15.312 11.424a5.5 5.5 0 01-9.201 2.466l-.312-.311h2.433a.75.75 0 000-1.5H3.989a.75.75 0 00-.75.75v4.242a.75.75 0 001.5 0v-2.43l.31.31a7 7 0 0011.712-3.138.75.75 0 00-1.449-.39zm1.23-3.723a.75.75 0 00.219-.53V2.929a.75.75 0 00-1.5 0V5.36l-.31-.31A7 7 0 003.239 8.188a.75.75 0 101.448.389A5.5 5.5 0 0113.89 6.11l.311.31h-2.432a.75.75 0 000 1.5h4.243a.75.75 0 00.53-.219z" clip-rule="evenodd"></path></svg>
31'),D3=u('<button class="self-center p-1 bg-transparent hover:bg-gray-100 dark:hover:bg-gray-850 rounded-lg transition" type="button"><!></button>'),U3=u('<div class="mt-2 text-xs text-gray-500"> </div>'),B3=u('<div class="mt-2 text-xs text-red-600 dark:text-red-400"> </div>'),G3=u('<div class="flex flex-1 items-center"><input id="policy-storage-size" type="text" placeholder="5Gi" autocomplete="off"/></div>'),j3=u('<div class="flex gap-1.5 mb-1"><input type="text" placeholder="KEY"/> <input type="text" placeholder="value"/> <button type="button" class="text-xs text-gray-400 hover:text-gray-700 dark:hover:text-gray-200 transition px-1"><!></button></div>'),H3=u('<div class="flex gap-2 mt-2"><div class="flex flex-col w-full"><div class="flex justify-between mb-1"><div> </div></div> <div class="grid grid-cols-[auto_1fr] items-center gap-x-3 gap-y-2 text-xs text-gray-500 dark:text-gray-400"><label for="terminal-chat-context"> </label> <select id="terminal-chat-context"><option> </option><option> </option><option> </option></select> <label for="terminal-automation-context"> </label> <select id="terminal-automation-context"><option> </option><option> </option><option> </option></select></div></div></div> <div class="flex gap-2 mt-2"><div class="flex flex-col w-full"><div class="flex justify-between mb-0.5"><div> </div></div> <div class="flex flex-1 items-center"><input id="policy-id" type="text" placeholder="python-ds" autocomplete="off"/></div></div></div> <!> <div class="flex gap-2 mt-2"><div class="flex flex-col w-full"><div class="flex justify-between mb-0.5"><div> <span class="opacity-50"> </span></div></div> <div class="flex flex-1 items-center"><input id="policy-image" type="text" placeholder="ghcr.io/open-webui/open-terminal:latest" autocomplete="off"/></div></div></div> <div class="flex gap-2 mt-2"><div class="flex flex-col flex-1"><div class="flex justify-between mb-0.5"><div> </div></div> <div class="flex flex-1 items-center"><input id="policy-cpu" type="text" placeholder="1" autocomplete="off"/></div></div> <div class="flex flex-col flex-1"><div class="flex justify-between mb-0.5"><div> </div></div> <div class="flex flex-1 items-center"><input id="policy-memory" type="text" placeholder="1Gi" autocomplete="off"/></div></div></div> <div class="flex gap-2 mt-2"><div class="flex flex-col flex-1"><div class="flex justify-between mb-0.5"><div> </div></div> <div class="flex gap-2"><div class="flex-shrink-0 self-start"><select><option> </option><option> </option></select></div> <!></div></div> <div class="flex flex-col flex-1"><div class="flex justify-between mb-0.5"><div> <span class="opacity-50"> </span></div></div> <div class="flex flex-1 items-center"><input id="idle-timeout" type="number" min="0" placeholder="30" autocomplete="off"/></div></div></div> <div class="flex gap-2 mt-2"><div class="flex flex-col w-full"><div class="flex justify-between items-center mb-0.5"><div> </div> <button type="button" class="text-xs text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-200 transition"> </button></div> <!></div></div> <div class="flex gap-2 mt-2"><div class="flex flex-col w-full"><div class="flex justify-between mb-0.5"><div> </div></div> <textarea id="lifecycle-json" spellcheck="false"></textarea></div></div> <div class="flex flex-wrap items-center justify-between gap-2 mt-2"><div class="flex items-center gap-3 text-xs text-gray-500 dark:text-gray-400"><label class="flex items-center gap-1.5"><input type="checkbox"/> <span> </span></label> <label class="flex items-center gap-1.5"><input type="checkbox"/> <span> </span></label></div> <div class="mt-2 text-xs text-gray-500 dark:text-gray-400"> </div> <button type="button" class="px-2 py-1 text-xs font-medium rounded-full bg-gray-100 hover:bg-gray-200 dark:bg-gray-850 dark:hover:bg-gray-800 transition"> </button></div>',1),F3=u('<button type="button" class="flex items-center gap-1 text-xs text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-200 transition mt-2"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor"><path fill-rule="evenodd" d="M7.21 14.77a.75.75 0 01.02-1.06L11.168 10 7.23 6.29a.75.75 0 111.04-1.08l4.5 4.25a.75.75 0 010 1.08l-4.5 4.25a.75.75 0 01-1.06-.02z" clip-rule="evenodd"></path></svg> </button> <!>',1),W3=u('<div class="flex gap-2 mt-2"><div class="flex flex-col w-full"><div class="flex justify-between items-center mb-0.5"><div class="flex gap-2 items-center"><div> </div></div></div> <div class="flex gap-2"><div class="flex flex-1 items-center"><div class="flex-1 flex items-center"><label for="openapi-path" class="sr-only"> </label> <input type="text" id="openapi-path" autocomplete="off" required=""/></div></div></div> <div> </div></div></div>'),z3=u("<option> </option> <option> </option>",1),Yc=u("<div> </div>"),K3=u('<button class="px-1 py-1.5 text-sm font-medium text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-200 hover:underline transition" type="button"> </button>'),Y3=u('<div><div class="flex justify-between dark:text-gray-100 px-5 pt-4 pb-2"><h1 class="text-lg font-medium self-center font-primary"><!></h1>
31 <button class="self-center"><!></button></div> <div class="flex flex-col md:flex-row w-full px-4 pb-4 md:space-x-4 dark:text-gray-200"><div class="flex flex-col w-full sm:flex-row sm:justify-center sm:space-x-6"><form class="flex flex-col w-full"><div class="px-1"><div class="flex gap-2"><div class="flex flex-col flex-1"><div class="flex justify-between mb-0.5"><label for="terminal-name"> </label></div> <div class="flex flex-1 items-center"><input id="terminal-name" type="text" autocomplete="off"/></div></div> <!></div> <div class="flex gap-2 mt-2"><div class="flex flex-col w-full"><div class="flex justify-between mb-0.5"><label for="terminal-url"> </label></div> <div class="flex flex-1 items-center"><input id="terminal-url" type="text" placeholder="http://localhost:9900" required="" autocomplete="off"/></div></div> <!></div> <div class="flex gap-2 mt-2"><div class="flex flex-col w-full"><div class="flex justify-between mb-0.5"><label for="terminal-chat-uploads"> </label></div> <div class="flex flex-1 items-center"><select id="terminal-chat-uploads"><option> </option><option> </option></select></div></div></div> <!> <div class="flex items-center justify-between"><button type="button" class="flex items-center gap-1 text-xs text-gray-500 dark:text-gray-400 hover:text-gray-700 dark:hover:text-gray-200 transition mt-2"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor"><path fill-rule="evenodd" d="M7.21 14.77a.75.75 0 01.02-1.06L11.168 10 7.23 6.29a.75.75 0 111.04-1.08l4.5 4.25a.75.75 0 010 1.08l-4.5 4.25a.75.75 0 01-1.06-.02z" clip-rule="evenodd"></path></svg> </button> <!></div> <!> <div class="flex gap-2 mt-2"><div class="flex flex-col w-full"><div class="flex justify-between items-center"><div class="flex gap-2 items-center"><div> </div></div></div> <div class="flex gap-2"><div class="flex-shrink-0 self-start"><select><option> </option><option> </option><!></select></div> <div class="flex flex-1 items-center"><!></div></div></div></div> <div class="flex justify-between items-center pt-3 text-sm font-medium"><div><!></div> <button class="px-3.5 py-1.5 text-sm font-medium bg-black hover:bg-gray-900 disabled:opacity-50 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full flex flex-row space-x-1 items-center" type="submit"> </button></div></div></form></div></div></div>'),V3=u("<!> <!> <!>",1);function Qu(He,_){vr(_,!1);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr(),Ie=mr("i18n");let X=Xe(_,"show",12,!1),R=Xe(_,"edit",8,!1),I=Xe(_,"direct",8,!1),c=Xe(_,"connection",8,null),x=Xe(_,"onSubmit",8,()=>{}),A=Xe(_,"onDelete",8,()=>{}),E=h(""),V=h(""),B=h(""),j=h(""),w=h("bearer"),Te=h("/openapi.json"),Se=!1,Y=h("default"),ee=h("default"),ae=h("default"),Pe=h(!1),se=h(!1),m=h(!1),ce=h(!1),De=h([]),Le=h(null),Ne=h(!1),Ce=h(!1),we=h(""),oe=h(""),de=h([]),be=h("1"),Me=h("1Gi"),qe=h("ephemeral"),Re=h("5Gi"),ue=h(30),xe=h("{}"),K=h(!0),Oe=h(!1),O=h(!1),ie=h("");const M="bg-transparent outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700",ve="bg-transparent pr-5 outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700",te=he=>JSON.stringify(he&&Object.keys(he).length?he:{},null,2),ge=()=>{var he,q,P,Q,re,le,$e,ze,Fe,at,tt,Je,je,ne,J,W,Z;if(c()){s(j,((he=c())==null?void 0:he.id)??""),s(E,c().url),s(V,((q=c())==null?void 0:q.key)??""),s(B,((P=c())==null?void 0:P.name)??""),s(w,((Q=c())==null?void 0:Q.auth_type)??"bearer"),s(Te,((re=c())==null?void 0:re.path)??"/openapi.json"),Se=((le=c())==null?void 0:le.enabled)??!0,s(Y,((ze=($e=c())==null?void 0:$e.config)==null?void 0:ze.chat_uploads)==="filesystem"?"filesystem":"default"),s(De,((at=(Fe=c())==null?void 0:Fe.config)==null?void 0:at.access_grants)??[]),s(Le,((tt=c())==null?void 0:tt.server_type)??((Je=c())!=null&&Je.policy_id?"orchestrator":null)),s(we,((je=c())==null?void 0:je.policy_id)??"");const Ee=e(Le)==="orchestrator"?((J=(ne=c())==null?void 0:ne.config)==null?void 0:J.contexts)??{}:{};s(ee,(Ee==null?void 0:Ee.chat)===!1?"off":((W=Ee==null?void 0:Ee.chat)==null?void 0:W.context_id)==="chat_id"?"chat_id":"default"),s(ae,(Ee==null?void 0:Ee.automation)===!1?"off":((Z=Ee==null?void 0:Ee.automation)==null?void 0:Z.context_id)==="automation_id"?"automation_id":"default");const Ge={};
31s(oe,Ge.image??""),s(ue,Ge.idle_timeout_minutes??30),s(qe,Ge.storage?"persistent":"ephemeral"),s(Re,Ge.storage??"5Gi");const p=Ge.env??{};s(de,Object.entries(p).map(([$,S])=>({key:$,value:S}))),s(be,Ge.cpu_limit??"1"),s(Me,Ge.memory_limit??"1Gi"),s(xe,te({})),s(K,!0),s(Oe,!1),s(O,!1),s(ie,"")}else s(j,""),s(E,""),s(V,""),s(B,""),s(w,"bearer"),s(Te,"/openapi.json"),Se=!1,s(Y,"default"),s(De,[]),s(ee,"default"),s(ae,"default"),s(Le,null),s(we,""),s(oe,""),s(de,[]),s(be,"1"),s(Me,"1Gi"),s(qe,"ephemeral"),s(Re,"5Gi"),s(ue,30),s(xe,"{}"),s(K,!0),s(Oe,!1),s(O,!1),s(ie,"")},_e=async()=>{if(!(!c()||e(Le)!=="orchestrator"||!e(we)||I())){s(O,!0),s(ie,"");try{let he=null;try{he=await Sm(localStorage.token,e(E),e(V),e(we),e(w))}catch(Q){if((Q==null?void 0:Q.status)!==404)throw Q}const q=await Nm(localStorage.token,e(E),e(V),e(we),e(w)),P=(he==null?void 0:he.data)??{};s(oe,P.image??""),s(ue,P.idle_timeout_minutes??30),s(qe,P.storage?"persistent":"ephemeral"),s(Re,P.storage??"5Gi"),s(de,Object.entries(P.env??{}).map(([Q,re])=>({key:Q,value:String(re)}))),s(be,P.cpu_limit??"1"),s(Me,P.memory_limit??"1Gi"),s(xe,te(q==null?void 0:q.data))}catch(he){s(ie,(he==null?void 0:he.message)||String(he))}finally{s(O,!1)}}},Ae=async()=>{const he=e(E).replace(/\/$/,"");if(!he){rt.error(t().t("Please enter a valid URL"));return}s(Ne,!0);try{if(I())await Jm(he,e(V))?rt.success(t().t("Server connection verified")):rt.error(t().t("Server connection failed"));else{const q=await Pm(localStorage.token,{url:he,key:e(V),auth_type:e(w)}),P=(q==null?void 0:q.type)??null;P?(s(Le,P),rt.success(t().t("Connected ({{type}})",{type:P==="orchestrator"?"Orchestrator":"Terminal"})),P==="orchestrator"&&!e(we)&&s(we,e(j)||e(B).toLowerCase().replace(/[^a-z0-9-]/g,"-").replace(/-+/g,"-").replace(/^-|-$/g,"")||"default")):(s(Le,null),rt.error(t().t("Server connection failed")))}}catch{s(Le,null),rt.error(t().t("Server connection failed"))}finally{s(Ne,!1)}},U=(he,q)=>{try{const P=JSON.parse(q||"{}");return!P||Array.isArray(P)||typeof P!="object"?(rt.error(t().t("{{label}} must be a JSON object",{label:he})),null):P}catch{return rt.error(t().t("{{label}} contains invalid JSON",{label:he})),null}},T=()=>{const he={};e(oe)&&(he.image=e(oe)),e(be)&&(he.cpu_limit=e(be)),e(Me)&&(he.memory_limit=e(Me)),e(qe)==="persistent"&&(he.storage=e(Re)),e(ue)>0&&(he.idle_timeout_minutes=e(ue));const q={};for(const P of e(de))P.key.trim()&&(q[P.key.trim()]=P.value);return Object.keys(q).length>0&&(he.env=q),he},C=async()=>{if(!e(we)){rt.error(t().t("Policy ID is required"));return}s(Ce,!0);try{const he=await Lm(localStorage.token,e(E),e(V),{policy_id:e(we),only_idle:e(K),reset:e(Oe)},e(w));rt.success(t().t("Refresh requested: {{count}} terminal(s)",{count:(he==null?void 0:he.refreshed)??0}))}catch(he){rt.error(t().t("Failed to refresh terminals: {{error}}",{error:he}))}finally{s(Ce,!1)}},D=async()=>{var $e;if(e(E)===""){rt.error(t().t("Please enter a valid URL"));return}if(s(E,e(E).replace(/\/$/,"")),s(V,e(V).trim()),e(O)){rt.error(t().t("Policy is still loading"));return}if(e(ie)){rt.error(t().t("Failed to load policy: {{error}}",{error:e(ie)}));return}let he={},q={};if(e(Le)==="orchestrator"&&!I()&&e(we)){const ze=U("Lifecycle JSON",e(xe));if(!ze)return;he=T(),q=ze;try{await Cm(localStorage.token,e(E),e(V),e(we),he,e(w)),await Tm(localStorage.token,e(E),e(V),e(we),q,e(w))}catch(Fe){rt.error(t().t("Failed to save policy: {{error}}",{error:Fe}));return}}const P={};e(ee)==="off"?P.chat=!1:e(ee)==="chat_id"&&(P.chat={context_id:"chat_id"}),e(ae)==="off"?P.automation=!1:e(ae)==="automation_id"&&(P.automation={context_id:"automation_id"});const Q=!I()&&e(Le)==="orchestrator"&&Object.keys(P).length>0,re=($e=c())!=null&&$e.config&&typeof c().config=="object"?{...c().config}:{};I()?delete re.access_grants:re.access_grants=e(De),Q?re.contexts=P:delete re.contexts,e(Y)==="filesystem"?re.chat_uploads="filesystem":delete re.chat_uploads;const le={...!I()&&e(j).trim()?{id:e(j).trim()}:{},url:e(E),key:e(V),name:e(B),path:e(Te),auth_type:e(w),enabled:Se,config:re,...e(Le)?{server_type:e(Le)}:{},...e(Le)==="orchestrator"&&e(we)?{policy_id:e(we)}:{}};x()(le),X(!1)};Kt(()=>it(X()),()=>{X()&&(ge(),_e())}),la(),gr();var F=V3(),H=Qe(F);Wa(H,{size:"sm",get show(){return X()},set show(he){X(he)},children:(he,q)=>{var P=Y3(),Q=a(P),re=a(Q),le=a(re);{var $e=Bt=>
31{var Ft=Mr();g(Zt=>d(Ft,Zt),[()=>(t(),l(()=>t().t("Edit Terminal Connection")))]),i(Bt,Ft)},ze=Bt=>{var Ft=Mr();g(Zt=>d(Ft,Zt),[()=>(t(),l(()=>t().t("Add Terminal Connection")))]),i(Bt,Ft)};G(le,Bt=>{R()?Bt($e):Bt(ze,-1)})}r(re);var Fe=o(re,2),at=a(Fe);wa(at,{className:"size-5"}),r(Fe),r(Q);var tt=o(Q,2),Je=a(tt),je=a(Je),ne=a(je),J=a(ne),W=a(J),Z=a(W),Ee=a(Z);k(Ee,1,"text-xs text-gray-500");var Ge=a(Ee,!0);r(Ee),r(Z);var p=o(Z,2),$=a(p);vt($),k($,1,`w-full flex-1 text-sm ${M}`),r(p),r(W);var S=o(W,2);{var L=Bt=>{var Ft=O3(),Zt=a(Ft),wr=a(Zt);k(wr,1,"text-xs text-gray-500");var kr=a(wr),Hr=o(kr),yr=a(Hr);r(Hr),r(wr),r(Zt);var Sr=o(Zt,2),Br=a(Sr);vt(Br),k(Br,1,`w-full flex-1 text-sm font-mono ${M}`),r(Sr),r(Ft),g((pr,sr)=>{d(kr,`${pr??""} `),d(yr,`(${sr??""})`)},[()=>(t(),l(()=>t().t("ID"))),()=>(t(),l(()=>t().t("optional")))]),dt(Br,()=>e(j),pr=>s(j,pr)),i(Bt,Ft)};G(S,Bt=>{I()||Bt(L)})}r(J);var fe=o(J,2),y=a(fe),b=a(y),N=a(b);k(N,1,"text-xs text-gray-500");var z=a(N,!0);r(N),r(b);var Ue=o(b,2),Ye=a(Ue);vt(Ye),k(Ye,1,`w-full flex-1 text-sm ${M}`),r(Ue),r(y);var Ve=o(y,2);{let Bt=v(()=>(t(),l(()=>t().t("Verify Connection"))));Lt(Ve,{get content(){return e(Bt)},className:"self-end -mb-1",children:(Ft,Zt)=>{var wr=D3(),kr=a(wr);{var Hr=Sr=>{var Br=M3();i(Sr,Br)},yr=Sr=>{var Br=R3();i(Sr,Br)};G(kr,Sr=>{e(Ne)?Sr(Hr):Sr(yr,-1)})}r(wr),g(Sr=>{wr.disabled=e(Ne),Be(wr,"aria-label",Sr)},[()=>(t(),l(()=>t().t("Verify Connection")))]),ke("click",wr,()=>{Ae()}),i(Ft,wr)},$$slots:{default:!0}})}r(fe);var lt=o(fe,2),st=a(lt),Ke=a(st),Ze=a(Ke);k(Ze,1,"text-xs text-gray-500");var ot=a(Ze,!0);r(Ze),r(Ke);var ut=o(Ke,2),_t=a(ut);k(_t,1,`w-full text-sm ${ve}`);var nt=a(_t),et=a(nt,!0);r(nt),nt.value=nt.__value="default";var gt=o(nt),It=a(gt,!0);r(gt),gt.value=gt.__value="filesystem",r(_t),r(ut),r(st),r(lt);var Mt=o(lt,2);{var jt=Bt=>{var Ft=F3(),Zt=Qe(Ft),wr=a(Zt),kr=o(wr);r(Zt);var Hr=o(Zt,2);{var yr=Sr=>{var Br=H3(),pr=Qe(Br),sr=a(pr),Kr=a(sr),Yt=a(Kr);k(Yt,1,"text-xs text-gray-500");var Or=a(Yt,!0);r(Yt),r(Kr);var Lr=o(Kr,2),Pt=a(Lr),Gt=a(Pt,!0);r(Pt);var nr=o(Pt,2);k(nr,1,`text-xs ${ve}`);var ft=a(nr),pt=a(ft,!0);r(ft),ft.value=ft.__value="default";var Ut=o(ft),Vt=a(Ut,!0);r(Ut),Ut.value=Ut.__value="chat_id";var Dr=o(Ut),Yr=a(Dr,!0);r(Dr),Dr.value=Dr.__value="off",r(nr);var Nr=o(nr,2),zr=a(Nr,!0);r(Nr);var Fr=o(Nr,2);k(Fr,1,`text-xs ${ve}`);var Rr=a(Fr),Ur=a(Rr,!0);r(Rr),Rr.value=Rr.__value="default";var Vr=o(Rr),qr=a(Vr,!0);r(Vr),Vr.value=Vr.__value="automation_id";var Zr=o(Vr),ta=a(Zr,!0);r(Zr),Zr.value=Zr.__value="off",r(Fr),r(Lr),r(sr),r(pr);var oa=o(pr,2),da=a(oa),Pr=a(da),Ea=a(Pr);k(Ea,1,"text-xs text-gray-500");var Ma=a(Ea,!0);r(Ea),r(Pr);var ya=o(Pr,2),Ra=a(ya);vt(Ra),k(Ra,1,`w-full flex-1 text-sm font-mono ${M}`),r(ya),r(da),r(oa);var Ha=o(oa,2);{var Xa=sa=>{var Ua=U3(),dl=a(Ua,!0);r(Ua),g(rl=>d(dl,rl),[()=>(t(),l(()=>t().t("Loading policy...")))]),i(sa,Ua)},ol=sa=>{var Ua=B3(),dl=a(Ua,!0);r(Ua),g(rl=>d(dl,rl),[()=>(t(),e(ie),l(()=>t().t("Failed to load policy: {{error}}",{error:e(ie)})))]),i(sa,Ua)};G(Ha,sa=>{e(O)?sa(Xa):e(ie)&&sa(ol,1)})}var yl=o(Ha,2),ul=a(yl),$l=a(ul),gl=a($l);k(gl,1,"text-xs text-gray-500");var Ll=a(gl),_l=o(Ll),Da=a(_l);r(_l),r(gl),r($l);var Ga=o($l,2),Fa=a(Ga);vt(Fa),k(Fa,1,`w-full flex-1 text-sm font-mono ${M}`),r(Ga),r(ul),r(yl);var Za=o(yl,2),za=a(Za),il=a(za),wl=a(il);k(wl,1,"text-xs text-gray-500");var Gd=a(wl,!0);r(wl),r(il);var To=o(il,2),ls=a(To);vt(ls),k(ls,1,`w-full flex-1 text-sm font-mono ${M}`),r(To),r(za);var Lo=o(za,2),Hl=a(Lo),Fl=a(Hl);k(Fl,1,"text-xs text-gray-500");var jd=a(Fl,!0);r(Fl),r(Hl);var co=o(Hl,2),Oo=a(co);vt(Oo),k(Oo,1,`w-full flex-1 text-sm font-mono ${M}`),r(co),r(Lo),r(Za);var os=o(Za,2),uo=a(os),ss=a(uo),go=a(ss);k(go,1,"text-xs text-gray-500");var Mo=a(go,!0);r(go),r(ss);var _o=o(ss,2),ns=a(_o),Ol=a(ns);k(Ol,1,`w-full text-sm ${ve}`);var Wl=a(Ol),Hd=a(Wl,!0);r(Wl),Wl.value=Wl.__value="ephemeral";var zl=o(Wl),Fd=a(zl,!0);r(zl),zl.value=zl.__value="persistent",r(Ol),r(ns);var is=o(ns,2);{var Ro=sa=>{var Ua=G3(),dl=a(Ua);vt(dl),k(dl,1,`w-full flex-1 text-sm font-mono ${M}`),r(Ua),dt(dl,()=>e(Re),rl=>s(Re,rl)),i(sa,Ua)};G(is,sa=>{e(qe)==="persistent"&&sa(Ro)})}r(_o),r(uo);var fo=o(uo,2),ds=a(fo),Kl=a(ds);k(Kl,1,"text-xs text-gray-500");var vs=a(Kl),qs=o(vs),cs=a(qs);r(qs),r(Kl),r(ds);var Xs=o(ds,2),po=a(Xs);vt(po),k(po,1,`w-full flex-1 text-sm font-mono ${M}`),r(Xs),r(fo),r(os);var Yl=o(os,2),mo=a(Yl),us=a(mo),Vl=a(us);k(Vl,1,"text-xs text-gray-500");var Wd=a(Vl,!0);r(Vl);var ho=o(Vl,2),zd=a(ho);
31r(ho),r(us);var Js=o(us,2);lr(Js,1,()=>e(de),Ar,(sa,Ua,dl)=>{var rl=j3(),Ql=a(rl);vt(Ql),k(Ql,1,`flex-1 text-sm font-mono ${M}`);var Il=o(Ql,2);vt(Il),k(Il,1,`flex-[2] text-sm font-mono ${M}`);var yo=o(Il,2),$o=a(yo);wa($o,{className:"size-3"}),r(yo),r(rl),dt(Ql,()=>e(Ua).key,kl=>(e(Ua).key=kl,Ja(()=>e(de)))),dt(Il,()=>e(Ua).value,kl=>(e(Ua).value=kl,Ja(()=>e(de)))),ke("click",yo,()=>s(de,e(de).filter((kl,eo)=>eo!==dl))),i(sa,rl)}),r(mo),r(Yl);var gs=o(Yl,2),Do=a(gs),ql=a(Do),Xl=a(ql);k(Xl,1,"text-xs text-gray-500");var Kd=a(Xl,!0);r(Xl),r(ql);var Jl=o(ql,2);So(Jl),k(Jl,1,`w-full min-h-24 resize-y text-xs font-mono ${M}`),Be(Jl,"placeholder",`{ 32 "reset": { 33 "schedule": "@weekly", 34 "timezone": "UTC" 35 } 36}`),r(Do),r(gs);var Zs=o(gs,2),xo=a(Zs),_s=a(xo),Uo=a(_s);vt(Uo);var Qs=o(Uo,2),fs=a(Qs,!0);r(Qs),r(_s);var bo=o(_s,2),Zl=a(bo);vt(Zl);var en=o(Zl,2),ps=a(en,!0);r(en),r(bo),r(xo);var ms=o(xo,2),hs=a(ms,!0);r(ms);var Bo=o(ms,2),xs=a(Bo,!0);r(Bo),r(Zs),g((sa,Ua,dl,rl,Ql,Il,yo,$o,kl,eo,Yd,bs,Vd,ys,qd,$s,Go,jo,Xd,ws,Jd,ks,Zd,Es,Ho,Fo)=>{d(Or,sa),d(Gt,Ua),d(pt,dl),d(Vt,rl),d(Yr,Ql),d(zr,Il),d(Ur,yo),d(qr,$o),d(ta,kl),d(Ma,eo),Ra.disabled=(it(R()),it(c()),l(()=>{var tn;return R()&&!!((tn=c())!=null&&tn.policy_id)})),d(Ll,`${Yd??""} `),d(Da,`(${bs??""})`),d(Gd,Vd),d(jd,ys),d(Mo,qd),d(Hd,$s),d(Fd,Go),d(vs,`${jo??""} `),d(cs,`(${Xd??""})`),d(Wd,ws),d(zd,`+ ${Jd??""}`),d(Kd,ks),d(fs,Zd),d(ps,Es),d(hs,Ho),Bo.disabled=e(Ce),d(xs,Fo)},[()=>(t(),l(()=>t().t("Terminal Contexts"))),()=>(t(),l(()=>t().t("Chat"))),()=>(t(),l(()=>t().t("Shared"))),()=>(t(),l(()=>t().t("Per chat"))),()=>(t(),l(()=>t().t("Off"))),()=>(t(),l(()=>t().t("Automation"))),()=>(t(),l(()=>t().t("Shared"))),()=>(t(),l(()=>t().t("Per automation"))),()=>(t(),l(()=>t().t("Off"))),()=>(t(),l(()=>t().t("Policy ID"))),()=>(t(),l(()=>t().t("Image"))),()=>(t(),l(()=>t().t("optional"))),()=>(t(),l(()=>t().t("CPU"))),()=>(t(),l(()=>t().t("Memory"))),()=>(t(),l(()=>t().t("Storage"))),()=>(t(),l(()=>t().t("Ephemeral"))),()=>(t(),l(()=>t().t("Persistent"))),()=>(t(),l(()=>t().t("Idle Timeout"))),()=>(t(),l(()=>t().t("min"))),()=>(t(),l(()=>t().t("Environment Variables"))),()=>(t(),l(()=>t().t("Add"))),()=>(t(),l(()=>t().t("Lifecycle JSON"))),()=>(t(),l(()=>t().t("Idle only"))),()=>(t(),l(()=>t().t("Reset persisted files"))),()=>(t(),l(()=>t().t("Policy changes apply to newly provisioned terminals. Refresh matching terminals to apply them to existing terminals."))),()=>(e(Ce),t(),l(()=>e(Ce)?t().t("Refreshing..."):t().t("Refresh Terminals")))]),al(nr,()=>e(ee),sa=>s(ee,sa)),al(Fr,()=>e(ae),sa=>s(ae,sa)),dt(Ra,()=>e(we),sa=>s(we,sa)),dt(Fa,()=>e(oe),sa=>s(oe,sa)),dt(ls,()=>e(be),sa=>s(be,sa)),dt(Oo,()=>e(Me),sa=>s(Me,sa)),al(Ol,()=>e(qe),sa=>s(qe,sa)),dt(po,()=>e(ue),sa=>s(ue,sa)),ke("click",ho,()=>s(de,[...e(de),{key:"",value:""}])),dt(Jl,()=>e(xe),sa=>s(xe,sa)),_u(Uo,()=>e(K),sa=>s(K,sa)),_u(Zl,()=>e(Oe),sa=>s(Oe,sa)),ke("click",Bo,C),i(Sr,Br)};G(Hr,Sr=>{e(se)&&Sr(yr)})}g(Sr=>{k(wr,0,`w-3 h-3 transition-transform ${e(se)?"rotate-90":""}`),d(kr,` ${Sr??""}`)},[()=>(t(),l(()=>t().t("Orchestrator")))]),ke("click",Zt,()=>s(se,!e(se))),i(Bt,Ft)};G(Mt,Bt=>{e(Le)==="orchestrator"&&!I()&&Bt(jt)})}var Tt=o(Mt,2),yt=a(Tt),$t=a(yt),rr=o($t);r(yt);var Rt=o(yt,2);{var Wt=Bt=>{Lf(Bt,{className:"mt-2",$$events:{click:()=>{s(m,!0)}}})};G(Rt,Bt=>{I()||Bt(Wt)})}r(Tt);var or=o(Tt,2);{var $r=Bt=>{var Ft=W3(),Zt=a(Ft),wr=a(Zt),kr=a(wr),Hr=a(kr);k(Hr,1,"text-xs text-gray-500");var yr=a(Hr,!0);r(Hr),r(kr),r(wr);var Sr=o(wr,2),Br=a(Sr),pr=a(Br),sr=a(pr),Kr=a(sr,!0);r(sr);var Yt=o(sr,2);vt(Yt),k(Yt,1,`w-full text-sm ${M}`),r(pr),r(Br),r(Sr);var Or=o(Sr,2);k(Or,1,"text-xs mt-1 text-gray-500");var Lr=a(Or,!0);r(Or),r(Zt),r(Ft),g((Pt,Gt,nr,ft)=>{d(yr,Pt),d(Kr,Gt),Be(Yt,"placeholder",nr),d(Lr,ft)},[()=>(t(),l(()=>t().t("OpenAPI Spec"))),()=>(t(),l(()=>t().t("openapi.json URL or Path"))),()=>(t(),l(()=>t().t("openapi.json URL or Path"))),()=>(t(),e(Te),e(E),l(()=>t().t('WebUI will make requests to "{{url}}"',{url:e(Te).includes("://")?e(Te):`${e(E)}${e(Te).startsWith("/")?"":"/"}${e(Te)}`})))]),dt(Yt,()=>e(Te),Pt=>s(Te,Pt)),i(Bt,Ft)};G(or,Bt=>{e(Pe)&&Bt($r)})}var Et=o(or,2),St=a(Et),Dt=a(St),ar=a(Dt),Tr=a(ar);k(Tr,1,"text-xs text-gray-500");var tr=a(Tr,!0);r(Tr),r(ar),r(Dt);var ur=o(Dt,2),_r=a(ur),br=a(_r);k(br,1,`w-full text-sm ${ve}`);var kt=a(br),jr=a(kt,!0);r(kt),kt.value=kt.__value="none";var qt=o(kt),At=a(qt,!0);r(qt),qt.value=qt.__value="bearer";var Ot=o(qt);{var Ht=Bt=>{var Ft=z3(),Zt=Qe(Ft),wr=a(Zt,!0);r(Zt),Zt.value=Zt.__value="session";var kr=o(Zt,2),Hr=a(kr,!0);r(kr),kr.value=kr.__value="system_oauth",g((yr,Sr)=>{d(wr,yr),d(Hr,Sr)},[()=>(t(),l(()=>t().t("Session"))),()=>(t(),l(()=>t().t("OAuth")))]),i(Bt,Ft)};G(Ot,Bt=>{I()||Bt(Ht)})}r(br),r(_r);
36var Xt=o(_r,2),er=a(Xt);{var xr=Bt=>{{let Ft=v(()=>(t(),l(()=>t().t("API Key"))));Cr(Bt,{get placeholder(){return e(Ft)},required:!1,get value(){return e(V)},set value(Zt){s(V,Zt)},$$legacy:!0})}},Qt=Bt=>{var Ft=Yc();k(Ft,1,"text-xs self-center translate-y-[1px] text-gray-500");var Zt=a(Ft,!0);r(Ft),g(wr=>d(Zt,wr),[()=>(t(),l(()=>t().t("No authentication")))]),i(Bt,Ft)},fr=Bt=>{var Ft=Yc();k(Ft,1,"text-xs self-center translate-y-[1px] text-gray-500");var Zt=a(Ft,!0);r(Ft),g(wr=>d(Zt,wr),[()=>(t(),l(()=>t().t("Forwards system user session credentials to authenticate")))]),i(Bt,Ft)},wt=Bt=>{var Ft=Yc();k(Ft,1,"text-xs self-center translate-y-[1px] text-gray-500");var Zt=a(Ft,!0);r(Ft),g(wr=>d(Zt,wr),[()=>(t(),l(()=>t().t("Forwards system user OAuth access token to authenticate")))]),i(Bt,Ft)};G(er,Bt=>{e(w)==="bearer"?Bt(xr):e(w)==="none"?Bt(Qt,1):e(w)==="session"?Bt(fr,2):e(w)==="system_oauth"&&Bt(wt,3)})}r(Xt),r(ur),r(St),r(Et);var ht=o(Et,2),zt=a(ht),ir=a(zt);{var dr=Bt=>{var Ft=K3(),Zt=a(Ft,!0);r(Ft),g(wr=>d(Zt,wr),[()=>(t(),l(()=>t().t("Delete")))]),ke("click",Ft,()=>{s(ce,!0)}),i(Bt,Ft)};G(ir,Bt=>{R()&&Bt(dr)})}r(zt);var Ct=o(zt,2),Er=a(Ct,!0);r(Ct),r(ht),r(ne),r(je),r(Je),r(tt),r(P),g((Bt,Ft,Zt,wr,kr,Hr,yr,Sr,Br,pr,sr,Kr)=>{Be(Fe,"aria-label",Bt),d(Ge,Ft),Be($,"placeholder",Zt),d(z,wr),d(ot,kr),d(et,Hr),d(It,yr),k($t,0,`w-3 h-3 transition-transform ${e(Pe)?"rotate-90":""}`),d(rr,` ${Sr??""}`),d(tr,Br),d(jr,pr),d(At,sr),Ct.disabled=e(O)||!!e(ie),d(Er,Kr)},[()=>(t(),l(()=>t().t("Close"))),()=>(t(),l(()=>t().t("Name"))),()=>(t(),l(()=>t().t("My Terminal"))),()=>(t(),l(()=>t().t("URL"))),()=>(t(),l(()=>t().t("Chat Uploads"))),()=>(t(),l(()=>t().t("Default"))),()=>(t(),l(()=>t().t("Filesystem"))),()=>(t(),l(()=>t().t("Advanced"))),()=>(t(),l(()=>t().t("Auth"))),()=>(t(),l(()=>t().t("None"))),()=>(t(),l(()=>t().t("Bearer"))),()=>(t(),l(()=>t().t("Save")))]),ke("click",Fe,()=>{X(!1)}),dt($,()=>e(B),Bt=>s(B,Bt)),dt(Ye,()=>e(E),Bt=>s(E,Bt)),al(_t,()=>e(Y),Bt=>s(Y,Bt)),ke("click",yt,()=>s(Pe,!e(Pe))),al(br,()=>e(w),Bt=>s(w,Bt)),ke("submit",je,ca(D)),i(he,P)},$$slots:{default:!0},$$legacy:!0});var pe=o(H,2);Tf(pe,{get show(){return e(m)},set show(he){s(m,he)},get accessGrants(){return e(De)},set accessGrants(he){s(De,he)},$$legacy:!0});var ye=o(pe,2);{let he=v(()=>(t(),l(()=>t().t("Are you sure you want to delete this connection? This action cannot be undone.")))),q=v(()=>(t(),l(()=>t().t("Delete"))));Ca(ye,{get message(){return e(he)},get confirmLabel(){return e(q)},get show(){return e(ce)},set show(P){s(ce,P)},$$events:{confirm:()=>{A()(),X(!1)}},$$legacy:!0})}i(He,F),cr(),n()}var q3=u('<div class="flex w-full"><div><!> <div class="outline-hidden w-full bg-transparent text-xs text-gray-700 dark:text-gray-300"> </div></div></div>
36'),X3=u('<button class="self-center p-1 bg-transparent hover:bg-black/5 dark:hover:bg-white/5 rounded-lg transition" type="button"><!></button>'),J3=u('<!> <div class="flex w-full gap-2 items-center"><!> <div class="flex gap-1 items-center"><!> <!></div></div>',1);function Z3(He,_){vr(_,!1);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr(),Ie=mr("i18n");let X=Xe(_,"connection",28,()=>({url:"",key:"",name:"",path:"/openapi.json",enabled:!1})),R=Xe(_,"onSubmit",8,()=>{}),I=Xe(_,"onDelete",8,()=>{}),c=Xe(_,"onEnable",8,()=>{}),x=Xe(_,"onDisable",8,()=>{}),A=h(!1);gr();var E=J3(),V=Qe(E);Qu(V,{direct:!0,edit:!0,get connection(){return X()},onDelete:()=>{I()(),s(A,!1)},onSubmit:Y=>{X(Y),R()(Y)},get show(){return e(A)},set show(Y){s(A,Y)},$$legacy:!0});var B=o(V,2),j=a(B);Lt(j,{className:"w-full relative",content:"",placement:"top-start",children:(Y,ee)=>{var ae=q3(),Pe=a(ae),se=a(Pe);{let De=v(()=>(t(),l(()=>t().t("Terminal"))));Lt(se,{get content(){return e(De)},children:(Le,Ne)=>{Af(Le,{className:"size-4",strokeWidth:"1.5"})},$$slots:{default:!0}})}var m=o(se,2),ce=a(m,!0);r(m),r(Pe),r(ae),g(De=>{k(Pe,1,`flex-1 relative flex gap-1.5 items-center ${it(X()),l(()=>{var Le;return(Le=X())!=null&&Le.enabled?"":"opacity-50"})??""}`),d(ce,De)},[()=>(it(X()),t(),l(()=>X().name||X().url||t().t("New Terminal")))]),i(Y,ae)},$$slots:{default:!0}});var w=o(j,2),Te=a(w);{let Y=v(()=>(t(),l(()=>t().t("Configure"))));Lt(Te,{get content(){return e(Y)},children:(ee,ae)=>{var Pe=X3(),se=a(Pe);jl(se,{}),r(Pe),ke("click",Pe,()=>{s(A,!0)}),i(ee,Pe)},$$slots:{default:!0}})}var Se=o(Te,2);{let Y=v(()=>(it(X()),t(),l(()=>{var ee;return(ee=X())!=null&&ee.enabled?t().t("Enabled"):t().t("Disabled")})));Lt(Se,{get content(){return e(Y)},children:(ee,ae)=>{{let Pe=v(()=>(it(X()),l(()=>{var se;return(se=X())==null?void 0:se.enabled})));Nt(ee,{get state(){return e(Pe)},$$events:{change:()=>{var se;return(se=X())!=null&&se.enabled?x()():c()()}}})}},$$slots:{default:!0}})}r(w),r(B),i(He,E),cr(),n()}var Q3=u('<button class="flex size-6 items-center justify-center rounded-lg text-gray-400 transition-colors hover:bg-black/5 hover:text-gray-900 dark:text-gray-600 dark:hover:bg-white/5 dark:hover:text-white" type="button"><!></button>'),e4=u('<div class="text-[0.6875rem] text-gray-400 dark:text-gray-600"> </div>'),t4=u('<!> <div><div class="flex justify-between items-center mb-2"><div class="flex items-center gap-2"><div class="text-xs text-gray-600 dark:text-gray-400"> </div></div> <!></div> <div class="flex flex-col gap-1.5"></div> <!></div>',1);function r4(He,_){vr(_,!1);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr(),Ie=mr("i18n");let X=Xe(_,"servers",28,()=>[]),R=Xe(_,"onChange",8,()=>{}),I=h(!1);const c=ce=>{X([...X(),ce]),R()(X())},x=ce=>{X(X().map((De,Le)=>({...De,enabled:Le===ce}))),R()(X())},A=ce=>{X(X().map((De,Le)=>Le===ce?{...De,enabled:!1}:De)),R()(X())},E=(ce,De)=>{X(X().map((Le,Ne)=>Ne===ce?De:Le)),R()(X())},V=ce=>{X(X().filter((De,Le)=>Le!==ce)),R()(X())};gr();var B=t4(),j=Qe(B);Qu(j,{direct:!0,onSubmit:ce=>c(ce),get show(){return e(I)},set show(ce){s(I,ce)},$$legacy:!0});var w=o(j,2),Te=a(w),Se=a(Te),Y=a(Se),ee=a(Y,!0);r(Y),r(Se);var ae=o(Se,2);{let ce=v(()=>(t(),l(()=>t().t("Add Connection"))));Lt(ae,{get content(){return e(ce)},children:(De,Le)=>{var Ne=Q3(),Ce=a(Ne);Ya(Ce,{}),r(Ne),g(we=>Be(Ne,"aria-label",we),[()=>(t(),l(()=>t().t("Add Connection")))]),ke("click",Ne,()=>s(I,!0)),i(De,Ne)},$$slots:{default:!0}})}r(Te);var Pe=o(Te,2);lr(Pe,5,X,Ar,(ce,De,Le)=>{Z3(ce,{onSubmit:Ne=>E(Le,Ne),onDelete:()=>V(Le),onEnable:()=>x(Le),onDisable:()=>A(Le),get connection(){return X()[Le]},set connection(Ne){X()[Le]=Ne,Ja(()=>X())},$$legacy:!0})}),r(Pe);var se=o(Pe,2);{var m=ce=>{var De=e4(),Le=a(De,!0);r(De),g(Ne=>d(Le,Ne),[()=>(t(),l(()=>t().t("No terminal connections configured.")))]),i(ce,De)};G(se,ce=>{it(X()),l(()=>X().length===0)&&ce(m)})}r(w),g(ce=>d(ee,ce),[()=>(t(),l(()=>t().t("Open Terminal")))]),i(He,B),cr(),n()}var a4=u('<button class="flex size-6 items-center justify-center rounded-lg text-gray-400 transition-colors hover:bg-black/5 hover:text-gray-900 dark:text-gray-600 dark:hover:bg-white/5 dark:hover:text-white" type="button"><!></button>'),l4=u("<div> </div>"),o4=u('<div><div class="mb-2 flex items-center justify-between"><div class="text-xs text-gray-600 dark:text-gray-400"> </div> <!></div> <div class="flex flex-col gap-1"></div> <!> <div> </div> <div> <a class="ml-1 text-gray-500 underline hover:text-gray-700 dark:text-gray-500 dark:hover:text-gray-300" href="https://github.com/open-webui/openapi-servers" target="_blank"> </a></div></div>'),s4=u('<!> <div> </div> <a class="mt-0.5 block text-[0.6875rem] text-gray-500 underline hover:text-gray-700 dark:text-gray-500 dark:hover:text-gray-300" href="https://github.com/open-webui/open-terminal" target="_blank"> </a>',1),n4=u("<!> <!>",1),i4=u('<div class="flex h-full justify-center"><div class="my-auto"><!></div></div>'),d4=u('<!> <form id="tab-tools" class="flex flex-col h-full justify-between text-sm"><h2 class="text-sm font-medium text-gray-900 dark:text-white mb-4"> </h2> <div class="flex-1 min-h-0 overflow-y-auto scrollbar-hover pr-1.5"><!></div> <div class="shrink-0 flex justify-end pt-3 text-sm font-normal"><button class="px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full" t
36ype="submit"> </button></div></form>',1);function v4(He,_){vr(_,!1);const t=()=>ct(ua,"$settings",Ie),f=()=>ct(R,"$i18n",Ie),n=()=>ct(Io,"$terminalServers",Ie),[Ie,X]=hr(),R=mr("i18n");let I=Xe(_,"saveSettings",8),c=h(null),x=h([]),A=h(!1);const E="text-[0.6875rem] text-gray-400 dark:text-gray-600",V=async Le=>{s(c,[...e(c)??[],Le]),await B()},B=async()=>{var we;await I()({toolServers:e(c),terminalServers:e(x)});let Le=await $d(((we=t())==null?void 0:we.toolServers)??[]);Le=Le.filter(oe=>oe.error?(rt.error(f().t("Failed to connect to {{URL}} OpenAPI tool server",{URL:oe==null?void 0:oe.url})),!1):!0),bf.set(Le);const Ne=(n()??[]).filter(oe=>oe.id),Ce=e(x).filter(oe=>oe.enabled);if(Ce.length>0){let oe=await $d(Ce.map(de=>({url:de.url,auth_type:de.auth_type??"bearer",key:de.key??"",path:de.path??"/openapi.json",config:{enable:!0}})));oe=oe.filter(de=>de&&!de.error),Io.set([...oe.map((de,be)=>{var Me,qe;return{...de,key:((Me=Ce[be])==null?void 0:Me.key)??"",config:((qe=Ce[be])==null?void 0:qe.config)??(de==null?void 0:de.config)??{}}}),...Ne])}else Io.set(Ne)};ea(async()=>{var Le,Ne;s(c,((Le=t())==null?void 0:Le.toolServers)??[]),s(x,((Ne=t())==null?void 0:Ne.terminalServers)??[])}),gr();var j=d4(),w=Qe(j);Ju(w,{onSubmit:V,direct:!0,get show(){return e(A)},set show(Le){s(A,Le)},$$legacy:!0});var Te=o(w,2),Se=a(Te),Y=a(Se,!0);r(Se);var ee=o(Se,2),ae=a(ee);{var Pe=Le=>{var Ne=n4(),Ce=Qe(Ne);{let oe=v(()=>(f(),l(()=>f().t("Tools"))));Na(Ce,{get title(){return e(oe)},first:!0,children:(de,be)=>{var Me=o4(),qe=a(Me),Re=a(qe),ue=a(Re,!0);r(Re);var xe=o(Re,2);{let Ae=v(()=>(f(),l(()=>f().t("Add Connection"))));Lt(xe,{get content(){return e(Ae)},children:(U,T)=>{var C=a4(),D=a(C);Ya(D,{}),r(C),g(F=>Be(C,"aria-label",F),[()=>(f(),l(()=>f().t("Add Connection")))]),ke("click",C,()=>s(A,!0)),i(U,C)},$$slots:{default:!0}})}r(qe);var K=o(qe,2);lr(K,5,()=>e(c),Ar,(Ae,U,T)=>{qf(Ae,{direct:!0,onSubmit:()=>B(),onDelete:()=>{s(c,(e(c)??[]).filter((C,D)=>D!==T)),B()},get connection(){return e(c)[T]},set connection(C){e(c)[T]=C,Ja(()=>e(c))},$$legacy:!0})}),r(K);var Oe=o(K,2);{var O=Ae=>{var U=l4();k(U,1,me(E));var T=a(U,!0);r(U),g(C=>d(T,C),[()=>(f(),l(()=>f().t("No tool server connections configured.")))]),i(Ae,U)};G(Oe,Ae=>{e(c),l(()=>(e(c)??[]).length===0)&&Ae(O)})}var ie=o(Oe,2);k(ie,1,"mt-1 text-[0.6875rem] text-gray-400 dark:text-gray-600");var M=a(ie,!0);r(ie);var ve=o(ie,2);k(ve,1,me(E));var te=a(ve),ge=o(te),_e=a(ge);r(ge),r(ve),r(Me),g((Ae,U,T,C)=>{d(ue,Ae),d(M,U),d(te,`${T??""} `),d(_e,`${C??""} â`)},[()=>(f(),l(()=>f().t("External Tool Servers"))),()=>(f(),l(()=>f().t("Connect to your own OpenAPI compatible external tool servers."))),()=>(f(),l(()=>f().t("CORS must be properly configured by the provider to allow requests from Open WebUI."))),()=>(f(),l(()=>f().t("Learn more about OpenAPI tool servers.")))]),i(de,Me)},$$slots:{default:!0}})}var we=o(Ce,2);{let oe=v(()=>(f(),l(()=>f().t("Terminal"))));Na(we,{get title(){return e(oe)},children:(de,be)=>{var Me=s4(),qe=Qe(Me);r4(qe,{onChange:()=>B(),get servers(){return e(x)},set servers(Oe){s(x,Oe)},$$legacy:!0});var Re=o(qe,2);k(Re,1,"mt-1 text-[0.6875rem] text-gray-400 dark:text-gray-600");var ue=a(Re,!0);r(Re);var xe=o(Re,2),K=a(xe);r(xe),g((Oe,O)=>{d(ue,Oe),d(K,`${O??""} â`)},[()=>(f(),l(()=>f().t("Connect to Open Terminal instances to browse files and use them as always-on tools. Only one can be active at a time."))),()=>(f(),l(()=>f().t("Learn more about Open Terminal")))]),i(de,Me)},$$slots:{default:!0}})}i(Le,Ne)},se=Le=>{var Ne=i4(),Ce=a(Ne),we=a(Ce);ra(we,{className:"size-6"}),r(Ce),r(Ne),i(Le,Ne)};G(ae,Le=>{e(c)!==null?Le(Pe):Le(se,-1)})}r(ee);var m=o(ee,2),ce=a(m),De=a(ce,!0);r(ce),r(m),r(Te),g((Le,Ne)=>{d(Y,Le),d(De,Ne)},[()=>(f(),l(()=>f().t("Integrations"))),()=>(f(),l(()=>f().t("Save")))]),ke("submit",Te,ca(()=>{B()})),i(He,j),cr(),X()}var c4=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path d="M4 6V12C4 12 4 15 11 15C18 15 18 12 18 12V6" stroke-linecap="round" stroke-linejoin="round"></path><path d="M11 3C18 3 18 6 18 6C18 6 18 9 11 9C4 9 4 6 4 6C4 6 4 3 11 3Z" stroke-linecap="round" stroke-linejoin="round"></path><path d="M11 21C4 21 4 18 4 18V12" stroke-linecap="round" stroke-linejoin="round"></path><path d="M19 21C20.1046 21 21 20.1046 21 19C21 17.8954 20.1046 17 19 17C18.6357 17 18.2942 17.0974 18 17.2676C17.4022 17.6134 17 18.2597 17 19C17 19.7403 17.4022 20.3866 18 20.7324C18.2942 20.9026 18.6357 21 19 21Z" stroke-linecap="round" stroke-linejoin="round"></path>
36<path d="M19 22C20.6569 22 22 20.6569 22 19C22 17.3431 20.6569 16 19 16C17.3431 16 16 17.3431 16 19C16 20.6569 17.3431 22 19 22Z" stroke-linecap="round" stroke-linejoin="round" stroke-dasharray="0.3 2"></path></svg>');function Xf(He,_){let t=Xe(_,"className",8,"w-4 h-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=c4();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}var u4=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path d="M12 15C13.6569 15 15 13.6569 15 12C15 10.3431 13.6569 9 12 9C10.3431 9 9 10.3431 9 12C9 13.6569 10.3431 15 12 15Z" stroke-linecap="round" stroke-linejoin="round"></path><path d="M19.6224 10.3954L18.5247 7.7448L20 6L18 4L16.2647 5.48295L13.5578 4.36974L12.9353 2H10.981L10.3491 4.40113L7.70441 5.51596L6 4L4 6L5.45337 7.78885L4.3725 10.4463L2 11V13L4.40111 13.6555L5.51575 16.2997L4 18L6 20L7.79116 18.5403L10.397 19.6123L11 22H13L13.6045 19.6132L16.2551 18.5155C16.6969 18.8313 18 20 18 20L20 18L18.5159 16.2494L19.6139 13.598L21.9999 12.9772L22 11L19.6224 10.3954Z" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function Jf(He,_){let t=Xe(_,"className",8,"w-4 h-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=u4();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}var g4=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path d="M12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2Z" stroke-linecap="round" stroke-linejoin="round"></path><path d="M4.271 18.3457C4.271 18.3457 6.50002 15.5 12 15.5C17.5 15.5 19.7291 18.3457 19.7291 18.3457" stroke-linecap="round" stroke-linejoin="round"></path><path d="M12 12C13.6569 12 15 10.6569 15 9C15 7.34315 13.6569 6 12 6C10.3431 6 9 7.34315 9 9C9 10.6569 10.3431 12 12 12Z" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function Zf(He,_){let t=Xe(_,"className",8,"w-4 h-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=g4();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}var _4=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path d="M1 13.8571V10.1429C1 9.03829 1.89543 8.14286 3 8.14286H5.9C6.09569 8.14286 6.28708 8.08544 6.45046 7.97772L12.4495 4.02228C13.1144 3.5839 14 4.06075 14 4.85714V19.1429C14 19.9392 13.1144 20.4161 12.4495 19.9777L6.45046 16.0223C6.28708 15.9146 6.09569 15.8571 5.9 15.8571H3C1.89543 15.8571 1 14.9617 1 13.8571Z"></path><path d="M17.5 7.5C17.5 7.5 19 9 19 11.5C19 14 17.5 15.5 17.5 15.5" stroke-linecap="round" stroke-linejoin="round"></path><path d="M20.5 4.5C20.5 4.5 23 7 23 11.5C23 16 20.5 18.5 20.5 18.5" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function Qf(He,_){let t=Xe(_,"className",8,"w-4 h-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=_4();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}var f4=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path d="M12 11.5V16.5" stroke-linecap="round" stroke-linejoin="round"></path><path d="M12 7.51L12.01 7.49889" stroke-linecap="round" stroke-linejoin="round"></path><path d="M12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22Z" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function p4(He,_){let t=Xe(_,"className",8,"w-4 h-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=f4();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}var m4=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path d="M12 2C6.47715 2 2 6.47715 2 12C2 17.5228 6.47715 22 12 22C17.5228 22 22 17.5228 22 12C22 6.47715 17.5228 2 12 2Z" stroke-linecap="round" stroke-linejoin="round"></path><path d="M16 8L16 10" stroke-linecap="round" stroke-linejoin="round"></path><path d="M8 8L8 10" stroke-linecap="round" stroke-linejoin="round"></path><path d="M9 16C9 16 10 17 12 17C14 17 15 16 15 16" stroke-linecap="round" stroke-linejoin="round"></path><path d="M12 8L12 13L11 13" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function h4(He,_){let t=Xe(_,"className",8,"w-4 h-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=m4();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}var x4=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" stroke="currentColor" viewBox="0 0 24 24">
36<path d="M19 8C20.6569 8 22 6.65685 22 5C22 3.34315 20.6569 2 19 2C17.3431 2 16 3.34315 16 5C16 6.65685 17.3431 8 19 8Z" stroke-linecap="round" stroke-linejoin="round"></path><path d="M21 12V15C21 18.3137 18.3137 21 15 21H9C5.68629 21 3 18.3137 3 15V9C3 5.68629 5.68629 3 9 3H12" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function b4(He,_){let t=Xe(_,"className",8,"w-4 h-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=x4();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}var y4=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path d="M3 19V5C3 3.89543 3.89543 3 5 3H19C20.1046 3 21 3.89543 21 5V19C21 20.1046 20.1046 21 19 21H5C3.89543 21 3 20.1046 3 19Z"></path><path d="M8 14L12 10L16 14" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function $4(He,_){let t=Xe(_,"className",8,"size-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=y4();g(()=>{Be(n,"stroke-width",f()),k(n,0,me(t()))}),i(He,n)}var w4=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="none" stroke="currentColor"><path d="M20 20H4V4" stroke-linecap="round" stroke-linejoin="round"></path><path d="M4 16.5L12 9L15 12L19.5 7.5" stroke-linecap="round" stroke-linejoin="round"></path></svg>');function k4(He,_){let t=Xe(_,"className",8,"size-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=w4();g(()=>{Be(n,"stroke-width",f()),k(n,0,me(t()))}),i(He,n)}var E4=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" stroke="currentColor" viewBox="0 0 24 24"><path d="M2 21L17 21" stroke-linecap="round" stroke-linejoin="round"></path><path d="M21 21L22 21" stroke-linecap="round" stroke-linejoin="round"></path><path d="M2 16.4V3.6C2 3.26863 2.26863 3 2.6 3H21.4C21.7314 3 22 3.26863 22 3.6V16.4C22 16.7314 21.7314 17 21.4 17H2.6C2.26863 17 2 16.7314 2 16.4Z"></path></svg>');function A4(He,_){let t=Xe(_,"className",8,"w-4 h-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=E4();g(()=>{k(n,0,me(t())),Be(n,"stroke-width",f())}),i(He,n)}var I4=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M3.75 12h16.5m-16.5 3.75h16.5M3.75 19.5h16.5M5.625 4.5h12.75a1.875 1.875 0 0 1 0 3.75H5.625a1.875 1.875 0 0 1 0-3.75Z"></path></svg>');function S4(He,_){let t=Xe(_,"className",8,"size-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=I4();g(()=>{Be(n,"stroke-width",f()),k(n,0,me(t()))}),i(He,n)}var N4=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M4 7.5C4 5.57 7.58 4 12 4s8 1.57 8 3.5S16.42 11 12 11 4 9.43 4 7.5Z"></path><path stroke-linecap="round" stroke-linejoin="round" d="M4 7.5v4C4 13.43 7.58 15 12 15s8-1.57 8-3.5v-4"></path><path stroke-linecap="round" stroke-linejoin="round" d="M4 11.5v4C4 17.43 7.58 19 12 19s8-1.57 8-3.5v-4"></path></svg>'),P4=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M5 20V10"></path><path stroke-linecap="round" stroke-linejoin="round" d="M12 20V4"></path><path stroke-linecap="round" stroke-linejoin="round" d="M19 20v-7"></path></svg>');function C4(He,_){let t=Xe(_,"id",8),f=Xe(_,"className",8,"size-3.5"),n=Xe(_,"strokeWidth",8,"2");var Ie=Wr(),X=Qe(Ie);{var R=se=>{Jf(se,{get className(){return f()},get strokeWidth(){return n()}})},I=se=>{Hu(se,{get className(){return f()},get strokeWidth(){return n()}})},c=se=>{Ku(se,{get className(){return f()},get strokeWidth(){return n()}})},x=se=>{var m=N4();g(()=>{Be(m,"stroke-width",n()),k(m,0,me(f()))}),i(se,m)},A=se=>{Zf(se,{get className(){return f()},get strokeWidth(){return n()}})},E=se=>{var m=P4();g(()=>{Be(m,"stroke-width",n()),k(m,0,me(f()))}),i(se,m)},V=se=>{ib(se,{get className(){return f()},get strokeWidth(){return n()}})},B=se=>{Zu(se,{get className(){return f()},get strokeWidth(){return n()}})},j=se=>{vx(se,{get className(){return f()},get strokeWidth(){return n()}})},w=se=>{Yu(se,{get className(){return f()},get strokeWidth(){return n()}})},Te=se=>{fx(se,{get className(){return f()},get strokeWidth(){return n()}})},Se=se=>{A4(se,{get className(){return f()},get strokeWidth(){return n()}})},Y=se=>{Qf(se,{get className(){return f()},get strokeWidth(){return n()}})},ee=se=>{Zm(se,{get className(){return f()},get strokeWidth(){return n()}})},ae=se=>{S4(se,{get className(){return f()},get strokeWidth(){return n()}})},Pe=se=>{Qm(se,{get className(){return f()},get strokeWidth(){return n()}})};G(X,se=>{t()==="general"?se(R):t()==="authentication"?se(I,1):t()==="connections"?se(c,2):t()==="models"?se(x,3):t(
36)==="subagents"?se(A,4):t()==="evaluations"?se(E,5):t()==="analytics"?se(V,6):t()==="integrations"?se(B,7):t()==="documents"?se(j,8):t()==="web"?se(w,9):t()==="code-execution"?se(Te,10):t()==="interface"?se(Se,11):t()==="audio"?se(Y,12):t()==="images"?se(ee,13):t()==="pipelines"?se(ae,14):t()==="db"&&se(Pe,15)})}i(He,Ie)}var T4=Jr('<svg aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke="currentColor"><path stroke-linecap="round" stroke-linejoin="round" d="M12 6.75a.75.75 0 1 1 0-1.5.75.75 0 0 1 0 1.5ZM12 12.75a.75.75 0 1 1 0-1.5.75.75 0 0 1 0 1.5ZM12 18.75a.75.75 0 1 1 0-1.5.75.75 0 0 1 0 1.5Z"></path></svg>');function ep(He,_){let t=Xe(_,"className",8,"w-4 h-4"),f=Xe(_,"strokeWidth",8,"1.5");var n=T4();g(()=>{Be(n,"stroke-width",f()),k(n,0,me(t()))}),i(He,n)}var L4=u('<option disabled="" hidden="" class="text-gray-900"> </option> <option class="text-gray-900"> </option> <option class="text-gray-900"> </option> <option class="text-gray-900"> </option> <option class="text-gray-900"> </option>',1),O4=u('<div class=" flex justify-between items-start -ml-1"><!> <div class="flex flex-row flex-1 gap-2 items-start"><!> <!> <div class="relative -left-2"><!></div></div> <button class="pr-3" type="button"><!></button></div>'),M4=u("<div></div>");function R4(He,_){vr(_,!1);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr(),Ie=mr("i18n");let X=Xe(_,"banners",28,()=>[]),R=null,I=h(null);const c=()=>{const E=Array.from(e(I).children).map(V=>V.id.replace("banner-item-",""));X(E.map(V=>{const B=X().findIndex(j=>j.id===V);return X()[B]}))},x=()=>{R&&R.destroy(),e(I)&&(R=new Ws(e(I),{animation:150,handle:".item-handle",onUpdate:async E=>{c()}}))};Kt(()=>it(X()),()=>{X()&&x()}),la(),gr();var A=M4();lr(A,7,X,E=>E.id,(E,V,B)=>{var j=O4(),w=a(j);ep(w,{className:"size-4 cursor-move item-handle"});var Te=o(w,2),Se=a(Te);aa(Se,{required:!0,selectClassName:"capitalize",get value(){return e(V).type},set value(m){e(V).type=m,Ja(()=>X())},children:(m,ce)=>{var De=L4(),Le=Qe(De),Ne=a(Le,!0);r(Le),Le.value=Le.__value="";var Ce=o(Le,2),we=a(Ce,!0);r(Ce),Ce.value=Ce.__value="info";var oe=o(Ce,2),de=a(oe,!0);r(oe),oe.value=oe.__value="warning";var be=o(oe,2),Me=a(be,!0);r(be),be.value=be.__value="error";var qe=o(be,2),Re=a(qe,!0);r(qe),qe.value=qe.__value="success",g((ue,xe,K,Oe,O)=>{d(Ne,ue),d(we,xe),d(de,K),d(Me,Oe),d(Re,O)},[()=>(t(),l(()=>t().t("Type"))),()=>(t(),l(()=>t().t("Info"))),()=>(t(),l(()=>t().t("Warning"))),()=>(t(),l(()=>t().t("Error"))),()=>(t(),l(()=>t().t("Success")))]),i(m,De)},$$slots:{default:!0},$$legacy:!0});var Y=o(Se,2);{let m=v(()=>(t(),l(()=>t().t("Content"))));ma(Y,{className:"mr-2 text-xs w-full border border-gray-100/50 !bg-gray-50/40 outline-hidden dark:border-white/[0.04] dark:!bg-white/[0.03] dark:text-gray-300 resize-none",get placeholder(){return e(m)},maxSize:100,get value(){return e(V).content},set value(ce){e(V).content=ce,Ja(()=>X())},$$legacy:!0})}var ee=o(Y,2),ae=a(ee);{let m=v(()=>(t(),l(()=>t().t("Remember Dismissal"))));Lt(ae,{get content(){return e(m)},className:"flex h-fit items-center",children:(ce,De)=>{Nt(ce,{get state(){return e(V).dismissible},set state(Le){e(V).dismissible=Le,Ja(()=>X())},$$legacy:!0})},$$slots:{default:!0}})}r(ee),r(Te);var Pe=o(Te,2),se=a(Pe);wa(se,{className:"size-4"}),r(Pe),r(j),g(()=>Be(j,"id",`banner-item-${e(V),l(()=>e(V).id)??""}`)),ke("click",Pe,()=>{X().splice(e(B),1),X(X())}),i(E,j)}),r(A),Oa(A,E=>s(I,E),()=>e(I)),g(()=>k(A,1,` flex flex-col gap-3 ${it(X()),l(()=>{var E;return((E=X())==null?void 0:E.length)>0?"mt-2":""})??""}`)),i(He,A),cr(),n()}var D4=u("<option> </option> <option> </option> <option> </option>",1),f_=u('<div class="flex items-center gap-1 rounded-full bg-gray-100 dark:bg-white/[0.03] px-2 py-1 text-xs"><span class="truncate max-w-36"> </span> <span class="text-gray-500"> </span> <button type="button"><!></button></div>'),U4=u('<div class="flex flex-wrap gap-1 mb-2"><!> <!></div>'),B4=u('<button type="button" class="w-full flex items-center justify-between gap-2 px-3 py-1.5 text-xs text-left hover:bg-gray-50/70 dark:hover:bg-gray-850/50"><span class="truncate"> </span> <span class="text-gray-500"> </span></button>'),G4=u('<span class="text-gray-500"> </span>'),j4=u('<button type="button" class="w-full flex items-center justify-between gap-2 px-3 py-1.5 text-xs text-left hover:bg-gray-50/70 dark:hover:bg-gray-850/50"><span class="truncate"> <!></span> <span class="text-gray-500"> </span></button>'),H4=u('<div class="absolute z-10 mt-1 w-full rounded-lg bg-white dark:bg-gray-900 border border-gray-100 dark:border-gray-850 shadow-lg py-1 max-h-48 overflow-y-auto"><!> <!></div>'),F4=u('<div class="mt-2"><!> <div class="relative"><input data-settings-search="" type="text" autocomplete="off"/> <!></div></div>'),W4=u('<div class="flex items-center gap-1 rounded-full bg-gray-100 dark:bg-white/[0.03] px-2 py-1 text-xs"><span class="font-mono break-all"> </span> <button type="button"><!></button></div>'),z4=u('<div class="flex flex-wrap gap-1"></div>'),K4=u('<label class="flex items-start gap-2 py-0.5 text-xs text-gray-700 dark:text-gray-300"><input class="mt-0.5" type="checkbox"/> <span class="min-w-0"><span class="font-mono break-all"> </span> <span class="ml-1 text-gray-500"> </span></span></label>'),Y4=u('<div class="flex flex-col gap-2 mt-2"><!> <div class="flex gap-2"><input type="text" autocomplete="off"/> <button type="button" class="text-xs text-gray-700 dark:text-gray-300 hover:underline"> </button></div> <div class="max-h-36 overflow-y-auto pb-0.5"></div> <div class="text-xs text-gray-500"> </div></div>'),V4=u('<button class="px-1 py-1.5 text-sm font-normal text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-200 hover:underline transition" type="button"> </button>'),q4=u('<div><div class="flex justify-between dark:text-gray-100 px-4 pt-3 pb-1"><h1 class="text-sm font-medium self-center"> </h1>
36 <button class="self-center rounded-lg p-1 text-gray-500 transition hover:bg-gray-50 hover:text-gray-700 dark:text-gray-400 dark:hover:bg-gray-800 dark:hover:text-gray-200" type="button"><!></button></div> <div class="flex flex-col w-full px-5 pb-4 dark:text-gray-200"><form class="flex flex-col w-full"><div class="flex gap-3"><div class="flex flex-col w-full"><label for="event-webhook-name"> </label> <input id="event-webhook-name" type="text" autocomplete="off"/></div></div> <div class="flex gap-3 mt-2"><div class="flex flex-col w-full"><label for="event-webhook-url"> </label> <div class="flex items-center gap-2"><input id="event-webhook-url" type="url" placeholder="https://example.com/events" autocomplete="off" required=""/> <!></div></div></div> <div class="mt-3"><div class="flex justify-between items-center gap-3"><div> </div> <!></div> <div class="mt-1 text-xs text-gray-500"><!></div> <!></div> <div class="mt-3"><div class="flex justify-between items-center"><label for="event-webhook-all-events"> </label> <label class="flex items-center gap-1.5 text-xs text-gray-700 dark:text-gray-300"><input id="event-webhook-all-events" type="checkbox"/> <span> </span></label></div> <!></div> <div class="flex justify-between items-center pt-4 text-sm font-normal"><div><!></div> <button type="submit" class="px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full flex flex-row space-x-1 items-center"> </button></div></form></div></div>'),X4=u('<button class="flex size-6 items-center justify-center rounded-lg text-gray-400 transition-colors hover:bg-black/5 hover:text-gray-900 dark:text-gray-600 dark:hover:bg-white/5 dark:hover:text-white" type="button"><!></button>
36'),J4=u('<button class="self-center p-1 bg-transparent hover:bg-gray-50/70 dark:hover:bg-gray-850/50 rounded-lg transition" type="button"><!></button>'),Z4=u('<div class="flex w-full gap-2 items-center"><div><div class="outline-hidden w-full bg-transparent text-sm truncate"><span class="font-normal"> </span> <span class="text-xs text-gray-500"> </span></div></div> <div class="flex gap-1 items-center"><!> <!></div></div>'),Q4=u('<div class="text-xs text-gray-400 dark:text-gray-500"> </div>'),eI=u('<!> <!> <div class="mt-5"><div class="mb-2 text-xs text-gray-400 dark:text-gray-600"> </div> <div class="flex flex-col w-full justify-between gap-2.5"><div class="flex w-full items-start justify-between gap-4"><div class="min-w-0"><div class="text-xs text-gray-600 dark:text-gray-400"> </div> <div class="mt-1.5 text-[0.6875rem] text-gray-400 dark:text-gray-600"> </div></div> <!></div> <div class="flex flex-col gap-1"></div> <!></div></div>',1);function tI(He,_){vr(_,!1);const t=()=>ct(A,"$i18n",f),[f,n]=hr(),Ie=h(),X=h(),R=h(),I=h(),c=h(),x=h(),A=mr("i18n");let E=h([]),V=h([]),B=h(""),j=h(!1),w=h(!1),Te=h(null),Se=h("all"),Y=h([]),ee=h([]),ae=h(""),Pe=h([]),se=h([]),m=[],ce=h({}),De=h({}),Le,Ne=h({id:"",name:"",url:"",enabled:!0,events:["*"]});const Ce="rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500",we=W=>[...W].sort((Z,Ee)=>Z.id==="default"?-1:Ee.id==="default"?1:(Z.name||"").localeCompare(Ee.name||"")),oe=async()=>{const[W,Z,Ee]=await Promise.all([dm(localStorage.token),vm(localStorage.token),qu(localStorage.token,!0).catch(()=>[])]);s(V,[...(W==null?void 0:W.events)??[]].sort((Ge,p)=>Ge.event.localeCompare(p.event))),s(E,we(Z??[])),m=Ee??[]},de=()=>{s(Se,"all"),s(Y,[]),s(ee,[]),s(ae,""),s(Pe,[]),s(se,[]),s(ce,{}),s(De,{})},be=()=>{s(Te,null),s(j,!1),s(Ne,{id:"",name:"",url:"",enabled:!0,events:["*"]}),s(B,""),de()},Me=()=>{be(),s(j,!0)},qe=async W=>{var Z;if(s(Te,W),s(j,!0),s(Ne,{id:W.id,name:W.name,url:W.url,enabled:W.enabled,events:(Z=W.events)!=null&&Z.length?[...W.events]:["*"]}),s(B,""),W.targets===null||W.targets===void 0){de();return}s(Se,W.targets.length>0?"selected":"system"),s(Y,W.targets.filter(Ee=>Ee.type==="user").map(Ee=>Ee.id)),s(ee,W.targets.filter(Ee=>Ee.type==="group").map(Ee=>Ee.id)),await te()},Re=W=>{var Ee;const Z=(Ee=W.events)!=null&&Ee.length?W.events:["*"];return Z.includes("*")?t().t("All events"):Z.length<=2?Z.join(" + "):t().t("{{count}} filters",{count:Z.length})},ue=W=>{const Z=W.targets;if(Z==null)return t().t("All users and system events");if(Z.length===0)return t().t("System events only");const Ee=Z.filter($=>$.type==="user").length,Ge=Z.filter($=>$.type==="group").length,p=[];return Ee>0&&p.push(Ee===1?t().t("1 user"):t().t("{{count}} users",{count:Ee})),Ge>0&&p.push(Ge===1?t().t("1 group"):t().t("{{count}} groups",{count:Ge})),p.join(" + ")},xe=W=>{try{return new URL(W).host}catch{return W||t().t("Not configured")}},K=W=>{We(Ne,e(Ne).events=W?["*"]:[])},Oe=W=>{const Z=new Set(e(Ne).events.filter(Ee=>Ee!=="*"));Z.has(W)?Z.delete(W):Z.add(W),We(Ne,e(Ne).events=[...Z].sort())},O=W=>{We(Ne,e(Ne).events=e(Ne).events.filter(Z=>Z!==W)),e(Ne).events.length===0&&We(Ne,e(Ne).events=["*"])},ie=W=>W==="*"||e(Ie).includes(W)?!0:W.endsWith(".*")?e(Ie).some(Z=>Z.startsWith(W.slice(0,-1))):!1,M=()=>{const W=e(B).trim();if(W){if(!ie(W)){rt.error(t().t("Use a valid event name or pattern like user.*"));return}We(Ne,e(Ne).events=W==="*"?["*"]:[...new Set(e(Ne).events.filter(Z=>Z!=="*").concat(W))]),s(B,"")}},ve=()=>e(Se)==="all"?null:e(Se)==="system"?[]:[...e(Y).map(W=>({type:"user",id:W})),...e(ee).map(W=>({type:"group",id:W}))],te=async()=>{s(ce,{}),s(De,{}),await Promise.all(e(Y).map(async W=>{const Z=await lh(localStorage.token,W).catch(()=>null);Z&&s(ce,{...e(ce),[W]:Z})})),await Promise.all(e(ee).map(async W=>{const Z=m.find(Ee=>Ee.id===W)??await vb(localStorage.token,W).catch(()=>null);Z&&s(De,{...e(De),[W]:Z})}))},ge=async()=>{const W=e(ae).trim().toLowerCase();if(!W){s(Pe,[]),s(se,[]);return}s(se,m.filter(Ee=>{var Ge;return(Ge=Ee.name)==null?void 0:Ge.toLowerCase().includes(W)}).filter(Ee=>!e(ee).includes(Ee.id)).slice(0,5));const Z=await oh(localStorage.token,e(ae),"name","asc",1).catch(()=>null);s(Pe,((Z==null?void 0:Z.users)??[]).filter(Ee=>!e(Y).includes(Ee.id)).slice(0,5))},_e=()=>{clearTimeout(Le),Le=setTimeout(ge,250)},Ae=W=>{e(Y).includes(W.id)||(s(Y,[...e(Y),W.id]),s(ce,{...e(ce),[W.id]:W})),s(ae,""),s(Pe,[]),s(se,[])},U=W=>{e(ee).includes(W.id)||(s(ee,[...e(ee),W.id]),s(De,{...e(De),[W.id]:W})),s(ae,""),s(Pe,[]),s(se,[])},T=W=>{s(Y,e(Y).filter(Ee=>Ee!==W));const Z={...e(ce)};delete Z[W],s(ce,Z)},C=W=>{s(ee,e(ee).filter(Ee=>Ee!==W));const Z={...e(De)};delete Z[W],s(De,Z)},D=async()=>{const W={name:e(Ne).name||(e(Ne).id==="default"?"Default webhook":"Webhook"),url:e(Ne).url,enabled:e(Ne).enabled,events:e(Ne).events.length?e(Ne).events:["*"],targets:ve()};try{e(Te)?await cg(localStorage.token,e(Ne).id,W):await cm(localStorage.token,W),await oe(),be(),rt.success(t().t("Webhook saved"))}catch(Z){rt.error(typeof Z=="string"?Z:t().t("Failed to save webhook"))}},F=async(W=e(Te))=>
36{if(W)try{await um(localStorage.token,W.id),await oe(),be(),rt.success(t().t("Webhook deleted"))}catch(Z){rt.error(typeof Z=="string"?Z:t().t("Failed to delete webhook"))}},H=async(W,Z)=>{const Ee=W.enabled;s(E,e(E).map(Ge=>Ge.id===W.id?{...Ge,enabled:Z}:Ge));try{await cg(localStorage.token,W.id,{enabled:Z})}catch(Ge){s(E,e(E).map(p=>p.id===W.id?{...p,enabled:Ee}:p)),rt.error(typeof Ge=="string"?Ge:t().t("Failed to update webhook"))}};ea(oe),Al(()=>{clearTimeout(Le)}),Kt(()=>e(V),()=>{s(Ie,e(V).map(W=>W.event))}),Kt(()=>e(V),()=>{s(X,Object.fromEntries(e(V).map(W=>[W.event,W])))}),Kt(()=>e(B),()=>{s(R,e(B).trim().toLowerCase().replace(/\*$/,""))}),Kt(()=>(e(Ie),e(R)),()=>{s(I,e(Ie).filter(W=>!e(R)||W.includes(e(R))))}),Kt(()=>e(Ne),()=>{s(c,e(Ne).events.includes("*"))}),Kt(()=>e(Ne),()=>{s(x,e(Ne).events.filter(W=>W!=="*"&&!W.endsWith(".*")))}),la(),gr();var pe=eI(),ye=Qe(pe);Wa(ye,{size:"sm",className:"bg-white dark:bg-gray-900 rounded-4xl",get show(){return e(j)},set show(W){s(j,W)},children:(W,Z)=>{var Ee=q4(),Ge=a(Ee),p=a(Ge),$=a(p,!0);r(p);var S=o(p,2),L=a(S);wa(L,{className:"size-4"}),r(S),r(Ge);var fe=o(Ge,2),y=a(fe),b=a(y),N=a(b),z=a(N);k(z,1,"text-xs mb-0.5 text-gray-500");var Ue=a(z,!0);r(z);var Ye=o(z,2);vt(Ye),k(Ye,1,`w-full text-xs ${Ce}`),r(N),r(b);var Ve=o(b,2),lt=a(Ve),st=a(lt);k(st,1,"text-xs mb-0.5 text-gray-500");var Ke=a(st,!0);r(st);var Ze=o(st,2),ot=a(Ze);vt(ot),k(ot,1,`w-full text-xs ${Ce}`);var ut=o(ot,2);{let Ot=v(()=>(e(Ne),t(),l(()=>e(Ne).enabled?t().t("Enabled"):t().t("Disabled"))));Lt(ut,{get content(){return e(Ot)},children:(Ht,Xt)=>{Nt(Ht,{get state(){return e(Ne).enabled},set state(er){We(Ne,e(Ne).enabled=er)},$$legacy:!0})},$$slots:{default:!0}})}r(Ze),r(lt),r(Ve);var _t=o(Ve,2),nt=a(_t),et=a(nt);k(et,1,"text-xs text-gray-500");var gt=a(et,!0);r(et);var It=o(et,2);aa(It,{get value(){return e(Se)},set value(Ot){s(Se,Ot)},children:(Ot,Ht)=>{var Xt=D4(),er=Qe(Xt),xr=a(er,!0);r(er),er.value=er.__value="all";var Qt=o(er,2),fr=a(Qt,!0);r(Qt),Qt.value=Qt.__value="system";var wt=o(Qt,2),ht=a(wt,!0);r(wt),wt.value=wt.__value="selected",g((zt,ir,dr)=>{d(xr,zt),d(fr,ir),d(ht,dr)},[()=>(t(),l(()=>t().t("All users and system events"))),()=>(t(),l(()=>t().t("System events only"))),()=>(t(),l(()=>t().t("Specific users or groups")))]),i(Ot,Xt)},$$slots:{default:!0},$$legacy:!0}),r(nt);var Mt=o(nt,2),jt=a(Mt);{var Tt=Ot=>{var Ht=Mr();g(Xt=>d(Ht,Xt),[()=>(t(),l(()=>t().t("Receives matching events across the instance, including system/config events and events associated with any user.")))]),i(Ot,Ht)},yt=Ot=>{var Ht=Mr();g(Xt=>d(Ht,Xt),[()=>(t(),l(()=>t().t("Receives matching events that are not associated with a user.")))]),i(Ot,Ht)},$t=Ot=>{var Ht=Mr();g(Xt=>d(Ht,Xt),[()=>(t(),l(()=>t().t("Receives matching user-associated events only when the actor, user subject, or user data matches these users or current group members. System/config events are not sent.")))]),i(Ot,Ht)};G(jt,Ot=>{e(Se)==="all"?Ot(Tt):e(Se)==="system"?Ot(yt,1):Ot($t,-1)})}r(Mt);var rr=o(Mt,2);{var Rt=Ot=>{var Ht=F4(),Xt=a(Ht);{var er=zt=>{var ir=U4(),dr=a(ir);lr(dr,1,()=>e(ee),Ar,(Er,Bt)=>{var Ft=f_(),Zt=a(Ft),wr=a(Zt,!0);r(Zt);var kr=o(Zt,2),Hr=a(kr,!0);r(kr);var yr=o(kr,2),Sr=a(yr);wa(Sr,{className:"size-3",strokeWidth:"2"}),r(yr),r(Ft),g((Br,pr)=>{d(wr,(e(De),e(Bt),l(()=>{var sr;return((sr=e(De)[e(Bt)])==null?void 0:sr.name)??e(Bt)}))),d(Hr,Br),Be(yr,"aria-label",pr)},[()=>(t(),l(()=>t().t("group"))),()=>(t(),l(()=>t().t("Remove")))]),ke("click",yr,()=>C(e(Bt))),i(Er,Ft)});var Ct=o(dr,2);lr(Ct,1,()=>e(Y),Ar,(Er,Bt)=>{var Ft=f_(),Zt=a(Ft),wr=a(Zt,!0);r(Zt);var kr=o(Zt,2),Hr=a(kr,!0);r(kr);var yr=o(kr,2),Sr=a(yr);wa(Sr,{className:"size-3",strokeWidth:"2"}),r(yr),r(Ft),g((Br,pr)=>{d(wr,(e(ce),e(Bt),l(()=>{var sr;return((sr=e(ce)[e(Bt)])==null?void 0:sr.name)??e(Bt)}))),d(Hr,Br),Be(yr,"aria-label",pr)},[()=>(t(),l(()=>t().t("user"))),()=>(t(),l(()=>t().t("Remove")))]),ke("click",yr,()=>T(e(Bt))),i(Er,Ft)}),r(ir),i(zt,ir)};G(Xt,zt=>{e(Y),e(ee),l(()=>e(Y).length>0||e(ee).length>0)&&zt(er)})}var xr=o(Xt,2),Qt=a(xr);vt(Qt),k(Qt,1,`w-full text-xs ${Ce}`);var fr=o(Qt,2);{var wt=zt=>{var ir=H4(),dr=a(ir);lr(dr,1,()=>e(se),Ar,(Er,Bt)=>{var Ft=B4(),Zt=a(Ft),wr=a(Zt,!0);r(Zt);var kr=o(Zt,2),Hr=a(kr,!0);r(kr),r(Ft),g(yr=>{d(wr,(e(Bt),l(()=>e(Bt).name))),d(Hr,yr)},[()=>(t(),l(()=>t().t("Group")))]),ke("click",Ft,()=>U(e(Bt))),i(Er,Ft)});var Ct=o(dr,2);lr(Ct,1,()=>e(Pe),Ar,(Er,Bt)=>{var Ft=j4(),Zt=a(Ft),wr=a(Zt),kr=o(wr);{var Hr=Br=>{var pr=G4(),sr=a(pr);r(pr),g(()=>d(sr,`(${e(Bt),l(()=>e(Bt).email)??""})`)),i(Br,pr)};G(kr,Br=>{e(Bt),l(()=>e(Bt).email)&&Br(Hr)})}r(Zt);var yr=o(Zt,2),Sr=a(yr,!0);r(yr),r(Ft),g(Br=>{d(wr,`${e(Bt),l(()=>e(Bt).name)??""} `),d(Sr,Br)},[()=>(t(),l(()=>t().t("User")))]),ke("click",Ft,()=>Ae(e(Bt))),i(Er,Ft)}),r(ir),i(zt,ir)},ht=Qr(()=>(e(ae),e(se),e(Pe),l(()=>e(ae).trim()&&(e(se).length>0||e(Pe).length>0))));G(fr,zt=>{e(ht)&&zt(wt)})}r(xr),r(Ht),g(zt=>Be(Qt,"placeholder",zt),[()=>(t(),l(()=>t().t("Search users or groups")))]),dt(Qt,()=>e(ae),zt=>s(ae,zt)),ke("input",Qt,_e),i(Ot,Ht)};G(rr,Ot=>{e(Se)==="selected"&&Ot(Rt)})}r(_t);var Wt=o(_t,2),or=a(Wt),$r=a(or);k($r,1,"text-xs text-gray-500");var Et=a($r,!0);r($r);var St=o($r,2),Dt=a(St);vt(Dt);var ar=o(Dt,2),Tr=a(ar,!0);r(ar),r(St),r(or);var tr=o(or,2);{var ur=Ot=>{var Ht=Y4(),Xt=a(Ht);{var er=dr=>{var Ct=z4();lr(Ct,5,()=>(e(Ne),l(()=>e(Ne).events)),Ar,(Er,Bt)=>{var Ft=W4(),Zt=a(Ft),wr=a(Zt,!0);r(Zt);var kr=o(Zt,2),Hr=a(kr);wa(Hr,{className:"size-3",strokeWidth:"2"}),r(kr),r(Ft),g(yr=>{d(wr,e(Bt)),Be(kr,"aria-label",yr)},[()=>(t(),l(()=>t().t("Remove")))]),ke("click",kr,()=>O(e(Bt))),i(Er,Ft)}),r(Ct),i(dr,Ct)};G(Xt,dr=>{e(Ne),l(()=>e(Ne).events.length>0)&&dr(er)})}var xr=o(Xt,2),Qt=a(xr);vt(Qt),k(Qt,1,`w-full flex-1 text-xs font-mono ${Ce}`);var fr=o(Qt,2),wt=a(fr,!0);r(fr),r(xr);var ht=o(xr,2);lr(ht,5,()=>e(I),Ar,(dr,Ct)=>{var Er=K4(),Bt=a(Er);vt(Bt);var Ft=o(Bt,2),Zt=a(Ft),wr=a(Zt,!0);r(Zt);var kr=o(Zt,2),Hr=a(kr,!0);r(kr),r(Ft),r(Er),g(yr=>{vg(Bt,yr),d(wr,e(Ct)),d(Hr,(e(X),e(Ct),l(()=>{var Sr;return(Sr=e(X)[e(Ct)])==null?void 0:Sr.message})))},[()=>(e(x),e(Ct),l(()=>e(x).includes(e(Ct))))]),ke("change",Bt,()=>Oe(e(Ct))),i(dr,Er)}),r(ht);var zt=o(ht,2),ir=a(zt,!0);r(zt),r(Ht),g((dr,Ct,Er)=>{Be(Qt,"placeholder",dr),d(wt,Ct),d(ir,Er)},[()=>(t(),l(()=>t().t("Search or add pattern"))),()=>(t(),l(()=>t().t("Add"))),()=>(t(),l(()=>t().t("Event names may change as Open WebUI evolves. Use broad patterns like user.* for integrations that should continue across new related events.")))]),dt(Qt,()=>e(B),dr=>s(B,dr)),ke("keydown",Qt,dr=>{dr.key==="Enter"&&(dr.preventDefault(),M())}),ke("click",fr,M),i(Ot,Ht)};G(tr,Ot=>{e(c)||Ot(ur)})}r(Wt);var _r=o(Wt,2),br=a(_r),kt=a(br);{var jr=Ot=>{var Ht=V4(),Xt=a(Ht,!0);r(Ht),g(er=>d(Xt,er),[()=>(t(),l(()=>t().t("Delete")))]),ke("click",Ht,()=>{s(w,!0)}),i(Ot,Ht)};G(kt,Ot=>{e(Te)&&Ot(jr)})}r(br);var qt=o(br,2),At=a(qt,!0);r(qt),r(_r),r(y),r(fe),r(Ee),g((Ot,Ht,Xt,er,xr,Qt,fr,wt,ht)=>{d($,Ot),Be(S,"aria-label",Ht),d(Ue,Xt),Be(Ye,"placeholder",er),d(Ke,xr),d(gt,Qt),d(Et,fr),vg(Dt,e(c)),d(Tr,wt),d(At,ht)},[()=>(e(Te),t(),l(()=>
36e(Te)?t().t("Edit webhook"):t().t("Add webhook"))),()=>(t(),l(()=>t().t("Close"))),()=>(t(),l(()=>t().t("Name"))),()=>(t(),l(()=>t().t("Identity audit"))),()=>(t(),l(()=>t().t("URL"))),()=>(t(),l(()=>t().t("Send events for"))),()=>(t(),l(()=>t().t("Events"))),()=>(t(),l(()=>t().t("All events"))),()=>(t(),l(()=>t().t("Save")))]),ke("click",S,be),dt(Ye,()=>e(Ne).name,Ot=>We(Ne,e(Ne).name=Ot)),dt(ot,()=>e(Ne).url,Ot=>We(Ne,e(Ne).url=Ot)),ke("change",Dt,Ot=>K(Ot.currentTarget.checked)),ke("submit",y,ca(D)),i(W,Ee)},$$slots:{default:!0},$$legacy:!0});var he=o(ye,2);{let W=v(()=>(t(),l(()=>t().t("Are you sure you want to delete this webhook? This action cannot be undone.")))),Z=v(()=>(t(),l(()=>t().t("Delete"))));Ca(he,{get message(){return e(W)},get confirmLabel(){return e(Z)},get show(){return e(w)},set show(Ee){s(w,Ee)},$$events:{confirm:()=>{F()}},$$legacy:!0})}var q=o(he,2),P=a(q),Q=a(P,!0);r(P);var re=o(P,2),le=a(re),$e=a(le),ze=a($e),Fe=a(ze,!0);r(ze);var at=o(ze,2),tt=a(at,!0);r(at),r($e);var Je=o($e,2);{let W=v(()=>(t(),l(()=>t().t("Add webhook"))));Lt(Je,{get content(){return e(W)},children:(Z,Ee)=>{var Ge=X4(),p=a(Ge);Ya(p,{}),r(Ge),ke("click",Ge,Me),i(Z,Ge)},$$slots:{default:!0}})}r(le);var je=o(le,2);lr(je,5,()=>e(E),Ar,(W,Z)=>{var Ee=Z4(),Ge=a(Ee),p=a(Ge),$=a(p),S=a($,!0);r($);var L=o($,2),fe=a(L);r(L),r(p),r(Ge);var y=o(Ge,2),b=a(y);{let z=v(()=>(t(),l(()=>t().t("Configure"))));Lt(b,{get content(){return e(z)},children:(Ue,Ye)=>{var Ve=J4(),lt=a(Ve);jl(lt,{}),r(Ve),ke("click",Ve,()=>qe(e(Z))),i(Ue,Ve)},$$slots:{default:!0}})}var N=o(b,2);{let z=v(()=>(e(Z),t(),l(()=>e(Z).enabled?t().t("Enabled"):t().t("Disabled"))));Lt(N,{get content(){return e(z)},children:(Ue,Ye)=>{Nt(Ue,{get state(){return e(Z),l(()=>e(Z).enabled)},$$events:{change:Ve=>{H(e(Z),Ve.detail)}}})},$$slots:{default:!0}})}r(y),r(Ee),g((z,Ue,Ye,Ve)=>{k(Ge,1,`flex-1 min-w-0 flex gap-1.5 items-center ${e(Z),l(()=>e(Z).enabled?"":"opacity-50")??""}`),d(S,z),d(fe,`- ${Ue??""} - ${Ye??""} - ${Ve??""}`)},[()=>(e(Z),t(),l(()=>e(Z).id==="default"?t().t("Default webhook"):e(Z).name)),()=>(e(Z),l(()=>xe(e(Z).url))),()=>(e(Z),l(()=>Re(e(Z)))),()=>(e(Z),l(()=>ue(e(Z))))]),i(W,Ee)}),r(je);var ne=o(je,2);{var J=W=>{var Z=Q4(),Ee=a(Z,!0);r(Z),g(Ge=>d(Ee,Ge),[()=>(t(),l(()=>t().t("No event webhooks configured.")))]),i(W,Z)};G(ne,W=>{e(E),l(()=>e(E).length===0)&&W(J)})}r(re),r(q),g((W,Z,Ee)=>{d(Q,W),d(Fe,Z),d(tt,Ee)},[()=>(t(),l(()=>t().t("Events"))),()=>(t(),l(()=>t().t("Webhooks"))),()=>(t(),l(()=>t().t("Send product events as JSON to external services. Chat destinations receive readable messages.")))]),i(He,pe),cr(),n()}var rI=u('<label class="text-xs text-gray-600 dark:text-gray-400"> </label>'),aI=u('<p class="mt-0.5 text-[0.6875rem] text-gray-400 dark:text-gray-600"> </p>'),lI=u("<div><!> <div><!></div> <!></div>");function mt(He,_){let t=Xe(_,"label",8,""),f=Xe(_,"description",8,""),n=Xe(_,"forId",8,""),Ie=Xe(_,"className",8,"");var X=lI(),R=a(X);{var I=V=>{var B=rI(),j=a(B,!0);r(B),g(()=>{Be(B,"for",n()||void 0),d(j,t())}),i(V,B)};G(R,V=>{t()&&V(I)})}var c=o(R,2),x=a(c);Ka(x,_,"default",{},null),r(c);var A=o(c,2);{var E=V=>{var B=aI(),j=a(B,!0);r(B),g(()=>d(j,f())),i(V,B)};G(A,V=>{f()&&V(E)})}r(X),g(()=>{k(X,1,me(Ie())),k(c,1,me(t()?"mt-1":""))}),i(He,X)}var oI=u('<p class="-mt-1 text-[0.6875rem] text-gray-400 dark:text-gray-600"> </p>'),sI=u('<div><div><!></div> <div class="min-w-0"><!></div></div> <!>',1);function Jt(He,_){vr(_,!1);let t=Xe(_,"label",8,""),f=Xe(_,"description",8,""),n=Xe(_,"className",8,""),Ie=Xe(_,"labelClassName",8,"");const X=`admin-setting-${Ld()}`;gr();var R=sI(),I=Qe(R),c=a(I),x=a(c);Ka(x,_,"label",{},j=>{var w=Mr();g(()=>d(w,t())),i(j,w)}),r(c);var A=o(c,2),E=a(A);Ka(E,_,"default",{get labelId(){return X}},null),r(A),r(I);var V=o(I,2);{var B=j=>{var w=oI(),Te=a(w,!0);r(w),g(()=>d(Te,f())),i(j,w)};G(V,j=>{f()&&j(B)})}g(()=>{k(I,1,`flex items-center justify-between gap-4 ${n()??""}`),Be(c,"id",X),k(c,1,`min-w-0 text-xs text-gray-600 dark:text-gray-400 ${Ie()??""}`)}),i(He,R),cr()}var nI=u('<h3 class="mb-2 text-xs text-gray-400 dark:text-gray-600"> </h3>'),iI=u('<section><!> <div class="flex flex-col gap-2.5"><!></div></section>');
36function va(He,_){let t=Xe(_,"title",8,""),f=Xe(_,"first",8,!1),n=Xe(_,"className",8,"");var Ie=iI(),X=a(Ie);{var R=x=>{var A=nI(),E=a(A,!0);r(A),g(()=>d(E,t())),i(x,A)};G(X,x=>{t()&&x(R)})}var I=o(X,2),c=a(I);Ka(c,_,"default",{},null),r(I),r(Ie),g(()=>k(Ie,1,`${f()?"":"mt-5"} ${n()??""}`)),i(He,Ie)}var dI=u('<a target="_blank" class="text-gray-500 hover:text-gray-700 dark:text-gray-500 dark:hover:text-gray-300"> </a>'),vI=u('<button class="shrink-0 text-xs text-gray-500 transition-colors hover:text-gray-900 dark:text-gray-500 dark:hover:text-white" type="button"> </button>'),cI=u('<div class="mt-0.5 text-gray-500"></div>'),uI=u('<a href="https://docs.openwebui.com/enterprise" target="_blank" class="mt-0.5 block text-gray-500"><span class="capitalize text-black dark:text-white"> </span> registered to <span class="capitalize text-black dark:text-white"> </span> for <span class="text-black dark:text-white"> </span></a> <!>',1),gI=u('<a class="mt-0.5 block text-gray-400 transition-colors hover:text-gray-700 dark:text-gray-600 dark:hover:text-gray-300" href="https://docs.openwebui.com/enterprise" target="_blank"> </a>'),_I=u('<div class="flex items-start justify-between gap-4"><div class="min-w-0 text-xs"><div class="text-gray-600 dark:text-gray-400"> </div> <div class="mt-1 flex flex-wrap gap-x-1 text-gray-700 dark:text-gray-200"><!> <!></div> <button class="mt-0.5 text-xs text-gray-400 transition-colors hover:text-gray-700 dark:text-gray-600 dark:hover:text-gray-300" type="button"> </button></div> <!></div> <div class="text-xs"><div class="flex items-start justify-between gap-4"><div class="min-w-0"><div class="text-gray-600 dark:text-gray-400"> </div> <div class="mt-0.5 text-gray-400 dark:text-gray-600"> </div></div> <a class="shrink-0 text-gray-500 transition-colors hover:text-gray-900 dark:text-gray-500 dark:hover:text-white" href="https://docs.openwebui.com/" target="_blank"> </a></div> <div class="mt-1 flex flex-wrap gap-x-3 gap-y-1 text-gray-400 dark:text-gray-600"><a class="hover:text-gray-700 dark:hover:text-gray-300" href="https://discord.gg/5rJgQTnV4s" target="_blank">Discord</a> <a class="hover:text-gray-700 dark:hover:text-gray-300" href="https://twitter.com/OpenWebUI" target="_blank">X</a> <a class="hover:text-gray-700 dark:hover:text-gray-300" href="https://github.com/open-webui/open-webui" target="_blank">GitHub</a></div></div> <div class="text-xs"><div class="text-gray-600 dark:text-gray-400"> </div> <!></div>',1),fI=u('<input type="number" min="0"/>'),pI=u("<option> </option> <option> </option>",1),mI=u('<input type="text"/>'),hI=u("<!> <!> <!> <!> <!> <!> <!> <!> <!> <!> <!> <!> <!> <!> <!>",1),xI=u('<button class="shrink-0 text-[0.6875rem] text-gray-400 transition hover:text-gray-700 dark:text-gray-600 dark:hover:text-gray-300" type="button"> </button>'),bI=u('<div class="mt-0.5 space-y-2"><div class="flex items-center justify-between gap-4 py-0.5"><div class="text-[0.6875rem] text-gray-400 dark:text-gray-600"> </div> <!></div> <div class="max-h-[28rem] overflow-y-auto pb-2 pr-1 scrollbar-hover"><!></div></div>'),yI=u('<div class="shrink-0"><div class="flex items-center justify-between gap-4 py-0.5"><button class="min-w-0 flex-1 text-left text-xs text-gray-600 transition hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-100" type="button"><div> </div> <div class="mt-1.5 text-[0.6875rem] text-gray-400 dark:text-gray-600"> </div></button> <button class="shrink-0 text-[0.6875rem] text-gray-400 transition hover:text-gray-700 dark:text-gray-600 dark:hover:text-gray-300" type="button"> </button></div> <!></div> <div><div class="mb-2 flex w-full items-start justify-between gap-4"><div class="min-w-0"><div class="text-xs text-gray-600 dark:text-gray-400"> </div> <div class="mt-1.5 text-[0.6875rem] text-gray-400 dark:text-gray-600"> </div></div> <button class="flex size-6 items-center justify-center rounded-lg text-gray-400 transition-colors hover:bg-black/5 hover:text-gray-900 dark:text-gray-600 dark:hover:bg-white/5 dark:hover:text-white" type="button"><!></button></div> <!></div>',1),$I=u("<!> <!> <!> <!>",1),wI=u('<form class="flex h-full flex-col justify-between text-sm"><h2 class="text-sm font-medium text-gray-900 dark:text-white mb-4"> </h2> <div class="flex-1 min-h-0 overflow-y-auto scrollbar-hover pr-1.5"><!></div> <div class="flex justify-end pt-6 text-sm font-normal"><button class="px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full" t
36ype="submit"> </button></div></form>');function kI(He,_){vr(_,!1);const t=()=>ct(R,"$i18n",Ie),f=()=>ct(uu,"$_banners",Ie),n=()=>ct(_a,"$config",Ie),[Ie,X]=hr(),R=mr("i18n");let I=Xe(_,"saveHandler",8),c=h(!1),x=h({current:vl,latest:vl}),A=h(null),E=h({}),V=h(!1),B=h([]);const j="w-full h-7 rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500",w="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500",Te=async()=>{s(c,null),s(x,await Pu(localStorage.token).catch(oe=>({current:vl,latest:vl}))),console.info(e(x)),s(c,wd(e(x).latest,e(x).current)),console.info(e(c))},Se=async()=>{uu.set(await Om(localStorage.token,e(B)))},Y=oe=>{s(E,{...e(E),...oe})},ee=()=>{var de;const oe=(de=e(A))==null?void 0:de.DEFAULT_INTERFACE_SETTINGS;return oe&&typeof oe=="object"&&!Array.isArray(oe)?oe:{}},ae=async()=>{We(A,e(A).DEFAULT_INTERFACE_SETTINGS=e(E));const oe=await kf(localStorage.token,e(A));await Se(),await _a.set(await so()),oe?I()():rt.error(t().t("Failed to update settings"))};ea(async()=>{s(A,await wf(localStorage.token)),s(E,ee()),s(B,[...f()])}),gr();var Pe=wI(),se=a(Pe),m=a(se,!0);r(se);var ce=o(se,2),De=a(ce);{var Le=oe=>{var de=$I(),be=Qe(de);va(be,{first:!0,children:(ue,xe)=>{var K=_I(),Oe=Qe(K),O=a(Oe),ie=a(O),M=a(ie,!0);r(ie);var ve=o(ie,2),te=a(ve);Lt(te,{get content(){return _f},children:(tt,Je)=>{ll();var je=Mr();g(()=>d(je,`v${vl}`)),i(tt,je)},$$slots:{default:!0}});var ge=o(te,2);{var _e=tt=>{var Je=dI(),je=a(Je,!0);r(Je),g(ne=>{Be(Je,"href",`https://github.com/open-webui/open-webui/releases/tag/v${e(x),l(()=>e(x).latest)??""}`),d(je,ne)},[()=>(e(c),t(),e(x),l(()=>e(c)===null?t().t("Checking for updates..."):e(c)?`(v${e(x).latest} ${t().t("available!")})`:t().t("(latest)")))]),i(tt,Je)};G(ge,tt=>{n(),l(()=>{var Je,je;return(je=(Je=n())==null?void 0:Je.features)==null?void 0:je.enable_version_update_check})&&tt(_e)})}r(ve);var Ae=o(ve,2),U=a(Ae,!0);r(Ae),r(O);var T=o(O,2);{var C=tt=>{var Je=vI(),je=a(Je,!0);r(Je),g(ne=>d(je,ne),[()=>(t(),l(()=>t().t("Check for updates")))]),ke("click",Je,()=>{Te()}),i(tt,Je)};G(T,tt=>{n(),l(()=>{var Je,je;return(je=(Je=n())==null?void 0:Je.features)==null?void 0:je.enable_version_update_check})&&tt(C)})}r(Oe);var D=o(Oe,2),F=a(D),H=a(F),pe=a(H),ye=a(pe,!0);r(pe);var he=o(pe,2),q=a(he,!0);r(he),r(H);var P=o(H,2),Q=a(P,!0);r(P),r(F),ll(2),r(D);var re=o(D,2),le=a(re),$e=a(le,!0);r(le);var ze=o(le,2);{var Fe=tt=>{var Je=uI(),je=Qe(Je),ne=a(je),J=a(ne);r(ne);var W=o(ne,2),Z=a(W,!0);r(W);var Ee=o(W,2),Ge=a(Ee);r(Ee),r(je);var p=o(je,2);{var $=S=>{var L=cI();Vu(L,()=>(it(Bs),n(),l(()=>{var fe,y;return Bs.sanitize((y=(fe=n())==null?void 0:fe.license_metadata)==null?void 0:y.html)})),!0),r(L),i(S,L)};G(p,S=>{n(),l(()=>{var L,fe;return(fe=(L=n())==null?void 0:L.license_metadata)==null?void 0:fe.html})&&S($)})}g(()=>{d(J,`${n(),l(()=>{var S,L;return(L=(S=n())==null?void 0:S.license_metadata)==null?void 0:L.type})??""} license`),d(Z,(n(),l(()=>{var S,L;return(L=(S=n())==null?void 0:S.license_metadata)==null?void 0:L.organization_name}))),d(Ge,`${n(),l(()=>{var S,L;return((L=(S=n())==null?void 0:S.license_metadata)==null?void 0:L.seats)??"Unlimited"})??""} users.`)}),i(tt,Je)},at=tt=>{var Je=gI(),je=a(Je,!0);r(Je),g(ne=>d(je,ne),[()=>(t(),l(()=>t().t("Upgrade to a licensed plan for enhanced capabilities, including custom theming and branding, and dedicated support.")))]),i(tt,Je)};G(ze,tt=>{n(),l(()=>{var Je;return(Je=n())==null?void 0:Je.license_metadata})?tt(Fe):tt(at,-1)})}r(re),g((tt,Je,je,ne,J,W)=>{d(M,tt),d(U,Je),d(ye,je),d(q,ne),d(Q,J),d($e,W)},[()=>(t(),l(()=>t().t("Version"))),()=>(t(),l(()=>t().t("See what's new"))),()=>(t(),l(()=>t().t("Help"))),()=>(t(),l(()=>t().t("Discover how to use Open WebUI and seek support from the community."))),()=>(t(),l(()=>t().t("Documentation"))),()=>(t(),l(()=>t().t("License")))]),ke("click",Ae,()=>{Us.set(!0)}),i(ue,K)},$$slots:{default:!0}});var Me=o(be,2);{let ue=v(()=>(t(),l(()=>t().t("Features"))));va(Me,{get title(){return e(ue)},children:(xe,K)=>{var Oe=hI(),O=Qe(Oe);{let P=v(()=>(t(),l(()=>t().t("Community Sharing")))),Q=v(()=>(t(),l(()=>t().t("Allow users to share chats with the Open WebUI community."))));Jt(O,{get label(){return e(P)}
36,get description(){return e(Q)},children:Ir,$$slots:{default:(re,le)=>{const $e=v(()=>le.labelId);Nt(re,{get ariaLabelledbyId(){return e($e)},get state(){return e(A).ENABLE_COMMUNITY_SHARING},set state(ze){We(A,e(A).ENABLE_COMMUNITY_SHARING=ze)},$$legacy:!0})}}})}var ie=o(O,2);{let P=v(()=>(t(),l(()=>t().t("Message Rating")))),Q=v(()=>(t(),l(()=>t().t("Let users rate assistant responses."))));Jt(ie,{get label(){return e(P)},get description(){return e(Q)},children:Ir,$$slots:{default:(re,le)=>{const $e=v(()=>le.labelId);Nt(re,{get ariaLabelledbyId(){return e($e)},get state(){return e(A).ENABLE_MESSAGE_RATING},set state(ze){We(A,e(A).ENABLE_MESSAGE_RATING=ze)},$$legacy:!0})}}})}var M=o(ie,2);{let P=v(()=>(t(),l(()=>t().t("Folders")))),Q=v(()=>(t(),l(()=>t().t("Allow users to organize chats into folders."))));Jt(M,{get label(){return e(P)},get description(){return e(Q)},children:Ir,$$slots:{default:(re,le)=>{const $e=v(()=>le.labelId);Nt(re,{get ariaLabelledbyId(){return e($e)},get state(){return e(A).ENABLE_FOLDERS},set state(ze){We(A,e(A).ENABLE_FOLDERS=ze)},$$legacy:!0})}}})}var ve=o(M,2);{var te=P=>{{let Q=v(()=>(t(),l(()=>t().t("Folder Max File Count")))),re=v(()=>(t(),l(()=>t().t("Maximum number of files allowed per folder."))));mt(P,{get label(){return e(Q)},get description(){return e(re)},children:(le,$e)=>{var ze=fI();vt(ze),k(ze,1,me(j)),g(Fe=>Be(ze,"placeholder",Fe),[()=>(t(),l(()=>t().t("Leave empty for unlimited")))]),dt(ze,()=>e(A).FOLDER_MAX_FILE_COUNT,Fe=>We(A,e(A).FOLDER_MAX_FILE_COUNT=Fe)),i(le,ze)},$$slots:{default:!0}})}};G(ve,P=>{e(A),l(()=>e(A).ENABLE_FOLDERS)&&P(te)})}var ge=o(ve,2);{let P=v(()=>(t(),l(()=>t().t("Memories")))),Q=v(()=>(t(),l(()=>t().t("Allow users to save memories for more personalized responses."))));Jt(ge,{get label(){return e(P)},get description(){return e(Q)},children:Ir,$$slots:{default:(re,le)=>{const $e=v(()=>le.labelId);Nt(re,{get ariaLabelledbyId(){return e($e)},get state(){return e(A).ENABLE_MEMORIES},set state(ze){We(A,e(A).ENABLE_MEMORIES=ze)},$$legacy:!0})}}})}var _e=o(ge,2);{var Ae=P=>{{let Q=v(()=>(t(),l(()=>t().t("Memory System Context")))),re=v(()=>(t(),l(()=>t().t("Include saved memories in the system context."))));Jt(P,{get label(){return e(Q)},get description(){return e(re)},labelClassName:"text-gray-500 dark:text-gray-500",children:Ir,$$slots:{default:(le,$e)=>{const ze=v(()=>$e.labelId);Nt(le,{get ariaLabelledbyId(){return e(ze)},get state(){return e(A).ENABLE_MEMORY_SYSTEM_CONTEXT},set state(Fe){We(A,e(A).ENABLE_MEMORY_SYSTEM_CONTEXT=Fe)},$$legacy:!0})}}})}};G(_e,P=>{e(A),l(()=>e(A).ENABLE_MEMORIES)&&P(Ae)})}var U=o(_e,2);{let P=v(()=>(t(),l(()=>t().t("Notes")))),Q=v(()=>(t(),l(()=>t().t("Allow users to create and manage notes."))));Jt(U,{get label(){return e(P)},get description(){return e(Q)},children:Ir,$$slots:{default:(re,le)=>{const $e=v(()=>le.labelId);Nt(re,{get ariaLabelledbyId(){return e($e)},get state(){return e(A).ENABLE_NOTES},set state(ze){We(A,e(A).ENABLE_NOTES=ze)},$$legacy:!0})}}})}var T=o(U,2);{let P=v(()=>(t(),l(()=>t().t("Channels")))),Q=v(()=>(t(),l(()=>t().t("Allow users to use channels for shared conversations."))));Jt(T,{get label(){return e(P)},get description(){return e(Q)},children:Ir,$$slots:{default:(re,le)=>{const $e=v(()=>le.labelId);Nt(re,{get ariaLabelledbyId(){return e($e)},get state(){return e(A).ENABLE_CHANNELS},set state(ze){We(A,e(A).ENABLE_CHANNELS=ze)},$$legacy:!0})}}})}var C=o(T,2);{var D=P=>{{let Q=v(()=>(t(),l(()=>t().t("Model Response Mode")))),re=v(()=>(t(),l(()=>t().t("Choose where model responses to root-level channel mentions are posted."))));Jt(P,{get label(){return e(Q)},get description(){return e(re)},labelClassName:"text-gray-500 dark:text-gray-500",children:Ir,$$slots:{default:(le,$e)=>{const ze=v(()=>$e.labelId);aa(le,{get"aria-labelledby"(){return e(ze)},get value(){return e(A).CHANNEL_MODEL_RESPONSE_MODE},set value(Fe){We(A,e(A).CHANNEL_MODEL_RESPONSE_MODE=Fe)},children:(Fe,at)=>{var tt=pI(),Je=Qe(tt),je=a(Je,!0);r(Je),Je.value=Je.__value="thread";var ne=o(Je,2),J=a(ne,!0);r(ne),ne.value=ne.__value="channel",g((W,Z)=>{d(je,W),d(J,Z)},[()=>(t(),l(()=>t().t("Thread"))),()=>(t(),l(()=>t().t("Channel")))]),i(Fe,tt)},$$slots:{default:!0},$$legacy:!0})}}})}};G(C,P=>{e(A),l(()=>e(A).ENABLE_CHANNELS)&&P(D)})}var F=o(C,2);{let P=v(()=>(t(),l(()=>t().t("Calendar")))),Q=v(()=>(t(),l(()=>t().t("Allow users to access calendar features."))));Jt(F,{get label(){return e(P)}
36,get description(){return e(Q)},children:Ir,$$slots:{default:(re,le)=>{const $e=v(()=>le.labelId);Nt(re,{get ariaLabelledbyId(){return e($e)},get state(){return e(A).ENABLE_CALENDAR},set state(ze){We(A,e(A).ENABLE_CALENDAR=ze)},$$legacy:!0})}}})}var H=o(F,2);{let P=v(()=>(t(),l(()=>t().t("Automations")))),Q=v(()=>(t(),l(()=>t().t("Allow users to create and run automations."))));Jt(H,{get label(){return e(P)},get description(){return e(Q)},children:Ir,$$slots:{default:(re,le)=>{const $e=v(()=>le.labelId);Nt(re,{get ariaLabelledbyId(){return e($e)},get state(){return e(A).ENABLE_AUTOMATIONS},set state(ze){We(A,e(A).ENABLE_AUTOMATIONS=ze)},$$legacy:!0})}}})}var pe=o(H,2);{let P=v(()=>(t(),l(()=>t().t("User Webhooks")))),Q=v(()=>(t(),l(()=>t().t("Allow users to configure webhooks from their account."))));Jt(pe,{get label(){return e(P)},get description(){return e(Q)},children:Ir,$$slots:{default:(re,le)=>{const $e=v(()=>le.labelId);Nt(re,{get ariaLabelledbyId(){return e($e)},get state(){return e(A).ENABLE_USER_WEBHOOKS},set state(ze){We(A,e(A).ENABLE_USER_WEBHOOKS=ze)},$$legacy:!0})}}})}var ye=o(pe,2);{let P=v(()=>(t(),l(()=>t().t("User Status")))),Q=v(()=>(t(),l(()=>t().t("Show user status information in the app."))));Jt(ye,{get label(){return e(P)},get description(){return e(Q)},children:Ir,$$slots:{default:(re,le)=>{const $e=v(()=>le.labelId);Nt(re,{get ariaLabelledbyId(){return e($e)},get state(){return e(A).ENABLE_USER_STATUS},set state(ze){We(A,e(A).ENABLE_USER_STATUS=ze)},$$legacy:!0})}}})}var he=o(ye,2);{let P=v(()=>(t(),l(()=>t().t("Response Watermark")))),Q=v(()=>(t(),l(()=>t().t("Append a watermark to assistant responses when configured."))));mt(he,{get label(){return e(P)},get description(){return e(Q)},children:(re,le)=>{{let $e=v(()=>(t(),l(()=>t().t("Enter a watermark for the response. Leave empty for none."))));ma(re,{className:w,get placeholder(){return e($e)},get value(){return e(A).RESPONSE_WATERMARK},set value(ze){We(A,e(A).RESPONSE_WATERMARK=ze)},$$legacy:!0})}},$$slots:{default:!0}})}var q=o(he,2);{let P=v(()=>(t(),l(()=>t().t("WebUI URL")))),Q=v(()=>(t(),l(()=>t().t("Enter the public URL of your WebUI. This URL will be used to generate links in the notifications."))));mt(q,{get label(){return e(P)},get description(){return e(Q)},children:(re,le)=>{var $e=mI();vt($e),k($e,1,me(j)),Be($e,"placeholder",'e.g.) "http://localhost:3000"'),dt($e,()=>e(A).WEBUI_URL,ze=>We(A,e(A).WEBUI_URL=ze)),i(re,$e)},$$slots:{default:!0}})}i(xe,Oe)},$$slots:{default:!0}})}var qe=o(Me,2);tI(qe,{});var Re=o(qe,2);{let ue=v(()=>(t(),l(()=>t().t("UI"))));va(Re,{get title(){return e(ue)},children:(xe,K)=>{var Oe=yI(),O=Qe(Oe),ie=a(O),M=a(ie),ve=a(M),te=a(ve,!0);r(ve);var ge=o(ve,2),_e=a(ge,!0);r(ge),r(M);var Ae=o(M,2),U=a(Ae,!0);r(Ae),r(ie);var T=o(ie,2);{var C=le=>{var $e=bI(),ze=a($e),Fe=a(ze),at=a(Fe);r(Fe);var tt=o(Fe,2);{var Je=W=>{var Z=xI(),Ee=a(Z,!0);r(Z),g(Ge=>d(Ee,Ge),[()=>(t(),l(()=>t().t("Clear")))]),ke("click",Z,()=>{s(E,{})}),i(W,Z)},je=Qr(()=>(e(E),l(()=>Object.keys(e(E)).length>0)));G(tt,W=>{e(je)&&W(Je)})}r(ze);var ne=o(ze,2),J=a(ne);Vf(J,{get settingsValue(){return e(E)},saveSettings:Y}),r(ne),r($e),g((W,Z)=>d(at,`${W??""} 37 ${Z??""}`),[()=>(e(E),l(()=>Object.keys(e(E)).length)),()=>(t(),l(()=>t().t("settings configured")))]),i(le,$e)};G(T,le=>{e(V)&&le(C)})}r(O);var D=o(O,2),F=a(D),H=a(F),pe=a(H),ye=a(pe,!0);r(pe);var he=o(pe,2),q=a(he,!0);r(he),r(H);var P=o(H,2),Q=a(P);Ya(Q,{}),r(P),r(F);var re=o(F,2);R4(re,{get banners(){return e(B)},set banners(le){s(B,le)},$$legacy:!0}),r(D),g((le,$e,ze,Fe,at,tt)=>{d(te,le),d(_e,$e),d(U,ze),d(ye,Fe),d(q,at),Be(P,"aria-label",tt)},[()=>(t(),l(()=>t().t("Default Interface Settings"))),()=>(t(),l(()=>t().t("Set system-wide interface defaults for every account. Personal settings override these defaults."))),()=>(e(V),t(),l(()=>e(V)?t().t("Close"):t().t("Configure"))),()=>(t(),l(()=>t().t("Banners"))),()=>(t(),l(()=>t().t("Create announcements shown to users in the app."))),()=>(t(),l(()=>t().t("Add banner")))]),ke("click",M,()=>{s(V,!e(V))}),ke("click",Ae,()=>{s(V,!e(V))}),ke("click",P,()=>{var le;(e(B).length===0||((le=e(B)[e(B).length-1])==null?void 0:le.content)!=="")&&s(B,[...e(B),{id:Ld(),type:"",title:"",content:"",dismissible:!0,timestamp:Math.floor(Date.now()/1e3)}])}),i(xe,Oe)},$$slots:{default:!0}})}i(oe,de)};G(De,oe=>{e(A)!==null&&oe(Le)})}r(ce);var Ne=o(ce,2),Ce=a(Ne),we=a(Ce,!0);r(Ce),r(Ne),r(Pe),g((oe,de)=>{d(m,oe),d(we,de)},[()=>(t(),l(()=>t().t("General"))),()=>(t(),l(()=>t().t("Save")))]),ke("submit",Pe,ca(async()=>{ae()})),i(He,Pe),cr(),X()}var EI=u("<option> </option> <option> </option> <option> </option>",1),AI=u("<option> </option>"),II=u("<option>
37None</option> <!>",1),SI=u('<input type="text"/> <a href="https://docs.openwebui.com/reference/api-endpoints" target="_blank" class="mt-1 block text-[0.6875rem] text-gray-400 underline hover:text-gray-700 dark:text-gray-600 dark:hover:text-gray-300"> </a>',1),cd=u("<!> <!>",1),NI=u('<a href="https://docs.openwebui.com/reference/env-configuration#jwt_expires_in" target="_blank" class="mt-1 block rounded-lg bg-yellow-500/10 px-2 py-1.5 text-[0.6875rem] text-yellow-700 underline dark:text-yellow-200"> </a>'),PI=u('<input type="text"/> <!>',1),CI=u("<!> <!> <!> <!> <!> <!>",1),TI=u('<input type="email"/>'),LI=u("<!> <!> <!> <!>",1),Cs=u('<input required=""/>'),OI=u('<input type="number"/>'),Yo=u("<input/>"),MI=u('<input/> <a class="mt-1 block text-[0.6875rem] text-gray-400 underline hover:text-gray-700 dark:text-gray-600 dark:hover:text-gray-300" href="https://ldap.com/ldap-filters/" target="_blank"> </a>',1),RI=u("<!> <!> <!>",1),DI=u('<input placeholder="memberOf"/>'),UI=u('<div class="grid grid-cols-1 gap-x-3 gap-y-2.5 sm:grid-cols-2"><!></div> <div class="grid grid-cols-1 gap-x-3 gap-y-2.5 sm:grid-cols-2"><!> <!></div> <div class="grid grid-cols-1 gap-x-3 gap-y-2.5 sm:grid-cols-2"><!> <!></div> <div class="grid grid-cols-1 gap-x-3 gap-y-2.5 sm:grid-cols-2"><!> <!></div> <!> <!> <!> <!> <!> <!>',1),BI=u('<div class="rounded-lg bg-yellow-500/10 px-2 py-1.5 text-[0.6875rem] text-yellow-700 dark:text-yellow-200"> </div>'),GI=u('<input placeholder="SSO"/>'),jI=u('<input placeholder="https://accounts.google.com/.well-known/openid-configuration"/>'),HI=u('<input placeholder="openid email profile"/>'),FI=u('<input placeholder="email"/>'),WI=u('<input placeholder="name"/>'),zI=u('<input placeholder="picture"/>'),KI=u('<input placeholder="sub"/>'),YI=u('<input placeholder="* (all domains)"/>'),VI=u('<input placeholder="roles"/>'),qI=u('<input placeholder="admin"/>'),XI=u('<input placeholder="*"/>'),JI=u('<div class="grid grid-cols-1 gap-x-3 gap-y-2.5 sm:grid-cols-2"><!> <!></div> <!>',1),ZI=u('<input placeholder="groups"/>'),QI=u('<!> <div class="grid grid-cols-1 gap-x-3 gap-y-2.5 sm:grid-cols-2"><!> <!></div>',1),eS=u('<div class="grid grid-cols-1 gap-x-3 gap-y-2.5 sm:grid-cols-2"><!> <!></div> <div class="grid grid-cols-1 gap-x-3 gap-y-2.5 sm:grid-cols-2"><!> <!></div> <div class="grid grid-cols-1 gap-x-3 gap-y-2.5 sm:grid-cols-2"><!> <!></div> <div class="grid grid-cols-1 gap-x-3 gap-y-2.5 sm:grid-cols-2"><!> <!></div> <div class="grid grid-cols-1 gap-x-3 gap-y-2.5 sm:grid-cols-2"><!> <!></div> <!> <!> <!> <!> <!> <!> <!> <!> <!> <!> <!>',1),tS=u('<!> <fieldset class="flex min-w-0 flex-col gap-2.5 disabled:cursor-not-allowed disabled:opacity-75"><!> <!></fieldset>',1),rS=u('<form class="flex h-full flex-col justify-between text-sm"><h2 class="text-sm font-medium text-gray-900 dark:text-white mb-4"> </h2> <div class="flex-1 min-h-0 overflow-y-auto scrollbar-hover pr-1.5"><!> <!> <!></div> <div class="flex justify-end pt-6 text-sm font-normal"><button class="px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full" type="submit"> </button></div></form>');function aS(He,_){vr(_,!1);const t=()=>ct(X,"$i18n",f),[f,n]=hr(),Ie=h(),X=mr("i18n");let R=h(null),I=h([]),c=h(!1),x=h({label:"",host:"",port:null,attribute_for_mail:"mail",attribute_for_username:"uid",app_dn:"",app_dn_password:"",search_base:"",search_filters:"",use_tls:!1,validate_cert:!1,certificate_path:"",ciphers:"",enable_group_management:!1,enable_group_creation:!1,attribute_for_groups:"memberOf"}),A=h(null);const E="w-full h-7 rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500",V="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500",B=async()=>{var oe;return await Jh(localStorage.token,e(c)),e(c)?(e(x).enable_group_management&&!((oe=e(x).attribute_for_groups)!=null&&oe.trim())&&We(x,e(x).attribute_for_groups="memberOf"),!!await Zh(localStorage.token,e(x)).catch(de=>(rt.error(`${de}`),null))):!0},j=async()=>
37{if(!e(A)||!e(Ie))return!0;const we=await Qh(localStorage.token,e(A)).catch(oe=>(rt.error(`${oe}`),null));return we&&s(A,we),!!we},w=async()=>e(R)?!!await kf(localStorage.token,e(R)).catch(oe=>(rt.error(`${oe}`),null)):!0,Te=async()=>{const we=await w(),oe=await B(),de=await j();we&&oe&&de&&(rt.success(t().t("Settings saved successfully!")),await _a.set(await so()))};ea(async()=>{await Promise.all([(async()=>{s(R,await wf(localStorage.token))})(),(async()=>{s(I,await qu(localStorage.token))})(),(async()=>{s(x,{...e(x),...await Vh(localStorage.token)})})(),(async()=>{s(A,await qh(localStorage.token).catch(()=>null))})()]);const we=await Xh(localStorage.token);s(c,we.ENABLE_LDAP)}),Kt(()=>e(A),()=>{var we;s(Ie,((we=e(A))==null?void 0:we.ENABLE_OAUTH_PERSISTENT_CONFIG)??!0)}),la(),gr();var Se=rS(),Y=a(Se),ee=a(Y,!0);r(Y);var ae=o(Y,2),Pe=a(ae);{var se=we=>{var oe=cd(),de=Qe(oe);{let Me=v(()=>(t(),l(()=>t().t("User Access"))));va(de,{get title(){return e(Me)},first:!0,children:(qe,Re)=>{var ue=CI(),xe=Qe(ue);{let te=v(()=>(t(),l(()=>t().t("Default User Role")))),ge=v(()=>(t(),l(()=>t().t("Role assigned to new users when they create an account."))));Jt(xe,{get label(){return e(te)},get description(){return e(ge)},children:(_e,Ae)=>{{let U=v(()=>(t(),l(()=>t().t("Select a role"))));aa(_e,{get placeholder(){return e(U)},get value(){return e(R).DEFAULT_USER_ROLE},set value(T){We(R,e(R).DEFAULT_USER_ROLE=T)},children:(T,C)=>{var D=EI(),F=Qe(D),H=a(F,!0);r(F),F.value=F.__value="pending";var pe=o(F,2),ye=a(pe,!0);r(pe),pe.value=pe.__value="user";var he=o(pe,2),q=a(he,!0);r(he),he.value=he.__value="admin",g((P,Q,re)=>{d(H,P),d(ye,Q),d(q,re)},[()=>(t(),l(()=>t().t("pending"))),()=>(t(),l(()=>t().t("user"))),()=>(t(),l(()=>t().t("admin")))]),i(T,D)},$$slots:{default:!0},$$legacy:!0})}},$$slots:{default:!0}})}var K=o(xe,2);{let te=v(()=>(t(),l(()=>t().t("Default Group")))),ge=v(()=>(t(),l(()=>t().t("Group assigned to new users by default."))));Jt(K,{get label(){return e(te)},get description(){return e(ge)},children:(_e,Ae)=>{{let U=v(()=>(t(),l(()=>t().t("Select a group"))));aa(_e,{get placeholder(){return e(U)},get value(){return e(R).DEFAULT_GROUP_ID},set value(T){We(R,e(R).DEFAULT_GROUP_ID=T)},children:(T,C)=>{var D=II(),F=Qe(D);F.value=F.__value="";var H=o(F,2);lr(H,1,()=>e(I),Ar,(pe,ye)=>{var he=AI(),q=a(he,!0);r(he);var P={};g(()=>{d(q,(e(ye),l(()=>e(ye).name))),P!==(P=(e(ye),l(()=>e(ye).id)))&&(he.value=(he.__value=(e(ye),l(()=>e(ye).id)))??"")}),i(pe,he)}),i(T,D)},$$slots:{default:!0},$$legacy:!0})}},$$slots:{default:!0}})}var Oe=o(K,2);{let te=v(()=>(t(),l(()=>t().t("New Sign Ups")))),ge=v(()=>(t(),l(()=>t().t("Allow new users to create accounts."))));Jt(Oe,{get label(){return e(te)},get description(){return e(ge)},children:Ir,$$slots:{default:(_e,Ae)=>{const U=v(()=>Ae.labelId);Nt(_e,{get ariaLabelledbyId(){return e(U)},get state(){return e(R).ENABLE_SIGNUP},set state(T){We(R,e(R).ENABLE_SIGNUP=T)},$$legacy:!0})}}})}var O=o(Oe,2);{let te=v(()=>(t(),l(()=>t().t("API Keys")))),ge=v(()=>(t(),l(()=>t().t("Allow users to create API keys for programmatic access."))));Jt(O,{get label(){return e(te)},get description(){return e(ge)},children:Ir,$$slots:{default:(_e,Ae)=>{const U=v(()=>Ae.labelId);Nt(_e,{get ariaLabelledbyId(){return e(U)},get state(){return e(R).ENABLE_API_KEYS},set state(T){We(R,e(R).ENABLE_API_KEYS=T)},$$legacy:!0})}}})}var ie=o(O,2);{var M=te=>{var ge=cd(),_e=Qe(ge);{let T=v(()=>(t(),l(()=>t().t("API Key Endpoint Restrictions")))),C=v(()=>(t(),l(()=>t().t("Limit API keys to configured endpoints."))));Jt(_e,{get label(){return e(T)},get description(){return e(C)},children:Ir,$$slots:{default:(D,F)=>{const H=v(()=>F.labelId);Nt(D,{get ariaLabelledbyId(){return e(H)},get state(){return e(R).ENABLE_API_KEYS_ENDPOINT_RESTRICTIONS},set state(pe){We(R,e(R).ENABLE_API_KEYS_ENDPOINT_RESTRICTIONS=pe)},$$legacy:!0})}}})}var Ae=o(_e,2);{var U=T=>{{let C=v(()=>(t(),l(()=>t().t("Allowed Endpoints")))),D=v(()=>(t(),l(()=>t().t("Comma-separated API paths that API keys can access."))));mt(T,{get label(){return e(C)},get description(){return e(D)},children:(F,H)=>{var pe=SI(),ye=Qe(pe);vt(ye),k(ye,1,me(E)),Be(ye,"placeholder","e.g.) /api/v1/messages, /api/v1/channels");var he=o(ye,2),q=a(he,!0);r(he),g(P=>d(q,P),[()=>(t(),l(()=>t().t("To learn more about available endpoints, visit our documentation.")))]),dt(ye,()=>e(R).API_KEYS_ALLOWED_ENDPOINTS,P=>We(R,e(R).API_KEYS_ALLOWED_ENDPOINTS=P)),i(F,pe)},$$slots:{default:!0}})}};G(Ae,T=>{e(R),l(()=>{var C;return(C=e(R))==null?void 0:C.ENABLE_API_KEYS_ENDPOINT_RESTRICTIONS})&&T(U)})}i(te,ge)};G(ie,te=>{e(R),l(()=>{var ge;return(ge=e(R))==null?void 0:ge.ENABLE_API_KEYS})&&te(M)})}var ve=o(ie,2);{let te=v(()=>(t(),l(()=>t().t("JWT Expiration")))),ge=v(()=>(t(),l(()=>t().t("Valid time units: 's', 'm', 'h', 'd', 'w' or '-1' for no expiration."))));mt(ve,{get label(){return e(te)},get description(){return e(ge)},children:(_e,Ae)=>{var U=PI(),T=Qe(U);vt(T),k(T,1,me(E)),Be(T,"placeholder",'e.g.) "30m","1h", "10d". ');var C=o(T,2);{var D=F=>{var H=NI(),pe=a(H,!0);r(H),g(ye=>d(pe,ye),[()=>(t(),l(()=>t().t("No expiration can pose security risks.")))]),i(F,H)};G(C,F=>{e(R),l(()=>e(R).JWT_EXPIRES_IN==="-1")&&F(D)})}dt(T,()=>e(R).JWT_EXPIRES_IN,F=>We(R,e(R).JWT_EXPIRES_IN=F)),i(_e,U)},$$slots:{default:!0}})}i(qe,ue)},$$slots:{default:!0}})}var be=o(de,2);{let Me=v(()=>(t(),l(()=>t().t("Pending Accounts"))));va(be,{get title(){return e(Me)},children:(qe,Re)=>{var ue=LI(),xe=Qe(ue);{let M=v(()=>(t(),l(()=>t().t("Admin Details")))),ve=v(()=>(t(),l(()=>t().t("Show admin contact details while an account waits for approval."))));Jt(xe,{get label(){return e(M)},get description(){return e(ve)},children:Ir,$$slots:{default:(te,ge)=>{const _e=v(()=>ge.labelId);Nt(te,{get ariaLabelledbyId(){return e(_e)},get state(){return e(R).SHOW_ADMIN_DETAILS},set state(Ae){We(R,e(R).SHOW_ADMIN_DETAILS=Ae)},$$legacy:!0})}}})}var K=o(xe,2);{var Oe=M=>{{let ve=v(()=>(t(),l(()=>t().t("Admin Contact Email")))),te=v(()=>(t(),l(()=>t().t("Email shown in the pending account overlay."))));mt(M,{get label(){return e(ve)},get description(){return e(te)},children:(ge,_e)=>{var Ae=TI();vt(Ae),k(Ae,1,me(E)),g(U=>Be(Ae,"placeholder",U),[()=>(t(),l(()=>t().t("Leave empty to use first admin user")))]),dt(Ae,()=>e(R).ADMIN_EMAIL,U=>We(R,e(R).ADMIN_EMAIL=U)),i(ge,Ae)},$$slots:{default:!0}})}};G(K,M=>{e(R),l(()=>e(R).SHOW_ADMIN_DETAILS)&&M(Oe)})}var O=o(K,2);{let M=v(()=>(t(),l(()=>t().t("Pending User Overlay Title")))),ve=v(()=>(t(),l(()=>t().t("Custom title shown while an account waits for approval."))));mt(O,{get label(){return e(M)},get description(){return e(ve)},children:(te,ge)=>{{let _e=v(()=>(t(),l(()=>t().t("Enter a title for the pending user info overlay. Leave empty for default."))));ma(te,{className:V,get placeholder(){return e(_e)},get value(){return e(R).PENDING_USER_OVERLAY_TITLE},set value(Ae){We(R,e(R).PENDING_USER_OVERLAY_TITLE=Ae)},$$legacy:!0})}},$$slots:{default:!0}})}var ie=o(O,2);{let M=v(()=>(t(),l(()=>t().t("Pending User Overlay Content")))),ve=v(()=>(t(),l(()=>t().t("Custom message shown while an account waits for approval."))));mt(ie,{get label(){return e(M)},get description(){return e(ve)},children:(te,ge)=>{{let _e=v(()=>(t(),l(()=>t().t("Enter content for the pending user info overlay. Leave empty for default."))));ma(te,{className:V,get placeholder(){return e(_e)},get value(){return e(R).PENDING_USER_OVERLAY_CONTENT},set value(Ae){We(R,e(R).PENDING_USER_OVERLAY_CONTENT=Ae)},$$legacy:!0})}},$$slots:{default:!0}})}i(qe,ue)},$$slots:{default:!0}})}i(we,oe)};G(Pe,we=>{e(R)!==null&&we(se)})}var m=o(Pe,2);{let we=v(()=>(t(),l(()=>t().t("LDAP"))));va(m,{get title(){return e(we)},children:(oe,de)=>{var be=cd(),Me=Qe(be);{let ue=v(()=>(t(),l(()=>t().t("LDAP")))),xe=v(()=>(t(),l(()=>t().t("Allow users to authenticate with an LDAP directory."))));Jt(Me,{get label(){return e(ue)},get description(){return e(xe)},children:Ir,$$slots:{default:(K,Oe)=>{const O=v(()=>Oe.labelId);Nt(K,{get ariaLabelledbyId(){return e(O)},get state(){return e(c)},set state(ie){s(c,ie)},$$legacy:!0})}}})}var qe=o(Me,2);{var Re=ue=>{var xe=UI(),K=Qe(xe),Oe=a(K);{let q=v(()=>(t(),l(()=>t().t("Label")))),P=v(()=>(t(),l(()=>t().t("Display name for this LDAP connection."))));mt(Oe,{get label(){return e(q)},get description(){return e(P)}
37,children:(Q,re)=>{var le=Cs();vt(le),k(le,1,me(E)),g($e=>Be(le,"placeholder",$e),[()=>(t(),l(()=>t().t("Enter server label")))]),dt(le,()=>e(x).label,$e=>We(x,e(x).label=$e)),i(Q,le)},$$slots:{default:!0}})}r(K);var O=o(K,2),ie=a(O);{let q=v(()=>(t(),l(()=>t().t("Host")))),P=v(()=>(t(),l(()=>t().t("LDAP server hostname or IP address."))));mt(ie,{get label(){return e(q)},get description(){return e(P)},children:(Q,re)=>{var le=Cs();vt(le),k(le,1,me(E)),g($e=>Be(le,"placeholder",$e),[()=>(t(),l(()=>t().t("Enter server host")))]),dt(le,()=>e(x).host,$e=>We(x,e(x).host=$e)),i(Q,le)},$$slots:{default:!0}})}var M=o(ie,2);{let q=v(()=>(t(),l(()=>t().t("Port")))),P=v(()=>(t(),l(()=>t().t("LDAP server port."))));mt(M,{get label(){return e(q)},get description(){return e(P)},children:(Q,re)=>{{let le=v(()=>(t(),l(()=>t().t("Default to 389 or 636 if TLS is enabled"))));Lt(Q,{placement:"top-start",get content(){return e(le)},className:"w-full",children:($e,ze)=>{var Fe=OI();vt(Fe),k(Fe,1,me(E)),g(at=>Be(Fe,"placeholder",at),[()=>(t(),l(()=>t().t("Enter server port")))]),dt(Fe,()=>e(x).port,at=>We(x,e(x).port=at)),i($e,Fe)},$$slots:{default:!0}})}},$$slots:{default:!0}})}r(O);var ve=o(O,2),te=a(ve);{let q=v(()=>(t(),l(()=>t().t("Application DN")))),P=v(()=>(t(),l(()=>t().t("Bind DN used for directory search."))));mt(te,{get label(){return e(q)},get description(){return e(P)},children:(Q,re)=>{{let le=v(()=>(t(),l(()=>t().t("The Application Account DN you bind with for search"))));Lt(Q,{get content(){return e(le)},placement:"top-start",children:($e,ze)=>{var Fe=Yo();vt(Fe),k(Fe,1,me(E)),g(at=>Be(Fe,"placeholder",at),[()=>(t(),l(()=>t().t("Enter Application DN")))]),dt(Fe,()=>e(x).app_dn,at=>We(x,e(x).app_dn=at)),i($e,Fe)},$$slots:{default:!0}})}},$$slots:{default:!0}})}var ge=o(te,2);{let q=v(()=>(t(),l(()=>t().t("Application DN Password")))),P=v(()=>(t(),l(()=>t().t("Password for the bind DN."))));mt(ge,{get label(){return e(q)},get description(){return e(P)},children:(Q,re)=>{{let le=v(()=>(t(),l(()=>t().t("Enter Application DN Password"))));Cr(Q,{variant:"settings",get placeholder(){return e(le)},required:!1,get value(){return e(x).app_dn_password},set value($e){We(x,e(x).app_dn_password=$e)},$$legacy:!0})}},$$slots:{default:!0}})}r(ve);var _e=o(ve,2),Ae=a(_e);{let q=v(()=>(t(),l(()=>t().t("Attribute for Mail")))),P=v(()=>(t(),l(()=>t().t("LDAP attribute used as the user email address."))));mt(Ae,{get label(){return e(q)},get description(){return e(P)},children:(Q,re)=>{{let le=v(()=>(t(),l(()=>t().t("The LDAP attribute that maps to the mail that users use to sign in."))));Lt(Q,{get content(){return e(le)},placement:"top-start",children:($e,ze)=>{var Fe=Cs();vt(Fe),k(Fe,1,me(E)),g(at=>Be(Fe,"placeholder",at),[()=>(t(),l(()=>t().t("Example: mail")))]),dt(Fe,()=>e(x).attribute_for_mail,at=>We(x,e(x).attribute_for_mail=at)),i($e,Fe)},$$slots:{default:!0}})}},$$slots:{default:!0}})}var U=o(Ae,2);{let q=v(()=>(t(),l(()=>t().t("Attribute for Username")))),P=v(()=>(t(),l(()=>t().t("LDAP attribute used as the username."))));mt(U,{get label(){return e(q)},get description(){return e(P)},children:(Q,re)=>{{let le=v(()=>(t(),l(()=>t().t("The LDAP attribute that maps to the username that users use to sign in."))));Lt(Q,{get content(){return e(le)},placement:"top-start",children:($e,ze)=>{var Fe=Cs();vt(Fe),k(Fe,1,me(E)),g(at=>Be(Fe,"placeholder",at),[()=>(t(),l(()=>t().t("Example: sAMAccountName or uid or userPrincipalName")))]),dt(Fe,()=>e(x).attribute_for_username,at=>We(x,e(x).attribute_for_username=at)),i($e,Fe)},$$slots:{default:!0}})}},$$slots:{default:!0}})}r(_e);var T=o(_e,2);{let q=v(()=>(t(),l(()=>t().t("Search Base")))),P=v(()=>(t(),l(()=>t().t("Base DN used when searching for users."))));mt(T,{get label(){return e(q)},get description(){return e(P)},children:(Q,re)=>{{let le=v(()=>(t(),l(()=>t().t("The base to search for users"))));Lt(Q,{get content(){return e(le)},placement:"top-start",children:($e,ze)=>{var Fe=Cs();vt(Fe),k(Fe,1,me(E)),g(at=>Be(Fe,"placeholder",at),[()=>(t(),l(()=>t().t("Example: ou=users,dc=foo,dc=example")))]),dt(Fe,()=>e(x).search_base,at=>We(x,e(x).search_base=at)),i($e,Fe)},$$slots:{default:!0}})}},$$slots:{default:!0}})}var C=o(T,2);{let q=v(()=>(t(),l(()=>t().t("Search Filters")))),P=v(()=>(t(),l(()=>t().t("LDAP filter used to match signing-in users."))));mt(C,{get label(){return e(q)},get description(){return e(P)}
37,children:(Q,re)=>{var le=MI(),$e=Qe(le);vt($e),k($e,1,me(E));var ze=o($e,2),Fe=a(ze,!0);r(ze),g((at,tt)=>{Be($e,"placeholder",at),d(Fe,tt)},[()=>(t(),l(()=>t().t("Example: (&(objectClass=inetOrgPerson)(uid=%s))"))),()=>(t(),l(()=>t().t("Click here for filter guides.")))]),dt($e,()=>e(x).search_filters,at=>We(x,e(x).search_filters=at)),i(Q,le)},$$slots:{default:!0}})}var D=o(C,2);{let q=v(()=>(t(),l(()=>t().t("TLS")))),P=v(()=>(t(),l(()=>t().t("Use TLS when connecting to the LDAP server."))));Jt(D,{get label(){return e(q)},get description(){return e(P)},children:Ir,$$slots:{default:(Q,re)=>{const le=v(()=>re.labelId);Nt(Q,{get ariaLabelledbyId(){return e(le)},get state(){return e(x).use_tls},set state($e){We(x,e(x).use_tls=$e)},$$legacy:!0})}}})}var F=o(D,2);{var H=q=>{var P=RI(),Q=Qe(P);{let $e=v(()=>(t(),l(()=>t().t("Certificate Path")))),ze=v(()=>(t(),l(()=>t().t("Certificate file used for TLS verification."))));mt(Q,{get label(){return e($e)},get description(){return e(ze)},children:(Fe,at)=>{var tt=Yo();vt(tt),k(tt,1,me(E)),g(Je=>Be(tt,"placeholder",Je),[()=>(t(),l(()=>t().t("Enter certificate path")))]),dt(tt,()=>e(x).certificate_path,Je=>We(x,e(x).certificate_path=Je)),i(Fe,tt)},$$slots:{default:!0}})}var re=o(Q,2);{let $e=v(()=>(t(),l(()=>t().t("Validate Certificate")))),ze=v(()=>(t(),l(()=>t().t("Verify the LDAP server certificate when TLS is enabled."))));Jt(re,{get label(){return e($e)},get description(){return e(ze)},children:Ir,$$slots:{default:(Fe,at)=>{const tt=v(()=>at.labelId);Nt(Fe,{get ariaLabelledbyId(){return e(tt)},get state(){return e(x).validate_cert},set state(Je){We(x,e(x).validate_cert=Je)},$$legacy:!0})}}})}var le=o(re,2);{let $e=v(()=>(t(),l(()=>t().t("Ciphers")))),ze=v(()=>(t(),l(()=>t().t("TLS cipher list for LDAP connections."))));mt(le,{get label(){return e($e)},get description(){return e(ze)},children:(Fe,at)=>{{let tt=v(()=>(t(),l(()=>t().t("Default to ALL"))));Lt(Fe,{get content(){return e(tt)},placement:"top-start",children:(Je,je)=>{var ne=Yo();vt(ne),k(ne,1,me(E)),g(J=>Be(ne,"placeholder",J),[()=>(t(),l(()=>t().t("Example: ALL")))]),dt(ne,()=>e(x).ciphers,J=>We(x,e(x).ciphers=J)),i(Je,ne)},$$slots:{default:!0}})}},$$slots:{default:!0}})}i(q,P)};G(F,q=>{e(x),l(()=>e(x).use_tls)&&q(H)})}var pe=o(F,2);{let q=v(()=>(t(),l(()=>t().t("Group Mapping")))),P=v(()=>(t(),l(()=>t().t("Map LDAP groups to Open WebUI groups."))));Jt(pe,{get label(){return e(q)},get description(){return e(P)},children:Ir,$$slots:{default:(Q,re)=>{const le=v(()=>re.labelId);Nt(Q,{get ariaLabelledbyId(){return e(le)},get state(){return e(x).enable_group_management},set state($e){We(x,e(x).enable_group_management=$e)},$$legacy:!0})}}})}var ye=o(pe,2);{var he=q=>{var P=cd(),Q=Qe(P);{let le=v(()=>(t(),l(()=>t().t("Auto-Create Groups")))),$e=v(()=>(t(),l(()=>t().t("Create missing groups from LDAP groups."))));Jt(Q,{get label(){return e(le)},get description(){return e($e)},children:Ir,$$slots:{default:(ze,Fe)=>{const at=v(()=>Fe.labelId);Nt(ze,{get ariaLabelledbyId(){return e(at)},get state(){return e(x).enable_group_creation},set state(tt){We(x,e(x).enable_group_creation=tt)},$$legacy:!0})}}})}var re=o(Q,2);{let le=v(()=>(t(),l(()=>t().t("Group Attribute")))),$e=v(()=>(t(),l(()=>t().t("LDAP attribute containing the user group memberships."))));mt(re,{get label(){return e(le)},get description(){return e($e)},children:(ze,Fe)=>{{let at=v(()=>(t(),l(()=>t().t("Default to memberOf"))));Lt(ze,{get content(){return e(at)},placement:"top-start",children:(tt,Je)=>{var je=DI();vt(je),k(je,1,me(E)),dt(je,()=>e(x).attribute_for_groups,ne=>We(x,e(x).attribute_for_groups=ne)),i(tt,je)},$$slots:{default:!0}})}},$$slots:{default:!0}})}i(q,P)};G(ye,q=>{e(x),l(()=>e(x).enable_group_management)&&q(he)})}i(ue,xe)};G(qe,ue=>{e(c)&&ue(Re)})}i(oe,be)},$$slots:{default:!0}})}var ce=o(m,2);{var De=we=>{{let oe=v(()=>(t(),l(()=>t().t("OAuth / OIDC"))));va(we,{get title(){return e(oe)},children:(de,be)=>{var Me=tS(),qe=Qe(Me);{var Re=O=>{var ie=BI(),M=a(ie,!0);r(ie),g(ve=>d(M,ve),[()=>(t(),l(()=>t().t("These settings are read from environment variables and cannot be edited here while {{ENV_VAR}} is disabled.",{ENV_VAR:"ENABLE_OAUTH_PERSISTENT_CONFIG"})))]),i(O,ie)};G(qe,O=>{e(Ie)||O(Re)})}var ue=o(qe,2),xe=a(ue);{let O=v(()=>(t(),l(()=>t().t("OAuth / OIDC")))),ie=v(()=>(t(),l(()=>t().t("Allow users to authenticate with an OAuth / OIDC provider."))));Jt(xe,{get label(){return e(O)},get description(){return e(ie)},children:Ir,$$slots:{default:(M,ve)=>{const te=v(()=>ve.labelId);Nt(M,{get ariaLabelledbyId(){return e(te)},get state(){return e(A).ENABLE_OAUTH},set state(ge){We(A,e(A).ENABLE_OAUTH=ge)},$$legacy:!0})}}})}var K=o(xe,2);{var Oe=O=>{var ie=eS(),M=Qe(ie),ve=a(M);{let J=v(()=>(t(),l(()=>t().t("Provider Name")))),W=v(()=>(t(),l(()=>t().t("Display name shown for the OAuth provider."))));mt(ve,{get label(){return e(J)},get description(){return e(W)},children:(Z,Ee)=>{var Ge=GI();vt(Ge),k(Ge,1,me(E)),dt(Ge,()=>e(A).OAUTH_PROVIDER_NAME,p=>We(A,e(A).OAUTH_PROVIDER_NAME=p)),i(Z,Ge)},$$slots:{default:!0}})}var te=o(ve,2);{let J=v(()=>(t(),l(()=>t().t("Provider URL")))),W=v(()=>(t(),l(()=>t().t("OpenID discovery URL for this provider."))));mt(te,{get label(){return e(J)},get description(){return e(W)},children:(Z,Ee)=>{var Ge=jI();vt(Ge),k(Ge,1,me(E)),dt(Ge,()=>e(A).OPENID_PROVIDER_URL,p=>We(A,e(A).OPENID_PROVIDER_URL=p)),i(Z,Ge)},$$slots:{default:!0}})}r(M);var ge=o(M,2),_e=a(ge);{let J=v(()=>(t(),l(()=>t().t("Client ID")))),W=v(()=>(t(),l(()=>t().t("OAuth client identifier from the provider."))));mt(_e,{get label(){return e(J)},get description(){return e(W)},children:(Z,Ee)=>{var Ge=Yo();vt(Ge),k(Ge,1,me(E)),g(p=>Be(Ge,"placeholder",p),[()=>(t(),l(()=>t().t("Enter Client ID")))]),dt(Ge,()=>e(A).OAUTH_CLIENT_ID,p=>We(A,e(A).OAUTH_CLIENT_ID=p)),i(Z,Ge)},$$slots:{default:!0}})}var Ae=o(_e,2);{let J=v(()=>(t(),l(()=>t().t("Client Secret")))),W=v(()=>(t(),l(()=>t().t("OAuth client secret from the provider."))));mt(Ae,{get label(){return e(J)},get description(){return e(W)},children:(Z,Ee)=>{{let Ge=v(()=>(t(),l(()=>t().t("Enter Client Secret"))));Cr(Z,{variant:"settings",get placeholder(){return e(Ge)},required:!1,get value(){return e(A).OAUTH_CLIENT_SECRET},set value(p){We(A,e(A).OAUTH_CLIENT_SECRET=p)},$$legacy:!0})}},$$slots:{default:!0}})}r(ge);var U=o(ge,2),T=a(U);{let J=v(()=>(t(),l(()=>t().t("Redirect URI")))),W=v(()=>(t(),l(()=>t().t("Callback URI registered with the provider."))));mt(T,{get label(){return e(J)},get description(){return e(W)},children:(Z,Ee)=>{var Ge=Yo();vt(Ge),k(Ge,1,me(E)),g(p=>Be(Ge,"placeholder",p),[()=>(t(),l(()=>t().t("Enter Redirect URI")))]),dt(Ge,()=>e(A).OPENID_REDIRECT_URI,p=>
37We(A,e(A).OPENID_REDIRECT_URI=p)),i(Z,Ge)},$$slots:{default:!0}})}var C=o(T,2);{let J=v(()=>(t(),l(()=>t().t("Scopes")))),W=v(()=>(t(),l(()=>t().t("OAuth scopes requested during sign-in."))));mt(C,{get label(){return e(J)},get description(){return e(W)},children:(Z,Ee)=>{var Ge=HI();vt(Ge),k(Ge,1,me(E)),dt(Ge,()=>e(A).OAUTH_SCOPES,p=>We(A,e(A).OAUTH_SCOPES=p)),i(Z,Ge)},$$slots:{default:!0}})}r(U);var D=o(U,2),F=a(D);{let J=v(()=>(t(),l(()=>t().t("Email Claim")))),W=v(()=>(t(),l(()=>t().t("Claim used as the user email address."))));mt(F,{get label(){return e(J)},get description(){return e(W)},children:(Z,Ee)=>{var Ge=FI();vt(Ge),k(Ge,1,me(E)),dt(Ge,()=>e(A).OAUTH_EMAIL_CLAIM,p=>We(A,e(A).OAUTH_EMAIL_CLAIM=p)),i(Z,Ge)},$$slots:{default:!0}})}var H=o(F,2);{let J=v(()=>(t(),l(()=>t().t("Username Claim")))),W=v(()=>(t(),l(()=>t().t("Claim used as the display name."))));mt(H,{get label(){return e(J)},get description(){return e(W)},children:(Z,Ee)=>{var Ge=WI();vt(Ge),k(Ge,1,me(E)),dt(Ge,()=>e(A).OAUTH_USERNAME_CLAIM,p=>We(A,e(A).OAUTH_USERNAME_CLAIM=p)),i(Z,Ge)},$$slots:{default:!0}})}r(D);var pe=o(D,2),ye=a(pe);{let J=v(()=>(t(),l(()=>t().t("Picture Claim")))),W=v(()=>(t(),l(()=>t().t("Claim used as the profile picture URL."))));mt(ye,{get label(){return e(J)},get description(){return e(W)},children:(Z,Ee)=>{var Ge=zI();vt(Ge),k(Ge,1,me(E)),dt(Ge,()=>e(A).OAUTH_PICTURE_CLAIM,p=>We(A,e(A).OAUTH_PICTURE_CLAIM=p)),i(Z,Ge)},$$slots:{default:!0}})}var he=o(ye,2);{let J=v(()=>(t(),l(()=>t().t("Sub Claim")))),W=v(()=>(t(),l(()=>t().t("Claim used as the stable user identifier."))));mt(he,{get label(){return e(J)},get description(){return e(W)},children:(Z,Ee)=>{var Ge=KI();vt(Ge),k(Ge,1,me(E)),dt(Ge,()=>e(A).OAUTH_SUB_CLAIM,p=>We(A,e(A).OAUTH_SUB_CLAIM=p)),i(Z,Ge)},$$slots:{default:!0}})}r(pe);var q=o(pe,2);{let J=v(()=>(t(),l(()=>t().t("OAuth Signup")))),W=v(()=>(t(),l(()=>t().t("Allow users to create accounts through OAuth."))));Jt(q,{get label(){return e(J)},get description(){return e(W)},children:Ir,$$slots:{default:(Z,Ee)=>{const Ge=v(()=>Ee.labelId);Nt(Z,{get ariaLabelledbyId(){return e(Ge)},get state(){return e(A).ENABLE_OAUTH_SIGNUP},set state(p){We(A,e(A).ENABLE_OAUTH_SIGNUP=p)},$$legacy:!0})}}})}var P=o(q,2);{let J=v(()=>(t(),l(()=>t().t("Merge Accounts by Email")))),W=v(()=>(t(),l(()=>t().t("Link OAuth sign-ins to existing accounts with the same email."))));Jt(P,{get label(){return e(J)},get description(){return e(W)},children:Ir,$$slots:{default:(Z,Ee)=>{const Ge=v(()=>Ee.labelId);Nt(Z,{get ariaLabelledbyId(){return e(Ge)},get state(){return e(A).OAUTH_MERGE_ACCOUNTS_BY_EMAIL},set state(p){We(A,e(A).OAUTH_MERGE_ACCOUNTS_BY_EMAIL=p)},$$legacy:!0})}}})}var Q=o(P,2);{let J=v(()=>(t(),l(()=>t().t("Auto Redirect")))),W=v(()=>(t(),l(()=>t().t("Send users directly to the OAuth provider from the sign-in page."))));Jt(Q,{get label(){return e(J)},get description(){return e(W)},children:Ir,$$slots:{default:(Z,Ee)=>{const Ge=v(()=>Ee.labelId);Nt(Z,{get ariaLabelledbyId(){return e(Ge)},get state(){return e(A).OAUTH_AUTO_REDIRECT},set state(p){We(A,e(A).OAUTH_AUTO_REDIRECT=p)},$$legacy:!0})}}})}var re=o(Q,2);{let J=v(()=>(t(),l(()=>t().t("Allowed Domains")))),W=v(()=>(t(),l(()=>t().t("Email domains allowed to sign in with OAuth."))));mt(re,{get label(){return e(J)},get description(){return e(W)},children:(Z,Ee)=>{var Ge=YI();vt(Ge),k(Ge,1,me(E)),dt(Ge,()=>e(A).OAUTH_ALLOWED_DOMAINS,p=>We(A,e(A).OAUTH_ALLOWED_DOMAINS=p)),i(Z,Ge)},$$slots:{default:!0}})}var le=o(re,2);{let J=v(()=>(t(),l(()=>t().t("Role Mapping")))),W=v(()=>(t(),l(()=>t().t("Map OAuth claims to Open WebUI roles."))));Jt(le,{get label(){return e(J)},get description(){return e(W)},children:Ir,$$slots:{default:(Z,Ee)=>{const Ge=v(()=>Ee.labelId);Nt(Z,{get ariaLabelledbyId(){return e(Ge)},get state(){return e(A).ENABLE_OAUTH_ROLE_MANAGEMENT},set state(p){We(A,e(A).ENABLE_OAUTH_ROLE_MANAGEMENT=p)},$$legacy:!0})}}})}var $e=o(le,2);{var ze=J=>{var W=JI(),Z=Qe(W),Ee=a(Z);{let $=v(()=>(t(),l(()=>t().t("Roles Claim")))),S=v(()=>(t(),l(()=>t().t("Claim containing provider roles."))));mt(Ee,{get label(){return e($)},get description(){return e(S)},children:(L,fe)=>{var y=VI();vt(y),k(y,1,me(E)),dt(y,()=>e(A).OAUTH_ROLES_CLAIM,b=>We(A,e(A).OAUTH_ROLES_CLAIM=b)),i(L,y)},$$slots:{default:!0}})}var Ge=o(Ee,2);{let $=v(()=>(t(),l(()=>t().t("Admin Roles")))),S=v(()=>(t(),l(()=>t().t("Provider roles that grant admin access."))));mt(Ge,{get label(){return e($)},get description(){return e(S)},children:(L,fe)=>{var y=qI();vt(y),k(y,1,me(E)),dt(y,()=>e(A).OAUTH_ADMIN_ROLES,b=>We(A,e(A).OAUTH_ADMIN_ROLES=b)),i(L,y)},$$slots:{default:!0}})}r(Z);var p=o(Z,2);{let $=v(()=>(t(),l(()=>t().t("Allowed Roles")))),S=v(()=>(t(),l(()=>t().t("Provider roles allowed to sign in."))));mt(p,{get label(){return e($)},get description(){return e(S)},children:(L,fe)=>{var y=XI();vt(y),k(y,1,me(E)),dt(y,()=>e(A).OAUTH_ALLOWED_ROLES,b=>We(A,e(A).OAUTH_ALLOWED_ROLES=b)),i(L,y)},$$slots:{default:!0}})}i(J,W)};G($e,J=>{e(A),l(()=>e(A).ENABLE_OAUTH_ROLE_MANAGEMENT)&&J(ze)})}var Fe=o($e,2);{let J=v(()=>(t(),l(()=>t().t("Group Mapping")))),W=v(()=>(t(),l(()=>
37t().t("Map OAuth claims to Open WebUI groups."))));Jt(Fe,{get label(){return e(J)},get description(){return e(W)},children:Ir,$$slots:{default:(Z,Ee)=>{const Ge=v(()=>Ee.labelId);Nt(Z,{get ariaLabelledbyId(){return e(Ge)},get state(){return e(A).ENABLE_OAUTH_GROUP_MANAGEMENT},set state(p){We(A,e(A).ENABLE_OAUTH_GROUP_MANAGEMENT=p)},$$legacy:!0})}}})}var at=o(Fe,2);{var tt=J=>{var W=QI(),Z=Qe(W);{let $=v(()=>(t(),l(()=>t().t("Auto-Create Groups")))),S=v(()=>(t(),l(()=>t().t("Create missing groups from OAuth claims."))));Jt(Z,{get label(){return e($)},get description(){return e(S)},children:Ir,$$slots:{default:(L,fe)=>{const y=v(()=>fe.labelId);Nt(L,{get ariaLabelledbyId(){return e(y)},get state(){return e(A).ENABLE_OAUTH_GROUP_CREATION},set state(b){We(A,e(A).ENABLE_OAUTH_GROUP_CREATION=b)},$$legacy:!0})}}})}var Ee=o(Z,2),Ge=a(Ee);{let $=v(()=>(t(),l(()=>t().t("Group Claim")))),S=v(()=>(t(),l(()=>t().t("Claim containing provider groups."))));mt(Ge,{get label(){return e($)},get description(){return e(S)},children:(L,fe)=>{var y=ZI();vt(y),k(y,1,me(E)),dt(y,()=>e(A).OAUTH_GROUP_CLAIM,b=>We(A,e(A).OAUTH_GROUP_CLAIM=b)),i(L,y)},$$slots:{default:!0}})}var p=o(Ge,2);{let $=v(()=>(t(),l(()=>t().t("Blocked Groups")))),S=v(()=>(t(),l(()=>t().t("Provider groups blocked from signing in."))));mt(p,{get label(){return e($)},get description(){return e(S)},children:(L,fe)=>{var y=Yo();vt(y),k(y,1,me(E)),g(b=>Be(y,"placeholder",b),[()=>(t(),l(()=>t().t("Comma-separated group names")))]),dt(y,()=>e(A).OAUTH_BLOCKED_GROUPS,b=>We(A,e(A).OAUTH_BLOCKED_GROUPS=b)),i(L,y)},$$slots:{default:!0}})}r(Ee),i(J,W)};G(at,J=>{e(A),l(()=>e(A).ENABLE_OAUTH_GROUP_MANAGEMENT)&&J(tt)})}var Je=o(at,2);{let J=v(()=>(t(),l(()=>t().t("Update Email")))),W=v(()=>(t(),l(()=>t().t("Refresh the account email from OAuth on sign-in."))));Jt(Je,{get label(){return e(J)},get description(){return e(W)},children:Ir,$$slots:{default:(Z,Ee)=>{const Ge=v(()=>Ee.labelId);Nt(Z,{get ariaLabelledbyId(){return e(Ge)},get state(){return e(A).OAUTH_UPDATE_EMAIL_ON_LOGIN},set state(p){We(A,e(A).OAUTH_UPDATE_EMAIL_ON_LOGIN=p)},$$legacy:!0})}}})}var je=o(Je,2);{let J=v(()=>(t(),l(()=>t().t("Update Name")))),W=v(()=>(t(),l(()=>t().t("Refresh the account name from OAuth on sign-in."))));Jt(je,{get label(){return e(J)},get description(){return e(W)},children:Ir,$$slots:{default:(Z,Ee)=>{const Ge=v(()=>Ee.labelId);Nt(Z,{get ariaLabelledbyId(){return e(Ge)},get state(){return e(A).OAUTH_UPDATE_NAME_ON_LOGIN},set state(p){We(A,e(A).OAUTH_UPDATE_NAME_ON_LOGIN=p)},$$legacy:!0})}}})}var ne=o(je,2);{let J=v(()=>(t(),l(()=>t().t("Update Picture")))),W=v(()=>(t(),l(()=>t().t("Refresh the profile picture from OAuth on sign-in."))));Jt(ne,{get label(){return e(J)},get description(){return e(W)},children:Ir,$$slots:{default:(Z,Ee)=>{const Ge=v(()=>Ee.labelId);Nt(Z,{get ariaLabelledbyId(){return e(Ge)},get state(){return e(A).OAUTH_UPDATE_PICTURE_ON_LOGIN},set state(p){We(A,e(A).OAUTH_UPDATE_PICTURE_ON_LOGIN=p)},$$legacy:!0})}}})}i(O,ie)};G(K,O=>{e(A),l(()=>e(A).ENABLE_OAUTH)&&O(Oe)})}r(ue),g(()=>ue.disabled=!e(Ie)),i(de,Me)},$$slots:{default:!0}})}};G(ce,we=>{e(A)&&we(De)})}r(ae);var Le=o(ae,2),Ne=a(Le),Ce=a(Ne,!0);r(Ne),r(Le),r(Se),g((we,oe)=>{d(ee,we),d(Ce,oe)},[()=>(t(),l(()=>t().t("Authentication"))),()=>(t(),l(()=>t().t("Save")))]),ke("submit",Se,ca(Te)),i(He,Se),cr(),n()}var lS=u('<div class="absolute top-0 bottom-0 left-0 right-0 opacity-60 bg-white dark:bg-gray-900 z-10"></div>'),oS=Jr('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" class="size-4"><path d="M11.644 1.59a.75.75 0 0 1 .712 0l9.75 5.25a.75.75 0 0 1 0 1.32l-9.75 5.25a.75.75 0 0 1-.712 0l-9.75-5.25a.75.75 0 0 1 0-1.32l9.75-5.25Z"></path><path d="m3.265 10.602 7.668 4.129a2.25 2.25 0 0 0 2.134 0l7.668-4.13 1.37.739a.75.75 0 0 1 0 1.32l-9.75 5.25a.75.75 0 0 1-.71 0l-9.75-5.25a.75.75 0 0 1 0-1.32l1.37-.738Z"></path><path d="m10.933 19.231-7.668-4.13-1.37.739a.75.75 0 0 0 0 1.32l9.75 5.25c.221.12.489.12.71 0l9.75-5.25a.75.75 0 0 0 0-1.32l-1.37-.738-7.668 4.13a2.25 2.25 0 0 1-2.134-.001Z"></path></svg>'),sS=u('<div class=" absolute top-0.5 right-2.5"><!></div>'),nS=u('<!> <div class="flex w-full gap-2"><div class="flex-1 relative"><input autocomplete="off"/> <!></div></div>
37',1),iS=u('<button class="self-center p-1 bg-transparent hover:bg-gray-100 dark:hover:bg-gray-850 rounded-lg transition" type="button"><!></button>'),dS=u('<!> <div class="flex w-full gap-2 items-center"><!> <div class="flex gap-1 items-center"><!> <!></div></div>',1);function vS(He,_){vr(_,!1);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr(),Ie=mr("i18n");let X=Xe(_,"onDelete",8,()=>{}),R=Xe(_,"onSubmit",8,()=>{}),I=Xe(_,"pipeline",8,!1),c=Xe(_,"url",12,""),x=Xe(_,"key",12,""),A=Xe(_,"config",28,()=>({})),E=h(!1);gr();var V=dS(),B=Qe(V);{let ee=v(()=>({url:c(),key:x(),config:A()}));rs(B,{edit:!0,get connection(){return e(ee)},onDelete:()=>{X()(),s(E,!1)},onSubmit:ae=>{c(ae.url),x(ae.key),A(ae.config),R()(ae)},get show(){return e(E)},set show(ae){s(E,ae)},$$legacy:!0})}var j=o(B,2),w=a(j);{let ee=v(()=>(t(),it(c()),l(()=>t().t('WebUI will make requests to "{{url}}/chat/completions"',{url:c()}))));Lt(w,{className:"w-full relative",get content(){return e(ee)},placement:"top-start",children:(ae,Pe)=>{var se=nS(),m=Qe(se);{var ce=oe=>{var de=lS();i(oe,de)};G(m,oe=>{it(A()),l(()=>{var de;return!(((de=A())==null?void 0:de.enable)??!0)})&&oe(ce)})}var De=o(m,2),Le=a(De),Ne=a(Le);vt(Ne),Ne.readOnly=!0;var Ce=o(Ne,2);{var we=oe=>{var de=sS(),be=a(de);Lt(be,{content:"Pipelines",children:(Me,qe)=>{var Re=oS();i(Me,Re)},$$slots:{default:!0}}),r(de),i(oe,de)};G(Ce,oe=>{I()&&oe(we)})}r(Le),r(De),g(oe=>{k(Ne,1,` outline-hidden w-full bg-transparent ${I()?"pr-8":""}`),Be(Ne,"placeholder",oe)},[()=>(t(),l(()=>t().t("API Base URL")))]),dt(Ne,c),i(ae,se)},$$slots:{default:!0}})}var Te=o(w,2),Se=a(Te);{let ee=v(()=>(t(),l(()=>t().t("Configure"))));Lt(Se,{get content(){return e(ee)},className:"self-start",children:(ae,Pe)=>{var se=iS(),m=a(se);jl(m,{}
37),r(se),ke("click",se,()=>{s(E,!0)}),i(ae,se)},$$slots:{default:!0}})}var Y=o(Se,2);{let ee=v(()=>(it(A()),t(),l(()=>{var ae;return((ae=A())==null?void 0:ae.enable)??!0?t().t("Enabled"):t().t("Disabled")})));Lt(Y,{get content(){return e(ee)},children:(ae,Pe)=>{Nt(ae,{get state(){return A().enable},set state(se){A(A().enable=se,!0)},$$events:{change:()=>{A(A().enable=A().enable??!1,!0),R()({url:c(),key:x(),config:A()})}},$$legacy:!0})},$$slots:{default:!0}})}r(Te),r(j),i(He,V),cr(),n()}var cS=u('<button class="flex gap-2 items-center bg-transparent rounded-lg transition"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="w-4 h-4"><path d="M7 1a.75.75 0 0 1 .75.75V6h-1.5V1.75A.75.75 0 0 1 7 1ZM6.25 6v2.94L5.03 7.72a.75.75 0 0 0-1.06 1.06l2.5 2.5a.75.75 0 0 0 1.06 0l2.5-2.5a.75.75 0 1 0-1.06-1.06L7.75 8.94V6H10a2 2 0 0 1 2 2v3a2 2 0 0 1-2 2H4a2 2 0 0 1-2-2V8a2 2 0 0 1 2-2h2.25Z"></path><path d="M4.268 14A2 2 0 0 0 6 15h6a2 2 0 0 0 2-2v-3a2 2 0 0 0-1-1.732V11a3 3 0 0 1-3 3H4.268Z"></path></svg></button>'),uS=u(`<div class="self-center"><svg class=" w-4 h-4" viewBox="0 0 24 24" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><style>.spinner_ajPY { 38 transform-origin: center; 39 animation: spinner_AtaB 0.75s infinite linear; 40 } 41 42 @keyframes spinner_AtaB { 43 100% { 44 transform: rotate(360deg); 45 } 46 }</style><path d="M12,1A11,11,0,1,0,23,12,11,11,0,0,0,12,1Zm0,19a8,8,0,1,1,8-8A8,8,0,0,1,12,20Z" opacity=".25"></path><path d="M10.14,1.16a11,11,0,0,0-9,8.92A1.59,1.59,0,0,0,2.46,12,1.52,1.52,0,0,0,4.11,10.7a8,8,0,0,1,6.66-6.61A1.42,1.42,0,0,0,12,2.69h0A1.57,1.57,0,0,0,10.14,1.16Z" class="spinner_ajPY"></path></svg></div>`),gS=Jr('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="w-4 h-4"><path d="M8.75 2.75a.75.75 0 0 0-1.5 0v5.69L5.03 6.22a.75.75 0 0 0-1.06 1.06l3.5 3.5a.75.75 0 0 0 1.06 0l3.5-3.5a.75.75 0 0 0-1.06-1.06L8.75 8.44V2.75Z"></path><path d="M3.5 9.75a.75.75 0 0 0-1.5 0v1.5A2.75 2.75 0 0 0 4.75 14h6.5A2.75 2.75 0 0 0 14 11.25v-1.5a.75.75 0 0 0-1.5 0v1.5c0 .69-.56 1.25-1.25 1.25h-6.5c-.69 0-1.25-.56-1.25-1.25v-1.5Z"></path></svg>'),_S=u("<button><!></button>"),p_=u('<button class="text-gray-800 dark:text-gray-100"><svg class="w-4 h-4 text-gray-800 dark:text-white" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" width="24" height="24" fill="currentColor" viewBox="0 0 24 24"><path stroke="currentColor" stroke-linecap="round" stroke-linejoin="round" stroke-width="2" d="M6 18 17.94 6M18 18 6.06 6"></path></svg></button>'),fS=u('<div class="text-xs flex justify-between items-center"><div> </div> <!></div>'),m_=u('<div class="mt-1 text-xs dark:text-gray-500" style="font-size: 0.5rem;"> </div>'),pS=u('<div class="flex flex-col"><div class="font-normal mb-1"> </div> <div><div class="flex flex-row justify-between space-x-4 pr-2"><div class=" flex-1"><div class="dark:bg-gray-600 bg-gray-500 text-xs font-normal text-gray-100 text-center p-0.5 leading-none rounded-full"> </div></div> <!></div> <!></div></div>'),mS=u('<option class="bg-gray-50 dark:bg-gray-700"> </option>'),hS=u('<option disabled="" selected=""> </option> <!>',1),xS=u('<button><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="w-4 h-4"><path fill-rule="evenodd" d="M5 3.25V4H2.75a.75.75 0 0 0 0 1.5h.3l.815 8.15A1.5 1.5 0 0 0 5.357 15h5.285a1.5 1.5 0 0 0 1.493-1.35l.815-8.15h.3a.75.75 0 0 0 0-1.5H11v-.75A2.25 2.25 0 0 0 8.75 1h-1.5A2.25 2.25 0 0 0 5 3.25Zm2.25-.75a.75.75 0 0 0-.75.75V4h3v-.75a.75.75 0 0 0-.75-.75h-1.5ZM6.05 6a.75.75 0 0 1 .787.713l.275 5.5a.75.75 0 0 1-1.498.075l-.275-5.5A.75.75 0 0 1 6.05 6Zm3.9 0a.75.75 0 0 1 .712.787l-.275 5.5a.75.75 0 0 1-1.498-.075l.275-5.5a.75.75 0 0 1 .786-.711Z" clip-rule="evenodd"></path></svg></button>'),bS=u('<button><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="size-4"><path d="M7.25 10.25a.75.75 0 0 0 1.5 0V4.56l2.22 2.22a.75.75 0 1 0 1.06-1.06l-3.5-3.5a.75.75 0 0 0-1.06 0l-3.5 3.5a.75.75 0 0 0 1.06 1.06l2.22-2.22v5.69Z"></path><path d="M3.5 9.75a.75.75 0 0 0-1.5 0v1.5A2.75 2.75 0 0 0 4.75 14h6.5A2.75 2.75 0 0 0 14 11.25v-1.5a.75.75 0 0 0-1.5 0v1.5c0 .69-.56 1.25-1.25 1.25h-6.5c-.69 0-1.25-.56-1.25-1.25v-1.5Z"></path></svg></button>'),yS=u('<div class="flex flex-col mt-1"><div class="font-normal mb-1"></div> <div><div class="flex flex-row justify-between space-x-4 pr-2"><div class=" flex-1"><div class="dark:bg-gray-600 bg-gray-500 text-xs font-normal text-gray-100 text-center p-0.5 leading-none rounded-full"> </div></div></div> <!></div></div>'),h_=u('<span class="ml-2 self-center"> </span>'),$S=u('<div><input id="model-upload-input" type="file" accept=".gguf,.safetensors" required="" hidden=""/> <button type="button"><!></button></div>'),wS=u('<div><input type="url" required=""/></div>
46'),kS=u(`<div class="self-center"><svg class=" w-4 h-4" viewBox="0 0 24 24" fill="currentColor" xmlns="http://www.w3.org/2000/svg"><style>.spinner_ajPY { 47 transform-origin: center; 48 animation: spinner_AtaB 0.75s infinite linear; 49 } 50 51 @keyframes spinner_AtaB { 52 100% { 53 transform: rotate(360deg); 54 } 55 }</style><path d="M12,1A11,11,0,1,0,23,12,11,11,0,0,0,12,1Zm0,19a8,8,0,1,1,8-8A8,8,0,0,1,12,20Z" opacity=".25"></path><path d="M10.14,1.16a11,11,0,0,0-9,8.92A1.59,1.59,0,0,0,2.46,12,1.52,1.52,0,0,0,4.11,10.7a8,8,0,0,1,6.66-6.61A1.42,1.42,0,0,0,12,2.69h0A1.57,1.57,0,0,0,10.14,1.16Z" class="spinner_ajPY"></path></svg></div>`),ES=Jr('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="w-4 h-4"><path d="M7.25 10.25a.75.75 0 0 0 1.5 0V4.56l2.22 2.22a.75.75 0 1 0 1.06-1.06l-3.5-3.5a.75.75 0 0 0-1.06 0l-3.5 3.5a.75.75 0 0 0 1.06 1.06l2.22-2.22v5.69Z"></path><path d="M3.5 9.75a.75.75 0 0 0-1.5 0v1.5A2.75 2.75 0 0 0 4.75 14h6.5A2.75 2.75 0 0 0 14 11.25v-1.5a.75.75 0 0 0-1.5 0v1.5c0 .69-.56 1.25-1.25 1.25h-6.5c-.69 0-1.25-.56-1.25-1.25v-1.5Z"></path></svg>'),AS=u('<button type="submit"><!></button>'),IS=u('<div><div><div class=" my-2.5 text-sm font-normal"> </div> <textarea rows="6"></textarea></div></div>'),SS=u('<div class="mt-2"><div class=" mb-2 text-xs"> </div> <div class="w-full rounded-full dark:bg-gray-800"><div class="dark:bg-gray-600 bg-gray-500 text-xs font-normal text-gray-100 text-center p-0.5 leading-none rounded-full" style="width: 100%"> </div></div> <div class="mt-1 text-xs dark:text-gray-500" style="font-size: 0.5rem;"> </div></div>'),NS=u('<div class="mt-2"><div class=" mb-2 text-xs"> </div> <div class="w-full rounded-full dark:bg-gray-800"><div class="dark:bg-gray-600 bg-gray-500 text-xs font-normal text-gray-100 text-center p-0.5 leading-none rounded-full"> </div></div> <div class="mt-1 text-xs dark:text-gray-500" style="font-size: 0.5rem;"> </div></div>'),PS=u('<form><div class=" mb-2 flex w-full justify-between"><div class=" text-sm font-normal"> </div> <button class="p-1 px-3 text-xs flex rounded-sm transition" type="button"><!></button></div> <div class="flex w-full mb-1.5"><div class="flex flex-col w-full"><!></div> <!></div> <!> <div class=" mt-1 text-xs text-gray-400 dark:text-gray-500"> <a class=" text-gray-500 dark:text-gray-300 font-normal underline" href="https://huggingface.co/models?search=gguf" target="_blank"> </a></div> <!></form>'),CS=u('<div class=" flex flex-col w-full"><div><div class="space-y-2"><div><div class=" mb-2 text-sm font-normal flex items-center gap-1.5"><div> </div> <div><!></div></div> <div class="flex w-full"><div class="flex-1 mr-2"><input/></div> <!></div> <div class="mt-2 mb-1 text-xs text-gray-400 dark:text-gray-500"> <a class=" text-gray-500 dark:text-gray-300 font-normal underline" href="https://ollama.com/library" target="_blank"> </a></div> <!> <!></div> <div><div class=" mb-2 text-sm font-normal"> </div> <div class="flex w-full"><div class="flex-1 mr-2"><!></div> <!></div></div> <div><div class=" mb-2 text-sm font-normal"> </div> <div class="flex w-full"><div class="flex-1 mr-2 flex flex-col gap-2"><input/> <textarea rows="6"></textarea></div> <div class="flex self-start"><!></div></div> <!></div> <div class="pt-1"><div class="flex justify-between items-center text-xs"><div class="text-sm font-normal"><!></div> <button class=" text-xs font-normal text-gray-500" type="button"> </button></div></div> <!></div></div></div>'),TS=u('<div class="flex justify-center items-center w-full h-full text-xs py-3"> </div>'),LS=u('<div class="flex justify-center items-center w-full h-full py-3"><!></div>'),OS=u("<!> <!>",1);function tp(He,_){vr(_,!1);const t=()=>ct(Wo,"$MODEL_DOWNLOAD_POOL",X),f=()=>ct(I,"$i18n",X),n=()=>ct(_a,"$config",X),Ie=()=>ct(ua,"$settings",X),[X,R]=hr(),I=mr("i18n");let c=h(),x=h(!1),A=h(!0),E=Xe(_,"urlIdx",8,null),V=h([]),B=h(null),j=h(null),w={},Te=!1,Se=h(!1);const Y=3;let ee=h(!1),ae=h(""),Pe=h(!1),se=h(""),m=h(""),ce=h(""),De=h(null),Le="",Ne=null,Ce=h("file"),we=h(null),oe=h(""),de=h(`TEMPLATE """{{ .System }} 56USER: {{ .Prompt }} 57ASSISTANT: """ 58PARAMETER num_ctx 4096 59PARAMETER stop "</s>" 60PARAMETER stop "USER:" 61PARAMETER stop "ASSISTANT:"`),be=h(""),Me=h(null),qe=h(""),Re=h("");const ue="h-7 w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2.5 text-left text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 disabled:opacity-50 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500",xe="inline-flex h-7 items-center justify-center rounded-lg border border-gray-100/50 bg-gray-50/40 px-2.5 text-gray-700 transition-colors hover:bg-gray-100 disabled:cursor-not-allowed disabled:opacity-50 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:hover:bg-white/[0.06]",K=async()=>{Te=!1,rt.info("Checking for model updates...");for(const F of e(V)){if(Te)break;s(B,F.id);const[H,pe]=await Eg(localStorage.token,F.id,E()).catch(ye=>(ye.name!=="AbortError"&&rt.error(`${ye}`),[null,null]));if(w={...w,[F.id]:pe},H){const ye=H.body.pipeThrough(new TextDecoderStream).pipeThrough(As(` 62`)).getReader();for(;;)try{const{value:he,done:q}=await ye.read();if(q)break;let P=he.split(` 63`);for(const Q of P)if(Q!==""){let re=JSON.parse(Q);if(re.error)throw re.error;if(re.detail)throw re.detail;re.status&&re.digest&&(s(j,0),re.completed?s(j,Math.round(re.completed/re.total*1e3)/10):s(j,100))}}catch(he){he.name;break}}delete w[F.id],w={...w}}Te?rt.info("Model update cancelled"):rt.success("All models are up to date"),s(B,null),s(j,null)},Oe=async()=>{var ye,he,q,P;const F=e(ae).trim().replace(/^ollama\s+(run|pull)\s+/,"");if(t(),t()[F]){rt.error(f().t("Model '{{modelTag}}' is already in queue for downloading.",{modelTag:F}));return}if(Object.keys(t()).length===Y){rt.error(f().t("Maximum of 3 models can be downloaded simultaneously. Please try again later."));return}s(ee,!0);const[H,pe]=await Eg(localStorage.token,F,E()).catch(Q=>(Q.name!=="AbortError"&&rt.error(`${Q}`),[null,null]));if(H){const Q=H.body.pipeThrough(new TextDecoderStream).pipeThrough(As(` 64`)).getReader();for(Wo.set({...t(),[F]:{...t()[F],abortController:pe,reader:Q,done:!1}});;)try{const{value:re,done:le}=await Q.read();if(le)break;let $e=re.split(` 65`);for(const ze of $e)if(ze!==""){let Fe=JSON.parse(ze);if(Fe.error)throw Fe.error;if(Fe.detail)throw Fe.detail;if(Fe.status)if(Fe.digest){let at=0;Fe.completed?at=Math.round(Fe.completed/Fe.total*1e3)/10:at=100,Wo.set({...t(),[F]:{...t()[F],pullProgress:at,digest:Fe.digest}})}else Wo.set({...t(),[F]:{...t()[F],done:Fe.status==="success"}})}}catch(re){if(re.name!=="AbortError")typeof re!="string"&&(re=re.message),rt.error(`${re}`);else break}t()[F],(ye=t()[F])!=null&&ye.done?(rt.success(f().t("Model '{{modelName}}' has been successfully downloaded.",{modelName:F})),ba.set(await La(localStorage.token,((q=(he=n())==null?void 0:he.features)==null?void 0:q.enable_direct_connections)&&(((P=Ie())==null?void 0:P.directConnections)??null)))):rt.error(f().t("Download canceled")),delete t()[F],Wo.set({...t()})}s(ae,""),s(ee,!1)},O=async()=>{var ye,he,q;s(ee,!0);let F=!1,H=null,pe="";if(e(Ce)==="file"){const P=e(we)?e(we)[0]:null;P&&(s(qe,"Uploading..."),H=await Ux(localStorage.token,P,E()).catch(Q=>(rt.error(`${Q}`),null)))}else s(Me,0),H=await Bx(localStorage.token,e(oe),E()).catch(P=>(rt.error(`${P}`),null));if(H&&H.ok){const P=H.body.pipeThrough(new TextDecoderStream).pipeThrough(As(` 66`)).getReader();for(;;){const{value:Q,done:re}=await P.read();if(re)break;try{let le=Q.split(` 67`);for(const $e of le)if($e!==""){let ze=JSON.parse($e.replace(/^data: /,""));if(ze.progress&&(e(qe)&&s(qe,""),s(Me,ze.progress)),ze.error)throw ze.error;ze.done&&(s(be,ze.blob),pe=ze.name,F=!0)}}catch(le){}}}else{const P=await(H==null?void 0:H.json());rt.error((P==null?void 0:P.detail)??P)}if(F){const P=await Ag(localStorage.token,`${pe}:latest`,`FROM @${e(be)} 68${e(de)}`);
68if(P&&P.ok){const Q=P.body.pipeThrough(new TextDecoderStream).pipeThrough(As(` 69`)).getReader();for(;;){const{value:re,done:le}=await Q.read();if(le)break;try{let $e=re.split(` 70`);for(const ze of $e)if(ze!==""){let Fe=JSON.parse(ze);if(Fe.error)throw Fe.error;if(Fe.detail)throw Fe.detail;Fe.status&&(!Fe.digest&&!Fe.status.includes("writing")&&!Fe.status.includes("sha256")?rt.success(Fe.status):Fe.digest&&(Le=Fe.digest,Fe.completed?Ne=Math.round(Fe.completed/Fe.total*1e3)/10:Ne=100))}}catch($e){rt.error(`${$e}`)}}}}s(oe,""),e(c)&&We(c,e(c).value=""),s(we,null),s(ee,!1),s(Me,null),ba.set(await La(localStorage.token,((he=(ye=n())==null?void 0:ye.features)==null?void 0:he.enable_direct_connections)&&(((q=Ie())==null?void 0:q.directConnections)??null)))},ie=async()=>{var H,pe,ye;await wg(localStorage.token,e(Re),E()).catch(he=>{rt.error(`${he}`)})&&rt.success(f().t("Deleted {{deleteModelTag}}",{deleteModelTag:e(Re)})),s(Re,""),ba.set(await La(localStorage.token,((pe=(H=n())==null?void 0:H.features)==null?void 0:pe.enable_direct_connections)&&(((ye=Ie())==null?void 0:ye.directConnections)??null))),s(V,await kg(localStorage.token,E()).catch(he=>(rt.error(`${he}`),null)))},M=async F=>{const H=w[F];H&&(H.abort(),Te=!0)},ve=async F=>{const{reader:H,abortController:pe}=t()[F];pe&&pe.abort(),H&&(await H.cancel(),delete t()[F],Wo.set({...t()}),await wg(localStorage.token,F),rt.success(f().t("{{model}} download has been canceled",{model:F})))},te=async()=>{var pe,ye,he;s(Pe,!0);let F={};try{F=JSON.parse(e(m))}catch(q){rt.error(`${q}`),s(Pe,!1);return}const H=await Ag(localStorage.token,{model:e(se),...F},E()).catch(q=>(rt.error(`${q}`),null));if(H&&H.ok){const q=H.body.pipeThrough(new TextDecoderStream).pipeThrough(As(` 71`)).getReader();for(;;){const{value:P,done:Q}=await q.read();if(Q)break;try{let re=P.split(` 72`);for(const le of re)if(le!==""){let $e=JSON.parse(le);if($e.error)throw $e.error;if($e.detail)throw $e.detail;$e.status&&(!$e.digest&&!$e.status.includes("writing")&&!$e.status.includes("sha256")?rt.success($e.status):$e.digest&&(s(ce,$e.digest),$e.completed?s(De,Math.round($e.completed/$e.total*1e3)/10):s(De,100)))}}catch(re){rt.error(`${re}`)}}}ba.set(await La(localStorage.token,((ye=(pe=n())==null?void 0:pe.features)==null?void 0:ye.enable_direct_connections)&&(((he=Ie())==null?void 0:he.directConnections)??null))),s(Pe,!1),s(se,""),s(m,""),s(ce,""),s(De,null)},ge=async()=>{s(A,!0),s(V,await kg(localStorage.token,E()).catch(F=>(rt.error(`${F}`),null))),e(V)&&s(A,!1)};Kt(()=>it(E()),()=>{E()!==null&&ge()}),la(),gr();var _e=OS(),Ae=Qe(_e);Ca(Ae,{get show(){return e(x)},set show(F){s(x,F)},$$events:{confirm:()=>{ie()}},$$legacy:!0});var U=o(Ae,2);{var T=F=>{var H=CS(),pe=a(H),ye=a(pe),he=a(ye),q=a(he),P=a(q),Q=a(P,!0);r(P);var re=o(P,2),le=a(re);Lt(le,{content:"Update All Models",placement:"top",children:(yt,$t)=>{var rr=cS();g(Rt=>Be(rr,"aria-label",Rt),[()=>(f(),l(()=>f().t("Update All Models")))]),ke("click",rr,()=>{K()}),i(yt,rr)},$$slots:{default:!0}}),r(re),r(q);var $e=o(q,2),ze=a($e),Fe=a(ze);vt(Fe),k(Fe,1,me(ue)),r(ze);var at=o(ze,2);{let yt=v(()=>(f(),l(()=>f().t("Pull Model"))));Lt(at,{get content(){return e(yt)},placement:"top",children:($t,rr)=>{var Rt=_S();k(Rt,1,me(xe));var Wt=a(Rt);{var or=Et=>{var St=uS();i(Et,St)},$r=Et=>{var St=gS();i(Et,St)};G(Wt,Et=>{e(ee)?Et(or):Et($r,-1)})}r(Rt),g(Et=>Rt.disabled=Et,[()=>(e(ee),e(ae),l(()=>e(ee)||e(ae).trim()===""))]),ke("click",Rt,()=>{Oe()}),i($t,Rt)},$$slots:{default:!0}})}r($e);var tt=o($e,2),Je=a(tt),je=o(Je),ne=a(je,!0);r(je),r(tt);var J=o(tt,2);{var W=yt=>{var $t=fS(),rr=a($t),Rt=a(rr);r(rr);var Wt=o(rr,2);{let or=v(()=>(f(),l(()=>f().t("Cancel"))));Lt(Wt,{get content(){return e(or)},children:($r,Et)=>{var St=p_();g(Dt=>Be(St,"aria-label",Dt),[()=>(f(),l(()=>f().t("Cancel")))]),ke("click",St,()=>{M(e(B))}),i($r,St)},$$slots:{default:!0}})}r($t),g(()=>d(Rt,`Updating "${e(B)??""}" ${e(j)?`(${e(j)}%)`:""}`)),i(yt,$t)};G(J,yt=>{e(B)&&yt(W)})}var Z=o(J,2);{var Ee=yt=>{var $t=Wr(),rr=Qe($t);lr(rr,1,()=>(t(),l(()=>Object.keys(t()))),Ar,(Rt,Wt)=>{var or=Wr(),$r=Qe(or);{var Et=St=>{var Dt=pS(),ar=a(Dt),Tr=a(ar,!0);r(ar);var tr=o(ar,2),ur=a(tr),_r=a(ur),br=a(_r),kt=a(br);r(br),r(_r);var jr=o(_r,2);{let Ot=v(()=>(f(),l(()=>f().t("Cancel"))));Lt(jr,{get content(){return e(Ot)},children:(Ht,Xt)=>{var er=p_();g(xr=>Be(er,"aria-label",xr),[()=>(f(),l(()=>f().t("Cancel")))]),ke("click",er,()=>{ve(e(Wt))}),i(Ht,er)},$$slots:{default:!0}})}r(ur);var qt=o(ur,2);{var At=Ot=>{var Ht=m_(),Xt=a(Ht,!0);r(Ht),g(()=>d(Xt,(t(),e(Wt),l(()=>t()[e(Wt)].digest)))),i(Ot,Ht)};G(qt,Ot=>{t(),e(Wt),l(()=>"digest"in t()[e(Wt)])&&Ot(At)})}r(tr),r(Dt),g(Ot=>{d(Tr,e(Wt)),bl(br,`width: ${Ot??""}%`),d(kt,`${t(),e(Wt),l(()=>t()[e(Wt)].pullProgress??0)??""}%`)},[()=>(t(),e(Wt),l(()=>Math.max(15,t()[e(Wt)].pullProgress??0)))]),i(St,Dt)};G($r,St=>{t(),e(Wt),l(()=>"pullProgress"in t()[e(Wt)])&&St(Et)})}i(Rt,or)}),i(yt,$t)},Ge=Qr(()=>(t(),l(()=>Object.keys(t()).length>0)));G(Z,yt=>{e(Ge)&&yt(Ee)})}r(he);var p=o(he,2),$=a(p),S=a($,!0);r($);var L=o($,2),fe=a(L),y=a(fe);{let yt=v(()=>(f(),l(()=>f().t("Select a model"))));aa(y,{className:"w-full",get placeholder(){return e(yt)},get value(){return e(Re)},set value($t){s(Re,$t)},children:($t,rr)=>{var Rt=hS(),Wt=Qe(Rt),or=a(Wt,!0);r(Wt),Wt.value=Wt.__value="";
72var $r=o(Wt,2);lr($r,1,()=>e(V),Ar,(Et,St)=>{var Dt=mS(),ar=a(Dt,!0);r(Dt);var Tr={};g(tr=>{d(ar,tr),Tr!==(Tr=(e(St),l(()=>e(St).id)))&&(Dt.value=(Dt.__value=(e(St),l(()=>e(St).id)))??"")},[()=>(e(St),l(()=>e(St).name+" ("+(e(St).size/1073741824).toFixed(1)+" GB)"))]),i(Et,Dt)}),g(Et=>d(or,Et),[()=>(f(),l(()=>f().t("Select a model")))]),i($t,Rt)},$$slots:{default:!0},$$legacy:!0})}r(fe);var b=o(fe,2);{let yt=v(()=>(f(),l(()=>f().t("Delete Model"))));Lt(b,{get content(){return e(yt)},placement:"top",children:($t,rr)=>{var Rt=xS();k(Rt,1,me(xe)),g(Wt=>{Be(Rt,"aria-label",Wt),Rt.disabled=e(Re)===""},[()=>(f(),l(()=>f().t("Delete Model")))]),ke("click",Rt,()=>{s(x,!0)}),i($t,Rt)},$$slots:{default:!0}})}r(L),r(p);var N=o(p,2),z=a(N),Ue=a(z,!0);r(z);var Ye=o(z,2),Ve=a(Ye),lt=a(Ve);vt(lt),k(lt,1,me(ue));var st=o(lt,2);So(st),k(st,1,"w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2.5 py-2 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 disabled:opacity-50 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500 resize-none scrollbar-hidden"),Be(st,"placeholder",'e.g. {"model": "my-modelfile", "from": "ollama:7b"})'),r(Ve);var Ke=o(Ve,2),Ze=a(Ke);{let yt=v(()=>(f(),l(()=>f().t("Create Model"))));Lt(Ze,{get content(){return e(yt)},placement:"top",children:($t,rr)=>{var Rt=bS();k(Rt,1,me(xe)),g((Wt,or)=>{Be(Rt,"aria-label",Wt),Rt.disabled=or},[()=>(f(),l(()=>f().t("Create Model"))),()=>(e(Pe),e(se),e(m),l(()=>e(Pe)||e(se).trim()===""||e(m).trim()===""))]),ke("click",Rt,()=>{te()}),i($t,Rt)},$$slots:{default:!0}})}r(Ke),r(Ye);var ot=o(Ye,2);{var ut=yt=>{var $t=yS(),rr=a($t);rr.textContent=createModelTag;var Rt=o(rr,2),Wt=a(Rt),or=a(Wt),$r=a(or),Et=a($r);r($r),r(or),r(Wt);var St=o(Wt,2);{var Dt=ar=>{var Tr=m_(),tr=a(Tr,!0);r(Tr),g(()=>d(tr,e(ce))),i(ar,Tr)};G(St,ar=>{e(ce)&&ar(Dt)})}r(Rt),r($t),g(ar=>{bl($r,`width: ${ar??""}%`),d(Et,`${e(De)??0??""}%`)},[()=>(e(De),l(()=>Math.max(15,e(De)??0)))]),i(yt,$t)};G(ot,yt=>{e(ce)!==""&&yt(ut)})}r(N);var _t=o(N,2),nt=a(_t),et=a(nt),gt=a(et);Bd(gt,{}),r(et);var It=o(et,2),Mt=a(It,!0);r(It),r(nt),r(_t);var jt=o(_t,2);{var Tt=yt=>{var $t=PS(),rr=a($t),Rt=a(rr),Wt=a(Rt,!0);r(Rt);var or=o(Rt,2),$r=a(or);{var Et=Qt=>{var fr=h_(),wt=a(fr,!0);r(fr),g(ht=>d(wt,ht),[()=>(f(),l(()=>f().t("File Mode")))]),i(Qt,fr)},St=Qt=>{var fr=h_(),wt=a(fr,!0);r(fr),g(ht=>d(wt,ht),[()=>(f(),l(()=>f().t("URL Mode")))]),i(Qt,fr)};G($r,Qt=>{e(Ce)==="file"?Qt(Et):Qt(St,-1)})}r(or),r(rr);var Dt=o(rr,2),ar=a(Dt),Tr=a(ar);{var tr=Qt=>{var fr=$S(),wt=a(fr);Oa(wt,Ct=>s(c,Ct),()=>e(c));var ht=o(wt,2);k(ht,1,me(ue));var zt=a(ht);{var ir=Ct=>{var Er=Mr();g(()=>d(Er,(e(we),l(()=>e(we)[0].name)))),i(Ct,Er)},dr=Ct=>{var Er=Mr();g(Bt=>d(Er,Bt),[()=>(f(),l(()=>f().t("Click here to select")))]),i(Ct,Er)};G(zt,Ct=>{e(we),l(()=>e(we)&&e(we).length>0)?Ct(ir):Ct(dr,-1)})}r(ht),r(fr),g(()=>k(fr,1,`flex-1 ${e(we),l(()=>e(we)&&e(we).length>0?"mr-2":"")??""}`)),as(wt,()=>e(we),Ct=>s(we,Ct)),ke("change",wt,()=>{e(we)}),ke("click",ht,()=>{e(c).click()}),i(Qt,fr)},ur=Qt=>{var fr=wS(),wt=a(fr);vt(wt),k(wt,1,me(ue)),r(fr),g(ht=>{k(fr,1,`flex-1 ${e(oe)!==""?"mr-2":""}`),Be(wt,"placeholder",ht)},[()=>(f(),l(()=>f().t("Type Hugging Face Resolve (Download) URL")))]),dt(wt,()=>e(oe),ht=>s(oe,ht)),i(Qt,fr)};G(Tr,Qt=>{e(Ce)==="file"?Qt(tr):Qt(ur,-1)})}r(ar);var _r=o(ar,2);{var br=Qt=>{{let fr=v(()=>(f(),l(()=>f().t("Upload Model"))));Lt(Qt,{get content(){return e(fr)},placement:"top",children:(wt,ht)=>{var zt=AS();k(zt,1,me(xe));var ir=a(zt);{var dr=Er=>{var Bt=kS();i(Er,Bt)},Ct=Er=>{var Bt=ES();i(Er,Bt)};G(ir,Er=>{e(ee)?Er(dr):Er(Ct,-1)})}r(zt),g(()=>zt.disabled=e(ee)),i(wt,zt)},$$slots:{default:!0}})}};G(_r,Qt=>{e(Ce),e(we),e(oe),l(()=>e(Ce)==="file"&&e(we)&&e(we).length>0||e(Ce)==="url"&&e(oe)!=="")&&Qt(br)})}r(Dt);var kt=o(Dt,2);{var jr=Qt=>{var fr=IS(),wt=a(fr),ht=a(wt),zt=a(ht,!0);r(ht);var ir=o(ht,2);So(ir),k(ir,1,"w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2.5 py-2 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 disabled:opacity-50 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500 resize-none"),r(wt),r(fr),g(dr=>d(zt,dr),[()=>(f(),l(()=>f().t("Modelfile Content")))]),dt(ir,()=>e(de),dr=>s(de,dr)),i(Qt,fr)};G(kt,Qt=>{e(Ce),e(we),e(oe),l(()=>e(Ce)==="file"&&e(we)&&e(we).length>0||e(Ce)==="url"&&e(oe)!=="")&&Qt(jr)})}
72var qt=o(kt,2),At=a(qt),Ot=o(At),Ht=a(Ot,!0);r(Ot),r(qt);var Xt=o(qt,2);{var er=Qt=>{var fr=SS(),wt=a(fr),ht=a(wt,!0);r(wt);var zt=o(wt,2),ir=a(zt),dr=a(ir,!0);r(ir),r(zt);var Ct=o(zt,2),Er=a(Ct,!0);r(Ct),r(fr),g(Bt=>{d(ht,Bt),d(dr,e(qe)),d(Er,e(be))},[()=>(f(),l(()=>f().t("Upload Progress")))]),i(Qt,fr)},xr=Qt=>{var fr=NS(),wt=a(fr),ht=a(wt,!0);r(wt);var zt=o(wt,2),ir=a(zt),dr=a(ir);r(ir),r(zt);var Ct=o(zt,2),Er=a(Ct,!0);r(Ct),r(fr),g((Bt,Ft)=>{d(ht,Bt),bl(ir,`width: ${Ft??""}%`),d(dr,`${e(Me)??0??""}%`),d(Er,e(be))},[()=>(f(),l(()=>f().t("Upload Progress"))),()=>(e(Me),l(()=>Math.max(15,e(Me)??0)))]),i(Qt,fr)};G(Xt,Qt=>{e(qe)?Qt(er):e(Me)!==null&&Qt(xr,1)})}r($t),g((Qt,fr,wt)=>{d(Wt,Qt),d(At,`${fr??""} `),d(Ht,wt)},[()=>(f(),l(()=>f().t("Upload a GGUF model"))),()=>(f(),l(()=>f().t("To access the GGUF models available for downloading,"))),()=>(f(),l(()=>f().t("click here.")))]),ke("click",or,()=>{e(Ce)==="file"?s(Ce,"url"):s(Ce,"file")}),ke("submit",$t,ca(()=>{O()})),i(yt,$t)};G(jt,yt=>{e(Se)&&yt(Tt)})}r(ye),r(pe),r(H),g((yt,$t,rr,Rt,Wt,or,$r,Et)=>{d(Q,yt),Be(Fe,"placeholder",$t),d(Je,`${rr??""} `),d(ne,Rt),d(S,Wt),d(Ue,or),Be(lt,"placeholder",$r),lt.disabled=e(Pe),st.disabled=e(Pe),d(Mt,Et)},[()=>(f(),l(()=>f().t("Pull a model from Ollama.com"))),()=>(f(),l(()=>f().t("Enter model tag (e.g. {{modelTag}})",{modelTag:"mistral:7b"}))),()=>(f(),l(()=>f().t("To access the available model names for downloading,"))),()=>(f(),l(()=>f().t("click here."))),()=>(f(),l(()=>f().t("Delete a model"))),()=>(f(),l(()=>f().t("Create a model"))),()=>(f(),l(()=>f().t("Enter model tag (e.g. {{modelTag}})",{modelTag:"my-modelfile"}))),()=>(e(Se),f(),l(()=>e(Se)?f().t("Hide"):f().t("Show")))]),dt(Fe,()=>e(ae),yt=>s(ae,yt)),dt(lt,()=>e(se),yt=>s(se,yt)),dt(st,()=>e(m),yt=>s(m,yt)),ke("click",It,()=>{s(Se,!e(Se))}),i(F,H)},C=F=>{var H=TS(),pe=a(H,!0);r(H),g(ye=>d(pe,ye),[()=>(f(),l(()=>f().t("Failed to fetch models")))]),i(F,H)},D=F=>{var H=LS(),pe=a(H);ra(pe,{className:"size-5"}),r(H),i(F,H)};G(U,F=>{e(A)?e(V)===null?F(C,1):F(D,-1):F(T)})}i(He,_e),cr(),R()}var MS=u('<div><div class=" flex justify-between dark:text-gray-100 px-4 pt-3 pb-1"><div class="flex w-full justify-between items-center text-sm font-medium self-center"><div class=" shrink-0"> </div></div>
72 <button class="self-center rounded-lg p-1 text-gray-500 transition hover:bg-gray-50 hover:text-gray-700 dark:text-gray-400 dark:hover:bg-gray-800 dark:hover:text-gray-200"><!></button></div> <div class="flex flex-col md:flex-row w-full px-4 pb-4 md:space-x-4 dark:text-gray-200"><!></div></div>');function RS(He,_){vr(_,!1);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr(),Ie=mr("i18n");let X=Xe(_,"show",12,!1),R=Xe(_,"urlIdx",8,null);gr(),Wa(He,{size:"sm",className:"bg-white dark:bg-gray-900 rounded-4xl",get show(){return X()},set show(I){X(I)},children:(I,c)=>{var x=MS(),A=a(x),E=a(A),V=a(E),B=a(V,!0);r(V),r(E);var j=o(E,2),w=a(j);wa(w,{className:"size-4"}),r(j),r(A);var Te=o(A,2),Se=a(Te);tp(Se,{get urlIdx(){return R()}}),r(Te),r(x),g(Y=>d(B,Y),[()=>(t(),l(()=>t().t("Manage Ollama")))]),ke("click",j,()=>{X(!1)}),i(I,x)},$$slots:{default:!0},$$legacy:!0}),cr(),n()}var DS=u('<div class="absolute top-0 bottom-0 left-0 right-0 opacity-60 bg-white dark:bg-gray-900 z-10"></div>'),US=u('<!> <input class="w-full text-sm bg-transparent outline-hidden"/>
72',1),x_=u('<button class="self-center p-1 bg-transparent hover:bg-gray-100 dark:hover:bg-gray-850 rounded-lg transition" type="button"><!></button>'),BS=u('<!> <!> <div class="flex gap-1.5"><!> <div class="flex gap-1 items-center"><!> <!> <!></div></div>',1);function GS(He,_){vr(_,!1);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr(),Ie=mr("i18n");let X=Xe(_,"onDelete",8,()=>{}),R=Xe(_,"onSubmit",8,()=>{}),I=Xe(_,"url",12,""),c=Xe(_,"idx",8,0),x=Xe(_,"config",28,()=>({})),A=h(!1),E=h(!1);gr();var V=BS(),B=Qe(V);{let Pe=v(()=>(it(I()),it(x()),l(()=>{var se;return{url:I(),key:((se=x())==null?void 0:se.key)??"",config:x()}})));rs(B,{ollama:!0,edit:!0,get connection(){return e(Pe)},onDelete:()=>{X()(),s(E,!1)},onSubmit:se=>{I(se.url),x({...se.config,key:se.key}),R()(se)},get show(){return e(E)},set show(se){s(E,se)},$$legacy:!0})}var j=o(B,2);RS(j,{get urlIdx(){return c()},get show(){return e(A)},set show(Pe){s(A,Pe)},$$legacy:!0});var w=o(j,2),Te=a(w);{let Pe=v(()=>(t(),it(I()),l(()=>t().t('WebUI will make requests to "{{url}}/api/chat"',{url:I()}))));Lt(Te,{className:"w-full relative",get content(){return e(Pe)},placement:"top-start",children:(se,m)=>{var ce=US(),De=Qe(ce);{var Le=Ce=>{var we=DS();i(Ce,we)};G(De,Ce=>{it(x()),l(()=>{var we;return!(((we=x())==null?void 0:we.enable)??!0)})&&Ce(Le)})}var Ne=o(De,2);vt(Ne),Ne.readOnly=!0,g(Ce=>Be(Ne,"placeholder",Ce),[()=>(t(),l(()=>t().t("Enter URL (e.g. http://localhost:11434)")))]),dt(Ne,I),i(se,ce)},$$slots:{default:!0}})}var Se=o(Te,2),Y=a(Se);{let Pe=v(()=>(t(),l(()=>t().t("Manage"))));Lt(Y,{get content(){return e(Pe)},className:"self-start",children:(se,m)=>{var ce=x_(),De=a(ce);Vs(De,{}),r(ce),ke("click",ce,()=>{s(A,!0)}),i(se,ce)},$$slots:{default:!0}})}var ee=o(Y,2);{let Pe=v(()=>(t(),l(()=>t().t("Configure"))));Lt(ee,{get content(){return e(Pe)},className:"self-start",children:(se,m)=>{var ce=x_(),De=a(ce);jl(De,{}),r(ce),ke("click",ce,()=>{s(E,!0)}),i(se,ce)},$$slots:{default:!0}})}var ae=o(ee,2);{let Pe=v(()=>(it(x()),t(),l(()=>{var se;return((se=x())==null?void 0:se.enable)??!0?t().t("Enabled"):t().t("Disabled")})));Lt(ae,{get content(){return e(Pe)},children:(se,m)=>{Nt(se,{get state(){return x().enable},set state(ce){x(x().enable=ce,!0)},$$events:{change:()=>{var ce;x(x().enable=x().enable??!1,!0),R()({url:I(),key:((ce=x())==null?void 0:ce.key)??"",config:x()})}},$$legacy:!0})},$$slots:{default:!0}})}r(Se),r(w),i(He,V),cr(),n()}var b_=u('<button class="flex size-6 items-center justify-center rounded-lg text-gray-400 transition-colors hover:bg-black/5 hover:text-gray-700 dark:text-gray-600 dark:hover:bg-white/5 dark:hover:text-gray-300" type="button"><!></button>'),jS=u('<div><div class="mb-2 flex items-center justify-between gap-4"><div class="text-xs text-gray-600 dark:text-gray-400"> </div> <!></div> <div class="flex flex-col gap-1.5"></div></div>'),HS=u('<div><div class="mb-2 flex items-center justify-between gap-4"><div class="text-xs text-gray-600 dark:text-gray-400"> </div> <!></div> <div class="flex flex-col gap-1.5"></div> <div class="mt-1 text-[0.6875rem] text-gray-400 dark:text-gray-600"> <a class="font-normal underline hover:text-gray-700 dark:hover:text-gray-300" href="https://github.com/open-webui/open-webui#troubleshooting" target="_blank"> </a></div></div>'),FS=u("<!> <!> <!> <!>",1),WS=u('<button class="flex size-6 items-center justify-center rounded-lg text-gray-400 transition-colors hover:bg-black/5 hover:text-gray-700 disabled:cursor-not-allowed disabled:opacity-50 dark:text-gray-600 dark:hover:bg-white/5 dark:hover:text-gray-300" type="button"><!></button>'),zS=u('<div class="flex items-center gap-1.5"><!> <!></div>'),y_=u("<!> <!>",1),KS=u('<div class="flex h-full justify-center"><div class="my-auto"><!></div></div>'),YS=u('<!> <!> <form class="flex h-full flex-col justify-between text-sm"><h2 class="text-sm font-medium text-gray-900 dark:text-white mb-4"> </h2> <div class="flex-1 min-h-0 overflow-y-auto scrollbar-hover pr-1.5"><!></div> <div class="flex justify-end pt-6 text-sm font-normal"><button class="px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full" t
72ype="submit"> </button></div></form>',1);function VS(He,_){vr(_,!1);const t=()=>ct(_a,"$config",X),f=()=>ct(ua,"$settings",X),n=()=>ct(c,"$i18n",X),Ie=()=>ct(ka,"$user",X),[X,R]=hr(),I=ja(),c=mr("i18n"),x=async()=>{var ve,te,ge;return await La(localStorage.token,(te=(ve=t())==null?void 0:ve.features)!=null&&te.enable_direct_connections?((ge=f())==null?void 0:ge.directConnections)??null:null,!1,!0)};let A=h([""]),E=h({}),V=h([""]),B=h([""]),j=h({}),w=h(null),Te=h(null),Se=h(null),Y=h({}),ee=h(!1),ae=h(!1),Pe=h(!1);const se=async()=>{if(e(w)!==null){if(s(B,e(B).map(ve=>ve.replace(/\/$/,""))),e(V).length!==e(B).length&&(e(V).length>e(B).length&&s(V,e(V).slice(0,e(B).length)),e(V).length<e(B).length)){const ve=e(B).length-e(V).length;for(let te=0;te<ve;te++)e(V).push("")}await Qx(localStorage.token,{ENABLE_OPENAI_API:e(w),OPENAI_API_BASE_URLS:e(B),OPENAI_API_KEYS:e(V),OPENAI_API_CONFIGS:e(j)}).catch(ve=>{rt.error(`${ve}`)})&&(rt.success(n().t("OpenAI API settings updated")),await ba.set(await x()))}},m=async()=>{e(Te)!==null&&(s(A,e(A).map(ve=>ve.replace(/\/$/,""))),await Gx(localStorage.token,{ENABLE_OLLAMA_API:e(Te),OLLAMA_BASE_URLS:e(A),OLLAMA_API_CONFIGS:e(E)}).catch(ve=>{rt.error(`${ve}`)})&&(rt.success(n().t("Ollama API settings updated")),await ba.set(await x())))},ce=async()=>{await Rm(localStorage.token,e(Se)).catch(ve=>{rt.error(`${ve}`)})&&(rt.success(n().t("Connections settings updated")),await ba.set(await x()),await _a.set(await so()))},De=async()=>{s(Pe,!0);try{await ba.set(await x()),rt.success(n().t("Model list refreshed"))}catch(M){rt.error(`${M}`)}finally{s(Pe,!1)}},Le=async M=>{s(B,[...e(B),M.url]),s(V,[...e(V),M.key]),We(j,e(j)[e(B).length-1]=M.config),await se()},Ne=async M=>{s(A,[...e(A),M.url]),We(E,e(E)[e(A).length-1]={...M.config,key:M.key}),await m()};ea(async()=>{var M;if(((M=Ie())==null?void 0:M.role)==="admin"){let ve={},te={};if(await Promise.all([(async()=>{ve=await Nf(localStorage.token)})(),(async()=>{te=await Cf(localStorage.token)})(),(async()=>{s(Se,await Mm(localStorage.token))})()]),s(w,te.ENABLE_OPENAI_API),s(Te,ve.ENABLE_OLLAMA_API),s(B,te.OPENAI_API_BASE_URLS),s(V,te.OPENAI_API_KEYS),s(j,te.OPENAI_API_CONFIGS),s(A,ve.OLLAMA_BASE_URLS),s(E,ve.OLLAMA_API_CONFIGS),e(w)){for(const[ge,_e]of e(B).entries())e(j)[ge]||We(j,e(j)[ge]=e(j)[_e]||{});e(B).forEach(async(ge,_e)=>{var U;if(We(j,e(j)[_e]=e(j)[_e]||{}),!(((U=e(j)[_e])==null?void 0:U.enable)??!0))return;(await Zx(localStorage.token,_e)).pipelines&&We(Y,e(Y)[ge]=!0)})}if(e(Te))for(const[ge,_e]of e(A).entries())e(E)[ge]||We(E,e(E)[ge]=e(E)[_e]||{})}});const Ce=async()=>{se(),m(),I("save"),await _a.set(await so())};gr();var we=YS(),oe=Qe(we);rs(oe,{onSubmit:Le,get show(){return e(ee)},set show(M){s(ee,M)},$$legacy:!0});var de=o(oe,2);rs(de,{ollama:!0,onSubmit:Ne,get show(){return e(ae)},set show(M){s(ae,M)},$$legacy:!0});var be=o(de,2),Me=a(be),qe=a(Me,!0);r(Me);var Re=o(Me,2),ue=a(Re);{var xe=M=>{var ve=y_(),te=Qe(ve);va(te,{first:!0,children:(_e,Ae)=>{var U=FS(),T=Qe(U);{let ye=v(()=>n().t("OpenAI API"));Jt(T,{get label(){return e(ye)},children:Ir,$$slots:{default:(he,q)=>{const P=v(()=>q.labelId);Nt(he,{get ariaLabelledbyId(){return e(P)},get state(){return e(w)},set state(Q){s(w,Q)},$$events:{change:async()=>{se()}},$$legacy:!0})}}})}var C=o(T,2);{var D=ye=>{var he=jS(),q=a(he),P=a(q),Q=a(P,!0);r(P);var re=o(P,2);{let $e=v(()=>n().t("Add Connection"));Lt(re,{get content(){return e($e)},children:(ze,Fe)=>{var at=b_(),tt=a(at);Ya(tt,{}),r(at),ke("click",at,()=>{s(ee,!0)}),i(ze,at)},$$slots:{default:!0}})}r(q);var le=o(q,2);lr(le,5,()=>e(B),Ar,($e,ze,Fe)=>{{let at=v(()=>!!e(Y)[e(ze)]);vS($e,{get pipeline(){return e(at)},onSubmit:()=>{se()},onDelete:()=>{s(B,e(B).filter((Je,je)=>Fe!==je)),s(V,e(V).filter((Je,je)=>Fe!==je));let tt={};e(B).forEach((Je,je)=>{tt[je]=e(j)[je<Fe?je:je+1]}),s(j,tt),se()},get url(){return e(B)[Fe]},set url(tt){We(B,e(B)[Fe]=tt)},get key(){return e(V)[Fe]},set key(tt){We(V,e(V)[Fe]=tt)},get config(){return e(j)[Fe]},set config(tt){We(j,e(j)[Fe]=tt)},$$legacy:!0})}}),r(le),r(he),g($e=>d(Q,$e),[()=>n().t("Manage OpenAI API Connections")]),i(ye,he)};G(C,ye=>{e(w)&&ye(D)})}var F=o(C,2);{let ye=v(()=>n().t("Ollama API"));Jt(F,{get label(){return e(ye)},children:Ir,$$slots:{default:(he,q)=>{const P=v(()=>q.labelId);Nt(he,{get ariaLabelledbyId(){return e(P)}
72,get state(){return e(Te)},set state(Q){s(Te,Q)},$$events:{change:async()=>{m()}},$$legacy:!0})}}})}var H=o(F,2);{var pe=ye=>{var he=HS(),q=a(he),P=a(q),Q=a(P,!0);r(P);var re=o(P,2);{let tt=v(()=>n().t("Add Connection"));Lt(re,{get content(){return e(tt)},children:(Je,je)=>{var ne=b_(),J=a(ne);Ya(J,{}),r(ne),ke("click",ne,()=>{s(ae,!0)}),i(Je,ne)},$$slots:{default:!0}})}r(q);var le=o(q,2);lr(le,5,()=>e(A),Ar,(tt,Je,je)=>{GS(tt,{idx:je,onSubmit:()=>{m()},onDelete:()=>{s(A,e(A).filter((J,W)=>je!==W));let ne={};e(A).forEach((J,W)=>{ne[W]=e(E)[W<je?W:W+1]}),s(E,ne),m()},get url(){return e(A)[je]},set url(ne){We(A,e(A)[je]=ne)},get config(){return e(E)[je]},set config(ne){We(E,e(E)[je]=ne)},$$legacy:!0})}),r(le);var $e=o(le,2),ze=a($e),Fe=o(ze),at=a(Fe,!0);r(Fe),r($e),r(he),g((tt,Je,je)=>{d(Q,tt),d(ze,`${Je??""} `),d(at,je)},[()=>n().t("Manage Ollama API Connections"),()=>n().t("Trouble accessing Ollama?"),()=>n().t("Click here for help.")]),i(ye,he)};G(H,ye=>{e(Te)&&ye(pe)})}i(_e,U)},$$slots:{default:!0}});var ge=o(te,2);{let _e=v(()=>n().t("User Connections"));va(ge,{get title(){return e(_e)},children:(Ae,U)=>{var T=y_(),C=Qe(T);{let F=v(()=>n().t("Direct Connections")),H=v(()=>n().t("Direct Connections allow users to connect to their own OpenAI compatible API endpoints."));Jt(C,{get label(){return e(F)},get description(){return e(H)},children:Ir,$$slots:{default:(pe,ye)=>{const he=v(()=>ye.labelId);Nt(pe,{get ariaLabelledbyId(){return e(he)},get state(){return e(Se).ENABLE_DIRECT_CONNECTIONS},set state(q){We(Se,e(Se).ENABLE_DIRECT_CONNECTIONS=q)},$$events:{change:async()=>{ce()}},$$legacy:!0})}}})}var D=o(C,2);{let F=v(()=>n().t("Cache Base Model List")),H=v(()=>n().t("Base Model List Cache speeds up access by fetching base models only at startup or on settings saveâfaster, but may not show recent base model changes."));Jt(D,{get label(){return e(F)},get description(){return e(H)},children:Ir,$$slots:{default:(pe,ye)=>{const he=v(()=>ye.labelId);var q=zS(),P=a(q);{var Q=le=>{{let $e=v(()=>n().t("Refresh"));Lt(le,{get content(){return e($e)},children:(ze,Fe)=>{var at=WS(),tt=a(at);{var Je=ne=>{ra(ne,{className:"size-3.5"})},je=ne=>{db(ne,{className:"size-4"})};G(tt,ne=>{e(Pe)?ne(Je):ne(je,-1)})}r(at),g(ne=>{at.disabled=e(Pe),Be(at,"aria-label",ne)},[()=>n().t("Refresh")]),ke("click",at,De),i(ze,at)},$$slots:{default:!0}})}};G(P,le=>{e(Se).ENABLE_BASE_MODELS_CACHE&&le(Q)})}var re=o(P,2);Nt(re,{get ariaLabelledbyId(){return e(he)},get state(){return e(Se).ENABLE_BASE_MODELS_CACHE},set state(le){We(Se,e(Se).ENABLE_BASE_MODELS_CACHE=le)},$$events:{change:async()=>{ce()}},$$legacy:!0}),r(q),i(pe,q)}}})}i(Ae,T)},$$slots:{default:!0}})}i(M,ve)},K=M=>{var ve=KS(),te=a(ve),ge=a(te);ra(ge,{className:"size-6"}),r(te),r(ve),i(M,ve)};G(ue,M=>{e(w)!==null&&e(Te)!==null&&e(Se)!==null?M(xe):M(K,-1)})}r(Re);var Oe=o(Re,2),O=a(Oe),ie=a(O,!0);r(O),r(Oe),r(be),g((M,ve)=>{d(qe,M),d(ie,ve)},[()=>n().t("Connections"),()=>n().t("Save")]),ke("submit",be,ca(Ce)),i(He,we),cr(),R()}var qS=u("<option> </option>"),XS=u('<div class=" mb-2 text-sm font-normal"> </div> <div class="flex-1 mb-2.5"><!></div> <div><!></div>',1);function JS(He,_){vr(_,!1);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr(),Ie=mr("i18n");let X=Xe(_,"ollamaConfig",8,null),R=h(0);gr();var I=Wr(),c=Qe(I);{var x=A=>{var E=XS(),V=Qe(E),B=a(V,!0);r(V);var j=o(V,2),w=a(j);{let Y=v(()=>(t(),l(()=>t().t("Select an Ollama instance"))));aa(w,{className:"w-full",get placeholder(){return e(Y)},get value(){return e(R)},set value(ee){s(R,ee)},children:(ee,ae)=>{var Pe=Wr(),se=Qe(Pe);lr(se,1,()=>(it(X()),l(()=>X().OLLAMA_BASE_URLS)),Ar,(m,ce,De)=>{var Le=qS(),Ne=a(Le,!0);r(Le),Le.value=Le.__value=De,g(()=>d(Ne,e(ce))),i(m,Le)}),i(ee,Pe)},$$slots:{default:!0},$$legacy:!0})}r(j);var Te=o(j,2),Se=a(Te);tp(Se,{get urlIdx(){return e(R)}}),r(Te),g(Y=>d(B,Y),[()=>(t(),l(()=>t().t("Ollama")))]),i(A,E)};G(c,A=>{X()&&A(x)})}i(He,I),cr(),n()}var ud=u('<button type="button"><!></button>'),ZS=u('<button type="submit"><!></button>'),QS=u('<div class="py-5"><!></div>'),eN=u('<div class="py-5 text-center text-xs text-gray-400"> </div>'),tN=u('<div class="truncate text-[0.65rem] text-gray-400"> </div>'),rN=u('<div class="flex items-center justify-between gap-2 border-b border-gray-100/50 px-2 py-2 last:border-b-0 dark:border-white/[0.04]"><div class="min-w-0 flex-1"><div class="truncate text-xs font-medium text-gray-700 dark:text-gray-200"> </div> <!> <div class="mt-1 flex items-center gap-1.5"><span> </span></div></div> <div class="flex shrink-0 gap-1"><!> <!> <!></div></div>'),aN=u('<div class="max-h-96 overflow-y-auto rounded-lg border border-gray-100/50 dark:border-white/[0.04]"></div>'),lN=u('<!> <div class="flex flex-col gap-3"><div class="flex items-center justify-between"><div class="text-sm font-normal"> </div> <!></div> <form class="flex gap-1.5"><input type="text" autocomplete="off"/> <!></form> <!></div>',1);function oN(He,_){vr(_,!1);const t=()=>ct(_a,"$config",Ie),f=()=>ct(ua,"$settings",Ie),n=()=>ct(R,"$i18n",Ie),[Ie,X]=hr(),R=mr("i18n");let I=Xe(_,"urlIdx",8),c=h(!0),x=h(""),A=h(""),E=h(""),V=h(!1),B=Xe(_,"provider",8,""),j=Xe(_,"providerLabel",8,""),w=Xe(_,"supportsDelete",8,!1),Te=h([]);const Se="h-7 w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2.5 text-left text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 disabled:opacity-50 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500",Y="inl
72ine-flex h-7 items-center justify-center rounded-lg border border-gray-100/50 bg-gray-50/40 px-2.5 text-gray-700 transition-colors hover:bg-gray-100 disabled:cursor-not-allowed disabled:opacity-50 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:hover:bg-white/[0.06]",ee=_e=>_e.key??_e.id??_e.name??_e.model??"",ae=_e=>_e.display_name??ee(_e),Pe=_e=>{var Ae,U;return((U=(Ae=_e.loaded_instances)==null?void 0:Ae[0])==null?void 0:U.id)??ee(_e)},se=_e=>{var U;if((U=_e.loaded_instances)!=null&&U.length)return"loaded";if(B()==="lmstudio")return"unloaded";const Ae=_e.status;return typeof Ae=="string"?Ae:(Ae==null?void 0:Ae.value)??"available"},m=_e=>_e==="loaded"||_e==="sleeping"?"bg-green-100 text-green-700 dark:bg-green-900/40 dark:text-green-300":_e==="loading"||_e==="downloading"?"bg-yellow-100 text-yellow-700 dark:bg-yellow-900/40 dark:text-yellow-300":"bg-gray-100 text-gray-600 dark:bg-gray-800 dark:text-gray-300",ce=_e=>(Array.isArray(_e)?_e:(_e==null?void 0:_e.models)??(_e==null?void 0:_e.data)??(_e==null?void 0:_e.items)??[]).map(U=>typeof U=="string"?{id:U,name:U}:U).filter(U=>ee(U)!=="").sort((U,T)=>ee(U).localeCompare(ee(T))),De=async()=>{s(c,!0);const _e=await eb(localStorage.token,I()).catch(Ae=>(rt.error(Dc(Ae)),null));s(Te,ce(_e)),s(c,!1)},Le=async()=>{var _e,Ae,U;await ba.set(await La(localStorage.token,(Ae=(_e=t())==null?void 0:_e.features)!=null&&Ae.enable_direct_connections?((U=f())==null?void 0:U.directConnections)??null:null))},Ne=async(_e,Ae,U)=>{s(x,_e),await Ae(localStorage.token,I(),_e).catch(C=>(rt.error(Dc(C)),null))&&(rt.success(U),await De(),await Le()),s(x,"")},Ce=async()=>{const _e=e(A).trim();_e&&(await Ne(_e,tb,n().t("Model download started")),s(A,""))},we=async _e=>{await Ne(_e,ab,n().t("Model loaded successfully"))},oe=async _e=>{const Ae=ee(_e),U=Pe(_e);s(x,Ae),await lb(localStorage.token,I(),Ae,U).catch(C=>(rt.error(Dc(C)),null))&&(rt.success(n().t("Model unloaded successfully")),await De(),await Le()),s(x,"")},de=async()=>{await Ne(e(E),rb,n().t("Model deleted successfully")),s(E,"")};ea(De),Kt(()=>it(I()),()=>{I()!==void 0&&De()}),la(),gr();var be=lN(),Me=Qe(be);{let _e=v(()=>(n(),l(()=>n().t("Delete Model")))),Ae=v(()=>(n(),l(()=>n().t("This will delete the cached model and cannot be undone."))));Ca(Me,{get title(){return e(_e)},get message(){return e(Ae)},onConfirm:de,get show(){return e(V)},set show(U){s(V,U)},$$legacy:!0})}var qe=o(Me,2),Re=a(qe),ue=a(Re),xe=a(ue,!0);r(ue);var K=o(ue,2);{let _e=v(()=>(n(),l(()=>n().t("Refresh"))));Lt(K,{get content(){return e(_e)},children:(Ae,U)=>{var T=ud();k(T,1,me(Y));var C=a(T);Yf(C,{className:"size-4"}),r(T),g(()=>T.disabled=e(c)),ke("click",T,De),i(Ae,T)},$$slots:{default:!0}})}r(Re);var Oe=o(Re,2),O=a(Oe);vt(O),k(O,1,me(Se));var ie=o(O,2);{let _e=v(()=>(n(),l(()=>n().t("Download Model"))));Lt(ie,{get content(){return e(_e)},children:(Ae,U)=>{var T=ZS();k(T,1,me(Y));var C=a(T);Vs(C,{className:"size-4"}),r(T),g(D=>T.disabled=D,[()=>(e(x),e(A),l(()=>e(x)!==""||e(A).trim()===""))]),i(Ae,T)},$$slots:{default:!0}})}r(Oe);var M=o(Oe,2);{var ve=_e=>{var Ae=QS(),U=a(Ae);ra(U,{}),r(Ae),i(_e,Ae)},te=_e=>{var Ae=eN(),U=a(Ae,!0);r(Ae),g(T=>d(U,T),[()=>(n(),l(()=>n().t("No models found")))]),i(_e,Ae)},ge=_e=>{var Ae=aN();lr(Ae,5,()=>e(Te),Ar,(U,T)=>{const C=v(()=>(e(T),l(()=>ee(e(T))))),D=v(()=>(e(T),l(()=>ae(e(T))))),F=v(()=>(e(T),l(()=>se(e(T)))));var H=rN(),pe=a(H),ye=a(pe),he=a(ye,!0);r(ye);var q=o(ye,2);{var P=Je=>{var je=tN(),ne=a(je,!0);r(je),g(()=>d(ne,e(C))),i(Je,je)};G(q,Je=>{e(D)!==e(C)&&Je(P)})}var Q=o(q,2),re=a(Q),le=a(re,!0);r(re),r(Q),r(pe);var $e=o(pe,2),ze=a($e);{let Je=v(()=>(n(),l(()=>n().t("Load Model"))));Lt(ze,{get content(){return e(Je)},children:(je,ne)=>{var J=ud();k(J,1,me(Y));var W=a(J);wb(W,{className:"size-4"}),r(J),g(Z=>{Be(J,"aria-label",Z),J.disabled=e(x)!==""||e(F)==="loaded"||e(F)==="loading"},[()=>(n(),l(()=>n().t("Load Model")))]),ke("click",J,()=>we(e(C))),i(je,J)},$$slots:{default:!0}})}var Fe=o(ze,2);{let Je=v(()=>(n(),l(()=>n().t("Unload Model"))));Lt(Fe,{get content(){return e(Je)},children:(je,ne)=>{var J=ud();k(J,1,me(Y));var W=a(J);wa(W,{className:"size-4"}),r(J),g(Z=>{Be(J,"aria-label",Z),J.disabled=e(x)!==""||e(F)==="unloaded"},[()=>(n(),l(()=>n().t("Unload Model")))]),ke("click",J,()=>oe(e(T))),i(je,J)},$$slots:{default:!0}})}var at=o(Fe,2);{var tt=Je=>{{let je=v(()=>(n(),l(()=>
72n().t("Delete Model"))));Lt(Je,{get content(){return e(je)},children:(ne,J)=>{var W=ud();k(W,1,me(Y));var Z=a(W);Wu(Z,{className:"size-4"}),r(W),g(Ee=>{Be(W,"aria-label",Ee),W.disabled=e(x)!==""},[()=>(n(),l(()=>n().t("Delete Model")))]),ke("click",W,()=>{s(E,e(C)),s(V,!0)}),i(ne,W)},$$slots:{default:!0}})}};G(at,Je=>{w()&&Je(tt)})}r($e),r(H),g(Je=>{d(he,e(D)),k(re,1,`rounded-full px-1.5 py-0.5 text-[0.65rem] ${Je??""}`),d(le,e(F))},[()=>(it(e(F)),l(()=>m(e(F))))]),i(U,H)}),r(Ae),i(_e,Ae)};G(M,_e=>{e(c)?_e(ve):(e(Te),l(()=>e(Te).length===0)?_e(te,1):_e(ge,-1))})}r(qe),g(_e=>{d(xe,j()||B()),Be(O,"placeholder",_e)},[()=>(n(),l(()=>n().t("Type a model ref")))]),dt(O,()=>e(A),_e=>s(A,_e)),ke("submit",Oe,ca(Ce)),i(He,be),cr(),X()}var sN=u("<option> </option>"),nN=u('<div class="mb-2 text-sm font-normal"> </div> <div class="mb-2.5 flex-1"><!></div> <div><!></div>',1);function iN(He,_){var B;vr(_,!1);const t=()=>ct(X,"$i18n",f),[f,n]=hr(),Ie=h(),X=mr("i18n");let R=Xe(_,"connections",24,()=>[]),I=h(`${((B=R()[0])==null?void 0:B.idx)??0}`);const c=(j="")=>j==="lmstudio"?t().t("LM Studio"):j==="llama.cpp"?t().t("llama.cpp"):j,x=(j="")=>j==="llama.cpp";Kt(()=>(it(R()),e(I)),()=>{R().length>0&&!R().some(j=>`${j.idx}`===e(I))&&s(I,`${R()[0].idx}`)}),Kt(()=>(it(R()),e(I)),()=>{s(Ie,R().find(j=>`${j.idx}`===e(I))??R()[0])}),la(),gr();var A=Wr(),E=Qe(A);{var V=j=>{var w=nN(),Te=Qe(w),Se=a(Te,!0);r(Te);var Y=o(Te,2),ee=a(Y);{let se=v(()=>(t(),l(()=>t().t("Select an instance"))));aa(ee,{className:"w-full",get placeholder(){return e(se)},get value(){return e(I)},set value(m){s(I,m)},children:(m,ce)=>{var De=Wr(),Le=Qe(De);lr(Le,1,R,Ar,(Ne,Ce)=>{var we=sN(),oe=a(we);r(we);var de={};g(be=>{d(oe,`${be??""} - ${e(Ce),l(()=>e(Ce).url)??""}`),de!==(de=(e(Ce),l(()=>`${e(Ce).idx}`)))&&(we.value=(we.__value=(e(Ce),l(()=>`${e(Ce).idx}`)))??"")},[()=>(e(Ce),l(()=>c(e(Ce).provider)))]),i(Ne,we)}),i(m,De)},$$slots:{default:!0},$$legacy:!0})}r(Y);var ae=o(Y,2),Pe=a(ae);{let se=v(()=>(e(I),l(()=>Number(e(I))))),m=v(()=>(e(Ie),l(()=>{var Le;return((Le=e(Ie))==null?void 0:Le.provider)??""}))),ce=v(()=>(e(Ie),l(()=>{var Le;return c((Le=e(Ie))==null?void 0:Le.provider)}))),De=v(()=>(e(Ie),l(()=>{var Le;return x((Le=e(Ie))==null?void 0:Le.provider)})));oN(Pe,{get urlIdx(){return e(se)},get provider(){return e(m)},get providerLabel(){return e(ce)},get supportsDelete(){return e(De)}})}r(ae),g(se=>d(Se,se),[()=>(t(),l(()=>t().t("Model providers")))]),i(j,w)};G(E,j=>{it(R()),l(()=>R().length>0)&&j(V)})}i(He,A),cr(),n()}var dN=u('<div class=" py-5 text-gray-400 text-xs"><div> </div></div>'),vN=u("<option> </option> <option> </option>",1),cN=u('<div class="mb-2"><!></div>'),uN=u('<div class=" flex w-full flex-col"><div class=" px-1.5 py-1"><!> <!></div></div>'),gN=u('<div class=" py-5"><!></div>'),_N=u('<div><div class=" flex justify-between dark:text-gray-100 px-4 pt-3 pb-1"><div class=" text-sm font-medium self-center"> </div>
72 <button class="self-center rounded-lg p-1 text-gray-500 transition hover:bg-gray-50 hover:text-gray-700 dark:text-gray-400 dark:hover:bg-gray-800 dark:hover:text-gray-200"><!></button></div> <div class="flex flex-col md:flex-row w-full px-3 pb-4 md:space-x-4 dark:text-gray-200"><div class=" flex flex-col w-full sm:flex-row sm:justify-center sm:space-x-6"><!></div></div></div>');function fN(He,_){vr(_,!1);const t=()=>ct(ka,"$user",n),f=()=>ct(I,"$i18n",n),[n,Ie]=hr(),X=h(),R=h(),I=mr("i18n");let c=Xe(_,"show",12,!1);const x=new Set(["llama.cpp","lmstudio"]);let A=h(null),E=h(null),V=h([]);ea(async()=>{var B,j,w;if(((B=t())==null?void 0:B.role)==="admin"){let Te=null;await Promise.all([(async()=>{s(E,await Nf(localStorage.token))})(),(async()=>{Te=await Cf(localStorage.token)})()]),s(V,Te!=null&&Te.ENABLE_OPENAI_API?(Te.OPENAI_API_BASE_URLS??[]).map((ee,ae)=>{var Pe,se,m,ce,De,Le,Ne;return{idx:ae,url:ee,provider:((ce=((Pe=Te.OPENAI_API_CONFIGS)==null?void 0:Pe[ae])??((se=Te.OPENAI_API_CONFIGS)==null?void 0:se[String(ae)])??((m=Te.OPENAI_API_CONFIGS)==null?void 0:m[ee])??{})==null?void 0:ce.provider)??"",config:((De=Te.OPENAI_API_CONFIGS)==null?void 0:De[ae])??((Le=Te.OPENAI_API_CONFIGS)==null?void 0:Le[String(ae)])??((Ne=Te.OPENAI_API_CONFIGS)==null?void 0:Ne[ee])??{}}}).filter(ee=>x.has(ee.provider)):[]);const Se=((j=e(E))==null?void 0:j.ENABLE_OLLAMA_API)&&(((w=e(E))==null?void 0:w.OLLAMA_BASE_URLS)??[]).length>0,Y=e(V).length>0;if(Se){s(A,"ollama");return}s(A,Y?"provider":"")}}),Kt(()=>e(E),()=>{var B,j;s(X,((B=e(E))==null?void 0:B.ENABLE_OLLAMA_API)&&(((j=e(E))==null?void 0:j.OLLAMA_BASE_URLS)??[]).length>0)}),Kt(()=>e(V),()=>{s(R,e(V).length>0)}),la(),gr(),Wa(He,{size:"sm",className:"bg-white dark:bg-gray-900 rounded-4xl",get show(){return c()},set show(B){c(B)},children:(B,j)=>{var w=_N(),Te=a(w),Se=a(Te),Y=a(Se,!0);r(Se);var ee=o(Se,2),ae=a(ee);wa(ae,{className:"size-4"}),r(ee),r(Te);var Pe=o(Te,2),se=a(Pe),m=a(se);{var ce=Ne=>{var Ce=dN(),we=a(Ce),oe=a(we,!0);r(we),r(Ce),g(de=>d(oe,de),[()=>(f(),l(()=>f().t("No inference engine with management support found")))]),i(Ne,Ce)},De=Ne=>{var Ce=uN(),we=a(Ce),oe=a(we);{var de=Re=>{var ue=cN(),xe=a(ue);{let K=v(()=>(f(),l(()=>f().t("Select an engine"))));aa(xe,{className:"w-full",get placeholder(){return e(K)},get value(){return e(A)},set value(Oe){s(A,Oe)},children:(Oe,O)=>{var ie=vN(),M=Qe(ie),ve=a(M,!0);r(M),M.value=M.__value="ollama";var te=o(M,2),ge=a(te,!0);r(te),te.value=te.__value="provider",g((_e,Ae)=>{d(ve,_e),d(ge,Ae)},[()=>(f(),l(()=>f().t("Ollama"))),()=>(f(),l(()=>f().t("Model providers")))]),i(Oe,ie)},$$slots:{default:!0},$$legacy:!0})}r(ue),i(Re,ue)};G(oe,Re=>{e(X)&&e(R)&&Re(de)})}var be=o(oe,2);{var Me=Re=>{JS(Re,{get ollamaConfig(){return e(E)}})},qe=Re=>{iN(Re,{get connections(){return e(V)}})};G(be,Re=>{e(A)==="ollama"?Re(Me):e(A)==="provider"&&Re(qe,1)})}r(we),r(Ce),i(Ne,Ce)},Le=Ne=>{var Ce=gN(),we=a(Ce);ra(we,{}),r(Ce),i(Ne,Ce)};G(m,Ne=>{e(A)===""?Ne(ce):e(A)!==null?Ne(De,1):Ne(Le,-1)})}r(se),r(Pe),r(w),g(Ne=>d(Y,Ne),[()=>(f(),l(()=>f().t("Manage Models")))]),ke("click",ee,()=>{c(!1)}),i(B,w)},$$slots:{default:!0},$$legacy:!0}),cr(),Ie()}var pN=u('<div class="py-1 text-xs text-gray-400 dark:text-gray-600"> </div>'),$_=u('<div class="mt-4"><!></div>'),mN=u('<div class="max-h-[24rem] overflow-y-auto pb-2 pr-1 scrollbar-hover"><!> <!> <!></div>'),w_=u('<div class="max-h-[24rem] overflow-y-auto pb-2 pr-1 scrollbar-hover"><!></div>'),hN=u('<div class="space-y-1 mt-0.5"><div><button class="flex w-full items-center justify-between gap-4 py-0.5 text-left" type="button"><span class="text-xs text-gray-600 dark:text-gray-400"> </span> <span class="text-[0.6875rem] text-gray-400 dark:text-gray-600"> </span></button> <!></div> <div><button class="flex w-full items-center justify-between gap-4 py-0.5 text-left" type="button"><span class="text-xs text-gray-600 dark:text-gray-400"> </span> <span class="text-[0.6875rem] text-gray-400 dark:text-gray-600"> </span></button> <!></div> <div><button class="flex w-full items-center justify-between gap-4 py-0.5 text-left" type="button"><span class="text-xs text-gray-600 dark:text-gray-400"> </span> <span class="text-[0.6875rem] text-gray-400 dark:text-gray-600"> </span></button> <!></div></div>'),xN=u('<div class="shrink-0"><div class="flex items-center justify-between gap-4 py-0.5"><button class="min-w-0 flex-1 text-left text-xs text-gray-600 transition hover:text-gray-900 dark:text-gray-400 dark:hover:text-gray-100" type="button"> </button> <button class="shrink-0 text-[0.6875rem] text-gray-400 transition hover:text-gray-700 dark:text-gray-600 dark:hover:text-gray-300" type="button"> </button></div> <!></div>');function bN(He,_){vr(_,!1);const t=()=>ct(_a,"$appConfig",n),f=()=>ct(c,"$i18n",n),[n,Ie]=hr(),X=h(),R=h(),I=h(),c=mr("i18n");let x=Xe(_,"initHandler",8,()=>{}),A=Xe(_,"dirty",12,!1),E=null,V=[],B=h(!1),j=h(!1),w=h(!1),Te=h(!1),Se=h(!1),Y="",ee=h({}),ae=h([]),Pe=h({}),se=h({}),m=h([]);const ce=()=>JSON.stringify({defaultCapabilities:e(ee),defaultFeatureIds:e(ae),defaultParams:Object.fromEntries(e(X)),builtinTools:e(se),promptSuggestions:e(m).filter(K=>K.content!=="")}),De=async()=>{await na(),A(Y!==""&&ce()!==Y)},Le=async()=>{var Oe;s(B,!0),E=await df(localStorage.token),V=(E==null?void 0:E.MODEL_ORDER_LIST)||[];const K=E==null?void 0:E.DEFAULT_MODEL_METADATA;K&&Object.keys(K).length>0?(s(ee,K.capabilities??{..._g}),s(ae,K.defaultFeatureIds??[]),s(se,K.builtinTools??{})):(s(ee,{..._g}),s(ae,[]),s(se,{})),s(Pe,(E==null?void 0:E.DEFAULT_MODEL_PARAMS)??{}),s(m,((Oe=t())==null?void 0:Oe.default_prompt_suggestions)??[]),Y=ce(),A(!1),s(B,!1)},Ne=async()=>
72{if(e(B)||!A())return!0;const K={capabilities:e(ee),...e(ae).length>0?{defaultFeatureIds:e(ae)}:{},...Object.keys(e(se)).length>0?{builtinTools:e(se)}:{}},Oe=await iu(localStorage.token,{DEFAULT_MODELS:(E==null?void 0:E.DEFAULT_MODELS)??null,DEFAULT_PINNED_MODELS:(E==null?void 0:E.DEFAULT_PINNED_MODELS)??null,MODEL_ORDER_LIST:V,DEFAULT_MODEL_METADATA:K,DEFAULT_MODEL_PARAMS:Object.fromEntries(e(X))}).catch(O=>(rt.error(`${O}`),null));return Oe?(E=Oe,s(m,e(m).filter(O=>O.content!=="")),s(m,await Dm(localStorage.token,e(m))),await _a.set(await so()),Y=ce(),A(!1),rt.success(f().t("Models configuration saved successfully")),x()(),!0):(rt.error(f().t("Failed to save models configuration")),!1)};ea(async()=>{await Le()}),Kt(()=>e(Pe),()=>{s(X,Object.entries(e(Pe)??{}).filter(([K,Oe])=>Oe!==null&&Oe!==""&&Oe!==void 0))}),Kt(()=>e(ee),()=>{s(R,Object.entries(e(ee)??{}).filter(([K,Oe])=>Oe))}),Kt(()=>e(R),()=>{s(I,e(R).filter(([K])=>["web_search","code_interpreter","image_generation"].includes(K)).map(([K])=>K))}),la();var Ce={save:Ne};gr();var we=xN(),oe=a(we),de=a(oe),be=a(de,!0);r(de);var Me=o(de,2),qe=a(Me,!0);r(Me),r(oe);var Re=o(oe,2);{var ue=K=>{var Oe=Wr(),O=Qe(Oe);{var ie=ve=>{var te=pN(),ge=a(te,!0);r(te),g(_e=>d(ge,_e),[()=>(f(),l(()=>f().t("Loading...")))]),i(ve,te)},M=ve=>{var te=hN(),ge=a(te),_e=a(ge),Ae=a(_e),U=a(Ae,!0);r(Ae);var T=o(Ae,2),C=a(T,!0);r(T),r(_e);var D=o(_e,2);{var F=ne=>{var J=mN(),W=a(J);hb(W,{get capabilities(){return e(ee)},set capabilities($){s(ee,$)},$$legacy:!0});var Z=o(W,2);{var Ee=$=>{var S=$_(),L=a(S);bb(L,{get availableFeatures(){return e(I)},get featureIds(){return e(ae)},set featureIds(fe){s(ae,fe)},$$legacy:!0}),r(S),i($,S)};G(Z,$=>{e(I),l(()=>e(I).length>0)&&$(Ee)})}var Ge=o(Z,2);{var p=$=>{var S=$_(),L=a(S);yb(L,{get builtinTools(){return e(se)},set builtinTools(fe){s(se,fe)},$$legacy:!0}),r(S),i($,S)};G(Ge,$=>{e(ee),l(()=>e(ee).builtin_tools)&&$(p)})}r(J),ke("click",J,De),ke("change",J,De),i(ne,J)};G(D,ne=>{e(w)&&ne(F)})}r(ge);var H=o(ge,2),pe=a(H),ye=a(pe),he=a(ye,!0);r(ye);var q=o(ye,2),P=a(q,!0);r(q),r(pe);var Q=o(pe,2);{var re=ne=>{var J=w_(),W=a(J);zu(W,{admin:!0,custom:!0,get params(){return e(Pe)},set params(Z){s(Pe,Z)},$$legacy:!0}),r(J),ke("click",J,De),ke("change",J,De),ke("input",J,De),i(ne,J)};G(Q,ne=>{e(Te)&&ne(re)})}r(H);var le=o(H,2),$e=a(le),ze=a($e),Fe=a(ze,!0);r(ze);var at=o(ze,2),tt=a(at,!0);r(at),r($e);var Je=o($e,2);{var je=ne=>{var J=w_(),W=a(J);xb(W,{get promptSuggestions(){return e(m)},set promptSuggestions(Z){s(m,Z)},$$legacy:!0}),r(J),ke("click",J,De),ke("change",J,De),ke("input",J,De),i(ne,J)};G(Je,ne=>{e(Se)&&ne(je)})}r(le),r(te),g((ne,J,W,Z,Ee,Ge)=>{d(U,ne),d(C,J),d(he,W),d(P,Z),d(Fe,Ee),d(tt,Ge)},[()=>(f(),l(()=>f().t("Model Capabilities"))),()=>(e(w),f(),l(()=>e(w)?f().t("Close"):f().t("Configure"))),()=>(f(),l(()=>f().t("Model Parameters"))),()=>(e(Te),f(),l(()=>e(Te)?f().t("Close"):f().t("Configure"))),()=>(f(),l(()=>f().t("Prompt Suggestions"))),()=>(e(Se),f(),l(()=>e(Se)?f().t("Close"):f().t("Configure")))]),ke("click",_e,()=>{s(w,!e(w))}),ke("click",pe,()=>{s(Te,!e(Te))}),ke("click",$e,()=>{s(Se,!e(Se))}),i(ve,te)};G(O,ve=>{e(B)?ve(ie):ve(M,-1)})}i(K,Oe)};G(Re,K=>{e(j)&&K(ue)})}r(we),g((K,Oe)=>{d(be,K),d(qe,Oe)},[()=>(f(),l(()=>f().t("Model Defaults"))),()=>(e(j),f(),l(()=>e(j)?f().t("Close"):f().t("Configure")))]),ke("click",de,()=>{s(j,!e(j))}),ke("click",Me,()=>{s(j,!e(j))}),i(He,we),Gu(_,"save",Ne);var xe=cr(Ce);return Ie(),xe}var yN=Jr('<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="size-3.5"><path stroke-linecap="round" stroke-linejoin="round" d="M3.98 8.223A10.477 10.477 0 0 0 1.934 12C3.226 16.338 7.244 19.5 12 19.5c.993 0 1.953-.138 2.863-.395M6.228 6.228A10.451 10.451 0 0 1 12 4.5c4.756 0 8.773 3.162 10.065 7.498a10.522 10.522 0 0 1-4.293 5.774M6.228 6.228 3 3m3.228 3.228 3.65 3.65m7.894 7.894L21 21m-3.228-3.228-3.65-3.65m0 0a3 3 0 1 0-4.243-4.243m4.242 4.242L9.88 9.88"></path></svg>'),$N=Jr('<svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="size-3.5"><path stroke-linecap="round" stroke-linejoin="round" d="M2.036 12.322a1.012 1.012 0 0 1 0-.639C3.423 7.51 7.36 4.5 12 4.5c4.638 0 8.573 3.007 9.963 7.178.07.207.07.431 0 .639C20.577 16.49 16.64 19.5 12 19.5c-4.638 0-8.573-3.007-9.963-7.178Z"></path><path stroke-linecap="round" stroke-linejoin="round" d="M15 12a3 3 0 1 1-6 0 3 3 0 0 1 6 0Z"></path></svg>'),wN=u('<button class="select-none flex w-full gap-2 items-center h-[1.6875rem] px-2 text-[0.8125rem] font-normal cursor-pointer hover:bg-gray-50/40 dark:hover:bg-gray-800/40 rounded-xl"><!> <div class="flex items-center"> </div></button>'),kN=u('<button class="select-none flex w-full gap-2 items-center h-[1.6875rem] px-2 text-[0.8125rem] font-normal cursor-pointer hover:bg-gray-50/40 dark:hover:bg-gray-800/40 rounded-xl"><!> <div class="flex items-center"><!></div></button> <button class="select-none flex w-full gap-2 items-center h-[1.6875rem] px-2 text-[0.8125rem] font-normal cursor-pointer hover:bg-gray-50/40 dark:hover:bg-gray-800/40 rounded-xl"><!> <div class="flex items-center"><!></div></button> <button class="select-none flex w-full gap-2 items-center h-[1.6875rem] px-2 text-[0.8125rem] font-normal cursor-pointer hover:bg-gray-50/40 dark:hover:bg-gray-800/40 rounded-xl"><!> <div class="flex items-center"><!></div></button> <button class="select-none flex w-full gap-2 items-center h-[1.6875rem] px-2 text-[0.8125rem] font-normal cursor-pointer hover:bg-gray-50/40 dark:hover:bg-gray-800/40 rounded-xl"><!> <div class="flex items-center"><!></div></button> <button class="select-none flex w-full gap-2 items-center h-[1.6875rem] px-2 text-[0.8125rem] font-normal cursor-pointer hover:bg-gray-50/40 dark:hover:bg-gray-800/40 rounded-xl"><!> <div class="flex items-center"><!></div></button> <button class="select-none flex w-full gap-2 items-center h-[1.6875rem] px-2 text-[0.8125rem] font-normal cursor-pointer hover:bg-gray-50/40 dark:hover:bg-gray-800/40 rounded-xl"><!> <div class="flex items-center"> </div></button> <!> <button class="select-none flex w-full gap-2 items-center h-[1.6875rem] px-2 text-[0.8125rem] font-normal cursor-pointer hover:bg-gray-50/40 dark:hover:bg-gray-800/40 rounded-xl"><!> <div class="flex items-center"> </div></button>',1),EN=u('<div slot="content"><!></div>');function AN(He,_){vr(_,!1);const t=()=>ct(X,"$i18n",n),f=()=>ct(Ou,"$pinnedModels",n),[n,Ie]=hr(),X=mr("i18n");Xe(_,"user",8);let R=Xe(_,"model",8),I=Xe(_,"exportHandler",8),c=Xe(_,"hideHandler",8),x=Xe(_,"privacyHandler",8),A=Xe(_,"isDefaultSelected",8,!1),E=Xe(_,"isDefaultPinned",8,!1),V=Xe(_,"defaultSelectedHandler",8),B=Xe(_,"defaultPinnedHandler",8),j=Xe(_,"pinModelHandler",8),w=Xe(_,"copyLinkHandler",8),Te=Xe(_,"cloneHandler",8),Se=Xe(_,"onClose",8),Y=h(!1);const ee=async Pe=>{s(Y,!1),await Pe()},ae=Pe=>((Pe==null?void 0:Pe.access_grants)??[]).some(se=>se.principal_type==="user"&&se.principal_id==="*"&&se.permission==="read");gr(),io(He,{onOpenChange:Pe=>{Pe===!1&&Se()()},get show(){return e(Y)},set show(Pe){s(Y,Pe)},children:(Pe,se)=>{{let m=v(()=>(t(),l(()=>t().t("More"))));Lt(Pe,{get content(){return e(m)},children:(ce,De)=>{var Le=Wr(),Ne=Qe(Le);Ka(Ne,_,"default",{},null),i(ce,Le)},$$slots:{default:!0}})}},$$slots:{default:!0,content:(Pe,se)=>{var m=EN(),ce=a(m);vo(ce,{className:"min-w-[10.625rem]",children:(De,Le)=>{var Ne=kN(),Ce=Qe(Ne),we=a(Ce);{var oe=y=>{var b=yN();i(y,b)},de=y=>{var b=$N();i(y,b)};G(we,y=>{it(R()),l(()=>{var b,N;return((N=(b=R())==null?void 0:b.meta)==null?void 0:N.hidden)??!1})?y(oe):y(de,-1)})}var be=o(we,2),Me=a(be);{var qe=y=>{var b=Mr();g(N=>d(b,N),[()=>(t(),l(()=>t().t("Show Model")))]),i(y,b)},Re=y=>{var b=Mr();g(N=>d(b,N),[()=>(t(),l(()=>t().t("Hide Model")))]),i(y,b)};G(Me,y=>{it(R()),l(()=>{var b,N;return((N=(b=R())==null?void 0:b.meta)==null?void 0:N.hidden)??!1})?y(qe):y(Re,-1)})}r(be),r(Ce);var ue=o(Ce,2),xe=a(ue);Dd(xe,{className:"size-3.5"});var K=o(xe,2),Oe=a(K);{var O=y=>{var b=Mr();g(N=>d(b,N),[()=>(t(),l(()=>t().t("Remove Selected Model")))]),i(y,b)},ie=y=>{var b=Mr();g(N=>d(b,N),[()=>(t(),l(()=>t().t("Set as Selected Model")))]),i(y,b)};G(Oe,y=>{A()?y(O):y(ie,-1)})}r(K),r(ue);var M=o(ue,2),ve=a(M);{var te=y=>{mu(y,{className:"size-3.5"})},ge=y=>{hu(y,{className:"size-3.5"})};G(ve,y=>{E()?y(te):y(ge,-1)})}var _e=o(ve,2),Ae=a(_e);{var U=y=>{var b=Mr();g(N=>d(b,N),[()=>(t(),l(()=>t().t("Remove Pinned Model")))]),i(y,b)},T=y=>{var b=Mr();g(N=>d(b,N),[()=>(t(),l(()=>t().t("Set as Pinned Model")))]),i(y,b)};G(Ae,y=>{E()?y(U):y(T,-1)})}r(_e),r(M);var C=o(M,2),D=a(C);{var F=y=>{Of(y,{className:"size-3.5"})},H=Qr(()=>(it(R()),l(()=>ae(R())))),pe=y=>{Yu(y,{className:"size-3.5"})};G(D,y=>{e(H)?y(F):y(pe,-1)})}var ye=o(D,2),he=a(ye);{var q=y=>{var b=Mr();g(N=>d(b,N),[()=>(t(),l(()=>t().t("Make Private")))]),i(y,b)},P=Qr(()=>(it(R()),l(()=>ae(R())))),Q=y=>{var b=Mr();g(N=>d(b,N),[()=>(t(),l(()=>t().t("Make Public")))]),i(y,b)};G(he,y=>{e(P)?y(q):y(Q,-1)})}r(ye),r(C);var re=o(C,2),le=a(re);{var $e=y=>{mu(y,{})},ze=Qr(()=>(f(),it(R()),l(()=>{var y;return f().includes((y=R())==null?void 0:y.id)}))),Fe=y=>{hu(y,{})};G(le,y=>{e(ze)?y($e):y(Fe,-1)})}var at=o(le,2),tt=a(at);{var Je=y=>{var b=Mr();g(N=>d(b,N),[()=>(t(),l(()=>t().t("Hide from Sidebar")))]),i(y,b)},je=Qr(()=>(f(),it(R()),l(()=>{var y;return f().includes((y=R())==null?void 0:y.id)}))),ne=y=>{var b=Mr();g(N=>d(b,N),[()=>(t(),l(()=>t().t("Keep in Sidebar")))]),i(y,b)};G(tt,y=>{e(je)?y(Je):y(ne,-1)})}r(at),r(re);var J=o(re,2),W=a(J);Ku(W,{});var Z=o(W,2),Ee=a(Z,!0);r(Z),r(J);var Ge=o(J,2);{var p=y=>{var b=wN(),N=a(b);kb(N,{});var z=o(N,2),Ue=a(z,!0);r(z),r(b),g(Ye=>d(Ue,Ye),[()=>(t(),l(()=>t().t("Clone")))]),ke("click",b,()=>ee(Te())),i(y,b)};G(Ge,y=>{it(R()),l(()=>{var b;return((b=R())==null?void 0:b.is_active)??!0})&&y(p)})}var $=o(Ge,2),S=a($);Vs(S,{});var L=o(S,2),fe=a(L,!0);r(L),r($),g((y,b)=>{d(Ee,y),d(fe,b)},[()=>(t(),l(()=>t().t("Copy Link"))),()=>(t(),l(()=>t().t("Export")))]),ke("click",Ce,()=>ee(c())),ke("click",ue,()=>ee(V())),ke("click",M,()=>ee(B())),ke("click",C,()=>ee(x())),ke("click",re,()=>ee(()=>{var y;return j()((y=R())==null?void 0:y.id)})),ke("click",J,()=>ee(w())),ke("click",$,()=>ee(I())),i(De,Ne)},$$slots:{default:!0}}),r(m),i(Pe,m)}},$$legacy:!0}),cr(),Ie()}var IN=u('<span class="inline-flex h-input w-full outline-hidden bg-transparent truncate placeholder-gray-400 focus:outline-hidden"> </span> <!>',1),SN=u(" <div><!></div>",1);function NN(He,_){vr(_,!1);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr(),Ie=mr("i18n");let X=Xe(_,"value",12,""),R=Xe(_,"placeholder",24,()=>t().t("Select view")),I=Xe(_,"align",8,"start"),c=Xe(_,"onChange",8,()=>{});const x=[{value:"",label:t().t("All")},{value:"enabled",label:t().t("Enabled")},{value:"disabled",label:t().t("Disabled")},{value:"visible",label:t().t("Visible")},{value:"hidden",label:t().t("Hidden")},{value:"public",label:t().t("Public")},{value:"private",label:t().t("Private")},{value:"selected",label:t().t("Selected")},{value:"pinned",label:t().t("Pinned")}];gr(),Ib(He,{get items(){return x},get placeholder(){return R()},get align(){return I()},triggerClass:"relative h-8 w-full flex items-center gap-0.5 px-1.5 py-1.5 bg-transparent roun
72ded-xl text-[0.8125rem] font-normal text-gray-700 transition hover:text-gray-900 dark:text-gray-200 dark:hover:text-gray-100",labelClass:"inline-flex h-input w-full outline-hidden bg-transparent truncate placeholder-gray-400 focus:outline-hidden",onChange:()=>c()(X()),get value(){return X()},set value(A){X(A)},$$slots:{trigger:(A,E)=>{const V=v(()=>E.selectedLabel);var B=IN(),j=Qe(B),w=a(j,!0);r(j);var Te=o(j,2);Ba(Te,{className:"size-3.5",strokeWidth:"2.5"}),g(()=>d(w,e(V))),i(A,B)},item:(A,E)=>{const V=v(()=>E.item),B=v(()=>E.selected);var j=SN(),w=Qe(j),Te=o(w),Se=a(Te);Dd(Se,{}),r(Te),g(()=>{d(w,`${it(e(V)),l(()=>e(V).label)??""} `),k(Te,1,`ml-auto ${e(B)?"":"invisible"}`)}),i(A,j)}},$$legacy:!0}),cr(),n()}var PN=u('<input id="models-import-input" type="file" accept=".json" hidden=""/>'),CN=u('<div class="self-center pl-1.5 translate-y-[0.5px] rounded-l-xl bg-transparent"><button class="p-0.5 rounded-full hover:bg-gray-100 dark:hover:bg-gray-900 transition"><!></button></div>'),TN=u('<button class="flex h-8 items-center gap-1.5 rounded-xl bg-transparent px-1.5 text-[0.8125rem] font-normal text-gray-700 transition hover:text-gray-900 dark:text-gray-200 dark:hover:text-gray-100" type="button"><span> </span> <!></button>'),LN=u('<button class="flex h-[1.6875rem] w-full cursor-pointer select-none items-center gap-2 rounded-xl bg-transparent px-2 text-[0.8125rem] disabled:pointer-events-none disabled:opacity-40 hover:text-gray-900 dark:hover:text-gray-100" type="button"><!> <div class="flex items-center"> </div></button> <button class="flex h-[1.6875rem] w-full cursor-pointer select-none items-center gap-2 rounded-xl bg-transparent px-2 text-[0.8125rem] hover:text-gray-900 dark:hover:text-gray-100" type="button"><!> <div class="flex items-center"> </div></button>',1),ON=u('<!> <button class="flex h-[1.6875rem] w-full cursor-pointer select-none items-center gap-2 rounded-xl bg-transparent px-2 text-[0.8125rem] hover:text-gray-900 dark:hover:text-gray-100" type="button"><!> <div class="flex items-center"> </div></button> <button class="flex h-[1.6875rem] w-full cursor-pointer select-none items-center gap-2 rounded-xl bg-transparent px-2 text-[0.8125rem] hover:text-gray-900 dark:hover:text-gray-100" type="button"><!> <div class="flex items-center"> </div></button> <hr class="mx-1 my-0.5 border-gray-100 dark:border-gray-800"/> <button class="flex h-[1.6875rem] w-full cursor-pointer select-none items-center gap-2 rounded-xl bg-transparent px-2 text-[0.8125rem] hover:text-gray-900 dark:hover:text-gray-100" type="button"><!> <div class="flex items-center"> </div></button> <button class="flex h-[1.6875rem] w-full cursor-pointer select-none items-center gap-2 rounded-xl bg-transparent px-2 text-[0.8125rem] hover:text-gray-900 dark:hover:text-gray-100" type="button"><!> <div class="flex items-center"> </div></button> <hr class="mx-1 my-0.5 border-gray-100 dark:border-gray-800"/> <button class="flex h-[1.6875rem] w-full cursor-pointer select-none items-center gap-2 rounded-xl bg-transparent px-2 text-[0.8125rem] hover:text-gray-900 dark:hover:text-gray-100" type="button"><!> <div class="flex items-center"> </div></button> <button class="flex h-[1.6875rem] w-full cursor-pointer select-none items-center gap-2 rounded-xl bg-transparent px-2 text-[0.8125rem] hover:text-gray-900 dark:hover:text-gray-100" type="button"><!> <div class="flex items-center"> </div></button>',1),MN=u('<div slot="content"><!></div>'),k_=u('<span class="shrink-0 text-[0.6875rem] font-normal leading-4 text-gray-500 dark:text-gray-400"> </span>'),RN=u('<div class="flex min-w-0 items-center gap-1.5 text-[0.8125rem] font-normal leading-4"><span class="min-w-0 truncate"> </span> <span> </span> <!> <!></div>
72'),E_=u('<button class="self-center w-fit text-sm p-1.5 dark:text-gray-300 dark:hover:text-white hover:bg-black/5 dark:hover:bg-white/5 rounded-xl" type="button"><!></button>'),A_=u('<button type="button"><!></button>'),DN=u('<button class="self-center w-fit text-sm p-1.5 rounded-xl text-gray-500 hover:bg-black/5 dark:text-gray-400 dark:hover:bg-white/5 dark:hover:text-white" type="button"><!></button>'),UN=u("<!> <!> <!> <!>",1),BN=u('<div><div class="self-center pr-1 -ml-1 text-gray-400 dark:text-gray-600"><!></div> <button class="flex group/item gap-2.5 w-full min-w-0 flex-1 text-left cursor-pointer" type="button"><div class="self-center"><div class="flex rounded-xl"><div><img alt="modelfile profile" class=" rounded-xl size-7 object-cover" loading="lazy" decoding="async"/></div></div></div> <div><!></div></button> <div class="flex shrink-0 flex-row gap-0.5 items-center self-center"><!> <button class="hidden sm:flex self-center w-fit text-sm p-1.5 dark:text-gray-300 dark:hover:text-white hover:bg-black/5 dark:hover:bg-white/5 rounded-xl" type="button"><svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="size-3.5"><path stroke-linecap="round" stroke-linejoin="round" d="m16.862 4.487 1.687-1.688a1.875 1.875 0 1 1 2.652 2.652L6.832 19.82a4.5 4.5 0 0 1-1.897 1.13l-2.685.8.8-2.685a4.5 4.5 0 0 1 1.13-1.897L16.863 4.487Zm0 0L19.5 7.125"></path></svg></button> <!> <div class="ml-1"><!></div></div></div>'),GN=u('<div class="flex h-full w-full items-center justify-center py-10"><div class="max-w-md text-center"><div class="mb-2 text-xl">ð</div> <div class="mb-1 text-sm text-gray-700 dark:text-gray-300"> </div> <div class=" text-gray-500 text-center text-xs"> </div></div></div>'),jN=u('<span class="shrink-0"><!></span>'),HN=u('<div class="flex h-full min-h-0 flex-col text-sm"><div class="mb-2 flex items-center justify-between"><h2 class="text-sm font-medium text-gray-900 dark:text-white"> <span class="ml-2 font-normal text-gray-500 dark:text-gray-500"> </span></h2></div> <!> <div class="flex min-h-0 flex-1 flex-col space-y-1"><!> <div class="flex h-8 shrink-0 items-center w-full gap-2"><div class="flex min-w-0 flex-1 items-center"><div class=" self-center ml-1 mr-3"><!></div> <input data-settings-search="" class=" w-full text-sm py-1 rounded-r-xl outline-hidden bg-transparent"/> <!></div> <div class="flex max-w-[60%] shrink-0 items-center gap-1 overflow-x-auto scrollbar-none"><div class="flex w-fit gap-0.5 text-center text-sm rounded-full bg-transparent whitespace-nowrap"><!> <!></div> <!></div></div> <div id="model-list"><!></div> <div class="flex justify-end pt-6 text-sm font-normal"><button class="flex items-center gap-2 px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full disabled:cursor-not-allowed disabled:opacity-40" type="button"> <!></button></div></div></div>'),FN=u('<div class=" h-full w-full flex justify-center items-center"><!></div>'),WN=u("<!> <!> <!>",1);function zN(He,_){vr(_,!1);const t=()=>ct(x,"$i18n",R),f=()=>ct(_a,"$config",R),n=()=>ct(ua,"$settings",R),Ie=()=>ct(Ou,"$pinnedModels",R),X=()=>ct(ka,"$user",R),[R,I]=hr(),{saveAs:c}=no,x=mr("i18n");let A=h(!1),E=Xe(_,"tabState",12,null),V=h(!1),B=h(),j=h(),w=h(),Te=h(),Se=null,Y=h(null),ee=null,ae=h([]),Pe=h([]),se=h([]),m=h(new Set),ce=h(new Set),De=[],Le=[],Ne=h([]),Ce=h(null),we=h(!1),oe=h(!1),de=h(!1),be=h(!1),Me=h(!1),qe=h(null),Re=h(!1),ue=h(""),xe=h([]),K=h("");const Oe=p=>((p==null?void 0:p.access_grants)??[]).some($=>$.principal_type==="user"&&$.principal_id==="*"&&$.permission==="read"),O=p=>((p==null?void 0:p.access_grants)??[]).length>0&&!Oe(p),ie=p=>{var $;return!!(p!=null&&p.preset||p!=null&&p.base_model_id||($=p==null?void 0:p.info)!=null&&$.base_model_id)},M=p=>Oe(p)?t().t("Public"):O(p)?t().t("Shared"):t().t("Private"),ve=p=>Oe(p)?"text-[#4f7a5a] dark:text-[#8db395]":O(p)?"text-[#4f6f93] dark:text-[#8ba6c6]":"text-gray-500 dark:text-gray-400";let te=h(""),ge=h(!1);const _e=async()=>{const p=e(Ne).filter($=>!($.is_active??!0));p.forEach($=>$.is_active=!0),s(Y,e(Y)),await Promise.all(p.map($=>Q($,{is_active:!0},!1))),await na(),await D()},Ae=async()=>{const p=e(Ne).filter($=>$.is_active??!0);p.forEach($=>$.is_active=!1),s(Y,e(Y)),await Promise.all(p.map($=>Q($,{is_active:!1},!1))),await na(),await D()},U=async()=>{const p=e(Ne).filter($=>{var S;return((S=$==null?void 0:$.meta)==null?void 0:S.hidden)===!0});p.forEach($=>{$.meta={...$.meta,hidden:!1}}),s(Y,e(Y)),await Promise.all(p.map($=>Q($,{meta:{...$.meta,hidden:!1}},!1))),rt.success(t().t("All models are now visible")),await na(),await D()},T=async()=>{const p=e(Ne).filter($=>{var S;return!(((S=$==null?void 0:$.meta)==null?void 0:S.hidden)??!1)});p.forEach($=>{$.meta={...$.meta,hidden:!0}}),s(Y,e(Y)),await Promise.all(p.map($=>Q($,{meta:{...$.meta,hidden:!0}},!1))),rt.success(t().t("All models are now hidden")),await na(),await D()},C=async p=>{p=await Promise.all(p.map(Fe));let $=new Blob([JSON.stringify(p)],{type:"application/json"});c($,`models-export-${Date.now()}.json`)},D=async()=>{var L,fe,y;s(Y,null),ee=await df(localStorage.token),s(ae,(ee==null?void 0:ee.MODEL_ORDER_LIST)??[]),s(Pe,((ee==null?void 0:ee.DEFAULT_MODELS)??"").split(",").filter(b=>b)),s(se,((ee==null?void 0:ee.DEFAULT_PINNED_MODELS)??"").split(",").filter(b=>b)),s(xe,await ub(localStorage.token)),e(K)&&!e(xe).includes(e(K))&&s(K,""),De=await Mf(localStorage.token,e(K)),Le=await La(localStorage.token);const p=await La(localStorage.token,null,!0),$=new Set(Le.map(b=>b.id));Le=[...Le,...p.filter(b=>!$.has(b.id))];const S=new Set(De.map(b=>b.id));s(Y,Le.filter(b=>!e(K)||S.has(b.id)).map(b=>{const N=De.find(z=>z.id===b.id);return N?{...b,...N}:{...b,id:b.id,name:b.name,is_active:!0}})),s(ae,[...e(ae).filter(b=>e(Y).some(N=>N.id===b)),...e(Y).map(b=>b.id).filter(b=>!e(ae).includes(b)).sort((b,N)=>b.localeCompare(N))]),s(Me,!1),ba.set(await La(localStorage.token,((fe=(L=f())==null?void 0:L.features)==null?void 0:fe.enable_direct_connections)&&(((y=n())==null?void 0:y.directConnections)??null)))},F=async p=>{var S,L,fe;s(de,!0);const $=await iu(localStorage.token,{DEFAULT_MODELS:e(Pe).join(","),DEFAULT_PINNED_MODELS:e(se).join(","),MODEL_ORDER_LIST:p,DEFAULT_MODEL_METADATA:(ee==null?void 0:ee.DEFAULT_MODEL_METADATA)??null,DEFAULT_MODEL_PARAMS:(ee==null?void 0:ee.DEFAULT_MODEL_PARAMS)??null}).catch(y=>(rt.error(`${y}`),null));$&&(ee=$,s(Me,!1),rt.success(t().t("Model order saved successfully")),ba.set(await La(localStorage.token,((L=(S=f())==null?void 0:S.features)==null?void 0:L.enable_direct_connections)&&(((fe=n())==null?void 0:fe.directConnections)??null)))),s(de,!1)},H=async()=>{var p;s(be,!0),e(Me)&&await F(e(ae)),e(Re)&&await((p=e(qe))==null?void 0:p.save()),s(be,!1)},pe=async(p,$,S)=>{const L=e(Pe),fe=e(se);s(Pe,p),s(se,$);const y=await iu(localStorage.token,{DEFAULT_MODELS:p.join(","),DEFAULT_PINNED_MODELS:$.join(","),MODEL_ORDER_LIST:(ee==null?void 0:ee.MODEL_ORDER_LIST)??[],DEFAULT_MODEL_METADATA:(ee==null?void 0:ee.DEFAULT_MODEL_METADATA)??null,DEFAULT_MODEL_PARAMS:(ee==null?void 0:ee.DEFAULT_MODEL_PARAMS)??null}).catch(b=>(rt.error(`${b}`),null));y?(ee=y,rt.success(S)):(s(Pe,L),s(se,fe))},ye=async p=>{const $=e(m).has(p.id),S=$?e(Pe).filter(L=>L!==p.id):[...new Set([...e(Pe),p.id])];await pe(S,e(se),$?t().t("Model removed from selected models"):t().t("Model added to selected models"))},he=async p=>{const $=e(ce).has(p.id),S=$?e(se).filter(L=>L!==p.id):[...new Set([...e(se),p.id])];await pe(e(Pe),S,$?t().t("Model removed from pinned models"):t().t("Model added to pinned models"))},q=async p=>{const{oldIndex:$,newIndex:S,item:L}=p;if($===void 0||S===void 0||$===S)return;
72const fe=L.parentNode,y=fe.children[$<S?$:$+1];fe.insertBefore(L,y);const b=[...e(Ne)],[N]=b.splice($,1);b.splice(S,0,N);const z=b.map(Ye=>Ye.id),Ue=new Set(z);s(Y,[...b,...e(Y).filter(Ye=>!Ue.has(Ye.id))]),s(ae,e(Y).map(Ye=>Ye.id)),s(Me,!0)},P=()=>{Se&&(Se.destroy(),Se=null),e(Te)&&e(Ne).length>0&&e(ge)&&(Se=new Ws(e(Te),{animation:150,handle:".model-item-handle",onUpdate:q}))},Q=async(p,$={},S=!0)=>{p={...p,...ie(p)?{}:{base_model_id:null},...$},De.find(L=>L.id===p.id)||ie(p)?await gb(localStorage.token,p.id,p).catch(fe=>null)&&S&&rt.success(t().t("Model updated successfully")):await Sg(localStorage.token,{meta:{},id:p.id,name:p.name,base_model_id:null,params:{},access_grants:[],...p}).catch(fe=>null)&&S&&(rt.success(t().t("Model updated successfully")),await D())},re=async p=>{var $,S,L;!Object.keys(p).includes("base_model_id")&&!ie(p)?await Sg(localStorage.token,{id:p.id,name:p.name,base_model_id:null,meta:{},params:{},access_grants:[],is_active:p.is_active}).catch(fe=>null):await mb(localStorage.token,p.id),ba.set(await La(localStorage.token,((S=($=f())==null?void 0:$.features)==null?void 0:S.enable_direct_connections)&&(((L=n())==null?void 0:L.directConnections)??null)))},le=async p=>{var S,L,fe,y;const $={...p,meta:{...p.meta,hidden:!(((S=p==null?void 0:p.meta)==null?void 0:S.hidden)??!1)}};await Q($,{meta:$.meta},!1),s(Y,e(Y).map(b=>b.id===$.id?$:b)),ba.set(await La(localStorage.token,((fe=(L=f())==null?void 0:L.features)==null?void 0:fe.enable_direct_connections)&&(((y=n())==null?void 0:y.directConnections)??null))),rt.success($.meta.hidden?t().t("Model {{name}} is now hidden",{name:$.id}):t().t("Model {{name}} is now visible",{name:$.id}))},$e=async p=>{var L,fe,y;const $=Oe(p)?[]:[...(p==null?void 0:p.access_grants)??[],{principal_type:"user",principal_id:"*",permission:"read"}],S=await pb(localStorage.token,p.id,p.name,$).catch(()=>null);S&&(s(Y,e(Y).map(b=>b.id===p.id?{...b,access_grants:S.access_grants??$}:b)),ba.set(await La(localStorage.token,((fe=(L=f())==null?void 0:L.features)==null?void 0:fe.enable_direct_connections)&&(((y=n())==null?void 0:y.directConnections)??null))),rt.success(Oe({access_grants:$})?t().t("Model is now public"):t().t("Model is now private")))},ze=async p=>{const $=window.location.origin;await du(`${$}/?model=${encodeURIComponent(p.id)}`)?rt.success(t().t("Copied link to clipboard")):rt.error(t().t("Failed to copy link"))},Fe=async p=>De.some($=>$.id===p.id)||ie(p)?await _b(localStorage.token,p.id).catch(()=>null)??p:p,at=async p=>{if(ie(p)){hl.set(!1),await fa(`/workspace/models/edit?id=${encodeURIComponent(p.id)}`);return}s(Ce,p.id)},tt=async p=>{p=await Fe(p),sessionStorage.model=JSON.stringify({...p,base_model_id:p.id,id:`${p.id}-clone`,name:`${p.name} (Clone)`}),hl.set(!1),await fa("/workspace/models/create")},Je=async p=>{p=await Fe(p);let $=new Blob([JSON.stringify([p])],{type:"application/json"});c($,`${p.id}-${Date.now()}.json`)},je=async p=>{ua.set({...n(),pinnedModels:Ie().includes(p)?Ie().filter($=>$!==p):[...Ie(),p]}),await Tl(localStorage.token,{ui:n()})};ea(async()=>{await D();const p=L=>{L.key==="Shift"&&s(A,!0)},$=L=>{L.key==="Shift"&&s(A,!1)},S=()=>{s(A,!1)};return window.addEventListener("keydown",p),window.addEventListener("keyup",$),window.addEventListener("blur",S),()=>{window.removeEventListener("keydown",p),window.removeEventListener("keyup",$),window.removeEventListener("blur",S)}}),Al(()=>{Se&&Se.destroy()}),Kt(()=>it(E()),()=>{var p;typeof((p=E())==null?void 0:p.id)=="string"&&E().id&&(s(Ce,E().id),E(null))}),Kt(()=>e(Pe),()=>{s(m,new Set(e(Pe)))}),Kt(()=>e(se),()=>{s(ce,new Set(e(se)))}),Kt(()=>(e(Y),e(ae),e(te),e(ue),e(m),e(ce)),()=>{if(e(Y)){const p=new Map(e(ae).map(($,S)=>[$,S]));s(Ne,e(Y).filter($=>e(te)===""||$.name.toLowerCase().includes(e(te).toLowerCase())).filter($=>{var S,L;return e(ue)==="enabled"?($==null?void 0:$.is_active)??!0:e(ue)==="disabled"?!(($==null?void 0:$.is_active)??!0):e(ue)==="visible"?!(((S=$==null?void 0:$.meta)==null?void 0:S.hidden)??!1):e(ue)==="hidden"?((L=$==null?void 0:$.meta)==null?void 0:L.hidden)===!0:e(ue)==="public"?Oe($):e(ue)==="private"?!Oe($):e(ue)==="selected"?e(m).has($.id):e(ue)==="pinned"?e(ce).has($.id):!0}).sort(($,S)=>{const L=p.get($.id)??Number.MAX_SAFE_INTEGER,fe=p.get(S.id)??Number.MAX_SAFE_INTEGER;return L!==fe?L-fe:(($==null?void 0:$.name)??($==null?void 0:$.id)??"").localeCompare((S==null?void 0:S.name)??(S==null?void 0:S.id)??"")}))}}),Kt(()=>(e(te),e(ue),e(K)),()=>{s(ge,e(te)===""&&e(ue)===""&&e(K)==="")}),Kt(()=>(e(Te),e(Ne),na),()=>{e(Te)&&e(Ne)&&na().then(()=>{P()})}),la(),gr();var ne=WN(),J=Qe(ne);{let p=v(()=>(t(),l(()=>t().t("Reset All Models")))),$=v(()=>(t(),l(()=>t().t("This will delete all models including custom models and cannot be undone."))));Ca(J,{get title(){return e(p)},get message(){return e($)},onConfirm:async()=>{await cb(localStorage.token)&&(rt.success(t().t("All models deleted successfully")),await D())},get show(){return e(oe)},set show(S){s(oe,S)},$$legacy:!0})}var W=o(J,2);fN(W,{get show(){return e(we)},set show(p){s(we,p)},$$legacy:!0});var Z=o(W,2);{var Ee=p=>{var $=Wr(),S=Qe($);{var L=y=>{var b=HN(),N=a(b),z=a(N),Ue=a(z),Ye=o(Ue),Ve=a(Ye,!0);r(Ye),r(z),r(N);var lt=o(N,2);{var st=tr=>{var ur=PN();Oa(ur,_r=>s(j,_r),()=>e(j)),as(ur,()=>e(B),_r=>s(B,_r)),ke("change",ur,()=>{if(e(B).length>0){const _r=new FileReader;_r.onload=async br=>{s(V,!0);try{const kt=JSON.parse(String(br.target.result));await fb(localStorage.token,kt)?(rt.success(t().t("Models imported successfully")),await D()):rt.error(t().t("Failed to import models"))}catch(kt){rt.error((kt==null?void 0:kt.detail)??t().t("Invalid JSON file"))}s(V,!1)},_r.readAsText(e(B)[0])}}),i(tr,ur)};G(lt,tr=>{X(),l(()=>{var ur;return((ur=X())==null?void 0:ur.role)==="admin"})&&tr(st)})}var Ke=o(lt,2),Ze=a(Ke);Oa(bN(Ze,{initHandler:D,get dirty(){return e(Re)},set dirty(tr){s(Re,tr)},$$legacy:!0}),tr=>s(qe,tr),()=>e(qe));var ot=o(Ze,2),ut=a(ot),_t=a(ut),nt=a(_t);Ud(nt,{className:"size-3.5"}),r(_t);var et=o(_t,2);vt(et);var gt=o(et,2);{var It=tr=>{var ur=CN(),_r=a(ur),br=a(_r);wa(br,{className:"size-3",strokeWidth:"2"}),r(_r),r(ur),g(kt=>Be(_r,"aria-label",kt),[()=>(t(),l(()=>t().t("Clear search")))]),ke("click",_r,()=>{s(te,"")}),i(tr,ur)};G(gt,tr=>{e(te)&&tr(It)})}r(ut);var Mt=o(ut,2),jt=a(Mt),Tt=a(jt);NN(Tt,{align:"end",get value(){return e(ue)},set value(tr){s(ue,tr)},$$legacy:!0});var yt=o(Tt,2);{var $t=tr=>{{let ur=v(()=>(e(xe),l(()=>e(xe).map(_r=>({value:_r,label:_r})))));Sb(tr,{align:"end",get items(){return e(ur)},onChange:async()=>{await D()},get value(){return e(K)},set value(_r){s(K,_r)},$$legacy:!0})}};G(yt,tr=>{e(xe),l(()=>(e(xe)??[]).length>0)&&tr($t)})}r(jt);var rr=o(jt,2);io(rr,{align:"end",children:(tr,ur)=>{{let _r=v(()=>(t(),l(()=>t().t("Actions"))));Lt(tr,{get content(){return e(_r)},children:(br,kt)=>{var jr=TN(),qt=a(jr),At=a(qt,!0);r(qt);var Ot=o(qt,2);Ba(Ot,{className:"size-3",strokeWidth:"2.5"}),r(jr),g(Ht=>d(At,Ht),[()=>(t(),l(()=>t().t("Actions")))]),i(br,jr)},$$slots:{default:!0}})}},$$slots:{default:!0,content:(tr,ur)=>{var _r=MN(),br=a(_r);vo(br,{className:"w-[10.625rem] shadow-sm",children:(kt,jr)=>{var qt=ON(),At=Qe(qt);{var Ot=Kr=>{var Yt=LN(),Or=Qe(Yt),Lr=a(Or);Ab(Lr,{className:"size-3.5"});var Pt=o(Lr,2),Gt=a(Pt,!0);r(Pt),r(Or);var nr=o(Or,2),ft=a(nr);Vs(ft,{className:"size-3.5"});var pt=o(ft,2),Ut=a(pt,!0);r(pt),r(nr),g((Vt,Dr)=>{Or.disabled=e(V),d(Gt,Vt),d(Ut,Dr)},[()=>(t(),l(()=>t().t("Import"))),()=>(t(),l(()=>t().t("Export")))]),ke("click",Or,()=>{var Vt;(Vt=e(j))==null||Vt.click()}),ke("click",nr,()=>{C(e(Y)??[])}),i(Kr,Yt)};G(At,Kr=>{X(),l(()=>{var Yt;return((Yt=X())==null?void 0:Yt.role)==="admin"})&&Kr(Ot)})}var Ht=o(At,2),Xt=a(Ht);cx(Xt,{className:"size-3.5"});var er=o(Xt,2),xr=a(er,!0);r(er),r(Ht);var Qt=o(Ht,2),fr=a(Qt);zs(fr,{className:"size-3.5"});var wt=o(fr,2),ht=a(wt,!0);r(wt),r(Qt);var zt=o(Qt,4),ir=a(zt);Eb(ir,{className:"size-3.5"});var dr=o(ir,2),Ct=a(dr,!0);r(dr),r(zt);var Er=o(zt,2),Bt=a(Er);Ys(Bt,{className:"size-3.5"});var Ft=o(Bt,2),Zt=a(Ft,!0);r(Ft),r(Er);var wr=o(Er,4),kr=a(wr);Pg(kr,{className:"size-3.5"});var Hr=o(kr,2),yr=a(Hr,!0);r(Hr),r(wr);var Sr=o(wr,2),Br=a(Sr);Ng(Br,{className:"size-3.5"});var pr=o(Br,2),sr=a(pr,!0);r(pr),r(Sr),g((Kr,Yt,Or,Lr,Pt,Gt)=>{d(xr,Kr),d(ht,Yt),d(Ct,Or),d(Zt,Lr),d(yr,Pt),d(sr,Gt)},[()=>(t(),l(()=>t().t("Manage"))),()=>(t(),l(()=>t().t("Reset"))),()=>(t(),l(()=>t().t("Enable All"))),()=>(t(),l(()=>t().t("Disable All"))),()=>(t(),l(()=>t().t("Show All"))),()=>(t(),l(()=>t().t("Hide All")))]),ke("click",Ht,()=>{s(we,!0)}),ke("click",Qt,()=>{s(oe,!0)}),ke("click",zt,()=>{_e()}),ke("click",Er,()=>{Ae()}),ke("click",wr,()=>{U()}),ke("click",Sr,()=>{T()}),i(kt,qt)},$$slots:{default:!0}}),r(_r),i(tr,_r)}}}),r(Mt),Oa(Mt,tr=>s(w,tr),()=>e(w)),r(ot);var Rt=o(ot,2),Wt=a(Rt);{var or=tr=>{var ur=Wr(),_r=Qe(ur);lr(_r,3,()=>e(Ne),(br,kt)=>`${br.id}-${kt}`,(br,kt,jr)=>{var qt=BN(),At=a(qt),Ot=a(At);{let Ft=v(()=>(e(ge),t(),l(()=>e(ge)?t().t("Drag to reorder"):t().t("Clear filters to reorder"))));Lt(Ot,{get content(){return e(Ft)},children:(Zt,wr)=>{{let kr=v(()=>e(ge)?"cursor-move model-item-handle":"opacity-40");ep(Zt,{get className(){return`size-4 ${e(kr)??""}`}})}},$$slots:{default:!0}})}r(At);var Ht=o(At,2),Xt=a(Ht),er=a(Xt),xr=a(er),Qt=a(xr);r(xr),r(er),r(Xt);var fr=o(Xt,2),wt=a(fr);{let Ft=v(()=>(it(vu),e(kt),l(()=>{var Zt,wr,kr,Hr,yr,Sr,Br,pr,sr,Kr;return vu.parse((wr=(Zt=e(kt))==null?void 0:Zt.meta)!=null&&wr.description?(Hr=(kr=e(kt))==null?void 0:kr.meta)==null?void 0:Hr.description:(Sr=(yr=e(kt))==null?void 0:yr.ollama)!=null&&Sr.digest?`${(pr=(Br=e(kt))==null?void 0:Br.ollama)==null?void 0:pr.digest} **(${(Kr=(sr=e(kt))==null?void 0:sr.ollama)==null?void 0:Kr.modified_at})**`:e(kt).id)})));Lt(wt,{get content(){return e(Ft)},className:"min-w-0 flex-1",placement:"top-start",children:(Zt,wr)=>{var kr=RN(),Hr=a(kr),yr=a(Hr,!0);r(Hr);var Sr=o(Hr,2),Br=a(Sr,!0);r(Sr);var pr=o(Sr,2);{var sr=Pt=>{var Gt=k_(),nr=a(Gt,!0);r(Gt),g(ft=>d(nr,ft),[()=>(t(),l(()=>t().t("Selected")))]),i(Pt,Gt)},Kr=Qr(()=>(e(m),e(kt),l(()=>e(m).has(e(kt).id))));G(pr,Pt=>{e(Kr)&&Pt(sr)})}var Yt=o(pr,2);{var Or=Pt=>{var Gt=k_(),nr=a(Gt,!0);r(Gt),g(ft=>d(nr,ft),[()=>(t(),l(()=>t().t("Pinned")))]),i(Pt,Gt)},Lr=Qr(()=>(e(ce),e(kt),l(()=>e(ce).has(e(kt).id))));G(Yt,Pt=>{e(Lr)&&Pt(Or)})}r(kr),g((Pt,Gt)=>{d(yr,(e(kt),l(()=>e(kt).name))),k(Sr,1,`shrink-0 text-[0.6875rem] font-normal leading-4 ${Pt??""}`),d(Br,Gt)},[()=>(e(kt),l(()=>ve(e(kt)))),()=>(e(kt),l(()=>M(e(kt))))]),i(Zt,kr)},$$slots:{default:!0}})}r(fr),r(Ht);var ht=o(Ht,2),zt=a(ht);{var ir=Ft=>{var Zt=UN(),wr=Qe(Zt);{let Sr=v(()=>(e(kt),t(),l(()=>{var Br,pr;return(pr=(Br=e(kt))==null?void 0:Br.meta)!=null&&pr.hidden?t().t("Show"):t().t("Hide")})));Lt(wr,{get content(){return e(Sr)},children:(Br,pr)=>{var sr=E_(),Kr=a(sr);{var Yt=Lr=>{Ng(Lr,{})},Or=Lr=>{Pg(Lr,{})};G(Kr,Lr=>{e(kt),l(()=>{var Pt,Gt;return(Gt=(Pt=e(kt))==null?void 0:Pt.meta)==null?void 0:Gt.hidden})?Lr(Yt):Lr(Or,-1)})}
72r(sr),ke("click",sr,()=>{le(e(kt))}),i(Br,sr)},$$slots:{default:!0}})}var kr=o(wr,2);{let Sr=v(()=>(e(m),e(kt),t(),l(()=>e(m).has(e(kt).id)?t().t("Remove Selected Model"):t().t("Set as Selected Model"))));Lt(kr,{get content(){return e(Sr)},children:(Br,pr)=>{var sr=A_(),Kr=a(sr);Dd(Kr,{className:"size-3.5"}),r(sr),g((Yt,Or)=>{k(sr,1,`self-center w-fit text-sm p-1.5 rounded-xl hover:bg-black/5 dark:hover:bg-white/5 ${Yt??""}`),Be(sr,"aria-label",Or)},[()=>(e(m),e(kt),l(()=>e(m).has(e(kt).id)?"text-gray-900 dark:text-white":"text-gray-500 dark:text-gray-400 dark:hover:text-white")),()=>(e(m),e(kt),t(),l(()=>e(m).has(e(kt).id)?t().t("Remove Selected Model"):t().t("Set as Selected Model")))]),ke("click",sr,()=>{ye(e(kt))}),i(Br,sr)},$$slots:{default:!0}})}var Hr=o(kr,2);{let Sr=v(()=>(e(ce),e(kt),t(),l(()=>e(ce).has(e(kt).id)?t().t("Remove Pinned Model"):t().t("Set as Pinned Model"))));Lt(Hr,{get content(){return e(Sr)},children:(Br,pr)=>{var sr=A_(),Kr=a(sr);{var Yt=Pt=>{mu(Pt,{className:"size-3.5"})},Or=Qr(()=>(e(ce),e(kt),l(()=>e(ce).has(e(kt).id)))),Lr=Pt=>{hu(Pt,{className:"size-3.5"})};G(Kr,Pt=>{e(Or)?Pt(Yt):Pt(Lr,-1)})}r(sr),g((Pt,Gt)=>{k(sr,1,`self-center w-fit text-sm p-1.5 rounded-xl hover:bg-black/5 dark:hover:bg-white/5 ${Pt??""}`),Be(sr,"aria-label",Gt)},[()=>(e(ce),e(kt),l(()=>e(ce).has(e(kt).id)?"text-gray-900 dark:text-white":"text-gray-500 dark:text-gray-400 dark:hover:text-white")),()=>(e(ce),e(kt),t(),l(()=>e(ce).has(e(kt).id)?t().t("Remove Pinned Model"):t().t("Set as Pinned Model")))]),ke("click",
72sr,()=>{he(e(kt))}),i(Br,sr)},$$slots:{default:!0}})}var yr=o(Hr,2);{let Sr=v(()=>(e(kt),t(),l(()=>Oe(e(kt))?t().t("Make Private"):t().t("Make Public"))));Lt(yr,{get content(){return e(Sr)},children:(Br,pr)=>{var sr=DN(),Kr=a(sr);{var Yt=Pt=>{Of(Pt,{className:"size-3.5"})},Or=Qr(()=>(e(kt),l(()=>Oe(e(kt))))),Lr=Pt=>{Yu(Pt,{className:"size-3.5"})};G(Kr,Pt=>{e(Or)?Pt(Yt):Pt(Lr,-1)})}r(sr),g(Pt=>Be(sr,"aria-label",Pt),[()=>(e(kt),t(),l(()=>Oe(e(kt))?t().t("Make Private"):t().t("Make Public")))]),ke("click",sr,()=>{$e(e(kt))}),i(Br,sr)},$$slots:{default:!0}})}i(Ft,Zt)};G(zt,Ft=>{e(A)&&Ft(ir)})}var dr=o(zt,2),Ct=o(dr,2);{let Ft=v(()=>(e(m),e(kt),l(()=>e(m).has(e(kt).id)))),Zt=v(()=>(e(ce),e(kt),l(()=>e(ce).has(e(kt).id))));AN(Ct,{get user(){return X()},get model(){return e(kt)},exportHandler:()=>{Je(e(kt))},hideHandler:()=>{le(e(kt))},privacyHandler:()=>{$e(e(kt))},get isDefaultSelected(){return e(Ft)},get isDefaultPinned(){return e(Zt)},defaultSelectedHandler:()=>{ye(e(kt))},defaultPinnedHandler:()=>{he(e(kt))},pinModelHandler:()=>{je(e(kt).id)},copyLinkHandler:()=>{ze(e(kt))},cloneHandler:()=>{tt(e(kt))},onClose:()=>{},children:(wr,kr)=>{var Hr=E_(),yr=a(Hr);Sf(yr,{className:"size-3.5"}),r(Hr),i(wr,Hr)},$$slots:{default:!0}})}var Er=o(Ct,2),Bt=a(Er);{let Ft=v(()=>(e(kt),t(),l(()=>{var Zt;return((Zt=e(kt))==null?void 0:Zt.is_active)??!0?t().t("Enabled"):t().t("Disabled")})));Lt(Bt,{get content(){return e(Ft)},children:(Zt,wr)=>{Nt(Zt,{get state(){return e(kt).is_active},set state(kr){e(kt).is_active=kr,Ja(()=>e(Ne))},$$events:{change:async()=>{re(e(kt))}},$$legacy:!0})},$$slots:{default:!0}})}r(Er),r(ht),r(qt),g(Ft=>{k(qt,1,`flex cursor-pointer transition w-full px-2 py-1 rounded-xl hover:bg-gray-50/70 dark:hover:bg-gray-850/50 ${e(kt),l(()=>{var Zt,wr;return(wr=(Zt=e(kt))==null?void 0:Zt.meta)!=null&&wr.hidden?"opacity-50 dark:opacity-50":""})??""}`),Be(qt,"id",`model-item-${e(kt),l(()=>e(kt).id)??""}`),k(xr,1,`${e(kt),l(()=>{var Zt;return((Zt=e(kt))==null?void 0:Zt.is_active)??!0?"":"opacity-50 dark:opacity-50"})??""} bg-transparent rounded-xl`),Be(Qt,"src",(it(ia),e(kt),t(),l(()=>`${ia}/models/model/profile/image?id=${e(kt).id}&lang=${t().language}`))),k(fr,1,`flex min-w-0 flex-1 pr-1 self-center ${e(kt),l(()=>{var Zt;return((Zt=e(kt))==null?void 0:Zt.is_active)??!0?"":"text-gray-500"})??""}`),Be(dr,"aria-label",Ft)},[()=>(t(),l(()=>t().t("Edit")))]),ke("error",Qt,Ft=>{Ft.target.src="/favicon.png"}),ke("click",Ht,()=>{at(e(kt))}),ke("click",dr,()=>{at(e(kt))}),i(br,qt)}),i(tr,ur)},$r=tr=>{var ur=GN(),_r=a(ur),br=o(a(_r),2),kt=a(br,!0);r(br);var jr=o(br,2),qt=a(jr,!0);r(jr),r(_r),r(ur),g((At,Ot)=>{d(kt,At),d(qt,Ot)},[()=>(t(),l(()=>t().t("No models found"))),()=>(t(),l(()=>t().t("Try adjusting your search or filter to find what you are looking for.")))]),i(tr,ur)};G(Wt,tr=>{e(Ne),l(()=>e(Ne).length>0)?tr(or):tr($r,-1)})}r(Rt),Oa(Rt,tr=>s(Te,tr),()=>e(Te));var Et=o(Rt,2),St=a(Et),Dt=a(St),ar=o(Dt);{var Tr=tr=>{var ur=jN(),_r=a(ur);ra(_r,{}),r(ur),i(tr,ur)};G(ar,tr=>{(e(de)||e(be))&&tr(Tr)})}r(St),r(Et),r(Ke),r(b),g((tr,ur,_r)=>{d(Ue,`${tr??""} `),d(Ve,(e(Ne),l(()=>e(Ne).length))),Be(et,"placeholder",ur),k(Rt,1,`my-0.5 min-h-0 flex-1 space-y-px ${e(Ne),l(()=>e(Ne).length>0?"overflow-y-auto scrollbar-hover pr-1.5":"overflow-hidden")??""}`),St.disabled=!e(Me)&&!e(Re)||e(de)||e(be),d(Dt,`${_r??""} `)},[()=>(t(),l(()=>t().t("Models"))),()=>(t(),l(()=>t().t("Search Models"))),()=>(t(),l(()=>t().t("Save")))]),dt(et,()=>e(te),tr=>s(te,tr)),ke("wheel",Mt,tr=>{tr.deltaY!==0&&(tr.preventDefault(),tr.currentTarget.scrollLeft+=tr.deltaY)}),ke("click",St,async()=>{await H()}),i(y,b)},fe=y=>{{let b=v(()=>(e(Y),e(Ce),l(()=>e(Y).find(N=>N.id===e(Ce)))));$b(y,{edit:!0,get model(){return e(b)},preset:!1,onSubmit:async N=>{await Q(N),s(Ce,null),await D()},onBack:async()=>{s(Ce,null),await D()}})}};G(S,y=>{e(Ce)===null?y(L):y(fe,-1)})}i(p,$)},Ge=p=>{var $=FN(),S=a($);ra(S,{className:"size-5"}),r($),i(p,$)};G(Z,p=>{e(Y)!==null?p(Ee):p(Ge,-1)})}i(He,ne),cr(),I()}var KN=u('<div class="flex justify-center py-8"><!></div>'),YN=u('<div><label class="text-xs text-gray-600 dark:text-gray-400" for="sa-async"> </label> <div class="mt-1 flex items-center gap-1.5"><input id="sa-async" type="number" min="-1" class="h-7 w-16 rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500"/> <span class="text-[0.6875rem] text-gray-400 dark:text-gray-600"> </span></div></div>'),VN=u('<div><label class="text-xs text-gray-600 dark:text-gray-400" for="sa-concurrent"> </label> <div class="mt-1 flex items-center gap-1.5"><input id="sa-concurrent" type="number" min="-1" class="h-7 w-16 rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500"/> <span class="text-[0.6875rem] text-gray-400 dark:text-gray-600"> </span></div></div> <div><label class="flex cursor-pointer items-center justify-between"><span class="text-xs text-gray-600 dark:text-gray-400"> </span> <!></label> <p class="mt-1 text-[0.6875rem] text-gray-400 dark:text-gray-600"> </p></div> <!> <div><label class="text-xs text-gray-600 dark:text-gray-400" for="sa-iterations"> </label> <div class="mt-1 flex items-center gap-1.5"><input id="sa-iterations" type="number" min="1" max="100" class="h-7 w-16 rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500"/> <span class="text-[0.6875rem] text-gray-400 dark:text-gray-600"> </span></div></div> <div><label class="text-xs text-gray-600 dark:text-gray-400" for="sa-output"> </label> <div class="mt-1 flex items-center gap-1.5"><input id="sa-output" type="number" min="1000" max="100000" step="1000" class="h-7 w-20 rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500"/> <span class="text-[0.6875rem] text-gray-400 dark:text-gray-600">chars</span></div></div> <div><label class="text-xs text-gray-600 dark:text-gray-400" for="sa-prompt"> </label> <textarea id="sa-prompt" rows="4" class="mt-1 w-full resize-y rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 font-mono text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500"></textarea> <p class="mt-0.5 text-[0.6875rem] text-gray-400 dark:text-gray-600"> </p></div>
72',1),qN=u('<div class="flex flex-col gap-2.5"><label class="flex cursor-pointer items-center justify-between"><span class="text-xs text-gray-600 dark:text-gray-400"> </span> <!></label> <p class="-mt-1 text-[0.6875rem] text-gray-400 dark:text-gray-600"> </p> <!></div>'),XN=u('<div class="flex justify-end pt-6 text-sm font-normal"><button class="rounded-full bg-black px-3.5 py-1.5 text-sm font-normal text-white transition hover:bg-gray-900 disabled:opacity-50 dark:bg-white dark:text-black dark:hover:bg-gray-100" type="submit"> </button></div>'),JN=u('<form class="flex h-full flex-col justify-between text-sm"><h2 class="text-sm font-medium text-gray-900 dark:text-white mb-4"> </h2> <div class="flex-1 min-h-0 overflow-y-auto scrollbar-hover pr-1.5"><!></div> <!></form>');function ZN(He,_){vr(_,!1);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr(),Ie=mr("i18n");let X=h(!0),R=h(!1),I=h(!1),c=h(!1),x=h(20),A=h(20),E=h(30),V=h(3e4),B=h("");ea(async()=>{try{const ce=await Um(localStorage.token);s(I,(ce==null?void 0:ce.ENABLE_SUBAGENTS)??!1),s(c,(ce==null?void 0:ce.SUBAGENTS_BACKGROUND_ENABLED)??!1),s(x,Number(ce==null?void 0:ce.SUBAGENTS_MAX_CONCURRENT)||20),s(A,Number(ce==null?void 0:ce.SUBAGENTS_MAX_ASYNC)||20),s(E,Number(ce==null?void 0:ce.SUBAGENTS_MAX_ITERATIONS)||30),s(V,Number(ce==null?void 0:ce.SUBAGENTS_MAX_OUTPUT)||3e4),s(B,(ce==null?void 0:ce.SUBAGENTS_SYSTEM_PROMPT)??"")}catch(ce){rt.error(`${ce}`)}finally{s(X,!1)}});const j=async()=>{s(R,!0);try{await Bm(localStorage.token,{ENABLE_SUBAGENTS:e(I),SUBAGENTS_BACKGROUND_ENABLED:e(c),SUBAGENTS_MAX_CONCURRENT:e(x),SUBAGENTS_MAX_ASYNC:e(A),SUBAGENTS_MAX_ITERATIONS:e(E),SUBAGENTS_MAX_OUTPUT:e(V),SUBAGENTS_SYSTEM_PROMPT:e(B)}),rt.success(t().t("Settings saved successfully!"))}catch(ce){rt.error(`${ce}`)}finally{s(R,!1)}};gr();var w=JN(),Te=a(w),Se=a(Te,!0);r(Te);var Y=o(Te,2),ee=a(Y);{var ae=ce=>{var De=KN(),Le=a(De);ra(Le,{className:"size-6"}),r(De),i(ce,De)},Pe=ce=>{var De=qN(),Le=a(De),Ne=a(Le),Ce=a(Ne,!0);r(Ne);var we=o(Ne,2);Nt(we,{get state(){return e(I)},set state(qe){s(I,qe)},$$legacy:!0}),r(Le);var oe=o(Le,2),de=a(oe,!0);r(oe);var be=o(oe,2);{var Me=qe=>{var Re=VN(),ue=Qe(Re),xe=a(ue),K=a(xe,!0);r(xe);var Oe=o(xe,2),O=a(Oe);vt(O);var ie=o(O,2),M=a(ie,!0);r(ie),r(Oe),r(ue);var ve=o(ue,2),te=a(ve),ge=a(te),_e=a(ge,!0);r(ge);var Ae=o(ge,2);Nt(Ae,{get state(){return e(c)},set state(J){s(c,J)},$$legacy:!0}),r(te);var U=o(te,2),T=a(U,!0);r(U),r(ve);var C=o(ve,2);{var D=J=>{var W=YN(),Z=a(W),Ee=a(Z,!0);r(Z);var Ge=o(Z,2),p=a(Ge);vt(p);var $=o(p,2),S=a($,!0);r($),r(Ge),r(W),g((L,fe)=>{d(Ee,L),d(S,fe)},[()=>t().t("Max background"),()=>t().t("background sub-agents")]),dt(p,()=>e(A),L=>s(A,L)),i(J,W)};G(C,J=>{e(c)&&J(D)})}var F=o(C,2),H=a(F),pe=a(H,!0);r(H);var ye=o(H,2),he=a(ye);vt(he);var q=o(he,2),P=a(q,!0);r(q),r(ye),r(F);var Q=o(F,2),re=a(Q),le=a(re,!0);r(re);var $e=o(re,2),ze=a($e);vt(ze),ll(2),r($e),r(Q);var Fe=o(Q,2),at=a(Fe),tt=a(at,!0);r(at);var Je=o(at,2);So(Je);var je=o(Je,2),ne=a(je,!0);r(je),r(Fe),g((J,W,Z,Ee,Ge,p,$,S,L,fe)=>{d(K,J),d(M,W),d(_e,Z),d(T,Ee),d(pe,Ge),d(P,p),d(le,$),d(tt,S),Be(Je,"placeholder",L),d(ne,fe)},[()=>t().t("Max concurrent"),()=>t().t("simultaneous sub-agents"),()=>t().t("Enable background sub-agents"),()=>t().t("Allow delegated sub-agents to keep running while the parent chat continues."),()=>t().t("Max iterations"),()=>t().t("tool loops per sub-agent"),()=>t().t("Max output"),()=>t().t("System prompt"),()=>t().t("You are a sub-agent..."),()=>t().t("Leave empty for the built-in default.")]),dt(O,()=>e(x),J=>s(x,J)),dt(he,()=>e(E),J=>s(E,J)),dt(ze,()=>e(V),J=>s(V,J)),dt(Je,()=>e(B),J=>s(B,J)),i(qe,Re)};G(be,qe=>{e(I)&&qe(Me)})}r(De),g((qe,Re)=>{d(Ce,qe),d(de,Re)},[()=>t().t("Enable sub-agents"),()=>t().t("Allow the AI to delegate tasks to sub-agents. Each sub-agent creates a real chat with full tool access. Uses additional LLM calls.")]),i(ce,De)};G(ee,ce=>{e(X)?ce(ae):ce(Pe,-1)})}r(Y);var se=o(Y,2);{var m=ce=>{var De=XN(),Le=a(De),Ne=a(Le,!0);r(Le),r(De),g(Ce=>{Le.disabled=e(R),d(Ne,Ce)},[()=>t().t("Save")]),i(ce,De)};G(se,ce=>{e(X)||ce(m)})}r(w),g(ce=>d(Se,ce),[()=>t().t("Sub-agents")]),ke("submit",w,ca(j)),i(He,w),cr(),n()}var QN=u('<div class=" flex gap-2 w-full justify-between items-center"><div class=" text-sm flex-1 py-1 rounded-lg"> </div> <div class="shrink-0"><button type="button"><!></button></div></div>'),eP=u('<div class="flex flex-col"></div>'),tP=u('<div class="text-gray-500 text-xs text-center py-2"> </div>'),rP=u('<option class="bg-gray-50 dark:bg-gray-700"> </option>'),aP=u('<button class="px-3.5 py-1.5 text-sm font-medium dark:bg-black dark:hover:bg-gray-950 dark:text-white bg-white text-black hover:bg-gray-100 transition rounded-full flex flex-row space-x-1 items-center" type="button"> </button>'),lP=u('<div class="ml-2 self-center"><!></div>'),oP=u('<div><div class=" flex justify-between dark:text-gray-100 px-5 pt-4 pb-2"><div class=" text-lg font-medium self-center font-primary"><!></div>
72 <button class="self-center"><!></button></div> <div class="flex flex-col md:flex-row w-full px-4 pb-4 md:space-x-4 dark:text-gray-200"><div class=" flex flex-col w-full sm:flex-row sm:justify-center sm:space-x-6"><form class="flex flex-col w-full"><div class="px-1"><div class="flex justify-center pb-3"><input type="file" hidden="" accept="image/*"/> <button class="relative rounded-full w-fit h-fit shrink-0" type="button"><img class="size-16 rounded-full object-cover shrink-0"/> <div class="absolute flex justify-center rounded-full bottom-0 left-0 right-0 top-0 h-full w-full overflow-hidden bg-gray-700 bg-fixed opacity-0 transition duration-300 ease-in-out hover:opacity-50"><div class="my-auto text-white"><!></div></div></button></div> <div class="flex gap-2"><div class="flex flex-col w-full"><div class=" mb-0.5 text-xs text-gray-500"> </div> <div class="flex-1"><input class="w-full text-sm bg-transparent placeholder:text-gray-300 dark:placeholder:text-gray-700 outline-hidden" type="text" autocomplete="off" required=""/></div></div> <div class="flex flex-col w-full"><div class=" mb-0.5 text-xs text-gray-500"> </div> <div class="flex-1"><input class="w-full text-sm bg-transparent placeholder:text-gray-300 dark:placeholder:text-gray-700 outline-hidden" type="text" autocomplete="off" required=""/></div></div></div> <div class="flex flex-col w-full mt-2"><div class=" mb-1 text-xs text-gray-500"> </div> <div class="flex-1"><input class="w-full text-sm bg-transparent placeholder:text-gray-300 dark:placeholder:text-gray-700 outline-hidden" type="text" autocomplete="off"/></div></div> <hr class=" border-gray-100 dark:border-gray-700/10 my-2.5 w-full"/> <div class="my-2"><!></div> <hr class=" border-gray-100 dark:border-gray-700/10 my-2.5 w-full"/> <div class="flex flex-col w-full"><div class="mb-1 flex justify-between"><div class="text-xs text-gray-500"> </div> <div><button class=" text-xs text-gray-500" type="button"><!></button></div></div> <!></div> <hr class=" border-gray-100 dark:border-gray-700/10 my-2.5 w-full"/> <div class="flex items-center"><select><option> </option><!></select> <div><button type="button"><!></button></div></div></div> <div class="flex justify-end pt-3 text-sm font-medium gap-1.5"><!> <button type="submit"> <!></button></div></form></div></div></div>'),sP=u("<!> <!>",1);function rp(He,_){vr(_,!1);const t=()=>ct(X,"$i18n",n),f=()=>ct(ba,"$models",n),[n,Ie]=hr(),X=mr("i18n"),R=ja();let I=Xe(_,"show",12,!1),c=Xe(_,"edit",8,!1),x=Xe(_,"model",8,null),A=h(""),E=h("");const V=()=>{c()||s(E,e(A).toLowerCase().replace(/[^a-z0-9]/g,"-").replace(/-+/g,"-").replace(/^-|-$/g,""))};let B=h(`${No}/favicon.png`),j=h(""),w=h(""),Te=h([]),Se=h("include"),Y=h([]),ee=h(),ae=h(!1),Pe=h(!1);const se=()=>{e(w)&&!e(Te).includes(e(w))&&s(Te,[...e(Te),e(w)]),s(w,"")},m=()=>{if(s(ae,!0),!e(A)||!e(E)){s(ae,!1),rt.error(t().t("Name and ID are required, please fill them out"));return}if(!c()&&f().find(we=>we.name===e(A))){s(ae,!1),s(A,""),rt.error(t().t("Model name already exists, please choose a different one"));return}const Ce={id:e(E),name:e(A),meta:{profile_image_url:e(B),description:e(j)||null,model_ids:e(Te).length>0?e(Te):null,filter_mode:e(Te).length>0&&e(Se)?e(Se):null,access_grants:e(Y)}};R("submit",Ce),s(ae,!1),I(!1),s(A,""),s(E,""),s(B,`${No}/favicon.png`),s(j,""),s(Te,[]),s(w,"")},ce=()=>{var Ce;x()&&(s(A,x().name),s(E,x().id),s(B,x().meta.profile_image_url),s(j,x().meta.description),s(Te,[...new Set(x().meta.model_ids||[])]),s(Se,((Ce=x().meta)==null?void 0:Ce.filter_mode)??"include"),s(Y,x().meta.access_grants??[]))};ea(()=>{ce()}),Kt(()=>e(A),()=>{e(A)&&V()}),Kt(()=>it(I()),()=>{I()&&ce()}),la(),gr();var De=sP(),Le=Qe(De);Ca(Le,{get show(){return e(Pe)},set show(Ce){s(Pe,Ce)},$$events:{confirm:()=>{R("delete",x()),I(!1)}},$$legacy:!0});var Ne=o(Le,2);Wa(Ne,{size:"sm",get show(){return I()},set show(Ce){I(Ce)},children:(Ce,we)=>{var oe=oP(),de=a(oe),be=a(de),Me=a(be);{var qe=nt=>{var et=Mr();g(gt=>d(et,gt),[()=>(t(),l(()=>t().t("Edit Arena Model")))]),i(nt,et)},Re=nt=>{var et=Mr();g(gt=>d(et,gt),[()=>(t(),l(()=>t().t("Add Arena Model")))]),i(nt,et)};G(Me,nt=>{c()?nt(qe):nt(Re,-1)})}r(be);var ue=o(be,2),xe=a(ue);wa(xe,{className:"size-5"}),r(ue),r(de);var K=o(de,2),Oe=a(K),O=a(Oe),ie=a(O),M=a(ie),ve=a(M);Oa(ve,nt=>s(ee,nt),()=>e(ee));var te=o(ve,2),ge=a(te),_e=o(ge,2),Ae=a(_e),U=a(Ae);AA(U,{className:"size-4"}),r(Ae),r(_e),r(te),r(M);var T=o(M,2),C=a(T),D=a(C),F=a(D,!0);r(D);var H=o(D,2),pe=a(H);vt(pe),r(H),r(C);var ye=o(C,2),he=a(ye),q=a(he,!0);r(he);var P=o(he,2),Q=a(P);vt(Q),r(P),r(ye),r(T);var re=o(T,2),le=a(re),$e=a(le,!0);r(le);var ze=o(le,2),Fe=a(ze);vt(Fe),r(ze),r(re);var at=o(re,4),tt=a(at);ju(tt,{get accessGrants(){return e(Y)},set accessGrants(nt){s(Y,nt)},$$legacy:!0}),r(at);var Je=o(at,4),je=a(Je),ne=a(je),J=a(ne,!0);r(ne);var W=o(ne,2),Z=a(W),Ee=a(Z);{var Ge=nt=>{var et=Mr();g(gt=>d(et,gt),[()=>(t(),l(()=>t().t("Include")))]),i(nt,et)},p=nt=>{var et=Mr();g(gt=>d(et,gt),[()=>(t(),l(()=>t().t("Exclude")))]),i(nt,et)};G(Ee,nt=>{e(Se)==="include"?nt(Ge):nt(p,-1)})}r(Z),r(W),r(je);var $=o(je,2);{var S=nt=>{var et=eP();lr(et,5,()=>e(Te),Ar,(gt,It,Mt)=>{var jt=QN(),Tt=a(jt),yt=a(Tt,!0);r(Tt);var $t=o(Tt,2),rr=a($t),Rt=a(rr);Ys(Rt,{strokeWidth:"2",className:"size-3.5"}),r(rr),r($t),r(jt),g(Wt=>d(yt,Wt),[()=>(f(),e(It),l(()=>{var Wt;return(Wt=f().find(or=>or.id===e(It)))==null?void 0:Wt.name}))]),ke("click",rr,()=>{s(Te,e(Te).filter((Wt,or)=>or!==Mt))}),i(gt,jt)}),r(et),i(nt,et)},L=nt=>{var et=tP(),gt=a(et,!0);r(et),g(It=>d(gt,It),[()=>(t(),l(()=>t().t("Leave empty to include all models or select specific models")))]),i(nt,et)};G($,nt=>{e(Te),l(()=>e(Te).length>0)?nt(S):nt(L,-1)})}r(Je);var fe=o(Je,4),y=a(fe),b=a(y),N=a(b,!0);r(b),b.value=b.__value="";var z=o(b);lr(z,1,()=>(f(),e(Te),l(()=>f().filter(nt=>(nt==null?void 0:nt.owned_by)!=="arena"&&!e(Te).includes(nt==null?void 0:nt.id)))),Ar,(nt,et,gt,It)=>{var Mt=rP(),jt=a(Mt,!0);r(Mt);var Tt={};g(()=>{d(jt,(e(et),l(()=>e(et).name))),Tt!==(Tt=(e(et),l(()=>e(et).id)))&&(Mt.value=(Mt.__value=(e(et),l(()=>e(et).id)))??"")}),i(nt,Mt)}),r(y);var Ue=o(y,2),Ye=a(Ue),Ve=a(Ye);Ya(Ve,{className:"size-3.5",strokeWidth:"2"}),r(Ye),r(Ue),r(fe),r(ie);var lt=o(ie,2),st=a(lt);{var Ke=nt=>{var et=aP(),gt=a(et,!0);r(et),g(It=>d(gt,It),[()=>(t(),l(()=>t().t("Delete")))]),ke("click",et,()=>{s(Pe,!0)}),i(nt,et)};G(st,nt=>{c()&&nt(Ke)})}var Ze=o(st,2),ot=a(Ze),ut=o(ot);{var _t=nt=>{var et=lP(),gt=a(et);ra(gt,{}),r(et),i(nt,et)};G(ut,nt=>{e(ae)&&nt(_t)})}r(Ze),r(lt),r(O),r(Oe),r(K),r(oe),g((nt,et,gt,It,Mt,jt,Tt,yt,$t,rr)=>{Be(ge,"src",e(B)),Be(ge,"alt",nt),d(F,et),Be(pe,"placeholder",gt),d(q,It),Be(Q,"placeholder",Mt),Q.disabled=c(),d($e,jt),Be(Fe,"placeholder",Tt),d(J,yt),k(y,1,`w-full py-1 text-sm rounded-lg bg-transparent ${e(w)?"":"text-gray-500"} placeholder:text-gray-300 dark:placeholder:text-gray-700 outline-hidden`),d(N,$t),k(Ze,1,`px-3.5 py-1.5 text-sm font-medium bg-black hover:bg-gray-950 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full flex flex-row space-x-1 items-center ${e(ae)?" cursor-not-allowed":""}`),Ze.disabled=e(ae),d(ot,`${rr??""} `)},[()=>(t(),l(()=>t().t("Profile"))),()=>(t(),l(()=>t().t("Name"))),()=>(t(),l(()=>t().t("Model Name"))),()=>(t(),l(()=>t().t("ID"))),()=>(t(),l(()=>t().t("Model ID"))),()=>(t(),l(()=>t().t("Description"))),()=>(t(),l(()=>t().t("Enter description"))),()=>(t(),l(()=>t().t("Models"))),()=>(t(),l(()=>t().t("Select a model"))),()=>(t(),l(()=>t().t("Save")))]),ke("click",ue,()=>{I(!1)}),ke("change",ve,nt=>{const et=nt.target.files??[];let gt=new FileReader;gt.onload=It=>{let Mt=`${It.target.result}`;const jt=new Image;jt.src=Mt,jt.onload=function(){const Tt=document.createElement("canvas"),yt=Tt.getContext("2d"),$t=jt.width/jt.height;let rr,Rt;$t>1?(rr=250*$t,Rt=250):(rr=250,Rt=250/$t),Tt.width=250,Tt.height=250;const Wt=(250-rr)/2,or=(250-Rt)/2;yt.drawImage(jt,Wt,or,rr,Rt);const $r=Tt.toDataURL("image/webp",.8);s(B,$r),nt.target.files=null}},et.length>
720&&["image/gif","image/webp","image/jpeg","image/png"].includes(et[0].type)&>.readAsDataURL(et[0])}),ke("click",te,()=>{e(ee).click()}),dt(pe,()=>e(A),nt=>s(A,nt)),dt(Q,()=>e(E),nt=>s(E,nt)),dt(Fe,()=>e(j),nt=>s(j,nt)),ke("click",Z,()=>{s(Se,e(Se)==="include"?"exclude":"include")}),al(y,()=>e(w),nt=>s(w,nt)),ke("click",Ye,()=>{se()}),ke("submit",O,ca(()=>{m()})),i(Ce,oe)},$$slots:{default:!0},$$legacy:!0}),i(He,De),cr(),Ie()}var nP=u('<!> <div class="py-0.5"><div class="flex justify-between items-center mb-1"><div class="flex flex-col flex-1"><div class="flex gap-2.5 items-center"><img class="size-8 rounded-full object-cover shrink-0"/> <div class="w-full flex flex-col"><div class="flex items-center gap-1"><div class=" line-clamp-1"> </div></div> <div class="flex items-center gap-1"><div class=" text-xs w-full text-gray-500 bg-transparent line-clamp-1"> </div></div></div></div></div> <div class="flex items-center"><button class="self-center w-fit text-sm p-1.5 dark:text-gray-300 dark:hover:text-white hover:bg-black/5 dark:hover:bg-white/5 rounded-xl" type="button"><!></button></div></div></div>',1);function iP(He,_){vr(_,!1);const t=ja();mr("i18n");let f=Xe(_,"model",8),n=h(!1);gr();var Ie=nP(),X=Qe(Ie);rp(X,{edit:!0,get model(){return f()},get show(){return e(n)},set show(Pe){s(n,Pe)},$$events:{submit:async Pe=>{t("edit",Pe.detail)},delete:async()=>{t("delete")}},$$legacy:!0});var R=o(X,2),I=a(R),c=a(I),x=a(c),A=a(x),E=o(A,2),V=a(E),B=a(V),j=a(B,!0);r(B),r(V);var w=o(V,2),Te=a(w),Se=a(Te,!0);r(Te),r(w),r(E),r(x),r(c);var Y=o(c,2),ee=a(Y),ae=a(ee);jl(ae,{}),r(ee),r(Y),r(I),r(R),g(()=>{Be(A,"src",(it(ia),it(f()),l(()=>`${ia}/models/model/profile/image?id=${f().id}`))),Be(A,"alt",(it(f()),l(()=>f().name))),d(j,(it(f()),l(()=>f().name))),d(Se,(it(f()),l(()=>{var Pe,se;return((se=(Pe=f())==null?void 0:Pe.meta)==null?void 0:se.description)??f().id})))}),ke("click",ee,()=>{s(n,!0)}),i(He,Ie),cr()}var dP=u('<button class="flex size-6 items-center justify-center rounded-lg text-gray-400 transition-colors hover:bg-black/5 hover:text-gray-900 dark:text-gray-600 dark:hover:bg-white/5 dark:hover:text-white" type="button"><!></button>'),vP=u('<div class="text-center text-[0.6875rem] text-gray-400 dark:text-gray-600"> </div>'),cP=u('<div class="mb-2 flex items-center justify-between"><div class="text-xs text-gray-600 dark:text-gray-400"> </div> <!></div> <div class="flex flex-col gap-2"><!></div>',1),uP=u("<!> <!>",1),gP=u('<div class="flex h-full justify-center"><div class="my-auto"><!></div></div>'),_P=u('<!> <form class="flex flex-col h-full justify-between text-sm"><h2 class="text-sm font-medium text-gray-900 dark:text-white mb-4"> </h2> <div class="flex-1 min-h-0 overflow-y-auto scrollbar-hover pr-1.5"><!></div> <div class="flex justify-end pt-6 text-sm font-normal"><button class="px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full" type="submit"> </button></div></form>',1);function fP(He,_){vr(_,!1);const t=()=>ct(c,"$i18n",X),f=()=>ct(_a,"$config",X),n=()=>ct(ua,"$settings",X),Ie=()=>ct(ka,"$user",X),[X,R]=hr(),I=ja(),c=mr("i18n");let x=h(null),A=h(!1);const E=async()=>{var Ne,Ce,we;s(x,await Pb(localStorage.token,e(x)).catch(oe=>(rt.error(oe),null))),e(x)&&(rt.success(t().t("Settings saved successfully!")),ba.set(await La(localStorage.token,(Ce=(Ne=f())==null?void 0:Ne.features)!=null&&Ce.enable_direct_connections?((we=n())==null?void 0:we.directConnections)??null:null)))},V=async Ne=>{var Ce,we,oe;e(x).EVALUATION_ARENA_MODELS.push(Ne),We(x,e(x).EVALUATION_ARENA_MODELS=[...e(x).EVALUATION_ARENA_MODELS]),await E(),ba.set(await La(localStorage.token,(we=(Ce=f())==null?void 0:Ce.features)!=null&&we.enable_direct_connections?((oe=n())==null?void 0:oe.directConnections)??null:null))},B=async(Ne,Ce)=>{var we,oe,de;We(x,e(x).EVALUATION_ARENA_MODELS[Ce]=Ne),We(x,e(x).EVALUATION_ARENA_MODELS=[...e(x).EVALUATION_ARENA_MODELS]),await E(),ba.set(await La(localStorage.token,(oe=(we=f())==null?void 0:we.features)!=null&&oe.enable_direct_connections?((de=n())==null?void 0:de.directConnections)??null:null))},j=async Ne=>{var Ce,we,oe;We(x,e(x).EVALUATION_ARENA_MODELS=e(x).EVALUATION_ARENA_MODELS.filter((de,be)=>be!==Ne)),await E(),ba.set(await La(localStorage.token,((we=(Ce=f())==null?void 0:Ce.features)==null?void 0:we.enable_direct_connections)&&(((oe=n())==null?void 0:oe.directConnections)??null)))};ea(async()=>{var Ne;((Ne=Ie())==null?void 0:Ne.role)==="admin"&&s(x,await Nb(localStorage.token).catch(Ce=>(rt.error(Ce),null)))}),gr();var w=_P(),Te=Qe(w);rp(Te,{get show(){return e(A)},set show(Ne){s(A,Ne)},$$events:{submit:async Ne=>{V(Ne.detail)}},$$legacy:!0});var Se=o(Te,2),Y=a(Se),ee=a(Y,!0);r(Y);var ae=o(Y,2),Pe=a(ae);{var se=Ne=>{var Ce=uP(),we=Qe(Ce);va(we,{first:!0,children:(be,Me)=>{{let qe=v(()=>t().t("Arena Models")),Re=v(()=>t().t("Message rating should be enabled to use this feature"));Jt(be,{get label(){return e(qe)},get description(){return e(Re)},children:Ir,$$slots:{default:(ue,xe)=>{const K=v(()=>xe.labelId);{let Oe=v(()=>t().t("Message rating should be enabled to use this feature"));Lt(ue,{get content(){return e(Oe)},children:(O,ie)=>{Nt(O,{get ariaLabelledbyId(){return e(K)},get state(){return e(x).ENABLE_EVALUATION_ARENA_MODELS},set state(M){We(x,e(x).ENABLE_EVALUATION_ARENA_MODELS=M)},$$legacy:!0})},$$slots:{default:!0}})}}}})}},$$slots:{default:!0}});var oe=o(we,2);{var de=be=>{{let Me=v(()=>t().t("Models"));va(be,{get title(){return e(Me)},children:(qe,Re)=>{var ue=cP(),xe=Qe(ue),K=a(xe),Oe=a(K,!0);r(K);var O=o(K,2);{let ge=v(()=>t().t("Add Arena Model"));Lt(O,{get content(){return e(ge)},children:(_e,Ae)=>{var U=dP(),T=a(U);Ya(T,{}),r(U),ke("click",U,()=>{s(A,!0)}),i(_e,U)},$$slots:{default:!0}})}r(xe);var ie=o(xe,2),M=a(ie);{var ve=ge=>{var _e=Wr(),Ae=Qe(_e);lr(Ae,1,()=>e(x).EVALUATION_ARENA_MODELS,Ar,(U,T,C)=>{iP(U,{get model(){return e(T)},$$events:{edit:D=>{B(D.detail,C)},delete:D=>{j(C)}}})}),i(ge,_e)},te=ge=>{var _e=vP(),Ae=a(_e,!0);r(_e),g(U=>d(Ae,U),[()=>t().t("Using the default arena model with all models. Click the plus button to add custom models.")]),i(ge,_e)};G(M,ge=>{var _e;(((_e=e(x))==null?void 0:_e.EVALUATION_ARENA_MODELS)??[]).length>0?ge(ve):ge(te,-1)})}r(ie),g(ge=>d(Oe,ge),[()=>t().t("Arena Models")]),i(qe,ue)},$$slots:{default:!0}})}};G(oe,be=>
72{e(x).ENABLE_EVALUATION_ARENA_MODELS&&be(de)})}i(Ne,Ce)},m=Ne=>{var Ce=gP(),we=a(Ce),oe=a(we);ra(oe,{className:"size-6"}),r(we),r(Ce),i(Ne,Ce)};G(Pe,Ne=>{e(x)!==null?Ne(se):Ne(m,-1)})}r(ae);var ce=o(ae,2),De=a(ce),Le=a(De,!0);r(De),r(ce),r(Se),g((Ne,Ce)=>{d(ee,Ne),d(Le,Ce)},[()=>t().t("Evaluations"),()=>t().t("Save")]),ke("submit",Se,ca(()=>{E(),I("save")})),i(He,w),cr(),R()}const pP=async(He="",_=null,t=null,f=null)=>{let n=null;const Ie=new URLSearchParams;_&&Ie.append("start_date",_.toString()),t&&Ie.append("end_date",t.toString()),f&&Ie.append("group_id",f);const X=await fetch(`${ia}/analytics/models?${Ie.toString()}`,{method:"GET",headers:{Accept:"application/json","Content-Type":"application/json",authorization:`Bearer ${He}`}}).then(async R=>{if(!R.ok)throw await R.json();return R.json()}).catch(R=>(n=R.detail,null));if(n)throw n;return X},mP=async(He="",_=null,t=null,f=50,n=null)=>{let Ie=null;const X=new URLSearchParams;_&&X.append("start_date",_.toString()),t&&X.append("end_date",t.toString()),f&&X.append("limit",f.toString()),n&&X.append("group_id",n);const R=await fetch(`${ia}/analytics/users?${X.toString()}`,{method:"GET",headers:{Accept:"application/json","Content-Type":"application/json",authorization:`Bearer ${He}`}}).then(async I=>{if(!I.ok)throw await I.json();return I.json()}).catch(I=>(Ie=I.detail,null));if(Ie)throw Ie;return R},hP=async(He="",_=null,t=null,f=null)=>{let n=null;const Ie=new URLSearchParams;_&&Ie.append("start_date",_.toString()),t&&Ie.append("end_date",t.toString()),f&&Ie.append("group_id",f);const X=await fetch(`${ia}/analytics/summary?${Ie.toString()}`,{method:"GET",headers:{Accept:"application/json","Content-Type":"application/json",authorization:`Bearer ${He}`}}).then(async R=>{if(!R.ok)throw await R.json();return R.json()}).catch(R=>(n=R.detail,null));if(n)throw n;return X},xP=async(He="",_=null,t=null,f="daily",n=null)=>{let Ie=null;const X=new URLSearchParams;_&&X.append("start_date",_.toString()),t&&X.append("end_date",t.toString()),X.append("granularity",f),n&&X.append("group_id",n);const R=await fetch(`${ia}/analytics/daily?${X.toString()}`,{method:"GET",headers:{Accept:"application/json","Content-Type":"application/json",authorization:`Bearer ${He}`}}).then(async I=>{if(!I.ok)throw await I.json();return I.json()}).catch(I=>(Ie=I.detail,null));if(Ie)throw Ie;return R},bP=async(He="",_=null,t=null,f=null)=>{let n=null;const Ie=new URLSearchParams;_&&Ie.append("start_date",_.toString()),t&&Ie.append("end_date",t.toString()),f&&Ie.append("group_id",f);const X=await fetch(`${ia}/analytics/tokens?${Ie.toString()}`,{method:"GET",headers:{Accept:"application/json","Content-Type":"application/json",authorization:`Bearer ${He}`}}).then(async R=>{if(!R.ok)throw await R.json();return R.json()}).catch(R=>(n=R.detail,null));if(n)throw n;return X},I_=async(He="",_,t=null,f=null,n=0,Ie=50,X=null,R=null)=>{let I=null;const c=new URLSearchParams;t&&c.append("start_date",t.toString()),f&&c.append("end_date",f.toString()),n&&c.append("skip",n.toString()),Ie&&c.append("limit",Ie.toString()),X&&c.append("order_by",X),R&&c.append("direction",R);const x=await fetch(`${ia}/analytics/models/${encodeURIComponent(_)}/chats?${c.toString()}`,{method:"GET",headers:{Accept:"application/json","Content-Type":"application/json",authorization:`Bearer ${He}`}}).then(async A=>{if(!A.ok)throw await A.json();return A.json()}).catch(A=>(I=A.detail,null));if(I)throw I;return x},yP=async(He="",_,t=30)=>{let f=null;const n=new URLSearchParams;n.append("days",t.toString());const Ie=await fetch(`${ia}/analytics/models/${encodeURIComponent(_)}/overview?${n.toString()}`,{method:"GET",headers:{Accept:"application/json","Content-Type":"application/json",authorization:`Bearer ${He}`}}).then(async X=>{if(!X.ok)throw await X.json();return X.json()}).catch(X=>(f=X.detail,null));if(f)throw f;return Ie};var $P=Jr('<path fill="none" stroke-width="1.5"></path>'),wP=Jr('<circle r="3"></circle>'),kP=Jr('<line stroke="#ddd" stroke-width="1"></line><!>',1),EP=u("<span> </span>"),AP=u('<div class="absolute inset-x-0 bottom-0 flex justify-between px-0.5 text-[0.625rem] text-gray-400"></div>'),IP=u('<div class="flex items-center justify-between gap-2 py-0.5"><span class="min-w-0 truncate text-gray-600 dark:text-gray-300"> </span> <span class="shrink-0 text-gray-900 tabular-nums dark:text-white"> <span class="text-gray-400"> </span></span></div>'),SP=u('<div class="pointer-events-none absolute top-1 text-[0.6875rem]">
72<div class="min-w-[8.75rem] -translate-x-1/2 rounded border border-gray-100 bg-white px-2.5 py-1.5 shadow-sm dark:border-gray-800 dark:bg-gray-900"><div class="mb-1.5 text-[0.625rem] text-gray-400"><!></div> <!></div></div>'),NP=u('<div class="relative w-full"><svg class="absolute inset-x-0 top-0 h-[calc(100%-20px)] w-full" preserveAspectRatio="none"><!><!></svg> <!> <!></div>');function PP(He,_){vr(_,!0);let t=Xe(_,"height",3,300),f=Xe(_,"period",3,"week"),n=nu(null),Ie=nu(0),X=Qr(()=>new Map(_.models.map((De,Le)=>[De,_.colors[Le%_.colors.length]]))),R=Qr(()=>Math.max(..._.data.flatMap(De=>Object.values(De.models||{})),1));const I={t:8,r:0,b:20,l:0},c=1e3;let x=Qr(()=>c-I.l-I.r),A=Qr(()=>t()-I.t-I.b);const E=De=>_.data.length<=1?I.l+e(x)/2:I.l+De/(_.data.length-1)*e(x),V=De=>I.t+e(A)-De/e(R)*e(A),B=De=>{const Le=_.data.map((Ne,Ce)=>{var we;return`${E(Ce)},${V(((we=Ne.models)==null?void 0:we[De])||0)}`});return Le.length>1?`M${Le.join("L")}`:""},j=De=>{const Ne=De.currentTarget.getBoundingClientRect();s(Ie,(De.clientX-Ne.left)*(c/Ne.width)),s(n,Math.max(0,Math.min(_.data.length-1,Math.round((e(Ie)-I.l)/e(x)*(_.data.length-1)))),!0)};let w=Qr(()=>e(n)!==null?_.data[e(n)]:null);var Te=NP(),Se=a(Te),Y=a(Se);lr(Y,17,()=>_.models,Ar,(De,Le)=>{var Ne=$P();g((Ce,we)=>{var oe;Be(Ne,"d",Ce),Be(Ne,"stroke",we),k(Ne,0,me(e(w)&&!((oe=e(w).models)!=null&&oe[e(Le)])?"opacity-20":""))},[()=>B(e(Le)),()=>e(X).get(e(Le))]),i(De,Ne)});var ee=o(Y);{var ae=De=>{var Le=kP(),Ne=Qe(Le),Ce=o(Ne);lr(Ce,17,()=>_.models,Ar,(we,oe)=>{const de=Qr(()=>{var Re,ue;return((ue=(Re=e(w))==null?void 0:Re.models)==null?void 0:ue[e(oe)])||0});var be=Wr(),Me=Qe(be);{var qe=Re=>{var ue=wP();g((xe,K,Oe)=>{Be(ue,"cx",xe),Be(ue,"cy",K),Be(ue,"fill",Oe)},[()=>E(e(n)),()=>V(e(de)),()=>e(X).get(e(oe))]),i(Re,ue)};G(Me,Re=>{e(de)>0&&Re(qe)})}i(we,be)}),g((we,oe)=>{Be(Ne,"x1",we),Be(Ne,"y1",I.t),Be(Ne,"x2",oe),Be(Ne,"y2",e(A)+I.t)},[()=>E(e(n)),()=>E(e(n))]),i(De,Le)};G(ee,De=>{e(n)!==null&&De(ae)})}r(Se);var Pe=o(Se,2);{var se=De=>{const Le=Qr(()=>Math.min(7,_.data.length)),Ne=Qr(()=>e(Le)>1&&Math.floor((_.data.length-1)/(e(Le)-1))||1),Ce=Qr(()=>{var de,be;return(be=(de=_.data[0])==null?void 0:de.date)==null?void 0:be.includes(":")}),we=Qr(()=>e(Ce)?"h A":f()==="year"||f()==="all"?"M/D/YY":"M/D");var oe=AP();lr(oe,21,()=>Array(e(Le)),Ar,(de,be,Me)=>{const qe=Qr(()=>Me===e(Le)-1?_.data.length-1:Math.min(Me*e(Ne),_.data.length-1));var Re=Wr(),ue=Qe(Re);{var xe=K=>{var Oe=EP(),O=a(Oe,!0);r(Oe),g(ie=>{k(Oe,1,me(Me===0?"text-left":Me===e(Le)-1?"text-right":"text-center")),d(O,ie)},[()=>qa(_.data[e(qe)].date).format(e(we))]),i(K,Oe)};G(ue,K=>{_.data[e(qe)]&&K(xe)})}i(de,Re)}),r(oe),i(De,oe)};G(Pe,De=>{_.data.length>1&&De(se)})}var m=o(Pe,2);{var ce=De=>{const Le=Qr(()=>Object.values(e(w).models||{}).reduce((Re,ue)=>Re+ue,0));var Ne=SP(),Ce=a(Ne),we=a(Ce),oe=a(we);{var de=Re=>{var ue=Mr();g(xe=>d(ue,xe),[()=>qa(e(w).date).format("MMM D, h A")]),i(Re,ue)},be=Qr(()=>{var Re;return(Re=e(w).date)==null?void 0:Re.includes(":")}),Me=Re=>{var ue=Mr();g(xe=>d(ue,xe),[()=>qa(e(w).date).format("MMM D, YYYY")]),i(Re,ue)};G(oe,Re=>{e(be)?Re(de):Re(Me,-1)})}r(we);var qe=o(we,2);lr(qe,17,()=>Object.entries(e(w).models||{}).sort(([,Re],[,ue])=>ue-Re).slice(0,5),Ar,(Re,ue)=>{var xe=Qr(()=>yd(e(ue),2));let K=()=>e(xe)[0],Oe=()=>e(xe)[1];var O=IP(),ie=a(O),M=a(ie,!0);r(ie);var ve=o(ie,2),te=a(ve),ge=o(te),_e=a(ge);r(ge),r(ve),r(O),g((Ae,U)=>{d(M,K()),d(te,`${Ae??""} `),d(_e,`(${U??""}%)`)},[()=>Oe().toLocaleString(),()=>e(Le)>0?(Oe()/e(Le)*100).toFixed(0):0]),i(Re,O)}),r(Ce),r(Ne),g(Re=>bl(Ne,`left:${Re??""}%`),[()=>Math.min(Math.max(e(Ie)/c*100,8),92)]),i(De,Ne)};G(m,De=>{e(w)&&De(ce)})}r(Te),g(()=>{bl(Te,`height:${t()??""}px`),Be(Se,"viewBox",`0 0 1000 ${t()-20}`)}),lf("mousemove",Se,j),ke("mouseleave",Se,()=>s(n,null)),i(He,Te),cr()}af(["mousemove"]);var Vc=u('<span class="font-normal"><!></span>'),qc=u('<span class="invisible"><!></span>'),CP=u('<button type="button" class="px-1.5 py-1 w-32 cursor-pointer select-none"><div class="flex gap-1.5 items-center"> <!></div></button>'),TP=u('<div class="px-1.5 py-1 w-32"> </div>'),LP=u('<button type="button"><div class="flex gap-1.5 items-center"> <!></div></button> <button type="button"><div class="flex gap-1.5 items-center"> <!></div></button>',1),OP=u("<div> </div> <div> </div>",1),MP=u('<div class="flex text-xs font-normal mb-1.5"><!> <!></div>'),RP=u('<div class="flex justify-center py-8"><!></div>'),DP=u('<div class="text-center text-gray-500 text-sm py-8"> </div>'),UP=u("<div> </div>"),BP=u('<div class="w-32 shrink-0 flex items-center gap-2"><img class="size-5 rounded-full object-cover shrink-0"/> <span class="text-xs text-gray-600 dark:text-gray-400 truncate"> </span></div>'),GP=u('<!> <div class="w-full flex items-center rounded-lg text-sm py-2 px-3 hover:bg-gray-50 dark:hover:bg-gray-850"><!> <a><div class="text-ellipsis line-clamp-1 w-full"> </div></a> <div><div class="hidden sm:flex text-gray-500 dark:text-gray-400 text-xs"> </div></div></div>',1),jP=u('<div class="w-full flex justify-center py-1 text-xs animate-pulse items-center gap-2"><!> <div> </div></div>'),HP=u("<!> <!>",1),FP=u('<div><!> <div class="max-h-[22rem] overflow-y-scroll"><!></div></div>');function WP(He,_){vr(_,!1);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr();qa.extend(Fu);const Ie=mr("i18n");let X=Xe(_,"chatList",8,null),R=Xe(_,"loading",8,!1),I=Xe(_,"allLoaded",8,!1),c=Xe(_,"showUserInfo",8,!1),x=Xe(_,"shareUrl",8,!1),A=Xe(_,"emptyMessage",8,"No chats found"),E=Xe(_,"onLoadMore",8,null),V=Xe(_,"onChatClick",8,null),B=Xe(_,"orderBy",8,null),j=Xe(_,"direction",8,"de
72sc"),w=Xe(_,"onSort",8,null);gr();var Te=FP(),Se=a(Te);{var Y=ce=>{var De=MP(),Le=a(De);{var Ne=de=>{var be=Wr(),Me=Qe(be);{var qe=ue=>{var xe=CP(),K=a(xe),Oe=a(K),O=o(Oe);{var ie=ve=>{var te=Vc(),ge=a(te);{var _e=U=>{ha(U,{className:"size-2"})},Ae=U=>{Ba(U,{className:"size-2"})};G(ge,U=>{j()==="asc"?U(_e):U(Ae,-1)})}r(te),i(ve,te)},M=ve=>{var te=qc(),ge=a(te);ha(ge,{className:"size-2"}),r(te),i(ve,te)};G(O,ve=>{B()==="user_name"?ve(ie):ve(M,-1)})}r(K),r(xe),g(ve=>d(Oe,`${ve??""} `),[()=>(t(),l(()=>t().t("User")))]),ke("click",xe,()=>{var ve;return(ve=w())==null?void 0:ve("user_name")}),i(ue,xe)},Re=ue=>{var xe=TP(),K=a(xe,!0);r(xe),g(Oe=>d(K,Oe),[()=>(t(),l(()=>t().t("User")))]),i(ue,xe)};G(Me,ue=>{w()?ue(qe):ue(Re,-1)})}i(de,be)};G(Le,de=>{c()&&de(Ne)})}var Ce=o(Le,2);{var we=de=>{var be=LP(),Me=Qe(be),qe=a(Me),Re=a(qe),ue=o(Re);{var xe=ge=>{var _e=Vc(),Ae=a(_e);{var U=C=>{ha(C,{className:"size-2"})},T=C=>{Ba(C,{className:"size-2"})};G(Ae,C=>{j()==="asc"?C(U):C(T,-1)})}r(_e),i(ge,_e)},K=ge=>{var _e=qc(),Ae=a(_e);ha(Ae,{className:"size-2"}),r(_e),i(ge,_e)};G(ue,ge=>{B()==="title"?ge(xe):ge(K,-1)})}r(qe),r(Me);var Oe=o(Me,2),O=a(Oe),ie=a(O),M=o(ie);{var ve=ge=>{var _e=Vc(),Ae=a(_e);{var U=C=>{ha(C,{className:"size-2"})},T=C=>{Ba(C,{className:"size-2"})};G(Ae,C=>{j()==="asc"?C(U):C(T,-1)})}r(_e),i(ge,_e)},te=ge=>{var _e=qc(),Ae=a(_e);ha(Ae,{className:"size-2"}),r(_e),i(ge,_e)};G(M,ge=>{B()==="updated_at"?ge(ve):ge(te,-1)})}r(O),r(Oe),g((ge,_e)=>{k(Me,1,`px-1.5 py-1 ${c()?"flex-1":"basis-3/5"} cursor-pointer select-none text-left`),d(Re,`${ge??""} `),k(Oe,1,`px-1.5 py-1 hidden sm:flex ${c()?"w-28":"basis-2/5"} justify-end cursor-pointer select-none`),d(ie,`${_e??""} `)},[()=>(t(),l(()=>t().t("Title"))),()=>(t(),l(()=>t().t("Updated at")))]),ke("click",Me,()=>{var ge;return(ge=w())==null?void 0:ge("title")}),ke("click",Oe,()=>{var ge;return(ge=w())==null?void 0:ge("updated_at")}),i(de,be)},oe=de=>{var be=OP(),Me=Qe(be),qe=a(Me,!0);r(Me);var Re=o(Me,2),ue=a(Re,!0);r(Re),g((xe,K)=>{k(Me,1,`px-1.5 py-1 ${c()?"flex-1":"basis-3/5"}`),d(qe,xe),k(Re,1,`px-1.5 py-1 hidden sm:flex ${c()?"w-28":"basis-2/5"} justify-end`),d(ue,K)},[()=>(t(),l(()=>t().t("Title"))),()=>(t(),l(()=>t().t("Updated at")))]),i(de,be)};G(Ce,de=>{w()?de(we):de(oe,-1)})}r(De),i(ce,De)};G(Se,ce=>{it(X()),l(()=>X()&&X().length>0)&&ce(Y)})}var ee=o(Se,2),ae=a(ee);{var Pe=ce=>{var De=RP(),Le=a(De);ra(Le,{}),r(De),i(ce,De)},se=ce=>{var De=DP(),Le=a(De,!0);r(De),g(Ne=>d(Le,Ne),[()=>(t(),it(A()),l(()=>t().t(A())))]),i(ce,De)},m=ce=>{var De=HP(),Le=Qe(De);lr(Le,3,X,we=>we.id,(we,oe,de)=>{var be=GP(),Me=Qe(be);{var qe=te=>{var ge=UP(),_e=a(ge,!0);r(ge),g(Ae=>{k(ge,1,`w-full text-xs text-gray-500 dark:text-gray-500 font-normal ${e(de)===0?"":"pt-5"} pb-2 px-2`),d(_e,Ae)},[()=>(t(),e(oe),l(()=>t().t(e(oe).time_range)))]),i(te,ge)};G(Me,te=>{e(oe),it(e(de)),it(X()),l(()=>{var ge;return e(oe).time_range&&(e(de)===0||e(oe).time_range!==((ge=X()[e(de)-1])==null?void 0:ge.time_range))})&&te(qe)})}var Re=o(Me,2),ue=a(Re);{var xe=te=>{var ge=BP(),_e=a(ge),Ae=o(_e,2),U=a(Ae,!0);r(Ae),r(ge),g(()=>{Be(_e,"src",`${ia??""}/users/${e(oe),l(()=>e(oe).user_id)??""}/profile/image`),Be(_e,"alt",(e(oe),l(()=>e(oe).user_name||"User"))),d(U,(e(oe),l(()=>e(oe).user_name||"Unknown")))}),i(te,ge)};G(ue,te=>{it(c()),e(oe),l(()=>c()&&e(oe).user_id)&&te(xe)})}var K=o(ue,2),Oe=a(K),O=a(Oe,!0);r(Oe),r(K);var ie=o(K,2),M=a(ie),ve=a(M,!0);r(M),r(ie),r(Re),g(te=>{k(K,1,me(c()?"flex-1":"basis-3/5")),Be(K,"href",(it(x()),e(oe),l(()=>x()?`/s/${e(oe).id}`:`/c/${e(oe).id}`))),d(O,(e(oe),l(()=>e(oe).title))),k(ie,1,`${c()?"w-28":"basis-2/5"} flex items-center justify-end`),d(ve,te)},[()=>(it(qa),e(oe),l(()=>qa(e(oe).updated_at*1e3).calendar(null,{sameDay:"[Today] h:mm A",lastDay:"[Yesterday] h:mm A",lastWeek:"MMM D",sameElse:"MMM D, YYYY"})))]),ke("click",K,()=>{var te;return(te=V())==null?void 0:te(e(oe).id)}),i(we,be)});var Ne=o(Le,2);{var Ce=we=>{Ks(we,{$$events:{visible:()=>{R()||E()()}},children:(oe,de)=>{var be=jP(),Me=a(be);ra(Me,{className:"size-4"});var qe=o(Me,2),Re=a(qe,!0);r(qe),r(be),g(ue=>d(Re,ue),[()=>(t(),l(()=>t().t("Loading...")))]),i(oe,be)},$$slots:{default:!0}})};G(Ne,we=>{!I()&&E()&&we(Ce)})}i(ce,De)};G(ae,ce=>
72{it(R()),it(X()),l(()=>R()&&(!X()||X().length===0))?ce(Pe):(it(X()),l(()=>!X()||X().length===0)?ce(se,1):ce(m,-1))})}r(ee),r(Te),i(He,Te),cr(),n()}var zP=u('<div class="text-sm font-medium self-center line-clamp-1"> </div>'),KP=u("<button> </button>"),YP=u('<div class="text-xs text-gray-500 font-normal uppercase tracking-wide cursor-help"> </div>'),VP=u('<button type="button"> </button>'),qP=u('<span class="px-2 py-0.5 rounded-full bg-gray-100 dark:bg-gray-850 text-xs"> <span class="text-gray-500 font-normal"> </span></span>'),XP=u('<div class="flex flex-wrap gap-1 -mx-1"></div>'),JP=u('<span class="text-gray-500 text-sm">-</span>'),ZP=u('<div class="mb-4 mt-3"><div class="flex items-center justify-between mb-2"><!> <div class="inline-flex rounded-full bg-gray-100/80 p-0.5 dark:bg-gray-800/80 backdrop-blur-sm"></div></div> <!></div> <div class="mb-4"><div class="text-xs text-gray-500 mb-2 font-normal uppercase tracking-wide"> </div> <!></div>',1),QP=u('<div class="mt-3"><!></div>'),eC=u('<div class="flex justify-between dark:text-gray-300 px-4 pt-3 pb-1"><!>
72 <button class="self-center rounded-lg p-1 text-gray-500 transition hover:bg-gray-50 hover:text-gray-700 dark:text-gray-400 dark:hover:bg-gray-800 dark:hover:text-gray-200" aria-label="Close"><!></button></div> <div class="px-5 border-b border-gray-100 dark:border-gray-850"><div class="flex gap-4"><button> </button> <!></div></div> <div class="px-5 pb-4 dark:text-gray-200"><!> <div class="flex justify-end pt-4"><button class="px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full" type="button"> </button></div></div>',1);function tC(He,_){vr(_,!1);const t=()=>ct(A,"$i18n",n),f=()=>ct(_a,"$config",n),[n,Ie]=hr();let X=Xe(_,"show",12,!1),R=Xe(_,"model",8,null),I=Xe(_,"startDate",8,null),c=Xe(_,"endDate",8,null),x=Xe(_,"onClose",8,()=>{});const A=mr("i18n");let E=h("overview");const V=[{key:"30d",label:"30D",days:30},{key:"1y",label:"1Y",days:365},{key:"all",label:"All",days:0}];let B=h("30d"),j=h([]),w=h([]),Te=h(!1),Se=h([]),Y=h(!1),ee=h(!1),ae=h("updated_at"),Pe=h("desc");const se=50,m=()=>{X(!1),s(E,"overview"),s(Se,[]),s(ee,!1),s(ae,"updated_at"),s(Pe,"desc"),s(j,[]),s(w,[]),x()()}
72,ce=async oe=>{var de;if((de=R())!=null&&de.id){s(Te,!0);try{const be=await yP(localStorage.token,R().id,oe);s(j,(be==null?void 0:be.history)??[]),s(w,(be==null?void 0:be.tags)??[])}catch(be){s(j,[]),s(w,[])}s(Te,!1)}},De=oe=>{s(B,oe);const de=V.find(be=>be.key===oe);de&&ce(de.days)},Le=async()=>{var oe;if((oe=R())!=null&&oe.id){s(Y,!0),s(Se,[]),s(ee,!1);try{const de=await I_(localStorage.token,R().id,I(),c(),0,se,e(ae),e(Pe)),be=(de==null?void 0:de.chats)??[];s(Se,be.map(Me=>({id:Me.chat_id,title:Me.first_message||"No preview",updated_at:Me.updated_at,user_id:Me.user_id,user_name:Me.user_name}))),s(ee,e(Se).length>=((de==null?void 0:de.total)??be.length))}catch(de){s(Se,[]),s(ee,!0)}s(Y,!1)}},Ne=async()=>{var oe;if(!(!((oe=R())!=null&&oe.id)||e(Y)||e(ee))){s(Y,!0);try{const de=e(Se).length,be=await I_(localStorage.token,R().id,I(),c(),de,se,e(ae),e(Pe)),qe=((be==null?void 0:be.chats)??[]).map(xe=>({id:xe.chat_id,title:xe.first_message||"No preview",updated_at:xe.updated_at,user_id:xe.user_id,user_name:xe.user_name})),Re=new Set(e(Se).map(xe=>xe.id)),ue=qe.filter(xe=>!Re.has(xe.id));s(Se,[...e(Se),...ue]),s(ee,e(Se).length>=((be==null?void 0:be.total)??e(Se).length))}catch(de){}s(Y,!1)}},Ce=oe=>{e(ae)===oe?s(Pe,e(Pe)==="asc"?"desc":"asc"):(s(ae,oe),s(Pe,oe==="updated_at"?"desc":"asc")),Le()},we=oe=>{s(E,oe),oe==="chats"&&e(Se).length===0&&Le()};Kt(()=>(it(X()),it(R())),()=>{var oe;X()&&((oe=R())!=null&&oe.id)&&(s(E,"overview"),s(Se,[]),s(ee,!1),s(ae,"updated_at"),s(Pe,"desc"),s(B,"30d"),ce(30))}),la(),gr(),Wa(He,{size:"md",get show(){return X()},set show(oe){X(oe)},children:(oe,de)=>{var be=Wr(),Me=Qe(be);{var qe=Re=>{var ue=eC(),xe=Qe(ue),K=a(xe);{let pe=v(()=>(it(R()),l(()=>`${R().name} (${R().id})`)));Lt(K,{get content(){return e(pe)},placement:"top-start",children:(ye,he)=>{var q=zP(),P=a(q,!0);r(q),g(()=>d(P,(it(R()),l(()=>R().name)))),i(ye,q)},$$slots:{default:!0}})}var Oe=o(K,2),O=a(Oe);wa(O,{className:"size-4"}),r(Oe),r(xe);var ie=o(xe,2),M=a(ie),ve=a(M),te=a(ve,!0);r(ve);var ge=o(ve,2);{var _e=pe=>{var ye=KP(),he=a(ye,!0);r(ye),g(q=>{k(ye,1,`py-2 text-sm font-normal border-b-2 transition-colors ${e(E)==="chats"?"border-black dark:border-white text-gray-900 dark:text-white":"border-transparent text-gray-500 hover:text-gray-700 dark:hover:text-gray-300"}`),d(he,q)},[()=>(t(),l(()=>t().t("Chats")))]),ke("click",ye,()=>we("chats")),i(pe,ye)};G(ge,pe=>{f(),l(()=>{var ye,he;return(he=(ye=f())==null?void 0:ye.features)==null?void 0:he.enable_admin_chat_access})&&pe(_e)})}r(M),r(ie);var Ae=o(ie,2),U=a(Ae);{var T=pe=>{var ye=ZP(),he=Qe(ye),q=a(he),P=a(q);{let Je=v(()=>(t(),l(()=>t().t("Thumbs up/down ratings from users on model responses"))));Lt(P,{get content(){return e(Je)},children:(je,ne)=>{var J=YP(),W=a(J,!0);r(J),g(Z=>d(W,Z),[()=>(t(),l(()=>t().t("Feedback Activity")))]),i(je,J)},$$slots:{default:!0}})}var Q=o(P,2);lr(Q,5,()=>V,Ar,(Je,je)=>{var ne=VP(),J=a(ne,!0);r(ne),g(()=>{k(ne,1,`rounded-full transition-all duration-200 px-2.5 py-0.5 text-xs font-normal ${e(B),e(je),l(()=>e(B)===e(je).key?"bg-white text-gray-900 shadow-sm dark:bg-gray-700 dark:text-white":"text-gray-500 hover:text-gray-700 dark:text-gray-400 dark:hover:text-gray-200")??""}`),d(J,(e(je),l(()=>e(je).label)))}),ke("click",ne,()=>De(e(je).key)),i(Je,ne)}),r(Q),r(q);var re=o(q,2);{let Je=v(()=>e(B)==="1y"||e(B)==="all");Cb(re,{get history(){return e(j)},get loading(){return e(Te)},get aggregateWeekly(){return e(Je)}})}r(he);var le=o(he,2),$e=a(le),ze=a($e,!0);r($e);var Fe=o($e,2);{var at=Je=>{var je=XP();lr(je,5,()=>e(w),Ar,(ne,J)=>{var W=qP(),Z=a(W),Ee=o(Z),Ge=a(Ee,!0);r(Ee),r(W),g(()=>{d(Z,`${e(J),l(()=>e(J).tag)??""} `),d(Ge,(e(J),l(()=>e(J).count)))}),i(ne,W)}),r(je),i(Je,je)},tt=Je=>{var je=JP();i(Je,je)};G(Fe,Je=>{e(w),l(()=>e(w).length)?Je(at):Je(tt,-1)})}r(le),g(Je=>d(ze,Je),[()=>(t(),l(()=>t().t("Tags")))]),i(pe,ye)},C=pe=>{var ye=QP(),he=a(ye);WP(he,{get chatList(){return e(Se)},get loading(){return e(Y)},get allLoaded(){return e(ee)},showUserInfo:!0,shareUrl:!0,get orderBy(){return e(ae)},get direction(){return e(Pe)},onSort:Ce,onLoadMore:Ne,onChatClick:()=>X(!1)}),r(ye),i(pe,ye)};G(U,pe=>{e(E)==="overview"?pe(T):e(E)==="chats"&&pe(C,1)})}var D=o(U,2),F=a(D),H=a(F,!0);r(F),r(D),r(Ae),g((pe,ye)=>{k(ve,1,`py-2 text-sm font-normal border-b-2 transition-colors ${e(E)==="overview"?"border-black dark:border-white text-gray-900 dark:text-white":"border-transparent text-gray-500 hover:text-gray-700 dark:hover:text-gray-300"}`),d(te,pe),d(H,ye)},[()=>(t(),l(()=>t().t("Overview"))),()=>(t(),l(()=>t().t("Close")))]),ke("click",Oe,m),ke("click",ve,()=>we("overview")),ke("click",F,m),i(Re,ue)};G(Me,Re=>{R()&&Re(qe)})}i(oe,be)},$$slots:{default:!0},$$legacy:!0}),cr(),Ie()}
72var S_=u("<option> </option>"),rC=u('<select class="w-fit pr-8 rounded-sm px-2 text-xs bg-transparent outline-none text-right"><option> </option><!></select>'),aC=u('<input type="date" class="w-fit rounded-sm px-2 text-xs bg-transparent outline-none dark:scheme-dark"/> <span class="text-xs text-gray-400">â</span> <input type="date" class="w-fit rounded-sm px-2 text-xs bg-transparent outline-none dark:scheme-dark"/>',1),lC=u('<span class="cursor-help"><span class="font-normal text-gray-900 dark:text-gray-300"> </span> </span>'),oC=u('<div class="mb-4"><div class="text-xs font-normal text-gray-600 dark:text-gray-400 mb-2 px-0.5"> </div> <!></div>'),sC=u('<div class="flex gap-3 text-xs text-gray-500 dark:text-gray-400 px-0.5 pb-2"><span><span class="font-normal text-gray-900 dark:text-gray-300"> </span> </span> <!> <span><span class="font-normal text-gray-900 dark:text-gray-300"> </span> </span> <span><span class="font-normal text-gray-900 dark:text-gray-300"> </span> </span></div> <!>',1),nC=u('<div class="my-10 flex justify-center"><!></div>'),Ml=u('<span class="font-normal"><!></span>'),Rl=u('<span class="invisible"><!></span>'),iC=u('<tr class="dark:border-gray-850 text-xs cursor-pointer hover:bg-gray-50 dark:hover:bg-gray-800 transition-colors"><td class="px-3 py-1 text-gray-400"> </td><td class="px-3 py-1 font-normal text-gray-900 dark:text-white"><div class="flex items-center gap-2"><img class="size-5 rounded-full object-cover shrink-0"/> <span class="truncate max-w-[9.375rem]"> </span></div></td><td class="px-3 py-1 text-right"> </td><td class="px-3 py-1 text-right"> </td><td class="px-3 py-1 text-right"> </td><td class="px-3 py-1 text-right"> </td><td class="px-3 py-1 text-right text-gray-400"> </td></tr>'),dC=u('<tr><td colspan="7" class="px-3 py-2 text-center text-gray-400"> </td></tr>'),vC=u('<tr class="dark:border-gray-850 text-xs"><td class="px-3 py-1 text-gray-400"> </td><td class="px-3 py-1 font-normal text-gray-900 dark:text-white"><div class="flex items-center gap-2"><img class="size-5 rounded-full object-cover shrink-0"/> <span class="truncate max-w-[9.375rem]"> </span></div></td><td class="px-3 py-1 text-right"> </td><td class="px-3 py-1 text-right"> </td></tr>'),cC=u('<tr><td colspan="4" class="px-3 py-2 text-center text-gray-400"> </td></tr>'),uC=u('<div class="grid md:grid-cols-2 gap-4"><div><div class="text-xs font-normal text-gray-700 dark:text-gray-300 mb-1 px-0.5"> </div> <div class="scrollbar-hidden relative whitespace-nowrap overflow-x-auto max-w-full"><table class="w-full text-sm text-left text-gray-500 dark:text-gray-400 table-auto"><thead class="text-xs text-gray-800 uppercase bg-transparent dark:text-gray-200"><tr class="border-b-[1.5px] border-gray-50 dark:border-gray-850/30"><th scope="col" class="px-2.5 py-2 w-8">#</th><th scope="col" class="px-2.5 py-2 cursor-pointer select-none"><div class="flex gap-1.5 items-center"> <!></div></th><th scope="col" class="px-2.5 py-2 cursor-pointer select-none text-right"><div class="flex gap-1.5 items-center justify-end"> <!></div></th><th scope="col" class="px-2.5 py-2 cursor-pointer select-none text-right"><div class="flex gap-1.5 items-center justify-end"> <!></div></th><th scope="col" class="px-2.5 py-2 cursor-pointer select-none text-right"><div class="flex gap-1.5 items-center justify-end"> <!></div></th><th scope="col" class="px-2.5 py-2 cursor-pointer select-none text-right"><div class="flex gap-1.5 items-center justify-end"> <!></div></th><th scope="col" class="px-2.5 py-2 cursor-pointer select-none text-right w-16"><div class="flex gap-1.5 items-center justify-end">% <!></div></th></tr></thead><tbody><!><!></tbody></table></div></div> <div><div class="text-xs font-normal text-gray-700 dark:text-gray-300 mb-1 px-0.5"> </div> <div class="scrollbar-hidden relative whitespace-nowrap overflow-x-auto max-w-full"><table class="w-full text-sm text-left text-gray-500 dark:text-gray-400 table-auto"><thead class="text-xs text-gray-800 uppercase bg-transparent dark:text-gray-200"><tr class="border-b-[1.5px] border-gray-50 dark:border-gray-850/30"><th scope="col" class="px-2.5 py-2 w-8">#</th><th scope="col" class="px-2.5 py-2 cursor-pointer select-none"><div class="flex gap-1.5 items-center"> <!></div></th><th scope="col" class="px-2.5 py-2 cursor-pointer select-none text-right"><div class="flex gap-1.5 items-center justify-end"> <!></div></th><th scope="col" class="px-2.5 py-2 cursor-pointer select-none text-right"><div class="flex gap-1.5 items-center justify-end"> <!></div></th></tr></thead><tbody><!><!></tbody></table></div></div></div> <div class="text-gray-500 text-xs mt-1.5 text-right"> </div>
72',1),gC=u('<div class="flex items-center justify-between mb-2 gap-2"><h2 class="text-sm font-medium text-gray-900 dark:text-white shrink-0"> </h2> <div class="flex items-center gap-2 flex-wrap justify-end min-w-0"><!> <!> <select class="w-fit pr-8 rounded-sm px-2 text-xs bg-transparent outline-none text-right"></select></div></div> <!> <!> <!>',1);function _C(He,_){vr(_,!1);const t=()=>ct(x,"$i18n",n),f=()=>ct(ba,"$models",n),[n,Ie]=hr(),X=h(),R=h(),I=h(),c=h(),x=mr("i18n");let A=h(typeof localStorage<"u"&&localStorage.getItem("analyticsPeriod")||"7d"),E=h(typeof localStorage<"u"&&localStorage.getItem("analyticsCustomStart")||""),V=h(typeof localStorage<"u"&&localStorage.getItem("analyticsCustomEnd")||""),B=h([]),j=h(null);const w=U=>{const T=Math.floor(Date.now()/1e3),C=86400;switch(U){case"24h":return{start:T-C,end:T};case"7d":return{start:T-7*C,end:T};case"30d":return{start:T-30*C,end:T};case"90d":return{start:T-90*C,end:T};case"custom":{const D=e(E)?Math.floor(new Date(e(E)).getTime()/1e3):null,F=e(V)?Math.floor(new Date(e(V)).getTime()/1e3)+C-1:null;return{start:D,end:F}}default:return{start:null,end:null}}};let Te=h({total_messages:0,total_chats:0,total_models:0,total_users:0}),Se=h([]),Y=h([]),ee=h([]),ae=h({}),Pe=h({input:0,output:0,total:0}),se=h(!0),m=h(null),ce=h(!1),De=h("count"),Le=h("desc"),Ne=h("count"),Ce=h("desc");const we=U=>{e(De)===U?s(Le,e(Le)==="asc"?"desc":"asc"):(s(De,U),s(Le,U==="name"?"asc":"desc"))},oe=U=>{e(Ne)===U?s(Ce,e(Ce)==="asc"?"desc":"asc"):(s(Ne,U),s(Ce,U==="user_id"?"asc":"desc"))},de=async()=>{s(se,!0);try{const{start:U,end:T}=w(e(A)),C=e(A)==="24h"?"hourly":"daily",[D,F,H,pe,ye]=await Promise.all([hP(localStorage.token,U,T,e(j)),pP(localStorage.token,U,T,e(j)),mP(localStorage.token,U,T,50,e(j)),xP(localStorage.token,U,T,C,e(j)),bP(localStorage.token,U,T,e(j))]);s(Te,D??e(Te));const he=new Map(f().map(q=>[q.id,q.name||q.id]));if(s(Se,((F==null?void 0:F.models)??[]).map(q=>({...q,name:he.get(q.model_id)||q.model_id}))),s(Y,(H==null?void 0:H.users)??[]),s(ee,(pe==null?void 0:pe.data)??[]),ye){s(ae,{});for(const q of ye.models)We(ae,e(ae)[q.model_id]={input_tokens:q.input_tokens,output_tokens:q.output_tokens,total_tokens:q.total_tokens});s(Pe,{input:ye.total_input_tokens,output:ye.total_output_tokens,total:ye.total_tokens})}}catch(U){}s(se,!1)};ea(async()=>{try{const U=await qu(localStorage.token);s(B,U??[])}catch(U){}}),Kt(()=>t(),()=>{s(X,[{value:"24h",label:t().t("Last 24 hours")},{value:"7d",label:t().t("Last 7 days")},{value:"30d",label:t().t("Last 30 days")},{value:"90d",label:t().t("Last 90 days")},{value:"all",label:t().t("All time")},{value:"custom",label:t().t("Custom range")}])}),Kt(()=>(e(A),e(E),e(V),e(j)),()=>{e(A)==="custom"&&!(e(E)&&e(V))?s(se,!1):e(A)&&(e(E),e(V),e(j),de())}),Kt(()=>(e(Se),e(De),e(Le),e(ae)),()=>{s(R,[...e(Se)].sort((U,T)=>{var C,D;if(e(De)==="name")return e(Le)==="asc"?U.name.localeCompare(T.name):T.name.localeCompare(U.name);if(e(De)==="tokens"){const F=((C=e(ae)[U.model_id])==null?void 0:C.total_tokens)??0,H=((D=e(ae)[T.model_id])==null?void 0:D.total_tokens)??0;return e(Le)==="asc"?F-H:H-F}if(e(De)==="users"){const F=U.unique_users??0,H=T.unique_users??0;return e(Le)==="asc"?F-H:H-F}if(e(De)==="chats"){const F=U.unique_chats??0,H=T.unique_chats??0;return e(Le)==="asc"?F-H:H-F}return e(Le)==="asc"?U.count-T.count:T.count-U.count}))}),Kt(()=>(e(Y),e(Ne),e(Ce)),()=>{s(I,[...e(Y)].sort((U,T)=>{if(e(Ne)==="name"){const C=U.name||U.user_id,D=T.name||T.user_id;return e(Ce)==="asc"?C.localeCompare(D):D.localeCompare(C)}if(e(Ne)==="tokens"){const C=U.total_tokens??0,D=T.total_tokens??0;return e(Ce)==="asc"?C-D:D-C}return e(Ce)==="asc"?U.count-T.count:T.count-U.count}))}),Kt(()=>e(Se),()=>{s(c,e(Se).reduce((U,T)=>U+T.count,0))}),Kt(()=>e(A),()=>{typeof localStorage<"u"&&e(A)&&localStorage.setItem("analyticsPeriod",e(A))}),Kt(()=>(e(E),e(V)),()=>{typeof localStorage<"u"&&(localStorage.setItem("analyticsCustomStart",e(E)),localStorage.setItem("analyticsCustomEnd",e(V)))}),la(),gr();var be=gC(),Me=Qe(be),qe=a(Me),Re=a(qe,!0);r(qe);var ue=o(qe,2),xe=a(ue);{var K=U=>{var T=rC(),C=a(T),D=a(C,!0);r(C),C.value=(C.__value=null)??"";var F=o(C);lr(F,1,()=>e(B),Ar,(H,pe)=>{var ye=S_(),he=a(ye,!0);r(ye);var q={};g(()=>{d(he,(e(pe),l(()=>e(pe).name))),q!==(q=(e(pe),l(()=>e(pe).id)))&&(ye.value=(ye.__value=(e(pe),l(()=>e(pe).id)))??"")}),i(H,ye)}),r(T),g(H=>d(D,H),[()=>(t(),l(()=>t().t("All Users")))]),al(T,()=>e(j),H=>s(j,H)),i(U,T)};G(xe,U=>{e(B),l(()=>e(B).length>0)&&U(K)})}var Oe=o(xe,2);{var O=U=>{var T=aC(),C=Qe(T);vt(C);var D=o(C,4);vt(D),g(()=>{Be(C,"max",e(V)||void 0),Be(D,"min",e(E)||void 0)}),dt(C,()=>e(E),F=>s(E,F)),dt(D,()=>e(V),F=>s(V,F)),i(U,T)};G(Oe,U=>{e(A)==="custom"&&U(O)})}var ie=o(Oe,2);lr(ie,5,()=>e(X),Ar,(U,T)=>{var C=S_(),D=a(C,!0);r(C);var F={};g(()=>{d(D,(e(T),l(()=>e(T).label))),F!==(F=(e(T),l(()=>e(T).value)))&&(C.value=(C.__value=(e(T),l(()=>e(T).value)))??"")}),i(U,C)}),r(ie),r(ue),r(Me);var M=o(Me,2);{let U=v(()=>(e(A),l(()=>w(e(A)).start))),T=v(()=>(e(A),l(()=>w(e(A)).end)));tC(M,{get model(){return e(m)},get startDate(){return e(U)},get endDate(){return e(T)},get show(){return e(ce)},set show(C){s(ce,C)},$$legacy:!0})}var ve=o(M,2);{var te=U=>{var T=sC(),C=Qe(T),D=a(C),F=a(D),H=a(F,!0);r(F);var pe=o(F);r(D);var ye=o(D,2);{let tt=v(()=>(t(),l(()=>t().t("Token counts are estimates and may not reflect actual API usage"))));Lt(ye,{get content(){return e(tt)},children:(Je,je)=>{var ne=lC(),J=a(ne),W=a(J,!0);r(J);var Z=o(J);r(ne),g((Ee,Ge)=>{d(W,Ee),d(Z,` ${Ge??""}`)},[()=>(it(tl),e(Pe),l(()=>tl(e(Pe).total))),()=>(t(),l(()=>t().t("tokens")))]),i(Je,ne)},$$slots:{default:!0}})}var he=o(ye,2),q=a(he),P=a(q,!0);r(q);var Q=o(q);r(he);var re=o(he,2),le=a(re),$e=a(le,!0);r(le);var ze=o(le);r(re),r(C);var Fe=o(C,2);{var at=tt=>{const Je=v(()=>(e(ee),l(()=>[...new Set(e(ee).flatMap(p=>Object.keys(p.models||{})))]))),je=v(()=>(it(e(Je)),l(()=>e(Je).slice(0,8)))),ne=v(()=>["#3b82f6","#10b981","#f59e0b","#ef4444","#8b5cf6","#ec4899","#06b6d4","#84cc16"]),J=v(()=>({"24h":"hour","7d":"week","30d":"month","90d":"year",all:"all"}));var W=oC(),Z=a(W),Ee=a(Z,!0);r(Z);var Ge=o(Z,2);{let p=v(()=>(it(e(J)),e(A),l(()=>e(J)[e(A)]||"week")));PP(Ge,{get data(){return e(ee)},get models(){return e(je)},get colors(){return e(ne)},height:200,get period(){return e(p)}})}r(W),g(p=>d(Ee,p),[()=>(e(A),t(),l(()=>e(A)==="24h"?t().t("Hourly Messages"):t().t("Daily Messages")))]),i(tt,W)};G(Fe,tt=>{e(ee),l(()=>e(ee).length>1)&&tt(at)})}g((tt,Je,je,ne,J)=>{d(H,tt),d(pe,` ${Je??""}`),d(P,je),d(Q,` ${ne??""}`),d($e,(e(Te),l(()=>e(Te).total_users))),d(ze,` ${J??""}`)},[()=>(e(Te),l(()=>
72e(Te).total_messages.toLocaleString())),()=>(t(),l(()=>t().t("messages"))),()=>(e(Te),l(()=>e(Te).total_chats.toLocaleString())),()=>(t(),l(()=>t().t("chats"))),()=>(t(),l(()=>t().t("users")))]),i(U,T)};G(ve,U=>{e(se)||U(te)})}var ge=o(ve,2);{var _e=U=>{var T=nC(),C=a(T);ra(C,{className:"size-5"}),r(T),i(U,T)},Ae=U=>{var T=uC(),C=Qe(T),D=a(C),F=a(D),H=a(F,!0);r(F);var pe=o(F,2),ye=a(pe),he=a(ye),q=a(he),P=o(a(q)),Q=a(P),re=a(Q),le=o(re);{var $e=wt=>{var ht=Ml(),zt=a(ht);{var ir=Ct=>{ha(Ct,{className:"size-2"})},dr=Ct=>{Ba(Ct,{className:"size-2"})};G(zt,Ct=>{e(Le)==="asc"?Ct(ir):Ct(dr,-1)})}r(ht),i(wt,ht)},ze=wt=>{var ht=Rl(),zt=a(ht);ha(zt,{className:"size-2"}),r(ht),i(wt,ht)};G(le,wt=>{e(De)==="name"?wt($e):wt(ze,-1)})}r(Q),r(P);var Fe=o(P),at=a(Fe),tt=a(at),Je=o(tt);{var je=wt=>{var ht=Ml(),zt=a(ht);{var ir=Ct=>{ha(Ct,{className:"size-2"})},dr=Ct=>{Ba(Ct,{className:"size-2"})};G(zt,Ct=>{e(Le)==="asc"?Ct(ir):Ct(dr,-1)})}r(ht),i(wt,ht)},ne=wt=>{var ht=Rl(),zt=a(ht);ha(zt,{className:"size-2"}),r(ht),i(wt,ht)};G(Je,wt=>{e(De)==="count"?wt(je):wt(ne,-1)})}r(at),r(Fe);var J=o(Fe),W=a(J),Z=a(W),Ee=o(Z);{var Ge=wt=>{var ht=Ml(),zt=a(ht);{var ir=Ct=>{ha(Ct,{className:"size-2"})},dr=Ct=>{Ba(Ct,{className:"size-2"})};G(zt,Ct=>{e(Le)==="asc"?Ct(ir):Ct(dr,-1)})}r(ht),i(wt,ht)},p=wt=>{var ht=Rl(),zt=a(ht);ha(zt,{className:"size-2"}),r(ht),i(wt,ht)};G(Ee,wt=>{e(De)==="users"?wt(Ge):wt(p,-1)})}r(W),r(J);var $=o(J),S=a($),L=a(S),fe=o(L);{var y=wt=>{var ht=Ml(),zt=a(ht);{var ir=Ct=>{ha(Ct,{className:"size-2"})},dr=Ct=>{Ba(Ct,{className:"size-2"})};G(zt,Ct=>{e(Le)==="asc"?Ct(ir):Ct(dr,-1)})}r(ht),i(wt,ht)},b=wt=>{var ht=Rl(),zt=a(ht);ha(zt,{className:"size-2"}),r(ht),i(wt,ht)};G(fe,wt=>{e(De)==="chats"?wt(y):wt(b,-1)})}r(S),r($);var N=o($),z=a(N),Ue=a(z),Ye=o(Ue);{var Ve=wt=>{var ht=Ml(),zt=a(ht);{var ir=Ct=>{ha(Ct,{className:"size-2"})},dr=Ct=>{Ba(Ct,{className:"size-2"})};G(zt,Ct=>{e(Le)==="asc"?Ct(ir):Ct(dr,-1)})}r(ht),i(wt,ht)},lt=wt=>{var ht=Rl(),zt=a(ht);ha(zt,{className:"size-2"}),r(ht),i(wt,ht)};G(Ye,wt=>{e(De)==="tokens"?wt(Ve):wt(lt,-1)})}r(z),r(N);var st=o(N),Ke=a(st),Ze=o(a(Ke));{var ot=wt=>{var ht=Ml(),zt=a(ht);{var ir=Ct=>{ha(Ct,{className:"size-2"})},dr=Ct=>{Ba(Ct,{className:"size-2"})};G(zt,Ct=>{e(Le)==="asc"?Ct(ir):Ct(dr,-1)})}r(ht),i(wt,ht)},ut=wt=>{var ht=Rl(),zt=a(ht);ha(zt,{className:"size-2"}),r(ht),i(wt,ht)};G(Ze,wt=>{e(De)==="percentage"?wt(ot):wt(ut,-1)})}r(Ke),r(st),r(q),r(he);var _t=o(he),nt=a(_t);lr(nt,3,()=>e(R),wt=>wt.model_id,(wt,ht,zt)=>{var ir=iC(),dr=a(ir),Ct=a(dr,!0);r(dr);var Er=o(dr),Bt=a(Er),Ft=a(Bt),Zt=o(Ft,2),wr=a(Zt,!0);r(Zt),r(Bt),r(Er);var kr=o(Er),Hr=a(kr,!0);r(kr);var yr=o(kr),Sr=a(yr,!0);r(yr);var Br=o(yr),pr=a(Br,!0);r(Br);var sr=o(Br),Kr=a(sr,!0);r(sr);var Yt=o(sr),Or=a(Yt);r(Yt),r(ir),g((Lr,Pt,Gt,nr,ft)=>{d(Ct,e(zt)+1),Be(Ft,"src",`${ia??""}/models/model/profile/image?id=${e(ht),l(()=>e(ht).model_id)??""}`),Be(Ft,"alt",(e(ht),l(()=>e(ht).name))),d(wr,(e(ht),l(()=>e(ht).name))),d(Hr,Lr),d(Sr,Pt),d(pr,Gt),d(Kr,nr),d(Or,`${ft??""}%`)},[()=>(e(ht),l(()=>e(ht).count.toLocaleString())),()=>(e(ht),l(()=>(e(ht).unique_users??0).toLocaleString())),()=>(e(ht),l(()=>(e(ht).unique_chats??0).toLocaleString())),()=>(it(tl),e(ae),e(ht),l(()=>{var Lr;return tl(((Lr=e(ae)[e(ht).model_id])==null?void 0:Lr.total_tokens)??0)})),()=>(e(c),e(ht),l(()=>e(c)>0?(e(ht).count/e(c)*100).toFixed(1):0))]),ke("error",Ft,Lr=>{Lr.target.src="/favicon.png"}),ke("click",ir,()=>{s(m,{id:e(ht).model_id,name:e(ht).name}),s(ce,!0)}),i(wt,ir)});var et=o(nt);{var gt=wt=>{var ht=dC(),zt=a(ht),ir=a(zt,!0);r(zt),r(ht),g(dr=>d(ir,dr),[()=>(t(),l(()=>t().t("No data")))]),i(wt,ht)};G(et,wt=>{e(R),l(()=>e(R).length===0)&&wt(gt)})}r(_t),r(ye),r(pe),r(D);var It=o(D,2),Mt=a(It),jt=a(Mt,!0);r(Mt);var Tt=o(Mt,2),yt=a(Tt),$t=a(yt),rr=a($t),Rt=o(a(rr)),Wt=a(Rt),or=a(Wt),$r=o(or);{var Et=wt=>{var ht=Ml(),zt=a(ht);{var ir=Ct=>{ha(Ct,{className:"size-2"})},dr=Ct=>{Ba(Ct,{className:"size-2"})};G(zt,Ct=>{e(Ce)==="asc"?Ct(ir):Ct(dr,-1)})}r(ht),i(wt,ht)},St=wt=>{var ht=Rl(),zt=a(ht);ha(zt,{className:"size-2"}),r(ht),i(wt,ht)};G($r,wt=>{e(Ne)==="name"?wt(Et):wt(St,-1)})}r(Wt),r(Rt);var Dt=o(Rt),ar=a(Dt),Tr=a(ar),tr=o(Tr);{var ur=wt=>
72{var ht=Ml(),zt=a(ht);{var ir=Ct=>{ha(Ct,{className:"size-2"})},dr=Ct=>{Ba(Ct,{className:"size-2"})};G(zt,Ct=>{e(Ce)==="asc"?Ct(ir):Ct(dr,-1)})}r(ht),i(wt,ht)},_r=wt=>{var ht=Rl(),zt=a(ht);ha(zt,{className:"size-2"}),r(ht),i(wt,ht)};G(tr,wt=>{e(Ne)==="count"?wt(ur):wt(_r,-1)})}r(ar),r(Dt);var br=o(Dt),kt=a(br),jr=a(kt),qt=o(jr);{var At=wt=>{var ht=Ml(),zt=a(ht);{var ir=Ct=>{ha(Ct,{className:"size-2"})},dr=Ct=>{Ba(Ct,{className:"size-2"})};G(zt,Ct=>{e(Ce)==="asc"?Ct(ir):Ct(dr,-1)})}r(ht),i(wt,ht)},Ot=wt=>{var ht=Rl(),zt=a(ht);ha(zt,{className:"size-2"}),r(ht),i(wt,ht)};G(qt,wt=>{e(Ne)==="tokens"?wt(At):wt(Ot,-1)})}r(kt),r(br),r(rr),r($t);var Ht=o($t),Xt=a(Ht);lr(Xt,3,()=>e(I),wt=>wt.user_id,(wt,ht,zt)=>{var ir=vC(),dr=a(ir),Ct=a(dr,!0);r(dr);var Er=o(dr),Bt=a(Er),Ft=a(Bt),Zt=o(Ft,2),wr=a(Zt,!0);r(Zt),r(Bt),r(Er);var kr=o(Er),Hr=a(kr,!0);r(kr);var yr=o(kr),Sr=a(yr,!0);r(yr),r(ir),g((Br,pr,sr)=>{d(Ct,e(zt)+1),Be(Ft,"src",`${ia??""}/users/${e(ht),l(()=>e(ht).user_id)??""}/profile/image`),Be(Ft,"alt",(e(ht),l(()=>e(ht).name||"User"))),d(wr,Br),d(Hr,pr),d(Sr,sr)},[()=>(e(ht),l(()=>e(ht).name||e(ht).email||e(ht).user_id.substring(0,8))),()=>(e(ht),l(()=>e(ht).count.toLocaleString())),()=>(it(tl),e(ht),l(()=>tl(e(ht).total_tokens??0)))]),ke("error",Ft,Br=>{Br.target.src="/user.png"}),i(wt,ir)});var er=o(Xt);{var xr=wt=>{var ht=cC(),zt=a(ht),ir=a(zt,!0);r(zt),r(ht),g(dr=>d(ir,dr),[()=>(t(),l(()=>t().t("No data")))]),i(wt,ht)};G(er,wt=>{e(I),l(()=>e(I).length===0)&&wt(xr)})}r(Ht),r(yt),r(Tt),r(It),r(C);var Qt=o(C,2),fr=a(Qt);r(Qt),g((wt,ht,zt,ir,dr,Ct,Er,Bt,Ft,Zt,wr)=>{d(H,wt),d(re,`${ht??""} `),d(tt,`${zt??""} `),d(Z,`${ir??""} `),d(L,`${dr??""} `),d(Ue,`${Ct??""} `),d(jt,Er),d(or,`${Bt??""} `),d(Tr,`${Ft??""} `),d(jr,`${Zt??""} `),d(fr,`â ${wr??""}`)},[()=>(t(),l(()=>t().t("Model Usage"))),()=>(t(),l(()=>t().t("Model"))),()=>(t(),l(()=>t().t("Messages"))),()=>(t(),l(()=>t().t("Users"))),()=>(t(),l(()=>t().t("Chats"))),()=>(t(),l(()=>t().t("Tokens"))),()=>(t(),l(()=>t().t("User Activity"))),()=>(t(),l(()=>t().t("User"))),()=>(t(),l(()=>t().t("Messages"))),()=>(t(),l(()=>t().t("Tokens"))),()=>(t(),l(()=>t().t("Message counts are based on assistant responses.")))]),ke("click",P,()=>we("name")),ke("click",Fe,()=>we("count")),ke("click",J,()=>we("users")),ke("click",$,()=>we("chats")),ke("click",N,()=>
72we("tokens")),ke("click",st,()=>we("percentage")),ke("click",Rt,()=>oe("name")),ke("click",Dt,()=>oe("count")),ke("click",br,()=>oe("tokens")),i(U,T)};G(ge,U=>{e(se)?U(_e):U(Ae,-1)})}g(U=>d(Re,U),[()=>(t(),l(()=>t().t("Analytics")))]),al(ie,()=>e(A),U=>s(A,U)),i(He,be),cr(),Ie()}var fC=u('<div class="w-full h-full pb-2"><!></div>');function pC(He,_){vr(_,!1);const t=()=>ct(ka,"$user",f),[f,n]=hr();mr("i18n");let Ie=h(!1);ea(async()=>{var c;((c=t())==null?void 0:c.role)!=="admin"&&await fa("/"),s(Ie,!0)}),gr();var X=Wr(),R=Qe(X);{var I=c=>{var x=fC(),A=a(x);_C(A,{}),r(x),i(c,x)};G(R,c=>{e(Ie)&&c(I)})}i(He,X),cr(),n()}var mC=u("<option>Qdrant</option> <option>Milvus</option> <option>pgvector</option>",1),hC=u('<div class="flex flex-col flex-1"><div class="flex justify-between mb-0.5"><label class="text-xs text-gray-500" for="external-source-api-key"> </label></div> <div class="flex flex-1 items-center"><input id="external-source-api-key" class="w-full text-sm bg-transparent outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700" type="password" autocomplete="off"/></div></div>'),xC=u('<div class="flex gap-2 mt-2"><div class="flex flex-col w-full"><div class="flex justify-between mb-0.5"><label class="text-xs text-gray-500" for="external-source-db-name"> </label></div> <div class="flex flex-1 items-center"><input id="external-source-db-name" class="w-full text-sm bg-transparent outline-hidden"/></div></div></div>'),bC=u('<div class="flex gap-2 mt-2"><div class="flex flex-col flex-1"><div class="flex justify-between mb-0.5"><label class="text-xs text-gray-500" for="external-source-table"> </label></div> <div class="flex flex-1 items-center"><input id="external-source-table" class="w-full text-sm bg-transparent outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700" placeholder="document_chunk" required=""/></div></div> <div class="flex flex-col flex-1"><div class="flex justify-between mb-0.5"><label class="text-xs text-gray-500" for="external-source-collection-field"> </label></div> <div class="flex flex-1 items-center"><input id="external-source-collection-field" class="w-full text-sm bg-transparent outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700" placeholder="collection_name" required=""/></div></div></div>'),yC=Jr('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="w-4 h-4" aria-hidden="true"><path fill-rule="evenodd" d="M15.312 11.424a5.5 5.5 0 01-9.201 2.466l-.312-.311h2.433a.75.75 0 000-1.5H3.989a.75.75 0 00-.75.75v4.242a.75.75 0 001.5 0v-2.43l.31.31a7 7 0 0011.712-3.138.75.75 0 00-1.449-.39zm1.23-3.723a.75.75 0 00.219-.53V2.929a.75.75 0 00-1.5 0V5.36l-.31-.31A7 7 0 003.239 8.188a.75.75 0 101.448.389A5.5 5.5 0 0113.89 6.11l.311.31h-2.432a.75.75 0 000 1.5h4.243a.75.75 0 00.53-.219z" clip-rule="evenodd"></path></svg>
72'),$C=u('<button class="self-center p-1 bg-transparent hover:bg-gray-50/70 dark:hover:bg-gray-850/50 rounded-lg transition" type="button"><!></button>'),wC=u('<div><div class="flex justify-between dark:text-gray-100 px-4 pt-3 pb-1"><h1 class="text-sm font-medium self-center"> </h1> <button class="self-center rounded-lg p-1 text-gray-500 transition hover:bg-gray-50 hover:text-gray-700 dark:text-gray-400 dark:hover:bg-gray-800 dark:hover:text-gray-200" type="button"><!></button></div> <div class="flex flex-col md:flex-row w-full px-4 pb-4 md:space-x-4 dark:text-gray-200"><div class="flex flex-col w-full sm:flex-row sm:justify-center sm:space-x-6"><form class="flex flex-col w-full"><div class="px-1"><div class="flex gap-2"><div class="flex flex-col flex-1"><div class="flex justify-between mb-0.5"><label class="text-xs text-gray-500" for="external-source-name"> </label></div> <div class="flex flex-1 items-center"><input id="external-source-name" class="w-full flex-1 text-sm bg-transparent outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700" required=""/></div></div> <div class="flex flex-col flex-1"><div class="flex justify-between mb-0.5"><label class="text-xs text-gray-500" for="external-source-provider"> </label></div> <div class="flex flex-1 items-center"><!></div></div></div> <div class="flex flex-col w-full mt-2"><label class="text-xs text-gray-500 mb-0.5" for="external-source-description"> </label> <textarea id="external-source-description" class="w-full text-sm bg-transparent outline-hidden resize-none placeholder:text-gray-300 dark:placeholder:text-gray-700" rows="2"></textarea></div> <div class="flex gap-2 mt-2"><div class="flex flex-col flex-1"><div class="flex justify-between mb-0.5"><label class="text-xs text-gray-500" for="external-source-endpoint"> </label></div> <div class="flex flex-1 items-center"><input id="external-source-endpoint" class="w-full flex-1 text-sm bg-transparent outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700" required=""/></div></div></div> <div class="flex gap-2 mt-2"><div class="flex flex-col flex-1"><div class="flex justify-between mb-0.5"><label class="text-xs text-gray-500" for="external-source-timeout"> </label></div> <div class="flex flex-1 items-center"><input id="external-source-timeout" class="w-full text-sm bg-transparent outline-hidden" type="number"/></div></div> <!></div> <!> <hr class="border-gray-100/50 dark:border-gray-700/10 my-2.5 w-full"/> <div class="flex gap-2"><div class="flex flex-col w-full"><div class="flex justify-between mb-0.5"><label class="text-xs text-gray-500" for="external-source-collection"> </label></div> <div class="flex flex-1 items-center"><input id="external-source-collection" class="w-full text-sm bg-transparent outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700" placeholder="research-docs" required=""/></div></div></div> <!> <div class="flex gap-2 mt-2"><div class="flex flex-col flex-1"><div class="flex justify-between mb-0.5"><label class="text-xs text-gray-500" for="external-source-content-field"> </label></div> <div class="flex flex-1 items-center"><input id="external-source-content-field" class="w-full text-sm bg-transparent outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700" required=""/></div></div> <div class="flex flex-col flex-1"><div class="flex justify-between mb-0.5"><label class="text-xs text-gray-500" for="external-source-vector-field"> </label></div> <div class="flex flex-1 items-center"><input id="external-source-vector-field" class="w-full text-sm bg-transparent outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700"/></div></div></div> <div class="flex gap-2 mt-2"><div class="flex flex-col flex-1"><div class="flex justify-between mb-0.5"><label class="text-xs text-gray-500" for="external-source-metadata-field"> </label></div> <div class="flex flex-1 items-center"><input id="external-source-metadata-field" class="w-full text-sm bg-transparent outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700"/></div></div> <div class="flex flex-col flex-1"><div class="flex justify-between mb-0.5"><label class="text-xs text-gray-500" for="external-source-document-id-field"> </label></div> <div class="flex flex-1 items-center"><input id="external-source-document-id-field" class="w-full text-sm bg-transparent outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700" placeholder="id"/></div></div></div> <div class="flex gap-2 mt-2"><div class="flex flex-col w-full"><div class="flex justify-between mb-0.5"><label class="text-xs text-gray-500" for="external-source-test-query"> </label></div> <div class="flex flex-1 items-center"><input id="external-source-test-query" class="w-full flex-1 text-sm bg-transparent outline-hidden placeholder:text-gray-300 dark:placeholder:text-gray-700" required=""/> <!></div> <div class="text-xs text-gray-500 mt-1"> </div></div></div> <hr class="border-gray-100/50 dark:border-gray-700/10 my-2.5 w-full"/> <!> <div class="flex justify-between items-center pt-3 text-sm font-normal"><div></div> <button class="px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full flex items-center gap-2 disabled:opacity-50 disabled:cursor-not-allowed" type="submit"> <!></button></div></div></form></div></div></div>'),kC=u('<button class="flex size-6 items-center justify-center rounded-lg text-gray-400 transition-colors hover:bg-black/5 hover:text-gray-900 dark:text-gray-600 dark:hover:bg-white/5 dark:hover:text-white" type="button"><!></button>'),EC=u('<div class="flex w-full"><div><!> <div class="outline-hidden w-full bg-transparent text-xs min-w-0 line-clamp-1"><span> </span> <span class="text-gray-500"> </span></div></div></div>
72'),AC=u('<button class="self-center p-1 bg-transparent hover:bg-gray-50/70 dark:hover:bg-gray-850/50 rounded-lg transition disabled:opacity-50 disabled:cursor-not-allowed" type="button"><!></button>'),IC=u('<div class="flex w-full gap-2 items-center"><!> <div class="flex gap-1 items-center"><!> <!></div></div>'),SC=u('<div class="py-2"><!></div>'),N_=u('<div class="text-[0.6875rem] text-gray-400 dark:text-gray-600"> </div>'),NC=u('<!> <div class="flex w-full flex-col justify-between text-xs"><div class="mb-2 flex items-center justify-between"><div class="flex items-center gap-2 leading-none text-gray-600 dark:text-gray-400"><div> </div> <!></div> <!></div> <div class="flex flex-col gap-1.5"></div> <!> <!></div>',1);function PC(He,_){vr(_,!1);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr(),Ie=mr("i18n");let X=h(!1),R=h(!1),I=h(!1),c=h(!1),x=[],A=h([]),E=h(null),V=null,B=h([]),j=h(null),w=h({name:"",description:"",provider:"qdrant",endpoint:"",apiKey:"",timeout:30,dbName:"",sourceName:"",contentField:"payload.text",vectorField:"",metadataField:"payload.metadata",documentIdField:"id",tableName:"document_chunk",collectionField:"collection_name",testQuery:""});const Te=(T=e(w).provider)=>T==="milvus"?{contentField:"data.text",vectorField:"vector",metadataField:"metadata",documentIdField:"id",tableName:"document_chunk",collectionField:"collection_name"}:T==="pgvector"?{contentField:"text",vectorField:"vector",metadataField:"vmetadata",documentIdField:"id",tableName:"document_chunk",collectionField:"collection_name"}:{contentField:"payload.text",vectorField:"",metadataField:"payload.metadata",documentIdField:"id",tableName:"document_chunk",collectionField:"collection_name"},Se=()=>{s(w,{name:"",description:"",provider:"qdrant",endpoint:"",apiKey:"",timeout:30,dbName:"",sourceName:"",testQuery:"",...Te("qdrant")}),s(B,[]),s(j,null),s(E,null),V=null},Y=()=>{Se(),s(c,!0)},ee=T=>{var pe,ye,he,q;const C=m(T);if(!C){rt.error(t().t("External connection not found."));return}Se(),s(E,T),V=C;const D=(ye=(pe=T.meta)==null?void 0:pe.external)==null?void 0:ye.source,F=(D==null?void 0:D.config)??{},H=Te(C.provider);s(w,{name:T.name??"",description:T.description??"",provider:C.provider??"qdrant",endpoint:C.endpoint??"",apiKey:"",timeout:((he=C.config)==null?void 0:he.timeout)??30,dbName:((q=C.config)==null?void 0:q.db_name)??"",sourceName:(D==null?void 0:D.name)??"",testQuery:"",contentField:F.content_field??H.contentField,vectorField:F.vector_field??H.vectorField,metadataField:F.metadata_field??H.metadataField,documentIdField:F.document_id_field??H.documentIdField,tableName:F.table_name??H.tableName,collectionField:F.collection_field??H.collectionField}),s(B,T.access_grants??[]),s(c,!0)},ae=()=>{s(j,null)},Pe=async()=>{s(X,!0);const[T,C]=await Promise.all([Tb(localStorage.token).catch(D=>(rt.error(`${D}`),null)),Lb(localStorage.token,null,null,1,"external").catch(D=>(rt.error(`${D}`),null))]);x=(T==null?void 0:T.items)??[],s(A,(C==null?void 0:C.items)??[]),s(X,!1)},se=()=>e(w).provider==="pgvector"?"postgresql://user:password@host:5432/db":e(w).provider==="milvus"?"http://milvus.example.com:19530":"https://qdrant.example.com",m=T=>x.find(C=>{var D,F;return C.id===((F=(D=T==null?void 0:T.meta)==null?void 0:D.external)==null?void 0:F.connection_id)}),ce=()=>({name:e(w).name.trim()||e(w).sourceName.trim()||t().t("External Knowledge Source"),provider:e(w).provider,endpoint:e(w).endpoint,auth_config:e(w).provider==="pgvector"?{}:e(w).apiKey?{type:"bearer",api_key:e(w).apiKey}:V?null:{},config:{timeout:Number(e(w).timeout)||30,...e(w).provider==="milvus"&&e(w).dbName?{db_name:e(w).dbName}:{}},capabilities:{retrieve:!0},enabled:(V==null?void 0:V.enabled)!==!1}),De=()=>{const T={content_field:e(w).contentField.trim(),...e(w).vectorField.trim()?{vector_field:e(w).vectorField.trim()}:{},...e(w).metadataField.trim()?{metadata_field:e(w).metadataField.trim()}:{},...e(w).documentIdField.trim()?{document_id_field:e(w).documentIdField.trim()}:{}};return e(w).provider==="pgvector"&&(T.table_name=e(w).tableName.trim(),T.collection_field=e(w).collectionField.trim()),{type:"collection",name:e(w).sourceName.trim(),config:T}},Le=()=>!!e(w).endpoint.trim()&&!!e(w).sourceName.trim()&&!!e(w).contentField.trim()&&(e(w).provider==="qdrant"||!!e(w).vectorField.trim())&&(e(w).provider!=="pgvector"||!!e(w).tableName.trim()&&!!e(w).collectionField.trim())&&!!e(w).testQuery.trim(),Ne=()=>!!e(w).name.trim()&&Le(),Ce=async()=>{var C;if(!Le()){rt.error(t().t("Fill the source fields and test query first."));return}s(R,!0),s(j,null);const T=await Ob(localStorage.token,{...V!=null&&V.id?{connection_id:V.id}:{},connection:ce(),source:De(),query:e(w).testQuery,count:5}).catch(D=>(rt.error(`${D}`),null));(C=T==null?void 0:T.documents)!=null&&C.length?(s(j,T),rt.success(t().t("Test succeeded."))):T&&rt.error(t().t("Test returned no results.")),s(R,!1)},we=async()=>{var C,D;
72if(!Ne()){rt.error(t().t("Fill the required fields first."));return}if(!((D=(C=e(j))==null?void 0:C.documents)!=null&&D.length)){rt.error(t().t("Test the source before creating it."));return}s(I,!0),await Db(localStorage.token,{name:e(w).name,description:e(w).description,connection:ce(),source:De(),access_grants:e(B),test_query:e(w).testQuery,test_count:5}).catch(F=>(rt.error(`${F}`),null))&&(rt.success(t().t("Knowledge source created.")),s(c,!1),Se(),await Pe()),s(I,!1)},oe=async()=>{var C,D;if(!e(E))return;if(!Ne()){rt.error(t().t("Fill the required fields first."));return}if(!((D=(C=e(j))==null?void 0:C.documents)!=null&&D.length)){rt.error(t().t("Test the source before saving it."));return}s(I,!0),await Rb(localStorage.token,e(E).id,{name:e(w).name,description:e(w).description,connection:ce(),source:De(),access_grants:e(B),test_query:e(w).testQuery,test_count:5}).catch(F=>(rt.error(`${F}`),null))&&(rt.success(t().t("Knowledge source updated.")),s(c,!1),Se(),await Pe()),s(I,!1)},de=async()=>{e(E)?await oe():await we()},be=async T=>{const C=m(T);if(!C)return;await Mb(localStorage.token,C.id,{name:C.name,provider:C.provider,endpoint:C.endpoint,auth_config:null,config:C.config??{},capabilities:C.capabilities??{retrieve:!0},enabled:!C.enabled}).catch(F=>(rt.error(`${F}`),null))&&await Pe()},Me=()=>{s(w,{...e(w),...Te(e(w).provider)}),ae()};ea(Pe),gr();var qe=NC(),Re=Qe(qe);Wa(Re,{size:"sm",className:"bg-white dark:bg-gray-900 rounded-4xl",get show(){return e(c)},set show(T){s(c,T)},children:(T,C)=>{var D=wC(),F=a(D),H=a(F),pe=a(H,!0);r(H);var ye=o(H,2),he=a(ye);wa(he,{className:"size-4"}),r(ye),r(F);var q=o(F,2),P=a(q),Q=a(P),re=a(Q),le=a(re),$e=a(le),ze=a($e),Fe=a(ze),at=a(Fe,!0);r(Fe),r(ze);var tt=o(ze,2),Je=a(tt);vt(Je),r(tt),r($e);var je=o($e,2),ne=a(je),J=a(ne),W=a(J,!0);r(J),r(ne);var Z=o(ne,2),Ee=a(Z);aa(Ee,{id:"external-source-provider",className:"w-full",selectClassName:"text-sm",get value(){return e(w).provider},set value(Yt){We(w,e(w).provider=Yt)},$$events:{change:Me},children:(Yt,Or)=>{var Lr=mC(),Pt=Qe(Lr);Pt.value=Pt.__value="qdrant";var Gt=o(Pt,2);Gt.value=Gt.__value="milvus";var nr=o(Gt,2);nr.value=nr.__value="pgvector",i(Yt,Lr)},$$slots:{default:!0},$$legacy:!0}),r(Z),r(je),r(le);var Ge=o(le,2),p=a(Ge),$=a(p,!0);r(p);var S=o(p,2);So(S),r(Ge);var L=o(Ge,2),fe=a(L),y=a(fe),b=a(y),N=a(b,!0);r(b),r(y);var z=o(y,2),Ue=a(z);vt(Ue),r(z),r(fe),r(L);var Ye=o(L,2),Ve=a(Ye),lt=a(Ve),st=a(lt),Ke=a(st,!0);r(st),r(lt);var Ze=o(lt,2),ot=a(Ze);vt(ot),r(Ze),r(Ve);var ut=o(Ve,2);{var _t=Yt=>{var Or=hC(),Lr=a(Or),Pt=a(Lr),Gt=a(Pt,!0);r(Pt),r(Lr);var nr=o(Lr,2),ft=a(nr);vt(ft),r(nr),r(Or),g(pt=>d(Gt,pt),[()=>t().t("API Key / Token")]),dt(ft,()=>e(w).apiKey,pt=>We(w,e(w).apiKey=pt)),ke("input",ft,ae),i(Yt,Or)};G(ut,Yt=>{e(w).provider!=="pgvector"&&Yt(_t)})}r(Ye);var nt=o(Ye,2);{var et=Yt=>{var Or=xC(),Lr=a(Or),Pt=a(Lr),Gt=a(Pt),nr=a(Gt,!0);r(Gt),r(Pt);var ft=o(Pt,2),pt=a(ft);vt(pt),r(ft),r(Lr),r(Or),g((Ut,Vt)=>{d(nr,Ut),Be(pt,"placeholder",Vt)},[()=>t().t("Database"),()=>t().t("Default")]),dt(pt,()=>e(w).dbName,Ut=>We(w,e(w).dbName=Ut)),ke("input",pt,ae),i(Yt,Or)};G(nt,Yt=>{e(w).provider==="milvus"&&Yt(et)})}var gt=o(nt,4),It=a(gt),Mt=a(It),jt=a(Mt),Tt=a(jt,!0);r(jt),r(Mt);var yt=o(Mt,2),$t=a(yt);vt($t),r(yt),r(It),r(gt);var rr=o(gt,2);{var Rt=Yt=>{var Or=bC(),Lr=a(Or),Pt=a(Lr),Gt=a(Pt),nr=a(Gt,!0);r(Gt),r(Pt);var ft=o(Pt,2),pt=a(ft);vt(pt),r(ft),r(Lr);var Ut=o(Lr,2),Vt=a(Ut),Dr=a(Vt),Yr=a(Dr,!0);r(Dr),r(Vt);var Nr=o(Vt,2),zr=a(Nr);vt(zr),r(Nr),r(Ut),r(Or),g((Fr,Rr)=>{d(nr,Fr),d(Yr,Rr)},[()=>t().t("Table"),()=>t().t("Collection Field")]),dt(pt,()=>e(w).tableName,Fr=>We(w,e(w).tableName=Fr)),ke("input",pt,ae),dt(zr,()=>e(w).collectionField,Fr=>We(w,e(w).collectionField=Fr)),ke("input",zr,ae),i(Yt,Or)};G(rr,Yt=>{e(w).provider==="pgvector"&&Yt(Rt)})}var Wt=o(rr,2),or=a(Wt),$r=a(or),Et=a($r),St=a(Et,!0);r(Et),r($r);var Dt=o($r,2),ar=a(Dt);vt(ar),r(Dt),r(or);var Tr=o(or,2),tr=a(Tr),ur=a(tr),_r=a(ur,!0);r(ur),r(tr);var br=o(tr,2),kt=a(br);vt(kt),r(br),r(Tr),r(Wt);var jr=o(Wt,2),qt=a(jr),At=a(qt),Ot=a(At),Ht=a(Ot,!0);r(Ot),r(At);var Xt=o(At,2),er=a(Xt);vt(er),r(Xt),r(qt);var xr=o(qt,2),Qt=a(xr),fr=a(Qt),wt=a(fr,!0);r(fr),r(Qt);var ht=o(Qt,2),zt=a(ht);vt(zt),r(ht),r(xr),r(jr);var ir=o(jr,2),dr=a(ir),Ct=a(dr),Er=a(Ct),Bt=a(Er,!0);r(Er),r(Ct);var Ft=o(Ct,2),Zt=a(Ft);vt(Zt);var wr=o(Zt,2);{let Yt=v(()=>t().t("Verify Connection"));Lt(wr,{get content(){return e(Yt)},className:"shrink-0 flex items-center mr-1",children:(Or,Lr)=>{var Pt=$C(),Gt=a(Pt);{var nr=pt=>{ra(pt,{})},ft=pt=>{var Ut=yC();i(pt,Ut)};G(Gt,pt=>{e(R)?pt(nr):pt(ft,-1)})}r(Pt),g(pt=>{Pt.disabled=e(R),Be(Pt,"aria-label",pt)},[()=>t().t("Verify Connection")]),ke("click",Pt,Ce),i(Or,Pt)},$$slots:{default:!0}})}r(Ft);var kr=o(Ft,2),Hr=a(kr,!0);r(kr),r(dr),r(ir);var yr=o(ir,4);ju(yr,{accessRoles:["read"],share:!0,sharePublic:!0,shareUsers:!0,get accessGrants(){return e(B)},set accessGrants(Yt){s(B,Yt)},$$legacy:!0});var Sr=o(yr,2),Br=o(a(Sr),2),pr=a(Br),sr=o(pr);{var Kr=Yt=>{ra(Yt,{})};G(sr,Yt=>{e(I)&&Yt(Kr)})}r(Br),r(Sr),r(re),r(Q),r(P),r(q),r(D),g((Yt,Or,Lr,Pt,Gt,nr,ft,pt,Ut,Vt,Dr,Yr,Nr,zr,Fr,Rr,Ur,Vr,qr,Zr)=>{d(pe,Yt),Be(ye,"aria-label",Or),d(at,Lr),Be(Je,"placeholder",Pt),d(W,Gt),d($,nr),d(N,ft),Be(Ue,"placeholder",pt),d(Ke,Ut),d(Tt,Vt),d(St,Dr),Be(ar,"placeholder",e(w).provider==="pgvector"?"text":"payload.text"),d(_r,Yr),Be(kt,"placeholder",Nr),kt.required=e(w).provider!=="qdrant",d(Ht,zr),Be(er,"placeholder",e(w).provider==="pgvector"?"vmetadata":"payload.metadata"),d(wt,Fr),d(Bt,Rr),Be(Zt,"placeholder",Ur),d(Hr,Vr),Br.disabled=qr,d(pr,`${Zr??""} `)},[()=>e(E)?t().t("Edit Knowledge Connection"):t().t("Add Knowledge Connection"),()=>t().t("Close"),()=>t().t("Name"),()=>t().t("Research Knowledge"),()=>t().t("Provider"),()=>t().t("Description"),()=>t().t("Endpoint"),()=>se(),()=>t().t("Timeout"),()=>t().t("Collection"),()=>t().t("Content Field"),()=>t().t("Vector Field"),()=>e(w).provider==="qdrant"?t().t("Default"):"vector",()=>t().t("Metadata Field"),()=>t().t("Document ID Field"),()=>t().t("Test Query"),()=>t().t("Ask a test question"),()=>
72t().t("External vectors must be generated with the same embedding model configured in Open WebUI."),()=>{var Yt,Or;return e(I)||!Ne()||!((Or=(Yt=e(j))==null?void 0:Yt.documents)!=null&&Or.length)},()=>e(E)?t().t("Save"):t().t("Create")]),ke("click",ye,()=>{s(c,!1),Se()}),dt(Je,()=>e(w).name,Yt=>We(w,e(w).name=Yt)),ke("input",Je,ae),dt(S,()=>e(w).description,Yt=>We(w,e(w).description=Yt)),dt(Ue,()=>e(w).endpoint,Yt=>We(w,e(w).endpoint=Yt)),ke("input",Ue,ae),dt(ot,()=>e(w).timeout,Yt=>We(w,e(w).timeout=Yt)),ke("input",ot,ae),dt($t,()=>e(w).sourceName,Yt=>We(w,e(w).sourceName=Yt)),ke("input",$t,ae),dt(ar,()=>e(w).contentField,Yt=>We(w,e(w).contentField=Yt)),ke("input",ar,ae),dt(kt,()=>e(w).vectorField,Yt=>We(w,e(w).vectorField=Yt)),ke("input",kt,ae),dt(er,()=>e(w).metadataField,Yt=>We(w,e(w).metadataField=Yt)),ke("input",er,ae),dt(zt,()=>e(w).documentIdField,Yt=>We(w,e(w).documentIdField=Yt)),ke("input",zt,ae),dt(Zt,()=>e(w).testQuery,Yt=>We(w,e(w).testQuery=Yt)),ke("input",Zt,ae),ke("submit",Q,ca(de)),i(T,D)},$$slots:{default:!0},$$legacy:!0});var ue=o(Re,2),xe=a(ue),K=a(xe),Oe=a(K),O=a(Oe,!0);r(Oe);var ie=o(Oe,2);Bd(ie,{}),r(K);var M=o(K,2);{let T=v(()=>t().t("Add Connection"));Lt(M,{get content(){return e(T)},children:(C,D)=>{var F=kC(),H=a(F);Ya(H,{}),r(F),ke("click",F,Y),i(C,F)},$$slots:{default:!0}})}r(xe);var ve=o(xe,2);lr(ve,5,()=>e(A),Ar,(T,C)=>{const D=v(()=>m(e(C)));var F=IC(),H=a(F);Lt(H,{className:"w-full relative",content:"",placement:"top-start",children:(q,P)=>{var Q=EC(),re=a(Q),le=a(re);{let je=v(()=>t().t("Knowledge"));Lt(le,{get content(){return e(je)},children:(ne,J)=>{Xf(ne,{className:"size-4",strokeWidth:"1.5"})},$$slots:{default:!0}})}var $e=o(le,2),ze=a($e),Fe=a(ze,!0);r(ze);var at=o(ze);at.nodeValue=" ";var tt=o(at),Je=a(tt);r(tt),r($e),r(re),r(Q),g(()=>{var je,ne,J,W,Z,Ee,Ge,p,$;k(re,1,`flex-1 relative flex gap-1.5 items-center min-w-0 ${((je=e(D))==null?void 0:je.enabled)===!1?"opacity-50":""}`),d(Fe,e(C).name),d(Je,`${((W=(J=(ne=e(C))==null?void 0:ne.meta)==null?void 0:J.external)==null?void 0:W.provider)??((Z=e(D))==null?void 0:Z.provider)??""} 73 ${($=(p=(Ge=(Ee=e(C))==null?void 0:Ee.meta)==null?void 0:Ge.external)==null?void 0:p.source)!=null&&$.name?`· ${e(C).meta.external.source.name}`:""}`)}),i(q,Q)},$$slots:{default:!0}});var pe=o(H,2),ye=a(pe);{let q=v(()=>t().t("Configure"));Lt(ye,{get content(){return e(q)},children:(P,Q)=>{var re=AC(),le=a(re);jl(le,{}),r(re),g($e=>{re.disabled=!e(D),Be(re,"aria-label",$e)},[()=>t().t("Configure")]),ke("click",re,()=>{ee(e(C))}),i(P,re)},$$slots:{default:!0}})}var he=o(ye,2);{let q=v(()=>{var P;return((P=e(D))==null?void 0:P.enabled)!==!1?t().t("Enabled"):t().t("Disabled")});Lt(he,{get content(){return e(q)},children:(P,Q)=>{{let re=v(()=>{var le;return((le=e(D))==null?void 0:le.enabled)!==!1});Nt(P,{get state(){return e(re)},$$events:{change:()=>{be(e(C))}}})}},$$slots:{default:!0}})}r(pe),r(F),i(T,F)}),r(ve);var te=o(ve,2);{var ge=T=>{var C=SC(),D=a(C);ra(D,{}),r(C),i(T,C)},_e=T=>{var C=N_(),D=a(C,!0);r(C),g(F=>d(D,F),[()=>t().t("No external knowledge sources configured.")]),i(T,C)};G(te,T=>{e(X)?T(ge):e(A).length===0&&T(_e,1)})}var Ae=o(te,2);{var U=T=>{var C=N_(),D=a(C,!0);r(C),g(F=>d(D,F),[()=>t().t("Test must pass before a source is created.")]),i(T,C)};G(Ae,T=>{e(A).length===0&&T(U)})}r(ue),g(T=>d(O,T),[()=>t().t("External Knowledge Sources")]),i(He,qe),cr(),n()}var P_=u('<button class="flex size-6 items-center justify-center rounded-lg text-gray-400 transition-colors hover:bg-black/5 hover:text-gray-900 dark:text-gray-600 dark:hover:bg-white/5 dark:hover:text-white" type="button"><!></button>'),C_=u('<div class="text-[0.6875rem] text-gray-400 dark:text-gray-600"> </div>'),CC=u('<div><div class="mb-2 flex items-center justify-between"><div class="text-xs text-gray-600 dark:text-gray-400"> </div> <!></div> <div class="flex flex-col gap-1"></div> <!> <div class="mt-1 text-[0.6875rem] text-gray-400 dark:text-gray-600"> </div></div>'),TC=u('<div class="flex w-full"><div><!> <div class="outline-hidden w-full bg-transparent text-xs text-gray-700 dark:text-gray-300"> </div></div></div>
73'),LC=u('<button class="self-center p-1 bg-transparent hover:bg-black/5 dark:hover:bg-white/5 rounded-lg transition" type="button"><!></button>'),OC=u('<div class="flex w-full gap-2 items-center"><!> <div class="flex gap-1 items-center"><!> <!></div></div>'),MC=u('<div><div class="mb-2 flex items-center justify-between"><div class="text-xs text-gray-600 dark:text-gray-400"> </div> <!></div> <div class="flex flex-col gap-1.5"></div> <!> <div class="mt-1 text-[0.6875rem] text-gray-400 dark:text-gray-600"> </div> <a class="mt-0.5 block text-[0.6875rem] text-gray-500 underline hover:text-gray-700 dark:text-gray-500 dark:hover:text-gray-300" href="https://github.com/open-webui/open-terminal" target="_blank"> </a></div>'),RC=u("<!> <!> <!>",1),DC=u('<div class="flex h-full justify-center"><div class="my-auto"><!></div></div>'),UC=u('<!> <!> <form class="flex h-full flex-col justify-between text-sm"><h2 class="text-sm font-medium text-gray-900 dark:text-white mb-4"> </h2> <div class="flex-1 min-h-0 overflow-y-auto scrollbar-hover pr-1.5"><!></div> <div class="flex justify-end pt-6 text-sm font-normal"><button class="px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full" type="submit"> </button></div></form>',1);function BC(He,_){vr(_,!1);const t=()=>ct(X,"$i18n",n),f=()=>ct(Io,"$terminalServers",n),[n,Ie]=hr();ja();const X=mr("i18n");Xe(_,"saveSettings",8);let R=h(null),I=h(!1),c=h([]),x=h(!1),A=h(null);const E=async oe=>{s(R,[...e(R)??[],oe]),await V()},V=async()=>{await Hm(localStorage.token,{TOOL_SERVER_CONNECTIONS:e(R)}).catch(de=>(rt.error(t().t("Failed to save connections")),null))&&rt.success(t().t("Connections saved successfully"))},B=async()=>{if(await Fm(localStorage.token,{TERMINAL_SERVER_CONNECTIONS:e(c)}).catch(de=>(rt.error(t().t("Failed to save terminal servers")),null))){rt.success(t().t("Terminal servers saved"));const de=(f()??[]).filter(qe=>!qe.id),Me=(await vf(localStorage.token)).map(qe=>({id:qe.id,url:`${ia}/terminals/${qe.id}`,name:qe.name,key:localStorage.token,contexts:qe.contexts??{},config:qe.config??{}}));Io.set([...de,...Me])}},j=oe=>{var de;s(c,[...e(c),{...oe,id:oe.id??((de=crypto.randomUUID)==null?void 0:de.call(crypto))??Ld()}]),B()},w=(oe,de)=>{s(c,e(c).map((be,Me)=>Me===oe?{...be,...de,id:de.id??be.id}:be)),B()},Te=oe=>{s(c,e(c).filter((de,be)=>be!==oe)),B()};ea(async()=>{const oe=await Gm(localStorage.token);s(R,oe.TOOL_SERVER_CONNECTIONS);try{const de=await jm(localStorage.token);de!=null&&de.TERMINAL_SERVER_CONNECTIONS&&s(c,de.TERMINAL_SERVER_CONNECTIONS)}catch{}}),gr();var Se=UC(),Y=Qe(Se);Ju(Y,{onSubmit:E,get show(){return e(I)},set show(oe){s(I,oe)},$$legacy:!0});var ee=o(Y,2);{let oe=v(()=>e(A)!==null),de=v(()=>(e(A),e(c),l(()=>e(A)!==null?e(c)[e(A)]:null)));Qu(ee,{get edit(){return e(oe)},get connection(){return e(de)},onSubmit:be=>{e(A)!==null?(w(e(A),be),s(A,null)):j(be)},onDelete:()=>{e(A)!==null&&(Te(e(A)),s(A,null))},get show(){return e(x)},set show(be){s(x,be)},$$legacy:!0})}var ae=o(ee,2),Pe=a(ae),se=a(Pe,!0);r(Pe);var m=o(Pe,2),ce=a(m);{var De=oe=>{var de=RC(),be=Qe(de);{let Re=v(()=>(t(),l(()=>t().t("Tools"))));va(be,{get title(){return e(Re)},first:!0,children:(ue,xe)=>{var K=CC(),Oe=a(K),O=a(Oe),ie=a(O,!0);r(O);var M=o(O,2);{let U=v(()=>(t(),l(()=>t().t("Add Connection"))));Lt(M,{get content(){return e(U)},children:(T,C)=>{var D=P_(),F=a(D);Ya(F,{}),r(D),ke("click",D,()=>{s(I,!0)}),i(T,D)},$$slots:{default:!0}})}r(Oe);var ve=o(Oe,2);lr(ve,5,()=>e(R)??[],Ar,(U,T,C)=>{qf(U,{onSubmit:()=>{V()},onDelete:()=>{s(R,(e(R)??[]).filter((D,F)=>F!==C)),V()},get connection(){return(e(R)??[])[C]},set connection(D){(e(R)??[])[C]=D,Ja(()=>e(R))},$$legacy:!0})}),r(ve);var te=o(ve,2);{var ge=U=>{var T=C_(),C=a(T,!0);r(T),g(D=>d(C,D),[()=>(t(),l(()=>t().t("No tool server connections configured.")))]),i(U,T)};G(te,U=>{e(R),l(()=>(e(R)??[]).length===0)&&U(ge)})}var _e=o(te,2),Ae=a(_e,!0);r(_e),r(K),g((U,T)=>{d(ie,U),d(Ae,T)},[()=>(t(),l(()=>t().t("External Tool Servers"))),()=>(t(),l(()=>t().t("Connect to your own OpenAPI compatible external tool servers.")))]),i(ue,K)},$$slots:{default:!0}})}var Me=o(be,2);{let Re=v(()=>(t(),l(()=>t().t("Terminal"))));va(Me,{get title(){return e(Re)},children:(ue,xe)=>{var K=MC(),Oe=a(K),O=a(Oe),ie=a(O,!0);r(O);var M=o(O,2);{let C=v(()=>(t(),l(()=>t().t("Add Connection"))));Lt(M,{get content(){return e(C)},children:(D,F)=>{var H=P_(),pe=a(H);Ya(pe,{}),r(H),ke("click",H,()=>{s(A,null),s(x,!0)}),i(D,H)},$$slots:{default:!0}})}r(Oe);var ve=o(Oe,2);lr(ve,5,()=>e(c),Ar,(C,D,F)=>{var H=OC(),pe=a(H);Lt(pe,{className:"w-full relative",content:"",placement:"top-start",children:(P,Q)=>{var re=TC(),le=a(re),$e=a(le);{let at=v(()=>(t(),l(()=>t().t("Terminal"))));Lt($e,{get content(){return e(at)},children:(tt,Je)=>{Af(tt,{className:"size-4",strokeWidth:"1.5"})},$$slots:{default:!0}})}var ze=o($e,2),Fe=a(ze,!0);r(ze),r(le),r(re),g(at=>{k(le,1,`flex-1 relative flex gap-1.5 items-center ${e(D),l(()=>{var tt;return((tt=e(D))==null?void 0:tt.enabled)===!1?"opacity-50":""})??""}`),d(Fe,at)},[()=>(e(D),t(),l(()=>e(D).name||e(D).url||t().t("New Terminal")))]),i(P,re)},$$slots:{default:!0}});var ye=o(pe,2),he=a(ye);{let P=v(()=>(t(),l(()=>t().t("Configure"))));Lt(he,{get content(){return e(P)}
73,children:(Q,re)=>{var le=LC(),$e=a(le);jl($e,{}),r(le),ke("click",le,()=>{s(A,F),s(x,!0)}),i(Q,le)},$$slots:{default:!0}})}var q=o(he,2);{let P=v(()=>(e(D),t(),l(()=>{var Q;return((Q=e(D))==null?void 0:Q.enabled)!==!1?t().t("Enabled"):t().t("Disabled")})));Lt(q,{get content(){return e(P)},children:(Q,re)=>{{let le=v(()=>(e(D),l(()=>{var $e;return(($e=e(D))==null?void 0:$e.enabled)!==!1})));Nt(Q,{get state(){return e(le)},$$events:{change:()=>{s(c,e(c).map(($e,ze)=>ze===F?{...$e,enabled:($e==null?void 0:$e.enabled)===!1}:$e)),B()}}})}},$$slots:{default:!0}})}r(ye),r(H),i(C,H)}),r(ve);var te=o(ve,2);{var ge=C=>{var D=C_(),F=a(D,!0);r(D),g(H=>d(F,H),[()=>(t(),l(()=>t().t("No terminal connections configured.")))]),i(C,D)};G(te,C=>{e(c),l(()=>e(c).length===0)&&C(ge)})}var _e=o(te,2),Ae=a(_e,!0);r(_e);var U=o(_e,2),T=a(U);r(U),r(K),g((C,D,F)=>{d(ie,C),d(Ae,D),d(T,`${F??""} â`)},[()=>(t(),l(()=>t().t("Open Terminal"))),()=>(t(),l(()=>t().t("Connect to Open Terminal instances. Admins and users granted access can use file browsing and terminal tools through these servers."))),()=>(t(),l(()=>t().t("Learn more about Open Terminal")))]),i(ue,K)},$$slots:{default:!0}})}var qe=o(Me,2);{let Re=v(()=>(t(),l(()=>t().t("Knowledge"))));va(qe,{get title(){return e(Re)},children:(ue,xe)=>{PC(ue,{})},$$slots:{default:!0}})}i(oe,de)},Le=oe=>{var de=DC(),be=a(de),Me=a(be);ra(Me,{className:"size-6"}),r(be),r(de),i(oe,de)};G(ce,oe=>{e(R)!==null?oe(De):oe(Le,-1)})}r(m);var Ne=o(m,2),Ce=a(Ne),we=a(Ce,!0);r(Ce),r(Ne),r(ae),g((oe,de)=>{d(se,oe),d(we,de)},[()=>(t(),l(()=>t().t("Integrations"))),()=>(t(),l(()=>t().t("Save")))]),ke("submit",ae,ca(()=>{V()})),i(He,Se),cr(),Ie()}var GC=u("<option> </option> <option> </option> <option> </option> <option> </option> <option> </option> <option> </option> <option> </option> <option> </option> <option> </option>",1),ml=u("<input/>"),gd=u("<option> </option> <option> </option>",1),Vo=u("<!> <!>",1),T_=u("<option> </option> <option> </option> <option> </option>",1),jC=u("<!> <!> <!> <!> <!> <!> <!> <!> <!> <!> <!>",1),HC=u('<div class="mt-1 text-[0.6875rem] leading-5 text-gray-500 dark:text-gray-400"><div> </div> <div> <code class="text-gray-700 dark:text-gray-300"></code></div> <div> <code class="text-gray-700 dark:text-gray-300"></code>, <code class="text-gray-700 dark:text-gray-300"></code>, <code class="text-gray-700 dark:text-gray-300"></code></div></div>'),FC=u('<!> <button type="button" class="mt-1 text-[0.6875rem] text-gray-400 transition-colors hover:text-gray-700 dark:text-gray-600 dark:hover:text-gray-300"> </button> <!>',1),_d=u('<div class="grid grid-cols-1 gap-x-3 gap-y-2.5 sm:grid-cols-2"><!> <!></div> <!>',1),Ts=u('<div class="grid grid-cols-1 gap-x-3 gap-y-2.5 sm:grid-cols-2"><!> <!></div>'),WC=u('<input class="w-16 rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-right text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500" type="number" min="1" placeholder="60"/>'),zC=u("<!> <!> <!> <!> <!> <!>",1),KC=u('<input autocomplete="off"/>'),Dl=u('<input type="number" autocomplete="off" min="0"/>'),YC=u('<!> <!> <!> <div class="grid grid-cols-1 gap-x-3 gap-y-2.5 sm:grid-cols-2"><!> <!></div> <!>',1),Xc=u("<!> <!> <!> <!> <!>",1),VC=u("<option> </option> <option> </option> <option> </option> <option> </option>",1),Ls=u('<input required=""/>'),qC=u('<div class="grid grid-cols-1 gap-x-3 gap-y-2.5 sm:grid-cols-2"><!> <!> <!></div>'),XC=Jr('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="size-4"><path d="M8.75 2.75a.75.75 0 0 0-1.5 0v5.69L5.03 6.22a.75.75 0 0 0-1.06 1.06l3.5 3.5a.75.75 0 0 0 1.06 0l3.5-3.5a.75.75 0 0 0-1.06-1.06L8.75 8.44V2.75Z"></path><path d="M3.5 9.75a.75.75 0 0 0-1.5 0v1.5A2.75 2.75 0 0 0 4.75 14h6.5A2.75 2.75 0 0 0 14 11.25v-1.5a.75.75 0 0 0-1.5 0v1.5c0 .69-.56 1.25-1.25 1.25h-6.5c-.69 0-1.25-.56-1.25-1.25v-1.5Z"></path></svg>'),JC=u('<button class="flex size-7 shrink-0 items-center justify-center rounded-lg text-gray-500 transition-colors hover:bg-black/5 hover:text-gray-900 dark:text-gray-500 dark:hover:bg-white/5 dark:hover:text-white" type="button"><!></button>'),ZC=u('<div class="flex w-full gap-2"><input/> <!></div> <div class="mt-1 text-[0.6875rem] text-gray-400 dark:text-gray-600"> </div>',1),QC=u('<input type="number" class="w-14 bg-transparent text-center text-xs outline-none" min="-2" max="16000" step="1"/>'),e7=u('<input type="number" class="w-14 bg-transparent text-center text-xs outline-none" min="0" step="1"/>
73'),L_=u("<!> <!> <!> <!>",1),t7=u('<input type="number" class="w-14 bg-transparent text-center text-xs outline-none" min="1" max="16000" step="1"/>'),r7=u('<input type="number" step="0.01" autocomplete="off" min="0.0"/>'),fd=u('<button type="button"> </button>'),a7=u('<div class="flex items-center gap-2"><div class="flex-1"><input id="steps-range" type="range" min="0" max="1" step="0.05" class="h-2 w-full cursor-pointer appearance-none rounded-lg dark:bg-gray-700"/> <div class="flex justify-between py-0.5 text-[0.6875rem] text-gray-400 dark:text-gray-600"><div> </div> <div> </div></div></div> <input type="number" class="w-14 bg-transparent text-center text-xs outline-none" min="0" max="1" step="any"/></div>'),l7=u('<div class="mt-1 text-[0.6875rem] text-gray-400 dark:text-gray-600"> </div>'),o7=u('<input type="text" autocomplete="off"/>'),s7=u('<!> <div class="grid grid-cols-1 gap-x-3 gap-y-2.5 sm:grid-cols-2"><!> <!></div> <div class="grid grid-cols-1 gap-x-3 gap-y-2.5 sm:grid-cols-2"><!> <!></div>',1),n7=u("<!> <!> <!>",1),i7=u('<div class="flex-1 min-h-0 overflow-y-auto scrollbar-hover pr-1.5"><!> <!> <!> <!> <!> <!></div> <div class="flex justify-end pt-6 text-sm font-normal"><button class="px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full" type="submit"> </button></div>',1),d7=u('<div class="flex items-center justify-center h-full"><!></div>'),v7=u('<!> <!> <!> <form class="flex h-full flex-col justify-between text-sm"><h2 class="text-sm font-medium text-gray-900 dark:text-white mb-4"> </h2> <!></form>',1);function c7(He,_){vr(_,!1);const t=()=>ct(X,"$i18n",f),[f,n]=hr(),Ie=ja(),X=mr("i18n");let R=h(!1),I=h(!1),c=h(!1),x=h(!1),A=h(!1),E=h(""),V=h(""),B=h(1),j=h(!0),w=h(0),Te=h(""),Se=h(""),Y=h(""),ee=h(""),ae=h(""),Pe=h(""),se=h(""),m=h(null);const ce="w-full h-7 rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500",De="shrink-0 text-xs text-gray-500 transition-colors hover:text-gray-900 dark:text-gray-500 dark:hover:text-white",Le="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500",Ne=async()=>{if(e(E)===""&&e(V).split("/").length-1>1){rt.error(t().t("Model filesystem path detected. Model shortname is required for update, cannot continue."));return}if(e(E)==="ollama"&&e(V)===""){rt.error(t().t("Model filesystem path detected. Model shortname is required for update, cannot continue."));return}if(e(E)==="openai"&&e(V)===""){rt.error(t().t("Model filesystem path detected. Model shortname is required for update, cannot continue."));return}if(e(E)==="azure_openai"&&(e(ee)===""||e(Y)===""||e(ae)==="")){rt.error(t().t("OpenAI URL/Key required."));return}e(E),e(V),e(B),e(j),e(w),s(R,!0);const O={RAG_EMBEDDING_ENGINE:e(E),RAG_EMBEDDING_MODEL:e(V),RAG_EMBEDDING_BATCH_SIZE:e(B),ENABLE_ASYNC_EMBEDDING:e(j),RAG_EMBEDDING_CONCURRENT_REQUESTS:e(w)};e(E)==="ollama"?O.ollama_config={key:e(se),url:e(Pe)}:e(E)==="openai"?O.openai_config={key:e(Se),url:e(Te)}:e(E)==="azure_openai"&&(O.azure_openai_config={key:e(ee),url:e(Y),version:e(ae)});const ie=await Hb(localStorage.token,O).catch(async M=>(rt.error(`${M}`),await we(),null));s(R,!1)},Ce=async()=>{if(e(m).CONTENT_EXTRACTION_ENGINE==="external"&&e(m).EXTERNAL_DOCUMENT_LOADER_URL===""){rt.error(t().t("External Document Loader URL required."));return}if(e(m).CONTENT_EXTRACTION_ENGINE==="external"&&e(m).EXTERNAL_DOCUMENT_LOADER_HEADERS)try{const O=JSON.parse(e(m).EXTERNAL_DOCUMENT_LOADER_HEADERS);if(O===null||typeof O!="object"||Array.isArray(O))throw new Error("Headers must be a valid JSON object");We(m,e(m).EXTERNAL_DOCUMENT_LOADER_HEADERS=JSON.stringify(O,null,2))}catch{rt.error(t().t("Headers must be a valid JSON object"));return}if(e(m).CONTENT_EXTRACTION_ENGINE==="tika"&&e(m).TIKA_SERVER_URL===""){rt.error(t().t("Tika Server URL required."));return}if(e(m).CONTENT_EXTRACTION_ENGINE==="docling"&&e(m).DOCLING_SERVER_URL===""){rt.error(t().t("Docling Server URL required."));return}if(e(m).CONTENT_EXTRACTION_ENGINE==="datalab_marker"&&e(m).DATALAB_MARKER_ADDITIONAL_CONFIG&&e(m).DATALAB_MARKER_ADDITIONAL_CONFIG.trim()!=="")try{JSON.parse(e(m).DATALAB_MARKER_ADDITIONAL_CONFIG)}catch{rt.error(t().t("Invalid JSON format in Additional Config"));return}if(e(m).CONTENT_EXTRACTION_ENGINE==="document_intelligence"&&e(m).DOCUMENT_INTELLIGENCE_ENDPOINT===""){rt.error(t().t("Document Intelligence endpoint required."));return}if(e(m).CONTENT_EXTRACTION_ENGINE==="mistral_ocr"&&e(m).MISTRAL_OCR_API_KEY===""){rt.error(t().t("Mistral OCR API Key required."));return}if(e(m).CONTENT_EXTRACTION_ENGINE==="paddleocr_vl"&&e(m).PADDLEOCR_VL_BASE_URL===""){rt.error(t().t("PaddleOCR-vl API URL required."));return}if(e(m).CONTENT_EXTRACTION_ENGINE==="mineru"&&e(m).MINERU_API_MODE==="cloud"&&e(m).MINERU_API_KEY===""){rt.error(t().t("MinerU API Key required for Cloud API mode."));return}if(e(m).BYPASS_EMBEDDING_AND_RETRIEVAL||await Ne(),e(m).DOCLING_PARAMS)try{JSON.parse(e(m).DOCLING_PARAMS)}catch{rt.error(t().t("Invalid JSON format in {{NAME}}",{NAME:t().t("Docling Parameters")}));return}if(e(m).MINERU_PARAMS)try{JSON.parse(e(m).MINERU_PARAMS)}catch{rt.error(t().t("Invalid JSON format in MinerU Parameters"));return}await Df(localStorage.token,{...e(m),FILE_MAX_SIZE:e(m).FILE_MAX_SIZE??"",FILE_MAX_COUNT:e(m).FILE_MAX_COUNT??"",FILE_IMAGE_COMPRESSION_WIDTH:e(m).FILE_IMAGE_COMPRESSION_WIDTH??"",FILE_IMAGE_COMPRESSION_HEIGHT:e(m).FILE_IMAGE_COMPRESSION_HEIGHT??"",ALLOWED_FILE_EXTENSIONS:e(m).ALLOWED_FILE_EXTENSIONS.split(",").map(O=>O.trim()).filter(O=>O!==""),DOCLING_PARAMS:typeof e(m).DOCLING_PARAMS=="string"&&e(m).DOCLING_PARAMS.trim()!==""?JSON.parse(e(m).DOCLING_PARAMS):{},EXTERNAL_DOCUMENT_LOADER_HEADERS:typeof e(m).EXTERNAL_DOCUMENT_LOADER_HEADERS=="str
73ing"&&e(m).EXTERNAL_DOCUMENT_LOADER_HEADERS.trim()!==""?JSON.parse(e(m).EXTERNAL_DOCUMENT_LOADER_HEADERS):{},CONTENT_EXTRACTION_SUPPORTED_MEDIA_MIME_TYPES:e(m).CONTENT_EXTRACTION_SUPPORTED_MEDIA_MIME_TYPES===null?void 0:e(m).CONTENT_EXTRACTION_SUPPORTED_MEDIA_MIME_TYPES.split(",").map(O=>O.trim()).filter(O=>O!==""),MINERU_PARAMS:typeof e(m).MINERU_PARAMS=="string"&&e(m).MINERU_PARAMS.trim()!==""?JSON.parse(e(m).MINERU_PARAMS):{},MINERU_FILE_EXTENSIONS:e(m).MINERU_FILE_EXTENSIONS.split(",").map(O=>O.trim()).filter(O=>O!=="")}),Ie("save")},we=async()=>{const O=await jb(localStorage.token);O&&(s(E,O.RAG_EMBEDDING_ENGINE),s(V,O.RAG_EMBEDDING_MODEL),s(B,O.RAG_EMBEDDING_BATCH_SIZE??1),s(j,O.ENABLE_ASYNC_EMBEDDING??!0),s(w,O.RAG_EMBEDDING_CONCURRENT_REQUESTS??0),s(Se,O.openai_config.key??""),s(Te,O.openai_config.url??""),s(se,O.ollama_config.key??""),s(Pe,O.ollama_config.url??""),s(ee,O.azure_openai_config.key??""),s(Y,O.azure_openai_config.url??""),s(ae,O.azure_openai_config.version??""))};ea(async()=>{var ie;await we();const O=await Rf(localStorage.token);O.ALLOWED_FILE_EXTENSIONS=((O==null?void 0:O.ALLOWED_FILE_EXTENSIONS)??[]).join(", "),O.DOCLING_PARAMS=typeof O.DOCLING_PARAMS=="object"?JSON.stringify(O.DOCLING_PARAMS??{},null,2):O.DOCLING_PARAMS,O.MINERU_PARAMS=typeof O.MINERU_PARAMS=="object"?JSON.stringify(O.MINERU_PARAMS??{},null,2):O.MINERU_PARAMS,O.EXTERNAL_DOCUMENT_LOADER_HEADERS=typeof O.EXTERNAL_DOCUMENT_LOADER_HEADERS=="object"?Object.keys(O.EXTERNAL_DOCUMENT_LOADER_HEADERS??{}).length>0?JSON.stringify(O.EXTERNAL_DOCUMENT_LOADER_HEADERS,null,2):"":O.EXTERNAL_DOCUMENT_LOADER_HEADERS,O.MINERU_FILE_EXTENSIONS=((O==null?void 0:O.MINERU_FILE_EXTENSIONS)??["pdf"]).join(", "),O.CONTENT_EXTRACTION_SUPPORTED_MEDIA_MIME_TYPES=((ie=O==null?void 0:O.CONTENT_EXTRACTION_SUPPORTED_MEDIA_MIME_TYPES)==null?void 0:ie.join(", "))??null,O.RAG_TOKENIZER_MODEL=(O==null?void 0:O.RAG_TOKENIZER_MODEL)??"",s(m,O)}),gr();var oe=v7(),de=Qe(oe);Ca(de,{get show(){return e(c)},set show(O){s(c,O)},$$events:{confirm:async()=>{await Vx(localStorage.token).catch(ie=>(rt.error(`${ie}`),null))&&rt.success(t().t("Success"))}},$$legacy:!0});var be=o(de,2);Ca(be,{get show(){return e(I)},set show(O){s(I,O)},$$events:{confirm:()=>{Gb(localStorage.token).catch(ie=>(rt.error(`${ie}`),null))&&rt.success(t().t("Success"))}},$$legacy:!0});var Me=o(be,2);{let O=v(()=>t().t("Reindex Embedding Data")),ie=v(()=>t().t("Rebuild knowledge file, knowledge search, and memory vectors using the current embedding model."));Ca(Me,{get title(){return e(O)},get message(){return e(ie)},get show(){return e(x)},set show(M){s(x,M)},$$events:{confirm:async()=>{if(!await Ub(localStorage.token).catch(ge=>(rt.error(`${ge}`),null))||!await Bb(localStorage.token).catch(ge=>(rt.error(`${ge}`),null)))return;await eA(localStorage.token).catch(ge=>(rt.error(`${ge}`),null))&&rt.success(t().t("Success"))}},$$legacy:!0})}var qe=o(Me,2),Re=a(qe),ue=a(Re,!0);r(Re);var xe=o(Re,2);{var K=O=>{var ie=i7(),M=Qe(ie),ve=a(M);{let H=v(()=>t().t("Content Extraction"));va(ve,{get title(){return e(H)},first:!0,children:(pe,ye)=>{var he=Xc(),q=Qe(he);{let Z=v(()=>t().t("Content Extraction Engine")),Ee=v(()=>t().t("Choose how uploaded documents are parsed before indexing."));Jt(q,{get label(){return e(Z)},get description(){return e(Ee)},children:(Ge,p)=>{aa(Ge,{get value(){return e(m).CONTENT_EXTRACTION_ENGINE},set value($){We(m,e(m).CONTENT_EXTRACTION_ENGINE=$)},children:($,S)=>{var L=GC(),fe=Qe(L),y=a(fe,!0);r(fe),fe.value=fe.__value="";var b=o(fe,2),N=a(b,!0);r(b),b.value=b.__value="external";var z=o(b,2),Ue=a(z,!0);r(z),z.value=z.__value="tika";var Ye=o(z,2),Ve=a(Ye,!0);r(Ye),Ye.value=Ye.__value="docling";var lt=o(Ye,2),st=a(lt,!0);r(lt),lt.value=lt.__value="datalab_marker";var Ke=o(lt,2),Ze=a(Ke,!0);r(Ke),Ke.value=Ke.__value="document_intelligence";var ot=o(Ke,2),ut=a(ot,!0);r(ot),ot.value=ot.__value="mistral_ocr";var _t=o(ot,2),nt=a(_t,!0);r(_t),_t.value=_t.__value="paddleocr_vl";var et=o(_t,2),gt=a(et,!0);r(et),et.value=et.__value="mineru",g((It,Mt,jt,Tt,yt,$t,rr,Rt,Wt)=>{d(y,It),d(N,Mt),d(Ue,jt),d(Ve,Tt),d(st,yt),d(Ze,$t),d(ut,rr),d(nt,Rt),d(gt,Wt)},[()=>t().t("Default"),()=>t().t("External"),()=>t().t("Tika"),()=>t().t("Docling"),()=>t().t("Datalab Marker API"),()=>t().t("Document Intelligence"),()=>t().t("Mistral OCR"),()=>t().t("PaddleOCR-vl"),()=>t().t("MinerU")]),i($,L)},$$slots:{default:!0},$$legacy:!0})},$$slots:{default:!0}})}var P=o(q,2);{let Z=v(()=>t().t("Supported Media MIME Types")),Ee=v(()=>t().t("Media upload MIME types the content extraction engine may process."));mt(P,{get label(){return e(Z)},get description(){return e(Ee)},children:(Ge,p)=>{var $=ml();vt($),k($,1,me(ce)),g(S=>Be($,"placeholder",S),[()=>t().t("image/*, video/*")]),dt($,()=>e(m).CONTENT_EXTRACTION_SUPPORTED_MEDIA_MIME_TYPES,S=>We(m,e(m).CONTENT_EXTRACTION_SUPPORTED_MEDIA_MIME_TYPES=S)),i(Ge,$)},$$slots:{default:!0}})}var Q=o(P,2);{var re=Z=>{var Ee=Vo(),Ge=Qe(Ee);{let $=v(()=>t().t("PDF Extract Images (OCR)")),S=v(()=>t().t("Extract images from PDFs so OCR can process image-only pages."));Jt(Ge,{get label(){return e($)},get description(){return e(S)},children:Ir,$$slots:{default:(L,fe)=>{const y=v(()=>fe.labelId);Nt(L,{get ariaLabelledbyId(){return e(y)},get state(){return e(m).PDF_EXTRACT_IMAGES},set state(b){We(m,e(m).PDF_EXTRACT_IMAGES=b)},$$legacy:!0})}}})}var p=o(Ge,2);{let $=v(()=>t().t("PDF Loader Mode")),S=v(()=>t().t("Page mode creates one document per page. Single mode keeps pages together for chunking across boundaries."));Jt(p,{get label(){return e($)},get description(){return e(S)},children:(L,fe)=>{aa(L,{get value(){return e(m).PDF_LOADER_MODE},set value(y){We(m,e(m).PDF_LOADER_MODE=y)},children:(y,b)=>{var N=gd(),z=Qe(N),Ue=a(z,!0);r(z),z.value=z.__value="page";var Ye=o(z,2),Ve=a(Ye,!0);r(Ye),Ye.value=Ye.__value="single",g((lt,st)=>{d(Ue,lt),d(Ve,st)},[()=>t().t("Page"),()=>t().t("Single")]),i(y,N)},$$slots:{default:!0},$$legacy:!0})},$$slots:{default:!0}})}i(Z,Ee)},le=Z=>{var Ee=jC(),Ge=Qe(Ee);{let Ye=v(()=>t().t("API Base URL")),Ve=v(()=>t().t("Datalab Marker service endpoint used for document parsing."));mt(Ge,{get label(){return e(Ye)},get description(){return e(Ve)},children:(lt,st)=>{var Ke=ml();vt(Ke),k(Ke,1,me(ce)),g(Ze=>Be(Ke,"placeholder",Ze),[()=>t().t("Enter Datalab Marker API Base URL")]),dt(Ke,()=>e(m).DATALAB_MARKER_API_BASE_URL,Ze=>We(m,e(m).DATALAB_MARKER_API_BASE_URL=Ze)),i(lt,Ke)},$$slots:{default:!0}})}var p=o(Ge,2);{let Ye=v(()=>t().t("API Key")),Ve=v(()=>t().t("API key used to authenticate with Datalab Marker."));mt(p,{get label(){return e(Ye)},get description(){return e(Ve)},children:(lt,st)=>{{let Ke=v(()=>t().t("Enter Datalab Marker API Key"));Cr(lt,{variant:"settings",get placeholder(){return e(Ke)},required:!1,get value(){return e(m).DATALAB_MARKER_API_KEY},set value(Ze){We(m,e(m).DATALAB_MARKER_API_KEY=Ze)},$$legacy:!0})}},$$slots:{default:!0}})}var $=o(p,2);{let Ye=v(()=>t().t("Additional Config")),Ve=v(()=>t().t("JSON options passed to Marker for advanced parsing behavior."));mt($,{get label(){return e(Ye)},get description(){return e(Ve)},children:(lt,st)=>{{let Ke=v(()=>t().t(`Additional configuration options for marker. This should be a JSON string with key-value pairs. For example, '{"key": "value"}'. Supported keys include: disable_links, keep_pageheader_in_output, keep_pagefooter_in_output, filter_blank_pages, drop_repeated_text, layout_coverage_threshold, merge_threshold, height_tolerance, gap_threshold, image_threshold, min_line_length, level_count, default_level`));Lt(lt,{get content(){return e(Ke)},placement:"top-start",className:"w-full",children:(Ze,ot)=>{{let ut=v(()=>t().t('Enter JSON config (e.g., {"disable_links": true})'));ma(Ze,{className:Le,get placeholder(){return e(ut)},get value(){return e(m).DATALAB_MARKER_ADDITIONAL_CONFIG},set value(_t){We(m,e(m).DATALAB_MARKER_ADDITIONAL_CONFIG=_t)},$$legacy:!0})}},$$slots:{default:!0}})}},$$slots:{default:!0}})}var S=o($,2);{let Ye=v(()=>t().t("Use LLM")),Ve=v(()=>t().t("Use an LLM to improve tables, forms, math, and layout detection."));Jt(S,{get label(){return e(Ye)},get description(){return e(Ve)},children:Ir,$$slots:{default:(lt,st)=>{const Ke=v(()=>st.labelId);Nt(lt,{get ariaLabelledbyId(){return e(Ke)},get state(){return e(m).DATALAB_MARKER_USE_LLM},set state(Ze){We(m,e(m).DATALAB_MARKER_USE_LLM=Ze)},$$legacy:!0})}}})}var L=o(S,2);{let Ye=v(()=>t().t("Skip Cache")),Ve=v(()=>
73t().t("Skip cached Marker results and rerun inference."));Jt(L,{get label(){return e(Ye)},get description(){return e(Ve)},children:Ir,$$slots:{default:(lt,st)=>{const Ke=v(()=>st.labelId);Nt(lt,{get ariaLabelledbyId(){return e(Ke)},get state(){return e(m).DATALAB_MARKER_SKIP_CACHE},set state(Ze){We(m,e(m).DATALAB_MARKER_SKIP_CACHE=Ze)},$$legacy:!0})}}})}var fe=o(L,2);{let Ye=v(()=>t().t("Force OCR")),Ve=v(()=>t().t("Run OCR on all PDF pages, even pages with embedded text."));Jt(fe,{get label(){return e(Ye)},get description(){return e(Ve)},children:Ir,$$slots:{default:(lt,st)=>{const Ke=v(()=>st.labelId);Nt(lt,{get ariaLabelledbyId(){return e(Ke)},get state(){return e(m).DATALAB_MARKER_FORCE_OCR},set state(Ze){We(m,e(m).DATALAB_MARKER_FORCE_OCR=Ze)},$$legacy:!0})}}})}var y=o(fe,2);{let Ye=v(()=>t().t("Paginate")),Ve=v(()=>t().t("Separate output by page with page markers."));Jt(y,{get label(){return e(Ye)},get description(){return e(Ve)},children:Ir,$$slots:{default:(lt,st)=>{const Ke=v(()=>st.labelId);Nt(lt,{get ariaLabelledbyId(){return e(Ke)},get state(){return e(m).DATALAB_MARKER_PAGINATE},set state(Ze){We(m,e(m).DATALAB_MARKER_PAGINATE=Ze)},$$legacy:!0})}}})}var b=o(y,2);{let Ye=v(()=>t().t("Strip Existing OCR")),Ve=v(()=>t().t("Remove existing OCR text and rerun OCR when Force OCR is off."));Jt(b,{get label(){return e(Ye)},get description(){return e(Ve)},children:Ir,$$slots:{default:(lt,st)=>{const Ke=v(()=>st.labelId);Nt(lt,{get ariaLabelledbyId(){return e(Ke)},get state(){return e(m).DATALAB_MARKER_STRIP_EXISTING_OCR},set state(Ze){We(m,e(m).DATALAB_MARKER_STRIP_EXISTING_OCR=Ze)},$$legacy:!0})}}})}var N=o(b,2);{let Ye=v(()=>t().t("Disable Image Extraction")),Ve=v(()=>t().t("Do not extract images from PDFs during Marker processing."));Jt(N,{get label(){return e(Ye)},get description(){return e(Ve)},children:Ir,$$slots:{default:(lt,st)=>{const Ke=v(()=>st.labelId);Nt(lt,{get ariaLabelledbyId(){return e(Ke)},get state(){return e(m).DATALAB_MARKER_DISABLE_IMAGE_EXTRACTION},set state(Ze){We(m,e(m).DATALAB_MARKER_DISABLE_IMAGE_EXTRACTION=Ze)},$$legacy:!0})}}})}var z=o(N,2);{let Ye=v(()=>t().t("Format Lines")),Ve=v(()=>t().t("Format lines to detect inline math and styles."));Jt(z,{get label(){return e(Ye)},get description(){return e(Ve)},children:Ir,$$slots:{default:(lt,st)=>{const Ke=v(()=>st.labelId);Nt(lt,{get ariaLabelledbyId(){return e(Ke)},get state(){return e(m).DATALAB_MARKER_FORMAT_LINES},set state(Ze){We(m,e(m).DATALAB_MARKER_FORMAT_LINES=Ze)},$$legacy:!0})}}})}var Ue=o(z,2);{let Ye=v(()=>t().t("Output Format")),Ve=v(()=>t().t("Text output format returned by Marker."));Jt(Ue,{get label(){return e(Ye)},get description(){return e(Ve)},children:(lt,st)=>{aa(lt,{get value(){return e(m).DATALAB_MARKER_OUTPUT_FORMAT},set value(Ke){We(m,e(m).DATALAB_MARKER_OUTPUT_FORMAT=Ke)},children:(Ke,Ze)=>{var ot=T_(),ut=Qe(ot),_t=a(ut,!0);r(ut),ut.value=ut.__value="markdown";var nt=o(ut,2),et=a(nt,!0);r(nt),nt.value=nt.__value="json";var gt=o(nt,2),It=a(gt,!0);r(gt),gt.value=gt.__value="html",g((Mt,jt,Tt)=>{d(_t,Mt),d(et,jt),d(It,Tt)},[()=>t().t("Markdown"),()=>t().t("JSON"),()=>t().t("HTML")]),i(Ke,ot)},$$slots:{default:!0},$$legacy:!0})},$$slots:{default:!0}})}i(Z,Ee)},$e=Z=>{var Ee=_d(),Ge=Qe(Ee),p=a(Ge);{let L=v(()=>t().t("Document Loader URL")),fe=v(()=>t().t("External service endpoint used to load document content."));mt(p,{get label(){return e(L)},get description(){return e(fe)},children:(y,b)=>{var N=ml();vt(N),k(N,1,me(ce)),g(z=>Be(N,"placeholder",z),[()=>t().t("Enter External Document Loader URL")]),dt(N,()=>e(m).EXTERNAL_DOCUMENT_LOADER_URL,z=>We(m,e(m).EXTERNAL_DOCUMENT_LOADER_URL=z)),i(y,N)},$$slots:{default:!0}})}var $=o(p,2);{let L=v(()=>t().t("API Key")),fe=v(()=>t().t("API key sent to the external document loader."));mt($,{get label(){return e(L)},get description(){return e(fe)},children:(y,b)=>{{let N=v(()=>t().t("Enter External Document Loader API Key"));Cr(y,{variant:"settings",get placeholder(){return e(N)},required:!1,get value(){return e(m).EXTERNAL_DOCUMENT_LOADER_API_KEY},set value(z){We(m,e(m).EXTERNAL_DOCUMENT_LOADER_API_KEY=z)},$$legacy:!0})}},$$slots:{default:!0}})}r(Ge);var S=o(Ge,2);{let L=v(()=>t().t("Headers")),fe=v(()=>t().t("Additional JSON headers sent to the external document loader."));mt(S,{get label(){return e(L)},get description(){return e(fe)},children:(y,b)=>{var N=FC(),z=Qe(N);{let st=v(()=>t().t('Enter additional headers in JSON format (e.g. {"X-Custom-Header": "value"}'));Lt(z,{get content(){return e(st)},children:(Ke,Ze)=>{{let ot=v(()=>t().t("Enter additional headers in JSON format"));ma(Ke,{className:Le,get placeholder(){return e(ot)},required:!1,get value(){return e(m).EXTERNAL_DOCUMENT_LOADER_HEADERS},set value(ut){We(m,e(m).EXTERNAL_DOCUMENT_LOADER_HEADERS=ut)},$$legacy:!0})}},$$slots:{default:!0}})}var Ue=o(z,2),Ye=a(Ue,!0);r(Ue);var Ve=o(Ue,2);{var lt=st=>{var Ke=HC(),Ze=a(Ke),ot=a(Ze,!0);r(Ze);var ut=o(Ze,2),_t=a(ut),nt=o(_t);nt.textContent='{"X-OpenWebUI-File-Id": "{{FILE_ID}}"}',r(ut);var et=o(ut,2),gt=a(et),It=o(gt);It.textContent="{{FILE_ID}}";var Mt=o(It,2);Mt.textContent="{{FILE_NAME}}";var jt=o(Mt,2);jt.textContent="{{FILE_CONTENT_TYPE}}",r(et),r(Ke),g((Tt,yt,$t)=>{d(ot,Tt),d(_t,`${yt??""}: `),d(gt,`${$t??""}: `)},[()=>t().t("No additional headers are sent unless configured."),()=>t().t("Example"),()=>t().t("Available variables")]),i(st,Ke)};G(Ve,st=>{e(A)&&st(lt)})}g(st=>d(Ye,st),[()=>t().t("Header variables")]),ke("click",Ue,()=>s(A,!e(A))),i(y,N)},$$slots:{default:!0}})}i(Z,Ee)},ze=Z=>{var Ee=Ts(),Ge=a(Ee);{let $=v(()=>t().t("Tika Server URL")),S=v(()=>
73t().t("Tika server endpoint used for content extraction."));mt(Ge,{get label(){return e($)},get description(){return e(S)},children:(L,fe)=>{var y=ml();vt(y),k(y,1,me(ce)),g(b=>Be(y,"placeholder",b),[()=>t().t("Enter Tika Server URL")]),dt(y,()=>e(m).TIKA_SERVER_URL,b=>We(m,e(m).TIKA_SERVER_URL=b)),i(L,y)},$$slots:{default:!0}})}var p=o(Ge,2);{let $=v(()=>t().t("Tika Server Version")),S=v(()=>t().t("Select the Tika server API version."));mt(p,{get label(){return e($)},get description(){return e(S)},children:(L,fe)=>{aa(L,{get value(){return e(m).TIKA_SERVER_VERSION},set value(y){We(m,e(m).TIKA_SERVER_VERSION=y)},children:(y,b)=>{var N=gd(),z=Qe(N),Ue=a(z,!0);r(z),z.value=z.__value="3";var Ye=o(z,2),Ve=a(Ye,!0);r(Ye),Ye.value=Ye.__value="4",g((lt,st)=>{d(Ue,lt),d(Ve,st)},[()=>t().t("Tika 3.x"),()=>t().t("Tika 4.x")]),i(y,N)},$$slots:{default:!0},$$legacy:!0})},$$slots:{default:!0}})}r(Ee),i(Z,Ee)},Fe=Z=>{var Ee=_d(),Ge=Qe(Ee),p=a(Ge);{let L=v(()=>t().t("Docling Server URL")),fe=v(()=>t().t("Docling service endpoint used for parsing."));mt(p,{get label(){return e(L)},get description(){return e(fe)},children:(y,b)=>{var N=ml();vt(N),k(N,1,me(ce)),g(z=>Be(N,"placeholder",z),[()=>t().t("Enter Docling Server URL")]),dt(N,()=>e(m).DOCLING_SERVER_URL,z=>We(m,e(m).DOCLING_SERVER_URL=z)),i(y,N)},$$slots:{default:!0}})}var $=o(p,2);{let L=v(()=>t().t("API Key")),fe=v(()=>t().t("API key sent to Docling."));mt($,{get label(){return e(L)},get description(){return e(fe)},children:(y,b)=>{{let N=v(()=>t().t("Enter Docling API Key"));Cr(y,{variant:"settings",get placeholder(){return e(N)},required:!1,get value(){return e(m).DOCLING_API_KEY},set value(z){We(m,e(m).DOCLING_API_KEY=z)},$$legacy:!0})}},$$slots:{default:!0}})}r(Ge);var S=o(Ge,2);{let L=v(()=>t().t("Parameters")),fe=v(()=>t().t("Additional Docling parameters in JSON format."));mt(S,{get label(){return e(L)},get description(){return e(fe)},children:(y,b)=>{{let N=v(()=>t().t("Enter additional parameters in JSON format"));ma(y,{className:Le,get placeholder(){return e(N)},minSize:100,get value(){return e(m).DOCLING_PARAMS},set value(z){We(m,e(m).DOCLING_PARAMS=z)},$$legacy:!0})}},$$slots:{default:!0}})}i(Z,Ee)},at=Z=>{var Ee=_d(),Ge=Qe(Ee),p=a(Ge);{let L=v(()=>t().t("Endpoint")),fe=v(()=>t().t("Document Intelligence endpoint used for parsing."));mt(p,{get label(){return e(L)},get description(){return e(fe)},children:(y,b)=>{var N=ml();vt(N),k(N,1,me(ce)),g(z=>Be(N,"placeholder",z),[()=>t().t("Enter Document Intelligence Endpoint")]),dt(N,()=>e(m).DOCUMENT_INTELLIGENCE_ENDPOINT,z=>We(m,e(m).DOCUMENT_INTELLIGENCE_ENDPOINT=z)),i(y,N)},$$slots:{default:!0}})}var $=o(p,2);{let L=v(()=>t().t("Key")),fe=v(()=>t().t("Credential used for Document Intelligence."));mt($,{get label(){return e(L)},get description(){return e(fe)},children:(y,b)=>{{let N=v(()=>t().t("Enter Document Intelligence Key"));Cr(y,{variant:"settings",get placeholder(){return e(N)},required:!1,get value(){return e(m).DOCUMENT_INTELLIGENCE_KEY},set value(z){We(m,e(m).DOCUMENT_INTELLIGENCE_KEY=z)},$$legacy:!0})}},$$slots:{default:!0}})}r(Ge);var S=o(Ge,2);{let L=v(()=>t().t("Document Intelligence Model")),fe=v(()=>t().t("Model name used by Document Intelligence."));mt(S,{get label(){return e(L)},get description(){return e(fe)},children:(y,b)=>{var N=ml();vt(N),k(N,1,me(ce)),g(z=>Be(N,"placeholder",z),[()=>t().t("Enter Document Intelligence Model")]),dt(N,()=>e(m).DOCUMENT_INTELLIGENCE_MODEL,z=>We(m,e(m).DOCUMENT_INTELLIGENCE_MODEL=z)),i(y,N)},$$slots:{default:!0}})}i(Z,Ee)},tt=Z=>{var Ee=_d(),Ge=Qe(Ee),p=a(Ge);{let L=v(()=>t().t("API Base URL")),fe=v(()=>t().t("Mistral OCR service endpoint."));mt(p,{get label(){return e(L)},get description(){return e(fe)},children:(y,b)=>{var N=ml();vt(N),k(N,1,me(ce)),g(z=>Be(N,"placeholder",z),[()=>t().t("Enter Mistral API Base URL")]),dt(N,()=>e(m).MISTRAL_OCR_API_BASE_URL,z=>We(m,e(m).MISTRAL_OCR_API_BASE_URL=z)),i(y,N)},$$slots:{default:!0}})}var $=o(p,2);{let L=v(()=>t().t("API Key")),fe=v(()=>t().t("API key sent to Mistral OCR."));mt($,{get label(){return e(L)},get description(){return e(fe)},children:(y,b)=>{{let N=v(()=>t().t("Enter Mistral API Key"));Cr(y,{variant:"settings",get placeholder(){return e(N)},get value(){return e(m).MISTRAL_OCR_API_KEY},set value(z){We(m,e(m).MISTRAL_OCR_API_KEY=z)},$$legacy:!0})}},$$slots:{default:!0}})}r(Ge);var S=o(Ge,2);{let L=v(()=>t().t("Use Base64")),fe=v(()=>t().t("Send PDFs as base64 data URLs instead of uploading first."));Jt(S,{get label(){return e(L)},get description(){return e(fe)},children:Ir,$$slots:{default:(y,b)=>{const N=v(()=>b.labelId);Nt(y,{get ariaLabelledbyId(){return e(N)},get state(){return e(m).MISTRAL_OCR_USE_BASE64},set state(z){We(m,e(m).MISTRAL_OCR_USE_BASE64=z)},$$legacy:!0})}}})}i(Z,Ee)},Je=Z=>{var Ee=Ts(),Ge=a(Ee);{let $=v(()=>t().t("API Base URL")),S=v(()=>t().t("PaddleOCR-vl service endpoint."));mt(Ge,{get label(){return e($)},get description(){return e(S)},children:(L,fe)=>{var y=ml();vt(y),k(y,1,me(ce)),g(b=>Be(y,"placeholder",b),[()=>t().t("Enter PaddleOCR-vl API Base URL")]),dt(y,()=>e(m).PADDLEOCR_VL_BASE_URL,b=>We(m,e(m).PADDLEOCR_VL_BASE_URL=b)),i(L,y)},$$slots:{default:!0}})}var p=o(Ge,2);{let $=v(()=>t().t("API Token")),S=v(()=>t().t("API token sent to PaddleOCR-vl."));mt(p,{get label(){return e($)},get description(){return e(S)},children:(L,fe)=>{{let y=v(()=>t().t("Enter PaddleOCR-vl API Token"));Cr(L,{variant:"settings",get placeholder(){return e(y)},required:!1,get value(){return e(m).PADDLEOCR_VL_TOKEN},set value(b){We(m,e(m).PADDLEOCR_VL_TOKEN=b)},$$legacy:!0})}},$$slots:{default:!0}})}r(Ee),i(Z,Ee)},je=Z=>{var Ee=zC(),Ge=Qe(Ee);{let y=v(()=>t().t("API Mode")),b=v(()=>t().t("Choose the local or cloud MinerU API mode."));Jt(Ge,{get label(){return e(y)},get description(){return e(b)},children:(N,z)=>{aa(N,{get value(){return e(m).MINERU_API_MODE},set value(Ue){We(m,e(m).MINERU_API_MODE=Ue)},$$events:{change:()=>{const Ue="https://mineru.net/api/v4",Ye="http://localhost:8000";e(m).MINERU_API_MODE==="cloud"?(!e(m).MINERU_API_URL||e(m).MINERU_API_URL===Ye)&&We(m,e(m).MINERU_API_URL=Ue):(!e(m).MINERU_API_URL||e(m).MINERU_API_URL===Ue)&&We(m,e(m).MINERU_API_URL=Ye)}},children:(Ue,Ye)=>{var Ve=gd(),lt=Qe(Ve),st=a(lt,!0);r(lt),lt.value=lt.__value="local";var Ke=o(lt,2),Ze=a(Ke,!0);r(Ke),Ke.value=Ke.__value="cloud",g((ot,ut)=>{d(st,ot),d(Ze,ut)},[()=>t().t("local"),()=>t().t("cloud")]),i(Ue,Ve)},$$slots:{default:!0},$$legacy:!0})},$$slots:{default:!0}})}var p=o(Ge,2);{let y=v(()=>t().t("API URL")),b=v(()=>t().t("MinerU API endpoint for the selected mode."));mt(p,{get label(){return e(y)},get description(){return e(b)},children:(N,z)=>{var Ue=ml();vt(Ue),k(Ue,1,me(ce)),g(Ye=>Be(Ue,"placeholder",Ye),[()=>e(m).MINERU_API_MODE==="cloud"?t().t("https://mineru.net/api/v4"):t().t("http://localhost:8000")]),dt(Ue,()=>e(m).MINERU_API_URL,Ye=>We(m,e(m).MINERU_API_URL=Ye)),i(N,Ue)},$$slots:{default:!0}})}var $=o(p,2);{let y=v(()=>t().t("API Key")),b=v(()=>t().t("API key used for MinerU cloud mode."));mt($,{get label(){return e(y)},get description(){return e(b)},children:(N,z)=>{{let Ue=v(()=>t().t("Enter MinerU API Key"));Cr(N,{variant:"settings",get placeholder(){return e(Ue)},get value(){return e(m).MINERU_API_KEY},set value(Ye){We(m,e(m).MINERU_API_KEY=Ye)},$$legacy:!0})}},$$slots:{default:!0}})}var S=o($,2);{let y=v(()=>t().t("API Timeout")),b=v(()=>t().t("Maximum time in seconds to wait for MinerU API responses."));Jt(S,{get label(){return e(y)},get description(){return e(b)},children:(N,z)=>{var Ue=WC();vt(Ue),dt(Ue,()=>e(m).MINERU_API_TIMEOUT,Ye=>We(m,e(m).MINERU_API_TIMEOUT=Ye)),i(N,Ue)},$$slots:{default:!0}})}var L=o(S,2);{let y=v(()=>t().t("Parameters")),b=v(()=>t().t("Advanced MinerU parsing parameters in JSON format."));mt(L,{get label(){return e(y)},get description(){return e(b)},children:(N,z)=>{ma(N,{className:Le,placeholder:`{ 74 "enable_ocr": false, 75 "enable_formula": true, 76 "enable_table": true, 77 "language": "en", 78 "model_version": "pipeline", 79 "page_ranges": "" 80}`,minSize:100,get value(){return e(m).MINERU_PARAMS},set value(Ue){We(m,e(m).MINERU_PARAMS=Ue)},$$legacy:!0})},$$slots:{default:!0}})}var fe=o(L,2);{let y=v(()=>t().t("File Extensions")),b=v(()=>t().t("Comma-separated extensions MinerU should handle."));mt(fe,{get label(){return e(y)},get description(){return e(b)},children:(N,z)=>{var Ue=ml();vt(Ue),k(Ue,1,me(ce)),g(Ye=>Be(Ue,"placeholder",Ye),[()=>t().t("pdf, docx, pptx, xlsx")]),dt(Ue,()=>e(m).MINERU_FILE_EXTENSIONS,Ye=>We(m,e(m).MINERU_FILE_EXTENSIONS=Ye)),i(N,Ue)},$$slots:{default:!0}})}i(Z,Ee)};G(Q,Z=>{e(m).CONTENT_EXTRACTION_ENGINE===""?Z(re):e(m).CONTENT_EXTRACTION_ENGINE==="datalab_marker"?Z(le,1):e(m).CONTENT_EXTRACTION_ENGINE==="external"?Z($e,2):e(m).CONTENT_EXTRACTION_ENGINE==="tika"?Z(ze,3):e(m).CONTENT_EXTRACTION_ENGINE==="docling"?Z(Fe,4):e(m).CONTENT_EXTRACTION_ENGINE==="document_intelligence"?Z(at,5):e(m).CONTENT_EXTRACTION_ENGINE==="mistral_ocr"?Z(tt,6):e(m).CONTENT_EXTRACTION_ENGINE==="paddleocr_vl"?Z(Je,7):e(m).CONTENT_EXTRACTION_ENGINE==="mineru"&&Z(je,8)})}var ne=o(Q,2);{let Z=v(()=>t().t("Bypass Embedding and Retrieval")),Ee=v(()=>e(m).BYPASS_EMBEDDING_AND_RETRIEVAL?t().t("Inject the entire content as context for comprehensive processing."):t().t("Use segmented retrieval for focused and relevant context."));Jt(ne,{get label(){return e(Z)},get description(){return e(Ee)},children:Ir,$$slots:{default:(Ge,p)=>{const $=v(()=>p.labelId);Nt(Ge,{get ariaLabelledbyId(){return e($)},get state(){return e(m).BYPASS_EMBEDDING_AND_RETRIEVAL},set state(S){We(m,e(m).BYPASS_EMBEDDING_AND_RETRIEVAL=S)},$$legacy:!0})}}})}var J=o(ne,2);{var W=Z=>{var Ee=YC(),Ge=Qe(Ee);{let z=v(()=>t().t("Text Splitter")),Ue=v(()=>t().t("Choose how extracted text is split before indexing."));Jt(Ge,{get label(){return e(z)},get description(){return e(Ue)},children:(Ye,Ve)=>{aa(Ye,{get value(){return e(m).TEXT_SPLITTER},set value(lt){We(m,e(m).TEXT_SPLITTER=lt)},children:(lt,st)=>{var Ke=T_(),Ze=Qe(Ke),ot=a(Ze);r(Ze),Ze.value=Ze.__value="";var ut=o(Ze,2),_t=a(ut);r(ut),ut.value=ut.__value="token";var nt=o(ut,2),et=a(nt);r(nt),nt.value=nt.__value="token_transformers",g((gt,It,Mt,jt,Tt,yt)=>{d(ot,`${gt??""} (${It??""})`),d(_t,`${Mt??""} (${jt??""})`),d(et,`${Tt??""} (${yt??""})`)},[()=>t().t("Default"),()=>t().t("Character"),()=>t().t("Token"),()=>t().t("Tiktoken"),()=>t().t("Token"),()=>t().t("Transformers")]),i(lt,Ke)},$$slots:{default:!0},$$legacy:!0})},$$slots:{default:!0}})}var p=o(Ge,2);{var $=z=>{{let Ue=v(()=>t().t("Tokenizer Model")),Ye=v(()=>t().t("Tokenizer model used for transformer token splitting."));mt(z,{get label(){return e(Ue)},get description(){return e(Ye)},children:(Ve,lt)=>{var st=KC();vt(st),k(st,1,me(ce)),g(Ke=>{Be(st,"placeholder",Ke),st.required=e(E)!==""},[()=>t().t("Enter Tokenizer Model")]),dt(st,()=>e(m).RAG_TOKENIZER_MODEL,Ke=>We(m,e(m).RAG_TOKENIZER_MODEL=Ke)),i(Ve,st)},$$slots:{default:!0}})}};G(p,z=>{e(m).TEXT_SPLITTER==="token_transformers"&&z($)})}var S=o(p,2);{let z=v(()=>t().t("Markdown Header Text Splitter")),Ue=v(()=>t().t("Split documents by markdown headers before character or token splitting."));Jt(S,{get label(){return e(z)},get description(){return e(Ue)},children:Ir,$$slots:{default:(Ye,Ve)=>{const lt=v(()=>Ve.labelId);Nt(Ye,{get ariaLabelledbyId(){return e(lt)},get state(){return e(m).ENABLE_MARKDOWN_HEADER_TEXT_SPLITTER},set state(st){We(m,e(m).ENABLE_MARKDOWN_HEADER_TEXT_SPLITTER=st)},$$legacy:!0})}}})}var L=o(S,2),fe=a(L);{let z=v(()=>t().t("Chunk Size")),Ue=v(()=>t().t("Maximum size for each text chunk."));mt(fe,{get label(){return e(z)},get description(){return e(Ue)},children:(Ye,Ve)=>{var lt=Dl();vt(lt),k(lt,1,me(ce)),g(st=>Be(lt,"placeholder",st),[()=>t().t("Enter Chunk Size")]),dt(lt,()=>e(m).CHUNK_SIZE,st=>We(m,e(m).CHUNK_SIZE=st)),i(Ye,lt)},$$slots:{default:!0}})}var y=o(fe,2);{let z=v(()=>t().t("Chunk Overlap")),Ue=v(()=>t().t("Overlap preserved between neighboring chunks."));mt(y,{get label(){return e(z)},get description(){return e(Ue)},children:(Ye,Ve)=>{var lt=Dl();vt(lt),k(lt,1,me(ce)),g(st=>Be(lt,"placeholder",st),[()=>t().t("Enter Chunk Overlap")]),dt(lt,()=>e(m).CHUNK_OVERLAP,st=>We(m,e(m).CHUNK_OVERLAP=st)),i(Ye,lt)},$$slots:{default:!0}})}r(L);var b=o(L,2);{var N=z=>{{let Ue=v(()=>t().t("Chunk Min Size Target")),Ye=v(()=>t().t("Merge chunks smaller than this threshold when possible. Set to 0 to disable merging."));mt(z,{get label(){return e(Ue)},get description(){return e(Ye)},children:(Ve,lt)=>{var st=Dl();vt(st),k(st,1,me(ce)),g(Ke=>Be(st,"placeholder",Ke),[()=>t().t("Enter Chunk Min Size Target")]),dt(st,()=>e(m).CHUNK_MIN_SIZE_TARGET,Ke=>We(m,e(m).CHUNK_MIN_SIZE_TARGET=Ke)),i(Ve,st)},$$slots:{default:!0}})}};G(b,z=>{e(m).ENABLE_MARKDOWN_HEADER_TEXT_SPLITTER&&z(N)})}i(Z,Ee)};G(J,Z=>{e(m).BYPASS_EMBEDDING_AND_RETRIEVAL||Z(W)})}i(pe,he)},$$slots:{default:!0}})}var te=o(ve,2);{var ge=H=>{{let pe=v(()=>t().t("Embedding"));va(H,{get title(){return e(pe)},children:(ye,he)=>{var q=Xc(),P=Qe(q);{let Je=v(()=>t().t("Embedding Model Engine")),je=v(()=>t().t("Provider used to generate document embeddings."));Jt(P,{get label(){return e(Je)},get description(){return e(je)},children:(ne,J)=>{{let W=v(()=>t().t("Select an embedding model engine"));aa(ne,{get placeholder(){return e(W)},get value(){return e(E)},set value(Z){s(E,Z)},$$events:{change:Z=>{Z.target.value==="ollama"?s(V,""):Z.target.value==="openai"?s(V,"text-embedding-3-small"):Z.target.value==="azure_openai"?s(V,"text-embedding-3-small"):Z.target.value===""&&s(V,"sentence-transformers/all-MiniLM-L6-v2")}},children:(Z,Ee)=>{var Ge=VC(),p=Qe(Ge),$=a(p,!0);r(p),p.value=p.__value="";var S=o(p,2),L=a(S,!0);r(S),S.value=S.__value="ollama";var fe=o(S,2),y=a(fe,!0);r(fe),fe.value=fe.__value="openai";var b=o(fe,2),N=a(b,!0);r(b),b.value=b.__value="azure_openai",g((z,Ue,Ye,Ve)=>{d($,z),d(L,Ue),d(y,Ye),d(N,Ve)},[()=>t().t("Default (SentenceTransformers)"),()=>t().t("Ollama"),()=>t().t("OpenAI"),()=>t().t("Azure OpenAI")]),i(Z,Ge)},$$slots:{default:!0},$$legacy:!0})}},$$slots:{default:!0}})}var Q=o(P,2);{var re=Je=>{var je=Ts(),ne=a(je);{let W=v(()=>t().t("API Base URL")),Z=v(()=>t().t("OpenAI-compatible embeddings endpoint."));mt(ne,{get label(){return e(W)},get description(){return e(Z)},children:(Ee,Ge)=>{var p=Ls();vt(p),k(p,1,me(ce)),g($=>Be(p,"placeholder",$),[()=>t().t("API Base URL")]),dt(p,()=>e(Te),$=>s(Te,$)),i(Ee,p)},$$slots:{default:!0}})}var J=o(ne,2);{let W=v(()=>t().t("API Key")),Z=v(()=>t().t("API key for embedding requests."));mt(J,{get label(){return e(W)},get description(){return e(Z)},children:(Ee,Ge)=>{{let p=v(()=>t().t("API Key"));Cr(Ee,{variant:"settings",get placeholder(){return e(p)},required:!1,get value(){return e(Se)},set value($){s(Se,$)},$$legacy:!0})}},$$slots:{default:!0}})}r(je),i(Je,je)},le=Je=>{var je=Ts(),ne=a(je);{let W=v(()=>t().t("API Base URL")),Z=v(()=>t().t("Ollama endpoint used for embeddings."));mt(ne,{get label(){return e(W)},get description(){return e(Z)},children:(Ee,Ge)=>{var p=Ls();vt(p),k(p,1,me(ce)),g($=>Be(p,"placeholder",$),[()=>t().t("API Base URL")]),dt(p,()=>e(Pe),$=>s(Pe,$)),i(Ee,p)},$$slots:{default:!0}})}var J=o(ne,2);{let W=v(()=>t().t("API Key")),Z=v(()=>t().t("Optional API key for Ollama requests."));mt(J,{get label(){return e(W)},get description(){return e(Z)},children:(Ee,Ge)=>{{let p=v(()=>t().t("API Key"));Cr(Ee,{variant:"settings",get placeholder(){return e(p)},required:!1,get value(){return e(se)},set value($){s(se,$)},$$legacy:!0})}},$$slots:{default:!0}})}r(je),i(Je,je)},$e=Je=>{var je=qC(),ne=a(je);{let Z=v(()=>t().t("API Base URL")),Ee=v(()=>t().t("Azure OpenAI endpoint used for embeddings."));mt(ne,{get label(){return e(Z)},get description(){return e(Ee)},children:(Ge,p)=>{var $=Ls();vt($),k($,1,me(ce)),g(S=>Be($,"placeholder",S),[()=>t().t("API Base URL")]),dt($,()=>e(Y),S=>s(Y,S)),i(Ge,$)},$$slots:{default:!0}})}var J=o(ne,2);{let Z=v(()=>t().t("API Key")),Ee=v(()=>t().t("Azure OpenAI API key."));mt(J,{get label(){return e(Z)},get description(){return e(Ee)},children:(Ge,p)=>{{let $=v(()=>t().t("API Key"));Cr(Ge,{variant:"settings",get placeholder(){return e($)},get value(){return e(ee)},set value(S){s(ee,S)},$$legacy:!0})}},$$slots:{default:!0}})}var W=o(J,2);{let Z=v(()=>t().t("Version")),Ee=v(()=>t().t("Azure OpenAI API version."));mt(W,{get label(){return e(Z)},get desc
80ription(){return e(Ee)},children:(Ge,p)=>{var $=Ls();vt($),k($,1,me(ce)),g(S=>Be($,"placeholder",S),[()=>t().t("Version")]),dt($,()=>e(ae),S=>s(ae,S)),i(Ge,$)},$$slots:{default:!0}})}r(je),i(Je,je)};G(Q,Je=>{e(E)==="openai"?Je(re):e(E)==="ollama"?Je(le,1):e(E)==="azure_openai"&&Je($e,2)})}var ze=o(Q,2);{let Je=v(()=>t().t("Embedding Model")),je=v(()=>t().t("Model used to generate embeddings. Reindex knowledge after changing this."));mt(ze,{get label(){return e(Je)},get description(){return e(je)},children:(ne,J)=>{var W=ZC(),Z=Qe(W),Ee=a(Z);vt(Ee),k(Ee,1,me(ce));var Ge=o(Ee,2);{var p=L=>{var fe=JC(),y=a(fe);{var b=z=>{ra(z,{})},N=z=>{var Ue=XC();i(z,Ue)};G(y,z=>{e(R)?z(b):z(N,-1)})}r(fe),g(z=>{fe.disabled=e(R),Be(fe,"aria-label",z)},[()=>t().t("Update embedding model")]),ke("click",fe,()=>{Ne()}),i(L,fe)};G(Ge,L=>{e(E)===""&&L(p)})}r(Z);var $=o(Z,2),S=a($,!0);r($),g((L,fe)=>{Be(Ee,"placeholder",L),Ee.required=e(E)==="ollama",d(S,fe)},[()=>e(E)==="ollama"?t().t("Set embedding model"):t().t("Set embedding model (e.g. {{model}})",{model:e(V).slice(-40)}),()=>t().t("After changing the embedding model, reindex knowledge, knowledge search, and memory vectors for changes to take effect.")]),dt(Ee,()=>e(V),L=>s(V,L)),i(ne,W)},$$slots:{default:!0}})}var Fe=o(ze,2);{let Je=v(()=>t().t("Embedding Batch Size")),je=v(()=>t().t("Number of items processed per embedding batch."));Jt(Fe,{get label(){return e(Je)},get description(){return e(je)},children:(ne,J)=>{var W=QC();vt(W),dt(W,()=>e(B),Z=>s(B,Z)),i(ne,W)},$$slots:{default:!0}})}var at=o(Fe,2);{var tt=Je=>{var je=Vo(),ne=Qe(je);{let W=v(()=>t().t("Async Embedding Processing")),Z=v(()=>t().t("Run embedding tasks concurrently to speed up processing."));Jt(ne,{get label(){return e(W)},get description(){return e(Z)},children:Ir,$$slots:{default:(Ee,Ge)=>{const p=v(()=>Ge.labelId);Nt(Ee,{get ariaLabelledbyId(){return e(p)},get state(){return e(j)},set state($){s(j,$)},$$legacy:!0})}}})}var J=o(ne,2);{let W=v(()=>t().t("Embedding Concurrent Requests")),Z=v(()=>t().t("Maximum concurrent embedding requests. Set to 0 for unlimited."));Jt(J,{get label(){return e(W)},get description(){return e(Z)},children:(Ee,Ge)=>{var p=e7();vt(p),dt(p,()=>e(w),$=>s(w,$)),i(Ee,p)},$$slots:{default:!0}})}i(Je,je)};G(at,Je=>{(e(E)==="ollama"||e(E)==="openai"||e(E)==="azure_openai")&&Je(tt)})}i(ye,q)},$$slots:{default:!0}})}};G(te,H=>{e(m).BYPASS_EMBEDDING_AND_RETRIEVAL||H(ge)})}var _e=o(te,2);{let H=v(()=>t().t("Retrieval"));va(_e,{get title(){return e(H)},children:(pe,ye)=>{var he=Vo(),q=Qe(he);{var P=re=>{var le=Vo(),$e=Qe(le);{let at=v(()=>t().t("Full Context Mode")),tt=v(()=>e(m).RAG_FULL_CONTEXT?t().t("Inject entire documents as context for comprehensive processing."):t().t("Use segmented retrieval for focused context."));Jt($e,{get label(){return e(at)},get description(){return e(tt)},children:Ir,$$slots:{default:(Je,je)=>{const ne=v(()=>je.labelId);Nt(Je,{get ariaLabelledbyId(){return e(ne)},get state(){return e(m).RAG_FULL_CONTEXT},set state(J){We(m,e(m).RAG_FULL_CONTEXT=J)},$$legacy:!0})}}})}var ze=o($e,2);{var Fe=at=>{var tt=Xc(),Je=Qe(tt);{let Ge=v(()=>t().t("Hybrid Search")),p=v(()=>t().t("Combine semantic and keyword retrieval."));Jt(Je,{get label(){return e(Ge)},get description(){return e(p)},children:Ir,$$slots:{default:($,S)=>{const L=v(()=>S.labelId);Nt($,{get ariaLabelledbyId(){return e(L)},get state(){return e(m).ENABLE_RAG_HYBRID_SEARCH},set state(fe){We(m,e(m).ENABLE_RAG_HYBRID_SEARCH=fe)},$$legacy:!0})}}})}var je=o(Je,2);{var ne=Ge=>{var p=L_(),$=Qe(p);{let b=v(()=>t().t("Enrich Hybrid Search Text")),N=v(()=>t().t("Add filenames, titles, sections, and snippets to improve lexical recall."));Jt($,{get label(){return e(b)},get description(){return e(N)},children:Ir,$$slots:{default:(z,Ue)=>{const Ye=v(()=>Ue.labelId);Nt(z,{get ariaLabelledbyId(){return e(Ye)},get state(){return e(m).ENABLE_RAG_HYBRID_SEARCH_ENRICHED_TEXTS},set state(Ve){We(m,e(m).ENABLE_RAG_HYBRID_SEARCH_ENRICHED_TEXTS=Ve)},$$legacy:!0})}}})}var S=o($,2);{let b=v(()=>t().t("Reranking Engine")),N=v(()=>t().t("Provider used to rerank hybrid search results."));Jt(S,{get label(){return e(b)},get description(){return e(N)},children:(z,Ue)=>{{let Ye=v(()=>t().t("Select a reranking model engine"));aa(z,{get placeholder(){return e(Ye)},get value(){return e(m).RAG_RERANKING_ENGINE},set value(Ve){We(m,e(m).RAG_RERANKING_ENGINE=Ve)},$$events:{change:Ve=>{Ve.target.value==="external"?We(m,e(m).RAG_RERANKING_MODEL=""):Ve.target.value===""&&We(m,e(m).RAG_RERANKING_MODEL="BAAI/bge-reranker-v2-m3")}},children:(Ve,lt)=>{var st=gd(),Ke=Qe(st),Ze=a(Ke,!0);r(Ke),Ke.value=Ke.__value="";var ot=o(Ke,2),ut=a(ot,!0);r(ot),ot.value=ot.__value="external",g((_t,nt)=>{d(Ze,_t),d(ut,nt)},[()=>t().t("Default (SentenceTransformers)"),()=>t().t("External")]),i(Ve,st)},$$slots:{default:!0},$$legacy:!0})}},$$slots:{default:!0}})}var L=o(S,2);{var fe=b=>{var N=Ts(),z=a(N);{let Ye=v(()=>t().t("API Base URL")),Ve=v(()=>t().t("External reranker endpoint."));mt(z,{get label(){return e(Ye)},get description(){return e(Ve)},children:(lt,st)=>{var Ke=Ls();vt(Ke),k(Ke,1,me(ce)),g(Ze=>Be(Ke,"placeholder",Ze),[()=>t().t("API Base URL")]),dt(Ke,()=>e(m).RAG_EXTERNAL_RERANKER_URL,Ze=>We(m,e(m).RAG_EXTERNAL_RERANKER_URL=Ze)),i(lt,Ke)},$$slots:{default:!0}})}var Ue=o(z,2);{let Ye=v(()=>t().t("API Key")),Ve=v(()=>t().t("API key sent to the external reranker."));mt(Ue,{get label(){return e(Ye)},get description(){return e(Ve)},children:(lt,st)=>{{let Ke=v(()=>t().t("API Key"));Cr(lt,{variant:"settings",get placeholder(){return e(Ke)},required:!1,get value(){return e(m).RAG_EXTERNAL_RERANKER_API_KEY},set value(Ze){We(m,e(m).RAG_EXTERNAL_RERANKER_API_KEY=Ze)},$$legacy:!0})}},$$slots:{default:!0}})}r(N),i(b,N)};G(L,b=>{e(m).RAG_RERANKING_ENGINE==="external"&&b(fe)})}var y=o(L,2);{let b=v(()=>t().t("Reranking Model")),N=v(()=>t().t("Model used to rerank retrieved results."));mt(y,{get label(){return e(b)},get description(){return e(N)},children:(z,Ue)=>{var Ye=ml();vt(Ye),k(Ye,1,me(ce)),g(Ve=>Be(Ye,"placeholder",Ve),[()=>t().t("Set reranking model (e.g. {{model}})",{model:"BAAI/bge-reranker-v2-m3"})]),dt(Ye,()=>e(m).RAG_RERANKING_MODEL,Ve=>We(m,e(m).RAG_RERANKING_MODEL=Ve)),i(z,Ye)},$$slots:{default:!0}})}i(Ge,p)};G(je,Ge=>{e(m).ENABLE_RAG_HYBRID_SEARCH===!0&&Ge(ne)})}var J=o(je,2);{let Ge=v(()=>t().t("Reranking Batch Size")),p=v(()=>t().t("Number of results processed per reranking batch."));Jt(J,{get label(){return e(Ge)},get description(){return e(p)},children:($,S)=>{var L=t7();vt(L),dt(L,()=>e(m).RAG_RERANKING_BATCH_SIZE,fe=>We(m,e(m).RAG_RERANKING_BATCH_SIZE=fe)),i($,L)},$$slots:{default:!0}})}var W=o(J,2);{let Ge=v(()=>t().t("Top K")),p=v(()=>t().t("Maximum number of retrieved chunks returned to the model."));mt(W,{get label(){return e(Ge)},get description(){return e(p)},children:($,S)=>{var L=Dl();vt(L),k(L,1,me(ce)),g(fe=>Be(L,"placeholder",fe),[()=>t().t("Enter Top K")]),dt(L,()=>e(m).TOP_K,fe=>We(m,e(m).TOP_K=fe)),i($,L)},$$slots:{default:!0}})}var Z=o(W,2);{var Ee=Ge=>{var p=L_(),$=Qe(p);{let b=v(()=>t().t("Top K Reranker")),N=v(()=>t().t("Maximum number of hybrid results sent to the reranker."));mt($,{get label(){return e(b)},get description(){return e(N)},children:(z,Ue)=>{var Ye=Dl();vt(Ye),k(Ye,1,me(ce)),g(Ve=>Be(Ye,"placeholder",Ve),[()=>t().t("Enter Top K Reranker")]),dt(Ye,()=>e(m).TOP_K_RERANKER,Ve=>We(m,e(m).TOP_K_RERANKER=Ve)),i(z,Ye)},$$slots:{default:!0}})}var S=o($,2);{let b=v(()=>t().t("Relevance Threshold")),N=v(()=>t().t("Only return documents with a score greater than or equal to this value."));mt(S,{get label(){return e(b)},get description(){return e(N)},children:(z,Ue)=>{var Ye=r7();vt(Ye),k(Ye,1,me(ce)),g((Ve,lt)=>{Be(Ye,"placeholder",Ve),Be(Ye,"title",lt)},[()=>t().t("Enter Score"),()=>t().t("The score should be a value between 0.0 (0%) and 1.0 (100%).")]),dt(Ye,()=>e(m).RELEVANCE_THRESHOLD,Ve=>We(m,e(m).RELEVANCE_THRESHOLD=Ve)),i(z,Ye)},$$slots:{default:!0}})}var L=o(S,2);{let b=v(()=>t().t("BM25 Weight")),N=v(()=>t().t("Balance semantic and lexical weighting for hybrid search."));Jt(L,{get label(){return e(b)},get description(){return e(N)},children:(z,Ue)=>{var Ye=fd();k(Ye,1,me(De));var Ve=a(Ye,!0);r(Ye),g(lt=>d(Ve,lt),[()=>{var lt;return(((lt=e(m))==null?void 0:lt.HYBRID_BM25_WEIGHT)??null)===null?t().t("Default"):t().t("Custom")}]),ke("click",Ye,()=>{var lt;We(m,e(m).HYBRID_BM25_WEIGHT=(((lt=e(m))==null?void 0:lt.HYBRID_BM25_WEIGHT)??null)===null?.5:null)}),i(z,Ye)},$$slots:{default:!0}})}var fe=o(L,2);{var y=b=>{var N=a7(),z=a(N),Ue=a(z);vt(Ue);var Ye=o(Ue,2),Ve=a(Ye),lt=a(Ve,!0);r(Ve);var st=o(Ve,2),Ke=a(st,!0);r(st),r(Ye),r(z);var Ze=o(z,2);vt(Ze),r(N),g((ot,ut)=>{d(lt,ot),d(Ke,ut)},[()=>t().t("semantic"),()=>t().t("lexical")]),dt(Ue,()=>e(m).HYBRID_BM25_WEIGHT,ot=>We(m,e(m).HYBRID_BM25_WEIGHT=ot)),dt(Ze,()=>e(m).HYBRID_BM25_WEIGHT,ot=>We(m,e(m).HYBRID_BM25_WEIGHT=ot)),i(b,N)};G(fe,b=>{var N;(((N=e(m))==null?void 0:N.HYBRID_BM25_WEIGHT)??null)!==null&&b(y)})}i(Ge,p)};G(Z,Ge=>{e(m).ENABLE_RAG_HYBRID_SEARCH===!0&&Ge(Ee)})}i(at,tt)};G(ze,at=>{e(m).RAG_FULL_CONTEXT||at(Fe)})}i(re,le)};G(q,re=>{e(m).BYPASS_EMBEDDING_AND_RETRIEVAL||re(P)})}var Q=o(q,2);{let re=v(()=>t().t("RAG Template")),le=v(()=>t().t("Prompt template used when retrieved context is injected."));mt(Q,{get label(){return e(re)},get description(){return e(le)},children:($e,ze)=>{var Fe=Vo(),at=Qe(Fe);{let ne=v(()=>t().t("Leave empty to use the default prompt, or enter a custom prompt"));Lt(at,{get content(){return e(ne)},placement:"top-start",className:"w-full",children:(J,W)=>{{let Z=v(()=>t().t("Leave empty to use the default prompt, or enter a custom prompt"));ma(J,{className:Le,get placeholder(){return e(Z)},get value(){return e(m).RAG_TEMPLATE},set value(Ee){We(m,e(m).RAG_TEMPLATE=Ee)},$$legacy:!0})}},$$slots:{default:!0}})}var tt=o(at,2);{var Je=ne=>{var J=l7(),W=a(J,!0);r(J),g(Z=>d(W,Z),[()=>t().t("This template contains multiple context placeholders ([context] or {{CONTEXT}}). Context will be injected at each occurrence.")]),i(ne,J)},je=Qr(()=>e(m).RAG_TEMPLATE&&(e(m).RAG_TEMPLATE.match(/\[context\]/g)||[]).length+(e(m).RAG_TEMPLATE.match(/\{\{CONTEXT\}\}/g)||[]).length>1);G(tt,ne=>{e(je)&&ne(Je)})}i($e,Fe)},$$slots:{default:!0}})}i(pe,he)},$$slots:{default:!0}})}var Ae=o(_e,2);{let H=v(()=>t().t("Files"));va(Ae,{get title(){return e(H)},children:(pe,ye)=>{var he=s7(),q=Qe(he);{let Fe=v(()=>t().t("Allowed File Extensions")),at=v(()=>t().t("Comma-separated upload extensions. Leave empty for all file types."));mt(q,{get label(){return e(Fe)},get description(){return e(at)},children:(tt,Je)=>{var je=o7();vt(je),k(je,1,me(ce)),g(ne=>Be(je,"placeholder",ne),[()=>t().t("e.g. pdf, docx, txt")]),dt(je,()=>e(m).ALLOWED_FILE_EXTENSIONS,ne=>We(m,e(m).ALLOWED_FILE_EXTENSIONS=ne)),i(tt,je)},$$slots:{default:!0}})}var P=o(q,2),Q=a(P);{let Fe=v(()=>t().t("Max Upload Size")),at=v(()=>t().t("Maximum file size in MB. Leave empty for unlimited."));mt(Q,{get label(){return e(Fe)},get description(){return e(at)},children:(tt,Je)=>{var je=Dl();vt(je),k(je,1,me(ce)),g(ne=>Be(je,"placeholder",ne),[()=>t().t("Leave empty for unlimited")]),dt(je,()=>e(m).FILE_MAX_SIZE,ne=>We(m,e(m).FILE_MAX_SIZE=ne)),i(tt,je)},$$slots:{default:!0}})}var re=o(Q,2);{let Fe=v(()=>t().t("Max Upload Count")),at=v(()=>t().t("Maximum number of files that can be used at once in chat."));mt(re,{get label(){return e(Fe)},get description(){return e(at)},children:(tt,Je)=>{var je=Dl();vt(je),k(je,1,me(ce)),g(ne=>Be(je,"placeholder",ne),[()=>t().t("Leave empty for unlimited")]),dt(je,()=>e(m).FILE_MAX_COUNT,ne=>We(m,e(m).FILE_MAX_COUNT=ne)),i(tt,je)},$$slots:{default:!0}})}r(P);var le=o(P,2),$e=a(le);{let Fe=v(()=>t().t("Image Compression Width")),at=v(()=>t().t("Width in pixels to compress images to. Leave empty for no compression."));mt($e,{get label(){return e(Fe)},get description(){return e(at)},children:(tt,Je)=>{var je=Dl();vt(je),k(je,1,me(ce)),g(ne=>Be(je,"placeholder",ne),[()=>t().t("Leave empty for no compression")]),dt(je,()=>e(m).FILE_IMAGE_COMPRESSION_WIDTH,ne=>We(m,e(m).FILE_IMAGE_COMPRESSION_WIDTH=ne)),i(tt,je)},$$slots:{default:!0}})}var ze=o($e,2);{let Fe=v(()=>t().t("Image Compression Height")),at=v(()=>t().t("Height in pixels to compress images to. Leave empty for no compression."));mt(ze,{get label(){return e(Fe)},get description(){return e(at)},children:(tt,Je)=>{var je=Dl();vt(je),k(je,1,me(ce)),g(ne=>Be(je,"placeholder",ne),[()=>t().t("Leave empty for no compression")]),dt(je,()=>e(m).FILE_IMAGE_COMPRESSION_HEIGHT,ne=>We(m,e(m).FILE_IMAGE_COMPRESSION_HEIGHT=ne)),i(tt,je)},$$slots:{default:!0}})}r(le),i(pe,he)},$$slots:{default:!0}})}var U=o(Ae,2);{let H=v(()=>t().t("Integration"));va(U,{get title(){return e(H)},children:(pe,ye)=>{var he=Vo(),q=Qe(he);{let Q=v(()=>t().t("Google Drive")),re=v(()=>t().t("Allow Google Drive as a document source."));Jt(q,{get label(){return e(Q)},get description(){return e(re)},children:Ir,$$slots:{default:(le,$e)=>{const ze=v(()=>$e.labelId);Nt(le,{get ariaLabelledbyId(){return e(ze)},get state(){return e(m).ENABLE_GOOGLE_DRIVE_INTEGRATION},set state(Fe){We(m,e(m).ENABLE_GOOGLE_DRIVE_INTEGRATION=Fe)},$$legacy:!0})}}})}var P=o(q,2);{let Q=v(()=>t().t("OneDrive")),re=v(()=>t().t("Allow OneDrive as a document source."));Jt(P,{get label(){return e(Q)},get description(){return e(re)},children:Ir,$$slots:{default:(le,$e)=>{const ze=v(()=>$e.labelId);Nt(le,{get ariaLabelledbyId(){return e(ze)},get state(){return e(m).ENABLE_ONEDRIVE_INTEGRATION},set state(Fe){We(m,e(m).ENABLE_ONEDRIVE_INTEGRATION=Fe)},$$legacy:!0})}}})}i(pe,he)},$$slots:{default:!0}})}var T=o(U,2);{let H=v(()=>t().t("Danger Zone"));va(T,{get title(){return e(H)},children:(pe,ye)=>{var he=n7(),q=Qe(he);{let re=v(()=>t().t("Reset Upload Directory")),le=v(()=>t().t("Delete uploaded files from the upload directory."));Jt(q,{get label(){return e(re)},get description(){return e(le)},children:($e,ze)=>{var Fe=fd();k(Fe,1,me(De));var at=a(Fe,!0);r(Fe),g(tt=>d(at,tt),[()=>t().t("Reset")]),ke("click",Fe,()=>{s(c,!0)}),i($e,Fe)},$$slots:{default:!0}})}var P=o(q,2);{let re=v(()=>t().t("Reset Vector Storage/Knowledge")),le=v(()=>t().t("Clear vector storage and knowledge indexing data."));Jt(P,{get label(){return e(re)},get description(){return e(le)},children:($e,ze)=>{var Fe=fd();k(Fe,1,me(De));var at=a(Fe,!0);r(Fe),g(tt=>d(at,tt),[()=>t().t("Reset")]),ke("click",Fe,()=>{s(I,!0)}),i($e,Fe)},$$slots:{default:!0}})}var Q=o(P,2);{let re=v(()=>t().t("Reindex Knowledge and Memory Vectors")),le=v(()=>t().t("Rebuild vectors for existing knowledge files, knowledge search, and memories."));Jt(Q,{get label(){return e(re)},get description(){return e(le)},children:($e,ze)=>{var Fe=fd();k(Fe,1,me(De));var at=a(Fe,!0);r(Fe),g(tt=>d(at,tt),[()=>
80t().t("Reindex")]),ke("click",Fe,()=>{s(x,!0)}),i($e,Fe)},$$slots:{default:!0}})}i(pe,he)},$$slots:{default:!0}})}r(M);var C=o(M,2),D=a(C),F=a(D,!0);r(D),r(C),g(H=>d(F,H),[()=>t().t("Save")]),i(O,ie)},Oe=O=>{var ie=d7(),M=a(ie);ra(M,{className:"size-5"}),r(ie),i(O,ie)};G(xe,O=>{e(m)?O(K):O(Oe,-1)})}r(qe),g(O=>d(ue,O),[()=>t().t("Documents")]),ke("submit",qe,ca(()=>{Ce()})),i(He,oe),cr(),n()}var u7=u("<option>DDGS</option>"),g7=u("<option>SERPHouse</option>"),O_=u("<option> </option>"),_7=u('<option disabled="" selected=""> </option> <!>',1),M_=u('<div class="mb-2.5 flex w-full flex-col"><div><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <div class="flex w-full"><div class="flex-1"><!></div></div></div></div>'),f7=u('<div class="mb-2.5 flex w-full flex-col"><div><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <div class="flex w-full"><div class="flex-1"><input class="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500" type="text" autocomplete="off"/></div></div></div></div> <div class="mb-2.5 flex w-full flex-col"><div><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <div class="flex w-full"><div class="flex-1"><!></div></div></div></div>',1),p7=u('<div class="mb-2.5 flex w-full flex-col"><div><div class=" self-left text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <div class="flex w-full"><div class="flex-1"><input class="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500" type="text" autocomplete="off" required=""/></div></div></div> <div class="mb-2.5 flex w-full flex-col"><div class=" self-left text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <div class="flex w-full"><div class="flex-1"><input class="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500" type="text" autocomplete="off" required=""/></div></div></div></div>'),m7=u('<div class="mb-2.5 flex w-full flex-col"><div><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <div class="flex w-full"><div class="flex-1"><input class="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500" type="text" autocomplete="off"/></div></div></div></div> <div class="mb-2.5 flex w-full flex-col"><div class="flex gap-2"><div class="w-full"><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <input class="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500" required=""/></div> <div class="w-full"><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <!></div></div></div>',1),Jc=u('<div class="mb-2.5 flex w-full flex-col"><div><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <!></div> <div class="mt-1.5"><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <div class="flex w-full"><div class="flex-1"><input class="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500" type="text" autocomplete="off"/></div></div></div></div>'),Sl=u('<div class="mb-2.5 flex w-full flex-col"><div>
80<div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <!></div></div>'),h7=u('<div class="mb-2.5 flex w-full flex-col"><div><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <!></div> <div class="mt-1.5"><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <div class="flex w-full"><div class="flex-1"><input class="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500" type="number" min="1024" max="32768" step="1024" autocomplete="off"/></div></div></div></div>'),x7=u('<div class="mb-2.5 flex w-full flex-col"><div><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <!></div> <div class="mt-1.5"><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <div class="flex w-full"><div class="flex-1"><input class="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500" type="text" placeholder="google.com" autocomplete="off"/></div></div></div></div>'),Os=u('<div class="mb-2.5 flex w-full flex-col"><div><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <div class="flex w-full"><div class="flex-1"><input class="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500" type="text" autocomplete="off"/></div></div></div> <div class="mt-2"><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <!></div></div>'),b7=u("<option> </option> <option> </option> <option> </option>",1),y7=u('<div class="mb-2.5 flex w-full flex-col"><div><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <!></div></div> <div class="mb-2.5 flex w-full flex-col"><div><div class="self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <input list="perplexity-model-list" class="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500"/> <datalist id="perplexity-model-list"><option> </option><option> </option><option> </option><option> </option><option> </option></datalist></div></div> <div class="mb-2.5 flex w-full flex-col"><div><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <!></div></div>',1),$7=u('<div class="mb-2.5 flex w-full flex-col"><div><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <div class="flex w-full"><div class="flex-1"><input class="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500" type="text" autocomplete="off"/></div></div></div> <div class="mt-2"><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <!></div> <div class="mt-2"><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <input class="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500" type="text" autocomplete="off"/></div></div>'),w7=u('<div class="mb-2.5 flex w-full flex-col"><div><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <!></div></div> <div class="mb-2.5 flex w-full flex-col"><div><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <!></div></div>',1),k7=u('<div class="mb-2.5 flex w-full flex-col"><div>
80<div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <div class="flex w-full"><div class="flex-1"><input class="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500" type="text" autocomplete="off"/></div></div></div> <div class="mt-2"><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <!></div> <div class="mt-2"><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <div class="flex w-full"><div class="flex-1"><input class="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500" type="number" autocomplete="off"/></div></div></div></div>'),E7=u('<div class="mb-2.5 flex w-full flex-col"><div><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <div class="flex w-full"><div class="flex-1"><input class="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500" type="text" autocomplete="off"/></div></div></div> <div class="mt-2"><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <!></div> <div class="mb-2.5"><div class=" mb-1 text-xs text-gray-600 dark:text-gray-400"> </div> <!></div></div>'),A7=u('<div class="mb-2.5 flex w-full flex-col"><div><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <!></div> <div class="mt-2"><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <!></div></div>'),I7=u('<div class="mb-2.5 flex w-full flex-col"><div><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <div class="flex-1"><input class="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500" type="text" autocomplete="off" required=""/></div></div></div>'),S7=u("<option> </option> <option> </option> <option> </option> <option> </option> <option> </option> <option> </option> <option> </option> <option> </option> <option> </option> <option> </option>",1),Zc=u("<!> <!>",1),N7=u('<div class="flex gap-2"><div class="w-full"><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <input class="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500" required=""/></div> <div class="w-full"><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"><!></div> <input class="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500" type="number" min="0"/></div></div>'),P7=u('<input type="number" min="0"/>'),R_=u("<input/>"),C7=u("<!> <!> <!>",1),T7=u("<!> <!> <!> <!> <!> <!> <!> <!> <!>",1),L7=u("<option> </option> <!>",1),O7=u('<div class="mb-2.5 flex w-full flex-col"><div><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <div class="flex w-full"><div class="flex-1"><input class="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500" type="text" autocomplete="off"/></div></div></div> <div class="mt-2">
80<div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <div class="flex w-full"><div class="flex-1"><input class="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500" autocomplete="off"/></div></div></div></div>'),M7=u('<div class="mt-2"><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <!></div>'),R7=u('<div class="mb-2.5 flex w-full flex-col"><div><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <div class="flex w-full"><div class="flex-1"><input class="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500" type="text" autocomplete="off"/></div></div></div> <!></div>'),D7=u('<div><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <div class="flex w-full"><div class="flex-1"><input class="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500" type="text" autocomplete="off"/></div></div></div> <div class="mt-2"><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <!></div> <div class="mt-2"><div class=" self-center text-xs text-gray-600 dark:text-gray-400 mb-1"> </div> <input class="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:focus:border-blue-500" type="text" autocomplete="off"/></div>',1),U7=u('<div class="mb-2.5 flex w-full flex-col"><!></div>'),B7=u('<input required=""/>'),D_=u('<input type="text" autocomplete="off"/>'),G7=u("<!> <!> <!> <!> <!>",1),j7=u('<form class="flex h-full flex-col justify-between text-sm"><h2 class="text-sm font-medium text-gray-900 dark:text-white mb-4"> </h2> <div class="flex-1 min-h-0 overflow-y-auto scrollbar-hover pr-1.5"><!></div> <div class="flex justify-end pt-6 text-sm font-normal"><button class="px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full" type="submit"> </button></div></form>');function H7(He,_){vr(_,!1);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr(),Ie=mr("i18n");let X=Xe(_,"saveHandler",8),R=["ollama_cloud","perplexity_search","searxng","yacy","google_pse","brave","brave_llm_context","kagi","mojeek","bocha","serpstack","serper","serphouse","serply","searchapi","serpapi","duckduckgo","tavily","jina","bing","exa","perplexity","microsoft_web_iq","sougou","firecrawl","external","yandex","youcom","linkup","openserp"],I=["playwright","firecrawl","tavily","microsoft_web_iq","external"],c=h(null);const x="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500",A="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500",E=async()=>{typeof e(c).WEB_SEARCH_DOMAIN_FILTER_LIST=="string"&&e(c).WEB_SEARCH_DOMAIN_FILTER_LIST?We(c,e(c).WEB_SEARCH_DOMAIN_FILTER_LIST=e(c).WEB_SEARCH_DOMAIN_FILTER_LIST.split(",").map(se=>se.trim()).filter(se=>se.length>0)):Array.isArray(e(c).WEB_SEARCH_DOMAIN_FILTER_LIST)||We(c,e(c).WEB_SEARCH_DOMAIN_FILTER_LIST=[]),typeof e(c).YOUTUBE_LOADER_LANGUAGE=="string"&&e(c).YOUTUBE_LOADER_LANGUAGE?We(c,e(c).YOUTUBE_LOADER_LANGUAGE=e(c).YOUTUBE_LOADER_LANGUAGE.split(",").map(se=>se.trim()).filter(se=>se.length>0)):Array.isArray(e(c).YOUTUBE_LOADER_LANGUAGE)||We(c,e(c).YOUTUBE_LOADER_LANGUAGE=[]),typeof e(c).FIRECRAWL_TIMEOUT=="number"&&We(c,e(c).FIRECRAWL_TIMEOUT=e(c).FIRECRAWL_TIMEOUT.toString()),typeof e(c).PLAYWRIGHT_TIMEOUT=="number"&&We(c,e(c).PLAYWRIGHT_TIMEOUT=e(c).PLAYWRIGHT_TIMEOUT.toString());const Pe=typeof e(c).LINKUP_SEARCH_PARAMS=="string"&&e(c).LINKUP_SEARCH_PARAMS.trim()!==""?JSON.parse(e(c).LINKUP_SEARCH_PARAMS):e(c).LINKUP_SEARCH_PARAMS??{};await Df(localStorage.token,{web:{...e(c),LINKUP_SEARCH_PARAMS:Pe}}
80),Array.isArray(e(c).WEB_SEARCH_DOMAIN_FILTER_LIST)&&We(c,e(c).WEB_SEARCH_DOMAIN_FILTER_LIST=e(c).WEB_SEARCH_DOMAIN_FILTER_LIST.join(",")),Array.isArray(e(c).YOUTUBE_LOADER_LANGUAGE)&&We(c,e(c).YOUTUBE_LOADER_LANGUAGE=e(c).YOUTUBE_LOADER_LANGUAGE.join(","))};ea(async()=>{var se,m;const Pe=await Rf(localStorage.token);if(Pe){if(s(c,Pe.web),Array.isArray((se=e(c))==null?void 0:se.WEB_SEARCH_DOMAIN_FILTER_LIST)?We(c,e(c).WEB_SEARCH_DOMAIN_FILTER_LIST=e(c).WEB_SEARCH_DOMAIN_FILTER_LIST.join(",")):e(c).WEB_SEARCH_DOMAIN_FILTER_LIST||We(c,e(c).WEB_SEARCH_DOMAIN_FILTER_LIST=""),Array.isArray((m=e(c))==null?void 0:m.YOUTUBE_LOADER_LANGUAGE)?We(c,e(c).YOUTUBE_LOADER_LANGUAGE=e(c).YOUTUBE_LOADER_LANGUAGE.join(",")):e(c).YOUTUBE_LOADER_LANGUAGE||We(c,e(c).YOUTUBE_LOADER_LANGUAGE=""),e(c).FIRECRAWL_TIMEOUT&&typeof e(c).FIRECRAWL_TIMEOUT=="string"){const ce=parseInt(e(c).FIRECRAWL_TIMEOUT);isNaN(ce)||We(c,e(c).FIRECRAWL_TIMEOUT=ce)}if(e(c).PLAYWRIGHT_TIMEOUT&&typeof e(c).PLAYWRIGHT_TIMEOUT=="string"){const ce=parseInt(e(c).PLAYWRIGHT_TIMEOUT);isNaN(ce)||We(c,e(c).PLAYWRIGHT_TIMEOUT=ce)}We(c,e(c).LINKUP_SEARCH_PARAMS=typeof e(c).LINKUP_SEARCH_PARAMS=="object"?JSON.stringify(e(c).LINKUP_SEARCH_PARAMS??{},null,2):e(c).LINKUP_SEARCH_PARAMS??"")}}),gr();var V=j7(),B=a(V),j=a(B,!0);r(B);var w=o(B,2),Te=a(w);{var Se=Pe=>{var se=Zc(),m=Qe(se);{let De=v(()=>(t(),l(()=>t().t("Search"))));va(m,{first:!0,get title(){return e(De)},children:(Le,Ne)=>{var Ce=T7(),we=Qe(Ce);{let ie=v(()=>(t(),l(()=>t().t("Web Search")))),M=v(()=>(t(),l(()=>t().t("Allow users to search the web from chats."))));Jt(we,{get label(){return e(ie)},get description(){return e(M)},children:Ir,$$slots:{default:(ve,te)=>{const ge=v(()=>te.labelId);Nt(ve,{get ariaLabelledbyId(){return e(ge)},get state(){return e(c).ENABLE_WEB_SEARCH},set state(_e){We(c,e(c).ENABLE_WEB_SEARCH=_e)},$$legacy:!0})}}})}var oe=o(we,2);{let ie=v(()=>(t(),l(()=>t().t("Web Search Confirmation")))),M=v(()=>(t(),l(()=>t().t("Require users to confirm before using Web Search."))));Jt(oe,{get label(){return e(ie)},get description(){return e(M)},children:Ir,$$slots:{default:(ve,te)=>{const ge=v(()=>te.labelId);Nt(ve,{get ariaLabelledbyId(){return e(ge)},get state(){return e(c).ENABLE_WEB_SEARCH_CONFIRMATION},set state(_e){We(c,e(c).ENABLE_WEB_SEARCH_CONFIRMATION=_e)},$$legacy:!0})}}})}var de=o(oe,2);{var be=ie=>{{let M=v(()=>(t(),l(()=>t().t("Web Search Confirmation Content")))),ve=v(()=>(t(),l(()=>t().t("Message shown before web search runs."))));mt(ie,{get label(){return e(M)},get description(){return e(ve)},children:(te,ge)=>{{let _e=v(()=>(t(),l(()=>t().t("Your query will be sent to the configured web search provider."))));ma(te,{className:A,get placeholder(){return e(_e)},get value(){return e(c).WEB_SEARCH_CONFIRMATION_CONTENT},set value(Ae){We(c,e(c).WEB_SEARCH_CONFIRMATION_CONTENT=Ae)},$$legacy:!0})}},$$slots:{default:!0}})}};G(de,ie=>{e(c),l(()=>e(c).ENABLE_WEB_SEARCH_CONFIRMATION)&&ie(be)})}var Me=o(de,2);{let ie=v(()=>(t(),l(()=>t().t("Web Search Engine")))),M=v(()=>(t(),l(()=>t().t("Choose the provider used for web search queries."))));Jt(Me,{get label(){return e(ie)},get description(){return e(M)},children:(ve,te)=>{{let ge=v(()=>(t(),l(()=>t().t("Select a engine"))));aa(ve,{get placeholder(){return e(ge)},required:!0,get value(){return e(c).WEB_SEARCH_ENGINE},set value(_e){We(c,e(c).WEB_SEARCH_ENGINE=_e)},children:(_e,Ae)=>{var U=_7(),T=Qe(U),C=a(T,!0);r(T),T.value=T.__value="";var D=o(T,2);lr(D,1,()=>R,Ar,(F,H)=>{var pe=Wr(),ye=Qe(pe);{var he=Q=>{var re=u7(),le={};g(()=>{le!==(le=e(H))&&(re.value=(re.__value=e(H))??"")}),i(Q,re)},q=Q=>{var re=g7(),le={};g(()=>{le!==(le=e(H))&&(re.value=(re.__value=e(H))??"")}),i(Q,re)},P=Q=>{var re=O_(),le=a(re,!0);r(re);var $e={};g(()=>{d(le,e(H)),$e!==($e=e(H))&&(re.value=(re.__value=e(H))??"")}),i(Q,re)};G(ye,Q=>{e(H)==="duckduckgo"||e(H)==="ddgs"?Q(he):e(H)==="serphouse"?Q(q,1):Q(P,-1)})}i(F,pe)}),g(F=>d(C,F),[()=>(t(),l(()=>t().t("Select a engine")))]),i(_e,U)},$$slots:{default:!0},$$legacy:!0})}},$$slots:{default:!0}})}var qe=o(Me,2);{var Re=ie=>{var M=Zc(),ve=Qe(M);{var te=p=>{var $=M_(),S=a($),L=a(S),fe=a(L,!0);r(L);var y=o(L,2),b=a(y),N=a(b);{let z=v(()=>(t(),l(()=>t().t("Enter Ollama Cloud API Key"))));Cr(N,{variant:"settings",get placeholder(){return e(z)},get value(){return e(c).OLLAMA_CLOUD_WEB_SEARCH_API_KEY},set value(Ue){We(c,e(c).OLLAMA_CLOUD_WEB_SEARCH_API_KEY=Ue)},$$legacy:!0})}r(b),r(y),r(S),r($),g(z=>d(fe,z),[()=>(t(),l(()=>t().t("Ollama Cloud API Key")))]),i(p,$)},ge=p=>{var $=f7(),S=Qe($),L=a(S),fe=a(L),y=a(fe,!0);r(fe);var b=o(fe,2),N=a(b),z=a(N);vt(z),r(N),r(b),r(L),r(S);var Ue=o(S,2),Ye=a(Ue),Ve=a(Ye),lt=a(Ve,!0);r(Ve);var st=o(Ve,2),Ke=a(st),Ze=a(Ke);{let ot=v(()=>(t(),l(()=>t().t("Enter Perplexity API Key"))));Cr(Ze,{variant:"settings",get placeholder(){return e(ot)},get value(){return e(c).PERPLEXITY_API_KEY},set value(ut){We(c,e(c).PERPLEXITY_API_KEY=ut)},$$legacy:!0})}r(Ke),r(st),r(Ye),r(Ue),g((ot,ut,_t)=>{d(y,ot),Be(z,"placeholder",ut),d(lt,_t)},[()=>(t(),l(()=>t().t("Perplexity Search API URL"))),()=>(t(),l(()=>t().t("Enter Perplexity Search API URL"))),()=>(t(),l(()=>t().t("Perplexity API Key")))]),dt(z,()=>e(c).PERPLEXITY_SEARCH_API_URL,ot=>We(c,e(c).PERPLEXITY_SEARCH_API_URL=ot)),i(p,$)},_e=p=>{var $=p7(),S=a($),L=a(S),fe=a(L,!0);r(L);var y=o(L,2),b=a(y),N=a(b);vt(N),r(b),r(y),r(S);var z=o(S,2),Ue=a(z),Ye=a(Ue,!0);r(Ue);var Ve=o(Ue,2),lt=a(Ve),st=a(lt);vt(st),r(lt),r(Ve),r(z),r($),g((Ke,Ze,ot,ut)=>{d(fe,Ke),Be(N,"placeholder",Ze),d(Ye,ot),Be(st,"placeholder",ut)},[()=>(t(),l(()=>t().t("Searxng Query URL"))),()=>(t(),l(()=>t().t("Enter Searxng Query URL"))),()=>(t(),l(()=>t().t("Searxng search language (all, en, es, de, fr, etc.)"))),()=>(t(),l(()=>t().t("Enter Searxng search language")))]),dt(N,()=>e(c).SEARXNG_QUERY_URL,Ke=>We(c,e(c).SEARXNG_QUERY_URL=Ke)),dt(st,()=>e(c).SEARXNG_LANGUAGE,Ke=>We(c,e(c).SEARXNG_LANGUAGE=Ke)),i(p,$)},Ae=p=>{var $=m7(),S=Qe($),L=a(S),fe=a(L),y=a(fe,!0);r(fe);var b=o(fe,2),N=a(b),z=a(N);vt(z),r(N),r(b),r(L),r(S);var Ue=o(S,2),Ye=a(Ue),Ve=a(Ye),lt=a(Ve),st=a(lt,!0);r(lt);var Ke=o(lt,2);vt(Ke),r(Ve);var Ze=o(Ve,2),ot=a(Ze),ut=a(ot,!0);r(ot);var _t=o(ot,2);{let nt=v(()=>(t(),l(()=>t().t("Enter Yacy Password"))));Cr(_t,{variant:"settings",get placeholder(){return e(nt)},get value(){return e(c).YACY_PASSWORD},set value(et){We(c,e(c).YACY_PASSWORD=et)},$$legacy:!0})}r(Ze),r(Ye),r(Ue),g((nt,et,gt,It,Mt)=>{d(y,nt),Be(z,"placeholder",et),d(st,gt),Be(Ke,"placeholder",It),d(ut,Mt)},[()=>(t(),l(()=>t().t("Yacy Instance URL"))),()=>(t(),l(()=>t().t("Enter Yacy URL (e.g. http://yacy.example.com:8090)"))),()=>(t(),l(()=>t().t("Yacy Username"))),()=>(t(),l(()=>t().t("Enter Yacy Username"))),()=>(t(),l(()=>t().t("Yacy Password")))]),dt(z,()=>e(c).YACY_QUERY_URL,nt=>We(c,e(c).YACY_QUERY_URL=nt)),dt(Ke,()=>e(c).YACY_USERNAME,nt=>We(c,e(c).YACY_USERNAME=nt)),i(p,$)},U=p=>{var $=Jc(),S=a($),L=a(S),fe=a(L,!0);r(L);var y=o(L,2);{let lt=v(()=>(t(),l(()=>t().t("Enter Google PSE API Key"))));Cr(y,{variant:"settings",get placeholder(){return e(lt)},get value(){return e(c).GOOGLE_PSE_API_KEY},set value(st){We(c,e(c).GOOGLE_PSE_API_KEY=st)},$$legacy:!0})}r(S);var b=o(S,2),N=a(b),z=a(N,!0);r(N);var Ue=o(N,2),Ye=a(Ue),Ve=a(Ye);vt(Ve),r(Ye),r(Ue),r(b),r($),g((lt,st,Ke)=>{d(fe,lt),d(z,st),Be(Ve,"placeholder",Ke)},[()=>(t(),l(()=>t().t("Google PSE API Key"))),()=>(t(),l(()=>t().t("Google PSE Engine Id"))),()=>(t(),l(()=>t().t("Enter Google PSE Engine Id")))]),dt(Ve,()=>e(c).GOOGLE_PSE_ENGINE_ID,lt=>We(c,e(c).GOOGLE_PSE_ENGINE_ID=lt)),i(p,$)},T=p=>{var $=Sl(),S=a($),L=a(S),fe=a(L,!0);r(L);var y=o(L,2);{let b=v(()=>(t(),l(()=>t().t("Enter Brave Search API Key"))));Cr(y,{variant:"settings",get placeholder(){return e(b)},get value(){return e(c).BRAVE_SEARCH_API_KEY},set value(N){We(c,e(c).BRAVE_SEARCH_API_KEY=N)},$$legacy:!0})}r(S),r($),g(b=>d(fe,b),[()=>(t(),l(()=>t().t("Brave Search API Key")))]),i(p,$)},C=p=>{var $=h7(),S=a($),L=a(S),fe=a(L,!0);r(L);var y=o(L,2);{let lt=v(()=>(t(),l(()=>t().t("Enter Brave Search API Key"))));Cr(y,{variant:"settings",get placeholder(){return e(lt)},get value(){return e(c).BRAVE_SEARCH_API_KEY},set value(st){We(c,e(c).BRAVE_SEARCH_API_KEY=st)},$$legacy:!0})}r(S);var b=o(S,2),N=a(b),z=a(N,!0);r(N);var Ue=o(N,2),Ye=a(Ue),Ve=a(Ye);vt(Ve),r(Ye),r(Ue),r(b),r($),g((lt,st,Ke)=>{d(fe,lt),d(z,st),Be(Ve,"placeholder",Ke)},[()=>(t(),l(()=>t().t("Brave Search API Key"))),()=>(t(),l(()=>t().t("Context Tokens"))),()=>(t(),l(()=>t().t("Max tokens to retrieve (1024-32768, default 8192)")))]),dt(Ve,()=>e(c).BRAVE_SEARCH_CONTEXT_TOKENS,lt=>We(c,e(c).BRAVE_SEARCH_CONTEXT_TOKENS=lt)),i(p,$)},D=p=>{var $=Sl(),S=a($),L=a(S),fe=a(L,!0);r(L);var y=o(L,2);{let b=v(()=>(t(),l(()=>t().t("Enter Kagi Search API Key"))));Cr(y,{variant:"settings",get placeholder(){return e(b)},get value(){return e(c).KAGI_SEARCH_API_KEY},set value(N){We(c,e(c).KAGI_SEARCH_API_KEY=N)},$$legacy:!0})}r(S),r($),g(b=>d(fe,b),[()=>(t(),l(()=>t().t("Kagi Search API Key")))]),i(p,$)},F=p=>{var $=Sl(),S=a($),L=a(S),fe=a(L,!0);r(L);var y=o(L,2);{let b=v(()=>(t(),l(()=>t().t("Enter Mojeek Search API Key"))));Cr(y,{variant:"settings",get placeholder(){return e(b)},get value(){return e(c).MOJEEK_SEARCH_API_KEY},set value(N){We(c,e(c).MOJEEK_SEARCH_API_KEY=N)},$$legacy:!0})}r(S),r($),g(b=>d(fe,b),[()=>(t(),l(()=>t().t("Mojeek Search API Key")))]),i(p,$)},H=p=>{var $=Sl(),S=a($),L=a(S),fe=a(L,!0);r(L);var y=o(L,2);{let b=v(()=>(t(),l(()=>t().t("Enter Bocha Search API Key"))));Cr(y,{variant:"settings",get placeholder(){return e(b)},get value(){return e(c).BOCHA_SEARCH_API_KEY},set value(N){We(c,e(c).BOCHA_SEARCH_API_KEY=N)},$$legacy:!0})}r(S),r($),g(b=>d(fe,b),[()=>(t(),l(()=>t().t("Bocha Search API Key")))]),i(p,$)},pe=p=>{var $=Sl(),S=a($),L=a(S),fe=a(L,!0);r(L);var y=o(L,2);{let b=v(()=>(t(),l(()=>t().t("Enter Serpstack API Key"))));Cr(y,{variant:"settings",get placeholder(){return e(b)},get value(){return e(c).SERPSTACK_API_KEY},set value(N){We(c,e(c).SERPSTACK_API_KEY=N)},$$legacy:!0})}r(S),r($),g(b=>d(fe,b),[()=>(t(),l(()=>t().t("Serpstack API Key")))]),i(p,$)},ye=p=>{var $=Sl(),S=a($),L=a(S),fe=a(L,!0);r(L);var y=o(L,2);{let b=v(()=>(t(),l(()=>t().t("Enter Serper API Key"))));Cr(y,{variant:"settings",get placeholder(){return e(b)},get value(){return e(c).SERPER_API_KEY},set value(N){We(c,e(c).SERPER_API_KEY=N)},$$legacy:!0})}r(S),r($),g(b=>d(fe,b),[()=>(t(),l(()=>t().t("Serper API Key")))]),i(p,$)},he=p=>{var $=x7(),S=a($),L=a(S),fe=a(L,!0);r(L);var y=o(L,2);{let lt=v(()=>(t(),l(()=>t().t("Enter SERPHouse API Key"))));Cr(y,{variant:"settings",get placeholder(){return e(lt)},get value(){return e(c).SERPHOUSE_API_KEY},set value(st){We(c,e(c).SERPHOUSE_API_KEY=st)},$$legacy:!0})}r(S);var b=o(S,2),N=a(b),z=a(N,!0);r(N);var Ue=o(N,2),Ye=a(Ue),Ve=a(Ye);vt(Ve),r(Ye),r(Ue),r(b),r($),g((lt,st)=>{d(fe,lt),d(z,st)},[()=>(t(),l(()=>t().t("SERPHouse API Key"))),()=>(t(),l(()=>t().t("SERPHouse Domain")))]),dt(Ve,()=>e(c).SERPHOUSE_DOMAIN,lt=>We(c,e(c).SERPHOUSE_DOMAIN=lt)),i(p,$)},q=p=>{var $=Sl(),S=a($),L=a(S),fe=a(L,!0);r(L);var y=o(L,2);{let b=v(()=>(t(),l(()=>t().t("Enter Serply API Key"))));Cr(y,{variant:"settings",get placeholder(){return e(b)},get value(){return e(c).SERPLY_API_KEY},set value(N){We(c,e(c).SERPLY_API_KEY=N)},$$legacy:!0})}r(S),r($),g(b=>d(fe,b),[()=>(t(),l(()=>t().t("Serply API Key")))]),i(p,$)},P=p=>{var $=Sl(),S=a($),L=a(S),fe=a(L,!0);r(L);var y=o(L,2);{let b=v(()=>(t(),l(()=>t().t("Enter Tavily API Key"))));Cr(y,{variant:"settings",get placeholder(){return e(b)},get value(){return e(c).TAVILY_API_KEY},set value(N){We(c,e(c).TAVILY_API_KEY=N)},$$legacy:!0})}r(S),r($),g(b=>d(fe,b),[()=>(t(),l(()=>t().t("Tavily API Key")))]),i(p,$)},Q=p=>{var $=Jc(),S=a($),L=a(S),fe=a(L,!0);r(L);var y=o(L,2);{let lt=v(()=>(t(),l(()=>t().t("Enter SearchApi API Key"))));Cr(y,{variant:"settings",get placeholder(){return e(lt)},get value(){return e(c).SEARCHAPI_API_KEY},set value(st){We(c,e(c).SEARCHAPI_API_KEY=st)},$$legacy:!0})}r(S);var b=o(S,2),N=a(b),z=a(N,!0);r(N);var Ue=o(N,2),Ye=a(Ue),Ve=a(Ye);vt(Ve),r(Ye),r(Ue),r(b),r($),g((lt,st,Ke)=>{d(fe,lt),d(z,st),Be(Ve,"placeholder",Ke)},[()=>(t(),l(()=>t().t("SearchApi API Key"))),()=>(t(),l(()=>t().t("SearchApi Engine"))),()=>(t(),l(()=>t().t("Enter SearchApi Engine")))]),dt(Ve,()=>e(c).SEARCHAPI_ENGINE,lt=>We(c,e(c).SEARCHAPI_ENGINE=lt)),i(p,$)},re=p=>{var $=Jc(),S=a($),L=a(S),fe=a(L,!0);r(L);var y=o(L,2);{let lt=v(()=>(t(),l(()=>t().t("Enter SerpApi API Key"))));Cr(y,{variant:"settings",get placeholder(){return e(lt)},get value(){return e(c).SERPAPI_API_KEY},set value(st){We(c,e(c).SERPAPI_API_KEY=st)},$$legacy:!0})}r(S);var b=o(S,2),N=a(b),z=a(N,!0);r(N);var Ue=o(N,2),Ye=a(Ue),Ve=a(Ye);vt(Ve),r(Ye),r(Ue),r(b),r($),g((lt,st,Ke)=>{d(fe,lt),d(z,st),Be(Ve,"placeholder",Ke)},[()=>(t(),l(()=>t().t("SerpApi API Key"))),()=>(t(),l(()=>t().t("SerpApi Engine"))),()=>(t(),l(()=>t().t("Enter SerpApi Engine")))]),dt(Ve,()=>e(c).SERPAPI_ENGINE,lt=>We(c,e(c).SERPAPI_ENGINE=lt)),i(p,$)},le=p=>{var $=Os(),S=a($),L=a(S),fe=a(L,!0);r(L);var y=o(L,2),b=a(y),N=a(b);vt(N),r(b),r(y),r(S);var z=o(S,2),Ue=a(z),Ye=a(Ue,!0);r(Ue);var Ve=o(Ue,2);{let lt=v(()=>(t(),l(()=>t().t("Enter Jina API Key"))));Cr(Ve,{variant:"settings",get placeholder(){return e(lt)},get value(){return e(c).JINA_API_KEY},set value(st){We(c,e(c).JINA_API_KEY=st)},$$legacy:!0})}r(z),r($),g((lt,st,Ke)=>{d(fe,lt),Be(N,"placeholder",st),d(Ye,Ke)},[()=>(t(),l(()=>t().t("Jina API Base URL"))),()=>(t(),l(()=>t().t("Enter Jina API Base URL"))),()=>(t(),l(()=>t().t("Jina API Key")))]),dt(N,()=>e(c).JINA_API_BASE_URL,lt=>We(c,e(c).JINA_API_BASE_URL=lt)),i(p,$)},$e=p=>{var $=Os(),S=a($),L=a(S),fe=a(L,!0);r(L);var y=o(L,2),b=a(y),N=a(b);vt(N),r(b),r(y),r(S);var z=o(S,2),Ue=a(z),Ye=a(Ue,!0);r(Ue);var Ve=o(Ue,2);{let lt=v(()=>(t(),l(()=>t().t("Enter Bing Search V7 Subscription Key"))));Cr(Ve,{variant:"settings",get placeholder(){return e(lt)},get value(){return e(c).BING_SEARCH_V7_SUBSCRIPTION_KEY},set value(st){We(c,e(c).BING_SEARCH_V7_SUBSCRIPTION_KEY=st)},$$legacy:!0})}r(z),r($),g((lt,st,Ke)=>{d(fe,lt),Be(N,"placeholder",st),d(Ye,Ke)},[()=>(t(),l(()=>t().t("Bing Search V7 Endpoint"))),()=>(t(),l(()=>t().t("Enter Bing Search V7 Endpoint"))),()=>(t(),l(()=>t().t("Bing Search V7 Subscription Key")))]),dt(N,()=>e(c).BING_SEARCH_V7_ENDPOINT,lt=>We(c,e(c).BING_SEARCH_V7_ENDPOINT=lt)),i(p,$)},ze=p=>{var $=Sl(),S=a($),L=a(S),fe=a(L,!0);r(L);var y=o(L,2);{let b=v(()=>(t(),l(()=>t().t("Enter Exa API Key"))));Cr(y,{variant:"settings",get placeholder(){return e(b)},get value(){return e(c).EXA_API_KEY},set value(N){We(c,e(c).EXA_API_KEY=N)},$$legacy:!0})}r(S),r($),g(b=>d(fe,b),[()=>(t(),l(()=>t().t("Exa API Key")))]),i(p,$)},Fe=p=>{var $=y7(),S=Qe($),L=a(S),fe=a(L),y=a(fe,!0);r(fe);var b=o(fe,2);{let rr=v(()=>(t(),l(()=>t().t("Enter Perplexity API Key"))));Cr(b,{variant:"settings",get placeholder(){return e(rr)},get value(){return e(c).PERPLEXITY_API_KEY},set value(Rt){We(c,e(c).PERPLEXITY_API_KEY=Rt)},$$legacy:!0})}r(L),r(S);var N=o(S,2),z=a(N),Ue=a(z),Ye=a(Ue,!0);r(Ue);var Ve=o(Ue,2);vt(Ve);var lt=o(Ve,2),st=a(lt),Ke=a(st,!0);r(st),st.value=st.__value="sonar";var Ze=o(st),ot=a(Ze,!0);r(Ze),Ze.value=Ze.__value="sonar-pro";
80var ut=o(Ze),_t=a(ut,!0);r(ut),ut.value=ut.__value="sonar-reasoning";var nt=o(ut),et=a(nt,!0);r(nt),nt.value=nt.__value="sonar-reasoning-pro";var gt=o(nt),It=a(gt,!0);r(gt),gt.value=gt.__value="sonar-deep-research",r(lt),r(z),r(N);var Mt=o(N,2),jt=a(Mt),Tt=a(jt),yt=a(Tt,!0);r(Tt);var $t=o(Tt,2);aa($t,{className:"w-full",get value(){return e(c).PERPLEXITY_SEARCH_CONTEXT_USAGE},set value(rr){We(c,e(c).PERPLEXITY_SEARCH_CONTEXT_USAGE=rr)},children:(rr,Rt)=>{var Wt=b7(),or=Qe(Wt),$r=a(or,!0);r(or),or.value=or.__value="low";var Et=o(or,2),St=a(Et,!0);r(Et),Et.value=Et.__value="medium";var Dt=o(Et,2),ar=a(Dt,!0);r(Dt),Dt.value=Dt.__value="high",g((Tr,tr,ur)=>{d($r,Tr),d(St,tr),d(ar,ur)},[()=>(t(),l(()=>t().t("Low"))),()=>(t(),l(()=>t().t("Medium"))),()=>(t(),l(()=>t().t("High")))]),i(rr,Wt)},$$slots:{default:!0},$$legacy:!0}),r(jt),r(Mt),g((rr,Rt,Wt,or,$r,Et,St,Dt)=>{d(y,rr),d(Ye,Rt),d(Ke,Wt),d(ot,or),d(_t,$r),d(et,Et),d(It,St),d(yt,Dt)},[()=>(t(),l(()=>t().t("Perplexity API Key"))),()=>(t(),l(()=>t().t("Perplexity Model"))),()=>(t(),l(()=>t().t("Sonar"))),()=>(t(),l(()=>t().t("Sonar Pro"))),()=>(t(),l(()=>t().t("Sonar Reasoning"))),()=>(t(),l(()=>t().t("Sonar Reasoning Pro"))),()=>(t(),l(()=>t().t("Sonar Deep Research"))),()=>(t(),l(()=>t().t("Perplexity Search Context Usage")))]),dt(Ve,()=>e(c).PERPLEXITY_MODEL,rr=>We(c,e(c).PERPLEXITY_MODEL=rr)),i(p,$)},at=p=>{var $=$7(),S=a($),L=a(S),fe=a(L,!0);r(L);var y=o(L,2),b=a(y),N=a(b);vt(N),r(b),r(y),r(S);var z=o(S,2),Ue=a(z),Ye=a(Ue,!0);r(Ue);var Ve=o(Ue,2);{let ot=v(()=>(t(),l(()=>t().t("Enter Microsoft Web IQ API Key"))));Cr(Ve,{variant:"settings",get placeholder(){return e(ot)},get value(){return e(c).MICROSOFT_WEB_IQ_API_KEY},set value(ut){We(c,e(c).MICROSOFT_WEB_IQ_API_KEY=ut)},$$legacy:!0})}r(z);var lt=o(z,2),st=a(lt),Ke=a(st,!0);r(st);var Ze=o(st,2);vt(Ze),r(lt),r($),g((ot,ut,_t,nt,et)=>{d(fe,ot),Be(N,"placeholder",ut),d(Ye,_t),d(Ke,nt),Be(Ze,"placeholder",et)},[()=>(t(),l(()=>t().t("Microsoft Web IQ API Base URL"))),()=>(t(),l(()=>t().t("Enter Microsoft Web IQ API Base URL"))),()=>(t(),l(()=>t().t("Microsoft Web IQ API Key"))),()=>(t(),l(()=>t().t("Language"))),()=>(t(),l(()=>t().t("Enter language")))]),dt(N,()=>e(c).MICROSOFT_WEB_IQ_API_BASE_URL,ot=>We(c,e(c).MICROSOFT_WEB_IQ_API_BASE_URL=ot)),dt(Ze,()=>e(c).MICROSOFT_WEB_IQ_LANGUAGE,ot=>We(c,e(c).MICROSOFT_WEB_IQ_LANGUAGE=ot)),i(p,$)},tt=p=>{var $=w7(),S=Qe($),L=a(S),fe=a(L),y=a(fe,!0);r(fe);var b=o(fe,2);{let lt=v(()=>(t(),l(()=>t().t("Enter Sougou Search API sID"))));Cr(b,{variant:"settings",get placeholder(){return e(lt)},get value(){return e(c).SOUGOU_API_SID},set value(st){We(c,e(c).SOUGOU_API_SID=st)},$$legacy:!0})}r(L),r(S);var N=o(S,2),z=a(N),Ue=a(z),Ye=a(Ue,!0);r(Ue);var Ve=o(Ue,2);{let lt=v(()=>(t(),l(()=>t().t("Enter Sougou Search API SK"))));Cr(Ve,{variant:"settings",get placeholder(){return e(lt)},get value(){return e(c).SOUGOU_API_SK},set value(st){We(c,e(c).SOUGOU_API_SK=st)},$$legacy:!0})}r(z),r(N),g((lt,st)=>{d(y,lt),d(Ye,st)},[()=>(t(),l(()=>t().t("Sougou Search API sID"))),()=>(t(),l(()=>t().t("Sougou Search API SK")))]),i(p,$)},Je=p=>{var $=k7(),S=a($),L=a(S),fe=a(L,!0);r(L);var y=o(L,2),b=a(y),N=a(b);vt(N),r(b),r(y),r(S);var z=o(S,2),Ue=a(z),Ye=a(Ue,!0);r(Ue);var Ve=o(Ue,2);{let _t=v(()=>(t(),l(()=>t().t("Enter Firecrawl API Key"))));Cr(Ve,{variant:"settings",get placeholder(){return e(_t)},get value(){return e(c).FIRECRAWL_API_KEY},set value(nt){We(c,e(c).FIRECRAWL_API_KEY=nt)},$$legacy:!0})}r(z);var lt=o(z,2),st=a(lt),Ke=a(st,!0);r(st);var Ze=o(st,2),ot=a(Ze),ut=a(ot);vt(ut),r(ot),r(Ze),r(lt),r($),g((_t,nt,et,gt,It)=>{d(fe,_t),Be(N,"placeholder",nt),d(Ye,et),d(Ke,gt),Be(ut,"placeholder",It)},[()=>(t(),l(()=>t().t("Firecrawl API Base URL"))),()=>(t(),l(()=>t().t("Enter Firecrawl API Base URL"))),()=>(t(),l(()=>t().t("Firecrawl API Key"))),()=>(t(),l(()=>t().t("Firecrawl Timeout (s)"))),()=>(t(),l(()=>t().t("Enter Firecrawl Timeout")))]),dt(N,()=>e(c).FIRECRAWL_API_BASE_URL,_t=>We(c,e(c).FIRECRAWL_API_BASE_URL=_t)),dt(ut,()=>e(c).FIRECRAWL_TIMEOUT,_t=>We(c,e(c).FIRECRAWL_TIMEOUT=_t)),i(p,$)},je=p=>{var $=Os(),S=a($),L=a(S),fe=a(L,!0);r(L);var y=o(L,2),b=a(y),N=a(b);vt(N),r(b),r(y),r(S);var z=o(S,2),Ue=a(z),Ye=a(Ue,!0);r(Ue);var Ve=o(Ue,2);{let lt=v(()=>(t(),l(()=>t().t("Enter External Web Search API Key"))));Cr(Ve,{variant:"settings",get placeholder(){return e(lt)},get value(){return e(c).EXTERNAL_WEB_SEARCH_API_KEY},set value(st){We(c,e(c).EXTERNAL_WEB_SEARCH_API_KEY=st)},$$legacy:!0})}r(z),r($),g((lt,st,Ke)=>{d(fe,lt),Be(N,"placeholder",st),d(Ye,Ke)},[()=>(t(),l(()=>
80t().t("External Web Search URL"))),()=>(t(),l(()=>t().t("Enter External Web Search URL"))),()=>(t(),l(()=>t().t("External Web Search API Key")))]),dt(N,()=>e(c).EXTERNAL_WEB_SEARCH_URL,lt=>We(c,e(c).EXTERNAL_WEB_SEARCH_URL=lt)),i(p,$)},ne=p=>{var $=E7(),S=a($),L=a(S),fe=a(L,!0);r(L);var y=o(L,2),b=a(y),N=a(b);vt(N),r(b),r(y),r(S);var z=o(S,2),Ue=a(z),Ye=a(Ue,!0);r(Ue);var Ve=o(Ue,2);{let ot=v(()=>(t(),l(()=>t().t("Enter Yandex Web Search API Key"))));Cr(Ve,{variant:"settings",get placeholder(){return e(ot)},get value(){return e(c).YANDEX_WEB_SEARCH_API_KEY},set value(ut){We(c,e(c).YANDEX_WEB_SEARCH_API_KEY=ut)},$$legacy:!0})}r(z);var lt=o(z,2),st=a(lt),Ke=a(st,!0);r(st);var Ze=o(st,2);{let ot=v(()=>(t(),l(()=>t().t("Leave empty to use the default config, or enter a valid json (see https://yandex.cloud/en/docs/search-api/api-ref/WebSearch/search#yandex.cloud.searchapi.v2.WebSearchRequest)"))));Lt(Ze,{get content(){return e(ot)},placement:"top-start",children:(ut,_t)=>{{let nt=v(()=>(t(),l(()=>t().t("Leave empty to use the default config, or enter a valid json (see https://yandex.cloud/en/docs/search-api/api-ref/WebSearch/search#yandex.cloud.searchapi.v2.WebSearchRequest)"))));ma(ut,{className:A,get placeholder(){return e(nt)},get value(){return e(c).YANDEX_WEB_SEARCH_CONFIG},set value(et){We(c,e(c).YANDEX_WEB_SEARCH_CONFIG=et)},$$legacy:!0})}},$$slots:{default:!0}})}r(lt),r($),g((ot,ut,_t,nt)=>{d(fe,ot),Be(N,"placeholder",ut),d(Ye,_t),d(Ke,nt)},[()=>(t(),l(()=>t().t("Yandex Web Search URL"))),()=>(t(),l(()=>t().t("Enter Yandex Web Search URL"))),()=>(t(),l(()=>t().t("Yandex Web Search API Key"))),()=>(t(),l(()=>t().t("Yandex Web Search config")))]),dt(N,()=>e(c).YANDEX_WEB_SEARCH_URL,ot=>We(c,e(c).YANDEX_WEB_SEARCH_URL=ot)),i(p,$)},J=p=>{var $=Sl(),S=a($),L=a(S),fe=a(L,!0);r(L);var y=o(L,2);{let b=v(()=>(t(),l(()=>t().t("Enter You.com API Key"))));Cr(y,{variant:"settings",get placeholder(){return e(b)},get value(){return e(c).YOUCOM_API_KEY},set value(N){We(c,e(c).YOUCOM_API_KEY=N)},$$legacy:!0})}r(S),r($),g(b=>d(fe,b),[()=>(t(),l(()=>t().t("You.com API Key")))]),i(p,$)},W=p=>{var $=A7(),S=a($),L=a(S),fe=a(L,!0);r(L);var y=o(L,2);{let Ye=v(()=>(t(),l(()=>t().t("Enter Linkup API Key"))));Cr(y,{variant:"settings",get placeholder(){return e(Ye)},get value(){return e(c).LINKUP_API_KEY},set value(Ve){We(c,e(c).LINKUP_API_KEY=Ve)},$$legacy:!0})}r(S);var b=o(S,2),N=a(b),z=a(N,!0);r(N);var Ue=o(N,2);ma(Ue,{className:A,placeholder:`{ 81 "depth": "standard", 82 "outputType": "sourcedAnswer" 83}`,get value(){return e(c).LINKUP_SEARCH_PARAMS},set value(Ye){We(c,e(c).LINKUP_SEARCH_PARAMS=Ye)},$$legacy:!0}),r(b),r($),g((Ye,Ve)=>{d(fe,Ye),d(z,Ve)},[()=>(t(),l(()=>t().t("Linkup API Key"))),()=>(t(),l(()=>t().t("Parameters")))]),i(p,$)},Z=p=>{var $=I7(),S=a($),L=a(S),fe=a(L,!0);r(L);var y=o(L,2),b=a(y);vt(b),r(y),r(S),r($),g((N,z)=>{d(fe,N),Be(b,"placeholder",z)},[()=>(t(),l(()=>t().t("OpenSERP URL"))),()=>(t(),l(()=>t().t("Enter OpenSERP Base URL")))]),dt(b,()=>e(c).OPENSERP_BASE_URL,N=>We(c,e(c).OPENSERP_BASE_URL=N)),i(p,$)};G(ve,p=>{e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="ollama_cloud")?p(te):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="perplexity_search")?p(ge,1):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="searxng")?p(_e,2):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="yacy")?p(Ae,3):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="google_pse")?p(U,4):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="brave")?p(T,5):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="brave_llm_context")?p(C,6):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="kagi")?p(D,7):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="mojeek")?p(F,8):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="bocha")?p(H,9):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="serpstack")?p(pe,10):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="serper")?p(ye,11):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="serphouse")?p(he,12):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="serply")?p(q,13):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="tavily")?p(P,14):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="searchapi")?p(Q,15):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="serpapi")?p(re,16):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="jina")?p(le,17):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="bing")?p($e,18):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="exa")?p(ze,19):(e(c),l(()=>
83e(c).WEB_SEARCH_ENGINE==="perplexity")?p(Fe,20):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="microsoft_web_iq")?p(at,21):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="sougou")?p(tt,22):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="firecrawl")?p(Je,23):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="external")?p(je,24):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="yandex")?p(ne,25):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="youcom")?p(J,26):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="linkup")?p(W,27):(e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="openserp")&&p(Z,28)))))))))))))))))))))))))))))})}var Ee=o(ve,2);{var Ge=p=>{var $=M_(),S=a($),L=a(S),fe=a(L,!0);r(L);var y=o(L,2),b=a(y),N=a(b);aa(N,{className:"w-full",get value(){return e(c).DDGS_BACKEND},set value(z){We(c,e(c).DDGS_BACKEND=z)},children:(z,Ue)=>{var Ye=S7(),Ve=Qe(Ye),lt=a(Ve,!0);r(Ve),Ve.value=Ve.__value="auto";var st=o(Ve,2),Ke=a(st,!0);r(st),st.value=st.__value="bing";var Ze=o(st,2),ot=a(Ze,!0);r(Ze),Ze.value=Ze.__value="brave";var ut=o(Ze,2),_t=a(ut,!0);r(ut),ut.value=ut.__value="duckduckgo";var nt=o(ut,2),et=a(nt,!0);r(nt),nt.value=nt.__value="google";var gt=o(nt,2),It=a(gt,!0);r(gt),gt.value=gt.__value="grokipedia";var Mt=o(gt,2),jt=a(Mt,!0);r(Mt),Mt.value=Mt.__value="mojeek";var Tt=o(Mt,2),yt=a(Tt,!0);r(Tt),Tt.value=Tt.__value="wikipedia";var $t=o(Tt,2),rr=a($t,!0);r($t),$t.value=$t.__value="yahoo";var Rt=o($t,2),Wt=a(Rt,!0);r(Rt),Rt.value=Rt.__value="yandex",g((or,$r,Et,St,Dt,ar,Tr,tr,ur,_r)=>{d(lt,or),d(Ke,$r),d(ot,Et),d(_t,St),d(et,Dt),d(It,ar),d(jt,Tr),d(yt,tr),d(rr,ur),d(Wt,_r)},[()=>(t(),l(()=>t().t("Auto (Random)"))),()=>(t(),l(()=>t().t("Bing"))),()=>(t(),l(()=>t().t("Brave"))),()=>(t(),l(()=>t().t("DuckDuckGo"))),()=>(t(),l(()=>t().t("Google"))),()=>(t(),l(()=>t().t("Grokipedia"))),()=>(t(),l(()=>t().t("Mojeek"))),()=>(t(),l(()=>t().t("Wikipedia"))),()=>(t(),l(()=>t().t("Yahoo"))),()=>(t(),l(()=>t().t("Yandex")))]),i(z,Ye)},$$slots:{default:!0},$$legacy:!0}),r(b),r(y),r(S),r($),g(z=>d(fe,z),[()=>(t(),l(()=>t().t("DDGS Backend")))]),i(p,$)};G(Ee,p=>{e(c),l(()=>e(c).WEB_SEARCH_ENGINE==="duckduckgo")&&p(Ge)})}i(ie,M)};G(qe,ie=>{e(c),l(()=>e(c).WEB_SEARCH_ENGINE!=="")&&ie(Re)})}var ue=o(qe,2);{var xe=ie=>{var M=C7(),ve=Qe(M);{let _e=v(()=>(t(),l(()=>t().t("Search Limits")))),Ae=v(()=>(t(),l(()=>t().t("Control result volume and parallel search requests."))));mt(ve,{get label(){return e(_e)},get description(){return e(Ae)},children:(U,T)=>{var C=N7(),D=a(C),F=a(D),H=a(F,!0);r(F);var pe=o(F,2);vt(pe),r(D);var ye=o(D,2),he=a(ye),q=a(he);{let Q=v(()=>(t(),l(()=>t().t("Limit concurrent search queries. 0 = unlimited (default). Set to 1 for sequential execution (recommended for APIs with strict rate limits like Brave free tier)."))));Lt(q,{get content(){return e(Q)},placement:"top-start",children:(re,le)=>{ll();var $e=Mr();g(ze=>d($e,ze),[()=>(t(),l(()=>t().t("Concurrent Requests")))]),i(re,$e)},$$slots:{default:!0}})}r(he);var P=o(he,2);vt(P),r(ye),r(C),g((Q,re,le)=>{d(H,Q),Be(pe,"placeholder",re),Be(P,"placeholder",le)},[()=>(t(),l(()=>t().t("Search Result Count"))),()=>(t(),l(()=>t().t("Search Result Count"))),()=>(t(),l(()=>t().t("Concurrent Requests")))]),dt(pe,()=>e(c).WEB_SEARCH_RESULT_COUNT,Q=>We(c,e(c).WEB_SEARCH_RESULT_COUNT=Q)),dt(P,()=>e(c).WEB_SEARCH_CONCURRENT_REQUESTS,Q=>We(c,e(c).WEB_SEARCH_CONCURRENT_REQUESTS=Q)),i(U,C)},$$slots:{default:!0}})}var te=o(ve,2);{let _e=v(()=>(t(),l(()=>t().t("Fetch URL Content Length Limit")))),Ae=v(()=>(t(),l(()=>t().t("Maximum characters to return from fetched URLs. Leave empty for no limit."))));mt(te,{get label(){return e(_e)},get description(){return e(Ae)},children:(U,T)=>{var C=P7();vt(C),k(C,1,me(x)),g(D=>Be(C,"placeholder",D),[()=>(t(),l(()=>t().t("No limit")))]),dt(C,()=>e(c).WEB_FETCH_MAX_CONTENT_LENGTH,D=>We(c,e(c).WEB_FETCH_MAX_CONTENT_LENGTH=D)),i(U,C)},$$slots:{default:!0}})}var ge=o(te,2);{let _e=v(()=>(t(),l(()=>t().t("Domain Filter List")))),Ae=v(()=>(t(),l(()=>t().t("Restrict or exclude domains using a comma-separated list."))));mt(ge,{get label(){return e(_e)},get description(){return e(Ae)},children:(U,T)=>{var C=R_();vt(C),k(C,1,me(x)),g(D=>Be(C,"placeholder",D),[()=>(t(),l(()=>t().t("Enter domains separated by commas (e.g., example.com,site.org,!excludedsite.com)")))]),dt(C,()=>e(c).WEB_SEARCH_DOMAIN_FILTER_LIST,D=>We(c,e(c).WEB_SEARCH_DOMAIN_FILTER_LIST=D)),i(U,C)},$$slots:{default:!0}})}i(ie,M)};G(ue,ie=>{e(c),l(()=>e(c).ENABLE_WEB_SEARCH)&&ie(xe)})}var K=o(ue,2);{let ie=v(()=>(t(),l(()=>t().t("Bypass Embedding and Retrieval")))),M=v(()=>(e(c),t(),l(()=>e(c).BYPASS_WEB_SEARCH_EMBEDDING_AND_RETRIEVAL?t().t("Inject the entire content as context for comprehensive processing."):t().t("Use segmented retrieval for focused and relevant content extraction."))));Jt(K,{get label(){return e(ie)},get description(){return e(M)},children:Ir,$$slots:{default:(ve,te)=>{const ge=v(()=>te.labelId);Nt(ve,{get ariaLabelledbyId(){return e(ge)},get state(){return e(c).BYPASS_WEB_SEARCH_EMBEDDING_AND_RETRIEVAL},set state(_e){We(c,e(c).BYPASS_WEB_SEARCH_EMBEDDING_AND_RETRIEVAL=_e)},$$legacy:!0})}}})}var Oe=o(K,2);{let ie=v(()=>(t(),l(()=>t().t("Bypass Web Loader")))),M=v(()=>(t(),l(()=>t().t("Use search results without fetching page contents."))));Jt(Oe,{get label(){return e(ie)},get description(){return e(M)},children:Ir,$$slots:{default:(ve,te)=>{const ge=v(()=>te.labelId);Nt(ve,{get ariaLabelledbyId(){return e(ge)},get state(){return e(c).BYPASS_WEB_SEARCH_WEB_LOADER},set state(_e){We(c,e(c).BYPASS_WEB_SEARCH_WEB_LOADER=_e)},$$legacy:!0})}}})}var O=o(Oe,2);{let ie=v(()=>(t(),l(()=>
83t().t("Trust Proxy Environment")))),M=v(()=>(e(c),t(),l(()=>e(c).WEB_SEARCH_TRUST_ENV?t().t("Use proxy environment variables to fetch page contents."):t().t("Fetch page contents without proxy environment variables."))));Jt(O,{get label(){return e(ie)},get description(){return e(M)},children:Ir,$$slots:{default:(ve,te)=>{const ge=v(()=>te.labelId);Nt(ve,{get ariaLabelledbyId(){return e(ge)},get state(){return e(c).WEB_SEARCH_TRUST_ENV},set state(_e){We(c,e(c).WEB_SEARCH_TRUST_ENV=_e)},$$legacy:!0})}}})}i(Le,Ce)},$$slots:{default:!0}})}var ce=o(m,2);{let De=v(()=>(t(),l(()=>t().t("Loader"))));va(ce,{get title(){return e(De)},children:(Le,Ne)=>{var Ce=G7(),we=Qe(Ce);{let O=v(()=>(t(),l(()=>t().t("Web Loader Engine")))),ie=v(()=>(t(),l(()=>t().t("Choose how web result pages are fetched and read."))));Jt(we,{get label(){return e(O)},get description(){return e(ie)},children:(M,ve)=>{{let te=v(()=>(t(),l(()=>t().t("Select a engine"))));aa(M,{get placeholder(){return e(te)},get value(){return e(c).WEB_LOADER_ENGINE},set value(ge){We(c,e(c).WEB_LOADER_ENGINE=ge)},children:(ge,_e)=>{var Ae=L7(),U=Qe(Ae),T=a(U,!0);r(U),U.value=U.__value="";var C=o(U,2);lr(C,1,()=>I,Ar,(D,F)=>{var H=O_(),pe=a(H,!0);r(H);var ye={};g(()=>{d(pe,e(F)),ye!==(ye=e(F))&&(H.value=(H.__value=e(F))??"")}),i(D,H)}),g(D=>d(T,D),[()=>(t(),l(()=>t().t("Default")))]),i(ge,Ae)},$$slots:{default:!0},$$legacy:!0})}},$$slots:{default:!0}})}var oe=o(we,2);{var de=O=>{var ie=Zc(),M=Qe(ie);{let te=v(()=>(t(),l(()=>t().t("Timeout")))),ge=v(()=>(t(),l(()=>t().t("Maximum time to wait while loading web content."))));mt(M,{get label(){return e(te)},get description(){return e(ge)},children:(_e,Ae)=>{var U=R_();vt(U),k(U,1,me(x)),g(T=>Be(U,"placeholder",T),[()=>(t(),l(()=>t().t("Timeout")))]),dt(U,()=>e(c).WEB_LOADER_TIMEOUT,T=>We(c,e(c).WEB_LOADER_TIMEOUT=T)),i(_e,U)},$$slots:{default:!0}})}var ve=o(M,2);{let te=v(()=>(t(),l(()=>t().t("Verify SSL Certificate")))),ge=v(()=>(t(),l(()=>t().t("Validate SSL certificates when fetching web content."))));Jt(ve,{get label(){return e(te)},get description(){return e(ge)},children:Ir,$$slots:{default:(_e,Ae)=>{const U=v(()=>Ae.labelId);Nt(_e,{get ariaLabelledbyId(){return e(U)},get state(){return e(c).ENABLE_WEB_LOADER_SSL_VERIFICATION},set state(T){We(c,e(c).ENABLE_WEB_LOADER_SSL_VERIFICATION=T)},$$legacy:!0})}}})}i(O,ie)},be=O=>{var ie=O7(),M=a(ie),ve=a(M),te=a(ve,!0);r(ve);var ge=o(ve,2),_e=a(ge),Ae=a(_e);vt(Ae),r(_e),r(ge),r(M);var U=o(M,2),T=a(U),C=a(T,!0);r(T);var D=o(T,2),F=a(D),H=a(F);vt(H),r(F),r(D),r(U),r(ie),g((pe,ye,he,q)=>{d(te,pe),Be(Ae,"placeholder",ye),d(C,he),Be(H,"placeholder",q)},[()=>(t(),l(()=>t().t("Playwright WebSocket URL"))),()=>(t(),l(()=>t().t("Enter Playwright WebSocket URL"))),()=>(t(),l(()=>t().t("Playwright Timeout (ms)"))),()=>(t(),l(()=>t().t("Enter Playwright Timeout")))]),dt(Ae,()=>e(c).PLAYWRIGHT_WS_URL,pe=>We(c,e(c).PLAYWRIGHT_WS_URL=pe)),dt(H,()=>e(c).PLAYWRIGHT_TIMEOUT,pe=>We(c,e(c).PLAYWRIGHT_TIMEOUT=pe)),i(O,ie)},Me=O=>{var ie=Os(),M=a(ie),ve=a(M),te=a(ve,!0);r(ve);var ge=o(ve,2),_e=a(ge),Ae=a(_e);vt(Ae),r(_e),r(ge),r(M);var U=o(M,2),T=a(U),C=a(T,!0);r(T);var D=o(T,2);{let F=v(()=>(t(),l(()=>t().t("Enter Firecrawl API Key"))));Cr(D,{variant:"settings",get placeholder(){return e(F)},get value(){return e(c).FIRECRAWL_API_KEY},set value(H){We(c,e(c).FIRECRAWL_API_KEY=H)},$$legacy:!0})}r(U),r(ie),g((F,H,pe)=>{d(te,F),Be(Ae,"placeholder",H),d(C,pe)},[()=>(t(),l(()=>t().t("Firecrawl API Base URL"))),()=>(t(),l(()=>t().t("Enter Firecrawl API Base URL"))),()=>(t(),l(()=>t().t("Firecrawl API Key")))]),dt(Ae,()=>e(c).FIRECRAWL_API_BASE_URL,F=>We(c,e(c).FIRECRAWL_API_BASE_URL=F)),i(O,ie)},qe=O=>{var ie=R7(),M=a(ie),ve=a(M),te=a(ve,!0);r(ve);var ge=o(ve,2),_e=a(ge),Ae=a(_e);vt(Ae),r(_e),r(ge),r(M);var U=o(M,2);{var T=C=>{var D=M7(),F=a(D),H=a(F,!0);r(F);var pe=o(F,2);{let ye=v(()=>(t(),l(()=>t().t("Enter Tavily API Key"))));Cr(pe,{variant:"settings",get placeholder(){return e(ye)},get value(){return e(c).TAVILY_API_KEY},set value(he){We(c,e(c).TAVILY_API_KEY=he)},$$legacy:!0})}r(D),g(ye=>d(H,ye),[()=>(t(),l(()=>t().t("Tavily API Key")))]),i(C,D)};G(U,C=>{e(c),l(()=>e(c).WEB_SEARCH_ENGINE!=="tavily")&&C(T)})}r(ie),g((C,D)=>{d(te,C),Be(Ae,"placeholder",D)},[()=>(t(),l(()=>t().t("Tavily Extract Depth"))),()=>(t(),l(()=>t().t("Enter Tavily Extract Depth")))]),dt(Ae,()=>e(c).TAVILY_EXTRACT_DEPTH,C=>We(c,e(c).TAVILY_EXTRACT_DEPTH=C)),i(O,ie)},Re=O=>{var ie=U7(),M=a(ie);{var ve=te=>{var ge=D7(),_e=Qe(ge),Ae=a(_e),U=a(Ae,!0);r(Ae);var T=o(Ae,2),C=a(T),D=a(C);vt(D),r(C),r(T),r(_e);
83var F=o(_e,2),H=a(F),pe=a(H,!0);r(H);var ye=o(H,2);{let re=v(()=>(t(),l(()=>t().t("Enter Microsoft Web IQ API Key"))));Cr(ye,{variant:"settings",get placeholder(){return e(re)},get value(){return e(c).MICROSOFT_WEB_IQ_API_KEY},set value(le){We(c,e(c).MICROSOFT_WEB_IQ_API_KEY=le)},$$legacy:!0})}r(F);var he=o(F,2),q=a(he),P=a(q,!0);r(q);var Q=o(q,2);vt(Q),r(he),g((re,le,$e,ze,Fe)=>{d(U,re),Be(D,"placeholder",le),d(pe,$e),d(P,ze),Be(Q,"placeholder",Fe)},[()=>(t(),l(()=>t().t("Microsoft Web IQ API Base URL"))),()=>(t(),l(()=>t().t("Enter Microsoft Web IQ API Base URL"))),()=>(t(),l(()=>t().t("Microsoft Web IQ API Key"))),()=>(t(),l(()=>t().t("Language"))),()=>(t(),l(()=>t().t("Enter language")))]),dt(D,()=>e(c).MICROSOFT_WEB_IQ_API_BASE_URL,re=>We(c,e(c).MICROSOFT_WEB_IQ_API_BASE_URL=re)),dt(Q,()=>e(c).MICROSOFT_WEB_IQ_LANGUAGE,re=>We(c,e(c).MICROSOFT_WEB_IQ_LANGUAGE=re)),i(te,ge)};G(M,te=>{e(c),l(()=>e(c).WEB_SEARCH_ENGINE!=="microsoft_web_iq")&&te(ve)})}r(ie),i(O,ie)},ue=O=>{var ie=Os(),M=a(ie),ve=a(M),te=a(ve,!0);r(ve);var ge=o(ve,2),_e=a(ge),Ae=a(_e);vt(Ae),r(_e),r(ge),r(M);var U=o(M,2),T=a(U),C=a(T,!0);r(T);var D=o(T,2);{let F=v(()=>(t(),l(()=>t().t("Enter External Web Loader API Key"))));Cr(D,{variant:"settings",get placeholder(){return e(F)},get value(){return e(c).EXTERNAL_WEB_LOADER_API_KEY},set value(H){We(c,e(c).EXTERNAL_WEB_LOADER_API_KEY=H)},$$legacy:!0})}r(U),r(ie),g((F,H,pe)=>{d(te,F),Be(Ae,"placeholder",H),d(C,pe)},[()=>(t(),l(()=>t().t("External Web Loader URL"))),()=>(t(),l(()=>t().t("Enter External Web Loader URL"))),()=>(t(),l(()=>t().t("External Web Loader API Key")))]),dt(Ae,()=>e(c).EXTERNAL_WEB_LOADER_URL,F=>We(c,e(c).EXTERNAL_WEB_LOADER_URL=F)),i(O,ie)};G(oe,O=>{e(c),l(()=>e(c).WEB_LOADER_ENGINE===""||e(c).WEB_LOADER_ENGINE==="safe_web")?O(de):(e(c),l(()=>e(c).WEB_LOADER_ENGINE==="playwright")?O(be,1):(e(c),l(()=>e(c).WEB_LOADER_ENGINE==="firecrawl"&&e(c).WEB_SEARCH_ENGINE!=="firecrawl")?O(Me,2):(e(c),l(()=>e(c).WEB_LOADER_ENGINE==="tavily")?O(qe,3):(e(c),l(()=>e(c).WEB_LOADER_ENGINE==="microsoft_web_iq")?O(Re,4):(e(c),l(()=>e(c).WEB_LOADER_ENGINE==="external")&&O(ue,5))))))})}var xe=o(oe,2);{let O=v(()=>(t(),l(()=>t().t("Concurrent Requests")))),ie=v(()=>(t(),l(()=>t().t("Limit parallel web loader requests."))));mt(xe,{get label(){return e(O)},get description(){return e(ie)},children:(M,ve)=>{var te=B7();vt(te),k(te,1,me(x)),g(ge=>Be(te,"placeholder",ge),[()=>(t(),l(()=>t().t("Concurrent Requests")))]),dt(te,()=>e(c).WEB_LOADER_CONCURRENT_REQUESTS,ge=>We(c,e(c).WEB_LOADER_CONCURRENT_REQUESTS=ge)),i(M,te)},$$slots:{default:!0}})}var K=o(xe,2);{let O=v(()=>(t(),l(()=>t().t("Youtube Language")))),ie=v(()=>(t(),l(()=>t().t("Preferred transcript language codes, separated by commas."))));mt(K,{get label(){return e(O)},get description(){return e(ie)},children:(M,ve)=>{var te=D_();vt(te),k(te,1,me(x)),g(ge=>Be(te,"placeholder",ge),[()=>(t(),l(()=>t().t("Enter language codes")))]),dt(te,()=>e(c).YOUTUBE_LOADER_LANGUAGE,ge=>We(c,e(c).YOUTUBE_LOADER_LANGUAGE=ge)),i(M,te)},$$slots:{default:!0}})}var Oe=o(K,2);{let O=v(()=>(t(),l(()=>t().t("Youtube Proxy URL")))),ie=v(()=>(t(),l(()=>t().t("Proxy URL used for Youtube loader requests."))));mt(Oe,{get label(){return e(O)},get description(){return e(ie)},children:(M,ve)=>{var te=D_();vt(te),k(te,1,me(x)),g(ge=>Be(te,"placeholder",ge),[()=>(t(),l(()=>t().t("Enter proxy URL (e.g. https://user:password@host:port)")))]),dt(te,()=>e(c).YOUTUBE_LOADER_PROXY_URL,ge=>We(c,e(c).YOUTUBE_LOADER_PROXY_URL=ge)),i(M,te)},$$slots:{default:!0}})}i(Le,Ce)},$$slots:{default:!0}})}i(Pe,se)};G(Te,Pe=>{e(c)&&Pe(Se)})}r(w);var Y=o(w,2),ee=a(Y),ae=a(ee,!0);r(ee),r(Y),r(V),g((Pe,se)=>{d(j,Pe),d(ae,se)},[()=>(t(),l(()=>t().t("Web Search"))),()=>(t(),l(()=>t().t("Save")))]),ke("submit",V,ca(async()=>{await E(),X()()})),i(He,V),cr(),n()}var U_=u("<option> </option>"),B_=u('<option disabled="" selected=""> </option> <!>',1),G_=u('<input type="text" autocomplete="off"/>'),j_=u('<option selected=""> </option> <option> </option> <option> </option>',1),H_=u('<input type="number" autocomplete="off"/>'),F_=u("<!> <!> <!> <!>",1),pd=u("<!> <!>",1),F7=u("<!> <!> <!>",1),W7=u('<form class="flex h-full flex-col justify-between text-sm"><h2 class="text-sm font-medium text-gray-900 dark:text-white mb-4"> </h2> <div class="flex-1 min-h-0 overflow-y-auto scrollbar-hover pr-1.5"><!></div> <div class="flex justify-end pt-6 text-sm font-normal"><button class="px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full" t
83ype="submit"> </button></div></form>');function z7(He,_){vr(_,!1);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr(),Ie=mr("i18n");let X=Xe(_,"saveHandler",8),R=h(null),I=["pyodide","jupyter"];const c="w-full h-7 rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500",x="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500",A=async()=>{await zm(localStorage.token,e(R))};ea(async()=>{const ae=await Wm(localStorage.token);ae&&s(R,ae)}),gr();var E=W7(),V=a(E),B=a(V,!0);r(V);var j=o(V,2),w=a(j);{var Te=ae=>{var Pe=pd(),se=Qe(Pe);{let ce=v(()=>(t(),l(()=>t().t("Code Execution"))));va(se,{get title(){return e(ce)},first:!0,children:(De,Le)=>{var Ne=pd(),Ce=Qe(Ne);{let de=v(()=>(t(),l(()=>t().t("Enable Code Execution")))),be=v(()=>(t(),l(()=>t().t("Allow models to run generated code and return execution results."))));Jt(Ce,{get label(){return e(de)},get description(){return e(be)},children:Ir,$$slots:{default:(Me,qe)=>{const Re=v(()=>qe.labelId);Nt(Me,{get ariaLabelledbyId(){return e(Re)},get state(){return e(R).ENABLE_CODE_EXECUTION},set state(ue){We(R,e(R).ENABLE_CODE_EXECUTION=ue)},$$legacy:!0})}}})}var we=o(Ce,2);{var oe=de=>{var be=pd(),Me=Qe(be);{let ue=v(()=>(t(),l(()=>t().t("Code Execution Engine")))),xe=v(()=>(e(R),t(),l(()=>e(R).CODE_EXECUTION_ENGINE==="jupyter"?t().t("Warning: Jupyter execution enables arbitrary code execution, posing severe security risksâproceed with extreme caution."):t().t("Choose the runtime used for generated code blocks.")))
83);Jt(Me,{get label(){return e(ue)},get description(){return e(xe)},children:(K,Oe)=>{{let O=v(()=>(t(),l(()=>t().t("Select a engine"))));aa(K,{get placeholder(){return e(O)},required:!0,get value(){return e(R).CODE_EXECUTION_ENGINE},set value(ie){We(R,e(R).CODE_EXECUTION_ENGINE=ie)},children:(ie,M)=>{var ve=B_(),te=Qe(ve),ge=a(te,!0);r(te),te.value=te.__value="";var _e=o(te,2);lr(_e,1,()=>I,Ar,(Ae,U)=>{var T=U_(),C=a(T);r(T);var D={};g(()=>{d(C,`${e(U)??""}${e(U)==="jupyter"?" (Legacy)":""}`),D!==(D=e(U))&&(T.value=(T.__value=e(U))??"")}),i(Ae,T)}),g(Ae=>d(ge,Ae),[()=>(t(),l(()=>t().t("Select a engine")))]),i(ie,ve)},$$slots:{default:!0},$$legacy:!0})}},$$slots:{default:!0}})}var qe=o(Me,2);{var Re=ue=>{var xe=F_(),K=Qe(xe);{let ve=v(()=>(t(),l(()=>t().t("Jupyter URL")))),te=v(()=>(t(),l(()=>t().t("Connect code execution to a Jupyter server endpoint."))));mt(K,{get label(){return e(ve)},get description(){return e(te)},children:(ge,_e)=>{var Ae=G_();vt(Ae),k(Ae,1,me(c)),g(U=>Be(Ae,"placeholder",U),[()=>(t(),l(()=>t().t("Enter Jupyter URL")))]),dt(Ae,()=>e(R).CODE_EXECUTION_JUPYTER_URL,U=>We(R,e(R).CODE_EXECUTION_JUPYTER_URL=U)),i(ge,Ae)},$$slots:{default:!0}})}var Oe=o(K,2);{let ve=v(()=>(t(),l(()=>t().t("Jupyter Auth")))),te=v(()=>(t(),l(()=>t().t("Select how Open WebUI authenticates with the Jupyter server."))));Jt(Oe,{get label(){return e(ve)},get description(){return e(te)},children:(ge,_e)=>{{let Ae=v(()=>(t(),l(()=>t().t("Select an auth method"))));aa(ge,{get placeholder(){return e(Ae)},get value(){return e(R).CODE_EXECUTION_JUPYTER_AUTH},set value(U){We(R,e(R).CODE_EXECUTION_JUPYTER_AUTH=U)},children:(U,T)=>{var C=j_(),D=Qe(C),F=a(D,!0);r(D),D.value=D.__value="";var H=o(D,2),pe=a(H,!0);r(H),H.value=H.__value="token";var ye=o(H,2),he=a(ye,!0);r(ye),ye.value=ye.__value="password",g((q,P,Q)=>{d(F,q),d(pe,P),d(he,Q)},[()=>(t(),l(()=>t().t("None"))),()=>(t(),l(()=>t().t("Token"))),()=>(t(),l(()=>t().t("Password")))]),i(U,C)},$$slots:{default:!0},$$legacy:!0})}},$$slots:{default:!0}})}var O=o(Oe,2);{var ie=ve=>{{let te=v(()=>(e(R),t(),l(()=>e(R).CODE_EXECUTION_JUPYTER_AUTH==="password"?t().t("Jupyter Password"):t().t("Jupyter Token")))),ge=v(()=>(t(),l(()=>t().t("Credentials used to authenticate with the Jupyter server."))));mt(ve,{get label(){return e(te)},get description(){return e(ge)},children:(_e,Ae)=>{var U=Wr(),T=Qe(U);{var C=F=>{{let H=v(()=>(t(),l(()=>t().t("Enter Jupyter Password"))));Cr(F,{variant:"settings",type:"text",get placeholder(){return e(H)},autocomplete:"off",get value(){return e(R).CODE_EXECUTION_JUPYTER_AUTH_PASSWORD},set value(pe){We(R,e(R).CODE_EXECUTION_JUPYTER_AUTH_PASSWORD=pe)},$$legacy:!0})}},D=F=>{{let H=v(()=>(t(),l(()=>t().t("Enter Jupyter Token"))));Cr(F,{variant:"settings",type:"text",get placeholder(){return e(H)},autocomplete:"off",get value(){return e(R).CODE_EXECUTION_JUPYTER_AUTH_TOKEN},set value(pe){We(R,e(R).CODE_EXECUTION_JUPYTER_AUTH_TOKEN=pe)},$$legacy:!0})}};G(T,F=>{e(R),l(()=>e(R).CODE_EXECUTION_JUPYTER_AUTH==="password")?F(C):F(D,-1)})}i(_e,U)},$$slots:{default:!0}})}};G(O,ve=>{e(R),l(()=>e(R).CODE_EXECUTION_JUPYTER_AUTH)&&ve(ie)})}var M=o(O,2);{let ve=v(()=>(t(),l(()=>t().t("Code Execution Timeout")))),te=v(()=>(t(),l(()=>t().t("Maximum runtime in seconds before execution is stopped."))));mt(M,{get label(){return e(ve)},get description(){return e(te)},children:(ge,_e)=>{var Ae=H_();vt(Ae),k(Ae,1,me(c)),g(U=>Be(Ae,"placeholder",U),[()=>(t(),l(()=>t().t("e.g. 60")))]),dt(Ae,()=>e(R).CODE_EXECUTION_JUPYTER_TIMEOUT,U=>We(R,e(R).CODE_EXECUTION_JUPYTER_TIMEOUT=U)),i(ge,Ae)},$$slots:{default:!0}})}i(ue,xe)};G(qe,ue=>{e(R),l(()=>e(R).CODE_EXECUTION_ENGINE==="jupyter")&&ue(Re)})}i(de,be)};G(we,de=>{e(R),l(()=>e(R).ENABLE_CODE_EXECUTION)&&de(oe)})}i(De,Ne)},$$slots:{default:!0}})}var m=o(se,2);{let ce=v(()=>(t(),l(()=>t().t("Code Interpreter"))));va(m,{get title(){return e(ce)},children:(De,Le)=>{var Ne=pd(),Ce=Qe(Ne);{let de=v(()=>(t(),l(()=>t().t("Enable Code Interpreter")))),be=v(()=>(t(),l(()=>t().t("Allow models to use the code interpreter tool during chats."))));Jt(Ce,{get label(){return e(de)},get description(){return e(be)},children:Ir,$$slots:{default:(Me,qe)=>{const Re=v(()=>qe.labelId);Nt(Me,{get ariaLabelledbyId(){return e(Re)},get state(){return e(R).ENABLE_CODE_INTERPRETER},set state(ue){We(R,e(R).ENABLE_CODE_INTERPRETER=ue)},$$legacy:!0})}}})}var we=o(Ce,2);{var oe=de=>{var be=F7(),Me=Qe(be);{let xe=v(()=>(t(),l(()=>t().t("Code Interpreter Engine")))),K=v(()=>(e(R),t(),l(()=>e(R).CODE_INTERPRETER_ENGINE==="jupyter"?t().t("Warning: Jupyter execution enables arbitrary code execution, posing severe security risksâproceed with extreme caution."):t().t("Choose the runtime used by the code interpreter tool."))));Jt(Me,{get label(){return e(xe)},get description(){return e(K)},children:(Oe,O)=>{{let ie=v(()=>(t(),l(()=>t().t("Select a engine"))));aa(Oe,{get placeholder(){return e(ie)},required:!0,get value(){return e(R).CODE_INTERPRETER_ENGINE},set value(M){We(R,e(R).CODE_INTERPRETER_ENGINE=M)},children:(M,ve)=>{var te=B_(),ge=Qe(te),_e=a(ge,!0);r(ge),ge.value=ge.__value="";var Ae=o(ge,2);lr(Ae,1,()=>I,Ar,(U,T)=>{var C=U_(),D=a(C);r(C);var F={};g(()=>{d(D,`${e(T)??""}${e(T)==="jupyter"?" (Legacy)":""}`),F!==(F=e(T))&&(C.value=(C.__value=e(T))??"")}),i(U,C)}),g(U=>d(_e,U),[()=>(t(),l(()=>t().t("Select a engine")))]),i(M,te)},$$slots:{default:!0},$$legacy:!0})}},$$slots:{default:!0}})}var qe=o(Me,2);{var Re=xe=>{var K=F_(),Oe=Qe(K);{let te=v(()=>(t(),l(()=>t().t("Jupyter URL")))),ge=v(()=>(t(),l(()=>t().t("Connect code interpreter to a Jupyter server endpoint."))));mt(Oe,{get label(){return e(te)},get description(){return e(ge)},children:(_e,Ae)=>{var U=G_();vt(U),k(U,1,me(c)),g(T=>Be(U,"placeholder",T),[()=>(t(),l(()=>t().t("Enter Jupyter URL")))]),dt(U,()=>e(R).CODE_INTERPRETER_JUPYTER_URL,T=>We(R,e(R).CODE_INTERPRETER_JUPYTER_URL=T)),i(_e,U)},$$slots:{default:!0}})}var O=o(Oe,2);{let te=v(()=>(t(),l(()=>t().t("Jupyter Auth")))),ge=v(()=>(t(),l(()=>t().t("Select how Open WebUI authenticates with the Jupyter server."))));Jt(O,{get label(){return e(te)},get description(){return e(ge)},children:(_e,Ae)=>{{let U=v(()=>(t(),l(()=>t().t("Select an auth method"))));aa(_e,{get placeholder(){return e(U)},get value(){return e(R).CODE_INTERPRETER_JUPYTER_AUTH},set value(T){We(R,e(R).CODE_INTERPRETER_JUPYTER_AUTH=T)},children:(T,C)=>{var D=j_(),F=Qe(D),H=a(F,!0);r(F),F.value=F.__value="";var pe=o(F,2),ye=a(pe,!0);r(pe),pe.value=pe.__value="token";var he=o(pe,2),q=a(he,!0);r(he),he.value=he.__value="password",g((P,Q,re)=>{d(H,P),d(ye,Q),d(q,re)},[()=>(t(),l(()=>t().t("None"))),()=>(t(),l(()=>t().t("Token"))),()=>(t(),l(()=>t().t("Password")))]),i(T,D)},$$slots:{default:!0},$$legacy:!0})}},$$slots:{default:!0}})}var ie=o(O,2);{var M=te=>{{let ge=v(()=>(e(R),t(),l(()=>e(R).CODE_INTERPRETER_JUPYTER_AUTH==="password"?t().t("Jupyter Password"):t().t("Jupyter Token")))),_e=v(()=>(t(),l(()=>t().t("Credentials used to authenticate with the Jupyter server."))));mt(te,{get label(){return e(ge)},get description(){return e(_e)},children:(Ae,U)=>{var T=Wr(),C=Qe(T);{var D=H=>{{let pe=v(()=>(t(),l(()=>t().t("Enter Jupyter Password"))));Cr(H,{variant:"settings",type:"text",get placeholder(){return e(pe)},autocomplete:"off",get value(){return e(R).CODE_INTERPRETER_JUPYTER_AUTH_PASSWORD},set value(ye){We(R,e(R).CODE_INTERPRETER_JUPYTER_AUTH_PASSWORD=ye)},$$legacy:!0})}},F=H=>{{let pe=v(()=>(t(),l(()=>t().t("Enter Jupyter Token"))));Cr(H,{variant:"settings",type:"text",get placeholder(){return e(pe)},autocomplete:"off",get value(){return e(R).CODE_INTERPRETER_JUPYTER_AUTH_TOKEN},set value(ye){We(R,e(R).CODE_INTERPRETER_JUPYTER_AUTH_TOKEN=ye)},$$legacy:!0})}};G(C,H=>
83{e(R),l(()=>e(R).CODE_INTERPRETER_JUPYTER_AUTH==="password")?H(D):H(F,-1)})}i(Ae,T)},$$slots:{default:!0}})}};G(ie,te=>{e(R),l(()=>e(R).CODE_INTERPRETER_JUPYTER_AUTH)&&te(M)})}var ve=o(ie,2);{let te=v(()=>(t(),l(()=>t().t("Code Execution Timeout")))),ge=v(()=>(t(),l(()=>t().t("Maximum runtime in seconds before execution is stopped."))));mt(ve,{get label(){return e(te)},get description(){return e(ge)},children:(_e,Ae)=>{var U=H_();vt(U),k(U,1,me(c)),g(T=>Be(U,"placeholder",T),[()=>(t(),l(()=>t().t("e.g. 60")))]),dt(U,()=>e(R).CODE_INTERPRETER_JUPYTER_TIMEOUT,T=>We(R,e(R).CODE_INTERPRETER_JUPYTER_TIMEOUT=T)),i(_e,U)},$$slots:{default:!0}})}i(xe,K)};G(qe,xe=>{e(R),l(()=>e(R).CODE_INTERPRETER_ENGINE==="jupyter")&&xe(Re)})}var ue=o(qe,2);{let xe=v(()=>(t(),l(()=>t().t("Code Interpreter Prompt Template")))),K=v(()=>(t(),l(()=>t().t("Leave empty to use the default prompt, or enter a custom prompt."))));mt(ue,{get label(){return e(xe)},get description(){return e(K)},children:(Oe,O)=>{{let ie=v(()=>(t(),l(()=>t().t("Leave empty to use the default prompt, or enter a custom prompt"))));ma(Oe,{className:x,get placeholder(){return e(ie)},get value(){return e(R).CODE_INTERPRETER_PROMPT_TEMPLATE},set value(M){We(R,e(R).CODE_INTERPRETER_PROMPT_TEMPLATE=M)},$$legacy:!0})}},$$slots:{default:!0}})}i(de,be)};G(we,de=>{e(R),l(()=>e(R).ENABLE_CODE_INTERPRETER)&&de(oe)})}i(De,Ne)},$$slots:{default:!0}})}i(ae,Pe)};G(w,ae=>{e(R)&&ae(Te)})}r(j);var Se=o(j,2),Y=a(Se),ee=a(Y,!0);r(Y),r(Se),r(E),g((ae,Pe)=>{d(B,ae),d(ee,Pe)},[()=>(t(),l(()=>t().t("Code Execution"))),()=>(t(),l(()=>t().t("Save")))]),ke("submit",E,ca(async()=>{await A(),X()()})),i(He,E),cr(),n()}var Qc=u('<option class="bg-gray-100 dark:bg-gray-700"> </option>'),eu=u('<option selected=""> </option> <!>',1),K7=u('<div class="max-h-[24rem] overflow-y-auto pb-2 pr-1 scrollbar-hover"><!></div>'),Y7=u('<div><div class="mb-2"><div class="text-xs text-gray-600 dark:text-gray-400"> </div> <div class="mt-1.5 text-[0.6875rem] text-gray-400 dark:text-gray-600"> </div></div> <div class="grid w-full grid-cols-1 gap-2.5 sm:grid-cols-2"><!> <!></div> <div class="mt-2.5"><button class="flex w-full items-center justify-between gap-4 py-0.5 text-left" type="button"><span class="text-xs text-gray-600 dark:text-gray-400"> </span> <span class="text-[0.6875rem] text-gray-400 dark:text-gray-600"> </span></button> <!></div></div>'),V7=u('<div slot="label" class="flex items-center gap-2"><span> </span> <!></div>'),W_=u('<input type="number" min="1" step="1"/>'),q7=u('<input type="number" min="10" max="50" step="1"/>'),X7=u('<!> <div class="mt-1 text-[0.6875rem] text-gray-400 dark:text-gray-600"> <code></code>, <code></code>, <code></code>, <code></code>, <code></code></div>',1),J7=u("<!> <!> <!> <!> <!>",1),Z7=u("<!> <!> <!>",1),Q7=u('<input type="number" min="-1" step="1"/>'),e8=u("<!> <!>",1),t8=u("<!> <!> <!> <!> <!> <!> <!> <!> <!> <!> <!> <!> <!> <!> <!>",1),r8=u('<form class="flex h-full flex-col justify-between text-sm"><h2 class="text-sm font-medium text-gray-900 dark:text-white mb-4"> </h2> <div class="flex-1 min-h-0 overflow-y-auto scrollbar-hover pr-1.5"><!> <!> <!></div> <div class="flex justify-end pt-6 text-sm font-normal"><button class="px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full" type="submit"> </button></div></form>'),a8=u('<div class="flex h-full w-full items-center justify-center"><!></div>');function l8(He,_){vr(_,!1);const t=()=>ct(R,"$i18n",f),[f,n]=hr(),Ie=h(),X=ja(),R=mr("i18n");let I=h({TASK_MODEL:"",TASK_MODEL_EXTERNAL:"",TASK_MODEL_PARAMS:{},ENABLE_TITLE_GENERATION:!0,TITLE_GENERATION_PROMPT_TEMPLATE:"",ENABLE_FOLLOW_UP_GENERATION:!0,FOLLOW_UP_GENERATION_PROMPT_TEMPLATE:"",IMAGE_PROMPT_GENERATION_PROMPT_TEMPLATE:"",ENABLE_AUTOCOMPLETE_GENERATION:!0,AUTOCOMPLETE_GENERATION_INPUT_MAX_LENGTH:-1,AUTOCOMPLETE_GENERATION_PROMPT_TEMPLATE:"",TAGS_GENERATION_PROMPT_TEMPLATE:"",ENABLE_TAGS_GENERATION:!0,ENABLE_SEARCH_QUERY_GENERATION:!0,ENABLE_RETRIEVAL_QUERY_GENERATION:!0,QUERY_GENERATION_PROMPT_TEMPLATE:"",TOOLS_FUNCTION_CALLING_PROMPT_TEMPLATE:"",ENABLE_VOICE_MODE_PROMPT:!0,VOICE_MODE_PROMPT_TEMPLATE:""}),c=h({CONTEXT_COMPACTION_MODEL:"",ENABLE_CONTEXT_COMPACTION:!1,CONTEXT_COMPACTION_TOKEN_THRESHOLD:8e4,CONTEXT_COMPACTION_TOKEN_CAP:8e4,CONTEXT_COMPACTION_RETENTION_PE
83RCENTAGE:40,CONTEXT_COMPACTION_PROMPT_TEMPLATE:"",ENABLE_TOOL_PERMISSIONS:!1}),x=h(!1);const A=(m={})=>Object.fromEntries(Object.entries(m).filter(([ce,De])=>De!==null&&De!==""&&De!==void 0)),E=async()=>{const m={...e(I),TASK_MODEL_PARAMS:A(e(I).TASK_MODEL_PARAMS)};await(async ce=>{var De=yd(ce,2);s(I,De[0]),s(c,De[1])})(await Promise.all([_m(localStorage.token,m),Ch(localStorage.token,e(c))])),_a.update(ce=>ce&&{...ce,features:{...ce.features,enable_context_compaction:e(c).ENABLE_CONTEXT_COMPACTION,enable_tool_permissions:e(c).ENABLE_TOOL_PERMISSIONS}})};let V=[],B=[],j=h(null);const w=m=>{if(!m)return"";const ce=e(Ie).find(De=>De.id===m);return ce?(ce!=null&&ce.access_grants&&!ce.access_grants.some(De=>De.principal_type==="user"&&De.principal_id==="*"&&De.permission==="read")&&rt.error(t().t("This model is not publicly available. Please select another model.")),ce.id):""},Te="w-full h-7 rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500",Se="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500",Y=async()=>{try{await(async m=>{var ce=yd(m,2);s(I,ce[0]),s(c,ce[1])})(await Promise.all([gm(localStorage.token),Ph(localStorage.token)])),We(I,e(I).TASK_MODEL_PARAMS=e(I).TASK_MODEL_PARAMS??{}),V=await Mf(localStorage.token),B=await La(localStorage.token,null,!1),s(j,B.map(m=>{const ce=V.find(De=>De.id===m.id);return ce?{...m,...ce}:{...m,id:m.id,name:m.name,is_active:!0}})),e(j)}catch(m){const ce=m;rt.error((ce==null?void 0:ce.detail)??(ce==null?void 0:ce.message)??t().t("Failed to load Interface settings")),s(j,[])}};ea(async()=>{await Y()}),Kt(()=>e(j),()=>{s(Ie,e(j)??[])}),la(),gr();var ee=Wr(),ae=Qe(ee);{var Pe=m=>{var ce=r8(),De=a(ce),Le=a(De,!0);r(De);var Ne=o(De,2),Ce=a(Ne);{let qe=v(()=>(t(),l(()=>t().t("Tasks"))));va(Ce,{get title(){return e(qe)},first:!0,children:(Re,ue)=>{var xe=Y7(),K=a(xe),Oe=a(K),O=a(Oe,!0);r(Oe);var ie=o(Oe,2),M=a(ie,!0);r(ie),r(K);var ve=o(K,2),te=a(ve);{let pe=v(()=>(t(),l(()=>t().t("Local Task Model"))));mt(te,{get label(){return e(pe)},children:(ye,he)=>{{let q=v(()=>(t(),l(()=>t().t("Select a model"))));aa(ye,{className:"w-full",get placeholder(){return e(q)},get value(){return e(I).TASK_MODEL},set value(P){We(I,e(I).TASK_MODEL=P)},$$events:{change:()=>{We(I,e(I).TASK_MODEL=w(e(I).TASK_MODEL))}},children:(P,Q)=>{var re=eu(),le=Qe(re),$e=a(le,!0);r(le),le.value=le.__value="";var ze=o(le,2);lr(ze,1,()=>e(Ie),Ar,(Fe,at)=>{var tt=Qc(),Je=a(tt);r(tt);var je={};g(ne=>{d(Je,`${e(at),l(()=>e(at).name)??""} 84 ${ne??""}`),je!==(je=(e(at),l(()=>e(at).id)))&&(tt.value=(tt.__value=(e(at),l(()=>e(at).id)))??"")},[()=>(e(at),t(),l(()=>{var ne;return((ne=e(at))==null?void 0:ne.connection_type)==="local"?`(${t().t("Local")})`:""}))]),i(Fe,tt)}),g(Fe=>d($e,Fe),[()=>(t(),l(()=>t().t("Current Model")))]),i(P,re)},$$slots:{default:!0},$$legacy:!0})}},$$slots:{default:!0}})}var ge=o(te,2);{let pe=v(()=>(t(),l(()=>t().t("External Task Model"))));mt(ge,{get label(){return e(pe)},children:(ye,he)=>{{let q=v(()=>(t(),l(()=>t().t("Select a model"))));aa(ye,{className:"w-full",get placeholder(){return e(q)},get value(){return e(I).TASK_MODEL_EXTERNAL},set value(P){We(I,e(I).TASK_MODEL_EXTERNAL=P)},$$events:{change:()=>{We(I,e(I).TASK_MODEL_EXTERNAL=w(e(I).TASK_MODEL_EXTERNAL))}},children:(P,Q)=>{var re=eu(),le=Qe(re),$e=a(le,!0);r(le),le.value=le.__value="";var ze=o(le,2);lr(ze,1,()=>e(Ie),Ar,(Fe,at)=>{var tt=Qc(),Je=a(tt);r(tt);var je={};g(ne=>{d(Je,`${e(at),l(()=>e(at).name)??""} 85 ${ne??""}`),je!==(je=(e(at),l(()=>e(at).id)))&&(tt.value=(tt.__value=(e(at),l(()=>e(at).id)))??"")},[()=>(e(at),t(),l(()=>{var ne;return((ne=e(at))==null?void 0:ne.connection_type)==="local"?`(${t().t("Local")})`:""}))]),i(Fe,tt)}),g(Fe=>d($e,Fe),[()=>(t(),l(()=>t().t("Current Model")))]),i(P,re)},$$slots:{default:!0},$$legacy:!0})}},$$slots:{default:!0}})}r(ve);var _e=o(ve,2),Ae=a(_e),U=a(Ae),T=a(U,!0);r(U);var C=o(U,2),D=a(C,!0);r(C),r(Ae);var F=o(Ae,2);{var H=pe=>{var ye=K7(),he=a(ye);zu(he,{admin:!0,custom:!0,get params(){return e(I).TASK_MODEL_PARAMS},set params(q){We(I,e(I).TASK_MODEL_PARAMS=q)},$$legacy:!0}),r(ye),i(pe,ye)};G(F,pe=>{e(x)&&pe(H)})}r(_e),r(xe),g((pe,ye,he,q)=>{d(O,pe),d(M,ye),d(T,he),d(D,q)},[()=>(t(),l(()=>t().t("Task Model"))),()=>(t(),l(()=>t().t("Choose fallback models for background tasks. Current Model follows the active chat model."))),()=>(t(),l(()=>t().t("Task Model Parameters"))),()=>(e(x),t(),l(()=>e(x)?t().t("Close"):t().t("Configure")))]),ke("click",Ae,()=>{s(x,!e(x))}),i(Re,xe)},$$slots:{default:!0}})}var we=o(Ce,2);{let qe=v(()=>(t(),l(()=>t().t("Chat"))));va(we,{get title(){return e(qe)},children:(Re,ue)=>{var xe=Z7(),K=Qe(xe);{let M=v(()=>(t(),l(()=>t().t("Tool Permissions")))),ve=v(()=>(t(),l(()=>t().t("Show Full access and Ask for approval in the chat input menu."))));Jt(K,{get label(){return e(M)},get description(){return e(ve)},children:Ir,$$slots:{default:(te,ge)=>{const _e=v(()=>ge.labelId);Nt(te,{get ariaLabelledbyId(){return e(_e)},get state(){return e(c).ENABLE_TOOL_PERMISSIONS},set state(Ae){We(c,e(c).ENABLE_TOOL_PERMISSIONS=Ae)},$$legacy:!0})},label:(te,ge)=>{var _e=V7(),Ae=a(_e),U=a(Ae,!0);r(Ae);var T=o(Ae,2);Bd(T,{}),r(_e),g(C=>d(U,C),[()=>(t(),l(()=>t().t("Tool Permissions")))]),i(te,_e)}}})}var Oe=o(K,2);{let M=v(()=>(t(),l(()=>t().t("Context Compaction")))),ve=v(()=>(t(),l(()=>t().t("Summarize older chat history when the conversation context grows large."))));Jt(Oe,{get label(){return e(M)},get description(){return e(ve)},children:Ir,$$slots:{default:(te,ge)=>{const _e=v(()=>ge.labelId);Nt(te,{get ariaLabelledbyId(){return e(_e)},get state(){return e(c).ENABLE_CONTEXT_COMPACTION},set state(Ae){We(c,e(c).ENABLE_CONTEXT_COMPACTION=Ae)},$$legacy:!0})}}})}var O=o(Oe,2);{var ie=M=>{var ve=J7(),te=Qe(ve);{let T=v(()=>(t(),l(()=>
85t().t("Context Compaction Model")))),C=v(()=>(t(),l(()=>t().t("Choose a dedicated model for context compaction summaries. Current Model follows the active chat model."))));mt(te,{get label(){return e(T)},get description(){return e(C)},children:(D,F)=>{{let H=v(()=>(t(),l(()=>t().t("Select a model"))));aa(D,{className:"w-full",get placeholder(){return e(H)},get value(){return e(c).CONTEXT_COMPACTION_MODEL},set value(pe){We(c,e(c).CONTEXT_COMPACTION_MODEL=pe)},$$events:{change:()=>{We(c,e(c).CONTEXT_COMPACTION_MODEL=w(e(c).CONTEXT_COMPACTION_MODEL))}},children:(pe,ye)=>{var he=eu(),q=Qe(he),P=a(q,!0);r(q),q.value=q.__value="";var Q=o(q,2);lr(Q,1,()=>e(Ie),Ar,(re,le)=>{var $e=Qc(),ze=a($e);r($e);var Fe={};g(at=>{d(ze,`${e(le),l(()=>e(le).name)??""} 86 ${at??""}`),Fe!==(Fe=(e(le),l(()=>e(le).id)))&&($e.value=($e.__value=(e(le),l(()=>e(le).id)))??"")},[()=>(e(le),t(),l(()=>{var at;return((at=e(le))==null?void 0:at.connection_type)==="local"?`(${t().t("Local")})`:""}))]),i(re,$e)}),g(re=>d(P,re),[()=>(t(),l(()=>t().t("Current Model")))]),i(pe,he)},$$slots:{default:!0},$$legacy:!0})}},$$slots:{default:!0}})}var ge=o(te,2);{let T=v(()=>(t(),l(()=>t().t("Token Threshold")))),C=v(()=>(t(),l(()=>t().t("Older messages are summarized when estimated context exceeds this token limit."))));mt(ge,{get label(){return e(T)},get description(){return e(C)},children:(D,F)=>{var H=W_();vt(H),k(H,1,me(Te)),dt(H,()=>e(c).CONTEXT_COMPACTION_TOKEN_THRESHOLD,pe=>We(c,e(c).CONTEXT_COMPACTION_TOKEN_THRESHOLD=pe)),i(D,H)},$$slots:{default:!0}})}var _e=o(ge,2);{let T=v(()=>(t(),l(()=>t().t("Token Cap")))),C=v(()=>(t(),l(()=>t().t("Model-specific context compaction thresholds cannot exceed this token limit."))));mt(_e,{get label(){return e(T)},get description(){return e(C)},children:(D,F)=>{var H=W_();vt(H),k(H,1,me(Te)),dt(H,()=>e(c).CONTEXT_COMPACTION_TOKEN_CAP,pe=>We(c,e(c).CONTEXT_COMPACTION_TOKEN_CAP=pe)),i(D,H)},$$slots:{default:!0}})}var Ae=o(_e,2);{let T=v(()=>(t(),l(()=>t().t("Retained Messages")))),C=v(()=>(t(),l(()=>t().t("Percentage of recent messages to keep after older messages are summarized."))));mt(Ae,{get label(){return e(T)},get description(){return e(C)},children:(D,F)=>{var H=q7();vt(H),k(H,1,me(Te)),dt(H,()=>e(c).CONTEXT_COMPACTION_RETENTION_PERCENTAGE,pe=>We(c,e(c).CONTEXT_COMPACTION_RETENTION_PERCENTAGE=pe)),i(D,H)},$$slots:{default:!0}})}var U=o(Ae,2);{let T=v(()=>(t(),l(()=>t().t("Context Compaction Prompt")))),C=v(()=>(t(),l(()=>t().t("Controls how older messages are rewritten into a running summary."))));mt(U,{get label(){return e(T)},get description(){return e(C)},children:(D,F)=>{var H=X7(),pe=Qe(H);{let $e=v(()=>(t(),l(()=>t().t("Leave empty to use the default prompt, or enter a custom prompt"))));ma(pe,{className:Se,get placeholder(){return e($e)},get value(){return e(c).CONTEXT_COMPACTION_PROMPT_TEMPLATE},set value(ze){We(c,e(c).CONTEXT_COMPACTION_PROMPT_TEMPLATE=ze)},$$legacy:!0})}var ye=o(pe,2),he=a(ye),q=o(he);q.textContent="{{PREVIOUS_SUMMARY}}";var P=o(q,2);P.textContent="{{COMPACTED_MESSAGES}}";var Q=o(P,2);Q.textContent="{{RECENT_MESSAGES}}";var re=o(Q,2);re.textContent="{{MESSAGES}}";var le=o(re,2);le.textContent="{{CURRENT_DATE}}",r(ye),g($e=>d(he,`${$e??""}: `),[()=>(t(),l(()=>t().t("Available variables")))]),i(D,H)},$$slots:{default:!0}})}i(M,ve)};G(O,M=>{e(c),l(()=>e(c).ENABLE_CONTEXT_COMPACTION)&&M(ie)})}i(Re,xe)},$$slots:{default:!0}})}var oe=o(we,2);{let qe=v(()=>(t(),l(()=>t().t("Generation"))));va(oe,{get title(){return e(qe)},children:(Re,ue)=>{var xe=t8(),K=Qe(xe);{let P=v(()=>(t(),l(()=>t().t("Title Generation")))),Q=v(()=>(t(),l(()=>t().t("Allow automatic names for new chats."))));Jt(K,{get label(){return e(P)},get description(){return e(Q)},children:Ir,$$slots:{default:(re,le)=>{const $e=v(()=>le.labelId);Nt(re,{get ariaLabelledbyId(){return e($e)},get state(){return e(I).ENABLE_TITLE_GENERATION},set state(ze){We(I,e(I).ENABLE_TITLE_GENERATION=ze)},$$legacy:!0})}}})}var Oe=o(K,2);{var O=P=>{{let Q=v(()=>(t(),l(()=>t().t("Title Generation Prompt")))),re=v(()=>(t(),l(()=>t().t("Shapes the short label generated for each chat."))));mt(P,{get label(){return e(Q)},get description(){return e(re)},children:(le,$e)=>{{let ze=v(()=>(t(),l(()=>t().t("Leave empty to use the default prompt, or enter a custom prompt"))));ma(le,{className:Se,get placeholder(){return e(ze)},get value(){return e(I).TITLE_GENERATION_PROMPT_TEMPLATE},set value(Fe){We(I,e(I).TITLE_GENERATION_PROMPT_TEMPLATE=Fe)},$$legacy:!0})}},$$slots:{default:!0}})}};G(Oe,P=>{e(I),l(()=>e(I).ENABLE_TITLE_GENERATION)&&P(O)})}var ie=o(Oe,2);{let P=v(()=>(t(),l(()=>t().t("Voice Mode Prompt")))),Q=v(()=>(t(),l(()=>t().t("Apply voice-specific instructions while voice mode is active."))));Jt(ie,{get label(){return e(P)}
86,get description(){return e(Q)},children:Ir,$$slots:{default:(re,le)=>{const $e=v(()=>le.labelId);Nt(re,{get ariaLabelledbyId(){return e($e)},get state(){return e(I).ENABLE_VOICE_MODE_PROMPT},set state(ze){We(I,e(I).ENABLE_VOICE_MODE_PROMPT=ze)},$$legacy:!0})}}})}var M=o(ie,2);{var ve=P=>{{let Q=v(()=>(t(),l(()=>t().t("Prompt Template")))),re=v(()=>(t(),l(()=>t().t("Defines the behavior used for spoken conversations."))));mt(P,{get label(){return e(Q)},get description(){return e(re)},children:(le,$e)=>{{let ze=v(()=>(t(),l(()=>t().t("Leave empty to use the default prompt, or enter a custom prompt"))));ma(le,{className:Se,get placeholder(){return e(ze)},get value(){return e(I).VOICE_MODE_PROMPT_TEMPLATE},set value(Fe){We(I,e(I).VOICE_MODE_PROMPT_TEMPLATE=Fe)},$$legacy:!0})}},$$slots:{default:!0}})}};G(M,P=>{e(I),l(()=>e(I).ENABLE_VOICE_MODE_PROMPT)&&P(ve)})}var te=o(M,2);{let P=v(()=>(t(),l(()=>t().t("Follow Up Generation")))),Q=v(()=>(t(),l(()=>t().t("Show suggested next questions after assistant responses."))));Jt(te,{get label(){return e(P)},get description(){return e(Q)},children:Ir,$$slots:{default:(re,le)=>{const $e=v(()=>le.labelId);Nt(re,{get ariaLabelledbyId(){return e($e)},get state(){return e(I).ENABLE_FOLLOW_UP_GENERATION},set state(ze){We(I,e(I).ENABLE_FOLLOW_UP_GENERATION=ze)},$$legacy:!0})}}})}var ge=o(te,2);{var _e=P=>{{let Q=v(()=>(t(),l(()=>t().t("Follow Up Generation Prompt")))),re=v(()=>(t(),l(()=>t().t("Guides the suggestions shown after an assistant response."))));mt(P,{get label(){return e(Q)},get description(){return e(re)},children:(le,$e)=>{{let ze=v(()=>(t(),l(()=>t().t("Leave empty to use the default prompt, or enter a custom prompt"))));ma(le,{className:Se,get placeholder(){return e(ze)},get value(){return e(I).FOLLOW_UP_GENERATION_PROMPT_TEMPLATE},set value(Fe){We(I,e(I).FOLLOW_UP_GENERATION_PROMPT_TEMPLATE=Fe)},$$legacy:!0})}},$$slots:{default:!0}})}};G(ge,P=>{e(I),l(()=>e(I).ENABLE_FOLLOW_UP_GENERATION)&&P(_e)})}var Ae=o(ge,2);{let P=v(()=>(t(),l(()=>t().t("Tags Generation")))),Q=v(()=>(t(),l(()=>t().t("Create chat tags from conversation content."))));Jt(Ae,{get label(){return e(P)},get description(){return e(Q)},children:Ir,$$slots:{default:(re,le)=>{const $e=v(()=>le.labelId);Nt(re,{get ariaLabelledbyId(){return e($e)},get state(){return e(I).ENABLE_TAGS_GENERATION},set state(ze){We(I,e(I).ENABLE_TAGS_GENERATION=ze)},$$legacy:!0})}}})}var U=o(Ae,2);{var T=P=>{{let Q=v(()=>(t(),l(()=>t().t("Tags Generation Prompt")))),re=v(()=>(t(),l(()=>t().t("Controls how chat tags are inferred."))));mt(P,{get label(){return e(Q)},get description(){return e(re)},children:(le,$e)=>{{let ze=v(()=>(t(),l(()=>t().t("Leave empty to use the default prompt, or enter a custom prompt"))));ma(le,{className:Se,get placeholder(){return e(ze)},get value(){return e(I).TAGS_GENERATION_PROMPT_TEMPLATE},set value(Fe){We(I,e(I).TAGS_GENERATION_PROMPT_TEMPLATE=Fe)},$$legacy:!0})}},$$slots:{default:!0}})}};G(U,P=>{e(I),l(()=>e(I).ENABLE_TAGS_GENERATION)&&P(T)})}var C=o(U,2);{let P=v(()=>(t(),l(()=>t().t("Retrieval Query Generation")))),Q=v(()=>(t(),l(()=>t().t("Rewrite user requests for knowledge retrieval."))));Jt(C,{get label(){return e(P)},get description(){return e(Q)},children:Ir,$$slots:{default:(re,le)=>{const $e=v(()=>le.labelId);Nt(re,{get ariaLabelledbyId(){return e($e)},get state(){return e(I).ENABLE_RETRIEVAL_QUERY_GENERATION},set state(ze){We(I,e(I).ENABLE_RETRIEVAL_QUERY_GENERATION=ze)},$$legacy:!0})}}})}var D=o(C,2);{let P=v(()=>(t(),l(()=>t().t("Web Search Query Generation")))),Q=v(()=>(t(),l(()=>t().t("Rewrite user requests into web-search queries."))));Jt(D,{get label(){return e(P)},get description(){return e(Q)},children:Ir,$$slots:{default:(re,le)=>{const $e=v(()=>le.labelId);Nt(re,{get ariaLabelledbyId(){return e($e)},get state(){return e(I).ENABLE_SEARCH_QUERY_GENERATION},set state(ze){We(I,e(I).ENABLE_SEARCH_QUERY_GENERATION=ze)},$$legacy:!0})}}})}var F=o(D,2);{let P=v(()=>(t(),l(()=>t().t("Query Generation Prompt")))),Q=v(()=>(t(),l(()=>t().t("Shared prompt for retrieval and web-search query rewriting."))));mt(F,{get label(){return e(P)}
86,get description(){return e(Q)},children:(re,le)=>{{let $e=v(()=>(t(),l(()=>t().t("Leave empty to use the default prompt, or enter a custom prompt"))));ma(re,{className:Se,get placeholder(){return e($e)},get value(){return e(I).QUERY_GENERATION_PROMPT_TEMPLATE},set value(ze){We(I,e(I).QUERY_GENERATION_PROMPT_TEMPLATE=ze)},$$legacy:!0})}},$$slots:{default:!0}})}var H=o(F,2);{let P=v(()=>(t(),l(()=>t().t("Autocomplete Generation")))),Q=v(()=>(t(),l(()=>t().t("Suggest completions while users type chat messages."))));Jt(H,{get label(){return e(P)},get description(){return e(Q)},children:Ir,$$slots:{default:(re,le)=>{const $e=v(()=>le.labelId);Nt(re,{get ariaLabelledbyId(){return e($e)},get state(){return e(I).ENABLE_AUTOCOMPLETE_GENERATION},set state(ze){We(I,e(I).ENABLE_AUTOCOMPLETE_GENERATION=ze)},$$legacy:!0})}}})}var pe=o(H,2);{var ye=P=>{var Q=e8(),re=Qe(Q);{let $e=v(()=>(t(),l(()=>t().t("Autocomplete Generation Input Max Length")))),ze=v(()=>(t(),l(()=>t().t("Limit how much draft text is sent for suggestion generation."))));mt(re,{get label(){return e($e)},get description(){return e(ze)},children:(Fe,at)=>{var tt=Q7();vt(tt),k(tt,1,me(Te)),g(Je=>Be(tt,"placeholder",Je),[()=>(t(),l(()=>t().t("-1 for no limit, or a positive integer for a specific limit")))]),dt(tt,()=>e(I).AUTOCOMPLETE_GENERATION_INPUT_MAX_LENGTH,Je=>We(I,e(I).AUTOCOMPLETE_GENERATION_INPUT_MAX_LENGTH=Je)),i(Fe,tt)},$$slots:{default:!0}})}var le=o(re,2);{let $e=v(()=>(t(),l(()=>t().t("Autocomplete Generation Prompt")))),ze=v(()=>(t(),l(()=>t().t("Guides inline completions while users type a message."))));mt(le,{get label(){return e($e)},get description(){return e(ze)},children:(Fe,at)=>{{let tt=v(()=>(t(),l(()=>t().t("Leave empty to use the default prompt, or enter a custom prompt"))));ma(Fe,{className:Se,get placeholder(){return e(tt)},get value(){return e(I).AUTOCOMPLETE_GENERATION_PROMPT_TEMPLATE},set value(Je){We(I,e(I).AUTOCOMPLETE_GENERATION_PROMPT_TEMPLATE=Je)},$$legacy:!0})}},$$slots:{default:!0}})}i(P,Q)};G(pe,P=>{e(I),l(()=>e(I).ENABLE_AUTOCOMPLETE_GENERATION)&&P(ye)})}var he=o(pe,2);{let P=v(()=>(t(),l(()=>t().t("Image Prompt Generation Prompt")))),Q=v(()=>(t(),l(()=>t().t("Rewrites user intent into an image-generation prompt."))));mt(he,{get label(){return e(P)},get description(){return e(Q)},children:(re,le)=>{{let $e=v(()=>(t(),l(()=>t().t("Leave empty to use the default prompt, or enter a custom prompt"))));ma(re,{className:Se,get placeholder(){return e($e)},get value(){return e(I).IMAGE_PROMPT_GENERATION_PROMPT_TEMPLATE},set value(ze){We(I,e(I).IMAGE_PROMPT_GENERATION_PROMPT_TEMPLATE=ze)},$$legacy:!0})}},$$slots:{default:!0}})}var q=o(he,2);{let P=v(()=>(t(),l(()=>t().t("Tools Function Calling Prompt")))),Q=v(()=>(t(),l(()=>t().t("Guides how the assistant formats tool and function calls."))));mt(q,{get label(){return e(P)},get description(){return e(Q)},children:(re,le)=>{{let $e=v(()=>(t(),l(()=>t().t("Leave empty to use the default prompt, or enter a custom prompt"))));ma(re,{className:Se,get placeholder(){return e($e)},get value(){return e(I).TOOLS_FUNCTION_CALLING_PROMPT_TEMPLATE},set value(ze){We(I,e(I).TOOLS_FUNCTION_CALLING_PROMPT_TEMPLATE=ze)},$$legacy:!0})}},$$slots:{default:!0}})}i(Re,xe)},$$slots:{default:!0}})}r(Ne);var de=o(Ne,2),be=a(de),Me=a(be,!0);r(be),r(de),r(ce),g((qe,Re)=>{d(Le,qe),d(Me,Re)},[()=>(t(),l(()=>t().t("Interface"))),()=>(t(),l(()=>t().t("Save")))]),ke("submit",ce,ca(()=>{E(),X("save")})),i(m,ce)},se=m=>{var ce=a8(),De=a(ce);ra(De,{className:"size-5"}),r(ce),i(m,ce)};G(ae,m=>{e(j)!==null&&e(I)&&e(c)?m(Pe):m(se,-1)})}i(He,ee),cr(),n()}var z_=u("<option> </option> <option> </option> <option> </option> <option> </option> <option> </option> <option> </option>",1),ko=u("<input/>"),md=u('<input required=""/>
86'),o8=u("<option> </option> <option> </option>",1),s8=u('<input list="stt-openai-model-list"/> <datalist id="stt-openai-model-list"><option></option></datalist>',1),K_=u('<div class="grid grid-cols-1 gap-2 sm:grid-cols-2"><!> <!></div> <!> <!>',1),n8=u('<input/> <div><a href="https://developers.deepgram.com/docs/models" target="_blank"> </a></div>',1),i8=u("<!> <!>",1),d8=u('<!> <div class="grid grid-cols-1 gap-2 sm:grid-cols-2"><!> <!> <!> <!></div>',1),v8=u('<input placeholder="voxtral-mini-latest"/> <div><a href="https://docs.mistral.ai/capabilities/audio_transcription" target="_blank"> </a></div>',1),c8=Jr('<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" fill="currentColor" class="size-4"><path d="M8.75 2.75a.75.75 0 0 0-1.5 0v5.69L5.03 6.22a.75.75 0 0 0-1.06 1.06l3.5 3.5a.75.75 0 0 0 1.06 0l3.5-3.5a.75.75 0 0 0-1.06-1.06L8.75 8.44V2.75Z"></path><path d="M3.5 9.75a.75.75 0 0 0-1.5 0v1.5A2.75 2.75 0 0 0 4.75 14h6.5A2.75 2.75 0 0 0 14 11.25v-1.5a.75.75 0 0 0-1.5 0v1.5c0 .69-.56 1.25-1.25 1.25h-6.5c-.69 0-1.25-.56-1.25-1.25v-1.5Z"></path></svg>'),u8=u('<div class="flex w-full gap-2"><input/> <button class="flex h-7 w-7 shrink-0 items-center justify-center rounded-lg text-gray-500 transition-colors hover:bg-black/5 hover:text-gray-900 disabled:opacity-50 dark:text-gray-500 dark:hover:bg-white/5 dark:hover:text-white" type="button"><!></button></div> <div><a href="https://github.com/SYSTRAN/faster-whisper" target="_blank"> </a></div>',1),g8=u("<!> <!> <!>
86",1),hd=u('<div class="grid grid-cols-1 gap-2 sm:grid-cols-2"><!> <!></div>'),_8=u('<!> <div class="grid grid-cols-1 gap-2 sm:grid-cols-2"><!> <!></div>',1),f8=u('<option class="bg-gray-100 dark:bg-gray-700"> </option>'),p8=u("<option> </option> <!>",1),m8=u('<input list="tts-transformers-model-list"/> <datalist id="tts-transformers-model-list"><option></option></datalist> <div> <a href="https://github.com/microsoft/SpeechT5" target="_blank"> </a> <a href="https://huggingface.co/datasets/Matthijs/cmu-arctic-xvectors" target="_blank"> </a></div>',1),Y_=u('<input list="tts-model-list"/>'),h8=u('<div class="grid grid-cols-1 gap-2 sm:grid-cols-2"><!> <!></div> <!>',1),x8=u('<input/> <div><a href="https://learn.microsoft.com/en-us/azure/ai-services/speech-service/rest-text-to-speech?tabs=streaming#audio-outputs" target="_blank"> </a></div>',1),b8=u('<option class="bg-gray-50 dark:bg-gray-700"></option>'),y8=u("<option> </option>"),$8=u('<!> <!> <!> <datalist id="tts-model-list"></datalist> <!>',1),w8=u('<form class="flex h-full flex-col justify-between text-sm"><h2 class="text-sm font-medium text-gray-900 dark:text-white mb-4"> </h2> <div class="flex-1 min-h-0 overflow-y-auto scrollbar-hover pr-1.5"><!> <!></div> <div class="flex justify-end pt-6 text-sm font-normal"><button class="px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full" type="submit"> </button></div></form>');function k8(He,_){vr(_,!1);const t=()=>ct(_a,"$config",Ie),f=()=>ct(ua,"$settings",Ie),n=()=>ct(I,"$i18n",Ie),[Ie,X]=hr(),R=ja(),I=mr("i18n");let c=Xe(_,"saveHandler",8),x=h(""),A=h(""),E=h(""),V=h(""),B=h(""),j=h(""),w=h(""),Te=h(nd.PUNCTUATION),Se=h(""),Y=h(""),ee=h(""),ae=h(""),Pe=h(""),se=h(""),m=h(""),ce=h("multipart"),De=h(""),Le=h(""),Ne=h(""),Ce=h(""),we=h(""),oe=h(""),de=h(""),be=h(""),Me=h(""),qe=h(""),Re=h(""),ue=h(""),xe=h(!1),K=h(!1),Oe=h([]),O=h([]),ie=h([]);const M="w-full h-7 rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500",ve="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500",te=async()=>{var q,P,Q;if(e(V)==="")s(ie,[]);else{const re=await Wx(localStorage.token,((P=(q=t())==null?void 0:q.features)==null?void 0:P.enable_direct_connections)&&(((Q=f())==null?void 0:Q.directConnections)??null)).catch(le=>{rt.error(`${le}`)});re&&s(ie,re.models)}},ge=async()=>{if(e(V)===""){s(O,[]);const q=setInterval(()=>{s(Oe,speechSynthesis.getVoices()),e(Oe).length>0&&(clearInterval(q),e(Oe).sort((P,Q)=>P.name.localeCompare(Q.name,n().resolvedLanguage)))},100)}else{s(Oe,[]);const q=await Pf(localStorage.token).catch(P=>{rt.error(`${P}`)});q&&(s(O,q.voices??[]),e(O).sort((P,Q)=>(P.name??P.id).localeCompare(Q.name??Q.id,n().resolvedLanguage)))}},_e=async()=>{let q={};try{q=e(w)?JSON.parse(e(w)):{},s(w,JSON.stringify(q,null,2))}catch{rt.error(n().t("Invalid JSON format for Parameters"));return}await zx(localStorage.token,{tts:{OPENAI_API_BASE_URL:e(x),OPENAI_API_KEY:e(A),OPENAI_PARAMS:q,API_KEY:e(E),ENGINE:e(V),MODEL:e(B),VOICE:e(j),AZURE_SPEECH_REGION:e(Se),AZURE_SPEECH_BASE_URL:e(Y),AZURE_SPEECH_OUTPUT_FORMAT:e(ee),MISTRAL_API_KEY:e(ae),MISTRAL_API_BASE_URL:e(Pe),SPLIT_ON:e(Te)},stt:{OPENAI_API_BASE_URL:e(se),OPENAI_API_KEY:e(m),OPENAI_API_REQUEST_FORMAT:e(ce),ENGINE:e(De),MODEL:e(Le),SUPPORTED_CONTENT_TYPES:e(Ne).split(","),WHISPER_MODEL:e(Ce),DEEPGRAM_API_KEY:e(qe),AZURE_API_KEY:e(we),AZURE_REGION:e(oe),AZURE_LOCALES:e(de),AZURE_BASE_URL:e(be),AZURE_MAX_SPEAKERS:e(Me),MISTRAL_API_KEY:e(Re),MISTRAL_API_BASE_URL:e(ue),MISTRAL_USE_CHAT_COMPLETIONS:e(xe)}})&&(c()(),_a.set(await so()))},Ae=async()=>{s(K,!0),await _e(),s(K,!1)};ea(async()=>{var P,Q;const q=await Fx(localStorage.token);q&&(s(x,q.tts.OPENAI_API_BASE_URL),s(A,q.tts.OPENAI_API_KEY),s(w,JSON.stringify(((P=q==null?void 0:q.tts)==null?void 0:P.OPENAI_PARAMS)??"",null,2)),s(E,q.tts.API_KEY),s(V,q.tts.ENGINE),s(B,q.tts.MODEL),s(j,q.tts.VOICE),s(Te,q.tts.SPLIT_ON||nd.PUNCTUATION),s(Se,q.tts.AZURE_SPEECH_REGION),s(Y,q.tts.AZURE_SPEECH_BASE_URL),s(ee,q.tts.AZURE_SPEECH_OUTPUT_FORMAT),s(ae,q.tts.MISTRAL_API_KEY),s(Pe,q.tts.MISTRAL_API_BASE_URL),s(se,q.stt.OPENAI_API_BASE_URL),s(m,q.stt.OPENAI_API_KEY),s(ce,q.stt.OPENAI_API_REQUEST_FORMAT||"multipart"),s(De,q.stt.ENGINE),s(Le,q.stt.MODEL),s(Ne,(((Q=q==null?void 0:q.stt)==null?void 0:Q.SUPPORTED_CONTENT_TYPES)??[]).join(",")),s(Ce,q.stt.WHISPER_MODEL),s(we,q.stt.AZURE_API_KEY),s(oe,q.stt.AZURE_REGION),s(de,q.stt.AZURE_LOCALES),s(be,q.stt.AZURE_BASE_URL),s(Me,q.stt.AZURE_MAX_SPEAKERS),s(qe,q.stt.DEEPGRAM_API_KEY),s(Re,q.stt.MISTRAL_API_KEY),s(ue,q.stt.MISTRAL_API_BASE_URL),s(xe,q.stt.MISTRAL_USE_CHAT_COMPLETIONS)),await ge(),await te()}),gr();var U=w8(),T=a(U),C=a(T,!0);r(T);var D=o(T,2),F=a(D);{let q=v(()=>(n(),l(()=>n().t("Speech-to-Text"))));va(F,{get title(){return e(q)},first:!0,children:(P,Q)=>{var re=g8(),le=Qe(re);{let J=v(()=>(n(),l(()=>n().t("Speech-to-Text Engine")))),W=v(()=>(n(),l(()=>n().t("Choose the transcription provider used for audio input."))));Jt(le,{get label(){return e(J)},get description(){return e(W)},children:(Z,Ee)=>{{let Ge=v(()=>(n(),l(()=>n().t("Select an engine"))));aa(Z,{get placeholder(){return e(Ge)},get value(){return e(De)},set value(p){s(De,p)},children:(p,$)=>{var S=z_(),L=Qe(S),fe=a(L,!0);r(L),L.value=L.__value="";var y=o(L,2),b=a(y,!0);r(y),y.value=y.__value="openai";var N=o(y,2),z=a(N,!0);r(N),N.value=N.__value="web";var Ue=o(N,2),Ye=a(Ue,!0);r(Ue),Ue.value=Ue.__value="deepgram";var Ve=o(Ue,2),lt=a(Ve,!0);r(Ve),Ve.value=Ve.__value="azure";var st=o(Ve,2),Ke=a(st,!0);r(st),st.value=st.__value="mistral",g((Ze,ot,ut,_t,nt,et)=>{d(fe,Ze),d(b,ot),d(z,ut),d(Ye,_t),d(lt,nt),d(Ke,et)},[()=>(n(),l(()=>n().t("Whisper (Local)"))),()=>(n(),l(()=>n().t("OpenAI"))),()=>(n(),l(()=>n().t("Web API"))),()=>(n(),l(()=>n().t("Deepgram"))),()=>(n(),l(()=>n().t("Azure AI Speech"))),()=>(n(),l(()=>n().t("MistralAI")))]),i(p,S)},$$slots:{default:!0},$$legacy:!0})}},$$slots:{default:!0}})}var $e=o(le,2);{var ze=J=>{{let W=v(()=>(n(),l(()=>n().t("Supported MIME Types")))),Z=v(()=>(n(),l(()=>n().t("Comma-separated audio or video MIME types accepted for upload."))));mt(J,{get label(){return e(W)},get description(){return e(Z)},children:(Ee,Ge)=>{var p=ko();vt(p),k(p,1,me(M)),g($=>Be(p,"placeholder",$),[()=>(n(),l(()=>n().t("e.g., audio/wav,audio/mpeg,video/* (leave blank for defaults)")))]),dt(p,()=>e(Ne),$=>s(Ne,$)),i(Ee,p)},$$slots:{default:!0}})}};G($e,J=>{e(De)!=="web"&&J(ze)})}var Fe=o($e,2);{var at=J=>{var W=K_(),Z=Qe(W),Ee=a(Z);{let S=v(()=>(n(),l(()=>n().t("API Base URL"))));mt(Ee,{get label(){return e(S)},children:(L,fe)=>{var y=md();vt(y),k(y,1,me(M)),g(b=>Be(y,"placeholder",b),[()=>(n(),l(()=>n().t("API Base URL")))]),dt(y,()=>e(se),b=>s(se,b)),i(L,y)},$$slots:{default:!0}})}var Ge=o(Ee,2);{let S=v(()=>(n(),l(()=>n().t("API Key"))));mt(Ge,{get label(){return e(S)},children:(L,fe)=>{{let y=v(()=>(n(),l(()=>n().t("API Key"))));Cr(L,{variant:"settings",get placeholder(){return e(y)},get value(){return e(m)},set value(b){s(m,b)},$$legacy:!0})}},$$slots:{default:!0}})}r(Z);var p=o(Z,2);{let S=v(()=>(n(),l(()=>n().t("Request Format")))),L=v(()=>(n(),l(()=>n().t("Select how audio is sent to the OpenAI-compatible endpoint."))));Jt(p,{get label(){return e(S)},get description(){return e(L)},children:(fe,y)=>{aa(fe,{get value(){return e(ce)},set value(b){s(ce,b)},children:(b,N)=>{var z=o8(),Ue=Qe(z),Ye=a(Ue,!0);r(Ue),Ue.value=Ue.__value="multipart";var Ve=o(Ue,2),lt=a(Ve,!0);r(Ve),Ve.value=Ve.__value="json",g((st,Ke)=>{d(Ye,st),d(lt,Ke)},[()=>(n(),l(()=>n().t("Multipart Upload"))),()=>(n(),l(()=>n().t("JSON Base64")))]),i(b,z)},$$slots:{default:!0},$$legacy:!0})},$$slots:{default:!0}})}var $=o(p,2);{let S=v(()=>(n(),l(()=>
86n().t("STT Model"))));mt($,{get label(){return e(S)},children:(L,fe)=>{var y=s8(),b=Qe(y);vt(b),k(b,1,me(M));var N=o(b,2),z=a(N);z.value=z.__value="whisper-1",r(N),g(Ue=>Be(b,"placeholder",Ue),[()=>(n(),l(()=>n().t("Select a model")))]),dt(b,()=>e(Le),Ue=>s(Le,Ue)),i(L,y)},$$slots:{default:!0}})}i(J,W)},tt=J=>{var W=i8(),Z=Qe(W);{let Ge=v(()=>(n(),l(()=>n().t("API Key"))));mt(Z,{get label(){return e(Ge)},children:(p,$)=>{{let S=v(()=>(n(),l(()=>n().t("API Key"))));Cr(p,{variant:"settings",get placeholder(){return e(S)},get value(){return e(qe)},set value(L){s(qe,L)},$$legacy:!0})}},$$slots:{default:!0}})}var Ee=o(Z,2);{let Ge=v(()=>(n(),l(()=>n().t("STT Model")))),p=v(()=>(n(),l(()=>n().t("Leave model field empty to use the default model."))));mt(Ee,{get label(){return e(Ge)},get description(){return e(p)},children:($,S)=>{var L=n8(),fe=Qe(L);vt(fe),k(fe,1,me(M));var y=o(fe,2);k(y,1,"mt-1 text-[0.6875rem] text-gray-400 dark:text-gray-600 [&_a]:text-gray-900 [&_a]:hover:underline dark:[&_a]:text-gray-300");var b=a(y),N=a(b,!0);r(b),r(y),g((z,Ue)=>{Be(fe,"placeholder",z),d(N,Ue)},[()=>(n(),l(()=>n().t("Select a model (optional)"))),()=>(n(),l(()=>n().t("Click here to see available models.")))]),dt(fe,()=>e(Le),z=>s(Le,z)),i($,L)},$$slots:{default:!0}})}i(J,W)},Je=J=>{var W=d8(),Z=Qe(W);{let L=v(()=>(n(),l(()=>n().t("API Key"))));mt(Z,{get label(){return e(L)},children:(fe,y)=>{{let b=v(()=>(n(),l(()=>n().t("API Key"))));Cr(fe,{variant:"settings",get placeholder(){return e(b)},required:!0,get value(){return e(we)},set value(N){s(we,N)},$$legacy:!0})}},$$slots:{default:!0}})}var Ee=o(Z,2),Ge=a(Ee);{let L=v(()=>(n(),l(()=>n().t("Azure Region"))));mt(Ge,{get label(){return e(L)},children:(fe,y)=>{var b=ko();vt(b),k(b,1,me(M)),g(N=>Be(b,"placeholder",N),[()=>(n(),l(()=>n().t("e.g., westus (leave blank for eastus)")))]),dt(b,()=>e(oe),N=>s(oe,N)),i(fe,b)},$$slots:{default:!0}})}var p=o(Ge,2);{let L=v(()=>(n(),l(()=>n().t("Language Locales"))));mt(p,{get label(){return e(L)},children:(fe,y)=>{var b=ko();vt(b),k(b,1,me(M)),g(N=>Be(b,"placeholder",N),[()=>(n(),l(()=>n().t("e.g., en-US,ja-JP (leave blank for auto-detect)")))]),dt(b,()=>e(de),N=>s(de,N)),i(fe,b)},$$slots:{default:!0}})}var $=o(p,2);{let L=v(()=>(n(),l(()=>n().t("Endpoint URL"))));mt($,{get label(){return e(L)},children:(fe,y)=>{var b=ko();vt(b),k(b,1,me(M)),g(N=>Be(b,"placeholder",N),[()=>(n(),l(()=>n().t("(leave blank for to use commercial endpoint)")))]),dt(b,()=>e(be),N=>s(be,N)),i(fe,b)},$$slots:{default:!0}})}var S=o($,2);{let L=v(()=>(n(),l(()=>n().t("Max Speakers"))));mt(S,{get label(){return e(L)},children:(fe,y)=>{var b=ko();vt(b),k(b,1,me(M)),g(N=>Be(b,"placeholder",N),[()=>(n(),l(()=>n().t("e.g., 3, 4, 5 (leave blank for default)")))]),dt(b,()=>e(Me),N=>s(Me,N)),i(fe,b)},$$slots:{default:!0}})}r(Ee),i(J,W)},je=J=>{var W=K_(),Z=Qe(W),Ee=a(Z);{let S=v(()=>(n(),l(()=>n().t("API Base URL"))));mt(Ee,{get label(){return e(S)},children:(L,fe)=>{var y=md();vt(y),k(y,1,me(M)),g(b=>Be(y,"placeholder",b),[()=>(n(),l(()=>n().t("API Base URL")))]),dt(y,()=>e(ue),b=>s(ue,b)),i(L,y)},$$slots:{default:!0}})}var Ge=o(Ee,2);{let S=v(()=>(n(),l(()=>n().t("API Key"))));mt(Ge,{get label(){return e(S)},children:(L,fe)=>{{let y=v(()=>(n(),l(()=>n().t("API Key"))));Cr(L,{variant:"settings",get placeholder(){return e(y)},get value(){return e(Re)},set value(b){s(Re,b)},$$legacy:!0})}},$$slots:{default:!0}})}r(Z);var p=o(Z,2);{let S=v(()=>(n(),l(()=>n().t("STT Model")))),L=v(()=>(n(),l(()=>n().t("Leave empty to use the default model (voxtral-mini-latest)."))));mt(p,{get label(){return e(S)},get description(){return e(L)},children:(fe,y)=>{var b=v8(),N=Qe(b);vt(N),k(N,1,me(M));var z=o(N,2);k(z,1,"mt-1 text-[0.6875rem] text-gray-400 dark:text-gray-600 [&_a]:text-gray-900 [&_a]:hover:underline dark:[&_a]:text-gray-300");var Ue=a(z),Ye=a(Ue,!0);r(Ue),r(z),g(Ve=>d(Ye,Ve),[()=>(n(),l(()=>n().t("Learn more about Voxtral transcription.")))]),dt(N,()=>e(Le),Ve=>s(Le,Ve)),i(fe,b)},$$slots:{default:!0}})}var $=o(p,2);{let S=v(()=>(n(),l(()=>n().t("Use Chat Completions API")))),L=v(()=>(n(),l(()=>n().t("Use /v1/chat/completions endpoint instead of /v1/audio/transcriptions for potentially better accuracy."))));Jt($,{get label(){return e(S)},get description(){return e(L)},children:Ir,$$slots:{default:(fe,y)=>{const b=v(()=>y.labelId);Nt(fe,{get ariaLabelledbyId(){return e(b)},get state(){return e(xe)},set state(N){s(xe,N)},$$legacy:!0})}}})}i(J,W)},ne=J=>{{let W=v(()=>(n(),l(()=>
86n().t("STT Model")))),Z=v(()=>(n(),l(()=>n().t("Open WebUI uses faster-whisper internally."))));mt(J,{get label(){return e(W)},get description(){return e(Z)},children:(Ee,Ge)=>{var p=u8(),$=Qe(p),S=a($);vt(S),k(S,1,me(M));var L=o(S,2),fe=a(L);{var y=Ye=>{ra(Ye,{})},b=Ye=>{var Ve=c8();i(Ye,Ve)};G(fe,Ye=>{e(K)?Ye(y):Ye(b,-1)})}r(L),r($);var N=o($,2);k(N,1,"mt-1 text-[0.6875rem] text-gray-400 dark:text-gray-600 [&_a]:text-gray-900 [&_a]:hover:underline dark:[&_a]:text-gray-300");var z=a(N),Ue=a(z,!0);r(z),r(N),g((Ye,Ve,lt)=>{Be(S,"placeholder",Ye),L.disabled=e(K),Be(L,"aria-label",Ve),d(Ue,lt)},[()=>(n(),l(()=>n().t("Set whisper model"))),()=>(n(),l(()=>n().t("Update model"))),()=>(n(),l(()=>n().t("Click here to learn more about faster-whisper and see the available models.")))]),dt(S,()=>e(Ce),Ye=>s(Ce,Ye)),ke("click",L,()=>{Ae()}),i(Ee,p)},$$slots:{default:!0}})}};G(Fe,J=>{e(De)==="openai"?J(at):e(De)==="deepgram"?J(tt,1):e(De)==="azure"?J(Je,2):e(De)==="mistral"?J(je,3):e(De)===""&&J(ne,4)})}i(P,re)},$$slots:{default:!0}})}var H=o(F,2);{let q=v(()=>(n(),l(()=>n().t("Text-to-Speech"))));va(H,{get title(){return e(q)},children:(P,Q)=>{var re=$8(),le=Qe(re);{let p=v(()=>(n(),l(()=>n().t("Text-to-Speech Engine")))),$=v(()=>(n(),l(()=>n().t("Choose the speech provider used for assistant audio output."))));Jt(le,{get label(){return e(p)},get description(){return e($)},children:(S,L)=>{{let fe=v(()=>(n(),l(()=>n().t("Select a mode"))));aa(S,{get placeholder(){return e(fe)},get value(){return e(V)},set value(y){s(V,y)},$$events:{change:async y=>{await _e(),await ge(),await te();const b=y.currentTarget.value;b==="openai"?(s(j,"alloy"),s(B,"tts-1")):b==="mistral"?(s(j,""),s(B,"voxtral-mini-tts-2603")):(s(j,""),s(B,""))}},children:(y,b)=>{var N=z_(),z=Qe(N),Ue=a(z,!0);r(z),z.value=z.__value="";var Ye=o(z,2),Ve=a(Ye);r(Ye),Ye.value=Ye.__value="transformers";var lt=o(Ye,2),st=a(lt,!0);r(lt),lt.value=lt.__value="openai";var Ke=o(lt,2),Ze=a(Ke,!0);r(Ke),Ke.value=Ke.__value="elevenlabs";var ot=o(Ke,2),ut=a(ot,!0);r(ot),ot.value=ot.__value="azure";var _t=o(ot,2),nt=a(_t,!0);r(_t),_t.value=_t.__value="mistral",g((et,gt,It,Mt,jt,Tt,yt)=>{d(Ue,et),d(Ve,`${gt??""} (${It??""})`),d(st,Mt),d(Ze,jt),d(ut,Tt),d(nt,yt)},[()=>(n(),l(()=>n().t("Web API"))),()=>(n(),l(()=>n().t("Transformers"))),()=>(n(),l(()=>n().t("Local"))),()=>(n(),l(()=>n().t("OpenAI"))),()=>(n(),l(()=>n().t("ElevenLabs"))),()=>(n(),l(()=>n().t("Azure AI Speech"))),()=>(n(),l(()=>n().t("MistralAI")))]),i(y,N)},$$slots:{default:!0},$$legacy:!0})}},$$slots:{default:!0}})}var $e=o(le,2);{var ze=p=>{var $=hd(),S=a($);{let fe=v(()=>(n(),l(()=>n().t("API Base URL"))));mt(S,{get label(){return e(fe)},children:(y,b)=>{var N=md();vt(N),k(N,1,me(M)),g(z=>Be(N,"placeholder",z),[()=>(n(),l(()=>n().t("API Base URL")))]),dt(N,()=>e(x),z=>s(x,z)),i(y,N)},$$slots:{default:!0}})}var L=o(S,2);{let fe=v(()=>(n(),l(()=>n().t("API Key"))));mt(L,{get label(){return e(fe)},children:(y,b)=>{{let N=v(()=>(n(),l(()=>n().t("API Key"))));Cr(y,{variant:"settings",get placeholder(){return e(N)},get value(){return e(A)},set value(z){s(A,z)},$$legacy:!0})}},$$slots:{default:!0}})}r($),i(p,$)},Fe=p=>{{let $=v(()=>(n(),l(()=>n().t("API Key"))));mt(p,{get label(){return e($)},children:(S,L)=>{{let fe=v(()=>(n(),l(()=>n().t("API Key"))));Cr(S,{variant:"settings",get placeholder(){return e(fe)},required:!0,get value(){return e(E)},set value(y){s(E,y)},$$legacy:!0})}},$$slots:{default:!0}})}},at=p=>{var $=_8(),S=Qe($);{let b=v(()=>(n(),l(()=>n().t("API Key"))));mt(S,{get label(){return e(b)},children:(N,z)=>{{let Ue=v(()=>(n(),l(()=>n().t("API Key"))));Cr(N,{variant:"settings",get placeholder(){return e(Ue)},required:!0,get value(){return e(E)},set value(Ye){s(E,Ye)},$$legacy:!0})}},$$slots:{default:!0}})}var L=o(S,2),fe=a(L);{let b=v(()=>(n(),l(()=>n().t("Azure Region"))));mt(fe,{get label(){return e(b)},children:(N,z)=>{var Ue=ko();vt(Ue),k(Ue,1,me(M)),g(Ye=>Be(Ue,"placeholder",Ye),[()=>(n(),l(()=>n().t("e.g., westus (leave blank for eastus)")))]),dt(Ue,()=>e(Se),Ye=>s(Se,Ye)),i(N,Ue)},$$slots:{default:!0}})}var y=o(fe,2);{let b=v(()=>(n(),l(()=>n().t("Endpoint URL"))));mt(y,{get label(){return e(b)},children:(N,z)=>{var Ue=ko();vt(Ue),k(Ue,1,me(M)),g(Ye=>Be(Ue,"placeholder",Ye),[()=>(n(),l(()=>n().t("(leave blank for to use commercial endpoint)")))]),dt(Ue,()=>e(Y),Ye=>s(Y,Ye)),i(N,Ue)},$$slots:{default:!0}})}r(L),i(p,$)},tt=p=>{var $=hd(),S=a($);{let fe=v(()=>(n(),l(()=>n().t("API Base URL"))));mt(S,{get label(){return e(fe)},children:(y,b)=>{var N=md();vt(N),k(N,1,me(M)),g(z=>Be(N,"placeholder",z),[()=>(n(),l(()=>n().t("API Base URL")))]),dt(N,()=>e(Pe),z=>s(Pe,z)),i(y,N)},$$slots:{default:!0}})}var L=o(S,2);{let fe=v(()=>(n(),l(()=>n().t("API Key"))));mt(L,{get label(){return e(fe)},children:(y,b)=>{{let N=v(()=>(n(),l(()=>n().t("API Key"))));Cr(y,{variant:"settings",get placeholder(){return e(N)},get value(){return e(ae)},set value(z){s(ae,z)},$$legacy:!0})}},$$slots:{default:!0}})}r($),i(p,$)};G($e,p=>{e(V)==="openai"?p(ze):e(V)==="elevenlabs"?p(Fe,1):e(V)==="azure"?p(at,2):e(V)==="mistral"&&p(tt,3)})}var Je=o($e,2);{var je=p=>{{let $=v(()=>(n(),l(()=>n().t("TTS Voice"))));mt(p,{get label(){return e($)},children:(S,L)=>{aa(S,{className:"w-full",get value(){return e(j)},set value(fe){s(j,fe)},children:(fe,y)=>{var b=p8(),N=Qe(b),z=a(N,!0);r(N),N.value=N.__value="";var Ue=o(N,2);lr(Ue,1,()=>e(Oe),Ar,(Ye,Ve)=>{var lt=f8(),st=a(lt,!0);r(lt);var Ke={};g(()=>{ts(lt,(e(j),e(Ve),l(()=>e(j)===e(Ve).voiceURI))),d(st,(e(Ve),l(()=>e(Ve).name))),Ke!==(Ke=(e(Ve),l(()=>e(Ve).voiceURI)))&&(lt.value=(lt.__value=(e(Ve),l(()=>e(Ve).voiceURI)))??"")}),i(Ye,lt)}),g(Ye=>{ts(N,e(j)!==""),d(z,Ye)},[()=>(n(),l(()=>n().t("Default")))]),i(fe,b)},$$slots:{default:!0},$$legacy:!0})},$$slots:{default:!0}})}},ne=p=>{{let $=v(()=>(n(),l(()=>
86n().t("TTS Model")))),S=v(()=>(n(),l(()=>n().t("Open WebUI uses SpeechT5 and CMU Arctic speaker embeddings."))));mt(p,{get label(){return e($)},get description(){return e(S)},children:(L,fe)=>{var y=m8(),b=Qe(y);vt(b),k(b,1,me(M));var N=o(b,2),z=a(N);z.value=z.__value="tts-1",r(N);var Ue=o(N,2);k(Ue,1,"mt-1 text-[0.6875rem] text-gray-400 dark:text-gray-600 [&_a]:text-gray-900 [&_a]:hover:underline dark:[&_a]:text-gray-300");var Ye=a(Ue),Ve=o(Ye),lt=a(Ve);r(Ve);var st=o(Ve),Ke=o(st),Ze=a(Ke);r(Ke),r(Ue),g((ot,ut,_t,nt,et)=>{Be(b,"placeholder",ot),d(Ye,`${ut??""} `),d(lt,`${_t??""}.`),d(st,` ${nt??""} `),d(Ze,`${et??""}.`)},[()=>(n(),l(()=>n().t("CMU ARCTIC speaker embedding name"))),()=>(n(),l(()=>n().t("To learn more about SpeechT5,"))),()=>(n(),l(()=>n().t("click here"))),()=>(n(),l(()=>n().t("To see the available CMU Arctic speaker embeddings,"))),()=>(n(),l(()=>n().t("click here")))]),dt(b,()=>e(B),ot=>s(B,ot)),i(L,y)},$$slots:{default:!0}})}},J=p=>{var $=h8(),S=Qe($),L=a(S);{let b=v(()=>(n(),l(()=>n().t("TTS Voice"))));mt(L,{get label(){return e(b)},children:(N,z)=>{{let Ue=v(()=>(n(),l(()=>n().t("Select a voice"))));Uc(N,{get voices(){return e(O)},get placeholder(){return e(Ue)},className:M,get value(){return e(j)},set value(Ye){s(j,Ye)},$$legacy:!0})}},$$slots:{default:!0}})}var fe=o(L,2);{let b=v(()=>(n(),l(()=>n().t("TTS Model"))));mt(fe,{get label(){return e(b)},children:(N,z)=>{var Ue=Y_();vt(Ue),k(Ue,1,me(M)),g(Ye=>Be(Ue,"placeholder",Ye),[()=>(n(),l(()=>n().t("Select a model")))]),dt(Ue,()=>e(B),Ye=>s(B,Ye)),i(N,Ue)},$$slots:{default:!0}})}r(S);var y=o(S,2);{let b=v(()=>(n(),l(()=>n().t("Additional Parameters")))),N=v(()=>(n(),l(()=>n().t("Enter additional OpenAI-compatible TTS request parameters as JSON."))));mt(y,{get label(){return e(b)},get description(){return e(N)},children:(z,Ue)=>{{let Ye=v(()=>(n(),l(()=>n().t("Enter additional parameters in JSON format"))));ma(z,{className:ve,get placeholder(){return e(Ye)},get value(){return e(w)},set value(Ve){s(w,Ve)},$$legacy:!0})}},$$slots:{default:!0}})}i(p,$)},W=p=>{var $=hd(),S=a($);{let fe=v(()=>(n(),l(()=>n().t("TTS Voice"))));mt(S,{get label(){return e(fe)},children:(y,b)=>{{let N=v(()=>(n(),l(()=>n().t("Select a voice"))));Uc(y,{get voices(){return e(O)},get placeholder(){return e(N)},className:M,get value(){return e(j)},set value(z){s(j,z)},$$legacy:!0})}},$$slots:{default:!0}})}var L=o(S,2);{let fe=v(()=>(n(),l(()=>n().t("TTS Model"))));mt(L,{get label(){return e(fe)},children:(y,b)=>{var N=Y_();vt(N),k(N,1,me(M)),g(z=>Be(N,"placeholder",z),[()=>(n(),l(()=>n().t("Select a model")))]),dt(N,()=>e(B),z=>s(B,z)),i(y,N)},$$slots:{default:!0}})}r($),i(p,$)},Z=p=>{var $=hd(),S=a($);{let fe=v(()=>(n(),l(()=>n().t("TTS Voice"))));mt(S,{get label(){return e(fe)},children:(y,b)=>{{let N=v(()=>(n(),l(()=>n().t("Select a voice"))));Uc(y,{get voices(){return e(O)},get placeholder(){return e(N)},className:M,get value(){return e(j)},set value(z){s(j,z)},$$legacy:!0})}},$$slots:{default:!0}})}var L=o(S,2);{let fe=v(()=>(n(),l(()=>n().t("Output format"))));mt(L,{get label(){return e(fe)},children:(y,b)=>{var N=x8(),z=Qe(N);vt(z),k(z,1,me(M));var Ue=o(z,2);k(Ue,1,"mt-1 text-[0.6875rem] text-gray-400 dark:text-gray-600 [&_a]:text-gray-900 [&_a]:hover:underline dark:[&_a]:text-gray-300");var Ye=a(Ue),Ve=a(Ye,!0);r(Ye),r(Ue),g((lt,st)=>{Be(z,"placeholder",lt),d(Ve,st)},[()=>(n(),l(()=>n().t("Select an output format"))),()=>(n(),l(()=>n().t("Available list")))]),dt(z,()=>e(ee),lt=>s(ee,lt)),i(y,N)},$$slots:{default:!0}})}r($),i(p,$)};G(Je,p=>{e(V)===""?p(je):e(V)==="transformers"?p(ne,1):e(V)==="openai"?p(J,2):e(V)==="elevenlabs"||e(V)==="mistral"?p(W,3):e(V)==="azure"&&p(Z,4)})}var Ee=o(Je,2);lr(Ee,5,()=>e(ie),Ar,(p,$)=>{var S=b8(),L={};g(()=>{L!==(L=(e($),l(()=>e($).id)))&&(S.value=(S.__value=(e($),l(()=>e($).id)))??"")}),i(p,S)}),r(Ee);var Ge=o(Ee,2);{let p=v(()=>(n(),l(()=>n().t("Response Splitting")))),$=v(()=>(n(),l(()=>n().t("Control how message text is split for TTS requests. 'Punctuation' splits into sentences, 'paragraphs' splits into paragraphs, and 'none' keeps the message as a single str
86ing."))));Jt(Ge,{get label(){return e(p)},get description(){return e($)},children:(S,L)=>{{let fe=v(()=>(n(),l(()=>n().t("Select how to split message text for TTS requests"))));aa(S,{get"aria-label"(){return e(fe)},get value(){return e(Te)},set value(y){s(Te,y)},children:(y,b)=>{var N=Wr(),z=Qe(N);lr(z,1,()=>(it(nd),l(()=>Object.values(nd))),Ar,(Ue,Ye)=>{var Ve=y8(),lt=a(Ve,!0);r(Ve);var st={};g(Ke=>{d(lt,Ke),st!==(st=e(Ye))&&(Ve.value=(Ve.__value=e(Ye))??"")},[()=>(n(),e(Ye),l(()=>n().t(e(Ye).charAt(0).toUpperCase()+e(Ye).slice(1))))]),i(Ue,Ve)}),i(y,N)},$$slots:{default:!0},$$legacy:!0})}},$$slots:{default:!0}})}i(P,re)},$$slots:{default:!0}})}r(D);var pe=o(D,2),ye=a(pe),he=a(ye,!0);r(ye),r(pe),r(U),g((q,P)=>{d(C,q),d(he,P)},[()=>(n(),l(()=>n().t("Audio"))),()=>(n(),l(()=>n().t("Save")))]),ke("submit",U,ca(async()=>{await _e(),R("save")})),i(He,U),cr(),X()}var E8=u('<div class="flex h-full flex-col"><div class=" sticky top-0 z-30 flex justify-between bg-white px-4.5 pt-3 pb-3 dark:bg-gray-900 dark:text-gray-100"><div class=" self-center text-lg font-normal"> </div>
86 <button class="self-center" aria-label="Close"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="h-5 w-5"><path d="M6.28 5.22a.75.75 0 00-1.06 1.06L8.94 10l-3.72 3.72a.75.75 0 101.06 1.06L10 11.06l3.72 3.72a.75.75 0 101.06-1.06L11.06 10l3.72-3.72a.75.75 0 00-1.06-1.06L10 8.94 6.28 5.22z"></path></svg></button></div> <div class="flex h-full w-full flex-1 flex-col md:flex-row md:space-x-4 dark:text-gray-200 overflow-y-auto"><div class=" flex h-full w-full flex-col sm:flex-row sm:justify-center sm:space-x-6"><!></div></div></div>');function V_(He,_){vr(_,!0);const t=()=>ct(Ie,"$i18n",f),[f,n]=hr(),Ie=mr("i18n");let X=Xe(_,"show",15),R=Xe(_,"value",15),I=Xe(_,"lang",3,"python"),c=Xe(_,"onChange",3,()=>{}),x=Xe(_,"onSave",3,()=>{}),A="",E=nu(null),V=tm(R());rm(()=>{V!=null&&R(V)}),Xx(He,{className:"h-full",zIndexClass:"z-99999",get show(){return X()},set show(B){X(B)},children:(B,j)=>{var w=E8(),Te=a(w),Se=a(Te),Y=a(Se,!0);r(Se);var ee=o(Se,2);r(Te);var ae=o(Te,2),Pe=a(ae),se=a(Pe);Oa(Kb(se,{get value(){return R()},boilerplate:A,get lang(){return I()},get onChange(){return c()},get onSave(){return x()}}),m=>s(E,m,!0),()=>e(E)),r(Pe),r(ae),r(w),g(m=>d(Y,m),[()=>t().t("Code Editor")]),lf("click",ee,()=>{X(!1)}),i(B,w)},$$slots:{default:!0}}),cr(),n()}af(["click"]);var A8=u("<option> </option> <option> </option> <option> </option> <option> </option>",1),q_=u("<option> </option>"),I8=u('<input list="model-list" required=""/> <datalist id="model-list"></datalist>',1),Nl=u("<input/>"),tu=u('<input required=""/>'),S8=u('<div class="grid grid-cols-1 gap-2 sm:grid-cols-2"><!> <!> <!></div> <!>',1),N8=u('<div class="grid grid-cols-1 gap-2 sm:grid-cols-2"><!> <!></div> <!> <!>',1),ru=u('<div class="flex w-full gap-2"><input/> <button class="shrink-0 text-gray-400 transition-colors hover:text-gray-900 dark:text-gray-600 dark:hover:text-white" type="button" aria-label="verify connection"><svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20" fill="currentColor" class="w-4 h-4"><path fill-rule="evenodd" d="M15.312 11.424a5.5 5.5 0 01-9.201 2.466l-.312-.311h2.433a.75.75 0 000-1.5H3.989a.75.75 0 00-.75.75v4.242a.75.75 0 001.5 0v-2.43l.31.31a7 7 0 0011.712-3.138.75.75 0 00-1.449-.39zm1.23-3.723a.75.75 0 00.219-.53V2.929a.75.75 0 00-1.5 0V5.36l-.31-.31A7 7 0 003.239 8.188a.75.75 0 101.448.389A5.5 5.5 0 0113.89 6.11l.311.31h-2.432a.75.75 0 000 1.5h4.243a.75.75 0 00.53-.219z" clip-rule="evenodd"></path></svg></button></div>'),au=u("<!> <!> <!>",1),xd=u('<button class="text-xs text-gray-500 transition-colors hover:text-gray-900 hover:underline dark:text-gray-500 dark:hover:text-white" type="button"> </button>'),X_=u('<div class="flex items-center justify-end gap-2"><!> <!></div>'),J_=u('<div class="flex w-full flex-col"><div class="shrink-0"><div class=" capitalize line-clamp-1 w-20 text-gray-400 dark:text-gray-500"> </div></div> <div class="flex mt-0.5 items-center"><div><!></div> <div class="px-2 text-gray-400 dark:text-gray-500">:</div> <div class="w-full"><!></div></div></div>'),Z_=u('<div class="flex flex-col gap-1.5 text-xs"></div> <div class="mt-1 text-xs text-gray-400 dark:text-gray-500"> </div>',1),P8=u('<!> <!> <div><input id="upload-comfyui-workflow-input" hidden="" type="file" accept=".json"/> <!> <div><!></div></div> <!>',1),C8=u("<option>predict</option> <option>generateContent</option>",1),T8=u("<option> </option> <option> </option> <option> </option>",1),L8=u('<input list="model-list"/> <datalist id="model-list"></datalist>',1),Q_=u('<div class="grid grid-cols-1 gap-2 sm:grid-cols-2"><!> <!></div>'),O8=u('<div class="grid grid-cols-1 gap-2 sm:grid-cols-2"><!> <!></div> <!>',1),M8=u('<!> <!> <div><input id="upload-comfyui-edit-workflow-input" hidden="" type="file" accept=".json"/> <!> <!></div> <!>',1),R8=u("<!> <!> <!> <!>",1),D8=u('<div class="flex flex-col"><!> <!> <!></div>'),U8=u('<span class="shrink-0"><!></span>'),B8=u('<form class="flex h-full flex-col justify-between text-sm"><h2 class="text-sm font-medium text-gray-900 dark:text-white mb-4"> </h2> <div class="flex-1 min-h-0 overflow-y-auto scrollbar-hover pr-1.5"><!></div> <div class="flex justify-end pt-6 text-sm font-normal"><button type="submit"> <!></button></div></form>');function G8(He,_){vr(_,!1);const t=()=>ct(R,"$i18n",n),f=()=>ct(ka,"$user",n),[n,Ie]=hr(),X=ja(),R=mr("i18n");let I=h(!1),c=h(null),x=h(null);const A="w-full h-7 rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500",E="w-full rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 py-1.5 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500";let V=h(!1),B=h([{type:"prompt",key:"text",node_ids:""},{type:"model",key:"ckpt_name",node_ids:""},{type:"width",key:"width",node_ids:""},{type:"height",key:"height",node_ids:""},{type:"steps",key:"steps",node_ids:""},{type:"seed",key:"seed",node_ids:""}]),j=h(!1),w=h([{type:"image",key:"image",node_ids:""},{type:"prompt",key:"prompt",node_ids:""},{type:"model",key:"unet_name",node_ids:""},{type:"width",key:"width",node_ids:""},{type:"height",key:"height",node_ids:""}]);const Te=async()=>{s(c,await Wb(localStorage.token).catch(de=>(rt.error(`${de}`),null)))},Se=async()=>
86{if(e(x).IMAGE_GENERATION_ENGINE==="automatic1111"&&e(x).AUTOMATIC1111_BASE_URL==="")return rt.error(t().t("AUTOMATIC1111 Base URL is required.")),We(x,e(x).ENABLE_IMAGE_GENERATION=!1),null;if(e(x).IMAGE_GENERATION_ENGINE==="comfyui"&&e(x).COMFYUI_BASE_URL==="")return rt.error(t().t("ComfyUI Base URL is required.")),We(x,e(x).ENABLE_IMAGE_GENERATION=!1),null;if(e(x).IMAGE_GENERATION_ENGINE==="openai"&&e(x).IMAGES_OPENAI_API_KEY==="")return rt.error(t().t("OpenAI API Key is required.")),We(x,e(x).ENABLE_IMAGE_GENERATION=!1),null;if(e(x).IMAGE_GENERATION_ENGINE==="gemini"&&e(x).IMAGES_GEMINI_API_KEY==="")return rt.error(t().t("Gemini API Key is required.")),We(x,e(x).ENABLE_IMAGE_GENERATION=!1),null;const de=await zb(localStorage.token,{...e(x),AUTOMATIC1111_PARAMS:typeof e(x).AUTOMATIC1111_PARAMS=="string"&&e(x).AUTOMATIC1111_PARAMS.trim()!==""?JSON.parse(e(x).AUTOMATIC1111_PARAMS):{},IMAGES_OPENAI_API_PARAMS:typeof e(x).IMAGES_OPENAI_API_PARAMS=="string"&&e(x).IMAGES_OPENAI_API_PARAMS.trim()!==""?JSON.parse(e(x).IMAGES_OPENAI_API_PARAMS):{}}).catch(be=>(rt.error(`${be}`),null));return de?(_a.set(await so()),de.ENABLE_IMAGE_GENERATION&&Te(),de):null},Y=de=>{try{const be=JSON.parse(de);if(be&&typeof be=="object")return!0}catch{}return!1},ee=async()=>{var be,Me,qe,Re;if(s(I,!0),(be=e(x))!=null&&be.COMFYUI_WORKFLOW){if(!Y((Me=e(x))==null?void 0:Me.COMFYUI_WORKFLOW)){rt.error(t().t("Invalid JSON format for ComfyUI Workflow.")),s(I,!1);return}We(x,e(x).COMFYUI_WORKFLOW_NODES=e(B).map(ue=>({type:ue.type,key:ue.key,node_ids:ue.node_ids.trim()===""?[]:ue.node_ids.split(",").map(xe=>xe.trim())})))}if((qe=e(x))!=null&&qe.IMAGES_EDIT_COMFYUI_WORKFLOW){if(!Y((Re=e(x))==null?void 0:Re.IMAGES_EDIT_COMFYUI_WORKFLOW)){rt.error(t().t("Invalid JSON format for ComfyUI Edit Workflow.")),s(I,!1);return}We(x,e(x).IMAGES_EDIT_COMFYUI_WORKFLOW_NODES=e(w).map(ue=>({type:ue.type,key:ue.key,node_ids:ue.node_ids.trim()===""?[]:ue.node_ids.split(",").map(xe=>xe.trim())})))}await Se()&&X("save"),s(I,!1)};ea(async()=>{var de;if(((de=f())==null?void 0:de.role)==="admin"){const be=await Fb(localStorage.token).catch(Me=>(rt.error(`${Me}`),null));if(be&&s(x,be),!e(x))return;if(e(x).ENABLE_IMAGE_GENERATION&&Te(),e(x).COMFYUI_WORKFLOW)try{We(x,e(x).COMFYUI_WORKFLOW=JSON.stringify(JSON.parse(e(x).COMFYUI_WORKFLOW),null,2))}catch(Me){}if(s(B,e(B).map(Me=>{const qe=e(x).COMFYUI_WORKFLOW_NODES.find(Re=>Re.type===Me.type)??Me;return{type:qe.type,key:qe.key,node_ids:typeof qe.node_ids=="str
86ing"?qe.node_ids:qe.node_ids.join(",")}})),e(x).IMAGES_EDIT_COMFYUI_WORKFLOW)try{We(x,e(x).IMAGES_EDIT_COMFYUI_WORKFLOW=JSON.stringify(JSON.parse(e(x).IMAGES_EDIT_COMFYUI_WORKFLOW),null,2))}catch(Me){}We(x,e(x).IMAGES_OPENAI_API_PARAMS=typeof e(x).IMAGES_OPENAI_API_PARAMS=="object"?JSON.stringify(e(x).IMAGES_OPENAI_API_PARAMS??{},null,2):e(x).IMAGES_OPENAI_API_PARAMS),We(x,e(x).AUTOMATIC1111_PARAMS=typeof e(x).AUTOMATIC1111_PARAMS=="object"?JSON.stringify(e(x).AUTOMATIC1111_PARAMS??{},null,2):e(x).AUTOMATIC1111_PARAMS),s(w,e(w).map(Me=>{const qe=e(x).IMAGES_EDIT_COMFYUI_WORKFLOW_NODES.find(Re=>Re.type===Me.type)??Me;return{type:qe.type,key:qe.key,node_ids:typeof qe.node_ids=="string"?qe.node_ids:qe.node_ids.join(",")}}))}}),gr();var ae=B8(),Pe=a(ae),se=a(Pe,!0);r(Pe);var m=o(Pe,2),ce=a(m);{var De=de=>{var be=D8(),Me=a(be);va(Me,{first:!0,children:(ue,xe)=>{{let K=v(()=>t().t("Image Generation")),Oe=v(()=>t().t("Allow users to generate images from prompts."));Jt(ue,{get label(){return e(K)},get description(){return e(Oe)},children:Ir,$$slots:{default:(O,ie)=>{const M=v(()=>ie.labelId);Nt(O,{get ariaLabelledbyId(){return e(M)},get state(){return e(x).ENABLE_IMAGE_GENERATION},set state(ve){We(x,e(x).ENABLE_IMAGE_GENERATION=ve)},$$legacy:!0})}}})}},$$slots:{default:!0}});var qe=o(Me,2);{let ue=v(()=>t().t("Create Image"));va(qe,{get title(){return e(ue)},children:(xe,K)=>{var Oe=au(),O=Qe(Oe);{let U=v(()=>t().t("Image Generation Engine")),T=v(()=>t().t("Choose the provider used for image generation."));Jt(O,{get label(){return e(U)},get description(){return e(T)},children:(C,D)=>{{let F=v(()=>t().t("Select Engine"));aa(C,{get placeholder(){return e(F)},get value(){return e(x).IMAGE_GENERATION_ENGINE},set value(H){We(x,e(x).IMAGE_GENERATION_ENGINE=H)},children:(H,pe)=>{var ye=A8(),he=Qe(ye),q=a(he,!0);r(he),he.value=he.__value="openai";var P=o(he,2),Q=a(P,!0);r(P),P.value=P.__value="comfyui";var re=o(P,2),le=a(re,!0);r(re),re.value=re.__value="automatic1111";var $e=o(re,2),ze=a($e,!0);r($e),$e.value=$e.__value="gemini",g((Fe,at,tt,Je)=>{d(q,Fe),d(Q,at),d(le,tt),d(ze,Je)},[()=>t().t("Default (Open AI)"),()=>t().t("ComfyUI"),()=>t().t("Automatic1111"),()=>t().t("Gemini")]),i(H,ye)},$$slots:{default:!0},$$legacy:!0})}},$$slots:{default:!0}})}var ie=o(O,2);{var M=U=>{var T=S8(),C=Qe(T),D=a(C);{let q=v(()=>t().t("Model"));mt(D,{get label(){return e(q)},children:(P,Q)=>{var re=I8(),le=Qe(re);vt(le),k(le,1,me(A));var $e=o(le,2);lr($e,5,()=>e(c)??[],Ar,(ze,Fe)=>{var at=q_(),tt=a(at,!0);r(at);var Je={};g(()=>{d(tt,e(Fe).name),Je!==(Je=e(Fe).id)&&(at.value=(at.__value=e(Fe).id)??"")}),i(ze,at)}),r($e),g(ze=>Be(le,"placeholder",ze),[()=>t().t("Select a model")]),dt(le,()=>e(x).IMAGE_GENERATION_MODEL,ze=>We(x,e(x).IMAGE_GENERATION_MODEL=ze)),i(P,re)},$$slots:{default:!0}})}var F=o(D,2);{let q=v(()=>t().t("Image Size"));mt(F,{get label(){return e(q)},children:(P,Q)=>{var re=Nl();vt(re),k(re,1,me(A)),g(le=>Be(re,"placeholder",le),[()=>t().t("Enter Image Size (e.g. 512x512)")]),dt(re,()=>e(x).IMAGE_SIZE,le=>We(x,e(x).IMAGE_SIZE=le)),i(P,re)},$$slots:{default:!0}})}var H=o(F,2);{var pe=q=>{{let P=v(()=>t().t("Steps"));mt(q,{get label(){return e(P)},children:(Q,re)=>{var le=tu();vt(le),k(le,1,me(A)),g($e=>Be(le,"placeholder",$e),[()=>t().t("Enter Number of Steps (e.g. 50)")]),dt(le,()=>e(x).IMAGE_STEPS,$e=>We(x,e(x).IMAGE_STEPS=$e)),i(Q,le)},$$slots:{default:!0}})}},ye=Qr(()=>{var q;return["comfyui","automatic1111",""].includes((q=e(x))==null?void 0:q.IMAGE_GENERATION_ENGINE)});G(H,q=>{e(ye)&&q(pe)})}r(C);var he=o(C,2);{let q=v(()=>t().t("Image Prompt Generation")),P=v(()=>t().t("Generate an image prompt before sending the request."));Jt(he,{get label(){return e(q)},get description(){return e(P)},children:Ir,$$slots:{default:(Q,re)=>{const le=v(()=>re.labelId);Nt(Q,{get ariaLabelledbyId(){return e(le)},get state(){return e(x).ENABLE_IMAGE_PROMPT_GENERATION},set state($e){We(x,e(x).ENABLE_IMAGE_PROMPT_GENERATION=$e)},$$legacy:!0})}}})}i(U,T)};G(ie,U=>{e(x).ENABLE_IMAGE_GENERATION&&U(M)})}var ve=o(ie,2);{var te=U=>{var T=N8(),C=Qe(T),D=a(C);{let ye=v(()=>t().t("API Base URL"));mt(D,{get label(){return e(ye)},children:(he,q)=>{var P=Nl();vt(P),k(P,1,me(A)),g(Q=>Be(P,"placeholder",Q),[()=>t().t("API Base URL")]),dt(P,()=>e(x).IMAGES_OPENAI_API_BASE_URL,Q=>We(x,e(x).IMAGES_OPENAI_API_BASE_URL=Q)),i(he,P)},$$slots:{default:!0}})}var F=o(D,2);{let ye=v(()=>t().t("API Key"));mt(F,{get label(){return e(ye)},children:(he,q)=>{{let P=v(()=>t().t("API Key"));Cr(he,{variant:"settings",get placeholder(){return e(P)}
86,required:!1,get value(){return e(x).IMAGES_OPENAI_API_KEY},set value(Q){We(x,e(x).IMAGES_OPENAI_API_KEY=Q)},$$legacy:!0})}},$$slots:{default:!0}})}r(C);var H=o(C,2);{let ye=v(()=>t().t("API Version"));mt(H,{get label(){return e(ye)},children:(he,q)=>{var P=Nl();vt(P),k(P,1,me(A)),g(Q=>Be(P,"placeholder",Q),[()=>t().t("API Version")]),dt(P,()=>e(x).IMAGES_OPENAI_API_VERSION,Q=>We(x,e(x).IMAGES_OPENAI_API_VERSION=Q)),i(he,P)},$$slots:{default:!0}})}var pe=o(H,2);{let ye=v(()=>t().t("Additional Parameters")),he=v(()=>t().t("Send extra JSON parameters with each image generation request."));mt(pe,{get label(){return e(ye)},get description(){return e(he)},children:(q,P)=>{{let Q=v(()=>t().t("Enter additional parameters in JSON format"));ma(q,{className:E,get placeholder(){return e(Q)},minSize:100,get value(){return e(x).IMAGES_OPENAI_API_PARAMS},set value(re){We(x,e(x).IMAGES_OPENAI_API_PARAMS=re)},$$legacy:!0})}},$$slots:{default:!0}})}i(U,T)},ge=U=>{var T=au(),C=Qe(T);{let H=v(()=>t().t("Base URL")),pe=v(()=>t().t("Connect to a stable-diffusion-webui server running with the `--api` flag."));mt(C,{get label(){return e(H)},get description(){return e(pe)},children:(ye,he)=>{var q=ru(),P=a(q);vt(P),k(P,1,me(A));var Q=o(P,2);r(q),g(re=>Be(P,"placeholder",re),[()=>t().t("Enter URL (e.g. http://127.0.0.1:7860/)")]),dt(P,()=>e(x).AUTOMATIC1111_BASE_URL,re=>We(x,e(x).AUTOMATIC1111_BASE_URL=re)),ke("click",Q,async()=>{await Se(),await Bc(localStorage.token).catch(le=>(rt.error(`${le}`),null))&&rt.success(t().t("Server connection verified"))}),i(ye,q)},$$slots:{default:!0}})}var D=o(C,2);{let H=v(()=>t().t("API Auth String")),pe=v(()=>t().t("Provide the --api-auth username and password when required."));mt(D,{get label(){return e(H)},get description(){return e(pe)},children:(ye,he)=>{{let q=v(()=>t().t("Enter api auth string (e.g. username:password)"));Cr(ye,{variant:"settings",get placeholder(){return e(q)},required:!1,get value(){return e(x).AUTOMATIC1111_API_AUTH},set value(P){We(x,e(x).AUTOMATIC1111_API_AUTH=P)},$$legacy:!0})}},$$slots:{default:!0}})}var F=o(D,2);{let H=v(()=>t().t("Additional Parameters")),pe=v(()=>t().t("Send extra JSON parameters with each AUTOMATIC1111 request."));mt(F,{get label(){return e(H)},get description(){return e(pe)},children:(ye,he)=>{{let q=v(()=>t().t("Enter additional parameters in JSON format"));ma(ye,{className:E,get placeholder(){return e(q)},minSize:100,get value(){return e(x).AUTOMATIC1111_PARAMS},set value(P){We(x,e(x).AUTOMATIC1111_PARAMS=P)},$$legacy:!0})}},$$slots:{default:!0}})}i(U,T)},_e=U=>{var T=P8(),C=Qe(T);{let Q=v(()=>t().t("Base URL")),re=v(()=>t().t("Connect to the ComfyUI server used for generation."));mt(C,{get label(){return e(Q)},get description(){return e(re)},children:(le,$e)=>{var ze=ru(),Fe=a(ze);vt(Fe),k(Fe,1,me(A));var at=o(Fe,2);r(ze),g(tt=>Be(Fe,"placeholder",tt),[()=>t().t("Enter URL (e.g. http://127.0.0.1:7860/)")]),dt(Fe,()=>e(x).COMFYUI_BASE_URL,tt=>We(x,e(x).COMFYUI_BASE_URL=tt)),ke("click",at,async()=>{await Se(),await Bc(localStorage.token).catch(Je=>(rt.error(`${Je}`),null))&&rt.success(t().t("Server connection verified"))}),i(le,ze)},$$slots:{default:!0}})}var D=o(C,2);{let Q=v(()=>t().t("API Key")),re=v(()=>t().t("Use an API key when your ComfyUI server requires one."));mt(D,{get label(){return e(Q)},get description(){return e(re)},children:(le,$e)=>{{let ze=v(()=>t().t("sk-1234"));Cr(le,{variant:"settings",get placeholder(){return e(ze)},required:!1,get value(){return e(x).COMFYUI_API_KEY},set value(Fe){We(x,e(x).COMFYUI_API_KEY=Fe)},$$legacy:!0})}},$$slots:{default:!0}})}var F=o(D,2),H=a(F),pe=o(H,2);{let Q=v(()=>t().t("ComfyUI Workflow")),re=v(()=>t().t("Upload a workflow.json file exported as API format from ComfyUI."));Jt(pe,{get label(){return e(Q)},get description(){return e(re)},children:(le,$e)=>{var ze=X_(),Fe=a(ze);{var at=Je=>{var je=xd(),ne=a(je,!0);r(je),g((J,W)=>{Be(je,"aria-label",J),d(ne,W)},[()=>t().t("Edit workflow.json content"),()=>t().t("Edit")]),ke("click",je,()=>{s(V,!0)}),i(Je,je)};G(Fe,Je=>{e(x).COMFYUI_WORKFLOW&&Je(at)})}var tt=o(Fe,2);{let Je=v(()=>t().t("Click here to upload a workflow.json file."));Lt(tt,{get content(){return e(Je)},children:(je,ne)=>{var J=xd(),W=a(J,!0);r(J),g((Z,Ee)=>{Be(J,"aria-label",Z),d(W,Ee)},[()=>t().t("Click here to upload a workflow.json file."),()=>t().t("Upload")]),ke("click",J,()=>{var Z;(Z=document.getElementById("upload-comfyui-workflow-input"))==null||Z.click()}),i(je,J)},$$slots:{default:!0}})}r(ze),i(le,ze)},$$slots:{default:!0}})}var ye=o(pe,2),he=a(ye);V_(he,{get value(){return e(x).COMFYUI_WORKFLOW},lang:"json",onChange:Q=>{We(x,e(x).COMFYUI_WORKFLOW=Q)},onSave:()=>{},get show(){return e(V)},set show(Q){s(V,Q)},$$legacy:!0}),r(ye),r(F);var q=o(F,2);{var P=Q=>{{let re=v(()=>
86t().t("ComfyUI Workflow Nodes")),le=v(()=>t().t("Map workflow node inputs used for image generation."));mt(Q,{get label(){return e(re)},get description(){return e(le)},children:($e,ze)=>{var Fe=Z_(),at=Qe(Fe);lr(at,5,()=>e(B),Ar,(je,ne,J)=>{var W=J_(),Z=a(W),Ee=a(Z),Ge=a(Ee);r(Ee),r(Z);var p=o(Z,2),$=a(p),S=a($);{let y=v(()=>t().t("Input Key (e.g. text, unet_name, steps)"));Lt(S,{get content(){return e(y)},children:(b,N)=>{var z=tu();vt(z),k(z,1,"w-full h-7 rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500 w-24"),g(Ue=>Be(z,"placeholder",Ue),[()=>t().t("Key")]),dt(z,()=>e(ne).key,Ue=>(e(ne).key=Ue,Ja(()=>e(B)))),i(b,z)},$$slots:{default:!0}})}r($);var L=o($,4),fe=a(L);{let y=v(()=>t().t("Comma separated Node Ids (e.g. 1 or 1,2)"));Lt(fe,{get content(){return e(y)},placement:"top-start",children:(b,N)=>{var z=Nl();vt(z),k(z,1,me(A)),g(Ue=>Be(z,"placeholder",Ue),[()=>t().t("Node Ids")]),dt(z,()=>e(ne).node_ids,Ue=>(e(ne).node_ids=Ue,Ja(()=>e(B)))),i(b,z)},$$slots:{default:!0}})}r(L),r(p),r(W),g(()=>d(Ge,`${e(ne).type??""}${e(ne).type==="prompt"?"*":""}`)),i(je,W)}),r(at);var tt=o(at,2),Je=a(tt,!0);r(tt),g(je=>d(Je,je),[()=>t().t("*Prompt node ID(s) are required for image generation")]),i($e,Fe)},$$slots:{default:!0}})}};G(q,Q=>{e(x).COMFYUI_WORKFLOW&&Q(P)})}ke("change",H,Q=>{const re=Q.target.files[0],le=new FileReader;le.onload=$e=>{We(x,e(x).COMFYUI_WORKFLOW=$e.target.result),$e.target.value=null},le.readAsText(re)}),i(U,T)},Ae=U=>{var T=au(),C=Qe(T);{let H=v(()=>t().t("Base URL")),pe=v(()=>t().t("Override the Gemini image generation endpoint."));mt(C,{get label(){return e(H)},get description(){return e(pe)},children:(ye,he)=>{var q=Nl();vt(q),k(q,1,me(A)),g(P=>Be(q,"placeholder",P),[()=>t().t("API Base URL")]),dt(q,()=>e(x).IMAGES_GEMINI_API_BASE_URL,P=>We(x,e(x).IMAGES_GEMINI_API_BASE_URL=P)),i(ye,q)},$$slots:{default:!0}})}var D=o(C,2);{let H=v(()=>t().t("API Key")),pe=v(()=>t().t("Use a Gemini API key for image generation."));mt(D,{get label(){return e(H)},get description(){return e(pe)},children:(ye,he)=>{{let q=v(()=>t().t("API Key"));Cr(ye,{variant:"settings",get placeholder(){return e(q)},required:!0,get value(){return e(x).IMAGES_GEMINI_API_KEY},set value(P){We(x,e(x).IMAGES_GEMINI_API_KEY=P)},$$legacy:!0})}},$$slots:{default:!0}})}var F=o(D,2);{let H=v(()=>t().t("Gemini Endpoint Method")),pe=v(()=>t().t("Select the Gemini endpoint method to call."));Jt(F,{get label(){return e(H)},get description(){return e(pe)},children:(ye,he)=>{{let q=v(()=>t().t("Select Method"));aa(ye,{get placeholder(){return e(q)},get value(){return e(x).IMAGES_GEMINI_ENDPOINT_METHOD},set value(P){We(x,e(x).IMAGES_GEMINI_ENDPOINT_METHOD=P)},children:(P,Q)=>{var re=C8(),le=Qe(re);le.value=le.__value="predict";var $e=o(le,2);$e.value=$e.__value="generateContent",i(P,re)},$$slots:{default:!0},$$legacy:!0})}},$$slots:{default:!0}})}i(U,T)};G(ve,U=>{var T,C,D,F;((T=e(x))==null?void 0:T.IMAGE_GENERATION_ENGINE)==="openai"?U(te):(((C=e(x))==null?void 0:C.IMAGE_GENERATION_ENGINE)??"automatic1111")==="automatic1111"?U(ge,1):((D=e(x))==null?void 0:D.IMAGE_GENERATION_ENGINE)==="comfyui"?U(_e,2):((F=e(x))==null?void 0:F.IMAGE_GENERATION_ENGINE)==="gemini"&&U(Ae,3)})}i(xe,Oe)},$$slots:{default:!0}})}var Re=o(qe,2);{let ue=v(()=>t().t("Edit Image"));va(Re,{get title(){return e(ue)},children:(xe,K)=>{var Oe=R8(),O=Qe(Oe);{let U=v(()=>t().t("Image Edit")),T=v(()=>t().t("Allow users to edit existing images."));Jt(O,{get label(){return e(U)},get description(){return e(T)},children:Ir,$$slots:{default:(C,D)=>{const F=v(()=>D.labelId);Nt(C,{get ariaLabelledbyId(){return e(F)},get state(){return e(x).ENABLE_IMAGE_EDIT},set state(H){We(x,e(x).ENABLE_IMAGE_EDIT=H)},$$legacy:!0})}}})}var ie=o(O,2);{let U=v(()=>t().t("Image Edit Engine")),T=v(()=>t().t("Choose the provider used for image edits."));Jt(ie,{get label(){return e(U)},get description(){return e(T)},children:(C,D)=>{{let F=v(()=>t().t("Select Engine"));aa(C,{get placeholder(){return e(F)},get value(){return e(x).IMAGE_EDIT_ENGINE},set value(H){We(x,e(x).IMAGE_EDIT_ENGINE=H)},children:(H,pe)=>{var ye=T8(),he=Qe(ye),q=a(he,!0);r(he),he.value=he.__value="openai";var P=o(he,2),Q=a(P,!0);r(P),P.value=P.__value="comfyui";var re=o(P,2),le=a(re,!0);r(re),re.value=re.__value="gemini",g(($e,ze,Fe)=>{d(q,$e),d(Q,ze),d(le,Fe)},[()=>t().t("Default (Open AI)"),()=>t().t("ComfyUI"),()=>t().t("Gemini")]),i(H,ye)},$$slots:{default:!0},$$legacy:!0})}},$$slots:{default:!0}})}var M=o(ie,2);{var ve=U=>{var T=Q_(),C=a(T);{let F=v(()=>t().t("Model"));mt(C,{get label(){return e(F)},children:(H,pe)=>{var ye=L8(),he=Qe(ye);vt(he),k(he,1,me(A));var q=o(he,2);lr(q,5,()=>e(c)??[],Ar,(P,Q)=>{var re=q_(),le=a(re,!0);r(re);var $e={};g(()=>{d(le,e(Q).name),$e!==($e=e(Q).id)&&(re.value=(re.__value=e(Q).id)??"")}),i(P,re)}),r(q),g(P=>Be(he,"placeholder",P),[()=>t().t("Select a model")]),dt(he,()=>e(x).IMAGE_EDIT_MODEL,P=>We(x,e(x).IMAGE_EDIT_MODEL=P)),i(H,ye)},$$slots:{default:!0}})}var D=o(C,2);{let F=v(()=>t().t("Image Size"));mt(D,{get label(){return e(F)},children:(H,pe)=>{var ye=Nl();vt(ye),k(ye,1,me(A)),g(he=>Be(ye,"placeholder",he),[()=>t().t("Enter Image Size (e.g. 512x512)")]),dt(ye,()=>e(x).IMAGE_EDIT_SIZE,he=>We(x,e(x).IMAGE_EDIT_SIZE=he)),i(H,ye)},$$slots:{default:!0}})}r(T),i(U,T)};G(M,U=>{var T,C;(T=e(x))!=null&&T.ENABLE_IMAGE_GENERATION&&((C=e(x))!=null&&C.ENABLE_IMAGE_EDIT)&&U(ve)})}var te=o(M,2);{var ge=U=>
86{var T=O8(),C=Qe(T),D=a(C);{let pe=v(()=>t().t("API Base URL"));mt(D,{get label(){return e(pe)},children:(ye,he)=>{var q=Nl();vt(q),k(q,1,me(A)),g(P=>Be(q,"placeholder",P),[()=>t().t("API Base URL")]),dt(q,()=>e(x).IMAGES_EDIT_OPENAI_API_BASE_URL,P=>We(x,e(x).IMAGES_EDIT_OPENAI_API_BASE_URL=P)),i(ye,q)},$$slots:{default:!0}})}var F=o(D,2);{let pe=v(()=>t().t("API Key"));mt(F,{get label(){return e(pe)},children:(ye,he)=>{{let q=v(()=>t().t("API Key"));Cr(ye,{variant:"settings",get placeholder(){return e(q)},required:!1,get value(){return e(x).IMAGES_EDIT_OPENAI_API_KEY},set value(P){We(x,e(x).IMAGES_EDIT_OPENAI_API_KEY=P)},$$legacy:!0})}},$$slots:{default:!0}})}r(C);var H=o(C,2);{let pe=v(()=>t().t("API Version"));mt(H,{get label(){return e(pe)},children:(ye,he)=>{var q=Nl();vt(q),k(q,1,me(A)),g(P=>Be(q,"placeholder",P),[()=>t().t("API Version")]),dt(q,()=>e(x).IMAGES_EDIT_OPENAI_API_VERSION,P=>We(x,e(x).IMAGES_EDIT_OPENAI_API_VERSION=P)),i(ye,q)},$$slots:{default:!0}})}i(U,T)},_e=U=>{var T=M8(),C=Qe(T);{let P=v(()=>t().t("Base URL")),Q=v(()=>t().t("Connect to the ComfyUI server used for image edits."));mt(C,{get label(){return e(P)},get description(){return e(Q)},children:(re,le)=>{var $e=ru(),ze=a($e);vt(ze),k(ze,1,me(A));var Fe=o(ze,2);r($e),g(at=>Be(ze,"placeholder",at),[()=>t().t("Enter URL (e.g. http://127.0.0.1:7860/)")]),dt(ze,()=>e(x).IMAGES_EDIT_COMFYUI_BASE_URL,at=>We(x,e(x).IMAGES_EDIT_COMFYUI_BASE_URL=at)),ke("click",Fe,async()=>{await Se(),await Bc(localStorage.token).catch(tt=>(rt.error(`${tt}`),null))&&rt.success(t().t("Server connection verified"))}),i(re,$e)},$$slots:{default:!0}})}var D=o(C,2);{let P=v(()=>t().t("API Key")),Q=v(()=>t().t("Use an API key when your ComfyUI server requires one."));mt(D,{get label(){return e(P)},get description(){return e(Q)},children:(re,le)=>{{let $e=v(()=>t().t("sk-1234"));Cr(re,{variant:"settings",get placeholder(){return e($e)},required:!1,get value(){return e(x).IMAGES_EDIT_COMFYUI_API_KEY},set value(ze){We(x,e(x).IMAGES_EDIT_COMFYUI_API_KEY=ze)},$$legacy:!0})}},$$slots:{default:!0}})}var F=o(D,2),H=a(F),pe=o(H,2);{let P=v(()=>t().t("ComfyUI Workflow")),Q=v(()=>t().t("Upload a workflow.json file exported as API format from ComfyUI."));Jt(pe,{get label(){return e(P)},get description(){return e(Q)},children:(re,le)=>{var $e=X_(),ze=a($e);{var Fe=tt=>{var Je=xd(),je=a(Je,!0);r(Je),g((ne,J)=>{Be(Je,"aria-label",ne),d(je,J)},[()=>t().t("Edit workflow.json content"),()=>t().t("Edit")]),ke("click",Je,()=>{s(j,!0)}),i(tt,Je)};G(ze,tt=>{e(x).IMAGES_EDIT_COMFYUI_WORKFLOW&&tt(Fe)})}var at=o(ze,2);{let tt=v(()=>t().t("Click here to upload a workflow.json file."));Lt(at,{get content(){return e(tt)},children:(Je,je)=>{var ne=xd(),J=a(ne,!0);r(ne),g((W,Z)=>{Be(ne,"aria-label",W),d(J,Z)},[()=>t().t("Click here to upload a workflow.json file."),()=>t().t("Upload")]),ke("click",ne,()=>{var W;(W=document.getElementById("upload-comfyui-edit-workflow-input"))==null||W.click()}),i(Je,ne)},$$slots:{default:!0}})}r($e),i(re,$e)},$$slots:{default:!0}})}var ye=o(pe,2);V_(ye,{get value(){return e(x).IMAGES_EDIT_COMFYUI_WORKFLOW},lang:"json",onChange:P=>{We(x,e(x).IMAGES_EDIT_COMFYUI_WORKFLOW=P)},onSave:()=>{},get show(){return e(j)},set show(P){s(j,P)},$$legacy:!0}),r(F);var he=o(F,2);{var q=P=>{{let Q=v(()=>t().t("ComfyUI Workflow Nodes")),re=v(()=>t().t("Map workflow node inputs used for image edits."));mt(P,{get label(){return e(Q)},get description(){return e(re)},children:(le,$e)=>{var ze=Z_(),Fe=Qe(ze);lr(Fe,5,()=>e(w),Ar,(Je,je,ne)=>{var J=J_(),W=a(J),Z=a(W),Ee=a(Z);r(Z),r(W);var Ge=o(W,2),p=a(Ge),$=a(p);{let fe=v(()=>t().t("Input Key (e.g. text, unet_name, steps)"));Lt($,{get content(){return e(fe)},children:(y,b)=>{var N=tu();vt(N),k(N,1,"w-full h-7 rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500 w-24"),g(z=>Be(N,"placeholder",z),[()=>t().t("Key")]),dt(N,()=>e(je).key,z=>(e(je).key=z,Ja(()=>e(w)))),i(y,N)},$$slots:{default:!0}})}r(p);var S=o(p,4),L=a(S);{let fe=v(()=>t().t("Comma separated Node Ids (e.g. 1 or 1,2)"));Lt(L,{get content(){return e(fe)},placement:"top-start",children:(y,b)=>{var N=Nl();vt(N),k(N,1,me(A)),g(z=>Be(N,"placeholder",z),[()=>t().t("Node Ids")]),dt(N,()=>e(je).node_ids,z=>(e(je).node_ids=z,Ja(()=>e(w)))),i(y,N)},$$slots:{default:!0}})}r(S),r(Ge),r(J),g(fe=>
86d(Ee,`${e(je).type??""}${fe??""}`),[()=>["prompt","image"].includes(e(je).type)?"*":""]),i(Je,J)}),r(Fe);var at=o(Fe,2),tt=a(at,!0);r(at),g(Je=>d(tt,Je),[()=>t().t("*Prompt node ID(s) are required for image generation")]),i(le,ze)},$$slots:{default:!0}})}};G(he,P=>{e(x).IMAGES_EDIT_COMFYUI_WORKFLOW&&P(q)})}ke("change",H,P=>{const Q=P.target.files[0],re=new FileReader;re.onload=le=>{We(x,e(x).IMAGES_EDIT_COMFYUI_WORKFLOW=le.target.result),le.target.value=null},re.readAsText(Q)}),i(U,T)},Ae=U=>{var T=Q_(),C=a(T);{let F=v(()=>t().t("Base URL"));mt(C,{get label(){return e(F)},children:(H,pe)=>{var ye=Nl();vt(ye),k(ye,1,me(A)),g(he=>Be(ye,"placeholder",he),[()=>t().t("API Base URL")]),dt(ye,()=>e(x).IMAGES_EDIT_GEMINI_API_BASE_URL,he=>We(x,e(x).IMAGES_EDIT_GEMINI_API_BASE_URL=he)),i(H,ye)},$$slots:{default:!0}})}var D=o(C,2);{let F=v(()=>t().t("API Key"));mt(D,{get label(){return e(F)},children:(H,pe)=>{{let ye=v(()=>t().t("API Key"));Cr(H,{variant:"settings",get placeholder(){return e(ye)},required:!0,get value(){return e(x).IMAGES_EDIT_GEMINI_API_KEY},set value(he){We(x,e(x).IMAGES_EDIT_GEMINI_API_KEY=he)},$$legacy:!0})}},$$slots:{default:!0}})}r(T),i(U,T)};G(te,U=>{var T,C,D;((T=e(x))==null?void 0:T.IMAGE_EDIT_ENGINE)==="openai"?U(ge):((C=e(x))==null?void 0:C.IMAGE_EDIT_ENGINE)==="comfyui"?U(_e,1):((D=e(x))==null?void 0:D.IMAGE_EDIT_ENGINE)==="gemini"&&U(Ae,2)})}i(xe,Oe)},$$slots:{default:!0}})}r(be),i(de,be)};G(ce,de=>{e(x)&&de(De)})}r(m);var Le=o(m,2),Ne=a(Le),Ce=a(Ne),we=o(Ce);{var oe=de=>{var be=U8(),Me=a(be);ra(Me,{}),r(be),i(de,be)};G(we,de=>{e(I)&&de(oe)})}r(Ne),r(Le),r(ae),g((de,be)=>{d(se,de),k(Ne,1,`px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full flex items-center gap-2 whitespace-nowrap ${e(I)?" cursor-not-allowed":""}`),Ne.disabled=e(I),d(Ce,`${be??""} `)},[()=>t().t("Images"),()=>t().t("Save")]),ke("submit",ae,ca(async()=>{ee()})),i(He,ae),cr(),Ie()}var ef=u('<option class="bg-gray-100 dark:bg-gray-700"> </option>'),j8=u('<option selected="" disabled="" class="bg-gray-100 dark:bg-gray-700"> </option> <!>',1),H8=u('<div class="flex gap-2"><button class="h-7 flex-1 rounded-lg border border-dashed border-gray-100/50 bg-transparent px-2 text-left text-xs text-gray-500 transition-colors hover:bg-black/5 hover:text-gray-900 dark:border-white/[0.04] dark:text-gray-500 dark:hover:bg-white/5 dark:hover:text-white" type="button"><!></button> <button type="button"> </button></div>'),F8=u('<div class="flex gap-2"><input/> <button type="button"> </button></div>'),W8=u("<!> <!> <!>",1),z8=u('<div class="flex gap-2"><!> <button type="button"> </button></div>'),K8=u('<button type="button"> </button>'),Y8=u("<option> </option>"),V8=u('<input type="text" autocomplete="off" required=""/>'),q8=u('<div class="mt-1"><!></div>'),X8=u("<div><!> <!></div>"),J8=u('<div class="flex justify-center py-2"><!></div>'),lu=u("<div> </div>"),Z8=u("<!> <!>",1),Q8=u('<div class="flex justify-center py-4"><!></div>'),eT=u('<input id="pipelines-upload-input" type="file" accept=".py" hidden=""/> <!> <!>',1),tT=u('<div class="flex justify-center h-full"><div class="my-auto"><!></div></div>'),rT=u('<div class="flex justify-end pt-6 text-sm font-normal"><button class="px-3.5 py-1.5 text-sm font-normal bg-black hover:bg-gray-900 text-white dark:bg-white dark:text-black dark:hover:bg-gray-100 transition rounded-full" type="submit"> </button></div>'),aT=u('<form class="flex h-full flex-col justify-between text-sm"><h2 class="text-sm font-medium text-gray-900 dark:text-white mb-4"> </h2> <div class="flex-1 min-h-0 overflow-y-auto scrollbar-hover pr-1.5"><!></div> <!></form>');function lT(He,_){vr(_,!1);const t=()=>ct(R,"$i18n",Ie),f=()=>ct(_a,"$config",Ie),n=()=>ct(ua,"$settings",Ie),[Ie,X]=hr(),R=mr("i18n");let I=Xe(_,"saveHandler",8),c=h(!1),x=h(!1),A=h(null),E=h(null),V=h(""),B=h(null),j=h(null),w=h(null),Te=h(0),Se=h("");const Y="w-full h-7 rounded-lg border border-gray-100/50 bg-gray-50/40 px-2 text-xs text-gray-700 outline-hidden transition-colors placeholder:text-gray-300 focus:border-blue-400 dark:border-white/[0.04] dark:bg-white/[0.03] dark:text-gray-300 dark:placeholder:text-gray-700 dark:focus:border-blue-500",ee="shrink-0 text-xs text-gray-500 transition-colors hover:text-gray-900 disabled:opacity-50 dark:text-gray-500 dark:hover:text-white",ae="text-xs text-gray-400 dark:text-gray-600",Pe=async()=>{var xe,K,Oe,O;if(!e(B)){rt.error(t().t("No valves to update"));return}const ue=e(B)[e(Te)];if(ue&&((ue==null?void 0:ue.valves)??!1)){for(const M in e(w).properties)((xe=e(w).properties[M])==null?void 0:xe.type)==="array"&&We(j,e(j)[M]=(e(j)[M]??"").split(",").map(ve=>ve.trim()));await pm(localStorage.token,ue.id,e(j),e(V)).catch(M=>{rt.error(`${M}`)})&&(rt.success(t().t("Valves updated successfully")),m(),ba.set(await La(localStorage.token,(Oe=(K=f())==null?void 0:K.features)!=null&&Oe.enable_direct_connections?((O=n())==null?void 0:O.directConnections)??null:null)),I()())}else rt.error(t().t("No valves to update"))},se=async ue=>{var xe,K;if((xe=e(B))!=null&&xe[ue]){s(j,null),s(w,null),s(w,await hm(localStorage.token,e(B)[ue].id,e(V))),s(j,await xm(localStorage.token,e(B)[ue].id,e(V)));for(const Oe in e(w).properties)((K=e(w).properties[Oe])==null?void 0:K.type)==="array"&&We(j,e(j)[Oe]=e(j)[Oe].join(","))}},m=async()=>
86{if(s(B,null),s(j,null),s(w,null),(e(E)??[]).length>0){e(V);const ue=await mm(localStorage.token,e(V));s(B,ue),ue.length>0&&(s(Te,0),await se(e(Te)))}else s(B,[])},ce=async()=>{var xe,K,Oe;s(c,!0),await ym(localStorage.token,e(Se),e(V)).catch(O=>(rt.error(`${O}`),null))&&(rt.success(t().t("Pipeline downloaded successfully")),m(),ba.set(await La(localStorage.token,(K=(xe=f())==null?void 0:xe.features)!=null&&K.enable_direct_connections?((Oe=n())==null?void 0:Oe.directConnections)??null:null))),s(c,!1)},De=async()=>{var xe,K,Oe;if(s(x,!0),e(A)&&e(A).length!==0){const O=e(A)[0];await bm(localStorage.token,O,e(V)).catch(M=>(rt.error(t().t("Something went wrong :/")),null))&&(rt.success(t().t("Pipeline downloaded successfully")),m(),ba.set(await La(localStorage.token,(K=(xe=f())==null?void 0:xe.features)!=null&&K.enable_direct_connections?((Oe=n())==null?void 0:Oe.directConnections)??null:null)))}else rt.error(t().t("No file selected"));s(A,null);const ue=document.getElementById("pipelines-upload-input");ue&&(ue.value=""),s(x,!1)},Le=async()=>{var K,Oe,O,ie;const ue=(K=e(B))==null?void 0:K[e(Te)];if(!ue)return;await $m(localStorage.token,ue.id,e(V)).catch(M=>(rt.error(`${M}`),null))&&(rt.success(t().t("Pipeline deleted successfully")),m(),ba.set(await La(localStorage.token,(O=(Oe=f())==null?void 0:Oe.features)!=null&&O.enable_direct_connections?((ie=n())==null?void 0:ie.directConnections)??null:null)))};ea(async()=>{s(E,await fm(localStorage.token)),e(E);const ue=e(E)??[];ue.length>0&&s(V,ue[0].idx.toString()),await m()}),gr();var Ne=aT(),Ce=a(Ne),we=a(Ce,!0);r(Ce);var oe=o(Ce,2),de=a(oe);{var be=ue=>{var xe=Wr(),K=Qe(xe);{var Oe=ie=>{var M=eT(),ve=Qe(M),te=o(ve,2);{let U=v(()=>(t(),l(()=>t().t("Source"))));va(te,{get title(){return e(U)},first:!0,children:(T,C)=>{var D=W8(),F=Qe(D);{let ye=v(()=>(t(),l(()=>t().t("Pipeline URL")))),he=v(()=>(t(),l(()=>t().t("Select the Pipelines server to manage."))));mt(F,{get label(){return e(ye)},get description(){return e(he)},children:(q,P)=>{{let Q=v(()=>(t(),l(()=>t().t("Select a pipeline url"))));aa(q,{className:"w-full",get placeholder(){return e(Q)},get value(){return e(V)},set value(re){s(V,re)},$$events:{change:async()=>{await na(),await m()}},children:(re,le)=>{var $e=j8(),ze=Qe($e),Fe=a(ze,!0);r(ze),ze.value=ze.__value="";var at=o(ze,2);lr(at,1,()=>e(E),Ar,(tt,Je,je,ne)=>{var J=ef(),W=a(J,!0);r(J);var Z={};g(Ee=>{d(W,(e(Je),l(()=>e(Je).url))),Z!==(Z=Ee)&&(J.value=(J.__value=Ee)??"")},[()=>(e(Je),l(()=>e(Je).idx.toString()))]),i(tt,J)}),g(tt=>d(Fe,tt),[()=>(t(),l(()=>t().t("Select a pipeline url")))]),i(re,$e)},$$slots:{default:!0},$$legacy:!0})}},$$slots:{default:!0}})}var H=o(F,2);{let ye=v(()=>(t(),l(()=>t().t("Upload Pipeline")))),he=v(()=>(t(),l(()=>t().t("Upload a local Python pipeline file to the selected server."))));mt(H,{get label(){return e(ye)},get description(){return e(he)},children:(q,P)=>{var Q=H8(),re=a(Q),le=a(re);{var $e=tt=>{var Je=Mr();g(()=>d(Je,`${e(A),l(()=>e(A).length>0?`${e(A).length}`:"")??""} pipeline(s) selected`)),i(tt,Je)},ze=tt=>{var Je=Mr();g(je=>d(Je,je),[()=>(t(),l(()=>t().t("Select a .py file")))]),i(tt,Je)};G(le,tt=>{e(A)?tt($e):tt(ze,-1)})}r(re);var Fe=o(re,2);k(Fe,1,me(ee));var at=a(Fe,!0);r(Fe),r(Q),g(tt=>{Fe.disabled=e(x),d(at,tt)},[()=>(e(x),t(),l(()=>e(x)?t().t("Uploading"):t().t("Upload")))]),ke("click",re,()=>{var tt;(tt=document.getElementById("pipelines-upload-input"))==null||tt.click()}),ke("click",Fe,()=>{De()}),i(q,Q)},$$slots:{default:!0}})}var pe=o(H,2);{let ye=v(()=>(t(),l(()=>t().t("GitHub URL")))),he=v(()=>(t(),l(()=>`${t().t("Pipelines are a plugin system with arbitrary code execution.")} ${t().t("Don't fetch random pipelines from sources you don't trust.")}`)));mt(pe,{get label(){return e(ye)},get description(){return e(he)},children:(q,P)=>{var Q=F8(),re=a(Q);vt(re),k(re,1,me(Y));var le=o(re,2);k(le,1,me(ee));var $e=a(le,!0);r(le),r(Q),g((ze,Fe)=>{Be(re,"placeholder",ze),le.disabled=e(c),d($e,Fe)},[()=>(t(),l(()=>t().t("Enter GitHub Raw URL"))),()=>(e(c),t(),l(()=>e(c)?t().t("Installing"):t().t("Install")))]),dt(re,()=>e(Se),ze=>s(Se,ze)),ke("click",le,()=>{ce()}),i(q,Q)},$$slots:{default:!0}})}i(T,D)},$$slots:{default:!0}})}var ge=o(te,2);{var _e=U=>{var T=Wr(),C=Qe(T);{var D=H=>{var pe=Z8(),ye=Qe(pe);{let q=v(()=>(t(),l(()=>t().t("Pipelines"))));va(ye,{get title(){return e(q)},children:(P,Q)=>{{let re=v(()=>(t(),l(()=>t().t("Pipeline")))),le=v(()=>(t(),l(()=>t().t("Select an installed pipeline to configure or remove."))));mt(P,{get label(){return e(re)},get description(){return e(le)},children:($e,ze)=>{var Fe=z8(),at=a(Fe);{let je=v(()=>(t(),l(()=>t().t("Select a pipeline"))));aa(at,{className:"w-full",get placeholder(){return e(je)},get value(){return e(Te)},set value(ne){s(Te,ne)},$$events:{change:async()=>{await na(),await se(e(Te)??0)}},children:(ne,J)=>{var W=Wr(),Z=Qe(W);lr(Z,1,()=>e(B),Ar,(Ee,Ge,p)=>{var $=ef(),S=a($);r($),$.value=$.__value=p,g(()=>d(S,`${e(Ge),l(()=>e(Ge).name)??""} (${e(Ge),l(()=>e(Ge).type??"pipe")??""})`)),i(Ee,$)}),i(ne,W)},$$slots:{default:!0},$$legacy:!0})}var tt=o(at,2);k(tt,1,me(ee));var Je=a(tt,!0);r(tt),r(Fe),g(je=>d(Je,je),[()=>(t(),l(()=>t().t("Delete")))]),ke("click",tt,()=>{Le()}),i($e,Fe)},$$slots:{default:!0}})}},$$slots:{default:!0}})}var he=o(ye,2);{let q=v(()=>(t(),l(()=>t().t("Valves"))));va(he,{get title(){return e(q)},children:(P,Q)=>{var re=Wr(),le=Qe(re);{var $e=Fe=>{var at=Wr(),tt=Qe(at);{var Je=ne=>{var J=Wr(),W=Qe(J);lr(W,1,()=>(e(w),l(()=>Object.keys(e(w).properties))),Ar,(Z,Ee)=>{var Ge=X8(),p=a(Ge);{let L=v(()=>(e(w),e(Ee),l(()=>{var fe;return((fe=e(w).properties[e(Ee)])==null?void 0:fe.description)??""})));Jt(p,{get label(){return e(w),e(Ee),l(()=>e(w).properties[e(Ee)].title)},get description(){return e(L)},children:(fe,y)=>{var b=K8();k(b,1,me(ee));var N=a(b,!0);r(b),g(z=>d(N,z),[()=>(e(j),e(Ee),t(),l(()=>(e(j)[e(Ee)]??null)===null?t().t("None"):t().t("Custom")))]),ke("click",b,()=>{We(j,e(j)[e(Ee)]=(e(j)[e(Ee)]??null)===null?"":null)}),i(fe,b)},$$slots:{default:!0}})}var $=o(p,2);{var S=L=>{var fe=q8(),y=a(fe);{var b=Ue=>{aa(Ue,{className:"w-full",get value(){return e(j)[e(Ee)]},set value(Ye){We(j,e(j)[e(Ee)]=Ye)},children:(Ye,Ve)=>{var lt=Wr(),st=Qe(lt);lr(st,1,()=>(e(w),e(Ee),l(()=>e(w).properties[e(Ee)].enum)),Ar,(Ke,Ze)=>{var ot=Y8(),ut=a(ot,!0);r(ot);var _t={};g(()=>{ts(ot,(e(Ze),e(j),e(Ee),l(()=>e(Ze)===e(j)[e(Ee)]))),d(ut,e(Ze)),_t!==(_t=e(Ze))&&(ot.value=(ot.__value=e(Ze))??"")}),i(Ke,ot)}),i(Ye,lt)},$$slots:{default:!0},$$legacy:!0})},N=Ue=>{{let Ye=v(()=>(e(j),e(Ee),t(),l(()=>e(j)[e(Ee)]?t().t("Enabled"):t().t("Disabled"))));Jt(Ue,{get label(){return e(Ye)},labelClassName:"text-gray-400 dark:text-gray-600",children:Ir,$$slots:{default:(Ve,lt)=>{const st=v(()=>lt.labelId);Nt(Ve,{get ariaLabelledbyId(){return e(st)},get state(){return e(j)[e(Ee)]},set state(Ke){We(j,e(j)[e(Ee)]=Ke)},$$legacy:!0})}}})}},z=Ue=>{var Ye=V8();vt(Ye),k(Ye,1,me(Y)),g(()=>Be(Ye,"placeholder",(e(w),e(Ee),l(()=>e(w).properties[e(Ee)].title)))),dt(Ye,()=>e(j)[e(Ee)],Ve=>We(j,e(j)[e(Ee)]=Ve)),i(Ue,Ye)};G(y,Ue=>{e(w),e(Ee),l(()=>{var Ye;return((Ye=e(w).properties[e(Ee)])==null?void 0:Ye.enum)??null})?Ue(b):(e(w),e(Ee),l(()=>{var Ye;return(((Ye=e(w).properties[e(Ee)])==null?void 0:Ye.type)??null)==="boolean"})?Ue(N,1):Ue(z,-1))})}r(fe),i(L,fe)};G($,L=>{e(j),e(Ee),l(()=>(e(j)[e(Ee)]??null)!==null)&&L(S)})}r(Ge),i(Z,Ge)}),i(ne,J)},je=ne=>{var J=J8(),W=a(J);ra(W,{className:"size-4"}),r(J),i(ne,J)};G(tt,ne=>{e(j)&&e(w)?ne(Je):ne(je,-1)})}i(Fe,at)},ze=Fe=>{var at=lu();k(at,1,me(ae));var tt=a(at,!0);r(at),g(Je=>d(tt,Je),[()=>(t(),l(()=>t().t("No valves")))]),i(Fe,at)};G(le,Fe=>{e(B),e(Te),l(()=>{var at;return(at=e(B)[e(Te)??0])==null?void 0:at.valves})?Fe($e):Fe(ze,-1)})}i(P,re)},$$slots:{default:!0}})}i(H,pe)},F=H=>{{let pe=v(()=>(t(),l(()=>t().t("Pipelines"))));va(H,{get title(){return e(pe)},children:(ye,he)=>{var q=lu();k(q,1,me(ae));var P=a(q,!0);r(q),g(Q=>d(P,Q),[()=>(t(),l(()=>t().t("Pipelines Not Detected")))]),i(ye,q)},$$slots:{default:!0}})}};G(C,H=>
86{e(B),l(()=>e(B).length>0)?H(D):H(F,-1)})}i(U,T)},Ae=U=>{var T=Q8(),C=a(T);ra(C,{className:"size-4"}),r(T),i(U,T)};G(ge,U=>{e(B)!==null?U(_e):U(Ae,-1)})}as(ve,()=>e(A),U=>s(A,U)),i(ie,M)},O=ie=>{{let M=v(()=>(t(),l(()=>t().t("Source"))));va(ie,{get title(){return e(M)},first:!0,children:(ve,te)=>{var ge=lu();k(ge,1,me(ae));var _e=a(ge,!0);r(ge),g(Ae=>d(_e,Ae),[()=>(t(),l(()=>t().t("Pipelines Not Detected")))]),i(ve,ge)},$$slots:{default:!0}})}};G(K,ie=>{e(E),l(()=>e(E).length>0)?ie(Oe):ie(O,-1)})}i(ue,xe)},Me=ue=>{var xe=tT(),K=a(xe),Oe=a(K);ra(Oe,{className:"size-6"}),r(K),r(xe),i(ue,xe)};G(de,ue=>{e(E)!==null?ue(be):ue(Me,-1)})}r(oe);var qe=o(oe,2);{var Re=ue=>{var xe=rT(),K=a(xe),Oe=a(K,!0);r(K),r(xe),g(O=>d(Oe,O),[()=>(t(),l(()=>t().t("Save")))]),i(ue,xe)};G(qe,ue=>{e(E),l(()=>e(E)!==null&&e(E).length>0)&&ue(Re)})}r(Ne),g(ue=>d(we,ue),[()=>(t(),l(()=>t().t("Pipelines")))]),ke("submit",Ne,ca(async()=>{Pe()})),i(He,Ne),cr(),X()}var Ms=u('<button type="button"> </button>'),oT=u("<!> <!>",1),sT=u("<!> <!> <!>",1),nT=u('<div class="flex flex-col h-full justify-between text-sm"><h2 class="text-sm font-medium text-gray-900 dark:text-white mb-4"> </h2> <div class="flex-1 min-h-0 overflow-y-auto scrollbar-hover pr-1.5"><input id="config-json-input" hidden="" type="file" accept=".json"/> <!> <!></div></div>');function iT(He,_){vr(_,!1);const t=()=>ct(R,"$i18n",n),f=()=>ct(_a,"$config",n),[n,Ie]=hr(),{saveAs:X}=no,R=mr("i18n");Xe(_,"saveHandler",8);let I=h();const c="text-xs text-gray-500 transition-colors hover:text-gray-900 dark:text-gray-500 dark:hover:text-white",x=async()=>{let ee=new Blob([JSON.stringify(await Th(localStorage.token))],{type:"application/json"});X(ee,`all-chats-export-${Date.now()}.json`)},A=async()=>{const ee=await sh(localStorage.token),ae=["id","name","email","role"],Pe=[ae.join(","),...ee.users.map(m=>ae.map(ce=>m[ce]===null||m[ce]===void 0?"":`"${String(m[ce]).replace(/"/g,'""')}"`).join(","))].join(` 87`),se=new Blob([Pe],{type:"text/csv;charset=utf-8;"});X(se,"users.csv")};gr();var E=nT(),V=a(E),B=a(V,!0);r(V);var j=o(V,2),w=a(j);Oa(w,ee=>s(I,ee),()=>e(I));var Te=o(w,2);{let ee=v(()=>(t(),l(()=>t().t("Config"))));va(Te,{get title(){return e(ee)},first:!0,children:(ae,Pe)=>{var se=oT(),m=Qe(se);{let De=v(()=>(t(),l(()=>t().t("Import Config")))),Le=v(()=>(t(),l(()=>t().t("Import admin configuration from a JSON export file."))));Jt(m,{get label(){return e(De)},get description(){return e(Le)},children:(Ne,Ce)=>{var we=Ms();k(we,1,me(c));var oe=a(we,!0);r(we),g(de=>d(oe,de),[()=>(t(),l(()=>t().t("Import")))]),ke("click",we,()=>{e(I).click()}),i(Ne,we)},$$slots:{default:!0}})}var ce=o(m,2);{let De=v(()=>(t(),l(()=>t().t("Export Config")))),Le=v(()=>(t(),l(()=>t().t("Download the current admin configuration as JSON."))));Jt(ce,{get label(){return e(De)},get description(){return e(Le)},children:(Ne,Ce)=>{var we=Ms();k(we,1,me(c));var oe=a(we,!0);r(we),g(de=>d(oe,de),[()=>(t(),l(()=>t().t("Export")))]),ke("click",we,async()=>{const de=await Km(localStorage.token),be=new Blob([JSON.stringify(de)],{type:"application/json"});X(be,`config-${Date.now()}.json`)}),i(Ne,we)},$$slots:{default:!0}})}i(ae,se)},$$slots:{default:!0}})}var Se=o(Te,2);{var Y=ee=>{{let ae=v(()=>(t(),l(()=>t().t("Export"))));va(ee,{get title(){return e(ae)},children:(Pe,se)=>{var m=sT(),ce=Qe(m);{let Ne=v(()=>(t(),l(()=>t().t("Database")))),Ce=v(()=>(t(),l(()=>t().t("Download the application database when supported."))));Jt(ce,{get label(){return e(Ne)},get description(){return e(Ce)},children:(we,oe)=>{var de=Ms();k(de,1,me(c));var be=a(de,!0);r(de),g(Me=>d(be,Me),[()=>(t(),l(()=>t().t("Database")))]),ke("click",de,()=>{Yb(localStorage.token).catch(Me=>{rt.error(`${Me}`)})}),i(we,de)},$$slots:{default:!0}})}var De=o(ce,2);{let Ne=v(()=>(t(),l(()=>t().t("All Chats")))),Ce=v(()=>(t(),l(()=>t().t("Download every user's chat history as JSON."))));Jt(De,{get label(){return e(Ne)},get description(){return e(Ce)},children:(we,oe)=>{var de=Ms();k(de,1,me(c));var be=a(de,!0);r(de),g(Me=>d(be,Me),[()=>(t(),l(()=>t().t("Export")))]),ke("click",de,x),i(we,de)},$$slots:{default:!0}})}
87var Le=o(De,2);{let Ne=v(()=>(t(),l(()=>t().t("Users")))),Ce=v(()=>(t(),l(()=>t().t("Download all users as CSV."))));Jt(Le,{get label(){return e(Ne)},get description(){return e(Ce)},children:(we,oe)=>{var de=Ms();k(de,1,me(c));var be=a(de,!0);r(de),g(Me=>d(be,Me),[()=>(t(),l(()=>t().t("Export")))]),ke("click",de,A),i(we,de)},$$slots:{default:!0}})}i(Pe,m)},$$slots:{default:!0}})}};G(Se,ee=>{f(),l(()=>{var ae;return((ae=f())==null?void 0:ae.features.enable_admin_export)??!0})&&ee(Y)})}r(j),r(E),g(ee=>d(B,ee),[()=>(t(),l(()=>t().t("Database")))]),ke("change",w,ee=>{const ae=ee.target.files[0],Pe=new FileReader;Pe.onload=async se=>{await Ym(localStorage.token,JSON.parse(se.target.result)).catch(ce=>{rt.error(`${ce}`)})&&rt.success(t().t("Config imported successfully")),se.target.value=null},Pe.readAsText(ae)}),i(He,E),cr(),Ie()}var tf=u("<span> </span>"),dT=u('<button role="tab" aria-controls="tab-general"><!> <span> </span></button>'),vT=u('<button role="tab" aria-controls="tab-interface"><!> <span> </span></button>'),cT=u('<button role="tab" aria-controls="tab-notifications"><!> <span> </span></button>'),uT=u('<button role="tab" aria-controls="tab-shortcuts"><!> <span> </span></button>'),gT=u('<button role="tab" aria-controls="tab-connections"><!> <span> </span></button>'),_T=u('<button role="tab" aria-controls="tab-tools"><!> <span> </span></button>'),fT=u('<button role="tab" aria-controls="tab-personalization"><!> <span> </span></button>'),pT=u('<button role="tab" aria-controls="tab-audio"><!> <span> </span></button>'),mT=u('<button role="tab" aria-controls="tab-data-controls"><!> <span> </span></button>'),hT=u('<button role="tab" aria-controls="tab-usage"><!> <span> </span></button>'),xT=u('<button role="tab" aria-controls="tab-archived-chats"><!> <span> </span></button>'),bT=u('<button role="tab" aria-controls="tab-account"><!> <span> </span></button>'),yT=u('<button role="tab" aria-controls="tab-about"><!> <span> </span></button>'),rf=u("<!> <!>",1),$T=u('<button role="tab"><!> <span> </span></button>'),wT=u('<div class="hidden md:block shrink-0 self-stretch h-px mx-1 my-2 bg-gray-100/40 dark:bg-white/[0.025]"></div> <span class="hidden md:block text-[0.625rem] text-gray-400 dark:text-gray-600 px-2 mb-0.5"> </span> <!>',1),kT=u('<div class="px-2 py-1 text-xs text-gray-400 dark:text-gray-600"> </div>'),ET=u('<nav id="settings-tabs-container" class="shrink-0 min-w-0 md:min-h-0 flex md:flex-col border-b md:border-b-0 md:border-r border-gray-100/30 dark:border-white/[0.02] md:w-[15rem]"><button class="flex items-center gap-1.5 h-7 px-2 m-1 md:mb-0 md:w-[calc(100%-0.5rem)] shrink-0 rounded-lg text-xs text-gray-400 dark:text-gray-600 hover:text-gray-700 dark:hover:text-gray-300 transition-colors duration-75" type="button"><!> <span> </span></button> <div class="hidden md:flex items-center gap-1.5 h-7 px-2 mx-1 mt-1 mb-0.5 shrink-0 rounded-lg text-xs bg-gray-50/70 dark:bg-white/[0.03]"><div class="self-center rounded-l-xl bg-transparent"><!></div> <label class="sr-only" for="search-input-settings-modal"> </label> <input data-settings-search="" class="w-full text-xs bg-transparent py-1 outline-hidden dark:text-gray-300" id="search-input-settings-modal"/></div> <div class="tabs scrollbar-none flex min-w-0 flex-1 min-h-0 overflow-x-auto md:overflow-x-hidden md:overflow-y-auto md:flex-col p-1 pl-0 md:pl-1 gap-px"><span class="hidden md:block text-[0.625rem] text-gray-400 dark:text-gray-600 px-2 mt-1.5 mb-0.5"> </span> <!> <!> <!></div></nav> <div class="flex-1 min-w-0 min-h-0 p-4 md:px-5 flex flex-col"><div class="flex-1 min-h-0 overflow-hidden"><!></div></div>',1);function AT(He,_){vr(_,!1);const t=()=>ct(_a,"$config",X),f=()=>ct(ka,"$user",X),n=()=>ct(ua,"$settings",X),Ie=()=>ct(I,"$i18n",X),[X,R]=hr(),I=mr("i18n");let c=Xe(_,"show",12,!1),x=h(!1),A=h(!1),E=h(null),V=h({});const B=(O,ie)=>{const M={...O};for(const[ve,te]of Object.entries(ie)){const ge=M[ve];M[ve]=ge&&te&&typeof ge=="object"&&typeof te=="object"&&!Array.isArray(ge)&&!Array.isArray(te)?B(ge,te):te}return M},j=async()=>{const O=await uf(localStorage.token,!0).catch(ie=>null);s(V,O!=null&&O.ui&&typeof O.ui=="object"&&!Array.isArray(O.ui)?O.ui:{})},w=O=>O.startsWith("admin:"),Te=O=>O.replace("admin:",""),Se=O=>`tab-${O.replace(":","-")}`,Y={general:"Basics",interface:"Basics",notifications:"Basics",shortcuts:"Basics",connections:"Services",tools:"Services",personalization:"Preferences",audio:"Preferences",data_controls:"Data",usage:"Data",archived_chats:"Data",account:"Profile",about:"Profile"},ee={"admin:general":"System","admin:authentication":"System","admin:connections":"AI","admin:models":"AI","admin:subagents":"AI","admin:evaluations":"Quality","admin:analytics":"Quality","admin:integrations":"Tools","admin:documents":"Tools","admin:web":"Tools","admin:code-execution":"Tools","admin:pipelines":"Tools","admin:interface":"Experience","admin:audio":"Experience","admin:images":"Experience","admin:db":"Data"},ae=O=>(w(O)?ee[O]:Y[O])??"General",Pe=(O,ie)=>ie===0||ae(O[ie])!==ae(O[ie-1]),se=O=>`hidden md:block shrink-0 text-[0.625rem] text-gray-400 dark:text-gray-600 px-2 ${O?"mt-0.5":"mt-2"} mb-0.5`,m=[{id:"general",title:"General",keywords:["advancedparams","advancedparameters","advanced params","advanced parameters","configuration","defaultparameters","default parameters","defaultsettings","default settings","general","keepalive","keep alive","languages","requestmode","request mode","systemparameters","system parameters","systemprompt","system prompt","systemsettings","system settings","theme","translate","webuisettings","webui settings"]},{id:"interface",title:"Interface",keywords:["allow user location","allow voice interruption in call","allowuserlocation","allowvoiceinterruptionincall","always collapse codeblocks","always collapse code blocks","always expand details","always on web search","always play notification sound","alwayscollapsecodeblocks","alwaysexpanddetails","alwaysonwebsearch","alwaysplaynotificationsound","android","auto chat tags","auto copy response to clipboard","auto title","autochattags","autocopyresponsetoclipboard","autotitle","call","chat background image","chat bubble ui","chat direction","chat tags autogen","chat tags autogeneration","chat ui","chatbackgroundimage","chatbubbleui","chatdirection","chat tags autogeneration","chattagsautogeneration","chatui","copy formatted text","copyformattedtext","default model","defaultmodel","design","detect artifacts automatically","detectartifactsautomatically","display emoji in call","display username","displayemojiincall","displayusername","enter key behavior","enterkeybehavior","expand mode","expandmode","file","followup autogeneration","followupautogeneration","fullscreen","fullwidthmode","full width mode","haptic feedback","hapticfeedback","accessibility mode","accessibilitymode","high contrast mode","highcontrastmode","iframe sandbox allow forms","iframe sandbox allow same origin","iframesandboxallowforms","iframesandboxallowsameorigin","terminal preview allow same origin","terminalpreviewallowsameorigin","imagecompression","image compression","imagemaxcompressionsize","image max compression size","interface customization","interface options","interfacecustomization","interfaceoptions","landing page mode","landingpagemode","layout","left to right","left-to-right","lefttoright","ltr","paste large text as file","pastelargetextasfile","reset background","resetbackground","disable auto scroll","disableautoscroll","response auto copy","response auto scroll","response auto-scroll","responseautocopy","responseautoscroll","rich text input for chat","richtextinputforchat","right to left","right-to-left","righttoleft","rtl","scroll behavior","scroll on branch change","scrollbehavior","scrollonbranchchange","select model","selectmodel","settings","show username","showusername","stream large chunks","streamlargechunks","stylized pdf export","stylizedpdfexport","title autogeneration","titleautogeneration","toast notifications for new updates","toastnotificationsfornewupdates","upload background","uploadbackground","user interface","user location access","userinterface","userlocationaccess","vibration","voice control","voicecontrol","widescreen mode","widescreenmode","whatsnew","whats new","websearchinchat","web search in chat"]},{id:"notifications",title:"Notifications",keywords:["browser notifications","browsernotifications","chat failed","chat finished","notification sound","notifications","notify","webhook","webhook notifications","webhooks"]},{id:"shortcuts",title:"Keyboard",keywords:["commands","hotkeys","keyboard","keyboard shortcuts","keybindings","keys","shortcut","shortcuts","show shortcuts"]},{id:"connections",title:"Connections",keywords:["addconnection","add connection","manageconnections","manage connections","manage direct connections","managedirectconnections","settings"]},{id:"tools",title:"Integrations",keywords:["addconnection","add connection","integrations","managetools","manage tools","manage tool servers","managetoolservers","open terminal","openterminal","terminal","settings"]},{id:"personalization",title:"Personalization",keywords:["account preferences","account settings","accountpreferences","accountsettings","custom settings","customsettings","experimental","memories","memory","personalization","personalize","personal settings","personalsettings","profile","user preferences","userpreferences"]},{id:"audio",title:"Audio",keywords:["audio config","audio control","audio features","audio input","audio output","audio playback","audio voice","audioconfig","audiocontrol","audiofeatures","audioinput","audiooutput","audioplayback","audiovoice","auto playback response","autoplaybackresponse","auto transcribe","autotranscribe","instant auto send after voice transcription","instantautosendaftervoicetranscription","language","non local voices","nonlocalvoices","save settings","savesettings","set voice","setvoice","sound settings","soundsettings","speech config","speech mode","speech playback speed","speech rate","speech recognition","speech settings","speech speed","speech synthesis","speech to text engine","speechconfig","speechmode","speechplaybackspeed","speechrate","speechrecognition","speechsettings","speechspeed","speechsynthesis","speechtotextengine","speedch playback rate","speedchplaybackrate","stt settings","sttsettings","text to speech engine","text to speech","textospeechengine","texttospeech","texttospeechvoice","text to speech voice","voice control","voice modes","voice options","voice playback","voice recognition","voice speed","voicecontrol","voicemodes","voiceoptions","voiceplayback","voicerecognition","voicespeed","volume"]},{id:"data_controls",title:"Data Controls",keywords:["archive all chats","archive chats","archiveallchats","archivechats","chat activity","chat history","chat settings","chatactivity","chathistory","chatsettings","conversation activity","conversation history","conversationactivity","conversationhistory","conversations","convos","delete all chats","delete chats","deleteallchats","deletechats","export chats","exportchats","import chats","importchats","message activity","message archive","message history","messagearchive","messagehistory"]},{id:"usage",title:"Usage",keywords:["activity","activity heatmap","analytics","chat activity","heatmap","model usage","stats","streak","token activity","token usage","tokens","usage"]}
87,{id:"archived_chats",title:"Archived Chats",keywords:["archive","archive chat","archive chats","archived","archived chat","archived chats","archivedchat","archivedchats","conversation archive","message archive","unarchive","unarchive chat","unarchive chats"]},{id:"account",title:"Account",keywords:["account preferences","account settings","accountpreferences","accountsettings","api keys","apikeys","change password","changepassword","jwt token","jwttoken","login","new password","newpassword","notification webhook url","notificationwebhookurl","personal settings","personalsettings","privacy settings","privacysettings","profileavatar","profile avatar","profile details","profile image","profile picture","profiledetails","profileimage","profilepicture","security settings","securitysettings","update account","update password","updateaccount","updatepassword","user account","user data","user preferences","user profile","useraccount","userdata","username","userpreferences","userprofile","webhook url","webhookurl"]},{id:"about",title:"About",keywords:["about app","about me","about open webui","about page","about us","aboutapp","aboutme","aboutopenwebui","aboutpage","aboutus","check for updates","checkforupdates","contact","copyright","details","discord","documentation","github","help","information","license","redistributions","release","see whats new","seewhatsnew","settings","software info","softwareinfo","support","terms and conditions","terms of use","termsandconditions","termsofuse","timothy jae ryang baek","timothy j baek","timothyjaeryangbaek","timothyjbaek","twitter","update info","updateinfo","version info","versioninfo"]}],ce=[{id:"admin:general",title:"General",keywords:["general","admin","settings","version","update","community","channels"]},{id:"admin:authentication",title:"Authentication",keywords:["authentication","auth","login","signup","ldap","oauth","oidc","sso","roles"]},{id:"admin:connections",title:"Connections",keywords:["connections","ollama","openai","api","base url","direct connections","proxy"]},{id:"admin:models",title:"Models",keywords:["models","pull","delete","create","edit","modelfile","gguf","import","export"]},{id:"admin:subagents",title:"Sub-agents",keywords:["sub-agents","subagents","delegation","background","agents"]},{id:"admin:interface",title:"Interface",keywords:["interface","ui","appearance","banners","tasks","prompt suggestions","tags"]},{id:"admin:audio",title:"Audio",keywords:["audio","voice","speech","tts","stt","whisper","deepgram","azure"]},{id:"admin:images",title:"Images",keywords:["images","generation","dalle","stable diffusion","comfyui","automatic1111"]},{id:"admin:evaluations",title:"Evaluations",keywords:["evaluations","feedback","rating","arena","leaderboard","preference"]},{id:"admin:analytics",title:"Analytics",keywords:["analytics","usage","stats","dashboard","models","users","messages"]},{id:"admin:integrations",title:"Integrations",keywords:["tools","integrations","plugins","extensions","functions","openapi","server"]},{id:"admin:documents",title:"Documents",keywords:["documents","files","rag","knowledge","upload","embedding","vector db"]},{id:"admin:web",title:"Web Search",keywords:["web search","google","bing","duckduckgo","serp","searxng","tavily","exa"]},{id:"admin:code-execution",title:"Code Execution",keywords:["code execution","python","sandbox","compiler","jupyter","interpreter"]},{id:"admin:pipelines",title:"Pipelines",keywords:["pipelines","workflows","filters","valves","middleware"]},{id:"admin:db",title:"Database",keywords:["database","export","import","backup","chats","users"]}];let De=[],Le=h([]),Ne=h([]),Ce=h([]),we=h(""),oe=null;const de=()=>{var ie;const O=m.filter(M=>{var ve,te,ge,_e,Ae,U,T,C,D,F,H,pe,ye,he,q,P,Q;return M.id==="connections"?(te=(ve=t())==null?void 0:ve.features)==null?void 0:te.enable_direct_connections:M.id==="tools"?((ge=f())==null?void 0:ge.role)==="admin"||((_e=f())==null?void 0:_e.role)==="user"&&((T=(U=(Ae=f())==null?void 0:Ae.permissions)==null?void 0:U.features)==null?void 0:T.direct_tool_servers):M.id==="interface"?((C=f())==null?void 0:C.role)==="admin"||(((H=(F=(D=f())==null?void 0:D.permissions)==null?void 0:F.settings)==null?void 0:H.interface)??!0):M.id==="personalization"?((ye=(
87pe=t())==null?void 0:pe.features)==null?void 0:ye.enable_memories)&&(((he=f())==null?void 0:he.role)==="admin"||(((Q=(P=(q=f())==null?void 0:q.permissions)==null?void 0:P.features)==null?void 0:Q.memories)??!0)):!0});return((ie=f())==null?void 0:ie.role)==="admin"?[...O,...ce]:O},be=()=>{var O;s(Le,De.filter(ie=>{var ve;const M=e(we).toLowerCase().trim();return ie.id==="admin:analytics"&&!(((ve=t())==null?void 0:ve.features.enable_admin_analytics)??!0)?!1:M===""||ie.title.toLowerCase().includes(M)||ie.keywords.some(te=>te.includes(M))}).map(ie=>ie.id)),s(Ne,e(Le).filter(ie=>!w(ie))),s(Ce,e(Le).filter(ie=>w(ie))),((O=f())==null?void 0:O.role)!=="admin"&&w(e(K))?s(K,"general"):e(Le).length>0&&!e(Le).includes(e(K))&&s(K,e(Le)[0]),Oe()},Me=async O=>{var M,ve;await ua.set({...n(),...O}),await ba.set(await qe());const ie=await Tl(localStorage.token,{ui:n()});s(V,ie!=null&&ie.ui&&typeof ie.ui=="object"&&!Array.isArray(ie.ui)?ie.ui:{}),await ua.set(B(((ve=(M=t())==null?void 0:M.ui)==null?void 0:ve.default_interface_settings)??{},e(V)))},qe=async()=>{var O,ie,M;return await La(localStorage.token,(ie=(O=t())==null?void 0:O.features)!=null&&ie.enable_direct_connections?((M=n())==null?void 0:M.directConnections)??null:null)},Re=async()=>{rt.success(Ie().t("Settings saved successfully!")),await na(),await _a.set(await so())},ue=()=>{oe&&clearTimeout(oe),oe=setTimeout(()=>{be()},100)},xe=O=>`flex items-center gap-1.5 h-7 px-2 md:w-full shrink-0 rounded-lg text-xs text-left transition-colors duration-75 ${O?"font-medium text-gray-900 dark:text-white bg-gray-50 dark:bg-white/[0.04]":"text-gray-500 hover:text-gray-700 dark:hover:text-gray-300"}`;let K=h("general");const Oe=async()=>{if(!e(x)||!e(K))return;await na();const O=document.querySelector('#settings-tabs-container [role="tab"][aria-selected="true"]');O==null||O.scrollIntoView({behavior:"smooth",block:"nearest",inline:"start"})};ea(()=>{De=de(),be(),_a.subscribe(O=>{De=de(),be()})}),Kt(()=>(it(c()),e(A)),()=>{c()!==e(A)&&(s(A,c()),c()&&typeof c()=="object"?(s(K,c().tab),s(E,c().state??null),c(!0),s(A,!0),s(x,!0),j()):typeof c()=="string"?(s(K,c()),c(!0),s(A,!0),s(x,!0),j()):(s(x,c()),c()&&j(),c()||(s(K,"general"),s(E,null))))}),Kt(()=>(e(x),it(c())),()=>{!e(x)&&c()!==!1&&(c(!1),s(A,!1),s(K,"general"),s(E,null))}),Kt(()=>(f(),e(K)),()=>{var O;((O=f())==null?void 0:O.role)!=="admin"&&w(e(K))&&s(K,"general")}),Kt(()=>(e(x),e(K)),()=>{e(x)&&e(K)&&Oe()}),la(),gr(),Wa(He,{size:"full",containerClassName:"p-4 sm:p-6 lg:p-8",className:"!w-[calc(100vw-2rem)] sm:!w-[calc(100vw-3rem)] lg:!w-[calc(100vw-4rem)] !max-w-[80rem] h-[min(max(54rem,80dvh),calc(100dvh-4rem))] max-h-[calc(100dvh-4rem)] flex flex-col md:flex-row bg-white dark:bg-gray-900 rounded-4xl overflow-hidden",get show(){return e(x)},set show(O){s(x,O)},children:(O,ie)=>{var M=ET(),ve=Qe(M),te=a(ve),ge=a(te);nb(ge,{className:"size-3",strokeWidth:"2"});var _e=o(ge,2),Ae=a(_e,!0);r(_e),r(te);var U=o(te,2),T=a(U),C=a(T);Ud(C,{className:"size-3.5",strokeWidth:"1.5"}),r(T);var D=o(T,2),F=a(D,!0);r(D);var H=o(D,2);vt(H),r(U);var pe=o(U,2),ye=a(pe),he=a(ye,!0);r(ye);var q=o(ye,2);{var P=et=>{var gt=Wr(),It=Qe(gt);lr(It,3,()=>e(Ne),Mt=>Mt,(Mt,jt,Tt)=>{var yt=rf(),$t=Qe(yt);{var rr=qt=>{var At=tf(),Ot=a(At,!0);r(At),g((Ht,Xt)=>{k(At,1,Ht),d(Ot,Xt)},[()=>me((it(e(Tt)),l(()=>se(e(Tt)===0)))),()=>(Ie(),e(jt),l(()=>Ie().t(ae(e(jt)))))]),i(qt,At)},Rt=Qr(()=>(e(Ne),it(e(Tt)),l(()=>Pe(e(Ne),e(Tt)))));G($t,qt=>{e(Rt)&&qt(rr)})}var Wt=o($t,2);{var or=qt=>{var At=dT(),Ot=a(At);Jf(Ot,{className:"size-3.5",strokeWidth:"2"});var Ht=o(Ot,2),Xt=a(Ht,!0);r(Ht),r(At),g((er,xr)=>{Be(At,"aria-selected",e(K)==="general"),k(At,1,er),d(Xt,xr)},[()=>me((e(K),l(()=>xe(e(K)==="general")))),()=>(Ie(),l(()=>Ie().t("General")))]),ke("click",At,()=>{s(K,"general")}),i(qt,At)},$r=qt=>{var At=vT(),Ot=a(At);sb(Ot,{className:"size-3.5",strokeWidth:"2"});var Ht=o(Ot,2),Xt=a(Ht,!0);r(Ht),r(At),g((er,xr)=>{Be(At,"aria-selected",e(K)==="interface"),k(At,1,er),d(Xt,xr)},[()=>me((e(K),l(()=>xe(e(K)==="interface")))),()=>(Ie(),l(()=>Ie().t("Interface")))]),ke("click",At,()=>{s(K,"interface")}),i(qt,At)},Et=qt=>{var At=cT(),Ot=a(At);b4(Ot,{className:"size-3.5",strokeWidth:"2"});var Ht=o(Ot,2),Xt=a(Ht,!0);r(Ht),r(At),g((er,xr)=>
87{Be(At,"aria-selected",e(K)==="notifications"),k(At,1,er),d(Xt,xr)},[()=>me((e(K),l(()=>xe(e(K)==="notifications")))),()=>(Ie(),l(()=>Ie().t("Notifications")))]),ke("click",At,()=>{s(K,"notifications")}),i(qt,At)},St=qt=>{var At=uT(),Ot=a(At);$4(Ot,{className:"size-3.5",strokeWidth:"2"});var Ht=o(Ot,2),Xt=a(Ht,!0);r(Ht),r(At),g((er,xr)=>{Be(At,"aria-selected",e(K)==="shortcuts"),k(At,1,er),d(Xt,xr)},[()=>me((e(K),l(()=>xe(e(K)==="shortcuts")))),()=>(Ie(),l(()=>Ie().t("Keyboard")))]),ke("click",At,()=>{s(K,"shortcuts")}),i(qt,At)},Dt=qt=>{var At=Wr(),Ot=Qe(At);{var Ht=Xt=>{var er=gT(),xr=a(er);Ku(xr,{className:"size-3.5",strokeWidth:"2"});var Qt=o(xr,2),fr=a(Qt,!0);r(Qt),r(er),g((wt,ht)=>{Be(er,"aria-selected",e(K)==="connections"),k(er,1,wt),d(fr,ht)},[()=>me((e(K),l(()=>xe(e(K)==="connections")))),()=>(Ie(),l(()=>Ie().t("Connections")))]),ke("click",er,()=>{s(K,"connections")}),i(Xt,er)};G(Ot,Xt=>{f(),t(),l(()=>{var er,xr,Qt,fr;return((er=f())==null?void 0:er.role)==="admin"||((xr=f())==null?void 0:xr.role)==="user"&&((fr=(Qt=t())==null?void 0:Qt.features)==null?void 0:fr.enable_direct_connections)})&&Xt(Ht)})}i(qt,At)},ar=qt=>{var At=Wr(),Ot=Qe(At);{var Ht=Xt=>{var er=_T(),xr=a(er);Zu(xr,{className:"size-3.5",strokeWidth:"2"});var Qt=o(xr,2),fr=a(Qt,!0);r(Qt),r(er),g((wt,ht)=>{Be(er,"aria-selected",e(K)==="tools"),k(er,1,wt),d(fr,ht)},[()=>me((e(K),l(()=>xe(e(K)==="tools")))),()=>(Ie(),l(()=>Ie().t("Integrations")))]),ke("click",er,()=>{s(K,"tools")}),i(Xt,er)};G(Ot,Xt=>{f(),l(()=>{var er,xr,Qt,fr,wt;return((er=f())==null?void 0:er.role)==="admin"||((xr=f())==null?void 0:xr.role)==="user"&&((wt=(fr=(Qt=f())==null?void 0:Qt.permissions)==null?void 0:fr.features)==null?void 0:wt.direct_tool_servers)})&&Xt(Ht)})}i(qt,At)},Tr=qt=>{var At=fT(),Ot=a(At);h4(Ot,{className:"size-3.5",strokeWidth:"2"});var Ht=o(Ot,2),Xt=a(Ht,!0);r(Ht),r(At),g((er,xr)=>{Be(At,"aria-selected",e(K)==="personalization"),k(At,1,er),d(Xt,xr)},[()=>me((e(K),l(()=>xe(e(K)==="personalization")))),()=>(Ie(),l(()=>Ie().t("Personalization")))]),ke("click",At,()=>{s(K,"personalization")}),i(qt,At)},tr=qt=>{var At=pT(),Ot=a(At);Qf(Ot,{className:"size-3.5",strokeWidth:"2"});var Ht=o(Ot,2),Xt=a(Ht,!0);r(Ht),r(At),g((er,xr)=>{Be(At,"aria-selected",e(K)==="audio"),k(At,1,er),d(Xt,xr)},[()=>me((e(K),l(()=>xe(e(K)==="audio")))),()=>(Ie(),l(()=>Ie().t("Audio")))]),ke("click",At,()=>{s(K,"audio")}),i(qt,At)},ur=qt=>{var At=mT(),Ot=a(At);Xf(Ot,{className:"size-3.5",strokeWidth:"2"});var Ht=o(Ot,2),Xt=a(Ht,!0);r(Ht),r(At),g((er,xr)=>{Be(At,"aria-selected",e(K)==="data_controls"),k(At,1,er),d(Xt,xr)},[()=>me((e(K),l(()=>xe(e(K)==="data_controls")))),()=>(Ie(),l(()=>Ie().t("Data Controls")))]),ke("click",At,()=>{s(K,"data_controls")}),i(qt,At)},_r=qt=>{var At=hT(),Ot=a(At);k4(Ot,{className:"size-3.5",strokeWidth:"2"});var Ht=o(Ot,2),Xt=a(Ht,!0);r(Ht),r(At),g((er,xr)=>{Be(At,"aria-selected",e(K)==="usage"),k(At,1,er),d(Xt,xr)},[()=>me((e(K),l(()=>xe(e(K)==="usage")))),()=>(Ie(),l(()=>Ie().t("Usage")))]),ke("click",At,()=>{s(K,"usage")}),i(qt,At)},br=qt=>{var At=xT(),Ot=a(At);Md(Ot,{className:"size-3.5",strokeWidth:"2"});var Ht=o(Ot,2),Xt=a(Ht,!0);r(Ht),r(At),g((er,xr)=>{Be(At,"aria-selected",e(K)==="archived_chats"),k(At,1,er),d(Xt,xr)},[()=>me((e(K),l(()=>
87xe(e(K)==="archived_chats")))),()=>(Ie(),l(()=>Ie().t("Archived Chats")))]),ke("click",At,()=>{s(K,"archived_chats")}),i(qt,At)},kt=qt=>{var At=bT(),Ot=a(At);Zf(Ot,{className:"size-3.5",strokeWidth:"2"});var Ht=o(Ot,2),Xt=a(Ht,!0);r(Ht),r(At),g((er,xr)=>{Be(At,"aria-selected",e(K)==="account"),k(At,1,er),d(Xt,xr)},[()=>me((e(K),l(()=>xe(e(K)==="account")))),()=>(Ie(),l(()=>Ie().t("Account")))]),ke("click",At,()=>{s(K,"account")}),i(qt,At)},jr=qt=>{var At=yT(),Ot=a(At);p4(Ot,{className:"size-3.5",strokeWidth:"2"});var Ht=o(Ot,2),Xt=a(Ht,!0);r(Ht),r(At),g((er,xr)=>{Be(At,"aria-selected",e(K)==="about"),k(At,1,er),d(Xt,xr)},[()=>me((e(K),l(()=>xe(e(K)==="about")))),()=>(Ie(),l(()=>Ie().t("About")))]),ke("click",At,()=>{s(K,"about")}),i(qt,At)};G(Wt,qt=>{e(jt)==="general"?qt(or):e(jt)==="interface"?qt($r,1):e(jt)==="notifications"?qt(Et,2):e(jt)==="shortcuts"?qt(St,3):e(jt)==="connections"?qt(Dt,4):e(jt)==="tools"?qt(ar,5):e(jt)==="personalization"?qt(Tr,6):e(jt)==="audio"?qt(tr,7):e(jt)==="data_controls"?qt(ur,8):e(jt)==="usage"?qt(_r,9):e(jt)==="archived_chats"?qt(br,10):e(jt)==="account"?qt(kt,11):e(jt)==="about"&&qt(jr,12)})}i(Mt,yt)}),i(et,gt)};G(q,et=>{e(Ne),l(()=>e(Ne).length>0)&&et(P)})}var Q=o(q,2);{var re=et=>{var gt=wT(),It=o(Qe(gt),2),Mt=a(It,!0);r(It);var jt=o(It,2);lr(jt,3,()=>e(Ce),Tt=>Tt,(Tt,yt,$t)=>{const rr=v(()=>(e(yt),l(()=>ce.find(Dt=>Dt.id===e(yt)))));var Rt=rf(),Wt=Qe(Rt);{var or=Dt=>{var ar=tf(),Tr=a(ar,!0);r(ar),g((tr,ur)=>{k(ar,1,tr),d(Tr,ur)},[()=>me((it(e($t)),l(()=>se(e($t)===0)))),()=>(Ie(),e(yt),l(()=>Ie().t(ae(e(yt)))))]),i(Dt,ar)},$r=Qr(()=>(e(Ce),it(e($t)),l(()=>Pe(e(Ce),e($t)))));G(Wt,Dt=>{e($r)&&Dt(or)})}var Et=o(Wt,2);{var St=Dt=>{var ar=$T(),Tr=a(ar);{let _r=v(()=>(it(e(rr)),l(()=>Te(e(rr).id))));C4(Tr,{get id(){return e(_r)},className:"size-3.5",strokeWidth:"2"})}var tr=o(Tr,2),ur=a(tr,!0);r(tr),r(ar),g((_r,br,kt)=>{Be(ar,"aria-controls",_r),Be(ar,"aria-selected",(e(K),it(e(rr)),l(()=>e(K)===e(rr).id))),k(ar,1,br),d(ur,kt)},[()=>(it(e(rr)),l(()=>Se(e(rr).id))),()=>me((e(K),it(e(rr)),l(()=>xe(e(K)===e(rr).id)))),()=>(Ie(),it(e(rr)),l(()=>Ie().t(e(rr).title)))]),ke("click",ar,()=>{s(K,e(rr).id)}),i(Dt,ar)};G(Et,Dt=>{e(rr)&&Dt(St)})}i(Tt,Rt)}),g(Tt=>d(Mt,Tt),[()=>(Ie(),l(()=>Ie().t("Admin")))]),i(et,gt)};G(Q,et=>{f(),e(Ce),l(()=>{var gt;return((gt=f())==null?void 0:gt.role)==="admin"&&e(Ce).length>0})&&et(re)})}var le=o(Q,2);{var $e=et=>{var gt=kT(),It=a(gt,!0);r(gt),g(Mt=>d(It,Mt),[()=>(Ie(),l(()=>Ie().t("No matches")))]),i(et,gt)};G(le,et=>{e(Le),l(()=>e(Le).length===0)&&et($e)})}r(pe),r(ve);var ze=o(ve,2),Fe=a(ze),at=a(Fe);{var tt=et=>{lk(et,{getModels:qe,saveSettings:Me,$$events:{save:()=>{rt.success(Ie().t("Settings saved successfully!"))}}})},Je=et=>{$k(et,{saveSettings:Me,get personalSettingsValue(){return e(V)},$$events:{save:()=>{rt.success(Ie().t("Settings saved successfully!"))}}})},je=et=>{Uk(et,{saveSettings:Me})},ne=et=>{Xk(et,{saveSettings:Me})},J=et=>{r3(et,{saveSettings:async gt=>{await Me(gt),rt.success(Ie().t("Settings saved successfully!"))}})},W=et=>{v4(et,{saveSettings:async gt=>{await Me(gt),rt.success(Ie().t("Settings saved successfully!"))}})},Z=et=>{wA(et,{saveSettings:Me,$$events:{save:()=>{rt.success(Ie().t("Settings saved successfully!"))}}})},Ee=et=>{oE(et,{saveSettings:Me,$$events:{save:()=>{rt.success(Ie().t("Settings saved successfully!"))}}})},Ge=et=>{$E(et,{saveSettings:Me})},p=et=>{RE(et,{})},$=et=>{qE(et,{})},S=et=>{Uw(et,{saveHandler:()=>{rt.success(Ie().t("Settings saved successfully!"))}})},L=et=>{Vw(et,{})},fe=et=>{kI(et,{saveHandler:Re})},y=et=>{aS(et,{})},b=et=>{VS(et,{$$events:{save:()=>{rt.success(Ie().t("Settings saved successfully!"))}}})},N=et=>{zN(et,{get tabState(){return e(E)},set tabState(gt){s(E,gt)},$$legacy:!0})},z=et=>{ZN(et,{})},Ue=et=>{fP(et,{})},Ye=et=>{pC(et,{})},Ve=et=>{BC(et,{saveSettings:Me})},lt=et=>{c7(et,{$$events:{save:Re}})},st=et=>{H7(et,{saveHandler:Re})},Ke=et=>{z7(et,{saveHandler:Re})},Ze=et=>{l8(et,{$$events:{save:()=>{rt.success(Ie().t("Settings saved successfully!"))}}})},ot=et=>{k8(et,{saveHandler:()=>{rt.success(Ie().t("Settings saved successfully!"))}})},ut=et=>{G8(et,{$$events:{save:()=>{rt.success(Ie().t("Settings saved successfully!"))}}})},_t=et=>{iT(et,{saveHandler:()=>{rt.success(Ie().t("Settings saved successfully!"))}})},nt=et=>{lT(et,{saveHandler:()=>{rt.success(Ie().t("Settings saved successfully!"))}})};G(at,et=>{e(K)==="general"?et(tt):e(K)==="interface"?et(Je,1):e(K)==="notifications"?et(je,2):e(K)==="shortcuts"?et(ne,3):e(K)==="connections"?et(J,4):e(K)==="tools"?et(W,5):e(K)==="personalization"?et(Z,6):e(K)==="audio"?et(Ee,7):e(K)==="data_controls"?et(Ge,8):e(K)==="usage"?et(p,9):e(K)==="archived_chats"?et($,10):e(K)==="account"?et(S,11):e(K)==="about"?et(L,12):e(K)==="admin:general"?et(fe,13):e(K)==="admin:authentication"?et(y,14):e(K)==="admin:connections"?et(b,15):e(K)==="admin:models"?et(N,16):e(K)==="admin:subagents"?et(z,17):e(K)==="admin:evaluations"?et(Ue,18):e(K)==="admin:analytics"?et(Ye,19):e(K)==="admin:integrations"?et(Ve,20):e(K)==="admin:documents"?et(lt,21):e(K)==="admin:web"?et(st,22):e(K)==="admin:code-execution"?et(Ke,23):e(K)==="admin:interface"?et(Ze,24):e(K)==="admin:audio"?et(ot,25):e(K)==="admin:images"?et(ut,26):e(K)==="admin:db"?et(_t,27):e(K)==="admin:pipelines"&&et(nt,28)})}r(Fe),r(ze),g((et,gt,It,Mt)=>{d(Ae,et),d(F,gt),Be(H,"placeholder",It),d(he,Mt)},[()=>(Ie(),l(()=>Ie().t("Back"))),()=>(Ie(),l(()=>Ie().t("Search"))),()=>(Ie(),l(()=>Ie().t("Search"))),()=>(Ie(),l(()=>Ie().t("Personal")))]),ke("click",te,()=>{c(!1)}),dt(H,()=>e(we),et=>s(we,et)),ke("input",H,ue),i(O,M)},$$slots:{default:!0},$$legacy:!0}),cr(),R()}var IT=u('<div class="flex gap-2.5"><span class="mt-[0.6em] h-1 w-1 shrink-0 rounded-full bg-gray-300 dark:bg-gray-700"></span> <div class="min-w-0 markdown-prose-sm list-none !max-w-none !text-[0.8125rem] text-gray-600 dark:text-gray-300 [&_*]:!my-0 [&_b]:!font-normal [&_strong]:!font-normal"></div></div>'),ST=u('<div class="mb-3 w-full"><div> </div> <div class="space-y-2 text-[0.8125rem] leading-relaxed"></div></div>'),NT=u('<section class="pr-1"><div class="mb-2"><h3 class="m-0 text-sm font-normal text-gray-950 dark:text-white"> </h3> <div class="mt-0.5 text-[0.6875rem] text-gray-400 dark:text-gray-500"> </div></div> <!></section>'),PT=u('<div class="space-y-4"></div>'),CT=u('<div class="flex flex-col items-center justify-center gap-3 py-16 text-center"><p class="text-sm text-gray-500 dark:text-gray-400"> </p> <button class="text-sm font-normal text-gray-700 transition hover:text-black dark:text-gray-300 dark:hover:text-white"> </button></div>'),TT=u('<div class="flex items-center justify-center py-16 text-sm text-gray-400 dark:text-gray-500"> </div>'),LT=u('<div class="flex max-h-[58vh] flex-col"><div class="flex shrink-0 items-start justify-between gap-4 px-4 pb-2.5 pt-3.5 dark:text-white text-black"><div class="min-w-0"><h2 class="m-0 truncate text-base font-normal"> </h2> <div class="mt-1 flex items-center gap-2 text-xs text-gray-500 dark:text-gray-400"><span> </span> <span class="h-1 w-1 rounded-full bg-gray-300 dark:bg-gray-700"></span> <span> </span></div></div> <button class="flex h-8 w-8 shrink-0 items-center justify-center rounded-xl text-gray-400 transition hover:bg-gray-100 hover:text-gray-700 dark:text-gray-500 dark:hover:bg-white/10 dark:hover:text-gray-200"><!></button></div> <div class="min-h-0 flex-1 overflow-y-auto px-4 py-2 text-gray-700 scrollbar-hidden dark:text-gray-100"><!></div> <div class="flex shrink-0 justify-end px-4 pb-3.5 pt-1.5 text-sm"><button class="font-normal text-gray-600 transition hover:text-gray-950 dark:text-gray-400 dark:hover:text-white"><span class="relative"> </span></button></div></div>');function OT(He,_){vr(_,!1);const t=()=>ct(_a,"$config",X),f=()=>ct(ua,"$settings",X),n=()=>ct(I,"$i18n",X),Ie=()=>ct(Mu,"$WEBUI_NAME",X),[X,R]=hr(),I=mr("i18n");let c=Xe(_,"show",12,!1),x=h(null),A=h(!1);const E=async()=>{e(x)||e(A)||s(x,await wm().catch(()=>(s(A,!0),null)))},V=async()=>{localStorage.version=t().version,await ua.set({...f(),version:t().version}),await Tl(localStorage.token,{ui:f()}),c(!1)},B=w=>{if(!w)return"";const[Te,Se,Y]=w.split("-"),ee=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"],ae=Number(Se)-1;return Te&&ae>=0&&ae<ee.length&&Y?`${ee[ae]} ${Number(Y)}, ${Te}`:w},j=(w,Te)=>{var Y,ee;const Se=(ee=(Y=e(x))==null?void 0:Y[w])==null?void 0:ee[Te];return Array.isArray(Se)?Se:[]};Kt(()=>it(c()),()=>{c()&&E()}),la(),gr(),Wa(He,{size:"lg",className:"bg-white dark:bg-gray-900 rounded-3xl overflow-hidden",containerClassName:"p-3",get show(){return c()},set show(w){c(w)},children:(w,Te)=>{var Se=LT(),Y=a(Se),ee=a(Y),ae=a(ee),Pe=a(ae);r(ae);var se=o(ae,2),m=a(se),ce=a(m,!0);r(m);var De=o(m,4),Le=a(De);r(De),r(se),r(ee);var Ne=o(ee,2),Ce=a(Ne);wa(Ce,{className:"size-4"}),r(Ne),r(Y);var we=o(Y,2),oe=a(we);{var de=K=>{var Oe=PT();lr(Oe,5,()=>(e(x),l(()=>Object.keys(e(x)))),Ar,(O,ie)=>{var M=NT(),ve=a(M),te=a(ve),ge=a(te);r(te);var _e=o(te,2),Ae=a(_e,!0);r(_e),r(ve);var U=o(ve,2);lr(U,1,()=>(e(x),e(ie),l(()=>Object.keys(e(x)[e(ie)]).filter(T=>T!=="date"))),Ar,(T,C)=>{var D=ST(),F=a(D),H=a(F,!0);r(F);var pe=o(F,2);lr(pe,5,()=>(e(ie),e(C),l(()=>j(e(ie),e(C)))),Ar,(ye,he)=>{var q=IT(),P=o(a(q),2);Vu(P,()=>(it(Bs),e(he),l(()=>{var Q;return Bs.sanitize((Q=e(he))==null?void 0:Q.raw)})),!0),r(P),r(q),i(ye,q)}),r(pe),r(D),g(()=>{k(F,1,`mb-2 text-[0.6875rem] font-normal uppercase tracking-wide ${e(C)==="added"?"text-blue-600 dar
87k:text-blue-300":e(C)==="fixed"?"text-green-600 dark:text-green-300":e(C)==="changed"?"text-yellow-700 dark:text-yellow-300":e(C)==="removed"?"text-red-600 dark:text-red-300":"text-gray-500 dark:text-gray-400"}`),d(H,e(C))}),i(T,D)}),r(M),g(T=>{d(ge,`v${e(ie)??""}`),d(Ae,T)},[()=>(e(x),e(ie),l(()=>B(e(x)[e(ie)].date)))]),i(O,M)}),r(Oe),i(K,Oe)},be=K=>{var Oe=CT(),O=a(Oe),ie=a(O,!0);r(O);var M=o(O,2),ve=a(M,!0);r(M),r(Oe),g((te,ge)=>{d(ie,te),d(ve,ge)},[()=>(n(),l(()=>n().t("Could not load release notes."))),()=>(n(),l(()=>n().t("Retry")))]),ke("click",M,()=>{s(A,!1),E()}),i(K,Oe)},Me=K=>{var Oe=TT(),O=a(Oe,!0);r(Oe),g(ie=>d(O,ie),[()=>(n(),l(()=>n().t("Loading release notes...")))]),i(K,Oe)};G(oe,K=>{e(x)?K(de):e(A)?K(be,1):K(Me,-1)})}r(we);var qe=o(we,2),Re=a(qe),ue=a(Re),xe=a(ue,!0);r(ue),r(Re),r(qe),r(Se),g((K,Oe,O,ie)=>{d(Pe,`${K??""} 88 ${Ie()??""}`),d(ce,Oe),d(Le,`v${vl}`),Be(Ne,"aria-label",O),d(xe,ie)},[()=>(n(),l(()=>n().t("What's New in"))),()=>(n(),l(()=>n().t("Release Notes"))),()=>(n(),l(()=>n().t("Close"))),()=>(n(),l(()=>n().t("Okay, Let's Go!")))]),ke("click",Ne,V),ke("click",Re,V),i(w,Se)},$$slots:{default:!0},$$legacy:!0}),cr(),R()}var MT=u(" <br/> ",1),RT=u('<div class="mt-4 text-sm font-normal text-center"><div> </div></div>'),DT=u('<div class="fixed w-full h-full flex z-999"><div class="absolute w-full h-full backdrop-blur-lg bg-white/10 dark:bg-gray-900/50 flex justify-center"><div class="m-auto pb-10 flex flex-col justify-center"><div class="max-w-md"><div class="text-center dark:text-white text-2xl font-normal z-50" style="white-space: pre-wrap;"><!></div> <div class=" mt-4 text-center text-sm dark:text-gray-200 w-full" style="white-space: pre-wrap;"><!></div> <!> <div class=" mt-6 mx-auto relative group w-fit"><button class="relative z-20 flex px-5 py-2 rounded-full bg-white border border-gray-100 dark:border-none hover:bg-gray-100 text-gray-700 transition font-normal text-sm"> </button> <button class="text-xs text-center w-full mt-2 text-gray-400 underline"> </button></div></div></div></div></div>');function UT(He,_){vr(_,!1);const t=()=>ct(_a,"$config",n),f=()=>ct(X,"$i18n",n),[n,Ie]=hr(),X=mr("i18n");let R=h(null);ea(async()=>{s(R,await ex(localStorage.token).catch(Ce=>null))}),gr();var I=DT(),c=a(I),x=a(c),A=a(x),E=a(A),V=a(E);{var B=Ce=>{var we=Mr();g(()=>d(we,t().ui.pending_user_overlay_title)),i(Ce,we)},j=Qr(()=>{var Ce,we;return(((we=(Ce=t())==null?void 0:Ce.ui)==null?void 0:we.pending_user_overlay_title)??"").trim()!==""}),w=Ce=>{var we=MT(),oe=Qe(we,!0),de=o(oe,2);g((be,Me)=>{d(oe,be),d(de,` ${Me??""}`)},[()=>f().t("Account Activation Pending"),()=>f().t("Contact Admin for WebUI Access")]),i(Ce,we)};G(V,Ce=>{e(j)?Ce(B):Ce(w,-1)})}r(E);var Te=o(E,2),Se=a(Te);{var Y=Ce=>{var we=Wr(),oe=Qe(we);Vu(oe,()=>{var de,be;return Bs.sanitize(vu.parse((((be=(de=t())==null?void 0:de.ui)==null?void 0:be.pending_user_overlay_content)??"").replace(/\n/g,"<br>")))}),i(Ce,we)},ee=Qr(()=>{var Ce,we;return(((we=(Ce=t())==null?void 0:Ce.ui)==null?void 0:we.pending_user_overlay_content)??"").trim()!==""}),ae=Ce=>{var we=Mr();g((oe,de)=>d(we,`${oe??""} 89${de??""}`),[()=>f().t("Your account status is currently pending activation."),()=>f().t("To access the WebUI, please reach out to the administrator. Admins can manage user statuses from the Admin Panel.")]),i(Ce,we)};G(Se,Ce=>{e(ee)?Ce(Y):Ce(ae,-1)})}r(Te);var Pe=o(Te,2);{var se=Ce=>{var we=RT(),oe=a(we),de=a(oe);r(oe),r(we),g(be=>d(de,`${be??""}: ${e(R).name??""} (${e(R).email??""})`),[()=>f().t("Admin")]),i(Ce,we)};G(Pe,Ce=>{e(R)&&Ce(se)})}var m=o(Pe,2),ce=a(m),De=a(ce,!0);r(ce);var Le=o(ce,2),Ne=a(Le,!0);r(Le),r(m),r(A),r(x),r(c),r(I),g((Ce,we)=>{d(De,Ce),d(Ne,we)},[()=>f().t("Check Again"),()=>f().t("Sign Out")]),ke("click",ce,async()=>{location.href="/"}),ke("click",Le,async()=>{const Ce=await Ru().catch(we=>null);localStorage.removeItem("token"),location.href=Du(Ce==null?void 0:Ce.redirect_url)}),i(He,I),cr(),Ie()}var BT=u('<div class="flex items-start bg-[#F1F8FE] dark:bg-[#020C1D] border border-[3371D5] dark:border-[#03113B] text-[#2B6CD4] dark:text-[#6795EC] rounded-lg px-3.5 py-3 text-xs max-w-80 pr-2 w-full shadow-lg"><div class="flex-1 font-normal"> <a href="https://github.com/open-webui/open-webui/releases" target="_blank" class="underline"> </a></div> <div class=" shrink-0 pr-1"><button class=" hover:text-blue-900 dark:hover:text-blue-300 transition"><!></button></div></div>');function GT(He,_){vr(_,!1);const t=()=>ct(X,"$i18n",f),[f,n]=hr(),Ie=ja(),X=mr("i18n");
89let R=Xe(_,"version",24,()=>({current:vl,latest:vl}));gr();var I=BT(),c=a(I),x=a(c),A=o(x),E=a(A,!0);r(A),r(c);var V=o(c,2),B=a(V),j=a(B);wa(j,{}),r(B),r(V),r(I),g((w,Te)=>{d(x,`${w??""} `),d(E,Te)},[()=>(t(),it(R()),l(()=>t().t("A new version (v{{LATEST_VERSION}}) is now available.",{LATEST_VERSION:R().latest}))),()=>(t(),l(()=>t().t("Update for the latest features and improvements.")))]),ke("click",B,()=>{Ie("close")}),i(He,I),cr(),n()}var jT=u('<div class=" absolute bottom-8 right-8 z-50"><!></div>'),HT=u('<div class="fixed w-full h-full flex z-50"><div class="absolute w-full h-full backdrop-blur-md bg-white/20 dark:bg-gray-900/50 flex justify-center"><div class="m-auto pb-44 flex flex-col justify-center"><div class="max-w-md"><div class="text-center dark:text-white text-2xl font-normal z-50"> <br/> </div> <div class=" mt-4 text-center text-sm dark:text-gray-200 w-full"> <span class="font-normal dark:text-white"> </span> </div> <div class=" mt-6 mx-auto relative group w-fit"><button class="relative z-20 flex px-5 py-2 rounded-full bg-white border border-gray-100 dark:border-none hover:bg-gray-100 transition font-normal text-sm"> </button> <button class="text-xs text-center w-full mt-2 text-gray-400 underline"> </button></div></div></div></div></div>'),FT=u('<main id="main-content" class="contents"><!></main>'),WT=u("<div><!></div>"),zT=u("<!> <!> <!>",1),KT=u('<div class="app relative"><div class=" text-gray-700 dark:text-gray-100 bg-white dark:bg-gray-900 h-screen max-h-[100dvh] overflow-auto flex flex-row justify-end"><!></div></div>'),YT=u("<!> <!> <!> <!>",1);function YL(He,_){vr(_,!1);const t=()=>ct(ua,"$settings",Te),f=()=>ct(_a,"$config",Te),n=()=>ct(ee,"$i18n",Te),Ie=()=>ct(Rc,"$selectedTerminalId",Te),X=()=>ct(Td,"$page",Te),R=()=>ct(ka,"$user",Te),I=()=>ct(xf,"$chats",Te),c=()=>ct(cl,"$chatId",Te),x=()=>ct(Zo,"$showSearch",Te),A=()=>ct($a,"$showSidebar",Te),E=()=>ct(dd,"$showControls",Te),V=()=>ct(hl,"$showSettings",Te),B=()=>ct(Eo,"$temporaryChatEnabled",Te),j=()=>ct(Gl,"$mobile",Te),w=()=>ct(Us,"$showChangelog",Te),[Te,Se]=hr(),{saveAs:Y}=no,ee=mr("i18n");let ae=h(!1),Pe=h(null),se=h([]),m=h(),ce="";const De=()=>{const te=Object.keys(localStorage).filter(ge=>ge.startsWith("chat-input"));te.length>0&&te.forEach(ge=>{localStorage.removeItem(ge)})},Le=async()=>{try{if(s(Pe,await ly("Chats",1)),!e(Pe))return;const te=await e(Pe).getAllFromIndex("chats","timestamp");s(se,te.map((ge,_e)=>te[te.length-1-_e])),e(se).length===0&&await Lg("Chats")}catch{}},Ne=async te=>{var _e,Ae;const ge=await uf(localStorage.token);ge!=null&&ge.ui&&ua.set(ge.ui),gx(ge==null?void 0:ge.keybindings),xu(((_e=t())==null?void 0:_e.textScale)??1),Xo(((Ae=t())==null?void 0:Ae.fontFamily)??null),te&&await te()},Ce=async()=>{var te,ge,_e;ba.set(await La(localStorage.token,(ge=(te=f())==null?void 0:te.features)!=null&&ge.enable_direct_connections?((_e=t())==null?void 0:_e.directConnections)??null:null))},we=async()=>{var Ae,U;let te=await $d(((Ae=t())==null?void 0:Ae.toolServers)??[]);te=te.filter(T=>!T||T.error?(rt.error(n().t("Failed to connect to {{URL}} OpenAPI tool server",{URL:T==null?void 0:T.url})),!1):!0),bf.set(te);const ge=(((U=t())==null?void 0:U.terminalServers)??[]).filter(T=>T.enabled||T.url===Ie()),_e=await vf(localStorage.token);Io.set([...ge.length>0?(await $d(ge.map(T=>({url:T.url,auth_type:T.auth_type??"bearer",key:T.key??"",path:T.path??"/openapi.json",config:{enable:!0}})))).filter(T=>!T||T.error?(rt.error(n().t("Failed to connect to {{URL}} terminal server",{URL:T==null?void 0:T.url})),!1):!0).map((T,C)=>{var D,F;return{...T,key:((D=ge[C])==null?void 0:D.key)??"",config:((F=ge[C])==null?void 0:F.config)??(T==null?void 0:T.config)??{}}}):[],..._e.map(T=>({id:T.id,url:`${ia}/terminals/${T.id}`,name:T.name,key:localStorage.token,contexts:T.contexts??{},config:T.config??{}}))])},oe=async()=>{const te=await Vm(localStorage.token);uu.set(te)},de=async()=>{const te=await km(localStorage.token);Lh.set(te)},be=async()=>{var U;const te=X().url.searchParams.get("settings");if(!te){ce="";return}const ge=`${X().url.pathname}${X().url.search}${X().url.hash}`;if(ce===ge)return;ce=ge,hl.set(te.startsWith("admin:")&&((U=R())==null?void 0:U.role)!=="admin"?"general":te);const _e=new URLSearchParams(X().url.searchParams);_e.delete("settings");const Ae=_e.toString();await fa(`${X().url.pathname}${Ae?`?${Ae}`:""}${X().url.hash}`,{replaceState:!0,noScroll:!0,keepFocus:!0})},Me=async()=>{const te=`${X().url.pathname}${X().url.search}`;await fa(`/auth?redirect=${encodeURIComponent(te)}`)},qe=async te=>{var Ae;if(!((Ae=I())!=null&&Ae.length))return;const ge=I().findIndex(U=>U.id===c()),_e=ge===-1?I()[0]:I()[ge+te];
89_e&&await fa(`/c/${_e.id}`)};ea(async()=>{var _e,Ae,U,T,C,D,F,H,pe,ye,he,q,P,Q,re;if(R()===void 0||R()===null){await Me();return}if(!["user","admin"].includes((_e=R())==null?void 0:_e.role))return;De();try{await Promise.all([Le(),oe().catch(le=>console.error("Failed to load banners:",le)),de().catch(le=>console.error("Failed to load tools:",le)),Ne(async()=>{await Ce().catch(le=>console.error("Failed to load models:",le))})])}catch(le){rt.error(n().t("Failed to load Interface settings"));return}Rc.set(localStorage.selectedTerminalId??null);const te=we().catch(le=>{Io.set([])});if(X().url.searchParams.get("q")&&(X().url.searchParams.get("submit")??"true")==="true"&&await te,(()=>{document.addEventListener("keydown",async le=>{var ze,Fe,at,tt,Je,je,ne,J,W,Z,Ee,Ge,p,$;if(((ze=t())==null?void 0:ze.keyboardShortcuts)===!1)return;const $e=ux(le);if($e===Va.SEARCH)le.preventDefault(),Zo.set(!x());else if($e===Va.NEW_CHAT)le.preventDefault(),(Fe=document.getElementById("sidebar-new-chat-button"))==null||Fe.click();else if($e===Va.FOCUS_INPUT)le.preventDefault(),(at=document.getElementById("chat-input"))==null||at.focus();else if($e===Va.COPY_LAST_CODE_BLOCK)le.preventDefault(),(tt=[...document.getElementsByClassName("copy-code-button")].at(-1))==null||tt.click();else if($e===Va.COPY_LAST_RESPONSE)le.preventDefault(),(Je=[...document.getElementsByClassName("copy-response-button")].at(-1))==null||Je.click();else if($e===Va.TOGGLE_SIDEBAR)le.preventDefault(),$a.set(!A());else if($e===Va.NAVIGATE_CHAT_UP)le.preventDefault(),await qe(-1);else if($e===Va.NAVIGATE_CHAT_DOWN)le.preventDefault(),await qe(1);else if($e===Va.TOGGLE_CONTROLS)le.preventDefault(),dd.set(!E());else if($e===Va.DELETE_CHAT)le.preventDefault(),(je=document.getElementById("delete-chat-button"))==null||je.click();else if($e===Va.OPEN_SETTINGS)le.preventDefault(),hl.set(!V());else if($e===Va.SHOW_SHORTCUTS)le.preventDefault(),hl.set("shortcuts");else if($e===Va.CLOSE_MODAL)le.preventDefault(),hl.set(!1);else if($e===Va.OPEN_MODEL_SELECTOR)le.preventDefault(),(ne=document.getElementById("model-selector-model-button"))==null||ne.click();else if($e===Va.NEW_TEMPORARY_CHAT)le.preventDefault(),((J=R())==null?void 0:J.role)!=="admin"&&((Ee=(Z=(W=R())==null?void 0:W.permissions)==null?void 0:Z.chat)!=null&&Ee.temporary_enforced)?Eo.set(!0):Eo.set(!B()),await fa("/"),setTimeout(()=>{var S;(S=document.getElementById("new-chat-button"))==null||S.click()},0);else if($e===Va.GENERATE_MESSAGE_PAIR)le.preventDefault(),(Ge=document.getElementById("generate-message-pair-button"))==null||Ge.click();else if($e===Va.ALLOW_TOOL_CALL){const S=[...document.getElementsByClassName("tool-call-allow-button")].reverse().find(L=>!L.disabled);S&&(le.preventDefault(),S.click())}else if($e===Va.DENY_TOOL_CALL){const S=[...document.getElementsByClassName("tool-call-deny-button")].reverse().find(L=>!L.disabled);S&&(le.preventDefault(),S.click())}else $e===Va.REGENERATE_RESPONSE&&((p=document.activeElement)==null?void 0:p.id)==="chat-input"&&(le.preventDefault(),($=[...document.getElementsByClassName("regenerate-response-button")].at(-1))==null||$.click())})})(),((Ae=R())==null?void 0:Ae.role)==="admin"&&(((U=t())==null?void 0:U.showChangelog)??!0)&&Us.set(((T=t())==null?void 0:T.version)!==f().version),(((C=R())==null?void 0:C.role)==="admin"||(((H=(F=(D=R())==null?void 0:D.permissions)==null?void 0:F.chat)==null?void 0:H.temporary)??!0))&&(X().url.searchParams.get("temporary-chat")==="true"&&Eo.set(!0),((pe=R())==null?void 0:pe.role)!=="admin"&&((q=(he=(ye=R())==null?void 0:ye.permissions)==null?void 0:he.chat)!=null&&q.temporary_enforced)&&Eo.set(!0)),((P=R())==null?void 0:P.role)==="admin"&&((re=(Q=f())==null?void 0:Q.features)!=null&&re.enable_version_update_check))if(localStorage.dismissedUpdateToast){const le=new Date(Number(localStorage.dismissedUpdateToast));new Date-le>24*60*60*1e3&&Re()}else Re();await dd.set(j()?!1:localStorage.showControls==="true"),dd.subscribe(le=>{localStorage.showControls=le?"true":"false"}),Rc.subscribe(le=>{le===null?delete localStorage.selectedTerminalId:localStorage.selectedTerminalId=le}),await na(),s(ae,!0)});const Re=async()=>{s(m,await Pu(localStorage.token).catch(te=>({current:vl,latest:vl})))};Kt(()=>(e(ae),X()),()=>{e(ae)&&X().url&&be()}),Kt(()=>(e(ae),R()),()=>{e(ae)&&(R()===void 0||R()===null)&&Me()}),la(),gr();var ue=YT(),xe=Qe(ue);AT(xe,{get show(){return su(),V()},set show(te){ou(hl,te)},$$legacy:!0});var K=o(xe,2);OT(K,{get show(){return su(),w()},set show(te){ou(Us,te)},$$legacy:!0});var Oe=o(K,2);{var O=te=>{var ge=jT(),_e=a(ge);GT(_e,{get version(){return e(m)},$$events:{close:()=>{localStorage.setItem("dismissedUpdateToast",Date.now().toString()),s(m,null)}}}),r(ge),of(1,ge,()=>sf,()=>({duration:100})),i(te,ge)},ie=Qr(()=>(e(m),it(wd),t(),l(()=>{var te;return e(m)&&wd(e(m).latest,e(m).current)&&(((te=t())==null?void 0:te.showUpdateToast)??!0)})));G(Oe,te=>{e(ie)&&te(O)})}var M=o(Oe,2);{var ve=te=>{var ge=KT(),_e=a(ge),Ae=a(_e);{var U=D=>{UT(D,{})},T=Qr(()=>(R(),l(()=>{var D;return!["user","admin"].includes((D=R())==null?void 0:D.role)}))),C=D=>{var F=zT(),H=Qe(F);{var pe=Q=>{var re=HT(),le=a(re),$e=a(le),ze=a($e),Fe=a(ze),at=a(Fe,!0),tt=o(at,2);r(Fe);var Je=o(Fe,2),je=a(Je),ne=o(je),J=a(ne);r(ne);var W=o(ne);r(Je);var Z=o(Je,2),Ee=a(Z),Ge=a(Ee,!0);r(Ee);var p=o(Ee,2),$=a(p,!0);r(p),r(Z),r(ze),r($e),r(le),r(re),g((S,L,fe,y,b,N,z,Ue,Ye)=>{d(at,S),d(tt,` ${L??""}`),d(je,`${fe??""} `),d(J,`${y??""} > ${b??""} > ${N??""}`),d(W,`. ${z??""}`),d(Ge,Ue),d($,Ye)},[()=>(n(),l(()=>n().t("Important Update"))),()=>(n(),l(()=>n().t("Action Required for Chat Log Storage"))),()=>(n(),l(()=>n().t("Saving chat logs directly to your browser's storage is no longer supported. Please take a moment to download and delete your chat logs by clicking the button below. Don't worry, you can easily re-import your chat logs to the backend through"))),()=>(n(),l(()=>n().t("Settings"))),()=>(n(),l(()=>n().t("Chats"))),()=>(n(),l(()=>n().t("Import Chats"))),()=>(n(),l(()=>n().t("This ensures that your valuable conversations are securely saved to your backend database. Thank y
89ou!"))),()=>(n(),l(()=>n().t("Download & Delete"))),()=>(n(),l(()=>n().t("Close")))]),ke("click",Ee,async()=>{let S=new Blob([JSON.stringify(e(se))],{type:"application/json"});Y(S,`chat-export-${Date.now()}.json`);const L=e(Pe).transaction("chats","readwrite");await Promise.all([L.store.clear(),L.done]),await Lg("Chats"),s(se,[])}),ke("click",p,async()=>{s(se,[])}),i(Q,re)};G(H,Q=>{e(se),l(()=>e(se).length>0)&&Q(pe)})}var ye=o(H,2);ow(ye,{});var he=o(ye,2);{var q=Q=>{var re=FT(),le=a(re);Ka(le,_,"default",{},null),r(re),i(Q,re)},P=Q=>{var re=WT(),le=a(re);ra(le,{className:"size-5"}),r(re),g(()=>k(re,1,`w-full flex-1 h-full flex items-center justify-center ${A()?" md:max-w-[calc(100%-var(--sidebar-width))]":" "}`)),i(Q,re)};G(he,Q=>{e(ae)?Q(q):Q(P,-1)})}i(D,F)};G(Ae,D=>{e(T)?D(U):D(C,-1)})}r(_e),r(ge),i(te,ge)};G(M,te=>{R()&&te(ve)})}i(He,ue),cr(),Se()}export{YL as component}; 90//# sourceMappingURL=2.CzaW3MwC.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.