Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions .Jules/palette.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,3 +9,7 @@
## 2024-11-20 - CopyPromptButton μ ‘κ·Όμ„± ν–₯상 (동적 ν…μŠ€νŠΈ 및 μƒνƒœ)
**Learning:** `CopyPromptButton`κ³Ό 같이 λ²„νŠΌμ„ ν΄λ¦­ν–ˆμ„ λ•Œ μ‹œκ°μ μœΌλ‘œλ§Œ μƒνƒœκ°€ λ³€ν•˜κ³ (예: 볡사 μ•„μ΄μ½˜μ΄ 체크 μ•„μ΄μ½˜μœΌλ‘œ λ³€κ²½), ν…μŠ€νŠΈκ°€ λ™μ μœΌλ‘œ λ³€κ²½λ˜λŠ” μ»΄ν¬λ„ŒνŠΈμ—μ„œλŠ” 슀크린 리더 μ‚¬μš©μžκ°€ μƒνƒœ λ³€ν™”λ₯Ό μ•Œμ•„μ±„κΈ° μ–΄λ ΅μŠ΅λ‹ˆλ‹€. λ˜ν•œ 슀크린 리더가 순수 μž₯μ‹μš© μ•„μ΄μ½˜κΉŒμ§€ λΆˆν•„μš”ν•˜κ²Œ 읽을 수 μžˆμŠ΅λ‹ˆλ‹€.
**Action:** λ™μ μœΌλ‘œ λ³€κ²½λ˜λŠ” ν…μŠ€νŠΈλ₯Ό `<span aria-live="polite">`둜 감싸 슀크린 리더가 μ¦‰μ‹œ λ³€κ²½ 사항을 읽어주도둝 ν•΄μ•Ό ν•©λ‹ˆλ‹€. `<Button>` μ»΄ν¬λ„ŒνŠΈμ—λŠ” `aria-pressed={copied}`λ₯Ό μΆ”κ°€ν•˜μ—¬ ν† κΈ€ 성격을 λΆ€μ—¬ν•˜κ³ , μ‹œκ°μ μΈ μ•„μ΄μ½˜ μ»΄ν¬λ„ŒνŠΈ(예: `<Copy>`, `<Check>`)μ—λŠ” `aria-hidden="true"`λ₯Ό μΆ”κ°€ν•˜μ—¬ 슀크린 λ¦¬λ”μ—μ„œ λ¬΄μ‹œν•˜λ„λ‘ μ²˜λ¦¬ν•˜λŠ” νŒ¨ν„΄μ„ μ§€μ†μ μœΌλ‘œ μ‚¬μš©ν•΄μ•Ό ν•©λ‹ˆλ‹€.

## 2025-01-20 - λ‹«κΈ° λ²„νŠΌ λ‚΄λΆ€ μ•„μ΄μ½˜ ν™”λ©΄ 읽기 쀑볡 λ°©μ§€
**Learning:** `aria-label`이 μ„€μ •λœ λ‹«κΈ° λ²„νŠΌ 내뢀에 μ‹œκ°μ  의미만 μ „λ‹¬ν•˜λŠ” μ•„μ΄μ½˜(예: X)이 μžˆμ„ λ•Œ, ν•΄λ‹Ή μ•„μ΄μ½˜μ— `aria-hidden="true"`λ₯Ό μ„€μ •ν•˜μ§€ μ•ŠμœΌλ©΄ 일뢀 슀크린 리더 ν™˜κ²½μ—μ„œ μ•„μ΄μ½˜μ„ λΆˆν•„μš”ν•˜κ²Œ 읽어 μ ‘κ·Όμ„± κ²½ν—˜μ„ μ €ν•΄ν•  수 μžˆμŠ΅λ‹ˆλ‹€.
**Action:** μ ‘κ·Όμ„± λ ˆμ΄λΈ”(`aria-label`)이 제곡된 λŒ€ν™”ν˜• μš”μ†Œ 내에 μžˆλŠ” μž₯식성 μ•„μ΄μ½˜λ“€μ—λŠ” 항상 `aria-hidden="true"` 속성을 μΆ”κ°€ν•˜μ—¬ 슀크린 리더 μ‚¬μš©μžμ—κ²Œ κ°„κ²°ν•˜κ³  λͺ…ν™•ν•œ μ •λ³΄λ§Œ μ œκ³΅ν•˜λ„λ‘ ν•©λ‹ˆλ‹€.
2 changes: 1 addition & 1 deletion packages/web/src/components/dashboard/event-detail.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -141,7 +141,7 @@ export function EventDetail({ event, onClose }: EventDetailProps) {
aria-label="Close event details"
className="flex h-7 w-7 items-center justify-center rounded-md text-muted-foreground hover:bg-muted hover:text-foreground focus:outline-none focus-visible:ring-2 focus-visible:ring-ring"
>
<X className="h-4 w-4" />
<X className="h-4 w-4" aria-hidden="true" />
</button>
)}
</div>
Expand Down
Loading