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

Method filterTreeNodes

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

Source from the content-addressed store, hash-verified

1499 }
1500
1501 filterTreeNodes(nodes: TreeNode[]): TreeNode[] {
1502 const search = this.searchString().trim().toLowerCase();
1503 if (!search) {
1504 return nodes;
1505 }
1506
1507 return nodes.reduce((acc, node) => {
1508 const children = node.children ? this.filterTreeNodes(node.children) : undefined;
1509 if (this.isMatch(node) || (children && children.length > 0)) {
1510 acc.push({
1511 ...node,
1512 children,
1513 expanded: children && children.length > 0 ? true : node.expanded,
1514 });
1515 }
1516 return acc;
1517 }, [] as TreeNode[]);
1518 }
1519
1520 isMatch(node: TreeNode) {
1521 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