Skip to content

  • Projects
  • Groups
  • Snippets
  • Help
    • Loading...
    • Help
    • Submit feedback
    • Contribute to GitLab
  • Sign in
U
upgrade-data-crawler-fe
  • Project
    • Project
    • Details
    • Activity
    • Releases
    • Cycle Analytics
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
    • Charts
  • Issues 0
    • Issues 0
    • List
    • Board
    • Labels
    • Milestones
  • Merge Requests 0
    • Merge Requests 0
  • CI / CD
    • CI / CD
    • Pipelines
    • Jobs
    • Schedules
    • Charts
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Members
    • Members
  • Collapse sidebar
  • Activity
  • Graph
  • Charts
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
  • ThinhNC
  • upgrade-data-crawler-fe
  • Merge Requests
  • !9

Merged
Opened Sep 06, 2026 by ThinhNC@ThinhNC
  • Report abuse
Report abuse

feat(ui): implement responsive bottom nav and polish interface metrics & localization

Summary of Changes

This pull request introduces a responsive mobile and tablet bottom navigation bar, dynamically computes KPI metrics for extraction templates, resolves client-side hydration issues caused by browser extensions, and refines service health localization and user menu options.


Key Updates

1. Extraction Templates Metric Calculation

  • Issue: The structured extraction coverage KPI card displayed a static 100% even when no templates or rules existed.
  • Fix: Replaced the hardcoded percentage with dynamic memoized calculation:
    • Displays 0% when the template list is empty or total rules equal 0.
    • Correctly computes the true coverage percentage based on configured structured rules when data exists.

2. Responsive Bottom Navigation Bar

  • Responsive Navigation Structure:
    • For screen widths 1024px and below, the 5 primary navigation tabs transition from the top header into a fixed bottom navigation bar.
    • Mobile Phones (< 768px): Displays icons only with comfortable touch targets and an active emerald indicator dot.
    • iPads / Tablets (768px to 1024px): Displays a stacked layout with the icon on top and the navigation label directly underneath.
    • Desktops (> 1024px): The bottom navigation bar is hidden while the header navigation tabs remain visible.
  • Design & Layout:
    • Built with glassmorphism, background blur, subtle border styling, and safe-area inset padding for modern mobile devices.
    • Added bottom padding to the footer to ensure page contents are never obscured by the fixed bar.

3. Hydration Mismatch Resolution

  • Fixed client hydration warnings caused by browser extensions or responsive devtools injecting translate styles into fixed bottom elements prior to hydration.
  • Implemented a client mount guard and suppressed hydration warnings on the navigation element to guarantee clean rendering across all browsers.

4. Service Health Localization

  • Replaced hardcoded English status strings (Degraded, Active, Online, Offline, Down) with dynamic bilingual localization tokens.
  • Standardized Vietnamese translations to pure Vietnamese (Hiệu năng giảm instead of mixed English terms).

5. User Profile Dropdown Cleanup

  • Removed redundant Dashboard navigation link from the user avatar dropdown menu.
  • Removed the static Admin role badge entry from the dropdown action list.
  • Cleaned up unused imports and icons to streamline the user menu interface.

Check out, review, and merge locally

Step 1. Fetch and check out the branch for this merge request

git fetch origin
git checkout -b feat/responsive-bottom-nav-and-ui-polish origin/feat/responsive-bottom-nav-and-ui-polish

Step 2. Review the changes locally

Step 3. Merge the branch and fix any conflicts that come up

git fetch origin
git checkout origin/develop
git merge --no-ff feat/responsive-bottom-nav-and-ui-polish

Step 4. Push the result of the merge to GitLab

git push origin develop

Note that pushing to GitLab requires write access to this repository.

Tip: You can also checkout merge requests locally by following these guidelines.

  • Discussion 0
  • Commits 1
  • Changes 41
Assignee
No assignee
Assign to
None
Milestone
None
Assign milestone
Time tracking
0
Labels
None
Assign labels
  • View project labels
Reference: ThinhNC/upgrade-data-crawler-fe!9

Revert this merge request

This will create a new commit in order to revert the existing changes.

Switch branch
Cancel
A new branch will be created in your fork and a new merge request will be started.

Cherry-pick this merge request

Switch branch
Cancel
A new branch will be created in your fork and a new merge request will be started.