Fix login page padding, add collapsible sidebar, fix dev-origin blocking #6

Merged
sb merged 2 commits from fix-login-page-padding into main 2026-08-14 19:31:49 +10:00
Owner

Summary

  • v1.90.1 — The root layout's <main> always applied the standard app padding, even when there's no signed-in session, insetting the login/forgot-password/reset-password pages' own full-bleed centered card inside the white <body> background (white bars on the sides). That padding is now skipped whenever there's no session
  • v1.90.2 — Sidebar can now be collapsed to a slim icon-only rail via a toggle button (hover tooltips show labels), and its default expanded width was narrowed from 224px to 208px per feedback while testing
  • v1.90.2 — Fixed next dev silently blocking page JavaScript when accessed via 127.0.0.1 instead of localhost (found while testing the login-page fix) — added allowedDevOrigins to next.config.mjs

Test plan

  • npm run build / npm run lint / npm test all pass at each step
  • Confirmed via curl that /login renders <main> without the padding classes, while an authenticated page (/schedule) still has them
  • User confirmed live in the dev server: login page white bars gone, sidebar collapse/expand toggle works, login works from both localhost and 127.0.0.1
## Summary - **v1.90.1** — The root layout's `<main>` always applied the standard app padding, even when there's no signed-in session, insetting the login/forgot-password/reset-password pages' own full-bleed centered card inside the white `<body>` background (white bars on the sides). That padding is now skipped whenever there's no session - **v1.90.2** — Sidebar can now be collapsed to a slim icon-only rail via a toggle button (hover tooltips show labels), and its default expanded width was narrowed from 224px to 208px per feedback while testing - **v1.90.2** — Fixed `next dev` silently blocking page JavaScript when accessed via `127.0.0.1` instead of `localhost` (found while testing the login-page fix) — added `allowedDevOrigins` to `next.config.mjs` ## Test plan - [x] `npm run build` / `npm run lint` / `npm test` all pass at each step - [x] Confirmed via curl that `/login` renders `<main>` without the padding classes, while an authenticated page (`/schedule`) still has them - [x] User confirmed live in the dev server: login page white bars gone, sidebar collapse/expand toggle works, login works from both `localhost` and `127.0.0.1`
The root layout's <main> always applied the standard app padding even
when there's no signed-in session, insetting these pages' own full-bleed
centered card inside the white body background.
Also fixes next dev silently blocking page JS when accessed via
127.0.0.1 instead of localhost, found while testing the login-page fix.
sb changed title from Fix white bars on login/forgot/reset-password pages to Fix login page padding, add collapsible sidebar, fix dev-origin blocking 2026-08-14 19:30:13 +10:00
Author
Owner

Summary of changes in this PR (v1.90.0 → v1.90.2):

v1.90.1 — Fix login page padding
The root layout's <main> always applied the standard app padding (p-4 lg:p-6, pt-[72px] lg:pt-0), even with no signed-in session. That inset the login/forgot-password/reset-password pages' own full-bleed centered card inside the white <body>, showing as white bars down the sides. Padding is now skipped whenever role is null.

v1.90.2 — Collapsible sidebar + narrower default width
Added a toggle button in the sidebar header that collapses it to a slim icon-only rail (~64px, hover tooltips for labels) and back. Also narrowed the default expanded width from 224px to 208px, per feedback while testing.

v1.90.2 — Dev-origin fix
Found while testing the login fix: next dev's Turbopack silently blocks page JavaScript (chunks + HMR) when the app is accessed via 127.0.0.1 instead of the exact localhost origin it prints on startup — no visible error, the page just never hydrates. Added allowedDevOrigins: ["localhost", "127.0.0.1"] to next.config.mjs.

All three verified with npm run build / npm run lint / npm test, plus live testing in the dev server (confirmed by @sb).

Summary of changes in this PR (v1.90.0 → v1.90.2): **v1.90.1 — Fix login page padding** The root layout's `<main>` always applied the standard app padding (`p-4 lg:p-6`, `pt-[72px] lg:pt-0`), even with no signed-in session. That inset the login/forgot-password/reset-password pages' own full-bleed centered card inside the white `<body>`, showing as white bars down the sides. Padding is now skipped whenever `role` is null. **v1.90.2 — Collapsible sidebar + narrower default width** Added a toggle button in the sidebar header that collapses it to a slim icon-only rail (~64px, hover tooltips for labels) and back. Also narrowed the default expanded width from 224px to 208px, per feedback while testing. **v1.90.2 — Dev-origin fix** Found while testing the login fix: `next dev`'s Turbopack silently blocks page JavaScript (chunks + HMR) when the app is accessed via `127.0.0.1` instead of the exact `localhost` origin it prints on startup — no visible error, the page just never hydrates. Added `allowedDevOrigins: ["localhost", "127.0.0.1"]` to `next.config.mjs`. All three verified with `npm run build` / `npm run lint` / `npm test`, plus live testing in the dev server (confirmed by @sb).
sb merged commit 0a46bf6b27 into main 2026-08-14 19:31:49 +10:00
Sign in to join this conversation.
No reviewers
No labels
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
sb/ACC-System!6
No description provided.