Skip to content

feat(v2): Phase 2 오버레이 시스템 전체 구현#134

Open
zeakd wants to merge 1 commit intodevfrom
feat/phase-2-overlay-system
Open

feat(v2): Phase 2 오버레이 시스템 전체 구현#134
zeakd wants to merge 1 commit intodevfrom
feat/phase-2-overlay-system

Conversation

@zeakd
Copy link
Owner

@zeakd zeakd commented Mar 8, 2026

Summary

  • 오버레이 컴포넌트 8종 구현: InfoWindow, GroundOverlay, CustomOverlay, Circle, Rectangle, Ellipse, Polygon, Polyline
  • useOverlayLifecycle 공유 훅으로 mount/unmount 라이프사이클 통일
  • EventHandlerProps<E> 매핑 타입으로 오버레이별 이벤트를 타입 레벨에서 제한
  • StrokeStyle, FillStyle 공유 인터페이스로 Shape 스타일 통일
  • Marker에 누락된 이벤트(mousedown, mouseup, rightclick) 추가
  • loadScript 서버 환경 가드, vitest headless 모드
  • 테스트 80개 통과, tsc 빌드 성공

🤖 Generated with Claude Code

오버레이 컴포넌트 8종, 공유 훅, 이벤트 타입 시스템, 테스트 80개.

컴포넌트:
- InfoWindow (open/close 패턴, Portal 기반 ReactNode content)
- GroundOverlay (url/bounds 변경 시 인스턴스 재생성)
- CustomOverlay (OverlayView 상속, createPortal로 React children 렌더링)
- Circle, Rectangle, Ellipse, Polygon, Polyline (Shape 일괄)

인프라:
- useOverlayLifecycle 공유 훅 (mount/unmount 라이프사이클)
- EventHandlerProps<E> 매핑 타입 (오버레이별 이벤트 타입 제한)
- StrokeStyle, FillStyle 공유 인터페이스
- Marker에 mousedown/mouseup/rightclick 이벤트 추가
- loadScript 서버 환경 가드
- vitest headless 모드

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.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.

1 participant