diff --git a/packages/jaeger-ui/src/components/DeepDependencies/Graph/DdgNodeContent/__snapshots__/index.test.js.snap b/packages/jaeger-ui/src/components/DeepDependencies/Graph/DdgNodeContent/__snapshots__/index.test.js.snap
index 72150326c8..2b6d3f228a 100644
--- a/packages/jaeger-ui/src/components/DeepDependencies/Graph/DdgNodeContent/__snapshots__/index.test.js.snap
+++ b/packages/jaeger-ui/src/components/DeepDependencies/Graph/DdgNodeContent/__snapshots__/index.test.js.snap
@@ -81,7 +81,6 @@ exports[`<DdgNodeContent> omits the operation if it is null 1`] = `
         }
       >
         <BreakableText
-          className="BreakableText"
           text="some-service"
           wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
         />
@@ -96,7 +95,6 @@ exports[`<DdgNodeContent> omits the operation if it is null 1`] = `
         }
       >
         <BreakableText
-          className="BreakableText"
           text="some-operation"
           wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
         />
@@ -155,9 +153,7 @@ exports[`<DdgNodeContent> omits the operation if it is null 1`] = `
       <span
         className="DdgNodeContent--actionsItemIconWrapper"
       >
-        <NewWindowIcon
-          isLarge={false}
-        />
+        <NewWindowIcon />
       </span>
       <span
         className="DdgNodeContent--actionsItemText"
@@ -232,7 +228,6 @@ exports[`<DdgNodeContent> omits the operation if it is null 2`] = `
         }
       >
         <BreakableText
-          className="BreakableText"
           text="some-service"
           wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
         />
@@ -291,9 +286,7 @@ exports[`<DdgNodeContent> omits the operation if it is null 2`] = `
       <span
         className="DdgNodeContent--actionsItemIconWrapper"
       >
-        <NewWindowIcon
-          isLarge={false}
-        />
+        <NewWindowIcon />
       </span>
       <span
         className="DdgNodeContent--actionsItemText"
@@ -368,7 +361,6 @@ exports[`<DdgNodeContent> renders correctly when decorationValue is a string 1`]
         }
       >
         <BreakableText
-          className="BreakableText"
           text="some-service"
           wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
         />
@@ -383,7 +375,6 @@ exports[`<DdgNodeContent> renders correctly when decorationValue is a string 1`]
         }
       >
         <BreakableText
-          className="BreakableText"
           text="some-operation"
           wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
         />
@@ -442,9 +433,7 @@ exports[`<DdgNodeContent> renders correctly when decorationValue is a string 1`]
       <span
         className="DdgNodeContent--actionsItemIconWrapper"
       >
-        <NewWindowIcon
-          isLarge={false}
-        />
+        <NewWindowIcon />
       </span>
       <span
         className="DdgNodeContent--actionsItemText"
@@ -519,7 +508,6 @@ exports[`<DdgNodeContent> renders correctly when decorationValue is a string 2`]
         }
       >
         <BreakableText
-          className="BreakableText"
           text="some-service"
           wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
         />
@@ -534,7 +522,6 @@ exports[`<DdgNodeContent> renders correctly when decorationValue is a string 2`]
         }
       >
         <BreakableText
-          className="BreakableText"
           text="some-operation"
           wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
         />
@@ -593,9 +580,7 @@ exports[`<DdgNodeContent> renders correctly when decorationValue is a string 2`]
       <span
         className="DdgNodeContent--actionsItemIconWrapper"
       >
-        <NewWindowIcon
-          isLarge={false}
-        />
+        <NewWindowIcon />
       </span>
       <span
         className="DdgNodeContent--actionsItemText"
@@ -670,7 +655,6 @@ exports[`<DdgNodeContent> renders correctly when given decorationProgressbar 1`]
         }
       >
         <BreakableText
-          className="BreakableText"
           text="some-service"
           wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
         />
@@ -685,7 +669,6 @@ exports[`<DdgNodeContent> renders correctly when given decorationProgressbar 1`]
         }
       >
         <BreakableText
-          className="BreakableText"
           text="some-operation"
           wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
         />
@@ -744,9 +727,7 @@ exports[`<DdgNodeContent> renders correctly when given decorationProgressbar 1`]
       <span
         className="DdgNodeContent--actionsItemIconWrapper"
       >
-        <NewWindowIcon
-          isLarge={false}
-        />
+        <NewWindowIcon />
       </span>
       <span
         className="DdgNodeContent--actionsItemText"
@@ -824,7 +805,6 @@ exports[`<DdgNodeContent> renders correctly when given decorationProgressbar 2`]
         }
       >
         <BreakableText
-          className="BreakableText"
           text="some-service"
           wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
         />
@@ -839,7 +819,6 @@ exports[`<DdgNodeContent> renders correctly when given decorationProgressbar 2`]
         }
       >
         <BreakableText
-          className="BreakableText"
           text="some-operation"
           wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
         />
@@ -898,9 +877,7 @@ exports[`<DdgNodeContent> renders correctly when given decorationProgressbar 2`]
       <span
         className="DdgNodeContent--actionsItemIconWrapper"
       >
-        <NewWindowIcon
-          isLarge={false}
-        />
+        <NewWindowIcon />
       </span>
       <span
         className="DdgNodeContent--actionsItemText"
@@ -975,7 +952,6 @@ exports[`<DdgNodeContent> renders correctly when isFocalNode = true and focalNod
         }
       >
         <BreakableText
-          className="BreakableText"
           text="some-service"
           wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
         />
@@ -990,7 +966,6 @@ exports[`<DdgNodeContent> renders correctly when isFocalNode = true and focalNod
         }
       >
         <BreakableText
-          className="BreakableText"
           text="some-operation"
           wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
         />
@@ -1049,9 +1024,7 @@ exports[`<DdgNodeContent> renders correctly when isFocalNode = true and focalNod
       <span
         className="DdgNodeContent--actionsItemIconWrapper"
       >
-        <NewWindowIcon
-          isLarge={false}
-        />
+        <NewWindowIcon />
       </span>
       <span
         className="DdgNodeContent--actionsItemText"
@@ -1126,7 +1099,6 @@ exports[`<DdgNodeContent> renders correctly when isFocalNode = true and focalNod
         }
       >
         <BreakableText
-          className="BreakableText"
           text="some-service"
           wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
         />
@@ -1141,7 +1113,6 @@ exports[`<DdgNodeContent> renders correctly when isFocalNode = true and focalNod
         }
       >
         <BreakableText
-          className="BreakableText"
           text="some-operation"
           wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
         />
@@ -1159,9 +1130,7 @@ exports[`<DdgNodeContent> renders correctly when isFocalNode = true and focalNod
       <span
         className="DdgNodeContent--actionsItemIconWrapper"
       >
-        <NewWindowIcon
-          isLarge={false}
-        />
+        <NewWindowIcon />
       </span>
       <span
         className="DdgNodeContent--actionsItemText"
@@ -1204,7 +1173,6 @@ exports[`<DdgNodeContent> renders the number of operations if there are multiple
         }
       >
         <BreakableText
-          className="BreakableText"
           text="some-service"
           wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
         />
@@ -1219,7 +1187,6 @@ exports[`<DdgNodeContent> renders the number of operations if there are multiple
         }
       >
         <BreakableText
-          className="BreakableText"
           text="some-operation"
           wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
         />
@@ -1278,9 +1245,7 @@ exports[`<DdgNodeContent> renders the number of operations if there are multiple
       <span
         className="DdgNodeContent--actionsItemIconWrapper"
       >
-        <NewWindowIcon
-          isLarge={false}
-        />
+        <NewWindowIcon />
       </span>
       <span
         className="DdgNodeContent--actionsItemText"
@@ -1355,7 +1320,6 @@ exports[`<DdgNodeContent> renders the number of operations if there are multiple
         }
       >
         <BreakableText
-          className="BreakableText"
           text="some-service"
           wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
         />
@@ -1446,9 +1410,7 @@ exports[`<DdgNodeContent> renders the number of operations if there are multiple
       <span
         className="DdgNodeContent--actionsItemIconWrapper"
       >
-        <NewWindowIcon
-          isLarge={false}
-        />
+        <NewWindowIcon />
       </span>
       <span
         className="DdgNodeContent--actionsItemText"
diff --git a/packages/jaeger-ui/src/components/DeepDependencies/SidePanel/__snapshots__/DetailsPanel.test.js.snap b/packages/jaeger-ui/src/components/DeepDependencies/SidePanel/__snapshots__/DetailsPanel.test.js.snap
index 642fd629ad..9bb7524bb7 100644
--- a/packages/jaeger-ui/src/components/DeepDependencies/SidePanel/__snapshots__/DetailsPanel.test.js.snap
+++ b/packages/jaeger-ui/src/components/DeepDependencies/SidePanel/__snapshots__/DetailsPanel.test.js.snap
@@ -13,9 +13,7 @@ exports[`<SidePanel> render renders 1`] = `
     className="Ddg--DetailsPanel--SvcOpHeader"
   >
     <BreakableText
-      className="BreakableText"
       text="test svc"
-      wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
     />
   </div>
   <div
@@ -53,9 +51,7 @@ exports[`<SidePanel> render renders detailLink 1`] = `
     className="Ddg--DetailsPanel--SvcOpHeader"
   >
     <BreakableText
-      className="BreakableText"
       text="test svc"
-      wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
     />
   </div>
   <div
@@ -74,9 +70,7 @@ exports[`<SidePanel> render renders detailLink 1`] = `
         rel="noreferrer noopener"
         target="_blank"
       >
-        <NewWindowIcon
-          isLarge={false}
-        />
+        <NewWindowIcon />
       </a>
     </Tooltip>
   </div>
@@ -89,9 +83,7 @@ exports[`<SidePanel> render renders detailLink 1`] = `
     className="Ddg--DetailsPanel--LoadingWrapper"
   >
     <LoadingIndicator
-      centered={false}
       className="Ddg--DetailsPanel--LoadingIndicator"
-      small={false}
     />
   </div>
   <VerticalResizer
@@ -117,9 +109,7 @@ exports[`<SidePanel> render renders details 1`] = `
     className="Ddg--DetailsPanel--SvcOpHeader"
   >
     <BreakableText
-      className="BreakableText"
       text="test svc"
-      wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
     />
   </div>
   <div
@@ -162,9 +152,7 @@ exports[`<SidePanel> render renders details error 1`] = `
     className="Ddg--DetailsPanel--SvcOpHeader"
   >
     <BreakableText
-      className="BreakableText"
       text="test svc"
-      wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
     />
   </div>
   <div
@@ -207,9 +195,7 @@ exports[`<SidePanel> render renders omitted array of operations 1`] = `
     className="Ddg--DetailsPanel--SvcOpHeader"
   >
     <BreakableText
-      className="BreakableText"
       text="test svc"
-      wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
     />
   </div>
   <div
@@ -247,9 +233,7 @@ exports[`<SidePanel> render renders while loading 1`] = `
     className="Ddg--DetailsPanel--SvcOpHeader"
   >
     <BreakableText
-      className="BreakableText"
       text="test svc"
-      wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
     />
   </div>
   <div
@@ -268,9 +252,7 @@ exports[`<SidePanel> render renders while loading 1`] = `
     className="Ddg--DetailsPanel--LoadingWrapper"
   >
     <LoadingIndicator
-      centered={false}
       className="Ddg--DetailsPanel--LoadingIndicator"
-      small={false}
     />
   </div>
   <VerticalResizer
@@ -296,14 +278,10 @@ exports[`<SidePanel> render renders with operation 1`] = `
     className="Ddg--DetailsPanel--SvcOpHeader"
   >
     <BreakableText
-      className="BreakableText"
       text="test svc"
-      wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
     />
     <BreakableText
-      className="BreakableText"
       text="::test op"
-      wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
     />
   </div>
   <div
@@ -341,9 +319,7 @@ exports[`<SidePanel> render renders with progressbar 1`] = `
     className="Ddg--DetailsPanel--SvcOpHeader"
   >
     <BreakableText
-      className="BreakableText"
       text="test svc"
-      wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
     />
   </div>
   <div
diff --git a/packages/jaeger-ui/src/components/DependencyGraph/DAG.tsx b/packages/jaeger-ui/src/components/DependencyGraph/DAG.tsx
index 18f3d1aac2..47c476ab6c 100644
--- a/packages/jaeger-ui/src/components/DependencyGraph/DAG.tsx
+++ b/packages/jaeger-ui/src/components/DependencyGraph/DAG.tsx
@@ -41,7 +41,7 @@ export const renderNode = (vertex: TVertex): ReactNode => {
 };
 
 const formatServiceCalls = (
-  serviceCalls: TServiceCall[]
+  serviceCalls: TServiceCall[] = []
 ): {
   nodes: TVertex[];
   edges: TEdge[];
@@ -77,10 +77,6 @@ const formatServiceCalls = (
 const { classNameIsSmall } = Digraph.propsFactories;
 
 export default class DAG extends React.Component<TProps> {
-  static defaultProps = {
-    serviceCalls: [],
-  };
-
   private data: {
     nodes: TVertex[];
     edges: TEdge[];
@@ -94,10 +90,10 @@ export default class DAG extends React.Component<TProps> {
     useDotEdges: true,
   });
 
-  constructor(props: TProps) {
-    super(props);
+  constructor({ serviceCalls = [] }: TProps) {
+    super({ serviceCalls });
 
-    this.data = formatServiceCalls(props.serviceCalls);
+    this.data = formatServiceCalls(serviceCalls);
   }
 
   componentWillUnmount() {
diff --git a/packages/jaeger-ui/src/components/DependencyGraph/ForceGraphArrowLink.tsx b/packages/jaeger-ui/src/components/DependencyGraph/ForceGraphArrowLink.tsx
index a336740995..6449cd2211 100644
--- a/packages/jaeger-ui/src/components/DependencyGraph/ForceGraphArrowLink.tsx
+++ b/packages/jaeger-ui/src/components/DependencyGraph/ForceGraphArrowLink.tsx
@@ -46,18 +46,9 @@ function linkId(link: TLink) {
 }
 
 export default class ForceGraphArrowLink extends React.PureComponent<TProps> {
-  static defaultProps = {
-    className: '',
-    edgeOffset: 2,
-    opacity: 0.6,
-    stroke: '#999',
-    strokeWidth: 1,
-    targetRadius: 2,
-  };
-
   render() {
     // eslint-disable-next-line @typescript-eslint/no-unused-vars
-    const { link, targetRadius, edgeOffset: _, ...spreadable } = this.props;
+    const { className = '', edgeOffset = 2, opacity = 0.6, strokeWidth = 1, link, targetRadius = 2, edgeOffset: _, ...spreadable } = this.props;
     const id = `arrow-${linkId(link)}`;
     return (
       <g>
@@ -72,7 +63,7 @@ export default class ForceGraphArrowLink extends React.PureComponent<TProps> {
             markerUnits="strokeWidth"
           >
             {Number(targetRadius) > 0 && (
-              <path d="M0,0 L0,4 L6,2 z" fill={spreadable.stroke || spreadable.color} />
+              <path d="M0,0 L0,4 L6,2 z" fill={spreadable.stroke === undefined ? '#999' : spreadable.stroke || spreadable.color} />
             )}
           </marker>
         </defs>
diff --git a/packages/jaeger-ui/src/components/Monitor/ServicesView/__snapshots__/serviceGraph.test.js.snap b/packages/jaeger-ui/src/components/Monitor/ServicesView/__snapshots__/serviceGraph.test.js.snap
index def2f5df7f..d460ba0e65 100644
--- a/packages/jaeger-ui/src/components/Monitor/ServicesView/__snapshots__/serviceGraph.test.js.snap
+++ b/packages/jaeger-ui/src/components/Monitor/ServicesView/__snapshots__/serviceGraph.test.js.snap
@@ -704,7 +704,6 @@ exports[`<ServiceGraph> Loading indicator is displayed 1`] = `
   >
     <LoadingIndicator
       centered={true}
-      small={false}
     />
   </div>
 </div>
@@ -735,7 +734,6 @@ exports[`<ServiceGraph> Loading indicator is displayed when xDomain is empty 1`]
   >
     <LoadingIndicator
       centered={true}
-      small={false}
     />
   </div>
 </div>
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 ea5255080a..fc43653e88 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
@@ -11,7 +11,6 @@ exports[`<OperationTableDetails> "Couldn’t fetch data" displayed 1`] = `
 exports[`<OperationTableDetails> Loading indicator is displayed 1`] = `
 <LoadingIndicator
   centered={true}
-  small={false}
 />
 `;
 
diff --git a/packages/jaeger-ui/src/components/QualityMetrics/__snapshots__/MetricCard.test.js.snap b/packages/jaeger-ui/src/components/QualityMetrics/__snapshots__/MetricCard.test.js.snap
index b74afc719a..bfdf286020 100644
--- a/packages/jaeger-ui/src/components/QualityMetrics/__snapshots__/MetricCard.test.js.snap
+++ b/packages/jaeger-ui/src/components/QualityMetrics/__snapshots__/MetricCard.test.js.snap
@@ -32,9 +32,7 @@ exports[`MetricCard renders as expected when passCount is zero 1`] = `
           rel="noreferrer noopener"
           target="_blank"
         >
-          <NewWindowIcon
-            isLarge={false}
-          />
+          <NewWindowIcon />
         </a>
       </Tooltip>
     </span>
@@ -109,9 +107,7 @@ exports[`MetricCard renders as expected with details 1`] = `
           rel="noreferrer noopener"
           target="_blank"
         >
-          <NewWindowIcon
-            isLarge={false}
-          />
+          <NewWindowIcon />
         </a>
       </Tooltip>
     </span>
@@ -228,9 +224,7 @@ exports[`MetricCard renders as expected without details 1`] = `
           rel="noreferrer noopener"
           target="_blank"
         >
-          <NewWindowIcon
-            isLarge={false}
-          />
+          <NewWindowIcon />
         </a>
       </Tooltip>
     </span>
@@ -305,9 +299,7 @@ exports[`MetricCard renders as expected without details 2`] = `
           rel="noreferrer noopener"
           target="_blank"
         >
-          <NewWindowIcon
-            isLarge={false}
-          />
+          <NewWindowIcon />
         </a>
       </Tooltip>
     </span>
diff --git a/packages/jaeger-ui/src/components/QualityMetrics/__snapshots__/ScoreCard.test.js.snap b/packages/jaeger-ui/src/components/QualityMetrics/__snapshots__/ScoreCard.test.js.snap
index 448f6364b9..48c5535765 100644
--- a/packages/jaeger-ui/src/components/QualityMetrics/__snapshots__/ScoreCard.test.js.snap
+++ b/packages/jaeger-ui/src/components/QualityMetrics/__snapshots__/ScoreCard.test.js.snap
@@ -25,9 +25,7 @@ exports[`ScoreCard renders as expected when score is below max 1`] = `
     target="_blank"
   >
     How to improve 
-    <NewWindowIcon
-      isLarge={false}
-    />
+    <NewWindowIcon />
   </a>
 </div>
 `;
@@ -57,9 +55,7 @@ exports[`ScoreCard renders as expected when score is max 1`] = `
     target="_blank"
   >
     Great! What does this mean 
-    <NewWindowIcon
-      isLarge={false}
-    />
+    <NewWindowIcon />
   </a>
 </div>
 `;
@@ -90,9 +86,7 @@ exports[`ScoreCard renders as expected when score is zero 1`] = `
     target="_blank"
   >
     How to improve 
-    <NewWindowIcon
-      isLarge={false}
-    />
+    <NewWindowIcon />
   </a>
 </div>
 `;
diff --git a/packages/jaeger-ui/src/components/QualityMetrics/__snapshots__/index.test.js.snap b/packages/jaeger-ui/src/components/QualityMetrics/__snapshots__/index.test.js.snap
index 54a3975b79..fbc8341847 100644
--- a/packages/jaeger-ui/src/components/QualityMetrics/__snapshots__/index.test.js.snap
+++ b/packages/jaeger-ui/src/components/QualityMetrics/__snapshots__/index.test.js.snap
@@ -44,7 +44,6 @@ exports[`QualityMetrics UnconnectedQualityMetrics render renders when loading 1`
   />
   <LoadingIndicator
     centered={true}
-    small={false}
   />
 </div>
 `;
diff --git a/packages/jaeger-ui/src/components/SearchTracePage/SearchResults/ScatterPlot.jsx b/packages/jaeger-ui/src/components/SearchTracePage/SearchResults/ScatterPlot.jsx
index a28e6453d5..c028d57fbf 100644
--- a/packages/jaeger-ui/src/components/SearchTracePage/SearchResults/ScatterPlot.jsx
+++ b/packages/jaeger-ui/src/components/SearchTracePage/SearchResults/ScatterPlot.jsx
@@ -23,8 +23,7 @@ import { ONE_MILLISECOND, formatDuration } from '../../../utils/date';
 import 'react-vis/dist/style.css';
 import './ScatterPlot.css';
 
-export default function ScatterPlot(props) {
-  const { data, onValueClick, calculateContainerWidth } = props;
+export default function ScatterPlot({ data, onValueClick, calculateContainerWidth = container => container.clientWidth, }) {
 
   const containerRef = useRef(null);
   const [containerWidth, setContainerWidth] = useState(0);
@@ -104,7 +103,7 @@ ScatterPlot.propTypes = {
   calculateContainerWidth: PropTypes.func,
 };
 
-ScatterPlot.defaultProps = {
-  // JSDOM does not, as of 2023, have a layout engine, so allow tests to supply a mock width as a workaround.
-  calculateContainerWidth: container => container.clientWidth,
-};
+// ScatterPlot.defaultProps = {
+//   // JSDOM does not, as of 2023, have a layout engine, so allow tests to supply a mock width as a workaround.
+//   calculateContainerWidth: container => container.clientWidth,
+// };
diff --git a/packages/jaeger-ui/src/components/SearchTracePage/SearchResults/index.tsx b/packages/jaeger-ui/src/components/SearchTracePage/SearchResults/index.tsx
index 63fc7c5a30..972a97251a 100644
--- a/packages/jaeger-ui/src/components/SearchTracePage/SearchResults/index.tsx
+++ b/packages/jaeger-ui/src/components/SearchTracePage/SearchResults/index.tsx
@@ -97,8 +97,6 @@ export function createBlob(rawTraces: TraceData[]) {
 }
 
 export class UnconnectedSearchResults extends React.PureComponent<SearchResultsProps> {
-  static defaultProps = { skipMessage: false, spanLinks: undefined, queryOfResults: undefined };
-
   toggleComparison = (traceID: string, remove?: boolean) => {
     const { cohortAddTrace, cohortRemoveTrace } = this.props;
     if (remove) {
@@ -137,10 +135,10 @@ export class UnconnectedSearchResults extends React.PureComponent<SearchResultsP
       loading,
       location,
       maxTraceDuration,
-      queryOfResults,
+      queryOfResults = undefined,
       showStandaloneLink,
-      skipMessage,
-      spanLinks,
+      skipMessage = false,
+      spanLinks = undefined,
       traces,
       sortBy,
       handleSortChange,
diff --git a/packages/jaeger-ui/src/components/TraceDiff/TraceDiffHeader/TraceHeader.tsx b/packages/jaeger-ui/src/components/TraceDiff/TraceDiffHeader/TraceHeader.tsx
index 5baba664bb..90215204b2 100644
--- a/packages/jaeger-ui/src/components/TraceDiff/TraceDiffHeader/TraceHeader.tsx
+++ b/packages/jaeger-ui/src/components/TraceDiff/TraceDiffHeader/TraceHeader.tsx
@@ -75,8 +75,7 @@ export function Attrs(props: AttrsProps) {
   );
 }
 
-export default function TraceHeader(props: Props) {
-  const { duration, error, startTime, state, traceID, totalSpans, traceName } = props;
+export default function TraceHeader({ duration, error = undefined, startTime, state, traceID, totalSpans, traceName }: Props) {
   const AttrsComponent = state === fetchedState.DONE ? Attrs : EmptyAttrs;
 
   return (
@@ -101,7 +100,3 @@ export default function TraceHeader(props: Props) {
     </div>
   );
 }
-
-TraceHeader.defaultProps = {
-  error: undefined,
-};
diff --git a/packages/jaeger-ui/src/components/TracePage/TraceGraph/TraceGraph.tsx b/packages/jaeger-ui/src/components/TracePage/TraceGraph/TraceGraph.tsx
index 04d39fe924..7eda0e1ce3 100644
--- a/packages/jaeger-ui/src/components/TracePage/TraceGraph/TraceGraph.tsx
+++ b/packages/jaeger-ui/src/components/TracePage/TraceGraph/TraceGraph.tsx
@@ -119,10 +119,6 @@ export default class TraceGraph extends React.PureComponent<Props, State> {
 
   layoutManager: LayoutManager;
 
-  static defaultProps = {
-    ev: null,
-  };
-
   constructor(props: Props) {
     super(props);
     this.state = {
diff --git a/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanBarRow.tsx b/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanBarRow.tsx
index 310d6aec57..ac8ee27ff5 100644
--- a/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanBarRow.tsx
+++ b/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanBarRow.tsx
@@ -38,20 +38,20 @@ type SpanBarRowProps = {
   onChildrenToggled: (spanID: string) => void;
   numTicks: number;
   rpc?:
-    | {
-        viewStart: number;
-        viewEnd: number;
-        color: string;
-        operationName: string;
-        serviceName: string;
-      }
-    | TNil;
+  | {
+    viewStart: number;
+    viewEnd: number;
+    color: string;
+    operationName: string;
+    serviceName: string;
+  }
+  | TNil;
   noInstrumentedServer?:
-    | {
-        color: string;
-        serviceName: string;
-      }
-    | TNil;
+  | {
+    color: string;
+    serviceName: string;
+  }
+  | TNil;
   showErrorIcon: boolean;
   getViewedBounds: ViewedBoundsFunctionType;
   traceStartTime: number;
@@ -68,11 +68,6 @@ type SpanBarRowProps = {
  * performance than the stateless function.
  */
 export default class SpanBarRow extends React.PureComponent<SpanBarRowProps> {
-  static defaultProps = {
-    className: '',
-    rpc: null,
-  };
-
   _detailToggle = () => {
     this.props.onDetailToggled(this.props.span.spanID);
   };
@@ -83,7 +78,7 @@ export default class SpanBarRow extends React.PureComponent<SpanBarRowProps> {
 
   render() {
     const {
-      className,
+      className = '',
       color,
       criticalPath,
       columnDivision,
@@ -91,7 +86,7 @@ export default class SpanBarRow extends React.PureComponent<SpanBarRowProps> {
       isDetailExpanded,
       isMatchingFilter,
       numTicks,
-      rpc,
+      rpc = null,
       noInstrumentedServer,
       showErrorIcon,
       getViewedBounds,
@@ -182,9 +177,8 @@ export default class SpanBarRow extends React.PureComponent<SpanBarRowProps> {
             {span.subsidiarilyReferencedBy && span.subsidiarilyReferencedBy.length > 0 && (
               <ReferencesButton
                 references={span.subsidiarilyReferencedBy}
-                tooltipText={`This span is referenced by ${
-                  span.subsidiarilyReferencedBy.length === 1 ? 'another span' : 'multiple other spans'
-                }`}
+                tooltipText={`This span is referenced by ${span.subsidiarilyReferencedBy.length === 1 ? 'another span' : 'multiple other spans'
+                  }`}
                 focusSpan={focusSpan}
               >
                 <IoCloudUploadOutline />
diff --git a/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanDetail/AccordianKeyValues.tsx b/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanDetail/AccordianKeyValues.tsx
index d099fcaaed..295cca86b8 100644
--- a/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanDetail/AccordianKeyValues.tsx
+++ b/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanDetail/AccordianKeyValues.tsx
@@ -35,7 +35,7 @@ type AccordianKeyValuesProps = {
 };
 
 // export for tests
-export function KeyValuesSummary(props: { data?: KeyValuePair[] }) {
+export function KeyValuesSummary(props: { data?: KeyValuePair[] | null }) {
   const { data } = props;
   if (!Array.isArray(data) || !data.length) {
     return null;
@@ -55,12 +55,7 @@ export function KeyValuesSummary(props: { data?: KeyValuePair[] }) {
   );
 }
 
-KeyValuesSummary.defaultProps = {
-  data: null,
-};
-
-export default function AccordianKeyValues(props: AccordianKeyValuesProps) {
-  const { className, data, highContrast, interactive, isOpen, label, linksGetter, onToggle } = props;
+export default function AccordianKeyValues({ className, data, highContrast = false, interactive = true, isOpen, label, linksGetter, onToggle }: AccordianKeyValuesProps) {
   const isEmpty = !Array.isArray(data) || !data.length;
   const iconCls = cx('u-align-icon', { 'AccordianKeyValues--emptyIcon': isEmpty });
   let arrow: React.ReactNode | null = null;
@@ -93,11 +88,4 @@ export default function AccordianKeyValues(props: AccordianKeyValuesProps) {
       {isOpen && <KeyValuesTable data={data} linksGetter={linksGetter} />}
     </div>
   );
-}
-
-AccordianKeyValues.defaultProps = {
-  className: null,
-  highContrast: false,
-  interactive: true,
-  onToggle: null,
-};
+}
\ No newline at end of file
diff --git a/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanDetail/AccordianLogs.tsx b/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanDetail/AccordianLogs.tsx
index 86b0833193..24da5d7fee 100644
--- a/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanDetail/AccordianLogs.tsx
+++ b/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanDetail/AccordianLogs.tsx
@@ -35,8 +35,7 @@ type AccordianLogsProps = {
   timestamp: number;
 };
 
-export default function AccordianLogs(props: AccordianLogsProps) {
-  const { interactive, isOpen, linksGetter, logs, openedItems, onItemToggle, onToggle, timestamp } = props;
+export default function AccordianLogs({ interactive = true, isOpen, linksGetter = undefined, logs, openedItems = undefined, onItemToggle = undefined, onToggle = undefined, timestamp }: AccordianLogsProps) {
   let arrow: React.ReactNode | null = null;
   let HeaderComponent: 'span' | 'a' = 'span';
   let headerProps: object | null = null;
@@ -83,12 +82,4 @@ export default function AccordianLogs(props: AccordianLogsProps) {
       )}
     </div>
   );
-}
-
-AccordianLogs.defaultProps = {
-  interactive: true,
-  linksGetter: undefined,
-  onItemToggle: undefined,
-  onToggle: undefined,
-  openedItems: undefined,
-};
+}
\ No newline at end of file
diff --git a/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanDetail/AccordianReferences.tsx b/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanDetail/AccordianReferences.tsx
index 82b696fdfd..4db3f08d95 100644
--- a/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanDetail/AccordianReferences.tsx
+++ b/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanDetail/AccordianReferences.tsx
@@ -72,14 +72,8 @@ export function References(props: ReferenceItemProps) {
 }
 
 export default class AccordianReferences extends React.PureComponent<AccordianReferencesProps> {
-  static defaultProps = {
-    highContrast: false,
-    interactive: true,
-    onToggle: null,
-  };
-
   render() {
-    const { data, highContrast, interactive, isOpen, onToggle, focusSpan } = this.props;
+    const { data, highContrast = false, interactive = true, isOpen, onToggle = null, focusSpan } = this.props;
     const isEmpty = !Array.isArray(data) || !data.length;
     const iconCls = cx('u-align-icon', { 'AccordianKReferences--emptyIcon': isEmpty });
     let arrow: React.ReactNode | null = null;
diff --git a/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanDetail/AccordianText.tsx b/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanDetail/AccordianText.tsx
index ba21141524..54530ee6cb 100644
--- a/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanDetail/AccordianText.tsx
+++ b/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanDetail/AccordianText.tsx
@@ -31,8 +31,7 @@ type AccordianTextProps = {
   onToggle?: null | (() => void);
 };
 
-export default function AccordianText(props: AccordianTextProps) {
-  const { className, data, headerClassName, highContrast, interactive, isOpen, label, onToggle } = props;
+export default function AccordianText({ className, data, headerClassName, highContrast = false, interactive = true, isOpen, label, onToggle }: AccordianTextProps) {
   const isEmpty = !Array.isArray(data) || !data.length;
   const iconCls = cx('u-align-icon', { 'AccordianKeyValues--emptyIcon': isEmpty });
 
@@ -63,11 +62,4 @@ export default function AccordianText(props: AccordianTextProps) {
       {isOpen && <TextList data={data} />}
     </div>
   );
-}
-
-AccordianText.defaultProps = {
-  className: null,
-  highContrast: false,
-  interactive: true,
-  onToggle: null,
-};
+}
\ No newline at end of file
diff --git a/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanDetail/KeyValuesTable.tsx b/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanDetail/KeyValuesTable.tsx
index a1df1628bc..13ebc1b958 100644
--- a/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanDetail/KeyValuesTable.tsx
+++ b/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanDetail/KeyValuesTable.tsx
@@ -116,19 +116,15 @@ function formatValue(key: string, value: any) {
   return <div className="ub-inline-block">{content}</div>;
 }
 
-export const LinkValue = (props: { href: string; title?: string; children: React.ReactNode }) => (
+export const LinkValue = (props: { href: string; title: string | ''; children: React.ReactNode }) => (
   <a href={props.href} title={props.title} target="_blank" rel="noopener noreferrer">
     {props.children} <IoOpenOutline className="KeyValueTable--linkIcon" />
   </a>
 );
 
-LinkValue.defaultProps = {
-  title: '',
-};
-
 const linkValueList = (links: Link[]) => {
   const dropdownItems = links.map(({ text, url }, index) => ({
-    label: <LinkValue href={url}>{text}</LinkValue>,
+    label: <LinkValue href={url} title={''}>{text}</LinkValue>,
     key: `${url}-${index}`,
   }));
   return dropdownItems;
diff --git a/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanTreeOffset.tsx b/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanTreeOffset.tsx
index b3204572f3..5e24761963 100644
--- a/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanTreeOffset.tsx
+++ b/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/SpanTreeOffset.tsx
@@ -42,12 +42,6 @@ type TProps = TDispatchProps & {
 export class UnconnectedSpanTreeOffset extends React.PureComponent<TProps> {
   ancestorIds: string[];
 
-  static defaultProps = {
-    childrenVisible: false,
-    onClick: undefined,
-    showChildrenIcon: true,
-  };
-
   constructor(props: TProps) {
     super(props);
 
@@ -94,7 +88,7 @@ export class UnconnectedSpanTreeOffset extends React.PureComponent<TProps> {
   };
 
   render() {
-    const { childrenVisible, onClick, showChildrenIcon, span } = this.props;
+    const { childrenVisible = false, onClick = undefined, showChildrenIcon = true, span } = this.props;
     const { hasChildren, spanID } = span;
     const wrapperProps = hasChildren ? { onClick, role: 'switch', 'aria-checked': childrenVisible } : null;
     const icon =
diff --git a/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/Ticks.tsx b/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/Ticks.tsx
index d6893be477..28eacbee5e 100644
--- a/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/Ticks.tsx
+++ b/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/Ticks.tsx
@@ -26,9 +26,7 @@ type TicksProps = {
   startTime?: number | TNil;
 };
 
-export default function Ticks(props: TicksProps) {
-  const { endTime, numTicks, showLabels, startTime } = props;
-
+export default function Ticks({ endTime = null, numTicks, showLabels = null, startTime = null }: TicksProps) {
   let labels: undefined | string[];
   if (showLabels) {
     labels = [];
@@ -57,9 +55,3 @@ export default function Ticks(props: TicksProps) {
   }
   return <div className="Ticks">{ticks}</div>;
 }
-
-Ticks.defaultProps = {
-  endTime: null,
-  showLabels: null,
-  startTime: null,
-};
diff --git a/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/TimelineRow.tsx b/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/TimelineRow.tsx
index a041119396..5f1b361894 100644
--- a/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/TimelineRow.tsx
+++ b/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/TimelineRow.tsx
@@ -25,11 +25,10 @@ interface ITimelineRowCellProps extends React.HTMLAttributes<HTMLDivElement> {
   children: React.ReactNode;
   className?: string;
   width: number;
-  style?: object;
+  style?: object | {};
 }
 
-export default function TimelineRow(props: TTimelineRowProps) {
-  const { children, className = '', ...rest } = props;
+export default function TimelineRow({ children, className = '', ...rest }: TTimelineRowProps) {
   return (
     <div className={`flex-row ${className}`} {...rest}>
       {children}
@@ -37,12 +36,7 @@ export default function TimelineRow(props: TTimelineRowProps) {
   );
 }
 
-TimelineRow.defaultProps = {
-  className: '',
-};
-
-function TimelineRowCell(props: ITimelineRowCellProps) {
-  const { children, className = '', width, style, ...rest } = props;
+function TimelineRowCell({ children, className = '', width, style, ...rest }: ITimelineRowCellProps) {
   const widthPercent = `${width * 100}%`;
   const mergedStyle = { ...style, flexBasis: widthPercent, maxWidth: widthPercent };
   return (
@@ -52,6 +46,4 @@ function TimelineRowCell(props: ITimelineRowCellProps) {
   );
 }
 
-TimelineRowCell.defaultProps = { className: '', style: {} };
-
 TimelineRow.Cell = TimelineRowCell;
diff --git a/packages/jaeger-ui/src/components/common/BreakableText.tsx b/packages/jaeger-ui/src/components/common/BreakableText.tsx
index a9090e5a63..238050b03a 100644
--- a/packages/jaeger-ui/src/components/common/BreakableText.tsx
+++ b/packages/jaeger-ui/src/components/common/BreakableText.tsx
@@ -24,8 +24,7 @@ type Props = {
   wordRegexp?: RegExp;
 };
 
-export default function BreakableText(props: Props) {
-  const { className, text, wordRegexp = WORD_RX } = props;
+export default function BreakableText({ className = 'BreakableText', text, wordRegexp = WORD_RX }: Props) {
   if (!text) {
     return typeof text === 'string' ? text : null;
   }
@@ -42,9 +41,4 @@ export default function BreakableText(props: Props) {
     match = wordRegexp.exec(text);
   }
   return spans;
-}
-
-BreakableText.defaultProps = {
-  className: 'BreakableText',
-  wordRegexp: WORD_RX,
-};
+}
\ No newline at end of file
diff --git a/packages/jaeger-ui/src/components/common/ErrorMessage.tsx b/packages/jaeger-ui/src/components/common/ErrorMessage.tsx
index cfa7d1dd81..f750db0458 100644
--- a/packages/jaeger-ui/src/components/common/ErrorMessage.tsx
+++ b/packages/jaeger-ui/src/components/common/ErrorMessage.tsx
@@ -48,8 +48,7 @@ function ErrorAttr({ name, value }: ErrorAttrProps) {
   );
 }
 
-export function Message(props: SubPartProps) {
-  const { className, error, wrap, wrapperClassName } = props;
+export function Message({ className = undefined, error, wrap = false, wrapperClassName = undefined }: SubPartProps) {
   const cssClass = `ErrorMessage--msg ${className || ''}`;
 
   const msg =
@@ -66,15 +65,7 @@ export function Message(props: SubPartProps) {
   return msg;
 }
 
-Message.defaultProps = {
-  className: undefined,
-  wrap: false,
-  wrapperClassName: undefined,
-};
-
-export function Details(props: SubPartProps) {
-  const { className, error, wrap, wrapperClassName } = props;
-
+export function Details({ className = undefined, error, wrap = false, wrapperClassName = undefined }: SubPartProps) {
   if (typeof error === 'string') {
     return null;
   }
@@ -113,17 +104,11 @@ export function Details(props: SubPartProps) {
   return details;
 }
 
-Details.defaultProps = {
-  className: undefined,
-  wrap: false,
-  wrapperClassName: undefined,
-};
-
 export default function ErrorMessage({
-  className,
-  detailClassName,
+  className = undefined,
+  detailClassName = undefined,
   error,
-  messageClassName,
+  messageClassName = undefined,
 }: ErrorMessageProps) {
   if (!error) {
     return null;
@@ -139,10 +124,4 @@ export default function ErrorMessage({
       <Details error={error} className={detailClassName} />
     </div>
   );
-}
-
-ErrorMessage.defaultProps = {
-  className: undefined,
-  detailClassName: undefined,
-  messageClassName: undefined,
-};
+}
\ No newline at end of file
diff --git a/packages/jaeger-ui/src/components/common/LoadingIndicator.tsx b/packages/jaeger-ui/src/components/common/LoadingIndicator.tsx
index 282e1188e3..a3e019aaad 100644
--- a/packages/jaeger-ui/src/components/common/LoadingIndicator.tsx
+++ b/packages/jaeger-ui/src/components/common/LoadingIndicator.tsx
@@ -25,8 +25,7 @@ type LoadingIndicatorProps = {
   style?: React.CSSProperties;
 };
 
-export default function LoadingIndicator(props: LoadingIndicatorProps) {
-  const { centered, vcentered, className, small, ...rest } = props;
+export default function LoadingIndicator({ centered = false, vcentered, className = undefined, small = false, ...rest }: LoadingIndicatorProps) {
   const cls = `
     LoadingIndicator
     ${centered ? 'is-centered' : ''}
@@ -36,9 +35,3 @@ export default function LoadingIndicator(props: LoadingIndicatorProps) {
   `;
   return <LuLoader2 className={cls} {...rest} />;
 }
-
-LoadingIndicator.defaultProps = {
-  centered: false,
-  className: undefined,
-  small: false,
-};
diff --git a/packages/jaeger-ui/src/components/common/NewWindowIcon.tsx b/packages/jaeger-ui/src/components/common/NewWindowIcon.tsx
index bbe48f2c7f..4a5dd7037a 100644
--- a/packages/jaeger-ui/src/components/common/NewWindowIcon.tsx
+++ b/packages/jaeger-ui/src/components/common/NewWindowIcon.tsx
@@ -22,12 +22,7 @@ type Props = {
   isLarge?: boolean;
 };
 
-export default function NewWindowIcon(props: Props) {
-  const { isLarge, ...rest } = props;
+export default function NewWindowIcon({ isLarge = false, ...rest }: Props) {
   const cls = cx('NewWindowIcon', { 'is-large': isLarge });
   return <IoOpenOutline className={cls} {...rest} data-testid="NewWindowIcon" />;
 }
-
-NewWindowIcon.defaultProps = {
-  isLarge: false,
-};
diff --git a/packages/jaeger-ui/src/components/common/UiFindInput.tsx b/packages/jaeger-ui/src/components/common/UiFindInput.tsx
index 462f7c4511..9d4633a5a2 100644
--- a/packages/jaeger-ui/src/components/common/UiFindInput.tsx
+++ b/packages/jaeger-ui/src/components/common/UiFindInput.tsx
@@ -46,13 +46,6 @@ type StateType = {
 };
 
 export class UnconnectedUiFindInput extends React.PureComponent<TProps, StateType> {
-  static defaultProps: Partial<TProps> = {
-    forwardedRef: undefined,
-    inputProps: {},
-    trackFindFunction: undefined,
-    uiFind: undefined,
-  };
-
   state = {
     ownInputValue: undefined,
   };
@@ -85,7 +78,8 @@ export class UnconnectedUiFindInput extends React.PureComponent<TProps, StateTyp
   };
 
   render() {
-    const { allowClear, forwardedRef, inputProps } = this.props;
+    const { allowClear, forwardedRef, inputProps = {}, //Destructuring
+    } = this.props;
 
     const inputValue = _isString(this.state.ownInputValue) ? this.state.ownInputValue : this.props.uiFind;
     const suffix = (
diff --git a/packages/jaeger-ui/src/components/common/__snapshots__/NameSelector.test.js.snap b/packages/jaeger-ui/src/components/common/__snapshots__/NameSelector.test.js.snap
index 47fc7db0df..12b74edbc1 100644
--- a/packages/jaeger-ui/src/components/common/__snapshots__/NameSelector.test.js.snap
+++ b/packages/jaeger-ui/src/components/common/__snapshots__/NameSelector.test.js.snap
@@ -34,7 +34,6 @@ exports[`<NameSelector> clear renders with clear icon when not required and with
     <BreakableText
       className="NameSelector--value"
       text="foo"
-      wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
     />
     <IoChevronDown
       className="NameSelector--chevron"
@@ -75,7 +74,6 @@ exports[`<NameSelector> renders with is-invalid when required and without a valu
     <BreakableText
       className="NameSelector--value"
       text="This is the placeholder"
-      wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
     />
     <IoChevronDown
       className="NameSelector--chevron"
@@ -112,7 +110,6 @@ exports[`<NameSelector> renders without exploding 1`] = `
     <BreakableText
       className="NameSelector--value"
       text="This is the placeholder"
-      wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
     />
     <IoChevronDown
       className="NameSelector--chevron"
@@ -149,7 +146,6 @@ exports[`<NameSelector> renders without is-invalid when not required and without
     <BreakableText
       className="NameSelector--value"
       text="This is the placeholder"
-      wordRegexp={/\\\\W\\*\\\\w\\+\\\\W\\*/g}
     />
     <IoChevronDown
       className="NameSelector--chevron"
diff --git a/packages/plexus/src/zoom/MiniMap.tsx b/packages/plexus/src/zoom/MiniMap.tsx
index 4bc76104fe..dbad208c49 100644
--- a/packages/plexus/src/zoom/MiniMap.tsx
+++ b/packages/plexus/src/zoom/MiniMap.tsx
@@ -69,8 +69,7 @@ function getViewTransform(props: TProps, displaySize: { width: number; height: n
   };
 }
 
-function getClassNames(props: TProps) {
-  const { className, classNamePrefix } = props;
+function getClassNames({ className = '', classNamePrefix = 'plexus' }: TProps) {
   const base = `${classNamePrefix || 'plexus'}-MiniMap`;
   return {
     root: `${base} ${className || ''}`,
@@ -103,9 +102,4 @@ export function MiniMap(props: TProps) {
   );
 }
 
-MiniMap.defaultProps = {
-  className: '',
-  classNamePrefix: 'plexus',
-};
-
 export default React.memo(MiniMap);