feat(plan): dönem notları — Markdown, yaz/önizle sekmeleri

- NotesSection: ekle/düzenle/sil (onaylı), yazar ve tarih, kapalı dönemde salt okunur
- Markdown gösterimi (react-markdown + remark-gfm): ham HTML yok, güvenli bağlantılar
- Çakışma (409) mesajı formda; Plan sayfasına bağlandı
- Dağıtım çubuğu boş dönemde "tamamı dağıtıldı" demiyor
- Faz 4 tamamlandı

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-11-12 08:55:16 +03:00
parent 9004a7cc42
commit eca0bb27a0
16 changed files with 1985 additions and 19 deletions
+58
View File
@@ -207,3 +207,61 @@
scroll-behavior: auto !important;
}
}
/* Not metni (components/markdown.tsx) — typography eklentisi yerine küçük, elle stil */
@layer components {
.markdown {
@apply space-y-3 text-sm leading-relaxed break-words;
}
.markdown h1 {
@apply text-lg font-semibold;
}
.markdown h2 {
@apply text-base font-semibold;
}
.markdown h3,
.markdown h4 {
@apply font-semibold;
}
.markdown ul {
@apply list-disc space-y-1 pl-5;
}
.markdown ol {
@apply list-decimal space-y-1 pl-5;
}
/* - [ ] yapılacaklar: madde işareti yerine kutucuk */
.markdown ul:has(> li > input[type='checkbox']) {
@apply list-none pl-1;
}
.markdown li > input[type='checkbox'] {
@apply mr-2 size-4 translate-y-0.5 accent-primary;
}
.markdown a {
@apply font-medium text-primary underline underline-offset-4;
}
.markdown blockquote {
@apply border-l-4 pl-3 text-muted-foreground;
}
.markdown code {
@apply rounded bg-muted px-1 py-0.5 font-mono text-[0.85em];
}
.markdown pre {
@apply overflow-x-auto rounded-lg bg-muted p-3;
}
.markdown pre code {
@apply bg-transparent p-0;
}
.markdown table {
@apply block w-full overflow-x-auto border-collapse;
}
.markdown th,
.markdown td {
@apply border px-2 py-1 text-left;
}
.markdown th {
@apply bg-muted font-medium;
}
.markdown hr {
@apply border-border;
}
}