"use client" import * as React from "react" import { type Table } from "@tanstack/react-table" import { Download, Upload, Plus, Files } from "lucide-react" import { toast } from "sonner" import { exportTableToExcel } from "@/lib/export" import { Button } from "@/components/ui/button" import { EnhancedDocumentsView } from "@/db/schema/vendorDocu" import { AddDocumentListDialog } from "./add-doc-dialog" import { DeleteDocumentsDialog } from "./delete-docs-dialog" import { BulkUploadDialog } from "./bulk-upload-dialog" import type { EnhancedDocument } from "@/types/enhanced-documents" import { SendToSHIButton } from "./send-to-shi-button" interface EnhancedDocTableToolbarActionsProps { table: Table projectType: "ship" | "plant" selectedPackageId: number onNewDocument: () => void onBulkAction: (action: string, selectedRows: any[]) => Promise } export function EnhancedDocTableToolbarActions({ table, projectType, selectedPackageId, onNewDocument, onBulkAction }: EnhancedDocTableToolbarActionsProps) { const [bulkUploadDialogOpen, setBulkUploadDialogOpen] = React.useState(false) // 현재 테이블의 모든 데이터 (필터링된 상태) const allDocuments = table.getFilteredRowModel().rows.map(row => row.original) const handleSyncComplete = () => { // 동기화 완료 후 테이블 새로고침 table.resetRowSelection() // 필요시 추가 액션 수행 } return (
{/* 기존 액션들 */} {table.getFilteredSelectedRowModel().rows.length > 0 ? ( row.original)} onSuccess={() => table.toggleAllRowsSelected(false)} /> ) : null} {/* 메인 액션 버튼들 */} {projectType === "plant" && ( )} {/* 일괄 업로드 버튼 */} {/* Export 버튼 */} {/* ✅ 새로운 Send to SHI 버튼으로 교체 */} {/* 일괄 업로드 다이얼로그 */}
) }