- Risk etiketi src/components/risk-etiketi.tsx'e çıkarıldı; /sonuc, çekmece ve rapor listesi oradan kullanıyor - Rapor satırı §4.15: ad sarar, üniversite adı ayrı satırda, telefonda risk + taban sıra adın altında, logo gizli (satır 214 → 152 px), aç/kapa düğmesi 44 px, hover tek turuncu - Açılan ayrıntı: 16 px metin, 14 px koyu etiket, rounded-xl iç kutular - Tadımlık satırı aynı satır düzenine geçti - Tercih değişti penceresi, liste gövdesi ve yazdırma sayfasında 10-11 px / büyük harfli etiketler kalktı Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
33 lines
933 B
TypeScript
33 lines
933 B
TypeScript
import { RISK_ETIKET, type RiskSeviyesi } from "@/lib/risk";
|
||
|
||
/**
|
||
* Risk etiketi (DESIGN.md §4.5) — tek kaynak: renkli nokta + aynı renkte
|
||
* metin. Renk hiçbir yerde tek başına durmaz; metin RISK_ETIKET'ten gelir.
|
||
* /sonuc tablosu, liste çekmecesi ve rapor listesi buradan kullanır.
|
||
*/
|
||
export const RISK_NOKTA: Record<RiskSeviyesi, string> = {
|
||
guvenli: "bg-emerald-500",
|
||
"az-riskli": "bg-amber-500",
|
||
riskli: "bg-red-500",
|
||
};
|
||
|
||
const RISK_METIN: Record<RiskSeviyesi, string> = {
|
||
guvenli: "text-emerald-600",
|
||
"az-riskli": "text-amber-600",
|
||
riskli: "text-red-600",
|
||
};
|
||
|
||
export function RiskEtiketi({ risk }: { risk: RiskSeviyesi }) {
|
||
return (
|
||
<span
|
||
className={`inline-flex items-center gap-1.5 text-xs font-semibold ${RISK_METIN[risk]}`}
|
||
>
|
||
<span
|
||
className={`size-2 shrink-0 rounded-full ${RISK_NOKTA[risk]}`}
|
||
aria-hidden
|
||
/>
|
||
{RISK_ETIKET[risk]}
|
||
</span>
|
||
);
|
||
}
|