Skip to content

fix(esf): Handle remote data with ESF and remote filtering#17342

Open
mddragnev wants to merge 2 commits into
masterfrom
mdragnev/fix-17283
Open

fix(esf): Handle remote data with ESF and remote filtering#17342
mddragnev wants to merge 2 commits into
masterfrom
mdragnev/fix-17283

Conversation

@mddragnev

@mddragnev mddragnev commented Jun 22, 2026

Copy link
Copy Markdown
Member

Closes #17283

Description

Motivation / Context

Type of Change (check all that apply):

  • Bug fix
  • New functionality
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)
  • Refactoring (no functional changes)
  • Documentation
  • Demos
  • CI/CD
  • Tests
  • Changelog
  • Skills/Agents

Component(s) / Area(s) Affected:

How Has This Been Tested?

  • Unit tests
  • Manual testing
  • Automated e2e tests

Test Configuration:

  • Angular version:
  • Browser(s):
  • OS:

Screenshots / Recordings

Checklist:

  • All relevant tags have been applied to this PR
  • This PR includes unit tests covering all the new code (test guidelines)
  • This PR includes API docs for newly added methods/properties (api docs guidelines)
  • This PR includes feature/README.MD updates for the feature docs
  • This PR includes general feature table updates in the root README.MD
  • This PR includes CHANGELOG.MD updates for newly added functionality
  • This PR contains breaking changes
  • This PR includes ng update migrations for the breaking changes (migrations guidelines)
  • This PR includes behavioral changes and the feature specification has been updated with them
  • Accessibility (ARIA, keyboard navigation, focus management) has been verified

@mddragnev mddragnev marked this pull request as ready for review June 22, 2026 15:02
Copilot AI review requested due to automatic review settings June 22, 2026 15:02

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR addresses an Excel Style Filtering (ESF) edge case in the grid where, under remote/chunked data scenarios with uniqueColumnValuesStrategy + case-insensitive string filtering, selected values can be incorrectly reduced to only those present in the currently loaded grid data.

Changes:

  • Adjusts ESF apply-filter logic to avoid deriving selected string values from the current grid.data when the grid is considered “remote”.
  • Adds a new remote/chunked-data test component to reproduce the scenario.
  • Adds a regression test validating selected values are preserved even when the grid holds only a subset of the full remote dataset.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 2 comments.

File Description
projects/igniteui-angular/test-utils/grid-samples.spec.ts Adds a sample component simulating chunked/remote data with uniqueColumnValuesStrategy.
projects/igniteui-angular/grids/grid/src/grid-filtering-ui.spec.ts Registers the new sample component and adds a regression test for ESF selected-values preservation.
projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-search.component.ts Updates ESF filter application logic to skip case-preserving remapping against grid.data for remote data; introduces isRemoteData().

Comment on lines +901 to +903
private isRemoteData(): boolean {
return this.esf.grid.verticalScrollContainer.isRemote;
}
Comment on lines +7090 to +7093
const uncheckLabel = 'Alpha';
const uncheckIndex = labelElements.findIndex(el => el.innerText === uncheckLabel);
expect(uncheckIndex).toBeGreaterThan(0);

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

IgxGrid ESF: remote filtering scenario along with uniqueColumnValuesStrategy would only take the current grid data in account

3 participants