Skip to content

Commit cbac39e

Browse files
feat(replays): Handle object values in replay tags table
1 parent 8215061 commit cbac39e

File tree

1 file changed

+16
-1
lines changed

1 file changed

+16
-1
lines changed

static/app/components/replays/replayTagsTableRow.tsx

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import type {ReactNode} from 'react';
2-
import {Fragment, useMemo} from 'react';
2+
import React, {Fragment, useMemo} from 'react';
33
import styled from '@emotion/styled';
44
import type {LocationDescriptor} from 'history';
55

@@ -89,6 +89,21 @@ function ReplayTagsTableRow({name, values, generateUrl}: Props) {
8989
}
9090

9191
return values.map((value, index) => {
92+
// Handle case when value is an object (like user.geo)
93+
if (value !== null && typeof value === 'object' && !React.isValidElement(value)) {
94+
// Convert object to a readable string format
95+
const formattedValue = Object.entries(value as Record<string, any>)
96+
.map(([k, v]) => `${k}: ${v}`)
97+
.join(', ');
98+
99+
return (
100+
<Fragment key={`${name}-${index}-object`}>
101+
{index > 0 && ', '}
102+
<AnnotatedText value={formattedValue} />
103+
</Fragment>
104+
);
105+
}
106+
92107
const target = generateUrl?.(name, value);
93108

94109
return (

0 commit comments

Comments
 (0)