Feat: Agregar botón de reiniciar formulario
All checks were successful
build-and-deploy / build-and-deploy (push) Successful in 55s
All checks were successful
build-and-deploy / build-and-deploy (push) Successful in 55s
- Nuevo botón "Reiniciar" en el footer junto a Cancelar y Guardar - Solo aparece cuando hay cambios pendientes (v-if="hasChanges") - Color warning con variant soft para indicar acción destructiva - Ícono de arrow-path (flecha circular) - Función resetForm() que: - Pide confirmación al usuario - Restaura todos los campos a valores originales - Limpia la cookie de borrador - Muestra toast informativo - Ubicado entre botones Cancelar y Guardar cambios El botón permite descartar todos los cambios y volver al estado original sin tener que recargar la página.
This commit is contained in:
@@ -267,6 +267,19 @@
|
||||
>
|
||||
Cancelar
|
||||
</UButton>
|
||||
|
||||
<UButton
|
||||
v-if="hasChanges"
|
||||
color="warning"
|
||||
variant="soft"
|
||||
size="lg"
|
||||
@click="resetForm"
|
||||
:disabled="isSubmitting"
|
||||
>
|
||||
<UIcon name="i-heroicons-arrow-path" class="w-5 h-5" />
|
||||
Reiniciar
|
||||
</UButton>
|
||||
|
||||
<UButton
|
||||
color="primary"
|
||||
size="lg"
|
||||
@@ -523,6 +536,36 @@ const handleAvatarCapture = async (imageBlob: Blob) => {
|
||||
}
|
||||
}
|
||||
|
||||
// Reiniciar formulario a valores originales
|
||||
const resetForm = () => {
|
||||
if (!confirm('¿Estás seguro de descartar todos los cambios?\n\nSe restaurarán los valores originales y se eliminará el borrador guardado.')) {
|
||||
return
|
||||
}
|
||||
|
||||
// Restaurar valores originales
|
||||
formData.value = {
|
||||
name: originalData.value.name,
|
||||
email: originalData.value.email,
|
||||
avatar: originalData.value.avatar,
|
||||
phone: originalData.value.phone,
|
||||
cedula: originalData.value.cedula,
|
||||
birthdate: originalData.value.birthdate,
|
||||
nfc: originalData.value.nfc,
|
||||
pin: originalData.value.pin,
|
||||
nucleoCode: originalData.value.nucleoCode
|
||||
}
|
||||
|
||||
// Limpiar cookie de borrador
|
||||
formCookie.value = {}
|
||||
|
||||
toast.add({
|
||||
title: 'Formulario reiniciado',
|
||||
description: 'Se restauraron los valores originales y se eliminó el borrador',
|
||||
color: 'info',
|
||||
icon: 'i-heroicons-arrow-path'
|
||||
})
|
||||
}
|
||||
|
||||
// Eliminar avatar personalizado
|
||||
const removeAvatar = async () => {
|
||||
if (!confirm('¿Estás seguro de que quieres eliminar tu foto de perfil?')) {
|
||||
|
||||
Reference in New Issue
Block a user