Skip to content

Commit 94a4e79

Browse files
authored
Merge pull request #58 from kleros/fix/direct-operation-history
fix(web): fix-history-view-for-direct-operations
2 parents f281f00 + 9dfe549 commit 94a4e79

File tree

1 file changed

+24
-8
lines changed

1 file changed

+24
-8
lines changed

web/src/components/HistoryDisplay/index.tsx

Lines changed: 24 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
import { Card, CustomTimeline, _TimelineItem1 } from "@kleros/ui-components-library";
2-
import React from "react";
2+
import React, { useMemo } from "react";
33
import styled, { css, Theme, useTheme } from "styled-components";
44
import Header from "./Header";
55
import { useItemRequests } from "queries/useRequestsQuery";
@@ -34,25 +34,41 @@ const StyledTimeline = styled(CustomTimeline)`
3434
}
3535
`;
3636

37+
const StyledLabel = styled.label`
38+
align-self: center;
39+
padding-bottom: 32px;
40+
`;
41+
3742
interface IHistory {
3843
itemId: string;
3944
isItem?: boolean;
4045
}
4146

4247
const History: React.FC<IHistory> = ({ itemId, isItem }) => {
4348
const theme = useTheme();
44-
const { data } = useItemRequests(itemId);
49+
const { data, isLoading } = useItemRequests(itemId);
50+
51+
const items = useMemo(
52+
() =>
53+
data?.requests.reduce<_TimelineItem1[]>((acc, request) => {
54+
const history = constructItemsFromRequest(request, theme, isItem);
55+
acc.push(...history);
56+
return acc;
57+
}, []),
58+
[data]
59+
);
60+
61+
const Component = useMemo(() => {
62+
if (!items || isLoading) return <HistorySkeletonCard />;
63+
else if (items.length === 0) return <StyledLabel>No requests yet.</StyledLabel>;
4564

46-
const items = data?.requests.reduce<_TimelineItem1[]>((acc, request) => {
47-
const history = constructItemsFromRequest(request, theme, isItem);
48-
acc.push(...history);
49-
return acc;
50-
}, []);
65+
return <StyledTimeline {...{ items }} />;
66+
}, [items, isLoading]);
5167

5268
return (
5369
<Container>
5470
<Header />
55-
{items ? <StyledTimeline {...{ items }} /> : <HistorySkeletonCard />}
71+
{Component}
5672
</Container>
5773
);
5874
};

0 commit comments

Comments
 (0)