Skip to content

fix(esf): Handle remote data with ESF and remote filtering - 21.2.x#17343

Open
mddragnev wants to merge 3 commits into
21.2.xfrom
mdragnev/fix-17283-21.2.x
Open

fix(esf): Handle remote data with ESF and remote filtering - 21.2.x#17343
mddragnev wants to merge 3 commits into
21.2.xfrom
mdragnev/fix-17283-21.2.x

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

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

Fixes an Excel Style Filtering (ESF) remote-data scenario where selected string values could be dropped when the grid only holds a current “chunk” of data, by avoiding the case-preservation remapping step for remote virtualization while keeping existing local-data behavior intact.

Changes:

  • Updated ESF applyFilter() string handling to skip mapping selected values against grid.data when the grid is remote (verticalScrollContainer.isRemote), preserving the full selected set.
  • Added a dedicated “remote chunk” grid sample component to simulate remote virtualization with uniqueColumnValuesStrategy.
  • Added a unit test asserting that selected values from the full remote set are preserved even when the grid’s current data is chunked.

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 remote-chunk grid sample component used by the new regression test.
projects/igniteui-angular/grids/grid/src/grid-filtering-ui.spec.ts Registers the new sample and adds a regression test for the remote + ESF + unique values strategy scenario.
projects/igniteui-angular/grids/core/src/filtering/excel-style/excel-style-search.component.ts Adjusts ESF string in filter value derivation to preserve selected values for remote virtualization.

Comment thread projects/igniteui-angular/test-utils/grid-samples.spec.ts
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.

3 participants