Merged
Conversation
프로젝트 전반의 iOS 배포 타겟을 15.0에서 16.0으로 상향 조정합니다. tvOS도 함께 15.0에서 16.0으로 업데이트되었습니다. 이를 통해 iOS 16의 새로운 API와 기능을 활용할 수 있게 되며, 더 이상 iOS 15를 지원하지 않습니다.
모든 플랫폼(iOS, macOS, tvOS, watchOS)의 설정 화면에 축소 가능한 JSON 뷰어 옵션을 추가합니다. 사용자가 API 응답의 JSON을 접고 펼칠 수 있는 노드 형태로 볼 수 있도록 설정할 수 있습니다. UserSettings에 useCollapsibleJSONViewer 속성을 추가하여 앱 전체에서 설정을 공유합니다. 기본값은 false로 설정되어 기존 동작을 유지합니다. iOS 16, visionOS 1, macOS 13 버전 제한을 제거하여 더 넓은 버전 호환성을 제공합니다.
JSON 뷰어에서 객체와 배열을 접고 펼칠 수 있는 기능을 구현합니다. 사용자가 JSON 구조를 더 쉽게 탐색할 수 있도록 시각적 토글 인디케이터(▶/▼)를 추가하고, 경로 기반으로 각 노드의 접힌 상태를 관리합니다. 주요 변경사항: - 각 JSON 요소에 경로 정보 추가 - 접기/펼치기 상태를 저장하는 collapsedPaths 집합 도입 - 시각적 토글 인디케이터 렌더링 로직 구현
대화형 JSON 뷰어 기능을 구현하여 JSON 데이터를 시각적으로 탐색할 수 있도록 함 - 중첩된 JSON 객체와 배열의 확장/축소 기능 지원 - 탭 제스처로 특정 노드 토글 가능 - 전체 확장/축소 메뉴 옵션 제공 - iOS, visionOS, tvOS, watchOS 플랫폼 지원
사용자 설정에 따라 JSON 데이터를 접을 수 있는 뷰어로 표시하는 기능을 추가합니다. 기존의 텍스트 기반 렌더링과 새로운 JSONViewer 중 선택할 수 있습니다. 설정이 활성화되면 JSON 데이터를 계층 구조로 탐색할 수 있어 대용량 JSON 파일의 가독성과 사용성이 향상됩니다.
|
오 좋네요 ㅎㅎ |
Author
클로드가 구현해준거에요 |
ElonPark
reviewed
Sep 1, 2025
Member
ElonPark
left a comment
There was a problem hiding this comment.
요거 pulse 오리진 레포에 변경사항 pull 받아서 최신화 한 다음에 반영 해주실 수 있으실까요?
오리진 레포와 충돌이 발생하면 나중에 pulse 오리진 레포에서 업데이트가 있을때
충돌로 인해서 반영하는게 불가능해져서요
Author
오리진에서 당겨오는 건 아래 PR 에서 작업하면 될 것 같아요 한편 이 브랜치 변경사항을 main 에다 업데이트 하면 추후에 작업하기 힘들지 않을까 싶기도 한데요. |
Author
|
@ElonPark main 은 upstream 을 싱크하는 용도로 사용하고 |
ElonPark
approved these changes
Sep 11, 2025
| private var nodesByPath: [String: JSONContainerNode] = [:] | ||
|
|
||
| package init(json: Any, error: NetworkLogger.DecodingError? = nil, options: TextRenderer.Options = .init()) { | ||
| package init(json: Any, error: NetworkLogger.DecodingError? = nil, options: TextRenderer.Options = .init(), collapsedPaths: Set<String> = [], nodesByPath: [String: JSONContainerNode] = [:]) { |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.

배경 (필수)
수정 내역 (필수)
새로운 기능 추가
JSONViewer.swift: 접기/펼치기 기능을 지원하는 새로운 JSON 뷰어 컴포넌트 추가JSONViewerViewModel.swift: JSON 뷰어의 상태 관리를 위한 ViewModel 추가UI 개선
TextRendererJSON.swift: 기존 JSON 렌더러에 접기/펼치기 UI 요소 추가설정 추가
UserSettings.swift:isCollapsibleJSONViewerEnabled설정 옵션 추가SettingsView-*.swift: 모든 플랫폼 설정 화면에 접을 수 있는 JSON 뷰어 토글 추가기타
Package.swift: iOS 최소 지원 버전을 16.0으로 업데이트FileViewer.swift,FileViewerViewModel.swift: 새로운 JSON 뷰어 통합테스트 방법 (필수)
리뷰 노트
스크린샷
RPReplay_Final1756705981.MP4