Conversation
모달의 기능과 로직이 변경되면서 타입구조 변경
활성화된 id를 상태로 갖고 provider로 활성화된 모달의 id를 관리할 수 있도록 로직 수정
modalHost에 의해 사용되는 모달 렌더러를 고려해 전체적인 로직 수정 완료
상위에서 모달 렌더링을 총괄하는 매니저 컴포넌트(모달호스트) 구현 완료. 버튼 클릭시 모달이 렌더링되는 로직이 연결되어 있으면 modalHost가 DB에서 모달 데이터를 받아서 모달 렌더러에게 전달합니다.
모달 더미 데이터 추가
모달의 오버레이도 렌더링하던 역할을 분리함. 오직 modal노드만 렌더링 하도록 역할을 작게 나눔.
모달 노드의 오버레이를 렌더링 하도록 역할 수정. ModalHost가 DB에서 모달관련 데이터를 받아오면 모달 노드렌더러에게 props으로 전달하며 모달 노드 렌더럴을 호출한다.
팀원들과 공유할 수 있는 모달 노드 전용 설계 문서 작성
기존에 라이브/에디터 모드 모두에서 혼용되던 래퍼 컴포넌트를 분리하기 위해 라이브 모드 전용 래퍼 컴포넌트를 구현.
기존에 라이브/에디터 모드에서 모두 사용되면 래퍼 컴포넌트를 에디터 모드에서만 사용되도록 역할 분리 완료. 라이브 모드에서는 LiveModeWrapper래퍼 컴포넌트를 사용하도록 분리 완료.
에디터 섹션에서 노드를 클릭할때 사이드바에서 선택된 노드를 알 수 있게 해줌. 스토어 내부의 액션들을 내무에서 커스텀 훅으로 따로export해서 나중에 스토어가 커지거나 변경되도 내부에서만 변경할 수 있도록 구현 완료.
두가지 모드에서 사용되는 노드 렌더러 래퍼컴포넌트 구현완료. 노드 렌더러는 항상 래퍼 컴포넌트를 100%채우도록 렌더링 되기 때문에 노드의 레이아웃은 현재 래퍼 컴포넌트가 담당한다.
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.
🔍 변경 사항 요약
이번 PR에서는 모달 시스템의 구조를 전면적으로 개편하고, 에디터와 라이브 모드에서 각각 사용될 노드 렌더러 래퍼를 구현했습니다. 또한 리액트 보안 이슈 대응을 위한 의존성 업데이트와 에디터 상태 관리를 위한 스토어가 추가되었습니다.
주요 변경 사항은 다음과 같습니다:
🛠️ 상세 작업 내용
✨ 기능 추가 (Features)
모달 호스트 및 렌더러 구현: 중앙 집중식 모달 관리를 위한 ModalHost와 실제 콘텐츠를 그리는 ModalRenderer를 구현했습니다.
노드 렌더러 래퍼:
모든 모드에서 공통으로 사용되는 NodeRendererWrapper 구현
라이브 모드용 렌더러 및 래퍼 구현
에디터 스토어: 에디터 상태 관리를 위한 useEditorStore (Zustand) 추가
♻️ 리팩토링 (Refactoring)
📝 문서
modal_node_system.md: 모달 노드 시스템 설계에 대한 문서 추가
📦 기타
의존성 업그레이드: 리액트 보안 이슈 해결을 위한 패키지 버전 업데이트
✅ 체크리스트