"use client"; import { Camera, Check, Pencil, X } from "lucide-react"; import { useState } from "react"; import { FileUpload, FileUploadTrigger } from "@/components/diceui/file-upload"; import { Avatar, AvatarFallback, AvatarImage } from "@/components/ui/avatar"; import { Button } from "@/components/ui/button"; import { Card, CardContent } from "@/components/ui/card"; import { Input } from "@/components/ui/input"; import { cn } from "@/lib/utils"; interface ProfileData { name: string; email: string; avatar?: string; role?: string; location?: string; } interface SettingsProfile7Props { defaultValues?: Partial; className?: string; } const SettingsProfile7 = ({ defaultValues = { name: "الهام میرزایی", email: "alex.morgan@email.com", avatar: "/block-media/shadcnblocks/block/avatar/avatar8.jpg", role: "مدیر موفقیت مشتری", location: "تهران، ایران", }, className, }: SettingsProfile7Props) => { const [editingField, setEditingField] = useState(null); const [formData, setFormData] = useState(defaultValues); const [tempValue, setTempValue] = useState(""); const [avatarFiles, setAvatarFiles] = useState([]); const avatarPreview = avatarFiles.length > 0 ? URL.createObjectURL(avatarFiles[0]) : formData.avatar; const startEdit = (field: string, currentValue: string) => { setEditingField(field); setTempValue(currentValue); }; const saveEdit = (field: keyof ProfileData) => { setFormData((prev) => ({ ...prev, [field]: tempValue })); setEditingField(null); }; const cancelEdit = () => { setEditingField(null); setTempValue(""); }; const initials = formData.name ?.split(" ") .map((n) => n[0]) .join("") .toUpperCase(); const EditableField = ({ field, label, value, }: { field: keyof ProfileData; label: string; value?: string; }) => { const isEditing = editingField === field; return (

{label}

{isEditing ? (
setTempValue(e.target.value)} className="h-8" autoFocus onKeyDown={(e) => { if (e.key === "Enter") saveEdit(field); if (e.key === "Escape") cancelEdit(); }} />
) : (

{value || ثبت نشده}

)}
{!isEditing && ( )}
); }; return (
{/* Avatar */}
{initials}
{/* Editable Fields */}
); }; export { SettingsProfile7 };