# Codex Diff Previewer ## 목적 변경 파일의 전체 소스와 raw diff를 codex 스타일 아코디언으로 함께 보여주는 공통 preview 컴포넌트입니다. ## 공통 설계 원칙 - 샘플(`samples`)을 제외한 컴포넌트에는 API 호출이나 화면 전용 로직을 직접 넣지 않습니다. - 컴포넌트는 최대한 멍청하게 설계하고, 직관적인 props를 받아 직관적인 UI 동작만 수행합니다. - 기능 처리와 비즈니스 로직은 `src/features` 또는 해당 화면 전용 패키지 레벨에서 담당합니다. - 공통 컴포넌트는 여러 곳에서 재사용되므로, 수정 시에는 기존 동작을 바꾸지 않는 범위에서만 보완합니다. ## 폴더 구조 ```text src/components/previewer ├─ CodexDiffBlock.tsx ├─ CodexDiffPreviewer.tsx ├─ CodexDiffPreviewer.css ├─ samples/ │ └─ CodexDiffSample.tsx └─ index.ts ``` ## 주요 props - `files` - `diffText` - `title` - `description` - `height` ## 공통 사용처 - 작업일지 `## 소스` 탭 - 일반 문서의 ````diff```` 코드 블록 - previewer 샘플 갤러리 ## 샘플 - 대표 샘플: `src/components/previewer/samples/CodexDiffSample.tsx`