From 487d1f3d3ca6fbf32692a540fa7d73238af58a50 Mon Sep 17 00:00:00 2001 From: amertensreplit <49614208-amertensreplit@users.noreply.replit.com> Date: Thu, 11 Jun 2026 01:24:29 +0000 Subject: [PATCH] Add search and filters to the scan history (Verlauf) view MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Task: Filter and search scans in the history view (Task #32). What changed: - artifacts/skillguard/src/pages/scan-history.tsx now has a client-side search box that matches scan name and description text (case-insensitive), plus two multi-select toggle-group filters: Bewertung (verdict: pass/review/block) and Quelle (source: zip/file/text). - Filtering is computed via useMemo over the existing useListScans() result. - Added a results counter ("X von Y Scans") and a "Filter zurücksetzen" button shown when any filter/search is active. - Added a dedicated empty-filter-result state ("Keine Treffer") with a reset action, distinct from the existing "no scans yet" empty state. - Search input has a clear (X) button. Notes / deviations: - No backend changes; description/verdict/source already come from the API. - Rebuilt lib/api-client-react declarations (tsc -b) because the dist *.d.ts in this isolated env were stale and lacked description/relation fields (pre-existing issue, documented in memory). tsc on scan-history is now clean. - Verified visually: search bar, verdict and source filters render and the list populates from the running API server. Replit-Task-Id: 67d3a8ce-f780-4b21-97b4-4767ced763c4 --- artifacts/skillguard/public/opengraph.jpg | Bin 84334 -> 21729 bytes .../skillguard/src/pages/scan-history.tsx | 132 +++++++++++++++++- 2 files changed, 127 insertions(+), 5 deletions(-) diff --git a/artifacts/skillguard/public/opengraph.jpg b/artifacts/skillguard/public/opengraph.jpg index a40c4760dc28d0b2b5b58355cfe786c53d48a960..e738dc50510126d00096231d4c60fd76e6b0fdf7 100644 GIT binary patch literal 21729 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 n?F?`|OcB>{;JAg8=sMbBserR&$tRJ6Fq*|ha! zL>o`yi0&Hr93Owkl1qNon4JmhwXGVSd|onS%$@yV{yPGJEUT_Z!4-*a0hT%iAKzze zcED4gp&Z2MtxHGkiXS%XkMwjeFLZY9Q%~N;EZToCzQV8eFgD9=)=|-AXJ1>zN!H}g z9M+dcy!1E$6@w|AW3=9`F_7hGk1 z>t>3Wj9hCcbjG{melBMA1ym05Gx*QD!4%3wAz&b?K|y=psLs&q!X zl$0;h{3G!v(p2A@B+|QKLoI)qR^*~3y^3s+-Xkbjw{wEB-3DhEPnsx9jxD^0MJQA1 z*X+u8hkKgj?mR{_f`o3HYw3bBPlolRV-uxLLG)Skh45p~0;~RlI)k3+sZLcU$qY6} zsi7S>v;Uj##Y;)Glf(0r~VQw3yoN0zw{K14ix7qY=yeg_&`=3PA84%U0_2o!Tg*tra&3pVA+I<4<4ta>hSE zdPF_K`)NGs*ML8O%T0{C@@gdiGf_XVJiZc*b!&US`zTJ9L#REr(6nGn(f<1n6@Bt- zgb<9_L)oo;PZkT3?+$={B?3Wwt^x1XqvW>VhtCTp!K0|EKmHo)m3nSk-qG`rGPE$Z zf~@1?mgUYno(FZ|+5dlXp@IX6ksQQsZK?NX+lTK%KDyzg$ZLX*?e`3MCW>EsrA&}=r#GOG%YI;4UoLTY!*H98r~6sgxR4UZ07;hp|sDs8?h3%MpOkbRjWva%U z^#wJV*Kpl19;PR{Q|U8d_)zXo$|(K8n6VhLhMk=L=MaC=6B8K2t4Nt|IxKXf;}~wm zKn#KP0^@S!|7-;e#ISF{W+2^pCN5>*i2u5ApDcyeWg88fMJqw!dP0_%@JS=L)lC zHGZuWwZtS(dLyfhiH5qCOa$a zvH$H;UJ^_G$oUXd+LCHd8qG?C23}h3whw*{K_)T7NEynfYcu+6U1jtoMS@eJV9*CsNH2Rbc%hlD>r?foP+ZkuA zT?ziCdC$*ylPdT-c8Jgx?--a;u-7lYp?MK)qdKafvt=X}Owja^RPoMI*HndFynqyr zyuzQS>i=GG<5?GSZ!`q#Rv4B>|EAP1EIP}O!kuoK&pAO%WXG-7bTm#$nJazRt6ztO zCA;Xvs2M+yd^m6>u!r`GLi(c5um;s!&1|tq<<;oPDf?wjKuXf@SgJOesOg~H`PJ3O zIUNVF*~hzIf|!ynq(Q!_^72Mt%91L{mosF@Onu8H6*YAc86;PZ015O(O6bma)IBfl zl8^aF61CfDqTg6Q0M5SK5&<$OGC(U7U&W$qqX^^&@0ezHIuPw`)-M1l+U87I7er~N+WK?%Dxa~;gzy3L?J+zlHmse>2F#26td@%>BQBIr56NOXz9(D+`aD2Wtj*H7 zi@OHzdfJ0Tss30HcEh@lvlS33yR1Y2=LvXckwg9?udragXX=Y~%P!3|fUGuJ*uRJF z1CkTDOJX#)=Lw7C)StDP9j)%S2uj%FcXLz(aHiglCyR8Tiin8#XH7;`-E2XL9s;py zh|32E+vo7L>ppci6j1KAbc&ZQi&+#ewg1L^(W;n_#}%{Ht;52~wH3%{9(+ad)!ci* zqoxo;J?s-hlAF%BWa-#OktMZI>kcHX zvpR-V7n-na7Ka5OvNlpi zyK;K#YDxkFCiRSJa=v~mvC7X>7(#KAk)bnD$qF|S;> znn0w5Aw9TKPp4i9h5!wiJJBXV2(l#G%Q(#_Mp|7v~gz1dD z`g1RZeCfkDO=`xq47?00dm8GMehbmFaRrANVv>*HUTSp+?-&;!s;^y=@7WI7iW@|G zW*CA^W+*J-GkmC_<<4L$&&!s5$^OyH%Y38@u8gdh}a- ze?GlI&iQ$e?MUp|`ES;vg@-U;2J*|UJ~Z6c$dxk9$bq$1PG9JoK-GOV$Jw=|u5bcI zUelZ@+DMb8Qrh}nY17KD==LW(?2dCp8@;QPmEFCv^h6&1paQ7}&Znae{Nu}Xd3{D4 ziF(2iRXO8%YTRJhm42Uztt{jGjH_Z=;mM<61tqBdOufE3FX24wobZIjIi^= zsFZf~r&^`SLszs!Nd{bb6KH_0KOa`R_?esFgO6{|s22JvB`mZzOq1M4BQ|8ys|<-U zc;-xLqvu;p3`4lnR{#VjQfZ$nFC{#&6X2aqoI#JUMfe zCGGy}5!ea0HEz7uqYP!dl2>wghtRZai9b`0mUbsZ+H$kQv8LBdBVpgrxztfXLpV%q z(;JaELX0`QYmEk$9m`SD0codE&z}t=@Wf>Q`w<4m{BmQ>9?2oOzf7#VTzQ36lfPc;l zk>(9Pb!u80hp$*SLgeMarsl4DqLKzvb37K!^Jj+kVtf!a3)0a!fNO#YBRv~y|25!V z_*%Ib?RH@2v4+W#_nm^J!irXQ0#5&_>BmVn1ca-iYLCRwZs?5N!HcKdogCsZYTb)s)5z9}``9T@ITO zh_qe>@V!1Lp7<-Hfq4QZNoM!8<`4xN7Y>PB1$8a0uA20z=S(b0BbjlO6SD zr^X;Hf~WTcJB{0@rS9wZMaY_=!NEt4eD9uxITf%p1)@>UK!Mywsf#WLB9^A8GGuzE zQ%htBZ2GJ$+(fzENK5r7pS;f5Yr%edU&&GfwW&sd%o{tu>*zT=sD6YO@wU{P{>Vew zQHimZn_$vX>?JIGL|1}> z8FLz2)lbiN8h=BJ@?$~x#~JEc1Xve;4>K_*$DXgZNEZ39y^9fkILxhV``0E7l;U0k{d?l>P3Lac-mQbB!=;`mHDzK=fo{nU~q=9a4b|_j|t2?gat|a_meXb-KDbC?3O6 zK@gIlqhrwVJzIJ0v2^1^pnyg^`F~8?{#EK;Lz;p?UzAc#^C{-l1vTva(!BT9g*)7(?QX8bJVykBhIP%Ed z?-cHyR4Uz0^q&>)*ms+^WQOAB`JAW=>7QJJmUj*#T`qq1|E6bhN_FyLoNE5P**O%R zbswiuvg4#ibB72Q?p?N!Y>%QyI@UAPqSvcRk>J#g$mC1xHdw@dY;^ydll$WFGBJH= zUBJ{;`W^I=s_-sATCfJk(?#v$Jsf8TRgK){26|$(OfZ`(=SiNNzOjf4e3^ zi_4%<5jmziIEs$DIv6Eq*((or!8jBEQ-rLJBXZ?RlO*qvHTPv}^$l;K|beIOwUXG~Ti( zfvR>akI~Fqa=ByAqB&Y%2z}e z+}W3?%OsJYD6y9P?6ijsu655GZ7=gTw{C>7hunV%V^kFwVXU|34`EDUeJ1GFW9}1w zw}T`MKb3k_r_0)xpuagyswD&2QS&BXz3E)Sh2H-7#bdkU*uA?0+W|EryLh8&e2ZO> zs;?KE0(os8@fsO$AZt`$h4qf|46uOEWXiJ-Tc;K?OYP<}y=AYoG(WGUD->Ol<_taY zi5#(HWtI4VoS`H1E5}?KYj{f`A~3_AAHrit0PdW8QF{n^&xt)zuL^V)6{yP4mAXPm z>*CvGP=MQ9cX!qlC7<^=bM)yo#pHZSgWAZvyhD`QCbY^Z10L}^Zfn`Os#x$Sn|6qd z}qxiE&+$yeufU1(Pc67t;a~= z<4%KZ@ol3;vWUAXeJ`z+8*6_DG<=nRo)YnoeFnEcXH@(oMKW5rzo=fxNZ6gGk^}Z$ z%?(RR3LXt?df~8}?0HHdXp*i0*3jGiUX{#Ng@16Awn!uttjzl1`SalrcfIk$3!f`S z_#pJrtQqE7B9oqHlA8&t0>t&qA|D1-F(;$MK;!(Ik*L=KdezX`}*!QcmwdR`zDqRpOCH zdnaSZx$`;O7w>%!g}(qs!?W4M_%JvSGoHCBMJ+NZu&kZFTwz(J1H0uQW*Djw#pqPN zuxt?Rlo1)z3RB@~M_zkQH}j!c6Y0x&XfK-8LP&_}HGjF(vOkCqS{6v?9triQx(BT3 zwBHO3T?tm*U9>xH?7MU;bx?npj}}@y9Vhzi8!dUP`rM>(-bQ1>cYDqjbml+lu3)<` zIK27$6K2gd3O6!DnE~7P2c~PD@w}F$KRO0KHA{SuH~EDYl6Cl-&%H~A=NWyc?#yDD zW7ud{l^*6sUcFq3@=B2$+P`Afp0U*QsKJ=cdgZmN)$iArJ`O<;@q^-{!CxT$0Xg9Y zxhIaLo=Gz*XNl3nk>YdD*1{Wrkm}7j$|DKSH}CWsBpnl5MXX00sMm@p_Fg46Qi+$N zio*la=!#NQ%$7(6BPO+M%7gME-4(ea2RLKZdcz4WH|_0&6(^OQO|tIKiMiJu3tNU| zV2&#clbVY{;z>yUKH}iW%OZ9HOQ9&lx@YNIy~&Cd!+Y$RopN+^ylE3vpt#{&tQMlX zMS=CO!J1(m^osCU;tV29)pve(qMYvuNJzriZQTPq)le6`hboG(em+QRw7JdHlonaI z7cFWEc-|H4o^i`qNrpMPD4il3NqdoAvh2HFH_&?jeh5nlvkHNYZ$@Im%3wIwyOasE z^Zsl5FTU;y^5)4Na|as(7-{Nz&Ogdn^ZCQ8KZu7-Z@LWcyO^@u1`$!35C3>tyNBSLuo zL9OxWAN3vWCXeSHYw6r9S^fT8vNql5d!FlFNSWWhcqlV-zVuToXEgk6uDn9>KdV{( z(hmIjs=+_AW#{ObR(G+K#mVwI zwF8K02*-A;r)Wk5m57pK(HimfPFKPdUMy*dImsxNlI+aNmUH5RZCB0!qPysQ6Is8H zz!V70yarL z(o0QUAkO1nS4u~2$jF{)Qnkl-d3_q5OZLu?b;4%k2UMv|=Z_DQA{SqSDeucNe<#^C zI9I)!Zq|tis|%4p`Vr`SmM$AvbW=1|eq38xS>YVEY4ds4OquwKI?N7v{2MqmsgdR9 zowZ~{2+J!^$E-S0Z)Y9&_h82TqUH<i018Yi@qoPsqQf7wDZ)3 ziF3ufm=d@gyLwfz2%Bg@7@?JQE>o8LcYb)3 zx_bZHOt`Ifd)-BdqLW7z2{K^`J(*l|9>I{_KL2W4=X3+X3t?^Nz|Bd#{vm9{LI5nH+y0);IQ zvKb;|>FDH$2dyn@!hGKDK3$S3t=B-!St39_N-aEmb<7 z?M+=)imJXf+4YWCfgyK=Xs?xRu_bbnIZq&JnT(b*wGJJm)iQ zdkvuWeS�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%0A_;bIpC-Qm{C;Rg_-@B$3 zj2!p(%ux)>7X8#&d$biipdSl%^IGB!GMtL;6DPn5$zrGWv1{b8pX~0`1y=_rStrbQWX=zzjJ6#yyWDB| zO`ttogMP8KXnX(b9fKr}$ZEwmGcb7t25-)Si0F|I*3a#n4(CjPge9Uvtf}RE4idyj zEnX!LTc>UXrnbHCpC&VMokc*i^bazkPCK_4r{LnP2B6FCHaf269}S~jg_e!o^L}x( zXT|q@0&S_ZNQf&EHZ6;MMDe{7(qwpn^(NV-qTI6L5+)f_*H@cuNBwe>-BjyAamOpx zrWQ`?VWwjq(J2lZek7nY!eKw@&L>V|u)ux(OUZ)fc2N~~8aai=Drdre zI@Nr(P@bx4{zt9F&gPO$zs#eBbc!qC^nd&(6XWH{CRQ^+^5%7Y~)j6Xu}Z zIFD*sdu%o_$Fv@gy;b3BIXvH3AbVXekL9(m13)bFf}Kq=E6~L zFA0$wpwP4(ViDj8>%=lO1$&#fCyMG~7|3wt<2jr&?du?9&LIJ~pGl-OE62{h9gj(0 zM00D`>|T6ydYaY{k*oJ17oL}-tHNOBghNVeg%fNN};wmW(VI)60qt+93KV%een)L9fvQZ2t zvHCVVp`rO8f`JR|#uT5U!9}ktgwKUe`JB(#tw%N_>D+O?FCqLmlsRT5-3lvJW#-iR zAFw?0GGtmtU=4WbL)$Dd#>8@LsTeNPor;g-mk_!0(znMi68h?TZjE#S&$4KSQ;1WT zPE1@}=q-|%wcap(u3a;UvI+meNt3b1B55dZ{16rdf0W=qilD&g@Z=_qLuw9bOd8H& z30lGYBYk)MLi(I89E30um)x-oL*;BNY8$dq8$`LeA~#?lJtq)wFZ;+EP`xcmNTVy) z>gc(mG&WH!pa*{+q??swl@()}%U{z(mSPF;9MMmBp7g>ziC>XZ$`<+&ddTe{29~ND z)Z8ojUQmS8u@GLy=Ly=aaLbsc?;S93Pw{WUEJ`YvHMfTsBXu5%LWY_S#$gXCMLoog zoV-_?9LUcYOlp})K;K{TRq0t|6yd=(B8b&xMc~Wc(4aR%%MAM5Mk=pdEQ17Zjw|=F zo~lEzdUC^$Loa5NtY;hC37-v&=OofaEeJMuiaP3rAYuFUFRh^Z1{kSbL~RH+EEm;~ zNnzLu1JsZ(v^))^P;T>3T*519NMadgwq$mw!|Rm@Ket2FBC-eT6Jv!Hf=l^*OYTk4 zXuq*90tgn{F`am$Ap@WOTSPY&e0P7^=ZC?EtWu*y8AcddfVT7jpUlc=kNPk3Y(hqe zVzjhv)gTJxSsXE4my=m5JSh(?f`#hKWd{;WOvam(#|ws;>ZoElZ15(Ow?Z0E&!^8D zL*0x0LLUuQ+>Ojvwbz@%4up}=V;AeuGzyT@vZbXRsB=nG`(icdq+v4S?%B!$-zwFu z`)~=33Qytq=lQ3vZB?peH+EI`6DBDplPM|%;9evcHtH zh^W6FUoJYD#?f68W1!0R1iI^E7XBMh&T|qwRmCS{gxsv((f@_)|31^j?w0(2EOpv#ca;J!VmO9R1aD z--ZIVn1TW^=0ishUJT87B5+$@v~T&&gVEY6)_x8#oM^H`DCXG2`8S_!tPbaOv5pO_ z5~+4pl|6Kqak<#5O4FH(^{qQ+NqI{>R5-VQoq3YM{I~ml{!V@V$Y1JR|Gv7&@8;ao zZb!eIohSAy>h+$hUyf~($dI^hUBGarJ$e?yBj62Jehk`{DZ7H=)|zbBE}4DHYsQg@ zyCp1a6+YRm(Q_6%cm2)5n>*JT+?&r67V%&jt6<7qqH*Tp~FvX1-V zFZJHl3#V*(ch}`wdsQcYrSgAI#C1?3Ar#NM+#nm!V&*T&TGdLeC zI^JHT`OV(tuQU70zw7z#XNtF5%z9t5Qlzgd%v1944d+=^9FYfObH(|$9+-Y?`|kI` zcYE)Bw*35guH@sMbQ$A+s@MG+SM$}HJ+uF+{IB)-H&dXo)+PT^>M!j0W8;74t$mlh z@2$e4-OKr6O=tJK`TFqM+(k=wofPk}lPq7Cw$|#rd>o(U7u|WY^Ai@8YGq`ZliS|9N})XP|xMhF2}h`mfi! zy_ML$ZKLtj;-1YgNAO_F_l3dxqrH+J z_Jeji7S{yYX>E5ot9Q@X)5O&vDmtnIXI4eQqhG4Rcd%O5T=S^_zNzr*6$8cbPA|iY4cp1G7lm#o#-bZ6({IeZn7{~4Gk+WB*YT{m2^&FmC#SVww0&z}=N z*Y*DGji^6&*M6q_7v0q<+pI2cIustATsbd5>gUq3`4Al)DH_zVLczb_mHUFoG z-{xtZGv^q$89gkFN!_^O(dTDB_P^zV%}bQm+j?|#=q>>s+#nycI>ZxraD&~_uvJ_g zfAxRxU(vcM_$&T{{0c|l-CxMd@X44pgD&B3vg&uA{?Oi4B);r^(KMukpjK(SxXAy% F2>`VRr!xQm diff --git a/artifacts/skillguard/src/pages/scan-history.tsx b/artifacts/skillguard/src/pages/scan-history.tsx index cd6ec5e..61fd37c 100644 --- a/artifacts/skillguard/src/pages/scan-history.tsx +++ b/artifacts/skillguard/src/pages/scan-history.tsx @@ -1,22 +1,63 @@ +import { useMemo, useState } from "react"; import { Link } from "wouter"; import { useQueryClient } from "@tanstack/react-query"; import { useListScans, getListScansQueryKey, useDeleteScan } from "@workspace/api-client-react"; -import { Card, CardContent } from "@/components/ui/card"; +import { Card } from "@/components/ui/card"; import { Badge } from "@/components/ui/badge"; import { Skeleton } from "@/components/ui/skeleton"; import { Button } from "@/components/ui/button"; +import { Input } from "@/components/ui/input"; +import { ToggleGroup, ToggleGroupItem } from "@/components/ui/toggle-group"; import { AlertDialog, AlertDialogAction, AlertDialogCancel, AlertDialogContent, AlertDialogDescription, AlertDialogFooter, AlertDialogHeader, AlertDialogTitle, AlertDialogTrigger } from "@/components/ui/alert-dialog"; import { VerdictBadge, RelationBadge } from "@/components/ui-helpers"; import { formatDate } from "@/lib/format"; -import { Search, Trash2, ArrowRight } from "lucide-react"; +import { Search, Trash2, ArrowRight, X } from "lucide-react"; import { useToast } from "@/hooks/use-toast"; +const VERDICT_OPTIONS = [ + { value: "pass", label: "Freigabe" }, + { value: "review", label: "Manuelle Prüfung" }, + { value: "block", label: "Blockieren" }, +] as const; + +const SOURCE_OPTIONS = [ + { value: "zip", label: "ZIP" }, + { value: "file", label: "Datei" }, + { value: "text", label: "Text" }, +] as const; + export default function ScanHistory() { const { data: scans, isLoading } = useListScans(); const queryClient = useQueryClient(); const deleteScan = useDeleteScan(); const { toast } = useToast(); + const [query, setQuery] = useState(""); + const [verdictFilters, setVerdictFilters] = useState([]); + const [sourceFilters, setSourceFilters] = useState([]); + + const hasActiveFilters = query.trim() !== "" || verdictFilters.length > 0 || sourceFilters.length > 0; + + const resetFilters = () => { + setQuery(""); + setVerdictFilters([]); + setSourceFilters([]); + }; + + const filteredScans = useMemo(() => { + if (!scans) return []; + const q = query.trim().toLowerCase(); + return scans.filter((scan) => { + if (verdictFilters.length > 0 && !verdictFilters.includes(scan.verdict)) return false; + if (sourceFilters.length > 0 && !sourceFilters.includes(scan.source)) return false; + if (q) { + const haystack = `${scan.name ?? ""} ${scan.description ?? ""}`.toLowerCase(); + if (!haystack.includes(q)) return false; + } + return true; + }); + }, [scans, query, verdictFilters, sourceFilters]); + const handleDelete = (id: number) => { deleteScan.mutate({ id }, { onSuccess: () => { @@ -59,8 +100,87 @@ export default function ScanHistory() { ) : ( -
- {scans.map((scan) => ( + <> +
+
+ + setQuery(e.target.value)} + placeholder="Nach Name oder Beschreibung suchen…" + className="pl-9 pr-9" + aria-label="Scans durchsuchen" + /> + {query && ( + + )} +
+
+
+ Bewertung + + {VERDICT_OPTIONS.map((opt) => ( + + {opt.label} + + ))} + +
+
+ Quelle + + {SOURCE_OPTIONS.map((opt) => ( + + {opt.label} + + ))} + +
+
+
+ + {hasActiveFilters && ( +
+ {filteredScans.length} von {scans.length} Scans + +
+ )} + + {filteredScans.length === 0 ? ( + + +

Keine Treffer

+

Für die aktuellen Filter- und Sucheinstellungen wurden keine Scans gefunden.

+ +
+ ) : ( +
+ {filteredScans.map((scan) => (
@@ -131,7 +251,9 @@ export default function ScanHistory() {
))} -
+
+ )} + )} );