diff options
Diffstat (limited to 'lib/general-check-list/table')
| -rw-r--r-- | lib/general-check-list/table/general-check-table-columns.tsx | 56 |
1 files changed, 31 insertions, 25 deletions
diff --git a/lib/general-check-list/table/general-check-table-columns.tsx b/lib/general-check-list/table/general-check-table-columns.tsx index c764686d..e95855a9 100644 --- a/lib/general-check-list/table/general-check-table-columns.tsx +++ b/lib/general-check-list/table/general-check-table-columns.tsx @@ -8,6 +8,7 @@ import { Ellipsis, Pencil, Trash } from "lucide-react"; import { DataTableColumnHeaderSimple } from "@/components/data-table/data-table-column-simple-header"; import { DeleteEvaluationsDialog } from "./delete-check-lists-dialog"; import { EditEvaluationSheet } from "./update-check-list-sheet"; +import { DropdownMenu, DropdownMenuShortcut, DropdownMenuSeparator, DropdownMenuItem, DropdownMenuContent, DropdownMenuTrigger } from "@/components/ui/dropdown-menu"; export interface GeneralEvaluationRow { @@ -95,42 +96,47 @@ export function getGeneralEvaluationColumns(): ColumnDef<GeneralEvaluationRow>[] { id: "actions", enableHiding: false, - size: 40, - minSize:80, - cell: ({ row }) => { + size: 80, + cell: function Cell({ row }) { const record = row.original; const [openEdit, setOpenEdit] = React.useState(false); const [openDelete, setOpenDelete] = React.useState(false); return ( - <> - <Button - variant="ghost" - size="icon" - className="size-8" - onClick={() => setOpenEdit(true)} - aria-label="edit" - > - <Pencil className="size-4" /> - </Button> - <Button - variant="ghost" - size="icon" - className="size-8" - onClick={() => setOpenDelete(true)} - aria-label="delete" - > - <Trash className="size-4" /> - </Button> - - <EditEvaluationSheet open={openEdit} onOpenChange={setOpenEdit} evaluation={record} /> + <DropdownMenu> + <DropdownMenuTrigger asChild> + <Button + aria-label="Open menu" + variant="ghost" + className="flex size-8 p-0 data-[state=open]:bg-muted" + > + <Ellipsis className="size-4" aria-hidden="true" /> + </Button> + </DropdownMenuTrigger> + <DropdownMenuContent align="end" className="w-40"> + <DropdownMenuItem + onSelect={() => setOpenEdit(true)} + > + {/* <Pencil className="mr-2 size-4" /> */} + 수정하기 + </DropdownMenuItem> + <DropdownMenuSeparator /> + <DropdownMenuItem + onSelect={() => setOpenDelete(true)} + > + {/* <Trash className="mr-2 size-4" /> */} + 삭제하기 + <DropdownMenuShortcut>⌘⌫</DropdownMenuShortcut> + </DropdownMenuItem> + </DropdownMenuContent> + <EditEvaluationSheet open={openEdit} onOpenChange={setOpenEdit} evaluation={record} /> <DeleteEvaluationsDialog open={openDelete} onOpenChange={setOpenDelete} evaluations={[record]} showTrigger={false} /> - </> + </DropdownMenu> ); }, }, |
