Skip to content

PMM-15180 Replace local custom SVG icons with peak-ui and MUI components (2nd try) - #5742

Merged
pmcf-percona merged 13 commits into
mainfrom
PMM-15180-replace-local-icons
Aug 11, 2026
Merged

PMM-15180 Replace local custom SVG icons with peak-ui and MUI components (2nd try)#5742
pmcf-percona merged 13 commits into
mainfrom
PMM-15180-replace-local-icons

Conversation

@pmcf-percona

Copy link
Copy Markdown
Contributor

Note: accidentally merged, then reverted, and now formed as a new PR here.


Ticket number: PMM-15180

Feature build: Percona-Lab/pmm-submodules#4509

Summary

PMM kept its own copies of ~50 brand and UI icons as local SVGs in src/icons/, wired through a local Icon component and DYNAMIC_ICON_IMPORT_MAP. Most duplicated icons the design system or Material already provide. This PR sources them properly instead.

The design system was renamed from @percona/percona-ui to @percona/peak-ui, so this also adopts @percona/peak-ui@1.0.25 (the first release carrying the custom Peak Design icon suite) and repoints every existing import.

Also in this PR:

  • 7 brand icons move to @percona/peak-ui components (PerconaIcon, HaproxyIcon, ProxyIcon, PerconaMyIcon/MoIcon/PoIcon/VaIcon), and the RTA empty state uses RealTimeDatabaseOffIllustration from the design system in place of a local 192px SVG.
  • 24 standard glyphs move to @mui/icons-material across the sidebar, theme toggle, app bar, release notes and RTA controls.
  • 14 custom glyphs move to new Peak Design components.
  • Removes three unreferenced icons (collapse-content, expand-content, bottom-panel-open) and the dead node map alias.
  • The release-notes percona marker is now a theme-aware monochrome icon instead of a fixed orange–gold gradient, matching the other markers.

How to test

In both light and dark themes, scan the left sidebar (MySQL/MongoDB/PostgreSQL/Valkey, OS, HAProxy/ProxySQL, Dashboards, Explore, Alerts, Advisors, Inventory, Backups, Configuration, Users and access, Account, Help, theme toggle) plus the app-bar logo and support icon. Then check the Help Center "PMM docs" card, the Updates → release-notes icons, and Real-Time Analysis (overview play/pause/refresh/export, the auto-refresh bolt, the details-pane collapse button, and the empty-state illustration).

No API changes.

Related work:

  • percona/percona-ui#50 — adds the 14 custom Peak Design icons this PR consumes; shipped in @percona/peak-ui@1.0.25.

Testing screenshots:

iconsdarkfull

claude and others added 6 commits August 4, 2026 15:25
Replace PMM's bundled SVG icons with design-system and Material
components and adopt the @percona/percona-ui -> @percona/peak-ui rename
(@percona/peak-ui@1.0.25).

- 7 brand icons + 14 custom glyphs -> @percona/peak-ui components
- 24 standard glyphs -> @mui/icons-material
- RTA empty state -> RealTimeDatabaseOffIllustration
- remove 3 unreferenced icons + the dead `node` map alias
- src/icons/ trimmed to the status icons and PMM logos, kept by design

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01GvaaWAnYeGgjBFDcrFv9Jx
Signed-off-by: Claude <noreply@anthropic.com>
Signed-off-by: Claude <noreply@anthropic.com>
@pmcf-percona
pmcf-percona requested a review from a team as a code owner August 7, 2026 10:23
@pmcf-percona
pmcf-percona requested review from fabio-silva and mattiasimonato and removed request for a team August 7, 2026 10:23
@pmcf-percona pmcf-percona changed the title Pmm 15180 replace local icons PMM-15180 Replace local custom SVG icons with peak-ui and MUI components (v2) Aug 7, 2026
@pmcf-percona pmcf-percona changed the title PMM-15180 Replace local custom SVG icons with peak-ui and MUI components (v2) PMM-15180 Replace local custom SVG icons with peak-ui and MUI components (2nd try) Aug 7, 2026
@coderabbitai

coderabbitai Bot commented Aug 7, 2026

Copy link
Copy Markdown

Review Change Stack

No actionable comments were generated in the recent review. 🎉

ℹ️ Recent review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 37a782d1-5628-4368-85f3-f324a307c5ca

📥 Commits

Reviewing files that changed from the base of the PR and between 0446e5a and 2b760e0.

📒 Files selected for processing (5)
  • AGENTS.md
  • docker-compose.dev.yml
  • ui/AGENTS.md
  • ui/apps/pmm/README.md
  • ui/apps/pmm/src/pages/rta/overview/auto-refresh-select/AutoRefreshSelect.tsx
🔗 Linked repositories identified

CodeRabbit considers these linked repositories for cross-repo context during reviews:

  • percona/pmm-qa (manual)
  • percona/pmm (manual)
🚧 Files skipped from review as they are similar to previous changes (3)
  • ui/apps/pmm/README.md
  • ui/apps/pmm/src/pages/rta/overview/auto-refresh-select/AutoRefreshSelect.tsx
  • ui/AGENTS.md

Walkthrough

PMM updates its UI dependency from @percona/percona-ui to @percona/peak-ui. It replaces legacy string-based icons with direct Peak UI and MUI components across navigation, shared components, alerting, RTA, settings, and update pages.

Changes

Peak UI migration

Layer / File(s) Summary
Package and shared UI migration
ui/apps/pmm/package.json, ui/apps/pmm/src/App.tsx, ui/apps/pmm/src/components/details-pane/*, ui/apps/pmm/src/hooks/*, ui/apps/pmm/src/utils/*, ui/apps/pmm/vite.config.ts, ui/apps/pmm/vitest.config.ts, ui/.cursor/rules/*, ui/AGENTS.md, ui/apps/pmm/README.md, AGENTS.md, docker-compose.dev.yml
The package dependency, shared UI imports, test setup, Vite configuration, development guidance, and linking instructions now use @percona/peak-ui.
Navigation icon contracts
ui/apps/pmm/src/contexts/navigation/*, ui/apps/pmm/src/components/sidebar/nav-item/*
Navigation entries and theme switching now use MUI or Peak UI icon components. Navigation tests use Peak UI-compatible icon identifiers.
Shared component icon replacements
ui/apps/pmm/src/components/app-bar/*, ui/apps/pmm/src/components/ha-icon/*, ui/apps/pmm/src/components/icon/*, ui/apps/pmm/src/pages/alerting/*, ui/apps/pmm/src/pages/help-center/*
Shared, alerting, and help-center components replace legacy icons with direct icons. The dynamic icon registry now retains only supported PMM, status, emergency-home, and chat-info mappings.
Page-level UI and icon migration
ui/apps/pmm/src/pages/rta/*, ui/apps/pmm/src/pages/settings/*, ui/apps/pmm/src/pages/update-clients/*, ui/apps/pmm/src/pages/updates/*
RTA, settings, update-client, and release-note pages now import UI components from Peak UI and render direct MUI or Peak UI icons where required.

Possibly related PRs

🚥 Pre-merge checks | ✅ 4
✅ Passed checks (4 passed)
Check name Status Explanation
Title check ✅ Passed The title clearly summarizes the main change: replacing local SVG icons with Peak UI and MUI components.
Description check ✅ Passed The description includes the ticket, feature build, summary, testing steps, API status, related work, and screenshots.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.

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

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 2

🧹 Nitpick comments (2)
ui/apps/pmm/package.json (1)

29-29: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick win

Make it so: update the stale PMM UI guidance.

@percona/peak-ui@1.0.25 is declared, locked, and used by the application. Replace obsolete @percona/percona-ui references in AGENTS.md, ui/AGENTS.md, ui/apps/pmm/README.md, and ui/apps/pmm/vite.config.ts. Before merge, run cd ui && make lint and complete live PMM verification for the theme, snackbar, and icon changes.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@ui/apps/pmm/package.json` at line 29, Update the stale PMM UI guidance by
replacing all `@percona/percona-ui` references with `@percona/peak-ui` in AGENTS.md,
ui/AGENTS.md, ui/apps/pmm/README.md, and ui/apps/pmm/vite.config.ts, keeping the
declared 1.0.25 dependency consistent. Before merging, run cd ui && make lint
and complete live PMM verification for the theme, snackbar, and icon changes.

Source: Coding guidelines

ui/apps/pmm/src/pages/rta/overview/RealtimeOverview.tsx (1)

8-18: 🎯 Functional Correctness | 🔵 Trivial

Complete the required UI validation before release.

Run cd ui && make lint. Then run PMM on a live server with real RTA data. Verify pause, resume, refresh, export, and all-sessions controls in light and dark themes. Verify keyboard focus and accessible labels.

As per coding guidelines: **/*.{go,ts,tsx,json} changes require the matching linter, and user-visible changes require PMM on a live server with real data.

Also applies to: 152-152, 170-170, 183-183, 210-210

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@ui/apps/pmm/src/pages/rta/overview/RealtimeOverview.tsx` around lines 8 - 18,
Validate the RealtimeOverview controls before release: run the matching UI lint,
then test pause, resume, refresh, export, and all-sessions behavior on a live
PMM server with real RTA data in both light and dark themes. Verify keyboard
focus and accessible labels for the controls associated with DynamicFeed,
FileDownloadOutlined, Pause, PlayArrow, and Refresh.

Source: Coding guidelines

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In
`@ui/apps/pmm/src/pages/rta/overview/auto-refresh-select/AutoRefreshSelect.tsx`:
- Around line 42-47: Add fontSize="inherit" to the ElectricBoltIcon rendered in
AutoRefreshSelect, matching ElectricBoltOffIcon so both electric-bolt states
inherit the button’s size while preserving the existing animation and color.

In
`@ui/apps/pmm/src/pages/updates/change-log/release-notes/ReleaseNotes.constants.tsx`:
- Around line 17-18: Update the release-note icon definitions for danger and
note in ReleaseNotes.constants.tsx to use theme-aware MUI color props or sx
values instead of fixed htmlColor values. Match the corresponding alert style
tokens already used in ReleaseNotes.tsx, preserving the existing icon mappings.

---

Nitpick comments:
In `@ui/apps/pmm/package.json`:
- Line 29: Update the stale PMM UI guidance by replacing all `@percona/percona-ui`
references with `@percona/peak-ui` in AGENTS.md, ui/AGENTS.md,
ui/apps/pmm/README.md, and ui/apps/pmm/vite.config.ts, keeping the declared
1.0.25 dependency consistent. Before merging, run cd ui && make lint and
complete live PMM verification for the theme, snackbar, and icon changes.

In `@ui/apps/pmm/src/pages/rta/overview/RealtimeOverview.tsx`:
- Around line 8-18: Validate the RealtimeOverview controls before release: run
the matching UI lint, then test pause, resume, refresh, export, and all-sessions
behavior on a live PMM server with real RTA data in both light and dark themes.
Verify keyboard focus and accessible labels for the controls associated with
DynamicFeed, FileDownloadOutlined, Pause, PlayArrow, and Refresh.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 5b4c62a3-da71-4c8b-8667-a66e87a21a6d

📥 Commits

Reviewing files that changed from the base of the PR and between 0415b33 and 1934888.

⛔ Files ignored due to path filters (50)
  • ui/apps/pmm/src/icons/account.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/alerts.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/arrow-link.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/backups.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/bottom-panel-close.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/bottom-panel-open.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/browse-dashboards.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/check.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/cluster.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/collapse-content.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/configuration.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/dashboards.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/dynamic-feed.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/electric-bolt-off.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/electric-bolt.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/expand-content.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/explore.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/file-download.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/graph-6.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/haproxy.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/help-fill.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/help.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/high-availability.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/home.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/inventory.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/knowledge-base.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/memory.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/my-organization.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/network.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/operating-system.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/overview.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/pause.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/percona-intelligence.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/percona-mo.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/percona-my.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/percona-po.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/percona-va.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/percona.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/play-arrow.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/proxysql.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/qan.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/real-time-database-off.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/refresh.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/search.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/sign-out.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/summary.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/theme-dark.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/theme-light.svg is excluded by !**/*.svg
  • ui/apps/pmm/src/icons/users-and-access.svg is excluded by !**/*.svg
  • ui/yarn.lock is excluded by !**/yarn.lock, !**/*.lock
📒 Files selected for processing (40)
  • ui/apps/pmm/package.json
  • ui/apps/pmm/src/App.tsx
  • ui/apps/pmm/src/components/app-bar/AppBar.tsx
  • ui/apps/pmm/src/components/details-pane/DataPoint.tsx
  • ui/apps/pmm/src/components/feature-check/FeatureCheck.tsx
  • ui/apps/pmm/src/components/ha-icon/HighAvailabilityIcon.tsx
  • ui/apps/pmm/src/components/icon/Icon.constants.ts
  • ui/apps/pmm/src/components/sidebar/nav-item/SidebarNavItem.test.tsx
  • ui/apps/pmm/src/components/sidebar/nav-item/SidebarNavItem.tsx
  • ui/apps/pmm/src/components/sidebar/nav-item/nav-item-icon/NavItemIcon.test.tsx
  • ui/apps/pmm/src/contexts/navigation/navigation.constants.ts
  • ui/apps/pmm/src/contexts/navigation/navigation.utils.tsx
  • ui/apps/pmm/src/hooks/theme.ts
  • ui/apps/pmm/src/pages/alerting/status/AlertsPage.tsx
  • ui/apps/pmm/src/pages/alerting/status/details-pane/AlertDetailsPane.tsx
  • ui/apps/pmm/src/pages/alerting/status/details-pane/details/AlertDetailsTab.tsx
  • ui/apps/pmm/src/pages/alerting/status/details-pane/raw-data/RawDataTab.tsx
  • ui/apps/pmm/src/pages/alerting/status/table/AlertStatusTable.constants.tsx
  • ui/apps/pmm/src/pages/alerting/status/table/AlertStatusTable.tsx
  • ui/apps/pmm/src/pages/help-center/help-center-card/HelpCenterCard.tsx
  • ui/apps/pmm/src/pages/help-center/help-center-card/HelpCenterCard.types.ts
  • ui/apps/pmm/src/pages/rta/overview/RealtimeOverview.tsx
  • ui/apps/pmm/src/pages/rta/overview/auto-refresh-select/AutoRefreshSelect.tsx
  • ui/apps/pmm/src/pages/rta/overview/details-pane/DetailsPane.tsx
  • ui/apps/pmm/src/pages/rta/overview/details-pane/QueryAndDetails.tsx
  • ui/apps/pmm/src/pages/rta/overview/table/OverviewTable.tsx
  • ui/apps/pmm/src/pages/rta/overview/table/query-cell/QueryCell.tsx
  • ui/apps/pmm/src/pages/rta/selection/empty-state/RealtimeSelectionViewerEmptyState.tsx
  • ui/apps/pmm/src/pages/rta/sessions/sessions-table/SessionsTable.tsx
  • ui/apps/pmm/src/pages/rta/sessions/sessions-table/modal-new-session/NewSessionModal.tsx
  • ui/apps/pmm/src/pages/rta/sessions/sessions-table/modal-stop-multiple-sessions/StopMultipleSessionsModal.tsx
  • ui/apps/pmm/src/pages/rta/sessions/sessions-table/modal-stop-session/StopSessionModal.tsx
  • ui/apps/pmm/src/pages/settings/components/advanced/AdvancedSettingsForm.tsx
  • ui/apps/pmm/src/pages/settings/components/metrics-resolution/MetricsResolutionForm.tsx
  • ui/apps/pmm/src/pages/settings/components/ssh-key/SshKeyForm.tsx
  • ui/apps/pmm/src/pages/update-clients/UpdateClients.tsx
  • ui/apps/pmm/src/pages/updates/change-log/code-block/CodeBlock.tsx
  • ui/apps/pmm/src/pages/updates/change-log/release-notes/ReleaseNotes.constants.tsx
  • ui/apps/pmm/src/utils/testWrapper.tsx
  • ui/apps/pmm/vitest.config.ts
🔗 Linked repositories identified

CodeRabbit considers these linked repositories for cross-repo context during reviews:

  • percona/pmm-qa (manual)
  • percona/pmm (manual)

claude added 2 commits August 11, 2026 10:03
Resolve conflict in OverviewTable.tsx: keep main's reworked import block
and useTableUrlState wiring, applying only this branch's package rename
(@percona/percona-ui -> @percona/peak-ui).

Also repoint references that main introduced or that the original rename
missed, since @percona/percona-ui is no longer a dependency:

- useTableUrlState.ts / .test.ts (added by main on the useTableUrlState
  PR) imported the old package, which would break the build and tests.
- vite.config.ts dev-server watch path and the yarn-link comment.
- ui/AGENTS.md and ui/apps/pmm/README.md package references. Repository
  and Storybook URLs keep the percona-ui name, which did not change.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PcYkaNipfTzkHvcGrrWbfs
Signed-off-by: Claude <noreply@anthropic.com>
The tracked Cursor rule still told agents to import from
@percona/percona-ui, which is no longer a dependency.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PcYkaNipfTzkHvcGrrWbfs
Signed-off-by: Claude <noreply@anthropic.com>

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

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

Actionable comments posted: 1

Caution

Some comments are outside the diff and can’t be posted inline due to platform limitations.

⚠️ Outside diff range comments (1)
ui/apps/pmm/src/hooks/utils/useTableUrlState.test.ts (1)

3-3: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

Replace the default React Router import.

react-router-dom@6.30.2 exposes named exports only. Use a namespace import for vi.spyOn:

-import reactRouter from 'react-router-dom';
+import * as reactRouter from 'react-router-dom';
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@ui/apps/pmm/src/hooks/utils/useTableUrlState.test.ts` at line 3, Update the
reactRouter import in the useTableUrlState test to use a namespace import from
react-router-dom, so vi.spyOn can target the module’s named exports while
preserving the existing test behavior.

Source: MCP tools

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@ui/AGENTS.md`:
- Line 107: Update all canonical Peak UI references: in ui/AGENTS.md lines 96–97
and 107, replace the outdated Storybook and repository links; in
ui/apps/pmm/README.md lines 20, 44, and 49, update the checkout URL and
percona-ui paths to the current peak-ui locations.

---

Outside diff comments:
In `@ui/apps/pmm/src/hooks/utils/useTableUrlState.test.ts`:
- Line 3: Update the reactRouter import in the useTableUrlState test to use a
namespace import from react-router-dom, so vi.spyOn can target the module’s
named exports while preserving the existing test behavior.
🪄 Autofix

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Organization UI

Review profile: CHILL

Plan: Pro Plus

Run ID: 318a47b7-2f53-44bb-b79f-b145a041751f

📥 Commits

Reviewing files that changed from the base of the PR and between 1934888 and 0446e5a.

⛔ Files ignored due to path filters (1)
  • ui/yarn.lock is excluded by !**/yarn.lock, !**/*.lock
📒 Files selected for processing (9)
  • ui/.cursor/rules/percona_ui-styling.mdc
  • ui/AGENTS.md
  • ui/apps/pmm/README.md
  • ui/apps/pmm/src/hooks/utils/useTableUrlState.test.ts
  • ui/apps/pmm/src/hooks/utils/useTableUrlState.ts
  • ui/apps/pmm/src/pages/rta/overview/RealtimeOverview.tsx
  • ui/apps/pmm/src/pages/rta/overview/table/OverviewTable.tsx
  • ui/apps/pmm/src/pages/rta/sessions/sessions-table/SessionsTable.tsx
  • ui/apps/pmm/vite.config.ts
🔗 Linked repositories identified

CodeRabbit considers these linked repositories for cross-repo context during reviews:

  • percona/pmm-qa (manual)
  • percona/pmm (manual)
🚧 Files skipped from review as they are similar to previous changes (3)
  • ui/apps/pmm/src/pages/rta/overview/table/OverviewTable.tsx
  • ui/apps/pmm/src/pages/rta/sessions/sessions-table/SessionsTable.tsx
  • ui/apps/pmm/src/pages/rta/overview/RealtimeOverview.tsx

Comment thread ui/AGENTS.md Outdated
claude added 2 commits August 11, 2026 10:19
ElectricBoltOffIcon passed fontSize="inherit" but ElectricBoltIcon did
not, so it fell back to MUI's medium (24px) and the bolt could change
size when auto-refresh toggled.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PcYkaNipfTzkHvcGrrWbfs
Signed-off-by: Claude <noreply@anthropic.com>
The percona/percona-ui repository was renamed to percona/peak-ui, so the
repository links only resolved via GitHub's redirect and the GitHub Pages
Storybook URL no longer resolves at all.

Update the repository and Storybook links, the yarn-link checkout paths
in the PMM UI README, and the matching commented bind mount in
docker-compose.dev.yml that the README's devcontainer flow tells you to
uncomment. Also repoint the last @percona/percona-ui package reference in
the root AGENTS.md.

The percona-ui#37 TODO comments are left alone: they cite a pull request
number that survived the rename, and they predate this branch.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PcYkaNipfTzkHvcGrrWbfs
Signed-off-by: Claude <noreply@anthropic.com>
@pmcf-percona
pmcf-percona requested a review from a team as a code owner August 11, 2026 10:20
@pmcf-percona
pmcf-percona requested review from ademidoff and maxkondr and removed request for a team August 11, 2026 10:20
@codecov

codecov Bot commented Aug 11, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 46.50%. Comparing base (31318c7) to head (2b760e0).
⚠️ Report is 109 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff             @@
##             main    #5742      +/-   ##
==========================================
+ Coverage   43.59%   46.50%   +2.91%     
==========================================
  Files         415      200     -215     
  Lines       43134    15559   -27575     
==========================================
- Hits        18804     7236   -11568     
+ Misses      22454     7718   -14736     
+ Partials     1876      605    -1271     
Flag Coverage Δ
admin 34.93% <ø> (+0.15%) ⬆️
agent 51.53% <ø> (+2.48%) ⬆️
managed ?
vmproxy 72.22% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

Revert the docker-compose.dev.yml bind-mount path and the root AGENTS.md
package reference to match main. Both are unrelated to the icon
migration, and touching files outside ui/ pulls the Go unit tests and the
whole database integration matrix into this PR's CI for no benefit.

The remaining peak-ui link updates in ui/AGENTS.md and the PMM UI README
stay, since those URLs were genuinely broken.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01PcYkaNipfTzkHvcGrrWbfs
Signed-off-by: Claude <noreply@anthropic.com>
@pmcf-percona
pmcf-percona merged commit 2391e03 into main Aug 11, 2026
8 checks passed
@pmcf-percona
pmcf-percona deleted the PMM-15180-replace-local-icons branch August 11, 2026 10:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants