src/components/Skeleton.tsxrenders a single<div>with classskeletonand supportswidth/heightvia inline styles.src/components/Skeleton.csscurrently defines background, overflow clipping, shimmer gradient animation, and reduced-motion handling.- Existing
src/components/Skeleton.test.tsxonly verifies width/height/className/attribute spreading. - Repo uses design tokens from
src/index.css(e.g.,--border,--surface) and already includes high-contrast overrides. - Skeleton component currently has no border-radius, meaning skeleton shape can differ from final card shapes.
- Update
src/components/Skeleton.cssto add a border-radius and any needed background/elevation consistency so skeletons visually match the “final card shape” across breakpoints and in dark mode.- Use existing radius tokens (e.g.,
var(--radius-md)orvar(--radius-lg)) for consistency. - Ensure shimmer respects rounded corners (already clipped via
overflow: hidden). - Keep reduced-motion behavior intact.
- Use existing radius tokens (e.g.,
- Update
src/components/Skeleton.test.tsxwith new assertions for the shape-parity behavior.- Add tests that verify the skeleton element has the expected
border-radiusvia computed style (or via class rule injection strategy used by the test env). - Add tests ensuring reduced-motion override still disables shimmer animation.
- Add tests that verify the skeleton element has the expected
- Run
npm test -- --runandnpm run lint. - Document visible/API changes (expected: none; only styling + tests).
src/components/Skeleton.csssrc/components/Skeleton.test.tsx
- If tests fail due to jsdom style limitations, adjust tests to validate via className + rule presence (and keep them focused).
<ask_followup_question>
Proceed with this styling/test-only approach (no repo-wide skeleton call-site audit). Target radius token to use: --radius-md.
</ask_followup_question>