diff --git a/package.json b/package.json index 9b6525c..3cd5e84 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "list-view-controls", "widgetName": "ListViewControls", - "version": "1.3.10", + "version": "1.3.11", "description": "Search and filter Mendix list views", "copyright": "Mendix BV", "scripts": { diff --git a/src/Shared/DataSourceHelper/DataSourceHelper.ts b/src/Shared/DataSourceHelper/DataSourceHelper.ts index 5a2808f..a6d3781 100644 --- a/src/Shared/DataSourceHelper/DataSourceHelper.ts +++ b/src/Shared/DataSourceHelper/DataSourceHelper.ts @@ -125,7 +125,7 @@ export class DataSourceHelper { } private updateDataSource(callback: () => void, restoreState: boolean) { - let constraints: Constraints = []; + let constraints: Constraints; let sorting: string[][] = Object.keys(this.store.sorting) .map(key => this.store.sorting[key]) .filter(sortConstraint => sortConstraint[0] && sortConstraint[1]); @@ -161,6 +161,7 @@ export class DataSourceHelper { } } + // TODO: Since we do not include `this.widget_datasource._constraints` here, this can cause filtering to reset all the constraints. constraints = [ ...unGroupedConstraints, ...unGroupedOrConstraints, ...groupedConstraints ]; } else { @@ -178,7 +179,7 @@ export class DataSourceHelper { .join("") .replace(/\[]/g, ""); // Remove empty string "[]" - constraints = unGroupedConstraints + groupedConstraints; + constraints = this.widget._datasource._constraints + unGroupedConstraints + groupedConstraints; // if (!restoreState) { // this.widget._datasource._sorting = sorting; // } diff --git a/src/package.xml b/src/package.xml index d88eb80..d0ab4dc 100644 --- a/src/package.xml +++ b/src/package.xml @@ -1,6 +1,6 @@ - +