feat(graph-explorer): implement interactive code relationship visualization with Cytoscape.js

- Added main render function to initialize the graph explorer view.
- Implemented data loading functions for graph nodes, edges, and search process data.
- Created UI layout with tabs for graph view and search process view.
- Developed filtering options for nodes and edges with corresponding UI elements.
- Integrated Cytoscape.js for graph visualization, including node and edge styling.
- Added functionality for node selection and details display.
- Implemented impact analysis feature with modal display for results.
- Included utility functions for refreshing data and managing UI states.
This commit is contained in:
catlog22
2025-12-15 19:35:18 +08:00
parent 97640a517a
commit 894b93e08d
9 changed files with 2438 additions and 0 deletions

View File

@@ -937,6 +937,28 @@ const i18n = {
'claudeManager.saved': 'File saved successfully',
'claudeManager.saveError': 'Failed to save file',
// Graph Explorer
'nav.graphExplorer': 'Graph',
'title.graphExplorer': 'Code Graph Explorer',
'graph.codeRelations': 'Code Relations',
'graph.searchProcess': 'Search Process',
'graph.nodeTypes': 'Node Types',
'graph.edgeTypes': 'Edge Types',
'graph.noProject': 'No project selected',
'graph.selectProject': 'Select a project to view its code graph',
'graph.loading': 'Loading graph data...',
'graph.noData': 'No graph data available',
'graph.indexProject': 'Please index this project with codex-lens first',
'graph.nodeDetails': 'Node Details',
'graph.selectNode': 'Select a node to view details',
'graph.impactAnalysis': 'Impact Analysis',
'graph.directDependents': 'Direct Dependents',
'graph.affectedFiles': 'Affected Files',
'graph.fitView': 'Fit View',
'graph.zoomIn': 'Zoom In',
'graph.zoomOut': 'Zoom Out',
'graph.resetLayout': 'Reset Layout',
// CLI Sync (used in claude-manager.js)
'claude.cliSync': 'CLI Auto-Sync',
'claude.tool': 'Tool',
@@ -1907,6 +1929,28 @@ const i18n = {
'claudeManager.saved': '文件保存成功',
'claudeManager.saveError': '文件保存失败',
// Graph Explorer
'nav.graphExplorer': '图谱',
'title.graphExplorer': '代码图谱浏览器',
'graph.codeRelations': '代码关系',
'graph.searchProcess': '搜索过程',
'graph.nodeTypes': '节点类型',
'graph.edgeTypes': '边类型',
'graph.noProject': '未选择项目',
'graph.selectProject': '选择一个项目以查看其代码图谱',
'graph.loading': '正在加载图谱数据...',
'graph.noData': '无图谱数据',
'graph.indexProject': '请先使用 codex-lens 为此项目建立索引',
'graph.nodeDetails': '节点详情',
'graph.selectNode': '选择节点以查看详情',
'graph.impactAnalysis': '影响分析',
'graph.directDependents': '直接依赖',
'graph.affectedFiles': '受影响文件',
'graph.fitView': '适应视图',
'graph.zoomIn': '放大',
'graph.zoomOut': '缩小',
'graph.resetLayout': '重置布局',
// CLI Sync (used in claude-manager.js)
'claude.cliSync': 'CLI 自动同步',
'claude.tool': '工具',