switchFilter()

in sample/frontend/agr-lib/src/lib/grid/agr-engine.ts [312:329]


  switchFilter(column: Column, filter: ColumnFilter) {
    if (!filter.value || (filter.value as string[]).length === 0) {
      this.removeFilter(column);
      return;
    }
    column.columnDef.filter = filter;
    if (column.columnDef.filter.condition === 'OR_GROUP') {
      this.filterColumnsData.delete(column.getColumnId());
      const columnId = column.parent ? column.parent.getColumnId() : column.getColumnId();
      if (!this.filterColumnsData.has(columnId)) {
        this.filterColumnsData.set(columnId, []);
      }
      (this.filterColumnsData.get(columnId) as ColumnDef[]).push(column.columnDef);
    } else {
      this.filterColumnsData.set(column.getColumnId(), column.columnDef);
    }
    this.filter();
  }