fix(sprint-5/etapa-4b): library useEffect usa user.id no user ref — corta contención processLock en guardar perfil
Some checks failed
/ Deploy to Cloudflare Pages (push) Has been cancelled
Some checks failed
/ Deploy to Cloudflare Pages (push) Has been cancelled
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -18,8 +18,6 @@ export function ProfileSheet({ open, onOpenChange }: ProfileSheetProps) {
|
||||
const [company, setCompany] = useState('')
|
||||
const [saving, setSaving] = useState(false)
|
||||
|
||||
console.log('[ProfileSheet] render — open:', open, 'saving:', saving, 'user.name:', user?.name)
|
||||
|
||||
useEffect(() => {
|
||||
if (open && user) {
|
||||
setName(user.name)
|
||||
@@ -32,7 +30,6 @@ export function ProfileSheet({ open, onOpenChange }: ProfileSheetProps) {
|
||||
|
||||
async function handleSave() {
|
||||
if (!user || !name.trim()) return
|
||||
console.log('[ProfileSheet] saveProfile start — name:', name.trim(), 'company:', company.trim())
|
||||
setSaving(true)
|
||||
try {
|
||||
const { error } = await supabase
|
||||
@@ -40,12 +37,10 @@ export function ProfileSheet({ open, onOpenChange }: ProfileSheetProps) {
|
||||
.update({ name: name.trim(), company: company.trim() || null })
|
||||
.eq('id', user.id)
|
||||
if (error) throw error
|
||||
console.log('[ProfileSheet] DB updated')
|
||||
updateUser({ name: name.trim(), company: company.trim() || undefined })
|
||||
console.log('[ProfileSheet] local state updated')
|
||||
onOpenChange(false)
|
||||
} catch (err) {
|
||||
console.error('[ProfileSheet] Error al guardar perfil:', err)
|
||||
console.error('Error al guardar perfil:', err)
|
||||
} finally {
|
||||
setSaving(false)
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user