Skip to content

feat(map-warmth): 지도 온기모드 말풍선 다중 줄바꿈 지원, 오버레이 깜빡임 제거 및 피드 스켈레톤 적용 - #402

Merged
SHcommit merged 3 commits into
developfrom
feat/map-warmth-notes-ux
Oct 16, 2026
Merged

SHcommit merged 3 commits into
developfrom
feat/map-warmth-notes-ux

Conversation

@SHcommit

Copy link
Copy Markdown
Member

📌 개요

  • 지도 온기모드 말풍선 오버레이 본문 다중 줄바꿈(2~3줄) 지원
  • 동일 레벨 스크롤/패닝 시 오버레이 깜빡임 및 재등장 현상 제거 (CustomOverlay 캐싱/reconciliation)
  • 1km 이하 상세 줌 레벨에서 개별 장소 말풍선 클러스터링 해제 및 가시성 보장
  • 장소명 핀 아이콘 크기 확장 및 분위기 뱃지 폰트 굵기(normal) 조정
  • 온기모드 좌측 피드 초기 로딩 1:1 규격 스켈레톤 UI 및 네트워크 에러 재시도 뷰 구현

🛠️ 주요 변경사항

  1. WarmthNotesLayer.tsx:
    • overlayMapRef 기반 CustomOverlay 캐싱/reconciliation 도입
    • geoThreshold 상세 줌 레벨(<= 4) 0.0008도로 세분화하여 개별 장소 말풍선 보존
    • .om-note-body 인라인 스타일 및 CSS -webkit-line-clamp: 3 보강, 카드 너비 284px 조정
    • 장소 아이콘 14px로 가독성 개선, 분위기 뱃지 폰트 500(normal)로 완화
  2. WarmthCardSkeleton.tsx:
    • 실데이터 카드와 1:1 일치하는 스켈레톤 컴포넌트 신규 구현
  3. WarmthFeed.tsx & useVisitReviewFeed.ts:
    • 피드 초기 로딩 시 스켈레톤 3개 노출
    • 에러 시 대체 뷰 및 재시도(reload) 버튼 연동

🧪 검증

  • npx tsc --noEmit: 통과 (0 errors)
  • npx vitest run src/private/core-ui/map-warmth/: 통과 (5/5 tests passed)

@coderabbitai

coderabbitai Bot commented Oct 16, 2026 •

Copy link
Copy Markdown

Important

  • 🔍 Trigger review

This repository does not receive automatic reviews because it has fewer than 10 stars.

⚙️ Run configuration
  • Configuration used: Repository: YRootLab/OnMaru-Frontend/.coderabbit.yaml
  • Review profile: ASSERTIVE
  • Plan: Advanced
  • Run ID: 86c69912-4ffc-4ee2-acf7-98e918616072
  • Autofix · Keep fixing CodeRabbit findings and required CI, and resolving merge conflicts

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

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

@github-actions

Copy link
Copy Markdown

📋 코드 리뷰 체크리스트

  • 테스트 추가/업데이트
  • 문서 업데이트
  • 콘솔 로그/디버거 없음
  • 하드코딩된 값 없음
  • 성능 고려됨
  • 보안 검토됨
  • 에러 처리 추가됨

@github-actions

Copy link
Copy Markdown

✅ PR 검증 통과

  • 제목 형식: ✓
  • 설명: ✓
  • 파일 수정: ✓

@github-actions

Copy link
Copy Markdown

✅ 코드 품질 검사가 완료되었습니다. 위 출력 결과에서 이슈를 확인하세요.

@github-actions

Copy link
Copy Markdown

📦 번들 크기 분석 요약:

번들 크기 분석 결과

Next.js 빌드 출력 크기

255M .next

가장 큰 파일 상위 20개

34M .next/cache/turbopack/v16.3.5-ca2c75eb/00000004.sst
34M .next/cache/turbopack/v16.3.5-ca2c75eb/00000003.sst
33M .next/cache/turbopack/v16.3.5-ca2c75eb/00000002.sst
33M .next/cache/turbopack/v16.3.5-ca2c75eb/00000001.sst
12M .next/cache/turbopack/v16.3.5-ca2c75eb/00000009.sst
12M .next/cache/turbopack/v16.3.5-ca2c75eb/00000007.sst
12M .next/cache/turbopack/v16.3.5-ca2c75eb/00000005.sst
11M .next/cache/turbopack/v16.3.5-ca2c75eb/00000015.sst
11M .next/cache/turbopack/v16.3.5-ca2c75eb/00000008.sst
7.7M .next/cache/turbopack/v16.3.5-ca2c75eb/00000012.sst
6.1M .next/static/chunks/1fg7jm-d_busz.js
6.1M .next/server/chunks/ssr/src_app_dev_icons_page_tsx_0bmgqvo..js
4.7M .next/cache/turbopack/v16.3.5-ca2c75eb/00000010.sst
2.6M .next/cache/turbopack/v16.3.5-ca2c75eb/00000016.sst
2.6M .next/cache/turbopack/v16.3.5-ca2c75eb/00000014.sst
2.6M .next/cache/turbopack/v16.3.5-ca2c75eb/00000013.sst
2.6M .next/cache/turbopack/v16.3.5-ca2c75eb/00000006.sst
1.7M .next/cache/turbopack/v16.3.5-ca2c75eb/00000011.sst
1.4M .next/cache/turbopack/v16.3.5-ca2c75eb/00000020.meta
1.3M .next/server/chunks/ssr/src_app_dev_icons_page_tsx_0bmgqvo.
.js.map

@github-actions

Copy link
Copy Markdown

📦 번들 크기 분석 요약:

번들 크기 분석 결과

Next.js 빌드 출력 크기

256M .next

가장 큰 파일 상위 20개

35M .next/cache/turbopack/v16.3.5-ca2c75eb/00000004.sst
34M .next/cache/turbopack/v16.3.5-ca2c75eb/00000001.sst
33M .next/cache/turbopack/v16.3.5-ca2c75eb/00000003.sst
33M .next/cache/turbopack/v16.3.5-ca2c75eb/00000002.sst
12M .next/cache/turbopack/v16.3.5-ca2c75eb/00000015.sst
12M .next/cache/turbopack/v16.3.5-ca2c75eb/00000007.sst
12M .next/cache/turbopack/v16.3.5-ca2c75eb/00000006.sst
12M .next/cache/turbopack/v16.3.5-ca2c75eb/00000005.sst
9.3M .next/cache/turbopack/v16.3.5-ca2c75eb/00000012.sst
7.9M .next/cache/turbopack/v16.3.5-ca2c75eb/00000011.sst
6.2M .next/cache/turbopack/v16.3.5-ca2c75eb/00000013.sst
6.1M .next/static/chunks/1fg7jm-d_busz.js
6.1M .next/server/chunks/ssr/src_app_dev_icons_page_tsx_0bmgqvo..js
2.6M .next/cache/turbopack/v16.3.5-ca2c75eb/00000016.sst
2.6M .next/cache/turbopack/v16.3.5-ca2c75eb/00000014.sst
2.6M .next/cache/turbopack/v16.3.5-ca2c75eb/00000009.sst
2.6M .next/cache/turbopack/v16.3.5-ca2c75eb/00000008.sst
1.4M .next/cache/turbopack/v16.3.5-ca2c75eb/00000020.meta
1.3M .next/server/chunks/ssr/src_app_dev_icons_page_tsx_0bmgqvo.
.js.map
1.3M .next/server/chunks/ssr/[root-of-the-server]__112mz-6._.js.map

@github-actions

Copy link
Copy Markdown

♿ 접근성 감사가 완료되었습니다. 아티팩트의 a11y-report를 확인하세요.

@github-actions

Copy link
Copy Markdown

📊 테스트 커버리지 리포트

테스트 커버리지 요약

사용 가능한 커버리지 데이터가 없습니다.

Comment thread src/private/core-ui/map-warmth/WarmthNotesLayer.tsx Fixed
@github-actions

Copy link
Copy Markdown

🔍 CodeQL 보안 분석이 완료되었습니다. 세부 검출 결과는 리포지토리의 Security 탭을 확인하세요.

@github-actions

Copy link
Copy Markdown

⚡ Lighthouse 성능 감사가 완료되었습니다. 아티팩트에서 상세 리포트를 확인하세요.

@github-actions

Copy link
Copy Markdown

✅ E2E 테스트가 완료되었습니다. 아티팩트에서 Playwright 리포트를 확인하세요.

@github-actions

Copy link
Copy Markdown

✅ PR 검증 통과

  • 제목 형식: ✓
  • 설명: ✓
  • 파일 수정: ✓

@github-actions

Copy link
Copy Markdown

♿ 접근성 감사가 완료되었습니다. 아티팩트의 a11y-report를 확인하세요.

@github-actions

Copy link
Copy Markdown

✅ 코드 품질 검사가 완료되었습니다. 위 출력 결과에서 이슈를 확인하세요.

@github-actions

Copy link
Copy Markdown

📦 번들 크기 분석 요약:

번들 크기 분석 결과

Next.js 빌드 출력 크기

256M .next

가장 큰 파일 상위 20개

34M .next/cache/turbopack/v16.3.5-ca2c75eb/00000003.sst
33M .next/cache/turbopack/v16.3.5-ca2c75eb/00000002.sst
32M .next/cache/turbopack/v16.3.5-ca2c75eb/00000005.sst
32M .next/cache/turbopack/v16.3.5-ca2c75eb/00000001.sst
17M .next/cache/turbopack/v16.3.5-ca2c75eb/00000015.sst
12M .next/cache/turbopack/v16.3.5-ca2c75eb/00000014.sst
12M .next/cache/turbopack/v16.3.5-ca2c75eb/00000011.sst
12M .next/cache/turbopack/v16.3.5-ca2c75eb/00000009.sst
12M .next/cache/turbopack/v16.3.5-ca2c75eb/00000006.sst
6.7M .next/cache/turbopack/v16.3.5-ca2c75eb/00000010.sst
6.1M .next/static/chunks/1fg7jm-d_busz.js
6.1M .next/server/chunks/ssr/src_app_dev_icons_page_tsx_0bmgqvo..js
3.0M .next/cache/turbopack/v16.3.5-ca2c75eb/00000012.sst
2.6M .next/cache/turbopack/v16.3.5-ca2c75eb/00000013.sst
2.6M .next/cache/turbopack/v16.3.5-ca2c75eb/00000008.sst
2.6M .next/cache/turbopack/v16.3.5-ca2c75eb/00000007.sst
2.6M .next/cache/turbopack/v16.3.5-ca2c75eb/00000004.sst
1.4M .next/cache/turbopack/v16.3.5-ca2c75eb/00000020.meta
1.3M .next/server/chunks/ssr/src_app_dev_icons_page_tsx_0bmgqvo.
.js.map
1.3M .next/server/chunks/ssr/[root-of-the-server]__112mz-6._.js.map

@github-actions

Copy link
Copy Markdown

📦 번들 크기 분석 요약:

번들 크기 분석 결과

Next.js 빌드 출력 크기

256M .next

가장 큰 파일 상위 20개

34M .next/cache/turbopack/v16.3.5-ca2c75eb/00000007.sst
33M .next/cache/turbopack/v16.3.5-ca2c75eb/00000003.sst
33M .next/cache/turbopack/v16.3.5-ca2c75eb/00000002.sst
32M .next/cache/turbopack/v16.3.5-ca2c75eb/00000001.sst
12M .next/cache/turbopack/v16.3.5-ca2c75eb/00000013.sst
12M .next/cache/turbopack/v16.3.5-ca2c75eb/00000011.sst
12M .next/cache/turbopack/v16.3.5-ca2c75eb/00000004.sst
11M .next/cache/turbopack/v16.3.5-ca2c75eb/00000014.sst
11M .next/cache/turbopack/v16.3.5-ca2c75eb/00000012.sst
9.0M .next/cache/turbopack/v16.3.5-ca2c75eb/00000005.sst
6.1M .next/static/chunks/1fg7jm-d_busz.js
6.1M .next/server/chunks/ssr/src_app_dev_icons_page_tsx_0bmgqvo..js
5.4M .next/cache/turbopack/v16.3.5-ca2c75eb/00000006.sst
2.6M .next/cache/turbopack/v16.3.5-ca2c75eb/00000015.sst
2.6M .next/cache/turbopack/v16.3.5-ca2c75eb/00000010.sst
2.6M .next/cache/turbopack/v16.3.5-ca2c75eb/00000009.sst
2.6M .next/cache/turbopack/v16.3.5-ca2c75eb/00000008.sst
1.4M .next/cache/turbopack/v16.3.5-ca2c75eb/00000019.meta
1.3M .next/server/chunks/ssr/src_app_dev_icons_page_tsx_0bmgqvo.
.js.map
1.3M .next/server/chunks/ssr/[root-of-the-server]__112mz-6._.js.map

@github-actions

Copy link
Copy Markdown

⚡ Lighthouse 성능 감사가 완료되었습니다. 아티팩트에서 상세 리포트를 확인하세요.

@github-actions

Copy link
Copy Markdown

🔍 CodeQL 보안 분석이 완료되었습니다. 세부 검출 결과는 리포지토리의 Security 탭을 확인하세요.

@github-actions

Copy link
Copy Markdown

📊 테스트 커버리지 리포트

테스트 커버리지 요약

사용 가능한 커버리지 데이터가 없습니다.

@github-actions

Copy link
Copy Markdown

✅ E2E 테스트가 완료되었습니다. 아티팩트에서 Playwright 리포트를 확인하세요.

@github-actions

Copy link
Copy Markdown

✅ PR 검증 통과

  • 제목 형식: ✓
  • 설명: ✓
  • 파일 수정: ✓

@github-actions

Copy link
Copy Markdown

📦 번들 크기 분석 요약:

번들 크기 분석 결과

Next.js 빌드 출력 크기

256M .next

가장 큰 파일 상위 20개

36M .next/cache/turbopack/v16.3.5-ca2c75eb/00000002.sst
35M .next/cache/turbopack/v16.3.5-ca2c75eb/00000004.sst
35M .next/cache/turbopack/v16.3.5-ca2c75eb/00000003.sst
33M .next/cache/turbopack/v16.3.5-ca2c75eb/00000001.sst
15M .next/cache/turbopack/v16.3.5-ca2c75eb/00000007.sst
12M .next/cache/turbopack/v16.3.5-ca2c75eb/00000012.sst
12M .next/cache/turbopack/v16.3.5-ca2c75eb/00000011.sst
12M .next/cache/turbopack/v16.3.5-ca2c75eb/00000009.sst
11M .next/cache/turbopack/v16.3.5-ca2c75eb/00000010.sst
6.1M .next/static/chunks/1fg7jm-d_busz.js
6.1M .next/server/chunks/ssr/src_app_dev_icons_page_tsx_0bmgqvo..js
4.9M .next/cache/turbopack/v16.3.5-ca2c75eb/00000008.sst
2.6M .next/cache/turbopack/v16.3.5-ca2c75eb/00000016.sst
2.6M .next/cache/turbopack/v16.3.5-ca2c75eb/00000015.sst
2.6M .next/cache/turbopack/v16.3.5-ca2c75eb/00000014.sst
2.6M .next/cache/turbopack/v16.3.5-ca2c75eb/00000013.sst
1.4M .next/cache/turbopack/v16.3.5-ca2c75eb/00000019.meta
1.3M .next/server/chunks/ssr/src_app_dev_icons_page_tsx_0bmgqvo.
.js.map
1.3M .next/server/chunks/ssr/[root-of-the-server]__112mz-6._.js.map
1.2M .next/cache/turbopack/v16.3.5-ca2c75eb/00000021.meta

@github-actions

Copy link
Copy Markdown

✅ 코드 품질 검사가 완료되었습니다. 위 출력 결과에서 이슈를 확인하세요.

@github-actions

Copy link
Copy Markdown

⚡ Lighthouse 성능 감사가 완료되었습니다. 아티팩트에서 상세 리포트를 확인하세요.

@github-actions

Copy link
Copy Markdown

📦 번들 크기 분석 요약:

번들 크기 분석 결과

Next.js 빌드 출력 크기

256M .next

가장 큰 파일 상위 20개

35M .next/cache/turbopack/v16.3.5-ca2c75eb/00000011.sst
33M .next/cache/turbopack/v16.3.5-ca2c75eb/00000003.sst
33M .next/cache/turbopack/v16.3.5-ca2c75eb/00000002.sst
33M .next/cache/turbopack/v16.3.5-ca2c75eb/00000001.sst
12M .next/cache/turbopack/v16.3.5-ca2c75eb/00000015.sst
12M .next/cache/turbopack/v16.3.5-ca2c75eb/00000010.sst
12M .next/cache/turbopack/v16.3.5-ca2c75eb/00000009.sst
12M .next/cache/turbopack/v16.3.5-ca2c75eb/00000006.sst
11M .next/cache/turbopack/v16.3.5-ca2c75eb/00000004.sst
9.3M .next/cache/turbopack/v16.3.5-ca2c75eb/00000008.sst
6.8M .next/cache/turbopack/v16.3.5-ca2c75eb/00000005.sst
6.1M .next/static/chunks/1fg7jm-d_busz.js
6.1M .next/server/chunks/ssr/src_app_dev_icons_page_tsx_0bmgqvo..js
2.6M .next/cache/turbopack/v16.3.5-ca2c75eb/00000014.sst
2.6M .next/cache/turbopack/v16.3.5-ca2c75eb/00000013.sst
2.6M .next/cache/turbopack/v16.3.5-ca2c75eb/00000012.sst
2.6M .next/cache/turbopack/v16.3.5-ca2c75eb/00000007.sst
1.4M .next/cache/turbopack/v16.3.5-ca2c75eb/00000019.meta
1.3M .next/server/chunks/ssr/src_app_dev_icons_page_tsx_0bmgqvo.
.js.map
1.3M .next/server/chunks/ssr/[root-of-the-server]__112mz-6._.js.map

@github-actions

Copy link
Copy Markdown

♿ 접근성 감사가 완료되었습니다. 아티팩트의 a11y-report를 확인하세요.

@github-actions

Copy link
Copy Markdown

📊 테스트 커버리지 리포트

테스트 커버리지 요약

사용 가능한 커버리지 데이터가 없습니다.

@github-actions

Copy link
Copy Markdown

🔍 CodeQL 보안 분석이 완료되었습니다. 세부 검출 결과는 리포지토리의 Security 탭을 확인하세요.

@github-actions

Copy link
Copy Markdown

✅ E2E 테스트가 완료되었습니다. 아티팩트에서 Playwright 리포트를 확인하세요.

@SHcommit
SHcommit merged commit f9a8286 into develop Oct 16, 2026
19 checks passed
@SHcommit
SHcommit deleted the feat/map-warmth-notes-ux branch October 16, 2026 14:40
SHcommit added a commit that referenced this pull request Oct 16, 2026
* feat(map-warmth): 지도 온기모드 말풍선 다중 줄바꿈 지원, 오버레이 깜빡임 제거 및 피드 스켈레톤 적용 (#402)

* feat(map-warmth): 지도 온기모드 말풍선 다중 줄바꿈 지원, 오버레이 깜빡임 제거 및 피드 스켈레톤 적용

* test: typographyRole 적용에 따른 단위 테스트 폰트 크기 기댓값 동기화

* refactor(map-warmth): CodeQL 피드백 반영 미사용 import 정리

* chore(release): bump version to 0.1.23
SHcommit added a commit that referenced this pull request Oct 16, 2026
* feat(map-warmth): 지도 온기모드 말풍선 다중 줄바꿈 지원, 오버레이 깜빡임 제거 및 피드 스켈레톤 적용 (#402)

* feat(map-warmth): 지도 온기모드 말풍선 다중 줄바꿈 지원, 오버레이 깜빡임 제거 및 피드 스켈레톤 적용

* test: typographyRole 적용에 따른 단위 테스트 폰트 크기 기댓값 동기화

* refactor(map-warmth): CodeQL 피드백 반영 미사용 import 정리

* chore(release): bump version to 0.1.23

Co-authored-by: yshls <97035336+yshls@users.noreply.github.com>
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.

2 participants