in src/PrDisplay.js [885:930]
renderGroups(groups) {
let cards = [];
for (const [title, data] of Object.entries(groups)) {
if (!data.show) {
continue;
}
let isExpanded = this.state.showGroups.includes(title);
const toggleGroup = () => {
if (this.state.showGroups.includes(title)) {
this.state.showGroups.pop(this.state.showGroups.indexOf(title));
} else {
this.state.showGroups.push(title);
}
this.setState(this.state);
};
let icon = (
<BsFillCaretRightFill
style={{ cursor: "pointer" }}
onClick={toggleGroup}
/>
);
let items = [];
if (isExpanded) {
icon = (
<BsFillCaretDownFill
style={{ cursor: "pointer" }}
onClick={toggleGroup}
/>
);
items = data.items;
}
let card = (
<Card key={"group-card-" + title}>
<Card.Body>
<Card.Title>
{title} {icon}
</Card.Title>
{items}
</Card.Body>
</Card>
);
cards.push({ data: { status: "GROUP" }, element: card });
}
return cards;
}