From 4925397542b52249faa5f7f8cf0e835ffc4673a8 Mon Sep 17 00:00:00 2001 From: LIghtJUNction Date: Wed, 29 Apr 2026 03:14:46 +0800 Subject: [PATCH] fix: restore IME fix, fileTypeStyles, clearStaged fix lost in inline edit merge --- .../mdi-subset/materialdesignicons-subset.css | 30 +++++++- .../materialdesignicons-webfont-subset.woff | Bin 17996 -> 18532 bytes .../materialdesignicons-webfont-subset.woff2 | Bin 14532 -> 14960 bytes dashboard/src/components/chat/Chat.vue | 2 +- dashboard/src/components/chat/ChatInput.vue | 67 ++++++++++++++++++ 5 files changed, 97 insertions(+), 2 deletions(-) diff --git a/dashboard/src/assets/mdi-subset/materialdesignicons-subset.css b/dashboard/src/assets/mdi-subset/materialdesignicons-subset.css index a84d730fa..0c2434206 100644 --- a/dashboard/src/assets/mdi-subset/materialdesignicons-subset.css +++ b/dashboard/src/assets/mdi-subset/materialdesignicons-subset.css @@ -1,4 +1,4 @@ -/* Auto-generated MDI subset – 260 icons */ +/* Auto-generated MDI subset – 267 icons */ /* Do not edit manually. Run: pnpm run subset-icons */ @font-face { @@ -416,6 +416,10 @@ content: "\F022E"; } +.mdi-file-delimited-outline::before { + content: "\F0EA5"; +} + .mdi-file-document::before { content: "\F0219"; } @@ -592,10 +596,34 @@ content: "\F0318"; } +.mdi-language-css3::before { + content: "\F031C"; +} + +.mdi-language-html5::before { + content: "\F031D"; +} + +.mdi-language-javascript::before { + content: "\F031E"; +} + .mdi-language-markdown::before { content: "\F0354"; } +.mdi-language-markdown-outline::before { + content: "\F0F5B"; +} + +.mdi-language-python::before { + content: "\F0320"; +} + +.mdi-language-typescript::before { + content: "\F06E6"; +} + .mdi-layers-outline::before { content: "\F09FE"; } diff --git a/dashboard/src/assets/mdi-subset/materialdesignicons-webfont-subset.woff b/dashboard/src/assets/mdi-subset/materialdesignicons-webfont-subset.woff index b80b14d0615888b1c0bcae73dc1261f07a14f360..0cc10cbc670ba35fa0fe26e9e04f32c905eee3e7 100644 GIT binary patch delta 18123 zcmV)IK)k=qi~;130Tg#nMn(Vu00000NMryD00000gWQo6OMjpM01CVsn9gfwYXk}pl07Y~F001BW001Nd z#sR-*ZFG1507aAl000vJ00J5U0001NZ)0Hq07a+(00I~Q00J0d4t_~(VR&!=07t+8 z0018V001BYLLLEyZeeX@002ke0001V0002O45uT>aBp*T002l-k^F;y@4dIXY`onI z%02-ZWkeB^F)^{nZV^Qpl>ux;!~pCX8x>3(Yg8~%>~6(w>_P{-yZ!E8W`6q}c3<3k z?zsU}fhP5)MtfTKC+)NN|KEHH|6b%Z726i&`w9jHzO!I(kk>97&}=seXt7%d^sqYx zwAxWYKKtNs1MK{O4*N-e;MNs<7SL(G4(PJq2mUPhF`y?!WqGaOxR+f?D?9GCYX&T0 z*VQn`eeC+$$ZufMIsafc5MS+R?G|S9PwcBOGsNCk1S5-S_Hr$F7U& z)d8E@mjgDlZv<>^-woKp{t-}q=U@8U@m3VImVj++TfnxqJHTUD>l3iObslPqId*$% z0|JIy_p3J4vD;pMTQgu6J1oFsUfUpGq}@DVH@j27?za4Yxt?9uwLJp%v||JIvioX3 z$D{250b{J|r*@d*^0m(exV~!h0`{?Q29%#MKVU!mNx=SgK|uN0Uj`g#e+f8=m|zD69BMs}n#%LY?QL2&%4!Rt5 zfXVi(fGKurz)^Nuz|r=?fMe|C0ms^V1CF!z2OMu73OK>O5OAV>Dc~ggO2EnX9hK|t z6uThcREp;IfYa=v0jJw-1Kf}19Rkj@qXOKg=CJ{1+k*n!zvl4)=hz7W=h|Ze&a=}4 zoP*}e1Ipij%?dc*-W70xeLTQAtAv|hhj%4@|{cKHC$;>pt`> zkK=dt`+y%Pdc6^p&o~Q>2>6L&;T;2hws!}3z3<%-@T=_=@SB|$@VosrzA^~n= z_rC$&ZySvO=ex0Lfb-EEwhSK??KVNh=f=k5pyG35!}F!#8m@T%Y0L>KJ}dSf zSt6)-Kkw`B``+f*=bHY@1r^Wr{=%@;ao6SjJN5``s&m^(4-Oj|5 zjpIpnX4#%NyBm9UP7-kc|K2J*nv@(gQ17~R>puSf`=8DEIQWo0>2e`Xf~_?r!-CR=@Rgn|K?-gv96TXb*TRZM+tkIkaO;|PWuH8SS61W_y-*;1?}|P59`DM}vMX)5B&fC_sBLoi zLhsp6(h_x%7HGhmv-2_;J)4b}uM&rw<*Kk%P7qmFZ5_r5jF?P<=w(At>TAad^sca8 zE%O;=tx34`%j>Onr?s$sX?tN|dvRq!TR(pZ$JQ^0bMra)5(oC$?L|BbmlU*x^~+CQ zULU0KWR5=f=0A|%CGUrJO~Z3lK_i0ER8*lxu(B|eKB+w~1`;2Tnz>&u8vK*Lwmg3~ zdB662t|@&W5fJ~Nc=!DBuRR%D@Wx3W-U0jF9{0PgR}E;OYFU6*;ssr<^Ron&az=lJ zrAF48cDqebe9r!q#$*iueB(>y?zTJWwOi#4 zy*M*xuEO+e4SSP&oi>r%`bIf9SAc)r(MG%NwZT_OAGQkI9JE2HQ8J(rbXhO+vY1io zrL|^5T(4TBfh_^Ub)T56T}y^8NfQ&7vfS-jH?CWjl}iuzz2nwFm&3Vma}VBxl|Rox zvsW4=8R!d?&FiId70PaIz&pXbsLP}z(?j(jbORX-_lSkX4fn)cPE^dkHSB*8Yq$r6 zlQw(?0|Jk{$>CYT!BO}O9XLcdr+w(%4EAIR9(22h3-FV5eDMZ-#~bVg+3U#G?vB}N z!PmNRgE-T#X?+M!nBFWKkh@^kb735gHW}b#eDM3kVr#cf{~fOJGs*xL85JC7M2AKA z9ojp{7yt61xpxxoUD``?pN4<^4}Sk4ILK))Y50T@eZ@I9L7lj1!bEz9h!UMS?A{p6 zS)j}{GMcQ@gpPx;QM>RcE^5=I%I;xU5a-YXJc{rFm!uq|G(CI-u_R)Fpkb{7uJbtlW4pzCR%>Lu)dn8JS({VwYw7A_d7 zJL*KzH*?}m4vW~`J$~xL+U}KK#NlOj9fy{S+c&x2JN1#d-77zaYl$+v;nn$rqy=@3 z!WQ(Tz2ZYEOFpPMj&@a}OH!t*t90qzb=|v5!kV1$Ar*heYu?1hm_x!i#w1$#PtkKE zOjq70yo;8~RgjLU-BVCVf4BT0if%~cqg z2U?WTh_t5pG6|m!;|oxOPnDsHjoXbWWY(~1TuHt4cH`=ftHB4ELxTSxx)dN#|l>7WO`7Zec^fO0*U#kMZgt}lr7sv*JTisTP+NhNVuUv~h3n$X%8sJpllRv~SDBk+$$a+kt<`hD-_Vn8>2dmu|Iga;;Vx(Yq&^{S>sljI@Fg??5F5aVN-;Q@{m5!~>BPB*(&q}~ z`8FKLNXHj9&pni^h1`+wC*)&*21TeP2UrkT#tHo5;D&9#0DI(i(d_=X!mI^?%L)s%@HW3&y~; zqT?cTp!q|`ar*s^+c%Tt-==h!Jyd^Km@4_(1Ii>072CJ0HcHQd5qd<*5=9PKp%PsK zWwp9}2uBj@`t{a6e9TEKX;~%|H-#m~sMIaf5Omw9t9D(urObz|l@;sE8M<^P%f0{p zZWn%o!zH^d5vRC$O6>BNM375})%UszCRwjbCi)7Rq62ak@5&yCz6(H8R=9sUO0>72 za6|_v;sSqGDN?|#y6(z8CZU;TQp)s-Y0)k!r0*6Y*C(+A&_IT-lCla-&?xto}y(H>+>a3GfVU8 zWPiQ<^8U;4nH~w#BUicoyg;;Ps1*54k6!u0+}hgQuU*tuSGB`q_ zoxy)i{+5ool8eUxks)w3WQ8xUkgDC#jVb`Y5>TupAsd^U+UAx9%dLOShe$llTOl8L zchDCXh$X~*!FLDX)W!y0u(|nXpN+=hg2>N)Qb4mzE_*|lICj&xP~z%2mTNE0J>iy$xCbG&!UiG9*_n;^Y6nos+b&!EN)Cnum* z07uh>plW4D>09HHTCIO}Yo}*T7RKg~k3gS@47(jJCaBY$Mv3h0T1=8_!*aNdx&mkD zknTwCL*)YM8_bD1`cV=^%}C?c3Q{mTRlz;$*4ph+o+{Ix%&592fvR<6s#U;qDnbRB zYC#%A_I(YDbF99Yn?19kU$ri;&`xSjpl#;720p8d8IlzsU(+V zAfJ`7F4x4GH1+3Mc$5z;mt)BLiOm*DHL)t61P!M0qAi;@}24I*Mg ziBc0Ab!osFkgibTB6oLM=71_vc3RhWOenauL$_f6cI8xPIR-6J3as0<2zDps#qNYOGd`DomX9x(&zFRan?f8;$|Qsy3=Xm*8k~ z4Oo8@P6`=80U*E&&_x*qB&^0r(Q^MuL8!=4e?SNX1EF9r9_4*;IiB)Gmy|gr;0y7g zXeymMn#)U(K*$$R=2R;ogj)A|su}a_vkDP{^PzMo8V!H(em~C>5)B4rAK|4)P|Dk- zY&e>h0(?vm#DI@T>1a4xI+~M$@xrm7K$K_CnpCfY@B9Bz2@LpB5Z;l#4iyJgTv9N@ z!yn=1&J?VSI@c`DtfkXyGsWhdnz0IJgqhRDd(zC`VyiO zC<*#t9ngOXDs^QYAvio>N?T4f`X{A$P%v}(IDlhw?d)1>T6uoQ)j!U}qX{Ld=L#{z z*819-KJ&krH=Na-Q8!?luDfzn_9OAuD4hSh^r|!exii{An|{`Gq}}4Fe(og`-Co;z&>=A62IUtI=m$t=6o5^y1MLqcsOq1v?rM9g1ubL}33idHMt) z@8r`_CiX|u{A1*FIGhvr#auZ2^Ay!GZ8YjCG;R%LFNxg^Gzx|XBkDThAYqp3_v^25 zx{VYXL|7akX+X7dZ)ZS94IHAx+i^%gmu`QfhM29|4)D$H^dXOj?m^onp)NuR{{Z#d zAf?z+7ex5T@Glail)Cn~a87*XtI#gzYUeIht9rZDf{t|ibeGQl}KUs@MRz{Djg^wHvut)A=^Y-1P&n{pxGROs{sm?jTUm&$AwrjlbfB7 zqsVf!H}e z)0vr{T_wGR?ZwK;%xX9m3$JEQR^WzVSC(Oyyd5qpHsbYqyitTrZ#)3X=F(871)v$! zVB%5>x>ZGEn61kcwIiTsdZ~Xm7==z}c6DZEb+*$f7?*c<2e=*`9Tbd3DzPsbyxCba zn(i*cOaG00gM1KX=oUN?feOe9O?wr1u;$~Fq-ogLJ4wQ4(6p=(IF=waA54E<6|jSm zKN;2a@AI)VFDDZ6J+f^tB$JsU2}eLumhO=*@UL}7;y=x&<3h%^Gv|LZ$>f4<%f&)2 zB7xX_KHWGcyw(|sPrE(X2MQD7$_SAw-Z-+^=t2>J4Z8*-^|Qoa>t8V%wq$3PK z%Ct?og^E*gbzB2V&FI3SN|9NsTPavpp~8)16MT9M=Dytq@`;f;E=RjIV9z!5GU zJxUzdtQ$O>5&2T3bx*5e;qi+{M`QCOm3hmE(Aj%2RaJ(sfJA{>Nx{%%R~JYA_3)Qs z>2!=d1IytbF0v2VgvIezI`%4_gT>~3Yiswtw6^xr_V)H!Ppf~xs3OYM8%(R9qWKqz zhwd3nnVFcHijnx#8C+R&O~nG$M1VZs-QRCpIg#oaL~6C1*a5I@IZk`ObDMMS4qkB^ zd5t1|_m2|a(GLU#fHf|!>2e3yJ0MQ>y4{0r*W*DgnB_id5!&l^+jx9zL5WjqI~AR6 zS8(>11hItTkC=aJqbfZo4qwfa4pmM#ZDuPQ?&nFKo4`A9KnOBOD2K`lLXB0bpJ_}L zIeZndS-;<`!^OQ%Ng$*(lFq#1UUh{u7>VVUzVcyeLexbB6Z_aO& zOi?pn=FE~_rQqbN)x1-v3@WWf{^Uu1u~m@`Ej5D_&$VuG``D)_XEG~$-<;57pv8mf zvJNXSy3^{bzS*BrSWNh8giuC+VJXmgfy$-ElsKys>-@L0Z&}uGzt#fDFT4^=1V6|7=K_I{9Q_>bM5Et)@9+nJqRgFWH2wbA`}c#QaFq8y76`mC zz&8ak7~6^SZ-hNQ{v7|yA3gWQyZ*(U|9ty+FnE9Az4t2j()zh=$29#q;+YXWG`tPn z+Ym-@c!Y)5s}vWwto0fI)IvIaA6vcCm6X})N$SP29+y(-LL`bYE+8bBQF5uMzspUEUF%ND82Y3g#s=ILAy?MUtreH%V(EAh zR4E~X?Flz=MCnvPGpma zkUqQ_R7sanGGQAUupgtEBRrn#;rRRlHvFCMf5N6$yZ##vv|@jf zwjY|$WWm$=w3U6udba%Rpl_Oe0Orofr{p?$1Ga@E+Wi~k5=_o13-m0ty1usT2rc#6 zE*))m!4ljr1I>rPIfSCtdyt&>8AU1gy?xzq&wwf=+*c6$J^7 z{7kA7YOC-|T1h8qP3IX{jdv@WUs^4%EV#!D!d8beS`r7;58L)ky{3g z-r(*4lzI}i+Dzvqc={@ABTutV6=2xmsOR(Jm2kS^t_61uJO{eoY6Evih7W%nsDmaH z+=m0hJ}%q1*fV$A!2D3%fMyT;InYFHw4YkI*uw>PXq1?*H%f%5iTm2)#T*;rUT56w zj16*QKgBNMKr*FjpxOaiB~(`lFbUq3J+9M-*ESwWE+tMa>KoPJ4 zU-A1Zfl%PH)0PGIExrn~AObV7A*cBqxu zJk<`z`&2HZi#|O-PZ7@AGxsdgrbBVpqS|G66VxvnlkZTWh9g;LVklAsS1_DH;1=;8 zemD0$49^!HAfkJbZM%JuOJTpt{M5qu3R9yYPIX!st#4zb4X(}p+LWwpnC7(ng& zTnadAgVz5Pcb2;wH3fgtsFuuyp-BW|BpMm|XsfzH?BM896}JpOeGg;uRow3Qp%pL< zf&5}Y9)1D$|JeErt}0g4zcfRh$L($B)o^U(Te6%=v3GJi#W z0u$mL=%`!`yD0fP-V3@I{aY}{L)`fZe1iryke5+GlO*s4E_Z(uc)_RwDB}T~@flS} zkU63OWP@GTBgJmos)7iv3VdU3Y3caVl0(R{pZF{i3N+H`5Fh9S_)t3C2!x2`BmU*v zot8xJ^ffHv_);^Lj_H0OaJS#@lM}+xKrk3MDkNl|-+y;N@awlb9g2IWDeeCO(BJD+ z(klxFzMsORYZ-rDgt-{o)U;2@y^~FU+~>P4ts^97>vidu$^82K{8OpR;aK=`y4t8z z3VirM5v~v~3qpQ=zFu+p*mr@_r>U+Njc(A(HV$1X!qrPC#p2cFqvz3Vd3d%ZtvSHGq{XKcWsh>`Fjf$)N5sFou7Ez$Og$N1S%6)rQ}&vj>Ew z-QI^Uj1Px?C(7Z03MEh`tDyglSSK(QCEzhs#_3@Z=J5L7Ub~Hjw9&+45?apft$Yo+ z)IbrnMGeXhwbI{W<-3lvsiGS83XCXKAl&=(xBtrK=C8b6zj*QbwnyZe%sP z4)~j*oH>7j-jMVbTZJJt|HgCjFR=UG_dfj{|E3c<{>Ycu-B8ZN{b4Hc2)1#894_Oc zeD00&(*?bA_0g?RrxV(GbfU14FJp^IRv@rCC`q=)epLf%-=lp}K?_sED7lDCu5Y0~ zG9r(GJlvIK5Zck$*J@kcF0f?B*|$9FUY}B!661fcjdj~V90{Fb8(Rcfh3itnG;|Xl z*zJ*Dc5B*W`v88Eho*S>3?L8Gu}?~)JQYR>2&1Upv;})azvy*+rq2JRt(vvGWrCdW zjYpJ+sOlO7Vc>LKl#9FR-1U`np{1qJxfQg>Tz&XHKtFhH5W z)ewJ1?41ftsO_h^L8_K?z5d^#C6ik2c!^3(Pd-#ve&0k`BQI{>e`aCf%>CPoBt9p` z=Q1iiUBBEYZN1&OZh2$tD)s0=EK2=sse`IYxNY=F+@{M-x_p%`Cq3|ZW<#R$PH2?m z0ZxxSVs@Qg&*>mFjk&GNG-#-)(5YOD81H{9cL8mR5>u7Ax*a-H)~k9DcNhjm!08>P z4iyZK>J7Xm=1>ROGrU3dE{yZr03g z!`P0_X0x-y@3p&K^6sU?g*RPDEJd34J$zsDw`OXwezf+e)1}@xI8*);`8u>R(lCp9 z;t0^p9w}p6s?gL3@MEgE#vm!&(|l^pZzPE3Ym#?2rK3ls=C-PSRFBVB;`)D5G7$)g z!C*AD_{=kxW@Z-SiBKj^0&`~`j@2IAuKF}7d*Xo(dCEL#7$;3%t93nZ<#JXYX#WmL zNTF18ad!67GtVr>BSAhDu04FFSoKx6JGD~#ffHFEw~-N*K^aGemML;ot_Jw^4!}%Y z1(BxJN^F0@bDK-L?vzIeavCp6*JHf zsV=C`>5B#9Y1qike|&LiX}@4ZN_$o*Vw|DJa(i%aX;F_DkGl@#o(+FCJQ11VdAKpE zw#1?`>`94;@_sld0jV*l)2o2uiXMdR^IBE=C>2xA;^L)NYon@F;j6vNG=BlskF|i` znC2oJ`M=$ZV9_&w9nKLRj=rY_i|YH#L5p)WK?meFsW+g}1knt@2Ct|Z0bI6rf*dF0 zufCQPw=Nrxw%#Zui`sw1%GU&uUj?xBwaUe6Cg=>9pbc#>uzwj+^}KOv_0qqatN7r`@AmK84Y5S!hq4#vssmDdyn9!(h=B<`J*^ z0ZXZMph3Vph@Cxg-Ms!ob$K>pWf$I}bx(cJx?*J?&srZZ>+gSUkgfahfvvTo(OBwg zJEuO5*7=>s9&_o+|3eY53ewgh<&B=t3kDw22u7S?HVjq@95n(s_&BK=12?F#She!S z;chW+Rli;=&d1|BFjE$FEdxWKjaQsq+lxffGEn8boQ_2PaQ?yKe7Yue&8NGI zhV-u7xUwsR#Nq!I5J)s03Z>$bN`wHhy*#p5)D zXEMfOIG{m1hoURy4wp0qIdC3M1#lc2x83?jY^~j&dcs80k?@CYt<#^1-3faUGgJfm zK^o%#{Fa40AUhdpOWms_9LUB75p@H_lMT2 z_hKByy@Y?;zgHXa#xBel131PCwdQ#GBkx!8=BoEogzDnY_zE#+~WT-F_vrknh6v+ z6ilRrm>J=Vd}OU<9aaEO^^vuvBl?U-_(&ou=2L(1&`dZX>1#~4@8f``&2h)MbKFJl zA=mFL!|PPtx~7TV|E4KL z;~4J<>tbk2uy2UbABbBT=ypmr>Ubx?r2$`I{Wx zmX3c-F1ZPRQ$(SsxO=Gdi|*>oO0eFv5%#kV0RRJ)w$XKcbOirAGppa*7#UuPyfTv! zM7h$aW+f>L60s^38&xI6iwYdeWq4`kOYDWhZ1wNid-YN=DO8jSAVFtJ!fy+ujJx@^ ztQeDoVg~J9N;z0oN^SNo#A2^yxv$1F^#6Z5c?l%?v)m4hJBEZ{EU5{ELIf#x138{X z5A0K`qS5kdhF%h{(uyb`&7K&M= zCMDx@iM%Y=b8;-u4J6d_W%hppY#R!lfcxva#{sfup_X#)#@blM+4+C7nh+pEQ7^fFic{PQah<%Wf5u<^B!9T&onobeSDt=dKe+c4 zKk*3CclusnJ|3osPQ$JLUmmI_A2h|DzQ ztSDyFN3z}S^NaD>Vmhv+)Oe9}^J?kx<)Rjk1uegn$(=l%6Q!%&o#FMxpIIyF_s^!n zR(zCa;z^X*QOdAYowS@czw*kP<^C(Lxaa?tdcsq0ov|0ZT#|q75{wDb8xEN7dk-d4 zuST9e5>Vxl-}_$wD~YsQ4*L5?Ft!Puyz4YWiOJ{`>6$J*^IByBI6L7&_$iNSu(*a<>YuxKyQl)cYuCg66cFaa7rj_We=;6G?3nxe zW~YO+1OuX4lhJ*WFu6PY>H+?`d!;b=M$45w1z zXi!iSO5sD}xGEg+=w(CgyVJ2n=uD!HC=HDv>W+hBt>J(E-)#2ST>HdeFcCI{dKz={ zAvV*THr4h_NKp}Zo`O%ap`lS*E~&aL)W@L=-V+b{PP^T@cH`ROrSr^lY(b&q=w;}P zHn}!<=5(9+jaiIHjWyLj3tR#4HbJup+HVuYMHtYcC(zRy)-aPWxrjO$c^*y|2*241 z`)y2N7FM>46cx)nSvNAM|$C?D5JxkEJlCB7R%?;iiV2`)tCu~LgB)Knka_d z+I$iQF5ww@pxVb&P7O4QLX9$JmZ0W;8I+3+Xt( z2H1aNDsUO7o!xXjlAs4MVk$va&~p^%vLDT2g34pp!ZmfYf!RirW`S85XFg)Cky}66 z`1LxcH$q0fo?4E_ms9KcYN!~h=GWP7J#U1F%ybPVbF#e2P20$1`SmPlhtCq{Xh>6L zO4Vw)plG3^xK}6{)zS>^xw%>XGi_UxD}H}=(pyzkl7x4g2PhAYGS3V37>}T|$y(GMTpQ^GUuyHW?s+YA}$>24H{J zpUL>?(NrKhfkZ4vMIm66!3+^`9L5a4*LQnzdsd*s{-_BE)dAkqXAzkG8qk- z2HsMp_Jj!!JQ87O5PaXv^|UUDa> zDe6Pj6H{5A8ZzC3L4&A>x<)oT(pz&1l`;NouG#H2=bri-*vrW4)*AEp&|7~wJ^f&_ zhW;d4?yUiulHftDX*RW|Fb9EeJ%PE#;FpNc=QKCp3lW7!oy|T zIy!^e6Pgq67rf0e%1_6<9PNL@UB&eNhWn$<8@r@E_J=n22j=M0n%eYu+;>Tj#<|Tx zjTb2gnkAY~K)2H4AmsWClxKf!piK3qD>MXQnpF)|P}Bwp?zOx0VCW6Ujy<}<2O1AN zdU92(to(~b-V|oO{bWtq{<+~d`9*Cu*wWToH3EZ!w;!k-dxK!{r{8?X+5?RMzc@F` zmsd}&RJ13T)$RA*)mqc4wV#^>t8(%kq285t`r&L=WGg?xlauewf?q4Zcnb zBnZtmRS*ocrmW@98tV_$>krY)UT^Ss(2vfvHCUP+N8(XmOenv(VS+6%_6eCy!p~oKfLRX&6n=};Zsa1{zvj3$ggroxL@Ty#eD&0 zfP!Ne9Uyc{)G$zmH+X-vS=dz@K@_l2m9kS*BM6G2Q3^==qG^CcMcqW}irQ>cS+pJE zuhon~F^RqkMGC8Bs%rpAXLa4K3RR|rX{xBkfa`f-2IYZz4Tvax3~JBpCdLaJ>sTPK zQpRROHJaq#fOMA%#ZzKX5TnbpYAQ9G71Ozu8RCmXLNP78GMj%tJCjH#MxtmDU&hys z#A4w@B%3-dM}4HMhT`$iB9P8lvJ@5*Vp0hZl=Q@SQVJ(XG|YoYQPi}Vu*iq~dMOm* zQ{ikb;EP5?DIkPI(a&ocWj^9hMNh|*@}tqPnwCgB9Sedm690T|IXRb_ZRxf|f9%X02FgA&$Y-u=deimzY z_hpu{#bOxN+9NGlMw~qMIUduaNeYju1)x7-Nt*EE>P~AGfTmzdg6p@Y$Kt%K3KLqv zxci*xrx-M!*(l?nGfMT)?{(=5>`W#RaLn$3mq7t#kRkQ6adQ_|SO!A;QeFEe^}#^@ z-{tMc=`%fuME}YOzBkw>KdsU4Rs=?!G~H6fbP#tR%jQ! zV0zcCO=y^wsCSbW3pMikth(NvZV1X9{ z=fsl%^Qaj(DduM8cZzXIiWj?5Ug~0gzFKsxwHAM^y*xwDdpEfE&&*?CaQ7x&&hB(? zzn+5+uz?ur9E**S%Cl}w}uBduoFgO z97cJN=F)+C_dw3Htp2`x?j)Scuyf2$7HtPEGaR&Ga5-(0WkkXNlManCL0jJVZW^Nx zS9^b<{bREPP^gv^k4w398wFfI@D6)>jB+%gsEIs$?tC~bJxuD{D8299M&E|NNom1T zx9wTx1h2|-+&BRxCA&#ViCNs7YbZKq%qw|0n-XKiWP}vv?zl>v+I^4RSBs=$5rBB4 zs7Xn6tAvjE6FygYH_qYpo}hYf2EW&Q+Gl@g!@TA*2h84z-uO3f_&AEsV_XXOu*ucX zlig#&2_;*9UqmXs3w0( zCEx#QGNo0XSiGcN(uB(F#p>7iG`}jG`$lGYX)ZxdJ$%ZV6XT)8H>|H!@7Lx-aM}Hf zPt0qn1hr+0g@2pmSnz+22`G)Hq!m>0l?~okz!*VUJGIhYw8@4XH6HW3m za3P85IZoTz-J@<$N=s?WEy8uJJ?MX)PQP!mG-0x$n9~~e9E^iS7Zr^Z-s&ypBNYHr zJ;6rZSnFM4;Uh1xxRJ}1jrgC%H_%EsY2TbeZ8+v-fJ6VKC`Hb|5dbgOd|NQ+{OG{Me3@1VH8;C% zOh6@#GmE|6;+X(-Z`vEVGj%${ezbMD_SC6UPt`8B?xy}ulkF42Shb3qPj5QZg~<14 zKlgLmJ%`$()xSr3?|Zd-`nP}N))J^M@^6#DAt}X^PhifVRE47T3hJIf+Fq@y=oyL} z7&TL{_G1nh=%xQth(uz+MLiG=_%}dK*6V!87yMs??e6 zJ0a{Z-5d55{Bi!?2ni zk$P{Ow#(fZg-ef*+;Z_~V~_bFzIiIE+TXC%=`=mJ&Gz2R_TJ2H7~n$Bwb^Qyk+kVm zd+L&oi|<(6|97ZPQGwR4qFbv?wY6xHm+gizQe+u*yP;Ry&;bKbIgD4kzq@O;dtJ++ zprvg-DD99yATZ0#D!gL#q9T zQDqB_60*`st?~&XlfJp{A4|g^P*LBQjJ!BO>cTh@&V$7RXFh%R1L&jqz}OccIjt;cm5$(27G z%e6wr*>@Wl*R?8$ym9}qfB(USkJGFV#NtKZ0C4cP?*Fg%Kge=KOyf<7<^H)ff0jUn zL*Z~5t-jTAtXqF_Y3;SU-8QB6|DOCGfa6jBN^@ydsK*2HxI+moWDo{jwLFV^pn2n{ zuak{1;GTt}$y3^CwSYM;6lx&*cUC}ukB4ET}oz2j>IwvJ}Rbwq=vG|-0XE!)m&$}ZedKl00=nB zX05~^1#`dg%&*iku_w!IS*DNykuX6IISX?|gYdPF@!DQAV+ZCy1}z$@q9T+w>`^e0 z(VsuRcI>#h@{ku*^yCjEAzBk>R(f7=QF4q)Ptt$rB8x^h9*%uKtn+GM@-wKoV90fY zh3`$p!oNSj^8xYM~Xaac@*#s7d0yowjV;tLoZk5Tfc&YpEMgSN;gFiO(~ zL}a4@)UGCcR_)T8R!?8Lbb9qomuiFhBb#DUe%puNCMU&BmIw6a-xG&gl@!$Zz#SUF zxYmDqW0ZWAaJgfP!ff-X-gceXiSw5UVe#0SlB~_{w}*X3>_=Q1<&2dPS7m8GJUbn_ zWV`;`6r+3R;W$m?av?AS_kN1?O=8w>WQ5b4^UEKa{r$I zZO6Q{6*?O^ntT8qbefo}-Jlj6d(1k$#0-BUgGrL0#l+fuabc#ksTG%x%vG(z+^&vR znYDTL?*Bzzk^|vD!SDa07nYpmc56`;lu#&COp!=bl>eUDa2(boce=Kei2u14%on*s zS_3Le+?HNuPzj02oouGX8mD?f0sb%@ZH0o_fKUwc@koFN>9+`k|48u`!rD$m1(|<` znHCR4LO~&dLSnvJeZE*6**!l_{p~H9XR5q{DmqtuK!u~ADwztOfrbKzWK;x@Z)|{$ zf209C97dw@e3s|!^=4+VB>Df5A3no(74=jCW* z$fvV#5uADZ*8gk5Rkh9}(nrc#!nl7)G7-~&&NLL@gS3aPlm>cQxY6VZGWJCT*msR$ ze3Jfyj%vgz>5X!y=pGq)B~s8&(SBaqRWq_yZc*Hy_TuZAA0+0^U#47Wow`v_t*brq z=s}gN;fWoBCmxQgNBYOEJbqWk=&WNv=j5Y*kxC=dQ>+HpM-?5ccZ|$kk6(W|Hj%0t z-pFFt71>=csu^Wg_qgzPX#PFwVS`*qFo5JJR9ge!S)wXc2G(&(tOaQ{hIFof-TZ`@ zjBZwhrIxDCE)dgPS_0}jTONL=(`mz$GY5AFVkDW!q)0Vy&L~@p3k!=|3S2t4G0ynu zj5T3o%1$q^F^$P-$2&*AdM?6qZQVs z89ab(s+4BHd+8oE0hWY6+i;yTflKs&ha6o@F8FePKDPxh7i4GI`d4#4A94zm)l#Mq z0&4QuYzr7?r}NL1cb)&-Yzz6u4t@HclmA5iC)i4GS+o?{81*g*ZX$n3yJFbPpU4%Z z5KOf${@~(Q9)7keH?%orZurN~K3r|6>vMC;-+Hm~7vYNGKRo6AG4jg;6%=B4fFHv!L>j(UlJ#m?Apg=s5EqYLVJ7$wVLTae zEd4@x*#!)M9dZmaFqMD4Y3^8-qPX7g4vkNN)&|Mcf6(o9dkzqt;U41{e@FfjdOJ$3 z;^Ul{wx0!AvHyvo3b#}L+^sFwv>JSuwdHrfs1D2&%Nx2+y+uRwmN~p+d9GHQTPCgA zeJi4rgex=Tb{ZnzC~Ff>^`$IBo$V%^vCJ000RXFQ2V?PYLEC@#M>G#IdLG=to#rrI z1%-_?@k0|e|CoxyL`OR{sP?*UdtKwEPkyefRGRk z#fRSr2t-Mf^pAhyQuN1>^ktbZ1=EH&F9(ak<3U{0_rs{$uYwF2rMk`%W-oC6xkvD| z68*N(wkGC?eC=9q*Kreay7_*)?EiW=Et)gc%iuZeGj%x1*0+^fUoUI8ddm^%pPE_x zb_ZWC>-aNMd*o0`ayo)=u73u`4_ez?(Gx&{t>QlrKtF#3LqOh#^PTcP@{L$*^Oeo` ze6-rqT5WA}c~jdcZpP!)w$`q~;Z2PcVYTrao3WSymwcLD0)KHm#;%EP&bpq87~Q?Z zo#ZZKbR2b#W8;baQ-@iW>Z=OS+@L$}1`ZsYq9*zp(un>ifm=GF%ubKjR zCK}1k0zS&+Tt5F@@~7lqLMtG;$Lui8hTH&YLq!a_&hmeMA14)-Fno>x>!M+uqs-y5 zo5w)4$uDQt7He`A+2u;lzH|6e;Z*QwZPh%pfJSarpJ(p1wfU3TR^cs@yzv{^g=j6R zrMgi2^!3p4M+>JS;k+4H^Q#qwn!ELgn|wbJZ!urin*-|ej(Fe*_c-?q%&L)JKGa7Y zRSLSRv2L$_d;bK$Jw}Pg8m8mXjY-FjGIh*o7}W+49F_THFsF_+8NE1U!}||T?XeT^ z=Y8yjc)suTXfl156?u#h#TUqn0Y9;PfnYe43;1PUAe;5c{ymMFG_{sXRPlGhn^ko!1Yf$%{@qMRIYa3gZe@FC;I3f z^6CYDq_R#ETjK0PC;#~ z-gr_CjgWÚQUI^uNwrGgxej9;))d`sbf(+o7cX!%vA1tZ`L2`EMK!r{7qtdI$K zuV$RiyrnSwGp5eatW?%R_}`;Zz6&suniIVyQ0>T}^muNXW`X_#DJBjDS?H0)sD368 zdu5y_Pfq9JV*Do8azGR!!ufJ;<8g-(`=3=ZQ~C08;whi+6q0E zQ%TGFSeePnK}{vVFjzNq$i<5<(PY$aD;3~_Qo?XQ5+~J;15Befnc&2iwB~?Kr-131X49WABOT9X-zpX`~HA`5T*}+ zV~+L|?!9yFJlz9U<>02;5it@h5r?~&i{-g3SH z;9sEUf0>;hj}aC%fqn*a1e3m=@Zu+I+y>0xch>_qZlWQttjO>ixbYJOFOH(?#!n>a zX<4@1)5A|}6!IGz`NHUbM=6LuxUf)s;9s)>j(wLdj}`uZc|VLi0C=2ZU}Rum0OHh7 z?^@&eZN4&aGcllp|NsB*V`5=E3S@FHfTaNjEeQ&fW99|rv9NZlu9Y!5}9h4oa9l#y^ z9#|gDA37i4AR8b)AZ#F~Aj}~tA!H$!A>twDlUI2Un-3%$}1Nu zT`Q3*(ku5YEG$$khb*!!1ubtavMt;$FfLp!h%VVLF)xfSvM<*#A22&GVlbdE^D#d$ zhB3-AA2MAsiZaPF2Qx%7R5PA4w=^d-U^Krp{55(t(l%^1oHr0RcQ?m48aTN)$vD|L q6gek&oMT{QU|{5CtYj3>WdH#tAm#!>28RD&J_7(5g#pTw$3=x8D)`|5 delta 17628 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 PU_Ju?7{~#`lix>$*GMev diff --git a/dashboard/src/assets/mdi-subset/materialdesignicons-webfont-subset.woff2 b/dashboard/src/assets/mdi-subset/materialdesignicons-webfont-subset.woff2 index aa231a921a5218748216f92cfa82b2a429823e35..d10ef4119aeb58d9888e84ad215ae8a2df826084 100644 GIT binary patch literal 14960 zcmV-$I*-M7Pew8T0RR9106K603jhEB0EF-W06HB20RR9100000000000000000000 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 literal 14532 zcmV;#I6KF8Pew8T0RR91064?|3jhEB0D%Yq062620RR9100000000000000000000 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 | null>( ); const showProviderSelector = ref(true); const isReplyClosing = ref(false); +const isComposing = ref(false); +const lastCompositionEndAt = ref(null); const isDragging = ref(false); let dragLeaveTimeout: number | null = null; @@ -397,6 +404,44 @@ const canSend = computed(() => { ); }); +const fileTypeStyles: Record< + string, + { color: string; icon: string; label: string } +> = { + pdf: { color: "#d32f2f", icon: "mdi-file-pdf-box", label: "PDF" }, + txt: { color: "#1976d2", icon: "mdi-file-document-outline", label: "TXT" }, + md: { color: "#1976d2", icon: "mdi-language-markdown-outline", label: "MD" }, + doc: { color: "#2b579a", icon: "mdi-file-word-box", label: "DOC" }, + docx: { color: "#2b579a", icon: "mdi-file-word-box", label: "DOCX" }, + xls: { color: "#217346", icon: "mdi-file-excel-box", label: "XLS" }, + xlsx: { color: "#217346", icon: "mdi-file-excel-box", label: "XLSX" }, + csv: { color: "#217346", icon: "mdi-file-delimited-outline", label: "CSV" }, + zip: { color: "#7b5e00", icon: "mdi-folder-zip-outline", label: "ZIP" }, + py: { color: "#3776ab", icon: "mdi-language-python", label: "PY" }, + js: { color: "#b8860b", icon: "mdi-language-javascript", label: "JS" }, + ts: { color: "#3178c6", icon: "mdi-language-typescript", label: "TS" }, + html: { color: "#e34c26", icon: "mdi-language-html5", label: "HTML" }, + css: { color: "#264de4", icon: "mdi-language-css3", label: "CSS" }, + json: { color: "#6a1b9a", icon: "mdi-code-json", label: "JSON" }, +}; + +function fileExtension(file: StagedFileInfo) { + const name = file.original_name || file.filename || ""; + const extension = name.split(".").pop()?.toLowerCase() || ""; + return extension === name.toLowerCase() ? "" : extension; +} + +function filePresentation(file: StagedFileInfo) { + const extension = fileExtension(file); + return ( + fileTypeStyles[extension] || { + color: "#607d8b", + icon: "mdi-file-document-outline", + label: extension ? extension.slice(0, 4).toUpperCase() : "FILE", + } + ); +} + // Ctrl+B 长按录音相关 const ctrlKeyDown = ref(false); const ctrlKeyTimer = ref(null); @@ -445,6 +490,10 @@ function handleKeyDown(e: KeyboardEvent) { return; } + if (isComposingEnter(e, isComposing.value, lastCompositionEndAt.value)) { + return; + } + const isSendHotkey = e.ctrlKey || e.metaKey || @@ -464,6 +513,23 @@ function handleKeyDown(e: KeyboardEvent) { } } +function handleCompositionStart() { + isComposing.value = true; + lastCompositionEndAt.value = null; +} + +function handleCompositionEnd(e: CompositionEvent) { + lastCompositionEndAt.value = e.timeStamp; + clearCompositionState({ keepLastEndAt: true }); +} + +function clearCompositionState({ keepLastEndAt = false } = {}) { + isComposing.value = false; + if (!keepLastEndAt) { + lastCompositionEndAt.value = null; + } +} + function handleKeyUp(e: KeyboardEvent) { if (e.keyCode === 66) { ctrlKeyDown.value = false; @@ -562,6 +628,7 @@ onMounted(() => { }); onBeforeUnmount(() => { + clearCompositionState(); if (inputField.value) { inputField.value.removeEventListener("paste", handlePaste); }