fix(explorer): filter function in ExplorerNode
This commit is contained in:
parent
b8fbb64cad
commit
c2ac5dcfd0
@ -76,18 +76,8 @@ export class FileNode {
|
|||||||
* @param filterFn function to filter tree with
|
* @param filterFn function to filter tree with
|
||||||
*/
|
*/
|
||||||
filter(filterFn: (node: FileNode) => boolean) {
|
filter(filterFn: (node: FileNode) => boolean) {
|
||||||
const filteredNodes: FileNode[] = []
|
this.children = this.children.filter(filterFn)
|
||||||
|
this.children.forEach((child) => child.filter(filterFn))
|
||||||
const traverse = (node: FileNode) => {
|
|
||||||
if (filterFn(node)) {
|
|
||||||
filteredNodes.push(node)
|
|
||||||
}
|
|
||||||
node.children.forEach(traverse)
|
|
||||||
}
|
|
||||||
|
|
||||||
traverse(this)
|
|
||||||
|
|
||||||
this.children = filteredNodes
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
|
Loading…
Reference in New Issue
Block a user