feat: Add settings layouts and pages#697
Conversation
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
There was a problem hiding this comment.
Code Review
This pull request introduces a new user settings section with overview and security pages, adds moderator role support, and makes cron jobs and websockets optional in the plugin API. The review feedback suggests improving type safety and readability in the settings navigation by defining an explicit interface, deduplicating the normalizeUrl utility function, and using optional chaining on the session object to prevent potential runtime crashes.
Important
The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.
…mergeProps` for improved rendering flexibility feat(slider): ✨ Update Slider component to use `@base-ui/react/slider` and adjust class names for orientation feat(switch): ✨ Migrate Switch component to `@base-ui/react/switch` feat(tabs): ✨ Refactor Tabs component to use `@base-ui/react/tabs` and update trigger and content components fix(config): 🔧 Update plugin version to `1.2.0-canary.74` fix(use-mobile): 🔧 Update ESLint ignore comments for better clarity refactor(nav): ✨ Refactor ItemNavAdmin to use `render` prop for SidebarMenuButton and Collapsible components refactor(user-bar): ✨ Update UserBarAdmin to use `render` prop for DropdownMenuTrigger refactor(system-logs): ✨ Refactor MoreActionSystemLogs to use `render` prop for DialogTrigger refactor(create-user): ✨ Update CreateUserAdmin to use `render` prop for DialogTrigger refactor(edit-buttons): ✨ Refactor EditImageButton to use `render` prop for DropdownMenuTrigger refactor(edit-name-code): ✨ Update EditNameCode to use `render` prop for DialogTrigger refactor(show-user-admin-view): ✨ Update ShowUserAdminView to use `render` prop for Link in Button refactor(users-admin-view): 🔧 Remove unused import `cn` refactor(sso-callback): ✨ Update ClientCallbackSSO to use `render` prop for Button refactor(breadcrumb): ✨ Refactor BreadcrumbRender to use `render` prop for BreadcrumbLink refactor(auth-header): ✨ Update AuthUserHeader to use `render` prop for DropdownMenuTrigger refactor(client-auth-header): ✨ Update ClientAuthUserHeader to use `render` prop for DropdownMenuItem refactor(blog-actions): ✨ Update ActionsCategoriesAdmin and ActionsPostsAdmin to use `render` prop for DialogTrigger refactor(edit-action): ✨ Update EditAction to use `render` prop for DialogTrigger docs(alert-dialog): 📚 Add AlertDialogExample to demonstrate AlertDialog usage docs(dialog): 📚 Add DialogDemo to showcase Dialog component functionality
There was a problem hiding this comment.
💡 Codex Review
Here are some automated review suggestions for this pull request.
Reviewed commit: a6b2d04063
ℹ️ About Codex in GitHub
Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you
- Open a pull request for review
- Mark a draft as ready
- Comment "@codex review".
If Codex has suggestions, it will comment; otherwise it will react with 👍.
Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".
| return c.json({ error: "Email already exists" }, 409); | ||
| } | ||
|
|
||
| values.email = body.email; |
There was a problem hiding this comment.
Reset verification when replacing an email
When an admin edits the email for an account that already has emailVerified=true, this branch only writes the new address and leaves the old verification flag intact. The list/show/session APIs will continue returning the replacement address as verified, and the existing verify-email action is hidden for verified users, so an arbitrary new address can be treated as verified without confirmation. Please reset emailVerified whenever body.email changes.
Useful? React with 👍 / 👎.
| <> | ||
| {user.isAdmin && ( | ||
| <DropdownMenuGroup> | ||
| <DropdownMenuItem render={<Link href={`/users/${user.nameCode}`} />}> |
There was a problem hiding this comment.
Point My Profile at an existing route
This new menu item navigates every signed-in user to /users/<nameCode>, but the bundled route tree has no public /users or /users/[nameCode] page (only admin user routes and the new settings/login/register routes are present), so selecting “My Profile” falls through to the catch-all 404. Point this at the actual profile route or omit the item until that route exists.
Useful? React with 👍 / 👎.
Improving Documentation
pnpm lint:fixto fix formatting issues before opening the PR.Description
What?
Why?