Repository navigation
Console redesign: contacts, lists and segments in one page, with a contact sheet - #539
Merged
Merged
Conversation
…ct sheet Contacts, lists and segments share one page with a rail; the Lists page now opens it. The contact sheet is a full drawer driven by ?contact=, walked with J and K, with inline editing, KPIs, filtered activity, messages and web visits.
Cleared fields clear in the sheet and the table, profile rows keep their own field while editing, a pending search no longer closes a sheet just opened, goal values keep their cents. Translations of the new strings.
…design # Conflicts: # console/src/components/contacts/SegmentsFilter.tsx # console/src/components/lists/DeleteListModal.test.tsx # console/src/components/lists/ListDrawer.test.tsx # console/src/components/lists/ListDrawer.tsx # console/src/i18n/locales/ca.po # console/src/i18n/locales/de.po # console/src/i18n/locales/en.po # console/src/i18n/locales/es.po # console/src/i18n/locales/fr.po # console/src/i18n/locales/it.po # console/src/i18n/locales/ja.po # console/src/i18n/locales/pt-BR.po # console/src/pages/ContactsPage.test.tsx # console/src/pages/ContactsPage.tsx # console/src/pages/ListsPage.tsx
…y members land on Contacts A search still waiting for its timer is written to the URL before the sheet opens, so closing the sheet keeps it. A member who can only read lists lands on Contacts, which holds them. Wording fixes in fr and pt-BR.
…design # Conflicts: # console/src/i18n/locales/ca.po # console/src/i18n/locales/de.po # console/src/i18n/locales/en.po # console/src/i18n/locales/es.po # console/src/i18n/locales/fr.po # console/src/i18n/locales/it.po # console/src/i18n/locales/ja.po # console/src/i18n/locales/pt-BR.po
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## dev #539 +/- ##
=======================================
Coverage 88.96% 88.96%
=======================================
Files 377 377
Lines 73836 73836
=======================================
+ Hits 65688 65689 +1
+ Misses 5439 5437 -2
- Partials 2709 2710 +1
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
pierre-b
marked this pull request as ready for review
November 12, 2026 18:05
pierre-b
added a commit
to Notifuse/docs
that referenced
this pull request
Nov 12, 2026
Documents Notifuse/notifuse#539: the lists in the Contacts page's rail, the contact sheet and the rights each part needs, and the Web visits tab.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Spec 4 of the Nuit claire console redesign. Frontend only; the server parts are in #529.
What changes
/listsredirects to Contacts.?contact=<email>), and Back closes it when it was opened from the table. You walk the loaded rows with J/K, and J loads more rows at the last one. The sheet has:DrawerNavgainstotalLabelandbuttons.KeyValueListitems take an optionalkey.BulkUpdateDrawer,CreateListDrawerandDrawerSegmentcan be controlled.TrackingConsentEditoris restyled for the sheet panel; it is only used there.Tests
LogsPage loads and renders logs content. It already fails on dev, because the page description changed.tree, as the server sends.Review
plans/contacts-lists-console-redesign-plan.md.Known, not addressed
saveFieldswrites the caches without cancelling an in-flight refetch, so a refetch already running can briefly show the value from before the edit.segment_idplus severalsegmentsshows the « In any of » chip, which the query ignores.lldates stay in English in every language. This affects the whole console.Docs: Notifuse/docs
docs/contacts-lists(to be opened against dev).