summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Hunteman <michael@huntm.net>2024-08-31 13:33:19 -0700
committerMichael Hunteman <michael@huntm.net>2024-08-31 13:33:19 -0700
commitbecddd40c7f205a9d5643701da95b7a411c827b4 (patch)
treefb50bdc8b9e38db2b76d8097a22cbdf5ae26da52
parent05ef638bc032473a8b4bfa9be2de2e994c7a1e7c (diff)
Cast party members to guests for expandable row
-rw-r--r--client/src/components/Dashboard.tsx22
-rw-r--r--client/src/models.ts17
2 files changed, 9 insertions, 30 deletions
diff --git a/client/src/components/Dashboard.tsx b/client/src/components/Dashboard.tsx
index 42a4224..985e48a 100644
--- a/client/src/components/Dashboard.tsx
+++ b/client/src/components/Dashboard.tsx
@@ -48,30 +48,14 @@ function Dashboard() {
columns,
data: guests,
muiPaginationProps: {
- color: 'primary',
shape: 'rounded',
showRowsPerPage: false,
variant: 'outlined',
},
paginationDisplayMode: 'pages',
- renderDetailPanel: ({ row }) =>
- row.original.partySize > 1
- ? row.original.partyList.map((guest, index) => {
- return (
- <div
- key={index}
- style={{
- width: '34%',
- display: 'flex',
- justifyContent: 'space-around',
- }}
- >
- <p>{guest.firstName}</p>
- <p>{guest.lastName}</p>
- </div>
- );
- })
- : null,
+ enableExpanding: true,
+ filterFromLeafRows: true,
+ getSubRows: (row) => row.partyList as Guest[],
});
return (
diff --git a/client/src/models.ts b/client/src/models.ts
index 97dce1f..2580d90 100644
--- a/client/src/models.ts
+++ b/client/src/models.ts
@@ -1,17 +1,12 @@
export interface Guest {
- id: number;
- firstName: string;
- lastName: string;
- attendance: string;
- email: string;
- message: string;
- partySize: number;
- partyList: Array<PartyGuest>;
-}
-
-export interface PartyGuest {
+ id?: number;
firstName: string;
lastName: string;
+ attendance?: string;
+ email?: string;
+ message?: string;
+ partySize?: number;
+ partyList?: Array<Guest>;
}
export interface GuestLoginRequest {