|
1 | 1 | "use client"; |
2 | 2 |
|
3 | 3 | import PageLayout from "@/app/components/PageLayout"; |
4 | | -import { useMemo, useState } from "react"; |
| 4 | +import { useMemo, useState, useEffect } from "react"; |
5 | 5 | import { toast } from "sonner"; |
6 | 6 | import { friendlyDateColumnBase } from "../../components/gridUtils"; |
7 | 7 | import { TableToolbar } from "../../components/TableToolbar"; |
@@ -132,6 +132,7 @@ export function ControlsClientPage({ |
132 | 132 | isDirty, |
133 | 133 | createdRowIds, |
134 | 134 | changesSummaryString, |
| 135 | + setDisplayedData, |
135 | 136 | } = useChangeTracking(initialGridData); |
136 | 137 |
|
137 | 138 | const [selectedFramework, setSelectedFramework] = useState<string>(""); |
@@ -196,6 +197,10 @@ export function ControlsClientPage({ |
196 | 197 | }); |
197 | 198 | }, [sortedDataWithPotentialTimestamps]); |
198 | 199 |
|
| 200 | + useEffect(() => { |
| 201 | + setDisplayedData(dataForDisplay); |
| 202 | + }, [dataForDisplay, setDisplayedData]); |
| 203 | + |
199 | 204 | const columns: Column<ControlsPageGridData>[] = [ |
200 | 205 | { ...keyColumn("name", textColumn), title: "Name", minWidth: 300 }, |
201 | 206 | { |
@@ -377,7 +382,8 @@ export function ControlsClientPage({ |
377 | 382 | height={600} |
378 | 383 | onChange={handleGridChange} |
379 | 384 | columns={columns} |
380 | | - rowClassName={getRowClassName} |
| 385 | + rowKey="id" |
| 386 | + rowClassName={getRowClassName} |
381 | 387 | createRow={() => ({ |
382 | 388 | id: simpleUUID(), |
383 | 389 | name: "Control Name", |
|
0 commit comments