From 91fc29b9ee20a9a38664c46cf38e88be1ca51cc9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Simon=20K=C3=BCnzel?= <simonk@fsmpi.rwth-aachen.de>
Date: Tue, 22 Apr 2025 20:37:35 +0200
Subject: [PATCH] Fix exception in job page

---
 src/pages/internal/jobs.tsx                    | 2 +-
 src/videoag/miscellaneous/ExpandableString.tsx | 3 +++
 2 files changed, 4 insertions(+), 1 deletion(-)

diff --git a/src/pages/internal/jobs.tsx b/src/pages/internal/jobs.tsx
index 4287e2c..7a0b3fc 100644
--- a/src/pages/internal/jobs.tsx
+++ b/src/pages/internal/jobs.tsx
@@ -82,7 +82,7 @@ function JobList({ jobsResp }: { jobsResp: GetJobsResponse }) {
                                     <td>{job.on_end_event_type}</td>
                                     <td>
                                         <ExpandableString
-                                            value={job.on_end_event_data}
+                                            value={job.on_end_event_data && JSON.stringify(job.on_end_event_data)}
                                             maxLength={20}
                                         />
                                     </td>
diff --git a/src/videoag/miscellaneous/ExpandableString.tsx b/src/videoag/miscellaneous/ExpandableString.tsx
index 43c8246..d3b06f8 100644
--- a/src/videoag/miscellaneous/ExpandableString.tsx
+++ b/src/videoag/miscellaneous/ExpandableString.tsx
@@ -8,6 +8,9 @@ export function ExpandableString({
     maxLength: number;
 }) {
     value = value ?? "";
+    if (typeof value !== "string") {
+        throw new TypeError(`Cannot handle non-string value of type '${typeof value}': ${value}`);
+    }
 
     const [expand, setExpand] = useState(false);
     if (value.length <= maxLength) return value;
-- 
GitLab