Description 목적
Todo 상세 화면으로 이동할 수 있는 행을 길게 누르면 현재 화면 위에 읽기 전용 상세 미리보기를 표시한다.
기존 짧은 탭 내비게이션은 그대로 유지한다.
미리보기에서는 추가 내비게이션이나 변경 동작을 제공하지 않는다.
적용 범위
TodoListView의 일반 목록 행
TodoListView의 검색 결과 행
Home SearchView의 Todo 검색 결과 행
HomeView의 최근 Todo 행
TodayView의 TodayTodoRow
제외 범위
PushNotificationListView의 푸시 알림 행
Todo 상세·편집 화면 본문 안의 Todo 참조 링크
미리보기 안의 정보, 편집, 완료, 삭제, 재시도, Alert
미리보기에서 다른 화면으로 이동하는 동작
상황별 메뉴 항목
사용자 동작
Todo 행을 짧게 탭하면 기존 방식으로 Todo 상세 화면에 내비게이션한다.
Todo 행을 길게 누르면 Todo 상세 미리보기만 표시한다.
미리보기에는 메뉴와 조작 요소를 표시하지 않는다.
바깥 영역을 탭하면 시스템 동작에 따라 미리보기를 닫는다.
기존 Todo 행의 스와이프 동작은 유지한다.
미리보기 내용과 상태
제목, Todo 번호, Markdown 본문만 표시한다.
TodoDetailContentView의 표시 구성을 재사용한다.
기기 크기에 맞춰 미리보기 크기를 제한한다.
긴 본문은 미리보기 내부에서 스크롤할 수 있어야 한다.
Dynamic Type과 밝은 화면·어두운 화면을 지원한다.
Todo 조회 중에는 LoadingView를 표시한다.
조회에 실패하면 Alert이나 재시도 버튼 없이 미리보기 내부에 오류 문구를 표시한다.
구현 방향
PresentationShared에 재사용 가능한 UIContextMenuInteraction 연결 요소와 View modifier를 둔다.
previewProvider는 읽기 전용 TodoDetailPreviewView를 제공한다.
actionProvider는 nil로 설정해 메뉴를 표시하지 않는다.
Todo 조회와 참조 해석은 기존 TodoDetailFeature 흐름을 재사용하고 showEditButton은 false로 설정한다.
TodoDetailPreviewView는 Todo 참조 정보를 렌더링하되 참조 열기 동작을 전달하지 않는다.
각 적용 화면은 Todo ID만 공통 View modifier에 전달한다.
새 모듈 의존성은 추가하지 않는다.
데이터 흐름과 생명주기
Todo 행을 길게 누르면 해당 Todo ID로 미리보기용 Store를 생성한다.
FetchTodoByIdUseCase로 전체 Todo를 조회한다.
Todo 본문에 포함된 참조 정보를 기존 흐름으로 해석한다.
조회 결과로 제목, 번호, Markdown 본문을 표시한다.
미리보기를 닫으면 미리보기용 Store를 해제한다.
다시 길게 누르면 새 Store를 생성하고 최신 Todo를 조회한다.
완료 조건
검증
Reactions are currently unavailable
You can’t perform that action at this time.
목적
적용 범위
TodoListView의 일반 목록 행TodoListView의 검색 결과 행SearchView의 Todo 검색 결과 행HomeView의 최근 Todo 행TodayView의TodayTodoRow제외 범위
PushNotificationListView의 푸시 알림 행사용자 동작
미리보기 내용과 상태
TodoDetailContentView의 표시 구성을 재사용한다.LoadingView를 표시한다.구현 방향
PresentationShared에 재사용 가능한UIContextMenuInteraction연결 요소와 View modifier를 둔다.previewProvider는 읽기 전용TodoDetailPreviewView를 제공한다.actionProvider는nil로 설정해 메뉴를 표시하지 않는다.TodoDetailFeature흐름을 재사용하고showEditButton은false로 설정한다.TodoDetailPreviewView는 Todo 참조 정보를 렌더링하되 참조 열기 동작을 전달하지 않는다.데이터 흐름과 생명주기
FetchTodoByIdUseCase로 전체 Todo를 조회한다.완료 조건
PushNotificationListView에는 미리보기 미적용검증
UIContextMenuConfiguration이 사용자 지정 미리보기를 제공하고actionProvider를 사용하지 않는지 검증TodoDetailFeatureTests의 조회, 참조 해석, 로딩, 실패 흐름 확인PresentationShared,HomeTab,TodayTab테스트