diff --git a/src/pages/client/RequestDetail.jsx b/src/pages/client/RequestDetail.jsx
index e5ff26d..47b9d65 100755
--- a/src/pages/client/RequestDetail.jsx
+++ b/src/pages/client/RequestDetail.jsx
@@ -305,35 +305,50 @@ export default function RequestDetail() {
Version History
- {submissions.map(sub => {
- const delivery = sub.delivery;
+ {Object.values(
+ submissions.reduce((groups, sub) => {
+ const key = sub.version_number;
+ if (!groups[key]) groups[key] = [];
+ groups[key].push(sub);
+ return groups;
+ }, {})
+ ).map(group => {
+ const primary = group.find(s => s.type !== 'amendment') || group[0];
+ const amendments = group.filter(s => s.type === 'amendment');
+ const delivery = primary.delivery;
return (
-
- {sub.type === 'amendment' && (
-
- Amended Request
-
- )}
+
- {sub.type !== 'amendment' && (
-
{vLabel(sub.version_number - 1)}
- )}
-
+
{vLabel(primary.version_number - 1)}
+
- {sub.submitted_by_name && {sub.submitted_by_name} · }
- {new Date(sub.submitted_at).toLocaleDateString()}
+ {primary.submitted_by_name && {primary.submitted_by_name} · }
+ {new Date(primary.submitted_at).toLocaleDateString()}
-
{sub.service_type}
-
{sub.deadline || '—'}
+
{primary.service_type}
+
{primary.deadline || '—'}
-
{sub.description}
+
{primary.description}
+
+ {amendments.map(amendment => (
+
+
+ Amended Request
+
+
+ {amendment.submitted_by_name} · {new Date(amendment.submitted_at).toLocaleDateString()}
+
+
{amendment.description}
+
+ ))}
+
{delivery && delivery.files && delivery.files.length > 0 && (