Token导航 LogoToken导航TokenDH.com
研究检索执行命令github未标认证来源可访问许可证需确认审计通过

syncfusion-angular-diagramsyncfusion Angular diagram 搜索

Agent Skill

syncfusion-angular-diagram 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

1,082

周安装

46

GitHub Stars

公开资料未说明

下载量

379
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:syncfusion-angular-diagram(syncfusion Angular diagram 搜索)
来源仓库:https://github.com/syncfusion/angular-ui-components-skills
仓库路径:skills/syncfusion-angular-diagram
安装命令:
npx skills add https://github.com/syncfusion/angular-ui-components-skills --skill syncfusion-angular-diagram
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/syncfusion/angular-ui-components-skills --skill syncfusion-angular-diagram

简介

绘制流程图与架构图组件,支持节点拖拽与连线编辑。

  • 适合在 Codex、Claude、Cursor、Gemini CLI 中设计系统拓扑时使用。
  • 通过 GitHub 仓库安装,使用 npx 命令添加技能并指定路径。
  • 需限制最大画布元素数量,防止浏览器崩溃或响应迟缓。
  • 导出 SVG 时应嵌入字体与颜色信息,保证离线查看效果一致。

SKILL.md

Implementing Syncfusion Angular Diagrams

When to Use This Skill

Use this skill when you need to:

  • Create visual diagrams (flowcharts, org-charts, BPMN, UML)
  • Build interactive diagrams with nodes and connectors
  • Apply layouts (hierarchical, org-chart, mindmap, radial, flowchart)
  • Design BPMN or UML diagrams for business processes
  • Add interaction (drag, resize, selection, undo/redo)
  • Export or serialize diagrams to JSON/images

Important: API Verification Required

API Verification Required: Always verify API class names, properties, and signatures by reading reference files (references/*.md) BEFORE generating code examples. Do not assume or infer class names. ⚠️ Before writing ANY code, review the Common Mistakes section directly below to avoid known invalid APIs and properties.

Component Overview

The Syncfusion Angular Diagram component provides a visual canvas for creating and editing diagrams:

Core Concepts

  1. Nodes - Rectangles, circles, flowchart shapes, custom shapes
  2. Connectors - Lines linking nodes (Straight, Orthogonal, Bezier)
  3. Labels - Text annotations on nodes and connectors
  4. Ports - Connection points on node boundaries
  5. Swimlanes - Horizontal/vertical lanes for process diagrams
  6. Layouts - Automatic positioning (hierarchical, org-chart, mindmap, etc.)
  7. BPMN Shapes - Business process diagram standardized shapes
  8. UML Diagrams - Class and sequence diagram notation
  9. Symbol Palette - Draggable symbol library
  10. Data Binding - Render diagrams from JSON data

Key Features

  • Interactive editing: Drag, resize, rotate nodes and connectors
  • Auto-layout: Hierarchical, org-chart, mindmap, radial, flowchart layouts
  • BPMN & UML: Built-in shape libraries for standard diagrams
  • Serialization: Save/load diagrams as JSON
  • Export: PNG, SVG, PDF image export and print
  • Undo/Redo: Full history support
  • Virtualization: Render large diagrams efficiently
  • Accessibility: WCAG 2.1 compliance with keyboard navigation

Documentation and Navigation Guide

Start with Getting Started, then jump to the specific feature you need:

Core Diagram Building

📄 Read: references/getting-started.md

  • Installation and dependencies
  • Theme setup (material, bootstrap, fabric)
  • CSS/SCSS imports
  • Basic DiagramComponent usage
  • Module injection pattern
  • Standalone component setup

📄 Read: references/nodes.md

  • Creating and adding nodes to diagram
  • Offsetting and positioning (offsetX, offsetY)
  • Node dimensions (width, height)
  • Built-in shapes (Flow, Basic, Path)
  • Custom styling (fill, stroke, opacity)
  • Node templates and appearance
  • Expand/collapse node groups
  • Node events (click, select, drag)
  • getNodeDefaults pattern for style defaults

📄 Read: references/connectors.md

  • Three connector types: Straight, Orthogonal, Bezier
  • Segments configuration and pathfinding
  • sourceID and targetID linking nodes
  • Multiple segments in connectors
  • Bezier control points and orientation
  • Connector customization (stroke, fill, dashing)
  • Connector events and interaction
  • getConnectorDefaults pattern for style defaults

Labels, Ports & Styling

📄 Read: references/labels-and-annotations.md

  • Adding annotations to nodes and connectors
  • Label appearance (font, color, bold, italic, alignment)
  • Positioning labels on connectors (start, end, center)
  • Node labels vs connector labels
  • Label interaction (edit mode, drag, resize)
  • Label events (edit, focus, blur)
  • Formatting with markdown or HTML

📄 Read: references/ports.md

  • Port types and positioning on nodes
  • Appearance customization (shape, fill, size)
  • Connecting connectors to specific ports
  • Connection visibility and constraints
  • Port interaction and visibility
  • getPortDefaults pattern

📄 Read: references/shapes-and-styles.md

  • Built-in shape types: Flow, Basic, Path, Image, HTML, Native SVG
  • Flow chart shapes (process, decision, start, end, etc.)
  • Style properties (fill, stroke, strokeWidth, dashArray, shadow)
  • CSS class and theme customization
  • Gradient and pattern fills

Advanced Diagrams

📄 Read: references/bpmn-diagrams.md

  • BPMN module injection and setup
  • BPMN shapes overview and standard notation
  • Activities (task, subprocess, expanded subprocess, loop)
  • Events (start, end, intermediate catch/throw)
  • Gateways (exclusive, parallel, inclusive, complex)
  • Flows (sequence flow, message flow, association)
  • Data objects and data sources
  • Groups and text annotations
  • BPMN-specific styling and labels

📄 Read: references/uml-diagrams.md

  • UML class diagram shapes
  • Classifier shapes (class, interface, enumeration, package, component)
  • Class attributes, methods, visibility modifiers
  • UML relationships (association, generalization, aggregation, composition)
  • UML sequence diagrams
  • Lifelines, actors, messages (sync, async, return)
  • Interaction frames and combined fragments

Layout & Structure

📄 Read: references/layouts.md

  • Hierarchical tree layout with top-down, bottom-up, left-right, right-left
  • Organizational chart layout
  • Mindmap layout (sub-trees, branches)
  • Radial tree layout
  • Flowchart layout with swimlanes
  • Complex hierarchical tree with extended nodes
  • Automatic layout configuration
  • Layout customization (orientation, spacing, margin)
  • Layout events and completion

📄 Read: references/swimlanes.md

  • Swimlane structure overview (header, children, phases)
  • Creating lanes and phases within swimlanes
  • Swimlane children positioning and constraints
  • Swimlane headers and labeling
  • Swimlane palette integration
  • Swimlane interaction (resize, move, add/remove children)

📄 Read: references/groups-and-containers.md

  • Grouping nodes together
  • Group operations (add/remove children, expand/collapse)
  • Container nodes with padding and layout
  • Child positioning within containers
  • Container constraints

Interaction & Tools

📄 Read: references/symbol-palette.md

  • SymbolPaletteComponent setup and integration
  • Defining palette symbols and categories
  • Drag and drop symbols to diagram
  • Palette customization (icons, search, categories, size)
  • Symbol palette events
  • Creating custom symbol libraries

📄 Read: references/data-binding.md

  • DataManager and dataSourceSettings configuration
  • Mapping data to nodes (id, parentId, nodeTemplate)
  • Rendering organizational charts from JSON data
  • PostgreSQL data source integration
  • setNodeTemplate for data-driven node styling
  • Dynamic data updates and refresh

📄 Read: references/interaction-and-tools.md

  • Node selection, drag, and resize interactions
  • Tool modes (pointer, draw, pan, pan-select)
  • Constraints (node constraints, connector constraints, diagram constraints)
  • Commands (keyboard shortcuts, custom commands)
  • Undo and Redo functionality
  • Context menu (right-click menu)
  • User handles (custom connection handles)

Serialization & Export

📄 Read: references/serialization-and-export.md

  • saveDiagram and loadDiagram (JSON serialization)
  • Export to image formats (PNG, SVG, PDF)
  • Print diagram functionality
  • Visio file import (.vsdx)
  • EJ1 API migration serialization
  • Custom serialization handling

Configuration & Settings

📄 Read: references/diagram-settings.md

  • Layers (add, lock, visibility, ordering)
  • Virtualization (performance optimization for large diagrams)
  • Grid lines (snapping, dots/lines, step size)
  • Ruler (horizontal and vertical measurement rulers)
  • Scroll settings (auto-scroll, pan)
  • Page settings (size, orientation, margin, fit to page)
  • Tooltip configuration
  • Overview panel for navigation
  • Localization and language support
  • Accessibility (WCAG, ARIA labels, keyboard navigation)

Quick Start Example

Here's a minimal diagram to get started:

import { Component, Inject } from '@angular/core';
import { DiagramComponent, DiagramModule } from '@syncfusion/ej2-angular-diagrams';

@Component({
  selector: 'app-diagram',
  template: `
    <ejs-diagram #diagram
      width="100%"
      height="600px"
      [nodes]="nodes"
      [connectors]="connectors">
    </ejs-diagram>
  `,
  standalone: true,
  imports: [DiagramModule]
})
export class DiagramComponent {
  nodes = [
    {
      id: 'start',
      width: 80,
      height: 80,
      offsetX: 150,
      offsetY: 150,
      shape: { type: 'Flow', shape: 'Terminator' },
      annotations: [{ content: 'START' }]
    },
    {
      id: 'process',
      width: 100,
      height: 80,
      offsetX: 350,
      offsetY: 150,
      shape: { type: 'Flow', shape: 'Process' },
      annotations: [{ content: 'Process' }]
    },
    {
      id: 'end',
      width: 80,
      height: 80,
      offsetX: 550,
      offsetY: 150,
      shape: { type: 'Flow', shape: 'Terminator' },
      annotations: [{ content: 'END' }]
    }
  ];

  connectors = [
    { id: 'connector1', sourceID: 'start', targetID: 'process' },
    { id: 'connector2', sourceID: 'process', targetID: 'end' }
  ];
}

For detailed setup, read Getting Started.


Module Injection Pattern

Syncfusion Diagram uses Inject directive for feature registration:

import { Component, Inject } from '@angular/core';
import { BpmnDiagrams, Swimlane, SymbolPalette } from '@syncfusion/ej2-angular-diagrams';
Diagram.Inject(BpmnDiagrams, SymbolPalette)

Always inject the features you use. This keeps bundle size small and makes dependencies explicit.


Common Patterns

1. Get Node/Connector Defaults

getNodeDefaults(node: NodeModel): NodeModel {
  return {
    shape: { type: 'Flow', shape: 'Process' },
    style: { fill: '#90EE90', stroke: '#228B22' }
  };
}

2. Bind Data to Nodes

dataSourceSettings: {
  id: 'id',
  parentId: 'parentId',
  dataSource: yourDataArray
}

3. Handle Selection

diagram.selectionChange((args) => {
  console.log('Selected:', args.newItems);
});

4. Export Diagram

diagram.exportDiagram({format: 'PNG', fileName: 'diagram'});

5. Serialize Diagram

const diagramData = diagram.saveDiagram();
localStorage.setItem('diagram', JSON.stringify(diagramData));

Common Mistakes

❌ Shape Type Errors

Mistake:

// ❌ WRONG - Shape type should be 'Flow', not 'FlowShape'
shape: { type: 'FlowShape', shape: 'Process' }

Correct:

// ✅ CORRECT - Use 'Flow' for flowchart shapes
shape: { type: 'Flow', shape: 'Process' }

// ✅ CORRECT - Use 'Bpmn' for BPMN shapes
shape: { type: 'Bpmn', shape: 'Task' }

// ✅ CORRECT - Use 'Basic' for basic geometries
shape: { type: 'Basic', shape: 'Rectangle' }

Reference: references/shapes-and-styles.md

❌ Invalid Module in Diagram.Inject()

Wrong:

// ❌ Swimlane is NOT an injectable module
Diagram.Inject(BpmnDiagrams, Swimlane);

Correct:

// ✅ Only inject verified documented modules
Diagram.Inject(BpmnDiagrams);
📄 Verify injectable modules in: references/bpmn-diagrams.md, references/swimlanes.md

whiteSpace Does Not Exist in Annotation Style

Wrong:

// ❌ whiteSpace is NOT a valid TextStyleModel property
annotations: [{
  content: 'Multi\nLine',
  style: { fontSize: 11, whiteSpace: 'pre-wrap' }  // ❌
}]

Correct:

// ✅ Use \n in content — valid style props:
// fontSize, color, bold, italic, fontFamily,
// opacity, strokeColor, strokeWidth, fill
annotations: [{
  content: 'Multi\nLine',
  style: { fontSize: 11, color: '#000', bold: true }
}]
📄 Verify annotation style properties in: references/labels-and-annotations.md

updateNode() Does Not Exist on DiagramComponent

Wrong:

// ❌ updateNode() does not exist in EJ2 Diagram API
this.diagram.updateNode('nodeId', { style: { fill: '#ff0000' } });

Correct:

// ✅ getObject() → mutate property → dataBind()
const node = this.diagram.getObject('nodeId') as NodeModel;
if (node) {
  node.style!.fill = '#ff0000';
  this.diagram.dataBind(); // ← always required after mutation
}
📄 Verify runtime APIs in: references/nodes.md

❌ Data Binding Configuration

Mistake:

// ❌ WRONG - Missing proper data source setup
nodes = this.employeeData; // Direct array assignment

Correct:

// ✅ CORRECT - Use dataSourceSettings with proper mapping
dataSourceSettings: {
  id: 'EmployeeID',
  parentId: 'ReportingManagerID',
  dataSource: this.employeeData
}

// Then configure setNodeTemplate for rendering:
setNodeTemplate(obj: NodeModel): void {
  // obj contains the data row
  obj.width = 100;
  obj.height = 60;
  obj.annotations = [{
    content: obj.data.EmployeeName
  }];
}

Reference: references/data-binding.md

❌ Standalone Component Setup

Mistake:

// ❌ WRONG - Using traditional decorator without standalone
@Component({
  selector: 'app-diagram',
  templateUrl: './component.html',
  imports: [DiagramModule]
  // Missing: standalone: true
})

Correct:

// ✅ CORRECT - Mark as standalone component
@Component({
  selector: 'app-diagram',
  templateUrl: './component.html',
  standalone: true,     // ← Add this
  imports: [CommonModule, DiagramModule],
})

Reference: references/getting-started.md

⚠️ Performance Tips

  • Virtualization: For diagrams with 1000+ nodes, enable virtualization in references/diagram-settings.md
  • Layout Performance: Pre-compute positions for complex hierarchies
  • Connector Updates: Use connectorChanges instead of recreating connectors
  • Export Large Diagrams: Use incremental approach for PDFs > 50MB

Next Steps

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

36.83%
按下载量换算140

Claude

30.97%
按下载量换算117

Cursor

20.22%
按下载量换算77

Gemini CLI

9.11%
按下载量换算35

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

执行命令

安装流程涉及命令执行,可能通过 npx skills add https://github.com/syncfusion/angular-ui-components-skills --skill syncfusion-angular-diagram 联网下载 Skill 或依赖。用户安装前应确认命令来源、仓库内容和执行环境。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills