Repository navigation
refactor: room contextual bar panels compose layout containers instead of Box - #43274
juliajforesti wants to merge 3 commits into
Conversation
Covers the backup codes and delete-account modals, the TOTP and email two-factor panels, the E2EE password reset and the device row, so their layout has visual-regression coverage. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Adds PageFormColumn and ModalForm to client/components, since several areas already repeat them, and local layout containers for the account screens. Spacing between blocks comes from Stack gaps. Lowers the raw layout limit to 1116. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
…d of Box The room side panels stop laying themselves out with raw Box, div and section elements. The list panels share new containers in client/components/ContextualbarList (status, filter, summary, list area), which teams and omnichannel already repeat; the rest go to layout/ folders next to the panels. Text uses Text, spacing between siblings comes from Stack gaps, and the report-user modal's form is a ModalForm. The raw layout count drops from 1113 to 1013. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
|
|
Looks like this PR is not ready to merge, because of the following issues:
Please fix the issues and try again If you have any trouble, please check the PR guidelines |
|
Important Draft PR not reviewedDraft PRs are not automatically reviewed by default.
To automatically review draft PRs, update your CodeRabbit configuration: reviews:
auto_review:
drafts: true
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. Comment |
Codecov Report❌ Patch coverage is Additional details and impacted files@@ Coverage Diff @@
## refactor/layout-account #43274 +/- ##
===========================================================
+ Coverage 72.13% 72.15% +0.01%
===========================================================
Files 5383 5417 +34
Lines 231062 231250 +188
Branches 43859 43918 +59
===========================================================
+ Hits 166688 166861 +173
+ Misses 59103 59086 -17
- Partials 5271 5303 +32
Flags with carried forward coverage won't be shown. Click here to find out more. 🚀 New features to boost your workflow:
|
3eda81a to
d8ba4f4
Compare
Proposed changes (including videos or screenshots)
ARCH-2592
Stacked on #43160 (account screens).
The room side panels under
views/room/contextualBarstop laying themselves out with rawBox,divandsectionelements. The raw layout count drops from 1113 to 1013, and the CI limit drops with it.client/components. Teams and omnichannel panels already repeat all of them, so they skip thelayout/stage. Only the room panels switch here:ContextualbarList/ContextualbarListStatus: the loading indicator or error shown in place of a list, inset to line up with its rows (spacedadds the 12px block padding, asContextualbarContentnames it). Used by threads, discussions, members, banned users, pinned/starred/mentions and calls.ContextualbarList/ContextualbarListFilter: the 144px select after a section's search input (threads, files, members).ContextualbarList/ContextualbarListSummary: the "Showing x of y" line above the members list.ContextualbarList/ContextualbarListArea: the clipped area a virtualized list fills (threads, discussions, members, banned users).ModalCalloutContent: a callout that is a modal's whole content, set 16px below the header. Edit room's ABAC warning uses it;admin/rooms/EditRoomrepeats it.contextualBar/layout/ContextualbarInset(24px all round: files loading, search-provider error, thread skeleton),contextualBar/layout/MessageListSection(the message list section of pinned/starred/mentions and search), androom/layout/MessageListLoadMore(theload-morerow; the room'sMessageListrepeats it).layout/folders for the thread view (surface, docked slot, chat section, composer option, list frame, row surface, divider item, unread badge slot), the call history (item, list area, empty/error state), the ABAC sections in room info and the ABAC panel, invite link, members group header, discussions row and viewport, files list area, message search form and results, auto-translate, user info and report-user modal, and the conference config modal.Stackgaps instead of margins, includingChannelToTeamSelection'sMarginswrapper. Text usesText; the UiKit contextual bar's form is a plain<form>; the report-user modal's form is aModalForm; plainul/lireplace unstyledBox is='ul'/'li'.<Box display='flex'></Box>in the call history row is removed.No visual change expected. Each replacement keeps the same box model: same paddings, margins (as
Stackgaps where siblings had them) and flex behavior, and the sameMarginsinheritance insideContextualbarScrollableContent. Two equivalences reviewers may want to check:Stackgaps of 24px and 40px. The old margins added up to the same sizes, because the scrollable content is a flex column, so its margins don't collapse.Visual check: before/after screenshots of the running app, identical for Room info, Edit room, Members (list, no match, a user's info), Threads (list, empty, an open thread), Discussions, Files (empty), Pinned, Starred, Mentions, Search, Notification preferences, Banned users and Calls. Not captured: states that need data or setup the local workspace lacks (files with uploads, ABAC, auto-translate, UiKit bars, the modals).
Issue(s)
Part of the screen layout migration (#43056).
Steps to test or reproduce
node scripts/scan-raw-layout.mjs --max 1013views/room/contextualBar/**.Further comments
The other layout migration pull requests each lower the same
--maxline inci-code-check.ymland prunescripts/spacing-scale/baseline.json. Whichever merges second rebases and takes the lower count.Three Virtuoso slot components stay as they are and still count:
RoomMembersListWrapperandRoomFilesListWrapper(div role='list'with keyboard navigation) andRoomFileItemWrapper(div role='listitem'). Each is already a named component that only renders the list element Virtuoso asks for.Marginsreaches more thanBox: it also adds a class to its direct children, so aTextor a plain element placed directly insideContextualbarScrollableContentstill gets the 16px block-end margin. This PR relies on that for the UiKit form and the ABAC heading, the same as before.🤖 Generated with Claude Code