diff options
Diffstat (limited to 'lib/poa/table/poa-table-toolbar-actions.tsx')
| -rw-r--r-- | lib/poa/table/poa-table-toolbar-actions.tsx | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/lib/poa/table/poa-table-toolbar-actions.tsx b/lib/poa/table/poa-table-toolbar-actions.tsx new file mode 100644 index 00000000..97a9cc55 --- /dev/null +++ b/lib/poa/table/poa-table-toolbar-actions.tsx @@ -0,0 +1,45 @@ +"use client" + +import * as React from "react" +import { type Table } from "@tanstack/react-table" +import { Download, RefreshCcw } from "lucide-react" + +import { exportTableToExcel } from "@/lib/export" +import { Button } from "@/components/ui/button" +import { POADetail } from "@/db/schema/contract" + +interface ItemsTableToolbarActionsProps { + table: Table<POADetail> +} + +export function PoaTableToolbarActions({ table }: ItemsTableToolbarActionsProps) { + return ( + <div className="flex items-center gap-2"> + {/** Refresh 버튼 */} + <Button + variant="samsung" + size="sm" + className="gap-2" + > + <RefreshCcw className="size-4" aria-hidden="true" /> + <span className="hidden sm:inline">Get POAs</span> + </Button> + + {/** Export 버튼 */} + <Button + variant="outline" + size="sm" + onClick={() => + exportTableToExcel(table, { + filename: "poa-list", + 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 |
