Skip to content

Feat: (UI) API Key 、 User Management、refreshToken、change password after first login#5143

Open
maoyuehui wants to merge 6 commits into
xorbitsai:mainfrom
maoyuehui:feat-new-ui-part-8
Open

Feat: (UI) API Key 、 User Management、refreshToken、change password after first login#5143
maoyuehui wants to merge 6 commits into
xorbitsai:mainfrom
maoyuehui:feat-new-ui-part-8

Conversation

@maoyuehui

Copy link
Copy Markdown
Collaborator

Pages:

  1. Added username display to the sidebar and adjusted the bottom section layout.
  2. Added a change password dialog after the first login.
  3. Updated the API Key Management page; added User and Permission Mode fields to the create/edit forms.
  4. Optimized the User Management page content.
  5. Added auth-storage for managing token and refresh_token.
  6. Added refreshToken.

Components:

  1. date-time-picker now supports toggling time (hour/minute) display.
  2. Added a password visibility toggle icon to Input when type="password".
  3. Updated Sonner success toast styling to use a green background.
  4. Optimized the MultiSelect dropdown style.

@XprobeBot XprobeBot added this to the v2.x milestone Jul 7, 2026

@gemini-code-assist gemini-code-assist Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code Review

This pull request migrates authentication token storage from cookies to session storage, implements automatic token refreshing on 401 errors, introduces a password-change requirement on first login, and refactors the API Key and User Management pages into collapsible layouts. Feedback on these changes highlights several issues: an explicit onChange override in api-key-dialog.tsx prevents expiration dates from being saved; onChange should be optional in DateTimePickerProps; string-based permissions are ignored during edit hydration in inferPermissions; custom layout classes on password inputs break the eye icon's positioning; a missing catch block in handleChangePassword could cause unhandled promise rejections; and the PermissionSelector risks losing unrecognized permissions during edits.

Comment thread frontend/src/components/pages/api-key-management/api-key-dialog.tsx
Comment thread frontend/src/components/ui/date-time-picker.tsx Outdated
Comment thread frontend/src/components/pages/api-key-management/api-key-dialog.tsx
Comment thread frontend/src/components/ui/input.tsx Outdated
Comment thread frontend/src/components/pages/login/change-password-dialog.tsx
Comment thread frontend/src/components/pages/user-management/permissions.tsx
@maoyuehui maoyuehui requested a review from qinxuye July 8, 2026 03:25
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants