Skip to content

refactor(devices): right-align device-sync control with icon-only re-sync button#3385

Merged
tofikwest merged 2 commits into
mainfrom
feat/device-sync-selector-right
Jul 10, 2026
Merged

refactor(devices): right-align device-sync control with icon-only re-sync button#3385
tofikwest merged 2 commits into
mainfrom
feat/device-sync-selector-right

Conversation

@tofikwest

@tofikwest tofikwest commented Jul 10, 2026

Copy link
Copy Markdown
Contributor

What

Devices-tab layout polish (requested by Tofik):

  • The Device sync select moves to the right side of its row — it's a setting, not the page's subject
  • The re-sync button sits directly beside the select and is icon-only (↻) — the select already names what's syncing, so the "Sync now" text was redundant. aria-label="Sync now" + title keep it accessible and tooltipped
  • The "Connect an integration →" empty slot right-aligns too, so the control doesn't jump sides between states
  • Sized icon-lg (32px) to match the select trigger height exactly

Tests

88/88 devices tests passing unchanged — the button's accessible name is preserved, so every existing getByRole('button', { name: /Sync now/i }) assertion still holds. Typecheck clean.

🤖 Generated with Claude Code

https://claude.ai/code/session_01TfDHFTwRgYxUoyyqGkHPDc


Summary by cubic

Right-aligns the Device sync control and refines it into a compact inline row with “Synced Xh ago”, the provider select, and an icon-only re-sync button. Keeps accessibility and prevents layout jumps between states.

  • Refactors
    • Right-aligns the “Connect an integration →” empty state to match the control and prevent jumps.
    • Styles the re-sync as a primary size="icon-lg" button with aria-label="Sync now" and title.
    • Drops the inline “Device sync” label in the populated state; keeps it in the empty state.
    • Adds tests for showing/hiding the “Synced Xh ago” text based on lastSyncAt.

Written for commit 410b8fc. Summary will update on new commits.

Review in cubic

… button

The sync-source select moves to the right end of its row (it's a
setting, not the page subject), with the re-sync button snug beside it
as an icon-only button — the select already names what's syncing, so
the 'Sync now' text was redundant. aria-label + title keep it
accessible; the connect-an-integration empty slot right-aligns too so
the control doesn't jump sides between states.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TfDHFTwRgYxUoyyqGkHPDc
@vercel

vercel Bot commented Jul 10, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
app Ready Ready Preview, Comment Jul 10, 2026 3:17am
comp-framework-editor Ready Ready Preview, Comment Jul 10, 2026 3:17am
1 Skipped Deployment
Project Deployment Actions Updated (UTC)
portal Skipped Skipped Jul 10, 2026 3:17am

Request Review

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 1 file

Confidence score: 5/5

  • Automated review surfaced no issues in the provided summaries.
  • No files require special attention.

Re-trigger cubic

…d-ago + primary icon button

Inline row per Tofik's mockup: 'Synced Xh ago' muted text, compact
provider select (label dropped — the provider name + refresh affordance
identify the control), and the re-sync button in the brand primary
color, icon-only. Connect-an-integration slot keeps its label.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01TfDHFTwRgYxUoyyqGkHPDc
@vercel vercel Bot temporarily deployed to Preview – portal July 10, 2026 03:13 Inactive
@tofikwest tofikwest merged commit 425fd61 into main Jul 10, 2026
10 of 11 checks passed
@tofikwest tofikwest deleted the feat/device-sync-selector-right branch July 10, 2026 03:15
@claudfuen

Copy link
Copy Markdown
Contributor

🎉 This PR is included in version 3.100.0 🎉

The release is available on GitHub release

Your semantic-release bot 📦🚀

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants