'use client'; import { updateProfile } from '@services/settings/profile' import React, { useEffect } from 'react' import { Formik, Form, Field } from 'formik' import { useLHSession } from '@components/Contexts/LHSessionContext' import { ArrowBigUpDash, Check, FileWarning, Info, UploadCloud, } from 'lucide-react' import UserAvatar from '@components/Objects/UserAvatar' import { updateUserAvatar } from '@services/users/users' function UserEditGeneral() { const session = useLHSession() as any; const access_token = session.data.tokens.access_token; const [localAvatar, setLocalAvatar] = React.useState(null) as any const [isLoading, setIsLoading] = React.useState(false) as any const [error, setError] = React.useState() as any const [success, setSuccess] = React.useState('') as any const handleFileChange = async (event: any) => { const file = event.target.files[0] setLocalAvatar(file) setIsLoading(true) const res = await updateUserAvatar(session.data.user_uuid, file, access_token) // wait for 1 second to show loading animation await new Promise((r) => setTimeout(r, 1500)) if (res.success === false) { setError(res.HTTPmessage) } else { setIsLoading(false) setError('') setSuccess('Avatar Updated') } } useEffect(() => { }, [session, session.data]) return (
Recommended size 100x100