유저 스토리
- 클라이언트와 서버가 연결된다.
- 서버는 클라이언트에 assigneId를 부여한다
- 서버는 클라이언트에 mongoDB에 저장된 workSpace 정보를 전송한다.
- 분기
- workSpace는 pageList의 정보를 가지며 Page를 누를 때 Page의 정보들을 server에서 가져온다
- workSpace에 접근할 때 pageList안에 있는 Page의 모든 정보들을 server에서 가져온다
- 클라이언트는 페이지를 켠다.
- 클라이언트는 서버에서 받은 page 정보를 확인한다.
- 클라이언트는 page에 입력, 삭제를 시전 한다.
현재 상황
작은 client ↔ server 목표
- [x] lint 에러 잡고 block update API 제작해서 통신확인하기
- [x] Char입력될때 Block 이 추가되는 현상 잡기
- [x] remoteChar, Block / Insert,Delete나누기
- [x] remoteCharInsert 서버 연동
- [x] remoteCharDelete 서버 연동
- [x] CRDT의 역직렬화 메소드 검증하기
- [x] char를 넘길때 blockId을 주냐, block을 주냐를 정해야한다!
- [x] blockId을 넘겨보고 안되면 block !! (직접구현해보기)
- [x] 서버의 BlockCRDT → EditorCRDT 로 확장
- [x] workspace socket연동
- [x] insert, delete 되나 확인
- [x] usePageManage에서 page.id 받아서
- [x] 어느 페이지의 블록을 바꿀것이냐를 받아야
- [x] updateBlock하고
- [x] page, socket연동
- [x] remoteBlockUpdate 서버 연동
- [x] block의 타입, 글자색, 배경색이 바뀌었다를 알리는 녀석
- [x] socket.emit
- [x] remoteUpdate
- [x] blockReorder 해야함
- [x] 현재 #156 브런치는 pull dev 가 된 상태인가?
먼저 client와 server가