파일 업로드 기능 구현 및 상세설정 연동

- 템플릿 파일첨부 컴포넌트와 FileComponentConfigPanel 실시간 동기화
- FileUpload 위젯에 전역 파일 상태 관리 기능 추가
- 파일 업로드/삭제 시 전역 상태 및 localStorage 동기화
- RealtimePreview에서 전역 상태 우선 읽기 및 파일 개수 표시
- 한컴오피스, Apple iWork 파일 형식 지원 추가
- 파일 뷰어 모달 및 미리보기 기능 구현
- 업로드된 파일 디렉토리 .gitignore 추가
This commit is contained in:
leeheejin
2025-09-26 13:11:34 +09:00
parent c28e27f3e8
commit ee7c8e989e
20 changed files with 2661 additions and 503 deletions

View File

@@ -25,6 +25,7 @@ interface RealtimePreviewProps {
isSelected?: boolean;
isDesignMode?: boolean; // 편집 모드 여부
onClick?: (e?: React.MouseEvent) => void;
onDoubleClick?: (e?: React.MouseEvent) => void; // 더블클릭 핸들러 추가
onDragStart?: (e: React.DragEvent) => void;
onDragEnd?: () => void;
onGroupToggle?: (groupId: string) => void; // 그룹 접기/펼치기
@@ -67,6 +68,7 @@ export const RealtimePreviewDynamic: React.FC<RealtimePreviewProps> = ({
isSelected = false,
isDesignMode = true, // 기본값은 편집 모드
onClick,
onDoubleClick,
onDragStart,
onDragEnd,
onGroupToggle,
@@ -106,6 +108,11 @@ export const RealtimePreviewDynamic: React.FC<RealtimePreviewProps> = ({
onClick?.(e);
};
const handleDoubleClick = (e: React.MouseEvent) => {
e.stopPropagation();
onDoubleClick?.(e);
};
const handleDragStart = (e: React.DragEvent) => {
e.stopPropagation();
onDragStart?.(e);
@@ -121,6 +128,7 @@ export const RealtimePreviewDynamic: React.FC<RealtimePreviewProps> = ({
className="absolute cursor-pointer"
style={{ ...baseStyle, ...selectionStyle }}
onClick={handleClick}
onDoubleClick={handleDoubleClick}
draggable
onDragStart={handleDragStart}
onDragEnd={handleDragEnd}