Documentation
¶
Index ¶
- func GraphHTMLTemplate(d3JSON string) string
- type GraphGenerator
- func (g *GraphGenerator) Generate(ctx context.Context, br *analysis.EnhancedBlastRadius, format OutputFormat) (string, error)
- func (g *GraphGenerator) InteractiveVisualization(ctx context.Context, br *analysis.EnhancedBlastRadius) (string, error)
- func (g *GraphGenerator) MultiBlastRadiusVisualization(ctx context.Context, results []*analysis.EnhancedBlastRadius, ...) (string, error)
- func (g *GraphGenerator) PackageHierarchyVisualization(ctx context.Context, br *analysis.EnhancedBlastRadius) (string, error)
- type GraphOptions
- type OutputFormat
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GraphHTMLTemplate ¶
GraphHTMLTemplate returns an HTML template for interactive D3 visualization.
Types ¶
type GraphGenerator ¶
type GraphGenerator struct {
// contains filtered or unexported fields
}
GraphGenerator generates visual representations of dependency graphs.
Description ¶
Creates visual output in various formats including Mermaid diagrams, D3.js JSON, and SVG. All rendering is done locally without external services.
Thread Safety ¶
Safe for concurrent use.
func NewGraphGenerator ¶
func NewGraphGenerator(opts *GraphOptions) *GraphGenerator
NewGraphGenerator creates a new graph generator.
func (*GraphGenerator) Generate ¶
func (g *GraphGenerator) Generate(ctx context.Context, br *analysis.EnhancedBlastRadius, format OutputFormat) (string, error)
Generate creates a visual representation of a blast radius.
Inputs ¶
- ctx: Context for cancellation.
- br: The blast radius to visualize.
- format: The output format.
Outputs ¶
- string: The visualization in the requested format.
- error: Non-nil on failure.
func (*GraphGenerator) InteractiveVisualization ¶
func (g *GraphGenerator) InteractiveVisualization(ctx context.Context, br *analysis.EnhancedBlastRadius) (string, error)
InteractiveVisualization generates a complete interactive HTML visualization.
func (*GraphGenerator) MultiBlastRadiusVisualization ¶
func (g *GraphGenerator) MultiBlastRadiusVisualization(ctx context.Context, results []*analysis.EnhancedBlastRadius, format OutputFormat) (string, error)
MultiBlastRadiusVisualization creates a visualization for multiple blast radii.
func (*GraphGenerator) PackageHierarchyVisualization ¶
func (g *GraphGenerator) PackageHierarchyVisualization(ctx context.Context, br *analysis.EnhancedBlastRadius) (string, error)
PackageHierarchyVisualization creates a package-level visualization.
type GraphOptions ¶
type GraphOptions struct {
// MaxNodes limits the number of nodes in the output.
// Default: 100
MaxNodes int
// MaxDepth limits the depth of transitive dependencies.
// Default: 3
MaxDepth int
// ShowSecurityPaths highlights security-sensitive paths.
// Default: true
ShowSecurityPaths bool
// GroupByPackage groups nodes by package.
// Default: true
GroupByPackage bool
// Direction is the graph direction (TB, LR, BT, RL).
// Default: "TB"
Direction string
}
GraphOptions configures graph generation.
func DefaultGraphOptions ¶
func DefaultGraphOptions() GraphOptions
DefaultGraphOptions returns sensible defaults.
type OutputFormat ¶
type OutputFormat string
OutputFormat specifies the visualization output format.
const ( FormatMermaid OutputFormat = "mermaid" FormatD3 OutputFormat = "d3" FormatSVG OutputFormat = "svg" FormatDOT OutputFormat = "dot" )