Skip to content

fix(elements): strip Blazor externalObject from expression tree events - 20.1.x#17253

Open
IMinchev64 wants to merge 2 commits into20.1.xfrom
iminchev/blazor-expression-tree-external-object-20.1.x
Open

fix(elements): strip Blazor externalObject from expression tree events - 20.1.x#17253
IMinchev64 wants to merge 2 commits into20.1.xfrom
iminchev/blazor-expression-tree-external-object-20.1.x

Conversation

@IMinchev64
Copy link
Copy Markdown
Contributor

@IMinchev64 IMinchev64 commented Apr 29, 2026

Closes https://github.com/Infragistics-Developer-Tools/dev-tools/issues/3208

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

@IMinchev64 IMinchev64 requested a review from mddragnev April 29, 2026 14:39
Copilot AI review requested due to automatic review settings April 29, 2026 14:39
@IMinchev64 IMinchev64 added ❌ status: awaiting-test PRs awaiting manual verification 💠 grid: elements labels Apr 29, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

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 Blazor-injected externalObject values leaking into expression-tree-related event payloads, which can break comparison/serialization scenarios in Ignite UI Angular and the Elements strategy layer (issue #3208).

Changes:

  • Ignore externalObject during Query Builder tree equality checks to prevent unnecessary root recreation / stringify failures.
  • Strip externalObject from expression-tree-related output event args in the Angular Elements custom strategy.

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
projects/igniteui-angular/src/lib/query-builder/query-builder-tree.component.ts Adds externalObject to the JSON stringify replacer ignore list used for root group comparison.
projects/igniteui-angular-elements/src/app/custom-strategy.ts Adds expression-tree event handling that removes condition.externalObject from emitted trees before dispatching events.

Comment thread projects/igniteui-angular-elements/src/app/custom-strategy.ts
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

💠 grid: elements ❌ status: awaiting-test PRs awaiting manual verification

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants