fix(i18n): 팬레터 탭 빈 상태를 다국어화한다
This commit is contained in:
@@ -33,9 +33,9 @@
|
||||
- 글쓰기와 수정하기 action은 이번에 작성하는 팬Talk 쓰기 페이지로 연결한다.
|
||||
- 작성 API는 기존 팬Talk API인 `ExplorerRepository.writeCheers(parentCheersId:creatorId:content:)`를 사용한다.
|
||||
- 수정 API는 기존 팬Talk API인 `ExplorerRepository.modifyCheers(cheersId:content:isActive:)`를 사용하고 `isActive`는 `nil`로 전달한다.
|
||||
- 내 채널인 경우 우측하단 글쓰기 floating button과 empty view 내부 `응원 남기기` 버튼을 모두 표시하지 않는다.
|
||||
- 내 채널인 경우 우측하단 글쓰기 floating button과 empty view 내부 `응원남기기` 버튼을 모두 표시하지 않는다.
|
||||
- 우측하단 plus button은 `CreatorChannelFloatingActionMenu`의 private `floatingButton`과 동일한 UI이므로, 팬Talk 전용으로 별도 구현하지 않고 `CreatorChannel/Components` 하위 공용 icon floating button으로 추출해 재사용한다.
|
||||
- 팬Talk 쓰기 화면은 크리에이터 채널 팬Talk 탭의 우측하단 plus button, empty state의 `응원 남기기` 버튼, 내가 쓴 글의 `수정하기`에서 진입한다.
|
||||
- 팬Talk 쓰기 화면은 크리에이터 채널 팬Talk 탭의 우측하단 plus button, empty state의 `응원남기기` 버튼, 내가 쓴 글의 `수정하기`에서 진입한다.
|
||||
- 팬Talk 쓰기 화면 진입 시 키보드가 올라온 상태를 기본으로 하며, 입력 값 유무에 따라 보내기 버튼 disabled/enabled 상태를 분리한다.
|
||||
- 입력 값이 있는 상태에서 취소 버튼을 터치하면 입력 종료 안내 모달을 표시한다. 입력 값이 없으면 별도 모달 없이 이전 화면으로 닫는다.
|
||||
- 공용 모달은 요청 명칭상 `V2/Components` 대상이지만, 현재 저장소 경로 관례에 맞춰 `SodaLive/Sources/V2/Component/Modal/**` 아래에 작성한다.
|
||||
@@ -449,3 +449,43 @@
|
||||
- 2026-07-07: Reviewer gate 지적에 따라 PRD 본문 요구사항/성공 기준/제약 조건에 삭제 확인 모달의 상위 `CreatorChannelView` 표시, `SodaV2ActionModal` 사용, list/detail anchored context popup 공용화, `CheersReportDialogView` 제외 범위를 명시했다.
|
||||
|
||||
- 2026-07-07: 사용자 후속 요청에 따라 팬Talk 목록 row anchored context popup 문구를 `수정`/`삭제`에서 `수정하기`/`삭제하기`로 변경했다. 상세 popup 기본 문구는 기존 공용 기본값을 유지하고, 팬Talk row 호출부에서 `I18n.Explorer.editAction`, `I18n.Explorer.deleteAction`을 주입한다.
|
||||
|
||||
### Phase 11: 팬레터 empty state 다국어 보강
|
||||
|
||||
- [x] **Task 11.1: 팬레터 empty state 문구 정의**
|
||||
- 대상 파일:
|
||||
- 수정: `SodaLive/Sources/I18n/I18n.swift`
|
||||
- 작업 내용:
|
||||
- Empty 문구를 한국어 `아직 응원이 없습니다.\n처음으로 크리에이터를 응원해 보세요!`, 영어 `No fan letters yet.\nBe the first to send one!`, 일본어 `まだファンレターがありません。\n最初のファンレターを送ってみましょう!`로 정의한다.
|
||||
- 작성 버튼을 한국어 `응원남기기`, 영어 `Send a fan letter`, 일본어 `ファンレターを送る`로 정의한다.
|
||||
- 지정된 `\n` 줄바꿈을 모든 언어에서 유지한다.
|
||||
- 검증 기준:
|
||||
- 실행 명령: `rg -n "아직 응원이 없습니다|No fan letters yet|まだファンレターがありません|응원남기기|Send a fan letter|ファンレターを送る" SodaLive/Sources/I18n/I18n.swift`
|
||||
- 기대 결과: empty 문구와 작성 버튼의 ko/en/ja 값이 `pick(ko:en:ja:)`에서 확인된다.
|
||||
|
||||
- [x] **Task 11.2: 팬레터 empty View에 I18n 적용**
|
||||
- 대상 파일:
|
||||
- 수정: `SodaLive/Sources/V2/CreatorChannel/FanTalk/Components/CreatorChannelFanTalkEmptyView.swift`
|
||||
- 확인: `SodaLive/Sources/V2/CreatorChannel/FanTalk/CreatorChannelFanTalkTabView.swift`
|
||||
- 확인: `SodaLive/Sources/V2/CreatorChannel/CreatorChannelView.swift`
|
||||
- 작업 내용:
|
||||
- 하드코딩된 empty 문구와 `응원 남기기` 버튼을 Task 11.1의 I18n 값으로 교체한다.
|
||||
- 기존 팬레터 작성 route 연결과 내 채널의 empty 버튼·floating button 숨김 규칙을 유지한다.
|
||||
- empty 작성 버튼은 `Color.gray800` 배경과 white 아이콘·텍스트를 사용한다.
|
||||
- 신규 route나 API를 추가하지 않는다.
|
||||
- 검증 기준:
|
||||
- 실행 명령: `rg -n "CreatorChannelFanTalkEmptyView|I18n\.|showsWriteButton|onTapWrite|creatorChannelFanTalkWrite|Color\.gray800|foregroundColor\(\.white\)|응원 남기기" SodaLive/Sources/V2/CreatorChannel/FanTalk/Components/CreatorChannelFanTalkEmptyView.swift SodaLive/Sources/V2/CreatorChannel/FanTalk/CreatorChannelFanTalkTabView.swift SodaLive/Sources/V2/CreatorChannel/CreatorChannelView.swift`
|
||||
- 기대 결과: View는 I18n 값을 사용하고 기존 작성 route와 내 채널 숨김 조건 및 gray800/white 버튼 색상을 유지하며 하드코딩된 `응원 남기기`가 없다.
|
||||
|
||||
- [x] **Task 11.3: 정적 검사와 Debug 빌드 검증**
|
||||
- 대상 파일:
|
||||
- 확인: `SodaLive/Sources/I18n/I18n.swift`
|
||||
- 확인: `SodaLive/Sources/V2/CreatorChannel/FanTalk/Components/CreatorChannelFanTalkEmptyView.swift`
|
||||
- 검증 기준:
|
||||
- 실행 명령: `git diff --check`
|
||||
- 기대 결과: 출력 없이 exit code 0이다.
|
||||
- 실행 명령: `xcodebuild -workspace "SodaLive.xcworkspace" -scheme "SodaLive-dev" -configuration Debug build`
|
||||
- 기대 결과: `** BUILD SUCCEEDED **`.
|
||||
|
||||
- 2026-08-14: 사용자 인터뷰로 팬레터 탭 empty 문구와 작성 버튼의 ko/en/ja 값을 확정하고 Phase 11에 미완료 후속 Task로 추가했다. 기존 작성 route와 내 채널 버튼 숨김 규칙은 유지하며 이번 작업은 문서만 보강했다.
|
||||
- 2026-08-14: Phase 11 구현을 완료했다. 팬레터 탭 empty 문구와 작성 버튼을 ko/en/ja I18n으로 교체하고 기존 작성 route 및 내 채널 버튼 숨김 규칙을 유지했다. 사용자 후속 요청에 따라 작성 버튼은 `Color.gray800` 배경과 white 아이콘·텍스트로 변경했다. 23개 정적 계약, `git diff --check`, iPhone 16 Pro 시뮬레이터 Debug 빌드가 통과했고, 세 언어 재캡처와 두 독립 색상·CJK 리뷰에서 차단 항목 없이 PASS를 확인했다.
|
||||
|
||||
Reference in New Issue
Block a user