Skip to content

Commit a42fd4c

Browse files
committed
Fix memray failure badges
1 parent 4ca020a commit a42fd4c

File tree

2 files changed

+19
-13
lines changed

2 files changed

+19
-13
lines changed

backend/app/schemas.py

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -198,6 +198,8 @@ class MemrayFailurePublic(BaseModel):
198198
commit_sha: str
199199
binary_id: str
200200
environment_id: str
201+
binary_name: str
202+
environment_name: str
201203
error_message: str
202204
failure_timestamp: datetime
203205
commit_timestamp: datetime

frontend/src/components/memray/FailureCard.tsx

Lines changed: 17 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,7 @@ export default function FailureCard({
5555
return (
5656
<>
5757
<div className="p-3 border rounded-lg bg-amber-50 dark:bg-amber-950 border-amber-200 dark:border-amber-800">
58-
<div className="flex items-center justify-between">
58+
<div className="flex flex-col sm:flex-row sm:items-center sm:justify-between gap-3">
5959
<div className="flex-1">
6060
<div className="font-medium text-amber-900 dark:text-amber-200">
6161
{binary_name} on {environment_name}
@@ -64,26 +64,28 @@ export default function FailureCard({
6464
Commit: {commit_sha.substring(0, 8)}{formatTimestamp(commit_timestamp || failure_timestamp)}
6565
</div>
6666
</div>
67-
<div className="flex items-center gap-2 ml-3">
67+
<div className="flex flex-wrap items-center gap-2">
6868
<Button
6969
variant="outline"
7070
size="sm"
7171
onClick={() => setShowErrorDialog(true)}
72-
className="gap-2"
72+
className="gap-2 whitespace-nowrap"
7373
>
7474
<Eye className="w-4 h-4" />
75-
View Error
75+
<span className="hidden xs:inline">View Error</span>
76+
<span className="xs:hidden">View</span>
7677
</Button>
7778
{onDelete && id && (
7879
<Button
7980
variant="outline"
8081
size="sm"
8182
onClick={() => onDelete(id)}
8283
disabled={isDeleting}
83-
className="gap-2 text-red-600 hover:text-red-700 hover:bg-red-50"
84+
className="gap-2 text-red-600 hover:text-red-700 hover:bg-red-50 whitespace-nowrap"
8485
>
8586
<Trash2 className="w-4 h-4" />
86-
{isDeleting ? 'Deleting...' : 'Delete'}
87+
<span className="hidden xs:inline">{isDeleting ? 'Deleting...' : 'Delete'}</span>
88+
<span className="xs:hidden">{isDeleting ? '...' : ''}</span>
8789
</Button>
8890
)}
8991
</div>
@@ -114,9 +116,9 @@ export default function FailureCard({
114116

115117
return (
116118
<>
117-
<div className="flex items-center justify-between p-3 border rounded-lg">
119+
<div className="flex flex-col sm:flex-row sm:items-center sm:justify-between p-3 border rounded-lg gap-3">
118120
<div className="flex-1">
119-
<div className="flex items-center gap-2">
121+
<div className="flex flex-wrap items-center gap-2">
120122
<code className="text-sm">{commit_sha.substring(0, 8)}</code>
121123
{showBadges && (
122124
<>
@@ -139,26 +141,28 @@ export default function FailureCard({
139141
</div>
140142
)}
141143
</div>
142-
<div className="flex items-center gap-2 ml-3">
144+
<div className="flex flex-wrap items-center gap-2">
143145
<Button
144146
variant="outline"
145147
size="sm"
146148
onClick={() => setShowErrorDialog(true)}
147-
className="gap-2"
149+
className="gap-2 whitespace-nowrap"
148150
>
149151
<Eye className="w-4 h-4" />
150-
View Error
152+
<span className="hidden xs:inline">View Error</span>
153+
<span className="xs:hidden">View</span>
151154
</Button>
152155
{onDelete && id && (
153156
<Button
154157
variant="outline"
155158
size="sm"
156159
onClick={() => onDelete(id)}
157160
disabled={isDeleting}
158-
className="gap-2 text-red-600 hover:text-red-700 hover:bg-red-50"
161+
className="gap-2 text-red-600 hover:text-red-700 hover:bg-red-50 whitespace-nowrap"
159162
>
160163
<Trash2 className="w-4 h-4" />
161-
{isDeleting ? 'Deleting...' : 'Delete'}
164+
<span className="hidden xs:inline">{isDeleting ? 'Deleting...' : 'Delete'}</span>
165+
<span className="xs:hidden">{isDeleting ? '...' : ''}</span>
162166
</Button>
163167
)}
164168
</div>

0 commit comments

Comments
 (0)