in src/gantt.ts [2049:2072]
private subTasksCollapseCb(taskClicked: GroupedTask): void {
const taskIsChild: boolean = taskClicked.tasks[0].parent && !taskClicked.tasks[0].children;
const taskWithoutParentAndChildren: boolean = !taskClicked.tasks[0].parent && !taskClicked.tasks[0].children;
if (taskIsChild || taskWithoutParentAndChildren) {
return;
}
const taskClickedParent: string = taskClicked.tasks[0].parent || taskClicked.tasks[0].name;
this.viewModel.tasks.forEach((task: Task) => {
if (task.parent === taskClickedParent &&
task.parent.length >= taskClickedParent.length) {
const index: number = this.collapsedTasks.indexOf(task.parent);
if (task.visibility) {
this.collapsedTasks.push(task.parent);
} else {
if (taskClickedParent === task.parent) {
this.collapsedTasks.splice(index, 1);
}
}
}
});
this.setJsonFiltersValues(this.collapsedTasks);
}