Skip to content

fix(share): 공유 아카이브 장소·게시물 조회 및 공유 시트 버그 수정 - #114

Merged
bsy1141 merged 8 commits into
mainfrom
fix/share-feature
Aug 18, 2026
Merged

fix(share): 공유 아카이브 장소·게시물 조회 및 공유 시트 버그 수정#114
bsy1141 merged 8 commits into
mainfrom
fix/share-feature

Conversation

@bsy1141

@bsy1141 bsy1141 commented Aug 18, 2026

Copy link
Copy Markdown
Contributor

0. 링크

1. 요약

  • 공유 아카이브/게시물에서 저장 안 한 장소를 누르면 지도 상세가 404 나던 문제를 공유 공개 API 로 고치고, 공유 링크로 들어온 화면은 항상 공유자 기준 읽기 전용으로 보이게 통일했습니다.
  • 공유 드로어 "링크 복사" 아이콘을 Figma 원본으로 교체하고, 안드로이드에서 "더보기"(OS 공유 시트)가 반응 없던 원인을 고쳤습니다.

2. 작업 내용

  • 공유 아카이브 장소 탭 · 공유 게시물 상세의 장소 · 구독한 아카이브 상세의 장소 클릭을 모두 /map?placeId= 딥링크로 통일 (기존 읽기 전용 시트 제거)
  • 위 딥링크에 shareToken 을 함께 실어 지도/게시물 상세 조회가 공유 공개 API 로 항상 조회되게 함 — 공유 링크로 들어온 화면은 이미 저장한 장소라도 공유자 기준 읽기 전용
  • 읽기 전용 진입에서 저장 토글·메모 편집·게시물에 포함된 장소의 북마크·스와이프 삭제 숨김
  • 안 쓰는 SharedPlaceSheet/useSharedPlaceDetail 제거
  • 공유 드로어 링크 복사 아이콘을 Figma 실제 에셋(link_2_line, 24px)으로 교체, 아이콘 파이프라인 재생성
  • 안드로이드 매니페스트에 추가해 OS 공유 시트(더보기)가 뜨도록 수정
  • (기존 커밋) 앱 스킴 이동 후 브라우저로 돌아왔을 때 "앱이 설치되어 있지 않아요" 오탐 토스트 수정

bsy1141 and others added 7 commits August 19, 2026 01:09
장소 상세 API(GET /places/{placeId})가 비소유자 조회를 지원하게 되어,
공유 아카이브·공유 게시물·구독 아카이브의 장소 탭 모두 아카이브 상세와
동일한 /map?placeId= 이동으로 통일한다. 전용 SharedPlaceSheet 와
공유 장소 상세 fetcher/훅은 더 이상 쓰이지 않아 제거.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
내 장소 상세(GET /places/{placeId})는 저장한 장소 기준이라 공유 아카이브에서
딥링크로 들어온 저장 안 한 장소는 404 가 난다. 공유 진입 경로 세 곳이
`?shareToken=` 을 함께 실어 보내고, usePlaceDetail 은 내 API 실패 시 토큰
스코프의 공개 API(GET /api/public/v1/groups/{token}/places/{placeId})로
우회한다 — 이미 저장한 장소면 내 상세(북마크·메모 포함)를 그대로 쓴다.
다른 장소를 선택하면 토큰은 스냅 기록처럼 URL 에서 버린다.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
장소 상세를 full 스냅으로 펼치면 저장 게시물마다 GET /posts/{postId} 를
병렬 조회하는데, 공유 아카이브 딥링크로 들어온 저장 안 한 장소의 게시물은
내 것이 아니라 404 가 난다. 장소 상세 폴백과 같은 패턴으로 shareToken 을
PlaceSheet → PlaceDetail 로 내려보내고, usePostDetails 가 실패 시
GET /api/public/v1/groups/{token}/posts/{postId} 로 우회한다.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
폴백(내 API 먼저, 실패하면 공개 API) 대신 shareToken 유무로 직접 분기한다 —
공유 링크로 들어온 화면은 이미 저장해 둔 장소·게시물이라도 공유자 기준
읽기 전용으로 보여주는 게 맞다는 정책 결정. 저장 토글(PlaceActions)·메모
편집·게시물에 포함된 장소의 북마크 토글·스와이프 삭제를 모두 숨긴다.

캐시 키도 공유 분기는 SharedPostDetailPage 와 같은 키(sharedQueryKeys)를
써서 내 상세 캐시와 섞이지 않게 분리했다.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Figma `공유 드로어`(138:6075)의 링크 복사 아이콘은 24px 크기의
link_2_line 글리프인데, 코드에는 전혀 다른 모양(대각선 화살표)의
16_link 를 임의로 써왔다. 실제 Figma 에셋을 내려받아 packages/icons/src
에 24_link.svg 로 추가하고(아이콘 생성 파이프라인 재실행으로 web/iOS/
Android 컴포넌트 일괄 생성), 잘못됐던 16_link.svg 는 삭제했다.
ShareSheet 의 링크 복사 아이콘을 Icon24Link 로 교체.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Android 11+(API 30+)는 매니페스트에 <queries> 로 선언하지 않은 패키지는
PackageManager 조회에서 안 보인다. WebView 안의 navigator.share() 가
ACTION_SEND 를 받을 앱을 찾으려 할 때 이 선언이 없어 후보가 하나도
안 잡히고, shareViaSystem() 은 실패를 삼키니 "더보기"를 눌러도 아무
반응이 없었다. 이미 오토링킹되는 share-target 네이티브 모듈의 매니페스트에
ACTION_SEND/text-plain <queries> 를 추가해 Gradle 매니페스트 머지로
앱에 반영되게 했다.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@vercel

vercel Bot commented Aug 18, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
nook-client-web Ready Ready Preview Aug 18, 2026 5:00pm

@bsy1141
bsy1141 merged commit 0b21e39 into main Aug 18, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant