feat(contact): add toast notifications for form feedback

- Add toast notifications for contact form success/error responses
- Add toast notifications for backend errors in AppFooter
- Add accessibility explanation for honeypot field
- Add loading state to contact form submit button
- Add i18n translations for toast messages (en/fr)
- Fix honeypot input missing v-model binding
This commit is contained in:
2026-02-04 15:19:08 +01:00
parent 10e51b5da4
commit 37972aa660
6 changed files with 57 additions and 17 deletions

View File

@@ -38,6 +38,11 @@
"name": "Languages & Worldbuilding"
},
"contact": {
"name": "Contact",
"toast": {
"success": "Email sent!",
"error": "Failure sending message"
},
"form": {
"sendButton": "Send Message",
"validation": {
@@ -59,8 +64,7 @@
"message": "Hello, ...",
"website": "https://example.com"
}
},
"name": "Contact"
}
}
},
"footer": {
@@ -81,7 +85,7 @@
"unknown": "The website encountered an unknown error. Please try again later."
},
"contact": {
"success": "Email sent! Weve also sent you a confirmation email!",
"success": "Weve also sent you a confirmation email. If you havent received anything in a few minutes, please check your junk mail.",
"honeypot": "Mmmmmh, I love me some honey from the honeypot!",
"errors": {
"internal": "The website encountered an internal error. Please try again later.",

View File

@@ -39,6 +39,10 @@
},
"contact": {
"name": "Contact",
"toast": {
"success": "Couriel envoyé !",
"error": "Erreur lors de l'envoi du message"
},
"form": {
"sendButton": "Envoyer le message",
"validation": {
@@ -81,7 +85,7 @@
"unknown": "Une erreur inconnue est survenue. Veuillez réessayer plus tard."
},
"contact": {
"success": "Message envoyé ! Un email de confirmation vous a été également envoyé.",
"success": "Un email de confirmation vous a été également envoyé. Si vous navez rien reçu dici quelques minutes, vérifiez vos spams.",
"honeypot": "Miam, du bon miel pour le robot !",
"errors": {
"internal": "Une erreur interne est survenue, veuillez réessayer plus tard.",