From ac59665be4bf59146e5293c144f474315c5334e4 Mon Sep 17 00:00:00 2001 From: Jan Prochazka Date: Sun, 24 Jan 2021 08:37:32 +0100 Subject: [PATCH] formview - filtering by expanded columns --- packages/datalib/src/FormViewDisplay.ts | 3 +++ packages/web/src/formview/FormViewFilters.js | 13 +++++++------ 2 files changed, 10 insertions(+), 6 deletions(-) diff --git a/packages/datalib/src/FormViewDisplay.ts b/packages/datalib/src/FormViewDisplay.ts index d375df3cc..5d8aa5d8e 100644 --- a/packages/datalib/src/FormViewDisplay.ts +++ b/packages/datalib/src/FormViewDisplay.ts @@ -41,6 +41,9 @@ export class FormViewDisplay { ...cfg.filters, [column.uniqueName]: expr, }, + addedColumns: cfg.addedColumns.includes(column.uniqueName) + ? cfg.addedColumns + : [...cfg.addedColumns, column.uniqueName], })); } } diff --git a/packages/web/src/formview/FormViewFilters.js b/packages/web/src/formview/FormViewFilters.js index 96e07124c..2e47b29fa 100644 --- a/packages/web/src/formview/FormViewFilters.js +++ b/packages/web/src/formview/FormViewFilters.js @@ -86,17 +86,18 @@ export default function FormViewFilters(props) { {baseTable.primaryKey.columns.map(col => ( ))} - {allFilterNames.map(columnName => { - const column = baseTable.columns.find(x => x.columnName == columnName); + {allFilterNames.map(uniqueName => { + const column = formDisplay.columns.find(x => x.uniqueName == uniqueName) + // const column = baseTable.columns.find(x => x.columnName == columnName); if (!column) return null; return ( - + { - formDisplay.removeFilter(column.columnName); + formDisplay.removeFilter(column.uniqueName); }} > @@ -104,8 +105,8 @@ export default function FormViewFilters(props) { formDisplay.setFilter(column.columnName, value)} + filter={filters[column.uniqueName]} + setFilter={value => formDisplay.setFilter(column.uniqueName, value)} /> );