feat:바텀 시트 포지션 정리 / 해당 컴포넌트 공통 훅으로 분리#388
Merged
kyungchan3007 merged 1 commit intodevelopfrom Feb 12, 2026
Merged
Conversation
3 tasks
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.
#️⃣ Issue Number
#387
📝 요약(Summary) (선택)
homeFullSheet.tsx
HomeSheet를 absolute 시트 구조로 유지하면서, createPortal + usePortalTarget("mobile-overlay-root") 패턴으로 바꿨습니다.
useScrollLock({ locked: open, anchorRef })를 붙여 시트 열릴 때 배경 스크롤 잠금도 유지되게 정리했습니다.
infraSheet.tsx
InfraSheet도 HomeSheet와 동일하게 createPortal + usePortalTarget("mobile-overlay-root")로 렌더 위치를 분리했습니다.
absolute 포지션 유지, useScrollLock 적용, overlay/sheet에 pointer-events-auto를 명시했습니다.
useScrollLock.ts
공통 스크롤 잠금 훅 추가했습니다.
locked가 true일 때 스크롤 가능한 조상과 html/body overflow를 잠그고, 해제 시 이전 상태로 복구하도록 구현했습니다.
useScrollLock/index.ts
useScrollLock 배럴 export 추가했습니다.
usePortalTarget.ts
document.getElementById(targetId) 조회 로직을 공통 훅으로 분리했습니다.
const portalRoot = usePortalTarget("mobile-overlay-root") 형태로 재사용 가능하게 만들었습니다.
usePortalTarget/index.ts
usePortalTarget 배럴 export 추가했습니다.
roomTypeDetail.tsx
"use client" 오타 수정, 일부 깨진 태그/문구 정리, 레이아웃 안정화를 위해 min-h-0 포함 형태로 정리했습니다.
globalRender.tsx
모바일 프레임 내부에 mobile-overlay-root를 추가하려고 작업했는데, 중간에 인코딩/문자 깨짐 이력이 있어 이 파일은 내일 시작 전에 상태 점검이 필요합니다.