/
githubmirror
/
angular
Обзор
Документация
Войти
/
githubmirror
/
angular
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
devtools/projects/ng-devtools/src/lib/shared/tree-visualizer/graph-renderer.ts
43 строки
1 KB
hawkgs
refactor(devtools): use ng-filter for the router tree search
08 июн 2026, 21:19
08 июн 2026, 21:19
a7d6845
Код
Авторство
О чём код?
/** * @license * Copyright Google LLC All Rights Reserved. * * Use of this source code is governed by an MIT-style license that can be * found in the LICENSE file at https://angular.dev/license */ export abstract class GraphRenderer<T, U> { abstract render(root: T): void; abstract getInternalNodeById(id: string): U | null; abstract snapToNode(node: T): void; abstract snapToRoot(): void; abstract highlightNode(node: T | null): void; abstract zoomScale(scale: number): void; abstract root: U | null; protected nodeClickListeners: ((pointerEvent: PointerEvent, internalNode: U) => void)[] = []; protected nodeMouseoverListeners: ((pointerEvent: PointerEvent, internalNode: U) => void)[] = []; protected nodeMouseoutListeners: ((pointerEvent: PointerEvent, internalNode: U) => void)[] = []; cleanup(): void { this.nodeClickListeners = []; this.nodeMouseoverListeners = []; this.nodeMouseoutListeners = []; } dispose(): void { this.cleanup(); } onNodeClick(cb: (pointerEvent: PointerEvent, internalNode: U) => void): void { this.nodeClickListeners.push(cb); } onNodeMouseover(cb: (pointerEvent: PointerEvent, internalNode: U) => void): void { this.nodeMouseoverListeners.push(cb); } onNodeMouseout(cb: (pointerEvent: PointerEvent, internalNode: U) => void): void { this.nodeMouseoutListeners.push(cb); } }