diff --git a/frontend/src/AppBuilder/Widgets/NewTable/_components/TableData/_components/TableRow.jsx b/frontend/src/AppBuilder/Widgets/NewTable/_components/TableData/_components/TableRow.jsx index 77d759ad7d..36d2d84929 100644 --- a/frontend/src/AppBuilder/Widgets/NewTable/_components/TableData/_components/TableRow.jsx +++ b/frontend/src/AppBuilder/Widgets/NewTable/_components/TableData/_components/TableRow.jsx @@ -27,7 +27,7 @@ export const TableRow = ({ return ( [...data], [data, columns]); + const newData = useMemo( + () => + data.map((row) => ({ + ...row, + uniqueId: row.uniqueId || uuidv4(), // Use existing ID if available + })), + // eslint-disable-next-line react-hooks/exhaustive-deps + [data, columns] + ); const table = useReactTable({ data: newData, @@ -44,7 +53,7 @@ export function useTable({ getFilteredRowModel: getFilteredRowModel(), enableColumnResizing: true, columnResizeMode: 'onChange', - getRowId: (row) => row.uuid, + getRowId: (row) => row.uniqueId, enableRowSelection: true, enableMultiRowSelection: showBulkSelector, state: {