fix: view-clinic demo 데이터 최우선 처리 — location.state 오염 방지

id === 'view-clinic' 체크를 useEffect 최상단으로 이동.
기존에는 location.state에 이전 분석 데이터가 남아있으면
transformApiReport를 통해 엉뚱한 병원 데이터가 렌더링되는 버그 수정.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
claude/bold-hawking
Haewon Kam 2026-04-13 13:51:12 +09:00
parent 0d209ef953
commit 4633560140
1 changed files with 10 additions and 10 deletions

View File

@ -38,6 +38,15 @@ export function useReport(id: string | undefined): UseReportResult {
const location = useLocation();
useEffect(() => {
// Source 0: Demo mode — ALWAYS takes priority over any other source
if (id === 'view-clinic') {
setData(mockReport);
setIsEnriched(true);
setSocialHandles({ instagram: '@viewplastic', youtube: '@ViewclinicKR', facebook: 'viewps1' });
setIsLoading(false);
return;
}
const state = location.state as LocationState | undefined;
// Source 1: Report data passed via navigation state (from AnalysisLoadingPage)
@ -68,16 +77,7 @@ export function useReport(id: string | undefined): UseReportResult {
return;
}
// Source 2: Demo mode — return hardcoded mock data for sales prototype
if (id === 'view-clinic') {
setData(mockReport);
setIsEnriched(true);
setSocialHandles({ instagram: '@viewplastic', youtube: '@ViewclinicKR', facebook: 'viewps1' });
setIsLoading(false);
return;
}
// Source 3: Fetch from Supabase by report ID (bookmarked/shared link)
// Source 2: Fetch from Supabase by report ID (bookmarked/shared link)
if (id) {
fetchReportById(id)
.then((row) => {