@shumai-one/shumai 0.5.2 → 0.5.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/bin/{chunk-zf5cyxnt.js → chunk-03zkxckm.js} +1 -1
- package/bin/{chunk-2w6gve12.js → chunk-04nqnkzs.js} +3 -3
- package/bin/{chunk-rw5h0n0s.js → chunk-157axqz1.js} +1 -1
- package/bin/{chunk-w9z27p0m.js → chunk-1tesbv8w.js} +1 -1
- package/bin/{chunk-vzdgsfkf.js → chunk-24da4wg9.js} +1 -1
- package/bin/chunk-24nx3krz.js +2 -0
- package/bin/{chunk-twpc640e.js → chunk-26am2rzm.js} +1 -1
- package/bin/{chunk-8ayz61rc.js → chunk-2pt9h882.js} +3 -3
- package/bin/{chunk-mn108p93.js → chunk-2rrcdhkj.js} +1 -1
- package/bin/{chunk-ryepy5er.js → chunk-2w2bknn2.js} +4 -4
- package/bin/{chunk-ypkkfwfb.js → chunk-3ahax79y.js} +2 -2
- package/bin/{chunk-zdzkjp4q.js → chunk-3fjgf7eb.js} +2 -2
- package/bin/{chunk-rmvhyqyb.js → chunk-3wcvema0.js} +3 -3
- package/bin/{chunk-kvwec0p3.js → chunk-40tmh04g.js} +2 -2
- package/bin/chunk-45p7d22e.js +2 -0
- package/bin/chunk-461gcgrs.js +2 -0
- package/bin/{chunk-p0j4wpa5.js → chunk-4bc3gqmn.js} +1 -1
- package/bin/{chunk-8tzfcqtb.js → chunk-4nkwe7dz.js} +1 -1
- package/bin/{chunk-eqr0znmc.js → chunk-59ayg5am.js} +1 -1
- package/bin/{chunk-8zgq5sav.js → chunk-5ebb2pdf.js} +2 -2
- package/bin/{chunk-n76w2wcr.js → chunk-5y3kx4kk.js} +1 -1
- package/bin/{chunk-d2dgazjj.js → chunk-68xsb3t8.js} +1 -1
- package/bin/{chunk-n9vp9nbg.js → chunk-6hs63sva.js} +30 -30
- package/bin/{chunk-bpxw19ez.js → chunk-6pwf7qa6.js} +1 -1
- package/bin/{chunk-f5z3096k.js → chunk-6sq6dfa1.js} +2 -2
- package/bin/chunk-87secbzy.js +1 -0
- package/bin/chunk-8pykp70z.js +1 -0
- package/bin/{chunk-3pm6q6kg.js → chunk-8ts3xkme.js} +1 -1
- package/bin/{chunk-rza95y4z.js → chunk-909h3qzp.js} +2 -2
- package/bin/{chunk-0v9srsdz.js → chunk-929abwgr.js} +1 -1
- package/bin/{chunk-j53sjkxt.js → chunk-9ca8a5f2.js} +1 -1
- package/bin/{chunk-2pw7xcrn.js → chunk-9fyb95r5.js} +1 -1
- package/bin/{chunk-mneeg71d.js → chunk-axeq2pq5.js} +2 -2
- package/bin/{chunk-r249n1xe.js → chunk-b3tkvdfk.js} +2 -2
- package/bin/{chunk-9ggwc289.js → chunk-b6dbqs39.js} +1 -1
- package/bin/{chunk-w73v578p.js → chunk-b88tdt79.js} +2 -2
- package/bin/{chunk-19q13a80.js → chunk-bcyvxp1c.js} +4 -4
- package/bin/{chunk-7qvvf0yd.js → chunk-bn0taqr3.js} +2 -2
- package/bin/chunk-cb37q6t0.js +1 -0
- package/bin/chunk-cfqny70c.js +3 -0
- package/bin/{chunk-ffj9cq9y.js → chunk-cqnected.js} +1 -1
- package/bin/{chunk-98mg3dpd.js → chunk-cvfznrnt.js} +4 -4
- package/bin/{chunk-951r2rx1.js → chunk-d1q1tn36.js} +1 -1
- package/bin/{chunk-0asthrjf.js → chunk-d1rjpbgv.js} +2 -2
- package/bin/{chunk-81dawvn4.js → chunk-eshwjf91.js} +2 -2
- package/bin/{chunk-04avc4fn.js → chunk-fa9yq17g.js} +26 -26
- package/bin/{chunk-m6v8vt2b.js → chunk-fnkkwna8.js} +2 -2
- package/bin/{chunk-3q5qkfkc.js → chunk-fpjvr3qw.js} +1 -1
- package/bin/{chunk-ggfx2b0f.js → chunk-fsr83nb1.js} +1 -1
- package/bin/{chunk-kzr6ecke.js → chunk-fznchvm7.js} +1 -1
- package/bin/chunk-g2z0c39g.js +1 -0
- package/bin/{chunk-5vqbzsjv.js → chunk-gvcjqcjf.js} +1 -1
- package/bin/{chunk-0ge2mm8j.js → chunk-hbnpx0a5.js} +1 -1
- package/bin/{chunk-tvkekn4z.js → chunk-hgy9rqt1.js} +1 -1
- package/bin/chunk-hk659cg2.css +1 -0
- package/bin/{chunk-8ny7wvzb.js → chunk-hn2g40r6.js} +1 -1
- package/bin/{chunk-0y4zq3y4.js → chunk-hsx4pns6.js} +1 -1
- package/bin/{chunk-bbcmhcvc.js → chunk-hy5ncvpf.js} +2 -2
- package/bin/{chunk-5nqvqvqp.js → chunk-j420aqk8.js} +3 -3
- package/bin/{chunk-t1yamxgk.js → chunk-k3ds96cb.js} +1 -1
- package/bin/{chunk-dppfek34.js → chunk-m41tbrvt.js} +2 -2
- package/bin/chunk-m9f21ye9.js +1 -0
- package/bin/chunk-md7pgk86.js +2 -0
- package/bin/chunk-me3zmpj5.js +14 -0
- package/bin/chunk-mg6sybt0.js +1 -0
- package/bin/{chunk-jgfye6nf.js → chunk-mzme3m82.js} +1 -1
- package/bin/{chunk-ce0bhc72.js → chunk-n08h1jgx.js} +1 -1
- package/bin/{chunk-ae6zgjhd.js → chunk-ncv8v6mj.js} +2 -2
- package/bin/{chunk-cx32wsa1.js → chunk-nmd1901j.js} +1 -1
- package/bin/{chunk-wnqxyqrg.js → chunk-np39aknv.js} +2 -2
- package/bin/{chunk-dche0gy0.js → chunk-p7zw53ep.js} +1 -1
- package/bin/{chunk-xr2v0d6y.js → chunk-ppb4aj0y.js} +4 -4
- package/bin/{chunk-15vsw36h.js → chunk-pwq6dbb5.js} +5 -5
- package/bin/chunk-q1gfypy3.js +2 -0
- package/bin/{chunk-0j22699g.js → chunk-q4qqmes7.js} +2 -2
- package/bin/{chunk-vm2pz2hm.js → chunk-q7t5zs7n.js} +2 -2
- package/bin/{chunk-e439kt05.js → chunk-qcpeefhr.js} +1 -1
- package/bin/{chunk-6rn094yj.js → chunk-qjdvs1s5.js} +1 -1
- package/bin/{chunk-9zgqjdx1.js → chunk-qqapw198.js} +2 -2
- package/bin/chunk-qx553512.js +211 -0
- package/bin/chunk-r3s1x5wp.js +1 -0
- package/bin/{chunk-rtaya5wc.js → chunk-rh8dy99a.js} +2 -2
- package/bin/{chunk-5rzxekn4.js → chunk-s0vfj06y.js} +1 -1
- package/bin/{chunk-4zksqvwj.js → chunk-s6g2mzpn.js} +2 -2
- package/bin/{chunk-zckxc8m6.js → chunk-s9sf37dv.js} +2 -2
- package/bin/{chunk-19jpn3r6.js → chunk-scvepfv8.js} +1 -1
- package/bin/chunk-sjbvt3wa.js +2 -0
- package/bin/{chunk-mn208vrv.js → chunk-srmx5z3v.js} +2 -2
- package/bin/{chunk-r776bhsg.js → chunk-srv5kvm4.js} +1 -1
- package/bin/{chunk-qmrg2jhs.js → chunk-t1h12r3q.js} +5 -5
- package/bin/{chunk-gvas3xkp.js → chunk-t6myw0jf.js} +1 -1
- package/bin/{chunk-z8e4wc59.js → chunk-t8jfp3vx.js} +1 -1
- package/bin/{chunk-15w79661.js → chunk-tqdde9bj.js} +1 -1
- package/bin/chunk-vk9ecq8n.js +2 -0
- package/bin/{chunk-d5hbzp7t.js → chunk-vsnq4381.js} +1 -1
- package/bin/{chunk-1nvj833s.js → chunk-w4adkd0a.js} +5 -5
- package/bin/{chunk-qxscgcn9.js → chunk-wbmqbpgm.js} +1 -1
- package/bin/{chunk-v034sfw8.js → chunk-wperd2h9.js} +2 -2
- package/bin/{chunk-y2dhf3p0.js → chunk-xbw7ffrz.js} +2 -2
- package/bin/{chunk-9bakwac0.js → chunk-xdrpahym.js} +4 -4
- package/bin/{chunk-6jkjx0n2.js → chunk-xfmnfcv2.js} +3 -3
- package/bin/chunk-xhngtwn9.js +1 -0
- package/bin/chunk-xjnehexk.js +2 -0
- package/bin/chunk-xzb0t8mx.js +1 -0
- package/bin/{chunk-k3prp6c6.js → chunk-y5h5d5gx.js} +4 -4
- package/bin/{chunk-wwkhskce.js → chunk-y6xyc4wp.js} +2 -2
- package/bin/{chunk-93p27bbm.js → chunk-zpk87b33.js} +5 -5
- package/bin/{chunk-asy868kq.js → chunk-zq5j9wsc.js} +1 -1
- package/bin/{chunk-grjek810.js → chunk-zsg61vr0.js} +2 -2
- package/bin/chunk-zts21ft7.js +1 -0
- package/bin/{chunk-cpj562n6.js → chunk-zzbn0b6c.js} +1 -1
- package/bin/shumai-app.html +1 -1
- package/bin/shumai-app.js +350 -333
- package/package.json +7 -7
- package/prisma/migrations/20261014054332_add_embedding_768/migration.sql +8 -0
- package/prisma/schema.prisma +10 -8
- package/bin/chunk-2gf95tj0.js +0 -1
- package/bin/chunk-2tk5w3jc.js +0 -1
- package/bin/chunk-301e7g3z.js +0 -2
- package/bin/chunk-3kmjbc3m.js +0 -2
- package/bin/chunk-3td60k1m.js +0 -2
- package/bin/chunk-42hrvk6k.js +0 -211
- package/bin/chunk-5bk16qdp.js +0 -2
- package/bin/chunk-8abhmarc.js +0 -2
- package/bin/chunk-965102pf.js +0 -3
- package/bin/chunk-acn3r2m2.js +0 -1
- package/bin/chunk-ce75dw3k.css +0 -1
- package/bin/chunk-d9qpgkek.js +0 -2
- package/bin/chunk-dv6p6n5e.js +0 -1
- package/bin/chunk-qb178ntp.js +0 -2
- package/bin/chunk-s4r6e6ms.js +0 -1
- package/bin/chunk-syjjke3f.js +0 -1
- package/bin/chunk-tgfxe0sb.js +0 -1
- package/bin/chunk-tjretpx8.js +0 -1
- package/bin/chunk-w4yjgez6.js +0 -14
- package/bin/chunk-wjcebkpb.js +0 -1
- package/bin/chunk-ws71fg50.js +0 -2
- package/bin/chunk-yfp3q4da.js +0 -1
package/bin/chunk-w4yjgez6.js
DELETED
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import{q,F,P,m,$e,D,rn,_,u,S,L,t,o,V,Z,B,mt,Re,nn,A,I,zn,Sr,or,O,Tn,Qr,Kr,to,Tt,Pe,ve,Et,Ma,er,ht,qn,tr,Us,rr,zs,sn,de,Ut,we,Ne,E,gt,Y,hi,Lt,se,bl,Xu,ed,td,rd,nd,od,sd,id,ad,C,an,ln,cn,un,Ce,Ie,Te,ge,Ae,_e,K,Vt,As,QA,YA,cd,Dm,j0,c_,kf,pd,Fc,Lc,Zc,De,Bc,K_,oy,dy,Df,ch,gy,Ay,xy,ph,Ry,Ny,Oy,Fy,Ly,Zy,By,Uy,zy,jy,hh,ct,Vy,Bf,vl,hd,gr,Mb,Nb,Bb,Ub,qf,$b,Xo,Jb,uv,dv,xl,$f,Gf,yv,bv,vv,Vf,wv,xv,Qf,Sv,Ev,Mv,Pv,Nv,Lh,cw,$w,ep,tp,Yw,Jw,sg,ap,lp,ig,ag,cp,up,lg,cg,El,aS,Td,_S,pp,mp,CS,HS,$S,GS,VS,QS,KS,Cl,WS,YS,JS,Il,XS,eE,kd,Tl,tE,rE,nE,hp,Rd,gp,EE,Mg,ME,OE,YE,MC,Mp,kC,kp,Zo,UC,Rp,Gn,KC,Np,YC,JC,XC,eI,tI,tA,sI,uI,dI,gI,AI,bI,SI,EI,CI,II,qI,Qc,Pl,Zp,Bp,lT,Up,Nl,Kc,Wc,zp,jp,Yc,uT,FT,$p,o1,s1,f1,h1,T1,M1,_n,Dl,CA,Kp,Wp,Jc,Xc,Xe,et,tt,rt,nt,ot,st,it,ue,ae,pe,qe,le,Mt,z,ce,Ot,es,Dr,yn,Vn,bs,Or,Nt,M,vr,Pr,Cr,kn,Wd,Yd,he,so,qa,Jd,At,_t,yt,W,Me,Le,Ze,Be,Ue,ne,ao,wr,Jr,jr,_r,bn,BA}from"./chunk-42hrvk6k.js";import{ts,ki,mu,Qa,Fr,Uo,ns,Ss,Au,Vl,fa,Ri,Es,Pi,pa,fm,Cs}from"./chunk-04avc4fn.js";import{Ro,yr}from"./chunk-ffj9cq9y.js";import{Ni,ma}from"./chunk-wnqxyqrg.js";import{Kl}from"./chunk-5bk16qdp.js";import{Ka}from"./chunk-wwkhskce.js";import{sr}from"./chunk-9zgqjdx1.js";import{fn}from"./chunk-grjek810.js";import{fo}from"./chunk-fxg81vtx.js";import{Nr}from"./chunk-d2dgazjj.js";import{H,w}from"./chunk-a8bymrv1.js";var Zs=w(function(Zf,Js){function Ys(e,n){this.text=e=e||"",this.hasWild=~e.indexOf("*"),this.separator=n,this.parts=e.split(n)}Ys.prototype.match=function(e){var n=!0,r=this.parts,s,i=r.length,a;if(typeof e=="string"||e instanceof String)if(!this.hasWild&&this.text!=e)n=!1;else{a=(e||"").split(this.separator);for(s=0;n&&s<i;s++)if(r[s]==="*")continue;else if(s<a.length)n=r[s]===a[s];else n=!1;n=n&&a}else if(typeof e.splice=="function"){n=[];for(s=e.length;s--;)if(this.match(e[s]))n[n.length]=e[s]}else if(typeof e=="object"){n={};for(var l in e)if(this.match(l))n[l]=e[l]}return n};Js.exports=function(e,n,r){var s=new Ys(e,r||/[\/\.]/);if(typeof n<"u")return s.match(n);return s}});var ti=w(function(em,ei){var _d=Zs(),Md=/[\/\+\.]/;ei.exports=function(e,n){function r(s){var i=_d(s,e,Md);return i&&i.length>=2}return n?r(n.split(";")[0]):r}});var mo=w(function(om,ri){function Nd(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}ri.exports=Nd});var ii=w(function(rm,si){var Pd=typeof global=="object"&&global&&global.Object===Object&&global;si.exports=Pd});var Qo=w(function(sm,ai){var Ad=ii(),Dd=typeof self=="object"&&self&&self.Object===Object&&self,Od=Ad||Dd||Function("return this")();ai.exports=Od});var di=w(function(im,li){var $d=Qo(),zd=function(){return $d.Date.now()};li.exports=zd});var ci=w(function(am,ui){var Ld=/\s/;function Ud(e){var n=e.length;while(n--&&Ld.test(e.charAt(n)));return n}ui.exports=Ud});var fi=w(function(lm,pi){var jd=ci(),Vd=/^\s+/;function qd(e){return e?e.slice(0,jd(e)+1).replace(Vd,""):e}pi.exports=qd});var Yo=w(function(dm,mi){var Bd=Qo(),Hd=Bd.Symbol;mi.exports=Hd});var yi=w(function(um,wi){var gi=Yo(),vi=Object.prototype,{hasOwnProperty:Gd,toString:Kd}=vi,eo=gi?gi.toStringTag:void 0;function Xd(e){var n=Gd.call(e,eo),r=e[eo];try{e[eo]=void 0;var s=!0}catch(a){}var i=Kd.call(e);if(s)if(n)e[eo]=r;else delete e[eo];return i}wi.exports=Xd});var bi=w(function(cm,xi){var Qd=Object.prototype,Zd=Qd.toString;function eu(e){return Zd.call(e)}xi.exports=eu});var Ii=w(function(pm,Fi){var Si=Yo(),tu=yi(),nu=bi(),ou="[object Null]",ru="[object Undefined]",Ci=Si?Si.toStringTag:void 0;function su(e){if(e==null)return e===void 0?ru:ou;return Ci&&Ci in Object(e)?tu(e):nu(e)}Fi.exports=su});var _i=w(function(mm,Ei){function iu(e){return e!=null&&typeof e=="object"}Ei.exports=iu});var Ai=w(function(gm,Mi){var pu=Ii(),gu=_i(),hu="[object Symbol]";function vu(e){return typeof e=="symbol"||gu(e)&&pu(e)==hu}Mi.exports=vu});var zi=w(function(hm,$i){var wu=fi(),Di=mo(),yu=Ai(),Oi=NaN,xu=/^[-+]0x[0-9a-f]+$/i,bu=/^0b[01]+$/i,Su=/^0o[0-7]+$/i,Cu=parseInt;function Ru(e){if(typeof e=="number")return e;if(yu(e))return Oi;if(Di(e)){var n=typeof e.valueOf=="function"?e.valueOf():e;e=Di(n)?n+"":n}if(typeof e!="string")return e===0?e:+e;e=wu(e);var r=bu.test(e);return r||Su.test(e)?Cu(e.slice(2),r?2:8):xu.test(e)?Oi:+e}$i.exports=Ru});var ji=w(function(vm,Ui){var Fu=mo(),Jo=di(),Li=zi(),Iu="Expected a function",{max:Eu,min:_u}=Math;function Mu(e,n,r){var s,i,a,l,d,c,p=0,f=!1,v=!1,g=!0;if(typeof e!="function")throw TypeError(Iu);if(n=Li(n)||0,Fu(r))f=!!r.leading,v="maxWait"in r,a=v?Eu(Li(r.maxWait)||0,n):a,g="trailing"in r?!!r.trailing:g;function h(fe){var ye=s,oe=i;return s=i=void 0,p=fe,l=e.apply(oe,ye),l}function y(fe){return p=fe,d=setTimeout(N,n),f?h(fe):l}function x(fe){var ye=fe-c,oe=fe-p,ze=n-ye;return v?_u(ze,a-oe):ze}function b(fe){var ye=fe-c,oe=fe-p;return c===void 0||ye>=n||ye<0||v&&oe>=a}function N(){var fe=Jo();if(b(fe))return k(fe);d=setTimeout(N,x(fe))}function k(fe){if(d=void 0,g&&s)return h(fe);return s=i=void 0,l}function G(){if(d!==void 0)clearTimeout(d);p=0,s=c=i=d=void 0}function X(){return d===void 0?l:k(Jo())}function te(){var fe=Jo(),ye=b(fe);if(s=arguments,i=this,c=fe,ye){if(d===void 0)return y(c);if(v)return clearTimeout(d),d=setTimeout(N,n),h(c)}if(d===void 0)d=setTimeout(N,n);return l}return te.cancel=G,te.flush=X,te}Ui.exports=Mu});var qi=w(function(wm,Vi){var Tu=ji(),Nu=mo(),ku="Expected a function";function Pu(e,n,r){var s=!0,i=!0;if(typeof e!="function")throw TypeError(ku);if(Nu(r))s="leading"in r?!!r.leading:s,i="trailing"in r?!!r.trailing:i;return Tu(e,n,{leading:s,maxWait:n,trailing:i})}Vi.exports=Pu});var Hi=w(function(ym,Bi){Bi.exports=function(){var n={},r=n._fns={};n.emit=function(l,d,c,p,f,v,g){var h=s(l);if(h.length)i(l,h,[d,c,p,f,v,g])},n.on=function(l,d){if(!r[l])r[l]=[];r[l].push(d)},n.once=function(l,d){function c(){d.apply(this,arguments),n.off(l,c)}this.on(l,c)},n.off=function(l,d){var c=[];if(l&&d){var p=this._fns[l],f=0,v=p?p.length:0;for(f;f<v;f++)if(p[f]!==d)c.push(p[f])}c.length?this._fns[l]=c:delete this._fns[l]};function s(a){var l=r[a]?r[a]:[],d=a.indexOf(":"),c=d===-1?[a]:[a.substring(0,d),a.substring(d+1)],p=Object.keys(r),f=0,v=p.length;for(f;f<v;f++){var g=p[f];if(g==="*")l=l.concat(r[g]);if(c.length===2&&c[0]===g){l=l.concat(r[g]);break}}return l}function i(a,l,d){var c=0,p=l.length;for(c;c<p;c++){if(!l[c])break;l[c].event=a,l[c].apply(l[c],d)}}return n}});class Bs extends Error{cause;isNetworkError;request;constructor(e,n=null){super("This looks like a network error, the endpoint might be blocked by an internet provider or a firewall.");this.cause=e,this.isNetworkError=!0,this.request=n}}var Mn=Bs;class Hs{#n;#e=!1;#t;#o;constructor(e,n){this.#o=e,this.#t=()=>n(e)}progress(){if(this.#e)return;if(this.#o>0)clearTimeout(this.#n),this.#n=setTimeout(this.#t,this.#o)}done(){if(!this.#e)clearTimeout(this.#n),this.#n=void 0,this.#e=!0}}var Gs=Hs;var po=()=>{};function Qn(e,n={}){let{body:r=null,headers:s={},method:i="GET",onBeforeRequest:a=po,onUploadProgress:l=po,shouldRetry:d=()=>!0,onAfterResponse:c=po,onTimeout:p=po,responseType:f,retries:v=3,signal:g=null,timeout:h=30000,withCredentials:y=!1}=n,x=(k)=>0.3*2**(k-1)*1000,b=new Gs(h,p);function N(k=0){return new Promise(async(G,X)=>{let te=new XMLHttpRequest,fe=(oe)=>{if(d(te)&&k<v)setTimeout(()=>{N(k+1).then(G,X)},x(k));else b.done(),X(oe)};if(te.open(i,e,!0),te.withCredentials=y,f)te.responseType=f;if(te.onload=async()=>{try{await c(te,k)}catch(oe){oe.request=te,fe(oe);return}if(te.status>=200&&te.status<300)b.done(),G(te);else if(d(te)&&k<v)setTimeout(()=>{N(k+1).then(G,X)},x(k));else b.done(),X(new Mn(te.statusText,te))},te.onerror=()=>fe(new Mn(te.statusText,te)),te.upload.onprogress=(oe)=>{b.progress(),l(oe)},s)Object.keys(s).forEach((oe)=>{te.setRequestHeader(oe,s[oe])});function ye(){te.abort(),X(new DOMException("Aborted","AbortError"))}if(g?.addEventListener("abort",ye),g?.aborted){ye();return}await a(te,k),te.send(r)})}return N()}var xd=(e)=>("error"in e)&&!!e.error,bd=(e)=>e.progress.uploadComplete;function Yn(e){return e.filter((n)=>!xd(n)&&!bd(n))}function Jn(e){return e.filter((n)=>!n.progress?.uploadStarted||!n.isRestored)}function Nn(e){let n=e.lastIndexOf(".");if(n===-1||n===e.length-1)return{name:e,extension:void 0};return{name:e.slice(0,n),extension:e.slice(n+1)}}var Vo={__proto__:null,md:"text/markdown",markdown:"text/markdown",mp4:"video/mp4",mp3:"audio/mp3",svg:"image/svg+xml",jpg:"image/jpeg",png:"image/png",webp:"image/webp",gif:"image/gif",heic:"image/heic",heif:"image/heif",yaml:"text/yaml",yml:"text/yaml",csv:"text/csv",tsv:"text/tab-separated-values",tab:"text/tab-separated-values",avi:"video/x-msvideo",mks:"video/x-matroska",mkv:"video/x-matroska",mov:"video/quicktime",dicom:"application/dicom",doc:"application/msword",msg:"application/vnd.ms-outlook",docm:"application/vnd.ms-word.document.macroenabled.12",docx:"application/vnd.openxmlformats-officedocument.wordprocessingml.document",dot:"application/msword",dotm:"application/vnd.ms-word.template.macroenabled.12",dotx:"application/vnd.openxmlformats-officedocument.wordprocessingml.template",xla:"application/vnd.ms-excel",xlam:"application/vnd.ms-excel.addin.macroenabled.12",xlc:"application/vnd.ms-excel",xlf:"application/x-xliff+xml",xlm:"application/vnd.ms-excel",xls:"application/vnd.ms-excel",xlsb:"application/vnd.ms-excel.sheet.binary.macroenabled.12",xlsm:"application/vnd.ms-excel.sheet.macroenabled.12",xlsx:"application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",xlt:"application/vnd.ms-excel",xltm:"application/vnd.ms-excel.template.macroenabled.12",xltx:"application/vnd.openxmlformats-officedocument.spreadsheetml.template",xlw:"application/vnd.ms-excel",txt:"text/plain",text:"text/plain",conf:"text/plain",log:"text/plain",pdf:"application/pdf",zip:"application/zip","7z":"application/x-7z-compressed",rar:"application/x-rar-compressed",tar:"application/x-tar",gz:"application/gzip",dmg:"application/x-apple-diskimage"};function Pn(e){if(e.type)return e.type;let n=e.name?Nn(e.name).extension?.toLowerCase():null;if(n&&n in Vo)return Vo[n];return"application/octet-stream"}function Sd(e){return e.charCodeAt(0).toString(32)}function Ws(e){let n="";return e.replace(/[^A-Z0-9]/gi,(r)=>(n+=`-${Sd(r)}`,"/"))+n}function qo(e,n){let r=n||"uppy";if(typeof e.name==="string")r+=`-${Ws(e.name.toLowerCase())}`;if(e.type!==void 0)r+=`-${e.type}`;if(e.meta&&typeof e.meta.relativePath==="string")r+=`-${Ws(e.meta.relativePath.toLowerCase())}`;if(e.data?.size!==void 0)r+=`-${e.data.size}`;if(e.data.lastModified!==void 0)r+=`-${e.data.lastModified}`;return r}function Cd(e){if(!e.isRemote||!e.remote)return!1;return new Set(["box","dropbox","drive","facebook","unsplash"]).has(e.remote.provider)}function Bo(e,n){if(Cd(e))return e.id;let r=Pn(e);return qo({...e,type:r},n)}function mn(e,n){if(e===!0)return Object.keys(n);if(Array.isArray(e))return e;return[]}function Ho(e){return e<10?`0${e}`:e.toString()}function gn(){let e=new Date,n=Ho(e.getHours()),r=Ho(e.getMinutes()),s=Ho(e.getSeconds());return`${n}:${r}:${s}`}function Fd(e){if(!e)return!1;return e.readyState===4&&e.status===0}var Go=Fd;class An{#n=[];#e=0;#t;#o=!1;constructor(e){let n=e?.concurrency;this.#t=typeof n!=="number"||n===0?1/0:n}add(e){let n=new AbortController,r,s,i=new Promise((l,d)=>{r=l,s=d}),a={run:()=>e(n.signal),resolve:r,reject:s,controller:n};if(n.signal.addEventListener("abort",()=>{let l=this.#n.indexOf(a);if(l!==-1)this.#n.splice(l,1),s(n.signal.reason??new DOMException("Aborted","AbortError"))},{once:!0}),i.abort=(l)=>{n.abort(l??new DOMException("Aborted","AbortError"))},i.abortOn=(l)=>{if(l){let d=()=>i.abort(l.reason);l.addEventListener("abort",d,{once:!0}),i.then(()=>l.removeEventListener("abort",d),()=>l.removeEventListener("abort",d))}return i},!this.#o&&this.#e<this.#t)this.#s(a);else this.#n.push(a);return i}#s(e){if(this.#e++,e.controller.signal.aborted){this.#e--,e.reject(e.controller.signal.reason??new DOMException("Aborted","AbortError")),this.#r();return}let n;try{n=e.run()}catch(r){n=Promise.reject(r)}n.then((r)=>{if(e.controller.signal.aborted)e.reject(e.controller.signal.reason??new DOMException("Aborted","AbortError"));else e.resolve(r)},(r)=>{e.reject(r)}).finally(()=>{this.#e--,this.#r()})}#r(){queueMicrotask(()=>{if(this.#o||this.#e>=this.#t)return;while(this.#n.length>0){let e=this.#n.shift();if(e.controller.signal.aborted)continue;this.#s(e);return}})}pause(){this.#o=!0}resume(){this.#o=!1;let e=this.#t-this.#e;for(let n=0;n<e;n++)this.#r()}clear(e){let n=this.#n.splice(0),r=e??new DOMException("Cleared","AbortError");for(let s of n)s.controller.abort(r),s.reject(r)}get concurrency(){return this.#t}set concurrency(e){if(this.#t=typeof e!=="number"||e===0?1/0:e,!this.#o){let n=this.#t-this.#e;for(let r=0;r<n;r++)this.#r()}}get pending(){return this.#n.length}get running(){return this.#e}get isPaused(){return this.#o}wrapPromiseFunction(e){return(...n)=>this.add((r)=>e(...n))}}function Id(e,n,r){let s=[];return e.forEach((i)=>{if(typeof i!=="string"){s.push(i);return}n[Symbol.split](i).forEach((a,l,d)=>{if(a!=="")s.push(a);if(l<d.length-1)s.push(r)})}),s}function Ks(e,n){let r=/\$/g,s="$$$$",i=[e];if(n==null)return i;for(let a of Object.keys(n))if(a!=="_"){let l=n[a];if(typeof l==="string")l=r[Symbol.replace](l,"$$$$");i=Id(i,new RegExp(`%\\{${a}\\}`,"g"),l)}return i}var Ed=(e)=>{throw Error(`missing string: ${e}`)};class hn{locale;constructor(e,{onMissingKey:n=Ed}={}){if(this.locale={strings:{},pluralize(r){if(r===1)return 0;return 1}},Array.isArray(e))e.forEach(this.#e,this);else this.#e(e);this.#n=n}#n;#e(e){if(!e?.strings)return;let n=this.locale;Object.assign(this.locale,{strings:{...n.strings,...e.strings},pluralize:e.pluralize||n.pluralize})}translate(e,n){return this.translateArray(e,n).join("")}translateArray(e,n){let r=this.locale.strings[e];if(r==null)this.#n(e),r=e;if(typeof r==="object"){if(n&&typeof n.smart_count<"u"){let i=this.locale.pluralize(n.smart_count);return Ks(r[i],n)}throw Error("Attempted to use a string with plural forms, but no value was given for %{smart_count}")}if(typeof r!=="string")throw Error("string was not a string");return Ks(r,n)}}class vn{uppy;opts;id;defaultLocale;i18n;i18nArray;type;VERSION;constructor(e,n){this.uppy=e,this.opts=n??{}}getPluginState(){let{plugins:e}=this.uppy.getState();return e?.[this.id]||{}}setPluginState(e){let{plugins:n}=this.uppy.getState();this.uppy.setState({plugins:{...n,[this.id]:{...n[this.id],...e}}})}setOptions(e){this.opts={...this.opts,...e},this.setPluginState(void 0),this.i18nInit()}i18nInit(){let e=new hn([this.defaultLocale,this.uppy.locale,this.opts.locale]);this.i18n=e.translate.bind(e),this.i18nArray=e.translateArray.bind(e),this.setPluginState(void 0)}addTarget(e){throw Error("Extend the addTarget method to add your plugin to another plugin's target")}install(){}uninstall(){}update(e){}afterUpdate(){}}class wn{#n;#e=[];constructor(e){this.#n=e}on(e,n){return this.#e.push([e,n]),this.#n.on(e,n)}remove(){for(let[e,n]of this.#e.splice(0))this.#n.off(e,n)}onFilePause(e,n){this.on("upload-pause",(r,s)=>{if(e===r?.id)n(s)})}onFileRemove(e,n){this.on("file-removed",(r)=>{if(e===r.id)n(r.id)})}onPause(e,n){this.on("upload-pause",(r,s)=>{if(e===r?.id)n(s)})}onRetry(e,n){this.on("upload-retry",(r)=>{if(e===r?.id)n()})}onRetryAll(e,n){this.on("retry-all",()=>{if(!this.#n.getFile(e))return;n()})}onPauseAll(e,n){this.on("pause-all",()=>{if(!this.#n.getFile(e))return;n()})}onCancelAll(e,n){this.on("cancel-all",(...r)=>{if(!this.#n.getFile(e))return;n(...r)})}onResumeAll(e,n){this.on("resume-all",()=>{if(!this.#n.getFile(e))return;n()})}}var Xs={debug:()=>{},warn:()=>{},error:(...e)=>console.error(`[Uppy] [${gn()}]`,...e)},Qs={debug:(...e)=>console.debug(`[Uppy] [${gn()}]`,...e),warn:(...e)=>console.warn(`[Uppy] [${gn()}]`,...e),error:(...e)=>console.error(`[Uppy] [${gn()}]`,...e)};var Wo=["B","KB","MB","GB","TB","PB","EB","ZB","YB"];function Zn(e,n){if(typeof e!=="number"||Number.isNaN(e))throw TypeError(`Expected a number, got ${typeof e}`);let r=e<0,s=Math.abs(e);if(r)s=-s;if(s===0)return"0 B";let i=n?Wo.indexOf(n):Math.min(Math.floor(Math.log(s)/Math.log(1024)),Wo.length-1),a=Number(s/1024**i),l=Wo[i];if(i>=3)return a%1===0?`${Math.round(a)} ${l}`:`${a.toFixed(2)} ${l}`;return`${a>=10||a%1===0?Math.round(a):a.toFixed(1)} ${l}`}var ni=H(ti(),1),oi={maxFileSize:null,minFileSize:null,maxTotalFileSize:null,maxNumberOfFiles:null,minNumberOfFiles:null,allowedFileTypes:null,requiredMetaFields:[]};class $t extends Error{isUserFacing;file;constructor(e,n){super(e);if(this.isUserFacing=n?.isUserFacing??!0,n?.file)this.file=n.file}isRestriction=!0}class Ko{getI18n;getOpts;constructor(e,n){this.getI18n=n,this.getOpts=()=>{let r=e();if(r.restrictions?.allowedFileTypes!=null&&!Array.isArray(r.restrictions.allowedFileTypes))throw TypeError("`restrictions.allowedFileTypes` must be an array");return r}}validateAggregateRestrictions(e,n){let{maxTotalFileSize:r,maxNumberOfFiles:s}=this.getOpts().restrictions;if(s){if(e.filter((a)=>!a.isGhost).length+n.length>s)throw new $t(`${this.getI18n()("youCanOnlyUploadX",{smart_count:s})}`)}if(r){let i=[...e,...n].reduce((a,l)=>a+(l.size??0),0);if(i>r)throw new $t(this.getI18n()("aggregateExceedsSize",{sizeAllowed:Zn(r),size:Zn(i)}))}}validateSingleFile(e){let{maxFileSize:n,minFileSize:r,allowedFileTypes:s}=this.getOpts().restrictions;if(s){if(!s.some((a)=>{if(a.includes("/")){if(!e.type)return!1;return ni.default(e.type.replace(/;.*?$/,""),a)}if(a[0]==="."&&e.extension)return e.extension.toLowerCase()===a.slice(1).toLowerCase();return!1})){let a=s.join(", ");throw new $t(this.getI18n()("youCanOnlyUploadFileTypes",{types:a}),{file:e})}}if(n&&e.size!=null&&e.size>n)throw new $t(this.getI18n()("exceedsSize",{size:Zn(n),file:e.name??this.getI18n()("unnamed")}),{file:e});if(r&&e.size!=null&&e.size<r)throw new $t(this.getI18n()("inferiorSize",{size:Zn(r)}),{file:e})}validate(e,n){n.forEach((r)=>{this.validateSingleFile(r)}),this.validateAggregateRestrictions(e,n)}validateMinNumberOfFiles(e){let{minNumberOfFiles:n}=this.getOpts().restrictions;if(n&&Object.keys(e).length<n)throw new $t(this.getI18n()("youHaveToAtLeastSelectX",{smart_count:n}))}getMissingRequiredMetaFields(e){let n=new $t(this.getI18n()("missingRequiredMetaFieldOnFile",{fileName:e.name??this.getI18n()("unnamed")})),{requiredMetaFields:r}=this.getOpts().restrictions,s=[];for(let i of r)if(!Object.hasOwn(e.meta,i)||e.meta[i]==="")s.push(i);return{missingFields:s,error:n}}}var Qi=H(qi(),1),Yi=H(Hi(),1);var Du="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var Gi=(e=21)=>{let n="",r=e|0;while(r-- >0)n+=Du[Math.random()*64|0];return n};var go={name:"@uppy/core",description:"Core module for the extensible JavaScript file upload widget with support for drag&drop, resumable uploads, previews, restrictions, file processing/encoding, remote providers like Dropbox, Google Drive, S3 and more :dog:",version:"6.0.0",license:"MIT",style:"dist/style.min.css",type:"module",sideEffects:["*.css"],scripts:{build:"tsc --build tsconfig.build.json","build:css":"sass --load-path=../../ src/style.scss dist/style.css && sass --load-path=../../ src/provider-views/style.scss dist/provider-views.css && postcss dist/style.css -u cssnano -o dist/style.min.css && postcss dist/provider-views.css -u cssnano -o dist/provider-views.min.css",typecheck:"tsc --build",test:"vitest run --silent='passed-only'"},keywords:["file uploader","uppy","uppy-plugin"],homepage:"https://uppy.io",bugs:{url:"https://github.com/transloadit/uppy/issues"},repository:{type:"git",url:"git+https://github.com/transloadit/uppy.git"},files:["src","lib","dist","CHANGELOG.md"],exports:{".":"./lib/index.js","./css/style.min.css":"./dist/style.min.css","./css/style.css":"./dist/style.css","./css/style.scss":"./src/style.scss","./store-default":"./lib/store/index.js","./utils":"./lib/utils/index.js","./utils/preact":"./lib/utils/preact/index.js","./utils/preact/hooks":"./lib/utils/preact/hooks.js","./companion-client":"./lib/companion-client/index.js","./provider-views":"./lib/provider-views/index.js","./provider-views/css/style.min.css":"./dist/provider-views.min.css","./provider-views/css/style.css":"./dist/provider-views.css","./provider-views/css/style.scss":"./src/provider-views/style.scss","./package.json":"./package.json"},dependencies:{"@transloadit/prettier-bytes":"^2.0.0",classnames:"^2.5.1",lodash:"^4.18.1","mime-match":"^1.0.2","namespace-emitter":"^2.0.1",nanoid:"^5.1.11","p-queue":"^9.3.3","p-retry":"^6.1.0",preact:"^10.29.2"},devDependencies:{"@types/deep-freeze":"^0","@types/gapi":"^0.0.47","@types/google.accounts":"^0.0.18","@types/google.picker":"^0.0.52","@types/lodash":"^4.14.199","@types/mime-match":"^1.0.0","@types/namespace-emitter":"^2.0.0","@types/node":"^22.20.1","@vitest/browser-playwright":"^4.1.6",cssnano:"^8.0.1","deep-freeze":"^0.0.1",playwright:"1.61.1",postcss:"^8.5.23","postcss-cli":"^11.0.1",sass:"^1.89.2",typescript:"^6.0.3",vite:"^8.1.5",vitest:"^4.1.6"}};function nr(e,n){if(n.name)return n.name;if(e.split("/")[0]==="image")return`${e.split("/")[0]}.${e.split("/")[1]}`;return"noname"}var Wi={strings:{addBulkFilesFailed:{0:"Failed to add %{smart_count} file due to an internal error",1:"Failed to add %{smart_count} files due to internal errors"},youCanOnlyUploadX:{0:"You can only upload %{smart_count} file",1:"You can only upload %{smart_count} files"},youHaveToAtLeastSelectX:{0:"You have to select at least %{smart_count} file",1:"You have to select at least %{smart_count} files"},aggregateExceedsSize:"You selected %{size} of files, but maximum allowed size is %{sizeAllowed}",exceedsSize:"%{file} exceeds maximum allowed size of %{size}",missingRequiredMetaField:"Missing required meta fields",missingRequiredMetaFieldOnFile:"Missing required meta fields in %{fileName}",inferiorSize:"This file is smaller than the allowed size of %{size}",youCanOnlyUploadFileTypes:"You can only upload: %{types}",noMoreFilesAllowed:"Cannot add more files",noDuplicates:"Cannot add the duplicate file '%{fileName}', it already exists",companionError:"Connection with Companion failed",authAborted:"Authentication aborted",companionUnauthorizeHint:"To unauthorize to your %{provider} account, please go to %{url}",failedToUpload:"Failed to upload %{file}",noInternetConnection:"No Internet connection",connectedToInternet:"Connected to the Internet",noFilesFound:"You have no files or folders here",noSearchResults:"Unfortunately, there are no results for this search",selectX:{0:"Select %{smart_count}",1:"Select %{smart_count}"},allFilesFromFolderNamed:"All files from folder %{name}",openFolderNamed:"Open folder %{name}",cancel:"Cancel",logOut:"Log out",logIn:"Log in",pickFiles:"Pick files",pickPhotos:"Pick photos",filter:"Filter",resetFilter:"Reset filter",loading:"Loading...",loadedXFiles:"Loaded %{numFiles} files",authenticateWithTitle:"Please authenticate with %{pluginName} to select files",authenticateWith:"Connect to %{pluginName}",signInWithGoogle:"Sign in with Google",searchImages:"Search for images",enterTextToSearch:"Enter text to search for images",search:"Search",resetSearch:"Reset search",emptyFolderAdded:"No files were added from empty folder",addedNumFiles:"Added %{numFiles} file(s)",folderAlreadyAdded:'The folder "%{folder}" was already added',folderAdded:{0:"Added %{smart_count} file from %{folder}",1:"Added %{smart_count} files from %{folder}"},additionalRestrictionsFailed:"%{count} additional restrictions were not fulfilled",unnamed:"Unnamed",pleaseWait:"Please wait"}};class Ki{static VERSION=go.version;state={};#n=new Set;getState(){return this.state}setState(e){let n={...this.state},r={...this.state,...e};this.state=r,this.#e(n,r,e)}subscribe(e){return this.#n.add(e),()=>{this.#n.delete(e)}}#e(...e){this.#n.forEach((n)=>{n(...e)})}}var Xi=Ki;function ir(e){if(e==null&&typeof navigator<"u")e=navigator.userAgent;if(!e)return!0;let n=/Edge\/(\d+\.\d+)/.exec(e);if(!n)return!0;let s=n[1].split(".",2),i=parseInt(s[0],10),a=parseInt(s[1],10);if(i<15||i===15&&a<15063)return!0;if(i>18||i===18&&a>=18218)return!0;return!1}var ho={totalProgress:0,allowNewUpload:!0,error:null,recoveredState:null};class ar{static VERSION=go.version;#n=Object.create(null);#e;#t;#o=Yi.default();#s=new Set;#r=new Set;#a=new Set;defaultLocale;locale;opts;store;i18n;i18nArray;scheduledAutoProceed=null;wasOffline=!1;constructor(e){this.defaultLocale=Wi;let n={id:"uppy",autoProceed:!1,allowMultipleUploadBatches:!0,debug:!1,restrictions:oi,meta:{},onBeforeFileAdded:(s,i)=>!Object.hasOwn(i,s.id),onBeforeUpload:(s)=>s,store:new Xi,logger:Xs,infoTimeout:5000},r={...n,...e};if(this.opts={...r,restrictions:{...n.restrictions,...e?.restrictions}},e?.logger&&e.debug)this.log("You are using a custom `logger`, but also set `debug: true`, which uses built-in logger to output logs to console. Ignoring `debug: true` and using your custom `logger`.","warning");else if(e?.debug)this.opts.logger=Qs;if(this.log(`Using Core v${ar.VERSION}`),this.i18nInit(),this.store=this.opts.store,this.setState({...ho,plugins:{},files:{},currentUploads:{},capabilities:{uploadProgress:ir(),individualCancellation:!0,resumableUploads:!1},meta:{...this.opts.meta},info:[]}),this.#e=new Ko(()=>this.opts,()=>this.i18n),this.#t=this.store.subscribe((s,i,a)=>{this.emit("state-update",s,i,a),this.updateAll(i)}),this.opts.debug&&typeof window<"u")window[this.opts.id]=this;this.#F()}emit(e,...n){this.#o.emit(e,...n)}on(e,n){return this.#o.on(e,n),this}once(e,n){return this.#o.once(e,n),this}off(e,n){return this.#o.off(e,n),this}updateAll(e){this.iteratePlugins((n)=>{n.update(e)})}setState(e){this.store.setState(e)}getState(){return this.store.getState()}patchFilesState(e){let n=this.getState().files;this.setState({files:{...n,...Object.fromEntries(Object.entries(e).map(([r,s])=>[r,{...n[r],...s}]))}})}setFileState(e,n){if(!this.getState().files[e])throw Error(`Can’t set state for ${e} (the file could have been removed)`);this.patchFilesState({[e]:n})}i18nInit(){let e=(r)=>this.log(`Missing i18n string: ${r}`,"error"),n=new hn([this.defaultLocale,this.opts.locale],{onMissingKey:e});this.i18n=n.translate.bind(n),this.i18nArray=n.translateArray.bind(n),this.locale=n.locale}setOptions(e){if(this.opts={...this.opts,...e,restrictions:{...this.opts.restrictions,...e?.restrictions}},e.meta)this.setMeta(e.meta);if(this.i18nInit(),e.locale)this.iteratePlugins((n)=>{n.setOptions(e)});this.setState(void 0)}resetProgress(){let e={percentage:0,bytesUploaded:!1,uploadComplete:!1,uploadStarted:null},n={...this.getState().files},r=Object.create(null);Object.keys(n).forEach((s)=>{r[s]={...n[s],progress:{...n[s].progress,...e},tus:void 0,transloadit:void 0,s3Multipart:void 0}}),this.setState({files:r,...ho})}clear(){let{capabilities:e,currentUploads:n}=this.getState();if(Object.keys(n).length>0&&!e.individualCancellation)throw Error("The installed uploader plugin does not allow removing files during an upload.");this.setState({...ho,files:{}})}addPreProcessor(e){this.#s.add(e)}removePreProcessor(e){return this.#s.delete(e)}addPostProcessor(e){this.#a.add(e)}removePostProcessor(e){return this.#a.delete(e)}addUploader(e){this.#r.add(e)}removeUploader(e){return this.#r.delete(e)}setMeta(e){let n={...this.getState().meta,...e},r={...this.getState().files};Object.keys(r).forEach((s)=>{r[s]={...r[s],meta:{...r[s].meta,...e}}}),this.log("Adding metadata:"),this.log(e),this.setState({meta:n,files:r})}setFileMeta(e,n){let r={...this.getState().files};if(!r[e]){this.log(`Was trying to set metadata for a file that has been removed: ${e}`);return}let s={...r[e].meta,...n};r[e]={...r[e],meta:s},this.setState({files:r})}getFile(e){return this.getState().files[e]}getFiles(){let{files:e}=this.getState();return Object.values(e)}getFilesByIds(e){return e.map((n)=>this.getFile(n))}getObjectOfFilesPerState(){let{files:e,totalProgress:n,error:r}=this.getState(),s=Object.values(e),i=[],a=[],l=[],d=[],c=[],p=[],f=[],v=[],g=[];for(let h of s){let{progress:y}=h;if(!y.uploadComplete&&y.uploadStarted){if(i.push(h),!h.isPaused)v.push(h)}if(!y.uploadStarted)a.push(h);if(y.uploadStarted||y.preprocess||y.postprocess)l.push(h);if(y.uploadStarted)d.push(h);if(h.isPaused)c.push(h);if(y.uploadComplete)p.push(h);if(h.error)f.push(h);if(y.preprocess||y.postprocess)g.push(h)}return{newFiles:a,startedFiles:l,uploadStartedFiles:d,pausedFiles:c,completeFiles:p,erroredFiles:f,inProgressFiles:i,inProgressNotPausedFiles:v,processingFiles:g,isUploadStarted:d.length>0,isAllComplete:n===100&&p.length===s.length&&g.length===0,isAllErrored:!!r&&f.length===s.length,isAllPaused:i.length!==0&&c.length===i.length,isUploadInProgress:i.length>0,isSomeGhost:s.some((h)=>h.isGhost)}}#i(e){for(let a of e){if(a.isRestriction)this.emit("restriction-failed",a.file,a);else this.emit("error",a,a.file);this.log(a,"warning")}let n=e.filter((a)=>a.isUserFacing),r=4,s=n.slice(0,r),i=n.slice(r);if(s.forEach(({message:a,details:l=""})=>{this.info({message:a,details:l},"error",this.opts.infoTimeout)}),i.length>0)this.info({message:this.i18n("additionalRestrictionsFailed",{count:i.length})})}validateRestrictions(e,n=this.getFiles()){try{this.#e.validate(n,[e])}catch(r){return r}return null}validateSingleFile(e){try{this.#e.validateSingleFile(e)}catch(n){return n.message}return null}validateAggregateRestrictions(e){let n=this.getFiles();try{this.#e.validateAggregateRestrictions(n,e)}catch(r){return r.message}return null}#l(e){let{missingFields:n,error:r}=this.#e.getMissingRequiredMetaFields(e);if(n.length>0)return this.setFileState(e.id,{missingRequiredMetaFields:n,error:r.message}),this.log(r.message),this.emit("restriction-failed",e,r),!1;if(n.length===0&&e.missingRequiredMetaFields)this.setFileState(e.id,{missingRequiredMetaFields:[]});return!0}#d(e){let n=!0;for(let r of Object.values(e))if(!this.#l(r))n=!1;return n}#u(e){let{allowNewUpload:n}=this.getState();if(n===!1){let r=new $t(this.i18n("noMoreFilesAllowed"),{file:e});throw this.#i([r]),r}}checkIfFileAlreadyExists(e){let{files:n}=this.getState();if(n[e]&&!n[e].isGhost)return!0;return!1}#c(e){let n=e instanceof File?{name:e.name,type:e.type,size:e.size,data:e,meta:{},isRemote:!1,source:void 0,preview:void 0}:e,r=Pn(n),s=nr(r,n),i=Nn(s).extension,a=Bo(n,this.getID()),l={...n.meta,name:s,type:r},d=Number.isFinite(n.data.size)?n.data.size:null;return{source:n.source||"",id:a,name:s,extension:i||"",meta:{...this.getState().meta,...l},type:r,progress:{percentage:0,bytesUploaded:!1,bytesTotal:d,uploadComplete:!1,uploadStarted:null},size:d,isGhost:!1,...n.isRemote?{isRemote:!0,remote:n.remote,data:n.data}:{isRemote:!1,data:n.data},preview:n.preview}}#p(){if(this.opts.autoProceed&&!this.scheduledAutoProceed)this.scheduledAutoProceed=setTimeout(()=>{this.scheduledAutoProceed=null,this.upload().catch((e)=>{if(!e.isRestriction)this.log(e.stack||e.message||e)})},4)}#w(e){let{files:n}=this.getState(),r={...n},s=[],i=[];for(let a of e)try{let l=this.#c(a);this.#u(l);let d=n[l.id],c=d?.isGhost;if(c&&!l.isRemote){if(l.data==null)throw Error("File data is missing");l={...d,isGhost:!1,data:l.data},this.log(`Replaced the blob in the restored ghost file: ${l.name}, ${l.id}`)}let p=this.opts.onBeforeFileAdded(l,r);if(n=this.getState().files,r={...n,...r},!p&&this.checkIfFileAlreadyExists(l.id))throw new $t(this.i18n("noDuplicates",{fileName:l.name??this.i18n("unnamed")}),{file:l});if(p===!1&&!c)throw new $t("Cannot add the file because onBeforeFileAdded returned false.",{isUserFacing:!1,file:l});else if(typeof p==="object"&&p!==null)l=p;this.#e.validateSingleFile(l),r[l.id]=l,s.push(l)}catch(l){i.push(l)}try{this.#e.validateAggregateRestrictions(Object.values(n),s)}catch(a){return i.push(a),{nextFilesState:n,validFilesToAdd:[],errors:i}}return{nextFilesState:r,validFilesToAdd:s,errors:i}}addFile(e){let{nextFilesState:n,validFilesToAdd:r,errors:s}=this.#w([e]),i=s.filter((l)=>l.isRestriction);if(this.#i(i),s.length>0)throw s[0];this.setState({files:n});let[a]=r;return this.emit("file-added",a),this.emit("files-added",r),this.log(`Added file: ${a.name}, ${a.id}, mime type: ${a.type}`),this.#p(),a.id}addFiles(e){let{nextFilesState:n,validFilesToAdd:r,errors:s}=this.#w(e),i=s.filter((l)=>l.isRestriction);this.#i(i);let a=s.filter((l)=>!l.isRestriction);if(a.length>0){let l=`Multiple errors occurred while adding files:
|
|
2
|
-
`;if(a.forEach((d)=>{l+=`
|
|
3
|
-
* ${d.message}`}),this.info({message:this.i18n("addBulkFilesFailed",{smart_count:a.length}),details:l},"error",this.opts.infoTimeout),typeof AggregateError==="function")throw AggregateError(a,l);else{let d=Error(l);throw d.errors=a,d}}if(this.setState({files:n}),r.forEach((l)=>{this.emit("file-added",l)}),this.emit("files-added",r),r.length>5)this.log(`Added batch of ${r.length} files`);else Object.values(r).forEach((l)=>{this.log(`Added file: ${l.name}
|
|
4
|
-
id: ${l.id}
|
|
5
|
-
type: ${l.type}`)});if(r.length>0)this.#p()}removeFiles(e){let{files:n,currentUploads:r}=this.getState(),s={...n},i={...r},a=Object.create(null);e.forEach((p)=>{if(n[p])a[p]=n[p],delete s[p]});function l(p){return a[p]===void 0}Object.keys(i).forEach((p)=>{let f=r[p].fileIDs.filter(l);if(f.length===0){delete i[p];return}let{capabilities:v}=this.getState();if(f.length!==r[p].fileIDs.length&&!v.individualCancellation)throw Error("The installed uploader plugin does not allow removing files during an upload.");i[p]={...r[p],fileIDs:f}});let d={currentUploads:i,files:s};if(Object.keys(s).length===0)d.allowNewUpload=!0,d.error=null,d.recoveredState=null;this.setState(d),this.#m();let c=Object.keys(a);if(c.forEach((p)=>{this.emit("file-removed",a[p])}),c.length>5)this.log(`Removed ${c.length} files`);else this.log(`Removed files: ${c.join(", ")}`)}removeFile(e){this.removeFiles([e])}pauseResume(e){if(!this.getState().capabilities.resumableUploads||this.getFile(e).progress.uploadComplete)return;let n=this.getFile(e),s=!n.isPaused;return this.setFileState(e,{isPaused:s}),this.emit("upload-pause",n,s),s}pauseAll(){let e={...this.getState().files};Object.keys(e).filter((r)=>!e[r].progress.uploadComplete&&e[r].progress.uploadStarted).forEach((r)=>{let s={...e[r],isPaused:!0};e[r]=s}),this.setState({files:e}),this.emit("pause-all")}resumeAll(){let e={...this.getState().files};Object.keys(e).filter((r)=>!e[r].progress.uploadComplete&&e[r].progress.uploadStarted).forEach((r)=>{let s={...e[r],isPaused:!1,error:null};e[r]=s}),this.setState({files:e}),this.emit("resume-all")}#y(){let{files:e}=this.getState();return Object.keys(e).filter((n)=>{let r=e[n];return r.error&&(!r.missingRequiredMetaFields||r.missingRequiredMetaFields.length===0)})}async#g(){let e=this.#y(),n={...this.getState().files};if(e.forEach((s)=>{n[s]={...n[s],isPaused:!1,error:null}}),this.setState({files:n,error:null}),this.emit("retry-all",this.getFilesByIds(e)),e.length===0)return{successful:[],failed:[]};let r=this.#x(e,{forceAllowNewUpload:!0});return this.#b(r)}async retryAll(){let e=await this.#g();return this.emit("complete",e),e}cancelAll(){this.emit("cancel-all");let{files:e}=this.getState(),n=Object.keys(e);if(n.length)this.removeFiles(n);this.setState(ho)}retryUpload(e){this.setFileState(e,{error:null,isPaused:!1}),this.emit("upload-retry",this.getFile(e));let n=this.#x([e],{forceAllowNewUpload:!0});return this.#b(n)}logout(){this.iteratePlugins((e)=>{e.provider?.logout?.()})}#f=(e,n)=>{let r=e?this.getFile(e.id):void 0;if(e==null||!r){this.log(`Not setting progress for a file that has been removed: ${e?.id}`);return}if(r.progress.percentage===100){this.log(`Not setting progress for a file that has been already uploaded: ${e.id}`);return}let s={bytesTotal:n.bytesTotal,percentage:n.bytesTotal!=null&&Number.isFinite(n.bytesTotal)&&n.bytesTotal>0?Math.round(n.bytesUploaded/n.bytesTotal*100):void 0};if(r.progress.uploadStarted!=null)this.setFileState(e.id,{progress:{...r.progress,...s,bytesUploaded:n.bytesUploaded}});else this.setFileState(e.id,{progress:{...r.progress,...s}});this.#m()};#h(){let e=this.#R(),n=null;if(e!=null){if(n=Math.round(e*100),n>100)n=100;else if(n<0)n=0}this.emit("progress",n??0),this.setState({totalProgress:n??0})}#m=Qi.default(()=>this.#h(),500,{leading:!0,trailing:!0});[Symbol.for("uppy test: updateTotalProgress")](){return this.#h()}#R(){let n=this.getFiles().filter((d)=>d.progress.uploadStarted||d.progress.preprocess||d.progress.postprocess);if(n.length===0)return 0;if(n.every((d)=>d.progress.uploadComplete))return 1;let r=(d)=>d.progress.bytesTotal!=null&&d.progress.bytesTotal!==0,s=n.filter(r),i=n.filter((d)=>!r(d));if(s.every((d)=>d.progress.uploadComplete)&&i.length>0&&!i.every((d)=>d.progress.uploadComplete))return null;let a=s.reduce((d,c)=>d+(c.progress.bytesTotal??0),0),l=s.reduce((d,c)=>d+(c.progress.bytesUploaded||0),0);return a===0?0:l/a}#F(){let e=(s,i,a)=>{let l=s.message||"Unknown error";if(s.details)l+=` ${s.details}`;if(this.setState({error:l}),i!=null&&i.id in this.getState().files)this.setFileState(i.id,{error:l,response:a})};this.on("error",e),this.on("upload-error",(s,i,a)=>{if(e(i,s,a),typeof i==="object"&&i.message){this.log(i.message,"error");let l=Error(this.i18n("failedToUpload",{file:s?.name??""}));if(l.isUserFacing=!0,l.details=i.message,i.details)l.details+=` ${i.details}`;this.#i([l])}else this.#i([i])});let n=null;this.on("upload-stalled",(s,i)=>{let{message:a}=s,l=i.map((d)=>d.meta.name).join(", ");if(!n)this.info({message:a,details:l},"warning",this.opts.infoTimeout),n=setTimeout(()=>{n=null},this.opts.infoTimeout);this.log(`${a} ${l}`.trim(),"warning")}),this.on("upload",()=>{this.setState({error:null})});let r=(s)=>{let i=s.filter((l)=>{let d=l!=null&&this.getFile(l.id);if(!d)this.log(`Not setting progress for a file that has been removed: ${l?.id}`);return d}),a=Object.fromEntries(i.map((l)=>[l.id,{progress:{uploadStarted:Date.now(),uploadComplete:!1,bytesUploaded:0,bytesTotal:l.size}}]));this.patchFilesState(a)};if(this.on("upload-start",r),this.on("upload-progress",this.#f),this.on("upload-success",(s,i)=>{if(s==null||!this.getFile(s.id)){this.log(`Not setting progress for a file that has been removed: ${s?.id}`);return}let a=this.getFile(s.id).progress,l=this.#a.size>0;if(this.setFileState(s.id,{progress:{...a,postprocess:l?{mode:"indeterminate"}:void 0,uploadComplete:!0,...!l&&{complete:!0},percentage:100,bytesUploaded:a.bytesTotal},response:i,uploadURL:i.uploadURL,isPaused:!1}),s.size==null)this.setFileState(s.id,{size:i.bytesUploaded||a.bytesTotal});this.#m()}),this.on("preprocess-progress",(s,i)=>{if(s==null||!this.getFile(s.id)){this.log(`Not setting progress for a file that has been removed: ${s?.id}`);return}this.setFileState(s.id,{progress:{...this.getFile(s.id).progress,preprocess:i}})}),this.on("preprocess-complete",(s)=>{if(s==null||!this.getFile(s.id)){this.log(`Not setting progress for a file that has been removed: ${s?.id}`);return}let i={...this.getState().files};i[s.id]={...i[s.id],progress:{...i[s.id].progress}},delete i[s.id].progress.preprocess,this.setState({files:i})}),this.on("postprocess-progress",(s,i)=>{if(s==null||!this.getFile(s.id)){this.log(`Not setting progress for a file that has been removed: ${s?.id}`);return}this.setFileState(s.id,{progress:{...this.getState().files[s.id].progress,postprocess:i}})}),this.on("postprocess-complete",(s)=>{let i=s&&this.getFile(s.id);if(i==null){this.log(`Not setting progress for a file that has been removed: ${s?.id}`);return}let{postprocess:a,...l}=i.progress;this.patchFilesState({[i.id]:{progress:{...l,complete:!0}}})}),this.on("restored",()=>{this.#m()}),this.on("dashboard:file-edit-complete",(s)=>{if(s)this.#l(s)}),typeof window<"u"&&window.addEventListener)window.addEventListener("online",this.#v),window.addEventListener("offline",this.#v),setTimeout(this.#v,3000)}updateOnlineStatus(){if(!(window.navigator.onLine??!0))this.emit("is-offline"),this.info(this.i18n("noInternetConnection"),"error",0),this.wasOffline=!0;else if(this.emit("is-online"),this.wasOffline)this.emit("back-online"),this.info(this.i18n("connectedToInternet"),"success",3000),this.wasOffline=!1}#v=this.updateOnlineStatus.bind(this);getID(){return this.opts.id}use(e,...n){if(typeof e!=="function")throw TypeError(`Expected a plugin class, but got ${e===null?"null":typeof e}. Please verify that the plugin was imported and spelled correctly.`);let r=new e(this,...n),s=r.id;if(!s)throw Error("Your plugin must have an id");if(!r.type)throw Error("Your plugin must have a type");let i=this.getPlugin(s);if(i){let a=`Already found a plugin named '${i.id}'. Tried to use: '${s}'.
|
|
6
|
-
Uppy plugins must have unique \`id\` options.`;throw Error(a)}if(e.VERSION)this.log(`Using ${s} v${e.VERSION}`);if(r.type in this.#n)this.#n[r.type].push(r);else this.#n[r.type]=[r];return r.install(),this.emit("plugin-added",r),this}getPlugin(e){for(let n of Object.values(this.#n)){let r=n.find((s)=>s.id===e);if(r!=null)return r}return}[Symbol.for("uppy test: getPlugins")](e){return this.#n[e]}iteratePlugins(e){Object.values(this.#n).flat(1).forEach(e)}removePlugin(e){if(this.log(`Removing plugin ${e.id}`),this.emit("plugin-remove",e),e.uninstall)e.uninstall();let n=this.#n[e.type],r=n.findIndex((a)=>a.id===e.id);if(r!==-1)n.splice(r,1);let i={plugins:{...this.getState().plugins,[e.id]:void 0}};this.setState(i)}destroy(){if(this.log(`Closing Uppy instance ${this.opts.id}: removing all files and uninstalling plugins`),this.cancelAll(),this.#t(),this.iteratePlugins((e)=>{this.removePlugin(e)}),typeof window<"u"&&window.removeEventListener)window.removeEventListener("online",this.#v),window.removeEventListener("offline",this.#v)}hideInfo(){let{info:e}=this.getState();this.setState({info:e.slice(1)}),this.emit("info-hidden")}info(e,n="info",r=3000){let s=typeof e==="object";this.setState({info:[...this.getState().info,{type:n,message:s?e.message:e,details:s?e.details:null}]}),setTimeout(()=>this.hideInfo(),r),this.emit("info-visible")}log(e,n){let{logger:r}=this.opts;switch(n){case"error":r.error(e);break;case"warning":r.warn(e);break;default:r.debug(e);break}}#S=new Map;registerRequestClient(e,n){this.#S.set(e,n)}getRequestClientForFile(e){if(!(("remote"in e)&&e.remote))throw Error(`Tried to get RequestClient for a non-remote file ${e.id}`);let n=this.#S.get(e.remote.requestClientId);if(n==null)throw Error(`requestClientId "${e.remote.requestClientId}" not registered for file "${e.id}"`);return n}async restore(e){this.log(`Core: Running restored upload "${e}"`);let n=await this.#b(e);return this.emit("complete",n),n}#x(e,n={}){let{forceAllowNewUpload:r=!1}=n,{allowNewUpload:s,currentUploads:i}=this.getState();if(!s&&!r)throw Error("Cannot create a new upload: already uploading.");let a=Gi();return this.emit("upload",a,this.getFilesByIds(e)),this.setState({allowNewUpload:this.opts.allowMultipleUploadBatches!==!1&&this.opts.allowMultipleUploads!==!1,currentUploads:{...i,[a]:{fileIDs:e,step:0,result:{}}}}),a}[Symbol.for("uppy test: createUpload")](...e){return this.#x(...e)}#I(e){let{currentUploads:n}=this.getState();return n[e]}addResultData(e,n){if(!this.#I(e)){this.log(`Not setting result for an upload that has been removed: ${e}`);return}let{currentUploads:r}=this.getState(),s={...r[e],result:{...r[e].result,...n}};this.setState({currentUploads:{...r,[e]:s}})}#C(e){let{[e]:n,...r}=this.getState().currentUploads;this.setState({currentUploads:r})}async#b(e){let n=()=>{let{currentUploads:a}=this.getState();return a[e]},r=n();if(!r)throw Error("Nonexistent upload");let s=[...this.#s,...this.#r,...this.#a];try{for(let a=r.step||0;a<s.length;a++){let l=s[a];this.setState({currentUploads:{...this.getState().currentUploads,[e]:{...r,step:a}}});let{fileIDs:d}=r;if(await l(d,e),r=n(),!r)break}}catch(a){throw this.#C(e),a}if(r){r.fileIDs.forEach((c)=>{let p=this.getFile(c);if(p?.progress.postprocess)this.emit("postprocess-complete",p)});let a=r.fileIDs.map((c)=>this.getFile(c)),l=a.filter((c)=>!c.error),d=a.filter((c)=>c.error);this.addResultData(e,{successful:l,failed:d,uploadID:e}),r=n()}let i;if(r)i=r.result,this.#C(e);if(i==null)this.log(`Not setting result for an upload that has been removed: ${e}`),i={successful:[],failed:[],uploadID:e};return i}async upload(){if(!this.#n.uploader?.length)this.log("No uploader type plugins are used","warning");let{files:e}=this.getState();if(this.#y().length>0){let s=await this.#g();if(!(this.getFiles().filter((a)=>a.progress.uploadStarted==null).length>0))return this.emit("complete",s),s;({files:e}=this.getState())}let r=this.opts.onBeforeUpload(e);if(r===!1)throw Error("Not starting the upload because onBeforeUpload returned false");if(r&&typeof r==="object")e=r,this.setState({files:e});try{if(this.#e.validateMinNumberOfFiles(e),!this.#d(e))throw new $t(this.i18n("missingRequiredMetaField"));let{currentUploads:s}=this.getState(),i=Object.values(s).flatMap((c)=>c.fileIDs),a=Object.keys(e).filter((c)=>{let p=this.getFile(c);return p&&!p.progress.uploadStarted&&!i.includes(c)}),l=this.#x(a),d=await this.#b(l);return this.emit("complete",d),d}catch(s){throw this.#i([s]),s}}}var vo=ar;var Ji={name:"@uppy/aws-s3",description:"Upload to Amazon S3 with Uppy",version:"6.0.0",license:"MIT",type:"module",sideEffects:!1,scripts:{build:"tsc --build tsconfig.build.json",typecheck:"tsc --build",test:"vitest run --silent='passed-only'"},keywords:["file uploader","aws s3","amazon s3","s3","uppy","uppy-plugin","multipart"],homepage:"https://uppy.io",bugs:{url:"https://github.com/transloadit/uppy/issues"},repository:{type:"git",url:"git+https://github.com/transloadit/uppy.git"},files:["src","lib","dist","CHANGELOG.md"],exports:{".":"./lib/index.js","./package.json":"./package.json"},devDependencies:{"@aws-sdk/client-s3":"^3.362.0","@aws-sdk/client-sts":"^3.362.0","@aws-sdk/s3-request-presigner":"^3.362.0","@types/node":"^22.20.1","@uppy/core":"^6.0.0","@vitest/browser-playwright":"^4.1.6",playwright:"1.61.1",typescript:"^6.0.3",vitest:"^4.1.6","whatwg-fetch":"3.6.20"},peerDependencies:{"@uppy/core":"^6.0.0"}};var zu=1048576,Zi=5*zu,lr=1e4;class wo{#n;#e;#t;#o;#s=[];#r=[];#a=!1;#i;#l=!1;#d;constructor(e){if(e.file.data==null)throw Error(`File data is missing for file ${e.file.id}`);this.#t=e,this.#n=e.file.data,this.#o=new wn(e.uppy);let n=e.file.s3Multipart;if(n)this.#e=n.key,this.#i=n.uploadId,this.#l=!0;let r=e.file.data.size;if(this.#a=Boolean(n)||this.#t.shouldUseMultipart===!0&&r>Zi,this.#a){let i=this.#u(r);if(i=Math.max(i,Zi),Math.ceil(r/i)>lr)i=Math.ceil(r/lr);for(let a=0,l=0;a<r;a+=i,l++){let d=Math.min(a+i,r);this.#s.push({index:l,start:a,end:d,size:d-a})}}else this.#s=[{index:0,start:0,end:r,size:r}];this.#r=this.#s.map(()=>({uploaded:0}));let s=this.#t.file.id;this.#o.onFileRemove(s,()=>{this.abort(),this.#t.onAbort?.()}),this.#o.onCancelAll(s,()=>{this.abort(),this.#t.onAbort?.()}),this.#o.onFilePause(s,(i)=>{if(i)this.#c();else this.start()}),this.#o.onPauseAll(s,()=>{this.#c()}),this.#o.onResumeAll(s,()=>{this.start()}),this.#o.onRetry(s,()=>{this.start()}),this.#o.onRetryAll(s,()=>{this.start()})}#u(e){if(this.#t.getChunkSize)return this.#t.getChunkSize({size:e});return Math.ceil(e/lr)}async start(){this.#d?.abort(),this.#d=new AbortController;let e=this.#d.signal;try{let n=this.#i;if(this.#l&&n)await this.#p(n,e);else if(this.#l=!0,this.#a)await this.#y(e);else await this.#w(e)}catch(n){this.#m(n instanceof Error?n:Error(n))}}#c(){this.#d?.abort()}abort(e){if(this.#d?.abort(),this.#o.remove(),e?.abortInS3!==!1&&this.#i){if(!this.#e)throw Error("Missing S3 object key for aborting upload");this.#t.s3Client.abortMultipartUpload({key:this.#e,uploadId:this.#i}).catch((n)=>{this.#t.log?.(n,"warning")})}this.#e=void 0,this.#i=void 0,this.#l=!1}async#p(e,n){if(!this.#e)throw Error("Missing S3 object key for resuming upload");let r=await this.#t.s3Client.listParts({uploadId:e,key:this.#e,signal:n});for(let s of r){let i=s.partNumber-1;if(i>=0&&i<this.#r.length)this.#r[i].uploaded=this.#s[i].size,this.#r[i].etag=s.etag}this.#f(),await this.#g(n)}async#w(e){let{location:n,key:r}=await this.#t.s3Client.putObject({key:this.#t.key,data:this.#n,fileType:this.#t.file.type||"application/octet-stream",metadata:this.#t.metadata,onProgress:(s)=>{this.#r[0].uploaded=s,this.#f()},signal:e});this.#h({location:n,key:r})}async#y(e){let{uploadId:n,key:r}=await this.#t.s3Client.createMultipartUpload({key:this.#t.key,fileType:this.#t.file.type||"application/octet-stream",metadata:this.#t.metadata,signal:e});this.#e=r,this.#i=n,this.#t.uppy.setFileState(this.#t.file.id,{s3Multipart:{uploadId:n,key:r}}),await this.#g(e)}async#g(e){for(let i=0;i<this.#s.length;i++){if(e.throwIfAborted(),this.#r[i].etag)continue;let a=this.#s[i],l=i+1,d=this.#n.slice(a.start,a.end),c=i;if(this.#e==null)throw Error("Missing S3 object key for uploading part");let{etag:p}=await this.#t.s3Client.uploadPart({key:this.#e,uploadId:this.#i,data:d,partNumber:l,onProgress:(f)=>{this.#r[c].uploaded=f,this.#f()},signal:e});if(this.#r[i].uploaded=a.size,this.#r[i].etag=p,this.#f(),this.#t.onPartComplete)this.#t.onPartComplete({PartNumber:l,ETag:p})}let n=this.#r.flatMap((i,a)=>i.etag?[{partNumber:a+1,etag:i.etag}]:[]);if(this.#e==null)throw Error("Missing S3 object key for completing multipart upload");let{location:r,key:s}=await this.#t.s3Client.completeMultipartUpload({key:this.#e,uploadId:this.#i,parts:n,signal:e});this.#h({location:r,key:s,uploadId:this.#i})}#f(){if(!this.#t.onProgress)return;let e=this.#r.reduce((n,r)=>n+r.uploaded,0);this.#t.onProgress(e,this.#n.size)}#h(e){this.#o.remove(),this.#t.uppy.setFileState(this.#t.file.id,{s3Multipart:void 0}),this.#t.onSuccess?.(e)}#m(e){if(e.name==="AbortError")return;this.#o.remove(),this.#t.onError?.(e)}}var dr="AWS4-HMAC-SHA256",yo="aws4_request",ea="s3",ur="UNSIGNED-PAYLOAD",Dn="application/octet-stream",ta="application/xml",na=8388608,Ht="[s3mini] ",oa="[s3mini] endpoint must be a non-empty string",ra="[s3mini] endpoint must be a valid URL. Expected format: https://<host>[:port][/base-path]",sa="[s3mini] key must be a non-empty string",On="[s3mini] uploadId must be a non-empty string";class ia{requestAbortTimeout;constructor({requestAbortTimeout:e}){this.requestAbortTimeout=e}isOffline(){return typeof navigator<"u"&&navigator.onLine===!1}waitForOnline(e){return new Promise((n,r)=>{if(!this.isOffline()){n();return}if(typeof navigator>"u"||navigator.onLine===!0||navigator.onLine===void 0){n();return}if(e?.aborted){r(new DOMException("Upload aborted","AbortError"));return}let s=()=>{window.removeEventListener("online",i),e?.removeEventListener("abort",a)},i=()=>{s(),n()},a=()=>{s(),r(new DOMException("Upload aborted","AbortError"))};window.addEventListener("online",i),e?.addEventListener("abort",a)})}async xhr({url:e,method:n,data:r,onProgress:s,signal:i,contentType:a}){if(i?.aborted)throw new DOMException("Request aborted","AbortError");return Qn(e,{method:n,body:["GET","HEAD"].includes(n)?void 0:r,headers:a?{"Content-Type":a}:{},signal:i,timeout:this.requestAbortTimeout,retries:3,shouldRetry:(l)=>{if(this.isOffline())return!1;if(l.status>=400&&l.status<500&&l.status!==429)return!1;return!0},onUploadProgress:(l)=>{if(l.lengthComputable&&s)s(l.loaded,l.total)}})}async putObject(e){throw Error("Not implemented")}async createMultipartUpload(e){throw Error("Not implemented")}async uploadPart(e){throw Error("Not implemented")}async listParts(e){throw Error("Not implemented")}async completeMultipartUpload(e){throw Error("Not implemented")}async abortMultipartUpload(e){throw Error("Not implemented")}async deleteObject(e){throw Error("Not implemented")}}var xo=ia;var fr=(e)=>e.replace(/^("|")+|("|")+$/g,""),$n=(e)=>e?.replace(/^"+|"+$/g,"");function da(e){let n=new URL(e);return n.search="",n.hash="",n.href}var pr=new TextEncoder,aa="0123456789abcdef",mr=(e)=>{let n=new Uint8Array(e),r="";for(let s of n)r+=aa[s>>4]+aa[s&15];return r},ua=async(e)=>{let n=pr.encode(e);return await globalThis.crypto.subtle.digest("SHA-256",n)},Ln=async(e,n)=>{let r=await globalThis.crypto.subtle.importKey("raw",typeof e==="string"?pr.encode(e):e,{name:"HMAC",hash:"SHA-256"},!1,["sign"]),s=pr.encode(n);return await globalThis.crypto.subtle.sign("HMAC",r,s)},Lu={""":'"',"'":"'","<":"<",">":">","&":"&"},la=(e)=>e.replaceAll(/&(quot|apos|lt|gt|amp);/g,(n)=>Lu[n]??n),xn=(e)=>{let n=e.replace(/<\?xml[^?]*\?>\s*/,""),r=/<([A-Za-z_][\w\-.]*)[^>]*>([\s\S]*?)<\/\1>/gm,s={},i;while((i=r.exec(n))!==null){let a=i[1],l=i[2],d=l?xn(l):la(l?.trim()||"");if(!a)continue;let c=s[a];if(c===void 0)s[a]=d;else if(Array.isArray(c))c.push(d);else s[a]=[c,d]}return Object.keys(s).length>0?s:la(n.trim())},Uu=(e)=>`%${e.charCodeAt(0).toString(16).toUpperCase()}`,ju=(e)=>encodeURIComponent(e).replace(/[!'()*]/g,Uu),ca=(e)=>ju(e).replaceAll("%2F","/");class hr extends Error{code;constructor(e,n,r){super(e);this.name=new.target.name,this.code=n,this.cause=r}}class xr extends hr{}class br extends hr{status;serviceCode;body;constructor(e,n,r,s){super(e,r);this.status=n,this.serviceCode=r,this.body=s}}class ga extends xo{companionEndpoint;constructor({companionEndpoint:e,requestAbortTimeout:n}){super({requestAbortTimeout:n});this.companionEndpoint=e}async _fetch(e,n){let r=await fetch(`${this.companionEndpoint}/s3${e}`,n);if(!r.ok)throw Error(`Companion request failed: ${r.statusText}`);return r}async _request({url:e,method:n,data:r,onProgress:s,signal:i,contentType:a}){return await this.waitForOnline(i),this.xhr({url:e,method:n,data:r,onProgress:s,signal:i,contentType:a})}async putObject({key:e,data:n,fileType:r=Dn,metadata:s={},onProgress:i,signal:a}){let l=new URLSearchParams({filename:e,type:r,...Object.fromEntries(Object.entries(s).map(([g,h])=>[`metadata[${g}]`,String(h)]))}),d=await this._fetch(`/params?${l}`),{url:c,fields:p}=await d.json(),f=new FormData;Object.entries(p).forEach(([g,h])=>{f.set(g,h)}),f.set("file",n);let v=await this._request({url:c,method:"POST",data:f,onProgress:i,signal:a});return{location:`${c}${p.key}`,etag:$n(v.getResponseHeader("etag")),key:p.key}}async createMultipartUpload({key:e,fileType:n=Dn,metadata:r,signal:s}){if(typeof n!=="string")throw TypeError(`${Ht}fileType must be a string`);let i="POST",a=await this._fetch("/multipart",{method:i,body:JSON.stringify({filename:e,metadata:r,type:n}),headers:{"content-type":"application/json"},signal:s}),{key:l,uploadId:d}=await a.json();if(d==null)throw Error("No uploadId returned");if(l==null)throw Error("No key returned");return{uploadId:d,key:l}}async uploadPart({key:e,uploadId:n,data:r,partNumber:s,onProgress:i,signal:a}){let l=await this._fetch(`/multipart/${encodeURIComponent(n)}/${encodeURIComponent(s)}?${new URLSearchParams({key:e})}`,{method:"GET",signal:a}),{url:d}=await l.json(),c=await this._request({url:d,method:"PUT",data:r,onProgress:i,signal:a}),p=$n(c.getResponseHeader("etag"));if(p==null)throw Error(`${Ht}Missing ETag in uploadPart response headers`);return{etag:p}}async listParts({uploadId:e,key:n,signal:r}){if(!e)throw TypeError(On);return(await(await this._fetch(`/multipart/${encodeURIComponent(e)}?${new URLSearchParams({key:n})}`,{method:"GET",signal:r})).json()).map((a)=>({partNumber:parseInt(String(a.PartNumber),10),etag:String(a.ETag)}))}async completeMultipartUpload({key:e,uploadId:n,parts:r,signal:s}){let i=await this._fetch(`/multipart/${encodeURIComponent(n)}/complete?${new URLSearchParams({key:e})}`,{method:"POST",body:JSON.stringify({parts:r.map((c)=>({PartNumber:c.partNumber,ETag:c.etag}))}),headers:{"content-type":"application/json"},signal:s}),{location:a,bucket:l,key:d}=await i.json();return{location:a,bucket:l,key:d}}async abortMultipartUpload({key:e,uploadId:n,signal:r}){await this._fetch(`/multipart/${encodeURIComponent(n)}?${new URLSearchParams({key:e})}`,{method:"DELETE",signal:r})}}var ha=ga;var Vu=3600;function qu(e){let{accessKeyId:n,secretAccessKey:r,sessionToken:s,region:i,endpoint:a,service:l=ea}=e,d=null,c=null;async function p(f){let v=await Ln(`AWS4${r}`,f),g=await Ln(v,i),h=await Ln(g,l);return Ln(h,yo)}return async function(v){let{method:g,key:h,expiresIn:y=Vu}=v,x=new URL(a),b=h?h.replace(/^\/+/,""):"",N=b?ca(b):"",k=x.pathname;if(N)k=k.endsWith("/")?`${k}${N}`:`${k}/${N}`;let G=new Date,X=G.toISOString().slice(0,10).replace(/-/g,""),te=`${X}T${G.toISOString().slice(11,19).replace(/:/g,"")}Z`,fe=`${n}/${X}/${i}/${l}/${yo}`;if(x.searchParams.set("X-Amz-Algorithm",dr),x.searchParams.set("X-Amz-Content-Sha256",ur),x.searchParams.set("X-Amz-Credential",fe),x.searchParams.set("X-Amz-Date",te),x.searchParams.set("X-Amz-Expires",String(y)),x.searchParams.set("X-Amz-SignedHeaders","host"),s)x.searchParams.set("X-Amz-Security-Token",s);if("uploadId"in v)x.searchParams.set("uploadId",v.uploadId);if("partNumber"in v)x.searchParams.set("partNumber",String(v.partNumber));if(g==="POST"&&!("uploadId"in v))x.searchParams.set("uploads","");x.searchParams.sort();let ye=x.searchParams.toString().replace(/\+/g,"%20"),oe=`host:${x.host}`,R=[g,k,ye,oe,"","host",ur].join(`
|
|
7
|
-
`),be=`${X}/${i}/${l}/${yo}`,me=[dr,te,be,mr(await ua(R))].join(`
|
|
8
|
-
`);if(X!==d||!c)d=X,c=await p(X);let ie=mr(await Ln(c,me));return{url:`${x.origin}${k}?${ye}&X-Amz-Signature=${ie}`}}}var va=qu;class wa extends xo{endpoint;region;requestSizeInBytes;getCredentials;cachedCredentials;cachedCredentialsPromise;signRequest;constructor({region:e="auto",requestSizeInBytes:n=na,requestAbortTimeout:r,...s}){super({requestAbortTimeout:r});if("signRequest"in s){let{signRequest:i}=s;if(!i)throw TypeError("Either signRequest or getCredentials must be provided");if(i&&typeof i!=="function")throw TypeError("signRequest must be a function");this.signRequest=i}else if("getCredentials"in s){let{getCredentials:i,endpoint:a}=s;if(typeof a!=="string"||a.trim().length===0)throw TypeError(oa);if(i&&typeof i!=="function")throw TypeError("getCredentials must be a function");this.endpoint=new URL(this._ensureValidUrl(a)),this.getCredentials=i,this.signRequest=this._createCredentialBasedSigner()}else throw TypeError("Either signRequest or getCredentials must be provided");this.region=e,this.requestSizeInBytes=n}_createCredentialBasedSigner(){return async(e)=>{let n=await this._getCachedCredentials();if(this.endpoint==null)throw Error("Endpoint is required for credential-based signing");return va({accessKeyId:n.credentials.accessKeyId,secretAccessKey:n.credentials.secretAccessKey,sessionToken:n.credentials.sessionToken,region:n.region||this.region,endpoint:this.endpoint.toString()})(e)}}async _getCachedCredentials(){if(this.cachedCredentials!=null)return this.cachedCredentials;if(this.cachedCredentialsPromise==null)this.cachedCredentialsPromise=(async()=>{try{let e=await this.getCredentials({});return this.cachedCredentials=e,e}finally{this.cachedCredentialsPromise=void 0}})();return this.cachedCredentialsPromise}_ensureValidUrl(e){let n=/^(https?:)?\/\//i.test(e)?e:`https://${e}`;try{new URL(n);let r=n.length;while(r>0&&n[r-1]==="/")r--;return r===n.length?n:n.substring(0,r)}catch{let r=`${ra} But provided: "${e}"`;throw TypeError(r)}}_checkKey(e){if(typeof e!=="string"||e.trim().length===0)throw TypeError(sa)}_validateUploadPartParams(e,n,r){if(this._checkKey(e),typeof n!=="string"||n.trim().length===0)throw TypeError(On);if(!Number.isInteger(r)||r<=0)throw TypeError(`${Ht}partNumber must be a positive integer`)}async putObject({key:e,data:n,fileType:r=Dn,onProgress:s,signal:i}){this._checkKey(e);let{xhr:a,url:l}=await this.request({request:{method:"PUT",key:e},data:n,onProgress:s,signal:i,contentType:r});return{location:da(l),etag:$n(a.getResponseHeader("etag")),key:e}}async createMultipartUpload({key:e,fileType:n=Dn,signal:r}){if(this._checkKey(e),typeof n!=="string")throw TypeError(`${Ht}fileType must be a string`);let{xhr:s}=await this.request({request:{method:"POST",key:e},contentType:n,signal:r}),i=xn(s.responseText);if(i&&typeof i==="object"){let a=i.initiateMultipartUploadResult||i.InitiateMultipartUploadResult;if(a&&typeof a==="object"){let l=a.uploadId||a.UploadId;if(l&&typeof l==="string")return{uploadId:l,key:e}}}throw Error(`${Ht}Failed to create multipart upload: ${JSON.stringify(i)}`)}async uploadPart({key:e,uploadId:n,data:r,partNumber:s,onProgress:i,signal:a}){this._validateUploadPartParams(e,n,s);let{xhr:l}=await this.request({request:{method:"PUT",key:e,uploadId:n,partNumber:s},data:r,onProgress:i,signal:a}),d=$n(l.getResponseHeader("etag"));if(d==null)throw Error(`${Ht}Missing ETag in uploadPart response headers`);return{etag:d}}async request({request:e,data:n,onProgress:r,signal:s,contentType:i,shouldRetryCredentials:a=!0}){if(await this.waitForOnline(s),s?.aborted)throw new DOMException("Request aborted","AbortError");try{let{url:l}=await this.signRequest(e);return{xhr:await this.xhr({url:l,method:e.method,data:n,onProgress:r,signal:s,contentType:i}),url:l}}catch(l){if(l instanceof Error&&"request"in l&&l.request instanceof XMLHttpRequest){let d=l.request;if(d.status===0)throw new xr("Network error during S3 request","NETWORK",l);let c=this._parseErrorXml((f)=>d.getResponseHeader(f),d.responseText),p=d.getResponseHeader("x-amz-error-code")??c.svcCode;if(a&&this.getCredentials!=null&&p!=null&&["ExpiredToken","InvalidAccessKeyId"].includes(p))return this.clearCachedCredentials(),this.request({request:e,data:n,onProgress:r,signal:s,contentType:i,shouldRetryCredentials:!1});throw new br(`S3 returned ${d.status}${p?` – ${p}`:""}`,d.status,p,d.responseText)}throw l}}async listParts({uploadId:e,key:n,signal:r}){if(this._checkKey(n),!e)throw TypeError(On);let{xhr:s}=await this.request({request:{method:"GET",key:n,uploadId:e},signal:r}),i=xn(s.responseText),a=i.listPartsResult||i.ListPartsResult||i;if(a&&typeof a==="object"){let l=a.Part||a.part||[];return(Array.isArray(l)?l:[l]).filter((c)=>c!=null&&typeof c==="object"&&("PartNumber"in c)&&("ETag"in c)).map((c)=>({partNumber:parseInt(String(c.PartNumber),10),etag:fr(String(c.ETag))}))}return[]}async completeMultipartUpload({key:e,uploadId:n,parts:r,signal:s}){let i=this._buildCompleteMultipartUploadXml(r),{xhr:a}=await this.request({request:{method:"POST",key:e,uploadId:n},contentType:ta,data:i,signal:s}),l=xn(a.responseText);if(l&&typeof l==="object"){let d=l.completeMultipartUploadResult||l.CompleteMultipartUploadResult||l;if(d&&typeof d==="object"){let c=d,p=c.Location||c.location,f=c.Bucket||c.bucket,v=c.Key||c.key,g=c.ETag||c.eTag||c.etag;if(!p||!v)throw Error(`${Ht}CompleteMultipartUpload response missing Location or Key: ${JSON.stringify(c)}`);let h=g?fr(g):void 0;return{location:p,bucket:f,key:v,etag:h}}}throw Error(`${Ht}Failed to complete multipart upload: ${JSON.stringify(l)}`)}async abortMultipartUpload({key:e,uploadId:n,signal:r}){if(this._checkKey(e),!n)throw TypeError(On);let{xhr:s}=await this.request({request:{method:"DELETE",key:e,uploadId:n},signal:r}),i=xn(s.responseText);if(i&&"error"in i&&typeof i.error==="object"&&i.error!==null&&"message"in i.error)throw Error(`${Ht}Failed to abort multipart upload: ${String(i.error.message)}`)}_buildCompleteMultipartUploadXml(e){let n="<CompleteMultipartUpload>";for(let r of e)n+=`<Part><PartNumber>${r.partNumber}</PartNumber><ETag>${r.etag}</ETag></Part>`;return n+="</CompleteMultipartUpload>",n}async deleteObject({key:e,signal:n}){let{xhr:r}=await this.request({request:{method:"DELETE",key:e},signal:n});if(r.status!==200&&r.status!==204)throw Error(`${Ht}Failed to delete object. HTTP status: ${r.status}`)}clearCachedCredentials(){this.cachedCredentials=void 0,this.cachedCredentialsPromise=void 0}_parseErrorXml(e,n){if(e("content-type")!=="application/xml")return{};let r=xn(n);if(!r||typeof r!=="object"||!("Error"in r)||!r.Error||typeof r.Error!=="object")return{};let s=r.Error;return{svcCode:"Code"in s&&typeof s.Code==="string"?s.Code:void 0,errorMessage:"Message"in s&&typeof s.Message==="string"?s.Message:void 0}}}var Ir=wa;var ya=1048576,Bu={shouldUseMultipart:(e)=>(e.size||0)>100*ya,allowedMetaFields:!0,limit:6};class bo extends vn{static VERSION=Ji.version;#n;#e;#t={};constructor(e,n){super(e,{...Bu,...n});this.type="uploader",this.id=this.opts.id||"AwsS3"}install(){this.#o(!0),this.#r(),this.#e=new An({concurrency:this.opts.limit}),this.uppy.addUploader(this.#a),this.uppy.on("cancel-all",this.#s)}uninstall(){this.#o(!1),this.uppy.removeUploader(this.#a),this.uppy.off("cancel-all",this.#s),this.#e.clear();for(let e of Object.keys(this.#t)){let n=this.#t[e];if(n)n.abort()}}#o=(e)=>{let{capabilities:n}=this.uppy.getState();this.uppy.setState({capabilities:{...n,resumableUploads:e}})};#s=()=>{this.#o(!0),this.#e.clear()};#r(){if("companionEndpoint"in this.opts){if(typeof this.opts.companionEndpoint!=="string")throw TypeError("companionEndpoint must be a string");this.#n=new ha({companionEndpoint:this.opts.companionEndpoint})}else if("getCredentials"in this.opts){if(typeof this.opts.s3Endpoint!=="string")throw TypeError("s3Endpoint must be a string");if(typeof this.opts.getCredentials!=="function")throw TypeError("getCredentials must be a function");if(this.opts.region!=null&&typeof this.opts.region!=="string")throw TypeError("region must be a string");this.#n=new Ir({endpoint:this.opts.s3Endpoint,getCredentials:this.opts.getCredentials,region:this.opts.region})}else if("signRequest"in this.opts){if(typeof this.opts.signRequest!=="function")throw TypeError("signRequest must be a function");this.#n=new Ir({signRequest:this.opts.signRequest})}else throw TypeError("One of options `companionEndpoint`, `signRequest`, or `getCredentials` is required")}#a=async(e)=>{if(e.length===0)return;let n=this.uppy.getFilesByIds(e),r=Yn(n),s=Jn(r);this.uppy.emit("upload-start",s);let i=r.map((a)=>{if(a.isRemote)return this.#p(a);return this.#e.add(async()=>{let l=this.uppy.getFile(a.id);if(!l)return;return this.#i(l)})});await Promise.allSettled(i),this.#o(!0)};async#i(e){try{return await new Promise((n,r)=>{let s=new wo({uppy:this.uppy,s3Client:this.#n,file:e,metadata:this.#u(e),key:this.#d(e),shouldUseMultipart:this.#l(e),getChunkSize:this.opts.getChunkSize,log:(...i)=>this.uppy.log(...i),onProgress:(i,a)=>{this.uppy.emit("upload-progress",e,{uploadStarted:e.progress.uploadStarted??Date.now(),bytesUploaded:i,bytesTotal:a})},onPartComplete:(i)=>{this.uppy.emit("s3-multipart:part-uploaded",e,i)},onSuccess:(i)=>{this.uppy.emit("upload-success",e,{status:200,body:{location:i.location,key:i.key},uploadURL:i.location}),n()},onError:(i)=>{this.uppy.emit("upload-error",e,i),r(i)},onAbort:()=>{n()}});this.#t[e.id]=s,s.start()})}finally{delete this.#t[e.id]}}#l(e){let{shouldUseMultipart:n}=this.opts;if(typeof n==="function")return n(e);if(typeof n==="boolean")return n;return(e.size??0)>100*ya}#d(e){if("companionEndpoint"in this.opts)return e.name;return this.opts.generateObjectKey?.(e)??`${crypto.randomUUID()}-${e.name}`}#u(e){let n=mn(this.opts.allowedMetaFields,e.meta);return Object.fromEntries(n.map((r)=>[r,e.meta[r]]))}#c(e){return{...e.remote.body,protocol:"s3-multipart",size:e.data.size,metadata:this.#u(e)}}async#p(e){this.#o(!1);let n=new AbortController,r=(s)=>{if(s.id===e.id)n.abort()};this.uppy.on("file-removed",r);try{await this.uppy.getRequestClientForFile(e).uploadRemoteFile(e,this.#c(e),{signal:n.signal,getQueue:()=>this.#e})}finally{this.uppy.off("file-removed",r)}}}var xa={name:"@uppy/xhr-upload",description:"Plain and simple classic HTML multipart form uploads with Uppy, as well as uploads using the HTTP PUT method.",version:"6.0.0",license:"MIT",type:"module",sideEffects:!1,scripts:{build:"tsc --build tsconfig.build.json",typecheck:"tsc --build",test:"vitest run --silent='passed-only'"},keywords:["file uploader","xhr","xhr upload","XMLHttpRequest","ajax","fetch","uppy","uppy-plugin"],homepage:"https://uppy.io",bugs:{url:"https://github.com/transloadit/uppy/issues"},repository:{type:"git",url:"git+https://github.com/transloadit/uppy.git"},files:["src","lib","dist","CHANGELOG.md"],exports:{".":"./lib/index.js","./package.json":"./package.json"},devDependencies:{"@uppy/core":"^6.0.0","@uppy/dashboard":"^6.0.0","@vitest/browser-playwright":"^4.1.6",msw:"^2.10.4",playwright:"1.61.1",typescript:"^6.0.3",vitest:"^4.1.6"},peerDependencies:{"@uppy/core":"^6.0.0"}};var ba={strings:{uploadStalled:"Upload has not made any progress for %{seconds} seconds. You may want to retry it."}};function Gu(e,n){let r=n;if(!r)r=Error("Upload error");if(typeof r==="string")r=Error(r);if(!(r instanceof Error))r=Object.assign(Error("Upload error"),{data:r});if(Go(e))return r=new Mn(r,e),r;return r.request=e,r}function Sa(e){return e.data.slice(0,e.data.size,e.meta.type)}var Wu={formData:!0,fieldName:"file",method:"post",allowedMetaFields:!0,bundle:!1,headers:{},timeout:30000,limit:5,withCredentials:!1,responseType:""};class So extends vn{static VERSION=xa.version;#n;#e;uploaderEvents;constructor(e,n){super(e,{...Wu,fieldName:n.bundle?"files[]":"file",...n});if(this.type="uploader",this.id=this.opts.id||"XHRUpload",this.defaultLocale=ba,this.i18nInit(),this.#e=new An({concurrency:this.opts.limit}),this.opts.bundle&&!this.opts.formData)throw Error("`opts.formData` must be true when `opts.bundle` is enabled.");if(this.opts.bundle&&typeof this.opts.headers==="function")throw Error("`opts.headers` can not be a function when the `bundle: true` option is set.");if(n?.allowedMetaFields===void 0&&"metaFields"in this.opts)throw Error("The `metaFields` option has been renamed to `allowedMetaFields`.");this.uploaderEvents=Object.create(null),this.#n=(r)=>async(s,i)=>{try{let a=await Qn(s,{...i,onBeforeRequest:(c,p)=>this.opts.onBeforeRequest?.(c,p,r),shouldRetry:this.opts.shouldRetry,onAfterResponse:this.opts.onAfterResponse,onTimeout:(c)=>{let p=Math.ceil(c/1000),f=Error(this.i18n("uploadStalled",{seconds:p}));this.uppy.emit("upload-stalled",f,r)},onUploadProgress:(c)=>{if(c.lengthComputable)for(let{id:p}of r){let f=this.uppy.getFile(p);if(f!=null)this.uppy.emit("upload-progress",f,{uploadStarted:f.progress.uploadStarted??0,bytesUploaded:c.loaded/c.total*f.size,bytesTotal:f.size})}}}),l=await this.opts.getResponseData?.(a);if(a.responseType==="json")l??=a.response;else try{l??=JSON.parse(a.responseText)}catch(c){throw Error("@uppy/xhr-upload expects a JSON response (with a `url` property). To parse non-JSON responses, use `getResponseData` to turn your response into JSON.",{cause:c})}let d=typeof l?.url==="string"?l.url:void 0;for(let{id:c}of r)this.uppy.emit("upload-success",this.uppy.getFile(c),{status:a.status,body:l,uploadURL:d});return a}catch(a){if(a.name==="AbortError")return;let l=a.request;for(let d of r)this.uppy.emit("upload-error",this.uppy.getFile(d.id),Gu(l,a),l);throw a}}}getOptions(e){let n=this.uppy.getState().xhrUpload,{headers:r}=this.opts,s={...this.opts,...n||{},...e.xhrUpload||{},headers:{}};if(typeof r==="function")s.headers=r(e);else Object.assign(s.headers,this.opts.headers);if(n)Object.assign(s.headers,n.headers);if(e.xhrUpload)Object.assign(s.headers,e.xhrUpload.headers);return s}addMetadata(e,n,r){mn(r.allowedMetaFields,n).forEach((i)=>{let a=n[i];if(Array.isArray(a))a.forEach((l)=>{e.append(i,l)});else e.append(i,a)})}createFormDataUpload(e,n){let r=new FormData;this.addMetadata(r,e.meta,n);let s=Sa(e);if(e.name)r.append(n.fieldName,s,e.meta.name);else r.append(n.fieldName,s);return r}createBundledUpload(e,n){let r=new FormData,{meta:s}=this.uppy.getState();return this.addMetadata(r,s,n),e.forEach((i)=>{let a=this.getOptions(i),l=Sa(i);if(i.name)r.append(a.fieldName,l,i.name);else r.append(a.fieldName,l)}),r}async#t(e){let n=new wn(this.uppy),r=new AbortController;n.onFileRemove(e.id,()=>r.abort()),n.onCancelAll(e.id,()=>r.abort());try{await this.#e.add(async(s)=>{let i=this.getOptions(e),a=this.#n([e]),l=i.formData?this.createFormDataUpload(e,i):e.data,d=typeof i.endpoint==="string"?i.endpoint:await i.endpoint(e);return a(d,{...i,body:l,signal:AbortSignal.any([s,r.signal])})})}catch(s){if(s.name==="AbortError")return;throw s}finally{n.remove()}}async#o(e){let n=new AbortController;function r(){n.abort()}this.uppy.once("cancel-all",r);try{await this.#e.add(async(s)=>{let i=this.uppy.getState().xhrUpload??{},a=this.#n(e),l=this.createBundledUpload(e,{...this.opts,...i}),d=typeof this.opts.endpoint==="string"?this.opts.endpoint:await this.opts.endpoint(e);return a(d,{...this.opts,body:l,signal:AbortSignal.any([s,n.signal])})})}catch(s){if(s.name==="AbortError")return;throw s}finally{this.uppy.off("cancel-all",r)}}#s(e){let n=this.getOptions(e),r=mn(n.allowedMetaFields,e.meta);return{...e.remote?.body,protocol:"multipart",endpoint:n.endpoint,size:e.data.size,fieldname:n.fieldName,metadata:Object.fromEntries(r.map((s)=>[s,e.meta[s]])),httpMethod:n.method,useFormData:n.formData,headers:n.headers}}async#r(e){await Promise.allSettled(e.map((n)=>{if(n.isRemote){let r=()=>this.#e,s=new AbortController,i=(a)=>{if(a.id===n.id)s.abort()};return this.uppy.on("file-removed",i),this.uppy.getRequestClientForFile(n).uploadRemoteFile(n,this.#s(n),{signal:s.signal,getQueue:r}).finally(()=>{this.uppy.off("file-removed",i)})}return this.#t(n)}))}#a=async(e)=>{if(e.length===0){this.uppy.log("[XHRUpload] No files to upload!");return}if(this.opts.limit===0)this.uppy.log("[XHRUpload] When uploading multiple files at once, consider setting the `limit` option (to `10` for example), to limit the number of concurrent uploads, which helps prevent memory and network issues: https://uppy.io/docs/xhr-upload/#limit-0","warning");this.uppy.log("[XHRUpload] Uploading...");let n=this.uppy.getFilesByIds(e),r=Yn(n),s=Jn(r);if(this.uppy.emit("upload-start",s),this.opts.bundle){if(r.some((a)=>a.isRemote))throw Error("Can’t upload remote files when the `bundle: true` option is set");if(typeof this.opts.headers==="function")throw TypeError("`headers` may not be a function when the `bundle: true` option is set");await this.#o(r)}else await this.#r(r)};install(){if(this.opts.bundle){let{capabilities:e}=this.uppy.getState();this.uppy.setState({capabilities:{...e,individualCancellation:!1}})}this.uppy.addUploader(this.#a)}uninstall(){if(this.opts.bundle){let{capabilities:e}=this.uppy.getState();this.uppy.setState({capabilities:{...e,individualCancellation:!0}})}this.uppy.removeUploader(this.#a)}}var Wt=null,Un=0;async function Ca(){if(Un++,Un>1&&Wt)return;if(typeof navigator<"u"&&"wakeLock"in navigator)try{Wt=await navigator.wakeLock.request("screen"),Wt.addEventListener("release",()=>{Wt=null})}catch(e){console.warn("Screen Wake Lock request failed:",e)}}async function Ra(){if(Un=Math.max(0,Un-1),Un===0&&Wt)try{await Wt.release()}catch(e){console.warn("Screen Wake Lock release failed:",e)}finally{Wt=null}}if(typeof document<"u")document.addEventListener("visibilitychange",async()=>{if(document.visibilityState==="visible"&&Un>0&&!Wt)try{if(typeof navigator<"u"&&"wakeLock"in navigator)Wt=await navigator.wakeLock.request("screen"),Wt.addEventListener("release",()=>{Wt=null})}catch(e){console.warn("Screen Wake Lock re-acquisition failed:",e)}});var Kt=new Map;if(typeof window<"u")window.addEventListener("beforeunload",(e)=>{if(bn.getState().uploading>0||Kt.size>0)e.preventDefault(),e.returnValue=""}),window.addEventListener("pagehide",()=>{if(Kt.size===0)return;for(let e of Kt.values()){let n=`/api/teams/${e.teamId}/upload/tasks/${e.taskId}/abort`,r=JSON.stringify({fileId:e.fileId,uploadId:e.uploadId,key:e.key});try{if("sendBeacon"in navigator){let s=new Blob([r],{type:"application/json"});navigator.sendBeacon(n,s)}else fetch(n,{method:"POST",headers:{"Content-Type":"application/json"},body:r,keepalive:!0,credentials:"include"})}catch(s){console.warn("Failed to send abort beacon:",s)}}Kt.clear()});function Fa(e){if(typeof navigator<"u"&&!navigator.onLine)return!0;if(!e)return!1;let n=e;if(n.isNetworkError===!0)return!0;if(n.name==="S3NetworkError"||n.name==="NetworkError")return!0;let r=(typeof n.message==="string"?n.message:"").toLowerCase();if(r.includes("network error")||r.includes("failed to fetch")||r.includes("networkerror")||r.includes("load failed")||r.includes("err_internet_disconnected"))return!0;let s=n.request;if(s&&s.status===0)return!0;return!1}async function cu({files:e,taskId:n,teamId:r,storageBackend:s,createdAssets:i=[],presignedUrls:a=[],onFileFinished:l}){if(!e.length)return;await Ca();let d=bn.getState(),{increment:c,decrement:p,updateFileProgress:f,completeFile:v,failFile:g}=d,h=new Map;for(let R of i)h.set(R.tempId,{assetId:R.assetId,key:R.key});let y=new Map;for(let R of a)if(R.id)y.set(R.id,{url:R.url||"",fileId:R.fileId||""});let x=new Map,b=new vo({autoProceed:!0,allowMultipleUploadBatches:!1});if(s==="s3")b.use(bo,{shouldUseMultipart:(R)=>(R.size||0)>104857600,getChunkSize:({size:R})=>{if(R>5368709120)return 33554432;if(R>1073741824)return 16777216;return 8388608},generateObjectKey:(R)=>R.meta.key||R.name,signRequest:async(R)=>{let be="uploadId"in R?R.uploadId:void 0,me="partNumber"in R?R.partNumber:void 0,ie=x.get(R.key);if(ie&&be){let Qe=Kt.get(ie);if(Qe)Qe.uploadId=be}let xe=await fetch(`/api/teams/${r}/upload/sign`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:R.key,method:R.method,uploadId:be,partNumber:me,fileId:ie}),credentials:"include"});if(!xe.ok)throw Error(`Failed to sign request: ${xe.statusText}`);return{url:(await xe.json()).url}}});else b.use(So,{endpoint:(R)=>(Array.isArray(R)?R[0]:R)?.meta?.url||"",method:"PUT",formData:!1,headers:(R)=>({"Content-Type":R.type||"application/octet-stream"}),getResponseData:(R)=>{try{return R.responseText?JSON.parse(R.responseText):{}}catch{return{}}},shouldRetry:()=>!1,limit:5});let N=new Map,k=new Map,G=3,X=null,te=()=>{if(typeof navigator<"u"&&!navigator.onLine){console.log("[Uploader] Delaying retry because browser is currently offline.");return}console.log("[Uploader] Calling uppy.retryAll() to resume paused/failed uploads..."),b.retryAll().catch((R)=>{console.error("[Uploader] Error during retryAll:",R)})},fe=(R=2000)=>{if(X)return;X=setTimeout(()=>{X=null,te()},R)},ye=()=>{let R=typeof navigator<"u"?navigator.onLine:!0;console.log(`[Uploader] Network 'online' event received! navigator.onLine = ${R}`),te()},oe=()=>{let R=typeof navigator<"u"?navigator.onLine:!1;console.warn(`[Uploader] Network 'offline' event received! navigator.onLine = ${R}`)};if(b.on("back-online",ye),typeof window<"u")window.addEventListener("online",ye),window.addEventListener("offline",oe);b.on("upload-progress",(R,be)=>{if(!R)return;let me=R.meta.fileId;if(me&&be.bytesUploaded!=null)f(n,me,be.bytesUploaded)}),b.on("upload-success",(R)=>{if(!R)return;let be=R.meta.fileId;Kt.delete(be);let me=(async()=>{try{let ie=await A.api.teams[":teamId"].upload.tasks[":taskId"].$patch({param:{teamId:r,taskId:n},json:{fileId:be}});if(!ie.ok)throw Error(`Failed to confirm upload: ${ie.statusText}`);v(n,be),p(),await l?.(be)}catch(ie){throw console.error("Failed to confirm upload:",ie),g(n,be),p(),M.error(`Failed to confirm upload: ${R.name}`),await l?.(be),ie}})();N.set(be,me)});let ze=(R,be)=>{let me=R.meta.fileId;if(!Kt.has(me))return;Kt.delete(me),g(n,me),p(),M.error(`Failed to upload file: ${R.name}`);let ie=(async()=>{try{await A.api.teams[":teamId"].upload.tasks[":taskId"].$patch({param:{teamId:r,taskId:n},json:{fileId:me,errorMessage:be?.message||"Upload failed"}})}catch(xe){console.error("Failed to report upload failure:",xe)}await l?.(me)})();N.set(me,ie)};b.on("upload-error",(R,be)=>{if(!R)return;if(console.error(`[Uploader] upload-error for ${R.name}:`,be),Fa(be)){if(console.warn(`[Uploader] Network error detected for ${R.name}. Keeping upload active to resume when connection is restored.`),typeof navigator<"u"&&navigator.onLine){let me=R.meta.fileId,ie=(k.get(me)||0)+1;if(k.set(me,ie),ie>G){console.error(`[Uploader] Exceeded max online retries (${G}) for ${R.name}. Failing permanently.`),ze(R,be);return}console.log(`[Uploader] Scheduling retry for ${R.name} (attempt ${ie}/${G})...`),fe(2000)}return}ze(R,be)});for(let R of e){let be=h.get(R.id),me=y.get(R.id),ie=be?.assetId||me?.fileId||R.id,xe=be?.key,Ge=me?.url;if(xe)x.set(xe,ie);Kt.set(ie,{teamId:r,taskId:n,fileId:ie,key:xe}),c(),b.addFile({name:R.file.name,type:R.file.type,data:R.file,meta:{fileId:ie,key:xe,url:Ge}})}try{await new Promise((R)=>{let be=(me)=>{if(Kt.size===0){R();return}let ie=me?.failed||[];if(typeof navigator<"u"&&!navigator.onLine||ie.some((Qe)=>Fa(Qe?.error))){console.log("[Uploader] Batch completed with network issues; waiting for reconnection to resume...");return}for(let Qe of ie)ze(Qe,Qe?.error);if(Kt.size===0)R()};b.on("complete",be),b.on("cancel-all",()=>{R()})}),await Promise.allSettled(Array.from(N.values()))}finally{if(X)clearTimeout(X);if(typeof window<"u")window.removeEventListener("online",ye),window.removeEventListener("offline",oe);await Ra(),b.destroy()}}var Ku=[["path",{d:"M12.83 2.18a2 2 0 0 0-1.66 0L2.6 6.08a1 1 0 0 0 0 1.83l8.58 3.91a2 2 0 0 0 1.66 0l8.58-3.9a1 1 0 0 0 0-1.83z",key:"zw3jo"}],["path",{d:"M2 12a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 12",key:"1wduqc"}],["path",{d:"M2 17a1 1 0 0 0 .58.91l8.6 3.91a2 2 0 0 0 1.65 0l8.58-3.9A1 1 0 0 0 22 17",key:"kqbvx6"}]],Co=I("layers",Ku);var Qu=[["path",{d:"m3 16 4 4 4-4",key:"1co6wj"}],["path",{d:"M7 20V4",key:"1yoxec"}],["path",{d:"m21 8-4-4-4 4",key:"1c9v7m"}],["path",{d:"M17 4v16",key:"7dpous"}]],au=I("arrow-down-up",Qu);var Yu=[["path",{d:"M12 10v6",key:"1bos4e"}],["path",{d:"M9 13h6",key:"1uhe8q"}],["path",{d:"M20 20a2 2 0 0 0 2-2V8a2 2 0 0 0-2-2h-7.9a2 2 0 0 1-1.69-.9L9.6 3.9A2 2 0 0 0 7.93 3H4a2 2 0 0 0-2 2v13a2 2 0 0 0 2 2Z",key:"1kt360"}]],lu=I("folder-plus",Yu);var Ju=[["path",{d:"M2.992 16.342a2 2 0 0 1 .094 1.167l-1.065 3.29a1 1 0 0 0 1.236 1.168l3.413-.998a2 2 0 0 1 1.099.092 10 10 0 1 0-4.777-4.719",key:"1sd12s"}],["path",{d:"M8 12h.01",key:"czm47f"}],["path",{d:"M12 12h.01",key:"1mp3jc"}],["path",{d:"M16 12h.01",key:"1l6xoz"}]],Ia=I("message-circle-more",Ju);S();S();S();var Zu=Object.defineProperty,Gt=(e,n)=>Zu(e,"name",{value:n,configurable:!0}),Er="ContextMenu",[ec,Yg]=gt(Er,[bl]),Zt=bl(),[tc,Ea]=ec(Er),nc=Gt((e)=>{let{__scopeContextMenu:n,children:r,onOpenChange:s,open:i,dir:a,modal:l=!0}=e,d=_(!1);if(hi){let v=_(!1);m(()=>{if(i===!0&&!d.current&&!v.current)v.current=!0,console.warn("ContextMenu: The `open` prop has been set to `true` before the user has interacted with the trigger, so its position is indeterminate. This is likely unintended and will result in the menu being anchored to the top-left corner of the viewport.")},[i])}let[c,p]=Lt({prop:i,defaultProp:!1,onChange:s,caller:Er}),f=Zt(n);return t(tc,{scope:n,open:c,onOpenChange:p,modal:l,hasInteractedRef:d,children:t(Xu,{...f,dir:a,open:c,onOpenChange:p,modal:l,children:r})})},"ContextMenu"),oc="ContextMenuTrigger",rc=F(Gt(function(n,r){let{__scopeContextMenu:s,disabled:i=!1,...a}=n,l=Ea(oc,s),d=Zt(s),[c,p]=u({x:0,y:0}),f=D(()=>({current:{getBoundingClientRect:Gt(()=>DOMRect.fromRect({width:0,height:0,...c}),"getBoundingClientRect")}}),[c]),v=_(0),g=P(()=>window.clearTimeout(v.current),[]),h=Gt((y)=>{l.hasInteractedRef.current=!0,p({x:y.clientX,y:y.clientY}),l.onOpenChange(!0)},"handleOpen");return m(()=>g,[g]),m(()=>void(i&&g()),[i,g]),o(L,{children:[t(ed,{...d,virtualRef:f}),t(se.span,{"data-state":l.open?"open":"closed","data-disabled":i?"":void 0,...a,ref:r,style:{WebkitTouchCallout:"none",...n.style},onContextMenu:i?n.onContextMenu:Y(n.onContextMenu,(y)=>{g(),h(y),y.preventDefault()}),onPointerDown:i?n.onPointerDown:Y(n.onPointerDown,no((y)=>{if(g(),l.open)l.onOpenChange(!1);v.current=window.setTimeout(()=>h(y),700)})),onPointerMove:i?n.onPointerMove:Y(n.onPointerMove,no(g)),onPointerCancel:i?n.onPointerCancel:Y(n.onPointerCancel,no(g)),onPointerUp:i?n.onPointerUp:Y(n.onPointerUp,no(g))})]})},"ContextMenuTrigger")),sc=Gt((e)=>{let{__scopeContextMenu:n,...r}=e,s=Zt(n);return t(td,{...s,...r})},"ContextMenuPortal"),ic="ContextMenuContent",ac=F(Gt(function(n,r){let{__scopeContextMenu:s,...i}=n,a=Ea(ic,s),l=Zt(s),d=_(!1);return t(rd,{...l,...i,ref:r,side:"right",sideOffset:2,align:"start",onCloseAutoFocus:(c)=>{if(n.onCloseAutoFocus?.(c),!c.defaultPrevented&&d.current)c.preventDefault();d.current=!1},onInteractOutside:(c)=>{if(n.onInteractOutside?.(c),!c.defaultPrevented&&!a.modal)d.current=!0},style:{...n.style,...{"--radix-context-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-context-menu-content-available-width":"var(--radix-popper-available-width)","--radix-context-menu-content-available-height":"var(--radix-popper-available-height)","--radix-context-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-context-menu-trigger-height":"var(--radix-popper-anchor-height)"}}})},"ContextMenuContent"));var lc=F(Gt(function(n,r){let{__scopeContextMenu:s,...i}=n,a=Zt(s);return t(nd,{...a,...i,ref:r})},"ContextMenuItem"));var dc=F(Gt(function(n,r){let{__scopeContextMenu:s,...i}=n,a=Zt(s);return t(od,{...a,...i,ref:r})},"ContextMenuSeparator"));var uc="ContextMenuSub",cc=Gt((e)=>{let{__scopeContextMenu:n,children:r,onOpenChange:s,open:i,defaultOpen:a}=e,l=Zt(n),[d,c]=Lt({prop:i,defaultProp:a??!1,onChange:s,caller:uc});return t(sd,{...l,open:d,onOpenChange:c,children:r})},"ContextMenuSub"),pc=F(Gt(function(n,r){let{__scopeContextMenu:s,...i}=n,a=Zt(s);return t(id,{...a,...i,ref:r})},"ContextMenuSubTrigger")),fc=F(Gt(function(n,r){let{__scopeContextMenu:s,...i}=n,a=Zt(s);return t(ad,{...a,...i,ref:r,style:{...n.style,...{"--radix-context-menu-content-transform-origin":"var(--radix-popper-transform-origin)","--radix-context-menu-content-available-width":"var(--radix-popper-available-width)","--radix-context-menu-content-available-height":"var(--radix-popper-available-height)","--radix-context-menu-trigger-width":"var(--radix-popper-anchor-width)","--radix-context-menu-trigger-height":"var(--radix-popper-anchor-height)"}}})},"ContextMenuSubContent"));function no(e){return(n)=>n.pointerType!=="mouse"?e(n):void 0}Gt(no,"whenTouchOrPen");var mc=nc,gc=rc,_a=sc,hc=ac;var vc=lc;var wc=dc;var yc=cc,xc=pc,bc=fc;function Ta({isOpen:e,onClose:n,onConfirm:r,mode:s,teamId:i,currentProjectId:a}){let[l,d]=u(a),[c,p]=u(null),[f,v]=u(!1),{data:g,isLoading:h}=Z({queryKey:["projects",i],queryFn:async()=>{let k=await A.api.teams[":teamId"].projects.$get({param:{teamId:i},query:{first:"100"}});if(!k.ok)throw Error("Failed to fetch projects");return await k.json()},enabled:!!i&&e}),y=g?.data??[],x=y.find((k)=>k.id===l),b=()=>{if(c)r(c.id,f);else if(x?.rootFolder)r(x.rootFolder,f)};return t(ue,{open:e,onOpenChange:n,children:o(ae,{className:"sm:max-w-[425px] flex flex-col h-[600px]",children:[t(pe,{children:t(le,{children:s==="move"?"Move to":"Copy to"})}),o("div",{className:"flex flex-col gap-4 flex-1 overflow-hidden",children:[o("div",{className:"flex flex-col gap-2",children:[t("label",{className:"text-sm font-medium",children:"Select Project"}),o(Le,{value:l,onValueChange:(k)=>{d(k),p(null)},children:[t(Be,{children:t(Ze,{placeholder:"Select a project"})}),t(Ue,{children:y.map((k)=>t(ne,{value:k.id,children:k.name},k.id))})]})]}),o("div",{className:"flex flex-col gap-2 flex-1 overflow-hidden",children:[t("label",{className:"text-sm font-medium",children:"Select Folder"}),t("div",{className:"border rounded-md flex-1 overflow-hidden",children:t(ce,{className:"h-full",children:x&&x.rootFolder?t(vr,{teamId:i,projectId:x.id,projectName:x.name,rootFolderId:x.rootFolder,onSelect:p,selectedFolderId:c?.id||x.rootFolder}):t("div",{className:"flex items-center justify-center h-full p-4",children:h?t(O,{className:"animate-spin h-6 w-6"}):"Select a project first"})})})]}),s==="copy"&&o("div",{className:"flex items-center space-x-2",children:[t(wr,{id:"copy-comments",checked:f,onCheckedChange:(k)=>v(!!k)}),t("label",{htmlFor:"copy-comments",className:"text-sm font-medium leading-none peer-disabled:cursor-not-allowed peer-disabled:opacity-70",children:"Copy comments"})]})]}),o(qe,{children:[t(C,{variant:"outline",onClick:n,children:"Cancel"}),t(C,{onClick:b,disabled:!x,children:"Confirm"})]})]})})}S();function Na({item:e,isOpen:n,onClose:r,allowDownload:s=!0,shareId:i,sharePassword:a}){m(()=>{if(!n)return;let g=(h)=>{if(h.key===" "||h.code==="Space")h.preventDefault(),h.stopPropagation(),r()};return window.addEventListener("keydown",g,!0),()=>{window.removeEventListener("keydown",g,!0)}},[n,r]);let l=e?.type==="folder"||e?.targetType==="folder",d=e?.versionStack?e.versionStack.id:e?.id,c=a??(i&&typeof window<"u"?localStorage.getItem(`share_pwd_${i}`)||"":""),{data:p}=Z({queryKey:i?["shares",i,"files",d,c]:["files",d],queryFn:async()=>{if(!d)throw Error("No target file ID");let g=i?await A.api.shares[":shareId"].files[":fileId"].$get({param:{shareId:i,fileId:d}},c?{headers:{"x-share-password":c}}:void 0):await A.api.files[":fileId"].$get({param:{fileId:d}});if(!g.ok)throw Error("Failed to fetch file detail");return await g.json()},enabled:n&&!l&&!!d});if(!e)return null;let f=Boolean(e.media?.videoTranscodes?.some((g)=>!!g.url)||e.media?.imageTranscodes?.some((g)=>!!g.url)||e.media?.pdfTranscode?.url),v=p||(f?e:null);return t(ue,{open:n,onOpenChange:(g)=>{if(!g)r()},children:o(ae,{"data-testid":"file-preview-dialog-content",showCloseButton:!1,className:E("p-0 overflow-hidden flex flex-col gap-0 border bg-background rounded-lg shadow-2xl outline-none focus:outline-none focus-visible:outline-none",l?"w-full max-w-md max-h-[min(1080px,70vh)]":"w-[min(1920px,70vw)] h-[min(1080px,70vh)] max-w-[min(1920px,70vw)] max-h-[min(1080px,70vh)]"),style:{maxWidth:"min(1920px, 70vw)",maxHeight:"min(1080px, 70vh)"},children:[o("div",{className:"flex items-center justify-between px-4 py-2.5 border-b border-border bg-card select-none shrink-0",children:[t("div",{className:"flex items-center gap-2 min-w-0 mr-4",children:t(le,{className:"text-sm font-medium text-foreground truncate",title:e.name,children:e.name})}),t("button",{"data-testid":"quick-preview-close-button",onClick:r,className:"p-1 rounded-sm text-muted-foreground hover:text-foreground hover:bg-muted transition-colors cursor-pointer","aria-label":"Close",children:t(Ne,{size:16})})]}),l?o("div",{className:"flex flex-col items-center justify-center p-8 text-center select-none gap-4",children:[t("div",{className:"p-4 rounded-2xl bg-primary/10 text-primary",children:t(rr,{className:"w-16 h-16 stroke-[1.5]","data-testid":"folder-preview-icon"})}),o("div",{className:"flex flex-col items-center gap-1 max-w-full px-2",children:[t("h3",{className:"text-lg font-semibold text-foreground truncate max-w-full",title:e.name,children:e.name}),t("p",{className:"text-sm text-muted-foreground","data-testid":"folder-preview-count",children:(e.fileCount||0)===1?cg({count:e.fileCount||0}):lg({count:e.fileCount||0})})]})]}):!v?t("div",{"data-testid":"preview-loading-spinner",className:"flex-1 flex items-center justify-center bg-background min-h-[300px]",children:t(O,{className:"h-8 w-8 animate-spin text-muted-foreground"})}):t("div",{className:"flex-1 relative min-h-0 overflow-hidden bg-background",children:t(ns,{file:v,allowDownload:s,shareId:i,autoPlay:!0})})]})})}function ka({...e}){return t(mc,{"data-slot":"context-menu",...e})}function Pa({...e}){return t(gc,{"data-slot":"context-menu-trigger",...e})}function Mr({...e}){return t(_a,{"data-slot":"context-menu-portal",...e})}function Tr({...e}){return t(yc,{"data-slot":"context-menu-sub",...e})}function kr({className:e,inset:n,children:r,...s}){return o(xc,{"data-slot":"context-menu-sub-trigger","data-inset":n,className:E("flex cursor-default items-center rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-[inset]:pl-8 data-[state=open]:bg-accent data-[state=open]:text-accent-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground",e),...s,children:[r,t(Et,{className:"ml-auto"})]})}function Ar({className:e,...n}){return t(bc,{"data-slot":"context-menu-sub-content",className:E("z-50 min-w-[8rem] origin-(--radix-context-menu-content-transform-origin) overflow-hidden rounded-md border bg-popover p-1 text-popover-foreground shadow-lg data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",e),...n})}function jn({className:e,...n}){return t(_a,{children:t(hc,{"data-slot":"context-menu-content",className:E("z-50 max-h-(--radix-context-menu-content-available-height) min-w-[8rem] origin-(--radix-context-menu-content-transform-origin) overflow-x-hidden overflow-y-auto rounded-md border bg-popover p-1 text-popover-foreground shadow-md data-[side=bottom]:slide-in-from-top-2 data-[side=left]:slide-in-from-right-2 data-[side=right]:slide-in-from-left-2 data-[side=top]:slide-in-from-bottom-2 data-[state=closed]:animate-out data-[state=closed]:fade-out-0 data-[state=closed]:zoom-out-95 data-[state=open]:animate-in data-[state=open]:fade-in-0 data-[state=open]:zoom-in-95",e),...n})})}function bt({className:e,inset:n,variant:r="default",...s}){return t(vc,{"data-slot":"context-menu-item","data-inset":n,"data-variant":r,className:E("relative flex cursor-default items-center gap-2 rounded-sm px-2 py-1.5 text-sm outline-hidden select-none focus:bg-accent focus:text-accent-foreground data-[disabled]:pointer-events-none data-[disabled]:opacity-50 data-[inset]:pl-8 data-[variant=destructive]:text-destructive data-[variant=destructive]:focus:bg-destructive/10 data-[variant=destructive]:focus:text-destructive dark:data-[variant=destructive]:focus:bg-destructive/20 [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 [&_svg:not([class*='text-'])]:text-muted-foreground data-[variant=destructive]:*:[svg]:text-destructive!",e),...s})}function Fo({className:e,...n}){return t(wc,{"data-slot":"context-menu-separator",className:E("-mx-1 my-1 h-px bg-border",e),...n})}function Aa({item:e,selectedIds:n,onRename:r,onDelete:s,onDownload:i,onCopyNameAndDownloadLink:a,onRestore:l,onNewFolder:d,onUploadFile:c,onUploadFolder:p,onNewVersion:f,onManageVersions:v,onMoveTo:g,onCopyTo:h,folders:y,files:x,isRecentlyDeleted:b,isRecents:N,onOpenAgentsMd:k,isShareView:G,onRemoveFromShare:X,shareLinks:te=[],onCreateShareLink:fe,onAddToShareLink:ye,canEdit:oe=!0}){let R=[...y,...x].filter((Ve)=>n.has(Ve.id)),be=e&&n.has(e.id),me=be?R:e?[e]:[],ie=me,xe=me,Ge=()=>{if(e)r(e)},Qe=()=>{s(ie)},ee=()=>{if(be)i(R);else if(e)i([e])},Ye=()=>{if(be)a?.(R);else if(e)a?.([e])},Je=()=>{l(xe)};if(N)return null;if(G){if(!e)return null;return o(jn,{children:[o(bt,{onSelect:ee,children:[t(ht,{className:"mr-2 h-4 w-4"}),t("span",{children:gr()})]}),o(bt,{onSelect:Ye,children:[t(Nr,{className:"mr-2 h-4 w-4"}),t("span",{children:Df()})]}),oe&&o(bt,{onSelect:()=>X?.(me),className:"text-destructive",children:[t(we,{className:"mr-2 h-4 w-4"}),t("span",{children:kp()})]})]})}if(b){if(!e)return null;return t(jn,{children:o(bt,{onSelect:Je,children:[t(Tn,{className:"mr-2 h-4 w-4"}),t("span",{children:Rp()})]})})}if(!e){if(!oe||N)return null;return o(jn,{onCloseAutoFocus:(Ve)=>{Ve.preventDefault()},children:[o(bt,{onSelect:c,children:[t(zn,{className:"mr-2 h-4 w-4"}),t("span",{children:Kp()})]}),o(bt,{onSelect:p,children:[t(zn,{className:"mr-2 h-4 w-4"}),t("span",{children:Wp()})]}),o(bt,{onSelect:()=>{d(El())},children:[t(lu,{className:"mr-2 h-4 w-4"}),t("span",{children:El()})]})]})}let Se=be&&n.size>1?o(jn,{onCloseAutoFocus:(Ve)=>{Ve.preventDefault()},children:[o(bt,{onSelect:ee,children:[t(ht,{className:"mr-2 h-4 w-4"}),t("span",{children:gr()})]}),o(bt,{onSelect:Ye,children:[t(Nr,{className:"mr-2 h-4 w-4"}),t("span",{children:Df()})]}),oe&&o(bt,{onSelect:()=>g(me),children:[t(to,{className:"mr-2 h-4 w-4"}),t("span",{children:sg()})]}),oe&&o(bt,{onSelect:()=>h(me),children:[t(Nr,{className:"mr-2 h-4 w-4"}),t("span",{children:ch()})]}),oe&&o(bt,{onSelect:Qe,className:"text-destructive",children:[t(we,{className:"mr-2 h-4 w-4"}),t("span",{children:ct()})]}),oe&&o(L,{children:[t(Fo,{}),o(bt,{onSelect:()=>fe?.(me),children:[t(de,{className:"mr-2 h-4 w-4"}),t("span",{children:ph()})]}),te.length>0&&o(Tr,{children:[o(kr,{children:[t(Ka,{className:"mr-2 h-4 w-4"}),t("span",{children:Dm()})]}),t(Mr,{children:t(Ar,{className:"w-48",children:te.map((Ve)=>t(bt,{onSelect:()=>ye?.(Ve.id,me),children:t("span",{className:"truncate",children:Ve.name})},Ve.id))})})]})]})]}):o(jn,{onCloseAutoFocus:(Ve)=>{Ve.preventDefault()},children:[oe&&o(bt,{onSelect:()=>{Ge()},children:[t(Qr,{className:"mr-2 h-4 w-4"}),t("span",{children:Zo()})]}),o(bt,{onSelect:ee,children:[t(ht,{className:"mr-2 h-4 w-4"}),t("span",{children:gr()})]}),o(bt,{onSelect:Ye,children:[t(Nr,{className:"mr-2 h-4 w-4"}),t("span",{children:Df()})]}),oe&&o(bt,{onSelect:()=>g(me),children:[t(to,{className:"mr-2 h-4 w-4"}),t("span",{children:sg()})]}),oe&&o(bt,{onSelect:()=>h(me),children:[t(Nr,{className:"mr-2 h-4 w-4"}),t("span",{children:ch()})]}),oe&&(e.type==="file"||e.type==="version_stack")&&o(bt,{onSelect:()=>f(e),children:[t(zn,{className:"mr-2 h-4 w-4"}),t("span",{children:xy()})]}),oe&&e.type==="version_stack"&&o(bt,{onSelect:()=>v?.(e),children:[t(Co,{className:"mr-2 h-4 w-4"}),t("span",{children:tp()})]}),e.type==="folder"&&k&&o(bt,{onSelect:()=>k(e),children:[t(qn,{className:"mr-2 h-4 w-4"}),t("span",{children:"AGENTS.md"})]}),oe&&o(L,{children:[t(Fo,{}),o(bt,{onSelect:Qe,className:"text-destructive",children:[t(we,{className:"mr-2 h-4 w-4"}),t("span",{children:ct()})]}),t(Fo,{}),o(bt,{onSelect:()=>fe?.(me),children:[t(de,{className:"mr-2 h-4 w-4"}),t("span",{children:ph()})]}),te.length>0&&o(Tr,{children:[o(kr,{children:[t(Ka,{className:"mr-2 h-4 w-4"}),t("span",{children:Dm()})]}),t(Mr,{children:t(Ar,{className:"w-48",children:te.map((Ve)=>t(bt,{onSelect:()=>ye?.(Ve.id,me),children:t("span",{className:"truncate",children:Ve.name})},Ve.id))})})]})]})]});return t(L,{children:Se})}S();var Cn=F(({className:e,onClick:n,onMouseDown:r,disabled:s,value:i,title:a,tooltipSide:l="top",tooltipDelayDuration:d=100,...c},p)=>{let[f,v]=u(!1),g=_(null),h=typeof i==="string"?i:i?.toString()??"";if(s)return t(an,{delayDuration:d,children:o(ln,{open:f,onOpenChange:(y)=>{if(y)if(g.current&&g.current.scrollWidth>g.current.clientWidth)v(!0);else v(!1);else v(!1)},children:[t(cn,{asChild:!0,children:t("span",{ref:g,className:E("box-border block min-w-0 w-full rounded-sm border border-transparent px-1 py-0.5 text-base shadow-none transition-all outline-none cursor-default opacity-100 select-none truncate",e),onClick:n,onMouseDown:r,children:h})}),f&&t(un,{side:l,className:"max-w-md break-all text-wrap [text-wrap:normal] text-left",children:h})]})});return t(z,{ref:p,value:i,tabIndex:0,className:E("box-border block min-w-0 h-auto w-full rounded-sm border border-blue-500 !bg-muted/10 ring-1 ring-blue-500 px-1 py-0.5 text-base shadow-none transition-all outline-none focus-visible:ring-0",e),onClick:(y)=>{y.stopPropagation(),n?.(y)},onMouseDown:(y)=>{y.stopPropagation(),r?.(y)},...c})});Cn.displayName="EditableText";S();var oo=({item:e,showDuration:n=!1})=>{let r=e.preview?.proxyType||e.proxyType,s=r==="video",i=r==="audio",a=r==="pdf",l=r==="3d",d=s||i,c=e.preview?.duration,p=e.preview?.pageCount,f=n&&d&&typeof c==="number"&&c>0?t("span",{className:"pointer-events-none absolute bottom-1 right-1 rounded bg-black/60 px-1 py-0.5 text-xs font-medium tabular-nums text-white",children:Ni(c)}):n&&a&&typeof p==="number"&&p>0?o("span",{className:"pointer-events-none absolute bottom-1 right-1 rounded bg-black/60 px-1 py-0.5 text-xs font-medium tabular-nums text-white",children:[p," P"]}):null;if((s||a||l)&&e.preview?.spriteUrl&&e.preview.thumbnailUrl&&e.preview.originalWidth&&e.preview.originalHeight&&e.preview)return o(L,{children:[t(Yd,{spriteUrl:e.preview.spriteUrl,thumbnailUrl:e.preview.thumbnailUrl,videoWidth:e.preview.originalWidth,videoHeight:e.preview.originalHeight,reverse:l}),f]});if(e.preview?.thumbnailUrl)return o(L,{children:[t("img",{src:e.preview.thumbnailUrl,alt:"Preview",className:"w-full h-full object-contain bg-black"}),f]});if(i)return o(L,{children:[t("div",{className:"w-full h-full flex items-center justify-center bg-zinc-950",children:t(ts,{className:"w-8 h-8 text-zinc-500"})}),f]});if(!e.type)return t("div",{className:"w-full h-full flex items-center justify-center bg-linear-to-t from-black/5 to-black/0",children:t(rr,{className:"w-8 h-8 fill-primary/60 stroke-0"})});return t("div",{className:"w-full h-full flex items-center justify-center",children:t(tr,{className:"w-8 h-8 fill-primary/60 stroke-0"})})};function uu({teamId:e,item:n,isSelected:r,isChecked:s,isEditing:i,onSelect:a,onDoubleClick:l,onContextMenu:d,onDragStart:c,onDrop:p,onRename:f,onFinishEditing:v,onSaveField:g,dragState:h,disabled:y,onAction:x,isRecentlyDeleted:b,isRecents:N,selectedCount:k,fields:G,isShareView:X,canEdit:te=!0,allowDownload:fe=!0}){let[ye,oe]=u(n.name),ze=_(null),[R,be]=u(!1),me=_(null),ie=bn((Oe)=>Oe.fileProgress[n.id||""]),xe=ie?ie.total>0?ie.loaded/ie.total*100:0:0,Ge=(n.type==="file"||n.type==="version_stack")&&!!e&&(n.status==="uploading"||n.status==="uploaded"||n.status==="processing"),{data:Qe}=Z({queryKey:["file",e,n.id],queryFn:async()=>{let Oe=await A.api.files[":fileId"].$get({param:{fileId:n.id||""}});if(!Oe.ok)throw Error("failed to fetch file");return await Oe.json()},enabled:Ge,refetchInterval:(Oe)=>{let Pt=Oe.state.data;return Pt?.status==="processed"||Pt?.status==="failed"||Pt?.status==="error"?!1:1000}}),ee=D(()=>{if(n.status==="processed"||n.status==="error"||n.status==="failed")return n;if(Qe?.status==="processed"||Qe?.status==="error"||Qe?.status==="failed")return Qe;return Qe||n},[n,Qe]),{ref:Ye,isDragging:Je}=bs({id:`browser:${ee.id}`,data:{type:ee.type,id:ee.id,item:ee},disabled:y}),{ref:Se,isDropTarget:Ve}=Or({id:`browser:${ee.id}`,data:{type:ee.type,id:ee.id,item:ee}}),lt=(Oe)=>{Ye(Oe),Se(Oe)},Fe=Je||(h?.draggedIds.has(ee.id)??!1),He=D(()=>{if(!h?.isActive)return!1;if(h.draggedIds.has(ee.id))return!1;return h.isSingleFile},[h,ee.id]),at=Ve&&He,Ct=Fe?0.5:1,St=D(()=>(ee.fieldValues||[]).reduce((Oe,Pt)=>(Oe[Pt.fieldId]=Pt,Oe),{}),[ee.fieldValues]);m(()=>{if(i){let Oe=setTimeout(()=>{if(ze.current)Ss(ze.current)},150);return()=>clearTimeout(Oe)}},[i]),m(()=>{oe(ee.name)},[ee.name]);let re=(Oe)=>{a(ee,Oe)},dt=()=>{if(ye!==ee.name)f(ye||"");v()},xt=(Oe)=>{if(Oe.key==="Enter")dt();if(Oe.key==="Escape")oe(ee.name||""),v()},Ee=D(()=>{if(!ee.createdAt)return"";return Ry({time:kn(ee.createdAt),author:ee.agent?Xc({user:ee.creator?.name||Dl(),agent:ee.agent.name}):ee.creator?.name||Dl()})},[ee.createdAt,ee.agent,ee.creator?.name]),U=b?Wd(ee.deletedAt):null,J=U===null?"":U===1?ag({count:U}):ig({count:U}),j=Boolean(ee.preview?.thumbnailUrl||ee.preview?.spriteUrl),Q=ee.status==="failed",je=ee.status==="processing"||ee.status==="uploaded",ut=ee.status==="uploading"?Jc():ee.status==="uploaded"||ee.status==="processing"?EE():null,It=ee.media?.error||Mg(),Fn=U!==null||typeof ee.commentsCount==="number"&&ee.commentsCount>0?o("div",{"data-testid":"file-card-preview-badges",className:"pointer-events-none absolute bottom-1 left-1 z-10 flex items-center gap-1",children:[U!==null&&o("span",{"data-testid":"file-card-days-left",title:J,className:"flex items-center gap-1 rounded bg-black/60 px-1 py-0.5 text-xs font-medium tabular-nums text-white",children:[t(er,{className:"h-3.5 w-3.5"}),t("span",{children:hh({count:U})})]}),typeof ee.commentsCount==="number"&&ee.commentsCount>0&&o("span",{"data-testid":"file-card-comments-count",className:"flex items-center gap-1 rounded bg-black/60 px-1 py-0.5 text-xs font-medium tabular-nums text-white",children:[t(Ia,{className:"h-3.5 w-3.5"}),t("span",{children:ee.commentsCount})]})]}):null;return o("div",{ref:lt,style:{opacity:Ct},onClick:re,onDoubleClick:()=>l(ee),onContextMenu:(Oe)=>d(Oe,ee),onMouseDown:(Oe)=>{if(Oe.shiftKey)Oe.preventDefault()},"data-testid":"file-card",className:E("group relative flex cursor-pointer select-none flex-col overflow-hidden rounded-xl border border-border bg-card transition-all hover:border-primary h-full m-1 outline-none focus:outline-none focus-visible:outline-none",(r||s)&&"outline-1 outline-primary border-primary",at&&"border-primary outline-1 outline-primary"),children:[t("div",{className:"absolute left-2 top-2 z-10 flex items-center gap-1.5",children:t(wr,{checked:s,onCheckedChange:()=>{},onClick:(Oe)=>{Oe.stopPropagation(),a(ee,Oe)},className:"h-4 w-4 bg-white/20 dark:bg-white/20 border-2 data-[state=checked]:bg-primary data-[state=checked]:border-primary border-foreground/15"})}),o("div",{className:"absolute right-2 top-2 z-10 flex items-center gap-1.5",children:[ee.agent&&t("span",{className:"select-none rounded bg-black/60 px-1 py-0.5 text-xs font-medium text-white",title:ee.agent.name,"data-testid":"agent-badge",children:"AI"}),ee.versionStack&&o(he,{children:["v",ee.versionStack.versions.find((Oe)=>Oe.id===ee.id)?.version??ee.versionStack.versions.length]}),Q&&t(an,{delayDuration:100,children:o(ln,{children:[t(cn,{asChild:!0,children:t("span",{"data-testid":"file-card-failed-badge",className:"select-none rounded bg-destructive/90 px-1.5 py-0.5 text-xs font-medium text-destructive-foreground shadow-sm cursor-help",children:f1()})}),t(un,{side:"bottom","data-testid":"file-card-failed-tooltip",className:"max-w-xs break-words text-xs",children:It})]})})]}),t("div",{className:"relative aspect-square overflow-hidden bg-muted/30",children:ee.status==="uploading"?t("div",{className:"flex h-full w-full items-center justify-center bg-background/50",children:t(ma,{progress:xe,className:"w-16 h-16 z-10"})}):j?o(L,{children:[t("div",{"data-testid":"file-card-preview-media",className:E("h-full w-full",je&&"animate-pulse"),children:t(oo,{item:ee,showDuration:!je&&!Q})}),Fn]}):ee.status==="error"?t("div",{className:"flex h-full w-full items-center justify-center bg-background/50",children:t("span",{className:"z-10 font-medium px-2 text-center text-sm text-destructive font-semibold",children:uv()})}):Q?o("div",{"data-testid":"file-card-failed-state",className:"flex flex-col h-full w-full items-center justify-center gap-2 p-3 text-center bg-muted/40",children:[t(sr,{className:"h-10 w-10 text-destructive/80 shrink-0"}),t("span",{className:"z-10 text-xs font-semibold text-destructive px-2",children:Mg()})]}):je?t("div",{className:"flex h-full w-full items-center justify-center",children:t("svg",{viewBox:"0 0 50 50","data-testid":"file-card-preparing-circle",className:"h-16 w-16 opacity-60 animate-preparing-breathe",children:t("circle",{cx:"25",cy:"25",r:"20",className:"stroke-muted-foreground",strokeWidth:"4",fill:"transparent"})})}):o(L,{children:[t(oo,{item:ee,showDuration:!0}),Fn]})}),o("div",{className:"flex items-center justify-between gap-2 p-3",children:[o("div",{className:"min-w-0 flex-1",children:[t(Cn,{ref:ze,value:ye,onChange:(Oe)=>oe(Oe.target.value),onBlur:dt,onKeyDown:xt,disabled:!i,className:"h-auto p-0 text-sm font-medium text-foreground truncate !bg-transparent"}),t(an,{delayDuration:100,children:o(ln,{open:R,onOpenChange:(Oe)=>{if(Oe)if(me.current&&(me.current.scrollHeight>me.current.clientHeight||me.current.scrollWidth>me.current.clientWidth))be(!0);else be(!1);else be(!1)},children:[t(cn,{asChild:!0,children:t("p",{ref:me,className:"text-sm line-clamp-2 h-[2lh] text-muted-foreground",children:ut??Ee})}),R&&t(un,{side:"bottom",className:"max-w-md break-all text-wrap [text-wrap:normal] text-left",children:Ee})]})})]}),!N&&o(ge,{modal:!1,children:[t(Ae,{asChild:!0,children:t(C,{size:"icon-sm",variant:"ghost",className:"cursor-pointer",onClick:(Oe)=>Oe.stopPropagation(),children:t(or,{className:"h-4 w-4 text-foreground"})})}),t(_e,{align:"end",children:X?o(L,{children:[fe&&o(K,{onClick:(Oe)=>{Oe.stopPropagation(),x?.("download",n)},children:[t(ht,{className:"mr-2 h-4 w-4"}),t("span",{children:gr()})]}),te&&o(K,{onClick:(Oe)=>{Oe.stopPropagation(),x?.("remove-from-share",n)},className:"text-destructive",children:[t(we,{className:"mr-2 h-4 w-4"}),t("span",{children:kp()})]})]}):b?o(K,{onClick:(Oe)=>{Oe.stopPropagation(),x?.("restore",n)},children:[t(Tn,{className:"mr-2 h-4 w-4"}),t("span",{children:Rp()})]}):o(L,{children:[te&&(!s||(k||0)<=1)&&o(K,{onClick:(Oe)=>{Oe.stopPropagation(),x?.("rename",n)},children:[t(Qr,{className:"mr-2 h-4 w-4"}),t("span",{children:Zo()})]}),te&&n.type==="version_stack"&&o(K,{onClick:(Oe)=>{Oe.stopPropagation(),x?.("manage-versions",n)},children:[t(Co,{className:"mr-2 h-4 w-4"}),t("span",{children:tp()})]}),fe&&o(K,{onClick:(Oe)=>{Oe.stopPropagation(),x?.("download",n)},children:[t(ht,{className:"mr-2 h-4 w-4"}),t("span",{children:gr()})]}),te&&o(L,{children:[t(Vt,{}),o(K,{onClick:(Oe)=>{Oe.stopPropagation(),x?.("delete",n)},className:"text-destructive",children:[t(we,{className:"mr-2 h-4 w-4"}),t("span",{children:ct()})]})]})]})})]})]}),G&&G.length>0&&t("div",{className:"space-y-2 border-t p-1 pt-3 mx-2",children:G.map((Oe)=>{let Pt=Oe.config?.type?pa[Oe.config.type]:null;return o("div",{className:"space-y-1 bg-muted/50 p-1 rounded border",children:[o("label",{className:"text-xs text-muted-foreground tracking-wide flex items-center gap-1",children:[Pt&&t(Pt,{className:"h-3.5 w-3.5 text-muted-foreground shrink-0"}),t("span",{children:Oe.config?.name})]}),t("div",{className:"min-h-[28px]",children:t(Cs,{fieldId:Oe.id,config:Oe.config,value:St[Oe.id]?.value,onSave:te&&!N?(In)=>g(Oe.id,In):void 0,readOnly:Oe.readOnly||!te||!!N})})]},Oe.id)})})]})}S();function Da({teamId:e,item:n,isSelected:r,isChecked:s,isEditing:i,onSelect:a,onDoubleClick:l,onContextMenu:d,onDragStart:c,onDrop:p,onRename:f,onFinishEditing:v,onSaveField:g,dragState:h,disabled:y,fields:x,columnSizing:b,canEdit:N=!0,isRecents:k}){let[G,X]=u(n.name),te=_(null),fe=bn((Se)=>Se.fileProgress[n.id||""]),ye=fe?fe.total>0?fe.loaded/fe.total*100:0:0,oe=(n.type==="file"||n.type==="version_stack")&&!!e&&(n.status==="uploading"||n.status==="uploaded"||n.status==="processing"),{data:ze}=Z({queryKey:["file",e,n.id],queryFn:async()=>{let Se=await A.api.files[":fileId"].$get({param:{fileId:n.id||""}});if(!Se.ok)throw Error("failed to fetch file");return await Se.json()},enabled:oe,refetchInterval:(Se)=>{let Ve=Se.state.data;return Ve?.status==="processed"||Ve?.status==="failed"||Ve?.status==="error"?!1:1000}}),R=D(()=>{if(n.status==="processed"||n.status==="error"||n.status==="failed")return n;if(ze?.status==="processed"||ze?.status==="error"||ze?.status==="failed")return ze;return ze||n},[n,ze]),{ref:be,isDragging:me}=bs({id:`browser:${R.id}`,data:{type:R.type,id:R.id,item:R},disabled:y}),xe=me||(h?.draggedIds.has(R.id)??!1)?0.5:1,Ge=D(()=>(R.fieldValues||[]).reduce((Se,Ve)=>(Se[Ve.fieldId]=Ve,Se),{}),[R.fieldValues]);m(()=>{if(i){let Se=setTimeout(()=>{if(te.current)Ss(te.current)},150);return()=>clearTimeout(Se)}},[i]),m(()=>{X(R.name)},[R.name]);let Qe=(Se)=>{if(!Se)return"-";return new Date(Se).toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})},ee=(Se)=>{a(R,Se)},Ye=()=>{if(G!==R.name)f(G||"");v()},Je=(Se)=>{if(Se.key==="Enter")Ye();if(Se.key==="Escape")X(R.name||""),v()};return o("div",{ref:be,style:{opacity:xe},onClick:ee,onDoubleClick:()=>l(R),onContextMenu:(Se)=>d(Se,R),onMouseDown:(Se)=>{if(Se.shiftKey)Se.preventDefault()},"data-testid":"file-card",className:"group cursor-pointer select-none transition-colors whitespace-nowrap flex w-full outline-none focus:outline-none focus-visible:outline-none",children:[t("div",{className:E("px-4 py-2 sticky left-0 z-10 transition-colors border-r shrink-0",r||s?"bg-muted":"bg-card group-hover:bg-muted"),style:{width:b?.name||300,minWidth:b?.name||300},children:o("div",{className:"flex items-center gap-2 overflow-hidden",children:[t(wr,{checked:s,onCheckedChange:()=>{},onClick:(Se)=>{Se.stopPropagation(),a(R,Se)},className:"h-4 w-4 shrink-0 data-[state=checked]:bg-primary data-[state=checked]:border-primary"}),t("div",{className:"w-8 h-8 shrink-0 flex items-center justify-center bg-muted rounded overflow-hidden",children:R.status==="uploading"?t(ma,{progress:ye,className:"w-7 h-7"}):R.status==="failed"&&!R.preview?.thumbnailUrl?t(sr,{className:"h-4 w-4 text-destructive"}):R.preview?.thumbnailUrl?t("img",{src:R.preview.thumbnailUrl,alt:"",className:"w-full h-full object-cover"}):R.preview?.proxyType==="audio"||R.proxyType==="audio"?t(ts,{className:"h-4 w-4 text-muted-foreground"}):R.type==="folder"?t(rr,{className:"h-4 w-4 text-primary"}):t(tr,{className:"h-4 w-4 text-muted-foreground"})}),t(Cn,{ref:te,value:G,onChange:(Se)=>X(Se.target.value),onBlur:Ye,onKeyDown:Je,disabled:!i,className:"h-auto p-0 text-sm font-medium text-foreground truncate min-w-0 flex-1"}),R.status==="error"&&t("span",{className:"text-xs text-destructive font-semibold shrink-0",children:dv()}),R.status==="failed"&&t("span",{"data-testid":"file-list-item-failed",className:"text-xs text-destructive font-semibold shrink-0",children:ME()}),R.agent&&t("span",{className:"select-none rounded bg-black/60 px-1 py-0.5 text-xs font-medium text-white shrink-0",title:R.agent.name,"data-testid":"agent-badge",children:"AI"}),R.versionStack&&o(he,{variant:"outline",className:"px-1 py-0 text-xs shrink-0",children:["v",R.versionStack.versions.find((Se)=>Se.id===R.id)?.version??R.versionStack.versions.length]})]})}),t("div",{className:"px-4 py-2 text-sm text-muted-foreground truncate border-r shrink-0 flex items-center",style:{width:b?.size||100,minWidth:b?.size||100},children:R.type==="folder"?"-":R.sizeByte?Jr(R.sizeByte):"-"}),t("div",{className:"px-4 py-2 border-r shrink-0 flex items-center",style:{width:b?.modified||200,minWidth:b?.modified||200},children:o("div",{className:"flex items-center justify-between overflow-hidden w-full",children:[t("span",{className:"text-sm text-muted-foreground truncate",children:Qe(R.updatedAt)}),!k&&t("button",{onClick:(Se)=>{Se.stopPropagation();let Ve=Se.target.getBoundingClientRect(),lt=new MouseEvent(Se.nativeEvent.type,{bubbles:!0,cancelable:!0,clientX:Ve.left,clientY:Ve.bottom});d(lt,R)},className:"opacity-0 shrink-0 transition-opacity group-hover:opacity-100 ml-2",children:t(Sr,{className:"h-4 w-4 text-muted-foreground hover:text-foreground"})})]})}),R.type==="file"&&x.map((Se)=>t("div",{className:"px-4 py-2 truncate border-r shrink-0 flex items-center",style:{width:b?.[Se.id]||150,minWidth:b?.[Se.id]||150},children:t(Cs,{fieldId:Se.id,config:Se.config,value:Ge[Se.id]?.value,onSave:N&&!k?(Ve)=>g(Se.id,Ve):void 0,readOnly:Se.readOnly||!N||!!k})},Se.id))]})}S();var Cc=({items:e})=>{let n=e,r=n?n.slice(0,3):[],s=r.length,i=(a)=>{if(!a)return null;return t(oo,{item:a})};if(s===0)return t("div",{});if(s===1)return t("div",{className:"w-full h-full bg-foreground/6 rounded-sm",children:i(r[0])});if(s===2)return o("div",{className:"grid grid-cols-2 gap-0.5 h-full w-full",children:[t("div",{className:"overflow-hidden h-full bg-foreground/6 rounded-sm",children:i(r[0])}),t("div",{className:"overflow-hidden h-full bg-foreground/6 rounded-sm",children:i(r[1])})]});return o("div",{className:"grid grid-cols-3 gap-0.5 h-full w-full",children:[t("div",{className:"col-span-1 overflow-hidden h-full relative bg-foreground/6 rounded-sm col-span-2",children:t("div",{className:"absolute inset-0 w-full h-full",children:i(r[0])})}),o("div",{className:"col-span-1 grid grid-rows-2 gap-0.5 h-full col-span-1",children:[t("div",{className:"overflow-hidden h-full relative bg-foreground/6 rounded-sm",children:t("div",{className:"absolute inset-0 w-full h-full",children:i(r[1])})}),t("div",{className:"overflow-hidden h-full relative bg-foreground/6 rounded-sm",children:t("div",{className:"absolute inset-0 w-full h-full",children:i(r[2])})})]})]})};function du({item:e,isSelected:n,isChecked:r,isEditing:s,onSelect:i,onDoubleClick:a,onContextMenu:l,onDragStart:d,onDrop:c,onRename:p,onFinishEditing:f,dragState:v,disabled:g,onAction:h,isRecentlyDeleted:y,isRecents:x,selectedCount:b,canEdit:N=!0,isShareView:k,isExternalDragging:G,externalOverFolderId:X,setExternalOverFolderId:te,resetExternalDragState:fe,onExternalDrop:ye,allowDownload:oe=!0}){let[ze,R]=u(e.name||""),be=_(null),{ref:me,isDragging:ie}=bs({id:`browser:${e.id}`,data:{type:"folder",id:e.id,item:e},disabled:g}),{ref:xe,isDropTarget:Ge}=Or({id:`browser:${e.id}`,data:{type:"folder",id:e.id,item:e}}),Qe=(U)=>{me(U),xe(U)},ee=ie||(v?.draggedIds.has(e.id)??!1),Ye=D(()=>{if(!v?.isActive)return!1;if(v.draggedIds.has(e.id))return!1;return!0},[v,e.id]),Je=G&&X===e.id,Se=Ge&&Ye||Je,Ve=ee?0.5:1;m(()=>{if(s){let U=setTimeout(()=>{be.current?.focus(),be.current?.select()},150);return()=>clearTimeout(U)}},[s]),m(()=>{R(e.name||"")},[e.name]);let lt=(U)=>{i(e,U)},Fe=()=>{if(ze!==e.name)p(ze||"");f()},He=(U)=>{if(U.key==="Enter")Fe();if(U.key==="Escape")R(e.name||""),f()},at=300,Ct=220,St=8,re={cornerRadius:4,tabRadius:5,tabSlope:15,tabBaseWidth:120},dt=D(()=>{let{cornerRadius:U,tabRadius:J,tabSlope:j,tabBaseWidth:Q}=re,je=1;return`M 1, ${St+1} L 1, ${1+J} A ${J} ${J} 0 0 1 ${1+J} 1 L ${Q-j+1-J} 1 Q ${Q-j+1} 1 ${Q-j+1} 1 L ${Q+1} ${St+1} L ${at-U-1} ${St+1} A ${U} ${U} 0 0 1 ${at-1} ${St+U+1} L ${at-1} ${Ct-U-1} A ${U} ${U} 0 0 1 ${at-U-1} ${Ct-1} L ${U+1} ${Ct-1} A ${U} ${U} 0 0 1 1 ${Ct-U-1} Z`.replace(/\s+/g," ").trim()},[]),xt=y?Wd(e.deletedAt):null,Ee=xt===null?"":xt===1?ag({count:xt}):ig({count:xt});return o("div",{ref:Qe,style:{opacity:Ve},onClick:lt,onDoubleClick:()=>a(e),onContextMenu:(U)=>l(U,e),onMouseDown:(U)=>{if(U.shiftKey)U.preventDefault()},onDragEnter:G?()=>{te?.(e.id)}:void 0,onDragLeave:G?(U)=>{if(!U.currentTarget.contains(U.relatedTarget))te?.(null)}:void 0,onDragOver:G?(U)=>{U.preventDefault()}:void 0,onDrop:G?async(U)=>{U.preventDefault(),U.stopPropagation(),fe?.();let J=await Qa(U.dataTransfer);ye?.(J,e.id)}:void 0,"data-testid":"file-card",className:E("group relative w-full md:max-w-[340px] select-none cursor-pointer isolate flex flex-col items-center h-full outline-none focus:outline-none focus-visible:outline-none"),children:[t("div",{className:"absolute inset-0 z-10 pointer-events-none",children:t("svg",{width:"100%",height:"100%",viewBox:`0 0 ${at} ${Ct}`,preserveAspectRatio:"none",className:"overflow-visible",children:t("path",{d:dt,vectorEffect:"non-scaling-stroke",strokeLinejoin:"round",strokeWidth:Se||n?2:1,className:E("transition-colors duration-200 fill-none group-hover:stroke-primary stroke-foreground/10",(n||r||Se)&&"stroke-primary")})})}),t("div",{className:"absolute inset-0 -z-10 pointer-events-none",children:t("svg",{width:"100%",height:"100%",viewBox:`0 0 ${at} ${Ct}`,preserveAspectRatio:"none",className:"overflow-visible",children:t("path",{d:dt,vectorEffect:"non-scaling-stroke",strokeLinejoin:"round",strokeWidth:Se?3:1,className:E("transition-colors duration-200 fill-foreground/6 dark:fill-foreground/4")})})}),o("div",{className:"shadow-[0_-4px_6px_rgba(0,0,0,0.08)] relative w-full flex flex-1 flex-col p-2 mt-5 bg-muted dark:bg-muted/50 rounded-sm",children:[o("div",{className:"relative w-full aspect-video shrink-0 overflow-hidden",children:[t("div",{className:"absolute top-1 left-1 z-30 transition-all duration-200",children:t(wr,{checked:r,onClick:(U)=>U.stopPropagation(),className:"w-5 h-5 border-1 border-foreground/20 bg-background/50 data-[state=checked]:bg-primary data-[state=checked]:border-primary"})}),e.latestChildren&&e.latestChildren.length>0&&t("div",{"data-testid":"folder-preview-grid",className:"h-full w-full",children:t(Cc,{items:e.latestChildren})}),xt!==null&&o("span",{"data-testid":"folder-card-days-left",title:Ee,className:"pointer-events-none absolute bottom-1 left-1 z-10 flex items-center gap-1 rounded bg-black/60 px-1 py-0.5 text-xs font-medium tabular-nums text-white",children:[t(er,{className:"h-3.5 w-3.5"}),t("span",{children:hh({count:xt})})]})]}),o("div",{className:"flex flex-col gap-1 mt-2 px-1",children:[t(Cn,{ref:be,value:ze||"",onChange:(U)=>R(U.target.value),onBlur:Fe,onKeyDown:He,disabled:!s,className:"h-auto p-0 text-sm font-medium text-foreground truncate !bg-transparent"}),o("div",{className:"flex items-center justify-between text-muted-foreground",children:[t("span",{className:"text-xs tracking-wide opacity-80",children:(e.fileCount||0)===1?cg({count:e.fileCount||0}):lg({count:e.fileCount||0})}),!x&&o(ge,{modal:!1,children:[t(Ae,{asChild:!0,children:t("button",{onClick:(U)=>U.stopPropagation(),className:"p-1.5 -mr-2 rounded-full hover:bg-muted text-muted-foreground hover:text-foreground transition-colors cursor-pointer",children:t(or,{size:18})})}),t(_e,{align:"end",children:k?o(L,{children:[oe&&o(K,{onClick:(U)=>{U.stopPropagation(),h?.("download",e)},children:[t(ht,{className:"mr-2 h-4 w-4"}),t("span",{children:gr()})]}),N&&o(K,{onClick:(U)=>{U.stopPropagation(),h?.("remove-from-share",e)},className:"text-destructive",children:[t(we,{className:"mr-2 h-4 w-4"}),t("span",{children:kp()})]})]}):y?o(K,{onClick:(U)=>{U.stopPropagation(),h?.("restore",e)},children:[t(Tn,{className:"mr-2 h-4 w-4"}),t("span",{children:Rp()})]}):o(L,{children:[N&&(!r||(b||0)<=1)&&o(K,{onClick:(U)=>{U.stopPropagation(),h?.("rename",e)},children:[t(Qr,{className:"mr-2 h-4 w-4"}),t("span",{children:Zo()})]}),oe&&o(K,{onClick:(U)=>{U.stopPropagation(),h?.("download",e)},children:[t(ht,{className:"mr-2 h-4 w-4"}),t("span",{children:gr()})]}),N&&o(L,{children:[t(Vt,{}),o(K,{onClick:(U)=>{U.stopPropagation(),h?.("delete",e)},className:"text-destructive",children:[t(we,{className:"mr-2 h-4 w-4"}),t("span",{children:ct()})]})]})]})})]})]})]})]})]})}S();function Oa(e,n,r){let s=Array(e);return new Proxy(s,{get(i,a,l){if(typeof a==="string"){let d=a.charCodeAt(0);if(d>=48&&d<=57){let c=+a;if(Number.isInteger(c)&&c>=0&&c<e){let p=i[c];if(!p){let f=n[c*2];p=i[c]={index:c,key:r(c),start:f,size:n[c*2+1],end:f+n[c*2+1],lane:0}}return p}}if(a==="length")return e}return Reflect.get(i,a,l)}})}function Rn(e,n,r){let s=r.initialDeps??[],i,a=!0;function l(){var d;let c=!1,p=0,f=e();if(!(f.length!==s.length||f.some((h,y)=>s[y]!==h)))return i;s=f;let g=0;if(i=n(...f),(r==null?void 0:r.onChange)&&!(a&&r.skipInitialOnChange))r.onChange(i);return a=!1,i}return l.updateDeps=(d)=>{s=d},l}function $r(e,n){if(e===void 0)throw Error(`Unexpected undefined${n?`: ${n}`:""}`);else return e}var $a=(e,n)=>Math.abs(e-n)<1.01,za=(e,n,r)=>{let s;return Object.assign(function(...i){e.clearTimeout(s),s=e.setTimeout(()=>n.apply(this,i),r)},{cancel:()=>{e.clearTimeout(s)}})};var ro,zr=()=>{if(ro!==void 0)return ro;if(typeof navigator>"u")return ro=!1;if(/iP(hone|od|ad)/.test(navigator.userAgent))return ro=!0;let e=navigator.maxTouchPoints;return ro=navigator.platform==="MacIntel"&&e!==void 0&&e>0};var La=(e)=>{let{offsetWidth:n,offsetHeight:r}=e;return{width:n,height:r}},Rc=(e)=>e,Ic=(e)=>{let n=Math.max(e.startIndex-e.overscan,0),s=Math.min(e.endIndex+e.overscan,e.count-1)-n+1,i=Array(s);for(let a=0;a<s;a++)i[a]=n+a;return i},Ua=(e,n)=>{let r=e.scrollElement;if(!r)return;let s=e.targetWindow;if(!s)return;let i=(l)=>{let{width:d,height:c}=l;n({width:Math.round(d),height:Math.round(c)})};if(i(La(r)),!s.ResizeObserver)return()=>{};let a=new s.ResizeObserver((l)=>{let d=()=>{let c=l[0];if(c==null?void 0:c.borderBoxSize){let p=c.borderBoxSize[0];if(p){i({width:p.inlineSize,height:p.blockSize});return}}i(La(r))};e.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(d):d()});return a.observe(r,{box:"border-box"}),()=>{a.unobserve(r)}},Io={passive:!0};var Ec=typeof window>"u"?!0:("onscrollend"in window),_c=(e,n,r)=>{let s=e.scrollElement;if(!s)return;let i=e.targetWindow;if(!i)return;let a=e.options.useScrollendEvent&&Ec,l=0,d=a?null:za(i,()=>n(l,!1),e.options.isScrollingResetDelay),c=(v)=>()=>{l=r(s),d==null||d(),n(l,v)},p=c(!0),f=c(!1);if(s.addEventListener("scroll",p,Io),a)s.addEventListener("scrollend",f,Io);return()=>{if(s.removeEventListener("scroll",p),a)s.removeEventListener("scrollend",f);d==null||d.cancel()}},ja=(e,n)=>_c(e,n,(r)=>{let{horizontal:s,isRtl:i}=e.options;return s?r.scrollLeft*(i&&-1||1):r.scrollTop});var Mc=(e,n,r)=>{if(r.options.useCachedMeasurements){let s=r.indexFromElement(e),i=r.options.getItemKey(s);return r.itemSizeCache.get(i)??r.options.estimateSize(s)}if(n==null?void 0:n.borderBoxSize){let s=n.borderBoxSize[0];if(s)return Math.round(s[r.options.horizontal?"inlineSize":"blockSize"])}if(!n){let s=r.indexFromElement(e),i=r.options.getItemKey(s),a=r.itemSizeCache.get(i);if(a!==void 0)return a}return e[r.options.horizontal?"offsetWidth":"offsetHeight"]},Tc=(e,{adjustments:n=0,behavior:r},s)=>{var i,a;(a=(i=s.scrollElement)==null?void 0:i.scrollTo)==null||a.call(i,{[s.options.horizontal?"left":"top"]:e+n,behavior:r})};var Va=Tc;class Lr{constructor(e){this.unsubs=[],this.scrollElement=null,this.targetWindow=null,this.isScrolling=!1,this.scrollState=null,this.measurementsCache=[],this._flatMeasurements=null,this.itemSizeCache=new Map,this.itemSizeCacheVersion=0,this.laneAssignments=new Map,this.pendingMin=null,this.prevLanes=void 0,this.lanesChangedFlag=!1,this.lanesSettling=!1,this.pendingScrollAnchor=null,this.scrollRect=null,this.scrollOffset=null,this.scrollDirection=null,this.scrollAdjustments=0,this._iosDeferredAdjustment=0,this._iosTouching=!1,this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._intendedScrollOffset=null,this.elementsCache=new Map,this.now=()=>{var n,r,s;return((s=(r=(n=this.targetWindow)==null?void 0:n.performance)==null?void 0:r.now)==null?void 0:s.call(r))??Date.now()},this.observer=(()=>{let n=null,r=()=>{if(n)return n;if(!this.targetWindow||!this.targetWindow.ResizeObserver)return null;return n=new this.targetWindow.ResizeObserver((s)=>{s.forEach((i)=>{let a=()=>{let l=i.target,d=this.indexFromElement(l);if(!l.isConnected){this.observer.unobserve(l);for(let[c,p]of this.elementsCache)if(p===l){this.elementsCache.delete(c);break}return}if(!this.isIndexInRange(d))return;if(this.shouldMeasureDuringScroll(d))this.resizeItem(d,this.options.measureElement(l,i,this))};this.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(a):a()})})};return{disconnect:()=>{var s;(s=r())==null||s.disconnect(),n=null},observe:(s)=>{var i;return(i=r())==null?void 0:i.observe(s,{box:"border-box"})},unobserve:(s)=>{var i;return(i=r())==null?void 0:i.unobserve(s)}}})(),this.range=null,this.setOptions=(n)=>{var r,s;let i={debug:!1,initialOffset:0,overscan:1,paddingStart:0,paddingEnd:0,scrollPaddingStart:0,scrollPaddingEnd:0,horizontal:!1,getItemKey:Rc,rangeExtractor:Ic,onChange:()=>{},measureElement:Mc,initialRect:{width:0,height:0},scrollMargin:0,gap:0,indexAttribute:"data-index",initialMeasurementsCache:[],lanes:1,anchorTo:"start",followOnAppend:!1,scrollEndThreshold:1,isScrollingResetDelay:150,enabled:!0,isRtl:!1,useScrollendEvent:!1,useAnimationFrameWithResizeObserver:!1,laneAssignmentMode:"estimate",useCachedMeasurements:!1};for(let v in n){let g=n[v];if(g!==void 0)i[v]=g}let a=this.options,l=null,d=null,c=!1;if(a!==void 0&&a.enabled&&i.enabled&&i.anchorTo==="end"&&this.scrollElement!==null){let v=a.count,g=i.count,h=this.getMeasurements(),y=v>0?((r=h[0])==null?void 0:r.key)??a.getItemKey(0):null,x=v>0?((s=h[v-1])==null?void 0:s.key)??a.getItemKey(v-1):null;if(g!==v||v>0&&g>0&&(i.getItemKey(0)!==y||i.getItemKey(g-1)!==x)){c=!0;let k=v>0?this.getVirtualItemForOffset(this.getScrollOffset())??h[0]:null;if(k)l=[k.key,this.getScrollOffset()-k.start];let G=i.followOnAppend===!0?"auto":i.followOnAppend||null;if(G&&g>v&&this.isAtEnd(a.scrollEndThreshold)&&(v===0||i.getItemKey(g-1)!==x))d=G}}if(this.options=i,c)this.pendingMin=0,this.itemSizeCacheVersion++;let p=!1,f=0;if(l&&this.scrollOffset!==null){let[v,g]=l,h=this.getMeasurements(),{count:y,getItemKey:x}=this.options,b=0;while(b<y&&x(b)!==v)b++;if(b<y){let N=h[b];if(N){let k=Math.max(0,N.start+g);if(k!==this.scrollOffset)f=k-this.scrollOffset,this.scrollOffset=k,p=!0}}}if(p||d)this.pendingScrollAnchor=[p?l[0]:null,p?l[1]:0,d,f]},this.notify=(n)=>{var r,s;(s=(r=this.options).onChange)==null||s.call(r,this,n)},this.maybeNotify=Rn(()=>(this.calculateRange(),[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]),(n)=>{this.notify(n)},{key:!1,debug:()=>this.options.debug,initialDeps:[this.isScrolling,this.range?this.range.startIndex:null,this.range?this.range.endIndex:null]}),this.cleanup=()=>{if(this.unsubs.filter(Boolean).forEach((n)=>n()),this.unsubs=[],this.observer.disconnect(),this.rafId!=null&&this.targetWindow)this.targetWindow.cancelAnimationFrame(this.rafId),this.rafId=null;this.scrollState=null,this.isScrolling=!1,this.scrollDirection=null,this._iosDeferredAdjustment=0,this._iosTouching=!1,this._iosJustTouchEnded=!1,this.scrollElement=null,this.targetWindow=null},this._didMount=()=>()=>{this.cleanup()},this._willUpdate=()=>{var n;let r=this.options.enabled?this.options.getScrollElement():null;if(this.scrollElement!==r){if(this.cleanup(),!r){this.maybeNotify();return}if(this.scrollElement=r,this.scrollElement&&"ownerDocument"in this.scrollElement)this.targetWindow=this.scrollElement.ownerDocument.defaultView;else this.targetWindow=((n=this.scrollElement)==null?void 0:n.window)??null;if(this.elementsCache.forEach((i)=>{this.observer.observe(i)}),this.unsubs.push(this.options.observeElementRect(this,(i)=>{this.scrollRect=i,this.maybeNotify()})),this.unsubs.push(this.options.observeElementOffset(this,(i,a)=>{if(a&&this._intendedScrollOffset===null&&i===this.scrollOffset)return;if(this._intendedScrollOffset!==null&&Math.abs(i-this._intendedScrollOffset)<1.5)i=this._intendedScrollOffset;this._intendedScrollOffset=null,this.scrollAdjustments=0;let l=this.getScrollOffset();if(this.scrollDirection=a?l===i?this.scrollDirection:l<i?"forward":"backward":null,this.scrollOffset=i,this.isScrolling=a,this._flushIosDeferredIfReady(),this.scrollState)this.scheduleScrollReconcile();this.maybeNotify()})),"addEventListener"in this.scrollElement){let i=this.scrollElement,a=()=>{if(this._iosTouching=!0,this._iosJustTouchEnded=!1,this._iosTouchEndTimerId!==null&&this.targetWindow!=null)this.targetWindow.clearTimeout(this._iosTouchEndTimerId),this._iosTouchEndTimerId=null},l=()=>{if(this._iosTouching=!1,!zr()||this.targetWindow==null)return;this._iosJustTouchEnded=!0,this._iosTouchEndTimerId=this.targetWindow.setTimeout(()=>{this._iosJustTouchEnded=!1,this._iosTouchEndTimerId=null,this._flushIosDeferredIfReady()},150)};i.addEventListener("touchstart",a,Io),i.addEventListener("touchend",l,Io),this.unsubs.push(()=>{if(i.removeEventListener("touchstart",a),i.removeEventListener("touchend",l),this._iosTouchEndTimerId!==null&&this.targetWindow!=null)this.targetWindow.clearTimeout(this._iosTouchEndTimerId),this._iosTouchEndTimerId=null})}this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0})}let s=this.pendingScrollAnchor;if(this.pendingScrollAnchor=null,s&&this.scrollElement&&this.options.enabled){let[i,a,l,d]=s;if(i!==null&&!l)if(zr()&&(this.isScrolling||this._iosTouching||this._iosJustTouchEnded)){if(d!==0)this._iosDeferredAdjustment+=d}else this._scrollToOffset(this.getScrollOffset(),{adjustments:void 0,behavior:void 0});if(l)this.scrollToEnd({behavior:l})}},this._flushIosDeferredIfReady=()=>{if(this._iosDeferredAdjustment===0)return;if(this.isScrolling)return;if(this._iosTouching)return;if(this._iosJustTouchEnded)return;let n=this.getScrollOffset(),r=this.getMaxScrollOffset();if(n<0||n>r)return;if(this._iosDeferredAdjustment<0&&n>=r-1){this._iosDeferredAdjustment=0;return}let s=this._iosDeferredAdjustment;this._iosDeferredAdjustment=0,this._scrollToOffset(n,{adjustments:this.scrollAdjustments+=s,behavior:void 0})},this.rafId=null,this.getSize=()=>{if(!this.options.enabled)return this.scrollRect=null,0;return this.scrollRect=this.scrollRect??this.options.initialRect,this.scrollRect[this.options.horizontal?"width":"height"]},this.getScrollOffset=()=>{if(!this.options.enabled)return this.scrollOffset=null,0;return this.scrollOffset=this.scrollOffset??(typeof this.options.initialOffset==="function"?this.options.initialOffset():this.options.initialOffset),this.scrollOffset},this.getMeasurementOptions=Rn(()=>[this.options.count,this.options.paddingStart,this.options.scrollMargin,this.options.getItemKey,this.options.enabled,this.options.lanes,this.options.laneAssignmentMode,this.options.gap],(n,r,s,i,a,l,d,c)=>{if(this.prevLanes!==void 0&&this.prevLanes!==l)this.lanesChangedFlag=!0;return this.prevLanes=l,this.pendingMin=null,{count:n,paddingStart:r,scrollMargin:s,getItemKey:i,enabled:a,lanes:l,laneAssignmentMode:d,gap:c}},{key:!1}),this.isIndexInRange=(n)=>n>=0&&n<this.options.count,this.getMeasurements=Rn(()=>[this.getMeasurementOptions(),this.itemSizeCacheVersion],({count:n,paddingStart:r,scrollMargin:s,getItemKey:i,enabled:a,lanes:l,laneAssignmentMode:d,gap:c},p)=>{let f=this.itemSizeCache;if(!a)return this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),[];if(this.laneAssignments.size>n){for(let b of this.laneAssignments.keys())if(b>=n)this.laneAssignments.delete(b)}if(this.lanesChangedFlag)this.lanesChangedFlag=!1,this.lanesSettling=!0,this.measurementsCache=[],this.itemSizeCache.clear(),this.laneAssignments.clear(),this.pendingMin=null;if(this.measurementsCache.length===0&&!this.lanesSettling)this.measurementsCache=this.options.initialMeasurementsCache,this.measurementsCache.forEach((b)=>{this.itemSizeCache.set(b.key,b.size)});let v=this.lanesSettling?0:this.pendingMin??0;if(this.pendingMin=null,this.lanesSettling&&this.measurementsCache.length===n)this.lanesSettling=!1;if(l===1){let b=n*2,N=this._flatMeasurements;if(!N||N.length<b){let X=new Float64Array(b);if(N&&v>0)X.set(N.subarray(0,v*2));N=X,this._flatMeasurements=N}let k;if(v===0)k=r+s;else{let X=v-1;k=N[X*2]+N[X*2+1]+c}for(let X=v;X<n;X++){let te=i(X),fe=f.get(te),ye=typeof fe==="number"?fe:this.options.estimateSize(X);N[X*2]=k,N[X*2+1]=ye,k+=ye+c}let G=Oa(n,N,i);return this.measurementsCache=G,G}let g=this.measurementsCache.slice(0,v),h=Array(l).fill(void 0),y=new Float64Array(l),x=0;for(let b=0;b<v;b++){let N=g[b];if(N){if(h[N.lane]===void 0)x++;h[N.lane]=b,y[N.lane]=N.end}}for(let b=v;b<n;b++){let N=i(b),k=this.laneAssignments.get(b),G,X,te=d==="estimate"||f.has(N);if(k!==void 0&&this.options.lanes>1){G=k;let ze=h[G],R=ze!==void 0?g[ze]:void 0;X=R?R.end+c:r+s}else if(x===l){let ze=0,R=y[0],be=h[0];for(let me=1;me<l;me++){let ie=y[me];if(ie<R||ie===R&&h[me]<be)ze=me,R=ie,be=h[me]}if(G=ze,X=R+c,te)this.laneAssignments.set(b,G)}else if(G=b%this.options.lanes,X=r+s,te)this.laneAssignments.set(b,G);let fe=f.get(N),ye=typeof fe==="number"?fe:this.options.estimateSize(b),oe=X+ye;if(g[b]={index:b,start:X,size:ye,end:oe,key:N,lane:G},h[G]===void 0)x++;h[G]=b,y[G]=oe}return this.measurementsCache=g,g},{key:!1,debug:()=>this.options.debug}),this.calculateRange=Rn(()=>[this.getMeasurements(),this.getSize(),this.getScrollOffset(),this.options.lanes],(n,r,s,i)=>{if(n.length===0||r===0)return this.range=null,null;return this.range=kc(n,r,s,i,i===1&&this._flatMeasurements!=null?this._flatMeasurements:null),this.range},{key:!1,debug:()=>this.options.debug}),this.getVirtualIndexes=Rn(()=>{let n=null,r=null,s=this.calculateRange();if(s)n=s.startIndex,r=s.endIndex;return this.maybeNotify.updateDeps([this.isScrolling,n,r]),[this.options.rangeExtractor,this.options.overscan,this.options.count,n,r]},(n,r,s,i,a)=>i===null||a===null?[]:n({startIndex:i,endIndex:a,overscan:r,count:s}),{key:!1,debug:()=>this.options.debug}),this.indexFromElement=(n)=>{let r=this.options.indexAttribute,s=n.getAttribute(r);if(!s)return console.warn(`Missing attribute name '${r}={index}' on measured element.`),-1;return parseInt(s,10)},this.shouldMeasureDuringScroll=(n)=>{var r;if(!this.scrollState||this.scrollState.behavior!=="smooth")return!0;let s=this.scrollState.index??((r=this.getVirtualItemForOffset(this.scrollState.lastTargetOffset))==null?void 0:r.index);if(s!==void 0&&this.range){let i=Math.max(this.options.overscan,Math.ceil((this.range.endIndex-this.range.startIndex)/2)),a=Math.max(0,s-i),l=Math.min(this.options.count-1,s+i);return n>=a&&n<=l}return!0},this.measureElement=(n)=>{if(!n){this.elementsCache.forEach((a,l)=>{if(!a.isConnected)this.observer.unobserve(a),this.elementsCache.delete(l)});return}let r=this.indexFromElement(n);if(!this.isIndexInRange(r))return;let s=this.options.getItemKey(r),i=this.elementsCache.get(s);if(i!==n){if(i)this.observer.unobserve(i);this.observer.observe(n),this.elementsCache.set(s,n)}if((!this.isScrolling||this.scrollState)&&this.shouldMeasureDuringScroll(r))this.resizeItem(r,this.options.measureElement(n,void 0,this))},this.resizeItem=(n,r)=>{var s,i;if(!this.isIndexInRange(n))return;let a,l,d,c=this._flatMeasurements;if(this.options.lanes===1&&c!==null)d=this.options.getItemKey(n),l=c[n*2],a=c[n*2+1];else{let v=this.measurementsCache[n];if(!v)return;d=v.key,l=v.start,a=v.size}let p=this.itemSizeCache.get(d)??a,f=r-p;if(f!==0){let v=this.options.anchorTo==="end"&&((s=this.scrollState)==null?void 0:s.behavior)!=="smooth"&&this.getVirtualDistanceFromEnd()<=this.options.scrollEndThreshold,g=v?this.getTotalSize():0,h=this.getScrollOffset()+this.scrollAdjustments,x=!this.itemSizeCache.has(d)?l<h:l+p<=h&&this.scrollDirection!=="backward",b=((i=this.scrollState)==null?void 0:i.behavior)!=="smooth"&&(this.shouldAdjustScrollPositionOnItemSizeChange!==void 0?this.shouldAdjustScrollPositionOnItemSizeChange(this.measurementsCache[n]??{index:n,key:d,start:l,size:a,end:l+a,lane:0},f,this):x);if(this.pendingMin===null||n<this.pendingMin)this.pendingMin=n;this.itemSizeCache.set(d,r),this.itemSizeCacheVersion++;let N=!1;if(v)N=this.applyScrollAdjustment(this.getTotalSize()-g);else if(b)N=this.applyScrollAdjustment(f);this.notify(N)}},this.getVirtualItems=Rn(()=>[this.getVirtualIndexes(),this.getMeasurements()],(n,r)=>{let s=[];for(let i=0,a=n.length;i<a;i++){let l=n[i],d=r[l];s.push(d)}return s},{key:!1,debug:()=>this.options.debug}),this.getVirtualItemForOffset=(n)=>{let r=this.getMeasurements();if(r.length===0)return;let s=this._flatMeasurements,i=this.options.lanes===1&&s!=null,a=Ba(0,r.length-1,i?(l)=>s[l*2]:(l)=>$r(r[l]).start,n);return $r(r[a])},this.getMaxScrollOffset=()=>{if(!this.scrollElement)return 0;if("scrollHeight"in this.scrollElement)return this.options.horizontal?this.scrollElement.scrollWidth-this.scrollElement.clientWidth:this.scrollElement.scrollHeight-this.scrollElement.clientHeight;else{let n=this.scrollElement.document.documentElement;return this.options.horizontal?n.scrollWidth-this.scrollElement.innerWidth:n.scrollHeight-this.scrollElement.innerHeight}},this.getVirtualDistanceFromEnd=()=>Math.max(this.getTotalSize()-this.getSize()-this.getScrollOffset(),0),this.getDistanceFromEnd=()=>Math.max(this.getMaxScrollOffset()-this.getScrollOffset(),0),this.isAtEnd=(n=this.options.scrollEndThreshold)=>this.getDistanceFromEnd()<=n,this.getOffsetForAlignment=(n,r,s=0)=>{if(!this.scrollElement)return 0;let i=this.getSize(),a=this.getScrollOffset();if(r==="auto")r=n>=a+i?"end":"start";if(r==="center")n+=(s-i)/2;else if(r==="end")n-=i;let l=this.getMaxScrollOffset();return Math.max(Math.min(l,n),0)},this.getOffsetForIndex=(n,r="auto")=>{n=Math.max(0,Math.min(n,this.options.count-1));let s=this.getSize(),i=this.getScrollOffset(),a=this.measurementsCache[n];if(!a)return;if(r==="auto")if(a.end>=i+s-this.options.scrollPaddingEnd)r="end";else if(a.start<=i+this.options.scrollPaddingStart)r="start";else return[i,r];if(r==="end"&&n===this.options.count-1)return[this.getMaxScrollOffset(),r];let l=r==="end"?a.end+this.options.scrollPaddingEnd:a.start-this.options.scrollPaddingStart;return[this.getOffsetForAlignment(l,r,a.size),r]},this.scrollToOffset=(n,{align:r="start",behavior:s="auto"}={})=>{this._iosDeferredAdjustment=0;let i=this.getOffsetForAlignment(n,r),a=this.now();this.scrollState={index:null,align:r,behavior:s,startedAt:a,lastTargetOffset:i,stableFrames:0},this._scrollToOffset(i,{adjustments:void 0,behavior:s}),this.scheduleScrollReconcile()},this.scrollToIndex=(n,{align:r="auto",behavior:s="auto"}={})=>{this._iosDeferredAdjustment=0,n=Math.max(0,Math.min(n,this.options.count-1));let i=this.getOffsetForIndex(n,r);if(!i)return;let[a,l]=i,d=this.now();this.scrollState={index:n,align:l,behavior:s,startedAt:d,lastTargetOffset:a,stableFrames:0},this._scrollToOffset(a,{adjustments:void 0,behavior:s}),this.scheduleScrollReconcile()},this.scrollBy=(n,{behavior:r="auto"}={})=>{let s=this.getScrollOffset()+n,i=this.now();this.scrollState={index:null,align:"start",behavior:r,startedAt:i,lastTargetOffset:s,stableFrames:0},this._scrollToOffset(s,{adjustments:void 0,behavior:r}),this.scheduleScrollReconcile()},this.scrollToEnd=({behavior:n="auto"}={})=>{if(this.options.count>0){this.scrollToIndex(this.options.count-1,{align:"end",behavior:n});return}this.scrollToOffset(Math.max(this.getTotalSize()-this.getSize(),0),{behavior:n})},this.getTotalSize=()=>{var n;let r=this.getMeasurements(),s;if(r.length===0)s=this.options.paddingStart;else if(this.options.lanes===1){let i=r.length-1,a=this._flatMeasurements;if(a!=null)s=a[i*2]+a[i*2+1];else s=((n=r[i])==null?void 0:n.end)??0}else{let i=Array(this.options.lanes).fill(null),a=r.length-1;while(a>=0&&i.some((l)=>l===null)){let l=r[a];if(i[l.lane]===null)i[l.lane]=l.end;a--}s=Math.max(...i.filter((l)=>l!==null))}return Math.max(s-this.options.scrollMargin+this.options.paddingEnd,0)},this.takeSnapshot=()=>{let n=[];if(this.itemSizeCache.size===0)return n;let r=this.getMeasurements();for(let s of r)if(s&&this.itemSizeCache.has(s.key))n.push({index:s.index,key:s.key,start:s.start,size:s.size,end:s.end,lane:s.lane});return n},this._scrollToOffset=(n,{adjustments:r,behavior:s})=>{this._intendedScrollOffset=n+(r??0),this.options.scrollToFn(n,{behavior:s,adjustments:r},this)},this.measure=()=>{this.pendingMin=null,this.itemSizeCache.clear(),this.laneAssignments.clear(),this.itemSizeCacheVersion++,this.notify(!1)},this.setOptions(e)}applyScrollAdjustment(e,n){if(e===0)return!1;if(zr()&&(this.isScrolling||this._iosTouching||this._iosJustTouchEnded))return this._iosDeferredAdjustment+=e,!1;else{if(this._scrollToOffset(this.getScrollOffset(),{adjustments:this.scrollAdjustments+=e,behavior:n}),this.scrollOffset!==null){if(this.scrollOffset+=this.scrollAdjustments,this.scrollOffset<0)this.scrollOffset=0;this.scrollAdjustments=0}return!0}}scheduleScrollReconcile(){if(!this.targetWindow){this.scrollState=null;return}if(this.rafId!=null)return;this.rafId=this.targetWindow.requestAnimationFrame(()=>{this.rafId=null,this.reconcileScroll()})}reconcileScroll(){if(!this.scrollState)return;if(!this.scrollElement)return;let n=5000;if(this.now()-this.scrollState.startedAt>n){this.scrollState=null;return}let r=this.scrollState.index!=null?this.getOffsetForIndex(this.scrollState.index,this.scrollState.align):void 0,s=r?r[0]:this.scrollState.lastTargetOffset,i=1,a=s!==this.scrollState.lastTargetOffset;if(!a&&$a(s,this.getScrollOffset())){if(this.scrollState.stableFrames++,this.scrollState.stableFrames>=i){if(this.getScrollOffset()!==s)this._scrollToOffset(s,{adjustments:void 0,behavior:"auto"});this.scrollState=null;return}}else if(this.scrollState.stableFrames=0,a){let l=this.getSize()||600,d=Math.abs(s-this.getScrollOffset()),c=this.scrollState.behavior==="smooth"&&d>l;if(this.scrollState.lastTargetOffset=s,!c)this.scrollState.behavior="auto";this._scrollToOffset(s,{adjustments:void 0,behavior:c?"smooth":"auto"})}this.scheduleScrollReconcile()}}var Ba=(e,n,r,s)=>{while(e<=n){let i=(e+n)/2|0,a=r(i);if(a<s)e=i+1;else if(a>s)n=i-1;else return i}if(e>0)return e-1;else return 0};function Nc(e,n,r){let s=0;while(s<=n){let i=(s+n)/2|0,a=e[i*2];if(a<r)s=i+1;else if(a>r)n=i-1;else return i}return s>0?s-1:0}function kc(e,n,r,s,i){let a=e.length-1;if(e.length<=s)return{startIndex:0,endIndex:a};if(s===1&&i!==null){let p=Nc(i,a,r),f=p,v=r+n;while(f<a&&i[f*2]+i[f*2+1]<v)f++;return{startIndex:p,endIndex:f}}let d=Ba(0,a,(p)=>e[p].start,r),c=d;if(s===1)while(c<a&&e[c].end<r+n)c++;else if(s>1){let p=Array(s).fill(0);while(c<a&&p.some((v)=>v<r+n)){let v=e[c];p[v.lane]=v.end,c++}let f=Array(s).fill(r+n);while(d>=0&&f.some((v)=>v>=r)){let v=e[d];f[v.lane]=v.start,d--}d=Math.max(0,d-d%s),c=Math.min(a,c+(s-1-c%s))}return{startIndex:d,endIndex:c}}var Ur=typeof document<"u"?$e:m;function Pc({useFlushSync:e=!0,directDomUpdates:n=!1,directDomUpdatesMode:r="transform",...s}){let i=rn((f)=>f+1,0)[1],a=_({enabled:n,mode:r,container:null,lastSize:null,lastPositions:new WeakMap,prevRange:null});a.current.enabled=n,a.current.mode=r;let l=(f)=>{let v=a.current;if(!v.enabled||!v.container)return;let g=f.getTotalSize();if(g!==v.lastSize){v.lastSize=g;let h=f.options.horizontal?"width":"height";v.container.style[h]=`${g}px`}},d=(f)=>{let v=a.current;if(!v.enabled||!v.container)return;l(f);let g=!!f.options.horizontal,h=v.mode==="transform",y=g?"left":"top",x=f.options.scrollMargin,b=f.getVirtualItems();for(let N of b){let k=N.start-x,G=f.elementsCache.get(N.key);if(!G)continue;if(v.lastPositions.get(G)===k)continue;if(v.lastPositions.set(G,k),h)G.style.transform=g?`translate3d(${k}px, 0, 0)`:`translate3d(0, ${k}px, 0)`;else G.style[y]=`${k}px`}},c={...s,onChange:(f,v)=>{var g;let h=a.current,y=!0;if(h.enabled){d(f);let x=f.range,b=h.prevRange;if(y=!b||b.isScrolling!==f.isScrolling||b.startIndex!==(x==null?void 0:x.startIndex)||b.endIndex!==(x==null?void 0:x.endIndex),y)h.prevRange=x?{startIndex:x.startIndex,endIndex:x.endIndex,isScrolling:f.isScrolling}:null}if(y)if(e&&v)nn(i);else i();(g=s.onChange)==null||g.call(s,f,v)}},[p]=u(()=>{let f=new Lr(c);return Object.assign(f,{containerRef:(v)=>{let g=a.current;if(g.container=v,g.lastSize=null,v&&g.enabled){let h=f.getTotalSize();g.lastSize=h;let y=f.options.horizontal?"width":"height";v.style[y]=`${h}px`}}})});return p.setOptions(c),Ur(()=>p._didMount(),[]),Ur(()=>(l(p),p._willUpdate())),Ur(()=>{d(p)}),p}function Eo(e){return Pc({observeElementRect:Ua,observeElementOffset:ja,scrollToFn:Va,...e})}S();function Ha({id:e,item:n,position:r,active:s,className:i,dragState:a,isNextItemDragging:l}){let d=a?.draggedIds.has(n.id),c=a?.isActive,{ref:p,isDropTarget:f}=Or({id:e,data:{type:"reorder",item:n,position:r},disabled:!s||d||!c});if(d||l)return null;return t("div",{ref:p,className:E("absolute top-0 bottom-0 w-4 flex-shrink-0 flex items-center justify-center pointer-events-auto z-50",r==="before"?"-left-2 -translate-x-1/2":"-right-2 translate-x-1/2",i),children:t("div",{className:E("h-full w-[3px] rounded-full transition-colors",f&&s&&!d&&c?"bg-primary":"bg-transparent")})})}function Ga({folders:e,files:n,totalFolders:r,totalFiles:s,renderItem:i,foldersExpanded:a,setFoldersExpanded:l,filesExpanded:d,setFilesExpanded:c,hasNextFoldersPage:p,hasNextFilesPage:f,isFetchingNextFoldersPage:v,isFetchingNextFilesPage:g,fetchNextFoldersPage:h,fetchNextFilesPage:y,formatCount:x,formatSize:b,totalFoldersSize:N,totalFilesSize:k,handleEmptyAreaClick:G,dragState:X,sort:te,scrollContainerRef:fe}){let ye=_(null),[oe,ze]=u(5);m(()=>{let ie=()=>{if(!ye.current)return;let Ge=ye.current.offsetWidth;if(Ge<640)ze(2);else if(Ge<768)ze(2);else if(Ge<1024)ze(3);else if(Ge<1280)ze(4);else ze(5)};ie();let xe=new ResizeObserver(ie);if(ye.current)xe.observe(ye.current);return()=>xe.disconnect()},[]);let R=D(()=>{let ie=[],xe=r??e.length;if(xe>0){if(ie.push({type:"header",kind:"folder"}),a){let Qe=Math.ceil(xe/oe);for(let ee=0;ee<Qe;ee++)ie.push({type:"row",kind:"folder",rowIndex:ee})}}let Ge=s??n.length;if(Ge>0){if(ie.push({type:"header",kind:"file"}),d){let Qe=Math.ceil(Ge/oe);for(let ee=0;ee<Qe;ee++)ie.push({type:"row",kind:"file",rowIndex:ee})}}return ie},[a,d,e.length,n.length,r,s,oe]),be=Eo({count:R.length,getScrollElement:()=>fe.current,estimateSize:(ie)=>R[ie]?.type==="header"?40:350,getItemKey:P((ie)=>{let xe=R[ie];if(!xe)return ie;if(xe.type==="header")return`header-${xe.kind}`;return`row-${xe.kind}-${xe.rowIndex}`},[R]),overscan:5}),me=be.getVirtualItems();return m(()=>{if(me.length===0)return;for(let ie of me){let xe=R[ie.index];if(xe?.type==="row"){let Ge=xe.kind==="folder",Qe=Ge?e:n,ee=xe.rowIndex*oe,Ye=!Qe[ee],Je=ee>=Qe.length-oe*3;if(Ge&&p&&!v){if(Ye||Je){h();break}}else if(!Ge&&f&&!g){if(Ye||Je){y();break}}}}},[me,R,e.length,n.length,p,f,v,g,h,y,oe]),t("div",{ref:ye,className:"flex-1 p-4 relative",onClick:G,children:t("div",{className:"relative w-full",style:{height:`${be.getTotalSize()}px`},children:me.map((ie)=>{let xe=R[ie.index];if(xe.type==="header"){let Je=xe.kind==="folder",Se=Je?r??e.length:s??n.length,Ve=Je?N??-1:k??-1,lt=Ve>-1,Fe=Je?a:d,He=Je?l:c;return t("div",{ref:be.measureElement,"data-index":ie.index,className:"absolute top-0 left-0 w-full z-10 bg-background",style:{transform:`translateY(${ie.start}px)`},children:o("button",{onClick:(at)=>{at.stopPropagation(),He(!Fe)},className:"mb-3 flex items-center gap-2 text-sm text-muted-foreground hover:text-foreground",children:[Fe?t(ve,{className:"h-4 w-4"}):t(Et,{className:"h-4 w-4"}),o("span",{children:[x(Se,!Je),lt?` • ${b(Ve)}`:""]})]})},`header-${xe.kind}`)}let Ge=xe.kind==="folder",Qe=Ge?e:n,ee=xe.rowIndex*oe,Ye=[];for(let Je=0;Je<oe;Je++)Ye.push(Qe[ee+Je]);return t("div",{ref:be.measureElement,"data-index":ie.index,className:"absolute top-0 left-0 w-full grid gap-4",style:{transform:`translateY(${ie.start}px)`,gridTemplateColumns:`repeat(${oe}, minmax(0, 1fr))`},children:Ye.map((Je,Se)=>{let Ve=ee+Se;if(!Je){let lt=Ge?r??e.length:s??n.length;if(Ve<lt)return t("div",{className:"aspect-square bg-muted animate-pulse rounded-lg"},`skeleton-${Ve}`);return t("div",{},`empty-${Ve}`)}return o("div",{className:"group-reorder relative flex pb-10",children:[t(Ha,{id:`reorder-before-${xe.kind}-${Je.id}`,item:Je,position:"before",active:te?.field==="custom",dragState:X}),t("div",{className:"flex-1 min-w-0",children:i(Je)}),t(Ha,{id:`reorder-after-${xe.kind}-${Je.id}`,item:Je,position:"after",active:te?.field==="custom",dragState:X,isNextItemDragging:Qe[Ve+1]&&X?.draggedIds.has(Qe[Ve+1].id)})]},Je.id)})},`row-${xe.kind}-${xe.rowIndex}`)})})})}S();function on(e,n){return typeof e==="function"?e(n):e}function zt(e,n){return(r)=>{n.setState((s)=>({...s,[e]:on(r,s[e])}))}}function No(e){return e instanceof Function}function Ac(e){return Array.isArray(e)&&e.every((n)=>typeof n==="number")}function Dc(e,n){let r=[],s=(i)=>{i.forEach((a)=>{r.push(a);let l=n(a);if(l!=null&&l.length)s(l)})};return s(e),r}function We(e,n,r){let s=[],i;return(a)=>{let l;if(r.key&&r.debug)l=Date.now();let d=e(a);if(!(d.length!==s.length||d.some((f,v)=>s[v]!==f)))return i;s=d;let p;if(r.key&&r.debug)p=Date.now();if(i=n(...d),r==null||r.onChange==null||r.onChange(i),r.key&&r.debug){if(r!=null&&r.debug()){let f=Math.round((Date.now()-l)*100)/100,v=Math.round((Date.now()-p)*100)/100,g=v/16,h=(y,x)=>{y=String(y);while(y.length<x)y=" "+y;return y};console.info(`%c⏱ ${h(v,5)} /${h(f,5)} ms`,`
|
|
9
|
-
font-size: .6rem;
|
|
10
|
-
font-weight: bold;
|
|
11
|
-
color: hsl(${Math.max(0,Math.min(120-120*g,120))}deg 100% 31%);`,r==null?void 0:r.key)}}return i}}function Ke(e,n,r,s){return{debug:()=>{var i;return(i=e==null?void 0:e.debugAll)!=null?i:e[n]},key:!1,onChange:s}}function Oc(e,n,r,s){let i=()=>{var l;return(l=a.getValue())!=null?l:e.options.renderFallbackValue},a={id:`${n.id}_${r.id}`,row:n,column:r,getValue:()=>n.getValue(s),renderValue:i,getContext:We(()=>[e,r,n,a],(l,d,c,p)=>({table:l,column:d,row:c,cell:p,getValue:p.getValue,renderValue:p.renderValue}),Ke(e.options,"debugCells","cell.getContext"))};return e._features.forEach((l)=>{l.createCell==null||l.createCell(a,r,n,e)},{}),a}function $c(e,n,r,s){var i,a;let d={...e._getDefaultColumnDef(),...n},c=d.accessorKey,p=(i=(a=d.id)!=null?a:c?typeof String.prototype.replaceAll==="function"?c.replaceAll(".","_"):c.replace(/\./g,"_"):void 0)!=null?i:typeof d.header==="string"?d.header:void 0,f;if(d.accessorFn)f=d.accessorFn;else if(c)if(c.includes("."))f=(g)=>{let h=g;for(let x of c.split(".")){var y;h=(y=h)==null?void 0:y[x]}return h};else f=(g)=>g[d.accessorKey];if(!p)throw Error();let v={id:`${String(p)}`,accessorFn:f,parent:s,depth:r,columnDef:d,columns:[],getFlatColumns:We(()=>[!0],()=>{var g;return[v,...(g=v.columns)==null?void 0:g.flatMap((h)=>h.getFlatColumns())]},Ke(e.options,"debugColumns","column.getFlatColumns")),getLeafColumns:We(()=>[e._getOrderColumnsFn()],(g)=>{var h;if((h=v.columns)!=null&&h.length){let y=v.columns.flatMap((x)=>x.getLeafColumns());return g(y)}return[v]},Ke(e.options,"debugColumns","column.getLeafColumns"))};for(let g of e._features)g.createColumn==null||g.createColumn(v,e);return v}var kt="debugHeaders";function Wa(e,n,r){var s;let a={id:(s=r.id)!=null?s:n.id,column:n,index:r.index,isPlaceholder:!!r.isPlaceholder,placeholderId:r.placeholderId,depth:r.depth,subHeaders:[],colSpan:0,rowSpan:0,headerGroup:null,getLeafHeaders:()=>{let l=[],d=(c)=>{if(c.subHeaders&&c.subHeaders.length)c.subHeaders.map(d);l.push(c)};return d(a),l},getContext:()=>({table:e,header:a,column:n})};return e._features.forEach((l)=>{l.createHeader==null||l.createHeader(a,e)}),a}var zc={createTable:(e)=>{e.getHeaderGroups=We(()=>[e.getAllColumns(),e.getVisibleLeafColumns(),e.getState().columnPinning.left,e.getState().columnPinning.right],(n,r,s,i)=>{var a,l;let d=(a=s==null?void 0:s.map((v)=>r.find((g)=>g.id===v)).filter(Boolean))!=null?a:[],c=(l=i==null?void 0:i.map((v)=>r.find((g)=>g.id===v)).filter(Boolean))!=null?l:[],p=r.filter((v)=>!(s!=null&&s.includes(v.id))&&!(i!=null&&i.includes(v.id)));return _o(n,[...d,...p,...c],e)},Ke(e.options,kt,"getHeaderGroups")),e.getCenterHeaderGroups=We(()=>[e.getAllColumns(),e.getVisibleLeafColumns(),e.getState().columnPinning.left,e.getState().columnPinning.right],(n,r,s,i)=>(r=r.filter((a)=>!(s!=null&&s.includes(a.id))&&!(i!=null&&i.includes(a.id))),_o(n,r,e,"center")),Ke(e.options,kt,"getCenterHeaderGroups")),e.getLeftHeaderGroups=We(()=>[e.getAllColumns(),e.getVisibleLeafColumns(),e.getState().columnPinning.left],(n,r,s)=>{var i;let a=(i=s==null?void 0:s.map((l)=>r.find((d)=>d.id===l)).filter(Boolean))!=null?i:[];return _o(n,a,e,"left")},Ke(e.options,kt,"getLeftHeaderGroups")),e.getRightHeaderGroups=We(()=>[e.getAllColumns(),e.getVisibleLeafColumns(),e.getState().columnPinning.right],(n,r,s)=>{var i;let a=(i=s==null?void 0:s.map((l)=>r.find((d)=>d.id===l)).filter(Boolean))!=null?i:[];return _o(n,a,e,"right")},Ke(e.options,kt,"getRightHeaderGroups")),e.getFooterGroups=We(()=>[e.getHeaderGroups()],(n)=>[...n].reverse(),Ke(e.options,kt,"getFooterGroups")),e.getLeftFooterGroups=We(()=>[e.getLeftHeaderGroups()],(n)=>[...n].reverse(),Ke(e.options,kt,"getLeftFooterGroups")),e.getCenterFooterGroups=We(()=>[e.getCenterHeaderGroups()],(n)=>[...n].reverse(),Ke(e.options,kt,"getCenterFooterGroups")),e.getRightFooterGroups=We(()=>[e.getRightHeaderGroups()],(n)=>[...n].reverse(),Ke(e.options,kt,"getRightFooterGroups")),e.getFlatHeaders=We(()=>[e.getHeaderGroups()],(n)=>n.map((r)=>r.headers).flat(),Ke(e.options,kt,"getFlatHeaders")),e.getLeftFlatHeaders=We(()=>[e.getLeftHeaderGroups()],(n)=>n.map((r)=>r.headers).flat(),Ke(e.options,kt,"getLeftFlatHeaders")),e.getCenterFlatHeaders=We(()=>[e.getCenterHeaderGroups()],(n)=>n.map((r)=>r.headers).flat(),Ke(e.options,kt,"getCenterFlatHeaders")),e.getRightFlatHeaders=We(()=>[e.getRightHeaderGroups()],(n)=>n.map((r)=>r.headers).flat(),Ke(e.options,kt,"getRightFlatHeaders")),e.getCenterLeafHeaders=We(()=>[e.getCenterFlatHeaders()],(n)=>n.filter((r)=>{var s;return!((s=r.subHeaders)!=null&&s.length)}),Ke(e.options,kt,"getCenterLeafHeaders")),e.getLeftLeafHeaders=We(()=>[e.getLeftFlatHeaders()],(n)=>n.filter((r)=>{var s;return!((s=r.subHeaders)!=null&&s.length)}),Ke(e.options,kt,"getLeftLeafHeaders")),e.getRightLeafHeaders=We(()=>[e.getRightFlatHeaders()],(n)=>n.filter((r)=>{var s;return!((s=r.subHeaders)!=null&&s.length)}),Ke(e.options,kt,"getRightLeafHeaders")),e.getLeafHeaders=We(()=>[e.getLeftHeaderGroups(),e.getCenterHeaderGroups(),e.getRightHeaderGroups()],(n,r,s)=>{var i,a,l,d,c,p;return[...(i=(a=n[0])==null?void 0:a.headers)!=null?i:[],...(l=(d=r[0])==null?void 0:d.headers)!=null?l:[],...(c=(p=s[0])==null?void 0:p.headers)!=null?c:[]].map((f)=>f.getLeafHeaders()).flat()},Ke(e.options,kt,"getLeafHeaders"))}};function _o(e,n,r,s){var i,a;let l=0,d=function(g,h){if(h===void 0)h=1;l=Math.max(l,h),g.filter((y)=>y.getIsVisible()).forEach((y)=>{var x;if((x=y.columns)!=null&&x.length)d(y.columns,h+1)},0)};d(e);let c=[],p=(g,h)=>{let y={depth:h,id:[s,`${h}`].filter(Boolean).join("_"),headers:[]},x=[];if(g.forEach((b)=>{let N=[...x].reverse()[0],k=b.column.depth===y.depth,G,X=!1;if(k&&b.column.parent)G=b.column.parent;else G=b.column,X=!0;if(N&&(N==null?void 0:N.column)===G)N.subHeaders.push(b);else{let te=Wa(r,G,{id:[s,h,G.id,b==null?void 0:b.id].filter(Boolean).join("_"),isPlaceholder:X,placeholderId:X?`${x.filter((fe)=>fe.column===G).length}`:void 0,depth:h,index:x.length});te.subHeaders.push(b),x.push(te)}y.headers.push(b),b.headerGroup=y}),c.push(y),h>0)p(x,h-1)},f=n.map((g,h)=>Wa(r,g,{depth:l,index:h}));p(f,l-1),c.reverse();let v=(g)=>g.filter((y)=>y.column.getIsVisible()).map((y)=>{let x=0,b=0,N=[0];if(y.subHeaders&&y.subHeaders.length)N=[],v(y.subHeaders).forEach((G)=>{let{colSpan:X,rowSpan:te}=G;x+=X,N.push(te)});else x=1;let k=Math.min(...N);return b=b+k,y.colSpan=x,y.rowSpan=b,{colSpan:x,rowSpan:b}});return v((i=(a=c[0])==null?void 0:a.headers)!=null?i:[]),c}var Uc=(e,n,r,s,i,a,l)=>{let d={id:n,index:s,original:r,depth:i,parentId:l,_valuesCache:{},_uniqueValuesCache:{},getValue:(c)=>{if(d._valuesCache.hasOwnProperty(c))return d._valuesCache[c];let p=e.getColumn(c);if(!(p!=null&&p.accessorFn))return;return d._valuesCache[c]=p.accessorFn(d.original,s),d._valuesCache[c]},getUniqueValues:(c)=>{if(d._uniqueValuesCache.hasOwnProperty(c))return d._uniqueValuesCache[c];let p=e.getColumn(c);if(!(p!=null&&p.accessorFn))return;if(!p.columnDef.getUniqueValues)return d._uniqueValuesCache[c]=[d.getValue(c)],d._uniqueValuesCache[c];return d._uniqueValuesCache[c]=p.columnDef.getUniqueValues(d.original,s),d._uniqueValuesCache[c]},renderValue:(c)=>{var p;return(p=d.getValue(c))!=null?p:e.options.renderFallbackValue},subRows:a!=null?a:[],getLeafRows:()=>Dc(d.subRows,(c)=>c.subRows),getParentRow:()=>d.parentId?e.getRow(d.parentId,!0):void 0,getParentRows:()=>{let c=[],p=d;while(!0){let f=p.getParentRow();if(!f)break;c.push(f),p=f}return c.reverse()},getAllCells:We(()=>[e.getAllLeafColumns()],(c)=>c.map((p)=>Oc(e,d,p,p.id)),Ke(e.options,"debugRows","getAllCells")),_getAllCellsByColumnId:We(()=>[d.getAllCells()],(c)=>c.reduce((p,f)=>(p[f.column.id]=f,p),{}),Ke(e.options,"debugRows","getAllCellsByColumnId"))};for(let c=0;c<e._features.length;c++){let p=e._features[c];p==null||p.createRow==null||p.createRow(d,e)}return d},jc={createColumn:(e,n)=>{e._getFacetedRowModel=n.options.getFacetedRowModel&&n.options.getFacetedRowModel(n,e.id),e.getFacetedRowModel=()=>{if(!e._getFacetedRowModel)return n.getPreFilteredRowModel();return e._getFacetedRowModel()},e._getFacetedUniqueValues=n.options.getFacetedUniqueValues&&n.options.getFacetedUniqueValues(n,e.id),e.getFacetedUniqueValues=()=>{if(!e._getFacetedUniqueValues)return new Map;return e._getFacetedUniqueValues()},e._getFacetedMinMaxValues=n.options.getFacetedMinMaxValues&&n.options.getFacetedMinMaxValues(n,e.id),e.getFacetedMinMaxValues=()=>{if(!e._getFacetedMinMaxValues)return;return e._getFacetedMinMaxValues()}}},Ya=(e,n,r)=>{var s,i;let a=r==null||(s=r.toString())==null?void 0:s.toLowerCase();return Boolean((i=e.getValue(n))==null||(i=i.toString())==null||(i=i.toLowerCase())==null?void 0:i.includes(a))};Ya.autoRemove=(e)=>Qt(e);var Ja=(e,n,r)=>{var s;return Boolean((s=e.getValue(n))==null||(s=s.toString())==null?void 0:s.includes(r))};Ja.autoRemove=(e)=>Qt(e);var Za=(e,n,r)=>{var s;return((s=e.getValue(n))==null||(s=s.toString())==null?void 0:s.toLowerCase())===(r==null?void 0:r.toLowerCase())};Za.autoRemove=(e)=>Qt(e);var el=(e,n,r)=>{var s;return(s=e.getValue(n))==null?void 0:s.includes(r)};el.autoRemove=(e)=>Qt(e);var tl=(e,n,r)=>!r.some((s)=>{var i;return!((i=e.getValue(n))!=null&&i.includes(s))});tl.autoRemove=(e)=>Qt(e)||!(e!=null&&e.length);var nl=(e,n,r)=>r.some((s)=>{var i;return(i=e.getValue(n))==null?void 0:i.includes(s)});nl.autoRemove=(e)=>Qt(e)||!(e!=null&&e.length);var ol=(e,n,r)=>e.getValue(n)===r;ol.autoRemove=(e)=>Qt(e);var rl=(e,n,r)=>e.getValue(n)==r;rl.autoRemove=(e)=>Qt(e);var is=(e,n,r)=>{let[s,i]=r,a=e.getValue(n);return a>=s&&a<=i};is.resolveFilterValue=(e)=>{let[n,r]=e,s=typeof n!=="number"?parseFloat(n):n,i=typeof r!=="number"?parseFloat(r):r,a=n===null||Number.isNaN(s)?-1/0:s,l=r===null||Number.isNaN(i)?1/0:i;if(a>l){let d=a;a=l,l=d}return[a,l]};is.autoRemove=(e)=>Qt(e)||Qt(e[0])&&Qt(e[1]);var en={includesString:Ya,includesStringSensitive:Ja,equalsString:Za,arrIncludes:el,arrIncludesAll:tl,arrIncludesSome:nl,equals:ol,weakEquals:rl,inNumberRange:is};function Qt(e){return e===void 0||e===null||e===""}var Vc={getDefaultColumnDef:()=>({filterFn:"auto"}),getInitialState:(e)=>({columnFilters:[],...e}),getDefaultOptions:(e)=>({onColumnFiltersChange:zt("columnFilters",e),filterFromLeafRows:!1,maxLeafRowFilterDepth:100}),createColumn:(e,n)=>{e.getAutoFilterFn=()=>{let r=n.getCoreRowModel().flatRows[0],s=r==null?void 0:r.getValue(e.id);if(typeof s==="string")return en.includesString;if(typeof s==="number")return en.inNumberRange;if(typeof s==="boolean")return en.equals;if(s!==null&&typeof s==="object")return en.equals;if(Array.isArray(s))return en.arrIncludes;return en.weakEquals},e.getFilterFn=()=>{var r,s;return No(e.columnDef.filterFn)?e.columnDef.filterFn:e.columnDef.filterFn==="auto"?e.getAutoFilterFn():(r=(s=n.options.filterFns)==null?void 0:s[e.columnDef.filterFn])!=null?r:en[e.columnDef.filterFn]},e.getCanFilter=()=>{var r,s,i;return((r=e.columnDef.enableColumnFilter)!=null?r:!0)&&((s=n.options.enableColumnFilters)!=null?s:!0)&&((i=n.options.enableFilters)!=null?i:!0)&&!!e.accessorFn},e.getIsFiltered=()=>e.getFilterIndex()>-1,e.getFilterValue=()=>{var r;return(r=n.getState().columnFilters)==null||(r=r.find((s)=>s.id===e.id))==null?void 0:r.value},e.getFilterIndex=()=>{var r,s;return(r=(s=n.getState().columnFilters)==null?void 0:s.findIndex((i)=>i.id===e.id))!=null?r:-1},e.setFilterValue=(r)=>{n.setColumnFilters((s)=>{let i=e.getFilterFn(),a=s==null?void 0:s.find((f)=>f.id===e.id),l=on(r,a?a.value:void 0);if(Xa(i,l,e)){var d;return(d=s==null?void 0:s.filter((f)=>f.id!==e.id))!=null?d:[]}let c={id:e.id,value:l};if(a){var p;return(p=s==null?void 0:s.map((f)=>{if(f.id===e.id)return c;return f}))!=null?p:[]}if(s!=null&&s.length)return[...s,c];return[c]})}},createRow:(e,n)=>{e.columnFilters={},e.columnFiltersMeta={}},createTable:(e)=>{e.setColumnFilters=(n)=>{let r=e.getAllLeafColumns(),s=(i)=>{var a;return(a=on(n,i))==null?void 0:a.filter((l)=>{let d=r.find((c)=>c.id===l.id);if(d){let c=d.getFilterFn();if(Xa(c,l.value,d))return!1}return!0})};e.options.onColumnFiltersChange==null||e.options.onColumnFiltersChange(s)},e.resetColumnFilters=(n)=>{var r,s;e.setColumnFilters(n?[]:(r=(s=e.initialState)==null?void 0:s.columnFilters)!=null?r:[])},e.getPreFilteredRowModel=()=>e.getCoreRowModel(),e.getFilteredRowModel=()=>{if(!e._getFilteredRowModel&&e.options.getFilteredRowModel)e._getFilteredRowModel=e.options.getFilteredRowModel(e);if(e.options.manualFiltering||!e._getFilteredRowModel)return e.getPreFilteredRowModel();return e._getFilteredRowModel()}}};function Xa(e,n,r){return(e&&e.autoRemove?e.autoRemove(n,r):!1)||typeof n>"u"||typeof n==="string"&&!n}var qc=(e,n,r)=>r.reduce((s,i)=>{let a=i.getValue(e);return s+(typeof a==="number"?a:0)},0),Hc=(e,n,r)=>{let s;return r.forEach((i)=>{let a=i.getValue(e);if(a!=null&&(s>a||s===void 0&&a>=a))s=a}),s},Gc=(e,n,r)=>{let s;return r.forEach((i)=>{let a=i.getValue(e);if(a!=null&&(s<a||s===void 0&&a>=a))s=a}),s},np=(e,n,r)=>{let s,i;return r.forEach((a)=>{let l=a.getValue(e);if(l!=null)if(s===void 0){if(l>=l)s=i=l}else{if(s>l)s=l;if(i<l)i=l}}),[s,i]},op=(e,n)=>{let r=0,s=0;if(n.forEach((i)=>{let a=i.getValue(e);if(a!=null&&(a=+a)>=a)++r,s+=a}),r)return s/r;return},rp=(e,n)=>{if(!n.length)return;let r=n.map((a)=>a.getValue(e));if(!Ac(r))return;if(r.length===1)return r[0];let s=Math.floor(r.length/2),i=r.sort((a,l)=>a-l);return r.length%2!==0?i[s]:(i[s-1]+i[s])/2},sp=(e,n)=>Array.from(new Set(n.map((r)=>r.getValue(e))).values()),ip=(e,n)=>new Set(n.map((r)=>r.getValue(e))).size,dp=(e,n)=>n.length,Vr={sum:qc,min:Hc,max:Gc,extent:np,mean:op,median:rp,unique:sp,uniqueCount:ip,count:dp},fp={getDefaultColumnDef:()=>({aggregatedCell:(e)=>{var n,r;return(n=(r=e.getValue())==null||r.toString==null?void 0:r.toString())!=null?n:null},aggregationFn:"auto"}),getInitialState:(e)=>({grouping:[],...e}),getDefaultOptions:(e)=>({onGroupingChange:zt("grouping",e),groupedColumnMode:"reorder"}),createColumn:(e,n)=>{e.toggleGrouping=()=>{n.setGrouping((r)=>{if(r!=null&&r.includes(e.id))return r.filter((s)=>s!==e.id);return[...r!=null?r:[],e.id]})},e.getCanGroup=()=>{var r,s;return((r=e.columnDef.enableGrouping)!=null?r:!0)&&((s=n.options.enableGrouping)!=null?s:!0)&&(!!e.accessorFn||!!e.columnDef.getGroupingValue)},e.getIsGrouped=()=>{var r;return(r=n.getState().grouping)==null?void 0:r.includes(e.id)},e.getGroupedIndex=()=>{var r;return(r=n.getState().grouping)==null?void 0:r.indexOf(e.id)},e.getToggleGroupingHandler=()=>{let r=e.getCanGroup();return()=>{if(!r)return;e.toggleGrouping()}},e.getAutoAggregationFn=()=>{let r=n.getCoreRowModel().flatRows[0],s=r==null?void 0:r.getValue(e.id);if(typeof s==="number")return Vr.sum;if(Object.prototype.toString.call(s)==="[object Date]")return Vr.extent},e.getAggregationFn=()=>{var r,s;if(!e)throw Error();return No(e.columnDef.aggregationFn)?e.columnDef.aggregationFn:e.columnDef.aggregationFn==="auto"?e.getAutoAggregationFn():(r=(s=n.options.aggregationFns)==null?void 0:s[e.columnDef.aggregationFn])!=null?r:Vr[e.columnDef.aggregationFn]}},createTable:(e)=>{e.setGrouping=(n)=>e.options.onGroupingChange==null?void 0:e.options.onGroupingChange(n),e.resetGrouping=(n)=>{var r,s;e.setGrouping(n?[]:(r=(s=e.initialState)==null?void 0:s.grouping)!=null?r:[])},e.getPreGroupedRowModel=()=>e.getFilteredRowModel(),e.getGroupedRowModel=()=>{if(!e._getGroupedRowModel&&e.options.getGroupedRowModel)e._getGroupedRowModel=e.options.getGroupedRowModel(e);if(e.options.manualGrouping||!e._getGroupedRowModel)return e.getPreGroupedRowModel();return e._getGroupedRowModel()}},createRow:(e,n)=>{e.getIsGrouped=()=>!!e.groupingColumnId,e.getGroupingValue=(r)=>{if(e._groupingValuesCache.hasOwnProperty(r))return e._groupingValuesCache[r];let s=n.getColumn(r);if(!(s!=null&&s.columnDef.getGroupingValue))return e.getValue(r);return e._groupingValuesCache[r]=s.columnDef.getGroupingValue(e.original),e._groupingValuesCache[r]},e._groupingValuesCache={}},createCell:(e,n,r,s)=>{e.getIsGrouped=()=>n.getIsGrouped()&&n.id===r.groupingColumnId,e.getIsPlaceholder=()=>!e.getIsGrouped()&&n.getIsGrouped(),e.getIsAggregated=()=>{var i;return!e.getIsGrouped()&&!e.getIsPlaceholder()&&!!((i=r.subRows)!=null&&i.length)}}};function vp(e,n,r){if(!(n!=null&&n.length)||!r)return e;let s=e.filter((a)=>!n.includes(a.id));if(r==="remove")return s;return[...n.map((a)=>e.find((l)=>l.id===a)).filter(Boolean),...s]}var wp={getInitialState:(e)=>({columnOrder:[],...e}),getDefaultOptions:(e)=>({onColumnOrderChange:zt("columnOrder",e)}),createColumn:(e,n)=>{e.getIndex=We((r)=>[lo(n,r)],(r)=>r.findIndex((s)=>s.id===e.id),Ke(n.options,"debugColumns","getIndex")),e.getIsFirstColumn=(r)=>{var s;return((s=lo(n,r)[0])==null?void 0:s.id)===e.id},e.getIsLastColumn=(r)=>{var s;let i=lo(n,r);return((s=i[i.length-1])==null?void 0:s.id)===e.id}},createTable:(e)=>{e.setColumnOrder=(n)=>e.options.onColumnOrderChange==null?void 0:e.options.onColumnOrderChange(n),e.resetColumnOrder=(n)=>{var r;e.setColumnOrder(n?[]:(r=e.initialState.columnOrder)!=null?r:[])},e._getOrderColumnsFn=We(()=>[e.getState().columnOrder,e.getState().grouping,e.options.groupedColumnMode],(n,r,s)=>(i)=>{let a=[];if(!(n!=null&&n.length))a=i;else{let l=[...n],d=[...i];while(d.length&&l.length){let c=l.shift(),p=d.findIndex((f)=>f.id===c);if(p>-1)a.push(d.splice(p,1)[0])}a=[...a,...d]}return vp(a,r,s)},Ke(e.options,"debugTable","_getOrderColumnsFn"))}},qr=()=>({left:[],right:[]}),yp={getInitialState:(e)=>({columnPinning:qr(),...e}),getDefaultOptions:(e)=>({onColumnPinningChange:zt("columnPinning",e)}),createColumn:(e,n)=>{e.pin=(r)=>{let s=e.getLeafColumns().map((i)=>i.id).filter(Boolean);n.setColumnPinning((i)=>{var a,l;if(r==="right"){var d,c;return{left:((d=i==null?void 0:i.left)!=null?d:[]).filter((v)=>!(s!=null&&s.includes(v))),right:[...((c=i==null?void 0:i.right)!=null?c:[]).filter((v)=>!(s!=null&&s.includes(v))),...s]}}if(r==="left"){var p,f;return{left:[...((p=i==null?void 0:i.left)!=null?p:[]).filter((v)=>!(s!=null&&s.includes(v))),...s],right:((f=i==null?void 0:i.right)!=null?f:[]).filter((v)=>!(s!=null&&s.includes(v)))}}return{left:((a=i==null?void 0:i.left)!=null?a:[]).filter((v)=>!(s!=null&&s.includes(v))),right:((l=i==null?void 0:i.right)!=null?l:[]).filter((v)=>!(s!=null&&s.includes(v)))}})},e.getCanPin=()=>e.getLeafColumns().some((s)=>{var i,a,l;return((i=s.columnDef.enablePinning)!=null?i:!0)&&((a=(l=n.options.enableColumnPinning)!=null?l:n.options.enablePinning)!=null?a:!0)}),e.getIsPinned=()=>{let r=e.getLeafColumns().map((d)=>d.id),{left:s,right:i}=n.getState().columnPinning,a=r.some((d)=>s==null?void 0:s.includes(d)),l=r.some((d)=>i==null?void 0:i.includes(d));return a?"left":l?"right":!1},e.getPinnedIndex=()=>{var r,s;let i=e.getIsPinned();return i?(r=(s=n.getState().columnPinning)==null||(s=s[i])==null?void 0:s.indexOf(e.id))!=null?r:-1:0}},createRow:(e,n)=>{e.getCenterVisibleCells=We(()=>[e._getAllVisibleCells(),n.getState().columnPinning.left,n.getState().columnPinning.right],(r,s,i)=>{let a=[...s!=null?s:[],...i!=null?i:[]];return r.filter((l)=>!a.includes(l.column.id))},Ke(n.options,"debugRows","getCenterVisibleCells")),e.getLeftVisibleCells=We(()=>[e._getAllVisibleCells(),n.getState().columnPinning.left],(r,s)=>(s!=null?s:[]).map((a)=>r.find((l)=>l.column.id===a)).filter(Boolean).map((a)=>({...a,position:"left"})),Ke(n.options,"debugRows","getLeftVisibleCells")),e.getRightVisibleCells=We(()=>[e._getAllVisibleCells(),n.getState().columnPinning.right],(r,s)=>(s!=null?s:[]).map((a)=>r.find((l)=>l.column.id===a)).filter(Boolean).map((a)=>({...a,position:"right"})),Ke(n.options,"debugRows","getRightVisibleCells"))},createTable:(e)=>{e.setColumnPinning=(n)=>e.options.onColumnPinningChange==null?void 0:e.options.onColumnPinningChange(n),e.resetColumnPinning=(n)=>{var r,s;return e.setColumnPinning(n?qr():(r=(s=e.initialState)==null?void 0:s.columnPinning)!=null?r:qr())},e.getIsSomeColumnsPinned=(n)=>{var r;let s=e.getState().columnPinning;if(!n){var i,a;return Boolean(((i=s.left)==null?void 0:i.length)||((a=s.right)==null?void 0:a.length))}return Boolean((r=s[n])==null?void 0:r.length)},e.getLeftLeafColumns=We(()=>[e.getAllLeafColumns(),e.getState().columnPinning.left],(n,r)=>(r!=null?r:[]).map((s)=>n.find((i)=>i.id===s)).filter(Boolean),Ke(e.options,"debugColumns","getLeftLeafColumns")),e.getRightLeafColumns=We(()=>[e.getAllLeafColumns(),e.getState().columnPinning.right],(n,r)=>(r!=null?r:[]).map((s)=>n.find((i)=>i.id===s)).filter(Boolean),Ke(e.options,"debugColumns","getRightLeafColumns")),e.getCenterLeafColumns=We(()=>[e.getAllLeafColumns(),e.getState().columnPinning.left,e.getState().columnPinning.right],(n,r,s)=>{let i=[...r!=null?r:[],...s!=null?s:[]];return n.filter((a)=>!i.includes(a.id))},Ke(e.options,"debugColumns","getCenterLeafColumns"))}};function xp(e){return e||(typeof document<"u"?document:null)}var Mo={size:150,minSize:20,maxSize:Number.MAX_SAFE_INTEGER},Br=()=>({startOffset:null,startSize:null,deltaOffset:null,deltaPercentage:null,isResizingColumn:!1,columnSizingStart:[]}),bp={getDefaultColumnDef:()=>Mo,getInitialState:(e)=>({columnSizing:{},columnSizingInfo:Br(),...e}),getDefaultOptions:(e)=>({columnResizeMode:"onEnd",columnResizeDirection:"ltr",onColumnSizingChange:zt("columnSizing",e),onColumnSizingInfoChange:zt("columnSizingInfo",e)}),createColumn:(e,n)=>{e.getSize=()=>{var r,s,i;let a=n.getState().columnSizing[e.id];return Math.min(Math.max((r=e.columnDef.minSize)!=null?r:Mo.minSize,(s=a!=null?a:e.columnDef.size)!=null?s:Mo.size),(i=e.columnDef.maxSize)!=null?i:Mo.maxSize)},e.getStart=We((r)=>[r,lo(n,r),n.getState().columnSizing],(r,s)=>s.slice(0,e.getIndex(r)).reduce((i,a)=>i+a.getSize(),0),Ke(n.options,"debugColumns","getStart")),e.getAfter=We((r)=>[r,lo(n,r),n.getState().columnSizing],(r,s)=>s.slice(e.getIndex(r)+1).reduce((i,a)=>i+a.getSize(),0),Ke(n.options,"debugColumns","getAfter")),e.resetSize=()=>{n.setColumnSizing((r)=>{let{[e.id]:s,...i}=r;return i})},e.getCanResize=()=>{var r,s;return((r=e.columnDef.enableResizing)!=null?r:!0)&&((s=n.options.enableColumnResizing)!=null?s:!0)},e.getIsResizing=()=>n.getState().columnSizingInfo.isResizingColumn===e.id},createHeader:(e,n)=>{e.getSize=()=>{let r=0,s=(i)=>{if(i.subHeaders.length)i.subHeaders.forEach(s);else{var a;r+=(a=i.column.getSize())!=null?a:0}};return s(e),r},e.getStart=()=>{if(e.index>0){let r=e.headerGroup.headers[e.index-1];return r.getStart()+r.getSize()}return 0},e.getResizeHandler=(r)=>{let s=n.getColumn(e.column.id),i=s==null?void 0:s.getCanResize();return(a)=>{if(!s||!i)return;if(a.persist==null||a.persist(),Hr(a)){if(a.touches&&a.touches.length>1)return}let l=e.getSize(),d=e?e.getLeafHeaders().map((N)=>[N.column.id,N.column.getSize()]):[[s.id,s.getSize()]],c=Hr(a)?Math.round(a.touches[0].clientX):a.clientX,p={},f=(N,k)=>{if(typeof k!=="number")return;if(n.setColumnSizingInfo((G)=>{var X,te;let fe=n.options.columnResizeDirection==="rtl"?-1:1,ye=(k-((X=G==null?void 0:G.startOffset)!=null?X:0))*fe,oe=Math.max(ye/((te=G==null?void 0:G.startSize)!=null?te:0),-0.999999);return G.columnSizingStart.forEach((ze)=>{let[R,be]=ze;p[R]=Math.round(Math.max(be+be*oe,0)*100)/100}),{...G,deltaOffset:ye,deltaPercentage:oe}}),n.options.columnResizeMode==="onChange"||N==="end")n.setColumnSizing((G)=>({...G,...p}))},v=(N)=>f("move",N),g=(N)=>{f("end",N),n.setColumnSizingInfo((k)=>({...k,isResizingColumn:!1,startOffset:null,startSize:null,deltaOffset:null,deltaPercentage:null,columnSizingStart:[]}))},h=xp(r),y={moveHandler:(N)=>v(N.clientX),upHandler:(N)=>{h==null||h.removeEventListener("mousemove",y.moveHandler),h==null||h.removeEventListener("mouseup",y.upHandler),g(N.clientX)}},x={moveHandler:(N)=>{if(N.cancelable)N.preventDefault(),N.stopPropagation();return v(N.touches[0].clientX),!1},upHandler:(N)=>{var k;if(h==null||h.removeEventListener("touchmove",x.moveHandler),h==null||h.removeEventListener("touchend",x.upHandler),N.cancelable)N.preventDefault(),N.stopPropagation();g((k=N.touches[0])==null?void 0:k.clientX)}},b=Sp()?{passive:!1}:!1;if(Hr(a))h==null||h.addEventListener("touchmove",x.moveHandler,b),h==null||h.addEventListener("touchend",x.upHandler,b);else h==null||h.addEventListener("mousemove",y.moveHandler,b),h==null||h.addEventListener("mouseup",y.upHandler,b);n.setColumnSizingInfo((N)=>({...N,startOffset:c,startSize:l,deltaOffset:0,deltaPercentage:0,columnSizingStart:d,isResizingColumn:s.id}))}}},createTable:(e)=>{e.setColumnSizing=(n)=>e.options.onColumnSizingChange==null?void 0:e.options.onColumnSizingChange(n),e.setColumnSizingInfo=(n)=>e.options.onColumnSizingInfoChange==null?void 0:e.options.onColumnSizingInfoChange(n),e.resetColumnSizing=(n)=>{var r;e.setColumnSizing(n?{}:(r=e.initialState.columnSizing)!=null?r:{})},e.resetHeaderSizeInfo=(n)=>{var r;e.setColumnSizingInfo(n?Br():(r=e.initialState.columnSizingInfo)!=null?r:Br())},e.getTotalSize=()=>{var n,r;return(n=(r=e.getHeaderGroups()[0])==null?void 0:r.headers.reduce((s,i)=>s+i.getSize(),0))!=null?n:0},e.getLeftTotalSize=()=>{var n,r;return(n=(r=e.getLeftHeaderGroups()[0])==null?void 0:r.headers.reduce((s,i)=>s+i.getSize(),0))!=null?n:0},e.getCenterTotalSize=()=>{var n,r;return(n=(r=e.getCenterHeaderGroups()[0])==null?void 0:r.headers.reduce((s,i)=>s+i.getSize(),0))!=null?n:0},e.getRightTotalSize=()=>{var n,r;return(n=(r=e.getRightHeaderGroups()[0])==null?void 0:r.headers.reduce((s,i)=>s+i.getSize(),0))!=null?n:0}}},To=null;function Sp(){if(typeof To==="boolean")return To;let e=!1;try{let n={get passive(){return e=!0,!1}},r=()=>{};window.addEventListener("test",r,n),window.removeEventListener("test",r)}catch(n){e=!1}return To=e,To}function Hr(e){return e.type==="touchstart"}var Cp={getInitialState:(e)=>({columnVisibility:{},...e}),getDefaultOptions:(e)=>({onColumnVisibilityChange:zt("columnVisibility",e)}),createColumn:(e,n)=>{e.toggleVisibility=(r)=>{if(e.getCanHide())n.setColumnVisibility((s)=>({...s,[e.id]:r!=null?r:!e.getIsVisible()}))},e.getIsVisible=()=>{var r,s;let i=e.columns;return(r=i.length?i.some((a)=>a.getIsVisible()):(s=n.getState().columnVisibility)==null?void 0:s[e.id])!=null?r:!0},e.getCanHide=()=>{var r,s;return((r=e.columnDef.enableHiding)!=null?r:!0)&&((s=n.options.enableHiding)!=null?s:!0)},e.getToggleVisibilityHandler=()=>(r)=>{e.toggleVisibility==null||e.toggleVisibility(r.target.checked)}},createRow:(e,n)=>{e._getAllVisibleCells=We(()=>[e.getAllCells(),n.getState().columnVisibility],(r)=>r.filter((s)=>s.column.getIsVisible()),Ke(n.options,"debugRows","_getAllVisibleCells")),e.getVisibleCells=We(()=>[e.getLeftVisibleCells(),e.getCenterVisibleCells(),e.getRightVisibleCells()],(r,s,i)=>[...r,...s,...i],Ke(n.options,"debugRows","getVisibleCells"))},createTable:(e)=>{let n=(r,s)=>We(()=>[s(),s().filter((i)=>i.getIsVisible()).map((i)=>i.id).join("_")],(i)=>i.filter((a)=>a.getIsVisible==null?void 0:a.getIsVisible()),Ke(e.options,"debugColumns",r));e.getVisibleFlatColumns=n("getVisibleFlatColumns",()=>e.getAllFlatColumns()),e.getVisibleLeafColumns=n("getVisibleLeafColumns",()=>e.getAllLeafColumns()),e.getLeftVisibleLeafColumns=n("getLeftVisibleLeafColumns",()=>e.getLeftLeafColumns()),e.getRightVisibleLeafColumns=n("getRightVisibleLeafColumns",()=>e.getRightLeafColumns()),e.getCenterVisibleLeafColumns=n("getCenterVisibleLeafColumns",()=>e.getCenterLeafColumns()),e.setColumnVisibility=(r)=>e.options.onColumnVisibilityChange==null?void 0:e.options.onColumnVisibilityChange(r),e.resetColumnVisibility=(r)=>{var s;e.setColumnVisibility(r?{}:(s=e.initialState.columnVisibility)!=null?s:{})},e.toggleAllColumnsVisible=(r)=>{var s;r=(s=r)!=null?s:!e.getIsAllColumnsVisible(),e.setColumnVisibility(e.getAllLeafColumns().reduce((i,a)=>({...i,[a.id]:!r?!(a.getCanHide!=null&&a.getCanHide()):r}),{}))},e.getIsAllColumnsVisible=()=>!e.getAllLeafColumns().some((r)=>!(r.getIsVisible!=null&&r.getIsVisible())),e.getIsSomeColumnsVisible=()=>e.getAllLeafColumns().some((r)=>r.getIsVisible==null?void 0:r.getIsVisible()),e.getToggleAllColumnsVisibilityHandler=()=>(r)=>{var s;e.toggleAllColumnsVisible((s=r.target)==null?void 0:s.checked)}}};function lo(e,n){return!n?e.getVisibleLeafColumns():n==="center"?e.getCenterVisibleLeafColumns():n==="left"?e.getLeftVisibleLeafColumns():e.getRightVisibleLeafColumns()}var Fp={createTable:(e)=>{e._getGlobalFacetedRowModel=e.options.getFacetedRowModel&&e.options.getFacetedRowModel(e,"__global__"),e.getGlobalFacetedRowModel=()=>{if(e.options.manualFiltering||!e._getGlobalFacetedRowModel)return e.getPreFilteredRowModel();return e._getGlobalFacetedRowModel()},e._getGlobalFacetedUniqueValues=e.options.getFacetedUniqueValues&&e.options.getFacetedUniqueValues(e,"__global__"),e.getGlobalFacetedUniqueValues=()=>{if(!e._getGlobalFacetedUniqueValues)return new Map;return e._getGlobalFacetedUniqueValues()},e._getGlobalFacetedMinMaxValues=e.options.getFacetedMinMaxValues&&e.options.getFacetedMinMaxValues(e,"__global__"),e.getGlobalFacetedMinMaxValues=()=>{if(!e._getGlobalFacetedMinMaxValues)return;return e._getGlobalFacetedMinMaxValues()}}},Ip={getInitialState:(e)=>({globalFilter:void 0,...e}),getDefaultOptions:(e)=>({onGlobalFilterChange:zt("globalFilter",e),globalFilterFn:"auto",getColumnCanGlobalFilter:(n)=>{var r;let s=(r=e.getCoreRowModel().flatRows[0])==null||(r=r._getAllCellsByColumnId()[n.id])==null?void 0:r.getValue();return typeof s==="string"||typeof s==="number"}}),createColumn:(e,n)=>{e.getCanGlobalFilter=()=>{var r,s,i,a;return((r=e.columnDef.enableGlobalFilter)!=null?r:!0)&&((s=n.options.enableGlobalFilter)!=null?s:!0)&&((i=n.options.enableFilters)!=null?i:!0)&&((a=n.options.getColumnCanGlobalFilter==null?void 0:n.options.getColumnCanGlobalFilter(e))!=null?a:!0)&&!!e.accessorFn}},createTable:(e)=>{e.getGlobalAutoFilterFn=()=>en.includesString,e.getGlobalFilterFn=()=>{var n,r;let{globalFilterFn:s}=e.options;return No(s)?s:s==="auto"?e.getGlobalAutoFilterFn():(n=(r=e.options.filterFns)==null?void 0:r[s])!=null?n:en[s]},e.setGlobalFilter=(n)=>{e.options.onGlobalFilterChange==null||e.options.onGlobalFilterChange(n)},e.resetGlobalFilter=(n)=>{e.setGlobalFilter(n?void 0:e.initialState.globalFilter)}}},Ep={getInitialState:(e)=>({expanded:{},...e}),getDefaultOptions:(e)=>({onExpandedChange:zt("expanded",e),paginateExpandedRows:!0}),createTable:(e)=>{let n=!1,r=!1;e._autoResetExpanded=()=>{var s,i;if(!n){e._queue(()=>{n=!0});return}if((s=(i=e.options.autoResetAll)!=null?i:e.options.autoResetExpanded)!=null?s:!e.options.manualExpanding){if(r)return;r=!0,e._queue(()=>{e.resetExpanded(),r=!1})}},e.setExpanded=(s)=>e.options.onExpandedChange==null?void 0:e.options.onExpandedChange(s),e.toggleAllRowsExpanded=(s)=>{if(s!=null?s:!e.getIsAllRowsExpanded())e.setExpanded(!0);else e.setExpanded({})},e.resetExpanded=(s)=>{var i,a;e.setExpanded(s?{}:(i=(a=e.initialState)==null?void 0:a.expanded)!=null?i:{})},e.getCanSomeRowsExpand=()=>e.getPrePaginationRowModel().flatRows.some((s)=>s.getCanExpand()),e.getToggleAllRowsExpandedHandler=()=>(s)=>{s.persist==null||s.persist(),e.toggleAllRowsExpanded()},e.getIsSomeRowsExpanded=()=>{let s=e.getState().expanded;return s===!0||Object.values(s).some(Boolean)},e.getIsAllRowsExpanded=()=>{let s=e.getState().expanded;if(typeof s==="boolean")return s===!0;if(!Object.keys(s).length)return!1;if(e.getRowModel().flatRows.some((i)=>!i.getIsExpanded()))return!1;return!0},e.getExpandedDepth=()=>{let s=0;return(e.getState().expanded===!0?Object.keys(e.getRowModel().rowsById):Object.keys(e.getState().expanded)).forEach((a)=>{let l=a.split(".");s=Math.max(s,l.length)}),s},e.getPreExpandedRowModel=()=>e.getSortedRowModel(),e.getExpandedRowModel=()=>{if(!e._getExpandedRowModel&&e.options.getExpandedRowModel)e._getExpandedRowModel=e.options.getExpandedRowModel(e);if(e.options.manualExpanding||!e._getExpandedRowModel)return e.getPreExpandedRowModel();return e._getExpandedRowModel()}},createRow:(e,n)=>{e.toggleExpanded=(r)=>{n.setExpanded((s)=>{var i;let a=s===!0?!0:!!(s!=null&&s[e.id]),l={};if(s===!0)Object.keys(n.getRowModel().rowsById).forEach((d)=>{l[d]=!0});else l=s;if(r=(i=r)!=null?i:!a,!a&&r)return{...l,[e.id]:!0};if(a&&!r){let{[e.id]:d,...c}=l;return c}return s})},e.getIsExpanded=()=>{var r;let s=n.getState().expanded;return!!((r=n.options.getIsRowExpanded==null?void 0:n.options.getIsRowExpanded(e))!=null?r:s===!0||(s==null?void 0:s[e.id]))},e.getCanExpand=()=>{var r,s,i;return(r=n.options.getRowCanExpand==null?void 0:n.options.getRowCanExpand(e))!=null?r:((s=n.options.enableExpanding)!=null?s:!0)&&!!((i=e.subRows)!=null&&i.length)},e.getIsAllParentsExpanded=()=>{let r=!0,s=e;while(r&&s.parentId)s=n.getRow(s.parentId,!0),r=s.getIsExpanded();return r},e.getToggleExpandedHandler=()=>{let r=e.getCanExpand();return()=>{if(!r)return;e.toggleExpanded()}}}},Yr=0,Zr=10,Gr=()=>({pageIndex:Yr,pageSize:Zr}),_p={getInitialState:(e)=>({...e,pagination:{...Gr(),...e==null?void 0:e.pagination}}),getDefaultOptions:(e)=>({onPaginationChange:zt("pagination",e)}),createTable:(e)=>{let n=!1,r=!1;e._autoResetPageIndex=()=>{var s,i;if(!n){e._queue(()=>{n=!0});return}if((s=(i=e.options.autoResetAll)!=null?i:e.options.autoResetPageIndex)!=null?s:!e.options.manualPagination){if(r)return;r=!0,e._queue(()=>{e.resetPageIndex(),r=!1})}},e.setPagination=(s)=>{let i=(a)=>on(s,a);return e.options.onPaginationChange==null?void 0:e.options.onPaginationChange(i)},e.resetPagination=(s)=>{var i;e.setPagination(s?Gr():(i=e.initialState.pagination)!=null?i:Gr())},e.setPageIndex=(s)=>{e.setPagination((i)=>{let a=on(s,i.pageIndex),l=typeof e.options.pageCount>"u"||e.options.pageCount===-1?Number.MAX_SAFE_INTEGER:e.options.pageCount-1;return a=Math.max(0,Math.min(a,l)),{...i,pageIndex:a}})},e.resetPageIndex=(s)=>{var i,a;e.setPageIndex(s?Yr:(i=(a=e.initialState)==null||(a=a.pagination)==null?void 0:a.pageIndex)!=null?i:Yr)},e.resetPageSize=(s)=>{var i,a;e.setPageSize(s?Zr:(i=(a=e.initialState)==null||(a=a.pagination)==null?void 0:a.pageSize)!=null?i:Zr)},e.setPageSize=(s)=>{e.setPagination((i)=>{let a=Math.max(1,on(s,i.pageSize)),l=i.pageSize*i.pageIndex,d=Math.floor(l/a);return{...i,pageIndex:d,pageSize:a}})},e.setPageCount=(s)=>e.setPagination((i)=>{var a;let l=on(s,(a=e.options.pageCount)!=null?a:-1);if(typeof l==="number")l=Math.max(-1,l);return{...i,pageCount:l}}),e.getPageOptions=We(()=>[e.getPageCount()],(s)=>{let i=[];if(s&&s>0)i=[...Array(s)].fill(null).map((a,l)=>l);return i},Ke(e.options,"debugTable","getPageOptions")),e.getCanPreviousPage=()=>e.getState().pagination.pageIndex>0,e.getCanNextPage=()=>{let{pageIndex:s}=e.getState().pagination,i=e.getPageCount();if(i===-1)return!0;if(i===0)return!1;return s<i-1},e.previousPage=()=>e.setPageIndex((s)=>s-1),e.nextPage=()=>e.setPageIndex((s)=>s+1),e.firstPage=()=>e.setPageIndex(0),e.lastPage=()=>e.setPageIndex(e.getPageCount()-1),e.getPrePaginationRowModel=()=>e.getExpandedRowModel(),e.getPaginationRowModel=()=>{if(!e._getPaginationRowModel&&e.options.getPaginationRowModel)e._getPaginationRowModel=e.options.getPaginationRowModel(e);if(e.options.manualPagination||!e._getPaginationRowModel)return e.getPrePaginationRowModel();return e._getPaginationRowModel()},e.getPageCount=()=>{var s;return(s=e.options.pageCount)!=null?s:Math.ceil(e.getRowCount()/e.getState().pagination.pageSize)},e.getRowCount=()=>{var s;return(s=e.options.rowCount)!=null?s:e.getPrePaginationRowModel().rows.length}}},Wr=()=>({top:[],bottom:[]}),Tp={getInitialState:(e)=>({rowPinning:Wr(),...e}),getDefaultOptions:(e)=>({onRowPinningChange:zt("rowPinning",e)}),createRow:(e,n)=>{e.pin=(r,s,i)=>{let a=s?e.getLeafRows().map((c)=>{let{id:p}=c;return p}):[],l=i?e.getParentRows().map((c)=>{let{id:p}=c;return p}):[],d=new Set([...l,e.id,...a]);n.setRowPinning((c)=>{var p,f;if(r==="bottom"){var v,g;return{top:((v=c==null?void 0:c.top)!=null?v:[]).filter((x)=>!(d!=null&&d.has(x))),bottom:[...((g=c==null?void 0:c.bottom)!=null?g:[]).filter((x)=>!(d!=null&&d.has(x))),...Array.from(d)]}}if(r==="top"){var h,y;return{top:[...((h=c==null?void 0:c.top)!=null?h:[]).filter((x)=>!(d!=null&&d.has(x))),...Array.from(d)],bottom:((y=c==null?void 0:c.bottom)!=null?y:[]).filter((x)=>!(d!=null&&d.has(x)))}}return{top:((p=c==null?void 0:c.top)!=null?p:[]).filter((x)=>!(d!=null&&d.has(x))),bottom:((f=c==null?void 0:c.bottom)!=null?f:[]).filter((x)=>!(d!=null&&d.has(x)))}})},e.getCanPin=()=>{var r;let{enableRowPinning:s,enablePinning:i}=n.options;if(typeof s==="function")return s(e);return(r=s!=null?s:i)!=null?r:!0},e.getIsPinned=()=>{let r=[e.id],{top:s,bottom:i}=n.getState().rowPinning,a=r.some((d)=>s==null?void 0:s.includes(d)),l=r.some((d)=>i==null?void 0:i.includes(d));return a?"top":l?"bottom":!1},e.getPinnedIndex=()=>{var r,s;let i=e.getIsPinned();if(!i)return-1;let a=(r=i==="top"?n.getTopRows():n.getBottomRows())==null?void 0:r.map((l)=>{let{id:d}=l;return d});return(s=a==null?void 0:a.indexOf(e.id))!=null?s:-1}},createTable:(e)=>{e.setRowPinning=(n)=>e.options.onRowPinningChange==null?void 0:e.options.onRowPinningChange(n),e.resetRowPinning=(n)=>{var r,s;return e.setRowPinning(n?Wr():(r=(s=e.initialState)==null?void 0:s.rowPinning)!=null?r:Wr())},e.getIsSomeRowsPinned=(n)=>{var r;let s=e.getState().rowPinning;if(!n){var i,a;return Boolean(((i=s.top)==null?void 0:i.length)||((a=s.bottom)==null?void 0:a.length))}return Boolean((r=s[n])==null?void 0:r.length)},e._getPinnedRows=(n,r,s)=>{var i;return(((i=e.options.keepPinnedRows)!=null?i:!0)?(r!=null?r:[]).map((l)=>{let d=e.getRow(l,!0);return d.getIsAllParentsExpanded()?d:null}):(r!=null?r:[]).map((l)=>n.find((d)=>d.id===l))).filter(Boolean).map((l)=>({...l,position:s}))},e.getTopRows=We(()=>[e.getRowModel().rows,e.getState().rowPinning.top],(n,r)=>e._getPinnedRows(n,r,"top"),Ke(e.options,"debugRows","getTopRows")),e.getBottomRows=We(()=>[e.getRowModel().rows,e.getState().rowPinning.bottom],(n,r)=>e._getPinnedRows(n,r,"bottom"),Ke(e.options,"debugRows","getBottomRows")),e.getCenterRows=We(()=>[e.getRowModel().rows,e.getState().rowPinning.top,e.getState().rowPinning.bottom],(n,r,s)=>{let i=new Set([...r!=null?r:[],...s!=null?s:[]]);return n.filter((a)=>!i.has(a.id))},Ke(e.options,"debugRows","getCenterRows"))}},Pp={getInitialState:(e)=>({rowSelection:{},...e}),getDefaultOptions:(e)=>({onRowSelectionChange:zt("rowSelection",e),enableRowSelection:!0,enableMultiRowSelection:!0,enableSubRowSelection:!0}),createTable:(e)=>{e.setRowSelection=(n)=>e.options.onRowSelectionChange==null?void 0:e.options.onRowSelectionChange(n),e.resetRowSelection=(n)=>{var r;return e.setRowSelection(n?{}:(r=e.initialState.rowSelection)!=null?r:{})},e.toggleAllRowsSelected=(n)=>{e.setRowSelection((r)=>{n=typeof n<"u"?n:!e.getIsAllRowsSelected();let s={...r},i=e.getPreGroupedRowModel().flatRows;if(n)i.forEach((a)=>{if(!a.getCanSelect())return;s[a.id]=!0});else i.forEach((a)=>{delete s[a.id]});return s})},e.toggleAllPageRowsSelected=(n)=>e.setRowSelection((r)=>{let s=typeof n<"u"?n:!e.getIsAllPageRowsSelected(),i={...r};return e.getRowModel().rows.forEach((a)=>{os(i,a.id,s,!0,e)}),i}),e.getPreSelectedRowModel=()=>e.getCoreRowModel(),e.getSelectedRowModel=We(()=>[e.getState().rowSelection,e.getCoreRowModel()],(n,r)=>{if(!Object.keys(n).length)return{rows:[],flatRows:[],rowsById:{}};return Xr(e,r)},Ke(e.options,"debugTable","getSelectedRowModel")),e.getFilteredSelectedRowModel=We(()=>[e.getState().rowSelection,e.getFilteredRowModel()],(n,r)=>{if(!Object.keys(n).length)return{rows:[],flatRows:[],rowsById:{}};return Xr(e,r)},Ke(e.options,"debugTable","getFilteredSelectedRowModel")),e.getGroupedSelectedRowModel=We(()=>[e.getState().rowSelection,e.getSortedRowModel()],(n,r)=>{if(!Object.keys(n).length)return{rows:[],flatRows:[],rowsById:{}};return Xr(e,r)},Ke(e.options,"debugTable","getGroupedSelectedRowModel")),e.getIsAllRowsSelected=()=>{let n=e.getFilteredRowModel().flatRows,{rowSelection:r}=e.getState(),s=Boolean(n.length&&Object.keys(r).length);if(s){if(n.some((i)=>i.getCanSelect()&&!r[i.id]))s=!1}return s},e.getIsAllPageRowsSelected=()=>{let n=e.getPaginationRowModel().flatRows.filter((i)=>i.getCanSelect()),{rowSelection:r}=e.getState(),s=!!n.length;if(s&&n.some((i)=>!r[i.id]))s=!1;return s},e.getIsSomeRowsSelected=()=>{var n;let r=Object.keys((n=e.getState().rowSelection)!=null?n:{}).length;return r>0&&r<e.getFilteredRowModel().flatRows.length},e.getIsSomePageRowsSelected=()=>{let n=e.getPaginationRowModel().flatRows;return e.getIsAllPageRowsSelected()?!1:n.filter((r)=>r.getCanSelect()).some((r)=>r.getIsSelected()||r.getIsSomeSelected())},e.getToggleAllRowsSelectedHandler=()=>(n)=>{e.toggleAllRowsSelected(n.target.checked)},e.getToggleAllPageRowsSelectedHandler=()=>(n)=>{e.toggleAllPageRowsSelected(n.target.checked)}},createRow:(e,n)=>{e.toggleSelected=(r,s)=>{let i=e.getIsSelected();n.setRowSelection((a)=>{var l;if(r=typeof r<"u"?r:!i,e.getCanSelect()&&i===r)return a;let d={...a};return os(d,e.id,r,(l=s==null?void 0:s.selectChildren)!=null?l:!0,n),d})},e.getIsSelected=()=>{let{rowSelection:r}=n.getState();return as(e,r)},e.getIsSomeSelected=()=>{let{rowSelection:r}=n.getState();return rs(e,r)==="some"},e.getIsAllSubRowsSelected=()=>{let{rowSelection:r}=n.getState();return rs(e,r)==="all"},e.getCanSelect=()=>{var r;if(typeof n.options.enableRowSelection==="function")return n.options.enableRowSelection(e);return(r=n.options.enableRowSelection)!=null?r:!0},e.getCanSelectSubRows=()=>{var r;if(typeof n.options.enableSubRowSelection==="function")return n.options.enableSubRowSelection(e);return(r=n.options.enableSubRowSelection)!=null?r:!0},e.getCanMultiSelect=()=>{var r;if(typeof n.options.enableMultiRowSelection==="function")return n.options.enableMultiRowSelection(e);return(r=n.options.enableMultiRowSelection)!=null?r:!0},e.getToggleSelectedHandler=()=>{let r=e.getCanSelect();return(s)=>{var i;if(!r)return;e.toggleSelected((i=s.target)==null?void 0:i.checked)}}}},os=(e,n,r,s,i)=>{var a;let l=i.getRow(n,!0);if(r){if(!l.getCanMultiSelect())Object.keys(e).forEach((d)=>delete e[d]);if(l.getCanSelect())e[n]=!0}else delete e[n];if(s&&(a=l.subRows)!=null&&a.length&&l.getCanSelectSubRows())l.subRows.forEach((d)=>os(e,d.id,r,s,i))};function Xr(e,n){let r=e.getState().rowSelection,s=[],i={},a=function(l,d){return l.map((c)=>{var p;let f=as(c,r);if(f)s.push(c),i[c.id]=c;if((p=c.subRows)!=null&&p.length)c={...c,subRows:a(c.subRows)};if(f)return c}).filter(Boolean)};return{rows:a(n.rows),flatRows:s,rowsById:i}}function as(e,n){var r;return(r=n[e.id])!=null?r:!1}function rs(e,n,r){var s;if(!((s=e.subRows)!=null&&s.length))return!1;let i=!0,a=!1;return e.subRows.forEach((l)=>{if(a&&!i)return;if(l.getCanSelect())if(as(l,n))a=!0;else i=!1;if(l.subRows&&l.subRows.length){let d=rs(l,n);if(d==="all")a=!0;else if(d==="some")a=!0,i=!1;else i=!1}}),i?"all":a?"some":!1}var ss=/([0-9]+)/gm,Ap=(e,n,r)=>sl(dn(e.getValue(r)).toLowerCase(),dn(n.getValue(r)).toLowerCase()),Dp=(e,n,r)=>sl(dn(e.getValue(r)),dn(n.getValue(r))),Op=(e,n,r)=>ls(dn(e.getValue(r)).toLowerCase(),dn(n.getValue(r)).toLowerCase()),Lp=(e,n,r)=>ls(dn(e.getValue(r)),dn(n.getValue(r))),Vp=(e,n,r)=>{let s=e.getValue(r),i=n.getValue(r);return s>i?1:s<i?-1:0},qp=(e,n,r)=>ls(e.getValue(r),n.getValue(r));function ls(e,n){return e===n?0:e>n?1:-1}function dn(e){if(typeof e==="number"){if(isNaN(e)||e===1/0||e===-1/0)return"";return String(e)}if(typeof e==="string")return e;return""}function sl(e,n){let r=e.split(ss).filter(Boolean),s=n.split(ss).filter(Boolean);while(r.length&&s.length){let i=r.shift(),a=s.shift(),l=parseInt(i,10),d=parseInt(a,10),c=[l,d].sort();if(isNaN(c[0])){if(i>a)return 1;if(a>i)return-1;continue}if(isNaN(c[1]))return isNaN(l)?-1:1;if(l>d)return 1;if(d>l)return-1}return r.length-s.length}var io={alphanumeric:Ap,alphanumericCaseSensitive:Dp,text:Op,textCaseSensitive:Lp,datetime:Vp,basic:qp},Hp={getInitialState:(e)=>({sorting:[],...e}),getDefaultColumnDef:()=>({sortingFn:"auto",sortUndefined:1}),getDefaultOptions:(e)=>({onSortingChange:zt("sorting",e),isMultiSortEvent:(n)=>n.shiftKey}),createColumn:(e,n)=>{e.getAutoSortingFn=()=>{let r=n.getFilteredRowModel().flatRows.slice(10),s=!1;for(let i of r){let a=i==null?void 0:i.getValue(e.id);if(Object.prototype.toString.call(a)==="[object Date]")return io.datetime;if(typeof a==="string"){if(s=!0,a.split(ss).length>1)return io.alphanumeric}}if(s)return io.text;return io.basic},e.getAutoSortDir=()=>{let r=n.getFilteredRowModel().flatRows[0];if(typeof(r==null?void 0:r.getValue(e.id))==="string")return"asc";return"desc"},e.getSortingFn=()=>{var r,s;if(!e)throw Error();return No(e.columnDef.sortingFn)?e.columnDef.sortingFn:e.columnDef.sortingFn==="auto"?e.getAutoSortingFn():(r=(s=n.options.sortingFns)==null?void 0:s[e.columnDef.sortingFn])!=null?r:io[e.columnDef.sortingFn]},e.toggleSorting=(r,s)=>{let i=e.getNextSortingOrder(),a=typeof r<"u"&&r!==null;n.setSorting((l)=>{let d=l==null?void 0:l.find((h)=>h.id===e.id),c=l==null?void 0:l.findIndex((h)=>h.id===e.id),p=[],f,v=a?r:i==="desc";if(l!=null&&l.length&&e.getCanMultiSort()&&s)if(d)f="toggle";else f="add";else if(l!=null&&l.length&&c!==l.length-1)f="replace";else if(d)f="toggle";else f="replace";if(f==="toggle"){if(!a){if(!i)f="remove"}}if(f==="add"){var g;p=[...l,{id:e.id,desc:v}],p.splice(0,p.length-((g=n.options.maxMultiSortColCount)!=null?g:Number.MAX_SAFE_INTEGER))}else if(f==="toggle")p=l.map((h)=>{if(h.id===e.id)return{...h,desc:v};return h});else if(f==="remove")p=l.filter((h)=>h.id!==e.id);else p=[{id:e.id,desc:v}];return p})},e.getFirstSortDir=()=>{var r,s;return((r=(s=e.columnDef.sortDescFirst)!=null?s:n.options.sortDescFirst)!=null?r:e.getAutoSortDir()==="desc")?"desc":"asc"},e.getNextSortingOrder=(r)=>{var s,i;let a=e.getFirstSortDir(),l=e.getIsSorted();if(!l)return a;if(l!==a&&((s=n.options.enableSortingRemoval)!=null?s:!0)&&(r?(i=n.options.enableMultiRemove)!=null?i:!0:!0))return!1;return l==="desc"?"asc":"desc"},e.getCanSort=()=>{var r,s;return((r=e.columnDef.enableSorting)!=null?r:!0)&&((s=n.options.enableSorting)!=null?s:!0)&&!!e.accessorFn},e.getCanMultiSort=()=>{var r,s;return(r=(s=e.columnDef.enableMultiSort)!=null?s:n.options.enableMultiSort)!=null?r:!!e.accessorFn},e.getIsSorted=()=>{var r;let s=(r=n.getState().sorting)==null?void 0:r.find((i)=>i.id===e.id);return!s?!1:s.desc?"desc":"asc"},e.getSortIndex=()=>{var r,s;return(r=(s=n.getState().sorting)==null?void 0:s.findIndex((i)=>i.id===e.id))!=null?r:-1},e.clearSorting=()=>{n.setSorting((r)=>r!=null&&r.length?r.filter((s)=>s.id!==e.id):[])},e.getToggleSortingHandler=()=>{let r=e.getCanSort();return(s)=>{if(!r)return;s.persist==null||s.persist(),e.toggleSorting==null||e.toggleSorting(void 0,e.getCanMultiSort()?n.options.isMultiSortEvent==null?void 0:n.options.isMultiSortEvent(s):!1)}}},createTable:(e)=>{e.setSorting=(n)=>e.options.onSortingChange==null?void 0:e.options.onSortingChange(n),e.resetSorting=(n)=>{var r,s;e.setSorting(n?[]:(r=(s=e.initialState)==null?void 0:s.sorting)!=null?r:[])},e.getPreSortedRowModel=()=>e.getGroupedRowModel(),e.getSortedRowModel=()=>{if(!e._getSortedRowModel&&e.options.getSortedRowModel)e._getSortedRowModel=e.options.getSortedRowModel(e);if(e.options.manualSorting||!e._getSortedRowModel)return e.getPreSortedRowModel();return e._getSortedRowModel()}}},Gp=[zc,Cp,wp,yp,jc,Vc,Fp,Ip,Hp,fp,Ep,_p,Tp,Pp,bp];function il(e){var n,r;let s=[...Gp,...(n=e._features)!=null?n:[]],i={_features:s},a=i._features.reduce((g,h)=>Object.assign(g,h.getDefaultOptions==null?void 0:h.getDefaultOptions(i)),{}),l=(g)=>{if(i.options.mergeOptions)return i.options.mergeOptions(a,g);return{...a,...g}},c={...{},...(r=e.initialState)!=null?r:{}};i._features.forEach((g)=>{var h;c=(h=g.getInitialState==null?void 0:g.getInitialState(c))!=null?h:c});let p=[],f=!1,v={_features:s,options:{...a,...e},initialState:c,_queue:(g)=>{if(p.push(g),!f)f=!0,Promise.resolve().then(()=>{while(p.length)p.shift()();f=!1}).catch((h)=>setTimeout(()=>{throw h}))},reset:()=>{i.setState(i.initialState)},setOptions:(g)=>{let h=on(g,i.options);i.options=l(h)},getState:()=>i.options.state,setState:(g)=>{i.options.onStateChange==null||i.options.onStateChange(g)},_getRowId:(g,h,y)=>{var x;return(x=i.options.getRowId==null?void 0:i.options.getRowId(g,h,y))!=null?x:`${y?[y.id,h].join("."):h}`},getCoreRowModel:()=>{if(!i._getCoreRowModel)i._getCoreRowModel=i.options.getCoreRowModel(i);return i._getCoreRowModel()},getRowModel:()=>i.getPaginationRowModel(),getRow:(g,h)=>{let y=(h?i.getPrePaginationRowModel():i.getRowModel()).rowsById[g];if(!y){if(y=i.getCoreRowModel().rowsById[g],!y)throw Error()}return y},_getDefaultColumnDef:We(()=>[i.options.defaultColumn],(g)=>{var h;return g=(h=g)!=null?h:{},{header:(y)=>{let x=y.header.column.columnDef;if(x.accessorKey)return x.accessorKey;if(x.accessorFn)return x.id;return null},cell:(y)=>{var x,b;return(x=(b=y.renderValue())==null||b.toString==null?void 0:b.toString())!=null?x:null},...i._features.reduce((y,x)=>Object.assign(y,x.getDefaultColumnDef==null?void 0:x.getDefaultColumnDef()),{}),...g}},Ke(e,"debugColumns","_getDefaultColumnDef")),_getColumnDefs:()=>i.options.columns,getAllColumns:We(()=>[i._getColumnDefs()],(g)=>{let h=function(y,x,b){if(b===void 0)b=0;return y.map((N)=>{let k=$c(i,N,b,x),G=N;return k.columns=G.columns?h(G.columns,k,b+1):[],k})};return h(g)},Ke(e,"debugColumns","getAllColumns")),getAllFlatColumns:We(()=>[i.getAllColumns()],(g)=>g.flatMap((h)=>h.getFlatColumns()),Ke(e,"debugColumns","getAllFlatColumns")),_getAllFlatColumnsById:We(()=>[i.getAllFlatColumns()],(g)=>g.reduce((h,y)=>(h[y.id]=y,h),{}),Ke(e,"debugColumns","getAllFlatColumnsById")),getAllLeafColumns:We(()=>[i.getAllColumns(),i._getOrderColumnsFn()],(g,h)=>{let y=g.flatMap((x)=>x.getLeafColumns());return h(y)},Ke(e,"debugColumns","getAllLeafColumns")),getColumn:(g)=>i._getAllFlatColumnsById()[g]};Object.assign(i,v);for(let g=0;g<i._features.length;g++){let h=i._features[g];h==null||h.createTable==null||h.createTable(i)}return i}function al(){return(e)=>We(()=>[e.options.data],(n)=>{let r={rows:[],flatRows:[],rowsById:{}},s=function(i,a,l){if(a===void 0)a=0;let d=[];for(let p=0;p<i.length;p++){let f=Uc(e,e._getRowId(i[p],p,l),i[p],p,a,void 0,l==null?void 0:l.id);if(r.flatRows.push(f),r.rowsById[f.id]=f,d.push(f),e.options.getSubRows){var c;if(f.originalSubRows=e.options.getSubRows(i[p],p),(c=f.originalSubRows)!=null&&c.length)f.subRows=s(f.originalSubRows,a+1,f)}}return d};return r.rows=s(n),r},Ke(e.options,"debugTable","getRowModel",()=>e._autoResetPageIndex()))}function ll(e,n){return!e?null:Xp(e)?q(e,n):e}function Xp(e){return Qp(e)||typeof e==="function"||Yp(e)}function Qp(e){return typeof e==="function"&&(()=>{let n=Object.getPrototypeOf(e);return n.prototype&&n.prototype.isReactComponent})()}function Yp(e){return typeof e==="object"&&typeof e.$$typeof==="symbol"&&["react.memo","react.forward_ref"].includes(e.$$typeof.description)}function dl(e){let n={state:{},onStateChange:()=>{},renderFallbackValue:null,...e},[r]=u(()=>({current:il(n)})),[s,i]=u(()=>r.current.initialState);return r.current.setOptions((a)=>({...a,...e,state:{...s,...e.state},onStateChange:(l)=>{i(l),e.onStateChange==null||e.onStateChange(l)}})),r.current}S();function Jp({item:e,renderItem:n,active:r,dragState:s,isSelected:i,columnSizing:a,virtualRow:l,measureElement:d,isExternalDragging:c,externalOverFolderId:p,setExternalOverFolderId:f,resetExternalDragState:v,onExternalDrop:g}){let h=s?.draggedIds.has(e.id),y=s?.isActive,{ref:x,isDropTarget:b}=Or({id:`reorder-before-${e.id}`,data:{type:"reorder",item:e,position:"before"},disabled:!r||h||!y}),{ref:N,isDropTarget:k}=Or({id:`reorder-after-${e.id}`,data:{type:"reorder",item:e,position:"after"},disabled:!r||h||!y}),{ref:G,isDropTarget:X}=Or({id:`browser:${e.id}`,data:{type:e.type,id:e.id,item:e},disabled:!y}),te=D(()=>{if(!s?.isActive)return!1;if(s.draggedIds.has(e.id))return!1;if(e.type==="folder")return!0;if(e.type==="file"||e.type==="version_stack")return s.isSingleFile;return!1},[s,e.id,e.type]),fe=c&&p===e.id,ye=X&&te||fe;return o("div",{ref:(oe)=>{G(oe),d(oe)},"data-index":l.index,onDragEnter:c&&e.type==="folder"?()=>{f?.(e.id)}:void 0,onDragLeave:c&&e.type==="folder"?(oe)=>{if(!oe.currentTarget.contains(oe.relatedTarget))f?.(null)}:void 0,onDragOver:c&&e.type==="folder"?(oe)=>{oe.preventDefault()}:void 0,onDrop:c&&e.type==="folder"?async(oe)=>{oe.preventDefault(),oe.stopPropagation(),v?.();let ze=await Qa(oe.dataTransfer);g?.(ze,e.id)}:void 0,className:E("group border-b border-border transition-colors hover:bg-primary/20 absolute top-0 left-0 w-full flex flex-col outline-none focus:outline-none focus-visible:outline-none",i&&"bg-primary/10",ye&&"bg-primary/10",b&&"border-t-2 border-t-primary",k&&"border-b-2 border-b-primary"),style:{transform:`translateY(${l.start}px)`},children:[t("div",{ref:x,className:"p-0 m-0 leading-none bg-transparent pointer-events-auto h-[2px] w-full"}),n(e,a),t("div",{ref:N,className:"p-0 m-0 leading-none bg-transparent pointer-events-auto h-[2px] w-full"})]})}function ul({folders:e,files:n,totalFolders:r,totalFiles:s,selectedItem:i,selectedIds:a,displayedFields:l,renderItem:d,foldersExpanded:c,setFoldersExpanded:p,filesExpanded:f,setFilesExpanded:v,hasNextFoldersPage:g,hasNextFilesPage:h,isFetchingNextFoldersPage:y,isFetchingNextFilesPage:x,fetchNextFoldersPage:b,fetchNextFilesPage:N,formatCount:k,formatSize:G,totalFoldersSize:X,totalFilesSize:te,handleEmptyAreaClick:fe,dragState:ye,sort:oe,isExternalDragging:ze,externalOverFolderId:R,setExternalOverFolderId:be,resetExternalDragState:me,onExternalDrop:ie}){let[xe,Ge]=u({}),Qe=D(()=>{let lt=[{id:"name",header:"Name",size:300,minSize:150},{id:"size",header:"Size",size:100,minSize:80},{id:"modified",header:"Modified",size:200,minSize:150}];return l.forEach((Fe)=>{let He=Fe.config?.type?pa[Fe.config.type]:null;lt.push({id:Fe.id,header:()=>o("div",{className:"flex items-center gap-1.5 truncate",children:[He&&t(He,{className:"h-3.5 w-3.5 text-muted-foreground shrink-0"}),t("span",{className:"truncate",children:Fe.config?.name||Fe.id})]}),size:150,minSize:100})}),lt},[l]),ee=dl({data:[],columns:Qe,columnResizeMode:"onChange",getCoreRowModel:al(),state:{columnSizing:xe},onColumnSizingChange:Ge}),Ye=D(()=>{let lt=[],Fe=r??e.length;if(Fe>0){if(lt.push({type:"header",kind:"folder"}),c)for(let at=0;at<Fe;at++)lt.push({type:"item",kind:"folder",index:at})}let He=s??n.length;if(He>0){if(lt.push({type:"header",kind:"file"}),f)for(let at=0;at<He;at++)lt.push({type:"item",kind:"file",index:at})}return lt},[c,f,e.length,n.length,r,s]),Je=_(null),Se=Eo({count:Ye.length,getScrollElement:()=>Je.current,estimateSize:()=>40,getItemKey:P((lt)=>{let Fe=Ye[lt];if(!Fe)return lt;if(Fe.type==="header")return`header-${Fe.kind}`;return(Fe.kind==="folder"?e[Fe.index]:n[Fe.index])?.id||`item-${Fe.kind}-${Fe.index}`},[Ye,e,n]),overscan:10}),Ve=Se.getVirtualItems();return m(()=>{if(Ve.length===0)return;for(let lt of Ve){let Fe=Ye[lt.index];if(Fe?.type==="item"){let He=Fe.kind==="folder"?!e[Fe.index]:!n[Fe.index],at=Fe.kind==="folder"?Fe.index>=e.length-15:Fe.index>=n.length-15;if(Fe.kind==="folder"&&g&&!y){if(He||at){b();break}}else if(Fe.kind==="file"&&h&&!x){if(He||at){N();break}}}}},[Ve,Ye,e.length,n.length,g,h,y,x,b,N]),t("div",{ref:Je,className:"flex-1 overflow-auto",onClick:fe,children:o("div",{className:"w-full relative",style:{width:ee.getTotalSize(),minWidth:"100%"},children:[t("div",{className:"sticky top-0 z-30 bg-background border-b border-border flex flex-col",children:ee.getHeaderGroups().map((lt)=>t("div",{className:"bg-muted/50 whitespace-nowrap flex",children:lt.headers.map((Fe)=>o("div",{className:E("px-4 py-2 text-left text-xs font-medium text-muted-foreground relative border-r flex items-center",Fe.id==="name"&&"sticky left-0 z-40 bg-muted"),style:{width:Fe.getSize()},children:[Fe.isPlaceholder?null:ll(Fe.column.columnDef.header,Fe.getContext()),t("div",{onMouseDown:Fe.getResizeHandler(),onTouchStart:Fe.getResizeHandler(),className:E("absolute right-0 top-0 bottom-0 w-1 cursor-col-resize user-select-none touch-none z-50 hover:bg-primary/50 transition-colors",Fe.column.getIsResizing()&&"bg-primary w-1")})]},Fe.id))},lt.id))}),t("div",{className:"relative",style:{height:`${Se.getTotalSize()}px`},children:Ve.map((lt)=>{let Fe=Ye[lt.index];if(Fe.type==="header"){let at=Fe.kind==="folder",Ct=at?r??e.length:s??n.length,St=at?X??-1:te??-1,re=St>-1,dt=at?c:f,xt=at?p:v,Ee=at?e.length>0:n.length>0;return o("div",{ref:Se.measureElement,"data-index":lt.index,className:"absolute top-0 left-0 w-full border-b border-border hover:bg-muted/50 transition-colors cursor-pointer group flex bg-card z-20",style:{transform:`translateY(${lt.start}px)`},onClick:(U)=>{U.stopPropagation(),xt(!dt)},children:[o("div",{className:"px-4 py-2 sticky left-0 z-10 bg-card border-r flex items-center gap-2",style:{width:xe?.name||300,minWidth:xe?.name||300},children:[t(wr,{checked:Ee&&(at?e.every((U)=>a.has(U.id)):n.every((U)=>a.has(U.id))),onCheckedChange:()=>{},onClick:(U)=>U.stopPropagation(),className:"h-4 w-4"}),t("div",{className:"p-1 rounded hover:bg-muted",children:dt?t(ve,{className:"h-4 w-4 text-muted-foreground"}):t(Et,{className:"h-4 w-4 text-muted-foreground"})}),o("span",{className:"text-sm font-medium text-muted-foreground whitespace-nowrap",children:[k(Ct,!at),re?` • ${G(St)}`:""]})]}),t("div",{className:"flex-1 bg-card"})]},`header-${Fe.kind}`)}let He=Fe.kind==="folder"?e[Fe.index]:n[Fe.index];if(!He)return t("div",{ref:Se.measureElement,className:"absolute top-0 left-0 w-full border-b border-border px-4 py-3 flex items-center animate-pulse",style:{transform:`translateY(${lt.start}px)`},children:t("div",{className:"h-4 bg-muted rounded w-1/4"})},`skeleton-${Fe.kind}-${Fe.index}`);return t(Jp,{item:He,renderItem:d,active:oe?.field==="custom",dragState:ye,isSelected:i?.id===He.id,columnSizing:xe,virtualRow:lt,measureElement:Se.measureElement,isExternalDragging:ze,externalOverFolderId:R,setExternalOverFolderId:be,resetExternalDragState:me,onExternalDrop:ie},He.id)})})]})})}S();S();var jt={SYSTEM:"system",TEAM:"team",PROJECT:"project"},ef={[jt.SYSTEM]:qn,[jt.TEAM]:qn,[jt.PROJECT]:ki};function tf({field:e,index:n,isSelected:r,onSelect:s,isSortable:i}){let{ref:a,handleRef:l}=qa({id:e.id,index:n,disabled:!i}),d=e.config?.type?pa[e.config.type]:null;return o("div",{ref:a,className:E("flex items-center gap-2 p-2 rounded-md cursor-pointer hover:bg-muted/50",r&&"bg-muted"),onClick:()=>s(e),children:[i&&t("div",{ref:l,className:"cursor-grab",children:t(zs,{className:"h-4 w-4 text-muted-foreground"})}),!i&&t("div",{className:"w-4"})," ",d&&t(d,{className:"h-4 w-4 text-muted-foreground shrink-0"}),e.config?.autofillSource===Cr.CONTENT&&t(fn,{className:"h-4 w-4 text-muted-foreground shrink-0"}),e.config?.autofillSource===Cr.CREATION_CONTEXT&&t(Tt,{className:"h-4 w-4 text-muted-foreground shrink-0"}),t("div",{className:"flex-1 text-sm font-medium truncate",children:e.config?.name})]})}function cl({projectId:e,open:n,onOpenChange:r}){let{fields:s,updateFields:i}=Fr(),[a,l]=u(jt.PROJECT),[d,c]=u(null),[p,f]=u(!1),v=V();m(()=>{if(n)v.invalidateQueries({queryKey:["fields",e]})},[n,e,v]);let[g,h]=u(""),[y,x]=u({}),[b,N]=u(Cr.NONE),[k,G]=u(""),[X,te]=u(""),[fe,ye]=u(""),[oe,ze]=u(Cr.NONE),[R,be]=u(""),[me,ie]=u([]),xe=A.api.projects[":projectId"].fields.order.$patch,{mutate:Ge}=B({mutationFn:async(J)=>{if(!(await xe(J)).ok)throw Error($f());return null}}),Qe=A.api.projects[":projectId"].fields.$post,{mutate:ee}=B({mutationFn:async(J)=>{let j=await Qe(J);if(!j.ok)throw Error(qf());return await j.json()},onSuccess:(J)=>{let j={...J,visible:!0};i([...s,j]),f(!1),c(J.id),at(J),M.success(bv())}}),Ye=A.api.fields[":fieldId"].$put,{mutate:Je}=B({mutationFn:async(J)=>{let j=await Ye(J);if(!j.ok)throw Error(xl());return await j.json()},onSuccess:(J)=>{let j=s.map((Q)=>Q.id===J.id?{...Q,...J}:Q);i(j),M.success(Ev())}}),Se=A.api.fields[":fieldId"].$delete,{mutate:Ve}=B({mutationFn:async(J)=>{if(!(await Se(J)).ok)throw Error($b());return null},onSuccess:(J,j)=>{let Q=s.filter((je)=>je.id!==j.param.fieldId);i(Q),c(null),M.success(vv())}}),lt=D(()=>{let J=Array.from(new Set(s.map((j)=>(j.scope||jt.PROJECT).toLowerCase())));if(!J.includes(jt.PROJECT))J.push(jt.PROJECT);return J.map((j)=>({id:j,label:j===jt.SYSTEM?Bb():j===jt.TEAM?FT():j===jt.PROJECT?Ny():j.charAt(0).toUpperCase()+j.slice(1),icon:ef[j]||qn}))},[s]),Fe=D(()=>s.filter((J)=>(J.scope||jt.PROJECT).toLowerCase()===a),[s,a]),He=D(()=>s.find((J)=>J.id===d),[s,d]),at=(J)=>{if(J)h(J.config?.name||""),x(J.config||{}),N(J.config?.autofillSource??Cr.NONE),G(J.description||"");else h(""),x({}),N(Cr.NONE),G("")},Ct=(J)=>{f(!1),c(J.id),at(J)},St=()=>{f(!0),c(null),te(""),ye(""),ze(Cr.NONE),be(""),ie([])},re=(J)=>{if(J.canceled)return;let{source:j}=J.operation;if(!so(j))return;let{initialIndex:Q,index:je}=j;if(Q===je)return;let ut=mu(s,Fe,Q,je);i(ut),Ge({param:{projectId:e},json:ut.map((It)=>({fieldId:It.id,visible:It.visible||!1}))})},dt=()=>{if(!X||!fe)return;let J=fe===Pr.select?{select:{options:me}}:fe===Pr.selectMulti?{selectMulti:{options:me}}:{};ee({param:{projectId:e},json:{config:{name:X,type:fe,autofillSource:oe,...J},label:X,scope:a===jt.PROJECT?void 0:a,description:R}})},xt=()=>{if(!He)return;Je({param:{fieldId:He.id},json:{config:{...He.config,...y,name:g,autofillSource:b},description:k}})},Ee=()=>{if(!He)return;if(confirm(oy()))Ve({param:{fieldId:He.id}})},U=()=>{if(p)return o("div",{className:"space-y-4",children:[o("div",{className:"space-y-2",children:[t(W,{children:Vf()}),t(z,{value:X,onChange:(j)=>te(j.target.value),placeholder:wv()})]}),o("div",{className:"space-y-2",children:[t(W,{children:Qf()}),o(ge,{children:[t(Ae,{asChild:!0,children:o(C,{variant:"outline",className:"w-full justify-between",children:[fe?t("span",{className:"capitalize",children:fe.replace(/_/g," ")}):t("span",{className:"text-muted-foreground",children:bI()}),t(ve,{className:"h-4 w-4 opacity-50"})]})}),t(_e,{className:"max-h-60 overflow-y-auto",children:Object.values(Pr).map((j)=>t(K,{onClick:()=>{ye(j),ie([])},className:"capitalize",children:j.replace(/_/g," ")},j))})]})]}),o("div",{className:"space-y-2",children:[t(W,{children:vl()}),t(z,{value:R,onChange:(j)=>be(j.target.value),placeholder:hd()})]}),o("div",{className:"space-y-2",children:[o("div",{className:"flex items-center gap-1",children:[t(W,{children:pd()}),t(Vl,{})]}),o(Ro,{type:"single",value:oe,onValueChange:(j)=>{if(j)ze(j)},className:"w-full grid grid-cols-3 border rounded-md p-1 gap-1",children:[t(yr,{value:Cr.NONE,className:"text-[11px] leading-tight py-1 px-1 h-auto min-h-[32px] w-full text-center justify-center whitespace-normal font-medium",children:Zc()}),t(yr,{value:Cr.CONTENT,className:"text-[11px] leading-tight py-1 px-1 h-auto min-h-[32px] w-full text-center justify-center whitespace-normal font-medium",children:Fc()}),t(yr,{value:Cr.CREATION_CONTEXT,className:"text-[11px] leading-tight py-1 px-1 h-auto min-h-[32px] w-full text-center justify-center whitespace-normal font-medium",children:Lc()})]})]}),(fe===Pr.select||fe===Pr.selectMulti)&&o("div",{className:"space-y-2",children:[o("div",{className:"flex items-center justify-between",children:[t(W,{className:"text-sm font-medium",children:Rd()}),o(C,{variant:"ghost",size:"sm",onClick:()=>{let j={id:Uo(),displayName:Td(),color:Pi(me)};ie([...me,j])},children:[t(de,{className:"h-4 w-4 mr-2"})," ",cd()]})]}),t("div",{className:"space-y-2 max-h-40 overflow-y-auto pr-1",children:me.map((j,Q)=>o("div",{className:"flex items-center gap-2",children:[t(z,{value:j.displayName,onChange:(je)=>{let ut=[...me];ut[Q]={...j,displayName:je.target.value},ie(ut)},placeholder:hp()}),o(At,{children:[t(_t,{asChild:!0,children:t("button",{type:"button",className:"w-6 h-6 rounded-full border shrink-0 cursor-pointer focus:outline-none hover:scale-105 transition-transform",style:{backgroundColor:Ri[j.color||""]?.hex||j.color||"#808080"}})}),t(yt,{className:"p-2 w-auto",align:"end",children:t("div",{className:"flex gap-1",children:fa.map((je)=>t("button",{type:"button",className:"w-5 h-5 rounded-full border cursor-pointer hover:scale-110 transition-transform",style:{backgroundColor:Ri[je]?.hex||je},onClick:()=>{let ut=[...me];ut[Q]={...j,color:je},ie(ut)}},je))})})]}),t(C,{variant:"ghost",size:"icon",onClick:()=>{ie(me.filter((je,ut)=>ut!==Q))},children:t(Ne,{className:"h-4 w-4"})})]},j.id||Q))})]})]});if(!He)return t("div",{className:"text-muted-foreground text-sm",children:dI()});let J=He.readOnly;return o("div",{className:"space-y-6",children:[o("div",{className:"flex items-center justify-between",children:[t(z,{value:g,onChange:(j)=>h(j.target.value),disabled:J,className:"font-medium"}),J&&t(sn,{className:"h-4 w-4 text-muted-foreground ml-2"})]}),o("div",{className:"text-sm text-muted-foreground",children:[T1()," ",t("span",{className:"capitalize",children:He.config?.type?.replace(/_/g," ")})]}),o("div",{className:"space-y-2",children:[t(W,{children:vl()}),t(z,{value:k,onChange:(j)=>G(j.target.value),placeholder:hd(),disabled:J})]}),o("div",{className:"space-y-2",children:[o("div",{className:"flex items-center gap-1",children:[t(W,{children:pd()}),t(Vl,{})]}),o(Ro,{type:"single",value:p?oe:b,onValueChange:(j)=>{if(j)if(p)ze(j);else N(j)},disabled:J,className:"w-full grid grid-cols-3 border rounded-md p-1 gap-1",children:[t(yr,{value:Cr.NONE,className:"text-[11px] leading-tight py-1 px-1 h-auto min-h-[32px] w-full text-center justify-center whitespace-normal font-medium",children:Zc()}),t(yr,{value:Cr.CONTENT,className:"text-[11px] leading-tight py-1 px-1 h-auto min-h-[32px] w-full text-center justify-center whitespace-normal font-medium",children:Fc()}),t(yr,{value:Cr.CREATION_CONTEXT,className:"text-[11px] leading-tight py-1 px-1 h-auto min-h-[32px] w-full text-center justify-center whitespace-normal font-medium",children:Lc()})]})]}),(He.config?.type==="select"||He.config?.type==="selectMulti")&&o("div",{className:"space-y-2",children:[o("div",{className:"flex items-center justify-between",children:[t("label",{className:"text-sm font-medium",children:Rd()}),o(C,{variant:"ghost",size:"sm",onClick:()=>{let j=(He.config?.type==="select"?y.select?.options:y.selectMulti?.options)||[],Q={id:Uo(),displayName:Td(),color:Pi(j)},je=[...j,Q];x({...y,[He.config?.type==="select"?"select":"selectMulti"]:{options:je}})},children:[t(de,{className:"h-4 w-4 mr-2"})," ",cd()]})]}),t("div",{className:"space-y-2",children:((He.config?.type==="select"?y.select?.options:y.selectMulti?.options)||[]).map((j,Q)=>o("div",{className:"flex items-center gap-2",children:[t(z,{value:j.displayName,onChange:(je)=>{let ut=[...(He.config?.type==="select"?y.select?.options:y.selectMulti?.options)||[]];ut[Q]={...j,displayName:je.target.value},x({...y,[He.config?.type==="select"?"select":"selectMulti"]:{options:ut}})}}),o(At,{children:[t(_t,{asChild:!0,children:t("button",{type:"button",className:"w-6 h-6 rounded-full border shrink-0 cursor-pointer focus:outline-none hover:scale-105 transition-transform",style:{backgroundColor:Ri[j.color||""]?.hex||j.color||"#808080"},disabled:J})}),!J&&t(yt,{className:"p-2 w-auto",align:"end",children:t("div",{className:"flex gap-1",children:fa.map((je)=>t("button",{type:"button",className:"w-5 h-5 rounded-full border cursor-pointer hover:scale-110 transition-transform",style:{backgroundColor:Ri[je]?.hex||je},onClick:()=>{let ut=[...(He.config?.type==="select"?y.select?.options:y.selectMulti?.options)||[]];ut[Q]={...j,color:je},x({...y,[He.config?.type==="select"?"select":"selectMulti"]:{options:ut}})}},je))})})]}),t(C,{variant:"ghost",size:"icon",onClick:()=>{let je=((He.config?.type==="select"?y.select?.options:y.selectMulti?.options)||[]).filter((ut,It)=>It!==Q);x({...y,[He.config?.type==="select"?"select":"selectMulti"]:{options:je}})},children:t(Ne,{className:"h-4 w-4"})})]},Q))})]}),!J&&He.scope?.toLowerCase()!=="system"&&t("div",{className:"pt-4 flex justify-between",children:t(C,{variant:"outline",onClick:Ee,className:"text-destructive hover:bg-destructive/10",children:Vy()})})]})};return t(ue,{open:n,onOpenChange:r,children:o(ae,{className:"!max-w-[50rem] h-[70vh] flex flex-col p-0 gap-0",children:[t("div",{className:"p-4 border-b flex items-center justify-between",children:t(le,{children:ep()})}),o("div",{className:"flex overflow-hidden h-full",children:[o("div",{className:"w-60 border-r bg-muted/30 p-4 space-y-1",children:[t("div",{className:"font-semibold mb-4 px-2",children:cw()}),lt.map((J)=>o("button",{onClick:()=>{l(J.id),f(!1),c(null)},className:E("w-full flex items-center gap-2 px-3 py-2 rounded-md text-sm font-medium transition-colors hover:bg-muted text-left",a===J.id&&"bg-muted text-foreground"),children:[t(J.icon,{className:"h-4 w-4"}),J.label]},J.id))]}),o("div",{className:"w-64 border-r flex flex-col",children:[o("div",{className:"p-4 border-b flex items-center justify-between bg-background h-[57px]",children:[t("span",{className:"font-medium text-sm",children:lt.find((J)=>J.id===a)?.label}),a===jt.PROJECT&&o(C,{size:"sm",variant:"outline",className:"h-8",onClick:St,children:[aS()," ",t(de,{className:"ml-1 h-3 w-3"})]})]}),o("div",{className:"flex-1 overflow-y-auto p-2 space-y-1",children:[t(Vn,{sensors:[yn.configure({activationConstraints:[new Dr.Distance({value:8})]}),es],onDragEnd:re,children:Fe.map((J,j)=>t(tf,{field:J,index:j,isSelected:d===J.id,onSelect:Ct,isSortable:!0},J.id))}),Fe.length===0&&t("div",{className:"text-center text-muted-foreground text-sm py-8",children:_S()})]})]}),o("div",{className:"flex-1 bg-background flex flex-col",children:[t("div",{className:"flex-1 overflow-y-auto p-6",children:U()}),(p||He&&!He.readOnly)&&o("div",{className:"p-4 border-t flex justify-end gap-2 bg-muted/10",children:[t(C,{variant:"ghost",onClick:()=>{if(f(!1),d&&He)at(He)},children:De()}),t(C,{onClick:p?dt:xt,children:Gn()})]})]})]})]})})}S();function ds({value:e,onChange:n,debounce:r=500,...s}){let[i,a]=u(e);return m(()=>{a(e)},[e]),m(()=>{let l=setTimeout(()=>{if(i!==e)n(i)},r);return()=>clearTimeout(l)},[i,r,n,e]),t(z,{...s,value:i,onChange:(l)=>a(l.target.value)})}S();function ko({fields:e,conditions:n,onChange:r,className:s,excludeFields:i,hidePrefix:a}){let l=As(),{members:d,fetchMembers:c}=jr();m(()=>{if(l)c(l)},[l,c]);let p=D(()=>d.map((y)=>({id:y.id,displayName:y.name,color:"system"})),[d]),f=D(()=>{let y=[{id:"name",label:Nl(),type:"text"},{id:"createdAt",label:yv(),type:"date"},{id:"updatedAt",label:Sv(),type:"date"},{id:"sizeByte",label:xv(),type:"number"}],x=e.map((b)=>({id:b.id,label:b.config?.name||b.description||_n(),type:nf(b),options:b.config?.type==="user"||b.config?.type==="userMulti"?p:b.config?.select?.options||b.config?.selectMulti?.options,config:b.config}));return[...y,...x].filter((b)=>!i?.includes(b.id))},[e,p,i]),v=()=>{r([...n,{field:f[0]?.id||"name",operator:"eq",value:""}])},g=(y)=>{let x=[...n];x.splice(y,1),r(x)},h=(y,x,b)=>{let N=[...n];if(N[y]={...N[y],[x]:b},x==="field"){let k=f.find((G)=>G.id===b);if(k)N[y].operator=of(k.type),N[y].value=""}if(x==="operator"){let k=f.find((G)=>G.id===N[y].field);if(k&&(k.type==="select"||k.type==="selectMulti")){let G=n[y].operator,X=b,te=us(k.type,G),fe=us(k.type,X);if(te&&!fe){let ye=Array.isArray(N[y].value)?N[y].value:[];N[y].value=ye[0]||""}else if(!te&&fe){let ye=N[y].value;N[y].value=ye?[ye]:[]}}}r(N)};return o("div",{className:E("p-2 space-y-4 min-w-[100px]",s),children:[n.map((y,x)=>o("div",{className:"flex items-center gap-2",children:[!a&&t("div",{className:"w-16 text-sm text-muted-foreground font-medium text-right",children:x===0?Pv():Mv()}),o("div",{className:"flex-1 flex items-center gap-2",children:[o(Le,{value:y.field,onValueChange:(b)=>h(x,"field",b),children:[t(Be,{className:"w-[180px]",children:t(Ze,{placeholder:uI()})}),t(Ue,{children:f.map((b)=>t(ne,{value:b.id,children:b.label},b.id))})]}),o(Le,{value:y.operator,onValueChange:(b)=>h(x,"operator",b),children:[t(Be,{className:"w-[140px]",children:t(Ze,{placeholder:HS()})}),t(Ue,{children:rf(f.find((b)=>b.id===y.field)||{id:"",label:"",type:"text"}).map((b)=>t(ne,{value:b.value,children:b.label},b.value))})]}),t("div",{className:"flex-1",children:y.operator!=="isEmpty"&&y.operator!=="isNotEmpty"&&t(af,{field:f.find((b)=>b.id===y.field),operator:y.operator,value:y.value,onChange:(b)=>h(x,"value",b)})}),t(C,{variant:"ghost",size:"icon",onClick:()=>g(x),children:t(we,{className:"h-4 w-4"})})]})]},x)),t("div",{className:"flex items-center gap-2",children:t(C,{variant:"ghost",className:"text-muted-foreground hover:text-foreground",onClick:v,children:YA()})})]})}function nf(e){if(e.config?.type==="select"||e.config?.type==="user")return"select";if(e.config?.type==="selectMulti"||e.config?.type==="userMulti")return"selectMulti";if(e.config?.type==="number")return"number";if(e.config?.type==="date")return"date";if(e.config?.type==="rating")return"rating";if(e.config?.type==="toggle")return"toggle";return"text"}function of(e){switch(e){case"selectMulti":return"hasAny";case"number":case"rating":case"date":return"eq";default:return"eq"}}function rf(e){let n=e.type;if(e.id==="name")return[{value:"eq",label:Cl()},{value:"neq",label:kd()},{value:"contains",label:$S()},{value:"notContains",label:GS()},{value:"isEmpty",label:Il()},{value:"isNotEmpty",label:Tl()}];switch(n){case"text":return[{value:"eq",label:Cl()},{value:"neq",label:kd()},{value:"isEmpty",label:Il()},{value:"isNotEmpty",label:Tl()}];case"number":case"rating":return[{value:"eq",label:"="},{value:"neq",label:"≠"},{value:"gt",label:">"},{value:"lt",label:"<"},{value:"lte",label:"≤"},{value:"gte",label:"≥"},{value:"isEmpty",label:Il()},{value:"isNotEmpty",label:Tl()}];case"select":return[{value:"eq",label:Cl()},{value:"neq",label:kd()},{value:"in",label:YS()},{value:"notIn",label:eE()},{value:"isEmpty",label:Il()},{value:"isNotEmpty",label:Tl()}];case"selectMulti":return[{value:"hasAny",label:QS()},{value:"hasAll",label:VS()},{value:"eq",label:XS()},{value:"hasNone",label:KS()},{value:"isEmpty",label:Il()},{value:"isNotEmpty",label:Tl()}];case"date":return[{value:"eq",label:Cl()},{value:"isWithin",label:nE()},{value:"lt",label:JS()},{value:"gt",label:WS()},{value:"lte",label:rE()},{value:"gte",label:tE()},{value:"neq",label:kd()},{value:"isEmpty",label:Il()},{value:"isNotEmpty",label:Tl()}];case"toggle":return[{value:"eq",label:Cl()}];default:return[{value:"eq",label:Cl()}]}}function us(e,n){if(e==="select")return n==="in"||n==="notIn";if(e==="selectMulti")return n!=="eq";return!1}function sf({options:e,selected:n,onChange:r}){let s=e.filter((a)=>n.includes(a.id)),i=(a)=>{let l;if(n.includes(a))l=n.filter((d)=>d!==a);else l=[...n,a];r(l)};return o(At,{children:[t(_t,{asChild:!0,children:o("button",{type:"button",className:"flex min-h-9 w-full items-center justify-between rounded-md border border-input bg-transparent px-3 py-1.5 text-sm shadow-xs hover:bg-accent/50 focus:outline-hidden focus:ring-1 focus:ring-ring disabled:cursor-not-allowed disabled:opacity-50 text-left",children:[t("div",{className:"flex flex-wrap gap-1 items-center max-w-[90%]",children:s.length===0?t("span",{className:"text-muted-foreground",children:AI()}):s.map((a)=>t("span",{className:"inline-flex items-center px-2 py-0.5 rounded-full text-xs font-medium border border-transparent whitespace-nowrap h-[20px]",style:Es(a.color),children:a.displayName},a.id))}),t(ve,{className:"h-4 w-4 shrink-0 opacity-50 ml-2"})]})}),t(yt,{className:"w-64 p-1 bg-popover border border-border rounded-lg shadow-xl max-h-60 overflow-auto",align:"start",children:e.map((a)=>{let l=n.includes(a.id);return o("div",{onClick:()=>i(a.id),className:"px-3 py-2 hover:bg-accent cursor-pointer flex items-center justify-between rounded-sm",children:[t("span",{className:"inline-flex items-center px-2 py-0.5 rounded-full text-xs font-medium",style:Es(a.color),children:a.displayName}),l&&t(Pe,{className:"w-4 h-4 text-primary"})]},a.id)})})]})}function af({field:e,operator:n,value:r,onChange:s}){if(!e)return t(z,{disabled:!0});if((e.type==="select"||e.type==="selectMulti")&&e.options){if(us(e.type,n)){let i=Array.isArray(r)?r:[];return t(sf,{options:e.options,selected:i,onChange:(a)=>s(a)})}return o(Le,{value:r,onValueChange:s,children:[t(Be,{children:t(Ze,{placeholder:gI()})}),t(Ue,{children:e.options.map((i)=>t(ne,{value:i.id,children:t("span",{className:"inline-flex items-center px-2 py-0.5 rounded-full text-xs font-medium",style:Es(i.color),children:i.displayName})},i.id))})]})}if(e.type==="date"){let i=[{value:"today",label:By()},{value:"yesterday",label:jy()},{value:"tomorrow",label:Uy()},{value:"one week ago",label:Ly()},{value:"one week from now",label:Zy()},{value:"one month ago",label:Oy()},{value:"one month from now",label:Fy()}],a=i.some((l)=>l.value===r);return o("div",{className:"flex gap-2",children:[o(Le,{value:a?r:"exact",onValueChange:(l)=>{if(l==="exact")s("");else s(l)},children:[t(Be,{className:"w-[140px]",children:t(Ze,{placeholder:zy()})}),o(Ue,{children:[i.map((l)=>t(ne,{value:l.value,children:l.label},l.value)),t(ne,{value:"exact",children:Ub()})]})]}),!a&&t(z,{type:"date",className:"flex-1",value:r,onChange:(l)=>s(l.target.value)})]})}if(e.type==="number")return t(ds,{type:"number",value:r,onChange:(i)=>s(Number(i))});if(e.type==="rating")return t(Au,{value:Number(r)||0,config:e.config||{name:e.label,type:"rating"},onSave:s});if(e.type==="toggle")return o(Le,{value:r===!0?"true":"false",onValueChange:(i)=>s(i==="true"),children:[t(Be,{children:t(Ze,{})}),o(Ue,{children:[t(ne,{value:"true",children:o1()}),t(ne,{value:"false",children:s1()})]})]});return t(ds,{type:"text",placeholder:Nb(),value:r,onChange:s})}S();function pl({open:e,onOpenChange:n,teamId:r,projectId:s,assetId:i,fields:a,initialConditions:l,onApply:d}){let c=Re(),p=V(),f=D(()=>{let re=l.find((dt)=>dt.field==="name"&&dt.operator==="contains");return re?String(re.value):""},[l]),v=D(()=>l.filter((re)=>!(re.field==="name"&&re.operator==="contains")),[l]),[g,h]=u(v),[y,x]=u(!0),[b,N]=u(f),[k,G]=u(f),[X,te]=u(!1),{data:fe}=Z({queryKey:["team-settings",r],queryFn:async()=>{let re=await A.api.teams[":teamId"].settings.$get({param:{teamId:r}});if(!re.ok)throw Error(Xo());return await re.json()},enabled:e}),ye=fe?.semanticSearchEnabled??!1;m(()=>{if(e)N(f),G(f),h(v),te(!1);else N(""),G(""),h([]),te(!1)},[e,f,v]);let oe=D(()=>{let re=[...g],dt=k;if(dt.trim()&&!X)re.push({field:"name",operator:"contains",value:dt.trim()});return re},[X,k,g]),ze=D(()=>k.trim()!==""||g.some((dt)=>String(dt.value||"").trim()!==""),[k,g]),{mutate:R,isPending:be}=B({mutationFn:async()=>{let re=k,dt=re.trim();if(!dt&&g.length>0){let Ee=g[0];dt=`${a.find((j)=>j.id===Ee.field)?.config?.name||Ee.field} ${Ee.operator} ${Ee.value}`}if(!dt)dt=CA();let xt=await A.api.projects[":projectId"].collections.$post({param:{projectId:s},json:{name:dt,filter:{sourceFolderId:i,searchFilter:{conditions:oe,recursively:!0,query:re.trim(),isSemantic:X}}}});if(!xt.ok)throw Error(Jb());return await xt.json()},onSuccess:(re)=>{p.invalidateQueries({queryKey:["collections",s]}),M.success(K_()),n(!1),c({to:"/projects/$projectId/collections/$collectionId",params:{projectId:s,collectionId:re.id}})},onError:(re)=>{M.error(`Error: ${re.message}`)}}),{ref:me,inView:ie}=Nt(),{data:xe,isLoading:Ge,isFetchingNextPage:Qe,fetchNextPage:ee,hasNextPage:Ye,error:Je}=mt({queryKey:["search-preview",r,i,oe,X,k],queryFn:async({pageParam:re})=>{let dt=k,xt=await A.api.folders[":folderId"].search.$post({param:{folderId:i},json:{assetType:void 0,conditions:oe,recursively:!0,query:dt.trim(),isSemantic:X,first:20,after:re}});if(!xt.ok){let Ee=await xt.json().catch(()=>({}));throw Error(Ee.message||tA())}return await xt.json()},enabled:e&&ze,staleTime:500,retry:!1,initialPageParam:"",getNextPageParam:(re)=>re.pageInfo?.cursor||void 0});m(()=>{if(ie&&Ye&&!Qe)ee()},[ie,Ye,Qe,ee]);let Se=D(()=>xe?.pages.flatMap((re)=>re.data)||[],[xe]),Ve=xe?.pages[0]?.pageInfo?.total||0,lt=(re)=>{if(re===10001)return"10000+";return re.toString()},Fe=()=>{d(oe),n(!1)},He=()=>{h([])},at=(re)=>{let dt=Math.floor(re/60),xt=Math.floor(re%60);return`${dt.toString().padStart(2,"0")}:${xt.toString().padStart(2,"0")}`},Ct=(re)=>{if(re.type==="folder")c({to:"/projects/$projectId/folders/$folderId",params:{projectId:s,folderId:re.id}});else c({to:"/projects/$projectId/files/$fileId",params:{projectId:s,fileId:re.versionStack?re.versionStack.id:re.id},search:{version:void 0,start:re.startTime&&re.startTime>0?re.startTime:void 0}});n(!1)},St=g.filter((re)=>re.value!=="").length;return t(ue,{open:e,onOpenChange:n,children:o(ae,{className:"sm:max-w-[900px] p-0 gap-0 overflow-hidden bg-background border-border rounded-2xl shadow-2xl flex flex-col h-[85vh]",children:[t(pe,{className:"px-6 pt-3 pb-0 text-left",children:t(le,{className:"text-lg font-bold",children:tI()})}),o("div",{className:"px-6 pb-6 pt-4 border-b border-border bg-muted/30 flex flex-col gap-3",children:[o("form",{onSubmit:(re)=>{re.preventDefault(),G(b.trim())},className:"flex flex-col gap-3 mt-2",children:[o("div",{className:"relative",children:[t(z,{value:b,onChange:(re)=>N(re.target.value),placeholder:X?XC():eI(),className:"w-full pl-4 pr-24 py-3 bg-background border-border rounded-xl text-sm h-12 focus-visible:ring-2 focus-visible:ring-primary/20 shadow-sm"}),b&&t("button",{type:"button",onClick:()=>{N(""),G("")},className:"absolute right-20 top-1/2 -translate-y-1/2 p-1 rounded-md text-muted-foreground hover:text-foreground transition-colors",children:t(Ne,{className:"w-4 h-4"})}),t("button",{type:"submit",className:"absolute right-1.5 top-1.5 bottom-1.5 px-4 bg-primary hover:bg-primary/90 text-primary-foreground text-xs font-semibold rounded-lg flex items-center justify-center transition-colors shadow-sm",children:JC()})]}),o("div",{className:"flex items-center gap-3 py-1",children:[o("div",{className:"flex items-center gap-2 bg-background border border-border px-3 py-1.5 rounded-lg shadow-sm",children:[t(Me,{id:"semantic-search-switch",checked:X,onCheckedChange:(re)=>{te(re),N(""),G(""),h([])},disabled:!ye}),t(W,{htmlFor:"semantic-search-switch",className:E("text-xs font-semibold select-none cursor-pointer",!ye&&"opacity-50 cursor-not-allowed"),children:SI()})]}),!ye&&t("span",{className:"text-[10px] text-muted-foreground italic",children:CI()})]})]}),o("div",{className:"flex items-center justify-between py-1.5 px-1 mt-1 select-none",children:[o("div",{className:"flex items-center gap-2",children:[o("button",{type:"button",onClick:()=>x(!y),className:"flex items-center gap-2 py-1 px-1.5 rounded-lg hover:bg-accent/50 cursor-pointer transition-colors group text-left",children:[y?t(Ma,{className:"w-4 h-4 text-muted-foreground group-hover:text-foreground"}):t(ve,{className:"w-4 h-4 text-muted-foreground group-hover:text-foreground"}),t("span",{className:"text-xs font-semibold text-foreground/80",children:Nv()})]}),St>0&&o("span",{className:"px-1.5 py-0.5 rounded-full text-[10px] font-mono font-bold bg-primary/10 text-primary border border-primary/20",children:[St," ",QA()]})]}),St>0&&t("button",{type:"button",onClick:(re)=>{re.stopPropagation(),He()},className:"text-[11px] font-medium text-destructive hover:text-destructive/80 underline underline-offset-2 transition-colors",children:UC()})]}),y&&t(ce,{className:"mt-1 max-h-[28vh] rounded-xl border border-border bg-muted/40",children:t("div",{className:"p-4 flex flex-col gap-3 animate-in slide-in-from-top-1 duration-200",children:t(ko,{fields:a,conditions:g,onChange:h,excludeFields:["name"],hidePrefix:!0,className:"p-0 bg-transparent space-y-2"})})})]}),t(ce,{className:"flex-1 min-h-0 bg-background [&>div>div]:block!",children:o("div",{className:"p-4 md:p-5 min-w-0",children:[o("div",{className:"flex items-center justify-between mb-3 px-1",children:[t("span",{className:"text-[11px] font-bold uppercase tracking-wider text-muted-foreground/60 font-mono",children:sI()}),Ge&&o("span",{className:"inline-flex items-center gap-1.5 text-xs text-primary",children:[t(O,{className:"h-3 w-3 animate-spin"}),X?II():YE()]})]}),t("div",{className:"flex flex-col border border-border rounded-xl divide-y divide-border overflow-hidden min-w-0",children:!ze?o("div",{className:"py-20 text-center flex flex-col items-center justify-center bg-muted/20 px-4",children:[t(Ut,{className:"w-10 h-10 text-muted-foreground/30 mb-2"}),t("h3",{className:"text-sm font-semibold text-foreground/80",children:MC()}),t("p",{className:"text-xs text-muted-foreground max-w-sm mt-1 mx-auto",children:M1()}),X&&t("p",{className:"text-xs text-muted-foreground/80 max-w-md mt-4 mx-auto border-t border-border/60 pt-3",children:EI()})]}):Je?o("div",{className:"py-12 px-4 text-center flex flex-col items-center justify-center bg-muted/20",children:[t(sr,{className:"w-10 h-10 text-destructive/50 mb-2"}),t("h3",{className:"text-sm font-semibold text-foreground/80",children:tA()}),t("p",{className:"text-xs text-muted-foreground max-w-sm mt-1 mx-auto",children:Je.message.includes("Embedding agent not configured")?Mb():Je.message})]}):Ge?Array.from({length:3}).map((re,dt)=>o("div",{className:"p-3.5 flex items-center gap-3 animate-pulse bg-muted/10",children:[t("div",{className:"w-11 h-11 rounded-xl bg-muted shrink-0"}),o("div",{className:"flex-1 space-y-2",children:[t("div",{className:"h-4 bg-muted rounded w-1/3"}),t("div",{className:"h-3 bg-muted/50 rounded w-1/4"})]})]},dt)):Se.length===0?o("div",{className:"py-12 px-4 text-center flex flex-col items-center justify-center bg-muted/20",children:[t(sr,{className:"w-10 h-10 text-muted-foreground/30 mb-2"}),t("h3",{className:"text-sm font-semibold text-foreground/80",children:CS()}),t("p",{className:"text-xs text-muted-foreground max-w-sm mt-1 mx-auto",children:h1()})]}):o(L,{children:[Se.map((re)=>o("div",{onClick:()=>Ct(re),className:"p-3.5 flex items-center gap-3 hover:bg-muted/40 transition-colors group/record cursor-pointer min-w-0",children:[t("div",{className:E("shrink-0 w-11 h-11 rounded-xl shadow-xs flex items-center justify-center text-white font-bold relative group-hover/record:scale-105 transition-transform bg-muted overflow-hidden",re.type==="folder"?"bg-primary/5":""),children:re.preview?.thumbnailUrl?t("img",{src:re.preview.thumbnailUrl,alt:"",className:"w-full h-full object-cover rounded-xl"}):re.type==="folder"?t(rr,{className:"h-6 w-6 text-primary/70"}):t(tr,{className:"h-6 w-6 text-muted-foreground"})}),t("div",{className:"flex-1 min-w-0",children:o("div",{className:"flex items-center justify-between gap-3 min-w-0",children:[o("div",{className:"flex-1 min-w-0",children:[t("span",{className:"font-medium text-sm text-foreground group-hover/record:text-primary transition-colors block truncate",children:re.name}),t("span",{className:"text-xs text-muted-foreground block mt-0.5 truncate",children:re.type==="folder"?Lh():`${qI()} ${Jr(re.sizeByte||0)}`}),re.startTime!==void 0&&re.startTime!==null&&re.endTime!==void 0&&re.endTime!==null&&o("span",{className:"text-[10px] font-semibold text-primary bg-primary/10 border border-primary/20 px-1.5 py-0.5 rounded mt-1 inline-block max-w-full truncate",children:[Yw()," ",at(re.startTime)," -"," ",at(re.endTime)]})]}),t("span",{className:"text-xs text-muted-foreground font-mono shrink-0",children:new Date(re.createdAt).toLocaleDateString(void 0,{year:"numeric",month:"short"})})]})})]},re.id)),(Ye||Qe)&&t("div",{ref:me,className:"p-4 flex justify-center items-center",children:t(O,{className:"h-6 w-6 animate-spin text-muted-foreground"})})]})})]})}),o("div",{className:"p-4 border-t border-border bg-muted/30 flex items-center justify-between shrink-0",children:[t("div",{className:"text-xs text-muted-foreground flex items-center gap-2",children:t("span",{children:Jw({count:lt(Ve)})})}),o("div",{className:"flex items-center gap-2",children:[t(C,{variant:"outline",size:"xs",className:"h-8 text-[10px] font-semibold uppercase tracking-wider mr-1",disabled:!ze||be||X,onClick:()=>R(),children:be?o(L,{children:[t(O,{className:"mr-2 h-3 w-3 animate-spin"}),Np()]}):KC()}),t(C,{size:"xs",className:"h-8 text-[10px] font-semibold uppercase tracking-wider",onClick:X?()=>n(!1):Fe,children:X?Bc():c_()})]})]})]})})}S();function fl({fields:e,sort:n,onSortChange:r,disabled:s}){let i=D(()=>{let g=[{id:"custom",label:Zp()},{id:"name",label:Nl()},{id:"createdAt",label:Bp()},{id:"updatedAt",label:lT()},{id:"sizeByte",label:zp()}],h=e.map((y)=>({id:y.id,label:y.config?.name||y.description||_n()}));return[...g,...h]},[e]),a=n?.field||"custom",l=i.find((g)=>g.id===a)||i[0],d=n?.order==="asc",p=((g)=>{if(g==="name")return{asc:Qc(),desc:Yc()};if(["createdAt","updatedAt"].includes(g))return{asc:Wc(),desc:Kc()};if(g==="sizeByte")return{asc:jp(),desc:Up()};return{asc:kf(),desc:Bf()}})(a),f=(g)=>{r({field:g,order:n?.order||"desc"})},v=(g)=>{r({field:a,order:g==="asc"?"asc":"desc"})};return o(At,{children:[t(_t,{asChild:!0,children:t(C,{variant:n?"secondary":"ghost",size:"sm",disabled:s,children:n?uT({field:l.label}):Pl()})}),t(yt,{className:"w-[280px] p-3",align:"end",children:o("div",{className:"grid gap-4",children:[o("div",{className:"grid gap-2",children:[t("span",{className:"text-sm text-muted-foreground",children:Pl()}),o(Le,{value:a,onValueChange:f,children:[t(Be,{className:"w-full",children:t(Ze,{})}),t(Ue,{position:"popper",children:i.map((g)=>t(ne,{value:g.id,children:g.label},g.id))})]})]}),a!=="custom"&&o("div",{className:"grid gap-2",children:[t("span",{className:"text-sm text-muted-foreground",children:gp()}),o(C,{variant:"outline",className:"w-full justify-between font-normal",onClick:()=>v(d?"desc":"asc"),children:[t("span",{children:d?p.asc:p.desc}),t(au,{className:"size-4 opacity-50"})]})]})]})})]})}function ml({teamId:e,projectId:n,assetId:r,fields:s,filterConditions:i,onFilterChange:a,sort:l,onSortChange:d,isRecentlyDeleted:c,isRecents:p,collection:f,onUpdateCollection:v,rootFolderId:g}){let{canEdit:h}=Ot(n),[y,x]=u(!1),[b,N]=u(!1),[k,G]=u(!1),[X,te]=u(!1),[fe,ye]=u(!1),oe=Re(),ze=i.length,R=!!f,be=V(),me=_r((Q)=>Boolean(Q.metadata["appearance.hideAgent"])),{data:ie}=Z({queryKey:["folders",r],queryFn:async()=>{let Q=await A.api.folders[":folderId"].$get({param:{folderId:r}});if(!Q.ok)throw Error("failed to fetch folder");return await Q.json()},enabled:!!r&&!c}),xe=()=>{if(r===g)oe({to:"/projects/$projectId/agentsmd",params:{projectId:n}});else oe({to:"/projects/$projectId/folders/$folderId/agentsmd",params:{projectId:n,folderId:r}})},{data:Ge,refetch:Qe}=Z({queryKey:["projects",n,"members"],queryFn:async()=>{let Q=await A.api.projects[":projectId"].members.$get({param:{projectId:n},query:{}});if(!Q.ok)throw Error("Failed to fetch members");return await Q.json()}}),{data:ee}=Z({queryKey:["projects",n,"team"],queryFn:async()=>{let Q=await A.api.projects[":projectId"].team.$get({param:{projectId:n}});if(!Q.ok)throw Error("Failed to fetch team info");return await Q.json()}}),{data:Ye}=Z({queryKey:["teams",ee?.teamId,"members"],queryFn:async()=>{let Q=await A.api.teams[":teamId"].members.$get({param:{teamId:ee?.teamId||""},query:{}});if(!Q.ok)throw Error("Failed to fetch team members");return await Q.json()},enabled:!!ee?.teamId&&X}),{data:Je,refetch:Se}=Z({queryKey:["projects",n,"me"],queryFn:async()=>{let Q=await A.api.projects[":projectId"].me.$get({param:{projectId:n}});if(!Q.ok)throw Error("Failed to fetch project me");return await Q.json()},enabled:!!n}),Ve=A.api.projects[":projectId"].invite.$post,lt=B({mutationFn:async(Q)=>{let je=await Ve(Q);if(!je.ok)throw Error("Failed to invite");return await je.json()}}),Fe=A.api.projects[":projectId"].members.$post,He=B({mutationFn:async(Q)=>{let je=await Fe(Q);if(!je.ok)throw Error("Failed to add project member");return await je.json()},onSuccess:()=>{be.invalidateQueries({queryKey:["projects",n,"members"]}),be.invalidateQueries({queryKey:["projects",n,"me"]})}}),at=()=>{x(!1),G(!0)},Ct=async(Q)=>(await lt.mutateAsync({param:{projectId:n},json:{role:Q}})).code,St=(Q)=>{if(te(Q),Q)Qe(),Se()},re=Array.isArray(Ge)?Ge:[],xt=(Array.isArray(Ye)?Ye:[]).filter((Q)=>!re.some((je)=>je.id===Q.id)),Ee=async(Q,je)=>{await He.mutateAsync({param:{projectId:n},json:{userId:Q,role:je}})},U=B({mutationFn:async({userId:Q,role:je})=>{if(!(await A.api.projects[":projectId"].members[":userId"].$patch({param:{projectId:n,userId:Q},json:{role:je}})).ok)throw Error("Failed to update member role")},onSuccess:()=>{be.invalidateQueries({queryKey:["projects",n,"members"]})}}),J=B({mutationFn:async(Q)=>{if(!(await A.api.projects[":projectId"].members[":userId"].$delete({param:{projectId:n,userId:Q}})).ok)throw Error("Failed to remove member")},onSuccess:()=>{be.invalidateQueries({queryKey:["projects",n,"members"]})}}),j=(Q)=>{if(!Q)return"??";return Q.split(" ").map((je)=>je[0]).slice(0,2).join("").toUpperCase()};if(p)return t("div",{className:"flex items-center px-4 py-2.5 border-b sticky top-0 bg-background z-10 text-sm text-muted-foreground",children:t("span",{children:kC()})});return o("div",{className:"flex items-center justify-between p-2 border-b sticky top-0 bg-background z-10",children:[o("div",{className:"flex items-center gap-2 h-full",children:[o(At,{open:y,onOpenChange:x,children:[t(_t,{asChild:!0,children:t(C,{variant:"ghost",size:"sm",children:Gf()})}),t(yt,{className:"w-auto p-0",align:"start",children:t(fm,{projectId:n,onManageFields:h?at:void 0,onSave:()=>x(!1)})})]}),t(ao,{orientation:"vertical"}),t(fl,{fields:s,sort:l,onSortChange:d,disabled:c||p}),t(ao,{orientation:"vertical"}),R?o(L,{children:[o(At,{open:fe,onOpenChange:ye,children:[t(_t,{asChild:!0,children:t(C,{variant:"ghost",size:"sm",className:"text-muted-foreground",children:t("span",{className:"truncate max-w-[150px]",children:ie?.name||"Loading..."})})}),t(yt,{className:"w-[300px] p-0",align:"start",children:o("div",{className:"h-[400px] flex flex-col",children:[t("div",{className:"p-2 border-b text-xs font-semibold text-muted-foreground uppercase tracking-wider",children:"Select Source Folder"}),t("div",{className:"flex-1 overflow-y-auto",children:t(vr,{teamId:e,projectId:n,projectName:"Assets",rootFolderId:g,onSelect:(Q)=>{v?.({filter:{...f.filter,sourceFolderId:Q.id}}),ye(!1)},selectedFolderId:f.filter.sourceFolderId,hideCollections:!0,hideShares:!0})})]})})]}),t(ao,{orientation:"vertical"}),o(At,{children:[t(_t,{asChild:!0,children:o(C,{variant:ze>0?"secondary":"ghost",size:"sm",children:[t("span",{children:"Filter"}),ze>0&&t("span",{className:"ml-1 px-1.5 py-0.5 rounded-full text-[10px] font-mono font-bold bg-primary/50 border border-primary-foreground/20",children:ze})]})}),t(yt,{className:"w-[500px] p-0 overflow-hidden",align:"start",children:t("div",{className:"max-h-[80vh] overflow-y-auto",children:t(ko,{fields:s,conditions:i,onChange:(Q)=>{a(Q),v?.({filter:{...f.filter,searchFilter:{...f.filter.searchFilter,conditions:Q}}})},excludeFields:[],hidePrefix:!0})})})]})]}):o(L,{children:[o(C,{onClick:()=>N(!0),disabled:c||p,variant:ze>0?"secondary":"ghost",size:"sm",children:[t("span",{children:YC()}),ze>0&&t("span",{className:"ml-1 px-1.5 py-0.5 rounded-full text-[10px] font-mono font-bold bg-primary/50 border border-primary-foreground/20",children:ze})]}),!c&&!p&&!me&&o(L,{children:[t(ao,{orientation:"vertical"}),o(C,{onClick:xe,variant:"ghost",size:"sm",title:"AGENTS.md",className:E(ie?.hasAgentsMd?"text-foreground":"text-muted-foreground"),children:[t("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 -960 960 960",className:E("size-4",ie?.hasAgentsMd?"text-primary":"text-muted-foreground"),fill:"currentColor",children:t("path",{d:"m176-120-56-56 301-302-181-45 198-123-17-234 179 151 216-88-87 217 151 178-234-16-124 198-45-181-301 301Zm24-520-80-80 80-80 80 80-80 80Zm520 520-80-80 80-80 80 80-80 80Z"})}),t("span",{children:j0()})]})]})]})]}),t("div",{className:"flex items-center gap-2",children:!c&&!p&&o("div",{className:"flex items-center -space-x-2 cursor-pointer hover:opacity-90","data-testid":"project-members-trigger",onClick:()=>St(!0),children:[Ge?.slice(0,3).map((Q)=>o(Ce,{className:"border-2 border-background w-8 h-8",children:[Q.image&&t(Ie,{src:Q.image,alt:Q.name,className:"object-cover"}),t(Te,{className:"text-[10px]",children:j(Q.name)})]},Q.id)),Ge&&Ge.length>3&&o("div",{className:"flex items-center justify-center w-8 h-8 rounded-full border-2 border-background bg-muted text-[10px] font-medium",children:["+",Ge.length-3]})]})}),t(cl,{projectId:n,open:k,onOpenChange:G}),t(Kl,{open:X,onOpenChange:St,title:OE(),type:"project",members:Ge||[],isOwner:Je?.role==="owner",onInvite:Ct,onUpdateRole:async(Q,je)=>{await U.mutateAsync({userId:Q,role:je})},onRemoveMember:async(Q)=>{await J.mutateAsync(Q)},currentUserId:Je?.id,availableMembersToAdd:xt,onAddMember:Ee}),t(pl,{open:b,onOpenChange:N,teamId:e,projectId:n,assetId:r,fields:s,initialConditions:i,onApply:a})]})}S();function fu({teamId:e,projectId:n,assetId:r,folders:s,files:i,selectedIds:a,isPublic:l,shareId:d}){let[c,p]=u(null),[f,v]=u(!1),[g,h]=u([]),[y,x]=u(!1),[b,N]=u(!1),[k,G]=u([]),X=V(),te=A.api.folders.$post,{mutate:fe}=B({mutationFn:async(Ee)=>{let U=await te(Ee);if(!U.ok)throw Error("Failed to create");return await U.json()}}),ye=A.api.folders[":folderId"].$put,{mutate:oe}=B({mutationFn:async(Ee)=>{let U=await ye(Ee);if(!U.ok)throw Error("Failed to rename");return await U.json()}}),ze=A.api.files[":fileId"].$put,{mutate:R}=B({mutationFn:async(Ee)=>{let U=await ze(Ee);if(!U.ok)throw Error("Failed to rename");return await U.json()}}),be=A.api.files.$delete,{mutate:me}=B({mutationFn:async(Ee)=>{if(!(await be(Ee)).ok)throw Error("Failed to delete")}}),ie=A.api.folders.$delete,{mutate:xe}=B({mutationFn:async(Ee)=>{if(!(await ie(Ee)).ok)throw Error("Failed to delete");return null}}),Ge=A.api.files.restore.$post,{mutate:Qe}=B({mutationFn:async(Ee)=>{if(!(await Ge(Ee)).ok)throw Error("Failed to restore")}}),ee=A.api.folders.restore.$post,{mutate:Ye}=B({mutationFn:async(Ee)=>{if(!(await ee(Ee)).ok)throw Error("Failed to restore");return null}}),Je=A.api.files["download-links"].$post,{mutateAsync:Se}=B({mutationFn:async(Ee)=>{let U=await Je(Ee);if(!U.ok)throw Error("Failed to get download links");return await U.json()}}),Ve=(Ee)=>{p(Ee.id)},lt=()=>{let Ee=g.filter((J)=>J.type==="file"||J.type==="version_stack").map((J)=>J.id),U=g.filter((J)=>J.type==="folder").map((J)=>J.id);if(Ee.length>0)me({json:{ids:Ee}},{onSuccess:()=>{X.invalidateQueries({queryKey:["search",e,r]})}});if(U.length>0)xe({json:{ids:U}},{onSuccess:()=>{X.invalidateQueries({queryKey:["search",e,r]}),X.invalidateQueries({queryKey:["folders"]})}});v(!1),h([])},Fe=(Ee)=>{h(Ee),v(!0)},He=(Ee)=>{let U=Ee.filter((j)=>j.type==="file"||j.type==="version_stack").map((j)=>j.id),J=Ee.filter((j)=>j.type==="folder").map((j)=>j.id);if(U.length>0)Qe({json:{ids:U}},{onSuccess:()=>{X.invalidateQueries({queryKey:["projects",n,"recently-deleted","file"]})}});if(J.length>0)Ye({json:{ids:J}},{onSuccess:()=>{X.invalidateQueries({queryKey:["projects",n,"recently-deleted","folder"]})}})},at=async(Ee)=>{if(Ee.length===0)return;x(!0),N(!0),G([]);try{if(l&&d){let U=localStorage.getItem(`share_pwd_${d}`)||"",J=[];for(let j of Ee){let Q=j.media?.original?.key;if(!Q||!j.id)continue;let je=await A.api.shares[":shareId"].files[":fileId"]["download-url"].$post({param:{shareId:d,fileId:j.id},json:{key:Q}},{headers:{"x-share-password":U}});if(je.ok){let{url:ut}=await je.json();J.push({id:j.id,name:j.name||"download",url:ut})}}G(J)}else{let U=await Se({json:{ids:Ee.map((J)=>J.id)}});G(U.files)}}catch(U){M.error("Failed to prepare download links"),x(!1),console.error(U)}finally{N(!1)}},Ct=async(Ee)=>{if(Ee.length===0)return;try{let J=(await Se({json:{ids:Ee.map((je)=>je.id)}})).files;if(J.length===0)return;let j="";if(J.length===1)j=`Name: ${J[0].name}
|
|
12
|
-
Path: ${J[0].url}`;else j=J.map((je)=>`${je.name} ${je.url}`).join(`
|
|
13
|
-
`);if(await fo(j))M.success(dy())}catch(U){M.error("Failed to copy name and download link"),console.error(U)}};return{editingItemId:c,setEditingItemId:p,handleRename:Ve,handleDelete:Fe,handleRestore:He,handleDownload:at,handleCopyNameAndDownloadLink:Ct,handleNewFolder:(Ee)=>{fe({json:{name:Ee,parentId:r}},{onSuccess:(U)=>{if(X.invalidateQueries({queryKey:["search",e]}),X.invalidateQueries({queryKey:["folders"]}),U?.id)p(U.id)}})},handleAction:(Ee,U)=>{let j=a.has(U.id)?[...s,...i].filter((Q)=>a.has(Q.id)):[U];switch(Ee){case"rename":Ve(U);break;case"delete":Fe(j);break;case"download":at(j);break;case"restore":He(j);break;case"copy-name-and-download-link":Ct(j);break}},onRenameSubmit:(Ee,U)=>{if(Ee.type==="folder")oe({param:{folderId:Ee.id},json:{name:U}},{onSuccess:()=>{X.invalidateQueries({queryKey:["search",e]}),X.invalidateQueries({queryKey:["folders"]})}});else R({param:{fileId:Ee.id},json:{name:U}},{onSuccess:()=>{X.invalidateQueries({queryKey:["search",e]}),X.invalidateQueries({queryKey:["folders"]})}})},isDeleteDialogOpen:f,setIsDeleteDialogOpen:v,itemsToDelete:g,confirmDelete:lt,isDownloadDialogOpen:y,setIsDownloadDialogOpen:x,isLoadingLinks:b,resolvedFiles:k,startDownload:()=>{let Ee=[...k];if(x(!1),Ee.length===0)return;M.info(`Starting download of ${Ee.length} files. Please allow multiple downloads if prompted by your browser.`,{duration:5000});let U=(j)=>new Promise((Q)=>setTimeout(Q,j));(async()=>{for(let Q=0;Q<Ee.length;Q+=5){let je=Ee.slice(Q,Q+5);for(let ut of je){let It=document.createElement("iframe");It.style.display="none",It.src=ut.url,document.body.appendChild(It),window.setTimeout(()=>It.remove(),60000)}if(Q+5<Ee.length)await U(600)}M.success("All downloads initiated successfully")})().catch((j)=>{console.error("Background downloads failed:",j),M.error("Some downloads could not be started")})}}}var gl=[];function Ti({teamId:e,projectId:n,assetId:r,folders:s,files:i,totalFolders:a,totalFiles:l,totalFoldersSize:d,totalFilesSize:c,selectedItem:p,selectedIds:f,onItemSelect:v,onItemDoubleClick:g,onSaveField:h,displayStyle:y,onClearSelection:x,fetchNextFoldersPage:b,hasNextFoldersPage:N,isFetchingNextFoldersPage:k,fetchNextFilesPage:G,hasNextFilesPage:X,isFetchingNextFilesPage:te,isRecentlyDeleted:fe,isRecents:ye,isLoading:oe=!1,filterConditions:ze,onFilterChange:R,sort:be,onSortChange:me,dragState:ie,isShareView:xe,isPublic:Ge,onRemoveFromShare:Qe,fieldVisibility:ee,collection:Ye,onUpdateCollection:Je,rootFolderId:Se,shareId:Ve,sharePassword:lt,allowDownload:Fe=!0}){let[He,at]=u(null),[Ct,St]=u(null),[re,dt]=u(null),[xt,Ee]=u([]),[U,J]=u(!1),[j,Q]=u(null);m(()=>{if(p)Q(p)},[p]),m(()=>{if(f.size===0)Q(null)},[f.size]);let je=P((T,ke)=>{Q(T),v(T,ke)},[v]),ut=V(),It=Re(),[Fn,Oe]=u(!1),[Pt,In]=u(null),Bn=_(0),Po=P(()=>{Oe(!1),In(null),Bn.current=0},[]);m(()=>{let T=(ke)=>{ke.preventDefault()};return window.addEventListener("dragover",T),window.addEventListener("drop",T),()=>{window.removeEventListener("dragover",T),window.removeEventListener("drop",T)}},[]);let hl=(T)=>{if(!qt||fe||ye||xe||Ge||!!Ye)return;if(T.preventDefault(),T.dataTransfer.types.includes("Files"))Bn.current++,Oe(!0)},wl=(T)=>{if(!qt||fe||ye||xe||Ge||!!Ye)return;if(T.preventDefault(),T.dataTransfer.types.includes("Files")){if(Bn.current--,Bn.current<=0)Bn.current=0,Oe(!1),In(null)}},yl=(T)=>{if(!qt||fe||ye||xe||Ge||!!Ye)return;T.preventDefault()},Sl=async(T)=>{if(!qt||fe||ye||xe||Ge||!!Ye)return;T.preventDefault(),T.stopPropagation();let ke=await Qa(T.dataTransfer);if(Po(),ke.length>0)pn(ke)},[cs,ps]=u([]),Dt=D(()=>{let T=new Set(i.map((pt)=>pt.id));return[...cs.filter((pt)=>!T.has(pt.id)),...i]},[i,cs]),Ao=D(()=>{if(f.size===0)return null;if(j&&f.has(j.id))return j;if(p&&f.has(p.id))return p;return[...s,...Dt].find((ke)=>f.has(ke.id))||null},[f,j,p,s,Dt]);m(()=>{let T=(ke)=>{if(ke.key!==" "&&ke.code!=="Space")return;if(U)return;let pt=document.activeElement;if(pt&&(pt.tagName==="INPUT"||pt.tagName==="TEXTAREA"||pt instanceof HTMLElement&&pt.isContentEditable))return;if(document.querySelector('[role="dialog"], [role="alertdialog"]'))return;if(f.size>0&&Ao)ke.preventDefault(),J(!0)};return window.addEventListener("keydown",T),()=>{window.removeEventListener("keydown",T)}},[U,f.size,Ao]);let{data:Rl}=Z({queryKey:["shares",n,"list"],queryFn:async()=>{let T=await A.api.projects[":projectId"].shares.$get({param:{projectId:n},query:{first:"100"}});if(!T.ok)throw Error("Failed to fetch share links");return await T.json()},enabled:!!n&&!Ge}),Fl=A.api.projects[":projectId"].reparent.$post,{mutate:_l}=B({mutationFn:async(T)=>{if(!(await Fl(T)).ok)throw Error("Failed to move assets");return null}}),Ml=A.api.projects[":projectId"].copy.$post,{mutate:kl}=B({mutationFn:async(T)=>{if(!(await Ml(T)).ok)throw Error("Failed to copy assets");return null}}),Al=async(T,ke)=>{let pt=xt.map((ft)=>ft.id);if(re==="move")_l({param:{projectId:n},json:{newParentId:T,assetIds:pt}},{onSuccess:()=>{M.success(`Successfully moved ${pt.length} item(s)`,{action:{label:"Go to folder",onClick:()=>{It({to:"/projects/$projectId/folders/$folderId",params:{projectId:n,folderId:T}})}}}),ut.invalidateQueries({queryKey:["search",e]}),ut.invalidateQueries({queryKey:["folders"]}),dt(null),Ee([]),x()},onError:(ft)=>{M.error(`Error: ${ft.message}`)}});else kl({param:{projectId:n},json:{newParentId:T,assetIds:pt,withComments:ke}},{onSuccess:()=>{M.success(`Successfully copied ${pt.length} item(s)`,{action:{label:"Go to folder",onClick:()=>{It({to:"/projects/$projectId/folders/$folderId",params:{projectId:n,folderId:T}})}}}),ut.invalidateQueries({queryKey:["search",e]}),ut.invalidateQueries({queryKey:["folders"]}),dt(null),Ee([]),x()},onError:(ft)=>{M.error(`Error: ${ft.message}`)}})},{mutate:Ol}=B({mutationFn:async(T)=>{let ke=T.length===1?T[0].name:new Date().toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric"}),pt=await A.api.projects[":projectId"].shares.$post({param:{projectId:n},json:{name:ke}});if(!pt.ok)throw Error("Failed to create share link");let ft=await pt.json();if(!(await A.api.shares[":shareId"].assets.$post({param:{shareId:ft.id},json:{assetIds:T.map((wt)=>wt.id)}})).ok)throw Error("Failed to add assets to share link");return ft},onSuccess:(T)=>{ut.invalidateQueries({queryKey:["shares",n]}),M.success("Share link created",{action:{label:"View",onClick:()=>It({to:"/projects/$projectId/shares/$shareId",params:{projectId:n,shareId:T.id}})}})}}),{mutate:$l}=B({mutationFn:async({shareId:T,items:ke})=>{if(!(await A.api.shares[":shareId"].assets.$post({param:{shareId:T},json:{assetIds:ke.map((ft)=>ft.id)}})).ok)throw Error("Failed to add assets");return{shareId:T}},onSuccess:({shareId:T})=>{M.success("Added to share link",{action:{label:"View",onClick:()=>It({to:"/projects/$projectId/shares/$shareId",params:{projectId:n,shareId:T}})}})}}),zl=(T)=>{Ol(T)},Ll=(T,ke)=>{$l({shareId:T,items:ke})},{editingItemId:Ul,setEditingItemId:fs,handleNewFolder:jl,handleDelete:ql,handleRename:Bl,handleRestore:Hl,handleDownload:ms,handleCopyNameAndDownloadLink:Gl,handleAction:gs,onRenameSubmit:Wl,isDeleteDialogOpen:Xl,setIsDeleteDialogOpen:Ql,confirmDelete:Yl,isDownloadDialogOpen:Jl,setIsDownloadDialogOpen:Do,isLoadingLinks:uo,resolvedFiles:hs,startDownload:Zl}=fu({teamId:e,projectId:n,assetId:r,folders:s,files:Dt,selectedIds:f,isPublic:Ge,shareId:Ve}),[ld,Oo]=u(!1),{mutate:dd,isPending:$o}=B({mutationFn:async()=>{let T=await A.api.projects[":projectId"]["empty-trash"].$post({param:{projectId:n}});if(!T.ok)throw Error("Failed to empty trash");return await T.json()},onSuccess:()=>{M.success("Trash emptied successfully"),ut.invalidateQueries({queryKey:["projects",n,"recently-deleted"]}),x(),Oo(!1)},onError:(T)=>{M.error(`Error emptying trash: ${T.message}`)}}),ud=A.api.teams[":teamId"].upload.tasks.$post,{mutate:vs}=B({mutationFn:async(T)=>{let ke=await ud(T);if(!ke.ok)throw Error("Failed to create upload task");return await ke.json()},onMutate:()=>({files:[...gl]}),onSuccess:async(T,ke,pt)=>{let ft=pt?.files||[],Ft=ke.json.parentId===r,wt=ft.map((Rt)=>{let vt=T.createdAssets?.find((Bt)=>Bt.tempId===Rt.id),Jt=T.presignedUrls?.find((Bt)=>Bt.id===Rt.id);return{fileId:vt?.assetId||Jt?.fileId||Rt.id,name:Rt.file.name,size:Rt.file.size}}).filter((Rt)=>!!Rt.fileId),Yt=ft.filter((Rt)=>!Rt.file.name.startsWith(".")),tn=Yt.length===1?Yt[0].file.name:`${Yt.length} Items`;if(T.taskId)fd(T.taskId,tn,wt);if(Ft){let Rt=ft.filter((vt)=>(vt.file.webkitRelativePath||vt.file.name).split("/").length===1).map((vt)=>{let Jt=T.createdAssets?.find((Xn)=>Xn.tempId===vt.id),Bt=T.presignedUrls?.find((Xn)=>Xn.id===vt.id),En=Jt?.assetId||Bt?.fileId||vt.id,Kn=!!Bt&&!!Bt.url;return{id:En,name:vt.file.name,sizeByte:vt.file.size,fileCount:0,type:"file",status:Kn?"uploading":"error",proxyType:vt.file.name.toLowerCase().endsWith(".wma")&&vt.file.type?.startsWith("video/")?"audio":vt.file.type?.startsWith("image/")?"image":vt.file.type?.startsWith("video/")?"video":vt.file.type?.startsWith("audio/")?"audio":vt.file.name.endsWith(".pdf")||vt.file.name.endsWith(".txt")||vt.file.name.endsWith(".csv")||vt.file.name.endsWith(".md")||vt.file.name.endsWith(".markdown")?"pdf":null,createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()}});ps((vt)=>[...Rt,...vt])}ut.invalidateQueries({queryKey:["search",e,r]}),ut.invalidateQueries({queryKey:["teams",e,"upload","tasks"]}),await cu({files:ft,taskId:T.taskId,teamId:e,storageBackend:T.storageBackend||"local",createdAssets:T.createdAssets,presignedUrls:T.presignedUrls,onFileFinished:async(Rt)=>{await ut.invalidateQueries({queryKey:["search",e,r]}),ps((vt)=>vt.filter((Jt)=>Jt.id!==Rt))}}),ut.invalidateQueries({queryKey:["search",e,r]}),ut.invalidateQueries({queryKey:["teams",e,"upload","tasks"]})}}),fd=bn((T)=>T.startTask),{fields:co}=Fr(),ws=D(()=>{if(!xe)return co.filter((T)=>T.visible);return co.filter((T)=>ee?.[T.id])},[co,xe,ee]),[ys,xs]=u(!0),[Rs,Fs]=u(!0),Is=_(null),_s=_(null),Ms=_(null),[Ts,Ns]=u(null),zo=_(!1),{canEdit:qt,canAdmin:md}=Ot(n),ks=_(null),Ps=s.reduce((T,ke)=>T+(ke.sizeByte||0),0),Ds=Dt.reduce((T,ke)=>T+(ke.sizeByte||0),0),Os=(T,ke)=>{if(ze?.some((ft)=>ft.field==="name"&&ft.operator==="contains")&&T===10001)return ke?gy():Ay();if(ke)return T===1?lp({count:T}):ap({count:T});else return T===1?up({count:T}):cp({count:T})},$s=(T)=>{let ke=T.target;if(ke.closest('[role="menuitem"]')||ke.closest("[data-radix-menu-content]"))return;if(ke===T.currentTarget||ke.closest(".empty-area")||!ke.closest(".group")&&!ke.closest("button")&&!ke.closest("a")&&!ke.closest("input"))x(),fs(null)},Ls=(T,ke)=>{if(ke===void 0)if(zo.current)zo.current=!1;else at(null);else{zo.current=!0,at(ke??null);return}},js=(T,ke)=>{let pt=T.type==="symlink"?T.targetType||"file":T.type,ft={teamId:e,item:T,isSelected:p?.id===T.id,isChecked:f.has(T.id),isEditing:Ul===T.id,onSelect:je,onDoubleClick:g,onContextMenu:Ls,onDragStart:()=>{},onDrop:()=>{},onRename:(Ft)=>Wl(T,Ft),onFinishEditing:()=>fs(null),onSaveField:(Ft,wt)=>{h(T.id,Ft,wt)},dragState:ie,onAction:(Ft,wt)=>{if(Ft==="manage-versions"){St(wt.id||null);return}if(xe){if(Ft==="remove-from-share"){let tn=f.has(wt.id)?[...s,...i].filter((Rt)=>f.has(Rt.id)):[wt];Qe?.(tn)}else if(Ft==="download")gs("download",wt);return}gs(Ft,wt)},isRecentlyDeleted:fe,isRecents:ye,selectedCount:f.size,isShareView:xe,allowDownload:Fe,fields:ws,canEdit:qt,isExternalDragging:Fn,externalOverFolderId:Pt,setExternalOverFolderId:In,resetExternalDragState:Po,onExternalDrop:(Ft,wt)=>{pn(Ft,wt)}};if(y==="card"){if(pt==="folder")return t(du,{...ft},T.id);if(pt==="file"||pt==="version_stack")return t(uu,{...ft},T.id)}return t(Da,{...ft,columnSizing:ke},T.id)},Lo=f.size,Hn=Array.from(f).filter((T)=>s.find((ke)=>ke.id===T)).length,Wn=Array.from(f).filter((T)=>Dt.find((ke)=>ke.id===T)).length,jo=Array.from(f).reduce((T,ke)=>{let pt=s.find((ft)=>ft.id===ke)||Dt.find((ft)=>ft.id===ke);return T+(pt?.sizeByte||0)},0),gd=()=>{Is.current?.click()},vd=()=>{_s.current?.click()},pn=P((T,ke)=>{if(!T||T.length===0)return;let pt=[],ft=[],Ft=new Map;for(let wt of T){let Yt=(wt.webkitRelativePath||wt.name).split("/");if(Yt.some((En)=>En.startsWith(".")))continue;let tn=Yt.pop(),Rt=ft,vt="";for(let En of Yt)if(vt=`${vt}/${En}`,!Ft.has(vt)){let Kn=[],Xn={name:En,type:"folder",id:Uo(),children:Kn,size:0};Rt.push(Xn),Ft.set(vt,Kn),Rt=Kn}else Rt=Ft.get(vt);let Jt={file:wt,id:Uo()};pt.push(Jt);let Bt=wt.type;if(tn.toLowerCase().endsWith(".wma")&&Bt?.startsWith("video/"))Bt=Bt.replace(/^video\//,"audio/");Rt.push({name:tn,size:wt.size,type:"file",id:Jt.id,children:[],mediaType:Bt})}gl=pt,vs({param:{teamId:e},json:{parentId:ke||r,files:ft}})},[r,vs,e]),Vs=(T)=>{pn(T.target.files)},wd=(T)=>{Ns(T.id),Ms.current?.click()},yd=(T)=>{if(T.target.files&&Ts)pn(T.target.files,Ts),Ns(null),T.target.value=""},qs=P((T)=>{if(!qt||xe||!!Ye)return;if(!T.clipboardData)return;let ke=T.clipboardData.items,pt=[];for(let ft=0;ft<ke.length;ft++){let Ft=ke[ft];if(Ft.kind==="file"){let wt=Ft.getAsFile();if(wt)if(wt.name==="image.png"&&wt.type.startsWith("image/")){let Yt=new Date().toISOString().replace(/[:.]/g,"").replace("T","_").substring(0,15),tn=wt.type.split("/")[1]||"png",Rt=new File([wt],`pasted_image_${Yt}.${tn}`,{type:wt.type});pt.push(Rt)}else pt.push(wt)}}if(pt.length>0)pn(pt)},[pn,xe,Ye,qt]);return m(()=>{let T=(ke)=>{if(!qt||xe||!!Ye)return;if(document.activeElement&&(document.activeElement.tagName==="INPUT"||document.activeElement.tagName==="TEXTAREA"||document.activeElement.isContentEditable))return;qs(ke)};return window.addEventListener("paste",T),()=>{window.removeEventListener("paste",T)}},[qs,xe,Ye,qt]),o(L,{children:[qt&&o(L,{children:[t("input",{type:"file",ref:Is,multiple:!0,style:{display:"none"},onChange:Vs}),t("input",{type:"file",ref:_s,multiple:!0,webkitdirectory:"true",style:{display:"none"},onChange:Vs}),t("input",{type:"file",ref:Ms,style:{display:"none"},onChange:yd})]}),(()=>o(ka,{modal:!1,children:[t(Pa,{asChild:!0,disabled:xe||Ge||!!Ye||ye,children:o("div",{className:"flex-1 bg-background relative flex flex-col min-h-0 overflow-hidden",onContextMenu:(T)=>{if(ye){T.preventDefault(),T.stopPropagation();return}Ls(T)},onDragEnter:hl,onDragLeave:wl,onDragOver:yl,onDrop:Sl,children:[!xe&&!Ge&&R&&me&&t(ml,{teamId:e,projectId:n,assetId:r,fields:co||[],filterConditions:ze||[],onFilterChange:R,sort:be,onSortChange:me,isRecentlyDeleted:fe,isRecents:ye,collection:Ye,onUpdateCollection:Je,rootFolderId:Se}),fe&&o("div",{className:"flex items-center justify-between px-4 py-2.5 bg-muted/20 border-b border-border text-sm shrink-0 animate-in fade-in slide-in-from-top-2 duration-300",children:[o("div",{className:"flex items-center gap-2 text-muted-foreground",children:[t(Kr,{className:"h-4 w-4 text-amber-500 shrink-0"}),t("span",{children:Mp()})]}),md&&t(C,{variant:"destructive",size:"sm",disabled:$o||s.length===0&&Dt.length===0,onClick:()=>Oo(!0),className:"h-8 px-3 text-xs font-medium bg-destructive/10 text-destructive border border-destructive/20 hover:bg-destructive hover:text-destructive-foreground transition-all duration-200",children:"Delete Now"})]}),o("div",{ref:ks,className:"flex-1 overflow-y-auto min-h-0 relative flex flex-col",style:{overflowAnchor:"none"},children:[oe&&s.length===0&&Dt.length===0?t(BA,{displayStyle:y}):y==="list"?t(ul,{folders:s,files:Dt,totalFolders:a,totalFiles:l,totalFoldersSize:d,totalFilesSize:c,selectedItem:p,selectedIds:f,displayedFields:ws,onItemSelect:je,onItemDoubleClick:g,renderItem:js,foldersExpanded:ys,setFoldersExpanded:xs,filesExpanded:Rs,setFilesExpanded:Fs,hasNextFoldersPage:N,hasNextFilesPage:X,isFetchingNextFoldersPage:k,isFetchingNextFilesPage:te,fetchNextFoldersPage:b,fetchNextFilesPage:G,formatCount:Os,formatSize:Jr,foldersSize:Ps,filesSize:Ds,handleEmptyAreaClick:$s,dragState:ie,sort:be,isExternalDragging:Fn,externalOverFolderId:Pt,setExternalOverFolderId:In,resetExternalDragState:Po,onExternalDrop:(T,ke)=>pn(T,ke)}):t(Ga,{folders:s,files:Dt,totalFolders:a,totalFiles:l,totalFoldersSize:d,totalFilesSize:c,renderItem:js,foldersExpanded:ys,setFoldersExpanded:xs,filesExpanded:Rs,setFilesExpanded:Fs,hasNextFoldersPage:N,hasNextFilesPage:X,isFetchingNextFoldersPage:k,isFetchingNextFilesPage:te,fetchNextFoldersPage:b,fetchNextFilesPage:G,formatCount:Os,formatSize:Jr,foldersSize:Ps,filesSize:Ds,handleEmptyAreaClick:$s,dragState:ie,sort:be,scrollContainerRef:ks}),(k||te)&&t("div",{className:"flex justify-center items-center p-4",children:t("p",{children:$w()})}),!oe&&s.length===0&&Dt.length===0&&!k&&!te&&t("div",{className:"empty-area flex h-full items-center justify-center text-sm text-muted-foreground",children:ye?o("div",{className:"flex flex-col items-center gap-2 p-8 text-center animate-in fade-in duration-300",children:[t(Us,{className:"h-10 w-10 text-muted-foreground/50 mb-1"}),t("p",{className:"font-medium text-foreground",children:pp()}),t("p",{className:"text-xs text-muted-foreground",children:mp()})]}):t("span",{children:$p()})})]}),Lo>0&&o("div",{className:"border-t border-border bg-card px-4 py-3 flex items-center justify-between shrink-0",children:[o("div",{className:"text-sm text-muted-foreground",children:[Hn>0&&Wn>0&&o("span",{children:[Lo," Item",Lo!==1?"s":""," selected •"," ",Jr(jo)]}),Hn>0&&Wn===0&&o("span",{children:[Hn," folder",Hn!==1?"s":""," selected •"," ",Jr(jo)]}),Hn===0&&Wn>0&&o("span",{children:[Wn," file",Wn!==1?"s":""," selected •"," ",Jr(jo)]})]}),Fe&&o(C,{variant:"ghost",size:"sm",onClick:()=>ms([...s,...Dt].filter((T)=>f.has(T.id))),className:"gap-2",children:[t(ht,{className:"h-4 w-4"}),"Download"]})]}),Fn&&!Pt&&t("div",{className:"absolute bottom-6 left-1/2 -translate-x-1/2 z-50 pointer-events-none animate-in fade-in slide-in-from-bottom-4 duration-300",children:t("div",{className:"flex items-center gap-3 px-6 py-3 rounded-full bg-primary/80 text-primary-foreground shadow-lg shadow-primary/20 border border-primary/20 backdrop-blur-md",children:t("span",{className:"font-medium text-sm",children:"Drop files here to upload"})})})]})}),t(Aa,{item:He,selectedIds:f,folders:s,files:Dt,onRename:Bl,onDelete:ql,onDownload:ms,onCopyNameAndDownloadLink:Gl,onNewFolder:jl,onUploadFile:gd,onUploadFolder:vd,onNewVersion:wd,onManageVersions:(T)=>St(T.id||null),onMoveTo:(T)=>{Ee(T),dt("move")},onCopyTo:(T)=>{Ee(T),dt("copy")},onRestore:Hl,isRecentlyDeleted:fe,isRecents:ye,shareLinks:Rl?.data??[],onCreateShareLink:zl,onAddToShareLink:Ll,canEdit:qt})]}))(),re&&t(Ta,{isOpen:!!re,onClose:()=>dt(null),onConfirm:Al,mode:re,teamId:e,currentProjectId:n}),t(Xe,{open:Xl,onOpenChange:Ql,children:o(et,{children:[o(tt,{children:[t(nt,{children:"Delete Asset?"}),t(ot,{children:"Deleted items can be recovered for 30 days before being permanently deleted."})]}),o(rt,{children:[t(it,{children:"Cancel"}),t(st,{onClick:()=>{Yl()},className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:"Delete"})]})]})}),t(Xe,{open:ld,onOpenChange:Oo,children:o(et,{children:[o(tt,{children:[t(nt,{children:"Empty Trash?"}),t(ot,{children:"All items in the recently deleted folder will be permanently removed both from the database and from storage. This action cannot be undone."})]}),o(rt,{children:[t(it,{children:"Cancel"}),t(st,{onClick:(T)=>{T.preventDefault(),dd()},className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",disabled:$o,children:$o?"Deleting...":"Delete Now"})]})]})}),t(ue,{open:Jl,onOpenChange:Do,children:o(ae,{className:"sm:max-w-md",children:[o(pe,{children:[t(le,{children:uo?"Preparing Download":"Confirm Download"}),t(Mt,{children:uo?"Resolving all files and folders. Please wait...":"Selected files and folders will be prepared for download."})]}),uo?o("div",{className:"space-y-4 py-6 flex flex-col items-center justify-center",children:[t(O,{className:"h-8 w-8 animate-spin text-primary"}),t("span",{className:"text-sm font-medium text-muted-foreground mt-2",children:"Preparing download links..."})]}):o("div",{className:"space-y-4 py-2",children:[o("div",{className:"text-sm text-muted-foreground",children:["This download will include"," ",t("span",{className:"font-semibold text-foreground",children:hs.length})," ","file(s)."]}),o("div",{className:"flex items-start gap-3 p-3 text-sm rounded-lg bg-amber-50 dark:bg-amber-950/30 text-amber-800 dark:text-amber-300 border border-amber-200 dark:border-amber-900/30",children:[t(Kr,{className:"h-5 w-5 shrink-0 mt-0.5"}),o("div",{children:[t("p",{className:"font-semibold",children:"No Folder Structure"}),t("p",{className:"mt-0.5 text-xs text-amber-700/90 dark:text-amber-400/90",children:"Folder hierarchy will be flattened. All nested files will be downloaded directly into your default download folder."})]})]})]}),t(qe,{children:!uo?o(L,{children:[t(C,{variant:"outline",onClick:()=>Do(!1),children:"Cancel"}),o(C,{onClick:Zl,className:"gap-2",disabled:hs.length===0,children:[t(ht,{className:"h-4 w-4"}),"Start Download"]})]}):t(C,{variant:"outline",onClick:()=>Do(!1),children:"Cancel"})})]})}),Ct&&t(Jd,{open:!!Ct,onOpenChange:(T)=>{if(!T)St(null)},stackId:Ct,canEdit:qt,onStackDissolved:()=>{St(null)}}),t(Na,{item:Ao,isOpen:U,onClose:()=>J(!1),allowDownload:Fe,shareId:Ve,sharePassword:lt,isPublic:Ge})]})}
|
|
14
|
-
export{au,lu,cu,uu,du,fu,Ti};
|