summaryrefslogtreecommitdiff
path: root/lib/tbe/table/tbe-table-toolbar-actions.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'lib/tbe/table/tbe-table-toolbar-actions.tsx')
-rw-r--r--lib/tbe/table/tbe-table-toolbar-actions.tsx72
1 files changed, 0 insertions, 72 deletions
diff --git a/lib/tbe/table/tbe-table-toolbar-actions.tsx b/lib/tbe/table/tbe-table-toolbar-actions.tsx
deleted file mode 100644
index cf6a041e..00000000
--- a/lib/tbe/table/tbe-table-toolbar-actions.tsx
+++ /dev/null
@@ -1,72 +0,0 @@
-"use client"
-
-import * as React from "react"
-import { type Table } from "@tanstack/react-table"
-import { Download, Upload } from "lucide-react"
-import { toast } from "sonner"
-
-import { exportTableToExcel } from "@/lib/export"
-import { Button } from "@/components/ui/button"
-
-
-import { InviteVendorsDialog } from "./invite-vendors-dialog"
-import { VendorWithTbeFields } from "@/config/vendorTbeColumnsConfig"
-
-interface VendorsTableToolbarActionsProps {
- table: Table<VendorWithTbeFields>
- rfqId: number
-}
-
-export function VendorsTableToolbarActions({ table,rfqId }: VendorsTableToolbarActionsProps) {
- // 파일 input을 숨기고, 버튼 클릭 시 참조해 클릭하는 방식
- const fileInputRef = React.useRef<HTMLInputElement>(null)
-
- // 파일이 선택되었을 때 처리
-
- function handleImportClick() {
- // 숨겨진 <input type="file" /> 요소를 클릭
- fileInputRef.current?.click()
- }
-
- // 선택된 행이 있는 경우 rfqId 확인
- const uniqueRfqIds = table.getFilteredSelectedRowModel().rows.length > 0
- ? [...new Set(table.getFilteredSelectedRowModel().rows.map(row => row.original.rfqId))]
- : [];
-
- const hasMultipleRfqIds = uniqueRfqIds.length > 1;
-
- const invitationPossibeVendors = React.useMemo(() => {
- return table
- .getFilteredSelectedRowModel()
- .rows
- .map(row => row.original)
- .filter(vendor => vendor.technicalResponseStatus === null);
- }, [table.getFilteredSelectedRowModel().rows]);
-
- return (
- <div className="flex items-center gap-2">
- {invitationPossibeVendors.length > 0 && (
- <InviteVendorsDialog
- vendors={invitationPossibeVendors}
- rfqId={rfqId}
- onSuccess={() => table.toggleAllRowsSelected(false)}
- hasMultipleRfqIds={hasMultipleRfqIds}
- />
- )}
- <Button
- variant="outline"
- size="sm"
- onClick={() =>
- exportTableToExcel(table, {
- filename: "tasks",
- excludeColumns: ["select", "actions"],
- })
- }
- className="gap-2"
- >
- <Download className="size-4" aria-hidden="true" />
- <span className="hidden sm:inline">Export</span>
- </Button>
- </div>
- )
-} \ No newline at end of file