feat(tree-view): add filterTreeNodes utilities
#2269
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Closes #2281
Add tree node filtering utilities for
TreeView. Three new functions enable filtering hierarchical tree structures by predicate, ID, or text search.filterTreeNodes: generic predicate-based filteringfilterTreeById: filter by node ID(s)filterTreeByText: case-insensitive text searchThe
filterTreeNodesfunction accepts a predicate function to filter nodes based on custom logic. It returns a new tree containing only matching nodes and their ancestors by default.The
filterTreeByIdfunction filters nodes by ID, accepting either a single ID or an array of IDs.The
filterTreeByTextfunction performs case-insensitive substring matching on node text properties.All filter functions accept an optional options object with two properties. The
includeAncestorsoption (default: true) includes parent nodes of matching nodes, ensuring the filtered tree maintains valid parent-child relationships. TheincludeChildrenoption (default: false) includes all descendants of matching nodes.