From c9b9d87c7d52b2273600c0d454b0d6717186e93e Mon Sep 17 00:00:00 2001 From: seonghobae <8172694+seonghobae@users.noreply.github.com> Date: Wed, 19 Aug 2026 02:01:22 +0000 Subject: [PATCH 01/45] feat(ux): Add visual indicators for required form fields --- .jules/palette.md | 3 +++ frontend/src/components/modals/AddTableModal.tsx | 4 +++- .../components/modals/DialogAccessibility.test.tsx | 4 ++-- frontend/src/components/modals/EditEdgeModal.tsx | 4 +++- frontend/src/components/modals/EditTableModal.tsx | 13 +++++++++---- frontend/src/components/modals/GroupModal.tsx | 4 +++- .../src/components/modals/ModalCoverage.test.tsx | 6 +++--- 7 files changed, 26 insertions(+), 12 deletions(-) diff --git a/.jules/palette.md b/.jules/palette.md index bd0f73248..fa66b1488 100644 --- a/.jules/palette.md +++ b/.jules/palette.md @@ -57,3 +57,6 @@ ## 2026-07-30 - Add window.confirm for destructive actions **Learning:** Destructive actions like deleting groups and edge relationships previously occurred immediately without user confirmation. **Action:** Always wrap delete operations with window.confirm() dialogs and ensure corresponding tests successfully mock window.confirm. +## 2024-08-19 - Add visual required indicators to modal forms +**Learning:** Adding visual `*` indicators to form fields improves clarity, but directly appending `*` to label text breaks React Testing Library `getByLabelText` tests that use exact string matching. Tests must be updated to use regex matching (e.g. `getByLabelText(/테이블 이름/)`) when modifying labels. Decorative asterisks should always include `aria-hidden="true"` to prevent screen reader clutter, as `required` attributes handle the accessibility. +**Action:** When adding required text or symbols inside `