From d2925871fdad8d1cc5851243453e28b4a111c80a Mon Sep 17 00:00:00 2001 From: Juergen Kunz Date: Mon, 12 Jan 2026 23:41:43 +0000 Subject: [PATCH] feat(dees-chart-log): add xterm search addon support and enhance chart log demo with structured/raw (Docker-like) logs and themeable styles --- .playwright-mcp/dees-chart-log-clean.png | Bin 0 -> 24710 bytes .playwright-mcp/dees-chart-log-docker.png | Bin 0 -> 42694 bytes .playwright-mcp/dees-chart-log-final.png | Bin 0 -> 63029 bytes .playwright-mcp/dees-chart-log-fixed.png | Bin 0 -> 24915 bytes .playwright-mcp/dees-chart-log-shadow-css.png | Bin 0 -> 23911 bytes .playwright-mcp/dees-chart-log-structured.png | Bin 0 -> 39659 bytes .../dees-chart-log-white-boxes.png | Bin 0 -> 25013 bytes .playwright-mcp/filter-highlight-test.png | Bin 0 -> 47068 bytes changelog.md | 9 + ts_web/00_commitinfo_data.ts | 2 +- .../dees-chart-log/dees-chart-log.demo.ts | 219 ++-- .../dees-chart-log/dees-chart-log.ts | 931 ++++++++++++++---- ts_web/services/DeesServiceLibLoader.ts | 51 +- ts_web/services/index.ts | 2 +- ts_web/services/versions.ts | 1 + 15 files changed, 988 insertions(+), 227 deletions(-) create mode 100644 .playwright-mcp/dees-chart-log-clean.png create mode 100644 .playwright-mcp/dees-chart-log-docker.png create mode 100644 .playwright-mcp/dees-chart-log-final.png create mode 100644 .playwright-mcp/dees-chart-log-fixed.png create mode 100644 .playwright-mcp/dees-chart-log-shadow-css.png create mode 100644 .playwright-mcp/dees-chart-log-structured.png create mode 100644 .playwright-mcp/dees-chart-log-white-boxes.png create mode 100644 .playwright-mcp/filter-highlight-test.png diff --git a/.playwright-mcp/dees-chart-log-clean.png b/.playwright-mcp/dees-chart-log-clean.png new file mode 100644 index 0000000000000000000000000000000000000000..9391d6d64a1a11d16b7138a1aa7491441e5e4e14 GIT binary patch literal 24710 zcmeFZQ*@ZQHiZ9phyF>zwm;AMUzq-Scvu zzFytcuCA`G`qdY#q#%h1hYJS)01&06#8dzP2m}BC>>LLCGlw_Dp7iqr=By$q0;rh4 zKL!AZ0n%c^Y9484>z=x37VlhFkx5LjQDBkXG})nIODVSTxilU>>%nP*zW-E5Db*;` z?5wx9D{Tm|!#E8-)tb~0FW*u`aiyrh;LA;L=Bx$>(?(U3pg;h}LEU?h6hiqD;03ul z`BGoGxWdFb`L-8pks-|!EJi8>LlS^2qFBS^{smd&GtEPa5c6Mx%P{J*0EVOw>^J#; ziLcn?|43mRyNF@`CH_Kuk^ZkTK9khHn#eo;!l?fxp#N_Z|9dThCLo2Ac#)2pN%}fe z4;8N|L!9T#>JKKySV{9qZV%;-#%Ua^OY}iC!~w`&7|G5Q!N@NRYZQ}eR`uHDH0O^A ze@IknwiQu7xS6ZN^*tDh7bU?1 z`Zn)cXzcvt=F;A1$~90<6;JkqkKqvPZS~i zzP8;##UEy!y=3chp4)%Zfs?w#ewuFr=l}-)KGOZ`TQ<7m6yqP=5@-;^TD@nC1kJs; zZe@)Ay`WAyl6!DoyWA%mdia|vy~ew$@ib{;_n>!v$X%n_i80_)N)dMyKn;8Z(PhL52c7MLSjH zTBlhHG;9F5@&0qO2_J#helu17O;9%|88MnuItVZuN7k4w9{9CX)5!jTB znIoPFxd>{FljhnU3JdASTC=&s|V_Ec64ItAqe;Y6nw};%bE@5fi_^ z%x3c~o82W23L4tBvSymsdkV&2btkTOur?IEurlsfyQF^* zbsy*|9#+Vcn>`bZ<3q-mdg=c9==RmVmGtvq+4Zq%_LNbYorjQXttB-Fhx|2`cXad} zxK2++Dx9J7H{ax$G3om&5a6^KlC+D92{UX6@V}w0j=sE9tpyM#I2t6xiHjjN{CRD^ z45F9IhdsV~3m*Lv8T`CDv3$z$fP+s=b`$CF>{A#5g&e9gzL{Is_pUQAl;v@GR`sWt z4LPPrZNp2mr&rU#28@g-NUE!ak{Mpo1-nS!vV->Ifg#Id8#6d%Pyo?mZ(dHFa%4KP0$SQy4A6iU3 z1A_aaNwey`y*>rc)UCxp_-YxAQA6Zv(U9k942z7N8Q3%}+AONE_NrfwGEL@jXb{T80Yql)JJ!3!>i(Agc94q0umS;PI*u%u8+w4RrZe&5aGM5 zE7B&uK?xHf1^@otw}E-rkMqO^4?rkan~_(rucMMKR!ihSZ+pj2$PTpv{Hn5RrXRhn zWGjQNxr?9G9O-tfav%zcc^a_=ojha1`kRetAuomKH2=HE?~Ie|D1xH`&zmM{5A*1uF{tSEqVFCBFlA|Fi%=9ZhI?x1T&n

7?P%th=?Dp=Dn6$c6Clz*Jd? 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 XIyINxyO%2IRIWPx=t%hC#;^YhSeu+( literal 0 HcmV?d00001 diff --git a/.playwright-mcp/dees-chart-log-docker.png b/.playwright-mcp/dees-chart-log-docker.png new file mode 100644 index 0000000000000000000000000000000000000000..bc9635d37e8cc2d7573d9219e773995abd7f560f GIT binary patch literal 42694 zcmbTdWmFwq&@R}x1P{R-f?IHh;O_1O_XKxHaCdjN;1=xQ?(XjH1ZPg(JKvAH?wU2T zrvG$zowI9KZK5}<8;kh_oK!#a0w@u0!^`%rpnwU6QU@q9#}7J#DG}AUQhcV4Wsd) zQqS3WPQQMBUT49>^2GFvR!74^uj?4mN+v-%p(R%p*&-4SLxLTRM-x7znK6pnJw26;E10wL zuDv3eO=e?fXMc}kdk67plcG$iwDMHKbsyY}jEs2hPJ+c<&iU#uEiLV_J1K`7%&WDs z#f29r+=YaY3un}zO_MM#UWqOYeYY3wT_Q(e+{|+~JG7Z!gGe9Xp1jUJvp$be^IK_OF~$f}c21yh%fN{iF#ykv)tojIR_9Dse8w zg5XJSf4i?XId~whqovipWo0-HL0_(IBMCv*??~G8My%j%zwjj;i1LRxJ~`20q%T14#0LoAf(NMHHbiqdzoyAT zLuhDA|EVJtZkL3*EpGYa_jO@%CYA)uh%}ma)r=*z(=>$YN5@$S5z}YJEF_6!g>073 zE?xT>CwF(z?j`{(AGUBGgwa+CxZIVEzQMJlxxL@ulLkzx9R7$e7=F3HWZb$bg7M_y zLGf{3`$^7QyySh`@fd`H{fmTvAG(SX#IxFWPHto3-5%c5L?y5u%f%6*SIp&@ z`!Zi~{lOg5`81~{g$m4+^&iux6Ydp3dC=Q*3%SGNRCJJm^!i(mTC2Axr?0fUx?6`Y zvxbk?iplnqb9{S+Y;x2a=Z5K3S3K{ATYy#)nupCR{NJyPYGJI{cC+k|0Nec9pYP&I zdn|*Qhk7%n{}gvYk(ZZu(ct^L>L{Ln6*}OrnB8m0?DPKW+FH)X$H%tvJ~agTw>23m z$1fjWuCK3&xY>l^8#pW`bK>ISh`60p`nTlgw+#mV|L?gJ3U&?-fh9?_F6!wEC71r5;0J$&8bcnThc0Z~@g`Pk1n@zh69k%#0aFGVb(9^M9D_^C5IR zfz1f%txY#0*?-oNmstw@9)MO06%XE1;74AbRw@M2TPJ)r3q^%suqkcF2HQ{mR$4kb zPafz1G)M)7i7b>Z0RlUb|GgbG5^R34vCu!_u`{)Jehv8L&~krkYifoRET;!1*J{we z4*nnP@oX?!{({u!5AH4+fxqKvcc-1VdgD<~v_vD;DdH=U>YL2I#gQ2&EySaSc6%7z zKNI^rYy}fDM&j@JOz>>{xJg@J$T+^Z-Zef+|IQ)>mO*6jrkt$zUgJl%ND6njh{j&5 z0uS{p@1G7fZ!#0_`_k!C7OU~;Bc_u0@l?C28+Y3$88tXgs>G$$0R~;1v-cxTY+HVO z+iX96Dfrxh9(b)(%0%hU%B5_!rhhbUHWp}BSPO9JM6wL1V+(B*;-xv|C_*~5q%cxd zX%mMjr0O6MNWRTr;z~&=TPpv?Hov}4a-OaaBt;?-uZkaPa@9$OM+fO;eMyD_A{Oh* zla(ny0-ZY4u@(4o(BpEk!v)HvvXpXRd+dJ^CF2@p3M?I=B&y=2;^%D@q@>~p3utQi zfU3|F7Hy6RP3&`+PAzInnyPeRRLgVFfBmj-el9F9l{Ae@B+bglw#(|iK{ROc)#K{I zX=fIrjh8N9Ni~@wxC3j{UVc&SE(eF(t(nle<@ z#T=VNd_pdkE!zM$ozgMKJN@I&x^piRnty6iQqr8dUOB<&+r+6d#+#VfWRK-SEIxj+ z(0b5M6QzwG`J7Ja0r7=fEcQz{1Rx}9^B9X>%OXOVEKOmV-e^t@Rz2GDdeR-@w6?C# z3}B|2Ft|ZS0Hx|v~7TgBx)j5( z^dd@*DGcm%uB|!%18b58=uQoI3IAnWhx2n#R~#aok8BcrHTCy)AKisoGe$SBV_` zk8-W=Uhi*r?zQDC!c94!*0X^!`zEQ)ys^5-Y=w|Pmh1hZ-|1XD3eWdceltN(r3o>}J5)&JqOYi{N`ei$$^wANe3MAaGssWd?8w7@QU$bSP=APmJm2CG4OocH#}>utVxSS z!0(ns?c+iSweymq7~ZxBiEL?T1I%U&(c_S091JmgO^hPoC|Y*XQL{gz(bmqyWUuqS zij`|XfpCJSg;Qar!W@+@22P9@+`HldrfR^-`zMm0st3Ck5S?xU3L^+x=x1>hWZ$7B z(lrzzfMfE3@bwQ60JFgU&1d zRM>VKmc#-OufCxZl09t;abZ7Ct7{)NDMGb6BF+25T%sm@lj%&E8G3#WsR#og!S>jc zb=wud{baQxpKV`F8RsYL-g!E4oDlPLL!u0!!y3s==Ztr1QK!2*_z+oV@WGs5j0NLo z-MrkCFKGRo8BQyv*h~&#%d2!Al8GXqa9L;ZxEl?pl~MHh@%(rDf#Yq)s@P9@>gw;B zIScB1PjkjY!~{jp+(<@Tx*TlYmM4)DZ_7oQvbu`8tPEk|G5 zk8Uq278;*5T~DMagCT%TcCr|#<$cATp7wj9ip?>(mGQ^x3P^TGC9dc}I>%Hrn{FO#`A$W;VI?ay1hv#hs#D@Y^!%{yk)O+B^Ak z_lX+%?puM_ZEbD09h-Lx10(;Rq~$s6Bl}+y&6uVy5(48$Lx$ zkrGsB%i%>*bQwb6gm#h;L2wI|eYnfW5rQp=%vdOb{sjT}U1?H9S7_#@KYRmT^QKP) zp2X(o>a6gAwY6Y7kh+@M@5Z-BvGu>ER`}Ml7T9-x7l_VqCh-1+8qSnI`#c6#S|1Nc z*_NLL1WZ&^!rtV`ME5HUyeKR)MO#9kg|q8?e!zS`#ZvvTxpPOFu2N7#fu?wSwGAa6 z(q5-rFXfz*O zCzk@QUk<`2pv;ZpC=Th2PJ9A`yNMWyC^DvASjYO(Sy@0eHTten*UYAvXPWnO_hY!z zViag5>jS<+U_TU2RQ_+$jqb9ySFTyZ=LJ2!`#0wv>GowJFMI#iUS4loOvJUUc|xpE zTERHxluBnc2~S&LsuHev<)WaGqWuh(PrYKHY$)0l+EzY(oD3oYh8N5F>x9M1zPVaP z$lpd8^H>VtutVE9gQ8n7wyii5z2*(wBSBbLxOY2g08Wd3{-mlyUqd4~IoZ{dKecY> zX0gCms_+TXHdovFT?6nVnKK#Ok60pLV!9qIGZibi>O^-?Q5FwTuVS~N1K<^jA6_1; zvojJv6?6NgVSX?`hE}xeb;>o0+2ff0)7A-KcDLngzzn7MQq1Hnb#;~O{iGI`uvhk2j7eqz4FkhO!Al^ANR@H6Oe8b*lX-ayv_fGp^?)&{11^4N8}Kd40{y z&}M4Z)Sv>n)$od(KvEUodakeK-eK&G6=_6q-0O;>TJ`o$WUemrxvOe;H!z>HXN8xD zye1|a`7ZkWxqUJR;xFUX8TrfsH_rwy zoDrB5=-JBJm5-W%pXun@(X^AZvaVzcjGvyxiBU+Q^=I7qy1TFztRwvwdmj#!4{8w; zHiC-tg)+N`DA0v7o7c~qEAM4Ia<6s%8cg%fEvT=$O4%#Toy%Hu6jYU#m9<=8+@5w) zAdt?cikwxVm433VS`yv-jajP87(Y@dRnw-=vU*)nc9ivb19PRFbjaEvY`e^)@-=Fos`9xN` zxs;uqUHbbCrG4Dsu0yl#I?Is9#TM^fPvJ+R9RcGo-__tBZ(QB8!ym1Xe)0O8j~Xtl zytfxVTvU$IbrNQy^}QGzZ*3sCa)1x?ypDEU&-cCzg~1)`1~wFbc0QU#)tg*AN9%6z z9mx95hx>Y16P&&Hy2#ioo_><&xhWdY+PzxweZSd3#sD&2-|g>Z*i)ZttG@IcwB5y- zmv7oED4Z_&o>MXhgV<=k1ymgXf1K-7eYO`TmY1ofIN+WE|ZVtOEN-8h^Q^sO_gmX>t_Wk{@sOU8@x%#(A`zLNBQy$$f9NvyKrDyrJ z3~iM5`n_NHw&SUHgG z$@A(7)nL$pt%X9btrA#xMWv^rzw$^N65}jY7vb*SA47#bXUyaM#Fi-SebtApMXxR< z)~6u&I(t0D0gworFIV48PZ?Dl2SUF0i@2;ov?`$2xk)dQZ-d0-;#}79g#?q!i(ji02#A&MZSU{a zZ`VQ688tv^2E1i1Cy(i>87fDmnB zVsEv(PPEWmLn6|Eaq!6_4Y;IK;SEGE+5%XkE{I*f1eeUfb*NubgmfI zGko^Z3vyn~F7DX;21UD8^!By^mq>Yu{*)FLy`l>}^UgPgZ6j2y`kHV*c4Xa&7#i(6 zL}-HE8O)UCH}2_uuln-?kdhGG@u+X>afgBJ)@q58~cWzLb9KWrPYnAyA*jl!PqBr$re zz0a`S^d7w}fF5t3tueC^e526*luz(i{I%uRjoTG6e|(&FE;J3=UjQlM`UlsHnildn z7W-DR6A#TXJynh5K>+lH8@}xZOH;BNuW%3YDIH#rY^VX=?e7^N2*9SP5_`=A<)g=e zWu@N*yul=vp7EoT{-27*(}TLpZkehGki#YDhG|xx+tq0IT`rYh!8QN1$zYtOa=>? zjN)t!c^I1x6AJKM> zSrDY4HN+0Z%;i;SEM~a`WgrzMAGZaS=0tB%Fc&3=Ht8O{7Ns^%|-j5;egE7%G1rQB36t$KnXwI>&KgFg(mjYyTUTWCp2GB$Gf42SgG{8A&s&| z^(y^K#XP?xCP8nR8ue`w-13mR=VS55f2NSLrXkZ}uqI0F?!G zoiDan)a1-aN_;-i7t=g!;IgRq>64lB-*n5?AQ$@#NldJNSIt96qlJVn@i^^2)gamy z6*w4>i~v6kw~%b5@-y!X!S*81K2fJ51n~Xfk)^Wqwvje7bnid}0!R`Xgavr)S5F{4 z5}&${dP4CcTR}?yo|F_) zUmahsAGc+oSW(weH>bJUn6q^GVM_q(?8?;lXt-(18U3c&AGdAkCJAJculU;(ZiX=h zqF`X|#*9fvTdk08Mz0Pc#aZok=|&*Kf&&WXR;x70Z%M5$*cMPM^I@I)Bp$Vp)$ z02!9m77-B>bR51Wj|$b4)q%c1q|~C&nkyLG3xMt9hVKlOM>O%+M-SJPb`?PP$NJ=m*c zv+W+XacoY9lgGzaaB#tJi&&(yP0jE{6F!*|oI0fmW!We`jxE2j$AV^OXLtAaT^_IZ zvbcFbo8bQuNyVj*lHNuz)1dm4o*t3#Y;JA}-OnczZdpsAd5EWunaReX3G&u8 zRu<=1qk^NmETy@*Ia$iO(xXrT@1JPG6<{#vOX}$H@o^SPuK>7#hd7v`rmBk8tHMRh zB3x2M0xw*3(H=bjMzJRAMod`d=I1e>f4+jVC{({oOG8OQmY0`xn(XeJ=n1Df7@a*oj0Fjt=QIWcJ{J4al-&q8 zbk>{=d?`ej)o6O~V1d)ndZRvZvsDIyu>MoCvnCwr_;`4iaxm~qdz+h+9lpL)R8)A8 zW^8!)`1qbY|MJ*+{cqp#00)s}qd41*>UjNT7)-NPs8mKXQqx zl?W8b7BM$?W^z)fP}%c8tWmFD{y!nxP{B>+zzd~{c)S$cL;>|hUgCcr3Z8V?+K*AP zQ5)4ikq|Y<*cTWLKuRlzEKa+dI)T#O`~X)ibT>rWO)_#MAY=sF#x;F)J<+jV0tb92 z;PSBXlgV#D?^Jg_O8(~U&uhT78ZOT@^BimD=sl(;Hr1e=VG9e+x(oB4#KuwZjMy&% zdRxtTPd>LlAs~rb#ohCJpqLlOO&I>P@~lrTKmlx;avBrw4okC#gNT?8y5-WeGS_r6 z1aOGrlT~jHO94m!Ac6o7e+gW>{MI^}PibWyfCbyep8{14EnZn$>hY{w?Xfw;u;lU` z{&Jgr9ra(G#bCYvVXpkb3d(|rh1p|XR7|z0*0#VaK#g>M383NwiW#`7#*SCxHXh!6 zb9iy*JOWos_tZVM z`?Pxb*b8f5PTK-(F$eMu21tQhQk-Ro;bGz7VLq)>8#DeW0CJ?++TM2F_K2Dg+UwO3 z&%gF}($NV8DR;@z_BBxAaBy%RxM%T`oy}VRQYhir1U2Lp5dod*o;O%?GkfRWQg?}k zY5hO>I9{iW|C|0}j(>R5U;1w~nu&>t{FvYcmr`6@tY6h(p8LNrYo4VMQV%Q6fj~6j zK~PadPv-BwEyjNxll}+G@PCH4>wSsDPY!zx$%-m4hUWbC)?Z=0{VSE9P-;W$AvD=; zl}qr~O1Pl;Z9Vu9m}~w?rcK7uMy_gDVPi3n29{LQL)o5fztWuy7osatv&LEF8}&>M z)kSHVej#5fpJ2jW3A?fQsWM(9$ z*RlC$s_Fnkxyq>$L2iS|A(w*nP9(Y2dS|g-a^F07ev*I2uV2f_^fUM}<@pdf7Oh)t zZR}-^U7{bp8IB#|%`klH)Vy`i5?=Yc@Ea)4GCeAD_0vL6rYtlko3v0JHESU)R5jVW znTbvMN1AO`hL)sx1@6=u%7i`Y#Ykfa>bKgxbp-OhjsRRU$2f3Jso@%BXd?;Qz*bP3O$LML zlXVs1E!r>2-@jLPMt@{uQh}>9xT%cAc zT08S@#!peIQj%`$e{3j6q5C!_)eau|X3AeMvVvD>CQ=}A`&l~2nI=k(zv}FN`AVl7 z&v{B`ttoCUW}}FC1SB8%U_>Dh10}pSknf!o*rwszOuRuGq6qlYWM;P38ef= z*)L)~R%QH1$#VThPOI509v@uS9z$FhY|lS_gRL53$77GH(3wfZ^Ij1U zrW91&{h(Ouh!K231&@M~nOq9BVfkTupsnSqxVwN_1K4;#YM3f{8HjMV#LHJoq_-2m zVtu%G@B33+llm(qax5}ODNA<6%`+j6KGu|$p)$`BJ>_%md7u=AaEX|Vi%|^#usYdl zFBe%tDw>*)AcML~TwQD<4&E5!6M;)HGDZklpOiuDPBpZCbI2|%@k_m2Sw@Ct-*;$m zv*EXfnQl#3_r}#u#PmiN-{ECNN-#Sy>0w?avc|78OpcM7b!5{GrqP=)QZ&}Zp%!VU zqc+HLY_=-PmA&&l($ML|#}ZJP!lk4u#4)N;jg|81ntp^>q=t|xF@NZ6RlF!R@GkxcsfzC-VlfE0R z=3Ze@##&vaS05%@dW4a!)P5OW_vSm3XgW`_mCLG+B_0H7QXG7-Oxz$Gq7PLftpF*OAYX@=z2>R2D)0@+wK z;B1rT6eLGiCCqWWz#J*+{oyP;>*)g*~(? z+n_CeF$<(0QDOXm0KCMEys+YlNe%twY1GyQCANbo`{BFD3<&wZ5|C%1wQJi!7|DL4 zPNoS9#h9iKV~7`~>g|-DA{;5M zHQ#l`;9(jH;WuQ;+75l?*sYsuqOcl(@MRm}W0J{&UlrGv;phdPYJ}V=9Zak=>K{>u zE_OoS$vKK_!c9(Ck}2q=7GlOe(X7OCNfBUUbJ9HdpWI{T*J0QlY}p3I0?NLsrE|;x6sT+;k?saw0px^H@12Be+OQGrey%Y~9JpCOl|0 z6ibh2X|@s{d>Jl@`K*npV-{iz#v$`|I0hL`s~@N#Ab=p2!XjARM`6Y@5EX%NG|Im) z{0CbjQ})Ec&7%#TpFEAmAsF=|Uuz)Mf-2Ho&3148#*F5;iX;FJ_?RlpTbnjvZ2k1(>M|Q$J%Fe&`88-f_?Zf-su< z0RZf6DlN}TNbaOdYhf3abXZy9nkXF-@$;xclBKovauF!w0TSn+XCfkkW=M4G99hcP z69~WAL5g9#?|b3mu=U9Fu5#4jU1+1pjk4Z*c+KB*_=s~TSh-cC)=NV!GQc*^f=wOM zCfo_e@bQO^a%fuI>in8j#lZ6Uintg0#wU8|P+1X3Km9C5YbgWmYvFe3Tq+2p7L0Zn z3+Qx)%RrV;FN~pr49#z5yvY9U{fUj_ z4X+M&N4o_Ojxv)T>sK^38Y3wOJA@&`aD&$O;?-SIPtLgbmetW!yi4Tp&AP>I_}ucs z-F1S}LUfC6S9!}w@qDG{8EtfA3tfnG1V9K6Y4>b`FxTz|{sN5d@QYco90XDpSW5o- z9HN~bhaqU*2U+R_3P93NORC`*{p1v8WBHU7SHc}D3jqGglnZ?lp?P_lUTN}4X*P!8 z-$cKB!y~45C|&ESgcHXb+&>|T2lx@#IFgqf&N!)E`{We+dIv(t$+j2d)9bLDmPYbF zx~{eVj>7`{qC7uY&_iS+ zj%+8dC$jcmK?r5i=rzAkw$g4i3ange`0|T#<8tcgK60kW2WzBVuzny+Gd;FZNU|z}4d4?)eExfZ4x^+_E=|Wj0r2uOP zJE1VL$Ywj1rmLlU+85m}rqY`i*?;+OHlklCTaFucuy z-oP4UX{kzG+J)wzzJYLyB#h>^T?j@ktjIi3xK7j$H^z{F3L1J}@y|+8rLx505vNV? zLfi@alk%q!pOX=d<3jj5`F@oq+E+=9fxxF9Zd0DpeuPU_mk6EU;biDES@xyOxctbZ zmrh;qRm-lWO;)(2!RER@f;pPB&DPY-sL_7`hQ;QRZyP-Bc>sRR)YTXJv>LNNFucDG>*-sFbAy zVkSA9l;hJ=bwqX~DEcKH8i}o;0Dtk^8X$6PcIY!ksAw5Qvk^L(-AM4bNv);fly%Ds zE`NY_PZmXh;)mLP!)iaK_>qDsKUm;&vQWoWEaoMI8XX^a$@?aHgui>OoA_CISGs&C ziPninnRcO1!5AuGS6a=5X{)<8AzrCz0Z00t-T-78PVc0$xEv9W?m(!6*Jszt}b#209Z*EI3y}Jd5Fj!HVzhA?-cy7)M*?P<`lDA&8CdQ z*UT%C1c^2B%&o^5JlAk2r?&8LQyTyL{#D#aHnm>}gC0~xr@33MQA`sFRwMH&&y}nx zlMk1is@aIlVA9lXk!((6K!rV)oyQ->i+p{lMXn&>{29f94Ol4o)N1i1K!|{*0Adna z>Dy0PpAFXByuwiRfPIs%h6LN{v->~3|3o|e)CgVGIub0@W z2TfT%NnyZd!gOl1nXOd9yYFXZVyMX&D65*__>nbymZ*(^orYxVcqsh9hVN2jzlh7^ zVZL0+mL_Vs6(k<`h{uwA$`%83?uPwgn@ps>5Cnx!8h8FT<>6nA0f2Jm6WcU0K1!md zZeZ-yH;`D1SAWD@>Sq!(gcKnwlUj@qeqx^!ttFL-)ngF{C=E=SoJ5n0RBV31F&_+%^slKctaV5hFM|){iN$=+xfC z$cpS-KYDRg6j3-j>vjiuL4mzu3#$%XWp~K~Oei{NbpK}^*mD6uV11!4@?hL(W@#-; z+IMX)ob>r=cv>?HFE7jul9g06enBlUNI(XM^qYv5UD39{7t&j|OPD5jXI!tYGvjZe zOFajM)y(P7yii9eGi1glexwl>if_hjzzHkllI^?mr}u@bT6IK(7*BbPeRd(? zs=fQG@tO2XE85!!`&sw88bF;cW&-c6L2Sr!J zKOLL_jwT(tu)rpZ4Mq8r?|`&K8_V#*o^mb%u=;Bw?ODQ#-3>KA`TTi6ph2culh0?C z*|i*WIXjhKtE}P(LmA!!Er4{w{@C=4@|x#6>V)<$1sPq5%D-ktLq}g1>b+(Wc&ju+ ziQ3^pZ|a>o#!GLuoL;5s?R?53GV7DO?)pO4Q|`OiydO8lX`_5eZGT5o7v4&zm0Dij zp<>rFM(24C<+tBc`+HMdE}r}LdGDijUqkh*XVovR?B%oAYHbXB z*o*#sPNIl{F-?{9vWvHNof>%v?EAo5sl8$69WTLQhuF7vp z@2#4u4uQfNATUR<)2zmKMM-2YvDTn+0ne%904tTcavTbf)LZ&FDkH{eoACB(LxFTz zFazXtJ+-#nV(YcHf1_sX5wDgFEL6jKEfi*@b4$^=aVW1*bvaHx!NULZ5auN(m>pwX zCO4O6Apc_XE%LI^zw~zTyej(B@t7))rj4pAak4-{*S}=BLMF(GuxJt&GkprliPJSZ zrfDH~RZA&R;-AQ0^muA7;A-5KTYU>sDnGql^p+Y_u1HRc=b|2>a-LCeMRL^E?7`_k z0Ybiq7rR(|R)--67MRsqe$u6&I#UUymgn%7CB80+^dfM**AmC*S@Me&0F*Zr5-~E; zzgv#zaDd;Quz3Q7|Gw`$RL8C}0+jfHkRDbVYeew8~5O1$jXD_i*dNHkxLDXB01J0*EelFy(M3q ziFjp~XV}ZP$_Y8lX5CSSI#JqcuXnaB>ywkw{InKfE8ckpe^Bwalv~~}XddS{ z07N>QbDjL4=GV9ltB>hRCesFdwM=63PetTSvG#I!xe6PvwxtLbJ(Nr-FP9Ae61BON zGlf02k&)_kxld+vbFeblyOM02=Y!RpAJ+*G0^Loq(m|KlGu2l+!L3Su+Z@+puIr(= z=igjO`xxBzH}->mSQ z9hp5IV7vJ6cri+NB3JVhnc4|ak(yC=>LHe1+TeKiUkQJfK>L%lZ0>W|#u^1I0NgZu zi1U8l#rpsp?rjvQP=;f_yxO{2B|iB|bTF|090PCNF?BcE3D@g%VmYIkik1%&9ql|xQ>@Dv)@V!DQ9b=vlf%O zjJL$>_EF~hxiTpEtK~P+7f#tr|5SM6a`@BQ;*4R|Lh+dNR_3-ZF|+9OPc9Mc$`$&j zkHz9`iPdHw=gL$JW;K>BvuwdLQ9|Xs^udlsRxsAWqS#Rik`0GxWRF%vLH`Z6NB?O4 zI9_>#-(tM0Xo1aNQFZ?`ye*EhM*Zb3QS+V4^=-R`p8 zc~e>Zgws$t9slBjBc&yG5RVyMdmYN!A&vV#Ig$=0fOo^{vXgV6dO`&0$ z!e*>01HV?u6L+_{8XMXCLc5+>7}c+_5vg=u9c}6p;8M_bHGJye@>!g#GV6F(;xv~8 zpHwdH$#d-fj^2Um>z3J zeOm5q3g=93;po=QvLBq5qVed~e5bad4~(MQq4L?iTPspJi~GJRX|i_Vs6dOo!H>dEDcyq)9RYC2`3s-2rC!NiWt)-x1ZGuQrU{iv=mEHNsix74#RH!%?f#+JJd>b?=bU&P&Q1?Gos=r`XvU zkQXt?5MXkM=uk0T#|_-M0fi;lE}dWf^+{V{W%4&ye7H^B`r0ED@4DUD;RF7N1DEUQ ztOGWg&I%6Zp)S*@na04x;5W$8gYV+ZO~w03Q+irUuA*JB^z_TkdIrz<1ilXwmmA4m z&hhw=6ya0<^GQz|M3T=()t6`m0ba9x`LNK)PbiKY`h1z*B#*y~=1oW8d|ed(RGL#c=k;pN!>eT0R_2noaoH@*wsE?cJ@l?p{duQNldm3ki=qA% zegc5*A5#AuRpU|Z{LN(L%jP3% ziS7PcbyIjImu;H=$^tPXQ@qXlNbg+hhtW;RzXbi2{C^xDPtTsivct96hBlV;U#&2C zli!Mko^^(^lSj3dGe{x)DsIYfd6yTa{0B;TnzzCy?$>t5yo`}r&uU7DAV?!lihb$E zn5Z4!M1X^H;{5q*R;|a|>e7j(bJ?<)(#oEj8I9fm@G|dmA@|&9Bn*@GBqYq*DSCCL z&EF(8pf_;M6MxuW`NolW{4ojbI4!%@tDkD6HZ$)HOCSO<%Xs7EL>AR~8ha$E0GqcX zds0!oq5dXcHC+Y zt9oFQ{wy{;5uvf+ZR}J|<5X&6zop);L>ERkO>2Qeor$+D{*n3pAhydZQhi zS00i(o^5QuYF$kwRx!QaYJPImm7!xWxL>==jek$W>4XL(U|nM#pG}F^S#czs&7Zqd zZR_6O8X!++7tS7!d_Uxw`8Ign-}~>06j4UuhVcJXKmeb}4srJ}FNf1^leE5Ag)6)` zu02WvX8KQ!GkbWM$Ys8C)ZSlY5AFChe^*AMI~-!4z&+2GV>Ye622W2Y20x&b&{A_O z(=6Ct;*erec)RY`;*uQriTE*7rg}v_mC=bkEy{jYhYjpnbl)}(V>)DuI=_fb z2T9X)JYsyq({SoYygsT~c8k|Rm^H|a;^1kcr{~4@d29S5#a!6hh)Yx|Cf@zI=arpv zVH_0Av+8{u#b3W4{>X7vKGc(1UtJ#ti3Kp>koa;P9H2`o%F8RuMg?vsMk08=V~eA3 znD{0>)>Wc78TdLSjx^3|jrBc)Xy^6If5RM4bd>c~J)q`gH^VFXs{D9}s9lBLGe;pt z(Z<*wm`B1uQ8cBV5yn`-(5#YMTHPKBNS0K9D& z;nD$9`j*4}->wOXXj4zWn1d3Y42MQlxJzUCu7U&i`;}N0X0Ab%=N*vE95S71(Jt&O zKXs>GE-bUII(0n<@ zAuPeqa}F*EY@FW0?C^6PKyu`TR&?Dt&^2{$Z9gu@#0V^Ed=zbO0?GI7rQ*A&>(9ZBuysAM~<=@SOg$HAP zjssCn{!!8uuX?$KZA869nr9LW{Eo`lPac;f6A%zta~-A56--nN2Gpt&LFM^UN^4%3 zO}I|t<*Ykd_&?5vAb1w{zQ$2h&!?TF{VnIjKc>kV$8_7IK;Ws;hLehGSl89ChXG2O zv`>B_s{ZkuA5XRXpIU$~MQ*Sihk`aC-``XA-xrbv1TQby$1=U0!$wc5n~LE-pfu7d z7RMEqn9vA0-{8L|r+oJ1tvMqO^Nf}*WL@KP3#E(uXwNjIm5L&0=JUhmc+~R39!A8y znMd%iDoy5*8T*S(r8Q%-w#M?y`JfJw%7!=VVD^|3bXk6LXU$^|3w~L;#Ei}SGS7E2 zW?fua`N`?mudc!>b(tlGR(6KgkEsb1e@j`he;1|EF_tGRHRFLtV1;CBe}Zz=a*EG2 zh}GYtysU`(Lw%aP>Vk6&g;M4s<9e69-P_yPii{7FV}1!l&N`wxP|coAoxo8HH=Ag{ z0Am={@X;!hf)8T}@lUM>Z2{B= z#P7|9O+`tJZhzM_!9}k{LI;?*n5q*cd=<2F$iJYsaLl7ywryJTh37qt<=RJtn)YXZ zcAK!4H1wA_>>wWueH?goyIPbhy6mgYb+TUfb}5Cz2O3N_yJMH90tbd7#|nfCKN$i& zj(%f`)^+pg5ICw5e%gS9N3jSosz$?ez6ZPrPGN9-#{?%7fOP4}uSC7OYff!1~==KT)9g}ZrU(`s4HX%R1OM86n5Ig?$_BcoQoNnY`Z^J-w6mh z{x90zDyoj4?HW9|yL)hV3r--o26uON*PwwQf#B{A!QI{6<>2n_%;A0K`!4=jYu4OM zU-hZeT`g7B-L;?n?CrUKcE#L+lZK2V2f(D}3IYx21ze;RcG}VVjK-JryxK5j*Ym~E zj@lX+7`YUFU$pjZWmP#>&jkrvVoMivyAXc{dSPqnEk80)Mxu5yEF54I|l}v9zoeU;Zg8yIJXT z8)}xtxs~&@RgIIVvlAI2{HJ$du<6HAb6Yk%bo=YORp$#<&@+4+D9suY09eo>|H_u0 zp3%0XQYLR+T;LI%fhn*MbSw!45Os9i%f=Z*;l#lqK+>AO1N*iUL~9Dw(!yoB)?uTf zFOV0I-N!wE=t_c%Nlb56T&tR}2!DU}n2_@5=(Nxv=TD$i#NK#xQQaz2@k3ee>fT%# zEcyK#KX)kxAYfk0zJRxNtz%3%Jv7QwAnt5;A0zQG^q-!pqE&+$upGb@BMOu4JoxO% zNarT1;?3>Mc3OT XZ~4NqQmHE9%hvqq`8Qq>f6=Ps3; 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 literal 0 HcmV?d00001 diff --git a/.playwright-mcp/dees-chart-log-final.png b/.playwright-mcp/dees-chart-log-final.png new file mode 100644 index 0000000000000000000000000000000000000000..0999227ae92e8f2cce6403a2bbc527dd48c1ca0f GIT binary patch literal 63029 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 IrB`A93)VP_iU0rr literal 0 HcmV?d00001 diff --git a/.playwright-mcp/dees-chart-log-fixed.png b/.playwright-mcp/dees-chart-log-fixed.png new file mode 100644 index 0000000000000000000000000000000000000000..2af14847c17e3ad66ca387c2557d0a49c9e75c6d GIT binary patch literal 24915 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 literal 0 HcmV?d00001 diff --git a/.playwright-mcp/dees-chart-log-shadow-css.png b/.playwright-mcp/dees-chart-log-shadow-css.png new file mode 100644 index 0000000000000000000000000000000000000000..21ca09034f13d93405730a0c02b31aad503c1d61 GIT binary patch literal 23911 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 literal 0 HcmV?d00001 diff --git a/.playwright-mcp/dees-chart-log-structured.png b/.playwright-mcp/dees-chart-log-structured.png new file mode 100644 index 0000000000000000000000000000000000000000..7482569be844432234c1d141a414dfa16fa54b7d GIT binary patch literal 39659 zcmb5VbyS=|^Dg+}P6!e_I0Scx;I0|mAq01Kx1hn@-Q7L7yK4yU?sg~N{_Z)u=k7WC z?ff${HPcdWcUAZER8^>=yaWm&9wGn$C{mK5AOL_u1^|dtcu25>H`SUH{089wk`M+e zCkPG!fEbVx6;gIhKUsGZR8m`Ex{zogL5N1{h7QUm4o_7Vw1uF?s)ww~p2Gc;K>7)L zrFCqMXIr)*oU1~{sl3rC-)vcv&Z@dKo)pXMjAg;eE4!FXtPYBY3WgqH4mxLi8F zzhU$H_rL5N&RZtAhsV9_CtB{KSXfvf1E-V>4Gip#N2|nn5ChSKKUm#J!ug^J!;{?b z^^hZwfJKrYWMlsc0&lwiKLy0Wu94COc=-4j(9G^^dm#A3>E&gq*dG=aWvXR_hw9*d z_zeOmrIcyr=jN2l=FJ;cDl02Z@Uet_kn_YNN#T3u=IUEoaIeV&(cFI{r;_91<6AUn zX2{=LZVMg!$}cM`d&W8Zs{6SDZBI)k%TXIVtzfao^-B_6LPvr~V)(IWG(6M{c?mR; zNNut}v?nq=HmM#rNq7{Z&x~N5{{FUc2CD>5!p|i2PbIV&s5tOY|D7OHJobkvzB}=* zV1C6GnI$(b%gkcpC8qy>I&#OER8v5Aidf7Q>vaB*r9*NPs5myT8p(R-pdG=1Ycj}Q z5TPv#9#XsyLo$|57vc3lab&m5C~0!gXUC`NeQ4_YlSjy;9zAWF``0%zJ=)$gv6!s) z`@i$GwYAqCiE>R$&?2<&lS&{|!l(28vZN1USNt4(M7k_)_7@v6N%s$0{NDQT{QmM# zqa~SV+a6c>)0Erm{6(7I!@vqMW(~^4B3F2BK079yGU`<#KW5$kdf|BPxQDbvf$%jj zDv*99=kuKZjfk`gQEs-r+FV#5 zJ|}2#{MK6_?`?SQLrzGZMP*0ov&DX2%GtKu7tFZJGgd0+w^WaYMqHvFKfzN-8}y>t zPgeWHT{a`Y8>^B7$#uQ_{GHZHgcm5LnZcOU#%L0;|30wxE8S|4Tt%C=^$8Ea(UhyT zSo9A{!0N4r5L8J^aHXu$y$w7Hm@+)JjKkbLeqiPAAQW_I;?uKLWiU-A--p8DM zNjMxu9AwkZRpyx(VsJ+!zj)UQK_$KhoWV~X$KUAM6T7gHOWu(`AUtl)^VS`$t`a#+ z!t>M5F~6joC6-==V~?sNp0Pf5y+4YBHyfn;8u?+9g~F8H@Ew7lIi<|2CZDdh$!>MurK#y;Urj;%F^sHz?$1B*?0*qZH?7zn?f1N|;>%W4 zsU2#`sKlf?MqX}|gu{K}@6ky_bGOVZ+0zy`bQ2mrZIlOmCmL5NV0I&sE4gnUTXkTC z;d6?t<6~lCHn0bx2+NddvfTLKUrCr##&})M4!nkYdj2jX>7g{7g6&W9KlYdVa`u2$ z^|#9Kzcr-)!}eh1VtIIZv#iMBU;VZ&{lR-BQz(u+mYf=Mqz(l(M}QnLNH}&!Qo;{S z_y7T)P0HNLssL1iiD)!e{B4qhJn)T4JQ7bVN3mGh+`{5mauD3Z0RkDUhfvu(2PY>! zKE6`P+;pDZ5xTIuqqB1?`SRLY`MkLV&nNJV6_&E4KrWeqdawWdfjhSW_Q!t)9sN0( z{Ga!OKlGCVKllGm03A0>aESBIodjm`27*fdeQ}S`P*;y|ga^w$!=N_(-}>ZdR<4{J zSz2O$yPJ!N+PP$Q3+EUZ5O=H9^KB)*F$F)RgI%%RCriF`4bph&0+7K(3KTx}rTg9& z(CO=9pY?gepU@L4qm#SHZ`LPNsy~P<-}xy(X2X7BULz*%1ACGMx%ml`q*gihUT=+t zGIN%Nph~0XbLwd6pb%`klBw%=rn7C>X`Kx3r^S|cj`r%vRU#5QrICho-{d8Fi_8Vy z;3VE?GAD%+F*hgya5$3d38w$+>>j;Q_a&vIa7rYryyiU=x?&0Ofi?O}}47ZXfg zBp1+Pw{%qVV<2`W+%{r$G1OesKYZYHbjJKjs#e)Xbs zIM3#NA)PfSe}?vC2tIalk}wm-@3&^NxsL-DU1$0BT*nYrsivmZdexp}9d#TE|425Y z091eeB;fs17o(_L7F|j##iNmE;$s-%-9ueVI4V-Xj6eTZSs;6*3jAXM_d4#UgyR-_ z1!3b*Nty&iq=}PIdqYr*0RoK4;uVBxU6XckOjvC02^A_x_}<6k94Yzk4gUlAF1#4% zn~-tO-7}e>a^?E~lnJ6JsHB+KEN-&b$(0GbWS_q(5o1b;QKTSvsJd^ALKok?t&awA zBh-AeKo10&{dQI`b~#`1V}v_T*$j-g50~K88*v5zJfCk&UEJ@o=I*zD_$g#{=Q4Y>db~~> z{L9Nzw#4dZo=H3hG9q4jo zeQZLWc!vGvkimiAHm7-`ES>~4I3V??TxoFoZ{2Y`e_8Nz@`6!1j}j$=G*m6LY^vMk{m!G$jKL4jz5BLJThlauh{WFv886Th9Kg}7ZFq^73h zxi|Huv}{lBOa6vbm{wHlUQL~wNp|z6g78^ZV3Zym98M`JFt-y&st_nIVz#;t`)H3UI zI8??&BIx>^(c>GCRrv7)329xoJiqqUC7mDL8VU$rr;eucy1tq>Ay=Mc_h^J>J+(?! z&biW+7H!yCO%|>bROcM4;h+&99tnYRDk&4*6d;2*%jF-23-HQ?d^kLOu~k4Fno*_JlU*FlVkXbpQ7nrv^e3VhDr>CRqe15NuusR>ijHx>&;QIi}<+_sgS(>Ll z?Q~CIRb0c6#Ayw4Cs-FdC zjEx9XBr%ynJ`7;wRFm!29K;IV46;IGLql<<5Q4g%lvSv{$9pXE6Tv9iFi0_TS&qEM^zJwd1x;tus( zm?`P2*>EF42iv-)#>V|*|H8^<%}N-cK$|%Fezkcqo!n25{J7+y!>V4|ErY;Unw{{a z!?JSX{P4rv$o1@X+Hd2=Ur=daKb&SRdT&n-RMcu9u_>LQQGoB!r0RPgriCKW++7LD z2z|YkpT%g^+*yL8LjK;HP@VoNu*W`?+Ph>c1N}*}7JDRVh3a{wYWk zOl;t`za`mv^(Lz@UTW|=V}GtFJJkRm}#!~;b48BJdK~*5M&<-&m zi8|+WM%7fSma-V(D%v%PXMLe&u=XN52A7ksd}bozweD4@d-IJSM9IRADb=DiT&nh4NvI5 ze4Yuoho$59Ow7_VIpSFTtxWbad@|Owf!J&Tu(}(e_c#f!i$%@A%@2IDlV-U)pS)iC zi|?^htyL3yx_5q@J-(Wl|5Cw2)?iAp$?rOvX`E)6IypjO%sFdZr7#w8#68K0eeUtT zsYih5qIKN1eX=apkB6_|f*)OQzL7+q(0w*uVhwgYi)Xhmrk^n9&DPrXFBBgkWO}W7 zyu4V#c9lJd;Czi!B=3k_rbb{$xtn<}2$PAA1o&V9{i8Z+ZU-v`gn9!v%$|~#kZz*6NCScLh-J{8BP9L>_P{BZq*eMx=eR7hU+L^Ek z&+6~ZRsYSdGdxNbuLlKn@N#-Q~%z;g)*Wu|AEQ+KlwUDC(iLx|?s@uwvJ{kC1 z`anU0pv%2~PpQ9K5A*CCwtrASz4l4520gw%M73%oNi*L`tJN${fSs42!}?++b%kqf zaGy8%E%Cko3TqV<9P#j$g9&yxc9lCa_| zHL$l^7KKes=o!%43$?~Q?yr=_S#fpG+&<3rW-AoQ0 zZt@jWk72GSY>QT`Dkwd36B!^LY86-zH@b#;C{)Zy;_usyfbZxQPhlFD;DHU){b5`< z(A4>2{u3+NhTbc9D|_?z-KO{55Gc)9$Xz@p)_fbh3jwj`M7rfnfe1Fg(-wYiH|pED ztDtj}gJT)IN)K$9)P>!GJvECI&n&?fC+He_RlKyfR_D+6}v-N9a&n zKBGn8FKY^-Uw)sn`4u`fr0DJ9`BSZi3QWa(jyAE>d;MKPTHz)5Fk|b(SxW4*dUW4~ zBOeS6T>TY!o-yKhqYZHT#h#@@8{zZ*>ZLJ1w)}fbrq|1IN5k$|)pEjB8W$ZId3SiK~-&Fl?Tril*;m<2uE#BTA zpi7xJdaNtpJN(n4i6h{m5q+o-S`_qw!HT{5MjL(GV)?pA-0^8CR4-xf(jkf7ZeCmR zCu6+Rro(_QD=m#XY6aKVv%%HC&Yp$=RGapOZsBCiEH5o2U?8q{;|i26(@e~MtMl=c zy->~ehu7W~h8ljiWA38=Vv#(KAtXIYZqL~Dqf^CXuGK$~b;IZG+yoF~sk~Pyd}Uig zQRmUL){PL*n47vs^@K*#-XAs`H3HECI1#&Yd+6CX?Y02m&*8kscR!Nf{-jIxNLX8L z<6`XRS70LA*QXbiNoR4k@p1mFVX+8rv(@pY%PGI$xyQGq&L*>6@t0Z$Dfm$^mI#d5 z;+IUD$`ZOIDg!`iLS0;mxJYbQQ>5_k^uuFwGo}baG-bT$X+l=u0l>GXzG1)EChV-V&D%$TZcw1&aWD%2*mCOzA_yR>~+U4M=P{Jnrx03=Ze7G{<88Gl%6~3Mn0PH=VqWytvzOX){(PtMmc< z5i!n?7!nj7(!!9pEe@dKCP~wRXc3_hrMr&Q!akqU;fzWu0J#aGenEGnHVn~qykKkK z{8Y_@^?hft$L>zPs##VGhqdBv%x4lQEo-*O`ac`T%wuV*k)c6WnWAV_&N-EDIgtTd zWjHvAlpi5A__#;a;U0H(ox5Upmu0+~gH+4Hp4B44AKIQ zD7<^XEBDYg`0zgqFYF%34b~y$VDV{T;VH}{g#-dH#iI$VNMtS2;&`XQo0?{8UPv7k z2t^+F#g0oO!@}g0j*r)nC1t39OBj|qlSaR%sJl7^@k!*<#{SXk z!b+AmT?X2BR#8{N+T)ZYZX_=<)z=R|y<`~U?s^|D0Opf~85!HRIfNCk!PgBiL7?S2 zXayF+=Y$0RR}2FqJ>n=g&t9D2J5O}|>*lkX*kd&U0Q9WQpQ@-W81lcYn5I8_nrP)w zVHU+0_D!h#j_M#~sSRIxOi~;ydi6aMO7lNE=(4lxXn5n{?~(z`7# ztUjT4H%z&obS`XyagTCdrPb~2Jn2S+`YN%@s{j3%b$0pa(L7=wpp=5|C{KP_6!DZL z50z-@^SqP`8=-c$gZ~99sNU@EHp!I7CqF%~T?p6eK*Tuhj*7g3X?~gT@XFm_rQquG zAY%>Q0T+K(*{ z(B>*fkT*Do(}Za6SgoS=IewFMez?Ld6;F(-AoW^olx{;|-tZ6f+TSIw=HsAqVB~)q zhk>bf^P9fr)2@inJRSvskm%8tcr?LaLhj`wLWK^mlNuo}bpC z?2@RjH$sg$zbr8{HvRH(1)26Cg=X$gaFX@!;ttOERL%fsd#rn6q7(Mt<4{zZ<_G$+ zCyP10dj!HgJ}xn99gl!!lo;ozA>e8EqYvCZ&yG1J>Zg4KjjhW>mH1Y}~n1%^eli09|2e}enkd)sPF)a>#m`rOv_l4>39 z2KJ;K*#?u7;kU!zrRqY}dnKQ>4{8b&pwNTakgBrTEz&d8RqV;=2sLtf_Gv*ceLLO*hQeHYXE+t2oSpP8*DY2us ztJX%%jSLO^ncih&z3V=4yVYppw28WskBg{@svz_~t@iu;V1>TTyhYe^OR1y0q<`2i z{(&akWArB{X%saag()e{P-l=;>o{onP)bTAk_Y47iP?b~v1fW>pt+!t>3&12e4mNg zu8YX_X}BydDe#iI``z|w)xQ@Xy>tm`b!%6YDP=4s3L*!4)#1q%zc%MeRcq;3CXa-o zpk2E1i$J0xDuC7$f`uW?-Nad`iW0aB+0&Ew&GAq776=A`(iti|CnBwlp-=2>n-kwW z(im1OC^eQJ@-{fWTmK=xsXq|t3W#r3qU)S9NH8sa?d|`ru!_D$C)~l-z zIvCjzavy7r=_Bo?3;Jw^Ew+N`bbnKsKU>)>y?%(qZXsW);o!cj58Oq^!}z%JbZSS! zdqM<}s5W^TSw{6x#TaSurRr`Yb|74vz?4=tjDLM76AO>?67?$Vbq7j&&B^r^&v)ji3!4(WA)>nLYT2T*=oQ&GCS&l)o%U&J2N6}Jot+_X+W8O@i*v1!PRy4v*T%keq+6P5uz&w_XCoMvlA&TZ zvk{QO_x_XV{m?%U^0E69p?cMJ64LSO9#wMCy1WUzQxtv>hmoHdE;OnxYO$De`@9#s(D-MoM-R$@iL3h$?^FD{?ZH|6i~2dKZhs(#Dj6sgvq!9rFl5k$SR< zqK+9qeB$m?-?FZ+-f)lfB?>~{ng*6eD(PQ`f**M4bca@LM2EUw_aG54VHdw;*4~G| zA~s6=05_cN>|i&9`%LNf?p(ad$-!h@deuXP z4o)(3Q-vogml*El>tcZN+z$2vwUc0z(;n_(zLy@IDv+;3m-g}Kuj$H=b7S%3hD%Q4 zH@J~{+5}eP!}l=b<>u?07j^d-b*Shxcfb3nNzo|hb~0tkB6tcbpoKfhi?a3L$x0Zp zYn&R}LNGn<@CcJDP7WLDAhl2JI36JGaB5ml8Ku-0B(?9Nc0ZDcaB`}N-t&&r@lb<9 z302en>gfDkg@zjXK(ZmX;F~wan;=TZsnB*wLBiiV;!dmzY0k{DvX4XR@{RSRB`AyP z-&B_&2Ljj9?${M4ZYrJ=GT_;)s^yLz!&B@*gDQ3E)4f#E59zzpv=$8S0BVLQ0{iX z5ynRTj2fS3Qdp^tA7oRm4mX~q9!U}cV&_SQ?}fw%1aUR9 z8%r;*`1~?I&_B7+Q&W(QnV6l>We78TjMr(MvIysB$}ots-dR{6)%tkE_WX#Tdj0Qlic|l0F2I5{ zOhJ8TS!A1F=fbR(Y{jL{w z^Cbyko&5*a_rH{6O==xSgq`l)d4jZ22ns(kOU6RCf?4|Po8>U&p?*aD37iM+B8(}P zKL;}&%BYD2#R*|&^6a3+Qdq;_Z!Y~mQay;C7bpq)!^9RHl9@c<*1GVZR&vavU%MXu z1*Ry(93nKZ3_R^NH?9WG&Udx%8+4sNE$@n0ISOoNcXv3X3Rkdl7~(Z~efUMq zz;JYJYl?nWfut{)gM<17lmn6um+zyz$8#rcMqrQM`a4ZtH)ap;bsKMoFjFizAltivD zu&7M6f1cTB7DpVlD^xK3@w4)4iNWvh0^4h3_~_(TY#T=^zkw=FA#F*8-Edx(|H9vZ6>E4eKa!oroy)Ljhevq0KC!G{pA8mKLI^Id$a3H zR{-FPtOW+*kQ9J88ir~fq&aE8qP!oS>CBZ%;mut{u{Cc6-;vK2i_|YY=tgoq$V|;9 zv#3Ghx4lARL+g}ZnURmfdhoY(XH@5gBuv`# zaC3Jyfs-oc()F{lKwe0lrxpPy%&Q{|KTxaH)MT*C;BvX+;z5(md~bba?rgM`_+nY@ zd~cf%k<2xbWi)u?^7-hoQ*{mtq5E+haM4OEC{w%e6t{Ag>pi{7=OSUXe^rypvW~*t zq@2AulmmhP=!^Z=QVPO<9E@t-c)tedh;fK2t!Zt^n`s2xmbdWX0prfUYZV%wc=4uB zgh@9vP6ya$*02_7wVvNGRa8|u)LT4O&1q=0;%^&VA~HI35TwjDhljvW$aGzWm7rWV zAEda@?fl`!K(cZJbo8OQjTo}E$U9{066cLV{>gcydN0W8C!!-e#G_THas?FR7t3?@ zQB~-bsZ~sLvp76o;VC*U%na>HORz^7LrOOj&q2$M(|hCSSm3y+J8wGQ;FttW=YRfz z%|@H4_cM*Gj0zc1N5Sl=xL{Yf-}Tq>_JLq>+r(8h`{8v99uCzP8V4I@FaHTxSK zzZi!28PXbmW$84>@=NVcK+t&F@51}ZSj>cFel2dEkaC2pYMAkHzbps;YI{#7q4P8& zWM}0g?i=uSFm8|L=KC}b#uAQx%Nad*1*m|jp_lHxbN+ONE6MbPxXNy<))Q*nn-q76 z1zan0#?&S%BmD{3)Qt*0?GuEux|yu&xwNAIN3G@YWKvG%fYe>WiW5l|1MTD6yirvRI;7tC%v0(`8&J% zz3P)!)^UcD?(B~If7ag5o_qrw`1o| zLJOO*L(fsE4eayMxH5)n)B=3TDXuK+e8f!79b(6)7G_kSYfSR~KFOFi0ZOqFC}5#1 zEwSZhIZHe_IUN`GLSB1G-B3rz_=U3tF*eu5H=3ZG+I^vz@#{y4524!c1sDM{HQfS!O4rBCM*7qyHP}#0#!&S<3K~!``u?(e#2c@qmYz%Y zRW6XXpe0Gk97+VTospme_Nrbki@@x-6Ww;%UJG>2fUFbXDT1S@sXM=3&*K)8IU~=8 z9MM$4zhOvUWojsv-@by(Men zeQLdB-0)9ryDIeSV2KQ(4$%-InfAHdSHzQ^Ae1jxY5d(i*)olM-z`~3m!r5gtH8SS ztz>@+3dkr2S$=BuxmMTl(l7>r8vUU$02Ljxxb0Rs5;{4nt^V!7z(^nx>O-7&+;1nj z9;Ad!=Hsp~Oo9ztdwpKy{2`Lz&wKuz z&xAP34`K@C{E14p`8F!I65n@lKCU`AM8e6g5v|byC?QvE+am2e$_nU_;(4GFXdxUN z9KN7#w5Q(Vg9BnI5IAd%4eH$0UtC(tYNbgnccFZxBVvZKf{rUOJs5X}2{&>ZZ}XG1 zL}`oW2)e>*1;Xl!4o>|-k`X0}v&0vF)`{G=h211>5#h<7Z<+bic@nHCW0jQ*4VvrI z)6?_w?C3QlH|_ZB=J9@hLia-X$~3&Zyl|BP{8C`Ta}BSRO6tAON=Zp6mRyAfODZ;* zgoG^_+&q>%LE1<{0&XJ-izHB&$vu`FFLGgietsdCKLs8|&BDUszJ_(i4@^V3f4?CI zC*WbRk_UcP)zZRGkS09*0_LIknZb<^gJz~L)4y6F=IpD2dkeZk-;~e)KsNX@qs*T$ zYlmL^AnFbOF8C@USd#@3c0t)@J(3{r?v27R8g^RiV~_JhN05j$ucT7i($kn@!x1BukeATHO^gcGMawc-hGpkOBVK7Xx@4^Qw(Z2Gy%HGnOKW9ou9I8>yhVk-MMB z7uU6hH0DV188V}@EtamUT6kUi&#UCXIKJbLqFAZCwB{FkE`%Bohj^8XK74 zAbG?0%gnfS#6D*tIK|^8Z4IJrbl%NU9c!Qnc<(*5K|-~W^czyN5$fr*R8>DY7CodV zD+<--&`62*B-Pq@jk*tqJEsm({P40BJ|z=ojE%!YXy2vL-FSdNwee{G^4#; zww0Ik3AP8uaZ5~&H=mA?0e{9hTOuS7xEpbaSyG)_3xc%l#6s~k-shPZawV8tfc715 zG7>Q|f*Pea&%o|rGFxoT)2NXDXtB49cUw|5S zLhEC%Ql>zw(fYLPBiCT25R*Uu1nS5yn=qNmACr;J`$vRLM%=-#WWKZ$OKnf#HVnQQ zWZN4T)?Mp0m;&cK$>h;Gt94FJj>0kRYBIQWEx`#?-@7&%)l5JB70BQ><%1{jl~9O9 zma}@WX5}}TNPi2PH5=(e;+N%!h}2>$PElx+gL`9v0P|rNBf|YOcuOIRl-Iq6KEv$xgR6cjI&1R z;x{X3zSf-n;iPVwTUX$gYymMOsu}I89*#A4Omrg;4N%&oWhrAsG8EpJD52M-E} z4qIIeL_{A7F699emn}7+vzBFNvG~Vjh%+>|Um+9Eb{g2+wXL*g3TRNOE!Q6NnV5^T z%cC*(ek7vHvyMAKZs{0OWwJwHHezHsb2b%zv(x%Q*(`7DNY)saPzuU!bTpcc93!wo zkSZA)nm4laa<8uY^CzZ(3>5Krc00g zfM_chC)u-e-iz}$O>31&C>cqy@q&1JJFoQyqy*`0yS)MT&q-oUyS&0i#$k%2YCjzu z7}Re0;;erbenv}vFwa02r2j`-M2r@qeEJ{^|L0rC>H&d-M_k)t72=A-?4X=m|8LOc z=&6uPcRkxeqd)iPMPoT3kS$V#j-9kn%!9)1X@ak6xNDQJ=v~G}a6h8l+FUPQuy5=M zPUjRj1)dZDbTBa>F6CR(1BffZm4 zk6C=2av>jk3IJ2`kZ6KaDFZx4uN|>YVUz_?(^aU@qtrh#+F%OaKxM(u#9xppN5i^| z>Rcuf!65yAAate%gzOIPD5F{ffYwle_+*JcD$QD1c?O~!Lm`-KpgfJ(g;CLTCzhkK z0J-cFRmh=K1d825*|wEIL1&1p>G^?)0aVHLn|U1~LOxg0j3{N7#f}D;ZcDE7%~!dQ zHeR4M!?T(afO+~Vlj8!m71uuUP-|>y)8u?t*ZzeDXhew}rUd7c{w;VM_Gh)-dR>Sa#%8mcF zyVqpdoyDLa#B$)-+?M|F?mw85h6yqgD+&-s5mdiye>}=96FFO2urNbbKzDJJDS<3+ zUwG@4e|OK9!kK9F;7UBu=18Ts0u;#j~c-aE5n;(k&6}PjIre@36?-HanvzU z&Lg6$cl5-XeW|=x(`Ta2Ca_M6ixlSWAGBySG%8H4&N#Imr94A+(NdJLS!YMQxE-lz zpX%Fbb6c5l6luI>a^#cegYSU;Y+!1^CKN&0(3;6W1X?epgaF|89;B2CWm8y;M)EIZ zrCnx3akOSucM-+%{PpXQpFfG1Xedh2zu5|z{+RlI!ZSbLsI~$ll!dyzD^q}N6=wA7 z^3l1ebkiS2NBfrANTw`iM%zN%pqX>*m|T|UPqS1*Hn6K})7(GgqC-y49VKyU#*(vR zhcvr~2FPYcqr^yV-bc(!#>$G?CjQm{5teKFyeR2$`H6`|TH~kZ8ayP6Rt!9lE}13a`KjT;mvS|lqaZ}q4_$Ug zGp(?MZbkJcQ3(pB*%=fb>4Rz41X{G${VTf91z^~T5Ud!ot<{{fQVrq;3nW8kqfu>=$fF{=e0I*jVADH9F zkbgkVua5rfGeM5Tq0|xiu)M!CF3M>J06?!N=UU7|MvrJ=b&agF?UQq-0RWmTEfNM# z|Hen;NOd|Sk>yioCLFn@bgm%O0lKi<-1d)cF=%+W^hQN984J)>PiH8AX|wxNS{b68 z)@3M{yX4LjV+KwVNC|2&Bj6=@A`spZ` zkX?Xz#QH2JCp!^=>`KL8Szc4g!1|V^4TAuHsWpu$P*Ll)e`dMpqOw*2N3B&!xh08{ zqE>0HY~H*oM+~5-N6?joj)z-Ajf@8^Ms=r$+2m(*&L37qAYhFC@pbW(&cD2iB1WK( z80&X#(=LVAONT!+@X5yQgrGrw@+R+0L)zub=%TgC`SO~>B|(sJ{?Iy6T<#nMa6B(J zstvmuSt;e3Gs9~9sulx|>3}|Sd?vH_AH?%wdrv2L(4V&t(L{i{-?ZtCZ%)RupFsVo zsp|bnix+KAzLKNDU(Xt&v9ghV(Z?;Ce4VD!%!r%&my$O2(25^Z#sQ!1>oH>!FISZ; z`^TgO)A1s%UrLD3ASWsSn2-`?^kp_282VA`jdTgoGzryXFEqznX|#Dl)5)9LvFNzU zZNYg-b3b6R!0Kv1lJl~9Swk({f5E{44*PyG&cyX0*BZZd=VyzcU%PEiIu=j`8!mjX zclRlo+?whrji~YY%{DDADt;Yn15*2n6_{6P1p^v{r?p@`V(0jJY z)k>T|O^obXQx%X#h9_a86Lou#AiV%>AXMiXEVTzYy^e(GfASJKDGj z8IoKv2ZtNb8;s}AjN&=WjDFYb)DL#%OdIwGOogAvxPuFep7j5vn!MH^ug3-6lmAPd z|Nm8#^MBM5{P%(YoI?Ojm~1TCSeBES?91FVEG!uzlDlIDAz{9JnYEeuV*S^-U^YV~ zj9F$(n)PmA5}vFiFJR7WRWsFRww?xDKj8S`Gdg@nduwYe&YmF(eDB1Bd}JY3YpXa9 z=?xCJCV_v&cY=vCKczVJECP@H$ffDv=!m6`K)^lTPc_fl%Ixgu#FNsG^i@3avm9FR zz!&XdJf$(NZHY)0(_ZiJeGxU2qDq}Si^ZwP6k~!k zO58muvh#wpxSMzua)616EhlwVATsu&JD#aHGE`4AIkSlSbabmTlnBlIflKGX0WvF; zf9?SC;bWe)3LaXpqv3)ioWE`-`60EDbOs@Im=!oBmA^U2k8!LD%Ab(cHAtEQin3gz%83C#bRgj}gg4OgM`^3mWb z#rFN(<(d^Y&&|7U1w%3K<@cV-Yx`&fan$y8@@KL$ejxKXCVAzkUN3fZ)tTgy@C{ z7c@1p36%Yu>LnR=#wdLRmzQK}$BMExF)waBJo@K5Rj2smMYdE{a_rRy8&L7&KN)MT z`N`bsb9f)sFYX2RiGKSVwYM1e3;WPiX5UQ47;QeNi=fnsqTEu~$%A69m^?@DbqFR^ zUDHF|d862>!>7kU*0#Z4JekP~GA~#7*7cI~#xa6}sXJwbvAnW!vqN>d+ZX(0vZ8WA zzJ2M!?c&E~z;t0;yB?v>?3I6^2azRZvBFt{+uK#Dv>~4=|`BtW+BuT9F3=ta6z3cnBXecke73JfdDY2L&MUsJ}~b~ONW$95)`RD&fvq02Nv9x zIk)=P38*y9>g>y+B(J3_R>D9bhEJ!y`3NLzSe*lhKH_bRjpe+~TksLarqtts_q|m)-6qpLNKKhI0gR*cE*%W=CQ;F&?cp{B94bMx9$njs&>!_eG|VhecUv_^nByx zyaiDRN(u*jH`8YcmWT31UC%K8cDU~B)sKe!TtYDK^esBV984E=*uF{b z8~9IjxMBU^lZ- zb+14G1dH0#KEMXBa^Ga#s{(+I6LkjhL7ZON@u_(~pcn%U!7>tO%Jwg%ia(Vqjohge z9H&kA_@T9kXIOPU4v#rkL!puM2L(%HYst6NB+u+gC&R$`KtCi1;Hc^q%>@O1fV|5n zCx>R)uePvo6ZwR20FBdw(igva0Cr4&?cuSoGXuSm)wNR5=?YH6VbFBc?2N>?3xmSI zS|EXh=W==4LXI5xeHj&+Y5Z@(i!}L~1+nXrQe5sW_xWV3iw7`DMgn~qm?gf(MD08e zTU!6lI$?zg3_|PUlev<#G(2}R^94RXf>2|Qjd_pD+Wtyg{`11%cpXNS<;e`*;Rv8- z%<1y!)+e)Xsx6u+t#hY}d1Kp55VB zwxv0eoEITr8W3#2c|Q7~gyFRq9=#&(FT}|V_)e!wRT|4tsX*y$7__P%kBpc0|A$=<-e8rjz@BCAqN4 zI^XEH&AZQisZdTr|I1=y21sgb4HH$SJy*S1-tQB^q=vFEhAO*b$I2}-?y}44yiA|1 z*D%kjB+W|yAP3y)vdJ~F(@xmEtme{PUM+v(`|tD=3W-ljN`*>V4rtv+y>Gq`1}m1_ z${8P7cB(jZ^q#F_v968FQ7W+dM3b$L#&T80JsC-1nNcy8fKLF^`?HEsZIwq{irf4n z_dSY~*V?5?fp^^S$FxJCS?BPO&k%&7J(m+#!w zlU{p}MO2~7wQEo&)sWTo6o+Ckd(+;fd}cx9nWUjiQrbpM$K&(k{%W!L-kHN#b0>Iw zbpQV4u{rqXRt@u><#-9Lg7)`!%&)cwhaTV8vB34#;6mHIF(0Gi1fF>IhTgCDWtBv$ zS4~3Bh3Go+4@Xz$jB|5(&s%>Qh}`L!p?y&!i}P-W1;6C2xIc9@i;gt5@smyM^D-k^Ky zv3)gV*-Dq4G$hg7SrZwRUtMHOKV*?K35Jc0-)z76EBtViRDRAr)$=)-j6tept!t3& zl$aW5*2vUKtl+z%Wujt0)ZwVeCO`k+D?_q-B2L>zMv!b;(_sdp4l@&0BXN!3uv zMJ0l2nJMwG$DKLLA^Q6I9_oA8cri|4X)JyPGmP;di~JeN{gA&Vlf1Tt=6x_?^U}~; z~4+OfXrMF>gafLo{`tHl;i$^LBh$Hxo*_EQgUZ>7Oz(K9~pnw?;E*TB=$gA}2_ZxlGhu6vKEcQ4gc8QJW&Hl2tJLetz>x~yxNhcJqSr=#5 zwf?;D7UjM4$+xO_X$;=~oeLoBc-tnhtTDOyR(J8YDa%?wM^QDi*|GK%e=}k2!EK+< z`96v?DhY|v+A9(QP(D^mItR}sTb7Q7b}Zs~-(o>|U`%1+b(89|Z0YOYxB||;6#NdV z!_9Q_*8vw8BkZn-*Qb-+Fn=$k3Y3zCs>&mVik7=H4y7%P3vELUx=gm-ZQc_mQ zbTdEBas`)`Hf~O|hoy^XxfFgvtjf~fYI~4exa71lmCdrkF11PQ3z2W%^j1E@B>G&( z{XARTKdRQ*!RM+w^@Q9Kxyka5+nF}0_w)A048ex%lbEv0CD|`#CDkm37H{|cMjO^D zwVji@y4wfxx>8a%F_*F$y;bLLuCG4=`LO_;_8=lco(zZA!s1Fks@qMUzsxA7BG3I7 zBNk7bCa#{b8Y;=nR>v{zhz3srIw{?Mg1j9MJmu%*45s`0;0Se;kGab_WnWwJ&kC8& zZwB8KO1qFE1NYsVPtB${!ZJZLv(p>7R+#+%?%bI;E0c)n;t6{%wmgqi)EA%VP9|cJ z2ge=BXov)Cd-)^&rC@jxa^sImFgrN&;q|?p#zg+G6=v*%hQuz@6FZSLtDz2w{ z6YaPXf)g|}?!leTFEnn!9fG?y?h&AIcS~@0hlUVb8u!NCt+B>>I`6zQYv#_ZJM*9U zbl1A|<*akosj6Le_O53?wa@ARCU@o$ybL9P3JT3C3;vtaJgRp6PwQ|Sdw`|A&t2wB zz*OMxq(-}~iw#IO)OQAU`K<6Rb7>jt@<;En`(` zoBeh_)UQndPp0+eb^zJ0Wgnp66`@e6ovZvpmDfH?1ath9nSBPC$d`D#7gQAjL7;tW z8s4QKBg-N^+~CnMY>}52em9OEG<-LI5B+$URJUHut`6Vzg%olhrU~F}2!LqPVEP`Y z;&UM=Q@=@YG? zi`pYL)UnsEmwlx1ypoUbEb`J1gV{W>Pbuyl8W@pavcB9Q&;W`q@9i8;Un> zWbmNrEbke`3%!rSW3qfgNj5Oqy2Zb)x$6!ixiq}>hcV;k0kxkFBD46GQn>v3+sBHv zF9rk3wU}Sk!R`(n4TWg*qkS*$mfQh=*ZL!*!bRLDSgl{%F)48d(V^hI%jdR;Xx9~N z1MeY3!{Hj5kc}CR+Obk-AASPTgDcfOl9Kg}x2n}{Jhs{lz#PXT#dNx0{oPS>e;nqk z!gm(fmv$ks&Ruj2vR+zrQG4NVLBG?+*KkV5iN~%>&|j+^m2m4^`SFRW^)%IP5ew>~ z0}D-1`v@}C-D??z-081ZoUnQjBa2Y<6JS5%*)!UC2+B~u%4~zd_KI*@2k;L-cgdF( zDUO4KBR?7EGB&gH8NMG~4x^C8u9FA9{?*L84cOWr*Pr@IPWiSNMn*F-j!`zEn<9yr zw2^sj3q8EJ(8H&;h+gyCy2x>3ta(w(t!WE>|NgDL#Xlb+QW*j`Wr~3=oQ}s|1$Z|< z`$qJUm7RX)cxH^JK@gx7q+OCd(^$dT5uW$+u^SJcv6Qa!pgJf1S9Xy;$_2O7BiM1ME!?_)r#_na| zq~^`^7VJ7iij>x%rKmfvX;L7gD=v=X#kVC;+x1&nFqlGzc55@OZq+Zfzm0EVgBxvm z-ux&5?qR-kcGNm|7chGp;8EYD+ku0lV*_!rD-yO?v@{G(G6aJs6F{tfhRq#f__VhX zeRvc@DVzm!XSd%BylpN&A1YX1q~ym*e{V>iI+}C{SU~XK!>+pwQmvuV?krnW=Wdj@ zChY@e^rLwT7jVQq$T;xO=b~&dZrf@c8ESAfbNH*p$ZoG0^hvJC^1LyF2GD>bV{4TX z;fPN(X9cY#NIu9(=aeQA5A!TgmmbRQ`G)7Cd1F}o9SU8Sk&g*69AI@#fcCD{qzuds zAWCQ3c8GSUB^C8<4>`=7uR}ogjB_y4F0mKiU<_oA3SRO-5Xtr397C(XT5>C)gzBsF z#$-kIyZufcIKLsYwWgwu^;XbrM0yRS(6L!lppuo#qi1xqg*$(ggd@bf_S1#@mAPc{ zTd!Olhnzyct6BBDmTpn$s4?&z+}xLsHEEDR?s|aS-+OeQ+UCb+XZjq#4{luV@4ShW zgeZbgFwjOk^SHjRmvwuh7s%a?Kl`)QH{;rMh3mQH^aGdX#v(FEZwTMbX1rR zQ;_%57vlsM<2`OIoC!(=v4) z%JUm=-H6qv4-8ekrq5IuCmZmp9ywcN&b!oCdgEnuklL1dnVK*EuK00JMY(5)DY22D z%eI0cG0=$hsBBKv`y{M?F0zqgH|x<`j?TAY`enhi%FNkwboC5)+%kb_daiM#)YHV9 z!q#6}`+cTWkNK?Imxx_Xt4SBVE&E<6CU3PM?+SiRpsx<#?2+MSij+0p@ftQq$CH4|Ugcx5ZUM{n!s5p@ft7&zap zrOLBsC)D_d0zxbI{yO3z4A(OT@N+yX@LfKQ~S|*MkuGf`Fa(lFPOr#4*$-Tv$T*i_V6vj5v=*d_tB_gpEwv8}Om73RE z{H_-W5jy7l z(~KqAASFqd&1bZnmyl0?xLp<7TogGVzGW^3iFcKyl?_w&nXFGTPG`ZvD+w{odiwbC z3%UBU;t^42`(rm%f&F|`-ME(lkM8vw1H((%3We0~)Ta36T&Z$G@@Ay@(iFvNxO+81 z0s&@c$935jhm+?;k#Ebe{`PeB#I@@8!2KgT_|3k9PS4jC<=E&}7LU1O7l9{)`R!N5 zX?%FRhYZtZgNjN|g?zNn4 z8RE7)NK+%V2o08(8IaOIATPUuJj^Y@KeagIf?E$BvI-a^6_;J-%_L;9K>U9&q6d*hA;UmrVcXK56ZaB z1{W$aW@}Q%%?Ejlw2;^6nW3}_^gY2rN+PGhV$20+^jg%UbW_>Ye$%%e!`X|YqdfF> z{?WaPy?{kI)p;6jrMIE|YVUaOC;;XdII3b*evGG7a~M6iQxZOE&g$*`R%xxm z%cW@G<_SX7z_|Ohxntp^5u^?)*)d|_C^g+L{p2R{G~dsZd5giYVf4dqTc4iQWvRZZ zoRLUh7F!ZykQHp-mrVho6l64H97;Gh>00af%Mjq`3RFb3P5T^AYzDN!waWWMI*ByjYmwkTG_#t^NL$O6*uKbly6>udtkMM8<;L>vGXQ1`DZkf<$izmfHAS5a@P#lr95$ z6&SL{v+G5dE5gBikU@xyICaf5wc9E#%Y1q>O>RO!Op-`h%DcOr%ldh3^XS+ZJ|JJ9O-?&i6>H=LQo`N4`~3tUDf z2=r5~pws))iwktLOuiqD&!&&eR(lH%JNjbHnAIu%BEq3(NWL7VS8>$l;fK26I5@Ku zOEa)RZLN5&^f(zr%au7))&irqWk|t2-SylCYqQO{tG`>b6{IJ~#m?3!72dgM$Sr92 zq0iYhlF5W?`L)c>sK@C_AVz5t>p^d)1gcgW z1W}CFq17zxe4IKWq`Zxv4F*~NUZ|)*?iN(Do^HT0uc%#YtwQ34)E-buU*#?R`{+kqSDFg|a@0zN^^g^74kQv)b$9 zmIBBiG)rT5^JzSBc!i0_f#Jm^ zvV?_)i`3o^lkexI-8l12)4qTE{53K6ddhJ0$iljt84P9UDkI;1T`#wv9vF5eCt~bz zzSDT5ha?y3pw2E0-Dc00%$0Pv?;Ry2EcFDyhUOHh z(a4NFd;>NbY`}z~G2$4$`K0&6*-RnkYOGoQ;m6ceRC&kNM&~v~t9Wo1ZssM^CDyT1 zsd8aUKGQdA>iB*bnFLa-9IwOnisVVdx76$M?A%8Eu!tWzahfcamPJSIshdypUfTp=>tbTw-&A9;?ZHR4j`M~{D&W! znm@+2Hs;yp--6CCopGJDT>U0xx7eMMKAy`c7#|sH=Lw9~1jhHhTO8n-)X=+%E3YVp zLU)T5pWS+cRsE86zoMk6=y5|$oy5VaAkdMugP`F3<6q{>5eR^fw#tG49SajnQKl{h zRl8Jn!@!4$rOMC5*@gy>I(j+mt&H#y(y0`VHKcw#5CRxi8-`g6wh@e-59QyQ+Kw0xMbMD15x!YF>}XgMm1$PxsH zqB0+C4uu8T&(!6;hR6(c8L!g)q$iRyAFX`jE>xqCKizS-j$0xU^)zVdNWUU5xB3w6>9F z3TXv}35+ZIgg`q_+N8;3)r5SPR(C>VFh>jCgPSZGRvGznHL40`iAZPs__wh7t%GMbKB9Rms7%gT%? zQo11gMfsdC{yhiTy`qeqWpsMUB5zw=*+Kw;VeFbYZ0<;c(tdKkl&xgRbVd2z8L=Id z;!1ED(|L>&`t-G|;kpZJ&r+G-=k1l?AA})5dh8Fk+@4?Leokp$!kd~xUMh!uw!&u( zTCy%Er3VUD!|M9-DFoD&PPF``$V8ORfAX>@_w$hzfm%u@52!<8tj)knJfGToThuZq zDQ4Hs#Tg|ABi~rR1kbbCUbjpMD2s3_f#-faz@9ktDehvvx}PT$wF$NY%OtIr4BTJt zerd;NRJ^vF_lfPGPSuG>^>L&Y_VUxx@xe;W#jN0umyN-jG?R_Yt>>T*pXioYM_Y;W z1@vuG4mKsvNYUe8FQ+mDKQqB@P6L(#!##OhJY>6W5`O#BKb=o!0yQh)=fz`=!}HWN z$7L6eG)6+NnWdP*f0`k>J<$g;=^R#{jrQtYmCo*z91l0`^~+DXe_#(o6)L7xxuZ3y zUKN*Bmswht(9gLkaD#ZS{j1ll+Z;BWPz&r!393rADGRI8su6m;$6q&95*E0ZXTKUh z$_KlF|@AfY9s52O{ZqquJ_E{oXKy;}*2yUgod zhp!~E$Eile;RJ~XUkR2O!Lq+Wq0s@s1#|3V=H83DB4yWH;K_YUm`rX$RJ#4G{Q)1C zhCuxFb9ZSH0_r@v)8@u%FKrT`L@S!_)G zx|&j)aK0Mf{)emi;s7I>KdB>E08O;8%&PUOc%|IL!d&eNUe5SO?r&qLFx&|;^ zlRNYQ5qIM(qfqkq287(2+i;W!rqg#vQC0QD3j%aUp@YoD=n;56|T3V(I znR@-WXYz-X(MDL0+x>;z1H}ME&QDCy$Q7s7Cf<>{l~Z{dK<|L7;#3v+l6H05YPI@^&0MQkXX%lj0}6}Zouy( z?`X1CFf{NMr(1g?Z$D7&FtB1o8OQWWUiG|*OH$^MFwW77V=#pmBwWd5SS9Op0nRg- z1;tTvQ;eGO-aff{oQZsQj3=E7j0wq-V1D)n|J6bw|1z!83?Mk^hvdnXz21h)ouml4 zKCG;ZOVeWs|0LO^wA2OIQ@?rw3Sk2&8_0*b%4jB$QN8%|sSNr&be}z*!<|LC;0i$@ zrF7)jELbT3IE!L?DeXPY4S5mm-5F5E*y?J2UdBgKv>`bX%}5@96iRI&6 zfQ-dzznjMyh>YLV^=EC?q#8T^cW-aFoyMPi1f7+2+uY39$JH6jU`T##sSQWwwMoF< zRq+;$?9)L`j+pAQHTz6~3WOp!f^UfIHhAv1&-PB34Pjo^?N$Eai1cUk7#a%Fy73(i$ppIEkC6+zHGt;QUN{8xUmR`Ssra!6PdxHc@}MMFX#M zGn!zT4gn+pY(;kl) z&%kvAH4$ne(ggcuJNsp2mL)nUSn0y$@!PigS|n+xkuN@oE@J`h3Q3pDOD3ZOAtru6 z2+qjF-Q&PammVC0h|sGRio!I*Khz?n#BPtC!$jRuEfm)ZtwT7|w=U~ENy=BE>Ap4% z?=k_6!*qh+OUc}HQ?+Pv4dzd{XHg&D|AcODUAhfR3CsgP!$IO_*k88seiAh>(%HGu z8pwv1=jP#&Uib@MjuPZY1U9|gF3#cX4!8URi(DEWAeeT1#|m(UiB88p2K-|b{FtlO zEBhlL@!i8S+~?Am`44#bZ@cNQT?GI?m3WU?+NoiN?|p;9}GON37Zkk{&m5Q~}=NA0r=RA`s5J%eF6ESVh96 ziQ8;cRvsWKV=p?MyS+l*E$vTFDh34`i~xeGdjZ!NnBI-B*I~)rjzYv=Cy61Y~T?N#%Qibq{`;JMWss zJTM5YFC0#P4Omt_{iS8CZxHu~zr;&UL3yv+q*a(o96dHqbb5fFn<*+JTgq+A>@+`9 zx|W<{IlJd)t14u>iJlS2Wiy?t;_Jz25%g>K>XAy0OW@Eb7f8FDtt@jF2@@0$*?TwC z$h9;kYsc{l01N)87-O(4eF<<-tG``(ll{(Ygi#A=4cQtrsIc(8j!Tx6SAfUmhhLJa z?_W)a;L~QO!_G%4WAhS~v!K$%AbWTMa9{<~=73anQ`%x;ARU!Y^~UkyIWn_$nc@M-W?oizg=Q$EpT_Do&wVhz_)&?hKlENGpgTXC#-52J z*W_ZP`df^{=(Pqf{yt;%EiEe*?*?ChXhY8Bf(767UajS=4vMqYC1;i$_G}=`lVOlz?Y$D=1R+sN^XM@%8 zW8L_ne;M#?OpAWG>f9EE#zTkiIm(68UZKNlo0_+|QCxv%UJ@#<(9v8E=nVUV-tAT6K~ z@j={+-BXwcB4mF*zNsQhnXt9haK)sS+V4CCZpO=aumLg~4q^1U%#F{J$?E^6k!euj zp!SccBqe1wg)y0Yf~^iRL`U*&^}O~K{fD|+mp!EI;1BUVbkiyoL7!S6k-_i~ahE1v zxxPW?u6e#?^C|q9e+K>AzH1DScer3#jP$%bgH%PR`=5u z3S9>%kcY6%1uvFnYkr{7B_fSXGJa}7Jb_M`t}QOt+{XUirk(Pl8vI0Zw$y%TD2;P} zNeBw<&1k#bP)i^&a!ur-yq)AX|K{5B0)hI`psLZ z1p+Td4Cy6PQaU!%#T78KvcYHQlnCRHfif_OSJ+G@4eoUC4_LnBPe7s!(g+f2R|Lv$-@M_17 z;>Nt#jFf^HWFFrrVXN6-g^YlSlV*;H>s2M|rgO`|E9%5H+R-yc2SEoc+42g?eNbqc z;KiEUlgW{92? z7>pnNK_;JWYt*>CPg&P=^t5Ca;@39q!3xReAHo3C;GBuDvBGzlb$3aDncu!8Hd{>D zDRI&-DtCWrZ**l>Ty&`S@YG-fU{S{v+7JjtPA*KB&ED4b++Dc-R_>Mm9yMX8DW{gZ zdxIuRS!pSji@-vJbPBiq5V755!u$e?ITR_K@x}clQegPjYIf-Em8-X(Y#?#gK;C+9 za2bi*dP(MZ*JvlKm0Wgwhcd$S`yJ=eZqTm3C<6I6C9i3<2U zSh-=|xwGKR0(efa64i-p8Q)Q5z<=HGBOpNfSjq}OB|LoNEt)v6;o2;wCp-N49p~n5 zV0E{ks|#9&9sc^Yo9>kkmRWe5o{|JpQ!Ds7t?*jjj!r;$hlLR?RK_v)xVhU$_9b%cB?|{H!C;YW>ER!UzL}TLGQv z9?TC4ru;l`ZN3@Q00DH#w`NkC5sik|M|F0oW&+wnO5g1IAM?0bs5sI}$|TTAfS4ej zOe($;R{sW8Yrobdk-g|PALE(-HHmn`H);X|9_**NWjocY73B{rjPuLyUCyx6QAB3* zFPUT})E<}Kj^31R@Z^wKeV~i>DV|;I#KB;`6e5haFU^@jx}KIlPWU4!ARnr^(Dto* zE}v}E>_6j~(;p>^>@Ch`o}SKQ?Ip`MH^zm{KHc2TySxw*P8*vA4}M-d>vJ`2glpRg zX%D@lW7WF)G1gB^s4(_+mdy_@&Fj=vgM`bs*3jpZ9Y_9flI?`*CYyJ0pJT!ARc>Ox zc%<2%Zt{(}FchOq(?*ZM13O#XWI4iJ5`dj41_f$M6RiD?rS6lm^nF7YAE)%xv+RUs zh>v{fGCtjOBDh1DE@FHSH$Fnd9(J`C-o+z4ERcE)`e1sRQy7^Oxe2HANvcOm!IV=u z9VMEmzSgEp!ET)n`LJ@x5_rv>ewglI+~^)!pph;}0-u5I^(AiIU8$9hf)DJdK&7Z< z?NDhAtB<<&ZjZHbz^}GjwNFJBYaonQ;qI&BF83p(ye|ir<^qrK$e6kW2Iv3to!{2+*^*!3!*%8>t|TK zY$gm6IR$KYx04`V_osVA(+6d%sHa{h?GO%WYRa^PWL^c^VfF&WF==eytI>b9cov}= zbQ%pa+R;+Zw#^TI*LpF+vcEbhxx2e#6FwT*>g?{$&_-{);r%@1)AVe>5)Xruy(SqO zo1f|EF~uE&xR#6^db8bi0nM=~Z#Ho#-s$-?y{3Bc^I1h|y>mq!9(DtU_6OMZau}Ba zYzyd`-s}2U1QI;}lo4S37nt<;-{##%Da;-a@YX--G3N3ffGHvJ6e+v{MCwanz^!R_ zV_E&Qdb2tMpn?w#bKNDfj14ca_k$ghwF{*0Nb;Dnnh9jGkl!-6% z-vd$pfcG^HJ+}U$rG-)=>g!e;VLhtwf=w~G?)wE!T;3m{U168 z^X5muC)|H!oOdJzK%qctYE#Z+Il9Z(iF9Vbd zZ7eL7`Ptq+UuL8QjQD&r-~>i9u(6d@R*oLH1~p|xd}+Y?si?w$uUuGzp?Y5>>Cn&s zw$+I;iuH7Km}C3!Uy2tn?>_&8`*DdtPKvCDiuA!pY`kEwU43)n7R?VD|5n*T)r-?s zJ3vEiZCxExeE(++NAbTyrfOnhA}03eItmjy4-8Zi6B7f2!3D2y0{;#{p9yE%66G!v z;Ac7V=FX{6ctY*@UzxK_IJF$AcmW@uKY94z@7ibj@pn9xFrCcO%?AMdNYZ3EtgSci z@WITZYlccqGD1SS*uEU)v{%<}Gl#cM+~@81p3axQ^dklUe4;g3B0@q|Jz8sP3Frqz z#aRdkOsWbB3i9&kywAun^#Qg+@n1d}Mw0aeG`-!n^li&r;}7`s>obG4w)R~4%U7>3 z9g|LZyXvuc;EIXCtZ(ot@n{k8MdBggqXA9g08HP$px8g^#9cU1SB3Cj$yI**I}NV1 zL;0TdO3Z>66=snATQTwKjS6zvF)d9T6vq@f?Z_eNV1{t1e@__d*z*@J-kvPG!L5GP zzJ0B|U7J{kY4b;H<1wdx8D8S#J^O#^vkF-JqU)GL9|GQf!z>nZqqA8r#X1#rTTMkHrbAp$zeiKMp}xgGi6FK6!0H8A`5IFdORty^Pxida`ekdqX~2N9h|l~` zR2LRs&XD)*Ne`vp?Maww$8iH&%WS66Hg#m=wC>Is9>-a9*vW~W8@K;nP%#3qT*U8n z`0Yt585pA)GaGHX=E%AQEDIZZ*usp?v}89q1|agT5t_|i-W><;svuK≫b@dS6@| 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 RWE23PsrE#*7WVYj{{h%Y4#)ri literal 0 HcmV?d00001 diff --git a/.playwright-mcp/dees-chart-log-white-boxes.png b/.playwright-mcp/dees-chart-log-white-boxes.png new file mode 100644 index 0000000000000000000000000000000000000000..aca3af4ef3262da45ce2bed260819c9708e48b1c GIT binary patch literal 25013 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 literal 0 HcmV?d00001 diff --git a/.playwright-mcp/filter-highlight-test.png b/.playwright-mcp/filter-highlight-test.png new file mode 100644 index 0000000000000000000000000000000000000000..6bc54c9a4e51b2fe4c66760e81cca978be87a1b0 GIT binary patch literal 47068 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 { return html` { - // Get the log element - const logElement = elementArg.querySelector('dees-chart-log') as DeesChartLog; - let intervalId: number; + // Get the log elements + const structuredLog = elementArg.querySelector('#structured-log') as DeesChartLog; + const rawLog = elementArg.querySelector('#raw-log') as DeesChartLog; + let structuredIntervalId: number; + let rawIntervalId: number; const serverSources = ['Server', 'Database', 'API', 'Auth', 'Cache', 'Queue', 'WebSocket', 'Scheduler']; - + const logTemplates = { debug: [ 'Loading module: {{module}}', @@ -49,14 +51,30 @@ export const demoFunc = () => { ], }; + // Docker-like raw log lines with ANSI colors + const dockerLogTemplates = [ + '\x1b[90m2024-01-15T10:23:45.123Z\x1b[0m \x1b[36mINFO\x1b[0m [nginx] GET /api/health 200 - 2ms', + '\x1b[90m2024-01-15T10:23:45.456Z\x1b[0m \x1b[33mWARN\x1b[0m [redis] Connection pool running low: 3/10', + '\x1b[90m2024-01-15T10:23:45.789Z\x1b[0m \x1b[31mERROR\x1b[0m [mongodb] Query timeout after 30000ms', + '\x1b[90m2024-01-15T10:23:46.012Z\x1b[0m \x1b[36mINFO\x1b[0m [app] Processing batch job #{{jobId}}', + '\x1b[90m2024-01-15T10:23:46.345Z\x1b[0m \x1b[32mOK\x1b[0m [health] All services healthy', + '\x1b[90m2024-01-15T10:23:46.678Z\x1b[0m \x1b[36mINFO\x1b[0m [kafka] Message consumed from topic: events', + '\x1b[90m2024-01-15T10:23:47.001Z\x1b[0m \x1b[35mDEBUG\x1b[0m [grpc] Request received: GetUser(id={{userId}})', + '\x1b[90m2024-01-15T10:23:47.234Z\x1b[0m \x1b[31mERROR\x1b[0m [auth] Token validation failed: expired', + '\x1b[90m2024-01-15T10:23:47.567Z\x1b[0m \x1b[33mWARN\x1b[0m [rate-limit] IP {{ip}} approaching rate limit', + '\x1b[90m2024-01-15T10:23:47.890Z\x1b[0m \x1b[36mINFO\x1b[0m [websocket] Client connected: session={{session}}', + // Multi-line log entry like stack traces + '\x1b[31mError: Connection refused\x1b[0m\n at TcpConnection.connect (/app/node_modules/pg/lib/connection.js:12:15)\n at Pool.connect (/app/node_modules/pg/lib/pool.js:45:23)\n at async DatabaseService.query (/app/src/db/service.ts:89:12)', + ]; + const generateRandomLog = () => { const levels: Array<'debug' | 'info' | 'warn' | 'error' | 'success'> = ['debug', 'info', 'warn', 'error', 'success']; - const weights = [0.2, 0.5, 0.15, 0.1, 0.05]; // Weighted probability - + const weights = [0.2, 0.5, 0.15, 0.1, 0.05]; + const random = Math.random(); let cumulative = 0; let level: typeof levels[0] = 'info'; - + for (let i = 0; i < weights.length; i++) { cumulative += weights[i]; if (random < cumulative) { @@ -68,7 +86,7 @@ export const demoFunc = () => { const source = serverSources[Math.floor(Math.random() * serverSources.length)]; const templates = logTemplates[level]; const template = templates[Math.floor(Math.random() * templates.length)]; - + // Replace placeholders with random values const message = template .replace('{{module}}', ['express', 'mongoose', 'redis', 'socket.io'][Math.floor(Math.random() * 4)]) @@ -92,17 +110,30 @@ export const demoFunc = () => { .replace('{{port}}', String(3000 + Math.floor(Math.random() * 10))) .replace('{{size}}', String(Math.floor(Math.random() * 500) + 100)); - logElement.addLog(level, message, source); + structuredLog.addLog(level, message, source); }; - const startSimulation = () => { - if (!intervalId) { - // Generate logs at random intervals between 500ms and 2500ms + const generateDockerLog = () => { + const template = dockerLogTemplates[Math.floor(Math.random() * dockerLogTemplates.length)]; + const now = new Date().toISOString(); + + const logLine = template + .replace(/2024-01-15T10:23:\d{2}\.\d{3}Z/g, now) + .replace('{{jobId}}', String(Math.floor(Math.random() * 10000))) + .replace('{{userId}}', String(Math.floor(Math.random() * 10000))) + .replace('{{ip}}', `192.168.1.${Math.floor(Math.random() * 255)}`) + .replace('{{session}}', Math.random().toString(36).substring(2, 11)); + + rawLog.writelnRaw(logLine); + }; + + const startStructuredSimulation = () => { + if (!structuredIntervalId) { const scheduleNext = () => { generateRandomLog(); const nextDelay = Math.random() * 2000 + 500; - intervalId = window.setTimeout(() => { - if (intervalId) { + structuredIntervalId = window.setTimeout(() => { + if (structuredIntervalId) { scheduleNext(); } }, nextDelay); @@ -111,10 +142,32 @@ export const demoFunc = () => { } }; - const stopSimulation = () => { - if (intervalId) { - window.clearTimeout(intervalId); - intervalId = null; + const stopStructuredSimulation = () => { + if (structuredIntervalId) { + window.clearTimeout(structuredIntervalId); + structuredIntervalId = null; + } + }; + + const startRawSimulation = () => { + if (!rawIntervalId) { + const scheduleNext = () => { + generateDockerLog(); + const nextDelay = Math.random() * 1000 + 200; + rawIntervalId = window.setTimeout(() => { + if (rawIntervalId) { + scheduleNext(); + } + }, nextDelay); + }; + scheduleNext(); + } + }; + + const stopRawSimulation = () => { + if (rawIntervalId) { + window.clearTimeout(rawIntervalId); + rawIntervalId = null; } }; @@ -122,49 +175,103 @@ export const demoFunc = () => { const buttons = elementArg.querySelectorAll('dees-button'); buttons.forEach(button => { const text = button.textContent?.trim(); - if (text === 'Add Single Log') { - button.addEventListener('click', () => generateRandomLog()); - } else if (text === 'Start Simulation') { - button.addEventListener('click', () => startSimulation()); - } else if (text === 'Stop Simulation') { - button.addEventListener('click', () => stopSimulation()); + switch (text) { + case 'Add Structured Log': + button.addEventListener('click', () => generateRandomLog()); + break; + case 'Start Structured': + button.addEventListener('click', () => startStructuredSimulation()); + break; + case 'Stop Structured': + button.addEventListener('click', () => stopStructuredSimulation()); + break; + case 'Add Docker Log': + button.addEventListener('click', () => generateDockerLog()); + break; + case 'Start Docker': + button.addEventListener('click', () => startRawSimulation()); + break; + case 'Stop Docker': + button.addEventListener('click', () => stopRawSimulation()); + break; } }); }}> + ${css` + .demoBox { + position: relative; + background: ${cssManager.bdTheme('hsl(0 0% 95%)', 'hsl(0 0% 5%)')}; + height: 100%; + width: 100%; + padding: 40px; + box-sizing: border-box; + display: flex; + flex-direction: column; + gap: 24px; + } + .section { + display: flex; + flex-direction: column; + gap: 12px; + } + .section-title { + color: ${cssManager.bdTheme('hsl(0 0% 9%)', 'hsl(0 0% 95%)')}; + font-size: 14px; + font-weight: 600; + font-family: 'Geist Sans', sans-serif; + } + .section-description { + color: ${cssManager.bdTheme('hsl(215.4 16.3% 46.9%)', 'hsl(215 20.2% 65.1%)')}; + font-size: 12px; + font-family: 'Geist Sans', sans-serif; + } + .controls { + display: flex; + gap: 10px; + flex-wrap: wrap; + } + `} +

-
- Add Single Log - Start Simulation - Stop Simulation + +
+
Structured Logs (ILogEntry)
+
+ Structured log entries with level, message, and source. Supports search and keyword highlighting. +
+
+ Add Structured Log + Start Structured + Stop Structured +
+ +
+ + +
+
Raw Logs (Docker/Container Style)
+
+ Raw log output with ANSI escape sequences for real Docker/container logs. +
+
+ Add Docker Log + Start Docker + Stop Docker +
+
-
Simulating realistic server logs with various levels and sources
-
`; -}; \ No newline at end of file +}; diff --git a/ts_web/elements/00group-chart/dees-chart-log/dees-chart-log.ts b/ts_web/elements/00group-chart/dees-chart-log/dees-chart-log.ts index b8a5f1a..8d85bc0 100644 --- a/ts_web/elements/00group-chart/dees-chart-log/dees-chart-log.ts +++ b/ts_web/elements/00group-chart/dees-chart-log/dees-chart-log.ts @@ -5,13 +5,18 @@ import { customElement, html, property, + state, type TemplateResult, } from '@design.estate/dees-element'; import * as domtools from '@design.estate/dees-domtools'; import { demoFunc } from './dees-chart-log.demo.js'; import { themeDefaultStyles } from '../../00theme.js'; +import { DeesServiceLibLoader, type IXtermSearchAddon, CDN_BASE, CDN_VERSIONS } from '../../../services/index.js'; +// Type imports (no runtime overhead) +import type { Terminal } from 'xterm'; +import type { FitAddon } from 'xterm-addon-fit'; declare global { interface HTMLElementTagNameMap { @@ -26,6 +31,16 @@ export interface ILogEntry { source?: string; } +export interface ILogMetrics { + debug: number; + info: number; + warn: number; + error: number; + success: number; + total: number; + rate: number; // logs per second (rolling average) +} + @customElement('dees-chart-log') export class DeesChartLog extends DeesElement { public static demo = demoFunc; @@ -34,6 +49,9 @@ export class DeesChartLog extends DeesElement { @property() accessor label: string = 'Server Logs'; + @property({ type: String }) + accessor mode: 'structured' | 'raw' = 'structured'; + @property({ type: Array }) accessor logEntries: ILogEntry[] = []; @@ -41,27 +59,54 @@ export class DeesChartLog extends DeesElement { accessor autoScroll: boolean = true; @property({ type: Number }) - accessor maxEntries: number = 1000; + accessor maxEntries: number = 10000; - private logContainer: HTMLDivElement; + @property({ type: Array }) + accessor highlightKeywords: string[] = []; - constructor() { - super(); - domtools.elementBasic.setup(); - - } + @property({ type: Boolean }) + accessor showMetrics: boolean = true; + + @state() + accessor searchQuery: string = ''; + + @state() + accessor filterMode: boolean = false; + + @state() + accessor metrics: ILogMetrics = { debug: 0, info: 0, warn: 0, error: 0, success: 0, total: 0, rate: 0 }; + + @state() + accessor terminalReady: boolean = false; + + // Buffer of all log entries for filter mode + private logBuffer: ILogEntry[] = []; + + // Track trailing hidden entries count for live updates in filter mode + private trailingHiddenCount: number = 0; + + // xterm instances + private terminal: Terminal | null = null; + private fitAddon: FitAddon | null = null; + private searchAddon: IXtermSearchAddon | null = null; + private resizeObserver: ResizeObserver | null = null; + private terminalThemeSubscription: any = null; + private domtoolsInstance: any = null; + + // Rate calculation + private rateBuffer: number[] = []; + private rateInterval: ReturnType | null = null; public static styles = [ themeDefaultStyles, cssManager.defaultStyles, css` - /* TODO: Migrate hardcoded values to --dees-* CSS variables */ :host { - font-family: 'SF Mono', 'Monaco', 'Consolas', 'Liberation Mono', 'Courier New', monospace; + display: block; + font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; color: ${cssManager.bdTheme('hsl(0 0% 3.9%)', 'hsl(0 0% 98%)')}; - font-size: 12px; - line-height: 1.5; } + .mainbox { position: relative; width: 100%; @@ -76,255 +121,805 @@ export class DeesChartLog extends DeesElement { .header { background: ${cssManager.bdTheme('hsl(0 0% 97%)', 'hsl(0 0% 7%)')}; - padding: 12px 16px; + padding: 8px 12px; border-bottom: 1px solid ${cssManager.bdTheme('hsl(0 0% 89.8%)', 'hsl(0 0% 14.9%)')}; display: flex; - justify-content: space-between; align-items: center; + gap: 12px; flex-shrink: 0; + flex-wrap: wrap; } .title { font-weight: 500; font-size: 14px; color: ${cssManager.bdTheme('hsl(0 0% 9%)', 'hsl(0 0% 95%)')}; - font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; + white-space: nowrap; + } + + .search-box { + display: flex; + align-items: center; + gap: 4px; + flex: 1; + min-width: 150px; + max-width: 300px; + } + + .search-box input { + flex: 1; + padding: 4px 8px; + font-size: 12px; + border: 1px solid ${cssManager.bdTheme('hsl(0 0% 89.8%)', 'hsl(0 0% 14.9%)')}; + border-radius: 4px; + background: ${cssManager.bdTheme('hsl(0 0% 100%)', 'hsl(0 0% 9%)')}; + color: ${cssManager.bdTheme('hsl(0 0% 9%)', 'hsl(0 0% 95%)')}; + outline: none; + } + + .search-box input:focus { + border-color: ${cssManager.bdTheme('hsl(222.2 47.4% 51.2%)', 'hsl(217.2 91.2% 59.8%)')}; + } + + .search-box input::placeholder { + color: ${cssManager.bdTheme('hsl(0 0% 63.9%)', 'hsl(0 0% 45.1%)')}; + } + + .search-nav { + display: flex; + gap: 2px; + } + + .search-nav button { + padding: 4px 6px; + font-size: 11px; + background: ${cssManager.bdTheme('hsl(0 0% 100%)', 'hsl(0 0% 14.9%)')}; + border: 1px solid ${cssManager.bdTheme('hsl(0 0% 89.8%)', 'hsl(0 0% 14.9%)')}; + border-radius: 3px; + color: ${cssManager.bdTheme('hsl(0 0% 45.1%)', 'hsl(0 0% 63.9%)')}; + cursor: pointer; + line-height: 1; + } + + .search-nav button:hover { + background: ${cssManager.bdTheme('hsl(0 0% 95.1%)', 'hsl(0 0% 20%)')}; + color: ${cssManager.bdTheme('hsl(0 0% 15%)', 'hsl(0 0% 93.9%)')}; + } + + .filter-toggle { + padding: 4px 8px; + font-size: 11px; + font-weight: 500; + background: ${cssManager.bdTheme('hsl(0 0% 100%)', 'hsl(0 0% 14.9%)')}; + border: 1px solid ${cssManager.bdTheme('hsl(0 0% 89.8%)', 'hsl(0 0% 14.9%)')}; + border-radius: 4px; + color: ${cssManager.bdTheme('hsl(0 0% 45.1%)', 'hsl(0 0% 63.9%)')}; + cursor: pointer; + transition: all 0.15s; + white-space: nowrap; + } + + .filter-toggle:hover { + background: ${cssManager.bdTheme('hsl(0 0% 95.1%)', 'hsl(0 0% 20%)')}; + color: ${cssManager.bdTheme('hsl(0 0% 15%)', 'hsl(0 0% 93.9%)')}; + } + + .filter-toggle.active { + background: ${cssManager.bdTheme('hsl(45 93% 47%)', 'hsl(45 93% 47%)')}; + border-color: ${cssManager.bdTheme('hsl(45 93% 47%)', 'hsl(45 93% 47%)')}; + color: hsl(0 0% 9%); } .controls { display: flex; - gap: 8px; + gap: 6px; + margin-left: auto; } .control-button { background: ${cssManager.bdTheme('hsl(0 0% 100%)', 'hsl(0 0% 14.9%)')}; border: 1px solid ${cssManager.bdTheme('hsl(0 0% 89.8%)', 'hsl(0 0% 14.9%)')}; - border-radius: 6px; - padding: 6px 12px; + border-radius: 4px; + padding: 4px 10px; color: ${cssManager.bdTheme('hsl(0 0% 45.1%)', 'hsl(0 0% 63.9%)')}; cursor: pointer; font-size: 12px; font-weight: 500; transition: all 0.15s; - font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; } .control-button:hover { - background: ${cssManager.bdTheme('hsl(0 0% 95.1%)', 'hsl(0 0% 14.9%)')}; - border-color: ${cssManager.bdTheme('hsl(0 0% 79.8%)', 'hsl(0 0% 20.9%)')}; + background: ${cssManager.bdTheme('hsl(0 0% 95.1%)', 'hsl(0 0% 20%)')}; + border-color: ${cssManager.bdTheme('hsl(0 0% 79.8%)', 'hsl(0 0% 25%)')}; color: ${cssManager.bdTheme('hsl(0 0% 15%)', 'hsl(0 0% 93.9%)')}; } .control-button.active { - background: ${cssManager.bdTheme('hsl(0 0% 9%)', 'hsl(0 0% 93.9%)')}; - color: ${cssManager.bdTheme('hsl(0 0% 98%)', 'hsl(0 0% 3.9%)')}; + background: ${cssManager.bdTheme('hsl(222.2 47.4% 51.2%)', 'hsl(217.2 91.2% 59.8%)')}; + border-color: ${cssManager.bdTheme('hsl(222.2 47.4% 51.2%)', 'hsl(217.2 91.2% 59.8%)')}; + color: white; } - .logContainer { + .terminal-container { flex: 1; - overflow-y: auto; - overflow-x: hidden; - padding: 16px; - font-size: 12px; + overflow: hidden; + padding: 8px; + background: ${cssManager.bdTheme('hsl(0 0% 100%)', 'hsl(0 0% 3.9%)')}; } - .logEntry { - margin-bottom: 4px; - display: flex; - white-space: pre-wrap; - word-break: break-all; - font-variant-numeric: tabular-nums; + .terminal-container .xterm { + height: 100%; } - .timestamp { - color: ${cssManager.bdTheme('hsl(0 0% 63.9%)', 'hsl(0 0% 45.1%)')}; - margin-right: 12px; - flex-shrink: 0; - } - - .level { - margin-right: 8px; - padding: 0 6px; - border-radius: 3px; - font-weight: 600; - text-transform: uppercase; - font-size: 10px; - flex-shrink: 0; - } - - .level.debug { - color: ${cssManager.bdTheme('hsl(0 0% 45.1%)', 'hsl(0 0% 63.9%)')}; - background: ${cssManager.bdTheme('hsl(0 0% 45.1% / 0.1)', 'hsl(0 0% 63.9% / 0.1)')}; - } - - .level.info { - color: ${cssManager.bdTheme('hsl(222.2 47.4% 51.2%)', 'hsl(217.2 91.2% 59.8%)')}; - background: ${cssManager.bdTheme('hsl(222.2 47.4% 51.2% / 0.1)', 'hsl(217.2 91.2% 59.8% / 0.1)')}; - } - - .level.warn { - color: ${cssManager.bdTheme('hsl(25 95% 53%)', 'hsl(25 95% 63%)')}; - background: ${cssManager.bdTheme('hsl(25 95% 53% / 0.1)', 'hsl(25 95% 63% / 0.1)')}; - } - - .level.error { - color: ${cssManager.bdTheme('hsl(0 84.2% 60.2%)', 'hsl(0 72.2% 50.6%)')}; - background: ${cssManager.bdTheme('hsl(0 84.2% 60.2% / 0.1)', 'hsl(0 72.2% 50.6% / 0.1)')}; - } - - .level.success { - color: ${cssManager.bdTheme('hsl(142.1 76.2% 36.3%)', 'hsl(142.1 70.6% 45.3%)')}; - background: ${cssManager.bdTheme('hsl(142.1 76.2% 36.3% / 0.1)', 'hsl(142.1 70.6% 45.3% / 0.1)')}; - } - - .source { - color: ${cssManager.bdTheme('hsl(0 0% 45.1%)', 'hsl(0 0% 63.9%)')}; - margin-right: 8px; - flex-shrink: 0; - } - - .message { - color: ${cssManager.bdTheme('hsl(0 0% 15%)', 'hsl(0 0% 90%)')}; - flex: 1; - } - - .empty-state { + .loading-state { display: flex; align-items: center; justify-content: center; height: 100%; color: ${cssManager.bdTheme('hsl(0 0% 45.1%)', 'hsl(0 0% 63.9%)')}; font-style: italic; + font-size: 13px; } - /* Custom scrollbar */ - .logContainer::-webkit-scrollbar { + .metrics-bar { + background: ${cssManager.bdTheme('hsl(0 0% 97%)', 'hsl(0 0% 7%)')}; + border-top: 1px solid ${cssManager.bdTheme('hsl(0 0% 89.8%)', 'hsl(0 0% 14.9%)')}; + padding: 6px 12px; + display: flex; + gap: 16px; + font-size: 11px; + font-weight: 500; + flex-shrink: 0; + } + + .metric { + display: flex; + align-items: center; + gap: 4px; + } + + .metric::before { + content: ''; width: 8px; + height: 8px; + border-radius: 50%; } - .logContainer::-webkit-scrollbar-track { - background: ${cssManager.bdTheme('hsl(0 0% 95%)', 'hsl(0 0% 10%)')}; + .metric.error::before { + background: hsl(0 84.2% 60.2%); } - .logContainer::-webkit-scrollbar-thumb { - background: ${cssManager.bdTheme('hsl(0 0% 70%)', 'hsl(0 0% 30%)')}; - border-radius: 4px; + .metric.warn::before { + background: hsl(25 95% 53%); } - .logContainer::-webkit-scrollbar-thumb:hover { - background: ${cssManager.bdTheme('hsl(0 0% 60%)', 'hsl(0 0% 40%)')}; + .metric.info::before { + background: hsl(222.2 47.4% 51.2%); + } + + .metric.success::before { + background: hsl(142.1 76.2% 36.3%); + } + + .metric.debug::before { + background: hsl(0 0% 63.9%); + } + + .metric.rate { + margin-left: auto; + color: ${cssManager.bdTheme('hsl(0 0% 45.1%)', 'hsl(0 0% 63.9%)')}; + } + + .metric.rate::before { + display: none; } `, ]; + constructor() { + super(); + domtools.elementBasic.setup(); + } + public render(): TemplateResult { return html`
${this.label}
+
- -
-
- ${this.logEntries.length === 0 - ? html`
No logs to display
` - : this.logEntries.map(entry => this.renderLogEntry(entry)) - } + +
+ ${!this.terminalReady + ? html`
Loading terminal...
` + : ''}
-
- `; - } - private renderLogEntry(entry: ILogEntry): TemplateResult { - const timestamp = new Date(entry.timestamp).toLocaleTimeString('en-US', { - hour12: false, - hour: '2-digit', - minute: '2-digit', - second: '2-digit', - fractionalSecondDigits: 3 - }); - - return html` -
- ${timestamp} - ${entry.level} - ${entry.source ? html`[${entry.source}]` : ''} - ${entry.message} + ${this.showMetrics + ? html` +
+ errors: ${this.metrics.error} + warns: ${this.metrics.warn} + info: ${this.metrics.info} + success: ${this.metrics.success} + debug: ${this.metrics.debug} + ${this.metrics.rate.toFixed(1)} logs/sec +
+ ` + : ''}
`; } public async firstUpdated() { - await this.domtoolsPromise; - this.logContainer = this.shadowRoot.querySelector('.logContainer'); + this.domtoolsInstance = await this.domtoolsPromise; + await this.initializeTerminal(); - // Initialize with demo server logs - const demoLogs: ILogEntry[] = [ - { timestamp: new Date().toISOString(), level: 'info', message: 'Server started on port 3000', source: 'Server' }, - { timestamp: new Date().toISOString(), level: 'debug', message: 'Loading configuration from /etc/app/config.json', source: 'Config' }, - { timestamp: new Date().toISOString(), level: 'info', message: 'Connected to MongoDB at mongodb://localhost:27017', source: 'Database' }, - { timestamp: new Date().toISOString(), level: 'success', message: 'Database connection established successfully', source: 'Database' }, - { timestamp: new Date().toISOString(), level: 'warn', message: 'No SSL certificate found, using self-signed certificate', source: 'Security' }, - { timestamp: new Date().toISOString(), level: 'info', message: 'API routes initialized: GET /api/users, POST /api/users, DELETE /api/users/:id', source: 'Router' }, - { timestamp: new Date().toISOString(), level: 'debug', message: 'Middleware stack: cors, bodyParser, authentication, errorHandler', source: 'Middleware' }, - { timestamp: new Date().toISOString(), level: 'info', message: 'WebSocket server listening on ws://localhost:3001', source: 'WebSocket' }, - ]; - - this.logEntries = demoLogs; - this.scrollToBottom(); - } - - public async updateLog(entries?: ILogEntry[]) { - if (entries) { - // Add new entries - this.logEntries = [...this.logEntries, ...entries]; - - // Trim if exceeds max entries - if (this.logEntries.length > this.maxEntries) { - this.logEntries = this.logEntries.slice(-this.maxEntries); - } - - // Trigger re-render - this.requestUpdate(); - - // Auto-scroll if enabled - await this.updateComplete; - if (this.autoScroll) { - this.scrollToBottom(); + // Process any initial log entries + if (this.logEntries.length > 0) { + for (const entry of this.logEntries) { + this.writeLogEntry(entry); } } } - public clearLogs() { - this.logEntries = []; - this.requestUpdate(); + private async initializeTerminal() { + const libLoader = DeesServiceLibLoader.getInstance(); + + const [xtermBundle, fitBundle, searchBundle] = await Promise.all([ + libLoader.loadXterm(), + libLoader.loadXtermFitAddon(), + libLoader.loadXtermSearchAddon(), + ]); + + // Inject xterm CSS into shadow root (needed because shadow DOM doesn't inherit from document.head) + await this.injectXtermStylesIntoShadow(); + + this.terminal = new xtermBundle.Terminal({ + cursorBlink: false, + disableStdin: true, + fontSize: 12, + fontFamily: "'SF Mono', 'Monaco', 'Consolas', 'Liberation Mono', 'Courier New', monospace", + theme: this.getTerminalTheme(), + scrollback: this.maxEntries, + convertEol: true, + }); + + this.fitAddon = new fitBundle.FitAddon(); + this.searchAddon = new searchBundle.SearchAddon(); + + this.terminal.loadAddon(this.fitAddon); + this.terminal.loadAddon(this.searchAddon); + + const container = this.shadowRoot!.querySelector('.terminal-container') as HTMLElement; + this.terminal.open(container); + + // Fit after a small delay to ensure proper sizing + await new Promise((resolve) => requestAnimationFrame(resolve)); + this.fitAddon.fit(); + + // Set up resize observer + this.resizeObserver = new ResizeObserver(() => { + this.fitAddon?.fit(); + }); + this.resizeObserver.observe(container); + + // Subscribe to theme changes + this.terminalThemeSubscription = this.domtoolsInstance.themeManager.themeObservable.subscribe(() => { + if (this.terminal) { + this.terminal.options.theme = this.getTerminalTheme(); + } + }); + + // Start rate calculation interval + this.rateInterval = setInterval(() => this.calculateRate(), 1000); + + this.terminalReady = true; } - private scrollToBottom() { - if (this.logContainer) { - this.logContainer.scrollTop = this.logContainer.scrollHeight; + private getTerminalTheme() { + const isDark = this.domtoolsInstance?.themeManager?.isDarkMode ?? true; + return isDark + ? { + background: '#0a0a0a', + foreground: '#e0e0e0', + cursor: '#e0e0e0', + selectionBackground: '#404040', + black: '#000000', + red: '#ff5555', + green: '#50fa7b', + yellow: '#f1fa8c', + blue: '#6272a4', + magenta: '#ff79c6', + cyan: '#8be9fd', + white: '#f8f8f2', + brightBlack: '#6272a4', + brightRed: '#ff6e6e', + brightGreen: '#69ff94', + brightYellow: '#ffffa5', + brightBlue: '#d6acff', + brightMagenta: '#ff92df', + brightCyan: '#a4ffff', + brightWhite: '#ffffff', + } + : { + background: '#ffffff', + foreground: '#333333', + cursor: '#333333', + selectionBackground: '#add6ff', + black: '#000000', + red: '#cd3131', + green: '#00bc00', + yellow: '#949800', + blue: '#0451a5', + magenta: '#bc05bc', + cyan: '#0598bc', + white: '#555555', + brightBlack: '#666666', + brightRed: '#cd3131', + brightGreen: '#14ce14', + brightYellow: '#b5ba00', + brightBlue: '#0451a5', + brightMagenta: '#bc05bc', + brightCyan: '#0598bc', + brightWhite: '#a5a5a5', + }; + } + + /** + * Inject xterm CSS styles into shadow root + * This is needed because shadow DOM doesn't inherit styles from document.head + */ + private async injectXtermStylesIntoShadow(): Promise { + const styleId = 'xterm-shadow-styles'; + if (this.shadowRoot!.getElementById(styleId)) { + return; // Already injected } + + const cssUrl = `${CDN_BASE}/xterm@${CDN_VERSIONS.xterm}/css/xterm.css`; + const response = await fetch(cssUrl); + const cssText = await response.text(); + + const style = document.createElement('style'); + style.id = styleId; + style.textContent = cssText; + this.shadowRoot!.appendChild(style); } + // ===================== + // Structured Log Methods + // ===================== + + /** + * Add a single structured log entry + */ public addLog(level: ILogEntry['level'], message: string, source?: string) { - const newEntry: ILogEntry = { + const entry: ILogEntry = { timestamp: new Date().toISOString(), level, message, - source + source, }; - this.updateLog([newEntry]); + + // Add to buffer + this.logBuffer.push(entry); + if (this.logBuffer.length > this.maxEntries) { + this.logBuffer.shift(); + } + + // Handle display based on filter mode + if (!this.filterMode || !this.searchQuery) { + // No filtering - show all entries + this.writeLogEntry(entry); + } else if (this.entryMatchesFilter(entry)) { + // Entry matches filter - reset trailing count and write entry + this.trailingHiddenCount = 0; + this.writeLogEntry(entry); + } else { + // Entry doesn't match - update trailing placeholder + this.updateTrailingPlaceholder(); + } + + this.updateMetrics(entry.level); + } + + /** + * Add multiple structured log entries + */ + public updateLog(entries?: ILogEntry[]) { + if (!entries) return; + for (const entry of entries) { + // Add to buffer + this.logBuffer.push(entry); + if (this.logBuffer.length > this.maxEntries) { + this.logBuffer.shift(); + } + + // Handle display based on filter mode + if (!this.filterMode || !this.searchQuery) { + // No filtering - show all entries + this.writeLogEntry(entry); + } else if (this.entryMatchesFilter(entry)) { + // Entry matches filter - reset trailing count and write entry + this.trailingHiddenCount = 0; + this.writeLogEntry(entry); + } else { + // Entry doesn't match - update trailing placeholder + this.updateTrailingPlaceholder(); + } + + this.updateMetrics(entry.level); + } + } + + /** + * Update the trailing hidden placeholder in real-time + * Clears the last line if a placeholder already exists, then writes updated count + */ + private updateTrailingPlaceholder() { + if (!this.terminal) return; + + if (this.trailingHiddenCount > 0) { + // Clear the previous placeholder line (move up, clear line, move to start) + this.terminal.write('\x1b[1A\x1b[2K\r'); + } + + this.trailingHiddenCount++; + this.writeHiddenPlaceholder(this.trailingHiddenCount); + + if (this.autoScroll) { + this.terminal.scrollToBottom(); + } + } + + /** + * Check if a log entry matches the current filter + */ + private entryMatchesFilter(entry: ILogEntry): boolean { + if (!this.searchQuery) return true; + const query = this.searchQuery.toLowerCase(); + return ( + entry.message.toLowerCase().includes(query) || + entry.level.toLowerCase().includes(query) || + (entry.source?.toLowerCase().includes(query) ?? false) + ); + } + + private writeLogEntry(entry: ILogEntry) { + if (!this.terminal) return; + + const formatted = this.formatLogEntry(entry); + this.terminal.writeln(formatted); + + if (this.autoScroll) { + this.terminal.scrollToBottom(); + } + } + + private formatLogEntry(entry: ILogEntry): string { + const timestamp = this.formatTimestamp(entry.timestamp); + const levelColors: Record = { + debug: '\x1b[90m', // Gray + info: '\x1b[36m', // Cyan + warn: '\x1b[33m', // Yellow + error: '\x1b[31m', // Red + success: '\x1b[32m', // Green + }; + const reset = '\x1b[0m'; + const dim = '\x1b[2m'; + + const levelStr = `${levelColors[entry.level]}[${entry.level.toUpperCase().padEnd(7)}]${reset}`; + const sourceStr = entry.source ? `${dim}[${entry.source}]${reset} ` : ''; + const messageStr = this.applyHighlights(entry.message); + + return `${dim}${timestamp}${reset} ${levelStr} ${sourceStr}${messageStr}`; + } + + private formatTimestamp(isoString: string): string { + const date = new Date(isoString); + return date.toLocaleTimeString('en-US', { + hour12: false, + hour: '2-digit', + minute: '2-digit', + second: '2-digit', + fractionalSecondDigits: 3, + } as Intl.DateTimeFormatOptions); + } + + private applyHighlights(text: string): string { + // Collect all keywords to highlight + const keywords = [...this.highlightKeywords]; + + // In filter mode, also highlight the search query + if (this.filterMode && this.searchQuery) { + keywords.push(this.searchQuery); + } + + if (keywords.length === 0) return text; + + let result = text; + for (const keyword of keywords) { + // Escape regex special characters + const escaped = keyword.replace(/[.*+?^${}()|[\]\\]/g, '\\$&'); + const regex = new RegExp(`(${escaped})`, 'gi'); + // Yellow background, black text for highlights + result = result.replace(regex, '\x1b[43m\x1b[30m$1\x1b[0m'); + } + return result; + } + + // ===================== + // Raw Log Methods + // ===================== + + /** + * Write raw data to the terminal (for Docker logs, etc.) + */ + public writeRaw(data: string) { + if (!this.terminal) return; + this.terminal.write(data); + this.recordLogEvent(); + + if (this.autoScroll) { + this.terminal.scrollToBottom(); + } + } + + /** + * Write a raw line to the terminal + */ + public writelnRaw(line: string) { + if (!this.terminal) return; + this.terminal.writeln(line); + this.recordLogEvent(); + + if (this.autoScroll) { + this.terminal.scrollToBottom(); + } + } + + // ===================== + // Search Methods + // ===================== + + private handleSearchInput(e: InputEvent) { + const input = e.target as HTMLInputElement; + const newQuery = input.value; + const queryChanged = this.searchQuery !== newQuery; + this.searchQuery = newQuery; + + if (this.filterMode && queryChanged) { + // Re-render with filtered logs + this.reRenderFilteredLogs(); + } else if (this.searchQuery) { + // Just highlight/search in current view + this.searchAddon?.findNext(this.searchQuery); + } + } + + private handleSearchKeydown(e: KeyboardEvent) { + if (e.key === 'Enter') { + if (e.shiftKey) { + this.searchPrevious(); + } else { + this.searchNext(); + } + } else if (e.key === 'Escape') { + this.searchQuery = ''; + (e.target as HTMLInputElement).value = ''; + } + } + + /** + * Search for a query in the terminal + */ + public search(query: string): void { + this.searchQuery = query; + this.searchAddon?.findNext(query); + } + + /** + * Find next search match + */ + public searchNext(): void { + if (this.searchQuery) { + this.searchAddon?.findNext(this.searchQuery); + } + } + + /** + * Find previous search match + */ + public searchPrevious(): void { + if (this.searchQuery) { + this.searchAddon?.findPrevious(this.searchQuery); + } + } + + // ===================== + // Control Methods + // ===================== + + private toggleAutoScroll() { + this.autoScroll = !this.autoScroll; + if (this.autoScroll && this.terminal) { + this.terminal.scrollToBottom(); + } + } + + /** + * Toggle between filter mode and highlight mode + */ + private toggleFilterMode() { + this.filterMode = !this.filterMode; + this.reRenderFilteredLogs(); + } + + /** + * Re-render logs based on current filter state + * In filter mode: show matching logs with placeholders for hidden entries + * In highlight mode: show all logs + */ + private reRenderFilteredLogs() { + if (!this.terminal) return; + + // Clear terminal and re-render + this.terminal.clear(); + + // Reset trailing count for fresh render + this.trailingHiddenCount = 0; + + if (!this.filterMode || !this.searchQuery) { + // No filtering - show all entries + for (const entry of this.logBuffer) { + const formatted = this.formatLogEntry(entry); + this.terminal.writeln(formatted); + } + } else { + // Filter mode with placeholders for hidden entries + let hiddenCount = 0; + + for (const entry of this.logBuffer) { + if (this.entryMatchesFilter(entry)) { + // Output placeholder for hidden entries if any + if (hiddenCount > 0) { + this.writeHiddenPlaceholder(hiddenCount); + hiddenCount = 0; + } + // Output the matching entry + const formatted = this.formatLogEntry(entry); + this.terminal.writeln(formatted); + } else { + hiddenCount++; + } + } + + // Handle trailing hidden entries + if (hiddenCount > 0) { + this.writeHiddenPlaceholder(hiddenCount); + // Store trailing count for live updates + this.trailingHiddenCount = hiddenCount; + } + } + + if (this.autoScroll) { + this.terminal.scrollToBottom(); + } + } + + /** + * Write a placeholder line showing how many log entries are hidden by filter + */ + private writeHiddenPlaceholder(count: number) { + const dim = '\x1b[2m'; + const reset = '\x1b[0m'; + const text = count === 1 + ? `[1 log line hidden by filter ...]` + : `[${count} log lines hidden by filter ...]`; + this.terminal?.writeln(`${dim}${text}${reset}`); + } + + /** + * Clear all logs and reset metrics + */ + public clearLogs() { + this.terminal?.clear(); + this.logBuffer = []; + this.trailingHiddenCount = 0; + this.resetMetrics(); + } + + /** + * Scroll to the bottom of the log + */ + public scrollToBottom() { + this.terminal?.scrollToBottom(); + } + + // ===================== + // Metrics Methods + // ===================== + + private updateMetrics(level: ILogEntry['level']) { + this.metrics = { + ...this.metrics, + [level]: this.metrics[level] + 1, + total: this.metrics.total + 1, + }; + this.recordLogEvent(); + } + + private recordLogEvent() { + this.rateBuffer.push(Date.now()); + } + + private calculateRate() { + const now = Date.now(); + // Keep only events from the last 10 seconds + this.rateBuffer = this.rateBuffer.filter((t) => now - t < 10000); + const rate = this.rateBuffer.length / 10; + + if (rate !== this.metrics.rate) { + this.metrics = { ...this.metrics, rate }; + } + } + + private resetMetrics() { + this.metrics = { debug: 0, info: 0, warn: 0, error: 0, success: 0, total: 0, rate: 0 }; + this.rateBuffer = []; + } + + // ===================== + // Lifecycle + // ===================== + + async disconnectedCallback() { + await super.disconnectedCallback(); + + if (this.resizeObserver) { + this.resizeObserver.disconnect(); + } + + if (this.terminalThemeSubscription) { + this.terminalThemeSubscription.unsubscribe(); + } + + if (this.rateInterval) { + clearInterval(this.rateInterval); + } + + if (this.terminal) { + this.terminal.dispose(); + } } } diff --git a/ts_web/services/DeesServiceLibLoader.ts b/ts_web/services/DeesServiceLibLoader.ts index f16e498..94c1295 100644 --- a/ts_web/services/DeesServiceLibLoader.ts +++ b/ts_web/services/DeesServiceLibLoader.ts @@ -25,6 +25,24 @@ export interface IXtermFitAddonBundle { FitAddon: typeof FitAddon; } +/** + * Bundle type for xterm-addon-search + * SearchAddon is loaded from CDN, so we use a minimal interface + */ +export interface IXtermSearchAddonBundle { + SearchAddon: new () => IXtermSearchAddon; +} + +/** + * Minimal interface for xterm SearchAddon + */ +export interface IXtermSearchAddon { + activate(terminal: Terminal): void; + dispose(): void; + findNext(term: string, searchOptions?: { regex?: boolean; wholeWord?: boolean; caseSensitive?: boolean; incremental?: boolean }): boolean; + findPrevious(term: string, searchOptions?: { regex?: boolean; wholeWord?: boolean; caseSensitive?: boolean; incremental?: boolean }): boolean; +} + /** * Bundle type for Tiptap editor and extensions */ @@ -56,6 +74,7 @@ export class DeesServiceLibLoader { // Cached library references private xtermLib: IXtermBundle | null = null; private xtermFitAddonLib: IXtermFitAddonBundle | null = null; + private xtermSearchAddonLib: IXtermSearchAddonBundle | null = null; private highlightJsLib: HLJSApi | null = null; private apexChartsLib: typeof ApexChartsType | null = null; private tiptapLib: ITiptapBundle | null = null; @@ -63,6 +82,7 @@ export class DeesServiceLibLoader { // Loading promises to prevent duplicate concurrent loads private xtermLoadingPromise: Promise | null = null; private xtermFitAddonLoadingPromise: Promise | null = null; + private xtermSearchAddonLoadingPromise: Promise | null = null; private highlightJsLoadingPromise: Promise | null = null; private apexChartsLoadingPromise: Promise | null = null; private tiptapLoadingPromise: Promise | null = null; @@ -134,6 +154,32 @@ export class DeesServiceLibLoader { return this.xtermFitAddonLoadingPromise; } + /** + * Load xterm-addon-search from CDN + * @returns Promise resolving to SearchAddon class + */ + public async loadXtermSearchAddon(): Promise { + if (this.xtermSearchAddonLib) { + return this.xtermSearchAddonLib; + } + + if (this.xtermSearchAddonLoadingPromise) { + return this.xtermSearchAddonLoadingPromise; + } + + this.xtermSearchAddonLoadingPromise = (async () => { + const url = `${CDN_BASE}/xterm-addon-search@${CDN_VERSIONS.xtermAddonSearch}/+esm`; + const module = await import(/* @vite-ignore */ url); + + this.xtermSearchAddonLib = { + SearchAddon: module.SearchAddon, + }; + return this.xtermSearchAddonLib; + })(); + + return this.xtermSearchAddonLoadingPromise; + } + /** * Inject xterm CSS styles into the document head */ @@ -257,6 +303,7 @@ export class DeesServiceLibLoader { await Promise.all([ this.loadXterm(), this.loadXtermFitAddon(), + this.loadXtermSearchAddon(), this.loadHighlightJs(), this.loadApexCharts(), this.loadTiptap(), @@ -266,12 +313,14 @@ export class DeesServiceLibLoader { /** * Check if a specific library is already loaded */ - public isLoaded(library: 'xterm' | 'xtermFitAddon' | 'highlightJs' | 'apexCharts' | 'tiptap'): boolean { + public isLoaded(library: 'xterm' | 'xtermFitAddon' | 'xtermSearchAddon' | 'highlightJs' | 'apexCharts' | 'tiptap'): boolean { switch (library) { case 'xterm': return this.xtermLib !== null; case 'xtermFitAddon': return this.xtermFitAddonLib !== null; + case 'xtermSearchAddon': + return this.xtermSearchAddonLib !== null; case 'highlightJs': return this.highlightJsLib !== null; case 'apexCharts': diff --git a/ts_web/services/index.ts b/ts_web/services/index.ts index 63ea0ed..fa2e6cd 100644 --- a/ts_web/services/index.ts +++ b/ts_web/services/index.ts @@ -1,3 +1,3 @@ export { DeesServiceLibLoader } from './DeesServiceLibLoader.js'; -export type { IXtermBundle, IXtermFitAddonBundle, ITiptapBundle } from './DeesServiceLibLoader.js'; +export type { IXtermBundle, IXtermFitAddonBundle, IXtermSearchAddonBundle, IXtermSearchAddon, ITiptapBundle } from './DeesServiceLibLoader.js'; export { CDN_BASE, CDN_VERSIONS } from './versions.js'; diff --git a/ts_web/services/versions.ts b/ts_web/services/versions.ts index e92ecf9..33cce41 100644 --- a/ts_web/services/versions.ts +++ b/ts_web/services/versions.ts @@ -5,6 +5,7 @@ export const CDN_VERSIONS = { xterm: '5.3.0', xtermAddonFit: '0.8.0', + xtermAddonSearch: '0.13.0', highlightJs: '11.11.1', apexcharts: '5.3.6', tiptap: '2.23.0',