/** * View 8 — "Visualization" (node-link topology, Cytoscape.js + dagre). * * The non-tabular Code Graph view. A self-contained **Level** control switches * what the graph shows: * * - PACKAGE level (default) — one node per package, one edge per directed * package→package coupling. Function granularity across the whole repo * produced thousands of nodes, unusable in a node-link layout; the package * rollup is the same data the Coupling matrix shows, drawn as a graph. * Source: the pre-projected `graph-view-model` JSON blob embedded by * `generator.ts` (projector in `graph-view-model.ts`, run at * report-generation time) — NOT the raw catalog. Absent blob → empty state. * - FUNCTION level — the functions of ONE selected package and the calls * among them, projected client-side from the embedded catalog indexes by * `gvBuildFunctionElements`. Scoping to a single package keeps the node * count bounded. The "Edges" toggle chooses intra-package only (default) or * "+ cross-package" (also draw calls leaving the package, to faded external * nodes). Honors the Scope (test inclusion) and Kind (multi-select) filters. * * The view owns its controls (Level / Scope / Package / Kind / Edges) in * `gvRenderControls`; the shared Explore filter chips govern the Functions * table, NOT this view. Package + Kind only apply at function level, so they * are disabled at package level. Renderer is the vendored `cytoscape` global + * the `cytoscapeDagre` layout extension, both inlined by * `dashboardCytoscapeVendorJs()` ahead of this emitter in `code-paths.ts`. * * Features: pan/zoom, layout selector (dagre/cose/breadthfirst), name search, * node-click impact highlight (direct caller/callee neighbors), and * cross-package cycle highlighting (package level). Visual encoding * (totalCoupling→size, weight→edge thickness, sccId→accent, external→faded) is * applied in `gvStylesheet` / `gvBuildElements` / `gvBuildFunctionElements`. */ export declare function dashboardViewGraphJs(): string; //# sourceMappingURL=view-graph.d.ts.map