@shumai-one/shumai 0.5.2 → 0.6.0

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.
Files changed (146) hide show
  1. package/bin/{chunk-qxscgcn9.js → chunk-01ym2agz.js} +1 -1
  2. package/bin/{chunk-ae6zgjhd.js → chunk-047n9gfs.js} +2 -2
  3. package/bin/chunk-0a4ahz7r.js +2 -0
  4. package/bin/{chunk-v5hz09a1.js → chunk-0awcpx0a.js} +2 -2
  5. package/bin/{chunk-19q13a80.js → chunk-0fbgfgxv.js} +5 -5
  6. package/bin/{chunk-jt6v15wx.js → chunk-0nnqha4f.js} +1 -1
  7. package/bin/chunk-0tvggyy4.js +1 -0
  8. package/bin/{chunk-zckxc8m6.js → chunk-113baw0m.js} +2 -2
  9. package/bin/{chunk-mneeg71d.js → chunk-1dbjyarc.js} +2 -2
  10. package/bin/{chunk-951r2rx1.js → chunk-1qre79kf.js} +1 -1
  11. package/bin/chunk-27v3yepb.js +1 -0
  12. package/bin/{chunk-5vqbzsjv.js → chunk-2rq3w8sg.js} +1 -1
  13. package/bin/{chunk-v034sfw8.js → chunk-3020am4q.js} +2 -2
  14. package/bin/{chunk-zdzkjp4q.js → chunk-3fjgf7eb.js} +2 -2
  15. package/bin/chunk-3pwwg1xm.js +1 -0
  16. package/bin/{chunk-19jpn3r6.js → chunk-3sfb63fp.js} +1 -1
  17. package/bin/{chunk-wwkhskce.js → chunk-3tg10kwz.js} +2 -2
  18. package/bin/{chunk-0y4zq3y4.js → chunk-4g4pxmef.js} +1 -1
  19. package/bin/{chunk-2pw7xcrn.js → chunk-4jj92zwa.js} +1 -1
  20. package/bin/{chunk-bpxw19ez.js → chunk-4yhvexzk.js} +1 -1
  21. package/bin/chunk-58cbk6e8.js +1 -0
  22. package/bin/{chunk-eqr0znmc.js → chunk-59t9s2jh.js} +1 -1
  23. package/bin/{chunk-n76w2wcr.js → chunk-5e7r7a9d.js} +1 -1
  24. package/bin/{chunk-8tzfcqtb.js → chunk-5m51b7af.js} +1 -1
  25. package/bin/{chunk-m6v8vt2b.js → chunk-65t6rm5d.js} +2 -2
  26. package/bin/chunk-6bed0rz4.js +1 -0
  27. package/bin/{chunk-1nvj833s.js → chunk-6smn0q1n.js} +5 -5
  28. package/bin/{chunk-r249n1xe.js → chunk-6zerk0em.js} +2 -2
  29. package/bin/{chunk-gvas3xkp.js → chunk-7bbsv8g0.js} +1 -1
  30. package/bin/chunk-83bdgs2c.js +1 -0
  31. package/bin/{chunk-93p27bbm.js → chunk-86qtjd30.js} +5 -5
  32. package/bin/{chunk-b5r0be06.js → chunk-8rekh4h9.js} +1 -1
  33. package/bin/{chunk-d2dgazjj.js → chunk-8s9fehda.js} +1 -1
  34. package/bin/{chunk-r776bhsg.js → chunk-8sf2hf31.js} +1 -1
  35. package/bin/{chunk-mn108p93.js → chunk-9d3w678j.js} +1 -1
  36. package/bin/{chunk-xr2v0d6y.js → chunk-9gftd4f7.js} +4 -4
  37. package/bin/{chunk-n9vp9nbg.js → chunk-9rcg8zgs.js} +32 -32
  38. package/bin/{chunk-6jkjx0n2.js → chunk-a23q1kc4.js} +3 -3
  39. package/bin/{chunk-81dawvn4.js → chunk-a6cdt85k.js} +2 -2
  40. package/bin/chunk-a76h3ehe.js +1 -0
  41. package/bin/{chunk-rmvhyqyb.js → chunk-b1bkd2p4.js} +8 -8
  42. package/bin/{chunk-wnqxyqrg.js → chunk-bf5m8f6t.js} +2 -2
  43. package/bin/chunk-cf57fk11.js +2 -0
  44. package/bin/{chunk-0v9srsdz.js → chunk-cv5xx81e.js} +1 -1
  45. package/bin/{chunk-3q5qkfkc.js → chunk-czybv3vy.js} +1 -1
  46. package/bin/{chunk-ggfx2b0f.js → chunk-d4sbcvpa.js} +1 -1
  47. package/bin/{chunk-9ggwc289.js → chunk-d6xezgrg.js} +1 -1
  48. package/bin/{chunk-bbcmhcvc.js → chunk-da86fpjt.js} +2 -2
  49. package/bin/chunk-dzjmwat0.js +14 -0
  50. package/bin/{chunk-rza95y4z.js → chunk-eex8sjfs.js} +2 -2
  51. package/bin/{chunk-9zgqjdx1.js → chunk-emgyjhmx.js} +2 -2
  52. package/bin/{chunk-k3prp6c6.js → chunk-exmwerag.js} +5 -5
  53. package/bin/{chunk-kzr6ecke.js → chunk-f38xyahm.js} +1 -1
  54. package/bin/{chunk-ffj9cq9y.js → chunk-fb1bes2h.js} +1 -1
  55. package/bin/chunk-fbvak7q2.js +1 -0
  56. package/bin/{chunk-15w79661.js → chunk-fg9sr6r9.js} +1 -1
  57. package/bin/{chunk-dppfek34.js → chunk-fyb6t7ct.js} +2 -2
  58. package/bin/chunk-g2ptqqm3.js +3 -0
  59. package/bin/{chunk-t1yamxgk.js → chunk-ggwqxn95.js} +1 -1
  60. package/bin/chunk-ghk54h71.js +13 -0
  61. package/bin/{chunk-kvwec0p3.js → chunk-h1fbev9c.js} +2 -2
  62. package/bin/{chunk-f5z3096k.js → chunk-h9akn41s.js} +2 -2
  63. package/bin/{chunk-asy868kq.js → chunk-hdansxny.js} +1 -1
  64. package/bin/{chunk-grjek810.js → chunk-hjwpd09v.js} +2 -2
  65. package/bin/{chunk-zf5cyxnt.js → chunk-hjzbw975.js} +1 -1
  66. package/bin/{chunk-jgfye6nf.js → chunk-j4p3eqtd.js} +1 -1
  67. package/bin/chunk-jtkxeat4.js +2 -0
  68. package/bin/{chunk-8zgq5sav.js → chunk-jw4g9628.js} +3 -3
  69. package/bin/{chunk-0ge2mm8j.js → chunk-jxebakyq.js} +1 -1
  70. package/bin/{chunk-0asthrjf.js → chunk-kfewyax2.js} +2 -2
  71. package/bin/chunk-kk3m4za5.js +1 -0
  72. package/bin/{chunk-vzdgsfkf.js → chunk-m7tnj47b.js} +1 -1
  73. package/bin/{chunk-w73v578p.js → chunk-maw5ah8t.js} +2 -2
  74. package/bin/{chunk-8ny7wvzb.js → chunk-n0wwtjwv.js} +1 -1
  75. package/bin/{chunk-e439kt05.js → chunk-nahdd2t9.js} +1 -1
  76. package/bin/{chunk-04avc4fn.js → chunk-nv7tztvh.js} +32 -32
  77. package/bin/{chunk-mn208vrv.js → chunk-nyjwdxyj.js} +2 -2
  78. package/bin/{chunk-qmrg2jhs.js → chunk-p0yfxt5e.js} +5 -5
  79. package/bin/{chunk-p0j4wpa5.js → chunk-q27qn367.js} +2 -2
  80. package/bin/{chunk-j53sjkxt.js → chunk-q36sdt2w.js} +1 -1
  81. package/bin/{chunk-vm2pz2hm.js → chunk-q7t5zs7n.js} +2 -2
  82. package/bin/{chunk-cpj562n6.js → chunk-qbj5pe8t.js} +1 -1
  83. package/bin/chunk-qj0bxb1m.js +2 -0
  84. package/bin/{chunk-9bakwac0.js → chunk-qk5hsn6e.js} +4 -4
  85. package/bin/{chunk-6rn094yj.js → chunk-qnyqtaf0.js} +1 -1
  86. package/bin/{chunk-ypkkfwfb.js → chunk-qqkr6h07.js} +2 -2
  87. package/bin/chunk-qyqc5j3a.css +1 -0
  88. package/bin/chunk-qzaf6bre.js +2 -0
  89. package/bin/{chunk-cx32wsa1.js → chunk-r1e59gf0.js} +1 -1
  90. package/bin/chunk-ra5csbkr.js +2 -0
  91. package/bin/{chunk-rtaya5wc.js → chunk-rh8dy99a.js} +2 -2
  92. package/bin/{chunk-ryepy5er.js → chunk-rx9g95wk.js} +4 -4
  93. package/bin/{chunk-2w6gve12.js → chunk-rxyy37wa.js} +3 -3
  94. package/bin/{chunk-7qvvf0yd.js → chunk-scez7ppq.js} +2 -2
  95. package/bin/{chunk-twpc640e.js → chunk-t2a1vq34.js} +1 -1
  96. package/bin/chunk-t879v3b7.js +1 -0
  97. package/bin/{chunk-a8bymrv1.js → chunk-tjavzarz.js} +2 -2
  98. package/bin/{chunk-ce0bhc72.js → chunk-treyx8em.js} +1 -1
  99. package/bin/{chunk-dche0gy0.js → chunk-v3z4z04s.js} +1 -1
  100. package/bin/{chunk-5bk16qdp.js → chunk-v3z63tpw.js} +2 -2
  101. package/bin/{chunk-5rzxekn4.js → chunk-v9bes1fv.js} +1 -1
  102. package/bin/{chunk-d5hbzp7t.js → chunk-vjyget8s.js} +1 -1
  103. package/bin/{chunk-4zksqvwj.js → chunk-vmm9m3nv.js} +2 -2
  104. package/bin/chunk-vvr8tnse.js +211 -0
  105. package/bin/{chunk-tvkekn4z.js → chunk-w3stry4v.js} +1 -1
  106. package/bin/{chunk-3pm6q6kg.js → chunk-w89czwjj.js} +1 -1
  107. package/bin/{chunk-rw5h0n0s.js → chunk-wk0hk00z.js} +1 -1
  108. package/bin/{chunk-15vsw36h.js → chunk-ww9qq8yq.js} +5 -5
  109. package/bin/chunk-x4q082e6.js +2 -0
  110. package/bin/{chunk-98mg3dpd.js → chunk-x6rf77jm.js} +4 -4
  111. package/bin/chunk-x7dyj53k.js +2 -0
  112. package/bin/{chunk-y2dhf3p0.js → chunk-xbw7ffrz.js} +2 -2
  113. package/bin/{chunk-5nqvqvqp.js → chunk-xcrd0y8v.js} +3 -3
  114. package/bin/{chunk-0j22699g.js → chunk-z0z0jn5h.js} +2 -2
  115. package/bin/{chunk-w9z27p0m.js → chunk-zasjhrwc.js} +1 -1
  116. package/bin/chunk-zefds5gg.js +1 -0
  117. package/bin/{chunk-8ayz61rc.js → chunk-zzzgk1d5.js} +3 -3
  118. package/bin/shumai-app.html +1 -1
  119. package/bin/shumai-app.js +390 -373
  120. package/package.json +8 -11
  121. package/prisma/migrations/20261014054332_add_embedding_768/migration.sql +8 -0
  122. package/prisma/schema.prisma +10 -8
  123. package/bin/chunk-2gf95tj0.js +0 -1
  124. package/bin/chunk-2tk5w3jc.js +0 -1
  125. package/bin/chunk-301e7g3z.js +0 -2
  126. package/bin/chunk-3kmjbc3m.js +0 -2
  127. package/bin/chunk-3td60k1m.js +0 -2
  128. package/bin/chunk-42hrvk6k.js +0 -211
  129. package/bin/chunk-8abhmarc.js +0 -2
  130. package/bin/chunk-965102pf.js +0 -3
  131. package/bin/chunk-acn3r2m2.js +0 -1
  132. package/bin/chunk-ce75dw3k.css +0 -1
  133. package/bin/chunk-d9qpgkek.js +0 -2
  134. package/bin/chunk-dv6p6n5e.js +0 -1
  135. package/bin/chunk-gnt9gewm.js +0 -2
  136. package/bin/chunk-k97axrc4.js +0 -13
  137. package/bin/chunk-qb178ntp.js +0 -2
  138. package/bin/chunk-s4r6e6ms.js +0 -1
  139. package/bin/chunk-syjjke3f.js +0 -1
  140. package/bin/chunk-tgfxe0sb.js +0 -1
  141. package/bin/chunk-tjretpx8.js +0 -1
  142. package/bin/chunk-w4yjgez6.js +0 -14
  143. package/bin/chunk-wjcebkpb.js +0 -1
  144. package/bin/chunk-ws71fg50.js +0 -2
  145. package/bin/chunk-yfp3q4da.js +0 -1
  146. package/bin/chunk-z8e4wc59.js +0 -1
@@ -0,0 +1,14 @@
1
+ import{q,F,P,m,$e,D,tn,_,u,S,L,t,o,G,Z,B,mt,ke,rn,A,I,zn,Sr,rr,O,Tn,Qr,Kr,to,Tt,Re,ve,Et,Ma,er,ht,qn,ar,zs,lr,js,on,fe,Ut,we,Pe,E,gt,Y,gi,Lt,se,xl,Xu,ed,td,rd,nd,od,sd,id,ad,C,sn,an,ln,cn,Ce,Ie,Te,ge,Ae,_e,K,Vt,As,VA,WA,cd,Lm,q0,u_,Rf,pd,Bc,Uc,zc,Ne,Da,W_,sy,fy,Of,fh,Ay,_y,Sy,gh,Py,Dy,Fy,Ly,Zy,By,Uy,zy,jy,qy,_h,ct,Qy,Uf,Sl,hd,gr,kb,Db,Ub,zb,Hf,Gb,Xo,Xb,dv,fv,Cl,Gf,Vf,bv,vv,wv,Qf,xv,Sv,Kf,Ev,Cv,kv,Nv,Dv,uw,Gw,tp,rp,Jw,ag,lp,cp,lg,cg,up,dp,ug,dg,Tl,aS,Td,_S,mp,hp,CS,HS,$S,GS,VS,QS,KS,Ml,WS,YS,JS,kl,XS,eE,kd,Rl,tE,rE,nE,gp,Rd,Ap,EE,Rg,ME,OE,YE,MC,kp,kC,Rp,Zo,UC,Pp,Gn,KC,Dp,YC,JC,XC,eI,tI,nA,sI,uI,dI,gI,AI,bI,SI,EI,CI,II,Wc,Ol,Bp,Up,aT,zp,Fl,Yc,Jc,jp,qp,Xc,cT,OT,Gp,n1,o1,d1,m1,I1,T1,An,Ll,TA,Wp,Yp,eu,tu,Xe,et,tt,rt,nt,ot,st,it,de,le,me,qe,ce,Mt,z,ue,Ot,es,Dr,_n,Vn,bs,Or,Nt,M,vr,Pr,Cr,kn,Wd,Yd,he,so,Ha,Jd,At,_t,yt,W,Me,Fe,Le,Ze,Be,ne,ao,wr,yn,jr,_r,bn,nm}from"./chunk-vvr8tnse.js";import{ts,Ri,mu,Ya,Fr,Uo,ns,Ss,Au,Wl,fa,Pi,Es,Ni,pa,hm,Cs}from"./chunk-nv7tztvh.js";import{Ro,yr}from"./chunk-fb1bes2h.js";import{Is,ma}from"./chunk-bf5m8f6t.js";import{Jl}from"./chunk-v3z63tpw.js";import{Ja}from"./chunk-3tg10kwz.js";import{nr}from"./chunk-emgyjhmx.js";import{dn}from"./chunk-hjwpd09v.js";import{fo}from"./chunk-fxg81vtx.js";import{Nr}from"./chunk-8s9fehda.js";import{H,w}from"./chunk-tjavzarz.js";var ei=w(function(Zf,Zs){function Js(e,n){this.text=e=e||"",this.hasWild=~e.indexOf("*"),this.separator=n,this.parts=e.split(n)}Js.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};Zs.exports=function(e,n,r){var s=new Js(e,r||/[\/\.]/);if(typeof n<"u")return s.match(n);return s}});var ni=w(function(em,ti){var Pd=ei(),Ad=/[\/\+\.]/;ti.exports=function(e,n){function r(s){var i=Pd(s,e,Ad);return i&&i.length>=2}return n?r(n.split(";")[0]):r}});var ho=w(function(rm,si){function Dd(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}si.exports=Dd});var ai=w(function(sm,ii){var Od=typeof global=="object"&&global&&global.Object===Object&&global;ii.exports=Od});var Yo=w(function(im,li){var $d=ai(),zd=typeof self=="object"&&self&&self.Object===Object&&self,Ld=$d||zd||Function("return this")();li.exports=Ld});var ui=w(function(am,di){var Ud=Yo(),jd=function(){return Ud.Date.now()};di.exports=jd});var pi=w(function(lm,ci){var Vd=/\s/;function qd(e){var n=e.length;while(n--&&Vd.test(e.charAt(n)));return n}ci.exports=qd});var mi=w(function(dm,fi){var Bd=pi(),Hd=/^\s+/;function Gd(e){return e?e.slice(0,Bd(e)+1).replace(Hd,""):e}fi.exports=Gd});var Jo=w(function(um,hi){var Kd=Yo(),Xd=Kd.Symbol;hi.exports=Xd});var xi=w(function(cm,yi){var vi=Jo(),wi=Object.prototype,{hasOwnProperty:Qd,toString:Zd}=wi,oo=vi?vi.toStringTag:void 0;function nu(e){var n=Qd.call(e,oo),r=e[oo];try{e[oo]=void 0;var s=!0}catch(a){}var i=Zd.call(e);if(s)if(n)e[oo]=r;else delete e[oo];return i}yi.exports=nu});var Si=w(function(pm,bi){var ou=Object.prototype,ru=ou.toString;function su(e){return ru.call(e)}bi.exports=su});var Ei=w(function(fm,Ii){var Ci=Jo(),iu=xi(),au=Si(),lu="[object Null]",pu="[object Undefined]",Fi=Ci?Ci.toStringTag:void 0;function gu(e){if(e==null)return e===void 0?pu:lu;return Fi&&Fi in Object(e)?iu(e):au(e)}Ii.exports=gu});var Ti=w(function(mm,_i){function hu(e){return e!=null&&typeof e=="object"}_i.exports=hu});var Ai=w(function(gm,ki){var vu=Ei(),wu=Ti(),yu="[object Symbol]";function xu(e){return typeof e=="symbol"||wu(e)&&vu(e)==yu}ki.exports=xu});var zi=w(function(vm,$i){var bu=mi(),Di=ho(),Su=Ai(),Oi=NaN,Cu=/^[-+]0x[0-9a-f]+$/i,Ru=/^0b[01]+$/i,Fu=/^0o[0-7]+$/i,Iu=parseInt;function Eu(e){if(typeof e=="number")return e;if(Su(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=bu(e);var r=Ru.test(e);return r||Fu.test(e)?Iu(e.slice(2),r?2:8):Cu.test(e)?Oi:+e}$i.exports=Eu});var ji=w(function(wm,Ui){var _u=ho(),tr=ui(),Li=zi(),Mu="Expected a function",{max:Tu,min:Nu}=Math;function ku(e,n,r){var s,i,a,l,d,c,p=0,f=!1,v=!1,g=!0;if(typeof e!="function")throw TypeError(Mu);if(n=Li(n)||0,_u(r))f=!!r.leading,v="maxWait"in r,a=v?Tu(Li(r.maxWait)||0,n):a,g="trailing"in r?!!r.trailing:g;function h(ie){var ye=s,te=i;return s=i=void 0,p=ie,l=e.apply(te,ye),l}function y(ie){return p=ie,d=setTimeout(k,n),f?h(ie):l}function x(ie){var ye=ie-c,te=ie-p,je=n-ye;return v?Nu(je,a-te):je}function b(ie){var ye=ie-c,te=ie-p;return c===void 0||ye>=n||ye<0||v&&te>=a}function k(){var ie=tr();if(b(ie))return U(ie);d=setTimeout(k,x(ie))}function U(ie){if(d=void 0,g&&s)return h(ie);return s=i=void 0,l}function V(){if(d!==void 0)clearTimeout(d);p=0,s=c=i=d=void 0}function X(){return d===void 0?l:U(tr())}function ee(){var ie=tr(),ye=b(ie);if(s=arguments,i=this,c=ie,ye){if(d===void 0)return y(c);if(v)return clearTimeout(d),d=setTimeout(k,n),h(c)}if(d===void 0)d=setTimeout(k,n);return l}return ee.cancel=V,ee.flush=X,ee}Ui.exports=ku});var qi=w(function(ym,Vi){var Pu=ji(),Du=ho(),Ou="Expected a function";function $u(e,n,r){var s=!0,i=!0;if(typeof e!="function")throw TypeError(Ou);if(Du(r))s="leading"in r?!!r.leading:s,i="trailing"in r?!!r.trailing:i;return Pu(e,n,{leading:s,maxWait:n,trailing:i})}Vi.exports=$u});var Hi=w(function(xm,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 Hs 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 En=Hs;class Gs{#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 Ws=Gs;var go=()=>{};function Jn(e,n={}){let{body:r=null,headers:s={},method:i="GET",onBeforeRequest:a=go,onUploadProgress:l=go,shouldRetry:d=()=>!0,onAfterResponse:c=go,onTimeout:p=go,responseType:f,retries:v=3,signal:g=null,timeout:h=30000,withCredentials:y=!1}=n,x=(U)=>0.3*2**(U-1)*1000,b=new Ws(h,p);function k(U=0){return new Promise(async(V,X)=>{let ee=new XMLHttpRequest,ie=(te)=>{if(d(ee)&&U<v)setTimeout(()=>{k(U+1).then(V,X)},x(U));else b.done(),X(te)};if(ee.open(i,e,!0),ee.withCredentials=y,f)ee.responseType=f;if(ee.onload=async()=>{try{await c(ee,U)}catch(te){te.request=ee,ie(te);return}if(ee.status>=200&&ee.status<300)b.done(),V(ee);else if(d(ee)&&U<v)setTimeout(()=>{k(U+1).then(V,X)},x(U));else b.done(),X(new En(ee.statusText,ee))},ee.onerror=()=>ie(new En(ee.statusText,ee)),ee.upload.onprogress=(te)=>{b.progress(),l(te)},s)Object.keys(s).forEach((te)=>{ee.setRequestHeader(te,s[te])});function ye(){ee.abort(),X(new DOMException("Aborted","AbortError"))}if(g?.addEventListener("abort",ye),g?.aborted){ye();return}await a(ee,U),ee.send(r)})}return k()}var Cd=(e)=>("error"in e)&&!!e.error,Fd=(e)=>e.progress.uploadComplete;function Zn(e){return e.filter((n)=>!Cd(n)&&!Fd(n))}function eo(e){return e.filter((n)=>!n.progress?.uploadStarted||!n.isRestored)}function Mn(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 qo={__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 Nn(e){if(e.type)return e.type;let n=e.name?Mn(e.name).extension?.toLowerCase():null;if(n&&n in qo)return qo[n];return"application/octet-stream"}function Id(e){return e.charCodeAt(0).toString(32)}function Ks(e){let n="";return e.replace(/[^A-Z0-9]/gi,(r)=>(n+=`-${Id(r)}`,"/"))+n}function Bo(e,n){let r=n||"uppy";if(typeof e.name==="string")r+=`-${Ks(e.name.toLowerCase())}`;if(e.type!==void 0)r+=`-${e.type}`;if(e.meta&&typeof e.meta.relativePath==="string")r+=`-${Ks(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 Ed(e){if(!e.isRemote||!e.remote)return!1;return new Set(["box","dropbox","drive","facebook","unsplash"]).has(e.remote.provider)}function Ho(e,n){if(Ed(e))return e.id;let r=Nn(e);return Bo({...e,type:r},n)}function mn(e,n){if(e===!0)return Object.keys(n);if(Array.isArray(e))return e;return[]}function Go(e){return e<10?`0${e}`:e.toString()}function gn(){let e=new Date,n=Go(e.getHours()),r=Go(e.getMinutes()),s=Go(e.getSeconds());return`${n}:${r}:${s}`}function _d(e){if(!e)return!1;return e.readyState===4&&e.status===0}var Wo=_d;class Pn{#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 Md(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 Xs(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=Md(i,new RegExp(`%\\{${a}\\}`,"g"),l)}return i}var Nd=(e)=>{throw Error(`missing string: ${e}`)};class hn{locale;constructor(e,{onMissingKey:n=Nd}={}){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 Xs(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 Xs(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 Qs={debug:()=>{},warn:()=>{},error:(...e)=>console.error(`[Uppy] [${gn()}]`,...e)},Ys={debug:(...e)=>console.debug(`[Uppy] [${gn()}]`,...e),warn:(...e)=>console.warn(`[Uppy] [${gn()}]`,...e),error:(...e)=>console.error(`[Uppy] [${gn()}]`,...e)};var Ko=["B","KB","MB","GB","TB","PB","EB","ZB","YB"];function no(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?Ko.indexOf(n):Math.min(Math.floor(Math.log(s)/Math.log(1024)),Ko.length-1),a=Number(s/1024**i),l=Ko[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 oi=H(ni(),1),ri={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 Qo{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:no(r),size:no(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 oi.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:no(n),file:e.name??this.getI18n()("unnamed")}),{file:e});if(r&&e.size!=null&&e.size<r)throw new $t(this.getI18n()("inferiorSize",{size:no(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 zu="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var Gi=(e=21)=>{let n="",r=e|0;while(r-- >0)n+=zu[Math.random()*64|0];return n};var vo={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 or(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=vo.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 sr(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 wo={totalProgress:0,allowNewUpload:!0,error:null,recoveredState:null};class ir{static VERSION=vo.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:ri,meta:{},onBeforeFileAdded:(s,i)=>!Object.hasOwn(i,s.id),onBeforeUpload:(s)=>s,store:new Xi,logger:Qs,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=Ys;if(this.log(`Using Core v${ir.VERSION}`),this.i18nInit(),this.store=this.opts.store,this.setState({...wo,plugins:{},files:{},currentUploads:{},capabilities:{uploadProgress:sr(),individualCancellation:!0,resumableUploads:!1},meta:{...this.opts.meta},info:[]}),this.#e=new Qo(()=>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,...wo})}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({...wo,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=Nn(n),s=or(r,n),i=Mn(s).extension,a=Ho(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(wo)}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 yo=ir;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 ju=1048576,Zi=5*ju,dr=1e4;class xo{#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)>dr)i=Math.ceil(r/dr);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/dr)}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 ur="AWS4-HMAC-SHA256",bo="aws4_request",ea="s3",cr="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 Jn(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 So=ia;var mr=(e)=>e.replace(/^(&quot;|&#34;)+|(&quot;|&#34;)+$/g,""),$n=(e)=>e?.replace(/^"+|"+$/g,"");function da(e){let n=new URL(e);return n.search="",n.hash="",n.href}var fr=new TextEncoder,aa="0123456789abcdef",hr=(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=fr.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"?fr.encode(e):e,{name:"HMAC",hash:"SHA-256"},!1,["sign"]),s=fr.encode(n);return await globalThis.crypto.subtle.sign("HMAC",r,s)},Vu={"&quot;":'"',"&apos;":"'","&lt;":"<","&gt;":">","&amp;":"&"},la=(e)=>e.replaceAll(/&(quot|apos|lt|gt|amp);/g,(n)=>Vu[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())},qu=(e)=>`%${e.charCodeAt(0).toString(16).toUpperCase()}`,Bu=(e)=>encodeURIComponent(e).replace(/[!'()*]/g,qu),ca=(e)=>Bu(e).replaceAll("%2F","/");class xr extends Error{code;constructor(e,n,r){super(e);this.name=new.target.name,this.code=n,this.cause=r}}class br extends xr{}class Rr extends xr{status;serviceCode;body;constructor(e,n,r,s){super(e,r);this.status=n,this.serviceCode=r,this.body=s}}class ga extends So{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 Hu=3600;function Gu(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,bo)}return async function(v){let{method:g,key:h,expiresIn:y=Hu}=v,x=new URL(a),b=h?h.replace(/^\/+/,""):"",k=b?ca(b):"",U=x.pathname;if(k)U=U.endsWith("/")?`${U}${k}`:`${U}/${k}`;let V=new Date,X=V.toISOString().slice(0,10).replace(/-/g,""),ee=`${X}T${V.toISOString().slice(11,19).replace(/:/g,"")}Z`,ie=`${n}/${X}/${i}/${l}/${bo}`;if(x.searchParams.set("X-Amz-Algorithm",ur),x.searchParams.set("X-Amz-Content-Sha256",cr),x.searchParams.set("X-Amz-Credential",ie),x.searchParams.set("X-Amz-Date",ee),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"),te=`host:${x.host}`,T=[g,U,ye,te,"","host",cr].join(`
7
+ `),xe=`${X}/${i}/${l}/${bo}`,pe=[ur,ee,xe,hr(await ua(T))].join(`
8
+ `);if(X!==d||!c)d=X,c=await p(X);let oe=hr(await Ln(c,pe));return{url:`${x.origin}${U}?${ye}&X-Amz-Signature=${oe}`}}}var va=Gu;class wa extends So{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 br("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 Rr(`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:mr(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?mr(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 Er=wa;var ya=1048576,Wu={shouldUseMultipart:(e)=>(e.size||0)>100*ya,allowedMetaFields:!0,limit:6};class Co extends vn{static VERSION=Ji.version;#n;#e;#t={};constructor(e,n){super(e,{...Wu,...n});this.type="uploader",this.id=this.opts.id||"AwsS3"}install(){this.#o(!0),this.#r(),this.#e=new Pn({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 Er({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 Er({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=Zn(n),s=eo(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 xo({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 Qu(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(Wo(e))return r=new En(r,e),r;return r.request=e,r}function Sa(e){return e.data.slice(0,e.data.size,e.meta.type)}var Yu={formData:!0,fieldName:"file",method:"post",allowedMetaFields:!0,bundle:!1,headers:{},timeout:30000,limit:5,withCredentials:!1,responseType:""};class Fo extends vn{static VERSION=xa.version;#n;#e;uploaderEvents;constructor(e,n){super(e,{...Yu,fieldName:n.bundle?"files[]":"file",...n});if(this.type="uploader",this.id=this.opts.id||"XHRUpload",this.defaultLocale=ba,this.i18nInit(),this.#e=new Pn({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 Jn(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),Qu(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=Zn(n),s=eo(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 du({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 T of i)h.set(T.tempId,{assetId:T.assetId,key:T.key});let y=new Map;for(let T of a)if(T.id)y.set(T.id,{url:T.url||"",fileId:T.fileId||""});let x=new Map,b=new yo({autoProceed:!0,allowMultipleUploadBatches:!1});if(s==="s3")b.use(Co,{shouldUseMultipart:(T)=>(T.size||0)>104857600,getChunkSize:({size:T})=>{if(T>5368709120)return 33554432;if(T>1073741824)return 16777216;return 8388608},generateObjectKey:(T)=>T.meta.key||T.name,signRequest:async(T)=>{let xe="uploadId"in T?T.uploadId:void 0,pe="partNumber"in T?T.partNumber:void 0,oe=x.get(T.key);if(oe&&xe){let lt=Kt.get(oe);if(lt)lt.uploadId=xe}let ae=await fetch(`/api/teams/${r}/upload/sign`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:T.key,method:T.method,uploadId:xe,partNumber:pe,fileId:oe}),credentials:"include"});if(!ae.ok)throw Error(`Failed to sign request: ${ae.statusText}`);return{url:(await ae.json()).url}}});else b.use(Fo,{endpoint:(T)=>(Array.isArray(T)?T[0]:T)?.meta?.url||"",method:"PUT",formData:!1,headers:(T)=>({"Content-Type":T.type||"application/octet-stream"}),getResponseData:(T)=>{try{return T.responseText?JSON.parse(T.responseText):{}}catch{return{}}},shouldRetry:()=>!1,limit:5});let k=new Map,U=new Map,V=3,X=null,ee=()=>{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((T)=>{console.error("[Uploader] Error during retryAll:",T)})},ie=(T=2000)=>{if(X)return;X=setTimeout(()=>{X=null,ee()},T)},ye=()=>{let T=typeof navigator<"u"?navigator.onLine:!0;console.log(`[Uploader] Network 'online' event received! navigator.onLine = ${T}`),ee()},te=()=>{let T=typeof navigator<"u"?navigator.onLine:!1;console.warn(`[Uploader] Network 'offline' event received! navigator.onLine = ${T}`)};if(b.on("back-online",ye),typeof window<"u")window.addEventListener("online",ye),window.addEventListener("offline",te);b.on("upload-progress",(T,xe)=>{if(!T)return;let pe=T.meta.fileId;if(pe&&xe.bytesUploaded!=null)f(n,pe,xe.bytesUploaded)}),b.on("upload-success",(T)=>{if(!T)return;let xe=T.meta.fileId;Kt.delete(xe);let pe=(async()=>{try{let oe=await A.api.teams[":teamId"].upload.tasks[":taskId"].$patch({param:{teamId:r,taskId:n},json:{fileId:xe}});if(!oe.ok)throw Error(`Failed to confirm upload: ${oe.statusText}`);v(n,xe),p(),await l?.(xe)}catch(oe){throw console.error("Failed to confirm upload:",oe),g(n,xe),p(),M.error(`Failed to confirm upload: ${T.name}`),await l?.(xe),oe}})();k.set(xe,pe)});let je=(T,xe)=>{let pe=T.meta.fileId;if(!Kt.has(pe))return;Kt.delete(pe),g(n,pe),p(),M.error(`Failed to upload file: ${T.name}`);let oe=(async()=>{try{await A.api.teams[":teamId"].upload.tasks[":taskId"].$patch({param:{teamId:r,taskId:n},json:{fileId:pe,errorMessage:xe?.message||"Upload failed"}})}catch(ae){console.error("Failed to report upload failure:",ae)}await l?.(pe)})();k.set(pe,oe)};b.on("upload-error",(T,xe)=>{if(!T)return;if(console.error(`[Uploader] upload-error for ${T.name}:`,xe),Fa(xe)){if(console.warn(`[Uploader] Network error detected for ${T.name}. Keeping upload active to resume when connection is restored.`),typeof navigator<"u"&&navigator.onLine){let pe=T.meta.fileId,oe=(U.get(pe)||0)+1;if(U.set(pe,oe),oe>V){console.error(`[Uploader] Exceeded max online retries (${V}) for ${T.name}. Failing permanently.`),je(T,xe);return}console.log(`[Uploader] Scheduling retry for ${T.name} (attempt ${oe}/${V})...`),ie(2000)}return}je(T,xe)});for(let T of e){let xe=h.get(T.id),pe=y.get(T.id),oe=xe?.assetId||pe?.fileId||T.id,ae=xe?.key,He=pe?.url;if(ae)x.set(ae,oe);Kt.set(oe,{teamId:r,taskId:n,fileId:oe,key:ae}),c(),b.addFile({name:T.file.name,type:T.file.type,data:T.file,meta:{fileId:oe,key:ae,url:He}})}try{await new Promise((T)=>{let xe=(pe)=>{if(Kt.size===0){T();return}let oe=pe?.failed||[];if(typeof navigator<"u"&&!navigator.onLine||oe.some((lt)=>Fa(lt?.error))){console.log("[Uploader] Batch completed with network issues; waiting for reconnection to resume...");return}for(let lt of oe)je(lt,lt?.error);if(Kt.size===0)T()};b.on("complete",xe),b.on("cancel-all",()=>{T()})}),await Promise.allSettled(Array.from(k.values()))}finally{if(X)clearTimeout(X);if(typeof window<"u")window.removeEventListener("online",ye),window.removeEventListener("offline",te);await Ra(),b.destroy()}}var Ju=[["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"}]],Io=I("layers",Ju);var Zu=[["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"}]],cu=I("arrow-down-up",Zu);var ec=[["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"}]],uu=I("folder-plus",ec);var tc=[["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",tc);S();S();S();var nc=Object.defineProperty,Gt=(e,n)=>nc(e,"name",{value:n,configurable:!0}),Mr="ContextMenu",[oc,Jg]=gt(Mr,[xl]),Zt=xl(),[rc,Ea]=oc(Mr),sc=Gt((e)=>{let{__scopeContextMenu:n,children:r,onOpenChange:s,open:i,dir:a,modal:l=!0}=e,d=_(!1);if(gi){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:Mr}),f=Zt(n);return t(rc,{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"),ic="ContextMenuTrigger",ac=F(Gt(function(n,r){let{__scopeContextMenu:s,disabled:i=!1,...a}=n,l=Ea(ic,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,ro((y)=>{if(g(),l.open)l.onOpenChange(!1);v.current=window.setTimeout(()=>h(y),700)})),onPointerMove:i?n.onPointerMove:Y(n.onPointerMove,ro(g)),onPointerCancel:i?n.onPointerCancel:Y(n.onPointerCancel,ro(g)),onPointerUp:i?n.onPointerUp:Y(n.onPointerUp,ro(g))})]})},"ContextMenuTrigger")),lc=Gt((e)=>{let{__scopeContextMenu:n,...r}=e,s=Zt(n);return t(td,{...s,...r})},"ContextMenuPortal"),dc="ContextMenuContent",uc=F(Gt(function(n,r){let{__scopeContextMenu:s,...i}=n,a=Ea(dc,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 cc=F(Gt(function(n,r){let{__scopeContextMenu:s,...i}=n,a=Zt(s);return t(nd,{...a,...i,ref:r})},"ContextMenuItem"));var pc=F(Gt(function(n,r){let{__scopeContextMenu:s,...i}=n,a=Zt(s);return t(od,{...a,...i,ref:r})},"ContextMenuSeparator"));var fc="ContextMenuSub",mc=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:fc});return t(sd,{...l,open:d,onOpenChange:c,children:r})},"ContextMenuSub"),gc=F(Gt(function(n,r){let{__scopeContextMenu:s,...i}=n,a=Zt(s);return t(id,{...a,...i,ref:r})},"ContextMenuSubTrigger")),hc=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 ro(e){return(n)=>n.pointerType!=="mouse"?e(n):void 0}Gt(ro,"whenTouchOrPen");var vc=sc,wc=ac,_a=lc,yc=uc;var xc=cc;var bc=pc;var Sc=mc,Cc=gc,Rc=hc;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 U=await A.api.teams[":teamId"].projects.$get({param:{teamId:i},query:{first:"100"}});if(!U.ok)throw Error("Failed to fetch projects");return await U.json()},enabled:!!i&&e}),y=g?.data??[],x=y.find((U)=>U.id===l),b=()=>{if(c)r(c.id,f);else if(x?.rootFolder)r(x.rootFolder,f)};return t(de,{open:e,onOpenChange:n,children:o(le,{className:"sm:max-w-[425px] flex flex-col h-[600px]",children:[t(me,{children:t(ce,{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(Fe,{value:l,onValueChange:(U)=>{d(U),p(null)},children:[t(Ze,{children:t(Le,{placeholder:"Select a project"})}),t(Be,{children:y.map((U)=>t(ne,{value:U.id,children:U.name},U.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(ue,{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:(U)=>v(!!U)}),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(de,{open:n,onOpenChange:(g)=>{if(!g)r()},children:o(le,{"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(ce,{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(Pe,{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(lr,{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?dg({count:e.fileCount||0}):ug({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(vc,{"data-slot":"context-menu",...e})}function Pa({...e}){return t(wc,{"data-slot":"context-menu-trigger",...e})}function Tr({...e}){return t(_a,{"data-slot":"context-menu-portal",...e})}function kr({...e}){return t(Sc,{"data-slot":"context-menu-sub",...e})}function Ar({className:e,inset:n,children:r,...s}){return o(Cc,{"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 $r({className:e,...n}){return t(Rc,{"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(yc,{"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(xc,{"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 Eo({className:e,...n}){return t(bc,{"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:k,onOpenAgentsMd:U,isShareView:V,onRemoveFromShare:X,shareLinks:ee=[],onCreateShareLink:ie,onAddToShareLink:ye,canEdit:te=!0}){let T=[...y,...x].filter((Ve)=>n.has(Ve.id)),xe=e&&n.has(e.id),pe=xe?T:e?[e]:[],oe=pe,ae=pe,He=()=>{if(e)r(e)},lt=()=>{s(oe)},dt=()=>{if(xe)i(T);else if(e)i([e])},We=()=>{if(xe)a?.(T);else if(e)a?.([e])},j=()=>{l(ae)};if(k)return null;if(V){if(!e)return null;return o(jn,{children:[o(bt,{onSelect:dt,children:[t(ht,{className:"mr-2 h-4 w-4"}),t("span",{children:gr()})]}),o(bt,{onSelect:We,children:[t(Nr,{className:"mr-2 h-4 w-4"}),t("span",{children:Of()})]}),te&&o(bt,{onSelect:()=>X?.(pe),className:"text-destructive",children:[t(we,{className:"mr-2 h-4 w-4"}),t("span",{children:Rp()})]})]})}if(b){if(!e)return null;return t(jn,{children:o(bt,{onSelect:j,children:[t(Tn,{className:"mr-2 h-4 w-4"}),t("span",{children:Pp()})]})})}if(!e){if(!te||k)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:Wp()})]}),o(bt,{onSelect:p,children:[t(zn,{className:"mr-2 h-4 w-4"}),t("span",{children:Yp()})]}),o(bt,{onSelect:()=>{d(Tl())},children:[t(uu,{className:"mr-2 h-4 w-4"}),t("span",{children:Tl()})]})]})}let be=xe&&n.size>1?o(jn,{onCloseAutoFocus:(Ve)=>{Ve.preventDefault()},children:[o(bt,{onSelect:dt,children:[t(ht,{className:"mr-2 h-4 w-4"}),t("span",{children:gr()})]}),o(bt,{onSelect:We,children:[t(Nr,{className:"mr-2 h-4 w-4"}),t("span",{children:Of()})]}),te&&o(bt,{onSelect:()=>g(pe),children:[t(to,{className:"mr-2 h-4 w-4"}),t("span",{children:ag()})]}),te&&o(bt,{onSelect:()=>h(pe),children:[t(Nr,{className:"mr-2 h-4 w-4"}),t("span",{children:fh()})]}),te&&o(bt,{onSelect:lt,className:"text-destructive",children:[t(we,{className:"mr-2 h-4 w-4"}),t("span",{children:ct()})]}),te&&o(L,{children:[t(Eo,{}),o(bt,{onSelect:()=>ie?.(pe),children:[t(fe,{className:"mr-2 h-4 w-4"}),t("span",{children:gh()})]}),ee.length>0&&o(kr,{children:[o(Ar,{children:[t(Ja,{className:"mr-2 h-4 w-4"}),t("span",{children:Lm()})]}),t(Tr,{children:t($r,{className:"w-48",children:ee.map((Ve)=>t(bt,{onSelect:()=>ye?.(Ve.id,pe),children:t("span",{className:"truncate",children:Ve.name})},Ve.id))})})]})]})]}):o(jn,{onCloseAutoFocus:(Ve)=>{Ve.preventDefault()},children:[te&&o(bt,{onSelect:()=>{He()},children:[t(Qr,{className:"mr-2 h-4 w-4"}),t("span",{children:Zo()})]}),o(bt,{onSelect:dt,children:[t(ht,{className:"mr-2 h-4 w-4"}),t("span",{children:gr()})]}),o(bt,{onSelect:We,children:[t(Nr,{className:"mr-2 h-4 w-4"}),t("span",{children:Of()})]}),te&&o(bt,{onSelect:()=>g(pe),children:[t(to,{className:"mr-2 h-4 w-4"}),t("span",{children:ag()})]}),te&&o(bt,{onSelect:()=>h(pe),children:[t(Nr,{className:"mr-2 h-4 w-4"}),t("span",{children:fh()})]}),te&&(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:Sy()})]}),te&&e.type==="version_stack"&&o(bt,{onSelect:()=>v?.(e),children:[t(Io,{className:"mr-2 h-4 w-4"}),t("span",{children:rp()})]}),e.type==="folder"&&U&&o(bt,{onSelect:()=>U(e),children:[t(qn,{className:"mr-2 h-4 w-4"}),t("span",{children:"AGENTS.md"})]}),te&&o(L,{children:[t(Eo,{}),o(bt,{onSelect:lt,className:"text-destructive",children:[t(we,{className:"mr-2 h-4 w-4"}),t("span",{children:ct()})]}),t(Eo,{}),o(bt,{onSelect:()=>ie?.(pe),children:[t(fe,{className:"mr-2 h-4 w-4"}),t("span",{children:gh()})]}),ee.length>0&&o(kr,{children:[o(Ar,{children:[t(Ja,{className:"mr-2 h-4 w-4"}),t("span",{children:Lm()})]}),t(Tr,{children:t($r,{className:"w-48",children:ee.map((Ve)=>t(bt,{onSelect:()=>ye?.(Ve.id,pe),children:t("span",{className:"truncate",children:Ve.name})},Ve.id))})})]})]})]});return t(L,{children:be})}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(sn,{delayDuration:d,children:o(an,{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(ln,{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(cn,{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 io=({item:e,showDuration:n=!1,matchDuration:r})=>{let s=e.preview?.proxyType||e.proxyType,i=s==="video",a=s==="audio",l=s==="pdf",d=s==="3d",c=i||a,p=e.preview?.duration,f=e.preview?.pageCount,g=r!=null&&r.startTime!=null&&r.endTime!=null?o("span",{"data-testid":"file-preview-matched-duration",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:[Is(r.startTime)," - ",Is(r.endTime)]}):n&&c&&typeof p==="number"&&p>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:Is(p)}):n&&l&&typeof f==="number"&&f>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:[f," P"]}):null;if((i||l||d)&&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:d}),g]});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"}),g]});if(a)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"})}),g]});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(lr,{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(ar,{className:"w-8 h-8 fill-primary/60 stroke-0"})})};function Va({teamId:e,item:n,isSelected:r=!1,isChecked:s=!1,isEditing:i=!1,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:k,selectedCount:U,fields:V=[],isShareView:X,canEdit:ee=!0,allowDownload:ie=!0,hideCheckbox:ye=!1,hideActions:te=!1}){let[je,T]=u(n.name),xe=_(null),[pe,oe]=u(!1),ae=_(null),He=bn((ze)=>ze.fileProgress[n.id||""]),lt=He?He.total>0?He.loaded/He.total*100:0:0,dt=(n.type==="file"||n.type==="version_stack")&&!!e&&(n.status==="uploading"||n.status==="uploaded"||n.status==="processing"),{data:We}=Z({queryKey:["file",e,n.id],queryFn:async()=>{let ze=await A.api.files[":fileId"].$get({param:{fileId:n.id||""}});if(!ze.ok)throw Error("failed to fetch file");return await ze.json()},enabled:dt,refetchInterval:(ze)=>{let Pt=ze.state.data;return Pt?.status==="processed"||Pt?.status==="failed"||Pt?.status==="error"?!1:1000}}),j=D(()=>{if(n.status==="processed"||n.status==="error"||n.status==="failed")return n;if(We?.status==="processed"||We?.status==="error"||We?.status==="failed")return We;return We||n},[n,We]),{ref:be,isDragging:Ve}=bs({id:`browser:${j.id}`,data:{type:j.type,id:j.id,item:j},disabled:y}),{ref:Ye,isDropTarget:Se}=Or({id:`browser:${j.id}`,data:{type:j.type,id:j.id,item:j},disabled:y}),Ge=(ze)=>{if(y)return;be(ze),Ye(ze)},ut=Ve||(h?.draggedIds.has(j.id)??!1),Rt=D(()=>{if(!h?.isActive)return!1;if(h.draggedIds.has(j.id))return!1;return h.isSingleFile},[h,j.id]),re=Se&&Rt,Je=ut?0.5:1,vt=D(()=>(j.fieldValues||[]).reduce((ze,Pt)=>(ze[Pt.fieldId]=Pt,ze),{}),[j.fieldValues]);m(()=>{if(i){let ze=setTimeout(()=>{if(xe.current)Ss(xe.current)},150);return()=>clearTimeout(ze)}},[i]),m(()=>{T(j.name)},[j.name]);let Ct=(ze)=>{a(j,ze)},Oe=()=>{if(je!==j.name)f(je||"");v()},Ee=(ze)=>{if(ze.key==="Enter")Oe();if(ze.key==="Escape")T(j.name||""),v()},J=D(()=>{if(!j.createdAt)return"";return Py({time:kn(j.createdAt),author:j.agent?tu({user:j.creator?.name||Ll(),agent:j.agent.name}):j.creator?.name||Ll()})},[j.createdAt,j.agent,j.creator?.name]),R=b?Wd(j.deletedAt):null,Q=R===null?"":R===1?cg({count:R}):lg({count:R}),Ue=Boolean(j.preview?.thumbnailUrl||j.preview?.spriteUrl),at=j.status==="failed",It=j.status==="processing"||j.status==="uploaded",Bn=j.status==="uploading"?eu():j.status==="uploaded"||j.status==="processing"?EE():null,Hn=j.media?.error||Rg(),Fn=R!==null||typeof j.commentsCount==="number"&&j.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:[R!==null&&o("span",{"data-testid":"file-card-days-left",title:Q,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:_h({count:R})})]}),typeof j.commentsCount==="number"&&j.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:j.commentsCount})]})]}):null;return o("div",{ref:Ge,style:{opacity:Je},onClick:Ct,onDoubleClick:()=>l(j),onContextMenu:(ze)=>d(ze,j),onMouseDown:(ze)=>{if(ze.shiftKey)ze.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",re&&"border-primary outline-1 outline-primary"),children:[!ye&&t("div",{className:"absolute left-2 top-2 z-10 flex items-center gap-1.5",children:t(wr,{checked:s,onCheckedChange:()=>{},onClick:(ze)=>{ze.stopPropagation(),a(j,ze)},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:[j.agent&&t("span",{className:"select-none rounded bg-black/60 px-1 py-0.5 text-xs font-medium text-white",title:j.agent.name,"data-testid":"agent-badge",children:"AI"}),j.versionStack&&o(he,{children:["v",j.versionStack.versions.find((ze)=>ze.id===j.id)?.version??j.versionStack.versions.length]}),at&&t(sn,{delayDuration:100,children:o(an,{children:[t(ln,{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:d1()})}),t(cn,{side:"bottom","data-testid":"file-card-failed-tooltip",className:"max-w-xs break-words text-xs",children:Hn})]})})]}),t("div",{className:"relative aspect-square overflow-hidden bg-muted/30",children:j.status==="uploading"?t("div",{className:"flex h-full w-full items-center justify-center bg-background/50",children:t(ma,{progress:lt,className:"w-16 h-16 z-10"})}):Ue?o(L,{children:[t("div",{"data-testid":"file-card-preview-media",className:E("h-full w-full",It&&"animate-pulse"),children:t(io,{item:j,showDuration:!It&&!at,matchDuration:j.startTime!=null&&j.endTime!=null?{startTime:j.startTime,endTime:j.endTime}:null})}),Fn]}):j.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:dv()})}):at?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(nr,{className:"h-10 w-10 text-destructive/80 shrink-0"}),t("span",{className:"z-10 text-xs font-semibold text-destructive px-2",children:Rg()})]}):It?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(io,{item:j,showDuration:!0,matchDuration:j.startTime!=null&&j.endTime!=null?{startTime:j.startTime,endTime:j.endTime}:null}),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:xe,value:je,onChange:(ze)=>T(ze.target.value),onBlur:Oe,onKeyDown:Ee,disabled:!i,className:"h-auto p-0 text-sm font-medium text-foreground truncate !bg-transparent"}),t(sn,{delayDuration:100,children:o(an,{open:pe,onOpenChange:(ze)=>{if(ze)if(ae.current&&(ae.current.scrollHeight>ae.current.clientHeight||ae.current.scrollWidth>ae.current.clientWidth))oe(!0);else oe(!1);else oe(!1)},children:[t(ln,{asChild:!0,children:t("p",{ref:ae,className:"text-sm line-clamp-2 h-[2lh] text-muted-foreground",children:Bn??J})}),pe&&t(cn,{side:"bottom",className:"max-w-md break-all text-wrap [text-wrap:normal] text-left",children:J})]})})]}),!te&&!k&&o(ge,{modal:!1,children:[t(Ae,{asChild:!0,children:t(C,{size:"icon-sm",variant:"ghost",className:"cursor-pointer",onClick:(ze)=>ze.stopPropagation(),children:t(rr,{className:"h-4 w-4 text-foreground"})})}),t(_e,{align:"end",children:X?o(L,{children:[ie&&o(K,{onClick:(ze)=>{ze.stopPropagation(),x?.("download",n)},children:[t(ht,{className:"mr-2 h-4 w-4"}),t("span",{children:gr()})]}),ee&&o(K,{onClick:(ze)=>{ze.stopPropagation(),x?.("remove-from-share",n)},className:"text-destructive",children:[t(we,{className:"mr-2 h-4 w-4"}),t("span",{children:Rp()})]})]}):b?o(K,{onClick:(ze)=>{ze.stopPropagation(),x?.("restore",n)},children:[t(Tn,{className:"mr-2 h-4 w-4"}),t("span",{children:Pp()})]}):o(L,{children:[ee&&(!s||(U||0)<=1)&&o(K,{onClick:(ze)=>{ze.stopPropagation(),x?.("rename",n)},children:[t(Qr,{className:"mr-2 h-4 w-4"}),t("span",{children:Zo()})]}),ee&&n.type==="version_stack"&&o(K,{onClick:(ze)=>{ze.stopPropagation(),x?.("manage-versions",n)},children:[t(Io,{className:"mr-2 h-4 w-4"}),t("span",{children:rp()})]}),ie&&o(K,{onClick:(ze)=>{ze.stopPropagation(),x?.("download",n)},children:[t(ht,{className:"mr-2 h-4 w-4"}),t("span",{children:gr()})]}),ee&&o(L,{children:[t(Vt,{}),o(K,{onClick:(ze)=>{ze.stopPropagation(),x?.("delete",n)},className:"text-destructive",children:[t(we,{className:"mr-2 h-4 w-4"}),t("span",{children:ct()})]})]})]})})]})]}),V&&V.length>0&&t("div",{className:"space-y-2 border-t p-1 pt-3 mx-2",children:V.map((ze)=>{let Pt=ze.config?.type?pa[ze.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:ze.config?.name})]}),t("div",{className:"min-h-[28px]",children:t(Cs,{fieldId:ze.id,config:ze.config,value:vt[ze.id]?.value,onSave:ee&&!k?(Wn)=>g(ze.id,Wn):void 0,readOnly:ze.readOnly||!ee||!!k})})]},ze.id)})})]})}S();function Oa({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:k=!0,isRecents:U}){let[V,X]=u(n.name),ee=_(null),ie=bn((be)=>be.fileProgress[n.id||""]),ye=ie?ie.total>0?ie.loaded/ie.total*100:0:0,te=(n.type==="file"||n.type==="version_stack")&&!!e&&(n.status==="uploading"||n.status==="uploaded"||n.status==="processing"),{data:je}=Z({queryKey:["file",e,n.id],queryFn:async()=>{let be=await A.api.files[":fileId"].$get({param:{fileId:n.id||""}});if(!be.ok)throw Error("failed to fetch file");return await be.json()},enabled:te,refetchInterval:(be)=>{let Ve=be.state.data;return Ve?.status==="processed"||Ve?.status==="failed"||Ve?.status==="error"?!1:1000}}),T=D(()=>{if(n.status==="processed"||n.status==="error"||n.status==="failed")return n;if(je?.status==="processed"||je?.status==="error"||je?.status==="failed")return je;return je||n},[n,je]),{ref:xe,isDragging:pe}=bs({id:`browser:${T.id}`,data:{type:T.type,id:T.id,item:T},disabled:y}),ae=pe||(h?.draggedIds.has(T.id)??!1)?0.5:1,He=D(()=>(T.fieldValues||[]).reduce((be,Ve)=>(be[Ve.fieldId]=Ve,be),{}),[T.fieldValues]);m(()=>{if(i){let be=setTimeout(()=>{if(ee.current)Ss(ee.current)},150);return()=>clearTimeout(be)}},[i]),m(()=>{X(T.name)},[T.name]);let lt=(be)=>{if(!be)return"-";return new Date(be).toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})},dt=(be)=>{a(T,be)},We=()=>{if(V!==T.name)f(V||"");v()},j=(be)=>{if(be.key==="Enter")We();if(be.key==="Escape")X(T.name||""),v()};return o("div",{ref:xe,style:{opacity:ae},onClick:dt,onDoubleClick:()=>l(T),onContextMenu:(be)=>d(be,T),onMouseDown:(be)=>{if(be.shiftKey)be.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:(be)=>{be.stopPropagation(),a(T,be)},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:T.status==="uploading"?t(ma,{progress:ye,className:"w-7 h-7"}):T.status==="failed"&&!T.preview?.thumbnailUrl?t(nr,{className:"h-4 w-4 text-destructive"}):T.preview?.thumbnailUrl?t("img",{src:T.preview.thumbnailUrl,alt:"",className:"w-full h-full object-cover"}):T.preview?.proxyType==="audio"||T.proxyType==="audio"?t(ts,{className:"h-4 w-4 text-muted-foreground"}):T.type==="folder"?t(lr,{className:"h-4 w-4 text-primary"}):t(ar,{className:"h-4 w-4 text-muted-foreground"})}),t(Cn,{ref:ee,value:V,onChange:(be)=>X(be.target.value),onBlur:We,onKeyDown:j,disabled:!i,className:"h-auto p-0 text-sm font-medium text-foreground truncate min-w-0 flex-1"}),T.status==="error"&&t("span",{className:"text-xs text-destructive font-semibold shrink-0",children:fv()}),T.status==="failed"&&t("span",{"data-testid":"file-list-item-failed",className:"text-xs text-destructive font-semibold shrink-0",children:ME()}),T.agent&&t("span",{className:"select-none rounded bg-black/60 px-1 py-0.5 text-xs font-medium text-white shrink-0",title:T.agent.name,"data-testid":"agent-badge",children:"AI"}),T.versionStack&&o(he,{variant:"outline",className:"px-1 py-0 text-xs shrink-0",children:["v",T.versionStack.versions.find((be)=>be.id===T.id)?.version??T.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:T.type==="folder"?"-":T.sizeByte?yn(T.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:lt(T.updatedAt)}),!U&&t("button",{onClick:(be)=>{be.stopPropagation();let Ve=be.target.getBoundingClientRect(),Ye=new MouseEvent(be.nativeEvent.type,{bubbles:!0,cancelable:!0,clientX:Ve.left,clientY:Ve.bottom});d(Ye,T)},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"})})]})}),T.type==="file"&&x.map((be)=>t("div",{className:"px-4 py-2 truncate border-r shrink-0 flex items-center",style:{width:b?.[be.id]||150,minWidth:b?.[be.id]||150},children:t(Cs,{fieldId:be.id,config:be.config,value:He[be.id]?.value,onSave:k&&!U?(Ve)=>g(be.id,Ve):void 0,readOnly:be.readOnly||!k||!!U})},be.id))]})}S();var Ic=({items:e})=>{let n=e,r=n?n.slice(0,3):[],s=r.length,i=(a)=>{if(!a)return null;return t(io,{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 Qa({item:e,isSelected:n=!1,isChecked:r=!1,isEditing:s=!1,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:k=!0,isShareView:U,isExternalDragging:V,externalOverFolderId:X,setExternalOverFolderId:ee,resetExternalDragState:ie,onExternalDrop:ye,allowDownload:te=!0,hideCheckbox:je=!1,hideActions:T=!1}){let[xe,pe]=u(e.name||""),oe=_(null),{ref:ae,isDragging:He}=bs({id:`browser:${e.id}`,data:{type:"folder",id:e.id,item:e},disabled:g}),{ref:lt,isDropTarget:dt}=Or({id:`browser:${e.id}`,data:{type:"folder",id:e.id,item:e},disabled:g}),We=(R)=>{if(g)return;ae(R),lt(R)},j=He||(v?.draggedIds.has(e.id)??!1),be=D(()=>{if(!v?.isActive)return!1;if(v.draggedIds.has(e.id))return!1;return!0},[v,e.id]),Ve=V&&X===e.id,Ye=dt&&be||Ve,Se=j?0.5:1;m(()=>{if(s){let R=setTimeout(()=>{oe.current?.focus(),oe.current?.select()},150);return()=>clearTimeout(R)}},[s]),m(()=>{pe(e.name||"")},[e.name]);let Ge=(R)=>{i(e,R)},ut=()=>{if(xe!==e.name)p(xe||"");f()},Rt=(R)=>{if(R.key==="Enter")ut();if(R.key==="Escape")pe(e.name||""),f()},re=300,Je=220,vt=8,Ct={cornerRadius:4,tabRadius:5,tabSlope:15,tabBaseWidth:120},Oe=D(()=>{let{cornerRadius:R,tabRadius:Q,tabSlope:Ue,tabBaseWidth:at}=Ct,It=1;return`M 1, ${vt+1} L 1, ${1+Q} A ${Q} ${Q} 0 0 1 ${1+Q} 1 L ${at-Ue+1-Q} 1 Q ${at-Ue+1} 1 ${at-Ue+1} 1 L ${at+1} ${vt+1} L ${re-R-1} ${vt+1} A ${R} ${R} 0 0 1 ${re-1} ${vt+R+1} L ${re-1} ${Je-R-1} A ${R} ${R} 0 0 1 ${re-R-1} ${Je-1} L ${R+1} ${Je-1} A ${R} ${R} 0 0 1 1 ${Je-R-1} Z`.replace(/\s+/g," ").trim()},[]),Ee=y?Wd(e.deletedAt):null,J=Ee===null?"":Ee===1?cg({count:Ee}):lg({count:Ee});return o("div",{ref:We,style:{opacity:Se},onClick:Ge,onDoubleClick:()=>a(e),onContextMenu:(R)=>l(R,e),onMouseDown:(R)=>{if(R.shiftKey)R.preventDefault()},onDragEnter:V?()=>{ee?.(e.id)}:void 0,onDragLeave:V?(R)=>{if(!R.currentTarget.contains(R.relatedTarget))ee?.(null)}:void 0,onDragOver:V?(R)=>{R.preventDefault()}:void 0,onDrop:V?async(R)=>{R.preventDefault(),R.stopPropagation(),ie?.();let Q=await Ya(R.dataTransfer);ye?.(Q,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 ${re} ${Je}`,preserveAspectRatio:"none",className:"overflow-visible",children:t("path",{d:Oe,vectorEffect:"non-scaling-stroke",strokeLinejoin:"round",strokeWidth:Ye||n?2:1,className:E("transition-colors duration-200 fill-none group-hover:stroke-primary stroke-foreground/10",(n||r||Ye)&&"stroke-primary")})})}),t("div",{className:"absolute inset-0 -z-10 pointer-events-none",children:t("svg",{width:"100%",height:"100%",viewBox:`0 0 ${re} ${Je}`,preserveAspectRatio:"none",className:"overflow-visible",children:t("path",{d:Oe,vectorEffect:"non-scaling-stroke",strokeLinejoin:"round",strokeWidth:Ye?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:[!je&&t("div",{className:"absolute top-1 left-1 z-30 transition-all duration-200",children:t(wr,{checked:r,onClick:(R)=>R.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(Ic,{items:e.latestChildren})}),Ee!==null&&o("span",{"data-testid":"folder-card-days-left",title:J,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:_h({count:Ee})})]})]}),o("div",{className:"flex flex-col gap-1 mt-2 px-1",children:[t(Cn,{ref:oe,value:xe||"",onChange:(R)=>pe(R.target.value),onBlur:ut,onKeyDown:Rt,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?dg({count:e.fileCount||0}):ug({count:e.fileCount||0})}),!T&&!x&&o(ge,{modal:!1,children:[t(Ae,{asChild:!0,children:t("button",{onClick:(R)=>R.stopPropagation(),className:"p-1.5 -mr-2 rounded-full hover:bg-muted text-muted-foreground hover:text-foreground transition-colors cursor-pointer",children:t(rr,{size:18})})}),t(_e,{align:"end",children:U?o(L,{children:[te&&o(K,{onClick:(R)=>{R.stopPropagation(),h?.("download",e)},children:[t(ht,{className:"mr-2 h-4 w-4"}),t("span",{children:gr()})]}),k&&o(K,{onClick:(R)=>{R.stopPropagation(),h?.("remove-from-share",e)},className:"text-destructive",children:[t(we,{className:"mr-2 h-4 w-4"}),t("span",{children:Rp()})]})]}):y?o(K,{onClick:(R)=>{R.stopPropagation(),h?.("restore",e)},children:[t(Tn,{className:"mr-2 h-4 w-4"}),t("span",{children:Pp()})]}):o(L,{children:[k&&(!r||(b||0)<=1)&&o(K,{onClick:(R)=>{R.stopPropagation(),h?.("rename",e)},children:[t(Qr,{className:"mr-2 h-4 w-4"}),t("span",{children:Zo()})]}),te&&o(K,{onClick:(R)=>{R.stopPropagation(),h?.("download",e)},children:[t(ht,{className:"mr-2 h-4 w-4"}),t("span",{children:gr()})]}),k&&o(L,{children:[t(Vt,{}),o(K,{onClick:(R)=>{R.stopPropagation(),h?.("delete",e)},className:"text-destructive",children:[t(we,{className:"mr-2 h-4 w-4"}),t("span",{children:ct()})]})]})]})})]})]})]})]})]})}S();function $a(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 zr(e,n){if(e===void 0)throw Error(`Unexpected undefined${n?`: ${n}`:""}`);else return e}var za=(e,n)=>Math.abs(e-n)<1.01,La=(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 lo,Lr=()=>{if(lo!==void 0)return lo;if(typeof navigator>"u")return lo=!1;if(/iP(hone|od|ad)/.test(navigator.userAgent))return lo=!0;let e=navigator.maxTouchPoints;return lo=navigator.platform==="MacIntel"&&e!==void 0&&e>0};var Ua=(e)=>{let{offsetWidth:n,offsetHeight:r}=e;return{width:n,height:r}},Ec=(e)=>e,_c=(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},ja=(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(Ua(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(Ua(r))};e.options.useAnimationFrameWithResizeObserver?requestAnimationFrame(d):d()});return a.observe(r,{box:"border-box"}),()=>{a.unobserve(r)}},_o={passive:!0};var Mc=typeof window>"u"?!0:("onscrollend"in window),Tc=(e,n,r)=>{let s=e.scrollElement;if(!s)return;let i=e.targetWindow;if(!i)return;let a=e.options.useScrollendEvent&&Mc,l=0,d=a?null:La(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,_o),a)s.addEventListener("scrollend",f,_o);return()=>{if(s.removeEventListener("scroll",p),a)s.removeEventListener("scrollend",f);d==null||d.cancel()}},qa=(e,n)=>Tc(e,n,(r)=>{let{horizontal:s,isRtl:i}=e.options;return s?r.scrollLeft*(i&&-1||1):r.scrollTop});var Nc=(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"]},kc=(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 Ba=kc;class Ur{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:Ec,rangeExtractor:_c,onChange:()=>{},measureElement:Nc,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 U=v>0?this.getVirtualItemForOffset(this.getScrollOffset())??h[0]:null;if(U)l=[U.key,this.getScrollOffset()-U.start];let V=i.followOnAppend===!0?"auto":i.followOnAppend||null;if(V&&g>v&&this.isAtEnd(a.scrollEndThreshold)&&(v===0||i.getItemKey(g-1)!==x))d=V}}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 k=h[b];if(k){let U=Math.max(0,k.start+g);if(U!==this.scrollOffset)f=U-this.scrollOffset,this.scrollOffset=U,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,!Lr()||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,_o),i.addEventListener("touchend",l,_o),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(Lr()&&(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,k=this._flatMeasurements;if(!k||k.length<b){let X=new Float64Array(b);if(k&&v>0)X.set(k.subarray(0,v*2));k=X,this._flatMeasurements=k}let U;if(v===0)U=r+s;else{let X=v-1;U=k[X*2]+k[X*2+1]+c}for(let X=v;X<n;X++){let ee=i(X),ie=f.get(ee),ye=typeof ie==="number"?ie:this.options.estimateSize(X);k[X*2]=U,k[X*2+1]=ye,U+=ye+c}let V=$a(n,k,i);return this.measurementsCache=V,V}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 k=g[b];if(k){if(h[k.lane]===void 0)x++;h[k.lane]=b,y[k.lane]=k.end}}for(let b=v;b<n;b++){let k=i(b),U=this.laneAssignments.get(b),V,X,ee=d==="estimate"||f.has(k);if(U!==void 0&&this.options.lanes>1){V=U;let je=h[V],T=je!==void 0?g[je]:void 0;X=T?T.end+c:r+s}else if(x===l){let je=0,T=y[0],xe=h[0];for(let pe=1;pe<l;pe++){let oe=y[pe];if(oe<T||oe===T&&h[pe]<xe)je=pe,T=oe,xe=h[pe]}if(V=je,X=T+c,ee)this.laneAssignments.set(b,V)}else if(V=b%this.options.lanes,X=r+s,ee)this.laneAssignments.set(b,V);let ie=f.get(k),ye=typeof ie==="number"?ie:this.options.estimateSize(b),te=X+ye;if(g[b]={index:b,start:X,size:ye,end:te,key:k,lane:V},h[V]===void 0)x++;h[V]=b,y[V]=te}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=Ac(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 k=!1;if(v)k=this.applyScrollAdjustment(this.getTotalSize()-g);else if(b)k=this.applyScrollAdjustment(f);this.notify(k)}},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=Ga(0,r.length-1,i?(l)=>s[l*2]:(l)=>zr(r[l]).start,n);return zr(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(Lr()&&(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&&za(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 Ga=(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 Pc(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 Ac(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=Pc(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=Ga(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 Vr=typeof document<"u"?$e:m;function Dc({useFlushSync:e=!0,directDomUpdates:n=!1,directDomUpdatesMode:r="transform",...s}){let i=tn((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 k of b){let U=k.start-x,V=f.elementsCache.get(k.key);if(!V)continue;if(v.lastPositions.get(V)===U)continue;if(v.lastPositions.set(V,U),h)V.style.transform=g?`translate3d(${U}px, 0, 0)`:`translate3d(0, ${U}px, 0)`;else V.style[y]=`${U}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)rn(i);else i();(g=s.onChange)==null||g.call(s,f,v)}},[p]=u(()=>{let f=new Ur(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),Vr(()=>p._didMount(),[]),Vr(()=>(l(p),p._willUpdate())),Vr(()=>{d(p)}),p}function Mo(e){return Dc({observeElementRect:ja,observeElementOffset:qa,scrollToFn:Ba,...e})}S();function Wa({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 Ka({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:k,totalFilesSize:U,handleEmptyAreaClick:V,dragState:X,sort:ee,scrollContainerRef:ie}){let ye=_(null),[te,je]=u(5);m(()=>{let oe=()=>{if(!ye.current)return;let He=ye.current.offsetWidth;if(He<640)je(2);else if(He<768)je(2);else if(He<1024)je(3);else if(He<1280)je(4);else je(5)};oe();let ae=new ResizeObserver(oe);if(ye.current)ae.observe(ye.current);return()=>ae.disconnect()},[]);let T=D(()=>{let oe=[],ae=r??e.length;if(ae>0){if(oe.push({type:"header",kind:"folder"}),a){let lt=Math.ceil(ae/te);for(let dt=0;dt<lt;dt++)oe.push({type:"row",kind:"folder",rowIndex:dt})}}let He=s??n.length;if(He>0){if(oe.push({type:"header",kind:"file"}),d){let lt=Math.ceil(He/te);for(let dt=0;dt<lt;dt++)oe.push({type:"row",kind:"file",rowIndex:dt})}}return oe},[a,d,e.length,n.length,r,s,te]),xe=Mo({count:T.length,getScrollElement:()=>ie.current,estimateSize:(oe)=>T[oe]?.type==="header"?40:350,getItemKey:P((oe)=>{let ae=T[oe];if(!ae)return oe;if(ae.type==="header")return`header-${ae.kind}`;return`row-${ae.kind}-${ae.rowIndex}`},[T]),overscan:5}),pe=xe.getVirtualItems();return m(()=>{if(pe.length===0)return;for(let oe of pe){let ae=T[oe.index];if(ae?.type==="row"){let He=ae.kind==="folder",lt=He?e:n,dt=ae.rowIndex*te,We=!lt[dt],j=dt>=lt.length-te*3;if(He&&p&&!v){if(We||j){h();break}}else if(!He&&f&&!g){if(We||j){y();break}}}}},[pe,T,e.length,n.length,p,f,v,g,h,y,te]),t("div",{ref:ye,className:"flex-1 p-4 relative",onClick:V,children:t("div",{className:"relative w-full",style:{height:`${xe.getTotalSize()}px`},children:pe.map((oe)=>{let ae=T[oe.index];if(ae.type==="header"){let j=ae.kind==="folder",be=j?r??e.length:s??n.length,Ve=j?k??-1:U??-1,Ye=Ve>-1,Se=j?a:d,Ge=j?l:c;return t("div",{ref:xe.measureElement,"data-index":oe.index,className:"absolute top-0 left-0 w-full z-10 bg-background",style:{transform:`translateY(${oe.start}px)`},children:o("button",{onClick:(ut)=>{ut.stopPropagation(),Ge(!Se)},className:"mb-3 flex items-center gap-2 text-sm text-muted-foreground hover:text-foreground",children:[Se?t(ve,{className:"h-4 w-4"}):t(Et,{className:"h-4 w-4"}),o("span",{children:[x(be,!j),Ye?` • ${b(Ve)}`:""]})]})},`header-${ae.kind}`)}let He=ae.kind==="folder",lt=He?e:n,dt=ae.rowIndex*te,We=[];for(let j=0;j<te;j++)We.push(lt[dt+j]);return t("div",{ref:xe.measureElement,"data-index":oe.index,className:"absolute top-0 left-0 w-full grid gap-4",style:{transform:`translateY(${oe.start}px)`,gridTemplateColumns:`repeat(${te}, minmax(0, 1fr))`},children:We.map((j,be)=>{let Ve=dt+be;if(!j){let Ye=He?r??e.length:s??n.length;if(Ve<Ye)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(Wa,{id:`reorder-before-${ae.kind}-${j.id}`,item:j,position:"before",active:ee?.field==="custom",dragState:X}),t("div",{className:"flex-1 min-w-0",children:i(j)}),t(Wa,{id:`reorder-after-${ae.kind}-${j.id}`,item:j,position:"after",active:ee?.field==="custom",dragState:X,isNextItemDragging:lt[Ve+1]&&X?.draggedIds.has(lt[Ve+1].id)})]},j.id)})},`row-${ae.kind}-${ae.rowIndex}`)})})})}S();function un(e,n){return typeof e==="function"?e(n):e}function zt(e,n){return(r)=>{n.setState((s)=>({...s,[e]:un(r,s[e])}))}}function Po(e){return e instanceof Function}function Oc(e){return Array.isArray(e)&&e.every((n)=>typeof n==="number")}function $c(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 Ke(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 Qe(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 Lc(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:Ke(()=>[e,r,n,a],(l,d,c,p)=>({table:l,column:d,row:c,cell:p,getValue:p.getValue,renderValue:p.renderValue}),Qe(e.options,"debugCells","cell.getContext"))};return e._features.forEach((l)=>{l.createCell==null||l.createCell(a,r,n,e)},{}),a}function jc(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:Ke(()=>[!0],()=>{var g;return[v,...(g=v.columns)==null?void 0:g.flatMap((h)=>h.getFlatColumns())]},Qe(e.options,"debugColumns","column.getFlatColumns")),getLeafColumns:Ke(()=>[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]},Qe(e.options,"debugColumns","column.getLeafColumns"))};for(let g of e._features)g.createColumn==null||g.createColumn(v,e);return v}var kt="debugHeaders";function Xa(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 Vc={createTable:(e)=>{e.getHeaderGroups=Ke(()=>[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 To(n,[...d,...p,...c],e)},Qe(e.options,kt,"getHeaderGroups")),e.getCenterHeaderGroups=Ke(()=>[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))),To(n,r,e,"center")),Qe(e.options,kt,"getCenterHeaderGroups")),e.getLeftHeaderGroups=Ke(()=>[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 To(n,a,e,"left")},Qe(e.options,kt,"getLeftHeaderGroups")),e.getRightHeaderGroups=Ke(()=>[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 To(n,a,e,"right")},Qe(e.options,kt,"getRightHeaderGroups")),e.getFooterGroups=Ke(()=>[e.getHeaderGroups()],(n)=>[...n].reverse(),Qe(e.options,kt,"getFooterGroups")),e.getLeftFooterGroups=Ke(()=>[e.getLeftHeaderGroups()],(n)=>[...n].reverse(),Qe(e.options,kt,"getLeftFooterGroups")),e.getCenterFooterGroups=Ke(()=>[e.getCenterHeaderGroups()],(n)=>[...n].reverse(),Qe(e.options,kt,"getCenterFooterGroups")),e.getRightFooterGroups=Ke(()=>[e.getRightHeaderGroups()],(n)=>[...n].reverse(),Qe(e.options,kt,"getRightFooterGroups")),e.getFlatHeaders=Ke(()=>[e.getHeaderGroups()],(n)=>n.map((r)=>r.headers).flat(),Qe(e.options,kt,"getFlatHeaders")),e.getLeftFlatHeaders=Ke(()=>[e.getLeftHeaderGroups()],(n)=>n.map((r)=>r.headers).flat(),Qe(e.options,kt,"getLeftFlatHeaders")),e.getCenterFlatHeaders=Ke(()=>[e.getCenterHeaderGroups()],(n)=>n.map((r)=>r.headers).flat(),Qe(e.options,kt,"getCenterFlatHeaders")),e.getRightFlatHeaders=Ke(()=>[e.getRightHeaderGroups()],(n)=>n.map((r)=>r.headers).flat(),Qe(e.options,kt,"getRightFlatHeaders")),e.getCenterLeafHeaders=Ke(()=>[e.getCenterFlatHeaders()],(n)=>n.filter((r)=>{var s;return!((s=r.subHeaders)!=null&&s.length)}),Qe(e.options,kt,"getCenterLeafHeaders")),e.getLeftLeafHeaders=Ke(()=>[e.getLeftFlatHeaders()],(n)=>n.filter((r)=>{var s;return!((s=r.subHeaders)!=null&&s.length)}),Qe(e.options,kt,"getLeftLeafHeaders")),e.getRightLeafHeaders=Ke(()=>[e.getRightFlatHeaders()],(n)=>n.filter((r)=>{var s;return!((s=r.subHeaders)!=null&&s.length)}),Qe(e.options,kt,"getRightLeafHeaders")),e.getLeafHeaders=Ke(()=>[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()},Qe(e.options,kt,"getLeafHeaders"))}};function To(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 k=[...x].reverse()[0],U=b.column.depth===y.depth,V,X=!1;if(U&&b.column.parent)V=b.column.parent;else V=b.column,X=!0;if(k&&(k==null?void 0:k.column)===V)k.subHeaders.push(b);else{let ee=Xa(r,V,{id:[s,h,V.id,b==null?void 0:b.id].filter(Boolean).join("_"),isPlaceholder:X,placeholderId:X?`${x.filter((ie)=>ie.column===V).length}`:void 0,depth:h,index:x.length});ee.subHeaders.push(b),x.push(ee)}y.headers.push(b),b.headerGroup=y}),c.push(y),h>0)p(x,h-1)},f=n.map((g,h)=>Xa(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,k=[0];if(y.subHeaders&&y.subHeaders.length)k=[],v(y.subHeaders).forEach((V)=>{let{colSpan:X,rowSpan:ee}=V;x+=X,k.push(ee)});else x=1;let U=Math.min(...k);return b=b+U,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 qc=(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:()=>$c(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:Ke(()=>[e.getAllLeafColumns()],(c)=>c.map((p)=>Lc(e,d,p,p.id)),Qe(e.options,"debugRows","getAllCells")),_getAllCellsByColumnId:Ke(()=>[d.getAllCells()],(c)=>c.reduce((p,f)=>(p[f.column.id]=f,p),{}),Qe(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},Hc={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()}}},el=(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))};el.autoRemove=(e)=>Qt(e);var tl=(e,n,r)=>{var s;return Boolean((s=e.getValue(n))==null||(s=s.toString())==null?void 0:s.includes(r))};tl.autoRemove=(e)=>Qt(e);var nl=(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())};nl.autoRemove=(e)=>Qt(e);var ol=(e,n,r)=>{var s;return(s=e.getValue(n))==null?void 0:s.includes(r)};ol.autoRemove=(e)=>Qt(e);var rl=(e,n,r)=>!r.some((s)=>{var i;return!((i=e.getValue(n))!=null&&i.includes(s))});rl.autoRemove=(e)=>Qt(e)||!(e!=null&&e.length);var sl=(e,n,r)=>r.some((s)=>{var i;return(i=e.getValue(n))==null?void 0:i.includes(s)});sl.autoRemove=(e)=>Qt(e)||!(e!=null&&e.length);var il=(e,n,r)=>e.getValue(n)===r;il.autoRemove=(e)=>Qt(e);var al=(e,n,r)=>e.getValue(n)==r;al.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:el,includesStringSensitive:tl,equalsString:nl,arrIncludes:ol,arrIncludesAll:rl,arrIncludesSome:sl,equals:il,weakEquals:al,inNumberRange:is};function Qt(e){return e===void 0||e===null||e===""}var Gc={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 Po(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=un(r,a?a.value:void 0);if(Za(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=un(n,i))==null?void 0:a.filter((l)=>{let d=r.find((c)=>c.id===l.id);if(d){let c=d.getFilterFn();if(Za(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 Za(e,n,r){return(e&&e.autoRemove?e.autoRemove(n,r):!1)||typeof n>"u"||typeof n==="string"&&!n}var Kc=(e,n,r)=>r.reduce((s,i)=>{let a=i.getValue(e);return s+(typeof a==="number"?a:0)},0),Qc=(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},Zc=(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},ep=(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]},np=(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},op=(e,n)=>{if(!n.length)return;let r=n.map((a)=>a.getValue(e));if(!Oc(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,ap=(e,n)=>n.length,qr={sum:Kc,min:Qc,max:Zc,extent:ep,mean:np,median:op,unique:sp,uniqueCount:ip,count:ap},pp={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 qr.sum;if(Object.prototype.toString.call(s)==="[object Date]")return qr.extent},e.getAggregationFn=()=>{var r,s;if(!e)throw Error();return Po(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:qr[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 fp(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 vp={getInitialState:(e)=>({columnOrder:[],...e}),getDefaultOptions:(e)=>({onColumnOrderChange:zt("columnOrder",e)}),createColumn:(e,n)=>{e.getIndex=Ke((r)=>[co(n,r)],(r)=>r.findIndex((s)=>s.id===e.id),Qe(n.options,"debugColumns","getIndex")),e.getIsFirstColumn=(r)=>{var s;return((s=co(n,r)[0])==null?void 0:s.id)===e.id},e.getIsLastColumn=(r)=>{var s;let i=co(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=Ke(()=>[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 fp(a,r,s)},Qe(e.options,"debugTable","_getOrderColumnsFn"))}},Br=()=>({left:[],right:[]}),wp={getInitialState:(e)=>({columnPinning:Br(),...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=Ke(()=>[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))},Qe(n.options,"debugRows","getCenterVisibleCells")),e.getLeftVisibleCells=Ke(()=>[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"})),Qe(n.options,"debugRows","getLeftVisibleCells")),e.getRightVisibleCells=Ke(()=>[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"})),Qe(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?Br():(r=(s=e.initialState)==null?void 0:s.columnPinning)!=null?r:Br())},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=Ke(()=>[e.getAllLeafColumns(),e.getState().columnPinning.left],(n,r)=>(r!=null?r:[]).map((s)=>n.find((i)=>i.id===s)).filter(Boolean),Qe(e.options,"debugColumns","getLeftLeafColumns")),e.getRightLeafColumns=Ke(()=>[e.getAllLeafColumns(),e.getState().columnPinning.right],(n,r)=>(r!=null?r:[]).map((s)=>n.find((i)=>i.id===s)).filter(Boolean),Qe(e.options,"debugColumns","getRightLeafColumns")),e.getCenterLeafColumns=Ke(()=>[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))},Qe(e.options,"debugColumns","getCenterLeafColumns"))}};function yp(e){return e||(typeof document<"u"?document:null)}var No={size:150,minSize:20,maxSize:Number.MAX_SAFE_INTEGER},Hr=()=>({startOffset:null,startSize:null,deltaOffset:null,deltaPercentage:null,isResizingColumn:!1,columnSizingStart:[]}),xp={getDefaultColumnDef:()=>No,getInitialState:(e)=>({columnSizing:{},columnSizingInfo:Hr(),...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:No.minSize,(s=a!=null?a:e.columnDef.size)!=null?s:No.size),(i=e.columnDef.maxSize)!=null?i:No.maxSize)},e.getStart=Ke((r)=>[r,co(n,r),n.getState().columnSizing],(r,s)=>s.slice(0,e.getIndex(r)).reduce((i,a)=>i+a.getSize(),0),Qe(n.options,"debugColumns","getStart")),e.getAfter=Ke((r)=>[r,co(n,r),n.getState().columnSizing],(r,s)=>s.slice(e.getIndex(r)+1).reduce((i,a)=>i+a.getSize(),0),Qe(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(),Gr(a)){if(a.touches&&a.touches.length>1)return}let l=e.getSize(),d=e?e.getLeafHeaders().map((k)=>[k.column.id,k.column.getSize()]):[[s.id,s.getSize()]],c=Gr(a)?Math.round(a.touches[0].clientX):a.clientX,p={},f=(k,U)=>{if(typeof U!=="number")return;if(n.setColumnSizingInfo((V)=>{var X,ee;let ie=n.options.columnResizeDirection==="rtl"?-1:1,ye=(U-((X=V==null?void 0:V.startOffset)!=null?X:0))*ie,te=Math.max(ye/((ee=V==null?void 0:V.startSize)!=null?ee:0),-0.999999);return V.columnSizingStart.forEach((je)=>{let[T,xe]=je;p[T]=Math.round(Math.max(xe+xe*te,0)*100)/100}),{...V,deltaOffset:ye,deltaPercentage:te}}),n.options.columnResizeMode==="onChange"||k==="end")n.setColumnSizing((V)=>({...V,...p}))},v=(k)=>f("move",k),g=(k)=>{f("end",k),n.setColumnSizingInfo((U)=>({...U,isResizingColumn:!1,startOffset:null,startSize:null,deltaOffset:null,deltaPercentage:null,columnSizingStart:[]}))},h=yp(r),y={moveHandler:(k)=>v(k.clientX),upHandler:(k)=>{h==null||h.removeEventListener("mousemove",y.moveHandler),h==null||h.removeEventListener("mouseup",y.upHandler),g(k.clientX)}},x={moveHandler:(k)=>{if(k.cancelable)k.preventDefault(),k.stopPropagation();return v(k.touches[0].clientX),!1},upHandler:(k)=>{var U;if(h==null||h.removeEventListener("touchmove",x.moveHandler),h==null||h.removeEventListener("touchend",x.upHandler),k.cancelable)k.preventDefault(),k.stopPropagation();g((U=k.touches[0])==null?void 0:U.clientX)}},b=bp()?{passive:!1}:!1;if(Gr(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((k)=>({...k,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?Hr():(r=e.initialState.columnSizingInfo)!=null?r:Hr())},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}}},ko=null;function bp(){if(typeof ko==="boolean")return ko;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 ko=e,ko}function Gr(e){return e.type==="touchstart"}var Sp={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=Ke(()=>[e.getAllCells(),n.getState().columnVisibility],(r)=>r.filter((s)=>s.column.getIsVisible()),Qe(n.options,"debugRows","_getAllVisibleCells")),e.getVisibleCells=Ke(()=>[e.getLeftVisibleCells(),e.getCenterVisibleCells(),e.getRightVisibleCells()],(r,s,i)=>[...r,...s,...i],Qe(n.options,"debugRows","getVisibleCells"))},createTable:(e)=>{let n=(r,s)=>Ke(()=>[s(),s().filter((i)=>i.getIsVisible()).map((i)=>i.id).join("_")],(i)=>i.filter((a)=>a.getIsVisible==null?void 0:a.getIsVisible()),Qe(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 co(e,n){return!n?e.getVisibleLeafColumns():n==="center"?e.getCenterVisibleLeafColumns():n==="left"?e.getLeftVisibleLeafColumns():e.getRightVisibleLeafColumns()}var Cp={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()}}},Fp={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 Po(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)}}},Ip={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()}}}},Jr=0,Zr=10,Wr=()=>({pageIndex:Jr,pageSize:Zr}),Ep={getInitialState:(e)=>({...e,pagination:{...Wr(),...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)=>un(s,a);return e.options.onPaginationChange==null?void 0:e.options.onPaginationChange(i)},e.resetPagination=(s)=>{var i;e.setPagination(s?Wr():(i=e.initialState.pagination)!=null?i:Wr())},e.setPageIndex=(s)=>{e.setPagination((i)=>{let a=un(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?Jr:(i=(a=e.initialState)==null||(a=a.pagination)==null?void 0:a.pageIndex)!=null?i:Jr)},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,un(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=un(s,(a=e.options.pageCount)!=null?a:-1);if(typeof l==="number")l=Math.max(-1,l);return{...i,pageCount:l}}),e.getPageOptions=Ke(()=>[e.getPageCount()],(s)=>{let i=[];if(s&&s>0)i=[...Array(s)].fill(null).map((a,l)=>l);return i},Qe(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}}},Xr=()=>({top:[],bottom:[]}),_p={getInitialState:(e)=>({rowPinning:Xr(),...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?Xr():(r=(s=e.initialState)==null?void 0:s.rowPinning)!=null?r:Xr())},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=Ke(()=>[e.getRowModel().rows,e.getState().rowPinning.top],(n,r)=>e._getPinnedRows(n,r,"top"),Qe(e.options,"debugRows","getTopRows")),e.getBottomRows=Ke(()=>[e.getRowModel().rows,e.getState().rowPinning.bottom],(n,r)=>e._getPinnedRows(n,r,"bottom"),Qe(e.options,"debugRows","getBottomRows")),e.getCenterRows=Ke(()=>[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))},Qe(e.options,"debugRows","getCenterRows"))}},Mp={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=Ke(()=>[e.getState().rowSelection,e.getCoreRowModel()],(n,r)=>{if(!Object.keys(n).length)return{rows:[],flatRows:[],rowsById:{}};return Yr(e,r)},Qe(e.options,"debugTable","getSelectedRowModel")),e.getFilteredSelectedRowModel=Ke(()=>[e.getState().rowSelection,e.getFilteredRowModel()],(n,r)=>{if(!Object.keys(n).length)return{rows:[],flatRows:[],rowsById:{}};return Yr(e,r)},Qe(e.options,"debugTable","getFilteredSelectedRowModel")),e.getGroupedSelectedRowModel=Ke(()=>[e.getState().rowSelection,e.getSortedRowModel()],(n,r)=>{if(!Object.keys(n).length)return{rows:[],flatRows:[],rowsById:{}};return Yr(e,r)},Qe(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 Yr(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,Tp=(e,n,r)=>ll(pn(e.getValue(r)).toLowerCase(),pn(n.getValue(r)).toLowerCase()),Np=(e,n,r)=>ll(pn(e.getValue(r)),pn(n.getValue(r))),Op=(e,n,r)=>ls(pn(e.getValue(r)).toLowerCase(),pn(n.getValue(r)).toLowerCase()),$p=(e,n,r)=>ls(pn(e.getValue(r)),pn(n.getValue(r))),Lp=(e,n,r)=>{let s=e.getValue(r),i=n.getValue(r);return s>i?1:s<i?-1:0},Vp=(e,n,r)=>ls(e.getValue(r),n.getValue(r));function ls(e,n){return e===n?0:e>n?1:-1}function pn(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 ll(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 uo={alphanumeric:Tp,alphanumericCaseSensitive:Np,text:Op,textCaseSensitive:$p,datetime:Lp,basic:Vp},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 uo.datetime;if(typeof a==="string"){if(s=!0,a.split(ss).length>1)return uo.alphanumeric}}if(s)return uo.text;return uo.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 Po(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:uo[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()}}},Kp=[Vc,Sp,vp,wp,Hc,Gc,Cp,Fp,Hp,pp,Ip,Ep,_p,Mp,xp];function dl(e){var n,r;let s=[...Kp,...(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=un(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:Ke(()=>[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}},Qe(e,"debugColumns","_getDefaultColumnDef")),_getColumnDefs:()=>i.options.columns,getAllColumns:Ke(()=>[i._getColumnDefs()],(g)=>{let h=function(y,x,b){if(b===void 0)b=0;return y.map((k)=>{let U=jc(i,k,b,x),V=k;return U.columns=V.columns?h(V.columns,U,b+1):[],U})};return h(g)},Qe(e,"debugColumns","getAllColumns")),getAllFlatColumns:Ke(()=>[i.getAllColumns()],(g)=>g.flatMap((h)=>h.getFlatColumns()),Qe(e,"debugColumns","getAllFlatColumns")),_getAllFlatColumnsById:Ke(()=>[i.getAllFlatColumns()],(g)=>g.reduce((h,y)=>(h[y.id]=y,h),{}),Qe(e,"debugColumns","getAllFlatColumnsById")),getAllLeafColumns:Ke(()=>[i.getAllColumns(),i._getOrderColumnsFn()],(g,h)=>{let y=g.flatMap((x)=>x.getLeafColumns());return h(y)},Qe(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 ul(){return(e)=>Ke(()=>[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=qc(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},Qe(e.options,"debugTable","getRowModel",()=>e._autoResetPageIndex()))}function cl(e,n){return!e?null:Xp(e)?q(e,n):e}function Xp(e){return Qp(e)||typeof e==="function"||Jp(e)}function Qp(e){return typeof e==="function"&&(()=>{let n=Object.getPrototypeOf(e);return n.prototype&&n.prototype.isReactComponent})()}function Jp(e){return typeof e==="object"&&typeof e.$$typeof==="symbol"&&["react.memo","react.forward_ref"].includes(e.$$typeof.description)}function pl(e){let n={state:{},onStateChange:()=>{},renderFallbackValue:null,...e},[r]=u(()=>({current:dl(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 Zp({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:k,isDropTarget:U}=Or({id:`reorder-after-${e.id}`,data:{type:"reorder",item:e,position:"after"},disabled:!r||h||!y}),{ref:V,isDropTarget:X}=Or({id:`browser:${e.id}`,data:{type:e.type,id:e.id,item:e},disabled:!y}),ee=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]),ie=c&&p===e.id,ye=X&&ee||ie;return o("div",{ref:(te)=>{V(te),d(te)},"data-index":l.index,onDragEnter:c&&e.type==="folder"?()=>{f?.(e.id)}:void 0,onDragLeave:c&&e.type==="folder"?(te)=>{if(!te.currentTarget.contains(te.relatedTarget))f?.(null)}:void 0,onDragOver:c&&e.type==="folder"?(te)=>{te.preventDefault()}:void 0,onDrop:c&&e.type==="folder"?async(te)=>{te.preventDefault(),te.stopPropagation(),v?.();let je=await Ya(te.dataTransfer);g?.(je,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",U&&"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:k,className:"p-0 m-0 leading-none bg-transparent pointer-events-auto h-[2px] w-full"})]})}function fl({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:k,formatCount:U,formatSize:V,totalFoldersSize:X,totalFilesSize:ee,handleEmptyAreaClick:ie,dragState:ye,sort:te,isExternalDragging:je,externalOverFolderId:T,setExternalOverFolderId:xe,resetExternalDragState:pe,onExternalDrop:oe}){let[ae,He]=u({}),lt=D(()=>{let Ye=[{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((Se)=>{let Ge=Se.config?.type?pa[Se.config.type]:null;Ye.push({id:Se.id,header:()=>o("div",{className:"flex items-center gap-1.5 truncate",children:[Ge&&t(Ge,{className:"h-3.5 w-3.5 text-muted-foreground shrink-0"}),t("span",{className:"truncate",children:Se.config?.name||Se.id})]}),size:150,minSize:100})}),Ye},[l]),dt=pl({data:[],columns:lt,columnResizeMode:"onChange",getCoreRowModel:ul(),state:{columnSizing:ae},onColumnSizingChange:He}),We=D(()=>{let Ye=[],Se=r??e.length;if(Se>0){if(Ye.push({type:"header",kind:"folder"}),c)for(let ut=0;ut<Se;ut++)Ye.push({type:"item",kind:"folder",index:ut})}let Ge=s??n.length;if(Ge>0){if(Ye.push({type:"header",kind:"file"}),f)for(let ut=0;ut<Ge;ut++)Ye.push({type:"item",kind:"file",index:ut})}return Ye},[c,f,e.length,n.length,r,s]),j=_(null),be=Mo({count:We.length,getScrollElement:()=>j.current,estimateSize:()=>40,getItemKey:P((Ye)=>{let Se=We[Ye];if(!Se)return Ye;if(Se.type==="header")return`header-${Se.kind}`;return(Se.kind==="folder"?e[Se.index]:n[Se.index])?.id||`item-${Se.kind}-${Se.index}`},[We,e,n]),overscan:10}),Ve=be.getVirtualItems();return m(()=>{if(Ve.length===0)return;for(let Ye of Ve){let Se=We[Ye.index];if(Se?.type==="item"){let Ge=Se.kind==="folder"?!e[Se.index]:!n[Se.index],ut=Se.kind==="folder"?Se.index>=e.length-15:Se.index>=n.length-15;if(Se.kind==="folder"&&g&&!y){if(Ge||ut){b();break}}else if(Se.kind==="file"&&h&&!x){if(Ge||ut){k();break}}}}},[Ve,We,e.length,n.length,g,h,y,x,b,k]),t("div",{ref:j,className:"flex-1 overflow-auto",onClick:ie,children:o("div",{className:"w-full relative",style:{width:dt.getTotalSize(),minWidth:"100%"},children:[t("div",{className:"sticky top-0 z-30 bg-background border-b border-border flex flex-col",children:dt.getHeaderGroups().map((Ye)=>t("div",{className:"bg-muted/50 whitespace-nowrap flex",children:Ye.headers.map((Se)=>o("div",{className:E("px-4 py-2 text-left text-xs font-medium text-muted-foreground relative border-r flex items-center",Se.id==="name"&&"sticky left-0 z-40 bg-muted"),style:{width:Se.getSize()},children:[Se.isPlaceholder?null:cl(Se.column.columnDef.header,Se.getContext()),t("div",{onMouseDown:Se.getResizeHandler(),onTouchStart:Se.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",Se.column.getIsResizing()&&"bg-primary w-1")})]},Se.id))},Ye.id))}),t("div",{className:"relative",style:{height:`${be.getTotalSize()}px`},children:Ve.map((Ye)=>{let Se=We[Ye.index];if(Se.type==="header"){let ut=Se.kind==="folder",Rt=ut?r??e.length:s??n.length,re=ut?X??-1:ee??-1,Je=re>-1,vt=ut?c:f,Ct=ut?p:v,Oe=ut?e.length>0:n.length>0;return o("div",{ref:be.measureElement,"data-index":Ye.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(${Ye.start}px)`},onClick:(Ee)=>{Ee.stopPropagation(),Ct(!vt)},children:[o("div",{className:"px-4 py-2 sticky left-0 z-10 bg-card border-r flex items-center gap-2",style:{width:ae?.name||300,minWidth:ae?.name||300},children:[t(wr,{checked:Oe&&(ut?e.every((Ee)=>a.has(Ee.id)):n.every((Ee)=>a.has(Ee.id))),onCheckedChange:()=>{},onClick:(Ee)=>Ee.stopPropagation(),className:"h-4 w-4"}),t("div",{className:"p-1 rounded hover:bg-muted",children:vt?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:[U(Rt,!ut),Je?` • ${V(re)}`:""]})]}),t("div",{className:"flex-1 bg-card"})]},`header-${Se.kind}`)}let Ge=Se.kind==="folder"?e[Se.index]:n[Se.index];if(!Ge)return t("div",{ref:be.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(${Ye.start}px)`},children:t("div",{className:"h-4 bg-muted rounded w-1/4"})},`skeleton-${Se.kind}-${Se.index}`);return t(Zp,{item:Ge,renderItem:d,active:te?.field==="custom",dragState:ye,isSelected:i?.id===Ge.id,columnSizing:ae,virtualRow:Ye,measureElement:be.measureElement,isExternalDragging:je,externalOverFolderId:T,setExternalOverFolderId:xe,resetExternalDragState:pe,onExternalDrop:oe},Ge.id)})})]})})}S();S();var jt={SYSTEM:"system",TEAM:"team",PROJECT:"project"},ef={[jt.SYSTEM]:qn,[jt.TEAM]:qn,[jt.PROJECT]:Ri};function tf({field:e,index:n,isSelected:r,onSelect:s,isSortable:i}){let{ref:a,handleRef:l}=Ha({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(js,{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(dn,{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 ml({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=G();m(()=>{if(n)v.invalidateQueries({queryKey:["fields",e]})},[n,e,v]);let[g,h]=u(""),[y,x]=u({}),[b,k]=u(Cr.NONE),[U,V]=u(""),[X,ee]=u(""),[ie,ye]=u(""),[te,je]=u(Cr.NONE),[T,xe]=u(""),[pe,oe]=u([]),ae=A.api.projects[":projectId"].fields.order.$patch,{mutate:He}=B({mutationFn:async(J)=>{if(!(await ae(J)).ok)throw Error(Gf());return null}}),lt=A.api.projects[":projectId"].fields.$post,{mutate:dt}=B({mutationFn:async(J)=>{let R=await lt(J);if(!R.ok)throw Error(Hf());return await R.json()},onSuccess:(J)=>{let R={...J,visible:!0};i([...s,R]),f(!1),c(J.id),ut(J),M.success(vv())}}),We=A.api.fields[":fieldId"].$put,{mutate:j}=B({mutationFn:async(J)=>{let R=await We(J);if(!R.ok)throw Error(Cl());return await R.json()},onSuccess:(J)=>{let R=s.map((Q)=>Q.id===J.id?{...Q,...J}:Q);i(R),M.success(Cv())}}),be=A.api.fields[":fieldId"].$delete,{mutate:Ve}=B({mutationFn:async(J)=>{if(!(await be(J)).ok)throw Error(Gb());return null},onSuccess:(J,R)=>{let Q=s.filter((Ue)=>Ue.id!==R.param.fieldId);i(Q),c(null),M.success(wv())}}),Ye=D(()=>{let J=Array.from(new Set(s.map((R)=>(R.scope||jt.PROJECT).toLowerCase())));if(!J.includes(jt.PROJECT))J.push(jt.PROJECT);return J.map((R)=>({id:R,label:R===jt.SYSTEM?Ub():R===jt.TEAM?OT():R===jt.PROJECT?Dy():R.charAt(0).toUpperCase()+R.slice(1),icon:ef[R]||qn}))},[s]),Se=D(()=>s.filter((J)=>(J.scope||jt.PROJECT).toLowerCase()===a),[s,a]),Ge=D(()=>s.find((J)=>J.id===d),[s,d]),ut=(J)=>{if(J)h(J.config?.name||""),x(J.config||{}),k(J.config?.autofillSource??Cr.NONE),V(J.description||"");else h(""),x({}),k(Cr.NONE),V("")},Rt=(J)=>{f(!1),c(J.id),ut(J)},re=()=>{f(!0),c(null),ee(""),ye(""),je(Cr.NONE),xe(""),oe([])},Je=(J)=>{if(J.canceled)return;let{source:R}=J.operation;if(!so(R))return;let{initialIndex:Q,index:Ue}=R;if(Q===Ue)return;let at=mu(s,Se,Q,Ue);i(at),He({param:{projectId:e},json:at.map((It)=>({fieldId:It.id,visible:It.visible||!1}))})},vt=()=>{if(!X||!ie)return;let J=ie===Pr.select?{select:{options:pe}}:ie===Pr.selectMulti?{selectMulti:{options:pe}}:{};dt({param:{projectId:e},json:{config:{name:X,type:ie,autofillSource:te,...J},label:X,scope:a===jt.PROJECT?void 0:a,description:T}})},Ct=()=>{if(!Ge)return;j({param:{fieldId:Ge.id},json:{config:{...Ge.config,...y,name:g,autofillSource:b},description:U}})},Oe=()=>{if(!Ge)return;if(confirm(sy()))Ve({param:{fieldId:Ge.id}})},Ee=()=>{if(p)return o("div",{className:"space-y-4",children:[o("div",{className:"space-y-2",children:[t(W,{children:Qf()}),t(z,{value:X,onChange:(R)=>ee(R.target.value),placeholder:xv()})]}),o("div",{className:"space-y-2",children:[t(W,{children:Kf()}),o(ge,{children:[t(Ae,{asChild:!0,children:o(C,{variant:"outline",className:"w-full justify-between",children:[ie?t("span",{className:"capitalize",children:ie.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((R)=>t(K,{onClick:()=>{ye(R),oe([])},className:"capitalize",children:R.replace(/_/g," ")},R))})]})]}),o("div",{className:"space-y-2",children:[t(W,{children:Sl()}),t(z,{value:T,onChange:(R)=>xe(R.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(Wl,{})]}),o(Ro,{type:"single",value:te,onValueChange:(R)=>{if(R)je(R)},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:Bc()}),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:Uc()})]})]}),(ie===Pr.select||ie===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 R={id:Uo(),displayName:Td(),color:Ni(pe)};oe([...pe,R])},children:[t(fe,{className:"h-4 w-4 mr-2"})," ",cd()]})]}),t("div",{className:"space-y-2 max-h-40 overflow-y-auto pr-1",children:pe.map((R,Q)=>o("div",{className:"flex items-center gap-2",children:[t(z,{value:R.displayName,onChange:(Ue)=>{let at=[...pe];at[Q]={...R,displayName:Ue.target.value},oe(at)},placeholder:gp()}),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:Pi[R.color||""]?.hex||R.color||"#808080"}})}),t(yt,{className:"p-2 w-auto",align:"end",children:t("div",{className:"flex gap-1",children:fa.map((Ue)=>t("button",{type:"button",className:"w-5 h-5 rounded-full border cursor-pointer hover:scale-110 transition-transform",style:{backgroundColor:Pi[Ue]?.hex||Ue},onClick:()=>{let at=[...pe];at[Q]={...R,color:Ue},oe(at)}},Ue))})})]}),t(C,{variant:"ghost",size:"icon",onClick:()=>{oe(pe.filter((Ue,at)=>at!==Q))},children:t(Pe,{className:"h-4 w-4"})})]},R.id||Q))})]})]});if(!Ge)return t("div",{className:"text-muted-foreground text-sm",children:dI()});let J=Ge.readOnly;return o("div",{className:"space-y-6",children:[o("div",{className:"flex items-center justify-between",children:[t(z,{value:g,onChange:(R)=>h(R.target.value),disabled:J,className:"font-medium"}),J&&t(on,{className:"h-4 w-4 text-muted-foreground ml-2"})]}),o("div",{className:"text-sm text-muted-foreground",children:[I1()," ",t("span",{className:"capitalize",children:Ge.config?.type?.replace(/_/g," ")})]}),o("div",{className:"space-y-2",children:[t(W,{children:Sl()}),t(z,{value:U,onChange:(R)=>V(R.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(Wl,{})]}),o(Ro,{type:"single",value:p?te:b,onValueChange:(R)=>{if(R)if(p)je(R);else k(R)},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:Bc()}),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:Uc()})]})]}),(Ge.config?.type==="select"||Ge.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 R=(Ge.config?.type==="select"?y.select?.options:y.selectMulti?.options)||[],Q={id:Uo(),displayName:Td(),color:Ni(R)},Ue=[...R,Q];x({...y,[Ge.config?.type==="select"?"select":"selectMulti"]:{options:Ue}})},children:[t(fe,{className:"h-4 w-4 mr-2"})," ",cd()]})]}),t("div",{className:"space-y-2",children:((Ge.config?.type==="select"?y.select?.options:y.selectMulti?.options)||[]).map((R,Q)=>o("div",{className:"flex items-center gap-2",children:[t(z,{value:R.displayName,onChange:(Ue)=>{let at=[...(Ge.config?.type==="select"?y.select?.options:y.selectMulti?.options)||[]];at[Q]={...R,displayName:Ue.target.value},x({...y,[Ge.config?.type==="select"?"select":"selectMulti"]:{options:at}})}}),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:Pi[R.color||""]?.hex||R.color||"#808080"},disabled:J})}),!J&&t(yt,{className:"p-2 w-auto",align:"end",children:t("div",{className:"flex gap-1",children:fa.map((Ue)=>t("button",{type:"button",className:"w-5 h-5 rounded-full border cursor-pointer hover:scale-110 transition-transform",style:{backgroundColor:Pi[Ue]?.hex||Ue},onClick:()=>{let at=[...(Ge.config?.type==="select"?y.select?.options:y.selectMulti?.options)||[]];at[Q]={...R,color:Ue},x({...y,[Ge.config?.type==="select"?"select":"selectMulti"]:{options:at}})}},Ue))})})]}),t(C,{variant:"ghost",size:"icon",onClick:()=>{let Ue=((Ge.config?.type==="select"?y.select?.options:y.selectMulti?.options)||[]).filter((at,It)=>It!==Q);x({...y,[Ge.config?.type==="select"?"select":"selectMulti"]:{options:Ue}})},children:t(Pe,{className:"h-4 w-4"})})]},Q))})]}),!J&&Ge.scope?.toLowerCase()!=="system"&&t("div",{className:"pt-4 flex justify-between",children:t(C,{variant:"outline",onClick:Oe,className:"text-destructive hover:bg-destructive/10",children:Qy()})})]})};return t(de,{open:n,onOpenChange:r,children:o(le,{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(ce,{children:tp()})}),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:uw()}),Ye.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:Ye.find((J)=>J.id===a)?.label}),a===jt.PROJECT&&o(C,{size:"sm",variant:"outline",className:"h-8",onClick:re,children:[aS()," ",t(fe,{className:"ml-1 h-3 w-3"})]})]}),o("div",{className:"flex-1 overflow-y-auto p-2 space-y-1",children:[t(Vn,{sensors:[_n.configure({activationConstraints:[new Dr.Distance({value:8})]}),es],onDragEnd:Je,children:Se.map((J,R)=>t(tf,{field:J,index:R,isSelected:d===J.id,onSelect:Rt,isSortable:!0},J.id))}),Se.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:Ee()}),(p||Ge&&!Ge.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&&Ge)ut(Ge)},children:Ne()}),t(C,{onClick:p?vt:Ct,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 Ao({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:Fl(),type:"text"},{id:"createdAt",label:bv(),type:"date"},{id:"updatedAt",label:Ev(),type:"date"},{id:"sizeByte",label:Sv(),type:"number"}],x=e.map((b)=>({id:b.id,label:b.config?.name||b.description||An(),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 k=[...n];if(k[y]={...k[y],[x]:b},x==="field"){let U=f.find((V)=>V.id===b);if(U)k[y].operator=of(U.type),k[y].value=""}if(x==="operator"){let U=f.find((V)=>V.id===k[y].field);if(U&&(U.type==="select"||U.type==="selectMulti")){let V=n[y].operator,X=b,ee=us(U.type,V),ie=us(U.type,X);if(ee&&!ie){let ye=Array.isArray(k[y].value)?k[y].value:[];k[y].value=ye[0]||""}else if(!ee&&ie){let ye=k[y].value;k[y].value=ye?[ye]:[]}}}r(k)};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?Nv():kv()}),o("div",{className:"flex-1 flex items-center gap-2",children:[o(Fe,{value:y.field,onValueChange:(b)=>h(x,"field",b),children:[t(Ze,{className:"w-[180px]",children:t(Le,{placeholder:uI()})}),t(Be,{children:f.map((b)=>t(ne,{value:b.id,children:b.label},b.id))})]}),o(Fe,{value:y.operator,onValueChange:(b)=>h(x,"operator",b),children:[t(Ze,{className:"w-[140px]",children:t(Le,{placeholder:HS()})}),t(Be,{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:WA()})})]})}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:Ml()},{value:"neq",label:kd()},{value:"contains",label:$S()},{value:"notContains",label:GS()},{value:"isEmpty",label:kl()},{value:"isNotEmpty",label:Rl()}];switch(n){case"text":return[{value:"eq",label:Ml()},{value:"neq",label:kd()},{value:"isEmpty",label:kl()},{value:"isNotEmpty",label:Rl()}];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:kl()},{value:"isNotEmpty",label:Rl()}];case"select":return[{value:"eq",label:Ml()},{value:"neq",label:kd()},{value:"in",label:YS()},{value:"notIn",label:eE()},{value:"isEmpty",label:kl()},{value:"isNotEmpty",label:Rl()}];case"selectMulti":return[{value:"hasAny",label:QS()},{value:"hasAll",label:VS()},{value:"eq",label:XS()},{value:"hasNone",label:KS()},{value:"isEmpty",label:kl()},{value:"isNotEmpty",label:Rl()}];case"date":return[{value:"eq",label:Ml()},{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:kl()},{value:"isNotEmpty",label:Rl()}];case"toggle":return[{value:"eq",label:Ml()}];default:return[{value:"eq",label:Ml()}]}}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(Re,{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(Fe,{value:r,onValueChange:s,children:[t(Ze,{children:t(Le,{placeholder:gI()})}),t(Be,{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:Uy()},{value:"yesterday",label:qy()},{value:"tomorrow",label:zy()},{value:"one week ago",label:Zy()},{value:"one week from now",label:By()},{value:"one month ago",label:Fy()},{value:"one month from now",label:Ly()}],a=i.some((l)=>l.value===r);return o("div",{className:"flex gap-2",children:[o(Fe,{value:a?r:"exact",onValueChange:(l)=>{if(l==="exact")s("");else s(l)},children:[t(Ze,{className:"w-[140px]",children:t(Le,{placeholder:jy()})}),o(Be,{children:[i.map((l)=>t(ne,{value:l.value,children:l.label},l.value)),t(ne,{value:"exact",children:zb()})]})]}),!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(Fe,{value:r===!0?"true":"false",onValueChange:(i)=>s(i==="true"),children:[t(Ze,{children:t(Le,{})}),o(Be,{children:[t(ne,{value:"true",children:n1()}),t(ne,{value:"false",children:o1()})]})]});return t(ds,{type:"text",placeholder:Db(),value:r,onChange:s})}S();function gl({open:e,onOpenChange:n,teamId:r,projectId:s,assetId:i,fields:a,initialConditions:l,onApply:d}){let c=ke(),p=G(),f=D(()=>{let re=l.find((Je)=>Je.field==="name"&&Je.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,k]=u(f),[U,V]=u(f),[X,ee]=u(!1),{data:ie}=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=ie?.semanticSearchEnabled??!1;m(()=>{if(e)k(f),V(f),h(v),ee(!1);else k(""),V(""),h([]),ee(!1)},[e,f,v]);let te=D(()=>{let re=[...g],Je=U;if(Je.trim()&&!X)re.push({field:"name",operator:"contains",value:Je.trim()});return re},[X,U,g]),je=D(()=>U.trim()!==""||g.some((Je)=>String(Je.value||"").trim()!==""),[U,g]),{mutate:T,isPending:xe}=B({mutationFn:async()=>{let re=U,Je=re.trim();if(!Je&&g.length>0){let Ct=g[0];Je=`${a.find((J)=>J.id===Ct.field)?.config?.name||Ct.field} ${Ct.operator} ${Ct.value}`}if(!Je)Je=TA();let vt=await A.api.projects[":projectId"].collections.$post({param:{projectId:s},json:{name:Je,filter:{sourceFolderId:i,searchFilter:{conditions:te,recursively:!0,query:re.trim(),isSemantic:X}}}});if(!vt.ok)throw Error(Xb());return await vt.json()},onSuccess:(re)=>{p.invalidateQueries({queryKey:["collections",s]}),M.success(W_()),n(!1),c({to:"/projects/$projectId/collections/$collectionId",params:{projectId:s,collectionId:re.id}})},onError:(re)=>{M.error(`Error: ${re.message}`)}}),{ref:pe,inView:oe}=Nt(),{data:ae,isLoading:He,isFetchingNextPage:lt,fetchNextPage:dt,hasNextPage:We,error:j}=mt({queryKey:["search-preview",r,i,te,X,U],queryFn:async({pageParam:re})=>{let Je=U,vt=await A.api.folders[":folderId"].search.$post({param:{folderId:i},json:{assetType:void 0,conditions:te,recursively:!0,query:Je.trim(),isSemantic:X,first:20,after:re}});if(!vt.ok){let Ct=await vt.json().catch(()=>({}));throw Error(Ct.message||nA())}return await vt.json()},enabled:e&&je,staleTime:500,retry:!1,initialPageParam:"",getNextPageParam:(re)=>re.pageInfo?.cursor||void 0});m(()=>{if(oe&&We&&!lt)dt()},[oe,We,lt,dt]);let be=D(()=>ae?.pages.flatMap((re)=>re.data)||[],[ae]),Ve=ae?.pages[0]?.pageInfo?.total||0,Ye=(re)=>{if(re===10001)return"10000+";return re.toString()},Se=()=>{d(te),n(!1)},Ge=()=>{h([])},ut=(re)=>{if(re.type==="folder")window.open(`/projects/${s}/folders/${re.id}`,"_blank","noopener,noreferrer");else{let Je=re.versionStack?re.versionStack.id:re.id,vt=new URLSearchParams;if(re.startTime!==void 0&&re.startTime!==null&&re.startTime>0)vt.set("start",String(re.startTime));let Ct=vt.toString()?`?${vt.toString()}`:"";window.open(`/projects/${s}/files/${Je}${Ct}`,"_blank","noopener,noreferrer")}},Rt=g.filter((re)=>re.value!=="").length;return t(de,{open:e,onOpenChange:n,children:o(le,{className:"sm:max-w-4xl lg:max-w-5xl p-0 gap-0 overflow-hidden bg-background border-border rounded-2xl shadow-2xl flex flex-col h-[85vh]",children:[t(me,{className:"px-6 pt-3 pb-0 text-left",children:t(ce,{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(),V(b.trim())},className:"flex flex-col gap-3 mt-2",children:[o("div",{className:"relative",children:[t(z,{value:b,onChange:(re)=>k(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:()=>{k(""),V("")},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(Pe,{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)=>{ee(re),k(""),V(""),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:Dv()})]}),Rt>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:[Rt," ",VA()]})]}),Rt>0&&t("button",{type:"button",onClick:(re)=>{re.stopPropagation(),Ge()},className:"text-[11px] font-medium text-destructive hover:text-destructive/80 underline underline-offset-2 transition-colors",children:UC()})]}),y&&t(ue,{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(Ao,{fields:a,conditions:g,onChange:h,excludeFields:["name"],hidePrefix:!0,className:"p-0 bg-transparent space-y-2"})})})]}),t(ue,{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()}),He&&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()]})]}),!je?o("div",{className:"border border-border rounded-xl 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:T1()}),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()})]}):j?o("div",{className:"border border-border rounded-xl py-12 px-4 text-center flex flex-col items-center justify-center bg-muted/20",children:[t(nr,{className:"w-10 h-10 text-destructive/50 mb-2"}),t("h3",{className:"text-sm font-semibold text-foreground/80",children:nA()}),t("p",{className:"text-xs text-muted-foreground max-w-sm mt-1 mx-auto",children:j.message.includes("Embedding agent not configured")?kb():j.message})]}):He?t("div",{className:"grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-4 gap-4",children:Array.from({length:8}).map((re,Je)=>o("div",{className:"flex flex-col rounded-xl border border-border bg-card p-2 space-y-2 animate-pulse",children:[t("div",{className:"aspect-square w-full rounded-lg bg-muted/60"}),o("div",{className:"p-1 space-y-1.5",children:[t("div",{className:"h-4 bg-muted/60 rounded w-3/4"}),t("div",{className:"h-3 bg-muted/40 rounded w-1/2"})]})]},Je))}):be.length===0?o("div",{className:"border border-border rounded-xl py-12 px-4 text-center flex flex-col items-center justify-center bg-muted/20",children:[t(nr,{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:m1()})]}):o(L,{children:[t("div",{className:"grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-4 gap-4",children:be.map((re)=>{let Je=re.startTime!=null&&re.endTime!=null?`${re.id}-${re.startTime}-${re.endTime}`:re.id;if(re.type==="folder")return t(Qa,{item:re,hideCheckbox:!0,hideActions:!0,disabled:!0,onSelect:()=>ut(re)},Je);return t(Va,{teamId:r,item:re,hideCheckbox:!0,hideActions:!0,disabled:!0,onSelect:()=>ut(re)},Je)})}),(We||lt)&&t("div",{ref:pe,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:Ye(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:!je||xe||X,onClick:()=>T(),children:xe?o(L,{children:[t(O,{className:"mr-2 h-3 w-3 animate-spin"}),Dp()]}):KC()}),t(C,{size:"xs",className:"h-8 text-[10px] font-semibold uppercase tracking-wider",onClick:X?()=>n(!1):Se,children:X?Da():u_()})]})]})]})})}S();function hl({fields:e,sort:n,onSortChange:r,disabled:s}){let i=D(()=>{let g=[{id:"custom",label:Bp()},{id:"name",label:Fl()},{id:"createdAt",label:Up()},{id:"updatedAt",label:aT()},{id:"sizeByte",label:jp()}],h=e.map((y)=>({id:y.id,label:y.config?.name||y.description||An()}));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:Wc(),desc:Xc()};if(["createdAt","updatedAt"].includes(g))return{asc:Jc(),desc:Yc()};if(g==="sizeByte")return{asc:qp(),desc:zp()};return{asc:Rf(),desc:Uf()}})(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?cT({field:l.label}):Ol()})}),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:Ol()}),o(Fe,{value:a,onValueChange:f,children:[t(Ze,{className:"w-full",children:t(Le,{})}),t(Be,{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:Ap()}),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(cu,{className:"size-4 opacity-50"})]})]})]})})]})}function vl({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,k]=u(!1),[U,V]=u(!1),[X,ee]=u(!1),[ie,ye]=u(!1),te=ke(),je=i.length,T=!!f,xe=G(),pe=_r((Q)=>Boolean(Q.metadata["appearance.hideAgent"])),{data:oe}=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}),ae=()=>{if(r===g)te({to:"/projects/$projectId/agentsmd",params:{projectId:n}});else te({to:"/projects/$projectId/folders/$folderId/agentsmd",params:{projectId:n,folderId:r}})},{data:He,refetch:lt}=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:dt}=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:We}=Z({queryKey:["teams",dt?.teamId,"members"],queryFn:async()=>{let Q=await A.api.teams[":teamId"].members.$get({param:{teamId:dt?.teamId||""},query:{}});if(!Q.ok)throw Error("Failed to fetch team members");return await Q.json()},enabled:!!dt?.teamId&&X}),{data:j,refetch:be}=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,Ye=B({mutationFn:async(Q)=>{let Ue=await Ve(Q);if(!Ue.ok)throw Error("Failed to invite");return await Ue.json()}}),Se=A.api.projects[":projectId"].members.$post,Ge=B({mutationFn:async(Q)=>{let Ue=await Se(Q);if(!Ue.ok)throw Error("Failed to add project member");return await Ue.json()},onSuccess:()=>{xe.invalidateQueries({queryKey:["projects",n,"members"]}),xe.invalidateQueries({queryKey:["projects",n,"me"]})}}),ut=()=>{x(!1),V(!0)},Rt=async(Q)=>(await Ye.mutateAsync({param:{projectId:n},json:{role:Q}})).code,re=(Q)=>{if(ee(Q),Q)lt(),be()},Je=Array.isArray(He)?He:[],Ct=(Array.isArray(We)?We:[]).filter((Q)=>!Je.some((Ue)=>Ue.id===Q.id)),Oe=async(Q,Ue)=>{await Ge.mutateAsync({param:{projectId:n},json:{userId:Q,role:Ue}})},Ee=B({mutationFn:async({userId:Q,role:Ue})=>{if(!(await A.api.projects[":projectId"].members[":userId"].$patch({param:{projectId:n,userId:Q},json:{role:Ue}})).ok)throw Error("Failed to update member role")},onSuccess:()=>{xe.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:()=>{xe.invalidateQueries({queryKey:["projects",n,"members"]})}}),R=(Q)=>{if(!Q)return"??";return Q.split(" ").map((Ue)=>Ue[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:Vf()})}),t(yt,{className:"w-auto p-0",align:"start",children:t(hm,{projectId:n,onManageFields:h?ut:void 0,onSave:()=>x(!1)})})]}),t(ao,{orientation:"vertical"}),t(hl,{fields:s,sort:l,onSortChange:d,disabled:c||p}),t(ao,{orientation:"vertical"}),T?o(L,{children:[o(At,{open:ie,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:oe?.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:je>0?"secondary":"ghost",size:"sm",children:[t("span",{children:"Filter"}),je>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:je})]})}),t(yt,{className:"w-[500px] p-0 overflow-hidden",align:"start",children:t("div",{className:"max-h-[80vh] overflow-y-auto",children:t(Ao,{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:()=>k(!0),disabled:c||p,variant:je>0?"secondary":"ghost",size:"sm",children:[t("span",{children:YC()}),je>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:je})]}),!c&&!p&&!pe&&o(L,{children:[t(ao,{orientation:"vertical"}),o(C,{onClick:ae,variant:"ghost",size:"sm",title:"AGENTS.md",className:E(oe?.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",oe?.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:q0()})]})]})]})]}),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:()=>re(!0),children:[He?.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:R(Q.name)})]},Q.id)),He&&He.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:["+",He.length-3]})]})}),t(ml,{projectId:n,open:U,onOpenChange:V}),t(Jl,{open:X,onOpenChange:re,title:OE(),type:"project",members:He||[],isOwner:j?.role==="owner",onInvite:Rt,onUpdateRole:async(Q,Ue)=>{await Ee.mutateAsync({userId:Q,role:Ue})},onRemoveMember:async(Q)=>{await J.mutateAsync(Q)},currentUserId:j?.id,availableMembersToAdd:Ct,onAddMember:Oe}),t(gl,{open:b,onOpenChange:k,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,k]=u(!1),[U,V]=u([]),X=G(),ee=A.api.folders.$post,{mutate:ie}=B({mutationFn:async(Oe)=>{let Ee=await ee(Oe);if(!Ee.ok)throw Error("Failed to create");return await Ee.json()}}),ye=A.api.folders[":folderId"].$put,{mutate:te}=B({mutationFn:async(Oe)=>{let Ee=await ye(Oe);if(!Ee.ok)throw Error("Failed to rename");return await Ee.json()}}),je=A.api.files[":fileId"].$put,{mutate:T}=B({mutationFn:async(Oe)=>{let Ee=await je(Oe);if(!Ee.ok)throw Error("Failed to rename");return await Ee.json()}}),xe=A.api.files.$delete,{mutate:pe}=B({mutationFn:async(Oe)=>{if(!(await xe(Oe)).ok)throw Error("Failed to delete")}}),oe=A.api.folders.$delete,{mutate:ae}=B({mutationFn:async(Oe)=>{if(!(await oe(Oe)).ok)throw Error("Failed to delete");return null}}),He=A.api.files.restore.$post,{mutate:lt}=B({mutationFn:async(Oe)=>{if(!(await He(Oe)).ok)throw Error("Failed to restore")}}),dt=A.api.folders.restore.$post,{mutate:We}=B({mutationFn:async(Oe)=>{if(!(await dt(Oe)).ok)throw Error("Failed to restore");return null}}),j=A.api.files["download-links"].$post,{mutateAsync:be}=B({mutationFn:async(Oe)=>{let Ee=await j(Oe);if(!Ee.ok)throw Error("Failed to get download links");return await Ee.json()}}),Ve=(Oe)=>{p(Oe.id)},Ye=()=>{let Oe=g.filter((J)=>J.type==="file"||J.type==="version_stack").map((J)=>J.id),Ee=g.filter((J)=>J.type==="folder").map((J)=>J.id);if(Oe.length>0)pe({json:{ids:Oe}},{onSuccess:()=>{X.invalidateQueries({queryKey:["search",e,r]})}});if(Ee.length>0)ae({json:{ids:Ee}},{onSuccess:()=>{X.invalidateQueries({queryKey:["search",e,r]}),X.invalidateQueries({queryKey:["folders"]})}});v(!1),h([])},Se=(Oe)=>{h(Oe),v(!0)},Ge=(Oe)=>{let Ee=Oe.filter((R)=>R.type==="file"||R.type==="version_stack").map((R)=>R.id),J=Oe.filter((R)=>R.type==="folder").map((R)=>R.id);if(Ee.length>0)lt({json:{ids:Ee}},{onSuccess:()=>{X.invalidateQueries({queryKey:["projects",n,"recently-deleted","file"]})}});if(J.length>0)We({json:{ids:J}},{onSuccess:()=>{X.invalidateQueries({queryKey:["projects",n,"recently-deleted","folder"]})}})},ut=async(Oe)=>{if(Oe.length===0)return;x(!0),k(!0),V([]);try{if(l&&d){let Ee=localStorage.getItem(`share_pwd_${d}`)||"",J=[];for(let R of Oe){let Q=R.media?.original?.key;if(!Q||!R.id)continue;let Ue=await A.api.shares[":shareId"].files[":fileId"]["download-url"].$post({param:{shareId:d,fileId:R.id},json:{key:Q}},{headers:{"x-share-password":Ee}});if(Ue.ok){let{url:at}=await Ue.json();J.push({id:R.id,name:R.name||"download",url:at})}}V(J)}else{let Ee=await be({json:{ids:Oe.map((J)=>J.id)}});V(Ee.files)}}catch(Ee){M.error("Failed to prepare download links"),x(!1),console.error(Ee)}finally{k(!1)}},Rt=async(Oe)=>{if(Oe.length===0)return;try{let J=(await be({json:{ids:Oe.map((Ue)=>Ue.id)}})).files;if(J.length===0)return;let R="";if(J.length===1)R=`Name: ${J[0].name}
12
+ Path: ${J[0].url}`;else R=J.map((Ue)=>`${Ue.name} ${Ue.url}`).join(`
13
+ `);if(await fo(R))M.success(fy())}catch(Ee){M.error("Failed to copy name and download link"),console.error(Ee)}};return{editingItemId:c,setEditingItemId:p,handleRename:Ve,handleDelete:Se,handleRestore:Ge,handleDownload:ut,handleCopyNameAndDownloadLink:Rt,handleNewFolder:(Oe)=>{ie({json:{name:Oe,parentId:r}},{onSuccess:(Ee)=>{if(X.invalidateQueries({queryKey:["search",e]}),X.invalidateQueries({queryKey:["folders"]}),Ee?.id)p(Ee.id)}})},handleAction:(Oe,Ee)=>{let R=a.has(Ee.id)?[...s,...i].filter((Q)=>a.has(Q.id)):[Ee];switch(Oe){case"rename":Ve(Ee);break;case"delete":Se(R);break;case"download":ut(R);break;case"restore":Ge(R);break;case"copy-name-and-download-link":Rt(R);break}},onRenameSubmit:(Oe,Ee)=>{if(Oe.type==="folder")te({param:{folderId:Oe.id},json:{name:Ee}},{onSuccess:()=>{X.invalidateQueries({queryKey:["search",e]}),X.invalidateQueries({queryKey:["folders"]})}});else T({param:{fileId:Oe.id},json:{name:Ee}},{onSuccess:()=>{X.invalidateQueries({queryKey:["search",e]}),X.invalidateQueries({queryKey:["folders"]})}})},isDeleteDialogOpen:f,setIsDeleteDialogOpen:v,itemsToDelete:g,confirmDelete:Ye,isDownloadDialogOpen:y,setIsDownloadDialogOpen:x,isLoadingLinks:b,resolvedFiles:U,startDownload:()=>{let Oe=[...U];if(x(!1),Oe.length===0)return;M.info(`Starting download of ${Oe.length} files. Please allow multiple downloads if prompted by your browser.`,{duration:5000});let Ee=(R)=>new Promise((Q)=>setTimeout(Q,R));(async()=>{for(let Q=0;Q<Oe.length;Q+=5){let Ue=Oe.slice(Q,Q+5);for(let at of Ue){let It=document.createElement("iframe");It.style.display="none",It.src=at.url,document.body.appendChild(It),window.setTimeout(()=>It.remove(),60000)}if(Q+5<Oe.length)await Ee(600)}M.success("All downloads initiated successfully")})().catch((R)=>{console.error("Background downloads failed:",R),M.error("Some downloads could not be started")})}}}var wl=[];function Mi({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:k,isFetchingNextFoldersPage:U,fetchNextFilesPage:V,hasNextFilesPage:X,isFetchingNextFilesPage:ee,isRecentlyDeleted:ie,isRecents:ye,isLoading:te=!1,filterConditions:je,onFilterChange:T,sort:xe,onSortChange:pe,dragState:oe,isShareView:ae,isPublic:He,onRemoveFromShare:lt,fieldVisibility:dt,collection:We,onUpdateCollection:j,rootFolderId:be,shareId:Ve,sharePassword:Ye,allowDownload:Se=!0}){let[Ge,ut]=u(null),[Rt,re]=u(null),[Je,vt]=u(null),[Ct,Oe]=u([]),[Ee,J]=u(!1),[R,Q]=u(null);m(()=>{if(p)Q(p)},[p]),m(()=>{if(f.size===0)Q(null)},[f.size]);let Ue=P((N,De)=>{Q(N),v(N,De)},[v]),at=G(),It=ke(),[Bn,Hn]=u(!1),[Fn,ze]=u(null),Pt=_(0),Wn=P(()=>{Hn(!1),ze(null),Pt.current=0},[]);m(()=>{let N=(De)=>{De.preventDefault()};return window.addEventListener("dragover",N),window.addEventListener("drop",N),()=>{window.removeEventListener("dragover",N),window.removeEventListener("drop",N)}},[]);let yl=(N)=>{if(!qt||ie||ye||ae||He||!!We)return;if(N.preventDefault(),N.dataTransfer.types.includes("Files"))Pt.current++,Hn(!0)},bl=(N)=>{if(!qt||ie||ye||ae||He||!!We)return;if(N.preventDefault(),N.dataTransfer.types.includes("Files")){if(Pt.current--,Pt.current<=0)Pt.current=0,Hn(!1),ze(null)}},Il=(N)=>{if(!qt||ie||ye||ae||He||!!We)return;N.preventDefault()},El=async(N)=>{if(!qt||ie||ye||ae||He||!!We)return;N.preventDefault(),N.stopPropagation();let De=await Ya(N.dataTransfer);if(Wn(),De.length>0)fn(De)},[cs,ps]=u([]),Dt=D(()=>{let N=new Set(i.map((pt)=>pt.id));return[...cs.filter((pt)=>!N.has(pt.id)),...i]},[i,cs]),Do=D(()=>{if(f.size===0)return null;if(R&&f.has(R.id))return R;if(p&&f.has(p.id))return p;return[...s,...Dt].find((De)=>f.has(De.id))||null},[f,R,p,s,Dt]);m(()=>{let N=(De)=>{if(De.key!==" "&&De.code!=="Space")return;if(Ee)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&&Do)De.preventDefault(),J(!0)};return window.addEventListener("keydown",N),()=>{window.removeEventListener("keydown",N)}},[Ee,f.size,Do]);let{data:_l}=Z({queryKey:["shares",n,"list"],queryFn:async()=>{let N=await A.api.projects[":projectId"].shares.$get({param:{projectId:n},query:{first:"100"}});if(!N.ok)throw Error("Failed to fetch share links");return await N.json()},enabled:!!n&&!He}),Nl=A.api.projects[":projectId"].reparent.$post,{mutate:Pl}=B({mutationFn:async(N)=>{if(!(await Nl(N)).ok)throw Error("Failed to move assets");return null}}),Al=A.api.projects[":projectId"].copy.$post,{mutate:Dl}=B({mutationFn:async(N)=>{if(!(await Al(N)).ok)throw Error("Failed to copy assets");return null}}),$l=async(N,De)=>{let pt=Ct.map((ft)=>ft.id);if(Je==="move")Pl({param:{projectId:n},json:{newParentId:N,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:N}})}}}),at.invalidateQueries({queryKey:["search",e]}),at.invalidateQueries({queryKey:["folders"]}),vt(null),Oe([]),x()},onError:(ft)=>{M.error(`Error: ${ft.message}`)}});else Dl({param:{projectId:n},json:{newParentId:N,assetIds:pt,withComments:De}},{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:N}})}}}),at.invalidateQueries({queryKey:["search",e]}),at.invalidateQueries({queryKey:["folders"]}),vt(null),Oe([]),x()},onError:(ft)=>{M.error(`Error: ${ft.message}`)}})},{mutate:zl}=B({mutationFn:async(N)=>{let De=N.length===1?N[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:De}});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:N.map((xt)=>xt.id)}})).ok)throw Error("Failed to add assets to share link");return ft},onSuccess:(N)=>{at.invalidateQueries({queryKey:["shares",n]}),M.success("Share link created",{action:{label:"View",onClick:()=>It({to:"/projects/$projectId/shares/$shareId",params:{projectId:n,shareId:N.id}})}})}}),{mutate:Ul}=B({mutationFn:async({shareId:N,items:De})=>{if(!(await A.api.shares[":shareId"].assets.$post({param:{shareId:N},json:{assetIds:De.map((ft)=>ft.id)}})).ok)throw Error("Failed to add assets");return{shareId:N}},onSuccess:({shareId:N})=>{M.success("Added to share link",{action:{label:"View",onClick:()=>It({to:"/projects/$projectId/shares/$shareId",params:{projectId:n,shareId:N}})}})}}),jl=(N)=>{zl(N)},Vl=(N,De)=>{Ul({shareId:N,items:De})},{editingItemId:ql,setEditingItemId:fs,handleNewFolder:Bl,handleDelete:Hl,handleRename:Gl,handleRestore:Kl,handleDownload:ms,handleCopyNameAndDownloadLink:Xl,handleAction:gs,onRenameSubmit:Ql,isDeleteDialogOpen:Yl,setIsDeleteDialogOpen:Zl,confirmDelete:ld,isDownloadDialogOpen:dd,setIsDownloadDialogOpen:Oo,isLoadingLinks:po,resolvedFiles:hs,startDownload:ud}=fu({teamId:e,projectId:n,assetId:r,folders:s,files:Dt,selectedIds:f,isPublic:He,shareId:Ve}),[fd,$o]=u(!1),{mutate:md,isPending:zo}=B({mutationFn:async()=>{let N=await A.api.projects[":projectId"]["empty-trash"].$post({param:{projectId:n}});if(!N.ok)throw Error("Failed to empty trash");return await N.json()},onSuccess:()=>{M.success("Trash emptied successfully"),at.invalidateQueries({queryKey:["projects",n,"recently-deleted"]}),x(),$o(!1)},onError:(N)=>{M.error(`Error emptying trash: ${N.message}`)}}),gd=A.api.teams[":teamId"].upload.tasks.$post,{mutate:vs}=B({mutationFn:async(N)=>{let De=await gd(N);if(!De.ok)throw Error("Failed to create upload task");return await De.json()},onMutate:()=>({files:[...wl]}),onSuccess:async(N,De,pt)=>{let ft=pt?.files||[],Ft=De.json.parentId===r,xt=ft.map((St)=>{let wt=N.createdAssets?.find((Bt)=>Bt.tempId===St.id),Jt=N.presignedUrls?.find((Bt)=>Bt.id===St.id);return{fileId:wt?.assetId||Jt?.fileId||St.id,name:St.file.name,size:St.file.size}}).filter((St)=>!!St.fileId),Yt=ft.filter((St)=>!St.file.name.startsWith(".")),nn=Yt.length===1?Yt[0].file.name:`${Yt.length} Items`;if(N.taskId)vd(N.taskId,nn,xt);if(Ft){let St=ft.filter((wt)=>(wt.file.webkitRelativePath||wt.file.name).split("/").length===1).map((wt)=>{let Jt=N.createdAssets?.find((Yn)=>Yn.tempId===wt.id),Bt=N.presignedUrls?.find((Yn)=>Yn.id===wt.id),In=Jt?.assetId||Bt?.fileId||wt.id,Qn=!!Bt&&!!Bt.url;return{id:In,name:wt.file.name,sizeByte:wt.file.size,fileCount:0,type:"file",status:Qn?"uploading":"error",proxyType:wt.file.name.toLowerCase().endsWith(".wma")&&wt.file.type?.startsWith("video/")?"audio":wt.file.type?.startsWith("image/")?"image":wt.file.type?.startsWith("video/")?"video":wt.file.type?.startsWith("audio/")?"audio":wt.file.name.endsWith(".pdf")||wt.file.name.endsWith(".txt")||wt.file.name.endsWith(".csv")||wt.file.name.endsWith(".md")||wt.file.name.endsWith(".markdown")?"pdf":null,createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()}});ps((wt)=>[...St,...wt])}at.invalidateQueries({queryKey:["search",e,r]}),at.invalidateQueries({queryKey:["teams",e,"upload","tasks"]}),await du({files:ft,taskId:N.taskId,teamId:e,storageBackend:N.storageBackend||"local",createdAssets:N.createdAssets,presignedUrls:N.presignedUrls,onFileFinished:async(St)=>{await at.invalidateQueries({queryKey:["search",e,r]}),ps((wt)=>wt.filter((Jt)=>Jt.id!==St))}}),at.invalidateQueries({queryKey:["search",e,r]}),at.invalidateQueries({queryKey:["teams",e,"upload","tasks"]})}}),vd=bn((N)=>N.startTask),{fields:mo}=Fr(),ws=D(()=>{if(!ae)return mo.filter((N)=>N.visible);return mo.filter((N)=>dt?.[N.id])},[mo,ae,dt]),[ys,xs]=u(!0),[Rs,Fs]=u(!0),_s=_(null),Ms=_(null),Ts=_(null),[Ns,ks]=u(null),Lo=_(!1),{canEdit:qt,canAdmin:wd}=Ot(n),Ps=_(null),Ds=s.reduce((N,De)=>N+(De.sizeByte||0),0),Os=Dt.reduce((N,De)=>N+(De.sizeByte||0),0),$s=(N,De)=>{if(je?.some((ft)=>ft.field==="name"&&ft.operator==="contains")&&N===10001)return De?Ay():_y();if(De)return N===1?cp({count:N}):lp({count:N});else return N===1?dp({count:N}):up({count:N})},Ls=(N)=>{let De=N.target;if(De.closest('[role="menuitem"]')||De.closest("[data-radix-menu-content]"))return;if(De===N.currentTarget||De.closest(".empty-area")||!De.closest(".group")&&!De.closest("button")&&!De.closest("a")&&!De.closest("input"))x(),fs(null)},Us=(N,De)=>{if(De===void 0)if(Lo.current)Lo.current=!1;else ut(null);else{Lo.current=!0,ut(De??null);return}},Vs=(N,De)=>{let pt=N.type==="symlink"?N.targetType||"file":N.type,ft={teamId:e,item:N,isSelected:p?.id===N.id,isChecked:f.has(N.id),isEditing:ql===N.id,onSelect:Ue,onDoubleClick:g,onContextMenu:Us,onDragStart:()=>{},onDrop:()=>{},onRename:(Ft)=>Ql(N,Ft),onFinishEditing:()=>fs(null),onSaveField:(Ft,xt)=>{h(N.id,Ft,xt)},dragState:oe,onAction:(Ft,xt)=>{if(Ft==="manage-versions"){re(xt.id||null);return}if(ae){if(Ft==="remove-from-share"){let nn=f.has(xt.id)?[...s,...i].filter((St)=>f.has(St.id)):[xt];lt?.(nn)}else if(Ft==="download")gs("download",xt);return}gs(Ft,xt)},isRecentlyDeleted:ie,isRecents:ye,selectedCount:f.size,isShareView:ae,allowDownload:Se,fields:ws,canEdit:qt,isExternalDragging:Bn,externalOverFolderId:Fn,setExternalOverFolderId:ze,resetExternalDragState:Wn,onExternalDrop:(Ft,xt)=>{fn(Ft,xt)}};if(y==="card"){if(pt==="folder")return t(Qa,{...ft},N.id);if(pt==="file"||pt==="version_stack")return t(Va,{...ft},N.id)}return t(Oa,{...ft,columnSizing:De},N.id)},jo=f.size,Kn=Array.from(f).filter((N)=>s.find((De)=>De.id===N)).length,Xn=Array.from(f).filter((N)=>Dt.find((De)=>De.id===N)).length,Vo=Array.from(f).reduce((N,De)=>{let pt=s.find((ft)=>ft.id===De)||Dt.find((ft)=>ft.id===De);return N+(pt?.sizeByte||0)},0),yd=()=>{_s.current?.click()},xd=()=>{Ms.current?.click()},fn=P((N,De)=>{if(!N||N.length===0)return;let pt=[],ft=[],Ft=new Map;for(let xt of N){let Yt=(xt.webkitRelativePath||xt.name).split("/");if(Yt.some((In)=>In.startsWith(".")))continue;let nn=Yt.pop(),St=ft,wt="";for(let In of Yt)if(wt=`${wt}/${In}`,!Ft.has(wt)){let Qn=[],Yn={name:In,type:"folder",id:Uo(),children:Qn,size:0};St.push(Yn),Ft.set(wt,Qn),St=Qn}else St=Ft.get(wt);let Jt={file:xt,id:Uo()};pt.push(Jt);let Bt=xt.type;if(nn.toLowerCase().endsWith(".wma")&&Bt?.startsWith("video/"))Bt=Bt.replace(/^video\//,"audio/");St.push({name:nn,size:xt.size,type:"file",id:Jt.id,children:[],mediaType:Bt})}wl=pt,vs({param:{teamId:e},json:{parentId:De||r,files:ft}})},[r,vs,e]),qs=(N)=>{fn(N.target.files)},bd=(N)=>{ks(N.id),Ts.current?.click()},Sd=(N)=>{if(N.target.files&&Ns)fn(N.target.files,Ns),ks(null),N.target.value=""},Bs=P((N)=>{if(!qt||ae||!!We)return;if(!N.clipboardData)return;let De=N.clipboardData.items,pt=[];for(let ft=0;ft<De.length;ft++){let Ft=De[ft];if(Ft.kind==="file"){let xt=Ft.getAsFile();if(xt)if(xt.name==="image.png"&&xt.type.startsWith("image/")){let Yt=new Date().toISOString().replace(/[:.]/g,"").replace("T","_").substring(0,15),nn=xt.type.split("/")[1]||"png",St=new File([xt],`pasted_image_${Yt}.${nn}`,{type:xt.type});pt.push(St)}else pt.push(xt)}}if(pt.length>0)fn(pt)},[fn,ae,We,qt]);return m(()=>{let N=(De)=>{if(!qt||ae||!!We)return;if(document.activeElement&&(document.activeElement.tagName==="INPUT"||document.activeElement.tagName==="TEXTAREA"||document.activeElement.isContentEditable))return;Bs(De)};return window.addEventListener("paste",N),()=>{window.removeEventListener("paste",N)}},[Bs,ae,We,qt]),o(L,{children:[qt&&o(L,{children:[t("input",{type:"file",ref:_s,multiple:!0,style:{display:"none"},onChange:qs}),t("input",{type:"file",ref:Ms,multiple:!0,webkitdirectory:"true",style:{display:"none"},onChange:qs}),t("input",{type:"file",ref:Ts,style:{display:"none"},onChange:Sd})]}),(()=>o(ka,{modal:!1,children:[t(Pa,{asChild:!0,disabled:ae||He||!!We||ye,children:o("div",{className:"flex-1 bg-background relative flex flex-col min-h-0 overflow-hidden",onContextMenu:(N)=>{if(ye){N.preventDefault(),N.stopPropagation();return}Us(N)},onDragEnter:yl,onDragLeave:bl,onDragOver:Il,onDrop:El,children:[!ae&&!He&&T&&pe&&t(vl,{teamId:e,projectId:n,assetId:r,fields:mo||[],filterConditions:je||[],onFilterChange:T,sort:xe,onSortChange:pe,isRecentlyDeleted:ie,isRecents:ye,collection:We,onUpdateCollection:j,rootFolderId:be}),ie&&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:kp()})]}),wd&&t(C,{variant:"destructive",size:"sm",disabled:zo||s.length===0&&Dt.length===0,onClick:()=>$o(!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:Ps,className:"flex-1 overflow-y-auto min-h-0 relative flex flex-col",style:{overflowAnchor:"none"},children:[te&&s.length===0&&Dt.length===0?t(nm,{displayStyle:y}):y==="list"?t(fl,{folders:s,files:Dt,totalFolders:a,totalFiles:l,totalFoldersSize:d,totalFilesSize:c,selectedItem:p,selectedIds:f,displayedFields:ws,onItemSelect:Ue,onItemDoubleClick:g,renderItem:Vs,foldersExpanded:ys,setFoldersExpanded:xs,filesExpanded:Rs,setFilesExpanded:Fs,hasNextFoldersPage:k,hasNextFilesPage:X,isFetchingNextFoldersPage:U,isFetchingNextFilesPage:ee,fetchNextFoldersPage:b,fetchNextFilesPage:V,formatCount:$s,formatSize:yn,foldersSize:Ds,filesSize:Os,handleEmptyAreaClick:Ls,dragState:oe,sort:xe,isExternalDragging:Bn,externalOverFolderId:Fn,setExternalOverFolderId:ze,resetExternalDragState:Wn,onExternalDrop:(N,De)=>fn(N,De)}):t(Ka,{folders:s,files:Dt,totalFolders:a,totalFiles:l,totalFoldersSize:d,totalFilesSize:c,renderItem:Vs,foldersExpanded:ys,setFoldersExpanded:xs,filesExpanded:Rs,setFilesExpanded:Fs,hasNextFoldersPage:k,hasNextFilesPage:X,isFetchingNextFoldersPage:U,isFetchingNextFilesPage:ee,fetchNextFoldersPage:b,fetchNextFilesPage:V,formatCount:$s,formatSize:yn,foldersSize:Ds,filesSize:Os,handleEmptyAreaClick:Ls,dragState:oe,sort:xe,scrollContainerRef:Ps}),(U||ee)&&t("div",{className:"flex justify-center items-center p-4",children:t("p",{children:Gw()})}),!te&&s.length===0&&Dt.length===0&&!U&&!ee&&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(zs,{className:"h-10 w-10 text-muted-foreground/50 mb-1"}),t("p",{className:"font-medium text-foreground",children:mp()}),t("p",{className:"text-xs text-muted-foreground",children:hp()})]}):t("span",{children:Gp()})})]}),jo>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:[Kn>0&&Xn>0&&o("span",{children:[jo," Item",jo!==1?"s":""," selected •"," ",yn(Vo)]}),Kn>0&&Xn===0&&o("span",{children:[Kn," folder",Kn!==1?"s":""," selected •"," ",yn(Vo)]}),Kn===0&&Xn>0&&o("span",{children:[Xn," file",Xn!==1?"s":""," selected •"," ",yn(Vo)]})]}),Se&&o(C,{variant:"ghost",size:"sm",onClick:()=>ms([...s,...Dt].filter((N)=>f.has(N.id))),className:"gap-2",children:[t(ht,{className:"h-4 w-4"}),"Download"]})]}),Bn&&!Fn&&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:Ge,selectedIds:f,folders:s,files:Dt,onRename:Gl,onDelete:Hl,onDownload:ms,onCopyNameAndDownloadLink:Xl,onNewFolder:Bl,onUploadFile:yd,onUploadFolder:xd,onNewVersion:bd,onManageVersions:(N)=>re(N.id||null),onMoveTo:(N)=>{Oe(N),vt("move")},onCopyTo:(N)=>{Oe(N),vt("copy")},onRestore:Kl,isRecentlyDeleted:ie,isRecents:ye,shareLinks:_l?.data??[],onCreateShareLink:jl,onAddToShareLink:Vl,canEdit:qt})]}))(),Je&&t(Ta,{isOpen:!!Je,onClose:()=>vt(null),onConfirm:$l,mode:Je,teamId:e,currentProjectId:n}),t(Xe,{open:Yl,onOpenChange:Zl,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:()=>{ld()},className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:"Delete"})]})]})}),t(Xe,{open:fd,onOpenChange:$o,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:(N)=>{N.preventDefault(),md()},className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",disabled:zo,children:zo?"Deleting...":"Delete Now"})]})]})}),t(de,{open:dd,onOpenChange:Oo,children:o(le,{className:"sm:max-w-md",children:[o(me,{children:[t(ce,{children:po?"Preparing Download":"Confirm Download"}),t(Mt,{children:po?"Resolving all files and folders. Please wait...":"Selected files and folders will be prepared for download."})]}),po?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:!po?o(L,{children:[t(C,{variant:"outline",onClick:()=>Oo(!1),children:"Cancel"}),o(C,{onClick:ud,className:"gap-2",disabled:hs.length===0,children:[t(ht,{className:"h-4 w-4"}),"Start Download"]})]}):t(C,{variant:"outline",onClick:()=>Oo(!1),children:"Cancel"})})]})}),Rt&&t(Jd,{open:!!Rt,onOpenChange:(N)=>{if(!N)re(null)},stackId:Rt,canEdit:qt,onStackDissolved:()=>{re(null)}}),t(Na,{item:Do,isOpen:Ee,onClose:()=>J(!1),allowDownload:Se,shareId:Ve,sharePassword:Ye,isPublic:He})]})}
14
+ export{cu,uu,du,Va,Qa,fu,Mi};