import { useEffect, useRef, useState } from 'react' import { TitleCard } from '../Templates/TitleCard' import { TextInput } from '../Input/TextInput' import { TextAreaInput } from '../Input/TextAreaInput' import { toast } from 'react-toastify'; import { useNavigate } from 'react-router-dom' import { useAuth } from '../Auth'; import * as React from 'react' import ReactCrop, { Crop, centerCrop, makeAspectCrop } from 'react-image-crop' import 'react-image-crop/dist/ReactCrop.css' import 'react-toastify/dist/ReactToastify.css'; import { UserItem } from '../../types'; import DialogModal from '../Templates/DialogModal'; import { useAssetApi } from '../AppShell/hooks/useAssets'; import { ColorPicker } from './ColorPicker'; export function UserSettings() { const { user, updateUser, loading, token } = useAuth(); const [id, setId] = useState(""); const [email, setEmail] = useState(""); const [password, setPassword] = useState(""); const [passwordChanged, setPasswordChanged] = useState(false); const navigate = useNavigate(); useEffect(() => { setId(user?.id ? user.id : ""); setEmail(user?.email ? user.email : ""); setPassword(user?.password ? user.password : ""); }, [user]) const onUpdateUser = () => { let changedUser = {} as UserItem; changedUser = { id: id, email: email, ...passwordChanged && { password: password }}; toast.promise( updateUser(changedUser), { pending: 'updating Profile ...', success: 'Profile updated', error: { render({ data }) { return `${data}` }, }, }) .then(() => navigate("/")); } return ( <>
setEmail(v)} /> { setPassword(v); setPasswordChanged(true); }} /> {/* */}
) }