Skip to content

Conversation

@faisalsiddique4400
Copy link
Contributor

@faisalsiddique4400 faisalsiddique4400 commented Jan 22, 2026

fix(admin-ui): resolve data inconsistency issues in My Profile (#2599)

Summary

This PR fixes multiple data consistency and usability issues across Assets, Clients, and My Profile sections of the Admin UI. These issues were causing incorrect validation behavior, missing navigation controls, and incomplete data rendering.

Issues Addressed

My Profile

  • Profile details were not being rendered correctly.
  • Fixed data binding and rendering logic so user profile information is displayed as expected.

Fix Details

  • Corrected profile data fetching and rendering in My Profile.
  • Ensured consistent UI behavior across all affected sections.

Result

  • My Profile reliably displays user details.
  • Improved consistency and usability across the Admin UI.

Additional Notes

These changes improve form correctness and navigation flow, while addressing user-facing inconsistencies reported across multiple modules.

🔗 Ticket

Closes: #2599

Summary by CodeRabbit

  • Bug Fixes

    • Fixed duplicate French translation entry.
  • New Features

    • Added multilingual labels for user attributes: Given Name, Last Name, Email, Status (EN/ES/FR/PT).
  • Improvements

    • Enhanced profile page loading UX with skeletons and streamlined styling.
    • Redesigned client wizard footer and step navigation for clearer back/next/apply flows.
    • After creating or editing a user, navigation now returns to the user list (back behavior).
  • Removed Features

    • Reports pages and menu entries removed.

✏️ Tip: You can customize this high-level summary in your review settings.

@coderabbitai
Copy link
Contributor

coderabbitai bot commented Jan 22, 2026

📝 Walkthrough

Walkthrough

This PR removes the Auth Server reports route and components, adds user attribute translations (en/es/fr/pt), refactors ProfilePage (memoization, rendering helpers, auth state), replaces CardFooter with GluuFormFooter in client wizard, and changes navigation usage to include navigateBack.

Changes

Cohort / File(s) Summary
Navigation & Route Cleanup
admin-ui/app/helpers/navigation.ts, admin-ui/plugins/auth-server/plugin-metadata.js
Removed AUTH_SERVER_REPORTS route, deleted ReportPage imports/menu/route entries tied to that route
Deleted Report Components
admin-ui/plugins/admin/components/Reports/ReportPage.tsx, admin-ui/plugins/auth-server/components/Reports/ReportPage.js
Removed empty ReportPage components and their default exports
Localization Files
admin-ui/app/locales/en/translation.json, admin-ui/app/locales/es/translation.json, admin-ui/app/locales/fr/translation.json, admin-ui/app/locales/pt/translation.json
Added user attribute keys (givenName, sn, mail) and fixed duplicate status in French
Profile Component Refactor
admin-ui/app/routes/Apps/Profile/ProfilePage.tsx, admin-ui/app/routes/Apps/Profile/types.ts
Converted ProfilePage to use memo, added rendering helpers (renderDisplayName/renderField/renderUserRolesField), adjusted theme/color handling, guarded profile fetchs by auth state, added optional userInum to AuthState
Client Wizard & Basic Panel
admin-ui/plugins/auth-server/components/Clients/ClientWizardForm.js, admin-ui/plugins/auth-server/components/Clients/ClientBasicPanel.js
Replaced CardFooter with GluuFormFooter, introduced navigate/cancel/apply handlers and dynamic activeSteps; clarified conditional invocation in BasicPanel debounce
User Management Navigation
admin-ui/plugins/user-management/components/UserAddPage.tsx, admin-ui/plugins/user-management/components/UserEditPage.tsx
Switched consumppers to use navigateBack from useAppNavigation() instead of navigateToRoute for post-action navigation

Estimated code review effort

🎯 3 (Moderate) | ⏱️ ~25 minutes

Possibly related PRs

Suggested reviewers

  • duttarnab
  • moabu
  • syntrydy

Poem

🐰
Reports drift off like leaves in spring,
Keys for names and mails we bring,
Profile shines with cleaner flow,
Footers guide where buttons go,
Back we hop — onward we spring!

🚥 Pre-merge checks | ✅ 2 | ❌ 3
❌ Failed checks (2 warnings, 1 inconclusive)
Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
Title check ⚠️ Warning The PR title mentions 'My Profile' but the changeset covers much broader changes including Assets, Clients, Reports removal, and navigation updates. Update title to reflect all key changes or mention the broader scope, such as: 'fix(admin-ui): resolve data inconsistency issues across Assets, Clients, Reports, and My Profile'
Out of Scope Changes check ❓ Inconclusive Most changes align with the stated objectives, but the PR objectives mention fixing Assets validation while the changeset shows no Assets-related modifications, only Clients and My Profile updates. Clarify whether Assets validation fixes were excluded from this PR or if that objective was deprioritized. Verify the PR objectives align with actual implementation scope.
✅ Passed checks (2 passed)
Check name Status Explanation
Linked Issues check ✅ Passed All primary objectives from issue #2599 are addressed: Back button added to Client Create/Edit flows via GluuFormFooter [ClientWizardForm], profile details rendering corrected [ProfilePage, types], and translation keys added to support user attributes display.
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.

✨ Finishing touches
  • 📝 Generate docstrings

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@mo-auto mo-auto added comp-admin-ui Component affected by issue or PR kind-bug Issue or PR is a bug in existing functionality labels Jan 22, 2026
Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 1

🤖 Fix all issues with AI agents
In `@admin-ui/plugins/auth-server/components/Clients/ClientWizardForm.js`:
- Around line 221-223: The Next/Previous bounds use the full sequence (which
always contains ClientActiveTokens) so in create flow isLastStep is never true
and Next can advance to a hidden step; update the logic to derive an activeSteps
array based on isEdit (filter out ClientActiveTokens when isEdit is false) and
use activeSteps for computing isFirstStep, isLastStep, and for
advancing/retreating currentStep (replace usages of sequence in those checks and
next/prev handlers with activeSteps); ensure currentStep comparisons use
activeSteps[0] and activeSteps[activeSteps.length - 1] and handle edge cases
where currentStep might not be in activeSteps.

@faisalsiddique4400 faisalsiddique4400 changed the title fix(admin-ui): resolve data inconsistency issues in Assets, Clients, and My Profile (#2599) fix(admin-ui): resolve data inconsistency issues in Clients, and My Profile (#2599) Jan 22, 2026
@sonarqubecloud
Copy link

Copy link
Contributor

@coderabbitai coderabbitai bot left a comment

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🤖 Fix all issues with AI agents
In `@admin-ui/plugins/auth-server/components/Clients/ClientWizardForm.js`:
- Around line 537-578: The GluuFormFooter currently has isLoading hardcoded to
false; replace this with a real loading state (e.g., local state isApplying or
isLoading) and wire it into the submission flow: add a state variable in the
component, set it true at the start of handleApply and false on success/error
(and ensure any async branches reset it), then pass that variable to the
GluuFormFooter isLoading prop (instead of false) so the footer reflects the
actual submit/loading status; reference GluuFormFooter, handleApply, and
modifiedFields when making these changes.
- Line 265: In ClientWizardForm remove the no-op useEffect that references
cedarPermissions; delete the line "useEffect(() => {}, [cedarPermissions])" so
there is no empty effect running on cedarPermissions changes—this eliminates
unnecessary re-renders and overhead in the ClientWizardForm component.

@faisalsiddique4400 faisalsiddique4400 changed the title fix(admin-ui): resolve data inconsistency issues in Clients, and My Profile (#2599) fix(admin-ui): resolve data inconsistency issues in My Profile (#2599) Jan 22, 2026
@faisalsiddique4400 faisalsiddique4400 deleted the admin-ui-issue-2599 branch February 2, 2026 08:19
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

comp-admin-ui Component affected by issue or PR kind-bug Issue or PR is a bug in existing functionality

Projects

None yet

Development

Successfully merging this pull request may close these issues.

fix(admin-ui): data inconsistency issues in My Profile

2 participants