From 86569b52302971dc0684acd2b0fefdd1d864f521 Mon Sep 17 00:00:00 2001
From: seonghobae <8172694+seonghobae@users.noreply.github.com>
Date: Sat, 10 Oct 2026 20:57:46 +0000
Subject: [PATCH] =?UTF-8?q?=F0=9F=8E=A8=20Palette:=20=EC=95=84=EC=9D=B4?=
=?UTF-8?q?=EC=BD=98=EC=97=90=20aria-hidden=20=EC=86=8D=EC=84=B1=20?=
=?UTF-8?q?=EC=B6=94=EA=B0=80?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- 불필요한 스크린 리더 음성 출력을 방지하기 위해 장식용 아이콘에 `aria-hidden="true"` 속성을 추가함
- `packages/web/src/components/ui/pagination.tsx` (ChevronLeftIcon, ChevronRightIcon)
- `packages/web/src/components/dashboard/reports/week-navigator.tsx` (ChevronLeft, ChevronRight)
- `packages/web/src/components/dashboard/reports/context-section.tsx` (ChevronUp, ChevronDown)
- `packages/web/src/components/dashboard/event-detail.tsx` (X, Icon)
- `packages/web/src/components/dashboard/event-list.tsx` (Icon, ChevronRight)
---
.jules/palette.md | 3 +++
packages/web/src/components/dashboard/event-detail.tsx | 4 ++--
packages/web/src/components/dashboard/event-list.tsx | 3 ++-
.../web/src/components/dashboard/reports/context-section.tsx | 4 ++--
.../web/src/components/dashboard/reports/week-navigator.tsx | 4 ++--
packages/web/src/components/ui/pagination.tsx | 4 ++--
6 files changed, 13 insertions(+), 9 deletions(-)
create mode 100644 .jules/palette.md
diff --git a/.jules/palette.md b/.jules/palette.md
new file mode 100644
index 00000000..6969f290
--- /dev/null
+++ b/.jules/palette.md
@@ -0,0 +1,3 @@
+## 2023-10-24 - Added aria-hidden="true" to decorative icons
+**Learning:** Decorative icons from libraries like lucide-react (such as `ChevronRight`, `ChevronLeft`, `ChevronUp`, `ChevronDown`, `X`, etc) used within focusable or interactive elements that already have text or an `aria-label` attribute can cause redundancy or confusion for screen readers if not explicitly hidden.
+**Action:** When adding or auditing decorative icons in interactive components (especially `button` or `Link` elements), always ensure they are marked with `aria-hidden="true"` to prevent redundant screen reader announcements.
diff --git a/packages/web/src/components/dashboard/event-detail.tsx b/packages/web/src/components/dashboard/event-detail.tsx
index c6cc5cdf..0aebb7f8 100644
--- a/packages/web/src/components/dashboard/event-detail.tsx
+++ b/packages/web/src/components/dashboard/event-detail.tsx
@@ -121,7 +121,7 @@ export function EventDetail({ event, onClose }: EventDetailProps) {
-