From dd3dc82f01e1a4ec9d039b921c199d484a9a8911 Mon Sep 17 00:00:00 2001 From: Navaneeth Pk Date: Wed, 1 Sep 2021 13:06:14 +0530 Subject: [PATCH] Table should refresh data if properties of a cell changes (#661) * fix * fix --- frontend/src/Editor/Components/Table/Table.jsx | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/frontend/src/Editor/Components/Table/Table.jsx b/frontend/src/Editor/Components/Table/Table.jsx index 7627d1ac12..c5777cb7c6 100644 --- a/frontend/src/Editor/Components/Table/Table.jsx +++ b/frontend/src/Editor/Components/Table/Table.jsx @@ -250,7 +250,7 @@ export function Table({ const values = resolveReferences(column.values, currentState) || []; const labels = resolveReferences(column.labels, currentState, []) || []; - if (typeof labels === 'object') { + if (Array.isArray(labels)) { columnOptions.selectOptions = labels.map((label, index) => { return { name: label, value: values[index] }; }); @@ -269,6 +269,7 @@ export function Table({ accessor: column.key || column.name, filter: customFilter, width: width, + columnOptions, Cell: function (cell) { const rowChangeSet = changeSet ? changeSet[cell.row.index] : null; @@ -484,12 +485,16 @@ export function Table({ ] : []; + + const optionsData = columnData.map(column => column.columnOptions?.selectOptions); + const columns = useMemo( () => [...leftActionsCellData, ...columnData, ...rightActionsCellData], [JSON.stringify(columnData), leftActionsCellData.length, rightActionsCellData.length, componentState.changeSet, + JSON.stringify(optionsData), JSON.stringify(component.definition.properties.columns) ] // Hack: need to fix );