feat(tasarim): kalan küçük ekranlar (rehber, sıralama, üniversite listesi)
- Türkiye sıralaması satırı §4.15: ad sarar, 16 px; satır hover'ı turuncu; Cal Sans sırada tabular-nums kalktı - Rehber yol satırı 14 px ve turuncu hover; üniversite dizini hover - Logo monogramı 10 → 12 px; arama kartındaki elle hex → slate-950 - Denetim: satırın tamamı link olduğunda group-hover mavi ad çifti de istisna sayılıyor Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
@@ -194,7 +194,8 @@ const KURALLAR: Kural[] = [
|
|||||||
// §2.1 istisnası: §4.15 kanonik liste satırı adı (sarar, text-base
|
// §2.1 istisnası: §4.15 kanonik liste satırı adı (sarar, text-base
|
||||||
// font-semibold leading-snug + hover:text-primary hover:underline) mavi
|
// font-semibold leading-snug + hover:text-primary hover:underline) mavi
|
||||||
// kalır. Eski truncate/text-sm adlar istisnaya girmez — önce §4.15'e
|
// kalır. Eski truncate/text-sm adlar istisnaya girmez — önce §4.15'e
|
||||||
// çevrilir. (Bilal'in kararı, 24 Eyl 2026: istisna uyarı vermesin.)
|
// çevrilir. Satırın tamamı link olduğunda group-hover çifti de sayılır.
|
||||||
|
// (Bilal'in kararı, 24 Eyl 2026: istisna uyarı vermesin.)
|
||||||
bul: (icerik) =>
|
bul: (icerik) =>
|
||||||
regexKurali(/\b(?:group-)?hover:(?:text|border|shadow)-primary\b/)(icerik).filter((e) => {
|
regexKurali(/\b(?:group-)?hover:(?:text|border|shadow)-primary\b/)(icerik).filter((e) => {
|
||||||
const bas = icerik.lastIndexOf("\n", e.index) + 1;
|
const bas = icerik.lastIndexOf("\n", e.index) + 1;
|
||||||
@@ -202,7 +203,7 @@ const KURALLAR: Kural[] = [
|
|||||||
const satir = icerik.slice(bas, son === -1 ? undefined : son);
|
const satir = icerik.slice(bas, son === -1 ? undefined : son);
|
||||||
return !(
|
return !(
|
||||||
/\btext-base font-semibold leading-snug\b/.test(satir) &&
|
/\btext-base font-semibold leading-snug\b/.test(satir) &&
|
||||||
/\bhover:text-primary hover:underline\b/.test(satir)
|
/\b(?:group-)?hover:text-primary (?:group-)?hover:underline\b/.test(satir)
|
||||||
);
|
);
|
||||||
}),
|
}),
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -29,13 +29,19 @@ export default function RehberYaziPage({
|
|||||||
<main className="mx-auto w-full max-w-3xl px-4 py-12 sm:py-16">
|
<main className="mx-auto w-full max-w-3xl px-4 py-12 sm:py-16">
|
||||||
<nav
|
<nav
|
||||||
aria-label="breadcrumb"
|
aria-label="breadcrumb"
|
||||||
className="flex items-center gap-1 text-xs text-slate-500"
|
className="flex items-center gap-1.5 text-sm text-slate-500"
|
||||||
|
>
|
||||||
|
<Link
|
||||||
|
href="/"
|
||||||
|
className="transition-colors hover:text-orange-500 hover:underline"
|
||||||
>
|
>
|
||||||
<Link href="/" className="hover:text-primary hover:underline">
|
|
||||||
Ana Sayfa
|
Ana Sayfa
|
||||||
</Link>
|
</Link>
|
||||||
<ChevronRight className="size-3" aria-hidden />
|
<ChevronRight className="size-3.5" aria-hidden />
|
||||||
<Link href="/rehber" className="hover:text-primary hover:underline">
|
<Link
|
||||||
|
href="/rehber"
|
||||||
|
className="transition-colors hover:text-orange-500 hover:underline"
|
||||||
|
>
|
||||||
Rehber
|
Rehber
|
||||||
</Link>
|
</Link>
|
||||||
</nav>
|
</nav>
|
||||||
|
|||||||
@@ -102,7 +102,7 @@ export function AramaFunnelKarti({ onSec }: { onSec: () => void }) {
|
|||||||
return (
|
return (
|
||||||
<section
|
<section
|
||||||
aria-label="Tercih listeni kur"
|
aria-label="Tercih listeni kur"
|
||||||
className="mt-5 overflow-hidden rounded-2xl border border-blue-400/20 bg-[#0b1f3a] px-4 py-5 text-white sm:px-5"
|
className="mt-5 overflow-hidden rounded-2xl border border-blue-400/20 bg-slate-950 px-4 py-5 text-white sm:px-5"
|
||||||
>
|
>
|
||||||
<div className="grid items-center gap-4 sm:grid-cols-[minmax(0,1fr)_auto] sm:gap-5">
|
<div className="grid items-center gap-4 sm:grid-cols-[minmax(0,1fr)_auto] sm:gap-5">
|
||||||
<div className="min-w-0">
|
<div className="min-w-0">
|
||||||
|
|||||||
@@ -17,7 +17,7 @@ const BOYUT: Record<"xs" | "sm" | "md" | "lg", string> = {
|
|||||||
};
|
};
|
||||||
|
|
||||||
const MONOGRAM_METIN: Record<"xs" | "sm" | "md" | "lg", string> = {
|
const MONOGRAM_METIN: Record<"xs" | "sm" | "md" | "lg", string> = {
|
||||||
xs: "text-[10px]",
|
xs: "text-xs",
|
||||||
sm: "text-xs",
|
sm: "text-xs",
|
||||||
md: "text-sm",
|
md: "text-sm",
|
||||||
lg: "text-lg sm:text-xl",
|
lg: "text-lg sm:text-xl",
|
||||||
|
|||||||
@@ -73,18 +73,18 @@ export function TurkiyeSiralamasi() {
|
|||||||
<li key={u.slug}>
|
<li key={u.slug}>
|
||||||
<Link
|
<Link
|
||||||
href={`/universite/${u.slug}`}
|
href={`/universite/${u.slug}`}
|
||||||
className="group flex items-center gap-3 px-3 py-3 hover:bg-slate-50 sm:gap-4 sm:px-5"
|
className="group flex items-center gap-3 px-3 py-4 transition-colors duration-150 hover:bg-orange-50/60 sm:gap-4 sm:px-5"
|
||||||
>
|
>
|
||||||
<span className="w-9 shrink-0 text-right font-heading text-lg font-bold tabular-nums text-slate-900 sm:w-11 sm:text-xl">
|
<span className="w-9 shrink-0 text-right font-heading text-lg font-bold text-slate-900 sm:w-11 sm:text-xl">
|
||||||
{u.sira}
|
{u.sira}
|
||||||
</span>
|
</span>
|
||||||
<UniLogo slug={u.slug} ad={ad} boy="sm" />
|
<UniLogo slug={u.slug} ad={ad} boy="sm" />
|
||||||
<span className="min-w-0 flex-1">
|
<span className="min-w-0 flex-1">
|
||||||
<span className="block truncate text-sm font-medium text-slate-800 group-hover:text-primary group-hover:underline">
|
<span className="block text-base font-semibold leading-snug text-slate-900 transition-colors group-hover:text-primary group-hover:underline">
|
||||||
{ad}
|
{ad}
|
||||||
</span>
|
</span>
|
||||||
{alt ? (
|
{alt ? (
|
||||||
<span className="block text-xs text-slate-400">{alt}</span>
|
<span className="mt-0.5 block text-sm text-slate-500">{alt}</span>
|
||||||
) : null}
|
) : null}
|
||||||
</span>
|
</span>
|
||||||
<span className="hidden w-40 shrink-0 items-center gap-3 sm:flex">
|
<span className="hidden w-40 shrink-0 items-center gap-3 sm:flex">
|
||||||
|
|||||||
@@ -16,7 +16,7 @@ function UniLinkleri({ uniler }: { uniler: UniOzet[] }) {
|
|||||||
<li key={u.slug}>
|
<li key={u.slug}>
|
||||||
<Link
|
<Link
|
||||||
href={`/universite/${u.slug}`}
|
href={`/universite/${u.slug}`}
|
||||||
className="group flex items-center gap-3 text-sm text-slate-700 hover:text-primary"
|
className="group flex items-center gap-3 text-sm text-slate-700 transition-colors hover:text-orange-500"
|
||||||
>
|
>
|
||||||
<UniLogo slug={u.slug} ad={u.ad} boy="sm" />
|
<UniLogo slug={u.slug} ad={u.ad} boy="sm" />
|
||||||
<span className="min-w-0">
|
<span className="min-w-0">
|
||||||
|
|||||||
Reference in New Issue
Block a user