Skip to content

Commit 97eb735

Browse files
matejkubinecioana-manigadmitri-saricev-3pillargloballclaude
authored
PMM-13652 Native Navigation (#1735)
* PMM-13699 Removed dashboard upper side navigation (#1704) * PMM-14508: QAN light mode support (#1732) * QAN light mode support * delete commit * PMM-14508: improve areas of the user interface that may be less intuitive for users * PMM-14508: Remove unnecessary key prop, fix TypeScript types, and replace hardcoded colors - Remove key={theme.type} from Filters and CheckboxGroup components (no longer needed for theme switching) - Replace all 'any' types with proper TypeScript interfaces (FilterGroup, FilterItem, Filters) - Create Filters.types.ts with type definitions - Replace hardcoded colors with theme variables: - #3d3d3d → theme.colors.border2 (divider) - rgb(50, 179, 227) → theme.colors.linkExternal (counter) - rgba(40, 40, 40) → theme.colors.border2 (border) - #c6c6c6 → theme.colors.textWeak (icon fill) These changes address code review feedback and improve theme reactivity without force remounting components. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]> * PMM-14508: Remove key prop from main QAN component and improve theme type safety - Remove key={grafanaTheme.type} from QueryAnalytics.tsx (theme updates work correctly without force remount) - Update getAntdTheme parameter type to accept GrafanaTheme | undefined for better type safety - Improve JSDoc to clarify that grafanaTheme may be undefined during initialization These changes address additional code review feedback from matejkubinec. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]> * PMM-14508: Revert removal of key prop - required for Ant Design theme updates The key={grafanaTheme.type} on the main QAN component div is necessary to force remount when theme changes. Without it, Ant Design components (Table, Select, Checkbox) do not pick up the new theme from ConfigProvider and render with incorrect colors until page refresh (e.g., dark mode table in light theme). The key prop was correctly removed from child components (Filters, CheckboxGroup) as their styles update reactively via useTheme() hook. Only the top-level component wrapping ConfigProvider needs the key prop. Added detailed comment explaining why force remount is required for future maintainers. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <[email protected]> * PMM-14508: change theme * PMM-14508: resolve test failed --------- Co-authored-by: Claude <[email protected]> --------- Co-authored-by: ioana-maniga <[email protected]> Co-authored-by: dmitri-saricev-3pillargloball <[email protected]> Co-authored-by: Claude <[email protected]>
1 parent eff42f4 commit 97eb735

File tree

82 files changed

+3584
-8780
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

82 files changed

+3584
-8780
lines changed

dashboards/Experimental/DB_Cluster_Summary.json

Lines changed: 1 addition & 71 deletions
Original file line numberDiff line numberDiff line change
@@ -53,77 +53,7 @@
5353
"graphTooltip": 1,
5454
"id": null,
5555
"iteration": 1656415227034,
56-
"links": [
57-
{
58-
"icon": "doc",
59-
"includeVars": true,
60-
"keepTime": true,
61-
"tags": [
62-
"Home"
63-
],
64-
"targetBlank": false,
65-
"title": "Home",
66-
"type": "link",
67-
"url": "/graph/d/pmm-home/home-dashboard"
68-
},
69-
{
70-
"icon": "dashboard",
71-
"includeVars": true,
72-
"keepTime": true,
73-
"tags": [
74-
"Query Analytics"
75-
],
76-
"targetBlank": false,
77-
"title": "Query Analytics",
78-
"type": "link",
79-
"url": "/graph/d/pmm-qan/pmm-query-analytics"
80-
},
81-
{
82-
"icon": "bolt",
83-
"includeVars": true,
84-
"keepTime": true,
85-
"tags": [
86-
"Compare"
87-
],
88-
"targetBlank": false,
89-
"title": "Compare",
90-
"type": "link",
91-
"url": "/graph/d/node-instance-compare/nodes-compare"
92-
},
93-
{
94-
"asDropdown": true,
95-
"includeVars": true,
96-
"keepTime": true,
97-
"tags": [
98-
"OS"
99-
],
100-
"targetBlank": false,
101-
"title": "OS",
102-
"type": "dashboards"
103-
},
104-
{
105-
"asDropdown": true,
106-
"includeVars": false,
107-
"keepTime": true,
108-
"tags": [
109-
"Services"
110-
],
111-
"targetBlank": false,
112-
"title": "Services",
113-
"type": "dashboards"
114-
},
115-
{
116-
"asDropdown": true,
117-
"includeVars": false,
118-
"keepTime": true,
119-
"tags": [
120-
"PMM"
121-
],
122-
"targetBlank": false,
123-
"title": "PMM",
124-
"type": "dashboards"
125-
}
126-
],
56+
"links": [],
12757
"liveNow": false,
12858
"panels": [
12959
{

dashboards/Experimental/Environments_Overview.json

Lines changed: 1 addition & 48 deletions
Original file line numberDiff line numberDiff line change
@@ -26,54 +26,7 @@
2626
"fiscalYearStartMonth": 0,
2727
"graphTooltip": 1,
2828
"id": null,
29-
"links": [
30-
{
31-
"icon": "doc",
32-
"includeVars": true,
33-
"keepTime": true,
34-
"tags": [
35-
"Home"
36-
],
37-
"targetBlank": false,
38-
"title": "Home",
39-
"type": "link",
40-
"url": "/graph/d/pmm-home/home-dashboard"
41-
},
42-
{
43-
"icon": "dashboard",
44-
"includeVars": true,
45-
"keepTime": true,
46-
"tags": [
47-
"Query Analytics"
48-
],
49-
"targetBlank": false,
50-
"title": "Query Analytics",
51-
"type": "link",
52-
"url": "/graph/d/pmm-qan/pmm-query-analytics"
53-
},
54-
{
55-
"asDropdown": true,
56-
"includeVars": false,
57-
"keepTime": true,
58-
"tags": [
59-
"Services"
60-
],
61-
"targetBlank": false,
62-
"title": "Services",
63-
"type": "dashboards"
64-
},
65-
{
66-
"asDropdown": true,
67-
"includeVars": false,
68-
"keepTime": true,
69-
"tags": [
70-
"PMM"
71-
],
72-
"targetBlank": false,
73-
"title": "PMM",
74-
"type": "dashboards"
75-
}
76-
],
29+
"links": [],
7730
"liveNow": false,
7831
"panels": [
7932
{

dashboards/Experimental/MongoDB_Cluster_Summary_(Old).json

Lines changed: 1 addition & 82 deletions
Original file line numberDiff line numberDiff line change
@@ -49,88 +49,7 @@
4949
"graphTooltip": 1,
5050
"id": null,
5151
"iteration": 1656415942746,
52-
"links": [
53-
{
54-
"icon": "doc",
55-
"includeVars": true,
56-
"keepTime": true,
57-
"tags": [
58-
"Home"
59-
],
60-
"targetBlank": false,
61-
"title": "Home",
62-
"type": "link",
63-
"url": "/graph/d/pmm-home/home-dashboard"
64-
},
65-
{
66-
"icon": "dashboard",
67-
"includeVars": true,
68-
"keepTime": true,
69-
"tags": [
70-
"Query Analytics"
71-
],
72-
"targetBlank": false,
73-
"title": "Query Analytics",
74-
"type": "link",
75-
"url": "/graph/d/pmm-qan/pmm-query-analytics"
76-
},
77-
{
78-
"icon": "bolt",
79-
"includeVars": true,
80-
"keepTime": true,
81-
"tags": [
82-
"Compare"
83-
],
84-
"targetBlank": false,
85-
"title": "Compare",
86-
"type": "link",
87-
"url": "/graph/d/mongodb-instance-compare/mongodb-instances-compare"
88-
},
89-
{
90-
"asDropdown": true,
91-
"includeVars": true,
92-
"keepTime": true,
93-
"tags": [
94-
"MongoDB"
95-
],
96-
"targetBlank": false,
97-
"title": "MongoDB",
98-
"type": "dashboards"
99-
},
100-
{
101-
"asDropdown": true,
102-
"includeVars": true,
103-
"keepTime": true,
104-
"tags": [
105-
"MongoDB_HA"
106-
],
107-
"targetBlank": false,
108-
"title": "HA",
109-
"type": "dashboards"
110-
},
111-
{
112-
"asDropdown": true,
113-
"includeVars": false,
114-
"keepTime": true,
115-
"tags": [
116-
"Services"
117-
],
118-
"targetBlank": false,
119-
"title": "Services",
120-
"type": "dashboards"
121-
},
122-
{
123-
"asDropdown": true,
124-
"includeVars": false,
125-
"keepTime": true,
126-
"tags": [
127-
"PMM"
128-
],
129-
"targetBlank": false,
130-
"title": "PMM",
131-
"type": "dashboards"
132-
}
133-
],
52+
"links": [],
13453
"liveNow": false,
13554
"panels": [
13655
{

dashboards/Experimental/MongoDB_ReplSet_Summary_(Old).json

Lines changed: 1 addition & 82 deletions
Original file line numberDiff line numberDiff line change
@@ -55,88 +55,7 @@
5555
"editable": false,
5656
"fiscalYearStartMonth": 0,
5757
"graphTooltip": 1,
58-
"links": [
59-
{
60-
"icon": "doc",
61-
"includeVars": true,
62-
"keepTime": true,
63-
"tags": [
64-
"Home"
65-
],
66-
"targetBlank": false,
67-
"title": "Home",
68-
"type": "link",
69-
"url": "/graph/d/pmm-home/home-dashboard"
70-
},
71-
{
72-
"icon": "dashboard",
73-
"includeVars": true,
74-
"keepTime": true,
75-
"tags": [
76-
"Query Analytics"
77-
],
78-
"targetBlank": false,
79-
"title": "Query Analytics",
80-
"type": "link",
81-
"url": "/graph/d/pmm-qan/pmm-query-analytics"
82-
},
83-
{
84-
"icon": "bolt",
85-
"includeVars": true,
86-
"keepTime": true,
87-
"tags": [
88-
"Compare"
89-
],
90-
"targetBlank": false,
91-
"title": "Compare",
92-
"type": "link",
93-
"url": "/graph/d/mongodb-instance-compare/mongodb-instances-compare"
94-
},
95-
{
96-
"asDropdown": true,
97-
"includeVars": true,
98-
"keepTime": true,
99-
"tags": [
100-
"MongoDB"
101-
],
102-
"targetBlank": false,
103-
"title": "MongoDB",
104-
"type": "dashboards"
105-
},
106-
{
107-
"asDropdown": true,
108-
"includeVars": true,
109-
"keepTime": true,
110-
"tags": [
111-
"MongoDB_HA"
112-
],
113-
"targetBlank": false,
114-
"title": "HA",
115-
"type": "dashboards"
116-
},
117-
{
118-
"asDropdown": true,
119-
"includeVars": false,
120-
"keepTime": true,
121-
"tags": [
122-
"Services"
123-
],
124-
"targetBlank": false,
125-
"title": "Services",
126-
"type": "dashboards"
127-
},
128-
{
129-
"asDropdown": true,
130-
"includeVars": false,
131-
"keepTime": true,
132-
"tags": [
133-
"PMM"
134-
],
135-
"targetBlank": false,
136-
"title": "PMM",
137-
"type": "dashboards"
138-
}
139-
],
58+
"links": [],
14059
"liveNow": false,
14160
"panels": [
14261
{

dashboards/Experimental/PMM_Health.json

Lines changed: 1 addition & 71 deletions
Original file line numberDiff line numberDiff line change
@@ -57,77 +57,7 @@
5757
"fiscalYearStartMonth": 0,
5858
"graphTooltip": 1,
5959
"id": 66,
60-
"links": [
61-
{
62-
"icon": "doc",
63-
"includeVars": true,
64-
"keepTime": true,
65-
"tags": [
66-
"Home"
67-
],
68-
"targetBlank": false,
69-
"title": "Home",
70-
"type": "link",
71-
"url": "/graph/d/pmm-home/home-dashboard"
72-
},
73-
{
74-
"icon": "dashboard",
75-
"includeVars": true,
76-
"keepTime": true,
77-
"tags": [
78-
"Query Analytics"
79-
],
80-
"targetBlank": false,
81-
"title": "Query Analytics",
82-
"type": "link",
83-
"url": "/graph/d/pmm-qan/pmm-query-analytics"
84-
},
85-
{
86-
"icon": "bolt",
87-
"includeVars": true,
88-
"keepTime": true,
89-
"tags": [
90-
"Compare"
91-
],
92-
"targetBlank": false,
93-
"title": "Compare",
94-
"type": "link",
95-
"url": "/graph/d/postgresql-instance-compare/postgresql-instances-compare"
96-
},
97-
{
98-
"asDropdown": true,
99-
"includeVars": true,
100-
"keepTime": true,
101-
"tags": [
102-
"PostgreSQL"
103-
],
104-
"targetBlank": false,
105-
"title": "PostgreSQL",
106-
"type": "dashboards"
107-
},
108-
{
109-
"asDropdown": true,
110-
"includeVars": false,
111-
"keepTime": true,
112-
"tags": [
113-
"Services"
114-
],
115-
"targetBlank": false,
116-
"title": "Services",
117-
"type": "dashboards"
118-
},
119-
{
120-
"asDropdown": true,
121-
"includeVars": false,
122-
"keepTime": true,
123-
"tags": [
124-
"PMM"
125-
],
126-
"targetBlank": false,
127-
"title": "PMM",
128-
"type": "dashboards"
129-
}
130-
],
60+
"links": [],
13161
"liveNow": false,
13262
"panels": [
13363
{

0 commit comments

Comments
 (0)