fix: 카테고리 타입 컬럼 라벨 표시 및 빌드 오류 수정 #187

Merged
kjs merged 2 commits from feature/screen-management into main 2025-11-06 12:04:20 +09:00
2 changed files with 36 additions and 32 deletions

View File

@ -168,7 +168,7 @@ export default function CopyScreenModal({ isOpen, onClose, sourceScreen, onCopyS
</div>
</div>
<DialogFooter>
<ResizableDialogFooter>
<Button variant="outline" onClick={handleClose} disabled={isCopying}>
</Button>

View File

@ -2,8 +2,12 @@
import React, { useState, useEffect, useRef } from "react";
import {
Dialog,
DialogContent,
ResizableDialog,
ResizableDialogContent,
ResizableDialogFooter,
ResizableResizableDialogHeader,
ResizableResizableDialogTitle,
ResizableResizableDialogDescription,
} from "@/components/ui/resizable-dialog";
import { Button } from "@/components/ui/button";
import { Badge } from "@/components/ui/badge";
@ -111,7 +115,7 @@ export const MenuAssignmentModal: React.FC<MenuAssignmentModalProps> = ({
autoRedirectTimerRef.current = null;
}
}
// 컴포넌트 언마운트 시 타이머 정리
return () => {
if (autoRedirectTimerRef.current) {
@ -341,26 +345,26 @@ export const MenuAssignmentModal: React.FC<MenuAssignmentModalProps> = ({
return (
<>
<Dialog open={isOpen} onOpenChange={onClose}>
<DialogContent className="max-w-2xl">
<ResizableDialog open={isOpen} onOpenChange={onClose}>
<ResizableDialogContent className="max-w-2xl">
{assignmentSuccess ? (
// 성공 화면
<>
<DialogHeader>
<DialogTitle className="flex items-center gap-2">
<ResizableDialogHeader>
<ResizableDialogTitle className="flex items-center gap-2">
<div className="flex h-8 w-8 items-center justify-center rounded-full bg-green-100">
<svg className="h-5 w-5 text-green-600" fill="none" stroke="currentColor" viewBox="0 0 24 24">
<path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M5 13l4 4L19 7" />
</svg>
</div>
{assignmentMessage.includes("나중에") ? "화면 저장 완료" : "화면 할당 완료"}
</DialogTitle>
<DialogDescription>
</ResizableDialogTitle>
<ResizableDialogDescription>
{assignmentMessage.includes("나중에")
? "화면이 성공적으로 저장되었습니다. 나중에 메뉴에 할당할 수 있습니다."
: "화면이 성공적으로 메뉴에 할당되었습니다."}
</DialogDescription>
</DialogHeader>
</ResizableDialogDescription>
</ResizableDialogHeader>
<div className="space-y-4">
<div className="rounded-lg border bg-green-50 p-4">
@ -390,7 +394,7 @@ export const MenuAssignmentModal: React.FC<MenuAssignmentModalProps> = ({
clearTimeout(autoRedirectTimerRef.current);
autoRedirectTimerRef.current = null;
}
// 화면 목록으로 이동
if (onBackToList) {
onBackToList();
@ -408,14 +412,14 @@ export const MenuAssignmentModal: React.FC<MenuAssignmentModalProps> = ({
) : (
// 기본 할당 화면
<>
<DialogHeader>
<DialogTitle className="flex items-center gap-2">
<ResizableDialogHeader>
<ResizableDialogTitle className="flex items-center gap-2">
<Settings className="h-5 w-5" />
</DialogTitle>
<DialogDescription>
</ResizableDialogTitle>
<ResizableDialogDescription>
.
</DialogDescription>
</ResizableDialogDescription>
{screenInfo && (
<div className="bg-accent mt-2 rounded-lg border p-3">
<div className="flex items-center gap-2">
@ -428,7 +432,7 @@ export const MenuAssignmentModal: React.FC<MenuAssignmentModalProps> = ({
{screenInfo.description && <p className="mt-1 text-sm text-blue-700">{screenInfo.description}</p>}
</div>
)}
</DialogHeader>
</ResizableDialogHeader>
<div className="space-y-4">
{/* 메뉴 선택 (검색 기능 포함) */}
@ -568,22 +572,22 @@ export const MenuAssignmentModal: React.FC<MenuAssignmentModalProps> = ({
</>
)}
</Button>
</DialogFooter>
</ResizableDialogFooter>
</>
)}
</DialogContent>
</Dialog>
</ResizableDialogContent>
</ResizableDialog>
{/* 화면 교체 확인 대화상자 */}
<Dialog open={showReplaceDialog} onOpenChange={setShowReplaceDialog}>
<DialogContent className="max-w-md">
<DialogHeader>
<DialogTitle className="flex items-center gap-2">
<ResizableDialog open={showReplaceDialog} onOpenChange={setShowReplaceDialog}>
<ResizableDialogContent className="max-w-md">
<ResizableDialogHeader>
<ResizableDialogTitle className="flex items-center gap-2">
<Monitor className="h-5 w-5 text-orange-600" />
</DialogTitle>
<DialogDescription> .</DialogDescription>
</DialogHeader>
</ResizableDialogTitle>
<ResizableDialogDescription> .</ResizableDialogDescription>
</ResizableDialogHeader>
<div className="space-y-4">
{/* 기존 화면 목록 */}
@ -648,9 +652,9 @@ export const MenuAssignmentModal: React.FC<MenuAssignmentModalProps> = ({
</>
)}
</Button>
</DialogFooter>
</DialogContent>
</Dialog>
</ResizableDialogFooter>
</ResizableDialogContent>
</ResizableDialog>
</>
);
};