'use client';

import { AlertDialog } from '@/components/ui/alert-dialog';
import { api } from '@/lib/api';

type Employee = {
  id: string;
  name: string;
  role: string;
  department: string;
  phone: string;
  status: 'active' | 'inactive';
  hiredAt: string;
};

type DeleteEmployeeDialogProps = {
  open: boolean;
  onClose: () => void;
  onDeleted: () => void;
  employee: Employee | null;
};

export function DeleteEmployeeDialog({
  open,
  onClose,
  onDeleted,
  employee,
}: DeleteEmployeeDialogProps) {
  const handleConfirm = async () => {
    if (!employee) return;
    await api.delete(`/users/${employee.id}`);
    onDeleted();
  };

  return (
    <AlertDialog
      open={open}
      onClose={onClose}
      onConfirm={handleConfirm}
      title="Удалить сотрудника"
      description={
        employee
          ? `Вы уверены, что хотите удалить сотрудника "${employee.name}"? Это действие нельзя отменить.`
          : ''
      }
      confirmLabel="Удалить"
      cancelLabel="Отмена"
      variant="danger"
    />
  );
}
