Conversation
package/ui/types/componentsProps.ts 에 존재하는 노드를 구현하기 위한 추출한 최소한의 atoms임
5가지는 패키지에 현재 존재하는 노드의 타입들과 매핑됨
…into feature/sidebar
- NavigationBar 상수를 model 레이어로 분리 - Static/DynamicContent 콜백 시 아이템 객체 전체를 전달하도록 리팩토링 - ComponentPanel과 useCreateCanvasNode 기능 연결 - 향후 개선을 위한 TODO 주석 추가 (pageId 관리, 타입 안전성)
component-defaults.ts: 각 노드 타입별 초기 속성(props), 스타일, 레이아웃 정의 types/component.ts: 컴포넌트 생성 요청/응답을 위한 타입 정의 api/components.ts: 클라이언트 측에서 동작하는 컴포넌트 레코드 생성 모크 API 구현
useComponentDefaults 훅을 통한 컴포넌트 초기 상태(props, style) 제공 중복 요청 방지를 위한 클라이언트 측 캐싱 매커니즘 적용
API 호출, 기본값 매핑, 전역 상태 업데이트를 통합한 노드 생성 워크플로우 추상화 WcxNode 타입 규격에 맞춘 데이터 조합 로직 구현
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] Widget: Left Sidebar UI 구현 및 컴포넌트 추가 로직 정립
� 목적 및 요약
에디터의 핵심 인터페이스인 Left Sidebar 위젯의 전체 구조를 설계 및 구현하고, 이와 연동된 컴포넌트 추가(Canvas Node Creation) 플로우의 아키텍처를 정립했습니다.
📁 주요 변경 사항 (Core Components)
apps/editor/src/widgets/left-sidebar: 사이드바 메인 레이아웃 및 탭 시스템apps/editor/src/features/canvas: 5단계 추상화 기반 노드 생성 훅 구현apps/editor/src/entities/component: 컴포넌트 기본값 및 레코드 생성 로직apps/editor/src/shared/lib/component-defaults: 전역 컴포넌트 초기 데이터🚀 구현 상세
1. 5개 카테고리별 서브 패널 UI 완비
좌측 내비게이션 바를 통한 탭 전환 및 5가지 리소스 관리 패널의 UI를 모두 구현했습니다.
Note
현재 UI상으로는 5가지 패널이 모두 구현되어 있으나, 실제 비즈니스 로직(기능)이 완전히 연결된 것은
Component Panel뿐입니다. 나머지 패널들은 순차적으로 기능을 연동할 예정입니다.2. 컴포넌트 추가 플로우 (단방향 참조 아키텍처)
노드 추가 버튼 클릭 시 발생되는 로직을 상위 레이어가 하위 레이어만 참조하는 단방향 의존성 구조로 설계했습니다.
Widgets→Features→Entities→ShareduseCreateCanvasNode훅에서 5단계 절차(위치 계산 → Mock API 레코드 생성 → 초기값 결합 → 전역 상태 반영)로 캡슐화 처리Widget,Page,Section,Modal패널의 실제 기능을 연동할 계획입니다.