From e14ce38f615faab9715ad27d3c4cd861cf688196 Mon Sep 17 00:00:00 2001 From: "google-labs-jules[bot]" <161369871+google-labs-jules[bot]@users.noreply.github.com> Date: Wed, 28 Jan 2026 02:10:17 +0000 Subject: [PATCH] feat: add accessible required field indicators and alerts - Add visual asterisk for required inputs in Input.tsx - Add .required style in Input.module.css - Update Contact form to use required props and noValidate - Add role="alert" to Contact form success/error messages - Add tests for required field rendering Co-authored-by: ragusa-it <196988693+ragusa-it@users.noreply.github.com> --- .jules/palette.md | 3 +++ src/components/ui/Input.module.css | 5 +++++ src/components/ui/Input.tsx | 10 +++++++++ src/components/ui/__tests__/Input.test.tsx | 24 ++++++++++++++++++++++ src/pages/Contact.tsx | 14 ++++++++++++- 5 files changed, 55 insertions(+), 1 deletion(-) create mode 100644 .jules/palette.md diff --git a/.jules/palette.md b/.jules/palette.md new file mode 100644 index 0000000..8c4d7fb --- /dev/null +++ b/.jules/palette.md @@ -0,0 +1,3 @@ +## 2024-05-22 - Semantic Required Fields with Custom Validation +**Learning:** To combine custom validation UI with semantic `required` attributes (vital for a11y), add `noValidate` to the `