Commit Graph

267 Commits

Author SHA1 Message Date
Yanyan-Wang
863c48e513 fix: collapse-expand-tree behavior is triggered on animated hiding nodes unexpectedly 2023-08-16 10:37:05 +08:00
Yanyan-Wang
71b275639b chore: refine 2023-08-16 10:37:05 +08:00
Yanyan-Wang
18449ae881 chore: refine 2023-08-16 10:37:05 +08:00
Yanyan-Wang
5ebc32f86c feat: tree formatted data rendering; feat: collapse-expand-tree behavior; 2023-08-16 10:37:03 +08:00
yvonneyx
512e969363 feat: history support layerChange, addItem and batch process 2023-08-15 19:12:14 +08:00
pomelo-nwu
ea9803fa89 feat: replace IPoint 2023-08-15 10:52:18 +08:00
pomelo-nwu
0a4fb45de3 feat: update prettier config 2023-08-15 10:49:35 +08:00
pomelo-nwu
eac70cdc02 feat: add toolbar plugin demo 2023-08-15 10:49:18 +08:00
pomelo-nwu
4fedec8609 feat: add toolbar plugin 2023-08-15 10:46:35 +08:00
pomelo-nwu
8c7f66d705 feat: update global.ts 2023-08-15 10:42:22 +08:00
yvonneyx
3dd8625766 feat: support history (visibility, state, position) 2023-08-14 19:37:34 +08:00
banxuan.zyx
98066637b6 test: add v5 polyline tests 2023-08-13 12:42:26 +08:00
banxuan.zyx
e1203cd56d Merge remote-tracking branch 'origin/v5' into feat/edge-polyline 2023-08-13 12:41:22 +08:00
Yanyan Wang
11a9a3016a
fix: halo styles for rect node (#4810)
* fix: halo styles for rect node

* fix: number node id problem

* chore: refine types
2023-08-11 14:41:04 +08:00
pomelo-nwu
1b3b2a0d90 feat: update prettier config 2023-08-11 13:38:34 +08:00
pomelo-nwu
31a3d52ee2 feat: update version 2023-08-11 13:18:04 +08:00
pomelo-nwu
2d6fdbeaba feat: update 2023-08-11 11:03:12 +08:00
pomelo-nwu
b10dded130 feat: update site-rfc 2023-08-11 10:56:03 +08:00
pomelo-nwu
bafbd3dfd7 feat: import pnpm and remove 4.x G6 deps 2023-08-10 18:15:46 +08:00
xiaoiver
73bd1fed41
feat: use serverside rendering for integration tests (#4793)
* feat: use serverside rendering for integration tests

* chore: extend svg & webgl matchers for jest

* chore: interactive events can be triggerred in test case now

* chore: increase timeout

* chore: skip WebGL snapshot for now

* chore: support animation snapshot in test case

* chore: DOM API can be used in test case

* fix: make graph.getItemById private
2023-08-10 10:22:51 +08:00
banxuan.zyx
22c3f9abb4 feat: polyline 2023-08-09 17:55:00 +08:00
veeui
a06766b440
v5-plugin-grid (#4681)
* feat: 新增grid插件

* test: 新增grid插件单测

* fix: 修改cr要求

* style: 新增grid图片
2023-08-02 10:00:05 +08:00
Yanyan Wang
62ecbca00c
feat: combo rendering and behaviors (#4739)
* feat: combo rendering and interactions

* chore: refine

* chore: refine

* feat: frontItem backItem api for graph; feat: animations for combo

* chore: refine

* chore: remove unnecessary calls

* chore: remove buildIn animates exclusions

* chore: typo

* chore: type problems

* chore: import path

* chore: refine

* fix: zindex adjustment without combo tree structure

* chore: lint
2023-08-01 11:31:48 +08:00
Yanyan Wang
aa9c6a8e37
fix: fisheye restore problem and code style (#4743)
* fix: fisheye restore problem and code style

* fix: fisheye label from node data

* chore: lint
2023-07-17 16:46:53 +08:00
Lionztt
d6bbaa985a
feat: add v5-fisheye (#4696)
* feat: add v5-fisheye main code

* feat: merge

* feat: fix text postion

* feat: change label text and its align

* feat: add drag trigger and add scale r/d by drag

* feat: add wheel events

* feat: fix wheel event when reduce range

* feat: fix fisheye clear event

* feat: fix logs

* feat: package-lock

* feat: delete g6 package-lock

* feat: fix logs

* feat: fix remove shape method and trans Chinese note to English
2023-07-14 15:43:37 +08:00
MaLaiXiGua
8716c60c3c
feat: v5-plugin-tooltip (#4684)
* feat: v5-plugin-tooltip

* test: add tooltip test demo

* test: add unit test

* fix: clear the old tooltip before showing a new one

* feat: add loading content

* fix:promise throttle

* fix: delay hiding tooltip

* feat: add placement configuration, like "right", "left", "top", "topRight", etc.

* fix: remove ts-nocheck
2023-07-05 14:05:54 +08:00
MaLaiXiGua
9cf80a4a02
feat: v5-plugin-contextmenu (#4682)
* feat: contextmenu v4 to v5

* fix: move the coordinate calculation before the asynchronous function, to avoid the menu located in wrong position

* test: add unit test

* fix: fix the position error

* fix: decrease server pressure caused by fetching many times

* feat: add loading content

* feat: add liHoverStyle config

* chore: remove todo tag

* fix: modify css before resolve getContent

* fix:promise throttle.
2023-07-04 20:19:51 +08:00
markliao
8a520b2cb6
V5 feat/cubic edge,cubic horizon edge,cubic vertical edge (#4669)
* chore: update dependencies

* update jest.config.js for using `@kayahr/jest-electron-runner`
* update rollup.config.js for using `@rollup/plugin-terser`

* chore: add line-edge integration test

* chore: done feat/cubic-edge

chore: add integration test

chore: add unit test(but there have several tests TODO )

* feat: v5-cubic-horizon-edge

*feat: v5-cubic-horizon-edge

*chore: test/unit/v5-cubic-horizon-edge

*chore: test/integration/v5-cubic-horizon-edge

* feat: v5-cubic-horizon-edge

*feat: v5-cubic-horizon-edge

*chore: test/unit/v5-cubic-horizon-edge

*chore: test/integration/v5-cubic-horizon-edge

fix: curve bug

* chore: lint fix & use English comments

* chore: change test svg link & fix cubic offset

*chore: change test svg link

*fix: fix the cubic offset

* chore: fix rebase issue

* Feat: add  'topRight'  position configuration in BadgesShapes (#4624)

* fix: support position config:'topRight'

* add demo to reproduce bug

* chore: fix rebase conflict

* V5 fix label shape error (#4645)

* update: update demo for bug reproduce

* fix: fix the bug

* v5-rect#1 (#4640)

* feat: add RectNode

* add: add rect test demo

* add: add rect test demo

* update: update RectNode with less override

* update: remove 'console.log'

* update: remove comment

* update: remove cn comment

* add: add rect-spec.ts for unit test

---------

Co-authored-by: Yanyan Wang <yanyanwang93@gmail.com>

* fix: implement onZoom as empty function for 3d node (#4647)

* fix: implement onZoom as empty function for 3d node

* chore: refine

* chore: lint

* add: make the error message more readable (#4666)

* feat: add contextmenu event for graph canvas, node, and edge (#4675)

* feat: v5-quadratic (#4656)

* add: add a test demo

* feat: add quadratic

* add: add unit test demo

* fix: add seItemState(selected、active、highlight、inactive、disable) test into spec.

* chore: fix rebase conflicts

* chore: done feat/cubic-edge

chore: add integration test

chore: add unit test(but there have several tests TODO )

* feat: v5-cubic-horizon-edge

*feat: v5-cubic-horizon-edge

*chore: test/unit/v5-cubic-horizon-edge

*chore: test/integration/v5-cubic-horizon-edge

* feat: v5-cubic-horizon-edge

*feat: v5-cubic-horizon-edge

*chore: test/unit/v5-cubic-horizon-edge

*chore: test/integration/v5-cubic-horizon-edge

fix: curve bug

* chore: lint fix & use English comments

* chore: trim up code format

*chore: use relative import path

*chore: delete unused imports

*fix: fix the rebase imports

* chore: fix base.ts

* chore: fix rebase conflicts

* chore: elint fix format

---------

Co-authored-by: MaLaiXiGua <55946653+zqqcee@users.noreply.github.com>
Co-authored-by: MaLaiXiGua <941107676@qq.com>
Co-authored-by: Yanyan Wang <yanyanwang93@gmail.com>
Co-authored-by: MaLaiXiGua <zqqcee@163.com>
2023-06-26 16:54:52 +08:00
MaLaiXiGua
7405f26c76
feat: v5-quadratic (#4656)
* add: add a test demo

* feat: add quadratic

* add: add unit test demo

* fix: add seItemState(selected、active、highlight、inactive、disable) test into spec.
2023-06-25 14:40:46 +08:00
Yanyan Wang
1a029724cf
feat: add contextmenu event for graph canvas, node, and edge (#4675) 2023-06-25 14:33:47 +08:00
MaLaiXiGua
17c293bb32
add: make the error message more readable (#4666) 2023-06-25 11:07:31 +08:00
Yanyan Wang
7d6959ed1b
fix: implement onZoom as empty function for 3d node (#4647)
* fix: implement onZoom as empty function for 3d node

* chore: refine

* chore: lint
2023-06-15 15:23:13 +08:00
MaLaiXiGua
1cb99d0bbf
v5-rect#1 (#4640)
* feat: add RectNode

* add: add rect test demo

* add: add rect test demo

* update: update RectNode with less override

* update: remove 'console.log'

* update: remove comment

* update: remove cn comment

* add: add rect-spec.ts for unit test

---------

Co-authored-by: Yanyan Wang <yanyanwang93@gmail.com>
2023-06-15 11:18:05 +08:00
MaLaiXiGua
eea0536007
V5 fix label shape error (#4645)
* update: update demo for bug reproduce

* fix: fix the bug
2023-06-15 11:08:21 +08:00
Yanyan Wang
f2b9c6be18
chore: upgrade styles for node (#4639)
* chore: upgrade styles for node

* fix: labelBackgroundShape size problem while state changing
2023-06-14 09:30:53 +08:00
MaLaiXiGua
c5a4696088
Feat: add 'topRight' position configuration in BadgesShapes (#4624)
* fix: support position config:'topRight'

* add demo to reproduce bug
2023-06-12 14:44:02 +08:00
zqqcee
65c599edd2
fix: "Node not found" error from 'getNode()' (#4608)
* delete: delete workflow

* add: add demo to reproduce this bug

* fix: fix "node not found" error by adding try-catch block

* undo delete
2023-06-08 18:56:57 +08:00
Yanyan Wang
dcb82900db
fix: drag-node error (#4573) 2023-06-07 19:18:56 +08:00
xiaoiver
3f674d4528
fix: enhance performance with batch key (#4572) 2023-06-05 18:59:41 +08:00
Yanyan Wang
1cd6c9d2c3
feat: a demo for v5 and fix several bugs, details are in commits (#4553)
* feat: demo

* chore: refine demo

* chore: refine demo

* perf: demo with themes

* perf: demo with webgl renderer

* feat: add 3d layout demo

* fix: state style affect size of node incorrectly

* feat: support text in 3D scene

* fix: conflict between behaviors; fix: animate problems; fix: zoomStrategy for individual nodes

* chore: rename zoomStrategy to lodStrategy

* chore: refine demo

* chore: demo refine

* chore: type templates problems

* chore: lint

* chore: refine

* feat: constrain the range of zoom-canvas-3d

* chore: refine

* chore: remove unecessary notes

---------

Co-authored-by: yuqi.pyq <yuqi.pyq@antgroup.com>
2023-05-31 18:25:02 +08:00
xiaoiver
3908b1e93e
feat: support 3d force-directed layout (#4495)
* feat: support 3d force-directed layout

* fix: remove debugger code

* chore: lint
2023-05-12 15:18:40 +08:00
xiaoiver
20ff95c76f
feat: integrate @antv/layout-wasm (#4481) 2023-05-11 15:41:15 +08:00
Yanyan Wang
106c4a6ecc
perf: performance test (#4480)
* perf: performance test

* fix: use latest g-webgl to enhance performance

* chore: lint

* fix: save zoom ratio on item controller

---------

Co-authored-by: yuqi.pyq <yuqi.pyq@antgroup.com>
2023-05-11 15:39:49 +08:00
Yanyan Wang
2f749bc084
feat: animations (#4439)
* feat: animations

* feat: zoom level rendering and size keeping; feat: animate at buildIn, show, hide, update, buildOut

* chore: refine

* chore: refine
2023-05-05 10:14:48 +08:00
Yanyan Wang
05948c5e7d
feat: style standards; perf: type refine (#4470)
* feat: style standards; perf: type refine

* chore: refine
2023-04-27 18:05:16 +08:00
Yanyan Wang
9c8db01fe1
feat: 3d item rendering (#4379)
* feat: 3d item rendering

* test: large number for 3d rendering

* fix: share geometry & material between meshes

* feat: rotate-canvas and zoom-canvas for 3d

* perf: types for 3d item

* chore: types

* feat: tracking-canvas-3d behavivor

* fix: rotate canvas 3d behavior export

* chore: type refine

---------

Co-authored-by: yuqi.pyq <yuqi.pyq@antgroup.com>
2023-04-24 15:27:27 +08:00
Yanyan Wang
657004e5a7
feat: drag-canvas behavior (#4450)
* feat: drag-canvas behavior

* chore: refine

* feat: zoom-canvas

* chore: refine
2023-04-24 15:10:54 +08:00
Yanyan Wang
88f3665510
fix: tests (#4449)
* fix: tests

* chore: refine

* chore: restore package json
2023-04-21 13:48:17 +08:00
hustcc
4040c6d463
chore: make library build work (#4388)
* chore: make library build work

* chore: fix type define error

* test: fix lint error

* chore: update github action

* chore: fix typo
2023-04-20 18:01:52 +08:00
Yanyan Wang
f4c8d6ca72
feat: plugin controller and base; feat: minimap; (#4390)
* feat: plugin controller and base; feat: minimap;

* feat: addPlugins, removePlugins, updatePlugin APIs for graph

* test: add test for minimap

* feat: legend plugin (#4419)

* feat: plugin controller and base; feat: minimap;

* test: add test for minimap

* feat: legend plugin

* feat: legend plugin

* chore: refine

* chore: single quote

* fix: legend update after canvas ready

* feat: legend supports percentage size; fix: review comments
2023-04-10 17:01:16 +08:00
pomelo
bf06ee1378
feat: activate relations (#4380)
* chore: fix typing to support vite

* feat: Add browser-side integration testing

* feat: add activate-relations behaviros

* feat: update typing

* feat: add activate-relations logic

* feat: add typing

* feat: add demo

* feat: update demo

---------

Co-authored-by: pomelo.lcw <pomelo.lcw@antgroup.com>
Co-authored-by: pomelo-nwu <czynwu@gmail.com>
2023-04-10 12:01:26 +08:00
14
eecd6786d4
feat: add drag-node behavior (#4366)
* feat: add drag-node behavior

* feat(drag-node): add enableTransient feature

* feat(drag-node): add test case

* fix(drag-node): fix hidden edges become visible after dragging

* refactor(drag-node): extract upsertTransientItem method
2023-03-29 18:33:10 +08:00
hustcc
ae95e92140
refactor: remove unused files, and add husky and commitlint (#4383)
* refactor: remove unused files, and add husky and commitlint

* test: add github action
2023-03-23 20:43:53 +08:00
xiaoiver
918584d6b1
使用相机实现视口相关功能 (#4348)
* feat: support translate & zoom with camera #4344

* feat: support fitCenter & focusItem with Camera API #4344

* feat: support fitView #4344

* feat: support focusing multi-items & stop transition of current transform #4348
2023-03-20 14:53:12 +08:00
Yanyan Wang
8f68192dd3
feat: add brush select behavior and its test spec (#4355)
* feat: add brush select behavior and its test spec

* chore: typo

* feat: lasso-select extends brush-select

* chore: refine
2023-03-20 11:44:09 +08:00
Yanyan Wang
d7cab02dd7
feat: theme module (#4330)
* feat: theme module

* chore: add test for theme

* chore: move default themes into stdlibs and refine the theme to be same as v4

* chore: rebase v5 with item module

* feat: subject theme solver

* chore: typo
2023-03-20 11:27:53 +08:00
xiaoiver
8aa3618ea2
支持更多场景下的布局过渡动画 (#4345)
* feat: support transition on layouts without iterations #4339

* feat: use immediately invoked layout as a shortcut #4339

* feat: handle scenario when layout is unset in spec

* fix: disable css parsing for better performance
2023-03-14 14:51:09 +08:00
Yanyan Wang
e2158e8592
feat: edge state styles (#4357) 2023-03-14 14:48:58 +08:00
14
2d9cdb8f41
feat: add behavior controller and click-select (#4328)
* feat: add behavior controller and click-select

* fix: fix code review

---------

Co-authored-by: 14 <yisi.wys@antgroup.com>
2023-03-02 20:27:14 +08:00
xiaoiver
0f23a181db
V5 layout (#4308)
* feat: unified datachange from changeData, addData, updateData, and removeData; feat: item definition and first drawing

* feat: update canvas while addData; feat: update canvas while updateData (node); chore: unified additems, removeitems, updateitems to be itemchange hook

* feat: init layout controller

* feat: node and edge updating and drawing

* chore: neaten

* feat: draw and update labels for node and edge

* feat: icon for edge; feat: custom node and edge and register to lib

* feat: init layout controller

* fix: use latest g-webgl

* feat: layout controller should support  &  option

* fix: registry typo & add custom layout test case

* feat: state related API for graph and item

* chore: update notes

---------

Co-authored-by: Yanyan-Wang <yanyanwang93@gmail.com>
2023-03-01 14:45:57 +08:00
Yanyan Wang
875a9eb39b
feat: unified datachange from changeData, addData, updateData, and removeData; feat: item definition and first drawing (#4259)
* feat: unified datachange from changeData, addData, updateData, and removeData; feat: item definition and first drawing

* feat: update canvas while addData; feat: update canvas while updateData (node); chore: unified additems, removeitems, updateitems to be itemchange hook

* feat: node and edge updating and drawing

* chore: neaten

* feat: draw and update labels for node and edge

* feat: icon for edge; feat: custom node and edge and register to lib

* feat: state related API for graph and item

* chore: update notes

* feat: state styles for item

* chore: update tests
2023-03-01 14:21:55 +08:00
Yanyan Wang
bb82593eb8
feat: implement add remove and update API for graph data module (#4255)
* feat: implement add remove and update API for graph data module

* chore: remove IItem INode IEdge and ICombo from input and output of API in  graph

* docs: udpate temporary graph api docs
2023-02-07 10:51:02 +08:00
Yanyan Wang
6880a3aad7
chore: packages refine for v5 (#4251) 2023-02-06 14:46:57 +08:00
Yanyan Wang
df112de066
chore: behavior type generic and test; chore: update notes; (#4243) 2023-02-02 10:44:55 +08:00
Yanyan Wang
dce8ec70b8 feat: hooks for graph; feat: data and interaction controllers for the… (#4189)
* feat: hooks for graph; feat: data and interaction controllers for these two types of extensions

* chore: format notes

* perf: types refine

* feat: graph behavior apis

* feat: item and its controller

* feat: init Node Edge and Combo item

* feat: init layoutm theme, extension controllers

* feat: init Graph class

* feat: add gymnastics for behavior

* chore: behavior type generic refine

* chore: refine

* feat: complete hooks list
2023-02-02 10:32:01 +08:00
Yanyan Wang
d4b91357e6 feat: add necessary types (#4182)
* feat: add necessary types

* feat: add combo data type

* feat: add animate attribute type to graph elements

* chore: format notes
2023-02-02 10:32:01 +08:00
Yanyan-Wang
3095544cdf chore: commit history cleaning 2023-02-02 10:31:36 +08:00