From 8525c9aefb1b843203a51d863248713bee235f3a Mon Sep 17 00:00:00 2001 From: Hyungi Ahn Date: Wed, 29 Apr 2026 07:13:39 +0900 Subject: [PATCH] =?UTF-8?q?fix(study):=20=EB=A7=88=ED=81=AC=EB=8B=A4?= =?UTF-8?q?=EC=9A=B4=20=EC=BB=A8=ED=85=8C=EC=9D=B4=EB=84=88=20=ED=81=B4?= =?UTF-8?q?=EB=9E=98=EC=8A=A4=20prose=20=E2=86=92=20markdown-body?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit @tailwindcss/typography 플러그인 미설치 — prose prose-sm prose-invert max-w-none 클래스가 무효라 결과 페이지(특히 모르겠음·틀림 카드)와 풀이 페이지의 질문 본문/사용자 해설/AI 해설/분야 설명에서 마크다운 스타일링이 안 먹었음. 이 codebase 의 정식 마크다운 클래스는 src/app.css 에 정의된 .markdown-body (h1~h4, ul/ol, blockquote, code, pre, table, hr 등 완비). 모든 renderMathMarkdown 컨테이너에 markdown-body + math-area 두 클래스 적용. 영향 파일: - review/+page.svelte (풀이 중 본문) - quiz-sessions/[sid]/+page.svelte (결과 카드 expand 시 본문/해설/AI/분야설명) - questions/[qid]/+page.svelte (보기 페이지) - questions/[qid]/edit/+page.svelte (편집 페이지의 AI 풀이 미리보기) Co-Authored-By: Claude Opus 4.7 (1M context) --- .../study/topics/[id]/questions/[qid]/+page.svelte | 8 ++++---- .../topics/[id]/questions/[qid]/edit/+page.svelte | 2 +- .../study/topics/[id]/quiz-sessions/[sid]/+page.svelte | 10 +++++----- .../src/routes/study/topics/[id]/review/+page.svelte | 2 +- 4 files changed, 11 insertions(+), 11 deletions(-) diff --git a/frontend/src/routes/study/topics/[id]/questions/[qid]/+page.svelte b/frontend/src/routes/study/topics/[id]/questions/[qid]/+page.svelte index 6a24bea..be341d1 100644 --- a/frontend/src/routes/study/topics/[id]/questions/[qid]/+page.svelte +++ b/frontend/src/routes/study/topics/[id]/questions/[qid]/+page.svelte @@ -233,7 +233,7 @@ -
+
{@html renderMathMarkdown(q.question_text)}
@@ -262,9 +262,9 @@ {#if q.explanation} -
+
사용자 입력 해설
-
{@html renderMathMarkdown(q.explanation)}
+
{@html renderMathMarkdown(q.explanation)}
{/if} @@ -305,7 +305,7 @@ {/if} {#if (aiState === 'success' || aiState === 'stale') && aiData?.ai_explanation} -
+
{@html renderMathMarkdown(aiData.ai_explanation)}
{#if aiData.evidence?.length} diff --git a/frontend/src/routes/study/topics/[id]/questions/[qid]/edit/+page.svelte b/frontend/src/routes/study/topics/[id]/questions/[qid]/edit/+page.svelte index e945f11..828c18b 100644 --- a/frontend/src/routes/study/topics/[id]/questions/[qid]/edit/+page.svelte +++ b/frontend/src/routes/study/topics/[id]/questions/[qid]/edit/+page.svelte @@ -387,7 +387,7 @@ {/if} {#if aiOpen && aiBody} -
+
{@html renderMathMarkdown(aiBody)}
{#if aiEvidence?.length} diff --git a/frontend/src/routes/study/topics/[id]/quiz-sessions/[sid]/+page.svelte b/frontend/src/routes/study/topics/[id]/quiz-sessions/[sid]/+page.svelte index 7b72d48..66c202a 100644 --- a/frontend/src/routes/study/topics/[id]/quiz-sessions/[sid]/+page.svelte +++ b/frontend/src/routes/study/topics/[id]/quiz-sessions/[sid]/+page.svelte @@ -320,7 +320,7 @@ {#if isOpen}
-
{@html renderMathMarkdown(it.q.question_text)}
+
{@html renderMathMarkdown(it.q.question_text)}
{#if it.q.images?.length > 0}
@@ -349,9 +349,9 @@
{#if it.q.explanation} -
+
사용자 입력 해설
-
{@html renderMathMarkdown(it.q.explanation)}
+
{@html renderMathMarkdown(it.q.explanation)}
{/if} @@ -420,7 +420,7 @@
{st.error}
{/if} {#if isLoaded} -
+
{@html renderMathMarkdown(data.ai_explanation)}
{#if data.evidence?.length} @@ -468,7 +468,7 @@
{st.error}
{/if} {#if isLoaded} -
+
{@html renderMathMarkdown(data.content)}
{#if data.evidence?.length} diff --git a/frontend/src/routes/study/topics/[id]/review/+page.svelte b/frontend/src/routes/study/topics/[id]/review/+page.svelte index 56fd8ac..dd4ca16 100644 --- a/frontend/src/routes/study/topics/[id]/review/+page.svelte +++ b/frontend/src/routes/study/topics/[id]/review/+page.svelte @@ -224,7 +224,7 @@ {#snippet children()}
-
{@html renderMathMarkdown(currentQ.question_text)}
+
{@html renderMathMarkdown(currentQ.question_text)}
{#if currentQ.images?.length > 0}