"use client" import * as React from "react" import { type Row } from "@tanstack/react-table" import { Loader, Send, Trash, AlertTriangle } from "lucide-react" import { toast } from "sonner" import { useMediaQuery } from "@/hooks/use-media-query" import { Button } from "@/components/ui/button" import { Dialog, DialogClose, DialogContent, DialogDescription, DialogFooter, DialogHeader, DialogTitle, DialogTrigger, } from "@/components/ui/dialog" import { Drawer, DrawerClose, DrawerContent, DrawerDescription, DrawerFooter, DrawerHeader, DrawerTitle, DrawerTrigger, } from "@/components/ui/drawer" import { Alert, AlertDescription } from "@/components/ui/alert" import { MatchedVendorRow } from "@/config/vendorRfbColumnsConfig" import { inviteVendors } from "../service" import { RfqType } from "@/lib/rfqs/validations" interface DeleteTasksDialogProps extends React.ComponentPropsWithoutRef { vendors: Row["original"][] rfqId:number rfqType: RfqType showTrigger?: boolean onSuccess?: () => void } export function InviteVendorsDialog({ vendors, rfqId, rfqType, showTrigger = true, onSuccess, ...props }: DeleteTasksDialogProps) { const [isInvitePending, startInviteTransition] = React.useTransition() const isDesktop = useMediaQuery("(min-width: 640px)") function onDelete() { startInviteTransition(async () => { const { error } = await inviteVendors({ rfqId, vendorIds: vendors.map((vendor) => Number(vendor.id)), rfqType }) if (error) { toast.error(error) return } props.onOpenChange?.(false) toast.success("Vendor invited") onSuccess?.() }) } if (isDesktop) { return ( {showTrigger ? ( ) : null} Are you absolutely sure? This action cannot be undone. This will permanently invite{" "} {vendors.length} {vendors.length === 1 ? " vendor" : " vendors"}. {/* 편집 제한 경고 메시지 */} 한 업체라도 초대를 하고 나면 아이템 편집과 RFQ 문서 첨부 편집은 불가능합니다. ) } return ( {showTrigger ? ( ) : null} Are you absolutely sure? This action cannot be undone. This will permanently invite {" "} {vendors.length} {vendors.length === 1 ? " vendor" : " vendors"} from our servers. {/* 편집 제한 경고 메시지 (모바일용) */}
한 업체라도 초대를 하고 나면 아이템 편집과 RFQ 문서 첨부 편집은 불가능합니다.
) }