Skip to content

Conversation

choi1five
Copy link
Contributor

관련 이슈 번호

핵심 변경 사항 및 이유

  • 에디터 블록 이벤트 감지 시스템 구축: Plate.js 에디터에서 블록 단위 변경사항(NEW_BLOCK, SPLITTED, MERGING, REORDER 등)을 실시간으로 감지하고 변환하는 PlateEditorAdapter 클래스 추가
  • 디바운스/스로틀 적용: 텍스트 입력 최적화를 위한 debouncethrottle 함수 적용 (SHORT_REST, LONG_TYPING 이벤트 처리)
  • 깊은 비교 함수 구현: 블록 상태 변경 감지를 위한 deepEqual 함수 추가로 중복 이벤트 방지

이외 기타 변경 사항 (선택)

  • 루트 레이아웃 Toaster 추가
  • debounce.ts: 디바운스 관련 유틸리티 함수 추가
  • deep-equal.ts: 깊은 비교 유틸리티 함수 추가

리뷰 시 참고 사항 (선택)

  • 에디터 이벤트 시스템: PlateEditorAdapter는 Plate.js의 operations를 분석하여 블록 레벨 변경사항을 감지합니다. 텍스트 입력은 디바운스/스로틀로 최적화되어 SHORT_REST(300ms 후)와 LONG_TYPING(5초 간격) 이벤트로 구분 처리됩니다.
  • 성능 최적화: deepEqual 함수로 블록 상태 변경을 감지하여 중복 호출 방지
  • 테스트 시 확인사항: 에디터에서 블록 생성, 분할, 병합, 재정렬 등의 동작이 올바른 이벤트 타입으로 감지되는지, 텍스트 입력 시 적절한 시점에 SHORT_REST/LONG_TYPING 이벤트가 발생하는지 확인
  • 이벤트 감지 후 변환 데이터 추후 수정 필요

@choi1five choi1five self-assigned this Sep 7, 2025
@choi1five choi1five added the type: feature 신규 기능 & 기능 개선 label Sep 7, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type: feature 신규 기능 & 기능 개선
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant