import InputError from '@/components/input-error'; import LoadingButton from '@/components/loading-button'; import { Card } from '@/components/ui/card'; import { Input } from '@/components/ui/input'; import { SharedData } from '@/types/global'; import { useForm, usePage } from '@inertiajs/react'; import { Camera } from 'lucide-react'; import { FormEventHandler, useState } from 'react'; const Profile = () => { const { props } = usePage(); const { translate } = props; const { input, button, common, dashboard } = translate; const { name, photo } = props.auth.user; const [imageUrl, setImageUrl] = useState(photo); const { data, setData, post, errors, clearErrors, processing } = useForm({ name: name, photo: null, }); const submit: FormEventHandler = (e) => { e.preventDefault(); clearErrors(); post(route('settings.profile')); }; const handleImageChange = (e: any) => { const files = e.target.files; if (files && files[0]) { setData('photo', files[0]); setImageUrl(URL.createObjectURL(files[0])); } }; return (
{imageUrl ? ( item-1 ) : (
)}
{dashboard.image_upload_requirements} {errors.photo &&

{errors.photo}

}
setData('name', e.target.value)} />
{button.save_changes}
); }; export default Profile;