Skip to content

tweak(ui): improve the session list design - #5404

Open
ux-git wants to merge 2 commits into
sws2apps:mainfrom
ux-git:fix/sessions-layout
Open

tweak(ui): improve the session list design#5404
ux-git wants to merge 2 commits into
sws2apps:mainfrom
ux-git:fix/sessions-layout

Conversation

@ux-git

@ux-git ux-git commented Sep 4, 2026

Copy link
Copy Markdown
Member

Each session is now a device row: a square icon tile, the device name with a badge for the current session, and the location, last seen time and IP address as compact chips.

Long IPv6 addresses are shortened in the middle, shown in full on hover, and copied to the clipboard when the chip is clicked. Terminate uses the small button and moves under the details on narrow screens.

Type of change

  • Bug fix (non-breaking change which fixes an issue)

Devin Review

Rebuild each session as a device row: a square icon tile, the device name
with a badge for the current session, and the location, the last seen
time and the IP address as compact chips. Long IPv6 addresses are
shortened in the middle, show in full on hover and are copied to the
clipboard when the chip is clicked. The terminate action uses the small
button and moves under the details on narrow screens.
@vercel

vercel Bot commented Sep 4, 2026

Copy link
Copy Markdown

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

Project Deployment Actions Updated
staging-organized-app Ready Ready Preview Sep 4, 2026 7:54pm UTC
test-organized-app Ready Ready Preview Sep 4, 2026 7:54pm UTC

@coderabbitai

coderabbitai Bot commented Sep 4, 2026

Copy link
Copy Markdown
Contributor

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Repository UI

Review profile: CHILL

Plan: Team

Run ID: 6a5ba7fc-f747-47f9-8f40-6b9cf6b363d6

📥 Commits

Reviewing files that changed from the base of the PR and between f3ffb4f and 8b7701e.

📒 Files selected for processing (1)
  • src/features/my_profile/sessions/session_item/index.tsx

Included review availability: Your plan provides up to 2 included reviews per hour; 0 remain after this review.


Walkthrough

The session item now displays browser, country, last-seen, and IP details with badges and icons. It supports IP copying with notifications and shows termination controls only for non-current sessions.

Changes

Session item redesign

Layer / File(s) Summary
Session data and clipboard handling
src/features/my_profile/sessions/session_item/useSessionItem.tsx
The hook stores country and IP separately, copies the session IP, reports success or mapped errors, formats last-seen text directly, and exposes the updated return values.
Session item rendering
src/features/my_profile/sessions/session_item/index.tsx
The component renders the redesigned layout with browser and current-session status, country and last-seen badges, a shortened IP tooltip, copy control, resized device icons, and a conditional terminate button.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Merge Risk: ⚪ Minimal · up to 8b770

The session list redesign adds clearer device details, IP copying, and responsive termination controls without any established merge-blocking risk.

Sequence Diagram(s)

sequenceDiagram
  participant SessionItem
  participant useSessionItem
  participant Clipboard
  participant SnackNotifications
  SessionItem->>useSessionItem: handleCopyAddress()
  useSessionItem->>Clipboard: copyToClipboard(session.ip)
  Clipboard-->>useSessionItem: copy result
  useSessionItem->>SnackNotifications: show success or mapped error
Loading
🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly identifies the main change: improving the session list UI. It is concise and related to the redesign described in the changeset.
Description check ✅ Passed The description accurately summarizes the session-row redesign, compact metadata chips, IPv6 shortening, clipboard copying, and responsive terminate behavior.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check. Docstring coverage is scoped to functions touched by this diff. Analyzed 0 functions across 2…
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

coderabbitai[bot]
coderabbitai Bot previously approved these changes Sep 4, 2026
@mergify

mergify Bot commented Sep 4, 2026

Copy link
Copy Markdown

Tick the box to add this pull request to the merge queue (same as @mergifyio queue).

  • Queue this pull request

devin-ai-integration[bot]

This comment was marked as resolved.

@ux-git ux-git changed the title tweak(ui): rework the session list layout tweak(ui): improve the session list design Sep 4, 2026
Build the address chip from the shared button component instead of a
styled box, and give it a label so screen readers announce that it
copies the address.
@sonarqubecloud

sonarqubecloud Bot commented Sep 4, 2026

Copy link
Copy Markdown

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

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant