From ef4c533ebacc2cdc97e518f30e9a9350004fcdfb Mon Sep 17 00:00:00 2001 From: dujinkim Date: Mon, 28 Apr 2025 02:13:30 +0000 Subject: ~20250428 작업사항 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../basicContract-table-toolbar-actions.tsx | 56 ++++++++++++++++++++++ 1 file changed, 56 insertions(+) create mode 100644 lib/basic-contract/vendor-table/basicContract-table-toolbar-actions.tsx (limited to 'lib/basic-contract/vendor-table/basicContract-table-toolbar-actions.tsx') diff --git a/lib/basic-contract/vendor-table/basicContract-table-toolbar-actions.tsx b/lib/basic-contract/vendor-table/basicContract-table-toolbar-actions.tsx new file mode 100644 index 00000000..2e5e4471 --- /dev/null +++ b/lib/basic-contract/vendor-table/basicContract-table-toolbar-actions.tsx @@ -0,0 +1,56 @@ +"use client" + +import * as React from "react" +import { type Task } from "@/db/schema/tasks" +import { type Table } from "@tanstack/react-table" +import { Download, Upload } from "lucide-react" + +import { exportTableToExcel } from "@/lib/export" +import { Button } from "@/components/ui/button" +import { BasicContractView } from "@/db/schema" +import { BasicContractSignDialog } from "./basic-contract-sign-dialog" + +interface TemplateTableToolbarActionsProps { + table: Table +} + +export function BasicContractTableToolbarActions({ table }: TemplateTableToolbarActionsProps) { + // 파일 input을 숨기고, 버튼 클릭 시 참조해 클릭하는 방식 + + const inPendingContracts = React.useMemo(() => { + return table + .getFilteredSelectedRowModel() + .rows + .map(row => row.original) + .filter(contract => contract.status === "PENDING"); + }, [table.getFilteredSelectedRowModel().rows]); + + + return ( +
+ + {table.getFilteredSelectedRowModel().rows.length > 0 ? ( + table.toggleAllRowsSelected(false)} + /> + ) : null} + + {/** 4) Export 버튼 */} + +
+ ) +} \ No newline at end of file -- cgit v1.2.3