From 6071b650d721b6d7ca1a0ebddbbbfcec86ce5d79 Mon Sep 17 00:00:00 2001 From: Dean Date: Mon, 23 Jan 2023 12:26:59 +0000 Subject: [PATCH] Feedback update for reactive filter statements --- .../DataTable/modals/ExportModal.svelte | 35 ++++++++++--------- 1 file changed, 19 insertions(+), 16 deletions(-) diff --git a/packages/builder/src/components/backend/DataTable/modals/ExportModal.svelte b/packages/builder/src/components/backend/DataTable/modals/ExportModal.svelte index 3a406d716e..68968d5785 100644 --- a/packages/builder/src/components/backend/DataTable/modals/ExportModal.svelte +++ b/packages/builder/src/components/backend/DataTable/modals/ExportModal.svelte @@ -32,24 +32,9 @@ let exportFormat = FORMATS[0].key let filterLookup - let exportOpDisplay = [] $: luceneFilter = LuceneUtils.buildLuceneQuery(filters) - - $: if (filters) { - exportOpDisplay = filterDisplay() - } - - $: if (sorting) { - exportOpDisplay = [ - ...exportOpDisplay, - { - Field: sorting.sortColumn, - Operation: "Order By", - "Field Value": sorting.sortOrder, - }, - ] - } + $: exportOpDisplay = buildExportOpDisplay(sorting, filterDisplay, filters) const buildFilterLookup = () => { return Object.keys(Constants.OperatorOptions).reduce((acc, key) => { @@ -61,6 +46,9 @@ filterLookup = buildFilterLookup() const filterDisplay = () => { + if (!filters) { + return [] + } return filters.map(filter => { let newFieldName = filter.field + "" const parts = newFieldName.split(":") @@ -74,6 +62,21 @@ }) } + const buildExportOpDisplay = (sorting, filterDisplay) => { + let filterDisplayConfig = filterDisplay() + if (sorting) { + filterDisplayConfig = [ + ...filterDisplayConfig, + { + Field: sorting.sortColumn, + Operation: "Order By", + "Field Value": sorting.sortOrder, + }, + ] + } + return filterDisplayConfig + } + const displaySchema = { Field: { type: "string",