Skip to content

Commit 81eda32

Browse files
[pre-commit.ci lite] apply automatic fixes
1 parent 88f4897 commit 81eda32

9 files changed

Lines changed: 215 additions & 133 deletions

File tree

ui/packages/shared/profile/src/MetricsGraph/MetricsContextMenu/index.tsx

Lines changed: 10 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ import {Item, Menu, Submenu} from 'react-contexify';
1616

1717
import {useParcaContext} from '@parca/components';
1818

19-
import {SeriesPoint, Series} from '../';
19+
import {Series, SeriesPoint} from '../';
2020

2121
export interface ContextMenuItem {
2222
id: string;
@@ -56,21 +56,24 @@ const MetricsContextMenu = ({
5656
const renderMenuItem = (item: ContextMenuItemOrSubmenu): React.ReactNode => {
5757
if ('items' in item || 'createDynamicItems' in item) {
5858
// This is a submenu
59-
const submenu = item ;
60-
const items = (submenu.createDynamicItems != null) ? submenu.createDynamicItems(closestPoint, series) : submenu.items ?? [];
59+
const submenu = item;
60+
const items =
61+
submenu.createDynamicItems != null
62+
? submenu.createDynamicItems(closestPoint, series)
63+
: submenu.items ?? [];
6164

6265
return (
6366
<Submenu
6467
key={submenu.id}
6568
label={
6669
<div className="flex w-full items-center gap-2">
67-
{(submenu.icon != null && submenu.icon !== '') && <Icon icon={submenu.icon} />}
70+
{submenu.icon != null && submenu.icon !== '' && <Icon icon={submenu.icon} />}
6871
<div>{submenu.label}</div>
6972
</div>
7073
}
7174
>
7275
<div className="max-h-[300px] overflow-auto">
73-
{items.map((subItem) => (
76+
{items.map(subItem => (
7477
<Item
7578
key={subItem.id}
7679
id={subItem.id}
@@ -79,7 +82,7 @@ const MetricsContextMenu = ({
7982
className="max-w-[400px] overflow-hidden"
8083
>
8184
<div className="flex w-full items-center gap-2">
82-
{(subItem.icon != null && subItem.icon !== '') && <Icon icon={subItem.icon} />}
85+
{subItem.icon != null && subItem.icon !== '' && <Icon icon={subItem.icon} />}
8386
<div>{subItem.label}</div>
8487
</div>
8588
</Item>
@@ -98,7 +101,7 @@ const MetricsContextMenu = ({
98101
disabled={menuItem.disabled?.(closestPoint, series) ?? false}
99102
>
100103
<div className="flex w-full items-center gap-2">
101-
{(menuItem.icon != null && menuItem.icon !== '') && <Icon icon={menuItem.icon} />}
104+
{menuItem.icon != null && menuItem.icon !== '' && <Icon icon={menuItem.icon} />}
102105
<div>{menuItem.label}</div>
103106
</div>
104107
</Item>

ui/packages/shared/profile/src/MetricsGraph/MetricsTooltip/index.tsx

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@
1111
// See the License for the specific language governing permissions and
1212
// limitations under the License.
1313

14-
import {useState, useMemo, useEffect} from 'react';
14+
import {useEffect, useMemo, useState} from 'react';
1515

1616
import {usePopper} from 'react-popper';
1717

@@ -58,13 +58,7 @@ const createDomRect = (x: number, y: number): DOMRect => {
5858
return domRect;
5959
};
6060

61-
const MetricsTooltip = ({
62-
x,
63-
y,
64-
contextElement,
65-
content,
66-
}: Props): JSX.Element => {
67-
61+
const MetricsTooltip = ({x, y, contextElement, content}: Props): JSX.Element => {
6862
const [popperElement, setPopperElement] = useState<HTMLDivElement | null>(null);
6963

7064
const {styles, attributes, update} = usePopper(virtualElement, popperElement, {
@@ -125,4 +119,4 @@ const MetricsTooltip = ({
125119
);
126120
};
127121

128-
export default MetricsTooltip;
122+
export default MetricsTooltip;

ui/packages/shared/profile/src/MetricsGraph/UtilizationMetrics/Throughput.tsx

Lines changed: 51 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -13,15 +13,19 @@
1313

1414
import {useMemo} from 'react';
1515

16+
import {Icon} from '@iconify/react';
1617
import {AnimatePresence, motion} from 'framer-motion';
1718

18-
import {DateTimeRange, MetricsGraphSkeleton, useParcaContext, TextWithTooltip} from '@parca/components';
19-
import {formatDate, valueFormatter, timePattern} from '@parca/utilities';
20-
import {Icon} from '@iconify/react';
19+
import {
20+
DateTimeRange,
21+
MetricsGraphSkeleton,
22+
TextWithTooltip,
23+
useParcaContext,
24+
} from '@parca/components';
25+
import {formatDate, timePattern, valueFormatter} from '@parca/utilities';
2126

2227
import {type UtilizationMetrics as MetricSeries} from '../../ProfileSelector';
23-
import MetricsGraph from '../index';
24-
import {type Series, type ContextMenuItemOrSubmenu} from '../index';
28+
import MetricsGraph, {type ContextMenuItemOrSubmenu, type Series} from '../index';
2529
import {useMetricsGraphDimensions} from '../useMetricsGraphDimensions';
2630

2731
interface NetworkLabel {
@@ -82,13 +86,17 @@ const createThroughputContextMenuItems = (
8286
label: 'Focus only on this series',
8387
icon: 'ph:star',
8488
onClick: (closestPoint, _series) => {
85-
if (closestPoint != null && allData.length > 0 && allData[closestPoint.seriesIndex] != null) {
89+
if (
90+
closestPoint != null &&
91+
allData.length > 0 &&
92+
allData[closestPoint.seriesIndex] != null
93+
) {
8694
const originalSeriesData = allData[closestPoint.seriesIndex];
8795
if (originalSeriesData.labelset?.labels != null) {
8896
const labels = originalSeriesData.labelset.labels.filter(
89-
(label) => label.name !== '__name__'
97+
label => label.name !== '__name__'
9098
);
91-
const labelsToAdd = labels.map((label) => ({
99+
const labelsToAdd = labels.map(label => ({
92100
key: label.name,
93101
value: label.value,
94102
}));
@@ -102,7 +110,11 @@ const createThroughputContextMenuItems = (
102110
label: 'Add to query',
103111
icon: 'material-symbols:add',
104112
createDynamicItems: (closestPoint, _series) => {
105-
if (closestPoint == null || allData.length === 0 || allData[closestPoint.seriesIndex] == null) {
113+
if (
114+
closestPoint == null ||
115+
allData.length === 0 ||
116+
allData[closestPoint.seriesIndex] == null
117+
) {
106118
return [
107119
{
108120
id: 'no-labels-available',
@@ -128,10 +140,10 @@ const createThroughputContextMenuItems = (
128140
}
129141

130142
const labels = originalSeriesData.labelset.labels.filter(
131-
(label) => label.name !== '__name__'
143+
label => label.name !== '__name__'
132144
);
133145

134-
return labels.map((label) => ({
146+
return labels.map(label => ({
135147
id: `add-label-${label.name}`,
136148
label: (
137149
<div className="mr-3 inline-block rounded-lg bg-gray-200 px-2 py-1 text-xs font-bold text-gray-700 dark:bg-gray-700 dark:text-gray-300">
@@ -146,7 +158,7 @@ const createThroughputContextMenuItems = (
146158
},
147159
}));
148160
},
149-
}
161+
},
150162
];
151163
};
152164

@@ -187,24 +199,30 @@ function transformToSeries(data: MetricSeries[], isReceive = false): NetworkSeri
187199
}));
188200
}
189201

190-
function transformNetworkSeriesToSeries(transmitData: MetricSeries[], receiveData: MetricSeries[]): Series[] {
202+
function transformNetworkSeriesToSeries(
203+
transmitData: MetricSeries[],
204+
receiveData: MetricSeries[]
205+
): Series[] {
191206
const transmitSeries = transformToSeries(transmitData);
192207
const receiveSeries = transformToSeries(receiveData, true);
193208
const allSeries = [...transmitSeries, ...receiveSeries];
194209

195-
return allSeries.map((networkSeries) => {
210+
return allSeries.map(networkSeries => {
196211
const labels = networkSeries.metric ?? [];
197212
const sortedLabels = labels
198213
.filter(label => label.name !== '__name__')
199214
.sort((a, b) => a.name.localeCompare(b.name));
200-
const labelString = sortedLabels
201-
.map(label => `${label.name}=${label.value}`)
202-
.join(',');
203-
const id = (networkSeries.isReceive === true ? 'receive-' : 'transmit-') + (labelString !== '' ? labelString : 'default');
215+
const labelString = sortedLabels.map(label => `${label.name}=${label.value}`).join(',');
216+
const id =
217+
(networkSeries.isReceive === true ? 'receive-' : 'transmit-') +
218+
(labelString !== '' ? labelString : 'default');
204219

205220
return {
206221
id,
207-
values: networkSeries.values.map(([timestamp, value]): [number, number] => [timestamp, value]),
222+
values: networkSeries.values.map(([timestamp, value]): [number, number] => [
223+
timestamp,
224+
value,
225+
]),
208226
};
209227
});
210228
}
@@ -228,15 +246,18 @@ const RawAreaChart = ({
228246
const {timezone} = useParcaContext();
229247

230248
// Compute original series data for rich tooltip
231-
const allOriginalData = useMemo(() => [...transmitData, ...receiveData], [transmitData, receiveData]);
249+
const allOriginalData = useMemo(
250+
() => [...transmitData, ...receiveData],
251+
[transmitData, receiveData]
252+
);
232253

233254
return (
234255
<MetricsGraph
235256
data={transformedData}
236257
from={from}
237258
to={to}
238259
setTimeRange={setTimeRange}
239-
onSampleClick={(closestPoint) => {
260+
onSampleClick={closestPoint => {
240261
if (onSeriesClick != null) {
241262
onSeriesClick(closestPoint.seriesIndex);
242263
}
@@ -288,16 +309,18 @@ const RawAreaChart = ({
288309
</span>
289310
<span className="my-2 block text-gray-500">
290311
{labels
291-
.filter((label) => label.name !== '__name__')
292-
.map((label) => (
312+
.filter(label => label.name !== '__name__')
313+
.map(label => (
293314
<div
294315
key={`${seriesIndex.toString()}-${pointIndex.toString()}-${label.name}`}
295316
className="mr-3 inline-block rounded-lg bg-gray-200 px-2 py-1 text-xs font-bold text-gray-700 dark:bg-gray-700 dark:text-gray-400"
296317
>
297318
<TextWithTooltip
298319
text={`${transformUtilizationLabels(label.name)}="${label.value}"`}
299320
maxTextLength={37}
300-
id={`${seriesIndex.toString()}-${pointIndex.toString()}-tooltip-${label.name}`}
321+
id={`${seriesIndex.toString()}-${pointIndex.toString()}-tooltip-${
322+
label.name
323+
}`}
301324
/>
302325
</div>
303326
))}
@@ -332,7 +355,10 @@ const AreaChart = ({
332355
const {isDarkMode} = useParcaContext();
333356
const {width, height, margin, heightStyle} = useMetricsGraphDimensions(false, true);
334357

335-
const transformedData = useMemo(() => transformNetworkSeriesToSeries(transmitData, receiveData), [transmitData, receiveData]);
358+
const transformedData = useMemo(
359+
() => transformNetworkSeriesToSeries(transmitData, receiveData),
360+
[transmitData, receiveData]
361+
);
336362

337363
const contextMenuItems = useMemo(() => {
338364
return createThroughputContextMenuItems(addLabelMatcher, transmitData, receiveData);

0 commit comments

Comments
 (0)