'use client'; import { useState } from 'react'; import { Dialog, DialogContent, DialogHeader, DialogTitle, } from '@/components/ui/dialog'; import { Button } from '@/components/ui/button'; import { Input } from '@/components/ui/input'; import { Label } from '@/components/ui/label'; import { Textarea } from '@/components/ui/textarea'; import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue, } from '@/components/ui/select'; import type { UserRole } from './types'; import { USER_ROLE_LABELS } from './types'; interface UserInviteDialogProps { open: boolean; onOpenChange: (open: boolean) => void; onInvite: (data: { email: string; role: UserRole; message?: string }) => void; } export function UserInviteDialog({ open, onOpenChange, onInvite }: UserInviteDialogProps) { const [email, setEmail] = useState(''); const [role, setRole] = useState('user'); const [message, setMessage] = useState(''); const handleSubmit = () => { if (!email) return; onInvite({ email, role, message: message || undefined }); // Reset form setEmail(''); setRole('user'); setMessage(''); }; const handleCancel = () => { setEmail(''); setRole('user'); setMessage(''); onOpenChange(false); }; return ( 사용자 초대
{/* 이메일 주소 */}
setEmail(e.target.value)} />
{/* 권한 */}
{/* 초대 메시지 (선택) */}