"use client";

import { CircleCheckBig } from "lucide-react";

import { Button } from "@/components/ui/button";
import { Dialog, DialogContent, DialogDescription, DialogHeader, DialogTitle } from "@/components/ui/dialog";

interface ProfileSuccessDialogProps {
  open: boolean;
  title: string;
  description: string;
  closeLabel: string;
  onOpenChange: (open: boolean) => void;
}

export function ProfileSuccessDialog({ open, title, description, closeLabel, onOpenChange }: ProfileSuccessDialogProps) {
  return (
    <Dialog open={open} onOpenChange={onOpenChange}>
      <DialogContent className="max-w-[620px] rounded-2xl p-8 text-center">
        <div className="mx-auto flex size-28 items-center justify-center rounded-full bg-primary/10 text-primary">
          <CircleCheckBig className="size-20" strokeWidth={1.5} />
        </div>
        <DialogHeader className="items-center gap-3 text-center">
          <DialogTitle className="text-2xl">{title}</DialogTitle>
          <DialogDescription className="text-base">{description}</DialogDescription>
        </DialogHeader>
        <Button className="h-14 rounded-xl" onClick={() => onOpenChange(false)}>{closeLabel}</Button>
      </DialogContent>
    </Dialog>
  );
}
