@shumai-one/shumai 0.6.1 → 0.6.2

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 (225) hide show
  1. package/bin/chunk-01052ssf.js +32 -0
  2. package/bin/{chunk-w4ydfy9d.js → chunk-02fvcrej.js} +4 -4
  3. package/bin/chunk-0bj887zm.js +2 -0
  4. package/bin/chunk-167z646e.js +2 -0
  5. package/bin/chunk-1ktk6764.js +10 -0
  6. package/bin/{chunk-p1ed0pa6.js → chunk-1nvd90g2.js} +1 -1
  7. package/bin/{chunk-kywdke0y.js → chunk-1wfg56z3.js} +5 -5
  8. package/bin/{chunk-ahgq10a7.js → chunk-257dcd2f.js} +2 -2
  9. package/bin/chunk-26qn7fek.js +2 -0
  10. package/bin/chunk-2cdxm1cp.js +55 -0
  11. package/bin/chunk-2jj4j8cn.js +3 -0
  12. package/bin/chunk-2ne2b54t.js +2 -0
  13. package/bin/{chunk-qqj2m1b1.js → chunk-2nhgdqdg.js} +2 -2
  14. package/bin/chunk-2vbeqczj.js +1 -0
  15. package/bin/chunk-37p6bcx2.js +1 -0
  16. package/bin/chunk-3ckkwdjx.js +13 -0
  17. package/bin/chunk-3knfx6dm.js +1 -0
  18. package/bin/chunk-3z85zxkn.js +1 -0
  19. package/bin/chunk-4mws03es.js +5 -0
  20. package/bin/chunk-54tbfvya.js +2 -0
  21. package/bin/chunk-55h9ze53.js +2 -0
  22. package/bin/chunk-56kh5fxc.js +1 -0
  23. package/bin/chunk-576nj64j.js +2 -0
  24. package/bin/{chunk-dfecgpce.js → chunk-5wapd171.js} +13 -13
  25. package/bin/chunk-6cnqjngz.js +1 -0
  26. package/bin/chunk-73yncv54.js +2 -0
  27. package/bin/chunk-7g46e1wy.js +3 -0
  28. package/bin/{chunk-jq3pq545.js → chunk-7naa7tpn.js} +2 -2
  29. package/bin/{chunk-am6dg0a5.js → chunk-7sgrtxbt.js} +2 -2
  30. package/bin/{chunk-3me1v3z5.js → chunk-7v7mypc6.js} +2 -2
  31. package/bin/chunk-82tps5n1.js +2 -0
  32. package/bin/chunk-84x8p7v5.js +1 -0
  33. package/bin/{chunk-fxtzy5f5.js → chunk-88jg9dq5.js} +2 -2
  34. package/bin/chunk-8cjet7pp.js +12 -0
  35. package/bin/chunk-8fyg9dy4.js +2 -0
  36. package/bin/chunk-8gtfgkrn.js +2 -0
  37. package/bin/chunk-8mqbztj8.js +2 -0
  38. package/bin/chunk-8xb6yz11.js +2 -0
  39. package/bin/chunk-8yjsmr7g.js +2 -0
  40. package/bin/chunk-91rb0jpb.js +2 -0
  41. package/bin/chunk-96qpjght.js +2 -0
  42. package/bin/chunk-9f1xk1nt.js +1 -0
  43. package/bin/chunk-9mk9cvbk.js +1 -0
  44. package/bin/{chunk-r5g84kj4.js → chunk-9n1w5dw1.js} +3 -3
  45. package/bin/chunk-9nw5w8vh.js +1 -0
  46. package/bin/{chunk-3j82q2gj.js → chunk-9t3p4xp6.js} +1 -1
  47. package/bin/chunk-9xhjy897.js +11 -0
  48. package/bin/chunk-9zsv6d2f.js +1 -0
  49. package/bin/chunk-a411xhmm.js +7 -0
  50. package/bin/{chunk-s01p4w8d.js → chunk-a74g6h8a.js} +2 -2
  51. package/bin/chunk-ah8fjb6f.js +2 -0
  52. package/bin/chunk-atfz7g7e.js +2 -0
  53. package/bin/{chunk-swz6v48q.js → chunk-b5rhvzv9.js} +2 -2
  54. package/bin/{chunk-bg6waaf9.js → chunk-b7bnp021.js} +2 -2
  55. package/bin/chunk-cf5axr8c.js +1 -0
  56. package/bin/chunk-cgmebxx6.js +2 -0
  57. package/bin/chunk-cwat1jwx.js +3 -0
  58. package/bin/chunk-cz13a82m.js +3 -0
  59. package/bin/chunk-dk42gf7v.js +2 -0
  60. package/bin/chunk-e4f56spj.js +4 -0
  61. package/bin/chunk-e4yscwen.js +18 -0
  62. package/bin/chunk-eb7mzbfm.js +1 -0
  63. package/bin/chunk-er14d498.js +3 -0
  64. package/bin/{chunk-bs6saf4d.js → chunk-eyjfhdp9.js} +2 -2
  65. package/bin/chunk-f25fe9th.js +393 -0
  66. package/bin/chunk-f6avg5qe.js +129 -0
  67. package/bin/chunk-fatmqnp1.js +2 -0
  68. package/bin/chunk-fvx9k1dc.js +2 -0
  69. package/bin/{chunk-h6f2gyt5.js → chunk-g22wmpk1.js} +2 -2
  70. package/bin/chunk-g6sdezec.js +2 -0
  71. package/bin/chunk-gtf19jc1.js +2 -0
  72. package/bin/chunk-gxepkvt2.js +2 -0
  73. package/bin/chunk-h1n7jqnw.js +1 -0
  74. package/bin/chunk-hfm82066.js +2 -0
  75. package/bin/chunk-hnkcgvcj.js +3 -0
  76. package/bin/{chunk-agcnbjxk.js → chunk-hpbn0k9n.js} +2 -2
  77. package/bin/{chunk-d4hk62q2.js → chunk-hpwv4am3.js} +4 -4
  78. package/bin/{chunk-acmr8v0d.js → chunk-hw6czrya.js} +1 -1
  79. package/bin/{chunk-r9gp9yqw.js → chunk-hzkjgcre.js} +1 -1
  80. package/bin/chunk-j2s311yc.js +3 -0
  81. package/bin/{chunk-6hzktewz.js → chunk-jt02kpfc.js} +2 -2
  82. package/bin/{chunk-c60j1b4w.js → chunk-jt0ykktx.js} +1 -1
  83. package/bin/{chunk-sd6w0z6a.js → chunk-jzgbxqdg.js} +2 -2
  84. package/bin/chunk-kj6h5j5a.js +4 -0
  85. package/bin/chunk-km4gn6b6.js +1 -0
  86. package/bin/chunk-knj2s8mg.js +16 -0
  87. package/bin/{chunk-1eqw2dpx.js → chunk-kvhf12b4.js} +2 -2
  88. package/bin/chunk-m0q2cgfg.js +2 -0
  89. package/bin/chunk-m82tkhaa.js +11 -0
  90. package/bin/chunk-m9adtgzk.js +2 -0
  91. package/bin/{chunk-0tvnfy4k.js → chunk-mcj1xpcc.js} +2 -2
  92. package/bin/chunk-mcw198kg.js +13 -0
  93. package/bin/{chunk-9s0k533c.js → chunk-mwktrwtx.js} +1 -1
  94. package/bin/{chunk-wsprap60.js → chunk-mzsw9var.js} +2 -2
  95. package/bin/chunk-ns33grgx.js +2 -0
  96. package/bin/{chunk-xsfy8hz3.js → chunk-ny1kbmxt.js} +2 -2
  97. package/bin/{chunk-16n160h1.js → chunk-p3f5aevs.js} +1 -1
  98. package/bin/chunk-p3j6ydk1.js +1 -0
  99. package/bin/chunk-p4s95471.js +2 -0
  100. package/bin/chunk-pk406dgy.js +2 -0
  101. package/bin/chunk-q2bew2vc.js +2 -0
  102. package/bin/chunk-q5vkxee3.js +5 -0
  103. package/bin/{chunk-hzv1mhr5.js → chunk-q83h0hkx.js} +2 -2
  104. package/bin/{chunk-fre31bhw.js → chunk-q8w4mbw4.js} +2 -2
  105. package/bin/{chunk-b7qs7hxg.js → chunk-qwpkcp8d.js} +2 -2
  106. package/bin/chunk-r1xer8gn.js +5 -0
  107. package/bin/chunk-s1e4qy3q.js +14 -0
  108. package/bin/{chunk-b9d8xdhb.js → chunk-s9ksftq2.js} +1 -1
  109. package/bin/chunk-srxp5jav.js +42 -0
  110. package/bin/chunk-swtwaaqe.js +1 -0
  111. package/bin/chunk-tagdrg7p.js +1 -0
  112. package/bin/{chunk-d18v5vmp.js → chunk-tekwpkjf.js} +2 -2
  113. package/bin/chunk-twtxnzbv.js +2 -0
  114. package/bin/{chunk-c6f8x05m.js → chunk-v05rrxp5.js} +2 -2
  115. package/bin/{chunk-ht5rht98.js → chunk-v5cn90cf.js} +2 -2
  116. package/bin/chunk-v5mcjwxy.js +2 -0
  117. package/bin/{chunk-jb8vbeb0.js → chunk-vcrmjtcz.js} +2 -2
  118. package/bin/chunk-vkzasgxw.js +2 -0
  119. package/bin/chunk-vp3czaeh.js +7 -0
  120. package/bin/chunk-x03jwaga.js +8 -0
  121. package/bin/chunk-x342vzdx.js +2 -0
  122. package/bin/chunk-x8mjh387.js +5 -0
  123. package/bin/chunk-xc54vhfz.js +2 -0
  124. package/bin/chunk-xvkwbczx.js +3 -0
  125. package/bin/chunk-y241cxff.js +1 -0
  126. package/bin/chunk-yk12hydf.js +7 -0
  127. package/bin/chunk-ympbfzz4.js +2 -0
  128. package/bin/{chunk-n412a1hp.js → chunk-yq32evnn.js} +6 -6
  129. package/bin/chunk-z1p13dnc.js +2 -0
  130. package/bin/chunk-zarz3sqn.js +211 -0
  131. package/bin/chunk-zezje74z.js +4 -0
  132. package/bin/chunk-zrszykjf.js +3 -0
  133. package/bin/shumai-app.html +1 -1
  134. package/bin/shumai-app.js +942 -1015
  135. package/package.json +7 -7
  136. package/prisma/migrations/20261026024507_hash_api_tokens/migration.sql +28 -0
  137. package/prisma/migrations/20261026031904_add_audit_log_via/migration.sql +2 -0
  138. package/prisma/migrations/20261029024626_add_oauth_and_jwks/migration.sql +205 -0
  139. package/prisma/migrations/20261029030321_default_empty_arrays_oauth/migration.sql +25 -0
  140. package/prisma/schema.prisma +186 -1
  141. package/bin/chunk-0502p2k7.js +0 -3
  142. package/bin/chunk-0b0t6y8h.js +0 -11
  143. package/bin/chunk-1vt9ss7d.js +0 -2
  144. package/bin/chunk-23780yj6.js +0 -3
  145. package/bin/chunk-2cpsfc87.js +0 -1
  146. package/bin/chunk-2w0d9veg.js +0 -2
  147. package/bin/chunk-2xp9prpq.js +0 -1
  148. package/bin/chunk-3gqs15zq.js +0 -2
  149. package/bin/chunk-3pw7z25v.js +0 -3
  150. package/bin/chunk-3tx9v8kj.js +0 -2
  151. package/bin/chunk-3wdtp4ht.js +0 -1
  152. package/bin/chunk-57axjy7y.js +0 -1
  153. package/bin/chunk-5aqthcm6.js +0 -5
  154. package/bin/chunk-5gq4q1bb.js +0 -2
  155. package/bin/chunk-5r1br11d.js +0 -2
  156. package/bin/chunk-61hrdg0g.js +0 -1
  157. package/bin/chunk-6aa4xmnw.js +0 -2
  158. package/bin/chunk-6mrgtn78.js +0 -18
  159. package/bin/chunk-6s55r0z9.js +0 -1
  160. package/bin/chunk-6vkfzzvt.js +0 -5
  161. package/bin/chunk-7dprpnm6.js +0 -2
  162. package/bin/chunk-7rycq6wb.js +0 -129
  163. package/bin/chunk-895gzdtp.js +0 -7
  164. package/bin/chunk-8d1p8qpv.js +0 -1
  165. package/bin/chunk-8r3k84dh.js +0 -2
  166. package/bin/chunk-99sarrvt.js +0 -3
  167. package/bin/chunk-b21z62fj.js +0 -1
  168. package/bin/chunk-bv589v2m.js +0 -3
  169. package/bin/chunk-c8kjpmfe.js +0 -2
  170. package/bin/chunk-c9xyejnk.js +0 -2
  171. package/bin/chunk-cb9peqy5.js +0 -2
  172. package/bin/chunk-ckczqmrz.js +0 -5
  173. package/bin/chunk-cr33cs6j.js +0 -2
  174. package/bin/chunk-cxet91kt.js +0 -2
  175. package/bin/chunk-d7e351jd.js +0 -6
  176. package/bin/chunk-ebcfbn00.js +0 -2
  177. package/bin/chunk-f0b4a9y3.js +0 -2
  178. package/bin/chunk-fkn6f4qt.js +0 -4
  179. package/bin/chunk-g78vapcm.js +0 -2
  180. package/bin/chunk-gdpfwxea.js +0 -4
  181. package/bin/chunk-gwqqq0b1.js +0 -32
  182. package/bin/chunk-h3cwf9aw.js +0 -2
  183. package/bin/chunk-h4ty530v.js +0 -16
  184. package/bin/chunk-h58yfx7w.js +0 -2
  185. package/bin/chunk-h9ngpxyd.js +0 -1
  186. package/bin/chunk-hbr17jvr.js +0 -13
  187. package/bin/chunk-hc0xbmtt.js +0 -5
  188. package/bin/chunk-j9t7tvt5.js +0 -2
  189. package/bin/chunk-jvt8q0eg.js +0 -2
  190. package/bin/chunk-jzgtthsj.js +0 -3
  191. package/bin/chunk-jzjhg7ng.js +0 -1
  192. package/bin/chunk-k547syp2.js +0 -2
  193. package/bin/chunk-k7sjpke6.js +0 -2
  194. package/bin/chunk-k8ct1qgv.js +0 -3
  195. package/bin/chunk-k9q4nn8b.js +0 -11
  196. package/bin/chunk-keetdtxb.js +0 -2
  197. package/bin/chunk-kjjw8mbg.js +0 -1
  198. package/bin/chunk-mey80kv9.js +0 -54
  199. package/bin/chunk-nfncawpm.js +0 -12
  200. package/bin/chunk-nvwt8atc.js +0 -1
  201. package/bin/chunk-p1d500sf.js +0 -211
  202. package/bin/chunk-q0vs124k.js +0 -2
  203. package/bin/chunk-q5795f3s.js +0 -2
  204. package/bin/chunk-q5j3b0h5.js +0 -3
  205. package/bin/chunk-qd7pvaxb.js +0 -2
  206. package/bin/chunk-qhpt7170.js +0 -2
  207. package/bin/chunk-qt78vs3g.js +0 -2
  208. package/bin/chunk-ra6mdjr0.js +0 -1
  209. package/bin/chunk-ryfvaz6v.js +0 -3
  210. package/bin/chunk-s22eapcc.js +0 -2
  211. package/bin/chunk-sbg86tch.js +0 -2
  212. package/bin/chunk-sbqy6m8t.js +0 -1
  213. package/bin/chunk-sdp9w627.js +0 -14
  214. package/bin/chunk-sn0nypvd.js +0 -42
  215. package/bin/chunk-sv92vkyh.js +0 -2
  216. package/bin/chunk-t6cn018t.js +0 -3
  217. package/bin/chunk-ts4d1mxf.js +0 -2
  218. package/bin/chunk-wkdkc12e.js +0 -4
  219. package/bin/chunk-xgnvktq6.js +0 -10
  220. package/bin/chunk-xjw3mpvx.js +0 -1
  221. package/bin/chunk-xznq2axj.js +0 -1
  222. package/bin/chunk-y4v08wq7.js +0 -1
  223. package/bin/chunk-yncvy335.js +0 -3
  224. package/bin/chunk-ytzddcj2.js +0 -1
  225. package/bin/chunk-zxqasmvz.js +0 -2
@@ -1,14 +0,0 @@
1
- import{q,F,P,m,Ue,N,on,_,u,E,L,t,o,G,Z,B,pt,Pe,sn,g,I,$n,Er,rr,O,On,Xr,Dr,oo,Mt,Me,ve,It,Ma,Qt,wt,ln,ar,js,lr,qs,cn,pe,zt,we,Ne,C,xt,Y,Ai,Zt,ie,El,rd,nd,od,sd,id,ad,ld,cd,ud,S,un,dn,fn,pn,Ce,Ie,Te,ge,Ae,_e,K,Kt,bs,l0,d0,fd,Vm,o_,E_,Lf,gd,Hc,$c,Gc,Re,Da,hy,Sy,Ry,zf,wh,Fy,Ly,qy,Ch,Wy,Jy,eb,tb,rb,nb,ob,sb,ib,ab,Th,ht,fb,Gf,Cl,yd,_r,Qb,Jb,ov,sv,Wf,uv,Xo,Av,kv,Rv,Tl,Jf,Xf,Bv,Uv,zv,ep,jv,qv,tp,Hv,$v,Kv,ew,tw,Rw,mx,lp,cp,bx,Ag,gp,Ap,_g,yg,_p,yp,bg,vg,kl,TS,Pd,BS,wp,xp,VS,fE,pE,mE,hE,gE,AE,Rl,_E,yE,bE,Pl,vE,wE,Dd,Nl,xE,SE,EE,Sp,Od,Ep,KE,zg,XE,oC,yC,YC,Zp,JC,Bp,Zo,cI,Up,Kn,_I,jp,bI,vI,wI,xI,SI,mA,TI,NI,DI,BI,UI,$p,VI,QI,KI,WI,tu,Ll,Qp,Kp,RT,Wp,Zl,ru,nu,Yp,Jp,ou,NT,u1,tm,P1,N1,z1,H1,nM,oM,Sn,Bl,HA,sm,im,su,iu,nt,ot,st,it,at,lt,ct,ut,de,ce,me,He,ue,Et,z,le,Ft,es,Zr,En,Wn,xs,Br,Nt,M,Sr,Or,Ir,Fr,tf,rf,ne,lo,Ga,nf,Je,Xe,et,W,ke,Fe,Le,Ze,Be,oe,uo,ur,Lr,Vr,br,Cn,pm}from"./chunk-p1d500sf.js";import{ts,Pi,yu,Xa,Ur,Uo,ns,Is,wu,Jl,fa,Ni,Ts,Di,pa,Em,Ms}from"./chunk-7rycq6wb.js";import{Ro,vr}from"./chunk-qt78vs3g.js";import{ks,ma}from"./chunk-cxet91kt.js";import{tc}from"./chunk-sbg86tch.js";import{el}from"./chunk-ahgq10a7.js";import{nr}from"./chunk-xsfy8hz3.js";import{_n}from"./chunk-b7qs7hxg.js";import{mo}from"./chunk-fxtzy5f5.js";import{wr}from"./chunk-ht5rht98.js";import{H,w}from"./chunk-t6cn018t.js";var oi=w(function(Fm,ni){function ti(e,n){this.text=e=e||"",this.hasWild=~e.indexOf("*"),this.separator=n,this.parts=e.split(n)}ti.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};ni.exports=function(e,n,r){var s=new ti(e,r||/[\/\.]/);if(typeof n<"u")return s.match(n);return s}});var si=w(function(Im,ri){var fu=oi(),vu=/[\/\+\.]/;ri.exports=function(e,n){function r(s){var i=fu(s,e,vu);return i&&i.length>=2}return n?r(n.split(";")[0]):r}});var ho=w(function(Tm,li){function xu(e){var n=typeof e;return e!=null&&(n=="object"||n=="function")}li.exports=xu});var ui=w(function(Nm,di){var bu=typeof global=="object"&&global&&global.Object===Object&&global;di.exports=bu});var Yo=w(function(km,ci){var Su=ui(),Cu=typeof self=="object"&&self&&self.Object===Object&&self,Ru=Su||Cu||Function("return this")();ci.exports=Ru});var fi=w(function(Pm,pi){var Fu=Yo(),Iu=function(){return Fu.Date.now()};pi.exports=Iu});var gi=w(function(Am,mi){var Eu=/\s/;function _u(e){var n=e.length;while(n--&&Eu.test(e.charAt(n)));return n}mi.exports=_u});var vi=w(function(Dm,hi){var Mu=gi(),Tu=/^\s+/;function Nu(e){return e?e.slice(0,Mu(e)+1).replace(Tu,""):e}hi.exports=Nu});var Jo=w(function(Om,wi){var ku=Yo(),Pu=ku.Symbol;wi.exports=Pu});var Si=w(function($m,bi){var yi=Jo(),xi=Object.prototype,{hasOwnProperty:Du,toString:Ou}=xi,no=yi?yi.toStringTag:void 0;function $u(e){var n=Du.call(e,no),r=e[no];try{e[no]=void 0;var s=!0}catch(a){}var i=Ou.call(e);if(s)if(n)e[no]=r;else delete e[no];return i}bi.exports=$u});var Ri=w(function(zm,Ci){var zu=Object.prototype,Lu=zu.toString;function Uu(e){return Lu.call(e)}Ci.exports=Uu});var _i=w(function(Lm,Ei){var Fi=Jo(),ju=Si(),Vu=Ri(),qu="[object Null]",Bu="[object Undefined]",Ii=Fi?Fi.toStringTag:void 0;function Hu(e){if(e==null)return e===void 0?Bu:qu;return Ii&&Ii in Object(e)?ju(e):Vu(e)}Ei.exports=Hu});var Ti=w(function(Um,Mi){function Gu(e){return e!=null&&typeof e=="object"}Mi.exports=Gu});var $i=w(function(jm,Oi){var Wu=_i(),Ku=Ti(),Xu="[object Symbol]";function Qu(e){return typeof e=="symbol"||Ku(e)&&Wu(e)==Xu}Oi.exports=Qu});var ji=w(function(qm,Ui){var Yu=vi(),zi=ho(),Ju=$i(),Li=NaN,Zu=/^[-+]0x[0-9a-f]+$/i,ec=/^0b[01]+$/i,nc=/^0o[0-7]+$/i,oc=parseInt;function rc(e){if(typeof e=="number")return e;if(Ju(e))return Li;if(zi(e)){var n=typeof e.valueOf=="function"?e.valueOf():e;e=zi(n)?n+"":n}if(typeof e!="string")return e===0?e:+e;e=Yu(e);var r=ec.test(e);return r||nc.test(e)?oc(e.slice(2),r?2:8):Zu.test(e)?Li:+e}Ui.exports=rc});var Bi=w(function(Bm,qi){var sc=ho(),er=fi(),Vi=ji(),ic="Expected a function",{max:ac,min:lc}=Math;function dc(e,n,r){var s,i,a,l,d,c,p=0,f=!1,y=!1,h=!0;if(typeof e!="function")throw TypeError(ic);if(n=Vi(n)||0,sc(r))f=!!r.leading,y="maxWait"in r,a=y?ac(Vi(r.maxWait)||0,n):a,h="trailing"in r?!!r.trailing:h;function v(ae){var ye=s,te=i;return s=i=void 0,p=ae,l=e.apply(te,ye),l}function x(ae){return p=ae,d=setTimeout(D,n),f?v(ae):l}function b(ae){var ye=ae-c,te=ae-p,Ve=n-ye;return y?lc(Ve,a-te):Ve}function R(ae){var ye=ae-c,te=ae-p;return c===void 0||ye>=n||ye<0||y&&te>=a}function D(){var ae=er();if(R(ae))return U(ae);d=setTimeout(D,b(ae))}function U(ae){if(d=void 0,h&&s)return v(ae);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(er())}function ee(){var ae=er(),ye=R(ae);if(s=arguments,i=this,c=ae,ye){if(d===void 0)return x(c);if(y)return clearTimeout(d),d=setTimeout(D,n),v(c)}if(d===void 0)d=setTimeout(D,n);return l}return ee.cancel=V,ee.flush=X,ee}qi.exports=dc});var Gi=w(function(Hm,Hi){var uc=Bi(),cc=ho(),pc="Expected a function";function fc(e,n,r){var s=!0,i=!0;if(typeof e!="function")throw TypeError(pc);if(cc(r))s="leading"in r?!!r.leading:s,i="trailing"in r?!!r.trailing:i;return uc(e,n,{leading:s,maxWait:n,trailing:i})}Hi.exports=fc});var Ki=w(function(Gm,Wi){Wi.exports=function(){var n={},r=n._fns={};n.emit=function(l,d,c,p,f,y,h){var v=s(l);if(v.length)i(l,v,[d,c,p,f,y,h])},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,y=p?p.length:0;for(f;f<y;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,y=p.length;for(f;f<y;f++){var h=p[f];if(h==="*")l=l.concat(r[h]);if(c.length===2&&c[0]===h){l=l.concat(r[h]);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}});E();var Cd=Object.defineProperty,qt=(e,n)=>Cd(e,"name",{value:n,configurable:!0}),Vo="ContextMenu",[Rd,Rf]=xt(Vo,[El]),en=El(),[Fd,Hs]=Rd(Vo),Id=qt((e)=>{let{__scopeContextMenu:n,children:r,onOpenChange:s,open:i,dir:a,modal:l=!0}=e,d=_(!1);if(Ai){let y=_(!1);m(()=>{if(i===!0&&!d.current&&!y.current)y.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]=Zt({prop:i,defaultProp:!1,onChange:s,caller:Vo}),f=en(n);return t(Fd,{scope:n,open:c,onOpenChange:p,modal:l,hasInteractedRef:d,children:t(rd,{...f,dir:a,open:c,onOpenChange:p,modal:l,children:r})})},"ContextMenu"),Ed="ContextMenuTrigger",_d=F(qt(function(n,r){let{__scopeContextMenu:s,disabled:i=!1,...a}=n,l=Hs(Ed,s),d=en(s),[c,p]=u({x:0,y:0}),f=N(()=>({current:{getBoundingClientRect:qt(()=>DOMRect.fromRect({width:0,height:0,...c}),"getBoundingClientRect")}}),[c]),y=_(0),h=P(()=>window.clearTimeout(y.current),[]),v=qt((x)=>{l.hasInteractedRef.current=!0,p({x:x.clientX,y:x.clientY}),l.onOpenChange(!0)},"handleOpen");return m(()=>h,[h]),m(()=>void(i&&h()),[i,h]),o(L,{children:[t(nd,{...d,virtualRef:f}),t(ie.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,(x)=>{h(),v(x),x.preventDefault()}),onPointerDown:i?n.onPointerDown:Y(n.onPointerDown,Yn((x)=>{if(h(),l.open)l.onOpenChange(!1);y.current=window.setTimeout(()=>v(x),700)})),onPointerMove:i?n.onPointerMove:Y(n.onPointerMove,Yn(h)),onPointerCancel:i?n.onPointerCancel:Y(n.onPointerCancel,Yn(h)),onPointerUp:i?n.onPointerUp:Y(n.onPointerUp,Yn(h))})]})},"ContextMenuTrigger")),Md=qt((e)=>{let{__scopeContextMenu:n,...r}=e,s=en(n);return t(od,{...s,...r})},"ContextMenuPortal"),Td="ContextMenuContent",Nd=F(qt(function(n,r){let{__scopeContextMenu:s,...i}=n,a=Hs(Td,s),l=en(s),d=_(!1);return t(sd,{...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 kd=F(qt(function(n,r){let{__scopeContextMenu:s,...i}=n,a=en(s);return t(id,{...a,...i,ref:r})},"ContextMenuItem"));var Ad=F(qt(function(n,r){let{__scopeContextMenu:s,...i}=n,a=en(s);return t(ad,{...a,...i,ref:r})},"ContextMenuSeparator"));var $d="ContextMenuSub",zd=qt((e)=>{let{__scopeContextMenu:n,children:r,onOpenChange:s,open:i,defaultOpen:a}=e,l=en(n),[d,c]=Zt({prop:i,defaultProp:a??!1,onChange:s,caller:$d});return t(ld,{...l,open:d,onOpenChange:c,children:r})},"ContextMenuSub"),Ld=F(qt(function(n,r){let{__scopeContextMenu:s,...i}=n,a=en(s);return t(cd,{...a,...i,ref:r})},"ContextMenuSubTrigger")),Ud=F(qt(function(n,r){let{__scopeContextMenu:s,...i}=n,a=en(s);return t(ud,{...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 Yn(e){return(n)=>n.pointerType!=="mouse"?e(n):void 0}qt(Yn,"whenTouchOrPen");var jd=Id,Vd=_d,Gs=Md,qd=Nd;var Bd=kd;var Hd=Ad;var Gd=zd,Wd=Ld,Kd=Ud;var Qd=[["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"}]],fo=I("layers",Qd);var Yd=[["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"}]],mu=I("arrow-down-up",Yd);var Jd=[["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"}]],hu=I("folder-plus",Jd);var Zd=[["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"}]],Ws=I("message-circle-more",Zd);class Ks 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 Tn=Ks;class Xs{#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 Qs=Xs;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:y=3,signal:h=null,timeout:v=30000,withCredentials:x=!1}=n,b=(U)=>0.3*2**(U-1)*1000,R=new Qs(v,p);function D(U=0){return new Promise(async(V,X)=>{let ee=new XMLHttpRequest,ae=(te)=>{if(d(ee)&&U<y)setTimeout(()=>{D(U+1).then(V,X)},b(U));else R.done(),X(te)};if(ee.open(i,e,!0),ee.withCredentials=x,f)ee.responseType=f;if(ee.onload=async()=>{try{await c(ee,U)}catch(te){te.request=ee,ae(te);return}if(ee.status>=200&&ee.status<300)R.done(),V(ee);else if(d(ee)&&U<y)setTimeout(()=>{D(U+1).then(V,X)},b(U));else R.done(),X(new Tn(ee.statusText,ee))},ee.onerror=()=>ae(new Tn(ee.statusText,ee)),ee.upload.onprogress=(te)=>{R.progress(),l(te)},s)Object.keys(s).forEach((te)=>{ee.setRequestHeader(te,s[te])});function ye(){ee.abort(),X(new DOMException("Aborted","AbortError"))}if(h?.addEventListener("abort",ye),h?.aborted){ye();return}await a(ee,U),ee.send(r)})}return D()}var eu=(e)=>("error"in e)&&!!e.error,au=(e)=>e.progress.uploadComplete;function Zn(e){return e.filter((n)=>!eu(n)&&!au(n))}function eo(e){return e.filter((n)=>!n.progress?.uploadStarted||!n.isRestored)}function Nn(e){let n=e.lastIndexOf(".");if(n===-1||n===e.length-1)return{name:e,extension:void 0};return{name:e.slice(0,n),extension:e.slice(n+1)}}var 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 kn(e){if(e.type)return e.type;let n=e.name?Nn(e.name).extension?.toLowerCase():null;if(n&&n in qo)return qo[n];return"application/octet-stream"}function lu(e){return e.charCodeAt(0).toString(32)}function Ys(e){let n="";return e.replace(/[^A-Z0-9]/gi,(r)=>(n+=`-${lu(r)}`,"/"))+n}function Bo(e,n){let r=n||"uppy";if(typeof e.name==="string")r+=`-${Ys(e.name.toLowerCase())}`;if(e.type!==void 0)r+=`-${e.type}`;if(e.meta&&typeof e.meta.relativePath==="string")r+=`-${Ys(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 du(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(du(e))return e.id;let r=kn(e);return Bo({...e,type:r},n)}function hn(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 vn(){let e=new Date,n=Go(e.getHours()),r=Go(e.getMinutes()),s=Go(e.getSeconds());return`${n}:${r}:${s}`}function uu(e){if(!e)return!1;return e.readyState===4&&e.status===0}var Wo=uu;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 cu(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 Js(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=cu(i,new RegExp(`%\\{${a}\\}`,"g"),l)}return i}var pu=(e)=>{throw Error(`missing string: ${e}`)};class wn{locale;constructor(e,{onMissingKey:n=pu}={}){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 Js(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 Js(r,n)}}class yn{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 wn([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 xn{#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 Zs={debug:()=>{},warn:()=>{},error:(...e)=>console.error(`[Uppy] [${vn()}]`,...e)},ei={debug:(...e)=>console.debug(`[Uppy] [${vn()}]`,...e),warn:(...e)=>console.warn(`[Uppy] [${vn()}]`,...e),error:(...e)=>console.error(`[Uppy] [${vn()}]`,...e)};var Ko=["B","KB","MB","GB","TB","PB","EB","ZB","YB"];function to(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 ii=H(si(),1),ai={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:to(r),size:to(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 ii.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:to(n),file:e.name??this.getI18n()("unnamed")}),{file:e});if(r&&e.size!=null&&e.size<r)throw new $t(this.getI18n()("inferiorSize",{size:to(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 Zi=H(Gi(),1),ea=H(Ki(),1);var mc="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var Xi=(e=21)=>{let n="",r=e|0;while(r-- >0)n+=mc[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 tr(e,n){if(n.name)return n.name;if(e.split("/")[0]==="image")return`${e.split("/")[0]}.${e.split("/")[1]}`;return"noname"}var Qi={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 Yi{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 Ji=Yi;function or(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 sr{static VERSION=vo.version;#n=Object.create(null);#e;#t;#o=ea.default();#s=new Set;#r=new Set;#a=new Set;defaultLocale;locale;opts;store;i18n;i18nArray;scheduledAutoProceed=null;wasOffline=!1;constructor(e){this.defaultLocale=Qi;let n={id:"uppy",autoProceed:!1,allowMultipleUploadBatches:!0,debug:!1,restrictions:ai,meta:{},onBeforeFileAdded:(s,i)=>!Object.hasOwn(i,s.id),onBeforeUpload:(s)=>s,store:new Ji,logger:Zs,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=ei;if(this.log(`Using Core v${sr.VERSION}`),this.i18nInit(),this.store=this.opts.store,this.setState({...wo,plugins:{},files:{},currentUploads:{},capabilities:{uploadProgress:or(),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 wn([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=[],y=[],h=[];for(let v of s){let{progress:x}=v;if(!x.uploadComplete&&x.uploadStarted){if(i.push(v),!v.isPaused)y.push(v)}if(!x.uploadStarted)a.push(v);if(x.uploadStarted||x.preprocess||x.postprocess)l.push(v);if(x.uploadStarted)d.push(v);if(v.isPaused)c.push(v);if(x.uploadComplete)p.push(v);if(v.error)f.push(v);if(x.preprocess||x.postprocess)h.push(v)}return{newFiles:a,startedFiles:l,uploadStartedFiles:d,pausedFiles:c,completeFiles:p,erroredFiles:f,inProgressFiles:i,inProgressNotPausedFiles:y,processingFiles:h,isUploadStarted:d.length>0,isAllComplete:n===100&&p.length===s.length&&h.length===0,isAllErrored:!!r&&f.length===s.length,isAllPaused:i.length!==0&&c.length===i.length,isUploadInProgress:i.length>0,isSomeGhost:s.some((v)=>v.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=kn(n),s=tr(r,n),i=Nn(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:y}=this.getState();if(f.length!==r[p].fileIDs.length&&!y.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=Zi.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=Xi();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=sr;var ta={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 vc=1048576,na=5*vc,ir=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 xn(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>na,this.#a){let i=this.#u(r);if(i=Math.max(i,na),Math.ceil(r/i)>ir)i=Math.ceil(r/ir);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/ir)}async start(){this.#d?.abort(),this.#d=new AbortController;let e=this.#d.signal;try{let n=this.#i;if(this.#l&&n)await this.#p(n,e);else if(this.#l=!0,this.#a)await this.#y(e);else await this.#w(e)}catch(n){this.#m(n instanceof Error?n:Error(n))}}#c(){this.#d?.abort()}abort(e){if(this.#d?.abort(),this.#o.remove(),e?.abortInS3!==!1&&this.#i){if(!this.#e)throw Error("Missing S3 object key for aborting upload");this.#t.s3Client.abortMultipartUpload({key:this.#e,uploadId:this.#i}).catch((n)=>{this.#t.log?.(n,"warning")})}this.#e=void 0,this.#i=void 0,this.#l=!1}async#p(e,n){if(!this.#e)throw Error("Missing S3 object key for resuming upload");let r=await this.#t.s3Client.listParts({uploadId:e,key:this.#e,signal:n});for(let s of r){let i=s.partNumber-1;if(i>=0&&i<this.#r.length)this.#r[i].uploaded=this.#s[i].size,this.#r[i].etag=s.etag}this.#f(),await this.#g(n)}async#w(e){let{location:n,key:r}=await this.#t.s3Client.putObject({key:this.#t.key,data:this.#n,fileType:this.#t.file.type||"application/octet-stream",metadata:this.#t.metadata,onProgress:(s)=>{this.#r[0].uploaded=s,this.#f()},signal:e});this.#h({location:n,key:r})}async#y(e){let{uploadId:n,key:r}=await this.#t.s3Client.createMultipartUpload({key:this.#t.key,fileType:this.#t.file.type||"application/octet-stream",metadata:this.#t.metadata,signal:e});this.#e=r,this.#i=n,this.#t.uppy.setFileState(this.#t.file.id,{s3Multipart:{uploadId:n,key:r}}),await this.#g(e)}async#g(e){for(let i=0;i<this.#s.length;i++){if(e.throwIfAborted(),this.#r[i].etag)continue;let a=this.#s[i],l=i+1,d=this.#n.slice(a.start,a.end),c=i;if(this.#e==null)throw Error("Missing S3 object key for uploading part");let{etag:p}=await this.#t.s3Client.uploadPart({key:this.#e,uploadId:this.#i,data:d,partNumber:l,onProgress:(f)=>{this.#r[c].uploaded=f,this.#f()},signal:e});if(this.#r[i].uploaded=a.size,this.#r[i].etag=p,this.#f(),this.#t.onPartComplete)this.#t.onPartComplete({PartNumber:l,ETag:p})}let n=this.#r.flatMap((i,a)=>i.etag?[{partNumber:a+1,etag:i.etag}]:[]);if(this.#e==null)throw Error("Missing S3 object key for completing multipart upload");let{location:r,key:s}=await this.#t.s3Client.completeMultipartUpload({key:this.#e,uploadId:this.#i,parts:n,signal:e});this.#h({location:r,key:s,uploadId:this.#i})}#f(){if(!this.#t.onProgress)return;let e=this.#r.reduce((n,r)=>n+r.uploaded,0);this.#t.onProgress(e,this.#n.size)}#h(e){this.#o.remove(),this.#t.uppy.setFileState(this.#t.file.id,{s3Multipart:void 0}),this.#t.onSuccess?.(e)}#m(e){if(e.name==="AbortError")return;this.#o.remove(),this.#t.onError?.(e)}}var dr="AWS4-HMAC-SHA256",bo="aws4_request",oa="s3",cr="UNSIGNED-PAYLOAD",An="application/octet-stream",ra="application/xml",sa=8388608,Bt="[s3mini] ",ia="[s3mini] endpoint must be a non-empty string",aa="[s3mini] endpoint must be a valid URL. Expected format: https://<host>[:port][/base-path]",la="[s3mini] key must be a non-empty string",Dn="[s3mini] uploadId must be a non-empty string";class da{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=da;var mr=(e)=>e.replace(/^(&quot;|&#34;)+|(&quot;|&#34;)+$/g,""),zn=(e)=>e?.replace(/^"+|"+$/g,"");function ga(e){let n=new URL(e);return n.search="",n.hash="",n.href}var fr=new TextEncoder,ua="0123456789abcdef",gr=(e)=>{let n=new Uint8Array(e),r="";for(let s of n)r+=ua[s>>4]+ua[s&15];return r},ha=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)},wc={"&quot;":'"',"&apos;":"'","&lt;":"<","&gt;":">","&amp;":"&"},ca=(e)=>e.replaceAll(/&(quot|apos|lt|gt|amp);/g,(n)=>wc[n]??n),bn=(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?bn(l):ca(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:ca(n.trim())},yc=(e)=>`%${e.charCodeAt(0).toString(16).toUpperCase()}`,xc=(e)=>encodeURIComponent(e).replace(/[!'()*]/g,yc),va=(e)=>xc(e).replaceAll("%2F","/");class hr extends Error{code;constructor(e,n,r){super(e);this.name=new.target.name,this.code=n,this.cause=r}}class yr extends hr{}class xr extends hr{status;serviceCode;body;constructor(e,n,r,s){super(e,r);this.status=n,this.serviceCode=r,this.body=s}}class wa 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=An,metadata:s={},onProgress:i,signal:a}){let l=new URLSearchParams({filename:e,type:r,...Object.fromEntries(Object.entries(s).map(([h,v])=>[`metadata[${h}]`,String(v)]))}),d=await this._fetch(`/params?${l}`),{url:c,fields:p}=await d.json(),f=new FormData;Object.entries(p).forEach(([h,v])=>{f.set(h,v)}),f.set("file",n);let y=await this._request({url:c,method:"POST",data:f,onProgress:i,signal:a});return{location:`${c}${p.key}`,etag:zn(y.getResponseHeader("etag")),key:p.key}}async createMultipartUpload({key:e,fileType:n=An,metadata:r,signal:s}){if(typeof n!=="string")throw TypeError(`${Bt}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=zn(c.getResponseHeader("etag"));if(p==null)throw Error(`${Bt}Missing ETag in uploadPart response headers`);return{etag:p}}async listParts({uploadId:e,key:n,signal:r}){if(!e)throw TypeError(Dn);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 ya=wa;var bc=3600;function Sc(e){let{accessKeyId:n,secretAccessKey:r,sessionToken:s,region:i,endpoint:a,service:l=oa}=e,d=null,c=null;async function p(f){let y=await Ln(`AWS4${r}`,f),h=await Ln(y,i),v=await Ln(h,l);return Ln(v,bo)}return async function(y){let{method:h,key:v,expiresIn:x=bc}=y,b=new URL(a),R=v?v.replace(/^\/+/,""):"",D=R?va(R):"",U=b.pathname;if(D)U=U.endsWith("/")?`${U}${D}`:`${U}/${D}`;let V=new Date,X=V.toISOString().slice(0,10).replace(/-/g,""),ee=`${X}T${V.toISOString().slice(11,19).replace(/:/g,"")}Z`,ae=`${n}/${X}/${i}/${l}/${bo}`;if(b.searchParams.set("X-Amz-Algorithm",dr),b.searchParams.set("X-Amz-Content-Sha256",cr),b.searchParams.set("X-Amz-Credential",ae),b.searchParams.set("X-Amz-Date",ee),b.searchParams.set("X-Amz-Expires",String(x)),b.searchParams.set("X-Amz-SignedHeaders","host"),s)b.searchParams.set("X-Amz-Security-Token",s);if("uploadId"in y)b.searchParams.set("uploadId",y.uploadId);if("partNumber"in y)b.searchParams.set("partNumber",String(y.partNumber));if(h==="POST"&&!("uploadId"in y))b.searchParams.set("uploads","");b.searchParams.sort();let ye=b.searchParams.toString().replace(/\+/g,"%20"),te=`host:${b.host}`,k=[h,U,ye,te,"","host",cr].join(`
7
- `),xe=`${X}/${i}/${l}/${bo}`,he=[dr,ee,xe,gr(await ha(k))].join(`
8
- `);if(X!==d||!c)d=X,c=await p(X);let re=gr(await Ln(c,he));return{url:`${b.origin}${U}?${ye}&X-Amz-Signature=${re}`}}}var xa=Sc;class ba extends So{endpoint;region;requestSizeInBytes;getCredentials;cachedCredentials;cachedCredentialsPromise;signRequest;constructor({region:e="auto",requestSizeInBytes:n=sa,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(ia);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 xa({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=`${aa} But provided: "${e}"`;throw TypeError(r)}}_checkKey(e){if(typeof e!=="string"||e.trim().length===0)throw TypeError(la)}_validateUploadPartParams(e,n,r){if(this._checkKey(e),typeof n!=="string"||n.trim().length===0)throw TypeError(Dn);if(!Number.isInteger(r)||r<=0)throw TypeError(`${Bt}partNumber must be a positive integer`)}async putObject({key:e,data:n,fileType:r=An,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:ga(l),etag:zn(a.getResponseHeader("etag")),key:e}}async createMultipartUpload({key:e,fileType:n=An,signal:r}){if(this._checkKey(e),typeof n!=="string")throw TypeError(`${Bt}fileType must be a string`);let{xhr:s}=await this.request({request:{method:"POST",key:e},contentType:n,signal:r}),i=bn(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(`${Bt}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=zn(l.getResponseHeader("etag"));if(d==null)throw Error(`${Bt}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 yr("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 xr(`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(Dn);let{xhr:s}=await this.request({request:{method:"GET",key:n,uploadId:e},signal:r}),i=bn(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:ra,data:i,signal:s}),l=bn(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,y=c.Key||c.key,h=c.ETag||c.eTag||c.etag;if(!p||!y)throw Error(`${Bt}CompleteMultipartUpload response missing Location or Key: ${JSON.stringify(c)}`);let v=h?mr(h):void 0;return{location:p,bucket:f,key:y,etag:v}}}throw Error(`${Bt}Failed to complete multipart upload: ${JSON.stringify(l)}`)}async abortMultipartUpload({key:e,uploadId:n,signal:r}){if(this._checkKey(e),!n)throw TypeError(Dn);let{xhr:s}=await this.request({request:{method:"DELETE",key:e,uploadId:n},signal:r}),i=bn(s.responseText);if(i&&"error"in i&&typeof i.error==="object"&&i.error!==null&&"message"in i.error)throw Error(`${Bt}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(`${Bt}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=bn(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 Rr=ba;var Sa=1048576,Cc={shouldUseMultipart:(e)=>(e.size||0)>100*Sa,allowedMetaFields:!0,limit:6};class Co extends yn{static VERSION=ta.version;#n;#e;#t={};constructor(e,n){super(e,{...Cc,...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 ya({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 Rr({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 Rr({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*Sa}#d(e){if("companionEndpoint"in this.opts)return e.name;return this.opts.generateObjectKey?.(e)??`${crypto.randomUUID()}-${e.name}`}#u(e){let n=hn(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 Ca={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 Ra={strings:{uploadStalled:"Upload has not made any progress for %{seconds} seconds. You may want to retry it."}};function Fc(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 Tn(r,e),r;return r.request=e,r}function Fa(e){return e.data.slice(0,e.data.size,e.meta.type)}var Ic={formData:!0,fieldName:"file",method:"post",allowedMetaFields:!0,bundle:!1,headers:{},timeout:30000,limit:5,withCredentials:!1,responseType:""};class Fo extends yn{static VERSION=Ca.version;#n;#e;uploaderEvents;constructor(e,n){super(e,{...Ic,fieldName:n.bundle?"files[]":"file",...n});if(this.type="uploader",this.id=this.opts.id||"XHRUpload",this.defaultLocale=Ra,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),Fc(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){hn(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=Fa(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=Fa(i);if(i.name)r.append(a.fieldName,l,i.name);else r.append(a.fieldName,l)}),r}async#t(e){let n=new xn(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=hn(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 Ht=null,Un=0;async function Ia(){if(Un++,Un>1&&Ht)return;if(typeof navigator<"u"&&"wakeLock"in navigator)try{Ht=await navigator.wakeLock.request("screen"),Ht.addEventListener("release",()=>{Ht=null})}catch(e){console.warn("Screen Wake Lock request failed:",e)}}async function Ea(){if(Un=Math.max(0,Un-1),Un===0&&Ht)try{await Ht.release()}catch(e){console.warn("Screen Wake Lock release failed:",e)}finally{Ht=null}}if(typeof document<"u")document.addEventListener("visibilitychange",async()=>{if(document.visibilityState==="visible"&&Un>0&&!Ht)try{if(typeof navigator<"u"&&"wakeLock"in navigator)Ht=await navigator.wakeLock.request("screen"),Ht.addEventListener("release",()=>{Ht=null})}catch(e){console.warn("Screen Wake Lock re-acquisition failed:",e)}});var Gt=new Map;if(typeof window<"u")window.addEventListener("beforeunload",(e)=>{if(Cn.getState().uploading>0||Gt.size>0)e.preventDefault(),e.returnValue=""}),window.addEventListener("pagehide",()=>{if(Gt.size===0)return;for(let e of Gt.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)}}Gt.clear()});function _a(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 gu({files:e,taskId:n,teamId:r,storageBackend:s,createdAssets:i=[],presignedUrls:a=[],onFileFinished:l}){if(!e.length)return;await Ia();let d=Cn.getState(),{increment:c,decrement:p,updateFileProgress:f,completeFile:y,failFile:h}=d,v=new Map;for(let k of i)v.set(k.tempId,{assetId:k.assetId,key:k.key});let x=new Map;for(let k of a)if(k.id)x.set(k.id,{url:k.url||"",fileId:k.fileId||""});let b=new Map,R=new yo({autoProceed:!0,allowMultipleUploadBatches:!1});if(s==="s3")R.use(Co,{shouldUseMultipart:(k)=>(k.size||0)>104857600,getChunkSize:({size:k})=>{if(k>5368709120)return 33554432;if(k>1073741824)return 16777216;return 8388608},generateObjectKey:(k)=>k.meta.key||k.name,signRequest:async(k)=>{let xe="uploadId"in k?k.uploadId:void 0,he="partNumber"in k?k.partNumber:void 0,re=b.get(k.key);if(re&&xe){let dt=Gt.get(re);if(dt)dt.uploadId=xe}let fe=await fetch(`/api/teams/${r}/upload/sign`,{method:"POST",headers:{"Content-Type":"application/json"},body:JSON.stringify({key:k.key,method:k.method,uploadId:xe,partNumber:he,fileId:re}),credentials:"include"});if(!fe.ok)throw Error(`Failed to sign request: ${fe.statusText}`);return{url:(await fe.json()).url}}});else R.use(Fo,{endpoint:(k)=>(Array.isArray(k)?k[0]:k)?.meta?.url||"",method:"PUT",formData:!1,headers:(k)=>({"Content-Type":k.type||"application/octet-stream"}),getResponseData:(k)=>{try{return k.responseText?JSON.parse(k.responseText):{}}catch{return{}}},shouldRetry:()=>!1,limit:5});let D=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..."),R.retryAll().catch((k)=>{console.error("[Uploader] Error during retryAll:",k)})},ae=(k=2000)=>{if(X)return;X=setTimeout(()=>{X=null,ee()},k)},ye=()=>{let k=typeof navigator<"u"?navigator.onLine:!0;console.log(`[Uploader] Network 'online' event received! navigator.onLine = ${k}`),ee()},te=()=>{let k=typeof navigator<"u"?navigator.onLine:!1;console.warn(`[Uploader] Network 'offline' event received! navigator.onLine = ${k}`)};if(R.on("back-online",ye),typeof window<"u")window.addEventListener("online",ye),window.addEventListener("offline",te);R.on("upload-progress",(k,xe)=>{if(!k)return;let he=k.meta.fileId;if(he&&xe.bytesUploaded!=null)f(n,he,xe.bytesUploaded)}),R.on("upload-success",(k)=>{if(!k)return;let xe=k.meta.fileId;Gt.delete(xe);let he=(async()=>{try{let re=await g.api.teams[":teamId"].upload.tasks[":taskId"].$patch({param:{teamId:r,taskId:n},json:{fileId:xe}});if(!re.ok)throw Error(`Failed to confirm upload: ${re.statusText}`);y(n,xe),p(),await l?.(xe)}catch(re){throw console.error("Failed to confirm upload:",re),h(n,xe),p(),M.error(`Failed to confirm upload: ${k.name}`),await l?.(xe),re}})();D.set(xe,he)});let Ve=(k,xe)=>{let he=k.meta.fileId;if(!Gt.has(he))return;Gt.delete(he),h(n,he),p(),M.error(`Failed to upload file: ${k.name}`);let re=(async()=>{try{await g.api.teams[":teamId"].upload.tasks[":taskId"].$patch({param:{teamId:r,taskId:n},json:{fileId:he,errorMessage:xe?.message||"Upload failed"}})}catch(fe){console.error("Failed to report upload failure:",fe)}await l?.(he)})();D.set(he,re)};R.on("upload-error",(k,xe)=>{if(!k)return;if(console.error(`[Uploader] upload-error for ${k.name}:`,xe),_a(xe)){if(console.warn(`[Uploader] Network error detected for ${k.name}. Keeping upload active to resume when connection is restored.`),typeof navigator<"u"&&navigator.onLine){let he=k.meta.fileId,re=(U.get(he)||0)+1;if(U.set(he,re),re>V){console.error(`[Uploader] Exceeded max online retries (${V}) for ${k.name}. Failing permanently.`),Ve(k,xe);return}console.log(`[Uploader] Scheduling retry for ${k.name} (attempt ${re}/${V})...`),ae(2000)}return}Ve(k,xe)});for(let k of e){let xe=v.get(k.id),he=x.get(k.id),re=xe?.assetId||he?.fileId||k.id,fe=xe?.key,qe=he?.url;if(fe)b.set(fe,re);Gt.set(re,{teamId:r,taskId:n,fileId:re,key:fe}),c(),R.addFile({name:k.file.name,type:k.file.type,data:k.file,meta:{fileId:re,key:fe,url:qe}})}try{await new Promise((k)=>{let xe=(he)=>{if(Gt.size===0){k();return}let re=he?.failed||[];if(typeof navigator<"u"&&!navigator.onLine||re.some((dt)=>_a(dt?.error))){console.log("[Uploader] Batch completed with network issues; waiting for reconnection to resume...");return}for(let dt of re)Ve(dt,dt?.error);if(Gt.size===0)k()};R.on("complete",xe),R.on("cancel-all",()=>{k()})}),await Promise.allSettled(Array.from(D.values()))}finally{if(X)clearTimeout(X);if(typeof window<"u")window.removeEventListener("online",ye),window.removeEventListener("offline",te);await Ea(),R.destroy()}}E();E();function Ta({isOpen:e,onClose:n,onConfirm:r,mode:s,teamId:i,currentProjectId:a}){let[l,d]=u(a),[c,p]=u(null),[f,y]=u(!1),{data:h,isLoading:v}=Z({queryKey:["projects",i],queryFn:async()=>{let U=await g.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}),x=h?.data??[],b=x.find((U)=>U.id===l),R=()=>{if(c)r(c.id,f);else if(b?.rootFolder)r(b.rootFolder,f)};return t(de,{open:e,onOpenChange:n,children:o(ce,{className:"sm:max-w-[425px] flex flex-col h-[600px]",children:[t(me,{children:t(ue,{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:x.map((U)=>t(oe,{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(le,{className:"h-full",children:b&&b.rootFolder?t(Sr,{teamId:i,projectId:b.id,projectName:b.name,rootFolderId:b.rootFolder,onSelect:p,selectedFolderId:c?.id||b.rootFolder}):t("div",{className:"flex items-center justify-center h-full p-4",children:v?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(ur,{id:"copy-comments",checked:f,onCheckedChange:(U)=>y(!!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(He,{children:[t(S,{variant:"outline",onClick:n,children:"Cancel"}),t(S,{onClick:R,disabled:!b,children:"Confirm"})]})]})})}E();function Na({item:e,isOpen:n,onClose:r,allowDownload:s=!0,shareId:i,sharePassword:a}){m(()=>{if(!n)return;let h=(v)=>{if(v.key===" "||v.code==="Space")v.preventDefault(),v.stopPropagation(),r()};return window.addEventListener("keydown",h,!0),()=>{window.removeEventListener("keydown",h,!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 h=i?await g.api.shares[":shareId"].files[":fileId"].$get({param:{shareId:i,fileId:d}},c?{headers:{"x-share-password":c}}:void 0):await g.api.files[":fileId"].$get({param:{fileId:d}});if(!h.ok)throw Error("Failed to fetch file detail");return await h.json()},enabled:n&&!l&&!!d});if(!e)return null;let f=Boolean(e.media?.videoTranscodes?.some((h)=>!!h.url)||e.media?.imageTranscodes?.some((h)=>!!h.url)||e.media?.pdfTranscode?.url),y=p||(f?e:null);return t(de,{open:n,onOpenChange:(h)=>{if(!h)r()},children:o(ce,{"data-testid":"file-preview-dialog-content",showCloseButton:!1,className:C("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(ue,{className:"text-sm font-medium text-foreground truncate",title:e.name,children:e.name})}),t("button",{"data-testid":"quick-preview-close-button",onClick:r,className:"p-1 rounded-sm text-muted-foreground hover:text-foreground hover:bg-muted transition-colors cursor-pointer","aria-label":"Close",children:t(Ne,{size:16})})]}),l?o("div",{className:"flex flex-col items-center justify-center p-8 text-center select-none gap-4",children:[t("div",{className:"p-4 rounded-2xl bg-primary/10 text-primary",children:t(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?vg({count:e.fileCount||0}):bg({count:e.fileCount||0})})]})]}):!y?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:y,allowDownload:s,shareId:i,autoPlay:!0})})]})})}function ka({...e}){return t(jd,{"data-slot":"context-menu",...e})}function Pa({...e}){return t(Vd,{"data-slot":"context-menu-trigger",...e})}function Mr({...e}){return t(Gs,{"data-slot":"context-menu-portal",...e})}function Tr({...e}){return t(Gd,{"data-slot":"context-menu-sub",...e})}function Nr({className:e,inset:n,children:r,...s}){return o(Wd,{"data-slot":"context-menu-sub-trigger","data-inset":n,className:C("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(It,{className:"ml-auto"})]})}function kr({className:e,...n}){return t(Kd,{"data-slot":"context-menu-sub-content",className:C("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(Gs,{children:t(qd,{"data-slot":"context-menu-content",className:C("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 Ct({className:e,inset:n,variant:r="default",...s}){return t(Bd,{"data-slot":"context-menu-item","data-inset":n,"data-variant":r,className:C("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 Io({className:e,...n}){return t(Hd,{"data-slot":"context-menu-separator",className:C("-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:y,onMoveTo:h,onCopyTo:v,folders:x,files:b,isRecentlyDeleted:R,isRecents:D,onOpenAgentsMd:U,isShareView:V,onRemoveFromShare:X,shareLinks:ee=[],onCreateShareLink:ae,onAddToShareLink:ye,canEdit:te=!0}){let k=[...x,...b].filter((ze)=>n.has(ze.id)),xe=e&&n.has(e.id),he=xe?k:e?[e]:[],re=he,fe=he,qe=()=>{if(e)r(e)},dt=()=>{s(re)},ft=()=>{if(xe)i(k);else if(e)i([e])},We=()=>{if(xe)a?.(k);else if(e)a?.([e])},j=()=>{l(fe)};if(D)return null;if(V){if(!e)return null;return o(jn,{children:[o(Ct,{onSelect:ft,children:[t(wt,{className:"mr-2 h-4 w-4"}),t("span",{children:_r()})]}),o(Ct,{onSelect:We,children:[t(wr,{className:"mr-2 h-4 w-4"}),t("span",{children:zf()})]}),te&&o(Ct,{onSelect:()=>X?.(he),className:"text-destructive",children:[t(we,{className:"mr-2 h-4 w-4"}),t("span",{children:Bp()})]})]})}if(R){if(!e)return null;return t(jn,{children:o(Ct,{onSelect:j,children:[t(On,{className:"mr-2 h-4 w-4"}),t("span",{children:Up()})]})})}if(!e){if(!te||D)return null;return o(jn,{onCloseAutoFocus:(ze)=>{ze.preventDefault()},children:[o(Ct,{onSelect:c,children:[t($n,{className:"mr-2 h-4 w-4"}),t("span",{children:sm()})]}),o(Ct,{onSelect:p,children:[t($n,{className:"mr-2 h-4 w-4"}),t("span",{children:im()})]}),o(Ct,{onSelect:()=>{d(kl())},children:[t(hu,{className:"mr-2 h-4 w-4"}),t("span",{children:kl()})]})]})}let be=xe&&n.size>1?o(jn,{onCloseAutoFocus:(ze)=>{ze.preventDefault()},children:[o(Ct,{onSelect:ft,children:[t(wt,{className:"mr-2 h-4 w-4"}),t("span",{children:_r()})]}),o(Ct,{onSelect:We,children:[t(wr,{className:"mr-2 h-4 w-4"}),t("span",{children:zf()})]}),te&&o(Ct,{onSelect:()=>h(he),children:[t(oo,{className:"mr-2 h-4 w-4"}),t("span",{children:Ag()})]}),te&&o(Ct,{onSelect:()=>v(he),children:[t(wr,{className:"mr-2 h-4 w-4"}),t("span",{children:wh()})]}),te&&o(Ct,{onSelect:dt,className:"text-destructive",children:[t(we,{className:"mr-2 h-4 w-4"}),t("span",{children:ht()})]}),te&&o(L,{children:[t(Io,{}),o(Ct,{onSelect:()=>ae?.(he),children:[t(pe,{className:"mr-2 h-4 w-4"}),t("span",{children:Ch()})]}),ee.length>0&&o(Tr,{children:[o(Nr,{children:[t(el,{className:"mr-2 h-4 w-4"}),t("span",{children:Vm()})]}),t(Mr,{children:t(kr,{className:"w-48",children:ee.map((ze)=>t(Ct,{onSelect:()=>ye?.(ze.id,he),children:t("span",{className:"truncate",children:ze.name})},ze.id))})})]})]})]}):o(jn,{onCloseAutoFocus:(ze)=>{ze.preventDefault()},children:[te&&o(Ct,{onSelect:()=>{qe()},children:[t(Xr,{className:"mr-2 h-4 w-4"}),t("span",{children:Zo()})]}),o(Ct,{onSelect:ft,children:[t(wt,{className:"mr-2 h-4 w-4"}),t("span",{children:_r()})]}),o(Ct,{onSelect:We,children:[t(wr,{className:"mr-2 h-4 w-4"}),t("span",{children:zf()})]}),te&&o(Ct,{onSelect:()=>h(he),children:[t(oo,{className:"mr-2 h-4 w-4"}),t("span",{children:Ag()})]}),te&&o(Ct,{onSelect:()=>v(he),children:[t(wr,{className:"mr-2 h-4 w-4"}),t("span",{children:wh()})]}),te&&(e.type==="file"||e.type==="version_stack")&&o(Ct,{onSelect:()=>f(e),children:[t($n,{className:"mr-2 h-4 w-4"}),t("span",{children:qy()})]}),te&&e.type==="version_stack"&&o(Ct,{onSelect:()=>y?.(e),children:[t(fo,{className:"mr-2 h-4 w-4"}),t("span",{children:cp()})]}),e.type==="folder"&&U&&o(Ct,{onSelect:()=>U(e),children:[t(ln,{className:"mr-2 h-4 w-4"}),t("span",{children:"AGENTS.md"})]}),te&&o(L,{children:[t(Io,{}),o(Ct,{onSelect:dt,className:"text-destructive",children:[t(we,{className:"mr-2 h-4 w-4"}),t("span",{children:ht()})]}),t(Io,{}),o(Ct,{onSelect:()=>ae?.(he),children:[t(pe,{className:"mr-2 h-4 w-4"}),t("span",{children:Ch()})]}),ee.length>0&&o(Tr,{children:[o(Nr,{children:[t(el,{className:"mr-2 h-4 w-4"}),t("span",{children:Vm()})]}),t(Mr,{children:t(kr,{className:"w-48",children:ee.map((ze)=>t(Ct,{onSelect:()=>ye?.(ze.id,he),children:t("span",{className:"truncate",children:ze.name})},ze.id))})})]})]})]});return t(L,{children:be})}E();var Rn=F(({className:e,onClick:n,onMouseDown:r,disabled:s,value:i,title:a,tooltipSide:l="top",tooltipDelayDuration:d=100,...c},p)=>{let[f,y]=u(!1),h=_(null),v=typeof i==="string"?i:i?.toString()??"";if(s)return t(un,{delayDuration:d,children:o(dn,{open:f,onOpenChange:(x)=>{if(x)if(h.current&&h.current.scrollWidth>h.current.clientWidth)y(!0);else y(!1);else y(!1)},children:[t(fn,{asChild:!0,children:t("span",{ref:h,className:C("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:v})}),f&&t(pn,{side:l,className:"max-w-md break-all text-wrap [text-wrap:normal] text-left",children:v})]})});return t(z,{ref:p,value:i,tabIndex:0,className:C("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:(x)=>{x.stopPropagation(),n?.(x)},onMouseDown:(x)=>{x.stopPropagation(),r?.(x)},...c})});Rn.displayName="EditableText";E();var ro=({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,h=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:[ks(r.startTime)," - ",ks(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:ks(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(rf,{spriteUrl:e.preview.spriteUrl,thumbnailUrl:e.preview.thumbnailUrl,videoWidth:e.preview.originalWidth,videoHeight:e.preview.originalHeight,reverse:d}),h]});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"}),h]});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"})}),h]});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 Ka({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:y=()=>{},onSaveField:h=()=>{},dragState:v,disabled:x,onAction:b,isRecentlyDeleted:R,isRecents:D,selectedCount:U,fields:V=[],isShareView:X,canEdit:ee=!0,allowDownload:ae=!0,hideCheckbox:ye=!1,hideActions:te=!1}){let[Ve,k]=u(n.name),xe=_(null),[he,re]=u(!1),fe=_(null),qe=Cn((De)=>De.fileProgress[n.id||""]),dt=qe?qe.total>0?qe.loaded/qe.total*100:0:0,ft=(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 De=await g.api.files[":fileId"].$get({param:{fileId:n.id||""}});if(!De.ok)throw Error("failed to fetch file");return await De.json()},enabled:ft,refetchInterval:(De)=>{let Dt=De.state.data;return Dt?.status==="processed"||Dt?.status==="failed"||Dt?.status==="error"?!1:1000}}),j=N(()=>{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:ze}=xs({id:`browser:${j.id}`,data:{type:j.type,id:j.id,item:j},disabled:x}),{ref:Ye,isDropTarget:Se}=Br({id:`browser:${j.id}`,data:{type:j.type,id:j.id,item:j},disabled:x}),Ge=(De)=>{if(x)return;be(De),Ye(De)},mt=ze||(v?.draggedIds.has(j.id)??!1),Tt=N(()=>{if(!v?.isActive)return!1;if(v.draggedIds.has(j.id))return!1;return v.isSingleFile},[v,j.id]),se=Se&&Tt,tt=mt?0.5:1,yt=N(()=>(j.fieldValues||[]).reduce((De,Dt)=>(De[Dt.fieldId]=Dt,De),{}),[j.fieldValues]);m(()=>{if(i){let De=setTimeout(()=>{if(xe.current)Is(xe.current)},150);return()=>clearTimeout(De)}},[i]),m(()=>{k(j.name)},[j.name]);let _t=(De)=>{a(j,De)},$e=()=>{if(Ve!==j.name)f(Ve||"");y()},Ee=(De)=>{if(De.key==="Enter")$e();if(De.key==="Escape")k(j.name||""),y()},J=N(()=>{if(!j.createdAt)return"";return Wy({time:Fr(j.createdAt),author:j.agent?iu({user:j.creator?.name||Bl(),agent:j.agent.name}):j.creator?.name||Bl()})},[j.createdAt,j.agent,j.creator?.name]),T=R?tf(j.deletedAt):null,Q=T===null?"":T===1?yg({count:T}):_g({count:T}),je=Boolean(j.preview?.thumbnailUrl||j.preview?.spriteUrl),rt=j.status==="failed",Pt=j.status==="processing"||j.status==="uploaded",Vn=j.status==="uploading"?su():j.status==="uploaded"||j.status==="processing"?KE():null,qn=j.media?.error||zg(),In=T!==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:[T!==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(Qt,{className:"h-3.5 w-3.5"}),t("span",{children:Th({count:T})})]}),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(Ws,{className:"h-3.5 w-3.5"}),t("span",{children:j.commentsCount})]})]}):null;return o("div",{ref:Ge,style:{opacity:tt},onClick:_t,onDoubleClick:()=>l(j),onContextMenu:(De)=>d(De,j),onMouseDown:(De)=>{if(De.shiftKey)De.preventDefault()},"data-testid":"file-card",className:C("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",se&&"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(ur,{checked:s,onCheckedChange:()=>{},onClick:(De)=>{De.stopPropagation(),a(j,De)},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(ne,{children:["v",j.versionStack.versions.find((De)=>De.id===j.id)?.version??j.versionStack.versions.length]}),rt&&t(un,{delayDuration:100,children:o(dn,{children:[t(fn,{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:z1()})}),t(pn,{side:"bottom","data-testid":"file-card-failed-tooltip",className:"max-w-xs break-words text-xs",children:qn})]})})]}),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:dt,className:"w-16 h-16 z-10"})}):je?o(L,{children:[t("div",{"data-testid":"file-card-preview-media",className:C("h-full w-full",Pt&&"animate-pulse"),children:t(ro,{item:j,showDuration:!Pt&&!rt,matchDuration:j.startTime!=null&&j.endTime!=null?{startTime:j.startTime,endTime:j.endTime}:null})}),In]}):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:kv()})}):rt?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:zg()})]}):Pt?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(ro,{item:j,showDuration:!0,matchDuration:j.startTime!=null&&j.endTime!=null?{startTime:j.startTime,endTime:j.endTime}:null}),In]})}),o("div",{className:"flex items-center justify-between gap-2 p-3",children:[o("div",{className:"min-w-0 flex-1",children:[t(Rn,{ref:xe,value:Ve,onChange:(De)=>k(De.target.value),onBlur:$e,onKeyDown:Ee,disabled:!i,className:"h-auto p-0 text-sm font-medium text-foreground truncate !bg-transparent"}),t(un,{delayDuration:100,children:o(dn,{open:he,onOpenChange:(De)=>{if(De)if(fe.current&&(fe.current.scrollHeight>fe.current.clientHeight||fe.current.scrollWidth>fe.current.clientWidth))re(!0);else re(!1);else re(!1)},children:[t(fn,{asChild:!0,children:t("p",{ref:fe,className:"text-sm line-clamp-2 h-[2lh] text-muted-foreground",children:Vn??J})}),he&&t(pn,{side:"bottom",className:"max-w-md break-all text-wrap [text-wrap:normal] text-left",children:J})]})})]}),!te&&!D&&o(ge,{modal:!1,children:[t(Ae,{asChild:!0,children:t(S,{size:"icon-sm",variant:"ghost",className:"cursor-pointer",onClick:(De)=>De.stopPropagation(),children:t(rr,{className:"h-4 w-4 text-foreground"})})}),t(_e,{align:"end",children:X?o(L,{children:[ae&&o(K,{onClick:(De)=>{De.stopPropagation(),b?.("download",n)},children:[t(wt,{className:"mr-2 h-4 w-4"}),t("span",{children:_r()})]}),ee&&o(K,{onClick:(De)=>{De.stopPropagation(),b?.("remove-from-share",n)},className:"text-destructive",children:[t(we,{className:"mr-2 h-4 w-4"}),t("span",{children:Bp()})]})]}):R?o(K,{onClick:(De)=>{De.stopPropagation(),b?.("restore",n)},children:[t(On,{className:"mr-2 h-4 w-4"}),t("span",{children:Up()})]}):o(L,{children:[ee&&(!s||(U||0)<=1)&&o(K,{onClick:(De)=>{De.stopPropagation(),b?.("rename",n)},children:[t(Xr,{className:"mr-2 h-4 w-4"}),t("span",{children:Zo()})]}),ee&&n.type==="version_stack"&&o(K,{onClick:(De)=>{De.stopPropagation(),b?.("manage-versions",n)},children:[t(fo,{className:"mr-2 h-4 w-4"}),t("span",{children:cp()})]}),ae&&o(K,{onClick:(De)=>{De.stopPropagation(),b?.("download",n)},children:[t(wt,{className:"mr-2 h-4 w-4"}),t("span",{children:_r()})]}),ee&&o(L,{children:[t(Kt,{}),o(K,{onClick:(De)=>{De.stopPropagation(),b?.("delete",n)},className:"text-destructive",children:[t(we,{className:"mr-2 h-4 w-4"}),t("span",{children:ht()})]})]})]})})]})]}),V&&V.length>0&&t("div",{className:"space-y-2 border-t p-1 pt-3 mx-2",onClick:(De)=>De.stopPropagation(),onDoubleClick:(De)=>De.stopPropagation(),children:V.map((De)=>{let Dt=De.config?.type?pa[De.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:[Dt&&t(Dt,{className:"h-3.5 w-3.5 text-muted-foreground shrink-0"}),t("span",{children:De.config?.name})]}),t("div",{className:"min-h-[28px]",children:t(Ms,{fieldId:De.id,config:De.config,value:yt[De.id]?.value,onSave:ee&&!D?(Bn)=>h(De.id,Bn):void 0,readOnly:De.readOnly||!ee||!!D})})]},De.id)})})]})}E();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:y,onSaveField:h,dragState:v,disabled:x,fields:b,columnSizing:R,canEdit:D=!0,isRecents:U}){let[V,X]=u(n.name),ee=_(null),ae=Cn((be)=>be.fileProgress[n.id||""]),ye=ae?ae.total>0?ae.loaded/ae.total*100:0:0,te=(n.type==="file"||n.type==="version_stack")&&!!e&&(n.status==="uploading"||n.status==="uploaded"||n.status==="processing"),{data:Ve}=Z({queryKey:["file",e,n.id],queryFn:async()=>{let be=await g.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 ze=be.state.data;return ze?.status==="processed"||ze?.status==="failed"||ze?.status==="error"?!1:1000}}),k=N(()=>{if(n.status==="processed"||n.status==="error"||n.status==="failed")return n;if(Ve?.status==="processed"||Ve?.status==="error"||Ve?.status==="failed")return Ve;return Ve||n},[n,Ve]),{ref:xe,isDragging:he}=xs({id:`browser:${k.id}`,data:{type:k.type,id:k.id,item:k},disabled:x}),fe=he||(v?.draggedIds.has(k.id)??!1)?0.5:1,qe=N(()=>(k.fieldValues||[]).reduce((be,ze)=>(be[ze.fieldId]=ze,be),{}),[k.fieldValues]);m(()=>{if(i){let be=setTimeout(()=>{if(ee.current)Is(ee.current)},150);return()=>clearTimeout(be)}},[i]),m(()=>{X(k.name)},[k.name]);let dt=(be)=>{if(!be)return"-";return new Date(be).toLocaleDateString("en-US",{month:"short",day:"numeric",year:"numeric"})},ft=(be)=>{a(k,be)},We=()=>{if(V!==k.name)f(V||"");y()},j=(be)=>{if(be.key==="Enter")We();if(be.key==="Escape")X(k.name||""),y()};return o("div",{ref:xe,style:{opacity:fe},onClick:ft,onDoubleClick:()=>l(k),onContextMenu:(be)=>d(be,k),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:C("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:R?.name||300,minWidth:R?.name||300},children:o("div",{className:"flex items-center gap-2 overflow-hidden",children:[t(ur,{checked:s,onCheckedChange:()=>{},onClick:(be)=>{be.stopPropagation(),a(k,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:k.status==="uploading"?t(ma,{progress:ye,className:"w-7 h-7"}):k.status==="failed"&&!k.preview?.thumbnailUrl?t(nr,{className:"h-4 w-4 text-destructive"}):k.preview?.thumbnailUrl?t("img",{src:k.preview.thumbnailUrl,alt:"",className:"w-full h-full object-cover"}):k.preview?.proxyType==="audio"||k.proxyType==="audio"?t(ts,{className:"h-4 w-4 text-muted-foreground"}):k.type==="folder"?t(lr,{className:"h-4 w-4 text-primary"}):t(ar,{className:"h-4 w-4 text-muted-foreground"})}),t(Rn,{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"}),k.status==="error"&&t("span",{className:"text-xs text-destructive font-semibold shrink-0",children:Rv()}),k.status==="failed"&&t("span",{"data-testid":"file-list-item-failed",className:"text-xs text-destructive font-semibold shrink-0",children:XE()}),k.agent&&t("span",{className:"select-none rounded bg-black/60 px-1 py-0.5 text-xs font-medium text-white shrink-0",title:k.agent.name,"data-testid":"agent-badge",children:"AI"}),k.versionStack&&o(ne,{variant:"outline",className:"px-1 py-0 text-xs shrink-0",children:["v",k.versionStack.versions.find((be)=>be.id===k.id)?.version??k.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:R?.size||100,minWidth:R?.size||100},children:k.type==="folder"?"-":k.sizeByte?Lr(k.sizeByte):"-"}),t("div",{className:"px-4 py-2 border-r shrink-0 flex items-center",style:{width:R?.modified||200,minWidth:R?.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:dt(k.updatedAt)}),!U&&t("button",{onClick:(be)=>{be.stopPropagation();let ze=be.target.getBoundingClientRect(),Ye=new MouseEvent(be.nativeEvent.type,{bubbles:!0,cancelable:!0,clientX:ze.left,clientY:ze.bottom});d(Ye,k)},className:"opacity-0 shrink-0 transition-opacity group-hover:opacity-100 ml-2",children:t(Er,{className:"h-4 w-4 text-muted-foreground hover:text-foreground"})})]})}),k.type==="file"&&b.map((be)=>t("div",{onClick:(ze)=>ze.stopPropagation(),onDoubleClick:(ze)=>ze.stopPropagation(),className:"px-4 py-2 truncate border-r shrink-0 flex items-center",style:{width:R?.[be.id]||150,minWidth:R?.[be.id]||150},children:t(Ms,{fieldId:be.id,config:be.config,value:qe[be.id]?.value,onSave:D&&!U?(ze)=>h(be.id,ze):void 0,readOnly:be.readOnly||!D||!!U})},be.id))]})}E();var Ec=({items:e})=>{let n=e,r=n?n.slice(0,3):[],s=r.length,i=(a)=>{if(!a)return null;return t(ro,{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 Wa({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:y,disabled:h,onAction:v,isRecentlyDeleted:x,isRecents:b,selectedCount:R,canEdit:D=!0,isShareView:U,isExternalDragging:V,externalOverFolderId:X,setExternalOverFolderId:ee,resetExternalDragState:ae,onExternalDrop:ye,allowDownload:te=!0,hideCheckbox:Ve=!1,hideActions:k=!1}){let[xe,he]=u(e.name||""),re=_(null),{ref:fe,isDragging:qe}=xs({id:`browser:${e.id}`,data:{type:"folder",id:e.id,item:e},disabled:h}),{ref:dt,isDropTarget:ft}=Br({id:`browser:${e.id}`,data:{type:"folder",id:e.id,item:e},disabled:h}),We=(T)=>{if(h)return;fe(T),dt(T)},j=qe||(y?.draggedIds.has(e.id)??!1),be=N(()=>{if(!y?.isActive)return!1;if(y.draggedIds.has(e.id))return!1;return!0},[y,e.id]),ze=V&&X===e.id,Ye=ft&&be||ze,Se=j?0.5:1;m(()=>{if(s){let T=setTimeout(()=>{re.current?.focus(),re.current?.select()},150);return()=>clearTimeout(T)}},[s]),m(()=>{he(e.name||"")},[e.name]);let Ge=(T)=>{i(e,T)},mt=()=>{if(xe!==e.name)p(xe||"");f()},Tt=(T)=>{if(T.key==="Enter")mt();if(T.key==="Escape")he(e.name||""),f()},se=300,tt=220,yt=8,_t={cornerRadius:4,tabRadius:5,tabSlope:15,tabBaseWidth:120},$e=N(()=>{let{cornerRadius:T,tabRadius:Q,tabSlope:je,tabBaseWidth:rt}=_t,Pt=1;return`M 1, ${yt+1} L 1, ${1+Q} A ${Q} ${Q} 0 0 1 ${1+Q} 1 L ${rt-je+1-Q} 1 Q ${rt-je+1} 1 ${rt-je+1} 1 L ${rt+1} ${yt+1} L ${se-T-1} ${yt+1} A ${T} ${T} 0 0 1 ${se-1} ${yt+T+1} L ${se-1} ${tt-T-1} A ${T} ${T} 0 0 1 ${se-T-1} ${tt-1} L ${T+1} ${tt-1} A ${T} ${T} 0 0 1 1 ${tt-T-1} Z`.replace(/\s+/g," ").trim()},[]),Ee=x?tf(e.deletedAt):null,J=Ee===null?"":Ee===1?yg({count:Ee}):_g({count:Ee});return o("div",{ref:We,style:{opacity:Se},onClick:Ge,onDoubleClick:()=>a(e),onContextMenu:(T)=>l(T,e),onMouseDown:(T)=>{if(T.shiftKey)T.preventDefault()},onDragEnter:V?()=>{ee?.(e.id)}:void 0,onDragLeave:V?(T)=>{if(!T.currentTarget.contains(T.relatedTarget))ee?.(null)}:void 0,onDragOver:V?(T)=>{T.preventDefault()}:void 0,onDrop:V?async(T)=>{T.preventDefault(),T.stopPropagation(),ae?.();let Q=await Xa(T.dataTransfer);ye?.(Q,e.id)}:void 0,"data-testid":"file-card",className:C("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 ${se} ${tt}`,preserveAspectRatio:"none",className:"overflow-visible",children:t("path",{d:$e,vectorEffect:"non-scaling-stroke",strokeLinejoin:"round",strokeWidth:Ye||n?2:1,className:C("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 ${se} ${tt}`,preserveAspectRatio:"none",className:"overflow-visible",children:t("path",{d:$e,vectorEffect:"non-scaling-stroke",strokeLinejoin:"round",strokeWidth:Ye?3:1,className:C("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:[!Ve&&t("div",{className:"absolute top-1 left-1 z-30 transition-all duration-200",children:t(ur,{checked:r,onClick:(T)=>T.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(Ec,{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(Qt,{className:"h-3.5 w-3.5"}),t("span",{children:Th({count:Ee})})]})]}),o("div",{className:"flex flex-col gap-1 mt-2 px-1",children:[t(Rn,{ref:re,value:xe||"",onChange:(T)=>he(T.target.value),onBlur:mt,onKeyDown:Tt,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?vg({count:e.fileCount||0}):bg({count:e.fileCount||0})}),!k&&!b&&o(ge,{modal:!1,children:[t(Ae,{asChild:!0,children:t("button",{onClick:(T)=>T.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:(T)=>{T.stopPropagation(),v?.("download",e)},children:[t(wt,{className:"mr-2 h-4 w-4"}),t("span",{children:_r()})]}),D&&o(K,{onClick:(T)=>{T.stopPropagation(),v?.("remove-from-share",e)},className:"text-destructive",children:[t(we,{className:"mr-2 h-4 w-4"}),t("span",{children:Bp()})]})]}):x?o(K,{onClick:(T)=>{T.stopPropagation(),v?.("restore",e)},children:[t(On,{className:"mr-2 h-4 w-4"}),t("span",{children:Up()})]}):o(L,{children:[D&&(!r||(R||0)<=1)&&o(K,{onClick:(T)=>{T.stopPropagation(),v?.("rename",e)},children:[t(Xr,{className:"mr-2 h-4 w-4"}),t("span",{children:Zo()})]}),te&&o(K,{onClick:(T)=>{T.stopPropagation(),v?.("download",e)},children:[t(wt,{className:"mr-2 h-4 w-4"}),t("span",{children:_r()})]}),D&&o(L,{children:[t(Kt,{}),o(K,{onClick:(T)=>{T.stopPropagation(),v?.("delete",e)},className:"text-destructive",children:[t(we,{className:"mr-2 h-4 w-4"}),t("span",{children:ht()})]})]})]})})]})]})]})]})]})}E();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 Fn(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((v,x)=>s[x]!==v)))return i;s=f;let h=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 Pr(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 so,Ar=()=>{if(so!==void 0)return so;if(typeof navigator>"u")return so=!1;if(/iP(hone|od|ad)/.test(navigator.userAgent))return so=!0;let e=navigator.maxTouchPoints;return so=navigator.platform==="MacIntel"&&e!==void 0&&e>0};var Ua=(e)=>{let{offsetWidth:n,offsetHeight:r}=e;return{width:n,height:r}},_c=(e)=>e,Mc=(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)}},Eo={passive:!0};var Tc=typeof window>"u"?!0:("onscrollend"in window),Nc=(e,n,r)=>{let s=e.scrollElement;if(!s)return;let i=e.targetWindow;if(!i)return;let a=e.options.useScrollendEvent&&Tc,l=0,d=a?null:La(i,()=>n(l,!1),e.options.isScrollingResetDelay),c=(y)=>()=>{l=r(s),d==null||d(),n(l,y)},p=c(!0),f=c(!1);if(s.addEventListener("scroll",p,Eo),a)s.addEventListener("scrollend",f,Eo);return()=>{if(s.removeEventListener("scroll",p),a)s.removeEventListener("scrollend",f);d==null||d.cancel()}},Va=(e,n)=>Nc(e,n,(r)=>{let{horizontal:s,isRtl:i}=e.options;return s?r.scrollLeft*(i&&-1||1):r.scrollTop});var kc=(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"]},Pc=(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 qa=Pc;class $r{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:_c,rangeExtractor:Mc,onChange:()=>{},measureElement:kc,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 y in n){let h=n[y];if(h!==void 0)i[y]=h}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 y=a.count,h=i.count,v=this.getMeasurements(),x=y>0?((r=v[0])==null?void 0:r.key)??a.getItemKey(0):null,b=y>0?((s=v[y-1])==null?void 0:s.key)??a.getItemKey(y-1):null;if(h!==y||y>0&&h>0&&(i.getItemKey(0)!==x||i.getItemKey(h-1)!==b)){c=!0;let U=y>0?this.getVirtualItemForOffset(this.getScrollOffset())??v[0]:null;if(U)l=[U.key,this.getScrollOffset()-U.start];let V=i.followOnAppend===!0?"auto":i.followOnAppend||null;if(V&&h>y&&this.isAtEnd(a.scrollEndThreshold)&&(y===0||i.getItemKey(h-1)!==b))d=V}}if(this.options=i,c)this.pendingMin=0,this.itemSizeCacheVersion++;let p=!1,f=0;if(l&&this.scrollOffset!==null){let[y,h]=l,v=this.getMeasurements(),{count:x,getItemKey:b}=this.options,R=0;while(R<x&&b(R)!==y)R++;if(R<x){let D=v[R];if(D){let U=Math.max(0,D.start+h);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=Fn(()=>(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,!Ar()||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,Eo),i.addEventListener("touchend",l,Eo),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(Ar()&&(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=Fn(()=>[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=Fn(()=>[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 R of this.laneAssignments.keys())if(R>=n)this.laneAssignments.delete(R)}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((R)=>{this.itemSizeCache.set(R.key,R.size)});let y=this.lanesSettling?0:this.pendingMin??0;if(this.pendingMin=null,this.lanesSettling&&this.measurementsCache.length===n)this.lanesSettling=!1;if(l===1){let R=n*2,D=this._flatMeasurements;if(!D||D.length<R){let X=new Float64Array(R);if(D&&y>0)X.set(D.subarray(0,y*2));D=X,this._flatMeasurements=D}let U;if(y===0)U=r+s;else{let X=y-1;U=D[X*2]+D[X*2+1]+c}for(let X=y;X<n;X++){let ee=i(X),ae=f.get(ee),ye=typeof ae==="number"?ae:this.options.estimateSize(X);D[X*2]=U,D[X*2+1]=ye,U+=ye+c}let V=$a(n,D,i);return this.measurementsCache=V,V}let h=this.measurementsCache.slice(0,y),v=Array(l).fill(void 0),x=new Float64Array(l),b=0;for(let R=0;R<y;R++){let D=h[R];if(D){if(v[D.lane]===void 0)b++;v[D.lane]=R,x[D.lane]=D.end}}for(let R=y;R<n;R++){let D=i(R),U=this.laneAssignments.get(R),V,X,ee=d==="estimate"||f.has(D);if(U!==void 0&&this.options.lanes>1){V=U;let Ve=v[V],k=Ve!==void 0?h[Ve]:void 0;X=k?k.end+c:r+s}else if(b===l){let Ve=0,k=x[0],xe=v[0];for(let he=1;he<l;he++){let re=x[he];if(re<k||re===k&&v[he]<xe)Ve=he,k=re,xe=v[he]}if(V=Ve,X=k+c,ee)this.laneAssignments.set(R,V)}else if(V=R%this.options.lanes,X=r+s,ee)this.laneAssignments.set(R,V);let ae=f.get(D),ye=typeof ae==="number"?ae:this.options.estimateSize(R),te=X+ye;if(h[R]={index:R,start:X,size:ye,end:te,key:D,lane:V},v[V]===void 0)b++;v[V]=R,x[V]=te}return this.measurementsCache=h,h},{key:!1,debug:()=>this.options.debug}),this.calculateRange=Fn(()=>[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=Dc(n,r,s,i,i===1&&this._flatMeasurements!=null?this._flatMeasurements:null),this.range},{key:!1,debug:()=>this.options.debug}),this.getVirtualIndexes=Fn(()=>{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 y=this.measurementsCache[n];if(!y)return;d=y.key,l=y.start,a=y.size}let p=this.itemSizeCache.get(d)??a,f=r-p;if(f!==0){let y=this.options.anchorTo==="end"&&((s=this.scrollState)==null?void 0:s.behavior)!=="smooth"&&this.getVirtualDistanceFromEnd()<=this.options.scrollEndThreshold,h=y?this.getTotalSize():0,v=this.getScrollOffset()+this.scrollAdjustments,b=!this.itemSizeCache.has(d)?l<v:l+p<=v&&this.scrollDirection!=="backward",R=((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):b);if(this.pendingMin===null||n<this.pendingMin)this.pendingMin=n;this.itemSizeCache.set(d,r),this.itemSizeCacheVersion++;let D=!1;if(y)D=this.applyScrollAdjustment(this.getTotalSize()-h);else if(R)D=this.applyScrollAdjustment(f);this.notify(D)}},this.getVirtualItems=Fn(()=>[this.getVirtualIndexes(),this.getMeasurements()],(n,r)=>{let s=[];for(let i=0,a=n.length;i<a;i++){let l=n[i],d=r[l];s.push(d)}return s},{key:!1,debug:()=>this.options.debug}),this.getVirtualItemForOffset=(n)=>{let r=this.getMeasurements();if(r.length===0)return;let s=this._flatMeasurements,i=this.options.lanes===1&&s!=null,a=Ba(0,r.length-1,i?(l)=>s[l*2]:(l)=>Pr(r[l]).start,n);return Pr(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(Ar()&&(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 Ba=(e,n,r,s)=>{while(e<=n){let i=(e+n)/2|0,a=r(i);if(a<s)e=i+1;else if(a>s)n=i-1;else return i}if(e>0)return e-1;else return 0};function Ac(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 Dc(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=Ac(i,a,r),f=p,y=r+n;while(f<a&&i[f*2]+i[f*2+1]<y)f++;return{startIndex:p,endIndex:f}}let d=Ba(0,a,(p)=>e[p].start,r),c=d;if(s===1)while(c<a&&e[c].end<r+n)c++;else if(s>1){let p=Array(s).fill(0);while(c<a&&p.some((y)=>y<r+n)){let y=e[c];p[y.lane]=y.end,c++}let f=Array(s).fill(r+n);while(d>=0&&f.some((y)=>y>=r)){let y=e[d];f[y.lane]=y.start,d--}d=Math.max(0,d-d%s),c=Math.min(a,c+(s-1-c%s))}return{startIndex:d,endIndex:c}}var zr=typeof document<"u"?Ue:m;function Oc({useFlushSync:e=!0,directDomUpdates:n=!1,directDomUpdatesMode:r="transform",...s}){let i=on((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 y=a.current;if(!y.enabled||!y.container)return;let h=f.getTotalSize();if(h!==y.lastSize){y.lastSize=h;let v=f.options.horizontal?"width":"height";y.container.style[v]=`${h}px`}},d=(f)=>{let y=a.current;if(!y.enabled||!y.container)return;l(f);let h=!!f.options.horizontal,v=y.mode==="transform",x=h?"left":"top",b=f.options.scrollMargin,R=f.getVirtualItems();for(let D of R){let U=D.start-b,V=f.elementsCache.get(D.key);if(!V)continue;if(y.lastPositions.get(V)===U)continue;if(y.lastPositions.set(V,U),v)V.style.transform=h?`translate3d(${U}px, 0, 0)`:`translate3d(0, ${U}px, 0)`;else V.style[x]=`${U}px`}},c={...s,onChange:(f,y)=>{var h;let v=a.current,x=!0;if(v.enabled){d(f);let b=f.range,R=v.prevRange;if(x=!R||R.isScrolling!==f.isScrolling||R.startIndex!==(b==null?void 0:b.startIndex)||R.endIndex!==(b==null?void 0:b.endIndex),x)v.prevRange=b?{startIndex:b.startIndex,endIndex:b.endIndex,isScrolling:f.isScrolling}:null}if(x)if(e&&y)sn(i);else i();(h=s.onChange)==null||h.call(s,f,y)}},[p]=u(()=>{let f=new $r(c);return Object.assign(f,{containerRef:(y)=>{let h=a.current;if(h.container=y,h.lastSize=null,y&&h.enabled){let v=f.getTotalSize();h.lastSize=v;let x=f.options.horizontal?"width":"height";y.style[x]=`${v}px`}}})});return p.setOptions(c),zr(()=>p._didMount(),[]),zr(()=>(l(p),p._willUpdate())),zr(()=>{d(p)}),p}function _o(e){return Oc({observeElementRect:ja,observeElementOffset:Va,scrollToFn:qa,...e})}E();function Ha({id:e,item:n,position:r,active:s,className:i,dragState:a,isNextItemDragging:l}){let d=a?.draggedIds.has(n.id),c=a?.isActive,{ref:p,isDropTarget:f}=Br({id:e,data:{type:"reorder",item:n,position:r},disabled:!s||d||!c});if(d||l)return null;return t("div",{ref:p,className:C("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:C("h-full w-[3px] rounded-full transition-colors",f&&s&&!d&&c?"bg-primary":"bg-transparent")})})}function Qa({folders:e,files:n,totalFolders:r,totalFiles:s,renderItem:i,foldersExpanded:a,setFoldersExpanded:l,filesExpanded:d,setFilesExpanded:c,hasNextFoldersPage:p,hasNextFilesPage:f,isFetchingNextFoldersPage:y,isFetchingNextFilesPage:h,fetchNextFoldersPage:v,fetchNextFilesPage:x,formatCount:b,formatSize:R,totalFoldersSize:D,totalFilesSize:U,handleEmptyAreaClick:V,dragState:X,sort:ee,scrollContainerRef:ae}){let ye=_(null),[te,Ve]=u(5);m(()=>{let re=()=>{if(!ye.current)return;let qe=ye.current.offsetWidth;if(qe<640)Ve(2);else if(qe<768)Ve(2);else if(qe<1024)Ve(3);else if(qe<1280)Ve(4);else Ve(5)};re();let fe=new ResizeObserver(re);if(ye.current)fe.observe(ye.current);return()=>fe.disconnect()},[]);let k=N(()=>{let re=[],fe=r??e.length;if(fe>0){if(re.push({type:"header",kind:"folder"}),a){let dt=Math.ceil(fe/te);for(let ft=0;ft<dt;ft++)re.push({type:"row",kind:"folder",rowIndex:ft})}}let qe=s??n.length;if(qe>0){if(re.push({type:"header",kind:"file"}),d){let dt=Math.ceil(qe/te);for(let ft=0;ft<dt;ft++)re.push({type:"row",kind:"file",rowIndex:ft})}}return re},[a,d,e.length,n.length,r,s,te]),xe=_o({count:k.length,getScrollElement:()=>ae.current,estimateSize:(re)=>k[re]?.type==="header"?40:350,getItemKey:P((re)=>{let fe=k[re];if(!fe)return re;if(fe.type==="header")return`header-${fe.kind}`;return`row-${fe.kind}-${fe.rowIndex}`},[k]),overscan:5,paddingEnd:240}),he=xe.getVirtualItems();return m(()=>{if(he.length===0)return;for(let re of he){let fe=k[re.index];if(fe?.type==="row"){let qe=fe.kind==="folder",dt=qe?e:n,ft=fe.rowIndex*te,We=!dt[ft],j=ft>=dt.length-te*3;if(qe&&p&&!y){if(We||j){v();break}}else if(!qe&&f&&!h){if(We||j){x();break}}}}},[he,k,e.length,n.length,p,f,y,h,v,x,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:he.map((re)=>{let fe=k[re.index];if(fe.type==="header"){let j=fe.kind==="folder",be=j?r??e.length:s??n.length,ze=j?D??-1:U??-1,Ye=ze>-1,Se=j?a:d,Ge=j?l:c;return t("div",{ref:xe.measureElement,"data-index":re.index,className:"absolute top-0 left-0 w-full z-10 bg-background",style:{transform:`translateY(${re.start}px)`},children:o("button",{onClick:(mt)=>{mt.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(It,{className:"h-4 w-4"}),o("span",{children:[b(be,!j),Ye?` • ${R(ze)}`:""]})]})},`header-${fe.kind}`)}let qe=fe.kind==="folder",dt=qe?e:n,ft=fe.rowIndex*te,We=[];for(let j=0;j<te;j++)We.push(dt[ft+j]);return t("div",{ref:xe.measureElement,"data-index":re.index,className:"absolute top-0 left-0 w-full grid gap-4",style:{transform:`translateY(${re.start}px)`,gridTemplateColumns:`repeat(${te}, minmax(0, 1fr))`},children:We.map((j,be)=>{let ze=ft+be;if(!j){let Ye=qe?r??e.length:s??n.length;if(ze<Ye)return t("div",{className:"aspect-square bg-muted animate-pulse rounded-lg"},`skeleton-${ze}`);return t("div",{},`empty-${ze}`)}return o("div",{className:"group-reorder relative flex pb-10",children:[t(Ha,{id:`reorder-before-${fe.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(Ha,{id:`reorder-after-${fe.kind}-${j.id}`,item:j,position:"after",active:ee?.field==="custom",dragState:X,isNextItemDragging:dt[ze+1]&&X?.draggedIds.has(dt[ze+1].id)})]},j.id)})},`row-${fe.kind}-${fe.rowIndex}`)})})})}E();function rn(e,n){return typeof e==="function"?e(n):e}function Lt(e,n){return(r)=>{n.setState((s)=>({...s,[e]:rn(r,s[e])}))}}function ko(e){return e instanceof Function}function zc(e){return Array.isArray(e)&&e.every((n)=>typeof n==="number")}function Lc(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,y)=>s[y]!==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,y=Math.round((Date.now()-p)*100)/100,h=y/16,v=(x,b)=>{x=String(x);while(x.length<b)x=" "+x;return x};console.info(`%c⏱ ${v(y,5)} /${v(f,5)} ms`,`
9
- font-size: .6rem;
10
- font-weight: bold;
11
- color: hsl(${Math.max(0,Math.min(120-120*h,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 Uc(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=(h)=>{let v=h;for(let b of c.split(".")){var x;v=(x=v)==null?void 0:x[b]}return v};else f=(h)=>h[d.accessorKey];if(!p)throw Error();let y={id:`${String(p)}`,accessorFn:f,parent:s,depth:r,columnDef:d,columns:[],getFlatColumns:Ke(()=>[!0],()=>{var h;return[y,...(h=y.columns)==null?void 0:h.flatMap((v)=>v.getFlatColumns())]},Qe(e.options,"debugColumns","column.getFlatColumns")),getLeafColumns:Ke(()=>[e._getOrderColumnsFn()],(h)=>{var v;if((v=y.columns)!=null&&v.length){let x=y.columns.flatMap((b)=>b.getLeafColumns());return h(x)}return[y]},Qe(e.options,"debugColumns","column.getLeafColumns"))};for(let h of e._features)h.createColumn==null||h.createColumn(y,e);return y}var At="debugHeaders";function Ya(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((y)=>r.find((h)=>h.id===y)).filter(Boolean))!=null?a:[],c=(l=i==null?void 0:i.map((y)=>r.find((h)=>h.id===y)).filter(Boolean))!=null?l:[],p=r.filter((y)=>!(s!=null&&s.includes(y.id))&&!(i!=null&&i.includes(y.id)));return Mo(n,[...d,...p,...c],e)},Qe(e.options,At,"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))),Mo(n,r,e,"center")),Qe(e.options,At,"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 Mo(n,a,e,"left")},Qe(e.options,At,"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 Mo(n,a,e,"right")},Qe(e.options,At,"getRightHeaderGroups")),e.getFooterGroups=Ke(()=>[e.getHeaderGroups()],(n)=>[...n].reverse(),Qe(e.options,At,"getFooterGroups")),e.getLeftFooterGroups=Ke(()=>[e.getLeftHeaderGroups()],(n)=>[...n].reverse(),Qe(e.options,At,"getLeftFooterGroups")),e.getCenterFooterGroups=Ke(()=>[e.getCenterHeaderGroups()],(n)=>[...n].reverse(),Qe(e.options,At,"getCenterFooterGroups")),e.getRightFooterGroups=Ke(()=>[e.getRightHeaderGroups()],(n)=>[...n].reverse(),Qe(e.options,At,"getRightFooterGroups")),e.getFlatHeaders=Ke(()=>[e.getHeaderGroups()],(n)=>n.map((r)=>r.headers).flat(),Qe(e.options,At,"getFlatHeaders")),e.getLeftFlatHeaders=Ke(()=>[e.getLeftHeaderGroups()],(n)=>n.map((r)=>r.headers).flat(),Qe(e.options,At,"getLeftFlatHeaders")),e.getCenterFlatHeaders=Ke(()=>[e.getCenterHeaderGroups()],(n)=>n.map((r)=>r.headers).flat(),Qe(e.options,At,"getCenterFlatHeaders")),e.getRightFlatHeaders=Ke(()=>[e.getRightHeaderGroups()],(n)=>n.map((r)=>r.headers).flat(),Qe(e.options,At,"getRightFlatHeaders")),e.getCenterLeafHeaders=Ke(()=>[e.getCenterFlatHeaders()],(n)=>n.filter((r)=>{var s;return!((s=r.subHeaders)!=null&&s.length)}),Qe(e.options,At,"getCenterLeafHeaders")),e.getLeftLeafHeaders=Ke(()=>[e.getLeftFlatHeaders()],(n)=>n.filter((r)=>{var s;return!((s=r.subHeaders)!=null&&s.length)}),Qe(e.options,At,"getLeftLeafHeaders")),e.getRightLeafHeaders=Ke(()=>[e.getRightFlatHeaders()],(n)=>n.filter((r)=>{var s;return!((s=r.subHeaders)!=null&&s.length)}),Qe(e.options,At,"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,At,"getLeafHeaders"))}};function Mo(e,n,r,s){var i,a;let l=0,d=function(h,v){if(v===void 0)v=1;l=Math.max(l,v),h.filter((x)=>x.getIsVisible()).forEach((x)=>{var b;if((b=x.columns)!=null&&b.length)d(x.columns,v+1)},0)};d(e);let c=[],p=(h,v)=>{let x={depth:v,id:[s,`${v}`].filter(Boolean).join("_"),headers:[]},b=[];if(h.forEach((R)=>{let D=[...b].reverse()[0],U=R.column.depth===x.depth,V,X=!1;if(U&&R.column.parent)V=R.column.parent;else V=R.column,X=!0;if(D&&(D==null?void 0:D.column)===V)D.subHeaders.push(R);else{let ee=Ya(r,V,{id:[s,v,V.id,R==null?void 0:R.id].filter(Boolean).join("_"),isPlaceholder:X,placeholderId:X?`${b.filter((ae)=>ae.column===V).length}`:void 0,depth:v,index:b.length});ee.subHeaders.push(R),b.push(ee)}x.headers.push(R),R.headerGroup=x}),c.push(x),v>0)p(b,v-1)},f=n.map((h,v)=>Ya(r,h,{depth:l,index:v}));p(f,l-1),c.reverse();let y=(h)=>h.filter((x)=>x.column.getIsVisible()).map((x)=>{let b=0,R=0,D=[0];if(x.subHeaders&&x.subHeaders.length)D=[],y(x.subHeaders).forEach((V)=>{let{colSpan:X,rowSpan:ee}=V;b+=X,D.push(ee)});else b=1;let U=Math.min(...D);return R=R+U,x.colSpan=b,x.rowSpan=R,{colSpan:b,rowSpan:R}});return y((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:()=>Lc(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)=>Uc(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},Bc={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()}}},Za=(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))};Za.autoRemove=(e)=>Xt(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)=>Xt(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)=>Xt(e);var ol=(e,n,r)=>{var s;return(s=e.getValue(n))==null?void 0:s.includes(r)};ol.autoRemove=(e)=>Xt(e);var rl=(e,n,r)=>!r.some((s)=>{var i;return!((i=e.getValue(n))!=null&&i.includes(s))});rl.autoRemove=(e)=>Xt(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)=>Xt(e)||!(e!=null&&e.length);var il=(e,n,r)=>e.getValue(n)===r;il.autoRemove=(e)=>Xt(e);var al=(e,n,r)=>e.getValue(n)==r;al.autoRemove=(e)=>Xt(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)=>Xt(e)||Xt(e[0])&&Xt(e[1]);var tn={includesString:Za,includesStringSensitive:tl,equalsString:nl,arrIncludes:ol,arrIncludesAll:rl,arrIncludesSome:sl,equals:il,weakEquals:al,inNumberRange:is};function Xt(e){return e===void 0||e===null||e===""}var Wc={getDefaultColumnDef:()=>({filterFn:"auto"}),getInitialState:(e)=>({columnFilters:[],...e}),getDefaultOptions:(e)=>({onColumnFiltersChange:Lt("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 tn.includesString;if(typeof s==="number")return tn.inNumberRange;if(typeof s==="boolean")return tn.equals;if(s!==null&&typeof s==="object")return tn.equals;if(Array.isArray(s))return tn.arrIncludes;return tn.weakEquals},e.getFilterFn=()=>{var r,s;return ko(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:tn[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=rn(r,a?a.value:void 0);if(Ja(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=rn(n,i))==null?void 0:a.filter((l)=>{let d=r.find((c)=>c.id===l.id);if(d){let c=d.getFilterFn();if(Ja(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 Ja(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),Xc=(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},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},Yc=(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]},Jc=(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},Zc=(e,n)=>{if(!n.length)return;let r=n.map((a)=>a.getValue(e));if(!zc(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},np=(e,n)=>Array.from(new Set(n.map((r)=>r.getValue(e))).values()),op=(e,n)=>new Set(n.map((r)=>r.getValue(e))).size,rp=(e,n)=>n.length,jr={sum:Kc,min:Xc,max:Qc,extent:Yc,mean:Jc,median:Zc,unique:np,uniqueCount:op,count:rp},sp={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:Lt("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 jr.sum;if(Object.prototype.toString.call(s)==="[object Date]")return jr.extent},e.getAggregationFn=()=>{var r,s;if(!e)throw Error();return ko(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:jr[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 ip(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 ap={getInitialState:(e)=>({columnOrder:[],...e}),getDefaultOptions:(e)=>({onColumnOrderChange:Lt("columnOrder",e)}),createColumn:(e,n)=>{e.getIndex=Ke((r)=>[ao(n,r)],(r)=>r.findIndex((s)=>s.id===e.id),Qe(n.options,"debugColumns","getIndex")),e.getIsFirstColumn=(r)=>{var s;return((s=ao(n,r)[0])==null?void 0:s.id)===e.id},e.getIsLastColumn=(r)=>{var s;let i=ao(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 ip(a,r,s)},Qe(e.options,"debugTable","_getOrderColumnsFn"))}},qr=()=>({left:[],right:[]}),dp={getInitialState:(e)=>({columnPinning:qr(),...e}),getDefaultOptions:(e)=>({onColumnPinningChange:Lt("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((y)=>!(s!=null&&s.includes(y))),right:[...((c=i==null?void 0:i.right)!=null?c:[]).filter((y)=>!(s!=null&&s.includes(y))),...s]}}if(r==="left"){var p,f;return{left:[...((p=i==null?void 0:i.left)!=null?p:[]).filter((y)=>!(s!=null&&s.includes(y))),...s],right:((f=i==null?void 0:i.right)!=null?f:[]).filter((y)=>!(s!=null&&s.includes(y)))}}return{left:((a=i==null?void 0:i.left)!=null?a:[]).filter((y)=>!(s!=null&&s.includes(y))),right:((l=i==null?void 0:i.right)!=null?l:[]).filter((y)=>!(s!=null&&s.includes(y)))}})},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?qr():(r=(s=e.initialState)==null?void 0:s.columnPinning)!=null?r:qr())},e.getIsSomeColumnsPinned=(n)=>{var r;let s=e.getState().columnPinning;if(!n){var i,a;return Boolean(((i=s.left)==null?void 0:i.length)||((a=s.right)==null?void 0:a.length))}return Boolean((r=s[n])==null?void 0:r.length)},e.getLeftLeafColumns=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 up(e){return e||(typeof document<"u"?document:null)}var To={size:150,minSize:20,maxSize:Number.MAX_SAFE_INTEGER},Hr=()=>({startOffset:null,startSize:null,deltaOffset:null,deltaPercentage:null,isResizingColumn:!1,columnSizingStart:[]}),pp={getDefaultColumnDef:()=>To,getInitialState:(e)=>({columnSizing:{},columnSizingInfo:Hr(),...e}),getDefaultOptions:(e)=>({columnResizeMode:"onEnd",columnResizeDirection:"ltr",onColumnSizingChange:Lt("columnSizing",e),onColumnSizingInfoChange:Lt("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:To.minSize,(s=a!=null?a:e.columnDef.size)!=null?s:To.size),(i=e.columnDef.maxSize)!=null?i:To.maxSize)},e.getStart=Ke((r)=>[r,ao(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,ao(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((D)=>[D.column.id,D.column.getSize()]):[[s.id,s.getSize()]],c=Gr(a)?Math.round(a.touches[0].clientX):a.clientX,p={},f=(D,U)=>{if(typeof U!=="number")return;if(n.setColumnSizingInfo((V)=>{var X,ee;let ae=n.options.columnResizeDirection==="rtl"?-1:1,ye=(U-((X=V==null?void 0:V.startOffset)!=null?X:0))*ae,te=Math.max(ye/((ee=V==null?void 0:V.startSize)!=null?ee:0),-0.999999);return V.columnSizingStart.forEach((Ve)=>{let[k,xe]=Ve;p[k]=Math.round(Math.max(xe+xe*te,0)*100)/100}),{...V,deltaOffset:ye,deltaPercentage:te}}),n.options.columnResizeMode==="onChange"||D==="end")n.setColumnSizing((V)=>({...V,...p}))},y=(D)=>f("move",D),h=(D)=>{f("end",D),n.setColumnSizingInfo((U)=>({...U,isResizingColumn:!1,startOffset:null,startSize:null,deltaOffset:null,deltaPercentage:null,columnSizingStart:[]}))},v=up(r),x={moveHandler:(D)=>y(D.clientX),upHandler:(D)=>{v==null||v.removeEventListener("mousemove",x.moveHandler),v==null||v.removeEventListener("mouseup",x.upHandler),h(D.clientX)}},b={moveHandler:(D)=>{if(D.cancelable)D.preventDefault(),D.stopPropagation();return y(D.touches[0].clientX),!1},upHandler:(D)=>{var U;if(v==null||v.removeEventListener("touchmove",b.moveHandler),v==null||v.removeEventListener("touchend",b.upHandler),D.cancelable)D.preventDefault(),D.stopPropagation();h((U=D.touches[0])==null?void 0:U.clientX)}},R=fp()?{passive:!1}:!1;if(Gr(a))v==null||v.addEventListener("touchmove",b.moveHandler,R),v==null||v.addEventListener("touchend",b.upHandler,R);else v==null||v.addEventListener("mousemove",x.moveHandler,R),v==null||v.addEventListener("mouseup",x.upHandler,R);n.setColumnSizingInfo((D)=>({...D,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}}},No=null;function fp(){if(typeof No==="boolean")return No;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 No=e,No}function Gr(e){return e.type==="touchstart"}var mp={getInitialState:(e)=>({columnVisibility:{},...e}),getDefaultOptions:(e)=>({onColumnVisibilityChange:Lt("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 ao(e,n){return!n?e.getVisibleLeafColumns():n==="center"?e.getCenterVisibleLeafColumns():n==="left"?e.getLeftVisibleLeafColumns():e.getRightVisibleLeafColumns()}var hp={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()}}},vp={getInitialState:(e)=>({globalFilter:void 0,...e}),getDefaultOptions:(e)=>({onGlobalFilterChange:Lt("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=()=>tn.includesString,e.getGlobalFilterFn=()=>{var n,r;let{globalFilterFn:s}=e.options;return ko(s)?s:s==="auto"?e.getGlobalAutoFilterFn():(n=(r=e.options.filterFns)==null?void 0:r[s])!=null?n:tn[s]},e.setGlobalFilter=(n)=>{e.options.onGlobalFilterChange==null||e.options.onGlobalFilterChange(n)},e.resetGlobalFilter=(n)=>{e.setGlobalFilter(n?void 0:e.initialState.globalFilter)}}},bp={getInitialState:(e)=>({expanded:{},...e}),getDefaultOptions:(e)=>({onExpandedChange:Lt("expanded",e),paginateExpandedRows:!0}),createTable:(e)=>{let n=!1,r=!1;e._autoResetExpanded=()=>{var s,i;if(!n){e._queue(()=>{n=!0});return}if((s=(i=e.options.autoResetAll)!=null?i:e.options.autoResetExpanded)!=null?s:!e.options.manualExpanding){if(r)return;r=!0,e._queue(()=>{e.resetExpanded(),r=!1})}},e.setExpanded=(s)=>e.options.onExpandedChange==null?void 0:e.options.onExpandedChange(s),e.toggleAllRowsExpanded=(s)=>{if(s!=null?s:!e.getIsAllRowsExpanded())e.setExpanded(!0);else e.setExpanded({})},e.resetExpanded=(s)=>{var i,a;e.setExpanded(s?{}:(i=(a=e.initialState)==null?void 0:a.expanded)!=null?i:{})},e.getCanSomeRowsExpand=()=>e.getPrePaginationRowModel().flatRows.some((s)=>s.getCanExpand()),e.getToggleAllRowsExpandedHandler=()=>(s)=>{s.persist==null||s.persist(),e.toggleAllRowsExpanded()},e.getIsSomeRowsExpanded=()=>{let s=e.getState().expanded;return s===!0||Object.values(s).some(Boolean)},e.getIsAllRowsExpanded=()=>{let s=e.getState().expanded;if(typeof s==="boolean")return s===!0;if(!Object.keys(s).length)return!1;if(e.getRowModel().flatRows.some((i)=>!i.getIsExpanded()))return!1;return!0},e.getExpandedDepth=()=>{let s=0;return(e.getState().expanded===!0?Object.keys(e.getRowModel().rowsById):Object.keys(e.getState().expanded)).forEach((a)=>{let l=a.split(".");s=Math.max(s,l.length)}),s},e.getPreExpandedRowModel=()=>e.getSortedRowModel(),e.getExpandedRowModel=()=>{if(!e._getExpandedRowModel&&e.options.getExpandedRowModel)e._getExpandedRowModel=e.options.getExpandedRowModel(e);if(e.options.manualExpanding||!e._getExpandedRowModel)return e.getPreExpandedRowModel();return e._getExpandedRowModel()}},createRow:(e,n)=>{e.toggleExpanded=(r)=>{n.setExpanded((s)=>{var i;let a=s===!0?!0:!!(s!=null&&s[e.id]),l={};if(s===!0)Object.keys(n.getRowModel().rowsById).forEach((d)=>{l[d]=!0});else l=s;if(r=(i=r)!=null?i:!a,!a&&r)return{...l,[e.id]:!0};if(a&&!r){let{[e.id]:d,...c}=l;return c}return s})},e.getIsExpanded=()=>{var r;let s=n.getState().expanded;return!!((r=n.options.getIsRowExpanded==null?void 0:n.options.getIsRowExpanded(e))!=null?r:s===!0||(s==null?void 0:s[e.id]))},e.getCanExpand=()=>{var r,s,i;return(r=n.options.getRowCanExpand==null?void 0:n.options.getRowCanExpand(e))!=null?r:((s=n.options.enableExpanding)!=null?s:!0)&&!!((i=e.subRows)!=null&&i.length)},e.getIsAllParentsExpanded=()=>{let r=!0,s=e;while(r&&s.parentId)s=n.getRow(s.parentId,!0),r=s.getIsExpanded();return r},e.getToggleExpandedHandler=()=>{let r=e.getCanExpand();return()=>{if(!r)return;e.toggleExpanded()}}}},Yr=0,Jr=10,Wr=()=>({pageIndex:Yr,pageSize:Jr}),Cp={getInitialState:(e)=>({...e,pagination:{...Wr(),...e==null?void 0:e.pagination}}),getDefaultOptions:(e)=>({onPaginationChange:Lt("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)=>rn(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=rn(s,i.pageIndex),l=typeof e.options.pageCount>"u"||e.options.pageCount===-1?Number.MAX_SAFE_INTEGER:e.options.pageCount-1;return a=Math.max(0,Math.min(a,l)),{...i,pageIndex:a}})},e.resetPageIndex=(s)=>{var i,a;e.setPageIndex(s?Yr:(i=(a=e.initialState)==null||(a=a.pagination)==null?void 0:a.pageIndex)!=null?i:Yr)},e.resetPageSize=(s)=>{var i,a;e.setPageSize(s?Jr:(i=(a=e.initialState)==null||(a=a.pagination)==null?void 0:a.pageSize)!=null?i:Jr)},e.setPageSize=(s)=>{e.setPagination((i)=>{let a=Math.max(1,rn(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=rn(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}}},Kr=()=>({top:[],bottom:[]}),Rp={getInitialState:(e)=>({rowPinning:Kr(),...e}),getDefaultOptions:(e)=>({onRowPinningChange:Lt("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 y,h;return{top:((y=c==null?void 0:c.top)!=null?y:[]).filter((b)=>!(d!=null&&d.has(b))),bottom:[...((h=c==null?void 0:c.bottom)!=null?h:[]).filter((b)=>!(d!=null&&d.has(b))),...Array.from(d)]}}if(r==="top"){var v,x;return{top:[...((v=c==null?void 0:c.top)!=null?v:[]).filter((b)=>!(d!=null&&d.has(b))),...Array.from(d)],bottom:((x=c==null?void 0:c.bottom)!=null?x:[]).filter((b)=>!(d!=null&&d.has(b)))}}return{top:((p=c==null?void 0:c.top)!=null?p:[]).filter((b)=>!(d!=null&&d.has(b))),bottom:((f=c==null?void 0:c.bottom)!=null?f:[]).filter((b)=>!(d!=null&&d.has(b)))}})},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?Kr():(r=(s=e.initialState)==null?void 0:s.rowPinning)!=null?r:Kr())},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"))}},Fp={getInitialState:(e)=>({rowSelection:{},...e}),getDefaultOptions:(e)=>({onRowSelectionChange:Lt("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 Qr(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 Qr(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 Qr(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 Qr(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,Ip=(e,n,r)=>ll(an(e.getValue(r)).toLowerCase(),an(n.getValue(r)).toLowerCase()),Mp=(e,n,r)=>ll(an(e.getValue(r)),an(n.getValue(r))),Tp=(e,n,r)=>ls(an(e.getValue(r)).toLowerCase(),an(n.getValue(r)).toLowerCase()),Np=(e,n,r)=>ls(an(e.getValue(r)),an(n.getValue(r))),kp=(e,n,r)=>{let s=e.getValue(r),i=n.getValue(r);return s>i?1:s<i?-1:0},Pp=(e,n,r)=>ls(e.getValue(r),n.getValue(r));function ls(e,n){return e===n?0:e>n?1:-1}function an(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 io={alphanumeric:Ip,alphanumericCaseSensitive:Mp,text:Tp,textCaseSensitive:Np,datetime:kp,basic:Pp},Dp={getInitialState:(e)=>({sorting:[],...e}),getDefaultColumnDef:()=>({sortingFn:"auto",sortUndefined:1}),getDefaultOptions:(e)=>({onSortingChange:Lt("sorting",e),isMultiSortEvent:(n)=>n.shiftKey}),createColumn:(e,n)=>{e.getAutoSortingFn=()=>{let r=n.getFilteredRowModel().flatRows.slice(10),s=!1;for(let i of r){let a=i==null?void 0:i.getValue(e.id);if(Object.prototype.toString.call(a)==="[object Date]")return io.datetime;if(typeof a==="string"){if(s=!0,a.split(ss).length>1)return io.alphanumeric}}if(s)return io.text;return io.basic},e.getAutoSortDir=()=>{let r=n.getFilteredRowModel().flatRows[0];if(typeof(r==null?void 0:r.getValue(e.id))==="string")return"asc";return"desc"},e.getSortingFn=()=>{var r,s;if(!e)throw Error();return ko(e.columnDef.sortingFn)?e.columnDef.sortingFn:e.columnDef.sortingFn==="auto"?e.getAutoSortingFn():(r=(s=n.options.sortingFns)==null?void 0:s[e.columnDef.sortingFn])!=null?r:io[e.columnDef.sortingFn]},e.toggleSorting=(r,s)=>{let i=e.getNextSortingOrder(),a=typeof r<"u"&&r!==null;n.setSorting((l)=>{let d=l==null?void 0:l.find((v)=>v.id===e.id),c=l==null?void 0:l.findIndex((v)=>v.id===e.id),p=[],f,y=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 h;p=[...l,{id:e.id,desc:y}],p.splice(0,p.length-((h=n.options.maxMultiSortColCount)!=null?h:Number.MAX_SAFE_INTEGER))}else if(f==="toggle")p=l.map((v)=>{if(v.id===e.id)return{...v,desc:y};return v});else if(f==="remove")p=l.filter((v)=>v.id!==e.id);else p=[{id:e.id,desc:y}];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()}}},Op=[Vc,mp,ap,dp,Bc,Wc,hp,vp,Dp,sp,bp,Cp,Rp,Fp,pp];function dl(e){var n,r;let s=[...Op,...(n=e._features)!=null?n:[]],i={_features:s},a=i._features.reduce((h,v)=>Object.assign(h,v.getDefaultOptions==null?void 0:v.getDefaultOptions(i)),{}),l=(h)=>{if(i.options.mergeOptions)return i.options.mergeOptions(a,h);return{...a,...h}},c={...{},...(r=e.initialState)!=null?r:{}};i._features.forEach((h)=>{var v;c=(v=h.getInitialState==null?void 0:h.getInitialState(c))!=null?v:c});let p=[],f=!1,y={_features:s,options:{...a,...e},initialState:c,_queue:(h)=>{if(p.push(h),!f)f=!0,Promise.resolve().then(()=>{while(p.length)p.shift()();f=!1}).catch((v)=>setTimeout(()=>{throw v}))},reset:()=>{i.setState(i.initialState)},setOptions:(h)=>{let v=rn(h,i.options);i.options=l(v)},getState:()=>i.options.state,setState:(h)=>{i.options.onStateChange==null||i.options.onStateChange(h)},_getRowId:(h,v,x)=>{var b;return(b=i.options.getRowId==null?void 0:i.options.getRowId(h,v,x))!=null?b:`${x?[x.id,v].join("."):v}`},getCoreRowModel:()=>{if(!i._getCoreRowModel)i._getCoreRowModel=i.options.getCoreRowModel(i);return i._getCoreRowModel()},getRowModel:()=>i.getPaginationRowModel(),getRow:(h,v)=>{let x=(v?i.getPrePaginationRowModel():i.getRowModel()).rowsById[h];if(!x){if(x=i.getCoreRowModel().rowsById[h],!x)throw Error()}return x},_getDefaultColumnDef:Ke(()=>[i.options.defaultColumn],(h)=>{var v;return h=(v=h)!=null?v:{},{header:(x)=>{let b=x.header.column.columnDef;if(b.accessorKey)return b.accessorKey;if(b.accessorFn)return b.id;return null},cell:(x)=>{var b,R;return(b=(R=x.renderValue())==null||R.toString==null?void 0:R.toString())!=null?b:null},...i._features.reduce((x,b)=>Object.assign(x,b.getDefaultColumnDef==null?void 0:b.getDefaultColumnDef()),{}),...h}},Qe(e,"debugColumns","_getDefaultColumnDef")),_getColumnDefs:()=>i.options.columns,getAllColumns:Ke(()=>[i._getColumnDefs()],(h)=>{let v=function(x,b,R){if(R===void 0)R=0;return x.map((D)=>{let U=jc(i,D,R,b),V=D;return U.columns=V.columns?v(V.columns,U,R+1):[],U})};return v(h)},Qe(e,"debugColumns","getAllColumns")),getAllFlatColumns:Ke(()=>[i.getAllColumns()],(h)=>h.flatMap((v)=>v.getFlatColumns()),Qe(e,"debugColumns","getAllFlatColumns")),_getAllFlatColumnsById:Ke(()=>[i.getAllFlatColumns()],(h)=>h.reduce((v,x)=>(v[x.id]=x,v),{}),Qe(e,"debugColumns","getAllFlatColumnsById")),getAllLeafColumns:Ke(()=>[i.getAllColumns(),i._getOrderColumnsFn()],(h,v)=>{let x=h.flatMap((b)=>b.getLeafColumns());return v(x)},Qe(e,"debugColumns","getAllLeafColumns")),getColumn:(h)=>i._getAllFlatColumnsById()[h]};Object.assign(i,y);for(let h=0;h<i._features.length;h++){let v=i._features[h];v==null||v.createTable==null||v.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:zp(e)?q(e,n):e}function zp(e){return Lp(e)||typeof e==="function"||Vp(e)}function Lp(e){return typeof e==="function"&&(()=>{let n=Object.getPrototypeOf(e);return n.prototype&&n.prototype.isReactComponent})()}function Vp(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}E();function qp({item:e,renderItem:n,active:r,dragState:s,isSelected:i,columnSizing:a,virtualRow:l,measureElement:d,isExternalDragging:c,externalOverFolderId:p,setExternalOverFolderId:f,resetExternalDragState:y,onExternalDrop:h}){let v=s?.draggedIds.has(e.id),x=s?.isActive,{ref:b,isDropTarget:R}=Br({id:`reorder-before-${e.id}`,data:{type:"reorder",item:e,position:"before"},disabled:!r||v||!x}),{ref:D,isDropTarget:U}=Br({id:`reorder-after-${e.id}`,data:{type:"reorder",item:e,position:"after"},disabled:!r||v||!x}),{ref:V,isDropTarget:X}=Br({id:`browser:${e.id}`,data:{type:e.type,id:e.id,item:e},disabled:!x}),ee=N(()=>{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]),ae=c&&p===e.id,ye=X&&ee||ae;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(),y?.();let Ve=await Xa(te.dataTransfer);h?.(Ve,e.id)}:void 0,className:C("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",R&&"border-t-2 border-t-primary",U&&"border-b-2 border-b-primary"),style:{transform:`translateY(${l.start}px)`},children:[t("div",{ref:b,className:"p-0 m-0 leading-none bg-transparent pointer-events-auto h-[2px] w-full"}),n(e,a),t("div",{ref:D,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:y,hasNextFoldersPage:h,hasNextFilesPage:v,isFetchingNextFoldersPage:x,isFetchingNextFilesPage:b,fetchNextFoldersPage:R,fetchNextFilesPage:D,formatCount:U,formatSize:V,totalFoldersSize:X,totalFilesSize:ee,handleEmptyAreaClick:ae,dragState:ye,sort:te,isExternalDragging:Ve,externalOverFolderId:k,setExternalOverFolderId:xe,resetExternalDragState:he,onExternalDrop:re}){let[fe,qe]=u({}),dt=N(()=>{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]),ft=pl({data:[],columns:dt,columnResizeMode:"onChange",getCoreRowModel:ul(),state:{columnSizing:fe},onColumnSizingChange:qe}),We=N(()=>{let Ye=[],Se=r??e.length;if(Se>0){if(Ye.push({type:"header",kind:"folder"}),c)for(let mt=0;mt<Se;mt++)Ye.push({type:"item",kind:"folder",index:mt})}let Ge=s??n.length;if(Ge>0){if(Ye.push({type:"header",kind:"file"}),f)for(let mt=0;mt<Ge;mt++)Ye.push({type:"item",kind:"file",index:mt})}return Ye},[c,f,e.length,n.length,r,s]),j=_(null),be=_o({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,paddingEnd:240}),ze=be.getVirtualItems();return m(()=>{if(ze.length===0)return;for(let Ye of ze){let Se=We[Ye.index];if(Se?.type==="item"){let Ge=Se.kind==="folder"?!e[Se.index]:!n[Se.index],mt=Se.kind==="folder"?Se.index>=e.length-15:Se.index>=n.length-15;if(Se.kind==="folder"&&h&&!x){if(Ge||mt){R();break}}else if(Se.kind==="file"&&v&&!b){if(Ge||mt){D();break}}}}},[ze,We,e.length,n.length,h,v,x,b,R,D]),t("div",{ref:j,className:"flex-1 overflow-auto",onClick:ae,children:o("div",{className:"w-full relative",style:{width:ft.getTotalSize(),minWidth:"100%"},children:[t("div",{className:"sticky top-0 z-30 bg-background border-b border-border flex flex-col",children:ft.getHeaderGroups().map((Ye)=>t("div",{className:"bg-muted/50 whitespace-nowrap flex",children:Ye.headers.map((Se)=>o("div",{className:C("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:C("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:ze.map((Ye)=>{let Se=We[Ye.index];if(Se.type==="header"){let mt=Se.kind==="folder",Tt=mt?r??e.length:s??n.length,se=mt?X??-1:ee??-1,tt=se>-1,yt=mt?c:f,_t=mt?p:y,$e=mt?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(),_t(!yt)},children:[o("div",{className:"px-4 py-2 sticky left-0 z-10 bg-card border-r flex items-center gap-2",style:{width:fe?.name||300,minWidth:fe?.name||300},children:[t(ur,{checked:$e&&(mt?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:yt?t(ve,{className:"h-4 w-4 text-muted-foreground"}):t(It,{className:"h-4 w-4 text-muted-foreground"})}),o("span",{className:"text-sm font-medium text-muted-foreground whitespace-nowrap",children:[U(Tt,!mt),tt?` • ${V(se)}`:""]})]}),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(qp,{item:Ge,renderItem:d,active:te?.field==="custom",dragState:ye,isSelected:i?.id===Ge.id,columnSizing:fe,virtualRow:Ye,measureElement:be.measureElement,isExternalDragging:Ve,externalOverFolderId:k,setExternalOverFolderId:xe,resetExternalDragState:he,onExternalDrop:re},Ge.id)})})]})})}E();E();var Ut={SYSTEM:"system",TEAM:"team",PROJECT:"project"},Hp={[Ut.SYSTEM]:ln,[Ut.TEAM]:ln,[Ut.PROJECT]:Pi};function Gp({field:e,index:n,isSelected:r,onSelect:s,isSortable:i}){let{ref:a,handleRef:l}=Ga({id:e.id,index:n,disabled:!i}),d=e.config?.type?pa[e.config.type]:null;return o("div",{ref:a,className:C("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(qs,{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===Ir.CONTENT&&t(_n,{className:"h-4 w-4 text-muted-foreground shrink-0"}),e.config?.autofillSource===Ir.CREATION_CONTEXT&&t(Mt,{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}=Ur(),[a,l]=u(Ut.PROJECT),[d,c]=u(null),[p,f]=u(!1),y=G();m(()=>{if(n)y.invalidateQueries({queryKey:["fields",e]})},[n,e,y]);let[h,v]=u(""),[x,b]=u({}),[R,D]=u(Ir.NONE),[U,V]=u(""),[X,ee]=u(""),[ae,ye]=u(""),[te,Ve]=u(Ir.NONE),[k,xe]=u(""),[he,re]=u([]),fe=g.api.projects[":projectId"].fields.order.$patch,{mutate:qe}=B({mutationFn:async(J)=>{if(!(await fe(J)).ok)throw Error(Jf());return null}}),dt=g.api.projects[":projectId"].fields.$post,{mutate:ft}=B({mutationFn:async(J)=>{let T=await dt(J);if(!T.ok)throw Error(Wf());return await T.json()},onSuccess:(J)=>{let T={...J,visible:!0};i([...s,T]),f(!1),c(J.id),mt(J),M.success(Uv())}}),We=g.api.fields[":fieldId"].$put,{mutate:j}=B({mutationFn:async(J)=>{let T=await We(J);if(!T.ok)throw Error(Tl());return await T.json()},onSuccess:(J)=>{let T=s.map((Q)=>Q.id===J.id?{...Q,...J}:Q);i(T),M.success($v())}}),be=g.api.fields[":fieldId"].$delete,{mutate:ze}=B({mutationFn:async(J)=>{if(!(await be(J)).ok)throw Error(uv());return null},onSuccess:(J,T)=>{let Q=s.filter((je)=>je.id!==T.param.fieldId);i(Q),c(null),M.success(zv())}}),Ye=N(()=>{let J=Array.from(new Set(s.map((T)=>(T.scope||Ut.PROJECT).toLowerCase())));if(!J.includes(Ut.PROJECT))J.push(Ut.PROJECT);return J.map((T)=>({id:T,label:T===Ut.SYSTEM?ov():T===Ut.TEAM?u1():T===Ut.PROJECT?Jy():T.charAt(0).toUpperCase()+T.slice(1),icon:Hp[T]||ln}))},[s]),Se=N(()=>s.filter((J)=>(J.scope||Ut.PROJECT).toLowerCase()===a),[s,a]),Ge=N(()=>s.find((J)=>J.id===d),[s,d]),mt=(J)=>{if(J)v(J.config?.name||""),b(J.config||{}),D(J.config?.autofillSource??Ir.NONE),V(J.description||"");else v(""),b({}),D(Ir.NONE),V("")},Tt=(J)=>{f(!1),c(J.id),mt(J)},se=()=>{f(!0),c(null),ee(""),ye(""),Ve(Ir.NONE),xe(""),re([])},tt=(J)=>{if(J.canceled)return;let{source:T}=J.operation;if(!lo(T))return;let{initialIndex:Q,index:je}=T;if(Q===je)return;let rt=yu(s,Se,Q,je);i(rt),qe({param:{projectId:e},json:rt.map((Pt)=>({fieldId:Pt.id,visible:Pt.visible||!1}))})},yt=()=>{if(!X||!ae)return;let J=ae===Or.select?{select:{options:he}}:ae===Or.selectMulti?{selectMulti:{options:he}}:{};ft({param:{projectId:e},json:{config:{name:X,type:ae,autofillSource:te,...J},label:X,scope:a===Ut.PROJECT?void 0:a,description:k}})},_t=()=>{if(!Ge)return;j({param:{fieldId:Ge.id},json:{config:{...Ge.config,...x,name:h,autofillSource:R},description:U}})},$e=()=>{if(!Ge)return;if(confirm(Sy()))ze({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:ep()}),t(z,{value:X,onChange:(T)=>ee(T.target.value),placeholder:jv()})]}),o("div",{className:"space-y-2",children:[t(W,{children:tp()}),o(ge,{children:[t(Ae,{asChild:!0,children:o(S,{variant:"outline",className:"w-full justify-between",children:[ae?t("span",{className:"capitalize",children:ae.replace(/_/g," ")}):t("span",{className:"text-muted-foreground",children:$p()}),t(ve,{className:"h-4 w-4 opacity-50"})]})}),t(_e,{className:"max-h-60 overflow-y-auto",children:Object.values(Or).map((T)=>t(K,{onClick:()=>{ye(T),re([])},className:"capitalize",children:T.replace(/_/g," ")},T))})]})]}),o("div",{className:"space-y-2",children:[t(W,{children:Cl()}),t(z,{value:k,onChange:(T)=>xe(T.target.value),placeholder:yd()})]}),o("div",{className:"space-y-2",children:[o("div",{className:"flex items-center gap-1",children:[t(W,{children:gd()}),t(Jl,{})]}),o(Ro,{type:"single",value:te,onValueChange:(T)=>{if(T)Ve(T)},className:"w-full grid grid-cols-3 border rounded-md p-1 gap-1",children:[t(vr,{value:Ir.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:Gc()}),t(vr,{value:Ir.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:Hc()}),t(vr,{value:Ir.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:$c()})]})]}),(ae===Or.select||ae===Or.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:Od()}),o(S,{variant:"ghost",size:"sm",onClick:()=>{let T={id:Uo(),displayName:Pd(),color:Di(he)};re([...he,T])},children:[t(pe,{className:"h-4 w-4 mr-2"})," ",fd()]})]}),t("div",{className:"space-y-2 max-h-40 overflow-y-auto pr-1",children:he.map((T,Q)=>o("div",{className:"flex items-center gap-2",children:[t(z,{value:T.displayName,onChange:(je)=>{let rt=[...he];rt[Q]={...T,displayName:je.target.value},re(rt)},placeholder:Sp()}),o(Je,{children:[t(Xe,{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:Ni[T.color||""]?.hex||T.color||"#808080"}})}),t(et,{className:"p-2 w-auto",align:"end",children:t("div",{className:"flex gap-1",children:fa.map((je)=>t("button",{type:"button",className:"w-5 h-5 rounded-full border cursor-pointer hover:scale-110 transition-transform",style:{backgroundColor:Ni[je]?.hex||je},onClick:()=>{let rt=[...he];rt[Q]={...T,color:je},re(rt)}},je))})})]}),t(S,{variant:"ghost",size:"icon",onClick:()=>{re(he.filter((je,rt)=>rt!==Q))},children:t(Ne,{className:"h-4 w-4"})})]},T.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:h,onChange:(T)=>v(T.target.value),disabled:J,className:"font-medium"}),J&&t(cn,{className:"h-4 w-4 text-muted-foreground ml-2"})]}),o("div",{className:"text-sm text-muted-foreground",children:[nM()," ",t("span",{className:"capitalize",children:Ge.config?.type?.replace(/_/g," ")})]}),o("div",{className:"space-y-2",children:[t(W,{children:Cl()}),t(z,{value:U,onChange:(T)=>V(T.target.value),placeholder:yd(),disabled:J})]}),o("div",{className:"space-y-2",children:[o("div",{className:"flex items-center gap-1",children:[t(W,{children:gd()}),t(Jl,{})]}),o(Ro,{type:"single",value:p?te:R,onValueChange:(T)=>{if(T)if(p)Ve(T);else D(T)},disabled:J,className:"w-full grid grid-cols-3 border rounded-md p-1 gap-1",children:[t(vr,{value:Ir.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:Gc()}),t(vr,{value:Ir.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:Hc()}),t(vr,{value:Ir.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:$c()})]})]}),(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:Od()}),o(S,{variant:"ghost",size:"sm",onClick:()=>{let T=(Ge.config?.type==="select"?x.select?.options:x.selectMulti?.options)||[],Q={id:Uo(),displayName:Pd(),color:Di(T)},je=[...T,Q];b({...x,[Ge.config?.type==="select"?"select":"selectMulti"]:{options:je}})},children:[t(pe,{className:"h-4 w-4 mr-2"})," ",fd()]})]}),t("div",{className:"space-y-2",children:((Ge.config?.type==="select"?x.select?.options:x.selectMulti?.options)||[]).map((T,Q)=>o("div",{className:"flex items-center gap-2",children:[t(z,{value:T.displayName,onChange:(je)=>{let rt=[...(Ge.config?.type==="select"?x.select?.options:x.selectMulti?.options)||[]];rt[Q]={...T,displayName:je.target.value},b({...x,[Ge.config?.type==="select"?"select":"selectMulti"]:{options:rt}})}}),o(Je,{children:[t(Xe,{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:Ni[T.color||""]?.hex||T.color||"#808080"},disabled:J})}),!J&&t(et,{className:"p-2 w-auto",align:"end",children:t("div",{className:"flex gap-1",children:fa.map((je)=>t("button",{type:"button",className:"w-5 h-5 rounded-full border cursor-pointer hover:scale-110 transition-transform",style:{backgroundColor:Ni[je]?.hex||je},onClick:()=>{let rt=[...(Ge.config?.type==="select"?x.select?.options:x.selectMulti?.options)||[]];rt[Q]={...T,color:je},b({...x,[Ge.config?.type==="select"?"select":"selectMulti"]:{options:rt}})}},je))})})]}),t(S,{variant:"ghost",size:"icon",onClick:()=>{let je=((Ge.config?.type==="select"?x.select?.options:x.selectMulti?.options)||[]).filter((rt,Pt)=>Pt!==Q);b({...x,[Ge.config?.type==="select"?"select":"selectMulti"]:{options:je}})},children:t(Ne,{className:"h-4 w-4"})})]},Q))})]}),!J&&Ge.scope?.toLowerCase()!=="system"&&t("div",{className:"pt-4 flex justify-between",children:t(S,{variant:"outline",onClick:$e,className:"text-destructive hover:bg-destructive/10",children:fb()})})]})};return t(de,{open:n,onOpenChange:r,children:o(ce,{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(ue,{children:lp()})}),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:Rw()}),Ye.map((J)=>o("button",{onClick:()=>{l(J.id),f(!1),c(null)},className:C("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===Ut.PROJECT&&o(S,{size:"sm",variant:"outline",className:"h-8",onClick:se,children:[TS()," ",t(pe,{className:"ml-1 h-3 w-3"})]})]}),o("div",{className:"flex-1 overflow-y-auto p-2 space-y-1",children:[t(Wn,{sensors:[En.configure({activationConstraints:[new Zr.Distance({value:8})]}),es],onDragEnd:tt,children:Se.map((J,T)=>t(Gp,{field:J,index:T,isSelected:d===J.id,onSelect:Tt,isSortable:!0},J.id))}),Se.length===0&&t("div",{className:"text-center text-muted-foreground text-sm py-8",children:BS()})]})]}),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(S,{variant:"ghost",onClick:()=>{if(f(!1),d&&Ge)mt(Ge)},children:Re()}),t(S,{onClick:p?yt:_t,children:Kn()})]})]})]})]})})}E();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)})}E();function Po({fields:e,conditions:n,onChange:r,className:s,excludeFields:i,hidePrefix:a}){let l=bs(),{members:d,fetchMembers:c}=Vr();m(()=>{if(l)c(l)},[l,c]);let p=N(()=>d.map((x)=>({id:x.id,displayName:x.name,color:"system"})),[d]),f=N(()=>{let x=[{id:"name",label:Zl(),type:"text"},{id:"createdAt",label:Bv(),type:"date"},{id:"updatedAt",label:Hv(),type:"date"},{id:"sizeByte",label:qv(),type:"number"}],b=e.map((R)=>({id:R.id,label:R.config?.name||R.description||Sn(),type:Xp(R),options:R.config?.type==="user"||R.config?.type==="userMulti"?p:R.config?.select?.options||R.config?.selectMulti?.options,config:R.config}));return[...x,...b].filter((R)=>!i?.includes(R.id))},[e,p,i]),y=()=>{r([...n,{field:f[0]?.id||"name",operator:"eq",value:""}])},h=(x)=>{let b=[...n];b.splice(x,1),r(b)},v=(x,b,R)=>{let D=[...n];if(D[x]={...D[x],[b]:R},b==="field"){let U=f.find((V)=>V.id===R);if(U)D[x].operator=ef(U.type),D[x].value=""}if(b==="operator"){let U=f.find((V)=>V.id===D[x].field);if(U&&(U.type==="select"||U.type==="selectMulti")){let V=n[x].operator,X=R,ee=us(U.type,V),ae=us(U.type,X);if(ee&&!ae){let ye=Array.isArray(D[x].value)?D[x].value:[];D[x].value=ye[0]||""}else if(!ee&&ae){let ye=D[x].value;D[x].value=ye?[ye]:[]}}}r(D)};return o("div",{className:C("p-2 space-y-4 min-w-[100px]",s),children:[n.map((x,b)=>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:b===0?ew():Kv()}),o("div",{className:"flex-1 flex items-center gap-2",children:[o(Fe,{value:x.field,onValueChange:(R)=>v(b,"field",R),children:[t(Ze,{className:"w-[180px]",children:t(Le,{placeholder:NI()})}),t(Be,{children:f.map((R)=>t(oe,{value:R.id,children:R.label},R.id))})]}),o(Fe,{value:x.operator,onValueChange:(R)=>v(b,"operator",R),children:[t(Ze,{className:"w-[140px]",children:t(Le,{placeholder:fE()})}),t(Be,{children:of(f.find((R)=>R.id===x.field)||{id:"",label:"",type:"text"}).map((R)=>t(oe,{value:R.value,children:R.label},R.value))})]}),t("div",{className:"flex-1",children:x.operator!=="isEmpty"&&x.operator!=="isNotEmpty"&&t(af,{field:f.find((R)=>R.id===x.field),operator:x.operator,value:x.value,onChange:(R)=>v(b,"value",R)})}),t(S,{variant:"ghost",size:"icon",onClick:()=>h(b),children:t(we,{className:"h-4 w-4"})})]})]},b)),t("div",{className:"flex items-center gap-2",children:t(S,{variant:"ghost",className:"text-muted-foreground hover:text-foreground",onClick:y,children:d0()})})]})}function Xp(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 ef(e){switch(e){case"selectMulti":return"hasAny";case"number":case"rating":case"date":return"eq";default:return"eq"}}function of(e){let n=e.type;if(e.id==="name")return[{value:"eq",label:Rl()},{value:"neq",label:Dd()},{value:"contains",label:pE()},{value:"notContains",label:mE()},{value:"isEmpty",label:Pl()},{value:"isNotEmpty",label:Nl()}];switch(n){case"text":return[{value:"eq",label:Rl()},{value:"neq",label:Dd()},{value:"isEmpty",label:Pl()},{value:"isNotEmpty",label:Nl()}];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:Pl()},{value:"isNotEmpty",label:Nl()}];case"select":return[{value:"eq",label:Rl()},{value:"neq",label:Dd()},{value:"in",label:yE()},{value:"notIn",label:wE()},{value:"isEmpty",label:Pl()},{value:"isNotEmpty",label:Nl()}];case"selectMulti":return[{value:"hasAny",label:gE()},{value:"hasAll",label:hE()},{value:"eq",label:vE()},{value:"hasNone",label:AE()},{value:"isEmpty",label:Pl()},{value:"isNotEmpty",label:Nl()}];case"date":return[{value:"eq",label:Rl()},{value:"isWithin",label:EE()},{value:"lt",label:bE()},{value:"gt",label:_E()},{value:"lte",label:SE()},{value:"gte",label:xE()},{value:"neq",label:Dd()},{value:"isEmpty",label:Pl()},{value:"isNotEmpty",label:Nl()}];case"toggle":return[{value:"eq",label:Rl()}];default:return[{value:"eq",label:Rl()}]}}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(Je,{children:[t(Xe,{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:UI()}):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:Ts(a.color),children:a.displayName},a.id))}),t(ve,{className:"h-4 w-4 shrink-0 opacity-50 ml-2"})]})}),t(et,{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:Ts(a.color),children:a.displayName}),l&&t(Me,{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:BI()})}),t(Be,{children:e.options.map((i)=>t(oe,{value:i.id,children:t("span",{className:"inline-flex items-center px-2 py-0.5 rounded-full text-xs font-medium",style:Ts(i.color),children:i.displayName})},i.id))})]})}if(e.type==="date"){let i=[{value:"today",label:ob()},{value:"yesterday",label:ab()},{value:"tomorrow",label:sb()},{value:"one week ago",label:rb()},{value:"one week from now",label:nb()},{value:"one month ago",label:eb()},{value:"one month from now",label:tb()}],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:ib()})}),o(Be,{children:[i.map((l)=>t(oe,{value:l.value,children:l.label},l.value)),t(oe,{value:"exact",children:sv()})]})]}),!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(wu,{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(oe,{value:"true",children:P1()}),t(oe,{value:"false",children:N1()})]})]});return t(ds,{type:"text",placeholder:Jb(),value:r,onChange:s})}E();function gl({open:e,onOpenChange:n,teamId:r,projectId:s,assetId:i,fields:a,initialConditions:l,onApply:d}){let c=Pe(),p=G(),f=N(()=>{let se=l.find((tt)=>tt.field==="name"&&tt.operator==="contains");return se?String(se.value):""},[l]),y=N(()=>l.filter((se)=>!(se.field==="name"&&se.operator==="contains")),[l]),[h,v]=u(y),[x,b]=u(!0),[R,D]=u(f),[U,V]=u(f),[X,ee]=u(!1),{data:ae}=Z({queryKey:["team-settings",r],queryFn:async()=>{let se=await g.api.teams[":teamId"].settings.$get({param:{teamId:r}});if(!se.ok)throw Error(Xo());return await se.json()},enabled:e}),ye=ae?.semanticSearchEnabled??!1;m(()=>{if(e)D(f),V(f),v(y),ee(!1);else D(""),V(""),v([]),ee(!1)},[e,f,y]);let te=N(()=>{let se=[...h],tt=U;if(tt.trim()&&!X)se.push({field:"name",operator:"contains",value:tt.trim()});return se},[X,U,h]),Ve=N(()=>U.trim()!==""||h.some((tt)=>String(tt.value||"").trim()!==""),[U,h]),{mutate:k,isPending:xe}=B({mutationFn:async()=>{let se=U,tt=se.trim();if(!tt&&h.length>0){let _t=h[0];tt=`${a.find((J)=>J.id===_t.field)?.config?.name||_t.field} ${_t.operator} ${_t.value}`}if(!tt)tt=HA();let yt=await g.api.projects[":projectId"].collections.$post({param:{projectId:s},json:{name:tt,filter:{sourceFolderId:i,searchFilter:{conditions:te,recursively:!0,query:se.trim(),isSemantic:X}}}});if(!yt.ok)throw Error(Av());return await yt.json()},onSuccess:(se)=>{p.invalidateQueries({queryKey:["collections",s]}),M.success(hy()),n(!1),c({to:"/projects/$projectId/collections/$collectionId",params:{projectId:s,collectionId:se.id}})},onError:(se)=>{M.error(`Error: ${se.message}`)}}),{ref:he,inView:re}=Nt(),{data:fe,isLoading:qe,isFetchingNextPage:dt,fetchNextPage:ft,hasNextPage:We,error:j}=pt({queryKey:["search-preview",r,i,te,X,U],queryFn:async({pageParam:se})=>{let tt=U,yt=await g.api.folders[":folderId"].search.$post({param:{folderId:i},json:{assetType:void 0,conditions:te,recursively:!0,query:tt.trim(),isSemantic:X,first:20,after:se}});if(!yt.ok){let _t=await yt.json().catch(()=>({}));throw Error(_t.message||mA())}return await yt.json()},enabled:e&&Ve,staleTime:500,retry:!1,initialPageParam:"",getNextPageParam:(se)=>se.pageInfo?.cursor||void 0});m(()=>{if(re&&We&&!dt)ft()},[re,We,dt,ft]);let be=N(()=>fe?.pages.flatMap((se)=>se.data)||[],[fe]),ze=fe?.pages[0]?.pageInfo?.total||0,Ye=(se)=>{if(se===10001)return"10000+";return se.toString()},Se=()=>{d(te),n(!1)},Ge=()=>{v([])},mt=(se)=>{if(se.type==="folder")window.open(`/projects/${s}/folders/${se.id}`,"_blank","noopener,noreferrer");else{let tt=se.versionStack?se.versionStack.id:se.id,yt=new URLSearchParams;if(se.startTime!==void 0&&se.startTime!==null&&se.startTime>0)yt.set("start",String(se.startTime));let _t=yt.toString()?`?${yt.toString()}`:"";window.open(`/projects/${s}/files/${tt}${_t}`,"_blank","noopener,noreferrer")}},Tt=h.filter((se)=>se.value!=="").length;return t(de,{open:e,onOpenChange:n,children:o(ce,{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(ue,{className:"text-lg font-bold",children:SI()})}),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:(se)=>{se.preventDefault(),V(R.trim())},className:"flex flex-col gap-3 mt-2",children:[o("div",{className:"relative",children:[t(z,{value:R,onChange:(se)=>D(se.target.value),placeholder:X?wI():xI(),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"}),R&&t("button",{type:"button",onClick:()=>{D(""),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(Ne,{className:"w-4 h-4"})}),t("button",{type:"submit",className:"absolute right-1.5 top-1.5 bottom-1.5 px-4 bg-primary hover:bg-primary/90 text-primary-foreground text-xs font-semibold rounded-lg flex items-center justify-center transition-colors shadow-sm",children:vI()})]}),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(ke,{id:"semantic-search-switch",checked:X,onCheckedChange:(se)=>{ee(se),D(""),V(""),v([])},disabled:!ye}),t(W,{htmlFor:"semantic-search-switch",className:C("text-xs font-semibold select-none cursor-pointer",!ye&&"opacity-50 cursor-not-allowed"),children:VI()})]}),!ye&&t("span",{className:"text-[10px] text-muted-foreground italic",children:KI()})]})]}),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:()=>b(!x),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:[x?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:tw()})]}),Tt>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:[Tt," ",l0()]})]}),Tt>0&&t("button",{type:"button",onClick:(se)=>{se.stopPropagation(),Ge()},className:"text-[11px] font-medium text-destructive hover:text-destructive/80 underline underline-offset-2 transition-colors",children:cI()})]}),x&&t(le,{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(Po,{fields:a,conditions:h,onChange:v,excludeFields:["name"],hidePrefix:!0,className:"p-0 bg-transparent space-y-2"})})})]}),t(le,{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:TI()}),qe&&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?WI():yC()]})]}),!Ve?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(zt,{className:"w-10 h-10 text-muted-foreground/30 mb-2"}),t("h3",{className:"text-sm font-semibold text-foreground/80",children:YC()}),t("p",{className:"text-xs text-muted-foreground max-w-sm mt-1 mx-auto",children:oM()}),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:QI()})]}):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:mA()}),t("p",{className:"text-xs text-muted-foreground max-w-sm mt-1 mx-auto",children:j.message.includes("Embedding agent not configured")?Qb():j.message})]}):qe?t("div",{className:"grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-4 gap-4",children:Array.from({length:8}).map((se,tt)=>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"})]})]},tt))}):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:VS()}),t("p",{className:"text-xs text-muted-foreground max-w-sm mt-1 mx-auto",children:H1()})]}):o(L,{children:[t("div",{className:"grid grid-cols-2 sm:grid-cols-3 lg:grid-cols-4 gap-4",children:be.map((se)=>{let tt=se.startTime!=null&&se.endTime!=null?`${se.id}-${se.startTime}-${se.endTime}`:se.id;if(se.type==="folder")return t(Wa,{item:se,hideCheckbox:!0,hideActions:!0,disabled:!0,onSelect:()=>mt(se)},tt);return t(Ka,{teamId:r,item:se,hideCheckbox:!0,hideActions:!0,disabled:!0,onSelect:()=>mt(se)},tt)})}),(We||dt)&&t("div",{ref:he,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:bx({count:Ye(ze)})})}),o("div",{className:"flex items-center gap-2",children:[t(S,{variant:"outline",size:"xs",className:"h-8 text-[10px] font-semibold uppercase tracking-wider mr-1",disabled:!Ve||xe||X,onClick:()=>k(),children:xe?o(L,{children:[t(O,{className:"mr-2 h-3 w-3 animate-spin"}),jp()]}):_I()}),t(S,{size:"xs",className:"h-8 text-[10px] font-semibold uppercase tracking-wider",onClick:X?()=>n(!1):Se,children:X?Da():E_()})]})]})]})})}E();function hl({fields:e,sort:n,onSortChange:r,disabled:s}){let i=N(()=>{let h=[{id:"custom",label:Qp()},{id:"name",label:Zl()},{id:"createdAt",label:Kp()},{id:"updatedAt",label:RT()},{id:"sizeByte",label:Yp()}],v=e.map((x)=>({id:x.id,label:x.config?.name||x.description||Sn()}));return[...h,...v]},[e]),a=n?.field||"custom",l=i.find((h)=>h.id===a)||i[0],d=n?.order==="asc",p=((h)=>{if(h==="name")return{asc:tu(),desc:ou()};if(["createdAt","updatedAt"].includes(h))return{asc:nu(),desc:ru()};if(h==="sizeByte")return{asc:Jp(),desc:Wp()};return{asc:Lf(),desc:Gf()}})(a),f=(h)=>{r({field:h,order:n?.order||"desc"})},y=(h)=>{r({field:a,order:h==="asc"?"asc":"desc"})};return o(Je,{children:[t(Xe,{asChild:!0,children:t(S,{variant:n?"secondary":"ghost",size:"sm",disabled:s,children:n?NT({field:l.label}):Ll()})}),t(et,{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:Ll()}),o(Fe,{value:a,onValueChange:f,children:[t(Ze,{className:"w-full",children:t(Le,{})}),t(Be,{position:"popper",children:i.map((h)=>t(oe,{value:h.id,children:h.label},h.id))})]})]}),a!=="custom"&&o("div",{className:"grid gap-2",children:[t("span",{className:"text-sm text-muted-foreground",children:Ep()}),o(S,{variant:"outline",className:"w-full justify-between font-normal",onClick:()=>y(d?"desc":"asc"),children:[t("span",{children:d?p.asc:p.desc}),t(mu,{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:y,rootFolderId:h}){let{canEdit:v}=Ft(n),[x,b]=u(!1),[R,D]=u(!1),[U,V]=u(!1),[X,ee]=u(!1),[ae,ye]=u(!1),te=Pe(),Ve=i.length,k=!!f,xe=G(),he=br((Q)=>Boolean(Q.metadata["appearance.hideAgent"])),{data:re}=Z({queryKey:["folders",r],queryFn:async()=>{let Q=await g.api.folders[":folderId"].$get({param:{folderId:r}});if(!Q.ok)throw Error("failed to fetch folder");return await Q.json()},enabled:!!r&&!c}),fe=()=>{if(r===h)te({to:"/projects/$projectId/agentsmd",params:{projectId:n}});else te({to:"/projects/$projectId/folders/$folderId/agentsmd",params:{projectId:n,folderId:r}})},{data:qe,refetch:dt}=Z({queryKey:["projects",n,"members"],queryFn:async()=>{let Q=await g.api.projects[":projectId"].members.$get({param:{projectId:n},query:{}});if(!Q.ok)throw Error("Failed to fetch members");return await Q.json()}}),{data:ft}=Z({queryKey:["projects",n,"team"],queryFn:async()=>{let Q=await g.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",ft?.teamId,"members"],queryFn:async()=>{let Q=await g.api.teams[":teamId"].members.$get({param:{teamId:ft?.teamId||""},query:{}});if(!Q.ok)throw Error("Failed to fetch team members");return await Q.json()},enabled:!!ft?.teamId&&X}),{data:j,refetch:be}=Z({queryKey:["projects",n,"me"],queryFn:async()=>{let Q=await g.api.projects[":projectId"].me.$get({param:{projectId:n}});if(!Q.ok)throw Error("Failed to fetch project me");return await Q.json()},enabled:!!n}),ze=g.api.projects[":projectId"].invite.$post,Ye=B({mutationFn:async(Q)=>{let je=await ze(Q);if(!je.ok)throw Error("Failed to invite");return await je.json()}}),Se=g.api.projects[":projectId"].members.$post,Ge=B({mutationFn:async(Q)=>{let je=await Se(Q);if(!je.ok)throw Error("Failed to add project member");return await je.json()},onSuccess:()=>{xe.invalidateQueries({queryKey:["projects",n,"members"]}),xe.invalidateQueries({queryKey:["projects",n,"me"]})}}),mt=()=>{b(!1),V(!0)},Tt=async(Q)=>(await Ye.mutateAsync({param:{projectId:n},json:{role:Q}})).code,se=(Q)=>{if(ee(Q),Q)dt(),be()},tt=Array.isArray(qe)?qe:[],_t=(Array.isArray(We)?We:[]).filter((Q)=>!tt.some((je)=>je.id===Q.id)),$e=async(Q,je)=>{await Ge.mutateAsync({param:{projectId:n},json:{userId:Q,role:je}})},Ee=B({mutationFn:async({userId:Q,role:je})=>{if(!(await g.api.projects[":projectId"].members[":userId"].$patch({param:{projectId:n,userId:Q},json:{role:je}})).ok)throw Error("Failed to update member role")},onSuccess:()=>{xe.invalidateQueries({queryKey:["projects",n,"members"]})}}),J=B({mutationFn:async(Q)=>{if(!(await g.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"]})}}),T=(Q)=>{if(!Q)return"??";return Q.split(" ").map((je)=>je[0]).slice(0,2).join("").toUpperCase()};if(p)return t("div",{className:"flex items-center px-4 py-2.5 border-b sticky top-0 bg-background z-10 text-sm text-muted-foreground",children:t("span",{children:JC()})});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(Je,{open:x,onOpenChange:b,children:[t(Xe,{asChild:!0,children:t(S,{variant:"ghost",size:"sm",children:Xf()})}),t(et,{className:"w-auto p-0",align:"start",children:t(Em,{projectId:n,onManageFields:v?mt:void 0,onSave:()=>b(!1)})})]}),t(uo,{orientation:"vertical"}),t(hl,{fields:s,sort:l,onSortChange:d,disabled:c||p}),t(uo,{orientation:"vertical"}),k?o(L,{children:[o(Je,{open:ae,onOpenChange:ye,children:[t(Xe,{asChild:!0,children:t(S,{variant:"ghost",size:"sm",className:"text-muted-foreground",children:t("span",{className:"truncate max-w-[150px]",children:re?.name||"Loading..."})})}),t(et,{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(Sr,{teamId:e,projectId:n,projectName:"Assets",rootFolderId:h,onSelect:(Q)=>{y?.({filter:{...f.filter,sourceFolderId:Q.id}}),ye(!1)},selectedFolderId:f.filter.sourceFolderId,hideCollections:!0,hideShares:!0})})]})})]}),t(uo,{orientation:"vertical"}),o(Je,{children:[t(Xe,{asChild:!0,children:o(S,{variant:Ve>0?"secondary":"ghost",size:"sm",children:[t("span",{children:"Filter"}),Ve>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:Ve})]})}),t(et,{className:"w-[500px] p-0 overflow-hidden",align:"start",children:t("div",{className:"max-h-[80vh] overflow-y-auto",children:t(Po,{fields:s,conditions:i,onChange:(Q)=>{a(Q),y?.({filter:{...f.filter,searchFilter:{...f.filter.searchFilter,conditions:Q}}})},excludeFields:[],hidePrefix:!0})})})]})]}):o(L,{children:[o(S,{onClick:()=>D(!0),disabled:c||p,variant:Ve>0?"secondary":"ghost",size:"sm",children:[t("span",{children:bI()}),Ve>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:Ve})]}),!c&&!p&&!he&&o(L,{children:[t(uo,{orientation:"vertical"}),o(S,{onClick:fe,variant:"ghost",size:"sm",title:"AGENTS.md",className:C(re?.hasAgentsMd?"text-foreground":"text-muted-foreground"),children:[t("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 -960 960 960",className:C("size-4",re?.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:o_()})]})]})]})]}),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:()=>se(!0),children:[qe?.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:T(Q.name)})]},Q.id)),qe&&qe.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:["+",qe.length-3]})]})}),t(ml,{projectId:n,open:U,onOpenChange:V}),t(tc,{open:X,onOpenChange:se,title:oC(),type:"project",members:qe||[],isOwner:j?.role==="owner",onInvite:Tt,onUpdateRole:async(Q,je)=>{await Ee.mutateAsync({userId:Q,role:je})},onRemoveMember:async(Q)=>{await J.mutateAsync(Q)},currentUserId:j?.id,availableMembersToAdd:_t,onAddMember:$e}),t(gl,{open:R,onOpenChange:D,teamId:e,projectId:n,assetId:r,fields:s,initialConditions:i,onApply:a})]})}E();function Au({teamId:e,projectId:n,assetId:r,folders:s,files:i,selectedIds:a,isPublic:l,shareId:d}){let[c,p]=u(null),[f,y]=u(!1),[h,v]=u([]),[x,b]=u(!1),[R,D]=u(!1),[U,V]=u([]),X=G(),ee=g.api.folders.$post,{mutate:ae}=B({mutationFn:async($e)=>{let Ee=await ee($e);if(!Ee.ok)throw Error("Failed to create");return await Ee.json()}}),ye=g.api.folders[":folderId"].$put,{mutate:te}=B({mutationFn:async($e)=>{let Ee=await ye($e);if(!Ee.ok)throw Error("Failed to rename");return await Ee.json()}}),Ve=g.api.files[":fileId"].$put,{mutate:k}=B({mutationFn:async($e)=>{let Ee=await Ve($e);if(!Ee.ok)throw Error("Failed to rename");return await Ee.json()}}),xe=g.api.files.$delete,{mutate:he}=B({mutationFn:async($e)=>{if(!(await xe($e)).ok)throw Error("Failed to delete")}}),re=g.api.folders.$delete,{mutate:fe}=B({mutationFn:async($e)=>{if(!(await re($e)).ok)throw Error("Failed to delete");return null}}),qe=g.api.files.restore.$post,{mutate:dt}=B({mutationFn:async($e)=>{if(!(await qe($e)).ok)throw Error("Failed to restore")}}),ft=g.api.folders.restore.$post,{mutate:We}=B({mutationFn:async($e)=>{if(!(await ft($e)).ok)throw Error("Failed to restore");return null}}),j=g.api.files["download-links"].$post,{mutateAsync:be}=B({mutationFn:async($e)=>{let Ee=await j($e);if(!Ee.ok)throw Error("Failed to get download links");return await Ee.json()}}),ze=($e)=>{p($e.id)},Ye=()=>{let $e=h.filter((J)=>J.type==="file"||J.type==="version_stack").map((J)=>J.id),Ee=h.filter((J)=>J.type==="folder").map((J)=>J.id);if($e.length>0)he({json:{ids:$e}},{onSuccess:()=>{X.invalidateQueries({queryKey:["search",e,r]})}});if(Ee.length>0)fe({json:{ids:Ee}},{onSuccess:()=>{X.invalidateQueries({queryKey:["search",e,r]}),X.invalidateQueries({queryKey:["folders"]})}});y(!1),v([])},Se=($e)=>{v($e),y(!0)},Ge=($e)=>{let Ee=$e.filter((T)=>T.type==="file"||T.type==="version_stack").map((T)=>T.id),J=$e.filter((T)=>T.type==="folder").map((T)=>T.id);if(Ee.length>0)dt({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"]})}})},mt=async($e)=>{if($e.length===0)return;b(!0),D(!0),V([]);try{if(l&&d){let Ee=localStorage.getItem(`share_pwd_${d}`)||"",J=[];for(let T of $e){let Q=T.media?.original?.key;if(!Q||!T.id)continue;let je=await g.api.shares[":shareId"].files[":fileId"]["download-url"].$post({param:{shareId:d,fileId:T.id},json:{key:Q}},{headers:{"x-share-password":Ee}});if(je.ok){let{url:rt}=await je.json();J.push({id:T.id,name:T.name||"download",url:rt})}}V(J)}else{let Ee=await be({json:{ids:$e.map((J)=>J.id)}});V(Ee.files)}}catch(Ee){M.error("Failed to prepare download links"),b(!1),console.error(Ee)}finally{D(!1)}},Tt=async($e)=>{if($e.length===0)return;try{let J=(await be({json:{ids:$e.map((je)=>je.id)}})).files;if(J.length===0)return;let T="";if(J.length===1)T=`Name: ${J[0].name}
12
- Path: ${J[0].url}`;else T=J.map((je)=>`${je.name} ${je.url}`).join(`
13
- `);if(await mo(T))M.success(Ry())}catch(Ee){M.error("Failed to copy name and download link"),console.error(Ee)}};return{editingItemId:c,setEditingItemId:p,handleRename:ze,handleDelete:Se,handleRestore:Ge,handleDownload:mt,handleCopyNameAndDownloadLink:Tt,handleNewFolder:($e)=>{ae({json:{name:$e,parentId:r}},{onSuccess:(Ee)=>{if(X.invalidateQueries({queryKey:["search",e]}),X.invalidateQueries({queryKey:["folders"]}),Ee?.id)p(Ee.id)}})},handleAction:($e,Ee)=>{let T=a.has(Ee.id)?[...s,...i].filter((Q)=>a.has(Q.id)):[Ee];switch($e){case"rename":ze(Ee);break;case"delete":Se(T);break;case"download":mt(T);break;case"restore":Ge(T);break;case"copy-name-and-download-link":Tt(T);break}},onRenameSubmit:($e,Ee)=>{if($e.type==="folder")te({param:{folderId:$e.id},json:{name:Ee}},{onSuccess:()=>{X.invalidateQueries({queryKey:["search",e]}),X.invalidateQueries({queryKey:["folders"]})}});else k({param:{fileId:$e.id},json:{name:Ee}},{onSuccess:()=>{X.invalidateQueries({queryKey:["search",e]}),X.invalidateQueries({queryKey:["folders"]})}})},isDeleteDialogOpen:f,setIsDeleteDialogOpen:y,itemsToDelete:h,confirmDelete:Ye,isDownloadDialogOpen:x,setIsDownloadDialogOpen:b,isLoadingLinks:R,resolvedFiles:U,startDownload:()=>{let $e=[...U];if(b(!1),$e.length===0)return;M.info(`Starting download of ${$e.length} files. Please allow multiple downloads if prompted by your browser.`,{duration:5000});let Ee=(T)=>new Promise((Q)=>setTimeout(Q,T));(async()=>{for(let Q=0;Q<$e.length;Q+=5){let je=$e.slice(Q,Q+5);for(let rt of je){let Pt=document.createElement("iframe");Pt.style.display="none",Pt.src=rt.url,document.body.appendChild(Pt),window.setTimeout(()=>Pt.remove(),60000)}if(Q+5<$e.length)await Ee(600)}M.success("All downloads initiated successfully")})().catch((T)=>{console.error("Background downloads failed:",T),M.error("Some downloads could not be started")})}}}var wl=[];function ki({teamId:e,projectId:n,assetId:r,folders:s,files:i,totalFolders:a,totalFiles:l,totalFoldersSize:d,totalFilesSize:c,selectedItem:p,selectedIds:f,onItemSelect:y,onItemDoubleClick:h,onSaveField:v,displayStyle:x,onClearSelection:b,fetchNextFoldersPage:R,hasNextFoldersPage:D,isFetchingNextFoldersPage:U,fetchNextFilesPage:V,hasNextFilesPage:X,isFetchingNextFilesPage:ee,isRecentlyDeleted:ae,isRecents:ye,isLoading:te=!1,filterConditions:Ve,onFilterChange:k,sort:xe,onSortChange:he,dragState:re,isShareView:fe,isPublic:qe,onRemoveFromShare:dt,fieldVisibility:ft,collection:We,onUpdateCollection:j,rootFolderId:be,shareId:ze,sharePassword:Ye,allowDownload:Se=!0}){let[Ge,mt]=u(null),[Tt,se]=u(null),[tt,yt]=u(null),[_t,$e]=u([]),[Ee,J]=u(!1),[T,Q]=u(null);m(()=>{if(p)Q(p)},[p]),m(()=>{if(f.size===0)Q(null)},[f.size]);let je=P((A,Oe)=>{Q(A),y(A,Oe)},[y]),rt=G(),Pt=Pe(),[Vn,qn]=u(!1),[In,De]=u(null),Dt=_(0),Bn=P(()=>{qn(!1),De(null),Dt.current=0},[]);m(()=>{let A=(Oe)=>{Oe.preventDefault()};return window.addEventListener("dragover",A),window.addEventListener("drop",A),()=>{window.removeEventListener("dragover",A),window.removeEventListener("drop",A)}},[]);let yl=(A)=>{if(!jt||ae||ye||fe||qe||!!We)return;if(A.preventDefault(),A.dataTransfer.types.includes("Files"))Dt.current++,qn(!0)},xl=(A)=>{if(!jt||ae||ye||fe||qe||!!We)return;if(A.preventDefault(),A.dataTransfer.types.includes("Files")){if(Dt.current--,Dt.current<=0)Dt.current=0,qn(!1),De(null)}},bl=(A)=>{if(!jt||ae||ye||fe||qe||!!We)return;A.preventDefault()},Sl=async(A)=>{if(!jt||ae||ye||fe||qe||!!We)return;A.preventDefault(),A.stopPropagation();let Oe=await Xa(A.dataTransfer);if(Bn(),Oe.length>0)mn(Oe)},[cs,ps]=u([]),Ot=N(()=>{let A=new Set(i.map((gt)=>gt.id));return[...cs.filter((gt)=>!A.has(gt.id)),...i]},[i,cs]),Ao=N(()=>{if(f.size===0)return null;if(T&&f.has(T.id))return T;if(p&&f.has(p.id))return p;return[...s,...Ot].find((Oe)=>f.has(Oe.id))||null},[f,T,p,s,Ot]);m(()=>{let A=(Oe)=>{if(Oe.key!==" "&&Oe.code!=="Space")return;if(Ee)return;let gt=document.activeElement;if(gt&&(gt.tagName==="INPUT"||gt.tagName==="TEXTAREA"||gt instanceof HTMLElement&&gt.isContentEditable))return;if(document.querySelector('[role="dialog"], [role="alertdialog"]'))return;if(f.size>0&&Ao)Oe.preventDefault(),J(!0)};return window.addEventListener("keydown",A),()=>{window.removeEventListener("keydown",A)}},[Ee,f.size,Ao]);let{data:Fl}=Z({queryKey:["shares",n,"list"],queryFn:async()=>{let A=await g.api.projects[":projectId"].shares.$get({param:{projectId:n},query:{first:"100"}});if(!A.ok)throw Error("Failed to fetch share links");return await A.json()},enabled:!!n&&!qe}),Il=g.api.projects[":projectId"].reparent.$post,{mutate:_l}=B({mutationFn:async(A)=>{if(!(await Il(A)).ok)throw Error("Failed to move assets");return null}}),Ml=g.api.projects[":projectId"].copy.$post,{mutate:Al}=B({mutationFn:async(A)=>{if(!(await Ml(A)).ok)throw Error("Failed to copy assets");return null}}),Dl=async(A,Oe)=>{let gt=_t.map((vt)=>vt.id);if(tt==="move")_l({param:{projectId:n},json:{newParentId:A,assetIds:gt}},{onSuccess:()=>{M.success(`Successfully moved ${gt.length} item(s)`,{action:{label:"Go to folder",onClick:()=>{Pt({to:"/projects/$projectId/folders/$folderId",params:{projectId:n,folderId:A}})}}}),rt.invalidateQueries({queryKey:["search",e]}),rt.invalidateQueries({queryKey:["folders"]}),yt(null),$e([]),b()},onError:(vt)=>{M.error(`Error: ${vt.message}`)}});else Al({param:{projectId:n},json:{newParentId:A,assetIds:gt,withComments:Oe}},{onSuccess:()=>{M.success(`Successfully copied ${gt.length} item(s)`,{action:{label:"Go to folder",onClick:()=>{Pt({to:"/projects/$projectId/folders/$folderId",params:{projectId:n,folderId:A}})}}}),rt.invalidateQueries({queryKey:["search",e]}),rt.invalidateQueries({queryKey:["folders"]}),yt(null),$e([]),b()},onError:(vt)=>{M.error(`Error: ${vt.message}`)}})},{mutate:Ol}=B({mutationFn:async(A)=>{let Oe=A.length===1?A[0].name:new Date().toLocaleDateString("en-US",{year:"numeric",month:"long",day:"numeric"}),gt=await g.api.projects[":projectId"].shares.$post({param:{projectId:n},json:{name:Oe}});if(!gt.ok)throw Error("Failed to create share link");let vt=await gt.json();if(!(await g.api.shares[":shareId"].assets.$post({param:{shareId:vt.id},json:{assetIds:A.map((St)=>St.id)}})).ok)throw Error("Failed to add assets to share link");return vt},onSuccess:(A)=>{rt.invalidateQueries({queryKey:["shares",n]}),M.success("Share link created",{action:{label:"View",onClick:()=>Pt({to:"/projects/$projectId/shares/$shareId",params:{projectId:n,shareId:A.id}})}})}}),{mutate:$l}=B({mutationFn:async({shareId:A,items:Oe})=>{if(!(await g.api.shares[":shareId"].assets.$post({param:{shareId:A},json:{assetIds:Oe.map((vt)=>vt.id)}})).ok)throw Error("Failed to add assets");return{shareId:A}},onSuccess:({shareId:A})=>{M.success("Added to share link",{action:{label:"View",onClick:()=>Pt({to:"/projects/$projectId/shares/$shareId",params:{projectId:n,shareId:A}})}})}}),zl=(A)=>{Ol(A)},Ul=(A,Oe)=>{$l({shareId:A,items:Oe})},{editingItemId:jl,setEditingItemId:fs,handleNewFolder:Vl,handleDelete:ql,handleRename:Hl,handleRestore:Gl,handleDownload:ms,handleCopyNameAndDownloadLink:Wl,handleAction:gs,onRenameSubmit:Kl,isDeleteDialogOpen:Xl,setIsDeleteDialogOpen:Ql,confirmDelete:Yl,isDownloadDialogOpen:ed,setIsDownloadDialogOpen:Do,isLoadingLinks:co,resolvedFiles:hs,startDownload:td}=Au({teamId:e,projectId:n,assetId:r,folders:s,files:Ot,selectedIds:f,isPublic:qe,shareId:ze}),[dd,Oo]=u(!1),{mutate:pd,isPending:$o}=B({mutationFn:async()=>{let A=await g.api.projects[":projectId"]["empty-trash"].$post({param:{projectId:n}});if(!A.ok)throw Error("Failed to empty trash");return await A.json()},onSuccess:()=>{M.success("Trash emptied successfully"),rt.invalidateQueries({queryKey:["projects",n,"recently-deleted"]}),b(),Oo(!1)},onError:(A)=>{M.error(`Error emptying trash: ${A.message}`)}}),md=g.api.teams[":teamId"].upload.tasks.$post,{mutate:vs}=B({mutationFn:async(A)=>{let Oe=await md(A);if(!Oe.ok)throw Error("Failed to create upload task");return await Oe.json()},onMutate:()=>({files:[...wl]}),onSuccess:async(A,Oe,gt)=>{let vt=gt?.files||[],kt=Oe.json.parentId===r,St=vt.map((Rt)=>{let bt=A.createdAssets?.find((Vt)=>Vt.tempId===Rt.id),Jt=A.presignedUrls?.find((Vt)=>Vt.id===Rt.id);return{fileId:bt?.assetId||Jt?.fileId||Rt.id,name:Rt.file.name,size:Rt.file.size}}).filter((Rt)=>!!Rt.fileId),Yt=vt.filter((Rt)=>!Rt.file.name.startsWith(".")),nn=Yt.length===1?Yt[0].file.name:`${Yt.length} Items`;if(A.taskId)hd(A.taskId,nn,St);if(kt){let Rt=vt.filter((bt)=>(bt.file.webkitRelativePath||bt.file.name).split("/").length===1).map((bt)=>{let Jt=A.createdAssets?.find((Qn)=>Qn.tempId===bt.id),Vt=A.presignedUrls?.find((Qn)=>Qn.id===bt.id),Mn=Jt?.assetId||Vt?.fileId||bt.id,Xn=!!Vt&&!!Vt.url;return{id:Mn,name:bt.file.name,sizeByte:bt.file.size,fileCount:0,type:"file",status:Xn?"uploading":"error",proxyType:bt.file.name.toLowerCase().endsWith(".wma")&&bt.file.type?.startsWith("video/")?"audio":bt.file.type?.startsWith("image/")?"image":bt.file.type?.startsWith("video/")?"video":bt.file.type?.startsWith("audio/")?"audio":bt.file.name.endsWith(".pdf")||bt.file.name.endsWith(".txt")||bt.file.name.endsWith(".csv")||bt.file.name.endsWith(".md")||bt.file.name.endsWith(".markdown")?"pdf":null,createdAt:new Date().toISOString(),updatedAt:new Date().toISOString()}});ps((bt)=>[...Rt,...bt])}rt.invalidateQueries({queryKey:["search",e,r]}),rt.invalidateQueries({queryKey:["teams",e,"upload","tasks"]}),await gu({files:vt,taskId:A.taskId,teamId:e,storageBackend:A.storageBackend||"local",createdAssets:A.createdAssets,presignedUrls:A.presignedUrls,onFileFinished:async(Rt)=>{await rt.invalidateQueries({queryKey:["search",e,r]}),ps((bt)=>bt.filter((Jt)=>Jt.id!==Rt))}}),rt.invalidateQueries({queryKey:["search",e,r]}),rt.invalidateQueries({queryKey:["teams",e,"upload","tasks"]})}}),hd=Cn((A)=>A.startTask),{fields:po}=Ur(),ws=N(()=>{if(!fe)return po.filter((A)=>A.visible);return po.filter((A)=>ft?.[A.id])},[po,fe,ft]),[ys,Ss]=u(!0),[Cs,Rs]=u(!0),Fs=_(null),Es=_(null),_s=_(null),[Ns,Ps]=u(null),zo=_(!1),{canEdit:jt,canAdmin:vd}=Ft(n),As=_(null),Ds=s.reduce((A,Oe)=>A+(Oe.sizeByte||0),0),Os=Ot.reduce((A,Oe)=>A+(Oe.sizeByte||0),0),$s=(A,Oe)=>{if(Ve?.some((vt)=>vt.field==="name"&&vt.operator==="contains")&&A===10001)return Oe?Fy():Ly();if(Oe)return A===1?Ap({count:A}):gp({count:A});else return A===1?yp({count:A}):_p({count:A})},zs=(A)=>{let Oe=A.target;if(Oe.closest('[role="menuitem"]')||Oe.closest("[data-radix-menu-content]"))return;if(Oe===A.currentTarget||Oe.closest(".empty-area")||!Oe.closest(".group")&&!Oe.closest("button")&&!Oe.closest("a")&&!Oe.closest("input"))b(),fs(null)},Ls=(A,Oe)=>{if(Oe===void 0)if(zo.current)zo.current=!1;else mt(null);else{zo.current=!0,mt(Oe??null);return}},Us=(A,Oe)=>{let gt=A.type==="symlink"?A.targetType||"file":A.type,vt={teamId:e,item:A,isSelected:p?.id===A.id,isChecked:f.has(A.id),isEditing:jl===A.id,onSelect:je,onDoubleClick:h,onContextMenu:Ls,onDragStart:()=>{},onDrop:()=>{},onRename:(kt)=>Kl(A,kt),onFinishEditing:()=>fs(null),onSaveField:(kt,St)=>{v(A.id,kt,St)},dragState:re,onAction:(kt,St)=>{if(kt==="manage-versions"){se(St.id||null);return}if(fe){if(kt==="remove-from-share"){let nn=f.has(St.id)?[...s,...i].filter((Rt)=>f.has(Rt.id)):[St];dt?.(nn)}else if(kt==="download")gs("download",St);return}gs(kt,St)},isRecentlyDeleted:ae,isRecents:ye,selectedCount:f.size,isShareView:fe,allowDownload:Se,fields:ws,canEdit:jt,isExternalDragging:Vn,externalOverFolderId:In,setExternalOverFolderId:De,resetExternalDragState:Bn,onExternalDrop:(kt,St)=>{mn(kt,St)}};if(x==="card"){if(gt==="folder")return t(Wa,{...vt},A.id);if(gt==="file"||gt==="version_stack")return t(Ka,{...vt},A.id)}return t(Oa,{...vt,columnSizing:Oe},A.id)},Lo=f.size,Hn=Array.from(f).filter((A)=>s.find((Oe)=>Oe.id===A)).length,Gn=Array.from(f).filter((A)=>Ot.find((Oe)=>Oe.id===A)).length,jo=Array.from(f).reduce((A,Oe)=>{let gt=s.find((vt)=>vt.id===Oe)||Ot.find((vt)=>vt.id===Oe);return A+(gt?.sizeByte||0)},0),wd=()=>{Fs.current?.click()},xd=()=>{Es.current?.click()},mn=P((A,Oe)=>{if(!A||A.length===0)return;let gt=[],vt=[],kt=new Map;for(let St of A){let Yt=(St.webkitRelativePath||St.name).split("/");if(Yt.some((Mn)=>Mn.startsWith(".")))continue;let nn=Yt.pop(),Rt=vt,bt="";for(let Mn of Yt)if(bt=`${bt}/${Mn}`,!kt.has(bt)){let Xn=[],Qn={name:Mn,type:"folder",id:Uo(),children:Xn,size:0};Rt.push(Qn),kt.set(bt,Xn),Rt=Xn}else Rt=kt.get(bt);let Jt={file:St,id:Uo()};gt.push(Jt);let Vt=St.type;if(nn.toLowerCase().endsWith(".wma")&&Vt?.startsWith("video/"))Vt=Vt.replace(/^video\//,"audio/");Rt.push({name:nn,size:St.size,type:"file",id:Jt.id,children:[],mediaType:Vt})}wl=gt,vs({param:{teamId:e},json:{parentId:Oe||r,files:vt}})},[r,vs,e]),Vs=(A)=>{mn(A.target.files)},bd=(A)=>{Ps(A.id),_s.current?.click()},Sd=(A)=>{if(A.target.files&&Ns)mn(A.target.files,Ns),Ps(null),A.target.value=""},Bs=P((A)=>{if(!jt||fe||!!We)return;if(!A.clipboardData)return;let Oe=A.clipboardData.items,gt=[];for(let vt=0;vt<Oe.length;vt++){let kt=Oe[vt];if(kt.kind==="file"){let St=kt.getAsFile();if(St)if(St.name==="image.png"&&St.type.startsWith("image/")){let Yt=new Date().toISOString().replace(/[:.]/g,"").replace("T","_").substring(0,15),nn=St.type.split("/")[1]||"png",Rt=new File([St],`pasted_image_${Yt}.${nn}`,{type:St.type});gt.push(Rt)}else gt.push(St)}}if(gt.length>0)mn(gt)},[mn,fe,We,jt]);return m(()=>{let A=(Oe)=>{if(!jt||fe||!!We)return;if(document.activeElement&&(document.activeElement.tagName==="INPUT"||document.activeElement.tagName==="TEXTAREA"||document.activeElement.isContentEditable))return;Bs(Oe)};return window.addEventListener("paste",A),()=>{window.removeEventListener("paste",A)}},[Bs,fe,We,jt]),o(L,{children:[jt&&o(L,{children:[t("input",{type:"file",ref:Fs,multiple:!0,style:{display:"none"},onChange:Vs}),t("input",{type:"file",ref:Es,multiple:!0,webkitdirectory:"true",style:{display:"none"},onChange:Vs}),t("input",{type:"file",ref:_s,style:{display:"none"},onChange:Sd})]}),(()=>o(ka,{modal:!1,children:[t(Pa,{asChild:!0,disabled:fe||qe||!!We||ye,children:o("div",{className:"flex-1 bg-background relative flex flex-col min-h-0 overflow-hidden",onContextMenu:(A)=>{if(ye){A.preventDefault(),A.stopPropagation();return}Ls(A)},onDragEnter:yl,onDragLeave:xl,onDragOver:bl,onDrop:Sl,children:[!fe&&!qe&&k&&he&&t(vl,{teamId:e,projectId:n,assetId:r,fields:po||[],filterConditions:Ve||[],onFilterChange:k,sort:xe,onSortChange:he,isRecentlyDeleted:ae,isRecents:ye,collection:We,onUpdateCollection:j,rootFolderId:be}),ae&&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(Dr,{className:"h-4 w-4 text-amber-500 shrink-0"}),t("span",{children:Zp()})]}),vd&&t(S,{variant:"destructive",size:"sm",disabled:$o||s.length===0&&Ot.length===0,onClick:()=>Oo(!0),className:"h-8 px-3 text-xs font-medium bg-destructive/10 text-destructive border border-destructive/20 hover:bg-destructive hover:text-destructive-foreground transition-all duration-200",children:"Delete Now"})]}),o("div",{ref:As,className:"flex-1 overflow-y-auto min-h-0 relative flex flex-col",style:{overflowAnchor:"none"},children:[te&&s.length===0&&Ot.length===0?t(pm,{displayStyle:x}):x==="list"?t(fl,{folders:s,files:Ot,totalFolders:a,totalFiles:l,totalFoldersSize:d,totalFilesSize:c,selectedItem:p,selectedIds:f,displayedFields:ws,onItemSelect:je,onItemDoubleClick:h,renderItem:Us,foldersExpanded:ys,setFoldersExpanded:Ss,filesExpanded:Cs,setFilesExpanded:Rs,hasNextFoldersPage:D,hasNextFilesPage:X,isFetchingNextFoldersPage:U,isFetchingNextFilesPage:ee,fetchNextFoldersPage:R,fetchNextFilesPage:V,formatCount:$s,formatSize:Lr,foldersSize:Ds,filesSize:Os,handleEmptyAreaClick:zs,dragState:re,sort:xe,isExternalDragging:Vn,externalOverFolderId:In,setExternalOverFolderId:De,resetExternalDragState:Bn,onExternalDrop:(A,Oe)=>mn(A,Oe)}):t(Qa,{folders:s,files:Ot,totalFolders:a,totalFiles:l,totalFoldersSize:d,totalFilesSize:c,renderItem:Us,foldersExpanded:ys,setFoldersExpanded:Ss,filesExpanded:Cs,setFilesExpanded:Rs,hasNextFoldersPage:D,hasNextFilesPage:X,isFetchingNextFoldersPage:U,isFetchingNextFilesPage:ee,fetchNextFoldersPage:R,fetchNextFilesPage:V,formatCount:$s,formatSize:Lr,foldersSize:Ds,filesSize:Os,handleEmptyAreaClick:zs,dragState:re,sort:xe,scrollContainerRef:As}),(U||ee)&&t("div",{className:"flex justify-center items-center p-4",children:t("p",{children:mx()})}),!te&&s.length===0&&Ot.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(js,{className:"h-10 w-10 text-muted-foreground/50 mb-1"}),t("p",{className:"font-medium text-foreground",children:wp()}),t("p",{className:"text-xs text-muted-foreground",children:xp()})]}):t("span",{children:tm()})})]}),Lo>0&&o("div",{className:"border-t border-border bg-card px-4 py-3 flex items-center justify-between shrink-0",children:[o("div",{className:"text-sm text-muted-foreground",children:[Hn>0&&Gn>0&&o("span",{children:[Lo," Item",Lo!==1?"s":""," selected •"," ",Lr(jo)]}),Hn>0&&Gn===0&&o("span",{children:[Hn," folder",Hn!==1?"s":""," selected •"," ",Lr(jo)]}),Hn===0&&Gn>0&&o("span",{children:[Gn," file",Gn!==1?"s":""," selected •"," ",Lr(jo)]})]}),Se&&o(S,{variant:"ghost",size:"sm",onClick:()=>ms([...s,...Ot].filter((A)=>f.has(A.id))),className:"gap-2",children:[t(wt,{className:"h-4 w-4"}),"Download"]})]}),Vn&&!In&&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:Ot,onRename:Hl,onDelete:ql,onDownload:ms,onCopyNameAndDownloadLink:Wl,onNewFolder:Vl,onUploadFile:wd,onUploadFolder:xd,onNewVersion:bd,onManageVersions:(A)=>se(A.id||null),onMoveTo:(A)=>{$e(A),yt("move")},onCopyTo:(A)=>{$e(A),yt("copy")},onRestore:Gl,isRecentlyDeleted:ae,isRecents:ye,shareLinks:Fl?.data??[],onCreateShareLink:zl,onAddToShareLink:Ul,canEdit:jt})]}))(),tt&&t(Ta,{isOpen:!!tt,onClose:()=>yt(null),onConfirm:Dl,mode:tt,teamId:e,currentProjectId:n}),t(nt,{open:Xl,onOpenChange:Ql,children:o(ot,{children:[o(st,{children:[t(at,{children:"Delete Asset?"}),t(lt,{children:"Deleted items can be recovered for 30 days before being permanently deleted."})]}),o(it,{children:[t(ut,{children:"Cancel"}),t(ct,{onClick:()=>{Yl()},className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",children:"Delete"})]})]})}),t(nt,{open:dd,onOpenChange:Oo,children:o(ot,{children:[o(st,{children:[t(at,{children:"Empty Trash?"}),t(lt,{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(it,{children:[t(ut,{children:"Cancel"}),t(ct,{onClick:(A)=>{A.preventDefault(),pd()},className:"bg-destructive text-destructive-foreground hover:bg-destructive/90",disabled:$o,children:$o?"Deleting...":"Delete Now"})]})]})}),t(de,{open:ed,onOpenChange:Do,children:o(ce,{className:"sm:max-w-md",children:[o(me,{children:[t(ue,{children:co?"Preparing Download":"Confirm Download"}),t(Et,{children:co?"Resolving all files and folders. Please wait...":"Selected files and folders will be prepared for download."})]}),co?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(Dr,{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(He,{children:!co?o(L,{children:[t(S,{variant:"outline",onClick:()=>Do(!1),children:"Cancel"}),o(S,{onClick:td,className:"gap-2",disabled:hs.length===0,children:[t(wt,{className:"h-4 w-4"}),"Start Download"]})]}):t(S,{variant:"outline",onClick:()=>Do(!1),children:"Cancel"})})]})}),Tt&&t(nf,{open:!!Tt,onOpenChange:(A)=>{if(!A)se(null)},stackId:Tt,canEdit:jt,onStackDissolved:()=>{se(null)}}),t(Na,{item:Ao,isOpen:Ee,onClose:()=>J(!1),allowDownload:Se,shareId:ze,sharePassword:Ye,isPublic:qe})]})}
14
- export{mu,hu,gu,Ka,Wa,Au,ki};