Move Administration's section list into the folder pane #337

Closed
opened 2026-09-13 23:27:28 +00:00 by jcoffey-dev · 0 comments
Owner

Summary

Administration's pages are tables. The Settings-style section column inside the page took width they need.

  • The section list moves to the folder pane. Directory › Accounts and Mail › Domains now sit where Mail lists its folders, grouped the same way and showing only the sections the role can read. The pane's "Administration" label is replaced by the list.
  • The page is the open section alone, up to 1120px wide instead of a 240px column plus 960px. The domain and account panels still overlay on the right.
  • On a phone the list is in the drawer, as every other section's list is. A bare /admin now opens the first section instead of a page with only the list, and the "← Administration" back link is gone.

The code is split into AdminNav (the pane list, statically imported by AppShell) and AdminView (the page, still a lazy chunk).

Testing

  • Driven in Chrome against npm run dev:mock:
    • desktop Accounts and Domains, with a domain panel open;
    • collapsed sidebar: icons only;
    • 420px wide: /admin opens Accounts, and the drawer shows the list with the open section highlighted.
  • A pre-existing issue, left alone: in the collapsed sidebar a group heading shows clipped ("DIRECT"). Mail's "FOLDERS" heading does exactly the same today, so it is a sidebar style issue, not something this change introduces.
  • New component test for the pane list: groups in order, the open section marked, a bare /admin treated as the first section, and sections the role can't read left out.
  • Checks:
    • npm run typecheck: clean;
    • npm test -w web: 1210/1210;
    • npm test -w server: 188/188;
    • npm run i18n:check: clean;
    • npm run build: succeeds.

Translations

No new strings. The pane reuses "Administration", "Directory", "Mail", "Accounts" and "Domains", which are already in all nine catalogues. Strings falling back to English: 16 before and after.

Merged 2026-09-13 as coffey-labs/ihasmail@b6cc762d23

Rebuilt from: git history, session transcript.

## Summary Administration's pages are tables. The Settings-style section column inside the page took width they need. - **The section list moves to the folder pane.** Directory › Accounts and Mail › Domains now sit where Mail lists its folders, grouped the same way and showing only the sections the role can read. The pane's "Administration" label is replaced by the list. - **The page is the open section alone,** up to 1120px wide instead of a 240px column plus 960px. The domain and account panels still overlay on the right. - **On a phone** the list is in the drawer, as every other section's list is. A bare `/admin` now opens the first section instead of a page with only the list, and the "← Administration" back link is gone. The code is split into `AdminNav` (the pane list, statically imported by `AppShell`) and `AdminView` (the page, still a lazy chunk). ## Testing - **Driven in Chrome** against `npm run dev:mock`: - desktop Accounts and Domains, with a domain panel open; - collapsed sidebar: icons only; - 420px wide: `/admin` opens Accounts, and the drawer shows the list with the open section highlighted. - **A pre-existing issue, left alone:** in the collapsed sidebar a group heading shows clipped ("DIRECT"). Mail's "FOLDERS" heading does exactly the same today, so it is a sidebar style issue, not something this change introduces. - **New component test for the pane list:** groups in order, the open section marked, a bare `/admin` treated as the first section, and sections the role can't read left out. - **Checks:** - `npm run typecheck`: clean; - `npm test -w web`: 1210/1210; - `npm test -w server`: 188/188; - `npm run i18n:check`: clean; - `npm run build`: succeeds. ## Translations No new strings. The pane reuses "Administration", "Directory", "Mail", "Accounts" and "Domains", which are already in all nine catalogues. Strings falling back to English: 16 before and after. **Merged** 2026-09-13 as coffey-labs/ihasmail@b6cc762d232d <sub>Rebuilt from: git history, session transcript.</sub>
This repo is archived. You cannot comment on issues.