From d9bbda9ec5d452e19ef6fff2fe4f4687a5dff93c Mon Sep 17 00:00:00 2001 From: Abhishek Date: Sun, 19 Jan 2025 15:23:30 +0530 Subject: [PATCH] Fix consistency issues across components Resolves #2596 Updated the components to fix broken working. Signed-off-by: Abhishek --- .../DependencyGraph/ForceGraphArrowLink.tsx | 66 ++++++++----------- .../SearchTracePage/SearchResults/index.tsx | 8 ++- .../SpanDetail/AccordianLogs.tsx | 4 +- .../TracePage/TraceTimelineViewer/Ticks.tsx | 4 +- 4 files changed, 37 insertions(+), 45 deletions(-) diff --git a/packages/jaeger-ui/src/components/DependencyGraph/ForceGraphArrowLink.tsx b/packages/jaeger-ui/src/components/DependencyGraph/ForceGraphArrowLink.tsx index 48b36a0d24..6449cd2211 100644 --- a/packages/jaeger-ui/src/components/DependencyGraph/ForceGraphArrowLink.tsx +++ b/packages/jaeger-ui/src/components/DependencyGraph/ForceGraphArrowLink.tsx @@ -38,46 +38,38 @@ type TProps = { targetRadius?: number; }; -const linkId = (link: TLink) => { +function linkId(link: TLink) { const { source, target } = link; const srcId = typeof source === 'string' ? source : source.id; const targetId = typeof target === 'string' ? target : target.id; return `${srcId}=>${targetId}`; -}; - -const ForceGraphArrowLink: React.FC = ({ - className = '', - edgeOffset = 2, - opacity = 0.6, - stroke = '#999', - strokeWidth = 1, - targetRadius = 2, - link, - color, - ...spreadable -}) => { - const id = `arrow-${linkId(link)}`; - return ( - - - - {Number(targetRadius) > 0 && ( - - )} - - +} - - - ); -}; +export default class ForceGraphArrowLink extends React.PureComponent { + render() { + // eslint-disable-next-line @typescript-eslint/no-unused-vars + const { className = '', edgeOffset = 2, opacity = 0.6, strokeWidth = 1, link, targetRadius = 2, edgeOffset: _, ...spreadable } = this.props; + const id = `arrow-${linkId(link)}`; + return ( + + + + {Number(targetRadius) > 0 && ( + + )} + + -export default ForceGraphArrowLink; \ No newline at end of file + + + ); + } +} diff --git a/packages/jaeger-ui/src/components/SearchTracePage/SearchResults/index.tsx b/packages/jaeger-ui/src/components/SearchTracePage/SearchResults/index.tsx index dd82212579..972a97251a 100644 --- a/packages/jaeger-ui/src/components/SearchTracePage/SearchResults/index.tsx +++ b/packages/jaeger-ui/src/components/SearchTracePage/SearchResults/index.tsx @@ -1,3 +1,5 @@ +// TODO: @ flow + // Copyright (c) 2017 Uber Technologies, Inc. // // Licensed under the Apache License, Version 2.0 (the "License"); @@ -133,10 +135,10 @@ export class UnconnectedSearchResults extends React.PureComponent Link[]) | TNil | undefined; + linksGetter: ((pairs: KeyValuePair[], index: number) => Link[]) | TNil; logs: Log[]; onItemToggle?: (log: Log) => void; onToggle?: () => void; @@ -35,7 +35,7 @@ type AccordianLogsProps = { timestamp: number; }; -export default function AccordianLogs({ interactive = true, isOpen, linksGetter, logs, openedItems = undefined, onItemToggle = undefined, onToggle = undefined, timestamp }: AccordianLogsProps) { +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; diff --git a/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/Ticks.tsx b/packages/jaeger-ui/src/components/TracePage/TraceTimelineViewer/Ticks.tsx index c3a20c265a..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 = null, numTicks, showLabels = null, startTime = null } = props; - +export default function Ticks({ endTime = null, numTicks, showLabels = null, startTime = null }: TicksProps) { let labels: undefined | string[]; if (showLabels) { labels = [];