- 입금관리, 출금관리 리스트에 등록 버튼 추가 - skeleton, confirm-dialog, empty-state, status-badge UI 컴포넌트 추가 - document-system 컴포넌트 추상화 (ApprovalLine, DocumentHeader 등) - 여러 페이지 컴포넌트 리팩토링 및 코드 정리 Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
66 lines
1.8 KiB
TypeScript
66 lines
1.8 KiB
TypeScript
'use client';
|
|
|
|
import {
|
|
SaveConfirmDialog,
|
|
DeleteConfirmDialog,
|
|
} from '@/components/ui/confirm-dialog';
|
|
|
|
interface OrderDialogsProps {
|
|
// 저장 다이얼로그
|
|
showSaveDialog: boolean;
|
|
onSaveDialogChange: (open: boolean) => void;
|
|
onConfirmSave: () => void;
|
|
// 삭제 다이얼로그
|
|
showDeleteDialog: boolean;
|
|
onDeleteDialogChange: (open: boolean) => void;
|
|
onConfirmDelete: () => void;
|
|
// 카테고리 삭제 다이얼로그
|
|
showCategoryDeleteDialog: string | null;
|
|
onCategoryDeleteDialogChange: (categoryId: string | null) => void;
|
|
onConfirmDeleteCategory: () => void;
|
|
// 공통
|
|
isLoading: boolean;
|
|
}
|
|
|
|
export function OrderDialogs({
|
|
showSaveDialog,
|
|
onSaveDialogChange,
|
|
onConfirmSave,
|
|
showDeleteDialog,
|
|
onDeleteDialogChange,
|
|
onConfirmDelete,
|
|
showCategoryDeleteDialog,
|
|
onCategoryDeleteDialogChange,
|
|
onConfirmDeleteCategory,
|
|
isLoading,
|
|
}: OrderDialogsProps) {
|
|
return (
|
|
<>
|
|
{/* 저장 확인 다이얼로그 */}
|
|
<SaveConfirmDialog
|
|
open={showSaveDialog}
|
|
onOpenChange={onSaveDialogChange}
|
|
loading={isLoading}
|
|
onConfirm={onConfirmSave}
|
|
/>
|
|
|
|
{/* 삭제 확인 다이얼로그 */}
|
|
<DeleteConfirmDialog
|
|
open={showDeleteDialog}
|
|
onOpenChange={onDeleteDialogChange}
|
|
description="이 발주를 삭제하시겠습니까? 이 작업은 되돌릴 수 없습니다."
|
|
loading={isLoading}
|
|
onConfirm={onConfirmDelete}
|
|
/>
|
|
|
|
{/* 카테고리 삭제 확인 다이얼로그 */}
|
|
<DeleteConfirmDialog
|
|
open={!!showCategoryDeleteDialog}
|
|
onOpenChange={() => onCategoryDeleteDialogChange(null)}
|
|
description="이 발주 상세를 삭제하시겠습니까? 해당 카테고리의 모든 품목이 삭제됩니다."
|
|
onConfirm={onConfirmDeleteCategory}
|
|
/>
|
|
</>
|
|
);
|
|
}
|