Commit 7035d2f
fix(low): scope voice-input reduced-motion to a class (L6)
Background: the recording indicator's pulse was applied via an inline
`animation` style, and the prefers-reduced-motion override matched it with
span[style*="animation"] — a brittle attribute-substring selector. Any refactor
moving the animation to a class or a different property would silently
re-enable the pulsing dot for reduced-motion users (WCAG 2.3.3 / 2.2.2).
Fix: drive the pulse with a `voice-input-pulsing` class (styled-jsx scoped) and
point the reduced-motion rule at that class, so the opt-out tracks the actual
animation hook rather than a string match on the style attribute.
Test: tsc + eslint clean. Pure markup/CSS change with no behavioral branch to
unit-test; covered by the typecheck/lint gates per the frontend discipline.
Fixes: L6
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>1 parent a4239c8 commit 7035d2f
1 file changed
Lines changed: 16 additions & 12 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
354 | 354 | | |
355 | 355 | | |
356 | 356 | | |
357 | | - | |
358 | | - | |
359 | | - | |
360 | | - | |
361 | | - | |
362 | | - | |
| 357 | + | |
| 358 | + | |
| 359 | + | |
| 360 | + | |
| 361 | + | |
| 362 | + | |
363 | 363 | | |
| 364 | + | |
364 | 365 | | |
365 | 366 | | |
366 | 367 | | |
367 | 368 | | |
368 | 369 | | |
369 | 370 | | |
370 | | - | |
371 | 371 | | |
372 | 372 | | |
373 | 373 | | |
374 | 374 | | |
375 | 375 | | |
376 | 376 | | |
377 | 377 | | |
378 | | - | |
379 | | - | |
380 | | - | |
381 | | - | |
| 378 | + | |
| 379 | + | |
| 380 | + | |
| 381 | + | |
| 382 | + | |
382 | 383 | | |
383 | 384 | | |
384 | 385 | | |
| |||
390 | 391 | | |
391 | 392 | | |
392 | 393 | | |
| 394 | + | |
| 395 | + | |
| 396 | + | |
393 | 397 | | |
394 | | - | |
| 398 | + | |
395 | 399 | | |
396 | 400 | | |
397 | 401 | | |
| |||
0 commit comments