bilalgursen
1a75f42f29
fix(rehber): şema metni SSR'da + mermaid hata toparlama
...
Şemanın metin karşılığı yalnızca SVG çizilince `aria-label` olarak
basılıyordu; JS çalıştırmayan botlar iskeletten başka bir şey görmüyordu.
Artık aynı `ariaLabel` metni figure içinde bir `<details>` olarak sunucu
HTML'ine girer. mermaid import/render hatası yakalanır: iskelet kalkar,
metin açık gelir, mermaid'in body'de bıraktığı geçici div temizlenir.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com >
2026-09-21 04:48:10 +03:00
bilalgursen
90ac590737
perf: sohbet markdown lazy + marked client'tan çıktı, mermaid görünürlükte (Faz 4)
...
- markdown.tsx: blok bölme marked.lexer yerine çit-farkındalıklı boş satır
bölücüsü — react-markdown'ın yanında ikinci tam parser (~460 KB paket)
client'a inmiyordu artık gerekmiyor; memoized blok yapısı aynen korunur
- markdown-lazy: react-markdown+remark zinciri (~215 KB) lazy; fallback
aynı class'lı düz metin (stream'de flash/CLS yok), sohbet mount'unda
preloadMarkdown ile chunk önden ısınır — /listem 1315->1133 KB eager JS
- el-cizimi-sema: mermaid importu IntersectionObserver'a bağlandı
(rootMargin 200px); şemalar hep fold altında, ~1 MB mount'ta inmiyor
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-08 14:01:48 +03:00
bilalgursen
e3cf141f55
refactor: rehber feature'ı — makale ve liste feature bileşenlerine çıktı (Faz 3)
...
- rehber-kapak + el-cizimi-sema features/rehber/components/ altına taşındı
(el-cizimi-sema'nın göreli font yolu yeni konuma göre düzeltildi)
- /rehber'in kart gridi RehberListesi'ne, /rehber/[slug]'ın makale gövdesi
(JsonLd + içerik + ilgili yazılar + notFound) RehberMakale'ye çıkarıldı;
metadata/staticParams yardımcıları bileşen dosyasından export ediliyor
- İki sayfa senkron: params.then() + sayfada Suspense, skeleton'lar colocated
- rehber-queries.ts (server-only) lib/rehber'in feature kapısı
- Davranış değişikliği yok; içerik build-time statik
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com >
2026-08-08 01:18:22 +03:00