MCPcopy Create free account
hub / github.com/angular/components / filterTreeNodes

Method filterTreeNodes

src/aria/combobox/combobox.spec.ts:1452–1469  ·  view source on GitHub ↗
(nodes: TreeNode[])

Source from the content-addressed store, hash-verified

1450 }
1451
1452 filterTreeNodes(nodes: TreeNode[]): TreeNode[] {
1453 const search = this.searchString().trim().toLowerCase();
1454 if (!search) {
1455 return nodes;
1456 }
1457
1458 return nodes.reduce((acc, node) => {
1459 const children = node.children ? this.filterTreeNodes(node.children) : undefined;
1460 if (this.isMatch(node) || (children && children.length > 0)) {
1461 acc.push({
1462 ...node,
1463 children,
1464 expanded: children && children.length > 0 ? true : node.expanded,
1465 });
1466 }
1467 return acc;
1468 }, [] as TreeNode[]);
1469 }
1470
1471 isMatch(node: TreeNode) {
1472 return node.name.toLowerCase().includes(this.searchString().toLowerCase());

Callers 1

ComboboxTreeExampleClass · 0.95

Calls 2

isMatchMethod · 0.95
pushMethod · 0.65

Tested by

no test coverage detected