@@ -17,16 +17,16 @@ export function SecurityReportsTable({
1717} : Props ) {
1818 if ( loading ) {
1919 return (
20- < div className = "flex items-center justify-center py-16 " >
21- < div className = "h-5 w-5 animate-spin rounded-full border-2 border-slate-300 border-t-transparent" />
22- < span className = "ml-3 text-sm text-slate-300 " > Loading security reports</ span >
20+ < div className = "flex items-center justify-center rounded-xl border border-slate-200 bg-white/80 px-4 py-10 text-sm text-slate-600 shadow-sm dark:border-slate-700 dark:bg-slate-900/70 dark:text-slate-300 " >
21+ < div className = "h-5 w-5 animate-spin rounded-full border-2 border-emerald-500 border-t-transparent" />
22+ < span className = "ml-3" > Loading security reports… </ span >
2323 </ div >
2424 ) ;
2525 }
2626
2727 if ( error ) {
2828 return (
29- < div className = "rounded-lg border border-red-500/40 bg-red-500/10 px-4 py-3 text-sm text-red-100" >
29+ < div className = "rounded-xl border border-red-500/40 bg-red-50/80 px-4 py-3 text-sm text-red-900 shadow-sm dark:border-red-500/40 dark:bg-red-500/10 dark: text-red-100" >
3030 < div className = "font-semibold" > Failed to load reports</ div >
3131 < div className = "mt-1 opacity-90" > { error } </ div >
3232 </ div >
@@ -35,41 +35,41 @@ export function SecurityReportsTable({
3535
3636 if ( ! reports . length ) {
3737 return (
38- < div className = "rounded-lg border border-slate-700/60 bg-slate-900/60 px-4 py-6 text-sm text-slate-300" >
38+ < div className = "rounded-xl border border-slate-200 bg-white/80 px-4 py-6 text-sm text-slate-600 shadow-sm dark:border-slate-700 dark:bg-slate-900/70 dark: text-slate-300" >
3939 No security reports match the current filters.
4040 </ div >
4141 ) ;
4242 }
4343
4444 return (
45- < div className = "overflow-hidden rounded-xl border border-slate-700/70 bg-slate-900/70 shadow-sm " >
46- < table className = "min-w-full divide-y divide-slate-700/80" >
47- < thead className = "bg-slate-900/90" >
45+ < div className = "overflow-hidden rounded-xl border border-slate-200 bg-white/90 shadow-sm dark:border-slate- 700/70 dark: bg-slate-900/70" >
46+ < table className = "min-w-full divide-y divide-slate-200 dark:divide-slate- 700/80" >
47+ < thead className = "bg-slate-50/90 text-slate-500 dark:bg-slate- 900/90 dark:text-slate-400 " >
4848 < tr >
49- < th className = "px-4 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-400 " >
49+ < th className = "px-4 py-3 text-left text-[11px] font-semibold uppercase tracking-wide" >
5050 Package
5151 </ th >
52- < th className = "px-4 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-400 " >
52+ < th className = "px-4 py-3 text-left text-[11px] font-semibold uppercase tracking-wide" >
5353 Version
5454 </ th >
55- < th className = "px-4 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-400 " >
55+ < th className = "px-4 py-3 text-left text-[11px] font-semibold uppercase tracking-wide" >
5656 Status
5757 </ th >
58- < th className = "px-4 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-400 " >
58+ < th className = "px-4 py-3 text-left text-[11px] font-semibold uppercase tracking-wide" >
5959 Risk score
6060 </ th >
61- < th className = "px-4 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-400 " >
61+ < th className = "px-4 py-3 text-left text-[11px] font-semibold uppercase tracking-wide" >
6262 Risk level
6363 </ th >
64- < th className = "px-4 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-400 " >
64+ < th className = "px-4 py-3 text-left text-[11px] font-semibold uppercase tracking-wide" >
6565 Last scan
6666 </ th >
67- < th className = "px-4 py-3 text-left text-xs font-semibold uppercase tracking-wide text-slate-400 " >
67+ < th className = "px-4 py-3 text-left text-[11px] font-semibold uppercase tracking-wide" >
6868 Summary
6969 </ th >
7070 </ tr >
7171 </ thead >
72- < tbody className = "divide-y divide-slate-800/80" >
72+ < tbody className = "divide-y divide-slate-100 dark:divide-slate- 800/80" >
7373 { reports . map ( ( report ) => {
7474 const lastScan = new Date ( report . lastScanAt ) ;
7575 const lastScanLabel = Number . isNaN ( lastScan . getTime ( ) )
@@ -79,28 +79,28 @@ export function SecurityReportsTable({
7979 return (
8080 < tr
8181 key = { `${ report . packageName } @${ report . version } ` }
82- className = "hover:bg-slate-800 /60 cursor-pointer "
82+ className = "cursor-pointer bg-white/80 text-xs text-slate-800 transition hover:bg-slate-50 dark:bg-slate-900 /60 dark:text-slate-200 dark:hover:bg-slate-800/70 "
8383 onClick = { onRowClick ? ( ) => onRowClick ( report ) : undefined }
8484 >
85- < td className = "whitespace-nowrap px-4 py-2 text-sm font-mono text-emerald-200" >
85+ < td className = "whitespace-nowrap px-4 py-2.5 text-sm font-mono text-emerald-700 dark: text-emerald-200" >
8686 { report . packageName }
8787 </ td >
88- < td className = "whitespace-nowrap px-4 py-2 text-xs font-mono text-slate-200" >
88+ < td className = "whitespace-nowrap px-4 py-2.5 font-mono text-slate-700 dark: text-slate-200" >
8989 { report . version }
9090 </ td >
91- < td className = "whitespace-nowrap px-4 py-2 text-xs " >
91+ < td className = "whitespace-nowrap px-4 py-2.5 " >
9292 < StatusBadge status = { report . status } />
9393 </ td >
94- < td className = "whitespace-nowrap px-4 py-2 text-xs text-slate-200" >
94+ < td className = "whitespace-nowrap px-4 py-2.5 text-slate-800 dark: text-slate-200" >
9595 { report . riskScore . toFixed ( 0 ) }
9696 </ td >
97- < td className = "whitespace-nowrap px-4 py-2 text-xs " >
97+ < td className = "whitespace-nowrap px-4 py-2.5 " >
9898 < RiskLevelTag level = { report . riskLevel } />
9999 </ td >
100- < td className = "whitespace-nowrap px-4 py-2 text-xs text-slate-300" >
100+ < td className = "whitespace-nowrap px-4 py-2.5 text-slate-600 dark: text-slate-300" >
101101 { lastScanLabel }
102102 </ td >
103- < td className = "max-w-xl px-4 py-2 text-xs text-slate-200" >
103+ < td className = "max-w-xl px-4 py-2.5 text-slate-700 dark: text-slate-200" >
104104 < div className = "line-clamp-2 leading-relaxed" > { report . summary } </ div >
105105 </ td >
106106 </ tr >
0 commit comments