fix(ui): tokenise the Mosaic Menu item's transition duration - #9460
fix(ui): tokenise the Mosaic Menu item's transition duration#9460maxyinger wants to merge 1 commit into
Conversation
`item` was the last slot in `menu.styles.ts` still carrying a hardcoded `150ms` / `0.01ms` pair. `--cl-duration-base` is 0.15s, so the fill lands identically; the reduced-motion branch goes rather than moving with it, since `item` transitions only `background-color` and a fill is not the vestibular concern the signal is about. `Button` already transitions its highlight the same way, and `tokens.stylex.ts` states the rule. Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
🦋 Changeset detectedLatest commit: a68cd17 The changes in this PR will be included in the next version bump. This PR includes changesets to release 0 packagesWhen changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
@clerk/astro
@clerk/backend
@clerk/chrome-extension
@clerk/clerk-js
@clerk/electron
@clerk/electron-passkeys
@clerk/eslint-plugin
@clerk/expo
@clerk/expo-google-signin
@clerk/expo-passkeys
@clerk/express
@clerk/fastify
@clerk/hono
@clerk/localizations
@clerk/nextjs
@clerk/nuxt
@clerk/react
@clerk/react-router
@clerk/shared
@clerk/tanstack-react-start
@clerk/testing
@clerk/ui
@clerk/upgrade
@clerk/vue
commit: |
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Repository YAML (base), Organization UI (inherited) Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (2)
🔗 Linked repositories identifiedCodeRabbit considers these linked repositories for cross-repo context during reviews:
📝 WalkthroughWalkthroughThe menu styles import Estimated code review effort: 2 (Simple) | ~10 minutes Merge Risk: ⚪ Minimal · up to This localized styling change preserves the existing transition duration while replacing a hardcoded value with the standard motion token; no actionable merge-blocking risk remains after normal checks and review. Suggested reviewers: 🚥 Pre-merge checks | ✅ 5✅ Passed checks (5 passed)
Comment |
API Changes Report
Summary
No API Changes DetectedAll packages have stable APIs with no detected changes. Report generated by Break Check Last ran on |
Description
itemwas the last slot inmenu.styles.tsstill carrying a hardcoded150ms/0.01mspair while the rest of the file moves onto motion tokens. It now takes--cl-duration-base.--cl-duration-baseis0.15s, so the hover/active fill lands exactly as it did — the emitted stylesheet is byte-identical, and the item'stransition-durationclass swaps from the literal.15stovar(--cl-duration-base).The reduced-motion branch goes rather than being tokenised alongside it.
itemtransitions onlybackground-color, and a fill is not the vestibular concernprefers-reduced-motionis about —tokens.stylex.tsstates that rule directly ("the gate belongs on the moving property at its use site, not on every duration here"), andButtonalready transitions its highlight the same way with no gate. Underreduce, a menu item's fill now settles over 0.15s instead of snapping.Scoped to
item. Thepopupslot's motion is a separate change.Checklist
pnpm testruns as expected.pnpm buildruns as expected.Type of change