Skip to content

feat: 기술 필터와 캐릭터 목록 보기 개선#58

Merged
MoonGoon72 merged 21 commits into
developfrom
feat/custom-search-content#57
Jun 14, 2026
Merged

feat: 기술 필터와 캐릭터 목록 보기 개선#58
MoonGoon72 merged 21 commits into
developfrom
feat/custom-search-content#57

Conversation

@MoonGoon72

@MoonGoon72 MoonGoon72 commented Jun 14, 2026

Copy link
Copy Markdown
Owner

요약

  • 기술 목록에 섹션, 속성, 프레임 범위 필터를 추가했습니다.
  • 캐릭터 목록에 로컬 이미지 기반 Grid 보기를 추가하고 List/Grid 전환 상태를 저장하도록 개선했습니다.
  • 메모 작성 중 캐릭터 선택 화면도 저장된 캐릭터 목록 보기 방식을 반영하도록 정리했습니다.
  • 영어 기본 로컬라이징, README, 앱 버전, 로컬 작업 파일 ignore 규칙을 함께 정리했습니다.

주요 변경

  • FilterCondition 기반으로 기술 목록 필터링 구조를 정리하고 SwiftUI 필터 화면을 추가했습니다.
  • 캐릭터 이미지 에셋을 로컬에 추가하고 CharacterGridCell, compositional layout, 보기 전환 버튼을 구성했습니다.
  • CharacterLayoutPreference를 통해 List/Grid 선택 상태를 UserDefaults에 저장합니다.
  • MemoListViewControllerMemoComposeViewController의 캐릭터 선택 화면 생성 흐름을 factory closure 기반으로 정리했습니다.
  • 영어를 기본 로컬라이징 소스로 정리하고, 관련 화면 문구와 README를 갱신했습니다.

검증

  • git diff --check
  • xcodebuild -project "Tekken8 Frame Data/TK8.xcodeproj" -scheme "Tekken8 Frame Data" -destination "generic/platform=iOS Simulator" -derivedDataPath /private/tmp/TK8DerivedData build CODE_SIGNING_ALLOWED=NO

Summary by CodeRabbit

  • New Features

    • Added list and grid layout toggle for character browsing.
    • Introduced comprehensive move filtering with frame range controls for startup and guard.
  • Documentation

    • Restructured README with expanded feature descriptions, updated architecture diagram, and test coverage information.
  • Chores

    • Bumped app version to 2.0.3.
    • Added character image assets for Xcode catalog.
    • Localized UI strings from Korean to English across settings, memos, and move displays.
  • Tests

    • Added frame range matching test cases for move filtering.

MoonGoon72 and others added 21 commits May 15, 2026 17:26
- FilterCondition 구조체로 keyword, sections, attributes 통합 관리
- @published filterCondition으로 Combine 기반 자동 필터링 트리거
- updateKeyword / applyFilter 메서드로 캡슐화
- overallSections를 relocalizeAndSort 시점에 한 번만 계산하도록 개선
- LocalizedMove.section을 String?에서 String으로 변경
- Array<LocalizedMove>.overallSectionOrder 확장 추가

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- FilterState로 섹션/속성/프레임 범위 UI 상태 관리
- ChipItem enum (.text / .icon)으로 칩 타입 추상화
- FilterBlock, ChipButton 서브뷰로 구성
- FilterView에서 직접 MoveListViewModel.applyFilter 호출

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- 네비게이션 바에 필터 버튼 추가
- filterButtonTapped에서 FilterView를 sheet로 present
- 검색바 텍스트 변경 시 updateKeyword 호출로 전환

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- supabase 무료 플랜에서 cached egress가 초과됨
- 원인은 사용자 증가에 따른 캐릭터 이미지 다운로드 량 증가
- 캐릭터 이미지는 변경되지 않고, 새로운 캐릭터도 쉽게 추가되지 않으므로 에셋에 넣어 트래픽 제거 및 로딩속도 향상 기대
Swift에서 &&가 ?:보다 우선순위 높아 의도치 않게 파싱되던 문제 수정.
keyword/section/attribute 각 조건을 괄호로 감싸 AND 필터링이 올바르게 동작하도록 함.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- attributeBlock(heatburst/homing/wall_break/floor_break/tornado) 추가
- init에서 filterCondition으로 FilterState 초기화해 재진입 시 이전 선택 복원
- ChipButton 아이콘 케이스에 resizable/scaledToFit/opacity 적용

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
- 프로젝트 관련 파일 수정
- powercrush 속성이 빠져있어 이를 추가함
- 필터링 로컬라이징 추가
- 버전 업데이트: 2.0.2
- 속성 필터 순서 일부 변경
- MemoListViewController에 DIContainer 대신 compose factory 주입
- MemoComposeViewController에서 CharacterSelectViewController를 지연 생성
- CharacterSelectViewController는 preference 대신 layout mode 값만 받도록 정리
- layout toggle 버튼을 프로퍼티로 분리
- 현재 보기 방식에 맞춰 list/grid 아이콘 갱신
- 토글 아이콘 계산 로직을 helper로 분리
- agent 지침 문서와 작업 노트 제외

- 프레임표 CSV와 scripts 디렉터리 제외
@coderabbitai

coderabbitai Bot commented Jun 14, 2026

Copy link
Copy Markdown

Important

Review skipped

Auto reviews are disabled on base/target branches other than the default branch.

Please check the settings in the CodeRabbit UI or the .coderabbit.yaml file in this repository. To trigger a single review, invoke the @coderabbitai review command.

⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 00c257b7-50a0-4f6f-a8fb-26964be82a7f

You can disable this status message by setting the reviews.review_status to false in the CodeRabbit configuration file.

Use the checkbox below for a quick retry:

  • ✅ Review completed - (🔄 Check again to review again)
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch feat/custom-search-content#57

Comment @coderabbitai help to get the list of available commands and usage tips.

@MoonGoon72
MoonGoon72 merged commit 6a4ec68 into develop Jun 14, 2026
1 of 2 checks passed
@MoonGoon72 MoonGoon72 self-assigned this Jun 14, 2026
@MoonGoon72
MoonGoon72 deleted the feat/custom-search-content#57 branch June 14, 2026 07:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

Status: Done

Development

Successfully merging this pull request may close these issues.

1 participant