Organize/lib
Brian Fertig a849293bd0 Add account linking and per-account theme persistence
- Profile page gains a Request Account Link form, plus sections for pending requests (create / deny / deny-and-block), confirmed linked accounts (toggle / remove), and blocked requesters (allow requests)
- Toggle signs the browser in as the linked account using a single-use 60-second switch token minted server-side after link verification, so the target's password is never needed; a new "account-switch" Credentials provider in auth.ts consumes the token atomically to prevent replay
- Theme preference now stored on the User profile row (new `theme` column) and applied from the root layout's no-FOUC script before first paint, so each account keeps its own look across toggles and devices; anonymous visitors keep the old localStorage behavior
- New Prisma models: AccountLinkRequest, AccountLink, AccountLinkBlock, AccountSwitchToken with composite uniques, self-link check constraint, and cascade deletes
2026-08-30 13:28:55 -06:00
..
actions Add account linking and per-account theme persistence 2026-08-30 13:28:55 -06:00
ai
…
validation Add account linking and per-account theme persistence 2026-08-30 13:28:55 -06:00
access.ts
…
ai-settings.ts
…
auth-errors.ts Add account linking and per-account theme persistence 2026-08-30 13:28:55 -06:00
auth-helpers.ts
…
board.ts
…
colors.ts
…
dates.ts
…
db.ts
…
format.ts
…
rrule-utils.ts
…
scheduled-todos.ts
…
settings.ts
…
themes.ts Add account linking and per-account theme persistence 2026-08-30 13:28:55 -06:00
time-of-day.ts
…
utils.ts
…