feat: add real account workspace controls
This commit is contained in:
@@ -200,6 +200,23 @@ When a module becomes real, replace the placeholder with a Server Component that
|
||||
data from the server boundary and pass only persisted, permission-filtered data into
|
||||
client components.
|
||||
|
||||
### App Shell Tenant and Account Menu Contract
|
||||
|
||||
The desktop app shell footer is the tenant/account workspace control, not only a sign-out
|
||||
surface.
|
||||
|
||||
- Show a compact organization switcher above the account card.
|
||||
- Display both organization name and non-empty `slug`; do not hide or fabricate missing
|
||||
tenant identifiers.
|
||||
- Switch organizations by calling `POST /api/auth/organization` and then `router.refresh()`;
|
||||
do not store the active organization in localStorage.
|
||||
- The account card menu opens a user settings dialog for the current account. Profile edits
|
||||
call `PATCH /api/account/profile`.
|
||||
- OIDC binding UI must reflect real backend capability. If binding records/callbacks are not
|
||||
implemented, show an honest not-connected state instead of fake provider accounts.
|
||||
- The sidebar nav selected state belongs in a small client component using `usePathname()`;
|
||||
keep the rest of `AppShell` server-rendered.
|
||||
|
||||
### Business Form Defaults Contract
|
||||
|
||||
Create forms for persisted business records must not prefill required domain fields with
|
||||
|
||||
Reference in New Issue
Block a user