gitextract_9ptgz9cu/ ├── .changeset/ │ └── config.json ├── .codecov.yml ├── .commitlintrc.js ├── .cursor/ │ └── rules/ │ └── translation.mdc ├── .editorconfig ├── .eslintignore ├── .eslintrc.js ├── .github/ │ ├── ISSUE_TEMPLATE/ │ │ ├── 1.bug_report.yml │ │ ├── 2.feature_request.yml │ │ ├── 3.docs_feedback.yml │ │ ├── 4.oscp.yml │ │ ├── config.yml │ │ └── oscp.yml │ └── workflows/ │ ├── build.yml │ ├── deploy.yml │ ├── ensure-triage-label.yml │ ├── issue-automated.yml │ ├── issue_translate.yml │ ├── manage-labeled.yml │ ├── mark-duplicate.yml │ ├── no-response.yml │ ├── publish.yml │ ├── resolved-pending-release.yml │ ├── scripts/ │ │ ├── closeOnRelease.js │ │ ├── issue-automated.js │ │ └── updateYuque.js │ └── update-yuque.yml ├── .gitignore ├── .husky/ │ ├── commit-msg │ └── pre-commit ├── .prettierignore ├── .prettierrc.js ├── .vscode/ │ └── settings.json ├── CHANGELOG.md ├── LICENSE ├── PUBLISH.md ├── README.md ├── README.zh-CN.md ├── SECURITY.md ├── package.json ├── packages/ │ ├── bundle/ │ │ ├── index.html │ │ ├── package.json │ │ ├── rollup.config.mjs │ │ ├── src/ │ │ │ └── index.ts │ │ ├── tsconfig.json │ │ ├── vite.config.js │ │ └── webpack.config.js │ ├── cli/ │ │ ├── CHANGELOG.md │ │ ├── README.md │ │ ├── build.config.ts │ │ ├── index.js │ │ ├── package.json │ │ ├── src/ │ │ │ └── index.ts │ │ ├── template-extension/ │ │ │ ├── .commitlintrc.js │ │ │ ├── .editorconfig │ │ │ ├── .eslintignore │ │ │ ├── .eslintrc.js │ │ │ ├── .gitignore │ │ │ ├── .prettierignore │ │ │ ├── .prettierrc.js │ │ │ ├── __tests__/ │ │ │ │ ├── demos/ │ │ │ │ │ ├── element-node-extend.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── index.html │ │ │ │ ├── main.ts │ │ │ │ ├── setup.ts │ │ │ │ ├── types.d.ts │ │ │ │ ├── unit/ │ │ │ │ │ ├── default.spec.ts │ │ │ │ │ └── elements/ │ │ │ │ │ └── nodes/ │ │ │ │ │ └── extend.spec.ts │ │ │ │ └── utils/ │ │ │ │ ├── create.ts │ │ │ │ ├── dir.ts │ │ │ │ ├── index.ts │ │ │ │ ├── offscreen-canvas-context.ts │ │ │ │ ├── sleep.ts │ │ │ │ ├── svg-transformer.js │ │ │ │ ├── to-match-svg-snapshot.ts │ │ │ │ └── use-snapshot-matchers.ts │ │ │ ├── jest.config.js │ │ │ ├── package.json │ │ │ ├── rollup.config.mjs │ │ │ ├── src/ │ │ │ │ ├── elements/ │ │ │ │ │ ├── index.ts │ │ │ │ │ └── nodes/ │ │ │ │ │ ├── extend-node.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── exports.ts │ │ │ │ └── index.ts │ │ │ ├── tsconfig.build.json │ │ │ ├── tsconfig.json │ │ │ └── vite.config.js │ │ └── tsconfig.json │ ├── g6/ │ │ ├── .gitignore │ │ ├── __tests__/ │ │ │ ├── .eslintrc │ │ │ ├── bugs/ │ │ │ │ ├── api-expand-element-z-index.spec.ts │ │ │ │ ├── api-focus-element-edge.spec.ts │ │ │ │ ├── behaviors-click-select-drag-node.spec.ts │ │ │ │ ├── behaviors-click-select.spec.ts │ │ │ │ ├── behaviors-collapse-expand.spec.ts │ │ │ │ ├── behaviors-drag-element-combo.spec.ts │ │ │ │ ├── behaviors-drag-rotated-canvas.spec.ts │ │ │ │ ├── behaviors-multiple-conflict.spec.ts │ │ │ │ ├── brush-select.spec.ts │ │ │ │ ├── continuous-invoke.spec.ts │ │ │ │ ├── element-combo-drag.spec.ts │ │ │ │ ├── element-custom-state-switch.spec.ts │ │ │ │ ├── element-edge-update-arrow.spec.ts │ │ │ │ ├── element-node-collapse.spec.ts │ │ │ │ ├── element-node-icon-switch.spec.ts │ │ │ │ ├── element-node-update-badge.spec.ts │ │ │ │ ├── element-orth-router.spec.ts │ │ │ │ ├── element-port-rotate.spec.ts │ │ │ │ ├── element-remove-combo.spec.ts │ │ │ │ ├── element-set-position-to-origin.spec.ts │ │ │ │ ├── fit-view.spec.ts │ │ │ │ ├── focus-element.spec.ts │ │ │ │ ├── graph-draw-after-clear.spec.ts │ │ │ │ ├── model-add-edge-in-combo.spec.ts │ │ │ │ ├── model-remove-parent.spec.ts │ │ │ │ ├── plugin-history-align-fields.spec.ts │ │ │ │ ├── plugin-hull-three-collinear-dots.spec.ts │ │ │ │ ├── plugin-minimap-combo-collapsed.spec.ts │ │ │ │ ├── render-change-combo.spec.ts │ │ │ │ ├── render-deleted-data.spec.ts │ │ │ │ ├── tree-update-collapsed-node.spec.ts │ │ │ │ └── utils-set-visibility.spec.ts │ │ │ ├── dataset/ │ │ │ │ ├── algorithm-category.json │ │ │ │ ├── circular.json │ │ │ │ ├── cluster.json │ │ │ │ ├── combo.json │ │ │ │ ├── dagre-combo.json │ │ │ │ ├── dagre.json │ │ │ │ ├── decision-tree.json │ │ │ │ ├── element-edges.json │ │ │ │ ├── element-nodes.json │ │ │ │ ├── file-system.json │ │ │ │ ├── flare.json │ │ │ │ ├── force.json │ │ │ │ ├── gene.json │ │ │ │ ├── language-tree.json │ │ │ │ ├── organization-chart.json │ │ │ │ ├── parallel-edges.json │ │ │ │ ├── radial.json │ │ │ │ ├── relations.json │ │ │ │ └── soccer.json │ │ │ ├── demos/ │ │ │ │ ├── animation-element-edge-cubic.ts │ │ │ │ ├── animation-element-edge-line.ts │ │ │ │ ├── animation-element-edge-quadratic.ts │ │ │ │ ├── animation-element-position.ts │ │ │ │ ├── animation-element-state-switch.ts │ │ │ │ ├── animation-element-state.ts │ │ │ │ ├── animation-element-style-position.ts │ │ │ │ ├── behavior-auto-adapt-label.ts │ │ │ │ ├── behavior-brush-select.ts │ │ │ │ ├── behavior-click-select.ts │ │ │ │ ├── behavior-create-edge.ts │ │ │ │ ├── behavior-drag-canvas.ts │ │ │ │ ├── behavior-drag-element.ts │ │ │ │ ├── behavior-expand-collapse-combo.ts │ │ │ │ ├── behavior-expand-collapse-node.ts │ │ │ │ ├── behavior-fix-element-size.ts │ │ │ │ ├── behavior-focus-element.ts │ │ │ │ ├── behavior-hover-activate.ts │ │ │ │ ├── behavior-lasso-select.ts │ │ │ │ ├── behavior-optimize-viewport-transform.ts │ │ │ │ ├── behavior-scroll-canvas.ts │ │ │ │ ├── behavior-zoom-canvas.ts │ │ │ │ ├── bug-drag-rotated-canvas.ts │ │ │ │ ├── bug-drag-rotated-element-force.ts │ │ │ │ ├── bug-process-parallel-edges-combo-fixed.ts │ │ │ │ ├── bug-tooltip-resize.ts │ │ │ │ ├── canvas-cursor.ts │ │ │ │ ├── case-fishbone.ts │ │ │ │ ├── case-fund-flow.ts │ │ │ │ ├── case-indented-tree.ts │ │ │ │ ├── case-language-tree.ts │ │ │ │ ├── case-mindmap.ts │ │ │ │ ├── case-org-chart.ts │ │ │ │ ├── case-radial-dendrogram.ts │ │ │ │ ├── case-unicorns-investors.ts │ │ │ │ ├── case-why-do-cats.ts │ │ │ │ ├── common-graph.ts │ │ │ │ ├── controller-viewport.ts │ │ │ │ ├── demo-autosize-element-label.ts │ │ │ │ ├── demo-found-flow.ts │ │ │ │ ├── demo-supply-chains.ts │ │ │ │ ├── element-change-type.ts │ │ │ │ ├── element-combo.ts │ │ │ │ ├── element-edge-arrow.ts │ │ │ │ ├── element-edge-cubic-horizontal.ts │ │ │ │ ├── element-edge-cubic-radial.ts │ │ │ │ ├── element-edge-cubic-vertical.ts │ │ │ │ ├── element-edge-cubic.ts │ │ │ │ ├── element-edge-custom-arrow.ts │ │ │ │ ├── element-edge-line.ts │ │ │ │ ├── element-edge-loop-curve.ts │ │ │ │ ├── element-edge-loop-polyline.ts │ │ │ │ ├── element-edge-polyline-animation.ts │ │ │ │ ├── element-edge-polyline-astar.ts │ │ │ │ ├── element-edge-polyline-orth.ts │ │ │ │ ├── element-edge-polyline.ts │ │ │ │ ├── element-edge-port.ts │ │ │ │ ├── element-edge-quadratic.ts │ │ │ │ ├── element-edge-size.ts │ │ │ │ ├── element-html-sub-graph.ts │ │ │ │ ├── element-label-background.ts │ │ │ │ ├── element-label-oversized.ts │ │ │ │ ├── element-node-avatar.ts │ │ │ │ ├── element-node-badges.ts │ │ │ │ ├── element-node-circle.ts │ │ │ │ ├── element-node-diamond.ts │ │ │ │ ├── element-node-donut.ts │ │ │ │ ├── element-node-ellipse.ts │ │ │ │ ├── element-node-hexagon.ts │ │ │ │ ├── element-node-html-2.ts │ │ │ │ ├── element-node-html.ts │ │ │ │ ├── element-node-image.ts │ │ │ │ ├── element-node-rect.ts │ │ │ │ ├── element-node-star.ts │ │ │ │ ├── element-node-svg-icon.ts │ │ │ │ ├── element-node-triangle.ts │ │ │ │ ├── element-port.ts │ │ │ │ ├── element-position-combo.ts │ │ │ │ ├── element-position.ts │ │ │ │ ├── element-state.ts │ │ │ │ ├── element-visibility-part.ts │ │ │ │ ├── element-visibility.ts │ │ │ │ ├── element-z-index.ts │ │ │ │ ├── graph-to-data-url.ts │ │ │ │ ├── image-node-halo-test.ts │ │ │ │ ├── index.ts │ │ │ │ ├── layout-antv-dagre-flow-combo.ts │ │ │ │ ├── layout-antv-dagre-flow.ts │ │ │ │ ├── layout-circular-basic.ts │ │ │ │ ├── layout-circular-configuration-translate.ts │ │ │ │ ├── layout-circular-degree.ts │ │ │ │ ├── layout-circular-division.ts │ │ │ │ ├── layout-circular-spiral.ts │ │ │ │ ├── layout-combo-combined.ts │ │ │ │ ├── layout-compact-box-basic.ts │ │ │ │ ├── layout-compact-box-left-align.ts │ │ │ │ ├── layout-compact-box-top-to-bottom.ts │ │ │ │ ├── layout-concentric.ts │ │ │ │ ├── layout-custom-dagre.ts │ │ │ │ ├── layout-custom-horizontal.ts │ │ │ │ ├── layout-custom-iterative.ts │ │ │ │ ├── layout-d3-force.ts │ │ │ │ ├── layout-dagre.ts │ │ │ │ ├── layout-dendrogram-basic.ts │ │ │ │ ├── layout-dendrogram-radial.ts │ │ │ │ ├── layout-dendrogram-tb.ts │ │ │ │ ├── layout-fishbone.ts │ │ │ │ ├── layout-force-collision.ts │ │ │ │ ├── layout-force-lattice.ts │ │ │ │ ├── layout-force.ts │ │ │ │ ├── layout-forceatlas2-wasm.ts │ │ │ │ ├── layout-fruchterman-basic.ts │ │ │ │ ├── layout-fruchterman-cluster.ts │ │ │ │ ├── layout-fruchterman-fix.ts │ │ │ │ ├── layout-fruchterman-gpu.ts │ │ │ │ ├── layout-fruchterman-wasm.ts │ │ │ │ ├── layout-grid.ts │ │ │ │ ├── layout-indented.ts │ │ │ │ ├── layout-mds.ts │ │ │ │ ├── layout-mindmap-h-custom-side.ts │ │ │ │ ├── layout-mindmap-h-left.ts │ │ │ │ ├── layout-mindmap-h-right.ts │ │ │ │ ├── layout-mindmap-h.ts │ │ │ │ ├── layout-pipeline-mds-force.ts │ │ │ │ ├── layout-radial-basic.ts │ │ │ │ ├── layout-radial-configuration-translate.ts │ │ │ │ ├── layout-radial-prevent-overlap-unstrict.ts │ │ │ │ ├── layout-radial-prevent-overlap.ts │ │ │ │ ├── layout-radial-sort.ts │ │ │ │ ├── layout-snake.ts │ │ │ │ ├── perf-20000-elements.ts │ │ │ │ ├── perf-fcp.ts │ │ │ │ ├── plugin-background.ts │ │ │ │ ├── plugin-bubble-sets.ts │ │ │ │ ├── plugin-camera-setting.ts │ │ │ │ ├── plugin-contextmenu.ts │ │ │ │ ├── plugin-edge-bundling.ts │ │ │ │ ├── plugin-edge-filter-lens.ts │ │ │ │ ├── plugin-fisheye.ts │ │ │ │ ├── plugin-fullscreen.ts │ │ │ │ ├── plugin-grid-line.ts │ │ │ │ ├── plugin-history.ts │ │ │ │ ├── plugin-hull.ts │ │ │ │ ├── plugin-legend.ts │ │ │ │ ├── plugin-minimap-edge-arrow.ts │ │ │ │ ├── plugin-minimap.ts │ │ │ │ ├── plugin-snapline.ts │ │ │ │ ├── plugin-timebar.ts │ │ │ │ ├── plugin-title.ts │ │ │ │ ├── plugin-toolbar-build-in.ts │ │ │ │ ├── plugin-toolbar-iconfont.ts │ │ │ │ ├── plugin-tooltip-async.ts │ │ │ │ ├── plugin-tooltip-dual.ts │ │ │ │ ├── plugin-tooltip-enable.ts │ │ │ │ ├── plugin-tooltip-with-custom-node.ts │ │ │ │ ├── plugin-tooltip.ts │ │ │ │ ├── plugin-watermark-image.ts │ │ │ │ ├── plugin-watermark.ts │ │ │ │ ├── theme.ts │ │ │ │ ├── transform-map-node-size.ts │ │ │ │ ├── transform-place-radial-labels.ts │ │ │ │ ├── transform-process-parallel-edges.ts │ │ │ │ └── viewport-fit.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── perf/ │ │ │ │ ├── data.perf.ts │ │ │ │ ├── draw.perf.ts │ │ │ │ ├── massive-element.perf.ts │ │ │ │ └── update-state.perf.ts │ │ │ ├── perf-report/ │ │ │ │ ├── 9821ed36_2024-08-22_20-39-12.json │ │ │ │ ├── 9821ed36_2024-08-29_11-11-17.json │ │ │ │ ├── 9821ed36_2024-08-29_13-24-51.json │ │ │ │ ├── 9821ed36_2024-09-03_10-33-27.json │ │ │ │ └── 9821ed36_2024-09-03_11-28-42.json │ │ │ ├── setup.ts │ │ │ ├── types.d.ts │ │ │ ├── unit/ │ │ │ │ ├── animations/ │ │ │ │ │ ├── element-position.spec.ts │ │ │ │ │ ├── element-state-switch.spec.ts │ │ │ │ │ └── element-style-position.spec.ts │ │ │ │ ├── behaviors/ │ │ │ │ │ ├── auto-adapt-label.spec.ts │ │ │ │ │ ├── behavior-create-edge-click.spec.ts │ │ │ │ │ ├── behavior-create-edge-drag.spec.ts │ │ │ │ │ ├── brush-select.spec.ts │ │ │ │ │ ├── click-select-catch.spec.ts │ │ │ │ │ ├── click-select.spec.ts │ │ │ │ │ ├── collapse-expand-combo.spec.ts │ │ │ │ │ ├── collapse-expand-node.spec.ts │ │ │ │ │ ├── collapse-expand.spec.ts │ │ │ │ │ ├── drag-canvas.spec.ts │ │ │ │ │ ├── drag-element-bug.spec.ts │ │ │ │ │ ├── drag-element-combo.spec.ts │ │ │ │ │ ├── drag-element.spec.ts │ │ │ │ │ ├── fix-element-size.spec.ts │ │ │ │ │ ├── focus-element.spec.ts │ │ │ │ │ ├── hover-activate.spec.ts │ │ │ │ │ ├── lasso-select.spec.ts │ │ │ │ │ ├── optimize-viewport-transform.spec.ts │ │ │ │ │ ├── scroll-canvas.spec.ts │ │ │ │ │ └── zoom-canvas.spec.ts │ │ │ │ ├── default.spec.ts │ │ │ │ ├── elements/ │ │ │ │ │ ├── change-type.spec.ts │ │ │ │ │ ├── combo.spec.ts │ │ │ │ │ ├── edges/ │ │ │ │ │ │ ├── arrow.spec.ts │ │ │ │ │ │ ├── cubic-horizontal.spec.ts │ │ │ │ │ │ ├── cubic-radial.spec.ts │ │ │ │ │ │ ├── cubic-vertical.spec.ts │ │ │ │ │ │ ├── cubic.spec.ts │ │ │ │ │ │ ├── custom-arrow.spec.ts │ │ │ │ │ │ ├── line.spec.ts │ │ │ │ │ │ ├── loop-curve.spec.ts │ │ │ │ │ │ ├── loop-polyline.spec.ts │ │ │ │ │ │ ├── polyline-animation.spec.ts │ │ │ │ │ │ ├── polyline-astar.spec.ts │ │ │ │ │ │ ├── polyline-orth.spec.ts │ │ │ │ │ │ ├── polyline.spec.ts │ │ │ │ │ │ ├── port.spec.ts │ │ │ │ │ │ ├── quadratic.spec.ts │ │ │ │ │ │ └── size.spec.ts │ │ │ │ │ ├── label-background.spec.ts │ │ │ │ │ ├── label-oversized.spec.ts │ │ │ │ │ ├── nodes/ │ │ │ │ │ │ ├── avatar.spec.ts │ │ │ │ │ │ ├── circle.spec.ts │ │ │ │ │ │ ├── diamond.spec.ts │ │ │ │ │ │ ├── donut.spec.ts │ │ │ │ │ │ ├── ellipse.spec.ts │ │ │ │ │ │ ├── hexagon.spec.ts │ │ │ │ │ │ ├── image.spec.ts │ │ │ │ │ │ ├── rect.spec.ts │ │ │ │ │ │ ├── star.spec.ts │ │ │ │ │ │ └── triangle.spec.ts │ │ │ │ │ ├── override-methods.spec.ts │ │ │ │ │ ├── port.spec.ts │ │ │ │ │ ├── position-combo.spec.ts │ │ │ │ │ ├── position.spec.ts │ │ │ │ │ ├── shape.spec.ts │ │ │ │ │ ├── state.spec.ts │ │ │ │ │ ├── visibility.spec.ts │ │ │ │ │ └── z-index.spec.ts │ │ │ │ ├── import.spec.ts │ │ │ │ ├── layouts/ │ │ │ │ │ ├── circular.spec.ts │ │ │ │ │ ├── combo-layout.spec.ts │ │ │ │ │ ├── compact-box.spec.ts │ │ │ │ │ ├── concentric.spec.ts │ │ │ │ │ ├── custom-dagre.spec.ts │ │ │ │ │ ├── custom-layout-horizontal.spec.ts │ │ │ │ │ ├── d3-force-collision.spec.ts │ │ │ │ │ ├── d3-force-lattice.spec.ts │ │ │ │ │ ├── d3-force.spec.ts │ │ │ │ │ ├── dagre.spec.ts │ │ │ │ │ ├── dendrogram.spec.ts │ │ │ │ │ ├── fishbone.spec.ts │ │ │ │ │ ├── fruchterman.spec.ts │ │ │ │ │ ├── grid.spec.ts │ │ │ │ │ ├── indented.spec.ts │ │ │ │ │ ├── mds.spec.ts │ │ │ │ │ ├── mindmap.spec.ts │ │ │ │ │ ├── pipeline.spec.ts │ │ │ │ │ ├── radial-layout.spec.ts │ │ │ │ │ └── snake.spec.ts │ │ │ │ ├── plugins/ │ │ │ │ │ ├── background.spec.ts │ │ │ │ │ ├── bubble-sets.spec.ts │ │ │ │ │ ├── camera-setting.spec.ts │ │ │ │ │ ├── contextmenu.spec.ts │ │ │ │ │ ├── edge-bundling.spec.ts │ │ │ │ │ ├── edge-filter-lens.spec.ts │ │ │ │ │ ├── fisheye.spec.ts │ │ │ │ │ ├── grid-line.spec.ts │ │ │ │ │ ├── history/ │ │ │ │ │ │ ├── plugin-history.spec.ts │ │ │ │ │ │ └── utils.spec.ts │ │ │ │ │ ├── hull/ │ │ │ │ │ │ ├── plugin-hull.spec.ts │ │ │ │ │ │ └── util.spec.ts │ │ │ │ │ ├── legend.spec.ts │ │ │ │ │ ├── snapline.spec.ts │ │ │ │ │ ├── timebar.spec.ts │ │ │ │ │ ├── title.spec.ts │ │ │ │ │ ├── toolbar/ │ │ │ │ │ │ ├── plugin-toolbar.spec.ts │ │ │ │ │ │ └── util.spec.ts │ │ │ │ │ ├── tooltip.spec.ts │ │ │ │ │ ├── utils/ │ │ │ │ │ │ └── dom.spec.ts │ │ │ │ │ └── watermark.spec.ts │ │ │ │ ├── registry.spec.ts │ │ │ │ ├── runtime/ │ │ │ │ │ ├── canvas.spec.ts │ │ │ │ │ ├── data.spec.ts │ │ │ │ │ ├── element/ │ │ │ │ │ │ ├── event.spec.ts │ │ │ │ │ │ ├── state.spec.ts │ │ │ │ │ │ ├── visibility.spec.ts │ │ │ │ │ │ └── z-index.spec.ts │ │ │ │ │ ├── element.spec.ts │ │ │ │ │ ├── graph/ │ │ │ │ │ │ ├── add-children-data.spec.ts │ │ │ │ │ │ ├── auto-resize.spec.ts │ │ │ │ │ │ ├── event.spec.ts │ │ │ │ │ │ ├── get-plugin-instantce.spec.ts │ │ │ │ │ │ ├── graph.spec.ts │ │ │ │ │ │ └── this.spec.ts │ │ │ │ │ ├── layout.spec.ts │ │ │ │ │ └── viewport.spec.ts │ │ │ │ ├── spec/ │ │ │ │ │ ├── behavior.spec.ts │ │ │ │ │ ├── canvas.spec.ts │ │ │ │ │ ├── data.spec.ts │ │ │ │ │ ├── element/ │ │ │ │ │ │ ├── combo.spec.ts │ │ │ │ │ │ ├── edge.spec.ts │ │ │ │ │ │ └── node.spec.ts │ │ │ │ │ ├── index.spec.ts │ │ │ │ │ ├── layout.spec.ts │ │ │ │ │ ├── optimize.spec.ts │ │ │ │ │ ├── plugin.spec.ts │ │ │ │ │ ├── theme.spec.ts │ │ │ │ │ └── viewport.spec.ts │ │ │ │ ├── themes/ │ │ │ │ │ └── base.spec.ts │ │ │ │ ├── transforms/ │ │ │ │ │ ├── base-transform.spec.ts │ │ │ │ │ ├── transform-map-node-size.spec.ts │ │ │ │ │ ├── transform-position-radial-labels.spec.ts │ │ │ │ │ └── transform-process-parallel-edges.spec.ts │ │ │ │ ├── utils/ │ │ │ │ │ ├── anchor.spec.ts │ │ │ │ │ ├── animation.spec.ts │ │ │ │ │ ├── array.spec.ts │ │ │ │ │ ├── bbox.spec.ts │ │ │ │ │ ├── cache.spec.ts │ │ │ │ │ ├── change.spec.ts │ │ │ │ │ ├── collapsibility.spec.ts │ │ │ │ │ ├── contextmenu.spec.ts │ │ │ │ │ ├── data.spec.ts │ │ │ │ │ ├── diff.spec.ts │ │ │ │ │ ├── dom.spec.ts │ │ │ │ │ ├── edge.spec.ts │ │ │ │ │ ├── element.spec.ts │ │ │ │ │ ├── event.spec.ts │ │ │ │ │ ├── extension.spec.ts │ │ │ │ │ ├── graphlib.spec.ts │ │ │ │ │ ├── id.spec.ts │ │ │ │ │ ├── is.spec.ts │ │ │ │ │ ├── layout.spec.ts │ │ │ │ │ ├── line.spec.ts │ │ │ │ │ ├── math.spec.ts │ │ │ │ │ ├── padding.spec.ts │ │ │ │ │ ├── palette.spec.ts │ │ │ │ │ ├── path.spec.ts │ │ │ │ │ ├── placement.spec.ts │ │ │ │ │ ├── point.spec.ts │ │ │ │ │ ├── polygon.spec.ts │ │ │ │ │ ├── position.spec.ts │ │ │ │ │ ├── prefix.spec.ts │ │ │ │ │ ├── print.spec.ts │ │ │ │ │ ├── random.spec.ts │ │ │ │ │ ├── relation.spec.ts │ │ │ │ │ ├── router.spec.ts │ │ │ │ │ ├── scale.spec.ts │ │ │ │ │ ├── shape.spec.ts │ │ │ │ │ ├── shortcut.spec.ts │ │ │ │ │ ├── size.spec.ts │ │ │ │ │ ├── state.spec.ts │ │ │ │ │ ├── style.spec.ts │ │ │ │ │ ├── symbol.spec.ts │ │ │ │ │ ├── text.spec.ts │ │ │ │ │ ├── theme.spec.ts │ │ │ │ │ ├── traverse.spec.ts │ │ │ │ │ ├── tree.spec.ts │ │ │ │ │ ├── vector.spec.ts │ │ │ │ │ ├── visibility.spec.ts │ │ │ │ │ └── z-index.spec.ts │ │ │ │ └── version.spec.ts │ │ │ └── utils/ │ │ │ ├── canvas.ts │ │ │ ├── create.ts │ │ │ ├── dir.ts │ │ │ ├── dom.ts │ │ │ ├── index.ts │ │ │ ├── offscreen-canvas-context.ts │ │ │ ├── random.ts │ │ │ ├── sleep.ts │ │ │ ├── svg-transformer.js │ │ │ ├── to-be-close-to.ts │ │ │ ├── to-match-svg-snapshot.ts │ │ │ └── use-snapshot-matchers.ts │ │ ├── jest.config.js │ │ ├── package.json │ │ ├── perf.config.js │ │ ├── rollup.config.mjs │ │ ├── scripts/ │ │ │ ├── tag.mjs │ │ │ └── version.mjs │ │ ├── src/ │ │ │ ├── animations/ │ │ │ │ ├── executor.ts │ │ │ │ ├── index.ts │ │ │ │ └── types.ts │ │ │ ├── behaviors/ │ │ │ │ ├── auto-adapt-label.ts │ │ │ │ ├── base-behavior.ts │ │ │ │ ├── brush-select.ts │ │ │ │ ├── click-select.ts │ │ │ │ ├── collapse-expand.ts │ │ │ │ ├── create-edge.ts │ │ │ │ ├── drag-canvas.ts │ │ │ │ ├── drag-element-force.ts │ │ │ │ ├── drag-element.ts │ │ │ │ ├── fix-element-size.ts │ │ │ │ ├── focus-element.ts │ │ │ │ ├── hover-activate.ts │ │ │ │ ├── index.ts │ │ │ │ ├── lasso-select.ts │ │ │ │ ├── optimize-viewport-transform.ts │ │ │ │ ├── scroll-canvas.ts │ │ │ │ ├── types.ts │ │ │ │ └── zoom-canvas.ts │ │ │ ├── constants/ │ │ │ │ ├── animation.ts │ │ │ │ ├── change.ts │ │ │ │ ├── element.ts │ │ │ │ ├── events/ │ │ │ │ │ ├── animation.ts │ │ │ │ │ ├── canvas.ts │ │ │ │ │ ├── combo.ts │ │ │ │ │ ├── common.ts │ │ │ │ │ ├── container.ts │ │ │ │ │ ├── edge.ts │ │ │ │ │ ├── graph.ts │ │ │ │ │ ├── history.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── node.ts │ │ │ │ ├── graphlib.ts │ │ │ │ ├── index.ts │ │ │ │ └── registry.ts │ │ │ ├── elements/ │ │ │ │ ├── base-element.ts │ │ │ │ ├── combos/ │ │ │ │ │ ├── base-combo.ts │ │ │ │ │ ├── circle.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── rect.ts │ │ │ │ ├── edges/ │ │ │ │ │ ├── base-edge.ts │ │ │ │ │ ├── cubic-horizontal.ts │ │ │ │ │ ├── cubic-radial.ts │ │ │ │ │ ├── cubic-vertical.ts │ │ │ │ │ ├── cubic.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── line.ts │ │ │ │ │ ├── polyline.ts │ │ │ │ │ └── quadratic.ts │ │ │ │ ├── effect.ts │ │ │ │ ├── index.ts │ │ │ │ ├── nodes/ │ │ │ │ │ ├── base-node.ts │ │ │ │ │ ├── circle.ts │ │ │ │ │ ├── diamond.ts │ │ │ │ │ ├── donut.ts │ │ │ │ │ ├── ellipse.ts │ │ │ │ │ ├── hexagon.ts │ │ │ │ │ ├── html.ts │ │ │ │ │ ├── image.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ ├── rect.ts │ │ │ │ │ ├── star.ts │ │ │ │ │ └── triangle.ts │ │ │ │ └── shapes/ │ │ │ │ ├── badge.ts │ │ │ │ ├── base-shape.ts │ │ │ │ ├── contour.ts │ │ │ │ ├── icon.ts │ │ │ │ ├── image.ts │ │ │ │ ├── index.ts │ │ │ │ ├── label.ts │ │ │ │ └── polygon.ts │ │ │ ├── exports.ts │ │ │ ├── global.d.ts │ │ │ ├── index.ts │ │ │ ├── layouts/ │ │ │ │ ├── base-layout.ts │ │ │ │ ├── fishbone.ts │ │ │ │ ├── index.ts │ │ │ │ ├── snake.ts │ │ │ │ └── types.ts │ │ │ ├── palettes/ │ │ │ │ ├── index.ts │ │ │ │ └── types.ts │ │ │ ├── plugins/ │ │ │ │ ├── background/ │ │ │ │ │ └── index.ts │ │ │ │ ├── base-plugin.ts │ │ │ │ ├── bubble-sets.ts │ │ │ │ ├── camera-setting.ts │ │ │ │ ├── contextmenu/ │ │ │ │ │ ├── index.ts │ │ │ │ │ └── util.ts │ │ │ │ ├── edge-bundling/ │ │ │ │ │ └── index.ts │ │ │ │ ├── edge-filter-lens/ │ │ │ │ │ └── index.ts │ │ │ │ ├── fisheye/ │ │ │ │ │ └── index.ts │ │ │ │ ├── fullscreen/ │ │ │ │ │ └── index.ts │ │ │ │ ├── grid-line.ts │ │ │ │ ├── history/ │ │ │ │ │ ├── index.ts │ │ │ │ │ └── util.ts │ │ │ │ ├── hull/ │ │ │ │ │ ├── hull/ │ │ │ │ │ │ ├── format.ts │ │ │ │ │ │ ├── grid_handle.ts │ │ │ │ │ │ ├── index.ts │ │ │ │ │ │ ├── monotone-convex-hull-2d.ts │ │ │ │ │ │ ├── robust-orientation.ts │ │ │ │ │ │ ├── robust-scale.ts │ │ │ │ │ │ ├── robust-segment-intersect.ts │ │ │ │ │ │ ├── robust-subtract.ts │ │ │ │ │ │ ├── robust-sum.ts │ │ │ │ │ │ ├── two-product.ts │ │ │ │ │ │ └── two-sum.ts │ │ │ │ │ ├── index.ts │ │ │ │ │ └── util.ts │ │ │ │ ├── index.ts │ │ │ │ ├── legend.ts │ │ │ │ ├── minimap/ │ │ │ │ │ └── index.ts │ │ │ │ ├── snapline/ │ │ │ │ │ └── index.ts │ │ │ │ ├── timebar.ts │ │ │ │ ├── title/ │ │ │ │ │ └── index.ts │ │ │ │ ├── toolbar/ │ │ │ │ │ ├── index.ts │ │ │ │ │ └── util.ts │ │ │ │ ├── tooltip.ts │ │ │ │ ├── types.ts │ │ │ │ ├── utils/ │ │ │ │ │ ├── canvas.ts │ │ │ │ │ └── dom.ts │ │ │ │ └── watermark/ │ │ │ │ ├── index.ts │ │ │ │ └── util.ts │ │ │ ├── preset.ts │ │ │ ├── registry/ │ │ │ │ ├── build-in.ts │ │ │ │ ├── extension/ │ │ │ │ │ ├── index.ts │ │ │ │ │ └── types.ts │ │ │ │ ├── get.ts │ │ │ │ ├── register.ts │ │ │ │ ├── store.ts │ │ │ │ └── types.ts │ │ │ ├── runtime/ │ │ │ │ ├── animation.ts │ │ │ │ ├── batch.ts │ │ │ │ ├── behavior.ts │ │ │ │ ├── canvas.ts │ │ │ │ ├── data.ts │ │ │ │ ├── element.ts │ │ │ │ ├── graph.ts │ │ │ │ ├── layout.ts │ │ │ │ ├── options.ts │ │ │ │ ├── plugin.ts │ │ │ │ ├── transform.ts │ │ │ │ ├── types.ts │ │ │ │ └── viewport.ts │ │ │ ├── spec/ │ │ │ │ ├── behavior.ts │ │ │ │ ├── canvas.ts │ │ │ │ ├── data.ts │ │ │ │ ├── element/ │ │ │ │ │ ├── animation.ts │ │ │ │ │ ├── combo.ts │ │ │ │ │ ├── edge.ts │ │ │ │ │ ├── node.ts │ │ │ │ │ └── palette.ts │ │ │ │ ├── graph.ts │ │ │ │ ├── index.ts │ │ │ │ ├── layout.ts │ │ │ │ ├── plugin.ts │ │ │ │ ├── theme.ts │ │ │ │ ├── transform.ts │ │ │ │ └── viewport.ts │ │ │ ├── themes/ │ │ │ │ ├── base.ts │ │ │ │ ├── dark.ts │ │ │ │ ├── index.ts │ │ │ │ ├── light.ts │ │ │ │ └── types.ts │ │ │ ├── transforms/ │ │ │ │ ├── arrange-draw-order.ts │ │ │ │ ├── base-transform.ts │ │ │ │ ├── collapse-expand-combo.ts │ │ │ │ ├── collapse-expand-node.ts │ │ │ │ ├── get-edge-actual-ends.ts │ │ │ │ ├── index.ts │ │ │ │ ├── map-node-size.ts │ │ │ │ ├── place-radial-labels.ts │ │ │ │ ├── process-parallel-edges.ts │ │ │ │ ├── types.ts │ │ │ │ ├── update-related-edge.ts │ │ │ │ └── utils.ts │ │ │ ├── types/ │ │ │ │ ├── anchor.ts │ │ │ │ ├── animation.ts │ │ │ │ ├── canvas.ts │ │ │ │ ├── centrality.ts │ │ │ │ ├── change.ts │ │ │ │ ├── combo.ts │ │ │ │ ├── data.ts │ │ │ │ ├── edge.ts │ │ │ │ ├── element.ts │ │ │ │ ├── enum.ts │ │ │ │ ├── event.ts │ │ │ │ ├── graphlib.ts │ │ │ │ ├── history.ts │ │ │ │ ├── id.ts │ │ │ │ ├── index.ts │ │ │ │ ├── layout.ts │ │ │ │ ├── node.ts │ │ │ │ ├── padding.ts │ │ │ │ ├── placement.ts │ │ │ │ ├── plugin.ts │ │ │ │ ├── point.ts │ │ │ │ ├── prefix.ts │ │ │ │ ├── router.ts │ │ │ │ ├── size.ts │ │ │ │ ├── state.ts │ │ │ │ ├── style.ts │ │ │ │ ├── tree.ts │ │ │ │ ├── utility.ts │ │ │ │ ├── vector.ts │ │ │ │ └── viewport.ts │ │ │ ├── utils/ │ │ │ │ ├── anchor.ts │ │ │ │ ├── animation.ts │ │ │ │ ├── array.ts │ │ │ │ ├── bbox.ts │ │ │ │ ├── cache.ts │ │ │ │ ├── centrality.ts │ │ │ │ ├── change.ts │ │ │ │ ├── collapsibility.ts │ │ │ │ ├── data.ts │ │ │ │ ├── diff.ts │ │ │ │ ├── dom.ts │ │ │ │ ├── edge.ts │ │ │ │ ├── element.ts │ │ │ │ ├── event/ │ │ │ │ │ ├── events.ts │ │ │ │ │ └── index.ts │ │ │ │ ├── extension.ts │ │ │ │ ├── graphlib.ts │ │ │ │ ├── id.ts │ │ │ │ ├── is.ts │ │ │ │ ├── layout.ts │ │ │ │ ├── line.ts │ │ │ │ ├── math.ts │ │ │ │ ├── node.ts │ │ │ │ ├── padding.ts │ │ │ │ ├── palette.ts │ │ │ │ ├── path.ts │ │ │ │ ├── pinch.ts │ │ │ │ ├── placement.ts │ │ │ │ ├── point.ts │ │ │ │ ├── polygon.ts │ │ │ │ ├── position.ts │ │ │ │ ├── prefix.ts │ │ │ │ ├── print.ts │ │ │ │ ├── relation.ts │ │ │ │ ├── router/ │ │ │ │ │ ├── orth.ts │ │ │ │ │ └── shortest-path.ts │ │ │ │ ├── scale.ts │ │ │ │ ├── shape.ts │ │ │ │ ├── shortcut.ts │ │ │ │ ├── size.ts │ │ │ │ ├── state.ts │ │ │ │ ├── style.ts │ │ │ │ ├── symbol.ts │ │ │ │ ├── text.ts │ │ │ │ ├── theme.ts │ │ │ │ ├── transform.ts │ │ │ │ ├── traverse.ts │ │ │ │ ├── tree.ts │ │ │ │ ├── vector.ts │ │ │ │ ├── visibility.ts │ │ │ │ └── z-index.ts │ │ │ └── version.ts │ │ ├── tsconfig.build.json │ │ ├── tsconfig.json │ │ ├── tsdoc.json │ │ └── vite.config.js │ ├── g6-extension-3d/ │ │ ├── README.md │ │ ├── __tests__/ │ │ │ ├── .eslintrc │ │ │ ├── dataset/ │ │ │ │ ├── cubic.json │ │ │ │ └── force-3d.json │ │ │ ├── demos/ │ │ │ │ ├── behavior-drag-canvas.ts │ │ │ │ ├── behavior-observe-canvas.ts │ │ │ │ ├── behavior-roll-canvas.ts │ │ │ │ ├── behavior-zoom-canvas.ts │ │ │ │ ├── index.ts │ │ │ │ ├── layer-top.ts │ │ │ │ ├── layout-d3-force-3d.ts │ │ │ │ ├── massive-elements.ts │ │ │ │ ├── position.ts │ │ │ │ ├── shapes.ts │ │ │ │ ├── solar-system.ts │ │ │ │ └── switch-renderer.ts │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ ├── types.d.ts │ │ │ └── unit/ │ │ │ ├── default.spec.ts │ │ │ └── utils/ │ │ │ ├── cache.spec.ts │ │ │ ├── geometry.spec.ts │ │ │ ├── map.spec.ts │ │ │ ├── material.spec.ts │ │ │ └── texture.spec.ts │ │ ├── jest.config.js │ │ ├── package.json │ │ ├── rollup.config.mjs │ │ ├── src/ │ │ │ ├── behaviors/ │ │ │ │ ├── drag-canvas-3d.ts │ │ │ │ ├── index.ts │ │ │ │ ├── observe-canvas-3d.ts │ │ │ │ ├── roll-canvas-3d.ts │ │ │ │ └── zoom-canvas-3d.ts │ │ │ ├── elements/ │ │ │ │ ├── base-node-3d.ts │ │ │ │ ├── capsule.ts │ │ │ │ ├── cone.ts │ │ │ │ ├── cube.ts │ │ │ │ ├── cylinder.ts │ │ │ │ ├── index.ts │ │ │ │ ├── line-3d.ts │ │ │ │ ├── plane.ts │ │ │ │ ├── sphere.ts │ │ │ │ └── torus.ts │ │ │ ├── exports.ts │ │ │ ├── index.ts │ │ │ ├── plugins/ │ │ │ │ ├── index.ts │ │ │ │ └── light.ts │ │ │ ├── renderer.ts │ │ │ ├── types/ │ │ │ │ ├── index.ts │ │ │ │ └── material.ts │ │ │ └── utils/ │ │ │ ├── cache.ts │ │ │ ├── geometry.ts │ │ │ ├── map.ts │ │ │ ├── material.ts │ │ │ └── texture.ts │ │ ├── tsconfig.build.json │ │ ├── tsconfig.json │ │ ├── tsconfig.test.json │ │ └── vite.config.js │ ├── g6-extension-react/ │ │ ├── README.md │ │ ├── __tests__/ │ │ │ ├── .eslintrc │ │ │ ├── dataset/ │ │ │ │ └── euro-cup.json │ │ │ ├── demos/ │ │ │ │ ├── euro-cup.tsx │ │ │ │ ├── graph.tsx │ │ │ │ ├── index.tsx │ │ │ │ ├── performance-diagnosis.tsx │ │ │ │ └── react-node.tsx │ │ │ ├── graph.tsx │ │ │ ├── index.html │ │ │ ├── main.tsx │ │ │ └── unit/ │ │ │ ├── attribute-changed-callback.spec.tsx │ │ │ └── default.spec.ts │ │ ├── jest.config.js │ │ ├── package.json │ │ ├── rollup.config.mjs │ │ ├── src/ │ │ │ ├── index.ts │ │ │ └── react-node/ │ │ │ ├── index.ts │ │ │ ├── node.tsx │ │ │ ├── render.ts │ │ │ ├── render16.ts │ │ │ └── render18.ts │ │ ├── tsconfig.build.json │ │ ├── tsconfig.json │ │ ├── tsconfig.test.json │ │ └── vite.config.js │ ├── g6-ssr/ │ │ ├── .gitignore │ │ ├── README.md │ │ ├── __tests__/ │ │ │ ├── graph-options.json │ │ │ └── graph.spec.ts │ │ ├── bin/ │ │ │ └── g6-ssr.js │ │ ├── jest.config.js │ │ ├── package.json │ │ ├── rollup.config.mjs │ │ ├── src/ │ │ │ ├── canvas.ts │ │ │ ├── graph.ts │ │ │ ├── index.ts │ │ │ └── types.ts │ │ ├── tsconfig.build.json │ │ ├── tsconfig.json │ │ └── tsconfig.test.json │ └── site/ │ ├── .dumi/ │ │ ├── app.tsx │ │ ├── global.less │ │ ├── global.ts │ │ └── tsconfig.json │ ├── .dumirc.ts │ ├── .github/ │ │ └── workflows/ │ │ └── mirror.yml │ ├── .gitignore │ ├── CNAME │ ├── api-extractor.json │ ├── common/ │ │ ├── angular-snippet.md │ │ ├── api/ │ │ │ ├── behaviors/ │ │ │ │ ├── auto-adapt-label.md │ │ │ │ ├── brush-select.md │ │ │ │ ├── click-element.md │ │ │ │ ├── collapse-expand.md │ │ │ │ ├── create-edge.md │ │ │ │ ├── drag-canvas.md │ │ │ │ ├── drag-element.md │ │ │ │ ├── fix-element-size.md │ │ │ │ ├── focus-element.md │ │ │ │ ├── hover-activate.md │ │ │ │ ├── hover-element.md │ │ │ │ ├── lasso-select.md │ │ │ │ ├── scroll-canvas.md │ │ │ │ └── zoom-canvas.md │ │ │ ├── elements/ │ │ │ │ ├── combos/ │ │ │ │ │ ├── base-combo.md │ │ │ │ │ ├── circle-combo-interest.md │ │ │ │ │ ├── circle-combo.md │ │ │ │ │ ├── rect-combo-architecture.md │ │ │ │ │ └── rect-combo.md │ │ │ │ ├── edges/ │ │ │ │ │ ├── base-edge.md │ │ │ │ │ ├── cubic-horizontal.md │ │ │ │ │ ├── cubic-vertical.md │ │ │ │ │ ├── cubic.md │ │ │ │ │ ├── line.md │ │ │ │ │ ├── polyline.md │ │ │ │ │ └── quadratic.md │ │ │ │ └── nodes/ │ │ │ │ ├── base-node.md │ │ │ │ ├── circle.md │ │ │ │ ├── diamond.md │ │ │ │ ├── donut.md │ │ │ │ ├── ellipse.md │ │ │ │ ├── hexagon.md │ │ │ │ ├── html.md │ │ │ │ ├── image.md │ │ │ │ ├── rect.md │ │ │ │ ├── star.md │ │ │ │ └── triangle.md │ │ │ ├── layout/ │ │ │ │ ├── fishbone.md │ │ │ │ └── force-atlas2.md │ │ │ ├── layouts/ │ │ │ │ ├── radial.md │ │ │ │ └── snake.md │ │ │ ├── plugins/ │ │ │ │ ├── background.md │ │ │ │ ├── bubble-sets.md │ │ │ │ ├── contextmenu.md │ │ │ │ ├── edge-bundling.md │ │ │ │ ├── edge-filter-lens.md │ │ │ │ ├── fisheye.md │ │ │ │ ├── fullscreen.md │ │ │ │ ├── grid-line.md │ │ │ │ ├── history.md │ │ │ │ ├── hull.md │ │ │ │ ├── legend.md │ │ │ │ ├── minimap.md │ │ │ │ ├── snapline.md │ │ │ │ ├── timebar.md │ │ │ │ ├── toolbar.md │ │ │ │ ├── tooltip.md │ │ │ │ └── watermark.md │ │ │ └── transforms/ │ │ │ ├── map-node-size-centrality.md │ │ │ └── map-node-size-scale.md │ │ ├── manual/ │ │ │ ├── core-concept/ │ │ │ │ ├── animation/ │ │ │ │ │ ├── ant-line.md │ │ │ │ │ └── breathing-circle.md │ │ │ │ └── palette/ │ │ │ │ ├── continuous-palette.md │ │ │ │ ├── default-config.md │ │ │ │ └── standard-config.md │ │ │ ├── custom-extension/ │ │ │ │ ├── animation/ │ │ │ │ │ ├── composite-animation-1.md │ │ │ │ │ ├── composite-animation-2.md │ │ │ │ │ └── implement-animation.md │ │ │ │ ├── behavior/ │ │ │ │ │ └── implement-behaviors.md │ │ │ │ ├── layout/ │ │ │ │ │ ├── iterative-layout.md │ │ │ │ │ └── non-iterative-layout.md │ │ │ │ ├── plugin/ │ │ │ │ │ └── implement-plugin.md │ │ │ │ └── transform/ │ │ │ │ ├── circular-radial-labels.md │ │ │ │ └── hide-free-node.md │ │ │ ├── feature/ │ │ │ │ ├── treeToGraphData.md │ │ │ │ └── webpack4.md │ │ │ └── getting-started/ │ │ │ ├── extensions/ │ │ │ │ └── palettes.md │ │ │ ├── quick-start/ │ │ │ │ └── simple-graph.md │ │ │ └── step-by-step/ │ │ │ ├── behaviors.md │ │ │ ├── create-chart.md │ │ │ ├── elements-1.md │ │ │ ├── elements-2.md │ │ │ ├── layout.md │ │ │ ├── palette.md │ │ │ ├── plugins-1.md │ │ │ └── plugins-2.md │ │ ├── react-snippet-strict.md │ │ ├── react-snippet.md │ │ └── vue-snippet.md │ ├── docs/ │ │ ├── api/ │ │ │ ├── behavior.en.md │ │ │ ├── behavior.zh.md │ │ │ ├── canvas.en.md │ │ │ ├── canvas.zh.md │ │ │ ├── coordinate.en.md │ │ │ ├── coordinate.zh.md │ │ │ ├── data.en.md │ │ │ ├── data.zh.md │ │ │ ├── element.en.md │ │ │ ├── element.zh.md │ │ │ ├── event.en.md │ │ │ ├── event.zh.md │ │ │ ├── export-image.en.md │ │ │ ├── export-image.zh.md │ │ │ ├── graph.en.md │ │ │ ├── graph.zh.md │ │ │ ├── layout.en.md │ │ │ ├── layout.zh.md │ │ │ ├── option.en.md │ │ │ ├── option.zh.md │ │ │ ├── plugin.en.md │ │ │ ├── plugin.zh.md │ │ │ ├── render.en.md │ │ │ ├── render.zh.md │ │ │ ├── theme.en.md │ │ │ ├── theme.zh.md │ │ │ ├── transform.en.md │ │ │ ├── transform.zh.md │ │ │ ├── viewport.en.md │ │ │ └── viewport.zh.md │ │ ├── backup/ │ │ │ ├── CameraSetting.en.md │ │ │ └── CameraSetting.zh.md │ │ └── manual/ │ │ ├── animation/ │ │ │ ├── animation.en.md │ │ │ ├── animation.zh.md │ │ │ ├── custom-animation.en.md │ │ │ └── custom-animation.zh.md │ │ ├── behavior/ │ │ │ ├── AutoAdaptLabel.en.md │ │ │ ├── AutoAdaptLabel.zh.md │ │ │ ├── BrushSelect.en.md │ │ │ ├── BrushSelect.zh.md │ │ │ ├── ClickSelect.en.md │ │ │ ├── ClickSelect.zh.md │ │ │ ├── CollapseExpand.en.md │ │ │ ├── CollapseExpand.zh.md │ │ │ ├── CreateEdge.en.md │ │ │ ├── CreateEdge.zh.md │ │ │ ├── DragCanvas.en.md │ │ │ ├── DragCanvas.zh.md │ │ │ ├── DragElement.en.md │ │ │ ├── DragElement.zh.md │ │ │ ├── DragElementForce.en.md │ │ │ ├── DragElementForce.zh.md │ │ │ ├── FixElementSize.en.md │ │ │ ├── FixElementSize.zh.md │ │ │ ├── FocusElement.en.md │ │ │ ├── FocusElement.zh.md │ │ │ ├── HoverActivate.en.md │ │ │ ├── HoverActivate.zh.md │ │ │ ├── LassoSelect.en.md │ │ │ ├── LassoSelect.zh.md │ │ │ ├── OptimizeViewportTransform.en.md │ │ │ ├── OptimizeViewportTransform.zh.md │ │ │ ├── ScrollCanvas.en.md │ │ │ ├── ScrollCanvas.zh.md │ │ │ ├── ZoomCanvas.en.md │ │ │ ├── ZoomCanvas.zh.md │ │ │ ├── custom-behavior.en.md │ │ │ ├── custom-behavior.zh.md │ │ │ ├── overview.en.md │ │ │ └── overview.zh.md │ │ ├── contribute.en.md │ │ ├── contribute.zh.md │ │ ├── data.en.md │ │ ├── data.zh.md │ │ ├── element/ │ │ │ ├── combo/ │ │ │ │ ├── BaseCombo.en.md │ │ │ │ ├── BaseCombo.zh.md │ │ │ │ ├── CircleCombo.en.md │ │ │ │ ├── CircleCombo.zh.md │ │ │ │ ├── RectCombo.en.md │ │ │ │ ├── RectCombo.zh.md │ │ │ │ ├── custom-combo.en.md │ │ │ │ ├── custom-combo.zh.md │ │ │ │ ├── overview.en.md │ │ │ │ └── overview.zh.md │ │ │ ├── edge/ │ │ │ │ ├── BaseEdge.en.md │ │ │ │ ├── BaseEdge.zh.md │ │ │ │ ├── Cubic.en.md │ │ │ │ ├── Cubic.zh.md │ │ │ │ ├── CubicHorizontal.en.md │ │ │ │ ├── CubicHorizontal.zh.md │ │ │ │ ├── CubicVertical.en.md │ │ │ │ ├── CubicVertical.zh.md │ │ │ │ ├── Line.en.md │ │ │ │ ├── Line.zh.md │ │ │ │ ├── Polyline.en.md │ │ │ │ ├── Polyline.zh.md │ │ │ │ ├── Quadratic.en.md │ │ │ │ ├── Quadratic.zh.md │ │ │ │ ├── custom-edge.en.md │ │ │ │ ├── custom-edge.zh.md │ │ │ │ ├── overview.en.md │ │ │ │ └── overview.zh.md │ │ │ ├── node/ │ │ │ │ ├── BaseNode.en.md │ │ │ │ ├── BaseNode.zh.md │ │ │ │ ├── Circle.en.md │ │ │ │ ├── Circle.zh.md │ │ │ │ ├── Diamond.en.md │ │ │ │ ├── Diamond.zh.md │ │ │ │ ├── Donut.en.md │ │ │ │ ├── Donut.zh.md │ │ │ │ ├── Ellipse.en.md │ │ │ │ ├── Ellipse.zh.md │ │ │ │ ├── Hexagon.en.md │ │ │ │ ├── Hexagon.zh.md │ │ │ │ ├── Html.en.md │ │ │ │ ├── Html.zh.md │ │ │ │ ├── Image.en.md │ │ │ │ ├── Image.zh.md │ │ │ │ ├── Rect.en.md │ │ │ │ ├── Rect.zh.md │ │ │ │ ├── Star.en.md │ │ │ │ ├── Star.zh.md │ │ │ │ ├── Triangle.en.md │ │ │ │ ├── Triangle.zh.md │ │ │ │ ├── custom-node.en.md │ │ │ │ ├── custom-node.zh.md │ │ │ │ ├── overview.en.md │ │ │ │ ├── overview.zh.md │ │ │ │ ├── react-node.en.md │ │ │ │ ├── react-node.zh.md │ │ │ │ ├── vue-node.en.md │ │ │ │ └── vue-node.zh.md │ │ │ ├── overview.en.md │ │ │ ├── overview.zh.md │ │ │ ├── shape/ │ │ │ │ ├── label-shape.en.md │ │ │ │ ├── label-shape.zh.md │ │ │ │ ├── overview.en.md │ │ │ │ ├── overview.zh.md │ │ │ │ ├── properties.en.md │ │ │ │ └── properties.zh.md │ │ │ ├── state.en.md │ │ │ └── state.zh.md │ │ ├── extension/ │ │ │ ├── 3d.en.md │ │ │ └── 3d.zh.md │ │ ├── faq.en.md │ │ ├── faq.zh.md │ │ ├── further-reading/ │ │ │ ├── 3d.en.md │ │ │ ├── 3d.zh.md │ │ │ ├── bundle.en.md │ │ │ ├── bundle.zh.md │ │ │ ├── coordinate.en.md │ │ │ ├── coordinate.zh.md │ │ │ ├── download-image.en.md │ │ │ ├── download-image.zh.md │ │ │ ├── event.en.md │ │ │ ├── event.zh.md │ │ │ ├── iconfont.en.md │ │ │ ├── iconfont.zh.md │ │ │ ├── renderer.en.md │ │ │ └── renderer.zh.md │ │ ├── getting-started/ │ │ │ ├── installation.en.md │ │ │ ├── installation.zh.md │ │ │ ├── integration/ │ │ │ │ ├── angular.en.md │ │ │ │ ├── angular.zh.md │ │ │ │ ├── react.en.md │ │ │ │ ├── react.zh.md │ │ │ │ ├── vue.en.md │ │ │ │ └── vue.zh.md │ │ │ ├── quick-start.en.md │ │ │ ├── quick-start.zh.md │ │ │ ├── step-by-step.en.md │ │ │ └── step-by-step.zh.md │ │ ├── graph/ │ │ │ ├── extension.en.md │ │ │ ├── extension.zh.md │ │ │ ├── extensions.en.md │ │ │ ├── extensions.zh.md │ │ │ ├── graph.en.md │ │ │ ├── graph.zh.md │ │ │ ├── option.en.md │ │ │ └── option.zh.md │ │ ├── introduction.en.md │ │ ├── introduction.zh.md │ │ ├── layout/ │ │ │ ├── AntvDagreLayout.en.md │ │ │ ├── AntvDagreLayout.zh.md │ │ │ ├── BaseLayout.en.md │ │ │ ├── BaseLayout.zh.md │ │ │ ├── CircularLayout.en.md │ │ │ ├── CircularLayout.zh.md │ │ │ ├── ComboCombinedLayout.en.md │ │ │ ├── ComboCombinedLayout.zh.md │ │ │ ├── CompactBoxLayout.en.md │ │ │ ├── CompactBoxLayout.zh.md │ │ │ ├── ConcentricLayout.en.md │ │ │ ├── ConcentricLayout.zh.md │ │ │ ├── D3Force3DLayout.en.md │ │ │ ├── D3Force3DLayout.zh.md │ │ │ ├── D3ForceLayout.en.md │ │ │ ├── D3ForceLayout.zh.md │ │ │ ├── DagreLayout.en.md │ │ │ ├── DagreLayout.zh.md │ │ │ ├── DendrogramLayout.en.md │ │ │ ├── DendrogramLayout.zh.md │ │ │ ├── Fishbone.en.md │ │ │ ├── Fishbone.zh.md │ │ │ ├── ForceAtlas2Layout.en.md │ │ │ ├── ForceAtlas2Layout.zh.md │ │ │ ├── ForceLayout.en.md │ │ │ ├── ForceLayout.zh.md │ │ │ ├── FruchtermanLayout.en.md │ │ │ ├── FruchtermanLayout.zh.md │ │ │ ├── GridLayout.en.md │ │ │ ├── GridLayout.zh.md │ │ │ ├── IndentedLayout.en.md │ │ │ ├── IndentedLayout.zh.md │ │ │ ├── MdsLayout.en.md │ │ │ ├── MdsLayout.zh.md │ │ │ ├── MindmapLayout.en.md │ │ │ ├── MindmapLayout.zh.md │ │ │ ├── RadialLayout.en.md │ │ │ ├── RadialLayout.zh.md │ │ │ ├── RandomLayout.en.md │ │ │ ├── RandomLayout.zh.md │ │ │ ├── Snake.en.md │ │ │ ├── Snake.zh.md │ │ │ ├── custom-layout.en.md │ │ │ ├── custom-layout.zh.md │ │ │ ├── overview.en.md │ │ │ └── overview.zh.md │ │ ├── plugin/ │ │ │ ├── Background.en.md │ │ │ ├── Background.zh.md │ │ │ ├── BubbleSets.en.md │ │ │ ├── BubbleSets.zh.md │ │ │ ├── Contextmenu.en.md │ │ │ ├── Contextmenu.zh.md │ │ │ ├── EdgeBundling.en.md │ │ │ ├── EdgeBundling.zh.md │ │ │ ├── EdgeFilterLens.en.md │ │ │ ├── EdgeFilterLens.zh.md │ │ │ ├── Fisheye.en.md │ │ │ ├── Fisheye.zh.md │ │ │ ├── Fullscreen.en.md │ │ │ ├── Fullscreen.zh.md │ │ │ ├── GridLine.en.md │ │ │ ├── GridLine.zh.md │ │ │ ├── History.en.md │ │ │ ├── History.zh.md │ │ │ ├── Hull.en.md │ │ │ ├── Hull.zh.md │ │ │ ├── Legend.en.md │ │ │ ├── Legend.zh.md │ │ │ ├── Minimap.en.md │ │ │ ├── Minimap.zh.md │ │ │ ├── Snapline.en.md │ │ │ ├── Snapline.zh.md │ │ │ ├── Timebar.en.md │ │ │ ├── Timebar.zh.md │ │ │ ├── Title.en.md │ │ │ ├── Title.zh.md │ │ │ ├── Toolbar.en.md │ │ │ ├── Toolbar.zh.md │ │ │ ├── Tooltip.en.md │ │ │ ├── Tooltip.zh.md │ │ │ ├── Watermark.en.md │ │ │ ├── Watermark.zh.md │ │ │ ├── custom-plugin.en.md │ │ │ ├── custom-plugin.zh.md │ │ │ ├── overview.en.md │ │ │ └── overview.zh.md │ │ ├── theme/ │ │ │ ├── custom-palette.en.md │ │ │ ├── custom-palette.zh.md │ │ │ ├── custom-theme.en.md │ │ │ ├── custom-theme.zh.md │ │ │ ├── overview.en.md │ │ │ ├── overview.zh.md │ │ │ ├── palette.en.md │ │ │ └── palette.zh.md │ │ ├── transform/ │ │ │ ├── MapNodeSize.en.md │ │ │ ├── MapNodeSize.zh.md │ │ │ ├── PlaceRadialLabels.en.md │ │ │ ├── PlaceRadialLabels.zh.md │ │ │ ├── ProcessParallelEdges.en.md │ │ │ ├── ProcessParallelEdges.zh.md │ │ │ ├── custom-transform.en.md │ │ │ ├── custom-transform.zh.md │ │ │ ├── overview.en.md │ │ │ └── overview.zh.md │ │ └── whats-new/ │ │ ├── feature.en.md │ │ ├── feature.zh.md │ │ ├── upgrade.en.md │ │ └── upgrade.zh.md │ ├── examples/ │ │ ├── algorithm/ │ │ │ └── case/ │ │ │ ├── demo/ │ │ │ │ ├── label-propagation.js │ │ │ │ ├── louvain.js │ │ │ │ ├── meta.json │ │ │ │ ├── pattern-matching.js │ │ │ │ └── shortest-path.js │ │ │ ├── index.en.md │ │ │ └── index.zh.md │ │ ├── animation/ │ │ │ ├── basic/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── combo-collapse-expand.js │ │ │ │ │ ├── enter-edge-path-in.js │ │ │ │ │ ├── enter.js │ │ │ │ │ ├── exit.js │ │ │ │ │ ├── meta.json │ │ │ │ │ └── update.js │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── persistence/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── ant-line.js │ │ │ │ │ ├── breathing-circle.js │ │ │ │ │ ├── fly-marker.js │ │ │ │ │ ├── meta.json │ │ │ │ │ ├── path-in.js │ │ │ │ │ └── ripple-circle.js │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ └── viewport/ │ │ │ ├── demo/ │ │ │ │ ├── meta.json │ │ │ │ ├── rotate.js │ │ │ │ ├── translate.js │ │ │ │ └── zoom.js │ │ │ ├── index.en.md │ │ │ └── index.zh.md │ │ ├── behavior/ │ │ │ ├── auto-adapt-label/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── canvas/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── drag.js │ │ │ │ │ ├── meta.json │ │ │ │ │ ├── optimize.js │ │ │ │ │ ├── scroll-and-zoom.js │ │ │ │ │ ├── scroll-xy.js │ │ │ │ │ ├── scroll-y.js │ │ │ │ │ └── zoom.js │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── combo/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ ├── collapse-expand.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── create-edge/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── between-combos.js │ │ │ │ │ ├── by-click.js │ │ │ │ │ ├── by-drag.js │ │ │ │ │ ├── custom-edge-style.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── fix-element-size/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── autosize-label.js │ │ │ │ │ ├── fix-font-size.js │ │ │ │ │ ├── fix-size.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── focus/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── highlight-element/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── activate-relations.js │ │ │ │ │ ├── basic.js │ │ │ │ │ ├── config-params.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── inner-event/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── select/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── brush-combo.js │ │ │ │ │ ├── brush.js │ │ │ │ │ ├── click.js │ │ │ │ │ ├── lasso.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ └── update-label/ │ │ │ ├── demo/ │ │ │ │ ├── meta.json │ │ │ │ └── update.js │ │ │ ├── index.en.md │ │ │ └── index.zh.md │ │ ├── element/ │ │ │ ├── combo/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── circle.js │ │ │ │ │ ├── meta.json │ │ │ │ │ └── rect.js │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── custom-combo/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── extra-button.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── custom-edge/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── custom-arrow.js │ │ │ │ │ ├── custom-path.js │ │ │ │ │ ├── extra-label.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── custom-node/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── g2-activity-chart.js │ │ │ │ │ ├── g2-bar-chart.js │ │ │ │ │ ├── meta.json │ │ │ │ │ ├── react-node.jsx │ │ │ │ │ └── reactnode-idcard.jsx │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── edge/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── arrows.js │ │ │ │ │ ├── cubic.js │ │ │ │ │ ├── horizontal-cubic.js │ │ │ │ │ ├── line.js │ │ │ │ │ ├── loop-curve.js │ │ │ │ │ ├── loop-polyline.js │ │ │ │ │ ├── meta.json │ │ │ │ │ ├── polyline-orth-with-cps.js │ │ │ │ │ ├── polyline-orth.js │ │ │ │ │ ├── polyline.js │ │ │ │ │ ├── quadratic.js │ │ │ │ │ └── vertical-cubic.js │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── label/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── background.js │ │ │ │ │ ├── copy.js │ │ │ │ │ ├── ellipsis.js │ │ │ │ │ ├── meta.json │ │ │ │ │ └── word-wrap.js │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ └── node/ │ │ │ ├── demo/ │ │ │ │ ├── 3d-node.js │ │ │ │ ├── circle.js │ │ │ │ ├── diamond.js │ │ │ │ ├── donut.js │ │ │ │ ├── ellipse.js │ │ │ │ ├── hexagon.js │ │ │ │ ├── html.js │ │ │ │ ├── image.js │ │ │ │ ├── meta.json │ │ │ │ ├── port.js │ │ │ │ ├── rect.js │ │ │ │ ├── rounded-rect.js │ │ │ │ ├── star.js │ │ │ │ └── triangle.js │ │ │ ├── index.en.md │ │ │ └── index.zh.md │ │ ├── examples.md │ │ ├── feature/ │ │ │ └── default/ │ │ │ ├── demo/ │ │ │ │ ├── 3d-massive.js │ │ │ │ ├── lite-solar-system.js │ │ │ │ ├── meta.json │ │ │ │ ├── theme.js │ │ │ │ └── unicorns-investors.js │ │ │ ├── index.en.md │ │ │ └── index.zh.md │ │ ├── layout/ │ │ │ ├── circular/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ ├── degree.js │ │ │ │ │ ├── division.js │ │ │ │ │ ├── meta.json │ │ │ │ │ └── spiral.js │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── combo-layout/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── combo-combined.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── compact-box/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ ├── meta.json │ │ │ │ │ ├── radial.js │ │ │ │ │ └── vertical.js │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── concentric/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── custom/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── arc.js │ │ │ │ │ ├── bi-graph.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── dagre/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── antv-dagre-combo.js │ │ │ │ │ ├── antv-dagre.js │ │ │ │ │ ├── dagre.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── dendrogram/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ ├── meta.json │ │ │ │ │ ├── radial.js │ │ │ │ │ └── vertical.js │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── fishbone/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── force-directed/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── 3d-force.js │ │ │ │ │ ├── atlas2.js │ │ │ │ │ ├── bubbles.js │ │ │ │ │ ├── collision.js │ │ │ │ │ ├── d3-force.js │ │ │ │ │ ├── drag-fixed.js │ │ │ │ │ ├── force.js │ │ │ │ │ ├── functional-params.js │ │ │ │ │ ├── mesh.js │ │ │ │ │ ├── meta.json │ │ │ │ │ └── prevent-overlap.js │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── fruchterman/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ ├── cluster.js │ │ │ │ │ ├── meta.json │ │ │ │ │ ├── run-in-gpu.js │ │ │ │ │ └── run-in-web-worker.js │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── grid/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── indented/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── auto-side.js │ │ │ │ │ ├── custom-side.js │ │ │ │ │ ├── left-side.js │ │ │ │ │ ├── meta.json │ │ │ │ │ ├── no-drop-cap.js │ │ │ │ │ └── right-side.js │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── mds/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── mechanism/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── change-data.js │ │ │ │ │ ├── meta.json │ │ │ │ │ └── switch.js │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── mindmap/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── auto-side.js │ │ │ │ │ ├── custom-side.js │ │ │ │ │ ├── left-side.js │ │ │ │ │ ├── meta.json │ │ │ │ │ └── right-side.js │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── radial/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ ├── cluster-sort.js │ │ │ │ │ ├── meta.json │ │ │ │ │ ├── non-strict-prevent-overlap.js │ │ │ │ │ └── strict-prevent-overlap.js │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── snake/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ ├── gutter.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ └── sub-graph/ │ │ │ ├── demo/ │ │ │ │ ├── basic.js │ │ │ │ └── meta.json │ │ │ ├── index.en.md │ │ │ └── index.zh.md │ │ ├── performance/ │ │ │ └── massive-data/ │ │ │ ├── demo/ │ │ │ │ ├── 20000.js │ │ │ │ ├── 5000.js │ │ │ │ ├── 60000.js │ │ │ │ └── meta.json │ │ │ ├── index.en.md │ │ │ └── index.zh.md │ │ ├── plugin/ │ │ │ ├── background/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── background.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── bubble-sets/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── contextMenu/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── edge-bundling/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── edge-filter-lens/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── fisheye/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ ├── custom.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── fullscreen/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── grid-line/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── history/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── hull/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── legend/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ ├── click.js │ │ │ │ │ ├── meta.json │ │ │ │ │ └── style.js │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── minimap/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── snapline/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── autoSnap.js │ │ │ │ │ ├── basic.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── timebar/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── chart.js │ │ │ │ │ ├── meta.json │ │ │ │ │ └── time.js │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── toolbar/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ ├── custom.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ ├── tooltip/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── basic.js │ │ │ │ │ ├── click.js │ │ │ │ │ ├── dual.js │ │ │ │ │ └── meta.json │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ └── watermark/ │ │ │ ├── demo/ │ │ │ │ ├── meta.json │ │ │ │ ├── repeat.js │ │ │ │ └── text.js │ │ │ ├── index.en.md │ │ │ └── index.zh.md │ │ ├── scene-case/ │ │ │ ├── default/ │ │ │ │ ├── demo/ │ │ │ │ │ ├── battle-array.jsx │ │ │ │ │ ├── fund-flow.js │ │ │ │ │ ├── meta.json │ │ │ │ │ ├── music-festival.js │ │ │ │ │ ├── organization-chart.js │ │ │ │ │ ├── performance-diagnosis-flowchart.js │ │ │ │ │ ├── snake-flow-diagram.js │ │ │ │ │ ├── sub-graph.js │ │ │ │ │ └── why-do-cats.js │ │ │ │ ├── index.en.md │ │ │ │ └── index.zh.md │ │ │ └── tree-graph/ │ │ │ ├── demo/ │ │ │ │ ├── anti-procrastination-fishbone.js │ │ │ │ ├── indented-tree.js │ │ │ │ ├── meta.json │ │ │ │ ├── mindmap.js │ │ │ │ ├── product-fishbone.js │ │ │ │ ├── radial-compact-tree.js │ │ │ │ └── radial-dendrogram.js │ │ │ ├── index.en.md │ │ │ └── index.zh.md │ │ └── transform/ │ │ └── process-parallel-edges/ │ │ ├── demo/ │ │ │ ├── bundle.js │ │ │ ├── merge.js │ │ │ └── meta.json │ │ ├── index.en.md │ │ └── index.zh.md │ ├── mako.config.json │ ├── package.json │ ├── scripts/ │ │ ├── clear-doc.ts │ │ ├── doc-template.mjs │ │ ├── extract-playground.js │ │ ├── generate-api.ts │ │ ├── generate-doc.ts │ │ ├── rewrite-ob.ts │ │ └── sort-doc.ts │ ├── src/ │ │ ├── MarkdownDocumenter.ts │ │ ├── constants/ │ │ │ ├── index.ts │ │ │ ├── link.ts │ │ │ └── locales/ │ │ │ ├── api-category.json │ │ │ ├── element.json │ │ │ ├── enum.ts │ │ │ ├── helper.json │ │ │ ├── index.ts │ │ │ ├── keyword.json │ │ │ └── page-name.json │ │ ├── markdown/ │ │ │ ├── CustomMarkdownEmitter.ts │ │ │ └── MarkdownEmitter.ts │ │ ├── nodes/ │ │ │ ├── CustomDocNodeKind.ts │ │ │ ├── DocContainer.ts │ │ │ ├── DocDetails.ts │ │ │ ├── DocEmphasisSpan.ts │ │ │ ├── DocHeading.ts │ │ │ ├── DocNoteBox.ts │ │ │ ├── DocPageTitle.ts │ │ │ ├── DocTable.ts │ │ │ ├── DocTableCell.ts │ │ │ ├── DocTableRow.ts │ │ │ ├── DocText.ts │ │ │ └── DocUnorderedList.ts │ │ └── utils/ │ │ ├── IndentedWriter.ts │ │ ├── Utilities.ts │ │ ├── excerpt-token.ts │ │ ├── gitignore.ts │ │ └── parser.ts │ └── tsconfig.json ├── playwright.config.ts ├── pnpm-workspace.yaml ├── scripts/ │ ├── demo-to-test/ │ │ ├── core/ │ │ │ ├── global.js │ │ │ ├── index.js │ │ │ ├── parser.js │ │ │ └── utils.js │ │ ├── index.js │ │ └── template/ │ │ ├── it.js │ │ ├── spec.js │ │ └── test.js │ └── version.sh ├── tests/ │ └── g6/ │ ├── elements/ │ │ └── node-element.spec.ts │ └── plugins/ │ ├── plugins-minimap.spec.ts │ └── plugins-tooltip.spec.ts ├── tsconfig.json └── turbo.json