Repository: jaegertracing/jaeger-ui
Pull request #2772: Replace deprecated `overlayClassName` with `classNames.root`
Author: login: abhayguptas
Labels: name: changelog:bugfix-or-minor-feature
description: 🐞 Bug fixes, Minor Improvements
Created: 2025-05-16T07:22:05Z | Merged: 2025-05-18T18:33:23Z

## Summary

This PR addresses the deprecation warning related to the `overlayClassName` prop used in Ant Design’s `Tooltip` and `Popover` components.

## Changes

- Replaced all instances of the deprecated `overlayClassName` prop with the recommended `classNames={{ root: "<className>" }}` syntax throughout the codebase.
- Updated relevant test snapshots to reflect these changes.
- Ran all tests to ensure nothing is broken and update the snapshot files.

## Background

The `overlayClassName` prop is deprecated in Ant Design components such as `Tooltip` and `Popover`. The new API requires using the `classNames` prop with an object that specifies the `root` key for custom class names. See [Ant Design Tooltip docs](https://ant.design/components/tooltip/) for more info.

---

This PR helps keep the project up to date and warning-free with respect to UI library best practices.



Diff:
diff --git a/packages/jaeger-ui/src/components/DeepDependencies/Header/index.tsx b/packages/jaeger-ui/src/components/DeepDependencies/Header/index.tsx
index a07c4eadaf..2a16db3fc1 100644
--- a/packages/jaeger-ui/src/components/DeepDependencies/Header/index.tsx
+++ b/packages/jaeger-ui/src/components/DeepDependencies/Header/index.tsx
@@ -79,7 +79,7 @@ export default class Header extends React.PureComponent<TProps> {
     }
 
     return (
-      <Tooltip overlayClassName="DdgHeader--uiFindInfo--tooltip" placement="topRight" title={tipText}>
+      <Tooltip classNames={{ root: 'DdgHeader--uiFindInfo--tooltip' }} placement="topRight" title={tipText}>
         {/* arbitrary span is necessary as Tooltip alters child's styling */}
         <span>
           <button
diff --git a/packages/jaeger-ui/src/components/Monitor/ServicesView/operationDetailsTable/__snapshots__/index.test.js.snap b/packages/jaeger-ui/src/components/Monitor/ServicesView/operationDetailsTable/__snapshots__/index.test.js.snap
index ae5543d3f0..c6b4f75956 100644
--- a/packages/jaeger-ui/src/components/Monitor/ServicesView/operationDetailsTable/__snapshots__/index.test.js.snap
+++ b/packages/jaeger-ui/src/components/Monitor/ServicesView/operationDetailsTable/__snapshots__/index.test.js.snap
@@ -77,7 +77,11 @@ exports[`<OperationTableDetails> Table rendered successfully 1`] = `
               Impact
                 
               <Tooltip
-                overlayClassName="impact-tooltip"
+                classNames={
+                  Object {
+                    "root": "impact-tooltip",
+                  }
+                }
                 placement="top"
                 title="The result of multiplying avg. duration and requests per minute, showing the most used and slowest endpoints"
               >
diff --git a/packages/jaeger-ui/src/components/Monitor/ServicesView/operationDetailsTable/index.tsx b/packages/jaeger-ui/src/components/Monitor/ServicesView/operationDetailsTable/index.tsx
index 333ddecb0e..4170161f15 100644
--- a/packages/jaeger-ui/src/components/Monitor/ServicesView/operationDetailsTable/index.tsx
+++ b/packages/jaeger-ui/src/components/Monitor/ServicesView/operationDetailsTable/index.tsx
@@ -162,7 +162,7 @@ export class OperationTableDetails extends React.PureComponent<TProps, TState> {
             <span style={{ float: 'left', color: '#459798' }}>
               {tableTitles.get('impact')} &nbsp;
               <Tooltip
-                overlayClassName="impact-tooltip"
+                classNames={{ root: 'impact-tooltip' }}
                 placement="top"
                 title="The result of multiplying avg. duration and requests per minute, showing the most used and slowest endpoints"
               >
diff --git a/packages/jaeger-ui/src/components/TraceDiff/TraceDiffGraph/__snapshots__/renderNode.test.js.snap b/packages/jaeger-ui/src/components/TraceDiff/TraceDiffGraph/__snapshots__/renderNode.test.js.snap
index ed0414168c..1fb38d9d10 100644
--- a/packages/jaeger-ui/src/components/TraceDiff/TraceDiffGraph/__snapshots__/renderNode.test.js.snap
+++ b/packages/jaeger-ui/src/components/TraceDiff/TraceDiffGraph/__snapshots__/renderNode.test.js.snap
@@ -2,6 +2,11 @@
 
 exports[`drawNode diffNode renders as expected when props.a and props.b are the same 1`] = `
 <Popover
+  classNames={
+    Object {
+      "root": "DiffNode--popover is-same",
+    }
+  }
   content={
     <table
       className="DiffNode is-same"
@@ -42,7 +47,6 @@ exports[`drawNode diffNode renders as expected when props.a and props.b are the
     </table>
   }
   mouseEnterDelay={0.25}
-  overlayClassName="DiffNode--popover is-same"
 >
   <table
     className="DiffNode is-same"
@@ -86,6 +90,11 @@ exports[`drawNode diffNode renders as expected when props.a and props.b are the
 
 exports[`drawNode diffNode renders as expected when props.a is 0 1`] = `
 <Popover
+  classNames={
+    Object {
+      "root": "DiffNode--popover is-changed is-added",
+    }
+  }
   content={
     <table
       className="DiffNode is-changed is-added"
@@ -146,7 +155,6 @@ exports[`drawNode diffNode renders as expected when props.a is 0 1`] = `
     </table>
   }
   mouseEnterDelay={0.25}
-  overlayClassName="DiffNode--popover is-changed is-added"
 >
   <table
     className="DiffNode is-changed is-added"
@@ -210,6 +218,11 @@ exports[`drawNode diffNode renders as expected when props.a is 0 1`] = `
 
 exports[`drawNode diffNode renders as expected when props.a is less than props.b 1`] = `
 <Popover
+  classNames={
+    Object {
+      "root": "DiffNode--popover is-changed is-more",
+    }
+  }
   content={
     <table
       className="DiffNode is-changed is-more"
@@ -270,7 +283,6 @@ exports[`drawNode diffNode renders as expected when props.a is less than props.b
     </table>
   }
   mouseEnterDelay={0.25}
-  overlayClassName="DiffNode--popover is-changed is-more"
 >
   <table
     className="DiffNode is-changed is-more"
@@ -334,6 +346,11 @@ exports[`drawNode diffNode renders as expected when props.a is less than props.b
 
 exports[`drawNode diffNode renders as expected when props.a is more than props.b 1`] = `
 <Popover
+  classNames={
+    Object {
+      "root": "DiffNode--popover is-changed is-less",
+    }
+  }
   content={
     <table
       className="DiffNode is-changed is-less"
@@ -394,7 +411,6 @@ exports[`drawNode diffNode renders as expected when props.a is more than props.b
     </table>
   }
   mouseEnterDelay={0.25}
-  overlayClassName="DiffNode--popover is-changed is-less"
 >
   <table
     className="DiffNode is-changed is-less"
@@ -458,6 +474,11 @@ exports[`drawNode diffNode renders as expected when props.a is more than props.b
 
 exports[`drawNode diffNode renders as expected when props.b is 0 1`] = `
 <Popover
+  classNames={
+    Object {
+      "root": "DiffNode--popover is-changed is-removed",
+    }
+  }
   content={
     <table
       className="DiffNode is-changed is-removed"
@@ -518,7 +539,6 @@ exports[`drawNode diffNode renders as expected when props.b is 0 1`] = `
     </table>
   }
   mouseEnterDelay={0.25}
-  overlayClassName="DiffNode--popover is-changed is-removed"
 >
   <table
     className="DiffNode is-changed is-removed"
@@ -582,6 +602,11 @@ exports[`drawNode diffNode renders as expected when props.b is 0 1`] = `
 
 exports[`drawNode diffNode renders as expected when props.isUiFindMatch is true 1`] = `
 <Popover
+  classNames={
+    Object {
+      "root": "DiffNode--popover is-same",
+    }
+  }
   content={
     <table
       className="DiffNode is-same"
@@ -622,7 +647,6 @@ exports[`drawNode diffNode renders as expected when props.isUiFindMatch is true
     </table>
   }
   mouseEnterDelay={0.25}
-  overlayClassName="DiffNode--popover is-same"
 >
   <table
     className="DiffNode is-same"
diff --git a/packages/jaeger-ui/src/components/TraceDiff/TraceDiffGraph/renderNode.tsx b/packages/jaeger-ui/src/components/TraceDiff/TraceDiffGraph/renderNode.tsx
index bdebfe84b7..9050dca2a3 100644
--- a/packages/jaeger-ui/src/components/TraceDiff/TraceDiffGraph/renderNode.tsx
+++ b/packages/jaeger-ui/src/components/TraceDiff/TraceDiffGraph/renderNode.tsx
@@ -79,7 +79,7 @@ export class DiffNode extends React.PureComponent<Props> {
     );
 
     return (
-      <Popover overlayClassName={`DiffNode--popover ${className}`} mouseEnterDelay={0.25} content={table}>
+      <Popover classNames={{ root: `DiffNode--popover ${className}` }} mouseEnterDelay={0.25} content={table}>
         {table}
       </Popover>
     );
diff --git a/packages/jaeger-ui/src/components/TraceDiff/TraceDiffHeader/TraceDiffHeader.tsx b/packages/jaeger-ui/src/components/TraceDiff/TraceDiffHeader/TraceDiffHeader.tsx
index 6ea02cb207..eac8bb917e 100644
--- a/packages/jaeger-ui/src/components/TraceDiff/TraceDiffHeader/TraceDiffHeader.tsx
+++ b/packages/jaeger-ui/src/components/TraceDiff/TraceDiffHeader/TraceDiffHeader.tsx
@@ -97,7 +97,7 @@ export default class TraceDiffHeader extends React.PureComponent<Props, State> {
           <h1 className="ub-m0">A</h1>
         </div>
         <Popover
-          overlayClassName="TraceDiffHeader--popover"
+          classNames={{ root: 'TraceDiffHeader--popover' }}
           trigger="click"
           placement="bottomLeft"
           title={<TraceIdInput selectTrace={this._diffSetA} />}
@@ -124,7 +124,7 @@ export default class TraceDiffHeader extends React.PureComponent<Props, State> {
           <h1 className="ub-m0">B</h1>
         </div>
         <Popover
-          overlayClassName="TraceDiffHeader--popover"
+          classNames={{ root: 'TraceDiffHeader--popover' }}
           trigger="click"
           placement="bottomLeft"
           title={<TraceIdInput selectTrace={this._diffSetB} />}
diff --git a/packages/jaeger-ui/src/components/TraceDiff/TraceDiffHeader/__snapshots__/TraceDiffHeader.test.js.snap b/packages/jaeger-ui/src/components/TraceDiff/TraceDiffHeader/__snapshots__/TraceDiffHeader.test.js.snap
index 18a0950315..eeef1f13fe 100644
--- a/packages/jaeger-ui/src/components/TraceDiff/TraceDiffHeader/__snapshots__/TraceDiffHeader.test.js.snap
+++ b/packages/jaeger-ui/src/components/TraceDiff/TraceDiffHeader/__snapshots__/TraceDiffHeader.test.js.snap
@@ -14,6 +14,11 @@ exports[`TraceDiffHeader handles absent a & b 1`] = `
     </h1>
   </div>
   <Popover
+    classNames={
+      Object {
+        "root": "TraceDiffHeader--popover",
+      }
+    }
     content={
       <CohortTable
         cohort={
@@ -90,7 +95,6 @@ exports[`TraceDiffHeader handles absent a & b 1`] = `
     }
     onOpenChange={[Function]}
     open={false}
-    overlayClassName="TraceDiffHeader--popover"
     placement="bottomLeft"
     title={
       <TraceIdInput
@@ -124,6 +128,11 @@ exports[`TraceDiffHeader handles absent a & b 1`] = `
     </h1>
   </div>
   <Popover
+    classNames={
+      Object {
+        "root": "TraceDiffHeader--popover",
+      }
+    }
     content={
       <CohortTable
         cohort={
@@ -200,7 +209,6 @@ exports[`TraceDiffHeader handles absent a & b 1`] = `
     }
     onOpenChange={[Function]}
     open={false}
-    overlayClassName="TraceDiffHeader--popover"
     placement="bottomLeft"
     title={
       <TraceIdInput
@@ -232,6 +240,11 @@ exports[`TraceDiffHeader handles absent a 1`] = `
     </h1>
   </div>
   <Popover
+    classNames={
+      Object {
+        "root": "TraceDiffHeader--popover",
+      }
+    }
     content={
       <CohortTable
         cohort={
@@ -314,7 +327,6 @@ exports[`TraceDiffHeader handles absent a 1`] = `
     }
     onOpenChange={[Function]}
     open={false}
-    overlayClassName="TraceDiffHeader--popover"
     placement="bottomLeft"
     title={
       <TraceIdInput
@@ -348,6 +360,11 @@ exports[`TraceDiffHeader handles absent a 1`] = `
     </h1>
   </div>
   <Popover
+    classNames={
+      Object {
+        "root": "TraceDiffHeader--popover",
+      }
+    }
     content={
       <CohortTable
         cohort={
@@ -431,7 +448,6 @@ exports[`TraceDiffHeader handles absent a 1`] = `
     }
     onOpenChange={[Function]}
     open={false}
-    overlayClassName="TraceDiffHeader--popover"
     placement="bottomLeft"
     title={
       <TraceIdInput
@@ -471,6 +487,11 @@ exports[`TraceDiffHeader handles absent b 1`] = `
     </h1>
   </div>
   <Popover
+    classNames={
+      Object {
+        "root": "TraceDiffHeader--popover",
+      }
+    }
     content={
       <CohortTable
         cohort={
@@ -554,7 +575,6 @@ exports[`TraceDiffHeader handles absent b 1`] = `
     }
     onOpenChange={[Function]}
     open={false}
-    overlayClassName="TraceDiffHeader--popover"
     placement="bottomLeft"
     title={
       <TraceIdInput
@@ -596,6 +616,11 @@ exports[`TraceDiffHeader handles absent b 1`] = `
     </h1>
   </div>
   <Popover
+    classNames={
+      Object {
+        "root": "TraceDiffHeader--popover",
+      }
+    }
     content={
       <CohortTable
         cohort={
@@ -678,7 +703,6 @@ exports[`TraceDiffHeader handles absent b 1`] = `
     }
     onOpenChange={[Function]}
     open={false}
-    overlayClassName="TraceDiffHeader--popover"
     placement="bottomLeft"
     title={
       <TraceIdInput
@@ -710,6 +734,11 @@ exports[`TraceDiffHeader renders as expected 1`] = `
     </h1>
   </div>
   <Popover
+    classNames={
+      Object {
+        "root": "TraceDiffHeader--popover",
+      }
+    }
     content={
       <CohortTable
         cohort={
@@ -796,7 +825,6 @@ exports[`TraceDiffHeader renders as expected 1`] = `
     }
     onOpenChange={[Function]}
     open={false}
-    overlayClassName="TraceDiffHeader--popover"
     placement="bottomLeft"
     title={
       <TraceIdInput
@@ -838,6 +866,11 @@ exports[`TraceDiffHeader renders as expected 1`] = `
     </h1>
   </div>
   <Popover
+    classNames={
+      Object {
+        "root": "TraceDiffHeader--popover",
+      }
+    }
     content={
       <CohortTable
         cohort={
@@ -924,7 +957,6 @@ exports[`TraceDiffHeader renders as expected 1`] = `
     }
     onOpenChange={[Function]}
     open={false}
-    overlayClassName="TraceDiffHeader--popover"
     placement="bottomLeft"
     title={
       <TraceIdInput
diff --git a/packages/jaeger-ui/src/components/TracePage/TraceGraph/OpNode.tsx b/packages/jaeger-ui/src/components/TracePage/TraceGraph/OpNode.tsx
index 9847dcf289..99367f06b4 100644
--- a/packages/jaeger-ui/src/components/TracePage/TraceGraph/OpNode.tsx
+++ b/packages/jaeger-ui/src/components/TracePage/TraceGraph/OpNode.tsx
@@ -116,7 +116,7 @@ export default class OpNode extends React.PureComponent<Props> {
     const popoverContent = <div className="OpNode--popoverContent">{table}</div>;
 
     return (
-      <Popover overlayClassName="OpNode--popover" mouseEnterDelay={0.25} content={popoverContent}>
+      <Popover classNames={{ root: 'OpNode--popover' }} mouseEnterDelay={0.25} content={popoverContent}>
         {table}
       </Popover>
     );
diff --git a/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/ReferencesButton.tsx b/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/ReferencesButton.tsx
index f3ac379e2e..7d913705de 100644
--- a/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/ReferencesButton.tsx
+++ b/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/ReferencesButton.tsx
@@ -61,7 +61,7 @@ export default class ReferencesButton extends React.PureComponent<TReferencesBut
       mouseLeaveDelay: 0.5,
       placement: 'bottom' as TooltipPlacement,
       title: tooltipText,
-      overlayClassName: 'ReferencesButton--tooltip',
+      classNames: { root: 'ReferencesButton--tooltip' },
     };
 
     if (references.length > 1) {
diff --git a/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanBar.tsx b/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanBar.tsx
index 5a552a569a..dfea89572c 100644
--- a/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanBar.tsx
+++ b/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanBar.tsx
@@ -147,8 +147,8 @@ function SpanBar(props: TCommonProps) {
         {Object.keys(logGroups).map(positionKey => (
           <Popover
             key={positionKey}
-            arrowPointAtCenter
-            overlayClassName="SpanBar--logHint"
+            arrow={{ pointAtCenter: true }}
+            classNames={{ root: 'SpanBar--logHint' }}
             placement="topLeft"
             content={
               <AccordianLogs
diff --git a/packages/jaeger-ui/src/components/common/DetailsCard/DetailTableDropdown.tsx b/packages/jaeger-ui/src/components/common/DetailsCard/DetailTableDropdown.tsx
index f0957f803e..de40a3a72a 100644
--- a/packages/jaeger-ui/src/components/common/DetailsCard/DetailTableDropdown.tsx
+++ b/packages/jaeger-ui/src/components/common/DetailsCard/DetailTableDropdown.tsx
@@ -81,7 +81,10 @@ export default class DetailTableDropdown extends React.PureComponent<TProps> {
           value={value}
         />
         <div className="DetailTableDropdown--Footer">
-          <Tooltip overlayClassName="DetailTableDropdown--Tooltip" title="Remove filter from this column">
+          <Tooltip
+            classNames={{ root: 'DetailTableDropdown--Tooltip' }}
+            title="Remove filter from this column"
+          >
             <Button className="DetailTableDropdown--Btn Clear" onClick={clearFilters}>
               <IoTrash size={18} />
               Clear Filter
@@ -89,7 +92,7 @@ export default class DetailTableDropdown extends React.PureComponent<TProps> {
           </Tooltip>
           <div className="DetailTableDropdown--Footer--CancelConfirm">
             <Tooltip
-              overlayClassName="DetailTableDropdown--Tooltip"
+              classNames={{ root: 'DetailTableDropdown--Tooltip' }}
               title="Cancel changes to this column's filter"
             >
               <Button className="DetailTableDropdown--Btn Cancel" onClick={this.cancel}>
@@ -98,7 +101,7 @@ export default class DetailTableDropdown extends React.PureComponent<TProps> {
               </Button>
             </Tooltip>
             <Tooltip
-              overlayClassName="DetailTableDropdown--Tooltip"
+              classNames={{ root: 'DetailTableDropdown--Tooltip' }}
               title={
                 <div className="DetailTableDropdown--Tooltip--Body">
                   <span>Apply changes to this column&apos;s filter</span>
diff --git a/packages/jaeger-ui/src/components/common/DetailsCard/__snapshots__/DetailTableDropdown.test.js.snap b/packages/jaeger-ui/src/components/common/DetailsCard/__snapshots__/DetailTableDropdown.test.js.snap
index 7a9a24cf70..e1682b3312 100644
--- a/packages/jaeger-ui/src/components/common/DetailsCard/__snapshots__/DetailTableDropdown.test.js.snap
+++ b/packages/jaeger-ui/src/components/common/DetailsCard/__snapshots__/DetailTableDropdown.test.js.snap
@@ -25,7 +25,11 @@ exports[`DetailTable render renders as expected 1`] = `
     className="DetailTableDropdown--Footer"
   >
     <Tooltip
-      overlayClassName="DetailTableDropdown--Tooltip"
+      classNames={
+        Object {
+          "root": "DetailTableDropdown--Tooltip",
+        }
+      }
       title="Remove filter from this column"
     >
       <Button
@@ -42,7 +46,11 @@ exports[`DetailTable render renders as expected 1`] = `
       className="DetailTableDropdown--Footer--CancelConfirm"
     >
       <Tooltip
-        overlayClassName="DetailTableDropdown--Tooltip"
+        classNames={
+          Object {
+            "root": "DetailTableDropdown--Tooltip",
+          }
+        }
         title="Cancel changes to this column's filter"
       >
         <Button
@@ -56,7 +64,11 @@ exports[`DetailTable render renders as expected 1`] = `
         </Button>
       </Tooltip>
       <Tooltip
-        overlayClassName="DetailTableDropdown--Tooltip"
+        classNames={
+          Object {
+            "root": "DetailTableDropdown--Tooltip",
+          }
+        }
         title={
           <div
             className="DetailTableDropdown--Tooltip--Body"
diff --git a/packages/jaeger-ui/src/components/common/NameSelector.tsx b/packages/jaeger-ui/src/components/common/NameSelector.tsx
index 4ade36db17..3735ff2a01 100644
--- a/packages/jaeger-ui/src/components/common/NameSelector.tsx
+++ b/packages/jaeger-ui/src/components/common/NameSelector.tsx
@@ -112,7 +112,7 @@ export default class NameSelector extends React.PureComponent<TProps, TState> {
     }
     return (
       <Popover
-        overlayClassName="NameSelector--overlay u-rm-popover-content-padding"
+        classNames={{ root: 'NameSelector--overlay u-rm-popover-content-padding' }}
         onOpenChange={this.onPopoverVisibleChanged}
         placement="bottomLeft"
         content={


Reviews:
user: login: yurishkuro
body: is there a migration guide from AntD that explains why this change is needed?
state: COMMENTED
author_association: MEMBER
submitted_at: 2025-05-16T22:41:23Z
user: login: abhayguptas
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-05-17T04:04:02Z
user: login: abhayguptas
state: COMMENTED
author_association: CONTRIBUTOR
submitted_at: 2025-05-17T04:08:31Z
user: login: yurishkuro
state: DISMISSED
author_association: MEMBER
submitted_at: 2025-05-18T17:23:08Z
user: login: yurishkuro
state: APPROVED
author_association: MEMBER
submitted_at: 2025-05-18T17:33:29Z

Review comments:
diff_hunk: @@ -77,7 +77,11 @@ exports[`<OperationTableDetails> Table rendered successfully 1`] = `
               Impact
                 
               <Tooltip
-                overlayClassName="impact-tooltip"
+                classNames={
+                  Object {
+                    "root": "\\"impact-tooltip\\"",
path: packages/jaeger-ui/src/components/Monitor/ServicesView/operationDetailsTable/__snapshots__/index.test.js.snap
user: login: yurishkuro
body: why is there escaping and double quotes, here and in other changes?
created_at: 2025-05-16T22:40:57Z
author_association: MEMBER
diff_hunk: @@ -77,7 +77,11 @@ exports[`<OperationTableDetails> Table rendered successfully 1`] = `
               Impact
                 
               <Tooltip
-                overlayClassName="impact-tooltip"
+                classNames={
+                  Object {
+                    "root": "\\"impact-tooltip\\"",
path: packages/jaeger-ui/src/components/Monitor/ServicesView/operationDetailsTable/__snapshots__/index.test.js.snap
user: login: abhayguptas
body: ![image](https://github.com/user-attachments/assets/c4510a8f-2b45-48eb-94c6-5fb3e4f8ffdb)

In this `packages/jaeger-ui/src/components/Monitor/ServicesView/operationDetailsTable/index.tsx` file, I added extra quotes by mistake. Fix pushed in the latest commit. 
created_at: 2025-05-17T04:04:02Z
author_association: CONTRIBUTOR
diff_hunk: @@ -77,7 +77,11 @@ exports[`<OperationTableDetails> Table rendered successfully 1`] = `
               Impact
                 
               <Tooltip
-                overlayClassName="impact-tooltip"
+                classNames={
+                  Object {
+                    "root": "\\"impact-tooltip\\"",
path: packages/jaeger-ui/src/components/Monitor/ServicesView/operationDetailsTable/__snapshots__/index.test.js.snap
user: login: abhayguptas
body: ![image](https://github.com/user-attachments/assets/8e024128-4717-4328-aa4f-fa149871a1f7)

created_at: 2025-05-17T04:08:30Z
author_association: CONTRIBUTOR

PR comments:
user: login: codecov[bot]
created_at: 2025-05-16T22:40:56Z
body: ## [Codecov](https://app.codecov.io/gh/jaegertracing/jaeger-ui/pull/2772?dropdown=coverage&src=pr&el=h1&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=jaegertracing) Report
All modified and coverable lines are covered by tests :white_check_mark:
> Project coverage is 96.84%. Comparing base [(`5744b6e`)](https://app.codecov.io/gh/jaegertracing/jaeger-ui/commit/5744b6e3e7e4580c3254fd3f01cb29a6b74910c2?dropdown=coverage&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=jaegertracing) to head [(`8f26aec`)](https://app.codecov.io/gh/jaegertracing/jaeger-ui/commit/8f26aece3296591d6c9279a944a920c98db5eff9?dropdown=coverage&el=desc&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=jaegertracing).
> Report is 1 commits behind head on main.

<details><summary>Additional details and impacted files</summary>


```diff
@@           Coverage Diff           @@
##             main    #2772   +/-   ##
=======================================
  Coverage   96.84%   96.84%           
=======================================
  Files         256      256           
  Lines        7951     7951           
  Branches     2057     2079   +22     
=======================================
  Hits         7700     7700           
- Misses        250      251    +1     
+ Partials        1        0    -1     
```

</details>

[:umbrella: View full report in Codecov by Sentry](https://app.codecov.io/gh/jaegertracing/jaeger-ui/pull/2772?dropdown=coverage&src=pr&el=continue&utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=jaegertracing).   
:loudspeaker: Have feedback on the report? [Share it here](https://about.codecov.io/codecov-pr-comment-feedback/?utm_medium=referral&utm_source=github&utm_content=comment&utm_campaign=pr+comments&utm_term=jaegertracing).

<details><summary> :rocket: New features to boost your workflow: </summary>

- :snowflake: [Test Analytics](https://docs.codecov.com/docs/test-analytics): Detect flaky tests, report on failures, and find test suite problems.
- :package: [JS Bundle Analysis](https://docs.codecov.com/docs/javascript-bundle-analysis): Save yourself from yourself by tracking and limiting bundle sizes in JS merges.
</details>
author_association: NONE
user: login: abhayguptas
created_at: 2025-05-17T03:58:48Z
body: > is there a migration guide from AntD that explains why this change is needed?

https://ant.design/docs/react/migration-v5#Removed-over*ClassName-props - this is the official guide!
author_association: CONTRIBUTOR
user: login: yurishkuro
created_at: 2025-05-17T21:10:38Z
body: Please upload before & after screenshots for some of the affected components to demonstrate that the changes are not affecting the UI
author_association: MEMBER
user: login: abhayguptas
created_at: 2025-05-18T04:35:45Z
body: ![image](https://github.com/user-attachments/assets/9f0c085b-9083-45ba-a270-da9e1ed31d61)
![image](https://github.com/user-attachments/assets/20387fd8-f53d-4a99-acd5-aff53f79c438)

author_association: CONTRIBUTOR
user: login: yurishkuro
created_at: 2025-05-18T17:23:57Z
body: lint/build is failing
author_association: MEMBER
user: login: abhayguptas
created_at: 2025-05-18T17:31:11Z
body: Updated. I'll take care of such things from the next time. 
Thanks!
author_association: CONTRIBUTOR