Compare commits

..

446 Commits

Author SHA1 Message Date
b7d0c0bd62 chore: 🔧 release x6-react-shape@1.6.6 2024-08-15 13:59:13 +08:00
753bc29dcc fix: react-shape this.selectors must valid ()
Co-authored-by: 魄兵 <pobing.slb@alibaba-inc.com>
2024-08-14 09:54:49 +08:00
9f200a272d chore: 🔧 change publish script 2023-11-14 10:28:35 +08:00
556121d68d chore(release): 🚀 publish
- @antv/x6-react-shape@1.6.5
2023-11-14 10:19:20 +08:00
2a132a2c19 fix: 🐛 support multiple graph 2023-11-14 10:16:18 +08:00
6d37943855 chore(release): 🚀 publish
- @antv/x6@1.35.0
2023-09-25 18:00:00 +08:00
1ca2114005 fix: 🐛 add judge when call renderHTMLComponent 2023-09-25 17:52:31 +08:00
032cce51df fix: 🐛 stop listen event when transform removed 2023-09-25 17:30:43 +08:00
add5600a26 chore(release): 🚀 publish
- @antv/x6@1.34.14
2023-07-06 09:41:49 +08:00
0fb2dcc96a fix: 🐛 check label node existed before change position 2023-07-05 22:46:52 +08:00
d440dfc6b1 docs: fixed the link to the homepage of the official website () ()
Co-authored-by: qiufeihong <qiufeihong.qfh@alibaba-inc.com>
2023-06-06 19:26:20 +08:00
87fac22cd0 docs: 📚️ add animation example 2023-05-12 15:17:17 +08:00
de35af5d84 chore(release): 🚀 publish
- @antv/x6@1.34.13
2023-03-31 21:56:30 +08:00
d59e62605a fix: 🐛 fix parseInt error 2023-03-31 21:50:29 +08:00
b242a00bd0 chore(release): 🚀 publish
- @antv/x6@1.34.12
2023-03-22 16:51:32 +08:00
0b27331a4d fix: 🐛 parseint zindex to get correct max zindex node 2023-03-22 16:44:18 +08:00
05c3821ee9 docs(v1-react): fix memo equal condition ()
docs(react): fix memo equal condition
2023-03-10 21:55:43 +08:00
afeab7b300 chore(release): 🚀 publish
- @antv/x6-angular-shape@1.3.2
 - @antv/x6-react-shape@1.6.4
 - @antv/x6-vue-shape@1.5.4
2023-02-22 11:22:21 +08:00
897a1a1812 fix: 🐛 limit peer dependencies version 2023-02-22 11:14:01 +08:00
399ca71075 chore(release): 🚀 publish
- @antv/x6@1.34.11
2023-02-21 23:33:13 +08:00
7c4e1b9272 fix: 🐛 cannot use this here 2023-02-21 22:30:34 +08:00
b8330d164b docs: fix typo about ‘defaultLabel’ (v1) ()
docs: fix typo in labels.zh.md (v1)
2023-02-21 18:13:47 +08:00
d761f59789 chore(release): 🚀 publish
- @antv/x6@1.34.10
2023-02-03 10:35:20 +08:00
a07be165f0 fix: 🐛 change execludeNodes typo () 2023-02-02 18:08:58 +08:00
8c7dec349d chore(release): 🚀 publish
- @antv/x6@1.34.9
2023-02-02 11:23:32 +08:00
733fb867b2 fix(dnd): change dragging container options ()
Co-authored-by: jinxiayi <jinxiayi@nbicc.com>
2023-02-01 17:41:37 +08:00
709f6021be chore(release): 🚀 publish
- @antv/x6@1.34.8
2023-01-31 11:08:07 +08:00
3ca9d416ff chore: 🔧 release new version () 2023-01-31 11:07:31 +08:00
8f891d06b6 fix: 🐛 fix index error for priorityQueue () 2023-01-31 03:30:46 +08:00
ea14d843cc docs: 📚️ show corrected demos in gallery () 2023-01-30 18:04:31 +08:00
25d56d0a66 docs: 📚️ update deps for demos 2022-11-30 16:35:32 +08:00
1e7a14d21d chore(release): 🚀 publish
- @antv/x6-react-components@1.1.20
2022-11-16 10:44:30 +08:00
d6e6b907fd fix: 🐛 fix typo for color-picker () 2022-11-16 10:42:59 +08:00
ba1fc3fd77 feat(x6-react-component): support for antd 5.0 ()
feat(x6-react-component): support for antd 5.0, fix 

Co-authored-by: 诸岳 <fuping.dfp@antgroup.com>
2022-11-16 10:20:47 +08:00
d44dce03de chore(release): 🚀 publish
- @antv/x6@1.34.6
2022-11-09 15:37:34 +08:00
7873c546ff fix: 🐛 add timeout for animation setup ()
Co-authored-by: 文瑀 <wenyu.jqq@antfin.com>
2022-11-09 15:34:19 +08:00
31c124aec7 chore: update contributors [skip ci] 2022-11-01 01:31:27 +00:00
91a59c7709 chore: update contributors [skip ci] 2022-10-30 01:32:05 +00:00
13e5cf36e1 chore: update contributors [skip ci] 2022-10-27 01:30:55 +00:00
537c3e8a50 chore: update contributors [skip ci] 2022-10-25 12:19:53 +00:00
549fe1cf56 docs: 📚️ add tips for insertPort api () 2022-10-25 20:19:31 +08:00
2b46e804c3 chore: update AUTHORS [skip ci] 2022-10-25 09:38:27 +00:00
745a9f4367 chore: update contributors [skip ci] 2022-10-25 09:33:14 +00:00
eef7ccf8bd fix: 🐛 fix nodes moved error when snapped () 2022-10-25 17:32:52 +08:00
1f7603ec05 chore: update contributors [skip ci] 2022-10-25 09:32:34 +00:00
5814103767 fix:🐛fix the bug cannot read properties of null when cell is not exit ()
Co-authored-by: 温贝 <wenbei.wb@alibaba-inc.com>
2022-10-25 17:32:10 +08:00
595858558e fix: 🐛 add warn when use fallback router () 2022-10-25 06:46:07 +08:00
a6e3b4d4d3 fix: 🐛 fix the error in selected nodes position when snapline enabled () 2022-10-24 21:40:13 +08:00
466bc5d324 chore: update contributors [skip ci] 2022-10-23 01:30:26 +00:00
2bdd945670 chore: update contributors [skip ci] 2022-10-20 01:31:58 +00:00
a1ed7ee212 chore: update contributors [skip ci] 2022-10-19 01:30:34 +00:00
aeed9a6d3c chore: update contributors [skip ci] 2022-10-15 01:31:11 +00:00
18e5eb8378 chore: update contributors [skip ci] 2022-10-14 01:32:09 +00:00
609ed7e3d3 chore(release): 🚀 publish
- @antv/x6-geometry@1.0.14
 - @antv/x6-vector@1.4.2
 - @antv/x6@1.34.5
2022-10-13 21:32:50 +08:00
8a8d14abfa fix: 🐛 check if the navigator global is available before usage () 2022-10-13 10:39:54 +08:00
c6ca04317b chore: 🔧 remove version and track file for publish problem () 2022-10-10 15:38:28 +08:00
a57091306c chore(release): 🚀 publish
- @antv/x6-react-components@1.1.19
 - @antv/x6-react-shape@1.6.3
 - @antv/x6-vue-shape@1.5.3
 - @antv/x6@1.34.3
2022-10-10 12:31:53 +08:00
8f0b6fc6e4 chore: 🔧 change publish opts () 2022-10-10 12:28:03 +08:00
28341ac102 chore: 🔧 update publish script () 2022-10-09 22:39:23 +08:00
2e066ab625 2739/revert snapline sharp option deprecation ()
* fix: 🐛 re-enable alternative line style in snapline

* docs(snapline): 📚️ remove deprecation notice

* fix: 🐛 revert import order
2022-10-09 22:33:59 +08:00
e09cb8ce93 fix: 🐛 add resizeOptions to getContentArea ()
2022-10-09 22:25:14 +08:00
232064b74c chore: update contributors [skip ci] 2022-10-07 01:30:49 +00:00
64710553ee chore: update contributors [skip ci] 2022-10-06 01:30:19 +00:00
78c462ed79 chore: update AUTHORS [skip ci] 2022-09-30 08:46:01 +00:00
4954578288 chore: update contributors [skip ci] 2022-09-30 08:38:57 +00:00
6c87514ce7 docs:修复中文文档关于zIndex描述中的错别字 () 2022-09-30 16:38:33 +08:00
1f3fbd7993 docs: 📚️ color not support gradients ()
Co-authored-by: 文瑀 <wenyu.jqq@antfin.com>
2022-09-28 18:13:07 +08:00
ff24e5eef7 chore: update AUTHORS [skip ci] 2022-09-28 10:03:04 +00:00
481c6e1963 chore: update contributors [skip ci] 2022-09-28 09:56:58 +00:00
f33a2979a2 docs: 📚️ Translate some docs\tutorial\intermediate .md to english ()
* Translate to en using deepl.com

* Fix accessibility issue: wrong formated link

Co-authored-by: Thomas Zeugner <thomas.zeugner@kuka.com>
2022-09-28 17:56:33 +08:00
505d8dd89a chore(deps): bump actions/stale from 5 to 6 ()
Bumps [actions/stale](https://github.com/actions/stale) from 5 to 6.
- [Release notes](https://github.com/actions/stale/releases)
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/stale/compare/v5...v6)

---
updated-dependencies:
- dependency-name: actions/stale
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-28 17:42:42 +08:00
bda642cd15 chore: 🔧 update react-shape version for sites demo ()
* chore(release): 🚀 publish

 - @antv/x6-react-components@1.1.18
 - @antv/x6-react-shape@1.6.2
 - @antv/x6-vue-shape@1.5.2
 - @antv/x6@1.34.2

* chore: 🔧 update react-shape version for sites demo

Co-authored-by: 文瑀 <wenyu.jqq@antfin.com>
2022-09-28 13:50:42 +08:00
9c539efab9 chore: update contributors [skip ci] 2022-09-23 01:32:31 +00:00
1cc9d2940c chore: update contributors [skip ci] 2022-09-20 14:40:24 +00:00
d49cf472a2 fix: 🐛 add case sensitive attrs ()
* fix: 🐛 add case sensitive attrs

* chore(release): 🚀 publish

 - @antv/x6-react-components@1.1.18
 - @antv/x6-react-shape@1.6.2
 - @antv/x6-vue-shape@1.5.2
 - @antv/x6@1.34.2

Co-authored-by: 文瑀 <wenyu.jqq@antfin.com>
2022-09-20 22:40:00 +08:00
fee4b13750 feat: foreignObject内部元素默认不触发拖动和选中行为 close ()
* feat:  foreignObject内部元素默认不触发拖动和选中行为 close 

* fix: 🐛 add return type
2022-09-20 22:03:53 +08:00
7c43726a2d chore: update contributors [skip ci] 2022-09-20 05:52:00 +00:00
4c5354ab70 fix: 🐛 fix scroller options typo ()
* chore(release): 🚀 publish

 - @antv/x6-react-components@1.1.17
 - @antv/x6-vue-shape@1.5.1
 - @antv/x6@1.34.1

* fix: 🐛 fix scroller options typo
2022-09-20 13:51:35 +08:00
7725bacc93 docs: 📚️ update demo for readme () 2022-09-20 13:51:19 +08:00
f9b2600353 chore: update AUTHORS [skip ci] 2022-09-15 01:54:18 +00:00
d4393d6a39 chore: 🔧 update react-resize-detector version () 2022-09-15 09:48:23 +08:00
f0ee53a125 chore: update contributors [skip ci] 2022-09-15 01:34:45 +00:00
57c8525bb4 chore: update AUTHORS [skip ci] 2022-09-14 13:35:43 +00:00
9f3dfb7a8d chore: update AUTHORS [skip ci] 2022-09-14 13:13:47 +00:00
72b050c386 docs: change changelog href ()
Co-authored-by: 薛腾飞 <xuetf@maycur.com>
2022-09-14 21:07:05 +08:00
0c024cefed docs: fix the docs in use Vue3 Teleport () 2022-09-14 21:06:30 +08:00
8abcb4bca0 fix: 🐛 add page size check condition () 2022-09-14 09:28:51 +08:00
5f53a09621 chore: update contributors [skip ci] 2022-09-13 01:31:21 +00:00
9f33e01a82 chore: update contributors [skip ci] 2022-09-12 09:17:31 +00:00
f846067448 feat: dnd support dndContainer. close () 2022-09-12 17:17:07 +08:00
8a6338ae3c chore: update contributors [skip ci] 2022-09-11 01:30:51 +00:00
3a79c686cd docs: 📚️ add qrcode for communication () 2022-09-08 15:28:23 +08:00
7db7a15cac chore: update contributors [skip ci] 2022-09-08 01:32:46 +00:00
375c3b190c chore: update contributors [skip ci] 2022-09-07 13:44:49 +00:00
24892181ca chore: 🔧 add publish cmd ()
* chore: 🔧 add publish cmd

* chore: 🔧 delete release-it cmd
2022-09-07 21:44:27 +08:00
841531ecc1 chore: update contributors [skip ci] 2022-09-05 03:26:19 +00:00
2460f20a42 chore(release): 🚀 publish
- @antv/x6-vue-shape@1.5.0
 - @antv/x6@1.34.0
2022-09-05 11:25:33 +08:00
c8f8b9b4e0 fix: 🐛 update style () 2022-09-05 11:22:19 +08:00
0d0d973d3e fix: 🐛 change the update function name to avoid unnecessary updates () 2022-09-04 21:41:53 +08:00
eed25260af chore: update contributors [skip ci] 2022-09-04 01:32:43 +00:00
9f1130f260 chore: update contributors [skip ci] 2022-09-03 01:34:05 +00:00
cd9df4d609 chore: update AUTHORS [skip ci] 2022-09-02 11:02:36 +00:00
eb195abe3c chore: update contributors [skip ci] 2022-09-02 10:55:55 +00:00
fa8f71a3e1 doc: fix prop names of menu component in doc ()
Co-authored-by: 雪奈 <xuenai.zxl@antgroup.com>
2022-09-02 18:55:29 +08:00
4171975d62 chore: update contributors [skip ci] 2022-09-01 11:10:58 +00:00
f0bbb828a3 fix: 🐛 support percent in edge button tool () 2022-09-01 19:10:34 +08:00
d52ddfad87 fix: fix problem that selection rubberband cannot be created ()
* docs: 📚️ remove update methods in scroller

* chore: 🔧 update x6-sites deps

* fix: 🐛 fix problem that selection rubberband cannot be created
2022-09-01 17:41:47 +08:00
5c39bcf2c8 chore: update contributors [skip ci] 2022-09-01 01:33:45 +00:00
8cac05deaf chore: update AUTHORS [skip ci] 2022-08-29 09:20:21 +00:00
96a387822e chore: update contributors [skip ci] 2022-08-29 09:17:36 +00:00
2f3a565843 fix: 🐛修复 issue #2504问题 () 2022-08-29 17:17:14 +08:00
64de4c7753 chore: update contributors [skip ci] 2022-08-29 09:14:12 +00:00
502ceb1abb fix: 🐛 修复 scheduler 任务调度的问题 () () 2022-08-29 17:13:52 +08:00
0509fd4897 chore: update contributors [skip ci] 2022-08-29 01:31:02 +00:00
1f6196e663 refactor: ♻️ refactor x6 vue shape. close () 2022-08-26 11:56:26 +08:00
e9de0ba4c0 chore: update contributors [skip ci] 2022-08-26 01:31:29 +00:00
8ab3810c5e chore: update contributors [skip ci] 2022-08-25 14:05:08 +00:00
7405eba4e4 chore(deps): bump @actions/core in /scripts/monorepo-semantic-release ()
Bumps [@actions/core](https://github.com/actions/toolkit/tree/HEAD/packages/core) from 1.2.6 to 1.9.1.
- [Release notes](https://github.com/actions/toolkit/releases)
- [Changelog](https://github.com/actions/toolkit/blob/main/packages/core/RELEASES.md)
- [Commits](https://github.com/actions/toolkit/commits/HEAD/packages/core)

---
updated-dependencies:
- dependency-name: "@actions/core"
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-08-25 22:03:57 +08:00
b1add84978 chore: update contributors [skip ci] 2022-08-25 13:46:44 +00:00
d51c0db472 feat: support scroller resize direction ()
* feat:  support scroller resize direction

Closes: 

* feat:  adjust calcContextArea param

Co-authored-by: MrMengJ <mrmengj@gmail.com>
2022-08-25 21:46:18 +08:00
59919533ce chore: update contributors [skip ci] 2022-08-20 01:31:01 +00:00
43fee42084 chore: update contributors [skip ci] 2022-08-19 01:31:35 +00:00
7066d63a35 chore: update contributors [skip ci] 2022-08-18 01:31:54 +00:00
0ebf120be3 fix: 🐛 fontSize拼写错误 () 2022-08-17 23:14:46 +08:00
710c249c15 chore: update contributors [skip ci] 2022-08-17 15:04:52 +00:00
e4d3c2b253 fix: 🐛 修复toggleVisible之后导致不渲染的问题 () 2022-08-17 23:04:20 +08:00
e83b1ed507 fix(history): 🐛 try to merge move+embed into 1 undo () 2022-08-17 23:03:25 +08:00
cc2cd5fdb8 chore: update contributors [skip ci] 2022-08-16 14:02:03 +00:00
17dcde8426 fix: 🐛 fix some issues ()
1、解决点击画布时,input无法正常失去焦点
2、添加touch-action: none;阻止移动端中滑动节点页面一起移动
3、https://github.com/antvis/X6/issues/2527
2022-08-16 22:01:31 +08:00
a9dcc84994 chore: update contributors [skip ci] 2022-08-13 01:30:53 +00:00
725372fa96 chore: 🔧 release @antv/x6@1.33.1 2022-08-12 08:09:15 +08:00
46af7cd55a fix: 🐛 not sort views after visible change () 2022-08-12 08:01:02 +08:00
e7f3257640 chore: update contributors [skip ci] 2022-08-11 09:57:54 +00:00
9791dbb09f docs: 📚️ modernize react portal usage and examples () 2022-08-11 17:57:42 +08:00
ff2d29889d docs: 📚️ add deprecation notice for Snapline.sharp () 2022-08-11 17:57:29 +08:00
74b8256ce1 chore: update contributors [skip ci] 2022-08-10 01:30:20 +00:00
2248b27258 docs: 📚️ specify createEdge description () 2022-08-08 21:41:36 +08:00
f7bf8219c3 chore: 🔧 release @antv/x6@1.33.0 2022-08-08 20:52:44 +08:00
4ffb61912b fix: fix some issue ()
* fix: 🐛 fix set edge target error

* fix: 🐛 sort views after cell visible changed

* fix: 🐛 filter empty cells in selection:changed event

* chore: 🔧 update release tag name
2022-08-08 20:34:15 +08:00
59fb1d2e3a chore: 🔧 release @antv/x6-vue-shape@1.4.2 2022-08-08 16:46:16 +08:00
6b85512a25 chore: 🔧 update git tag for release-it () 2022-08-08 16:40:22 +08:00
c7269af2ef chore: 🔧 add release-it () 2022-08-08 16:21:10 +08:00
e3d6d5e694 chore: 🔧 update x6 version () 2022-08-08 15:48:40 +08:00
8dde11951f chore: update contributors [skip ci] 2022-08-05 01:30:34 +00:00
c90ede231e chore: update AUTHORS [skip ci] 2022-08-04 01:22:35 +00:00
ae51381992 docs(README.md): fix typo of CDN () 2022-08-04 09:15:35 +08:00
b10ef693e8 chore: update AUTHORS [skip ci] 2022-08-02 07:49:25 +00:00
f5c5537650 chore: update contributors [skip ci] 2022-08-02 07:43:13 +00:00
ccf44c1732 docs: add some methods for model documentation ()
* docs: add addCells method for model documentation

* docs: add some methods for model documentation

* docs: add more description for model documentation
2022-08-02 15:42:47 +08:00
5a865db99e chore: update contributors [skip ci] 2022-08-01 21:36:50 +00:00
c472648ae1 fix: 升级vue-demi版本 () 2022-08-02 05:36:28 +08:00
6351a5064d feat: preventDefaultContextMenu support function ()
* feat:  preventDefaultContextMenu support function

Closes: 

* refactor: ♻️ adjust preventDefaultContextMenu function param

Co-authored-by: MrMengJ <mrmengj@gmail.com>
2022-08-02 05:34:06 +08:00
e02aefdc4f chore: update contributors [skip ci] 2022-08-01 01:31:03 +00:00
922c98632c chore: update contributors [skip ci] 2022-07-27 01:31:03 +00:00
dc59ce1d85 chore(deps): bump file-type from 16.5.0 to 16.5.4 ()
Bumps [file-type](https://github.com/sindresorhus/file-type) from 16.5.0 to 16.5.4.
- [Release notes](https://github.com/sindresorhus/file-type/releases)
- [Commits](https://github.com/sindresorhus/file-type/compare/v16.5.0...v16.5.4)

---
updated-dependencies:
- dependency-name: file-type
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-23 13:33:53 +08:00
8db399f6fc chore: 🔧 change release commit message () 2022-07-22 17:01:24 +08:00
edd1b36abc chore: 🔧 add release script () 2022-07-22 16:41:57 +08:00
794df7f497 chore: 🔧 change x6 version () 2022-07-22 16:08:33 +08:00
35774995b7 chore: update AUTHORS [skip ci] 2022-07-22 07:28:13 +00:00
d67bcc104d chore: update contributors [skip ci] 2022-07-22 07:21:44 +00:00
de80eb588b docs: 📖 the tool of edge documentation update ()
Co-authored-by: hetengfei <hetengfei@able-elec.com>
2022-07-22 15:21:33 +08:00
b9906c9fa5 fix: Enhance isinputevent method () 2022-07-22 15:21:10 +08:00
c4b10e38a5 chore: update contributors [skip ci] 2022-07-20 03:59:19 +00:00
4b104eb73e feat: New property for edge connection attr ()
* feat:  New property for edge connection attr

* docs: 📚️ typo
2022-07-20 11:58:59 +08:00
aee252f5d7 chore(deps): bump terser from 4.8.0 to 4.8.1 ()
Bumps [terser](https://github.com/terser/terser) from 4.8.0 to 4.8.1.
- [Release notes](https://github.com/terser/terser/releases)
- [Changelog](https://github.com/terser/terser/blob/master/CHANGELOG.md)
- [Commits](https://github.com/terser/terser/commits)

---
updated-dependencies:
- dependency-name: terser
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-20 10:30:29 +08:00
b3c2adb4b8 chore(deps): bump glob-parent in /scripts/monorepo-semantic-release ()
Bumps [glob-parent](https://github.com/gulpjs/glob-parent) from 5.1.1 to 5.1.2.
- [Release notes](https://github.com/gulpjs/glob-parent/releases)
- [Changelog](https://github.com/gulpjs/glob-parent/blob/main/CHANGELOG.md)
- [Commits](https://github.com/gulpjs/glob-parent/compare/v5.1.1...v5.1.2)

---
updated-dependencies:
- dependency-name: glob-parent
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-20 10:30:18 +08:00
7eac6c4645 chore: update contributors [skip ci] 2022-07-20 01:37:50 +00:00
67df6722ae chore: 🔧 comment GitHub actions ()
* chore: 🔧 literally just commenting GitHub actions

* chore: 🔧 correct comment in release.yml
2022-07-20 09:37:25 +08:00
438e394b99 chore: 🔧 include src to x6-react-shape build files () 2022-07-12 12:09:51 +08:00
4422d2099a chore: update contributors [skip ci] 2022-07-11 01:30:57 +00:00
df4bcf653f fix: fix selection box incorrect position when enable snapline ()
Closes: 

Co-authored-by: MrMengJ <mrmengj@gmail.com>
2022-07-10 13:35:01 +08:00
206f589bb3 chore: update contributors [skip ci] 2022-07-10 05:21:41 +00:00
b27a3ff9ef feat: support shift key multi-selection ()
* feat: support shift key multi-selection

Closes: 

* feat: add config options for multiple selection and update the docs

Co-authored-by: MrMengJ <mrmengj@gmail.com>
2022-07-10 13:21:14 +08:00
06702ce221 fix: 🐛 normalize angle when rotating () 2022-07-10 07:06:38 +08:00
02579cb1c1 fix: 🐛 fix embeded event trigger error () 2022-07-09 17:24:29 +08:00
6a2a59b1cb feat: support padding options for manhattan router () 2022-07-09 15:43:03 +08:00
1fbba70e7e chore: update contributors [skip ci] 2022-07-09 00:45:05 +00:00
df7a0ee73c fix: 🐛 snapline constructor init offset close () 2022-07-09 08:44:38 +08:00
3dcafac5ac fix: 🐛 set visible true when init cells () 2022-07-09 08:41:43 +08:00
8b4192bd5f chore: update contributors [skip ci] 2022-07-08 10:15:59 +00:00
829406e81b feat: add clipboard:changed event () 2022-07-08 18:15:33 +08:00
f907d37cb1 feat: Set excludeNodes for manhattan args () 2022-07-08 17:24:24 +08:00
3b4aab93a6 fix: 🐛 add x6-port-groupName class for port container () 2022-07-08 16:31:15 +08:00
ce3e1fc6be chore: update AUTHORS [skip ci] 2022-07-08 07:40:50 +00:00
9bda76514a chore(deps): bump moment in /scripts/monorepo-semantic-release ()
Bumps [moment](https://github.com/moment/moment) from 2.29.2 to 2.29.4.
- [Release notes](https://github.com/moment/moment/releases)
- [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/moment/moment/compare/2.29.2...2.29.4)

---
updated-dependencies:
- dependency-name: moment
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-08 15:34:48 +08:00
58b2921bfb chore(deps): bump moment from 2.29.2 to 2.29.4 ()
Bumps [moment](https://github.com/moment/moment) from 2.29.2 to 2.29.4.
- [Release notes](https://github.com/moment/moment/releases)
- [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/moment/moment/compare/2.29.2...2.29.4)

---
updated-dependencies:
- dependency-name: moment
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-08 15:34:18 +08:00
608f61c3cd chore: 🔧 reduce the version gitleaks-actions to 1.6.0 () 2022-07-08 14:59:04 +08:00
b43b8f028a docs: 📚️ add qa and changelog link () 2022-07-08 14:56:12 +08:00
6cf6d31998 chore(deps): bump zricethezav/gitleaks-action from 1.6.0 to 2.0.4 ()
Bumps [zricethezav/gitleaks-action](https://github.com/zricethezav/gitleaks-action) from 1.6.0 to 2.0.4.
- [Release notes](https://github.com/zricethezav/gitleaks-action/releases)
- [Commits](https://github.com/zricethezav/gitleaks-action/compare/v1.6.0...v2.0.4)

---
updated-dependencies:
- dependency-name: zricethezav/gitleaks-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-07-05 21:15:05 +08:00
b3edfc7590 chore: update contributors [skip ci] 2022-07-05 13:14:39 +00:00
045499511d fix: fix global keyboard event is invalid in some case ()
Closes: 

Co-authored-by: MrMengJ <mrmengj@gmail.com>
2022-07-05 21:14:12 +08:00
1f5d5d1aca chore: 🔧 update x6 version () 2022-07-05 19:49:37 +08:00
7c513e7af1 chore: update AUTHORS [skip ci] 2022-07-05 05:56:53 +00:00
1444b16222 chore: update contributors [skip ci] 2022-07-05 05:50:41 +00:00
c89f8599ce fix: 🐛 Fixed the bug that node can't be draging. ()
* fix: 🐛 Fixed the bug that node can't be draging
2022-07-05 13:50:19 +08:00
d622db6d6b fix: 🐛 pick the max zindex node when frontOnly enabled in embending () 2022-06-30 20:05:13 +08:00
ceead471ff chore: update AUTHORS [skip ci] 2022-06-30 07:59:43 +00:00
0696064480 chore: update contributors [skip ci] 2022-06-30 07:55:50 +00:00
0d2318605e docs: recorrect the docs of custom-node () 2022-06-30 15:53:47 +08:00
0416d0af4e chore: 🔧 update version in package.json () 2022-06-29 14:12:57 +08:00
a60e8f1653 chore: 🔧 code format and update version () 2022-06-29 14:03:19 +08:00
e4f38cd9e8 chore: 🔧 pin gitleaks-actions to v1.6.0 () 2022-06-29 13:51:30 +08:00
8cb9085dc1 fix: 🐛 fix allowNode option affects port connections () 2022-06-29 13:46:49 +08:00
997430abba chore: update contributors [skip ci] 2022-06-27 11:49:00 +00:00
166b9346b3 fix: 🐛 Fixed the bug that options.connecting.allowEdge does not take effect when options.connecting.snap is setting true (##2024) () 2022-06-27 19:48:39 +08:00
2750d0e69e chore: update contributors [skip ci] 2022-06-27 01:31:14 +00:00
3e5189c2b7 chore: update AUTHORS [skip ci] 2022-06-23 11:36:27 +00:00
6045888e6a chore: update contributors [skip ci] 2022-06-23 11:30:15 +00:00
933c6ed8e0 fix: 🐛 Fixed the bug that node moved when draging port () 2022-06-23 19:29:53 +08:00
df47d90889 chore: update AUTHORS [skip ci] 2022-06-20 12:02:28 +00:00
1648f12e83 chore: update contributors [skip ci] 2022-06-17 01:29:47 +00:00
815b044618 chore: update contributors [skip ci] 2022-06-16 01:31:31 +00:00
7e39cf1374 chore: 🔧 fix malfunctioning github workflow () 2022-06-15 19:48:06 +08:00
8b75ee89a4 fix: 🐛 add some case sensitive attr () 2022-06-15 19:47:28 +08:00
5a24508334 chore: update contributors [skip ci] 2022-06-13 12:34:33 +00:00
b259afc9f2 perf: use native SVG elements in snapline instead of DOM elements and jQuery ()
* chore: 🔧 bump versions

* perf(snapline): use native SVG capabilities

* fix(snapline): 🐛 use built-in SVG tools instead of native ones
2022-06-13 20:34:09 +08:00
992d664c53 chore: update AUTHORS [skip ci] 2022-06-10 11:26:59 +00:00
8ce480c6b9 chore(deps): bump semantic-release in /scripts/monorepo-semantic-release ()
Bumps [semantic-release](https://github.com/semantic-release/semantic-release) from 17.2.2 to 19.0.3.
- [Release notes](https://github.com/semantic-release/semantic-release/releases)
- [Commits](https://github.com/semantic-release/semantic-release/compare/v17.2.2...v19.0.3)

---
updated-dependencies:
- dependency-name: semantic-release
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-10 19:22:09 +08:00
e978b8d0e5 chore: update contributors [skip ci] 2022-06-10 11:21:52 +00:00
a335e1c52f docs: Change the getCellById method parameter name ()
The cell is changed to id
2022-06-10 19:20:36 +08:00
3e4481063d chore: update contributors [skip ci] 2022-06-10 09:31:57 +00:00
50d21787c4 fix(selection): 🐛 Fix nodes in multiple-selection being more than once due to incorrect event handler stopper 2022-06-10 17:31:33 +08:00
32cae56c40 chore(release): @antv/x6-svg-to-shape@1.0.6 [skip ci]
## @antv/x6-svg-to-shape [1.0.6](https://github.com/antvis/x6/compare/@antv/x6-svg-to-shape@1.0.5...@antv/x6-svg-to-shape@1.0.6) (2022-06-07)
2022-06-07 09:10:39 +00:00
667720efb9 chore(release): @antv/x6-sites@1.5.0 [skip ci]
# @antv/x6-sites [1.5.0](https://github.com/antvis/x6/compare/@antv/x6-sites@1.4.1...@antv/x6-sites@1.5.0) (2022-06-07)

### Bug Fixes

* 🐛 add updateCellId api ([](https://github.com/antvis/x6/issues/1739)) ([78cdb3b](78cdb3bd56))
* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 release x6 v1.28.2 ([](https://github.com/antvis/x6/issues/1654)) ([745b90a](745b90ac94))

### Features

*  add insertPort api ([](https://github.com/antvis/x6/issues/1763)) ([6809dba](6809dba2d8))
* vue3支持使用useTeleport ([](https://github.com/antvis/x6/issues/2078)) ([b8c2175](b8c217572a))
2022-06-07 09:10:35 +00:00
76d98ded26 chore(release): @antv/x6-sites-demos@1.2.1 [skip ci]
## @antv/x6-sites-demos [1.2.1](https://github.com/antvis/x6/compare/@antv/x6-sites-demos@1.2.0...@antv/x6-sites-demos@1.2.1) (2022-06-07)

### Bug Fixes

* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 update x6 version ([](https://github.com/antvis/x6/issues/1655)) ([07037be](07037beb59))
2022-06-07 09:10:29 +00:00
3302c56bd4 chore(release): @antv/x6-example-features@1.2.2 [skip ci]
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-06-07)

### Bug Fixes

* 🐛 optimize contextmenu tools ([](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](cc01fdf208))
* 🐛 update x6-react-shape version ([](https://github.com/antvis/x6/issues/1425)) ([4208846](4208846337))

### Performance Improvements

* ️ add simple config to remove rect and text element ([](https://github.com/antvis/x6/issues/1449)) ([0b5f241](0b5f2413f0))
2022-06-07 09:10:23 +00:00
3dba62a858 chore(release): @antv/x6-app-er@1.1.7 [skip ci]
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-06-07)
2022-06-07 09:10:18 +00:00
9befb7d8db chore(release): @antv/x6-app-draw@1.1.6 [skip ci]
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-06-07)
2022-06-07 09:10:14 +00:00
e1e295b64e chore(release): @antv/x6-app-dag@1.1.7 [skip ci]
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-06-07)
2022-06-07 09:10:10 +00:00
06fdf6315b chore(release): @antv/x6-package-json@1.0.2 [skip ci]
## @antv/x6-package-json [1.0.2](https://github.com/antvis/x6/compare/@antv/x6-package-json@1.0.1...@antv/x6-package-json@1.0.2) (2022-06-07)
2022-06-07 09:10:07 +00:00
bc6e8bcb28 chore(deps): bump codecov/codecov-action from 1 to 3 ()
Bumps [codecov/codecov-action](https://github.com/codecov/codecov-action) from 1 to 3.
- [Release notes](https://github.com/codecov/codecov-action/releases)
- [Changelog](https://github.com/codecov/codecov-action/blob/master/CHANGELOG.md)
- [Commits](https://github.com/codecov/codecov-action/compare/v1...v3)

---
updated-dependencies:
- dependency-name: codecov/codecov-action
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-07 16:54:49 +08:00
892d74e56b chore(deps): bump actions/stale from 3 to 5 ()
Bumps [actions/stale](https://github.com/actions/stale) from 3 to 5.
- [Release notes](https://github.com/actions/stale/releases)
- [Changelog](https://github.com/actions/stale/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/stale/compare/v3...v5)

---
updated-dependencies:
- dependency-name: actions/stale
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-07 16:54:31 +08:00
bf9f6f1947 chore(deps): bump dessant/lock-threads from 2 to 3 ()
Bumps [dessant/lock-threads](https://github.com/dessant/lock-threads) from 2 to 3.
- [Release notes](https://github.com/dessant/lock-threads/releases)
- [Changelog](https://github.com/dessant/lock-threads/blob/master/CHANGELOG.md)
- [Commits](https://github.com/dessant/lock-threads/compare/v2...v3)

---
updated-dependencies:
- dependency-name: dessant/lock-threads
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-07 16:54:05 +08:00
4304dd9322 chore(deps): bump actions/cache from 2 to 3 ()
Bumps [actions/cache](https://github.com/actions/cache) from 2 to 3.
- [Release notes](https://github.com/actions/cache/releases)
- [Changelog](https://github.com/actions/cache/blob/main/RELEASES.md)
- [Commits](https://github.com/actions/cache/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/cache
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-07 16:53:47 +08:00
4381a8a339 chore(release): @antv/x6-sites@1.5.0 [skip ci]
# @antv/x6-sites [1.5.0](https://github.com/antvis/x6/compare/@antv/x6-sites@1.4.1...@antv/x6-sites@1.5.0) (2022-06-06)

### Bug Fixes

* 🐛 add updateCellId api ([](https://github.com/antvis/x6/issues/1739)) ([78cdb3b](78cdb3bd56))
* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 release x6 v1.28.2 ([](https://github.com/antvis/x6/issues/1654)) ([745b90a](745b90ac94))

### Features

*  add insertPort api ([](https://github.com/antvis/x6/issues/1763)) ([6809dba](6809dba2d8))
* vue3支持使用useTeleport ([](https://github.com/antvis/x6/issues/2078)) ([b8c2175](b8c217572a))
2022-06-06 04:00:32 +00:00
fc2fccaee0 chore(release): @antv/x6-sites-demos@1.2.1 [skip ci]
## @antv/x6-sites-demos [1.2.1](https://github.com/antvis/x6/compare/@antv/x6-sites-demos@1.2.0...@antv/x6-sites-demos@1.2.1) (2022-06-06)

### Bug Fixes

* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 update x6 version ([](https://github.com/antvis/x6/issues/1655)) ([07037be](07037beb59))
2022-06-06 04:00:28 +00:00
a5c75d3e0f chore(release): @antv/x6-example-features@1.2.2 [skip ci]
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-06-06)

### Bug Fixes

* 🐛 optimize contextmenu tools ([](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](cc01fdf208))
* 🐛 update x6-react-shape version ([](https://github.com/antvis/x6/issues/1425)) ([4208846](4208846337))

### Performance Improvements

* ️ add simple config to remove rect and text element ([](https://github.com/antvis/x6/issues/1449)) ([0b5f241](0b5f2413f0))
2022-06-06 04:00:23 +00:00
049090e009 chore(release): @antv/x6-app-er@1.1.7 [skip ci]
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-06-06)
2022-06-06 04:00:18 +00:00
2da5b71540 chore(release): @antv/x6-app-draw@1.1.6 [skip ci]
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-06-06)
2022-06-06 04:00:15 +00:00
37875b8245 chore(release): @antv/x6-app-dag@1.1.7 [skip ci]
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-06-06)
2022-06-06 04:00:11 +00:00
cd4c142da1 chore(release): @antv/x6-package-json@1.0.2 [skip ci]
## @antv/x6-package-json [1.0.2](https://github.com/antvis/x6/compare/@antv/x6-package-json@1.0.1...@antv/x6-package-json@1.0.2) (2022-06-06)
2022-06-06 04:00:08 +00:00
f86d935f05 chore(release): @antv/x6-svg-to-shape@1.0.6 [skip ci]
## @antv/x6-svg-to-shape [1.0.6](https://github.com/antvis/x6/compare/@antv/x6-svg-to-shape@1.0.5...@antv/x6-svg-to-shape@1.0.6) (2022-06-06)
2022-06-06 04:00:05 +00:00
992b0b8366 docs: 📚️ optimize dagre options () 2022-06-06 11:46:15 +08:00
8a4a677b77 chore(deps): bump devcert from 1.1.3 to 1.2.1 ()
Bumps [devcert](https://github.com/davewasmer/devcert) from 1.1.3 to 1.2.1.
- [Release notes](https://github.com/davewasmer/devcert/releases)
- [Changelog](https://github.com/davewasmer/devcert/blob/master/CHANGELOG.md)
- [Commits](https://github.com/davewasmer/devcert/compare/v1.1.3...v1.2.1)

---
updated-dependencies:
- dependency-name: devcert
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-06 09:47:53 +08:00
da55ef7a60 chore(release): @antv/x6-svg-to-shape@1.0.6 [skip ci]
## @antv/x6-svg-to-shape [1.0.6](https://github.com/antvis/x6/compare/@antv/x6-svg-to-shape@1.0.5...@antv/x6-svg-to-shape@1.0.6) (2022-06-05)
2022-06-05 08:40:35 +00:00
54b9debbce chore(release): @antv/x6-sites@1.5.0 [skip ci]
# @antv/x6-sites [1.5.0](https://github.com/antvis/x6/compare/@antv/x6-sites@1.4.1...@antv/x6-sites@1.5.0) (2022-06-05)

### Bug Fixes

* 🐛 add updateCellId api ([](https://github.com/antvis/x6/issues/1739)) ([78cdb3b](78cdb3bd56))
* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 release x6 v1.28.2 ([](https://github.com/antvis/x6/issues/1654)) ([745b90a](745b90ac94))

### Features

*  add insertPort api ([](https://github.com/antvis/x6/issues/1763)) ([6809dba](6809dba2d8))
* vue3支持使用useTeleport ([](https://github.com/antvis/x6/issues/2078)) ([b8c2175](b8c217572a))
2022-06-05 08:40:32 +00:00
eef4a6df4c chore(release): @antv/x6-sites-demos@1.2.1 [skip ci]
## @antv/x6-sites-demos [1.2.1](https://github.com/antvis/x6/compare/@antv/x6-sites-demos@1.2.0...@antv/x6-sites-demos@1.2.1) (2022-06-05)

### Bug Fixes

* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 update x6 version ([](https://github.com/antvis/x6/issues/1655)) ([07037be](07037beb59))
2022-06-05 08:40:27 +00:00
bf7540c1f9 chore(release): @antv/x6-example-features@1.2.2 [skip ci]
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-06-05)

### Bug Fixes

* 🐛 optimize contextmenu tools ([](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](cc01fdf208))
* 🐛 update x6-react-shape version ([](https://github.com/antvis/x6/issues/1425)) ([4208846](4208846337))

### Performance Improvements

* ️ add simple config to remove rect and text element ([](https://github.com/antvis/x6/issues/1449)) ([0b5f241](0b5f2413f0))
2022-06-05 08:40:23 +00:00
eb98529391 chore(release): @antv/x6-app-er@1.1.7 [skip ci]
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-06-05)
2022-06-05 08:40:18 +00:00
0e5ff9204a chore(release): @antv/x6-app-draw@1.1.6 [skip ci]
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-06-05)
2022-06-05 08:40:15 +00:00
6115dbbd75 chore(release): @antv/x6-app-dag@1.1.7 [skip ci]
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-06-05)
2022-06-05 08:40:11 +00:00
3f786136b4 chore(release): @antv/x6-angular-shape@1.3.1 [skip ci]
## @antv/x6-angular-shape [1.3.1](https://github.com/antvis/x6/compare/@antv/x6-angular-shape@1.3.0...@antv/x6-angular-shape@1.3.1) (2022-06-05)
2022-06-05 08:40:08 +00:00
431116f629 chore(release): @antv/x6-package-json@1.0.2 [skip ci]
## @antv/x6-package-json [1.0.2](https://github.com/antvis/x6/compare/@antv/x6-package-json@1.0.1...@antv/x6-package-json@1.0.2) (2022-06-05)
2022-06-05 08:40:05 +00:00
cbbe1b6b54 chore(deps-dev): bump @angular/core from 10.2.5 to 11.0.5 ()
Bumps [@angular/core](https://github.com/angular/angular/tree/HEAD/packages/core) from 10.2.5 to 11.0.5.
- [Release notes](https://github.com/angular/angular/releases)
- [Changelog](https://github.com/angular/angular/blob/main/CHANGELOG.md)
- [Commits](https://github.com/angular/angular/commits/11.0.5/packages/core)

---
updated-dependencies:
- dependency-name: "@angular/core"
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-05 16:24:25 +08:00
d02ad4cb3b chore(deps): bump actions/labeler from 2 to 4 ()
Bumps [actions/labeler](https://github.com/actions/labeler) from 2 to 4.
- [Release notes](https://github.com/actions/labeler/releases)
- [Commits](https://github.com/actions/labeler/compare/v2...v4)

---
updated-dependencies:
- dependency-name: actions/labeler
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-01 07:25:36 +08:00
a9f0dd35b9 chore(deps): bump Naturalclar/issue-action from 2.0.1 to 2.0.2 ()
Bumps [Naturalclar/issue-action](https://github.com/Naturalclar/issue-action) from 2.0.1 to 2.0.2.
- [Release notes](https://github.com/Naturalclar/issue-action/releases)
- [Commits](https://github.com/Naturalclar/issue-action/compare/v2.0.1...v2.0.2)

---
updated-dependencies:
- dependency-name: Naturalclar/issue-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-01 07:25:09 +08:00
484df66d36 chore(deps): bump actions/checkout from 2 to 3 ()
Bumps [actions/checkout](https://github.com/actions/checkout) from 2 to 3.
- [Release notes](https://github.com/actions/checkout/releases)
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md)
- [Commits](https://github.com/actions/checkout/compare/v2...v3)

---
updated-dependencies:
- dependency-name: actions/checkout
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-01 07:24:44 +08:00
0d691c61cd chore: update contributors [skip ci] 2022-05-31 23:24:14 +00:00
5849eb9a88 chore(deps): bump peter-evans/repository-dispatch from 1 to 2 ()
Bumps [peter-evans/repository-dispatch](https://github.com/peter-evans/repository-dispatch) from 1 to 2.
- [Release notes](https://github.com/peter-evans/repository-dispatch/releases)
- [Commits](https://github.com/peter-evans/repository-dispatch/compare/v1...v2)

---
updated-dependencies:
- dependency-name: peter-evans/repository-dispatch
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-01 07:24:10 +08:00
c285ce6e0f chore(deps): bump actions/setup-node from 1 to 3 ()
Bumps [actions/setup-node](https://github.com/actions/setup-node) from 1 to 3.
- [Release notes](https://github.com/actions/setup-node/releases)
- [Commits](https://github.com/actions/setup-node/compare/v1...v3)

---
updated-dependencies:
- dependency-name: actions/setup-node
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-06-01 07:23:44 +08:00
817d08ff41 chore(release): @antv/x6-sites@1.5.0 [skip ci]
# @antv/x6-sites [1.5.0](https://github.com/antvis/x6/compare/@antv/x6-sites@1.4.1...@antv/x6-sites@1.5.0) (2022-05-31)

### Bug Fixes

* 🐛 add updateCellId api ([](https://github.com/antvis/x6/issues/1739)) ([78cdb3b](78cdb3bd56))
* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 release x6 v1.28.2 ([](https://github.com/antvis/x6/issues/1654)) ([745b90a](745b90ac94))

### Features

*  add insertPort api ([](https://github.com/antvis/x6/issues/1763)) ([6809dba](6809dba2d8))
* vue3支持使用useTeleport ([](https://github.com/antvis/x6/issues/2078)) ([b8c2175](b8c217572a))

### Dependencies

* **@antv/x6:** upgraded to 1.32.3
2022-05-31 13:03:55 +00:00
d63f26023f chore(release): @antv/x6-sites-demos@1.2.1 [skip ci]
## @antv/x6-sites-demos [1.2.1](https://github.com/antvis/x6/compare/@antv/x6-sites-demos@1.2.0...@antv/x6-sites-demos@1.2.1) (2022-05-31)

### Bug Fixes

* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 update x6 version ([](https://github.com/antvis/x6/issues/1655)) ([07037be](07037beb59))

### Dependencies

* **@antv/x6:** upgraded to 1.32.3
2022-05-31 13:03:50 +00:00
a56182ee06 chore(release): @antv/x6-example-features@1.2.2 [skip ci]
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-05-31)

### Bug Fixes

* 🐛 optimize contextmenu tools ([](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](cc01fdf208))
* 🐛 update x6-react-shape version ([](https://github.com/antvis/x6/issues/1425)) ([4208846](4208846337))

### Performance Improvements

* ️ add simple config to remove rect and text element ([](https://github.com/antvis/x6/issues/1449)) ([0b5f241](0b5f2413f0))

### Dependencies

* **@antv/x6:** upgraded to 1.32.3
2022-05-31 13:03:44 +00:00
51819712e7 chore(release): @antv/x6-app-er@1.1.7 [skip ci]
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-05-31)

### Dependencies

* **@antv/x6:** upgraded to 1.32.3
2022-05-31 13:03:39 +00:00
92db8470a1 chore(release): @antv/x6-app-draw@1.1.6 [skip ci]
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-05-31)

### Dependencies

* **@antv/x6:** upgraded to 1.32.3
2022-05-31 13:03:35 +00:00
3e512b92b7 chore(release): @antv/x6-app-dag@1.1.7 [skip ci]
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-05-31)

### Dependencies

* **@antv/x6:** upgraded to 1.32.3
2022-05-31 13:03:30 +00:00
4f72b0d5c1 chore(release): @antv/x6@1.32.3 [skip ci]
## @antv/x6 [1.32.3](https://github.com/antvis/x6/compare/@antv/x6@1.32.2...@antv/x6@1.32.3) (2022-05-31)

### Bug Fixes

* 🐛 Fixed the error when a node meet an invisiable node in node:embedding event ([](https://github.com/antvis/x6/issues/2129)) ([6ef7f55](6ef7f55334))
2022-05-31 13:03:26 +00:00
045412de6d chore(release): @antv/x6-package-json@1.0.2 [skip ci]
## @antv/x6-package-json [1.0.2](https://github.com/antvis/x6/compare/@antv/x6-package-json@1.0.1...@antv/x6-package-json@1.0.2) (2022-05-31)
2022-05-31 13:03:21 +00:00
4b7c565305 chore(release): @antv/x6-svg-to-shape@1.0.6 [skip ci]
## @antv/x6-svg-to-shape [1.0.6](https://github.com/antvis/x6/compare/@antv/x6-svg-to-shape@1.0.5...@antv/x6-svg-to-shape@1.0.6) (2022-05-31)

### Dependencies

* **@antv/x6:** upgraded to 1.32.3
2022-05-31 13:03:17 +00:00
d2056dbc21 chore: Included githubactions in the dependabot config ()
This should help with keeping the GitHub actions updated on new releases. This will also help with keeping it secure.

Dependabot helps in keeping the supply chain secure https://docs.github.com/en/code-security/dependabot

GitHub actions up to date https://docs.github.com/en/code-security/dependabot/working-with-dependabot/keeping-your-actions-up-to-date-with-dependabot

https://github.com/ossf/scorecard/blob/main/docs/checks.md#dependency-update-tool
Signed-off-by: naveen <172697+naveensrinivasan@users.noreply.github.com>
2022-05-31 20:47:52 +08:00
a555693442 chore: update contributors [skip ci] 2022-05-31 01:30:08 +00:00
dc5f606edb chore: update AUTHORS [skip ci] 2022-05-30 08:39:40 +00:00
bba7307bd1 chore: Set permissions for GitHub actions ()
Restrict the GitHub token permissions only to the required ones; this way, even if the attackers will succeed in compromising your workflow, they won’t be able to do much.

- Included permissions for the action. https://github.com/ossf/scorecard/blob/main/docs/checks.md#token-permissions

https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#permissions

https://docs.github.com/en/actions/using-jobs/assigning-permissions-to-jobs

[Keeping your GitHub Actions and workflows secure Part 1: Preventing pwn requests](https://securitylab.github.com/research/github-actions-preventing-pwn-requests/)

Signed-off-by: naveen <172697+naveensrinivasan@users.noreply.github.com>
2022-05-30 16:31:20 +08:00
07794dc611 chore(deps): bump workspace-tools from 0.12.3 to 0.18.4 ()
Bumps [workspace-tools](https://github.com/microsoft/workspace-tools) from 0.12.3 to 0.18.4.
- [Release notes](https://github.com/microsoft/workspace-tools/releases)
- [Changelog](https://github.com/microsoft/workspace-tools/blob/master/CHANGELOG.md)
- [Commits](https://github.com/microsoft/workspace-tools/compare/workspace-tools_v0.12.3...workspace-tools_v0.18.4)

---
updated-dependencies:
- dependency-name: workspace-tools
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-05-30 16:30:54 +08:00
e1c0a99458 chore: 🔧 update node version for workflows () 2022-05-30 16:18:01 +08:00
0c25aedd12 chore: update contributors [skip ci] 2022-05-25 07:59:25 +00:00
6ef7f55334 fix: 🐛 Fixed the error when a node meet an invisiable node in node:embedding event () 2022-05-25 15:58:59 +08:00
c97de2c807 chore(release): @antv/x6-sites@1.5.0 [skip ci]
# @antv/x6-sites [1.5.0](https://github.com/antvis/x6/compare/@antv/x6-sites@1.4.1...@antv/x6-sites@1.5.0) (2022-05-17)

### Bug Fixes

* 🐛 add updateCellId api ([](https://github.com/antvis/x6/issues/1739)) ([78cdb3b](78cdb3bd56))
* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 release x6 v1.28.2 ([](https://github.com/antvis/x6/issues/1654)) ([745b90a](745b90ac94))

### Features

*  add insertPort api ([](https://github.com/antvis/x6/issues/1763)) ([6809dba](6809dba2d8))
* vue3支持使用useTeleport ([](https://github.com/antvis/x6/issues/2078)) ([b8c2175](b8c217572a))

### Dependencies

* **@antv/x6:** upgraded to 1.32.2
2022-05-17 07:46:35 +00:00
dc62dd9390 chore(release): @antv/x6-sites-demos@1.2.1 [skip ci]
## @antv/x6-sites-demos [1.2.1](https://github.com/antvis/x6/compare/@antv/x6-sites-demos@1.2.0...@antv/x6-sites-demos@1.2.1) (2022-05-17)

### Bug Fixes

* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 update x6 version ([](https://github.com/antvis/x6/issues/1655)) ([07037be](07037beb59))

### Dependencies

* **@antv/x6:** upgraded to 1.32.2
2022-05-17 07:46:30 +00:00
56234ae8d7 chore(release): @antv/x6-example-features@1.2.2 [skip ci]
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-05-17)

### Bug Fixes

* 🐛 optimize contextmenu tools ([](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](cc01fdf208))
* 🐛 update x6-react-shape version ([](https://github.com/antvis/x6/issues/1425)) ([4208846](4208846337))

### Performance Improvements

* ️ add simple config to remove rect and text element ([](https://github.com/antvis/x6/issues/1449)) ([0b5f241](0b5f2413f0))

### Dependencies

* **@antv/x6:** upgraded to 1.32.2
2022-05-17 07:46:25 +00:00
eb81f1b856 chore(release): @antv/x6-app-er@1.1.7 [skip ci]
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-05-17)

### Dependencies

* **@antv/x6:** upgraded to 1.32.2
2022-05-17 07:46:19 +00:00
2fd1033009 chore(release): @antv/x6-app-draw@1.1.6 [skip ci]
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-05-17)

### Dependencies

* **@antv/x6:** upgraded to 1.32.2
2022-05-17 07:46:15 +00:00
a654adf88f chore(release): @antv/x6-app-dag@1.1.7 [skip ci]
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-05-17)

### Dependencies

* **@antv/x6:** upgraded to 1.32.2
2022-05-17 07:46:11 +00:00
8633398149 chore(release): @antv/x6@1.32.2 [skip ci]
## @antv/x6 [1.32.2](https://github.com/antvis/x6/compare/@antv/x6@1.32.1...@antv/x6@1.32.2) (2022-05-17)

### Bug Fixes

* 🐛 fix minimap error in after resize graph ([](https://github.com/antvis/x6/issues/2117)) ([e1bb928](e1bb9289b0))
2022-05-17 07:46:07 +00:00
4afc9df1ed chore(release): @antv/x6-svg-to-shape@1.0.6 [skip ci]
## @antv/x6-svg-to-shape [1.0.6](https://github.com/antvis/x6/compare/@antv/x6-svg-to-shape@1.0.5...@antv/x6-svg-to-shape@1.0.6) (2022-05-17)

### Dependencies

* **@antv/x6:** upgraded to 1.32.2
2022-05-17 07:46:03 +00:00
e1bb9289b0 fix: 🐛 fix minimap error in after resize graph () 2022-05-17 15:29:36 +08:00
3ee97bef65 chore(release): @antv/x6-svg-to-shape@1.0.6 [skip ci]
## @antv/x6-svg-to-shape [1.0.6](https://github.com/antvis/x6/compare/@antv/x6-svg-to-shape@1.0.5...@antv/x6-svg-to-shape@1.0.6) (2022-05-16)

### Dependencies

* **@antv/x6:** upgraded to 1.32.1
2022-05-16 06:46:25 +00:00
4015bb6667 chore(release): @antv/x6-sites@1.5.0 [skip ci]
# @antv/x6-sites [1.5.0](https://github.com/antvis/x6/compare/@antv/x6-sites@1.4.1...@antv/x6-sites@1.5.0) (2022-05-16)

### Bug Fixes

* 🐛 add updateCellId api ([](https://github.com/antvis/x6/issues/1739)) ([78cdb3b](78cdb3bd56))
* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 release x6 v1.28.2 ([](https://github.com/antvis/x6/issues/1654)) ([745b90a](745b90ac94))

### Features

*  add insertPort api ([](https://github.com/antvis/x6/issues/1763)) ([6809dba](6809dba2d8))
* vue3支持使用useTeleport ([](https://github.com/antvis/x6/issues/2078)) ([b8c2175](b8c217572a))

### Dependencies

* **@antv/x6:** upgraded to 1.32.1
2022-05-16 06:46:21 +00:00
586eb49032 chore(release): @antv/x6-example-features@1.2.2 [skip ci]
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-05-16)

### Bug Fixes

* 🐛 optimize contextmenu tools ([](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](cc01fdf208))
* 🐛 update x6-react-shape version ([](https://github.com/antvis/x6/issues/1425)) ([4208846](4208846337))

### Performance Improvements

* ️ add simple config to remove rect and text element ([](https://github.com/antvis/x6/issues/1449)) ([0b5f241](0b5f2413f0))

### Dependencies

* **@antv/x6:** upgraded to 1.32.1
* **@antv/x6-vector:** upgraded to 1.4.0
2022-05-16 06:46:17 +00:00
52b7b51b45 chore(release): @antv/x6-app-er@1.1.7 [skip ci]
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-05-16)

### Dependencies

* **@antv/x6:** upgraded to 1.32.1
2022-05-16 06:46:12 +00:00
852843ba59 chore(release): @antv/x6-app-draw@1.1.6 [skip ci]
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-05-16)

### Dependencies

* **@antv/x6:** upgraded to 1.32.1
2022-05-16 06:46:08 +00:00
01444b4677 chore(release): @antv/x6-app-dag@1.1.7 [skip ci]
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-05-16)

### Dependencies

* **@antv/x6:** upgraded to 1.32.1
2022-05-16 06:46:04 +00:00
76e0f973e6 chore(release): @antv/x6@1.32.1 [skip ci]
## @antv/x6 [1.32.1](https://github.com/antvis/x6/compare/@antv/x6@1.32.0...@antv/x6@1.32.1) (2022-05-16)

### Bug Fixes

* 🐛 auto zoom minimap graph to fit content ([](https://github.com/antvis/x6/issues/2111)) ([12e3e89](12e3e8969f))
2022-05-16 06:46:01 +00:00
619a6df36e chore(release): @antv/x6-vector@1.4.0 [skip ci]
# @antv/x6-vector [1.4.0](https://github.com/antvis/x6/compare/@antv/x6-vector@1.3.1...@antv/x6-vector@1.4.0) (2022-05-16)

### Bug Fixes

* remove the browserslist configuration in package.json ([](https://github.com/antvis/x6/issues/2084)) ([de59617](de59617532))

### Features

*  unified minimap interaction between scroller and panning ([](https://github.com/antvis/x6/issues/2109)) ([3c7c06a](3c7c06ac30))
2022-05-16 06:45:57 +00:00
082c5e04cf chore(release): @antv/x6-geometry@1.0.12 [skip ci]
## @antv/x6-geometry [1.0.12](https://github.com/antvis/x6/compare/@antv/x6-geometry@1.0.11...@antv/x6-geometry@1.0.12) (2022-05-16)

### Bug Fixes

* remove the browserslist configuration in package.json ([](https://github.com/antvis/x6/issues/2084)) ([de59617](de59617532))
2022-05-16 06:45:54 +00:00
5b2020d4d0 chore(release): @antv/x6-sites-demos@1.2.1 [skip ci]
## @antv/x6-sites-demos [1.2.1](https://github.com/antvis/x6/compare/@antv/x6-sites-demos@1.2.0...@antv/x6-sites-demos@1.2.1) (2022-05-16)

### Bug Fixes

* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 update x6 version ([](https://github.com/antvis/x6/issues/1655)) ([07037be](07037beb59))

### Dependencies

* **@antv/x6:** upgraded to 1.32.1
2022-05-16 06:45:50 +00:00
12e3e8969f fix: 🐛 auto zoom minimap graph to fit content () 2022-05-16 14:30:19 +08:00
cde133781a chore(release): @antv/x6-svg-to-shape@1.0.7 [skip ci]
## @antv/x6-svg-to-shape [1.0.7](https://github.com/antvis/x6/compare/@antv/x6-svg-to-shape@1.0.6...@antv/x6-svg-to-shape@1.0.7) (2022-05-14)

### Dependencies

* **@antv/x6:** upgraded to 1.32.0
2022-05-14 10:47:47 +00:00
fdb7563d21 chore(release): @antv/x6-sites@1.5.1 [skip ci]
## @antv/x6-sites [1.5.1](https://github.com/antvis/x6/compare/@antv/x6-sites@1.5.0...@antv/x6-sites@1.5.1) (2022-05-14)

### Dependencies

* **@antv/x6:** upgraded to 1.32.0
2022-05-14 10:47:44 +00:00
ffe8306851 chore(release): @antv/x6-sites-demos@1.2.2 [skip ci]
## @antv/x6-sites-demos [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-sites-demos@1.2.1...@antv/x6-sites-demos@1.2.2) (2022-05-14)

### Dependencies

* **@antv/x6:** upgraded to 1.32.0
2022-05-14 10:47:42 +00:00
96ad752ccc chore(release): @antv/x6-app-er@1.1.8 [skip ci]
## @antv/x6-app-er [1.1.8](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.7...@antv/x6-app-er@1.1.8) (2022-05-14)

### Dependencies

* **@antv/x6:** upgraded to 1.32.0
2022-05-14 10:47:39 +00:00
0dcb61262a chore(release): @antv/x6-app-draw@1.1.7 [skip ci]
## @antv/x6-app-draw [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.6...@antv/x6-app-draw@1.1.7) (2022-05-14)

### Dependencies

* **@antv/x6:** upgraded to 1.32.0
2022-05-14 10:47:36 +00:00
2e91808200 chore(release): @antv/x6-app-dag@1.1.8 [skip ci]
## @antv/x6-app-dag [1.1.8](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.7...@antv/x6-app-dag@1.1.8) (2022-05-14)

### Dependencies

* **@antv/x6:** upgraded to 1.32.0
2022-05-14 10:47:33 +00:00
8cc9c3f257 chore(release): @antv/x6@1.32.0 [skip ci]
# @antv/x6 [1.32.0](https://github.com/antvis/x6/compare/@antv/x6@1.31.5...@antv/x6@1.32.0) (2022-05-14)

### Features

*  unified minimap interaction between scroller and panning ([](https://github.com/antvis/x6/issues/2109)) ([3c7c06a](3c7c06ac30))
2022-05-14 10:47:31 +00:00
fa34253f0a chore(release): @antv/x6-vector@1.4.0 [skip ci]
# @antv/x6-vector [1.4.0](https://github.com/antvis/x6/compare/@antv/x6-vector@1.3.2...@antv/x6-vector@1.4.0) (2022-05-14)

### Features

*  unified minimap interaction between scroller and panning ([](https://github.com/antvis/x6/issues/2109)) ([3c7c06a](3c7c06ac30))
2022-05-14 10:47:28 +00:00
78f1f534a1 chore(release): @antv/x6-example-features@1.2.3 [skip ci]
## @antv/x6-example-features [1.2.3](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.2...@antv/x6-example-features@1.2.3) (2022-05-14)

### Dependencies

* **@antv/x6:** upgraded to 1.32.0
* **@antv/x6-vector:** upgraded to 1.4.0
2022-05-14 10:47:25 +00:00
3c7c06ac30 feat: unified minimap interaction between scroller and panning () 2022-05-14 17:39:24 +08:00
5036dca96d chore(release): @antv/x6-svg-to-shape@1.0.6 [skip ci]
## @antv/x6-svg-to-shape [1.0.6](https://github.com/antvis/x6/compare/@antv/x6-svg-to-shape@1.0.5...@antv/x6-svg-to-shape@1.0.6) (2022-05-09)

### Dependencies

* **@antv/x6:** upgraded to 1.31.5
2022-05-09 06:52:47 +00:00
ec419f8845 chore(release): @antv/x6-sites-demos@1.2.1 [skip ci]
## @antv/x6-sites-demos [1.2.1](https://github.com/antvis/x6/compare/@antv/x6-sites-demos@1.2.0...@antv/x6-sites-demos@1.2.1) (2022-05-09)

### Bug Fixes

* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 update x6 version ([](https://github.com/antvis/x6/issues/1655)) ([07037be](07037beb59))

### Dependencies

* **@antv/x6:** upgraded to 1.31.5
2022-05-09 06:52:44 +00:00
2d4ca77d46 chore(release): @antv/x6-example-features@1.2.2 [skip ci]
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-05-09)

### Bug Fixes

* 🐛 optimize contextmenu tools ([](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](cc01fdf208))
* 🐛 update x6-react-shape version ([](https://github.com/antvis/x6/issues/1425)) ([4208846](4208846337))

### Performance Improvements

* ️ add simple config to remove rect and text element ([](https://github.com/antvis/x6/issues/1449)) ([0b5f241](0b5f2413f0))

### Dependencies

* **@antv/x6:** upgraded to 1.31.5
* **@antv/x6-vector:** upgraded to 1.3.2
2022-05-09 06:52:40 +00:00
c3fd2a2441 chore(release): @antv/x6-app-er@1.1.7 [skip ci]
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-05-09)

### Dependencies

* **@antv/x6:** upgraded to 1.31.5
2022-05-09 06:52:36 +00:00
082d1f875b chore(release): @antv/x6-app-draw@1.1.6 [skip ci]
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-05-09)

### Dependencies

* **@antv/x6:** upgraded to 1.31.5
2022-05-09 06:52:33 +00:00
4efdb3660d chore(release): @antv/x6-app-dag@1.1.7 [skip ci]
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-05-09)

### Dependencies

* **@antv/x6:** upgraded to 1.31.5
2022-05-09 06:52:30 +00:00
fc06ff66d4 chore(release): @antv/x6@1.31.5 [skip ci]
## @antv/x6 [1.31.5](https://github.com/antvis/x6/compare/@antv/x6@1.31.4...@antv/x6@1.31.5) (2022-05-09)

### Bug Fixes

* 🐛 fix the graph function zoomTo not return the graph instance. ([](https://github.com/antvis/x6/issues/2090)) ([692a4ee](692a4ee1b0))
* 🐛 not rerender tools when edge update ([](https://github.com/antvis/x6/issues/2095)) ([26ce96f](26ce96f7a2))
* remove the browserslist configuration in package.json ([](https://github.com/antvis/x6/issues/2084)) ([de59617](de59617532))
2022-05-09 06:52:28 +00:00
372d5f3031 chore(release): @antv/x6-vue-shape@1.4.0 [skip ci]
# @antv/x6-vue-shape [1.4.0](https://github.com/antvis/x6/compare/@antv/x6-vue-shape@1.3.2...@antv/x6-vue-shape@1.4.0) (2022-05-09)

### Features

* vue3支持使用useTeleport ([](https://github.com/antvis/x6/issues/2078)) ([b8c2175](b8c217572a))

### Dependencies

* **@antv/x6:** upgraded to 1.31.5
2022-05-09 06:52:25 +00:00
d87b2a7eaf chore(release): @antv/x6-vector@1.3.2 [skip ci]
## @antv/x6-vector [1.3.2](https://github.com/antvis/x6/compare/@antv/x6-vector@1.3.1...@antv/x6-vector@1.3.2) (2022-05-09)

### Bug Fixes

* remove the browserslist configuration in package.json ([](https://github.com/antvis/x6/issues/2084)) ([de59617](de59617532))
2022-05-09 06:52:22 +00:00
78a2a0bfe0 chore(release): @antv/x6-geometry@1.0.12 [skip ci]
## @antv/x6-geometry [1.0.12](https://github.com/antvis/x6/compare/@antv/x6-geometry@1.0.11...@antv/x6-geometry@1.0.12) (2022-05-09)

### Bug Fixes

* remove the browserslist configuration in package.json ([](https://github.com/antvis/x6/issues/2084)) ([de59617](de59617532))
2022-05-09 06:52:20 +00:00
ac56327b41 chore(release): @antv/x6-sites@1.5.0 [skip ci]
# @antv/x6-sites [1.5.0](https://github.com/antvis/x6/compare/@antv/x6-sites@1.4.1...@antv/x6-sites@1.5.0) (2022-05-09)

### Bug Fixes

* 🐛 add updateCellId api ([](https://github.com/antvis/x6/issues/1739)) ([78cdb3b](78cdb3bd56))
* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 release x6 v1.28.2 ([](https://github.com/antvis/x6/issues/1654)) ([745b90a](745b90ac94))

### Features

*  add insertPort api ([](https://github.com/antvis/x6/issues/1763)) ([6809dba](6809dba2d8))
* vue3支持使用useTeleport ([](https://github.com/antvis/x6/issues/2078)) ([b8c2175](b8c217572a))

### Dependencies

* **@antv/x6:** upgraded to 1.31.5
2022-05-09 06:52:16 +00:00
26ce96f7a2 fix: 🐛 not rerender tools when edge update () 2022-05-09 14:39:26 +08:00
cfb77ae4cf chore: update contributors [skip ci] 2022-05-09 01:30:25 +00:00
c7a335177b chore: update AUTHORS [skip ci] 2022-05-08 02:15:03 +00:00
692a4ee1b0 fix: 🐛 fix the graph function zoomTo not return the graph instance. () 2022-05-08 10:09:16 +08:00
5d6f4fe15e chore: update AUTHORS [skip ci] 2022-05-07 03:09:05 +00:00
a4411d0f88 chore: update contributors [skip ci] 2022-05-07 03:02:41 +00:00
b8c217572a feat: vue3支持使用useTeleport ()
* feat:  vue3支持使用useTeleport

* feat:  更新文档使用useTeleport

* feat:  兼容vue2.x

* feat:  更新文档使用useTeleport

* feat:  reset package.json
2022-05-07 11:02:18 +08:00
48b3577023 chore: update AUTHORS [skip ci] 2022-05-07 02:25:36 +00:00
20f68caa3a chore: update contributors [skip ci] 2022-05-07 02:24:19 +00:00
ae4ed52b69 docs: 📚️ add selection options description () 2022-05-07 10:23:59 +08:00
fe41710467 docs: update api desciption of addTools ()
Co-authored-by: jiqili <5512490+xiaogegeya@user.noreply.gitee.com>
2022-05-07 10:19:50 +08:00
0d34cdd0cc chore: update AUTHORS [skip ci] 2022-05-06 13:04:21 +00:00
a9c0decd14 chore: update contributors [skip ci] 2022-05-06 12:57:57 +00:00
de59617532 fix: remove the browserslist configuration in package.json () 2022-05-06 20:57:31 +08:00
89da6b32cc chore: update contributors [skip ci] 2022-05-02 01:31:08 +00:00
bb07735f36 chore(release): @antv/x6-svg-to-shape@1.0.6 [skip ci]
## @antv/x6-svg-to-shape [1.0.6](https://github.com/antvis/x6/compare/@antv/x6-svg-to-shape@1.0.5...@antv/x6-svg-to-shape@1.0.6) (2022-05-01)
2022-05-01 06:53:43 +00:00
88f04625ed chore(release): @antv/x6-sites@1.5.0 [skip ci]
# @antv/x6-sites [1.5.0](https://github.com/antvis/x6/compare/@antv/x6-sites@1.4.1...@antv/x6-sites@1.5.0) (2022-05-01)

### Bug Fixes

* 🐛 add updateCellId api ([](https://github.com/antvis/x6/issues/1739)) ([78cdb3b](78cdb3bd56))
* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 release x6 v1.28.2 ([](https://github.com/antvis/x6/issues/1654)) ([745b90a](745b90ac94))

### Features

*  add insertPort api ([](https://github.com/antvis/x6/issues/1763)) ([6809dba](6809dba2d8))
2022-05-01 06:53:41 +00:00
74d3b24c6f chore(release): @antv/x6-sites-demos@1.2.1 [skip ci]
## @antv/x6-sites-demos [1.2.1](https://github.com/antvis/x6/compare/@antv/x6-sites-demos@1.2.0...@antv/x6-sites-demos@1.2.1) (2022-05-01)

### Bug Fixes

* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 update x6 version ([](https://github.com/antvis/x6/issues/1655)) ([07037be](07037beb59))
2022-05-01 06:53:37 +00:00
f43edba970 chore(release): @antv/x6-example-features@1.2.2 [skip ci]
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-05-01)

### Bug Fixes

* 🐛 optimize contextmenu tools ([](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](cc01fdf208))
* 🐛 update x6-react-shape version ([](https://github.com/antvis/x6/issues/1425)) ([4208846](4208846337))

### Performance Improvements

* ️ add simple config to remove rect and text element ([](https://github.com/antvis/x6/issues/1449)) ([0b5f241](0b5f2413f0))
2022-05-01 06:53:34 +00:00
cd006184c3 chore(release): @antv/x6-app-er@1.1.7 [skip ci]
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-05-01)
2022-05-01 06:53:31 +00:00
322dec6a4a chore(release): @antv/x6-app-dag@1.1.7 [skip ci]
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-05-01)
2022-05-01 06:53:28 +00:00
47e7e67574 chore(release): @antv/x6-app-draw@1.1.6 [skip ci]
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-05-01)
2022-05-01 06:53:26 +00:00
60954137d3 docs: update doc api () 2022-05-01 14:41:38 +08:00
61c7d7f015 chore(release): @antv/x6-sites@1.5.0 [skip ci]
# @antv/x6-sites [1.5.0](https://github.com/antvis/x6/compare/@antv/x6-sites@1.4.1...@antv/x6-sites@1.5.0) (2022-04-26)

### Bug Fixes

* 🐛 add updateCellId api ([](https://github.com/antvis/x6/issues/1739)) ([78cdb3b](78cdb3bd56))
* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 release x6 v1.28.2 ([](https://github.com/antvis/x6/issues/1654)) ([745b90a](745b90ac94))

### Features

*  add insertPort api ([](https://github.com/antvis/x6/issues/1763)) ([6809dba](6809dba2d8))
2022-04-26 00:56:39 +00:00
c7c3415300 chore(release): @antv/x6-sites-demos@1.2.1 [skip ci]
## @antv/x6-sites-demos [1.2.1](https://github.com/antvis/x6/compare/@antv/x6-sites-demos@1.2.0...@antv/x6-sites-demos@1.2.1) (2022-04-26)

### Bug Fixes

* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 update x6 version ([](https://github.com/antvis/x6/issues/1655)) ([07037be](07037beb59))
2022-04-26 00:56:35 +00:00
7e64838e00 chore(release): @antv/x6-example-features@1.2.2 [skip ci]
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-04-26)

### Bug Fixes

* 🐛 optimize contextmenu tools ([](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](cc01fdf208))
* 🐛 update x6-react-shape version ([](https://github.com/antvis/x6/issues/1425)) ([4208846](4208846337))

### Performance Improvements

* ️ add simple config to remove rect and text element ([](https://github.com/antvis/x6/issues/1449)) ([0b5f241](0b5f2413f0))
2022-04-26 00:56:30 +00:00
7c18c7d5ff chore(release): @antv/x6-app-er@1.1.7 [skip ci]
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-04-26)
2022-04-26 00:56:25 +00:00
7ea2ab1141 chore(release): @antv/x6-app-draw@1.1.6 [skip ci]
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-04-26)
2022-04-26 00:56:21 +00:00
0115917836 chore(release): @antv/x6-app-dag@1.1.7 [skip ci]
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-04-26)
2022-04-26 00:56:17 +00:00
b184f8ca1c chore(release): @antv/x6-svg-to-shape@1.0.6 [skip ci]
## @antv/x6-svg-to-shape [1.0.6](https://github.com/antvis/x6/compare/@antv/x6-svg-to-shape@1.0.5...@antv/x6-svg-to-shape@1.0.6) (2022-04-26)
2022-04-26 00:56:13 +00:00
1abb62e14a docs: 📚️ optimize custom node demo () 2022-04-26 08:41:21 +08:00
ed5cdfb384 chore: update AUTHORS [skip ci] 2022-04-24 13:16:56 +00:00
7a0f33c5a2 chore: update contributors [skip ci] 2022-04-24 13:11:20 +00:00
qu
1de788cfaa docs: correct code mistake () 2022-04-24 21:10:49 +08:00
4d016760c7 chore(release): @antv/x6-sites@1.5.0 [skip ci]
# @antv/x6-sites [1.5.0](https://github.com/antvis/x6/compare/@antv/x6-sites@1.4.1...@antv/x6-sites@1.5.0) (2022-04-21)

### Bug Fixes

* 🐛 add updateCellId api ([](https://github.com/antvis/x6/issues/1739)) ([78cdb3b](78cdb3bd56))
* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 release x6 v1.28.2 ([](https://github.com/antvis/x6/issues/1654)) ([745b90a](745b90ac94))

### Features

*  add insertPort api ([](https://github.com/antvis/x6/issues/1763)) ([6809dba](6809dba2d8))

### Dependencies

* **@antv/x6:** upgraded to 1.31.4
2022-04-21 12:26:56 +00:00
47487fe604 chore(release): @antv/x6-sites-demos@1.2.1 [skip ci]
## @antv/x6-sites-demos [1.2.1](https://github.com/antvis/x6/compare/@antv/x6-sites-demos@1.2.0...@antv/x6-sites-demos@1.2.1) (2022-04-21)

### Bug Fixes

* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 update x6 version ([](https://github.com/antvis/x6/issues/1655)) ([07037be](07037beb59))

### Dependencies

* **@antv/x6:** upgraded to 1.31.4
2022-04-21 12:26:53 +00:00
6711d06fa1 chore(release): @antv/x6-example-features@1.2.2 [skip ci]
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-04-21)

### Bug Fixes

* 🐛 optimize contextmenu tools ([](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](cc01fdf208))
* 🐛 update x6-react-shape version ([](https://github.com/antvis/x6/issues/1425)) ([4208846](4208846337))

### Performance Improvements

* ️ add simple config to remove rect and text element ([](https://github.com/antvis/x6/issues/1449)) ([0b5f241](0b5f2413f0))

### Dependencies

* **@antv/x6:** upgraded to 1.31.4
2022-04-21 12:26:49 +00:00
83e4bd96e9 chore(release): @antv/x6-app-er@1.1.7 [skip ci]
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-04-21)

### Dependencies

* **@antv/x6:** upgraded to 1.31.4
2022-04-21 12:26:45 +00:00
2a340936a0 chore(release): @antv/x6-app-draw@1.1.6 [skip ci]
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-04-21)

### Dependencies

* **@antv/x6:** upgraded to 1.31.4
2022-04-21 12:26:42 +00:00
3967110b6e chore(release): @antv/x6-app-dag@1.1.7 [skip ci]
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-04-21)

### Dependencies

* **@antv/x6:** upgraded to 1.31.4
2022-04-21 12:26:39 +00:00
66b2a44845 chore(release): @antv/x6@1.31.4 [skip ci]
## @antv/x6 [1.31.4](https://github.com/antvis/x6/compare/@antv/x6@1.31.3...@antv/x6@1.31.4) (2022-04-21)

### Bug Fixes

* 🐛 exclude case-sensitive-attr in kebablizeAttrs ([](https://github.com/antvis/x6/issues/2031)) ([1e513ad](1e513adfde))
2022-04-21 12:26:37 +00:00
be52637c60 chore(release): @antv/x6-svg-to-shape@1.0.6 [skip ci]
## @antv/x6-svg-to-shape [1.0.6](https://github.com/antvis/x6/compare/@antv/x6-svg-to-shape@1.0.5...@antv/x6-svg-to-shape@1.0.6) (2022-04-21)

### Dependencies

* **@antv/x6:** upgraded to 1.31.4
2022-04-21 12:26:34 +00:00
1e513adfde fix: 🐛 exclude case-sensitive-attr in kebablizeAttrs () 2022-04-21 20:15:18 +08:00
38857171ed chore: update contributors [skip ci] 2022-04-19 01:30:51 +00:00
88e0222422 chore: update AUTHORS [skip ci] 2022-04-18 01:56:34 +00:00
63254bbf79 docs: update doc api () 2022-04-18 09:51:18 +08:00
d6242db65c chore(release): @antv/x6-sites@1.5.0 [skip ci]
# @antv/x6-sites [1.5.0](https://github.com/antvis/x6/compare/@antv/x6-sites@1.4.1...@antv/x6-sites@1.5.0) (2022-04-13)

### Bug Fixes

* 🐛 add updateCellId api ([](https://github.com/antvis/x6/issues/1739)) ([78cdb3b](78cdb3bd56))
* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 release x6 v1.28.2 ([](https://github.com/antvis/x6/issues/1654)) ([745b90a](745b90ac94))

### Features

*  add insertPort api ([](https://github.com/antvis/x6/issues/1763)) ([6809dba](6809dba2d8))
2022-04-13 01:59:56 +00:00
0efe5c5145 chore(release): @antv/x6-sites-demos@1.2.1 [skip ci]
## @antv/x6-sites-demos [1.2.1](https://github.com/antvis/x6/compare/@antv/x6-sites-demos@1.2.0...@antv/x6-sites-demos@1.2.1) (2022-04-13)

### Bug Fixes

* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 update x6 version ([](https://github.com/antvis/x6/issues/1655)) ([07037be](07037beb59))
2022-04-13 01:59:52 +00:00
18780ddddd chore(release): @antv/x6-example-features@1.2.2 [skip ci]
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-04-13)

### Bug Fixes

* 🐛 optimize contextmenu tools ([](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](cc01fdf208))
* 🐛 update x6-react-shape version ([](https://github.com/antvis/x6/issues/1425)) ([4208846](4208846337))

### Performance Improvements

* ️ add simple config to remove rect and text element ([](https://github.com/antvis/x6/issues/1449)) ([0b5f241](0b5f2413f0))
2022-04-13 01:59:49 +00:00
45d45de9e0 chore(release): @antv/x6-app-er@1.1.7 [skip ci]
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-04-13)
2022-04-13 01:59:45 +00:00
4a8ce47c46 chore(release): @antv/x6-app-draw@1.1.6 [skip ci]
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-04-13)
2022-04-13 01:59:42 +00:00
c1e0d5afed chore(release): @antv/x6-app-dag@1.1.7 [skip ci]
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-04-13)
2022-04-13 01:59:39 +00:00
1a57746c36 chore(release): @antv/x6-svg-to-shape@1.0.6 [skip ci]
## @antv/x6-svg-to-shape [1.0.6](https://github.com/antvis/x6/compare/@antv/x6-svg-to-shape@1.0.5...@antv/x6-svg-to-shape@1.0.6) (2022-04-13)
2022-04-13 01:59:36 +00:00
a49d004b03 chore(deps): bump urijs from 1.19.10 to 1.19.11 ()
Bumps [urijs](https://github.com/medialize/URI.js) from 1.19.10 to 1.19.11.
- [Release notes](https://github.com/medialize/URI.js/releases)
- [Changelog](https://github.com/medialize/URI.js/blob/gh-pages/CHANGELOG.md)
- [Commits](https://github.com/medialize/URI.js/compare/v1.19.10...v1.19.11)

---
updated-dependencies:
- dependency-name: urijs
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-13 09:46:55 +08:00
b4641440b6 chore: update contributors [skip ci] 2022-04-11 23:43:09 +00:00
e9332a74a9 docs: update doc api ()
Co-authored-by: DanielLeefu <you@2228429150@qq.com>
2022-04-12 07:42:45 +08:00
04e98cfe9b chore: update contributors [skip ci] 2022-04-11 01:30:41 +00:00
69615f92ab chore(release): @antv/x6-sites@1.5.0 [skip ci]
# @antv/x6-sites [1.5.0](https://github.com/antvis/x6/compare/@antv/x6-sites@1.4.1...@antv/x6-sites@1.5.0) (2022-04-09)

### Bug Fixes

* 🐛 add updateCellId api ([](https://github.com/antvis/x6/issues/1739)) ([78cdb3b](78cdb3bd56))
* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 release x6 v1.28.2 ([](https://github.com/antvis/x6/issues/1654)) ([745b90a](745b90ac94))

### Features

*  add insertPort api ([](https://github.com/antvis/x6/issues/1763)) ([6809dba](6809dba2d8))

### Dependencies

* **@antv/x6:** upgraded to 1.31.3
2022-04-09 04:34:53 +00:00
a7e7add2a8 chore(release): @antv/x6-sites-demos@1.2.1 [skip ci]
## @antv/x6-sites-demos [1.2.1](https://github.com/antvis/x6/compare/@antv/x6-sites-demos@1.2.0...@antv/x6-sites-demos@1.2.1) (2022-04-09)

### Bug Fixes

* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 update x6 version ([](https://github.com/antvis/x6/issues/1655)) ([07037be](07037beb59))

### Dependencies

* **@antv/x6:** upgraded to 1.31.3
2022-04-09 04:34:50 +00:00
af281c4a48 chore(release): @antv/x6-example-features@1.2.2 [skip ci]
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-04-09)

### Bug Fixes

* 🐛 optimize contextmenu tools ([](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](cc01fdf208))
* 🐛 update x6-react-shape version ([](https://github.com/antvis/x6/issues/1425)) ([4208846](4208846337))

### Performance Improvements

* ️ add simple config to remove rect and text element ([](https://github.com/antvis/x6/issues/1449)) ([0b5f241](0b5f2413f0))

### Dependencies

* **@antv/x6:** upgraded to 1.31.3
2022-04-09 04:34:46 +00:00
c2efaaf71c chore(release): @antv/x6-app-er@1.1.7 [skip ci]
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-04-09)

### Dependencies

* **@antv/x6:** upgraded to 1.31.3
2022-04-09 04:34:43 +00:00
73880a47d0 chore(release): @antv/x6-app-draw@1.1.6 [skip ci]
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-04-09)

### Dependencies

* **@antv/x6:** upgraded to 1.31.3
2022-04-09 04:34:40 +00:00
b91869655d chore(release): @antv/x6-app-dag@1.1.7 [skip ci]
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-04-09)

### Dependencies

* **@antv/x6:** upgraded to 1.31.3
2022-04-09 04:34:38 +00:00
0879a143f9 chore(release): @antv/x6@1.31.3 [skip ci]
## @antv/x6 [1.31.3](https://github.com/antvis/x6/compare/@antv/x6@1.31.2...@antv/x6@1.31.3) (2022-04-09)

### Bug Fixes

* fix animationOptions type ([](https://github.com/antvis/x6/issues/1989)) ([5020e92](5020e92ce8))
2022-04-09 04:34:35 +00:00
56ba335afb chore(release): @antv/x6-svg-to-shape@1.0.6 [skip ci]
## @antv/x6-svg-to-shape [1.0.6](https://github.com/antvis/x6/compare/@antv/x6-svg-to-shape@1.0.5...@antv/x6-svg-to-shape@1.0.6) (2022-04-09)

### Dependencies

* **@antv/x6:** upgraded to 1.31.3
2022-04-09 04:34:32 +00:00
5020e92ce8 fix: fix animationOptions type ()
* fix: 🐛 update dnd widget zIndex

* fix: 🐛 fix animateOptions type
2022-04-09 12:23:06 +08:00
93f0adaf96 chore(release): @antv/x6-svg-to-shape@1.0.6 [skip ci]
## @antv/x6-svg-to-shape [1.0.6](https://github.com/antvis/x6/compare/@antv/x6-svg-to-shape@1.0.5...@antv/x6-svg-to-shape@1.0.6) (2022-04-09)
2022-04-09 01:20:40 +00:00
248846731b chore(release): @antv/x6-sites@1.5.0 [skip ci]
# @antv/x6-sites [1.5.0](https://github.com/antvis/x6/compare/@antv/x6-sites@1.4.1...@antv/x6-sites@1.5.0) (2022-04-09)

### Bug Fixes

* 🐛 add updateCellId api ([](https://github.com/antvis/x6/issues/1739)) ([78cdb3b](78cdb3bd56))
* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 release x6 v1.28.2 ([](https://github.com/antvis/x6/issues/1654)) ([745b90a](745b90ac94))

### Features

*  add insertPort api ([](https://github.com/antvis/x6/issues/1763)) ([6809dba](6809dba2d8))
2022-04-09 01:20:37 +00:00
b8e2d52f9a chore(release): @antv/x6-sites-demos@1.2.1 [skip ci]
## @antv/x6-sites-demos [1.2.1](https://github.com/antvis/x6/compare/@antv/x6-sites-demos@1.2.0...@antv/x6-sites-demos@1.2.1) (2022-04-09)

### Bug Fixes

* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 update x6 version ([](https://github.com/antvis/x6/issues/1655)) ([07037be](07037beb59))
2022-04-09 01:20:34 +00:00
8ae13da838 chore(release): @antv/x6-example-features@1.2.2 [skip ci]
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-04-09)

### Bug Fixes

* 🐛 optimize contextmenu tools ([](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](cc01fdf208))
* 🐛 update x6-react-shape version ([](https://github.com/antvis/x6/issues/1425)) ([4208846](4208846337))

### Performance Improvements

* ️ add simple config to remove rect and text element ([](https://github.com/antvis/x6/issues/1449)) ([0b5f241](0b5f2413f0))
2022-04-09 01:20:30 +00:00
446f433648 chore(release): @antv/x6-app-er@1.1.7 [skip ci]
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-04-09)
2022-04-09 01:20:27 +00:00
f3d5c30ee7 chore(release): @antv/x6-app-dag@1.1.7 [skip ci]
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-04-09)
2022-04-09 01:20:24 +00:00
94cf18e5f8 chore(release): @antv/x6-app-draw@1.1.6 [skip ci]
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-04-09)
2022-04-09 01:20:21 +00:00
314fee4606 docs: 📚️ optimize tooltip tools () 2022-04-09 09:08:26 +08:00
7816a8fd47 chore(deps): bump moment in /scripts/monorepo-semantic-release ()
Bumps [moment](https://github.com/moment/moment) from 2.29.1 to 2.29.2.
- [Release notes](https://github.com/moment/moment/releases)
- [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/moment/moment/compare/2.29.1...2.29.2)

---
updated-dependencies:
- dependency-name: moment
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-09 09:04:35 +08:00
5d597f5809 chore(deps): bump moment from 2.29.1 to 2.29.2 ()
Bumps [moment](https://github.com/moment/moment) from 2.29.1 to 2.29.2.
- [Release notes](https://github.com/moment/moment/releases)
- [Changelog](https://github.com/moment/moment/blob/develop/CHANGELOG.md)
- [Commits](https://github.com/moment/moment/compare/2.29.1...2.29.2)

---
updated-dependencies:
- dependency-name: moment
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-09 09:04:21 +08:00
b389b5654f chore(release): @antv/x6-sites@1.5.0 [skip ci]
# @antv/x6-sites [1.5.0](https://github.com/antvis/x6/compare/@antv/x6-sites@1.4.1...@antv/x6-sites@1.5.0) (2022-04-09)

### Bug Fixes

* 🐛 add updateCellId api ([](https://github.com/antvis/x6/issues/1739)) ([78cdb3b](78cdb3bd56))
* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 release x6 v1.28.2 ([](https://github.com/antvis/x6/issues/1654)) ([745b90a](745b90ac94))

### Features

*  add insertPort api ([](https://github.com/antvis/x6/issues/1763)) ([6809dba](6809dba2d8))

### Dependencies

* **@antv/x6:** upgraded to 1.31.2
2022-04-09 00:36:11 +00:00
cd6514abef chore(release): @antv/x6-sites-demos@1.2.1 [skip ci]
## @antv/x6-sites-demos [1.2.1](https://github.com/antvis/x6/compare/@antv/x6-sites-demos@1.2.0...@antv/x6-sites-demos@1.2.1) (2022-04-09)

### Bug Fixes

* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 update x6 version ([](https://github.com/antvis/x6/issues/1655)) ([07037be](07037beb59))

### Dependencies

* **@antv/x6:** upgraded to 1.31.2
2022-04-09 00:36:07 +00:00
5b24ec1cee chore(release): @antv/x6-example-features@1.2.2 [skip ci]
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-04-09)

### Bug Fixes

* 🐛 optimize contextmenu tools ([](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](cc01fdf208))
* 🐛 update x6-react-shape version ([](https://github.com/antvis/x6/issues/1425)) ([4208846](4208846337))

### Performance Improvements

* ️ add simple config to remove rect and text element ([](https://github.com/antvis/x6/issues/1449)) ([0b5f241](0b5f2413f0))

### Dependencies

* **@antv/x6:** upgraded to 1.31.2
2022-04-09 00:36:02 +00:00
822310ecfa chore(release): @antv/x6-app-er@1.1.7 [skip ci]
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-04-09)

### Dependencies

* **@antv/x6:** upgraded to 1.31.2
2022-04-09 00:35:57 +00:00
2d053f1bf6 chore(release): @antv/x6-app-draw@1.1.6 [skip ci]
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-04-09)

### Dependencies

* **@antv/x6:** upgraded to 1.31.2
2022-04-09 00:35:54 +00:00
fe0a81f6f2 chore(release): @antv/x6-app-dag@1.1.7 [skip ci]
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-04-09)

### Dependencies

* **@antv/x6:** upgraded to 1.31.2
2022-04-09 00:35:50 +00:00
86362513e7 chore(release): @antv/x6@1.31.2 [skip ci]
## @antv/x6 [1.31.2](https://github.com/antvis/x6/compare/@antv/x6@1.31.1...@antv/x6@1.31.2) (2022-04-09)

### Bug Fixes

* 🐛 change copystyle not include number propery when toSvg ([](https://github.com/antvis/x6/issues/1985)) ([214b927](214b92704d))
* 🐛 fix scroller resize size miscalculation when graph resize ([](https://github.com/antvis/x6/issues/1977)) ([e6de636](e6de6363ae))
2022-04-09 00:35:47 +00:00
624838fe23 chore(release): @antv/x6-svg-to-shape@1.0.6 [skip ci]
## @antv/x6-svg-to-shape [1.0.6](https://github.com/antvis/x6/compare/@antv/x6-svg-to-shape@1.0.5...@antv/x6-svg-to-shape@1.0.6) (2022-04-09)

### Dependencies

* **@antv/x6:** upgraded to 1.31.2
2022-04-09 00:35:44 +00:00
214b92704d fix: 🐛 change copystyle not include number propery when toSvg () 2022-04-09 08:23:28 +08:00
9594778ddb chore: update AUTHORS [skip ci] 2022-04-08 02:56:34 +00:00
761f1b9144 chore: update contributors [skip ci] 2022-04-08 02:50:46 +00:00
e6de6363ae fix: 🐛 fix scroller resize size miscalculation when graph resize ()
Co-authored-by: mrmengj <mrmengj@gmail.como>
2022-04-08 10:50:25 +08:00
7f90fcf3b1 chore: update contributors [skip ci] 2022-04-08 01:29:25 +00:00
05f86b52b2 chore(release): @antv/x6-svg-to-shape@1.0.6 [skip ci]
## @antv/x6-svg-to-shape [1.0.6](https://github.com/antvis/x6/compare/@antv/x6-svg-to-shape@1.0.5...@antv/x6-svg-to-shape@1.0.6) (2022-04-05)
2022-04-05 13:08:43 +00:00
35a9531254 chore(release): @antv/x6-sites-demos@1.2.1 [skip ci]
## @antv/x6-sites-demos [1.2.1](https://github.com/antvis/x6/compare/@antv/x6-sites-demos@1.2.0...@antv/x6-sites-demos@1.2.1) (2022-04-05)

### Bug Fixes

* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 update x6 version ([](https://github.com/antvis/x6/issues/1655)) ([07037be](07037beb59))
2022-04-05 13:08:40 +00:00
5c084bf8f0 chore(release): @antv/x6-example-features@1.2.2 [skip ci]
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-04-05)

### Bug Fixes

* 🐛 optimize contextmenu tools ([](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](cc01fdf208))
* 🐛 update x6-react-shape version ([](https://github.com/antvis/x6/issues/1425)) ([4208846](4208846337))

### Performance Improvements

* ️ add simple config to remove rect and text element ([](https://github.com/antvis/x6/issues/1449)) ([0b5f241](0b5f2413f0))

### Dependencies

* **@antv/x6-vector:** upgraded to 1.3.1
2022-04-05 13:08:36 +00:00
34c82a1b45 chore(release): @antv/x6-app-er@1.1.7 [skip ci]
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-04-05)
2022-04-05 13:08:32 +00:00
c3d54ad2e5 chore(release): @antv/x6-app-draw@1.1.6 [skip ci]
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-04-05)
2022-04-05 13:08:29 +00:00
a1dbd1095e chore(release): @antv/x6-app-dag@1.1.7 [skip ci]
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-04-05)
2022-04-05 13:08:26 +00:00
a30d850c0f chore(release): @antv/x6-vector@1.3.1 [skip ci]
## @antv/x6-vector [1.3.1](https://github.com/antvis/x6/compare/@antv/x6-vector@1.3.0...@antv/x6-vector@1.3.1) (2022-04-05)

### Bug Fixes

* 🐛 fix lgtm alert ([](https://github.com/antvis/x6/issues/1975)) ([7440903](7440903281))
2022-04-05 13:08:23 +00:00
c3134d5fd6 chore(release): @antv/x6-sites@1.5.0 [skip ci]
# @antv/x6-sites [1.5.0](https://github.com/antvis/x6/compare/@antv/x6-sites@1.4.1...@antv/x6-sites@1.5.0) (2022-04-05)

### Bug Fixes

* 🐛 add updateCellId api ([](https://github.com/antvis/x6/issues/1739)) ([78cdb3b](78cdb3bd56))
* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 release x6 v1.28.2 ([](https://github.com/antvis/x6/issues/1654)) ([745b90a](745b90ac94))

### Features

*  add insertPort api ([](https://github.com/antvis/x6/issues/1763)) ([6809dba](6809dba2d8))
2022-04-05 13:08:20 +00:00
85be9ec734 chore(deps): bump minimist in /scripts/monorepo-semantic-release ()
Bumps [minimist](https://github.com/substack/minimist) from 1.2.5 to 1.2.6.
- [Release notes](https://github.com/substack/minimist/releases)
- [Commits](https://github.com/substack/minimist/compare/1.2.5...1.2.6)

---
updated-dependencies:
- dependency-name: minimist
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-04-05 20:55:51 +08:00
5c00e45d37 chore(release): @antv/x6-sites@1.5.0 [skip ci]
# @antv/x6-sites [1.5.0](https://github.com/antvis/x6/compare/@antv/x6-sites@1.4.1...@antv/x6-sites@1.5.0) (2022-04-05)

### Bug Fixes

* 🐛 add updateCellId api ([](https://github.com/antvis/x6/issues/1739)) ([78cdb3b](78cdb3bd56))
* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 release x6 v1.28.2 ([](https://github.com/antvis/x6/issues/1654)) ([745b90a](745b90ac94))

### Features

*  add insertPort api ([](https://github.com/antvis/x6/issues/1763)) ([6809dba](6809dba2d8))

### Dependencies

* **@antv/x6:** upgraded to 1.31.1
2022-04-05 02:15:49 +00:00
3ec0d432a3 chore(release): @antv/x6-sites-demos@1.2.1 [skip ci]
## @antv/x6-sites-demos [1.2.1](https://github.com/antvis/x6/compare/@antv/x6-sites-demos@1.2.0...@antv/x6-sites-demos@1.2.1) (2022-04-05)

### Bug Fixes

* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 update x6 version ([](https://github.com/antvis/x6/issues/1655)) ([07037be](07037beb59))

### Dependencies

* **@antv/x6:** upgraded to 1.31.1
2022-04-05 02:15:46 +00:00
ea4ea45e46 chore(release): @antv/x6-example-features@1.2.2 [skip ci]
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-04-05)

### Bug Fixes

* 🐛 optimize contextmenu tools ([](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](cc01fdf208))
* 🐛 update x6-react-shape version ([](https://github.com/antvis/x6/issues/1425)) ([4208846](4208846337))

### Performance Improvements

* ️ add simple config to remove rect and text element ([](https://github.com/antvis/x6/issues/1449)) ([0b5f241](0b5f2413f0))

### Dependencies

* **@antv/x6:** upgraded to 1.31.1
* **@antv/x6-vector:** upgraded to 1.3.1
2022-04-05 02:15:42 +00:00
45cdd0980c chore(release): @antv/x6-app-er@1.1.7 [skip ci]
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-04-05)

### Dependencies

* **@antv/x6:** upgraded to 1.31.1
2022-04-05 02:15:38 +00:00
40f6496aea chore(release): @antv/x6-app-draw@1.1.6 [skip ci]
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-04-05)

### Dependencies

* **@antv/x6:** upgraded to 1.31.1
2022-04-05 02:15:35 +00:00
12ab1057fe chore(release): @antv/x6-app-dag@1.1.7 [skip ci]
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-04-05)

### Dependencies

* **@antv/x6:** upgraded to 1.31.1
2022-04-05 02:15:32 +00:00
bd33449b2d chore(release): @antv/x6@1.31.1 [skip ci]
## @antv/x6 [1.31.1](https://github.com/antvis/x6/compare/@antv/x6@1.31.0...@antv/x6@1.31.1) (2022-04-05)

### Bug Fixes

* 🐛 fix lgtm alert ([](https://github.com/antvis/x6/issues/1975)) ([7440903](7440903281))
2022-04-05 02:15:30 +00:00
96271dc298 chore(release): @antv/x6-vue-shape@1.3.2 [skip ci]
## @antv/x6-vue-shape [1.3.2](https://github.com/antvis/x6/compare/@antv/x6-vue-shape@1.3.1...@antv/x6-vue-shape@1.3.2) (2022-04-05)

### Bug Fixes

* **x6-vue-shape:** 🐛 error on removing fragment node ([](https://github.com/antvis/x6/issues/1974)) ([6614e4f](6614e4f83c))

### Dependencies

* **@antv/x6:** upgraded to 1.31.1
2022-04-05 02:15:27 +00:00
5f2b46b34c chore(release): @antv/x6-vector@1.3.1 [skip ci]
## @antv/x6-vector [1.3.1](https://github.com/antvis/x6/compare/@antv/x6-vector@1.3.0...@antv/x6-vector@1.3.1) (2022-04-05)

### Bug Fixes

* 🐛 fix lgtm alert ([](https://github.com/antvis/x6/issues/1975)) ([7440903](7440903281))
2022-04-05 02:15:24 +00:00
bfd48e644e chore(release): @antv/x6-svg-to-shape@1.0.6 [skip ci]
## @antv/x6-svg-to-shape [1.0.6](https://github.com/antvis/x6/compare/@antv/x6-svg-to-shape@1.0.5...@antv/x6-svg-to-shape@1.0.6) (2022-04-05)

### Dependencies

* **@antv/x6:** upgraded to 1.31.1
2022-04-05 02:15:21 +00:00
7440903281 fix: 🐛 fix lgtm alert () 2022-04-05 10:01:38 +08:00
769186b043 chore: update AUTHORS [skip ci] 2022-04-04 13:42:42 +00:00
b2dce8e69f chore: update contributors [skip ci] 2022-04-04 13:37:38 +00:00
6614e4f83c fix(x6-vue-shape): 🐛 error on removing fragment node () 2022-04-04 21:37:09 +08:00
c51043d468 chore: update contributors [skip ci] 2022-04-02 01:31:16 +00:00
0a0cbf9f50 chore: update contributors [skip ci] 2022-03-27 01:28:53 +00:00
09a4cf3f8b chore: update AUTHORS [skip ci] 2022-03-27 00:44:35 +00:00
a9ccf98bf1 fix wrong url of quick-start ()
fix wrong url of quick-start from /zh/docs/tutorialgetting-started to /zh/docs/tutorial/getting-started
2022-03-27 08:38:09 +08:00
3cafa37292 doc: QR code in one line 2022-03-25 11:05:44 +08:00
99e42a95b1 chore(release): @antv/x6-sites@1.5.0 [skip ci]
# @antv/x6-sites [1.5.0](https://github.com/antvis/x6/compare/@antv/x6-sites@1.4.1...@antv/x6-sites@1.5.0) (2022-03-23)

### Bug Fixes

* 🐛 add updateCellId api ([](https://github.com/antvis/x6/issues/1739)) ([78cdb3b](78cdb3bd56))
* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 release x6 v1.28.2 ([](https://github.com/antvis/x6/issues/1654)) ([745b90a](745b90ac94))

### Features

*  add insertPort api ([](https://github.com/antvis/x6/issues/1763)) ([6809dba](6809dba2d8))

### Dependencies

* **@antv/x6:** upgraded to 1.31.0
2022-03-23 02:09:07 +00:00
f79151abd0 chore(release): @antv/x6-sites-demos@1.2.1 [skip ci]
## @antv/x6-sites-demos [1.2.1](https://github.com/antvis/x6/compare/@antv/x6-sites-demos@1.2.0...@antv/x6-sites-demos@1.2.1) (2022-03-23)

### Bug Fixes

* 🐛 not create label when text is empty ([](https://github.com/antvis/x6/issues/1783)) ([ed1fcd1](ed1fcd1f26))
* 🐛 update x6 version ([](https://github.com/antvis/x6/issues/1655)) ([07037be](07037beb59))

### Dependencies

* **@antv/x6:** upgraded to 1.31.0
2022-03-23 02:09:04 +00:00
6a006f3dcd chore(release): @antv/x6-example-features@1.2.2 [skip ci]
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-03-23)

### Bug Fixes

* 🐛 optimize contextmenu tools ([](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](cc01fdf208))
* 🐛 update x6-react-shape version ([](https://github.com/antvis/x6/issues/1425)) ([4208846](4208846337))

### Performance Improvements

* ️ add simple config to remove rect and text element ([](https://github.com/antvis/x6/issues/1449)) ([0b5f241](0b5f2413f0))

### Dependencies

* **@antv/x6:** upgraded to 1.31.0
2022-03-23 02:09:00 +00:00
e42f4fe2d4 chore(release): @antv/x6-app-er@1.1.7 [skip ci]
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-03-23)

### Dependencies

* **@antv/x6:** upgraded to 1.31.0
2022-03-23 02:08:56 +00:00
9f342b68d0 chore(release): @antv/x6-app-draw@1.1.6 [skip ci]
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-03-23)

### Dependencies

* **@antv/x6:** upgraded to 1.31.0
2022-03-23 02:08:53 +00:00
6eb4e4fafd chore(release): @antv/x6-app-dag@1.1.7 [skip ci]
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-03-23)

### Dependencies

* **@antv/x6:** upgraded to 1.31.0
2022-03-23 02:08:50 +00:00
fba8cf0ce6 chore(release): @antv/x6@1.31.0 [skip ci]
# @antv/x6 [1.31.0](https://github.com/antvis/x6/compare/@antv/x6@1.30.2...@antv/x6@1.31.0) (2022-03-23)

### Bug Fixes

* 🐛 change the order of statement ([](https://github.com/antvis/x6/issues/1910)) ([eff14ba](eff14baca7))
* 🐛 fix cellEditorOptions typo ([](https://github.com/antvis/x6/issues/1895)) ([4d174d7](4d174d7807))

### Features

*  delete the new Function mode to avoid the CSP policy ([](https://github.com/antvis/x6/issues/1921)) ([157b207](157b2072f3))
* 🐛 support click on the non-text area without adding a new label ([](https://github.com/antvis/x6/issues/1894)) ([4ae1b9e](4ae1b9ef4f))
2022-03-23 02:08:48 +00:00
a7b7f0bc43 chore(release): @antv/x6-svg-to-shape@1.0.6 [skip ci]
## @antv/x6-svg-to-shape [1.0.6](https://github.com/antvis/x6/compare/@antv/x6-svg-to-shape@1.0.5...@antv/x6-svg-to-shape@1.0.6) (2022-03-23)

### Dependencies

* **@antv/x6:** upgraded to 1.31.0
2022-03-23 02:08:44 +00:00
157b2072f3 feat: delete the new Function mode to avoid the CSP policy () 2022-03-23 07:22:03 +08:00
bdf7d7b628 chore: update AUTHORS [skip ci] 2022-03-21 05:24:22 +00:00
eff14baca7 fix: 🐛 change the order of statement () 2022-03-21 13:18:05 +08:00
1152 changed files with 13361 additions and 171663 deletions
.github
.gitignoreAUTHORSCONTRIBUTING.mdCONTRIBUTING.zh-CN.mdCONTRIBUTORS.svgREADME.en-us.mdREADME.mdSECURITY.md
configs/package-json
examples
lerna.jsonpackage.json
packages
x6-angular-shape
x6-common
LICENSEREADME.md
__tests__
index.tskarma.conf.jspackage.jsonrollup.config.js
src
tsconfig.json
x6-core
LICENSEREADME.md
__tests__
index.tskarma.conf.jspackage.jsonrollup.config.js
src
tsconfig.json
x6-geometry
x6-next
LICENSEREADME.md
__tests__/util
index.tskarma.conf.jspackage.jsonrollup.config.js
scripts
src
config.ts
graph
index.lessindex.ts
model
registry
renderer
shape
style
util
view
tsconfig.json
x6-plugin-keyboard
x6-plugin-scroller
x6-react-components
x6-react-shape
x6-react
x6-vector
x6-vue-shape
x6
scripts
sites
x6-sites-demos-helper
x6-sites-demos
CHANGELOG.mdpackage.json
packages
api
graph
registry
attr
background
connection-point/playground
connector
edge-anchor/playground
edge-tool
filter
grid
node-anchor/playground
node-tool
port-label-layout
port-layout
router
ui
scene/sankey
tutorial
advanced
basic
getting-started
intermediate
x6-sites
x6-svg-to-shape
yarn.lock

6
.github/dependabot.yml vendored Normal file

@ -0,0 +1,6 @@
version: 2
updates:
- package-ecosystem: "github-actions"
directory: "/"
schedule:
interval: "weekly"

@ -1,5 +1,5 @@
# This action will automatically close issues fixed in
# pull requests that doesn't target the default branch.
# Automatically close issues fixed in pull requests that doesn't target the default branch.
name: 🚫 Auto Close Fixed Issues
on:
pull_request_target:

@ -1,3 +1,5 @@
# Comment on issues/PRs on certain events (currently not used at all.)
name: 💬 Auto Comment
on: [issues, pull_request_target]
jobs:

@ -1,3 +1,5 @@
# Continuous integration.
name: 👷 CI
on:
pull_request_target:
@ -16,16 +18,16 @@ jobs:
node-version: [16.x]
steps:
- name:  Checkout
uses: actions/checkout@v2
uses: actions/checkout@v3
- name: 🎉 Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: 🌱 Get Cache Directory
id: yarn-cache-dir-path
run: echo "::set-output name=dir::$(yarn cache dir)"
- name: 🚸 Setup Cache
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
@ -49,19 +51,19 @@ jobs:
github-token: ${{ env.bot_token }}
path-to-lcov: ./packages/x6/test/coverage/lcov.info
- name: 💡 Codecov(x6)
uses: codecov/codecov-action@v1
uses: codecov/codecov-action@v3
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: ./packages/x6/test/coverage/lcov.info
flags: x6
- name: 💡 Codecov(x6-vector)
uses: codecov/codecov-action@v1
uses: codecov/codecov-action@v3
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: ./packages/x6-vector/test/coverage/lcov.info
flags: x6-vector
- name: 💡 Codecov(x6-geometry)
uses: codecov/codecov-action@v1
uses: codecov/codecov-action@v3
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: ./packages/x6-geometry/test/coverage/lcov.info

@ -138,6 +138,9 @@
- name: pkg:x6
color: eeeeee
description: Denotes a PR that changes packages/x6
- name: pkg:x6-react
color: eeeeee
description: Denotes a PR that changes packages/x6-react
- name: pkg:x6-react-shape
color: eeeeee
description: Denotes a PR that changes packages/x6-react-shape

@ -1,3 +1,6 @@
# Create a new branch dedicated to a specific issue
# (may be superseded by GitHub functionalities)
name: 🚧 Create Issue Branch
on:
issue_comment:
@ -6,7 +9,7 @@ jobs:
cib:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- uses: wow-actions/use-app-token@v1
with:
app_id: ${{ secrets.APP_ID }}

@ -1,3 +1,5 @@
# Delete all but the last x GitHub releases for certain packages.
name: 🚫 Delete Stale Releases
on:
repository_dispatch:
@ -6,7 +8,7 @@ jobs:
clean:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- uses: wow-actions/use-app-token@v1
with:
app_id: ${{ secrets.APP_ID }}
@ -20,6 +22,7 @@ jobs:
group: '(?!^)@.*$'
exclude: |
@antv/x6@**
@antv/x6-react@**
@antv/x6-vue-shape@**
@antv/x6-react-shape@**
@antv/x6-angular-shape@**

@ -1,3 +1,5 @@
# Build and deploy updated official site to GitHub pages.
name: 🚀 Deploy Sites
on:
repository_dispatch:
@ -10,9 +12,9 @@ jobs:
node-version: [16.x]
steps:
- name:  Checkout
uses: actions/checkout@v2
uses: actions/checkout@v3
- name: 🎉 Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
@ -21,7 +23,7 @@ jobs:
run: echo "::set-output name=dir::$(yarn cache dir)"
- name: 🚸 Setup Cache
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
@ -30,7 +32,7 @@ jobs:
## cache webpack(babel-loader, eslint-loader)
- name: 💩 Setup Webpack Cache
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: |
node_modules
@ -41,7 +43,7 @@ jobs:
## cache sites
- name: 💩 Setup Sites Cache
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: sites/x6-sites/static/demos
key: ${{ runner.os }}-sites-${{ hashFiles('./packages/x6/package.json', './sites/x6-sites-demos/**/src') }}

@ -1,3 +1,5 @@
# https://github.com/gitleaks/gitleaks-action
name: 🥤 GitLeaks
on:
pull_request_target:
@ -10,7 +12,7 @@ jobs:
gitleaks:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
fetch-depth: '1'
- name: wget
@ -18,4 +20,4 @@ jobs:
with:
args: -O .gitleaks.toml https://raw.githubusercontent.com/ycjcl868/gitleaks/master/.gitleaks.toml
- name: gitleaks-action
uses: zricethezav/gitleaks-action@master
uses: zricethezav/gitleaks-action@v1.6.0

@ -1,3 +1,8 @@
# Perform certain actions when labels are added to
# or removed from issues.
#
# See .github/workflows/config/label-commands.yml
name: 👾 Label Commands
on:
pull_request_target:

@ -1,3 +1,6 @@
# Locks closed issues and pull requests after a period of inactivity.
# https://github.com/dessant/lock-threads
name:  Lock Threads
on:
schedule:
@ -11,7 +14,7 @@ jobs:
app_id: ${{ secrets.APP_ID }}
private_key: ${{ secrets.PRIVATE_KEY }}
env_name: bot_token
- uses: dessant/lock-threads@v2
- uses: dessant/lock-threads@v3
with:
github-token: ${{ env.bot_token }}
issue-lock-inactive-days: 365

@ -1,3 +1,6 @@
# Request more info from newly opened issues/PRs that contain either default title/body or whose body is left blank
# https://github.com/wow-actions/needs-more-info
name: 🚨 Needs More Info
on:
pull_request_target:

@ -1,3 +1,6 @@
# Search for potential issue duplicates using DamerauLevenshtein algorithm
# https://github.com/wow-actions/potential-duplicates
name: 🆖 Potential Duplicates
on:
issues:

@ -1,3 +1,6 @@
# Automatically apply labels to your PRs based on branch name patterns like feature/* or fix/*
# https://github.com/TimonVS/pr-labeler-action
name: 🏷 Label(Branch Name)
on:
pull_request_target:

@ -1,3 +1,6 @@
# Label a PR according to the packages it involves, based on changed files
# and the rules defined in .github/workflows/config/pr-label-file-paths.yml
name: 🏷 Label(File Paths)
on: pull_request_target
jobs:
@ -9,7 +12,7 @@ jobs:
app_id: ${{ secrets.APP_ID }}
private_key: ${{ secrets.PRIVATE_KEY }}
env_name: bot_token
- uses: actions/labeler@v2
- uses: actions/labeler@v4
with:
repo-token: ${{ env.bot_token }}
configuration-path: .github/workflows/config/pr-label-file-paths.yml

@ -1,10 +1,12 @@
# Assign labels based on pull request change sizes.
name: 🏷 Label(Patch Size)
on: pull_request_target
jobs:
label:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- uses: wow-actions/use-app-token@v1
with:
app_id: ${{ secrets.APP_ID }}

@ -1,9 +1,16 @@
# Automatically label a PR depending on the PR's status (springboard)
name: 🏷 Label(Status) Dummy
on:
pull_request_review:
types: [submitted, dismissed]
permissions:
contents: read
jobs:
dummy:
permissions:
contents: none
runs-on: ubuntu-latest
steps:
- run: echo "this is a dummy workflow that triggers a workflow_run; it's necessary because otherwise the repo secrets will not be in scope for externally forked pull requests"

@ -1,3 +1,5 @@
# Automatically label a PR depending on the PR's status
name: 🏷 Label(Status)
on:
pull_request_target:
@ -17,4 +19,4 @@ jobs:
- uses: wow-actions/pr-triage@v1
with:
GITHUB_TOKEN: ${{ env.bot_token }}
WORKFLOW-ID: ${{ github.event.workflow_run.id }}
WORKFLOW_ID: ${{ github.event.workflow_run.id }}

@ -1,5 +1,6 @@
# Github action for automatically adding label or setting assignee when a new
# Issue or PR is opened. https://github.com/marketplace/actions/issue-labeler
# Automatically add labels or setting assignees when a new issue or PR is opened,
# based on its title and body.
# https://github.com/marketplace/actions/issue-labeler
name: 🏷 Label(Title and Body)
on:
@ -16,7 +17,7 @@ jobs:
app_id: ${{ secrets.APP_ID }}
private_key: ${{ secrets.PRIVATE_KEY }}
env_name: bot_token
- uses: Naturalclar/issue-action@v2.0.1
- uses: Naturalclar/issue-action@v2.0.2
with:
title-or-body: title
github-token: ${{ env.bot_token }}

@ -1,3 +1,5 @@
# https://github.com/afc163/surge-preview
name: 🔂 Surge PR Preview
on:
pull_request_target:
@ -13,14 +15,14 @@ jobs:
matrix:
node-version: [16.x]
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- name: 🌱 Get yarn cache directory path
id: yarn-cache-dir-path
run: echo "::set-output name=dir::$(yarn cache dir)"
- name: 🚸 Setup yarn cacha
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
@ -29,7 +31,7 @@ jobs:
## cache webpack(babel-loader, eslint-loader)
- name: 💩 Setup webpack cache
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: |
node_modules
@ -40,7 +42,7 @@ jobs:
## cache sites
- name: 💩 Setup sites cache
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: sites/x6-sites/static/demos
key: ${{ runner.os }}-sites-${{ hashFiles('./packages/x6/package.json', './sites/x6-sites-demos/**/src') }}
@ -48,7 +50,7 @@ jobs:
${{ runner.os }}-sites-
- name: 🎉 Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}

@ -1,3 +1,5 @@
# Automatically rebase PRs via the /rebase command
name: 🎉 Rebase
on:
issue_comment:
@ -7,7 +9,7 @@ jobs:
if: github.event.issue.pull_request != '' && contains(github.event.comment.body, '/rebase')
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@master
- uses: actions/checkout@v3
with:
fetch-depth: 0
- uses: wow-actions/use-app-token@v1

@ -1,4 +1,8 @@
# @see: https://dev.to/antongolub/the-chronicles-of-semantic-release-and-monorepos-5cfc
# Create new GitHub releases using scripts/monorepo-semantic-release
# and the semantic-release package.
#
# See https://www.npmjs.com/package/semantic-release
# See https://dev.to/antongolub/the-chronicles-of-semantic-release-and-monorepos-5cfc
name: 🚀 Release
on:
@ -17,16 +21,16 @@ jobs:
node-version: [16.x]
steps:
- name:  Checkout
uses: actions/checkout@v2
uses: actions/checkout@v3
- name: 🎉 Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: 🌱 Get Cache Directory
id: yarn-cache-dir-path
run: echo "::set-output name=dir::$(yarn cache dir)"
- name: 🚸 Setup Cache
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
@ -60,7 +64,7 @@ jobs:
- name: 🔀 Repository Dispatch
if: github.ref == 'refs/heads/master'
uses: peter-evans/repository-dispatch@v1
uses: peter-evans/repository-dispatch@v2
with:
token: ${{ env.bot_token }}
event-type: released

@ -1,3 +1,5 @@
# https://github.com/wow-actions/slash-commands
name: 🔱 Slash Commands
on:
issue_comment:

@ -1,3 +1,5 @@
# Warn and then close issues and PRs that have had no activity for a specified amount of time.
name: 👻 Stale
on:
schedule:
@ -11,7 +13,7 @@ jobs:
app_id: ${{ secrets.APP_ID }}
private_key: ${{ secrets.PRIVATE_KEY }}
env_name: bot_token
- uses: actions/stale@v3
- uses: actions/stale@v6
with:
repo-token: ${{ env.bot_token }}
stale-issue-message: |

@ -1,3 +1,5 @@
# Update issue labels in repo as defined in /.github/workflows/config/labels.yml
name: 🔄 Sync Labels
on:
push:
@ -9,7 +11,7 @@ jobs:
sync:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
- uses: wow-actions/use-app-token@v1
with:
app_id: ${{ secrets.APP_ID }}

@ -1,3 +1,5 @@
# Sync repo to https://gitee.com/
#
# https://github.com/marketplace/actions/gitee-pages-action
# 配置步骤如下
# 1. 在命令行终端或 Git Bash 使用命令 ssh-keygen -t rsa -C "youremail@example.com" 生成 SSH Key注意替换为自己的邮箱。生成的 id_rsa 是私钥id_rsa.pub 是公钥。(⚠️注意此处不要设置密码)

@ -1,3 +1,5 @@
# Automatically generate and update AUTHORS.txt.
name: 🎗 Update Authors
on:
push:
@ -9,7 +11,7 @@ jobs:
authors:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
fetch-depth: 0
- uses: wow-actions/use-app-token@v1

@ -1,4 +1,5 @@
# Auto update cahe
# Cache dependencies and build outputs to improve workflow execution time.
# https://github.com/actions/cache
name: 🌈 Update Cache
on:
@ -10,6 +11,9 @@ on:
- next-major
- alpha
- beta
permissions:
contents: read
jobs:
cache:
runs-on: ubuntu-latest
@ -18,9 +22,9 @@ jobs:
node-version: [16.x]
steps:
- name:  Checkout
uses: actions/checkout@v2
uses: actions/checkout@v3
- name: 🎉 Use Node.js ${{ matrix.node-version }}
uses: actions/setup-node@v1
uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
- name: 🌱 Get Cache Directory
@ -28,7 +32,7 @@ jobs:
run: echo "::set-output name=dir::$(yarn cache dir)"
- name: 🚸 Setup Cache
id: cache
uses: actions/cache@v2
uses: actions/cache@v3
with:
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}

@ -1,3 +1,5 @@
# Update /CONTRIBUTORS.svg to include new contributors' avatars.
name: 🤝 Update Contributors
on:
schedule:

@ -1,3 +1,5 @@
# Renew the copyright notice in LICENSE at the beginning of every year.
name: 🔑 Update License
on:
schedule:
@ -6,7 +8,7 @@ jobs:
update:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
fetch-depth: 0
- uses: wow-actions/use-app-token@v1

@ -1,3 +1,5 @@
# Comment a welcome message on an issue if it's the reporter's first issue.
name: 👋 Welcome
on:
pull_request_target:

2
.gitignore vendored

@ -11,5 +11,3 @@ es
dist
*.pem
!mock-cert.pem
tmp
test

24
AUTHORS

@ -1,4 +1,5 @@
BARM <284942955@qq.com>
Candy <563378816@qq.com>
Chaoqi <HAN>
Clifford <ajard>
DaiGang <42136433+daigang666@users.noreply.github.com>
@ -6,11 +7,19 @@ Dong <48054715+halodong@users.noreply.github.com>
Draco <Draco.coder@gmail.com>
Eve-Sama <17764594863@163.com>
Eve-Sama <948832626@qq.com>
Gossypol <31892817+gossypol@users.noreply.github.com>
ImgBotApp <ImgBotHelp@gmail.com>
Indomi <indomi126@gmail.com>
James <san>
Jógvan <lse>
Ken <ei>
Limbo <49612796+JUST-Limbo@users.noreply.github.com>
Lixu <37231473+wflixu@users.noreply.github.com>
Lloyd <ho>
Lyn <47809781+lyn-boyu@users.noreply.github.com>
Mingfei <az8641683@163.com>
MrMengJ <2646973632@qq.com>
Naveen <172697+naveensrinivasan@users.noreply.github.com>
NewByVector <NewByVector@users.noreply.github.com>
Olive.Wang <olivewind.wang@gmail.com>
Opportunity <opportunity@live.in>
@ -18,18 +27,25 @@ Questions <chip@twostewards.com>
RuiLin <on>
SSC <273702440@qq.com>
Sindori <441933726@qq.com>
Susan <527971893@qq.com>
Thomas <eugne>
Tony <>
Utopia <greatauk11@gmail.com>
XLZY <1017866168@qq.com>
Xingjian <han>
Zhenyu <o>
arthur657834 <kingkom7834@126.com>
boyu.zlj <boyu.zlj@antgroup.com>
breezefaith <nyzhangzc@qq.com>
bubkoo <bubkoo.wy@gmail.com>
bubkoo <bubkoo@users.noreply.github.com>
budlion <dongqi.ldq@alibaba-inc.com>
cuidong626 <cuidong1234@outlook.com>
daigang <1210242662@qq.com>
doublewu <592581554@qq.com>
iceytea <liyunheasap@yeah.net>
jiqili <43718732+jiqili@users.noreply.github.com>
kelin.zrh <34393362+AricZhu@users.noreply.github.com>
kingshuaishuai <ken.wang@mrs.ai>
kio <1421104933@qq.com>
lijing666 <lijing241@yeah.net>
@ -37,18 +53,25 @@ lopn <lopnxrp@126.com>
luchunwei <luchunwei@gmail.com>
luzhuang <364439895@qq.com>
lvhuiyang <ilvhuiyang@gmail.com>
myzxlin <myzxlin@163.com>
newbyvector <vectorse@126.com>
niexq <1879633916@qq.com>
niexq <niexq@firstgrid.cn>
pengxingjian.pxj <pengxingjian.pxj@alibaba-inc.com>
pfdgithub <pfdgithub@users.noreply.github.com>
qingchi <qinky94@163.com>
qu <33251372+Qujh97@users.noreply.github.com>
sallen450 <qinghua10199@gmail.com>
semantic-release-bot <semantic-release-bot@martynus.net>
vector <vectorse@126.com>
wenbei <38773084+wb-wenbei@users.noreply.github.com>
wgf <34190465+evelope@users.noreply.github.com>
wind <>
wjqsummer <52412389+wjqsummer@users.noreply.github.com>
wtzeng1 <wtzeng1@gmail.com>
x6-bot <x6-bot@users.noreply.github.com>
xrkffgg <xrkffgg@gmail.com>
yaojin2070 <48686959+yaojin2070@users.noreply.github.com>
zdc1111 <39116292+zdc1111@users.noreply.github.com>
九思⚡⚡⚡ <2228429150@qq.com>
何腾飞 <avrin.live.cn@outlook.com>
@ -58,6 +81,7 @@ zdc1111 <39116292+zdc1111@users.noreply.github.com>
文瑀 <wenyu.jqq@antfin.com>
杨凌 <89915256@qq.com>
柏愚 <boyu.zlj@antfin.com>
粑粑超 <842486229@qq.com>
金强强 <wenyu.jqq@antfin.com>
问崖 <bubkoo.wy@gmail.com>
问崖 <pengxingjian.pxj@antfin.com>

@ -110,8 +110,8 @@ Look at [these files](https://docs.google.com/document/d/1QrDFcIiPjSLDn3EL15IJyg
X6 uses semantic versioning in release process based on [semver](https://semver.org/).
- [Publishing maintenance releases](https://github.com/semantic-release/semantic-release/blob/master/docs/recipes/release-workflow/maintenance-releases.md)
- [Publishing pre-releases](https://github.com/semantic-release/semantic-release/blob/master/docs/recipes/release-workflow/pre-releases.md)
- [Publishing maintenance releases](https://github.com/semantic-release/semantic-release/blob/master/docs/recipes/maintenance-releases.md)
- [Publishing pre-releases](https://github.com/semantic-release/semantic-release/blob/master/docs/recipes/pre-releases.md)
### Branch Strategy

@ -1,6 +1,6 @@
# 代码贡献规范
如果你有任何疑问,欢迎提交 [issue](https://github.com/antvis/x6/issues) 或 [PR](https://github.com/antvis/x6/pulls)!
有任何疑问,欢迎提交 [issue](https://github.com/antvis/x6/issues) 或 [PR](https://github.com/antvis/x6/pulls)!
## 提交 issue
@ -109,8 +109,8 @@ BREAKING CHANGE:
## 发布管理
- [发布维护版本](https://github.com/semantic-release/semantic-release/blob/master/docs/recipes/release-workflow/maintenance-releases.md)
- [发布预发版本](https://github.com/semantic-release/semantic-release/blob/master/docs/recipes/release-workflow/pre-releases.md)
- [Publishing maintenance releases](https://github.com/semantic-release/semantic-release/blob/master/docs/recipes/maintenance-releases.md)
- [Publishing pre-releases](https://github.com/semantic-release/semantic-release/blob/master/docs/recipes/pre-releases.md)
X6 基于 [semver](http://semver.org/lang/zh-CN/) 语义化版本号进行发布。
@ -121,7 +121,7 @@ X6 基于 [semver](http://semver.org/lang/zh-CN/) 语义化版本号进行发布
### 发布策略
每个大版本的发布中,都会有一个PM在发布的不同阶段负有以下职责:
每个大版本都有一个发布经理管理(PM,他/她要做的事情
#### 准备工作:
@ -135,6 +135,6 @@ X6 基于 [semver](http://semver.org/lang/zh-CN/) 语义化版本号进行发布
#### 发布时:
- 将老的稳定版本master备份到以当前大版本为名字的分支上例如 `1.x`),并设置 tag 为 {v}.x v 为当前版本,例如 `1.x`)。
- 将老的稳定版本master备份到以当前大版本为名字的分支上例如 `1.x`),并设置 tag 为 {v}.x` v 为当前版本,例如 `1.x`)。
- 发布新的稳定版本到 [npm](http://npmjs.com),并通知上层框架进行更新。
- `npm publish` 之前,请先阅读[『我是如何发布一个 npm 包的』](https://fengmk2.com/blog/2016/how-i-publish-a-npm-package)。

File diff suppressed because one or more lines are too long

Before

(image error) Size: 8.7 MiB

After

(image error) Size: 15 MiB

@ -2,9 +2,10 @@
<p align="center"><img src="/flow.svg"></p>
<p align="center"><strong>Graph Editing Engine Of AntV</strong></p>
<p align="center"><strong>JavaScript diagramming library that uses SVG and HTML for rendering</strong></p>
<p align="center"><a href="https://x6.antv.vision/en/docs/tutorial/about">Tutorials</a> · <a href="https://x6.antv.vision/en/examples/gallery">Examples</a> · <a href="https://x6.antv.vision/en/docs/api/graph">API</a></p>
<p align="center">
<a href="https://github.com/antvis/X6/actions/workflows/ci.yml"><img alt="build" src="https://img.shields.io/github/workflow/status/antvis/x6/%F0%9F%91%B7%E3%80%80CI/master?logo=github&style=flat-square"></a>
<a href="https://app.codecov.io/gh/antvis/X6"><img alt="coverage" src="https://img.shields.io/codecov/c/gh/antvis/x6?logo=codecov&style=flat-square&token=15CO54WYUV"></a>
@ -22,22 +23,15 @@
## Features
- 🌱 Easy-to-customize: based on well known SVG/HTML/CSS or React/Vue/Angular to custom nodes and edges
- 🚀 Out-of-the-box: built-in 10+ plugins, such as selection, dnd, redo/undo, snapline, minimap, etc.
- 🧲 Data-driven: base on MVC architecture, you can focus on data logic and business logic
- 💯 Highly-event-driven: you can react on any event that happens inside the graph
## Environment Support
- Modern browsers and Internet Explorer 11 (with polyfills)
- Server-side Rendering
| [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/edge/edge_48x48.png" alt="IE / Edge" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)<br>IE / Edge | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/firefox/firefox_48x48.png" alt="Firefox" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)<br>Firefox | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/chrome/chrome_48x48.png" alt="Chrome" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)<br>Chrome | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/safari/safari_48x48.png" alt="Safari" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)<br>Safari |
| --- | --- | --- | --- |
| IE11, Edge | last 2 versions | last 2 versions | last 2 versions |
- 🌱 easy-to-customize: based on well known SVG/HTML/CSS or React/Vue to custom nodes and edges
- 🚀 out-of-the-box: built-in 10+ plugins, such as selection, dnd, redo/undo, snapline, minimap, etc.
- 🧲 data-driven: base on MVC architecture, you can focus on data logic and business logic
- 💯 highly-event-driven: you can react on any event that happens inside the graph
## Installation
### NPM/Yarn
```shell
# npm
$ npm install @antv/x6 --save
@ -46,20 +40,51 @@ $ npm install @antv/x6 --save
$ yarn add @antv/x6
```
### CDNs
For learning purposes, you can use the latest version with one of the CDN:
- https://unpkg.com/@antv/x6/dist/x6.js
- https://cdn.jsdelivr.net/npm/@antv/x6/dist/x6.js
- https://cdnjs.cloudflare.com/ajax/libs/antv-x6/1.3.20/x6.js
```html
<script src="https://unpkg.com/@antv/x6/dist/x6.js"></script>
```
For production, we recommend linking to a specific version number to avoid unexpected breakage from newer versions:
- https://unpkg.com/@antv/x6@1.1.1/dist/x6.js
- https://cdn.jsdelivr.net/npm/@antv/x6@1.1.1/dist/x6.js
- https://cdnjs.cloudflare.com/ajax/libs/antv-x6/1.1.1/x6.js
```html
<script src="https://unpkg.com/@antv/x6@1.1.1/dist/x6.js"></script>
```
## Usage
**Step 1**: specify a container the render the diagram.
```html
<div id="container" style="width: 600px; height: 400px"></div>
```
```ts
import { Graph } from '@antv/x6'
**Step 2**: render nodes and edges.
```ts
// import from node_modules
import { Graph } from '@antv/x6'
// or use the global variable `X6` exported from CDN links
// const { Graph } = X6
// Create an instance of Graph.
const graph = new Graph({
container: document.getElementById('container'),
grid: true
})
// Render source node.
const source = graph.addNode({
x: 300,
y: 40,
@ -68,6 +93,7 @@ const source = graph.addNode({
label: 'Hello',
})
// Render target node.
const target = graph.addNode({
x: 420,
y: 180,
@ -76,23 +102,92 @@ const target = graph.addNode({
label: 'World',
})
// Render edge from source to target.
graph.addEdge({
source,
target,
})
```
## Links
<img src="https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*o4W3RLZicagAAAAAAAAAAAAAARQnAQ" alt="HelloWorld" />
- [Documents](https://x6.antv.vision/zh/docs/tutorial/about)
- [Samples](https://x6.antv.vision/zh/examples/gallery)
- [Blog](https://www.yuque.com/antv/x6/gcinvi)
- [Versioning Release Note](https://www.yuque.com/antv/x6/bbfu6r)
- [FAQ](https://www.yuque.com/antv/x6/be9pfx)
- [CodeSanbox Template](https://codesandbox.io/s/qosj0?file=/src/app.tsx)
## Documentation
- [About](https://x6.antv.vision/en/docs/tutorial/about)
- [Getting Started](https://x6.antv.vision/en/docs/tutorial/getting-started)
- [Basic Usage](https://x6.antv.vision/en/docs/tutorial/basic/graph)
- [Advanced Practice](https://x6.antv.vision/en/docs/tutorial/intermediate/serialization)
- [Senior Guidance](https://x6.antv.vision/en/docs/tutorial/advanced/animation)
- [ChangeLog](https://x6.antv.vision/en/docs/tutorial/log)
## App Demos Build with X6
<center>
<a href="https://x6.antv.vision/zh/examples/showcase/practices#flowchart" target="_blank" rel="noopener noreferrer">
<img width="400" height="250" style="margin-bottom: 20px" src="https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*JSr-RbwCgmcAAAAAAAAAAAAAARQnAQ" alt="Flow"/>
</a>
<a href="https://x6.antv.vision/zh/examples/showcase/practices#dag" target="_blank" rel="noopener noreferrer">
<img width="400" height="250" style="margin-bottom: 20px" src="https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*RPiGRaSus3UAAAAAAAAAAAAAARQnAQ" alt="Dag"/>
</a>
<a href="https://x6.antv.vision/zh/examples/showcase/practices#mindmap" target="_blank" rel="noopener noreferrer">
<img width="400" height="200" style="margin-bottom: 20px" src="https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*GsEGSaBkc84AAAAAAAAAAAAAARQnAQ" alt="MindMap"/>
</a>
<a href="https://x6.antv.vision/zh/examples/showcase/practices#bpmn" target="_blank" rel="noopener noreferrer">
<img width="400" height="200" style="margin-bottom: 20px" src="https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*aPSySa8oz4sAAAAAAAAAAAAAARQnAQ" alt="BPMN"/>
</a>
<a href="https://x6.antv.vision/zh/examples/showcase/practices#class" target="_blank" rel="noopener noreferrer">
<img width="400" height="250" style="margin-bottom: 20px" src="https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*OaCpR7t_mVoAAAAAAAAAAAAAARQnAQ" alt="Class"/>
</a>
<a href="https://x6.antv.vision/zh/examples/showcase/practices#org" target="_blank" rel="noopener noreferrer">
<img width="400" height="250" style="margin-bottom: 20px" src="https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*FWx5SYDzLw4AAAAAAAAAAAAAARQnAQ" alt="ORG"/>
</a>
<a href="https://x6.antv.vision/zh/examples/showcase/practices#er" target="_blank" rel="noopener noreferrer">
<img width="400" height="250" style="margin-bottom: 20px" src="https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*7yVJQoM6-9AAAAAAAAAAAAAAARQnAQ" alt="ER"/>
</a>
<a href="https://x6.antv.vision/zh/examples/showcase/practices#swimlane" target="_blank" rel="noopener noreferrer">
<img width="400" height="250" style="margin-bottom: 20px" src="https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*mUVrSJMkP1UAAAAAAAAAAAAAARQnAQ" alt="SwimLane"/>
</a>
<a href="https://x6.antv.vision/zh/examples/showcase/practices#tree" target="_blank" rel="noopener noreferrer">
<img width="400" height="250" style="margin-bottom: 20px" src="https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*XDnNRqnj4WkAAAAAAAAAAAAAARQnAQ" alt="Tree"/>
</a>
<a href="https://x6.antv.vision/zh/examples/showcase/practices#elk" target="_blank" rel="noopener noreferrer">
<img width="400" height="250" style="margin-bottom: 20px" src="https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*Z3ebTKy0w9cAAAAAAAAAAAAAARQnAQ" alt="ELK"/>
</a>
</center>
## Communication
Welcome to join the **X6 Communication Group** (Scan the QR Code to Join us). We also welcome the github [issues](https://github.com/antvis/x6/issues).
<a href="https://qr.dingtalk.com/action/joingroup?code=v1,k1,rOHuvgq5s0EHDktyyQJffDE3ZAmHnbB2e6iwn/w4BKs=&_dt_no_comment=1&origin=11" target="_blank" rel="noopener noreferrer">
<img src="https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*nFa5TaWsSOoAAAAAAAAAAAAAARQnAQ" alt="X6 图可视化交流群4" width="260" />
</a>
## Development
This repo is based on [lerna](https://github.com/lerna/lerna) with the following structure:
```
.
├── examples
│ ├── x6-app-dag # example of dag graph
│ ├── x6-app-draw # example of flowchart
│ ├── x6-app-er # example of ER chart
│ └── x6-example-features # example of basic features
├── packages
│ ├── x6 # X6
│ ├── x6-react # wrap X6 with react(reserved)
│ ├── x6-react-components # react componets to build graph apps
│ ├── x6-react-shape # support render node with react
│ └── x6-vue-shape # support render node with vue
└── sites
├── x6-sites # sites and documents
├── x6-sites-demos # demos in documents
└── x6-sites-demos-helper # tools to build demos
```
We need to install some necessary global tools before getting started.
```shell
# install yarn and lerna
$ npm install yarn -g
@ -100,19 +195,37 @@ $ npm install lerna -g
# install deps and build
$ yarn bootstrap
```
# enter the specified project development and debugging
cd packages/x6
yarn build:watch
Then we can `cd` to dirs to development and debugging.
# start example to see the effect
Such as, we can start `examples/x6-example-features` locally:
```shell
cd examples/x6-example-features
yarn start
```
When need to fix some bugs of X6, we can start with **watch** mode:
```shell
cd packages/x6
// build esm to "em" dir
yarn build:watch:esm
// build commonjs to "lib" dir
yarn build:watch:cjs
```
## Contributing
To become a contributor, please follow our [contributing guide](/CONTRIBUTING.md). If you are an active contributor, you can apply to be a outside collaborator.
Please let us know how can we help. Do check out [issues](https://github.com/antvis/x6/issues) for bug reports or suggestions first.
To become a contributor, please follow our [contributing guide](/CONTRIBUTING.md).
## Contributors
<a href="https://github.com/antvis/x6/graphs/contributors">
<img src="/CONTRIBUTORS.svg" alt="Contributors" width="740" />

172
README.md

@ -1,9 +1,10 @@
简体中文 | [English](/README.en-us.md)
<p align="center"><img alt="flow" src="/flow.svg"></p>
<p align="center"><img src="/flow.svg"></p>
<p align="center"><strong>X6 是 AntV 旗下的图编辑引擎</strong></p>
<p align="center"><strong>提供简单易用的节点定制能力和开箱即用的交互组件方便我们快速搭建流程图、DAG 图、ER 图等图应用</strong></p>
<p align="center"><a href="https://x6.antv.vision/zh/docs/tutorial/about">教程</a><a href="https://x6.antv.vision/zh/examples/gallery">示例</a><a href="https://x6.antv.vision/zh/docs/api/graph">API</a></p>
<p align="center">
<a href="https://github.com/antvis/X6/actions/workflows/ci.yml"><img alt="build" src="https://img.shields.io/github/workflow/status/antvis/x6/%F0%9F%91%B7%E3%80%80CI/master?logo=github&style=flat-square"></a>
@ -20,24 +21,18 @@
<a href="https://x6.antv.vision"><img alt="website" src="https://img.shields.io/static/v1?label=&labelColor=505050&message=website&color=0076D6&style=flat-square&logo=google-chrome&logoColor=0076D6"></a>
</p>
## 特性
- 🌱 极易定制:支持使用 SVG/HTML/React/Vue/Angular 定制节点样式和交互
- 🌱 极易定制:支持使用 SVG/HTML/React/Vue 定制节点样式和交互
- 🚀 开箱即用:内置 10+ 图编辑配套扩展,如框选、对齐线、小地图等
- 🧲 数据驱动:基于 MVC 架构,用户更加专注于数据逻辑和业务逻辑
- 💯 事件驱动:完备的事件系统,可以监听图表内发生的任何事件
## 兼容环境
- 现代浏览器和 IE11需要 polyfills
- 支持服务端渲染。
| [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/edge/edge_48x48.png" alt="IE / Edge" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)<br>IE / Edge | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/firefox/firefox_48x48.png" alt="Firefox" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)<br>Firefox | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/chrome/chrome_48x48.png" alt="Chrome" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)<br>Chrome | [<img src="https://raw.githubusercontent.com/alrra/browser-logos/master/src/safari/safari_48x48.png" alt="Safari" width="24px" height="24px" />](http://godban.github.io/browsers-support-badges/)<br>Safari |
| --- | --- | --- | --- |
| IE11, Edge | last 2 versions | last 2 versions | last 2 versions |
## 安装
### 使用 NPM/Yarn
```shell
# npm
$ npm install @antv/x6 --save
@ -46,20 +41,51 @@ $ npm install @antv/x6 --save
$ yarn add @antv/x6
```
## 示例
### 使用 CDN
可以使用下面任意一个最新版本的 CDN 地址:
- https://unpkg.com/@antv/x6/dist/x6.js
- https://cdn.jsdelivr.net/npm/@antv/x6/dist/x6.js
- https://cdnjs.cloudflare.com/ajax/libs/antv-x6/1.3.20/x6.js
```html
<script src="https://unpkg.com/@antv/x6/dist/x6.js"></script>
```
在生产环境中,建议使用指定版本号的链接,以避免版本更新带来的意外破坏:
- https://unpkg.com/@antv/x6@1.1.1/dist/x6.js
- https://cdn.jsdelivr.net/npm/@antv/x6@1.1.1/dist/x6.js
- https://cdnjs.cloudflare.com/ajax/libs/antv-x6/1.1.1/x6.js
```html
<script src="https://unpkg.com/@antv/x6@1.1.1/dist/x6.js"></script>
```
## 快速使用
**Step 1**: 指定渲染图的容器。
```html
<div id="container" style="width: 600px; height: 400px"></div>
```
```ts
import { Graph } from '@antv/x6'
**Step 2**: 渲染节点和边。
```ts
// 从 node_modules 引入
import { Graph } from '@antv/x6'
// 从 CDN 引入时,我们暴露了 X6 这个全局变量
// const { Graph } = X6
// 创建 Graph 的实例
const graph = new Graph({
container: document.getElementById('container'),
grid: true
})
// 渲染源节点
const source = graph.addNode({
x: 300,
y: 40,
@ -68,6 +94,7 @@ const source = graph.addNode({
label: 'Hello',
})
// 渲染目标节点
const target = graph.addNode({
x: 420,
y: 180,
@ -76,22 +103,95 @@ const target = graph.addNode({
label: 'World',
})
// 渲染边
graph.addEdge({
source,
target,
})
```
## 链接
渲染结果如下。
- [文档](https://x6.antv.vision/zh/docs/tutorial/about)
- [示例](https://x6.antv.vision/zh/examples/gallery)
- [博客](https://www.yuque.com/antv/x6/gcinvi)
- [更新日志](https://www.yuque.com/antv/x6/bbfu6r)
- [常见问题](https://www.yuque.com/antv/x6/be9pfx)
- [CodeSanbox 模板](https://codesandbox.io/s/qosj0?file=/src/app.tsx)
<img src="https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*o4W3RLZicagAAAAAAAAAAAAAARQnAQ" alt="HelloWorld" />
## 本地开发
## 使用文档
- [简介](https://x6.antv.vision/zh/docs/tutorial/about)
- [快速上手](https://x6.antv.vision/zh/docs/tutorial/getting-started)
- [基础教程](https://x6.antv.vision/zh/docs/tutorial/basic/graph)
- [进阶实践](https://x6.antv.vision/zh/docs/tutorial/intermediate/serialization)
- [高级指引](https://x6.antv.vision/zh/docs/tutorial/advanced/animation)
- [更新日志](https://www.yuque.com/antv/x6/xgb04i)
## 应用案例
<center>
<a href="https://x6.antv.vision/zh/examples/showcase/practices#flowchart" target="_blank" rel="noopener noreferrer">
<img width="400" height="250" style="margin-bottom: 20px" src="https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*JSr-RbwCgmcAAAAAAAAAAAAAARQnAQ" alt="Flow"/>
</a>
<a href="https://x6.antv.vision/zh/examples/showcase/practices#dag" target="_blank" rel="noopener noreferrer">
<img width="400" height="250" style="margin-bottom: 20px" src="https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*RPiGRaSus3UAAAAAAAAAAAAAARQnAQ" alt="Dag"/>
</a>
<a href="https://x6.antv.vision/zh/examples/showcase/practices#mindmap" target="_blank" rel="noopener noreferrer">
<img width="400" height="200" style="margin-bottom: 20px" src="https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*GsEGSaBkc84AAAAAAAAAAAAAARQnAQ" alt="MindMap"/>
</a>
<a href="https://x6.antv.vision/zh/examples/showcase/practices#bpmn" target="_blank" rel="noopener noreferrer">
<img width="400" height="200" style="margin-bottom: 20px" src="https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*aPSySa8oz4sAAAAAAAAAAAAAARQnAQ" alt="BPMN"/>
</a>
<a href="https://x6.antv.vision/zh/examples/showcase/practices#class" target="_blank" rel="noopener noreferrer">
<img width="400" height="250" style="margin-bottom: 20px" src="https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*OaCpR7t_mVoAAAAAAAAAAAAAARQnAQ" alt="Class"/>
</a>
<a href="https://x6.antv.vision/zh/examples/showcase/practices#org" target="_blank" rel="noopener noreferrer">
<img width="400" height="250" style="margin-bottom: 20px" src="https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*FWx5SYDzLw4AAAAAAAAAAAAAARQnAQ" alt="ORG"/>
</a>
<a href="https://x6.antv.vision/zh/examples/showcase/practices#er" target="_blank" rel="noopener noreferrer">
<img width="400" height="250" style="margin-bottom: 20px" src="https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*7yVJQoM6-9AAAAAAAAAAAAAAARQnAQ" alt="ER"/>
</a>
<a href="https://x6.antv.vision/zh/examples/showcase/practices#swimlane" target="_blank" rel="noopener noreferrer">
<img width="400" height="250" style="margin-bottom: 20px" src="https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*mUVrSJMkP1UAAAAAAAAAAAAAARQnAQ" alt="SwimLane"/>
</a>
<a href="https://x6.antv.vision/zh/examples/showcase/practices#tree" target="_blank" rel="noopener noreferrer">
<img width="400" height="250" style="margin-bottom: 20px" src="https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*XDnNRqnj4WkAAAAAAAAAAAAAARQnAQ" alt="Tree"/>
</a>
<a href="https://x6.antv.vision/zh/examples/showcase/practices#elk" target="_blank" rel="noopener noreferrer">
<img width="400" height="250" style="margin-bottom: 20px" src="https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*Z3ebTKy0w9cAAAAAAAAAAAAAARQnAQ" alt="ELK"/>
</a>
</center>
## 如何交流
如果你在使用的过程中碰到问题,可以先通过 [issues](https://github.com/antvis/x6/issues) 看看有没有类似的 bug 或者建议。欢迎提 [issues](https://github.com/antvis/x6/issues/new) 交流,也可以使用[钉钉](https://m.dingtalk.com/)扫描下面二维码加入**X6 交流群**。
需要注意的是,提问题时请配上 [CodeSandbox](https://codesandbox.io/s/pensive-sound-f4nhc) 的复现代码,方便快速定位和解决问题。
<a href="https://qr.dingtalk.com/action/joingroup?code=v1,k1,rOHuvgq5s0EHDktyyQJffDE3ZAmHnbB2e6iwn/w4BKs=&_dt_no_comment=1&origin=11" target="_blank" rel="noopener noreferrer">
<img src="https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*nFa5TaWsSOoAAAAAAAAAAAAAARQnAQ" alt="X6 图可视化交流群4" width="260" />
</a>
## 如何开发
我们使用了 [lerna](https://github.com/lerna/lerna) 来管理项目,目录结构如下:
```
.
├── examples
│ ├── x6-app-dag # dag 图示例
│ ├── x6-app-draw # 流程图示例
│ ├── x6-app-er # ER 图示例
│ └── x6-example-features # 特性演示示例
├── packages
│ ├── x6 # X6
│ ├── x6-react # X6 的 React 封装(预留)
│ ├── x6-react-components # 配套 React 组件库
│ ├── x6-react-shape # 支持使用 React 渲染节点
│ └── x6-vue-shape # 支持使用 Vue 渲染节点
└── sites
├── x6-sites # 官网和文档
├── x6-sites-demos # 文档中嵌入的 DEMO
└── x6-sites-demos-helper # 构建文档 DEMO 的工具
```
开始之前需要安装必要的全局依赖和初始化:
```shell
# 全局安装 yarn 和 lerna 工具
@ -100,19 +200,35 @@ $ npm install lerna -g
# 安装项目依赖和初始化构建
$ yarn bootstrap
```
# 进入到指定项目开发和调试
cd packages/x6
yarn build:watch
然后可以进入到指定项目开发和调试
# 启动 example 查看效果
如本地启动 `examples/x6-example-features` 示例:
```shell
cd examples/x6-example-features
yarn start
```
## 参与共建
修复 X6 的 BUG 时可以开启 watch 模式,配合上面启动的本地 DEMO实时查看修复效果
如果希望参与到 X6 的开发中,请遵从我们的[贡献指南](/CONTRIBUTING.zh-CN.md)。如果你贡献度足够活跃,你可以申请成为社区协作者。
```shell
cd packages/x6
// esm 模式,动态构建 es 产物
yarn build:watch:esm
// commonjs 模式,动态构建 lib 产物
yarn build:watch:cjs
```
## 如何贡献
如果你在使用的过程中碰到问题,可以先通过 [issues](https://github.com/antvis/x6/issues) 看看有没有类似的 bug 或者建议。
如需提交代码,请遵从我们的[贡献指南](/CONTRIBUTING.zh-CN.md)。我们会收集贡献者的 Github 头像到下面贡献者清单中。
<a href="https://github.com/antvis/x6/graphs/contributors">
<img src="/CONTRIBUTORS.svg" alt="Contributors" width="740" />

@ -1,21 +0,0 @@
# Security Policy
## Supported Versions
Use this section to tell people about which versions of your project are
currently being supported with security updates.
| Version | Supported |
| ------- | ------------------ |
| 5.1.x | :white_check_mark: |
| 5.0.x | :x: |
| 4.0.x | :white_check_mark: |
| < 4.0 | :x: |
## Reporting a Vulnerability
Use this section to tell people how to report a vulnerability.
Tell them where to go, how often they can expect to get an update on a
reported vulnerability, what to expect if the vulnerability is accepted or
declined, etc.

@ -1,3 +1,11 @@
## @antv/x6-package-json [1.0.2](https://github.com/antvis/x6/compare/@antv/x6-package-json@1.0.1...@antv/x6-package-json@1.0.2) (2022-06-07)
## @antv/x6-package-json [1.0.2](https://github.com/antvis/x6/compare/@antv/x6-package-json@1.0.1...@antv/x6-package-json@1.0.2) (2022-06-06)
## @antv/x6-package-json [1.0.2](https://github.com/antvis/x6/compare/@antv/x6-package-json@1.0.1...@antv/x6-package-json@1.0.2) (2022-06-05)
## @antv/x6-package-json [1.0.2](https://github.com/antvis/x6/compare/@antv/x6-package-json@1.0.1...@antv/x6-package-json@1.0.2) (2022-05-31)
## @antv/x6-package-json [1.0.1](https://github.com/antvis/x6/compare/@antv/x6-package-json@1.0.0...@antv/x6-package-json@1.0.1) (2021-11-14)
## @antv/x6-package-json [1.0.1](https://github.com/antvis/x6/compare/@antv/x6-package-json@1.0.0...@antv/x6-package-json@1.0.1) (2021-11-08)

@ -1,6 +1,6 @@
{
"peerDependencies": {
"antd": ">=4.4.2"
"antd": ">=4.4.2 || >=5.0.0-beta.0"
},
"devDependencies": {
"antd": "^4.4.2"

@ -1,7 +1,7 @@
{
"private": true,
"name": "@antv/x6-package-json",
"version": "1.0.1",
"version": "1.0.2",
"bin": {
"package-compare": "./bin/package-compare.js",
"package-inherit": "./bin/package-inherit.js"
@ -73,7 +73,7 @@
"chalk": "^4.1.0",
"detect-newline": "^3.1.0",
"parse-package-name": "^0.1.0",
"workspace-tools": "^0.12.3",
"workspace-tools": "^0.18.4",
"yargs-parser": "^20.2.7"
}
}

@ -1,3 +1,119 @@
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-06-07)
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-06-06)
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-06-05)
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-05-31)
### Dependencies
* **@antv/x6:** upgraded to 1.32.3
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-05-17)
### Dependencies
* **@antv/x6:** upgraded to 1.32.2
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-05-16)
### Dependencies
* **@antv/x6:** upgraded to 1.32.1
## @antv/x6-app-dag [1.1.8](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.7...@antv/x6-app-dag@1.1.8) (2022-05-14)
### Dependencies
* **@antv/x6:** upgraded to 1.32.0
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-05-09)
### Dependencies
* **@antv/x6:** upgraded to 1.31.5
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-05-01)
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-04-26)
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-04-21)
### Dependencies
* **@antv/x6:** upgraded to 1.31.4
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-04-13)
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-04-09)
### Dependencies
* **@antv/x6:** upgraded to 1.31.3
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-04-09)
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-04-09)
### Dependencies
* **@antv/x6:** upgraded to 1.31.2
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-04-05)
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-04-05)
### Dependencies
* **@antv/x6:** upgraded to 1.31.1
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-03-23)
### Dependencies
* **@antv/x6:** upgraded to 1.31.0
## @antv/x6-app-dag [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-dag@1.1.6...@antv/x6-app-dag@1.1.7) (2022-03-10)

@ -7,6 +7,7 @@
"build": "umi build",
"postinstall": "umi generate tmp",
"prettier": "prettier --write '**/*.{js,jsx,tsx,ts,less,md,json}'",
"test": "umi-test",
"lint": "umi-lint --eslint src/ -p.no-semi --prettier --fix",
"test:coverage": "umi-test --coverage"
},
@ -23,7 +24,7 @@
},
"dependencies": {
"@ant-design/icons": "^4.2.1",
"@antv/x6": "^1.30.2",
"@antv/x6": "^1.32.3",
"@antv/x6-react-components": "^1.1.16",
"@antv/x6-react-shape": "^1.6.0",
"@types/dompurify": "^2.0.4",

@ -1,10 +1,10 @@
declare module '*.css'
declare module '*.less'
declare module '*.png'
declare module '*.css';
declare module '*.less';
declare module '*.png';
declare module '*.svg' {
export function ReactComponent(
props: React.SVGProps<SVGSVGElement>,
): React.ReactElement
const url: string
export default url
): React.ReactElement;
const url: string;
export default url;
}

@ -1,3 +1,119 @@
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-06-07)
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-06-06)
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-06-05)
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-05-31)
### Dependencies
* **@antv/x6:** upgraded to 1.32.3
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-05-17)
### Dependencies
* **@antv/x6:** upgraded to 1.32.2
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-05-16)
### Dependencies
* **@antv/x6:** upgraded to 1.32.1
## @antv/x6-app-draw [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.6...@antv/x6-app-draw@1.1.7) (2022-05-14)
### Dependencies
* **@antv/x6:** upgraded to 1.32.0
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-05-09)
### Dependencies
* **@antv/x6:** upgraded to 1.31.5
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-05-01)
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-04-26)
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-04-21)
### Dependencies
* **@antv/x6:** upgraded to 1.31.4
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-04-13)
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-04-09)
### Dependencies
* **@antv/x6:** upgraded to 1.31.3
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-04-09)
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-04-09)
### Dependencies
* **@antv/x6:** upgraded to 1.31.2
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-04-05)
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-04-05)
### Dependencies
* **@antv/x6:** upgraded to 1.31.1
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-03-23)
### Dependencies
* **@antv/x6:** upgraded to 1.31.0
## @antv/x6-app-draw [1.1.6](https://github.com/antvis/x6/compare/@antv/x6-app-draw@1.1.5...@antv/x6-app-draw@1.1.6) (2022-03-10)

@ -9,7 +9,7 @@
"precommit": "lint-staged"
},
"dependencies": {
"@antv/x6": "^1.30.2",
"@antv/x6": "^1.32.3",
"@antv/x6-react-components": "^1.1.16",
"antd": "^4.4.2",
"react": "^16.8.6",

@ -10,7 +10,9 @@
"baseUrl": "./",
"strict": true,
"paths": {
"@/*": ["src/*"]
"@/*": [
"src/*"
]
},
"allowSyntheticDefaultImports": true
}

@ -1,3 +1,119 @@
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-06-07)
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-06-06)
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-06-05)
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-05-31)
### Dependencies
* **@antv/x6:** upgraded to 1.32.3
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-05-17)
### Dependencies
* **@antv/x6:** upgraded to 1.32.2
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-05-16)
### Dependencies
* **@antv/x6:** upgraded to 1.32.1
## @antv/x6-app-er [1.1.8](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.7...@antv/x6-app-er@1.1.8) (2022-05-14)
### Dependencies
* **@antv/x6:** upgraded to 1.32.0
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-05-09)
### Dependencies
* **@antv/x6:** upgraded to 1.31.5
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-05-01)
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-04-26)
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-04-21)
### Dependencies
* **@antv/x6:** upgraded to 1.31.4
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-04-13)
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-04-09)
### Dependencies
* **@antv/x6:** upgraded to 1.31.3
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-04-09)
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-04-09)
### Dependencies
* **@antv/x6:** upgraded to 1.31.2
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-04-05)
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-04-05)
### Dependencies
* **@antv/x6:** upgraded to 1.31.1
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-03-23)
### Dependencies
* **@antv/x6:** upgraded to 1.31.0
## @antv/x6-app-er [1.1.7](https://github.com/antvis/x6/compare/@antv/x6-app-er@1.1.6...@antv/x6-app-er@1.1.7) (2022-03-10)

@ -7,6 +7,7 @@
"build": "umi build",
"postinstall": "umi generate tmp",
"prettier": "prettier --write '**/*.{js,jsx,tsx,ts,less,md,json}'",
"test": "umi-test",
"test:coverage": "umi-test --coverage"
},
"gitHooks": {
@ -21,7 +22,7 @@
]
},
"dependencies": {
"@antv/x6": "^1.30.2",
"@antv/x6": "^1.32.3",
"@antv/x6-react-components": "^1.1.16",
"@antv/x6-react-shape": "^1.6.0",
"antd": "^4.4.2",

@ -1,3 +1,318 @@
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-06-07)
### Bug Fixes
* 🐛 optimize contextmenu tools ([#1391](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](https://github.com/antvis/x6/commit/cc01fdf208f4fbd283a6ce3d7a106716e8e10300))
* 🐛 update x6-react-shape version ([#1425](https://github.com/antvis/x6/issues/1425)) ([4208846](https://github.com/antvis/x6/commit/4208846337326d8983f1662faa8da67efd8568b4))
### Performance Improvements
* ⚡️ add simple config to remove rect and text element ([#1449](https://github.com/antvis/x6/issues/1449)) ([0b5f241](https://github.com/antvis/x6/commit/0b5f2413f0b907316784149027615ae2d09616a4))
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-06-06)
### Bug Fixes
* 🐛 optimize contextmenu tools ([#1391](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](https://github.com/antvis/x6/commit/cc01fdf208f4fbd283a6ce3d7a106716e8e10300))
* 🐛 update x6-react-shape version ([#1425](https://github.com/antvis/x6/issues/1425)) ([4208846](https://github.com/antvis/x6/commit/4208846337326d8983f1662faa8da67efd8568b4))
### Performance Improvements
* ⚡️ add simple config to remove rect and text element ([#1449](https://github.com/antvis/x6/issues/1449)) ([0b5f241](https://github.com/antvis/x6/commit/0b5f2413f0b907316784149027615ae2d09616a4))
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-06-05)
### Bug Fixes
* 🐛 optimize contextmenu tools ([#1391](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](https://github.com/antvis/x6/commit/cc01fdf208f4fbd283a6ce3d7a106716e8e10300))
* 🐛 update x6-react-shape version ([#1425](https://github.com/antvis/x6/issues/1425)) ([4208846](https://github.com/antvis/x6/commit/4208846337326d8983f1662faa8da67efd8568b4))
### Performance Improvements
* ⚡️ add simple config to remove rect and text element ([#1449](https://github.com/antvis/x6/issues/1449)) ([0b5f241](https://github.com/antvis/x6/commit/0b5f2413f0b907316784149027615ae2d09616a4))
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-05-31)
### Bug Fixes
* 🐛 optimize contextmenu tools ([#1391](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](https://github.com/antvis/x6/commit/cc01fdf208f4fbd283a6ce3d7a106716e8e10300))
* 🐛 update x6-react-shape version ([#1425](https://github.com/antvis/x6/issues/1425)) ([4208846](https://github.com/antvis/x6/commit/4208846337326d8983f1662faa8da67efd8568b4))
### Performance Improvements
* ⚡️ add simple config to remove rect and text element ([#1449](https://github.com/antvis/x6/issues/1449)) ([0b5f241](https://github.com/antvis/x6/commit/0b5f2413f0b907316784149027615ae2d09616a4))
### Dependencies
* **@antv/x6:** upgraded to 1.32.3
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-05-17)
### Bug Fixes
* 🐛 optimize contextmenu tools ([#1391](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](https://github.com/antvis/x6/commit/cc01fdf208f4fbd283a6ce3d7a106716e8e10300))
* 🐛 update x6-react-shape version ([#1425](https://github.com/antvis/x6/issues/1425)) ([4208846](https://github.com/antvis/x6/commit/4208846337326d8983f1662faa8da67efd8568b4))
### Performance Improvements
* ⚡️ add simple config to remove rect and text element ([#1449](https://github.com/antvis/x6/issues/1449)) ([0b5f241](https://github.com/antvis/x6/commit/0b5f2413f0b907316784149027615ae2d09616a4))
### Dependencies
* **@antv/x6:** upgraded to 1.32.2
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-05-16)
### Bug Fixes
* 🐛 optimize contextmenu tools ([#1391](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](https://github.com/antvis/x6/commit/cc01fdf208f4fbd283a6ce3d7a106716e8e10300))
* 🐛 update x6-react-shape version ([#1425](https://github.com/antvis/x6/issues/1425)) ([4208846](https://github.com/antvis/x6/commit/4208846337326d8983f1662faa8da67efd8568b4))
### Performance Improvements
* ⚡️ add simple config to remove rect and text element ([#1449](https://github.com/antvis/x6/issues/1449)) ([0b5f241](https://github.com/antvis/x6/commit/0b5f2413f0b907316784149027615ae2d09616a4))
### Dependencies
* **@antv/x6:** upgraded to 1.32.1
* **@antv/x6-vector:** upgraded to 1.4.0
## @antv/x6-example-features [1.2.3](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.2...@antv/x6-example-features@1.2.3) (2022-05-14)
### Dependencies
* **@antv/x6:** upgraded to 1.32.0
* **@antv/x6-vector:** upgraded to 1.4.0
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-05-09)
### Bug Fixes
* 🐛 optimize contextmenu tools ([#1391](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](https://github.com/antvis/x6/commit/cc01fdf208f4fbd283a6ce3d7a106716e8e10300))
* 🐛 update x6-react-shape version ([#1425](https://github.com/antvis/x6/issues/1425)) ([4208846](https://github.com/antvis/x6/commit/4208846337326d8983f1662faa8da67efd8568b4))
### Performance Improvements
* ⚡️ add simple config to remove rect and text element ([#1449](https://github.com/antvis/x6/issues/1449)) ([0b5f241](https://github.com/antvis/x6/commit/0b5f2413f0b907316784149027615ae2d09616a4))
### Dependencies
* **@antv/x6:** upgraded to 1.31.5
* **@antv/x6-vector:** upgraded to 1.3.2
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-05-01)
### Bug Fixes
* 🐛 optimize contextmenu tools ([#1391](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](https://github.com/antvis/x6/commit/cc01fdf208f4fbd283a6ce3d7a106716e8e10300))
* 🐛 update x6-react-shape version ([#1425](https://github.com/antvis/x6/issues/1425)) ([4208846](https://github.com/antvis/x6/commit/4208846337326d8983f1662faa8da67efd8568b4))
### Performance Improvements
* ⚡️ add simple config to remove rect and text element ([#1449](https://github.com/antvis/x6/issues/1449)) ([0b5f241](https://github.com/antvis/x6/commit/0b5f2413f0b907316784149027615ae2d09616a4))
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-04-26)
### Bug Fixes
* 🐛 optimize contextmenu tools ([#1391](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](https://github.com/antvis/x6/commit/cc01fdf208f4fbd283a6ce3d7a106716e8e10300))
* 🐛 update x6-react-shape version ([#1425](https://github.com/antvis/x6/issues/1425)) ([4208846](https://github.com/antvis/x6/commit/4208846337326d8983f1662faa8da67efd8568b4))
### Performance Improvements
* ⚡️ add simple config to remove rect and text element ([#1449](https://github.com/antvis/x6/issues/1449)) ([0b5f241](https://github.com/antvis/x6/commit/0b5f2413f0b907316784149027615ae2d09616a4))
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-04-21)
### Bug Fixes
* 🐛 optimize contextmenu tools ([#1391](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](https://github.com/antvis/x6/commit/cc01fdf208f4fbd283a6ce3d7a106716e8e10300))
* 🐛 update x6-react-shape version ([#1425](https://github.com/antvis/x6/issues/1425)) ([4208846](https://github.com/antvis/x6/commit/4208846337326d8983f1662faa8da67efd8568b4))
### Performance Improvements
* ⚡️ add simple config to remove rect and text element ([#1449](https://github.com/antvis/x6/issues/1449)) ([0b5f241](https://github.com/antvis/x6/commit/0b5f2413f0b907316784149027615ae2d09616a4))
### Dependencies
* **@antv/x6:** upgraded to 1.31.4
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-04-13)
### Bug Fixes
* 🐛 optimize contextmenu tools ([#1391](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](https://github.com/antvis/x6/commit/cc01fdf208f4fbd283a6ce3d7a106716e8e10300))
* 🐛 update x6-react-shape version ([#1425](https://github.com/antvis/x6/issues/1425)) ([4208846](https://github.com/antvis/x6/commit/4208846337326d8983f1662faa8da67efd8568b4))
### Performance Improvements
* ⚡️ add simple config to remove rect and text element ([#1449](https://github.com/antvis/x6/issues/1449)) ([0b5f241](https://github.com/antvis/x6/commit/0b5f2413f0b907316784149027615ae2d09616a4))
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-04-09)
### Bug Fixes
* 🐛 optimize contextmenu tools ([#1391](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](https://github.com/antvis/x6/commit/cc01fdf208f4fbd283a6ce3d7a106716e8e10300))
* 🐛 update x6-react-shape version ([#1425](https://github.com/antvis/x6/issues/1425)) ([4208846](https://github.com/antvis/x6/commit/4208846337326d8983f1662faa8da67efd8568b4))
### Performance Improvements
* ⚡️ add simple config to remove rect and text element ([#1449](https://github.com/antvis/x6/issues/1449)) ([0b5f241](https://github.com/antvis/x6/commit/0b5f2413f0b907316784149027615ae2d09616a4))
### Dependencies
* **@antv/x6:** upgraded to 1.31.3
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-04-09)
### Bug Fixes
* 🐛 optimize contextmenu tools ([#1391](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](https://github.com/antvis/x6/commit/cc01fdf208f4fbd283a6ce3d7a106716e8e10300))
* 🐛 update x6-react-shape version ([#1425](https://github.com/antvis/x6/issues/1425)) ([4208846](https://github.com/antvis/x6/commit/4208846337326d8983f1662faa8da67efd8568b4))
### Performance Improvements
* ⚡️ add simple config to remove rect and text element ([#1449](https://github.com/antvis/x6/issues/1449)) ([0b5f241](https://github.com/antvis/x6/commit/0b5f2413f0b907316784149027615ae2d09616a4))
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-04-09)
### Bug Fixes
* 🐛 optimize contextmenu tools ([#1391](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](https://github.com/antvis/x6/commit/cc01fdf208f4fbd283a6ce3d7a106716e8e10300))
* 🐛 update x6-react-shape version ([#1425](https://github.com/antvis/x6/issues/1425)) ([4208846](https://github.com/antvis/x6/commit/4208846337326d8983f1662faa8da67efd8568b4))
### Performance Improvements
* ⚡️ add simple config to remove rect and text element ([#1449](https://github.com/antvis/x6/issues/1449)) ([0b5f241](https://github.com/antvis/x6/commit/0b5f2413f0b907316784149027615ae2d09616a4))
### Dependencies
* **@antv/x6:** upgraded to 1.31.2
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-04-05)
### Bug Fixes
* 🐛 optimize contextmenu tools ([#1391](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](https://github.com/antvis/x6/commit/cc01fdf208f4fbd283a6ce3d7a106716e8e10300))
* 🐛 update x6-react-shape version ([#1425](https://github.com/antvis/x6/issues/1425)) ([4208846](https://github.com/antvis/x6/commit/4208846337326d8983f1662faa8da67efd8568b4))
### Performance Improvements
* ⚡️ add simple config to remove rect and text element ([#1449](https://github.com/antvis/x6/issues/1449)) ([0b5f241](https://github.com/antvis/x6/commit/0b5f2413f0b907316784149027615ae2d09616a4))
### Dependencies
* **@antv/x6-vector:** upgraded to 1.3.1
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-04-05)
### Bug Fixes
* 🐛 optimize contextmenu tools ([#1391](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](https://github.com/antvis/x6/commit/cc01fdf208f4fbd283a6ce3d7a106716e8e10300))
* 🐛 update x6-react-shape version ([#1425](https://github.com/antvis/x6/issues/1425)) ([4208846](https://github.com/antvis/x6/commit/4208846337326d8983f1662faa8da67efd8568b4))
### Performance Improvements
* ⚡️ add simple config to remove rect and text element ([#1449](https://github.com/antvis/x6/issues/1449)) ([0b5f241](https://github.com/antvis/x6/commit/0b5f2413f0b907316784149027615ae2d09616a4))
### Dependencies
* **@antv/x6:** upgraded to 1.31.1
* **@antv/x6-vector:** upgraded to 1.3.1
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-03-23)
### Bug Fixes
* 🐛 optimize contextmenu tools ([#1391](https://github.com/antvis/x6/issues/1391)) ([cc01fdf](https://github.com/antvis/x6/commit/cc01fdf208f4fbd283a6ce3d7a106716e8e10300))
* 🐛 update x6-react-shape version ([#1425](https://github.com/antvis/x6/issues/1425)) ([4208846](https://github.com/antvis/x6/commit/4208846337326d8983f1662faa8da67efd8568b4))
### Performance Improvements
* ⚡️ add simple config to remove rect and text element ([#1449](https://github.com/antvis/x6/issues/1449)) ([0b5f241](https://github.com/antvis/x6/commit/0b5f2413f0b907316784149027615ae2d09616a4))
### Dependencies
* **@antv/x6:** upgraded to 1.31.0
## @antv/x6-example-features [1.2.2](https://github.com/antvis/x6/compare/@antv/x6-example-features@1.2.1...@antv/x6-example-features@1.2.2) (2022-03-10)

@ -1,7 +1,7 @@
{
"private": true,
"name": "@antv/x6-example-features",
"version": "2.0.2-beta.0",
"version": "1.2.2",
"scripts": {
"start": "umi dev",
"build": "umi build",
@ -9,24 +9,23 @@
"precommit": "lint-staged"
},
"dependencies": {
"@antv/x6": "^1.30.2",
"@antv/x6-next": "^2.0.6-beta.0",
"@antv/x6-react-components": "^2.0.6-beta.0",
"@antv/x6-react-shape": "^2.0.6-beta.0",
"@antv/x6-vector": "^1.3.0",
"@antv/x6": "^1.34.0",
"@antv/x6-react-components": "^1.1.16",
"@antv/x6-react-shape": "^1.6.0",
"@antv/x6-vector": "^1.4.0",
"antd": "^4.4.2",
"classnames": "^2.2.6",
"dagre": "^0.8.5",
"elkjs": "^0.7.1",
"react": "^18.0.0",
"react-dom": "^18.0.0",
"react": "^16.12.0",
"react-dom": "^16.8.6",
"react-helmet": "^6.0.0"
},
"devDependencies": {
"@ant-design/icons": "^4.2.2",
"@types/jest": "^25.2.1",
"@types/react": "^18.0.0",
"@types/react-dom": "^18.0.0",
"@types/react": "^16.7.18",
"@types/react-dom": "^16.0.11",
"@types/react-helmet": "^6.0.0",
"@types/react-test-renderer": "^16.0.3",
"eslint": "^7.16.0",

@ -1,7 +1,5 @@
import React from 'react'
import { Graph, Cell } from '@antv/x6-next'
import { Point } from '@antv/x6-geometry'
import { Timing, Interp } from '@antv/x6-common'
import { Graph, Cell, Point, Timing, Interp } from '@antv/x6'
import '../index.less'
export default class Example extends React.Component {
@ -13,9 +11,6 @@ export default class Example extends React.Component {
width: 650,
height: 400,
grid: 1,
background: {
color: '#F2F7FA',
},
})
const ball = graph.addNode({
@ -28,12 +23,9 @@ export default class Example extends React.Component {
label: {
text: 'ball',
fontSize: 20,
stroke: '#8f8f8f',
},
body: {
fill: '#FFFFFF',
stroke: '#8f8f8f',
strokeWidth: 1,
},
},
})
@ -67,6 +59,7 @@ export default class Example extends React.Component {
{
delay: 5000,
duration: 2000,
easing: 'easeInBounce',
interp: (
start: { text: String; fontSize: number },
end: { text: String; fontSize: number },
@ -91,12 +84,9 @@ export default class Example extends React.Component {
label: {
text: 'u.f.o.',
fontSize: 10,
stroke: '8f8f8f',
},
body: {
fill: '#FFFFFF',
stroke: '#8f8f8f',
strokeWidth: 1,
},
},
})

@ -5,11 +5,12 @@ import '../index.less'
class BallView extends NodeView {
protected speed: number = 0
protected angle: number = 0
protected timerId: number = 0
protected edge: Edge | null
protected init() {
this.cell.transition('attrs/label/opacity', 1, {
delay: 0,
this.timerId = this.cell.transition('attrs/label/opacity', 1, {
delay: (1 + Math.random()) * 3000,
duration: 3000,
timing: 'inout',
interp: function (a: number, b: number) {
@ -27,7 +28,7 @@ class BallView extends NodeView {
})
this.cell.on('change:position', ({ cell, current }) => {
const node = cell as any as Node
const node = (cell as any) as Node
this.angle = Point.create(node.getPosition()).theta(
node.previous('position'),
)
@ -96,13 +97,17 @@ class BallView extends NodeView {
}
onMouseDown(e: JQuery.MouseDownEvent, x: number, y: number) {
console.log('mousedown1')
// Do not allow drag element while it's still in a transition.
if (this.cell.getTransitions().indexOf('position') > -1) {
console.log('mousedown2')
return
}
// Cancel displaying 'drag me!' if dragging already starts.
if (this.timerId) {
clearTimeout(this.timerId)
delete this.timerId
}
this.edge = this.graph.addEdge({
shape: 'edge',
source: this.cell.getBBox().getCenter(),
@ -123,7 +128,7 @@ class BallView extends NodeView {
// Change the marker arrow color.
this.edge.on('change:target', ({ cell }) => {
const edge = cell as any as Edge
const edge = (cell as any) as Edge
const sourcePoint = edge.getSourcePoint()!
const targetPoint = edge.getTargetPoint()!
const dist = sourcePoint.distance(targetPoint)

@ -0,0 +1,81 @@
import React from 'react'
import { Graph, EdgeView, NodeView } from '@antv/x6'
import { animateAlongEdge, animateAlongNode, clearAnimation } from './animation'
import '../index.less'
export default class Example extends React.Component {
private container: HTMLDivElement
private animate = false
componentDidMount() {
const graph = new Graph({
container: this.container,
width: 800,
height: 600,
grid: true,
})
const source = graph.addNode({
id: 'source',
shape: 'rect',
x: 80,
y: 250,
width: 160,
height: 60,
})
const target = graph.addNode({
id: 'target',
shape: 'rect',
x: 520,
y: 250,
width: 160,
height: 60,
})
graph.addEdge({
id: 'edge',
source,
target,
})
document.addEventListener('click', () => {
if (this.animate) {
this.animate = false
clearAnimation()
} else {
this.animate = true
this.play(graph)
}
})
}
play(graph: Graph) {
const sourceNodeView = graph.findViewByCell(
graph.getCellById('source'),
) as NodeView
const targetNodeView = graph.findViewByCell(
graph.getCellById('target'),
) as NodeView
const edgeView = graph.findViewByCell(graph.getCellById('edge')) as EdgeView
animateAlongNode(sourceNodeView, 'M 0 30 L 0 0 L 160 0 L 160 30')
animateAlongNode(sourceNodeView, 'M 0 30 L 0 60 L 160 60 L 160 30', () => {
animateAlongEdge(edgeView, () => {
animateAlongNode(targetNodeView, 'M 0 0 L 160 0 L 160 60 L 0 60')
})
})
}
refContainer = (container: HTMLDivElement) => {
this.container = container
}
render() {
return (
<div className="x6-graph-wrap">
<div ref={this.refContainer} className="x6-graph" />
</div>
)
}
}

@ -0,0 +1,94 @@
import { Vector, EdgeView, NodeView, Dom } from '@antv/x6'
const animateToken: SVGElement[] = []
export const removeAnimationElem = (elem: SVGElement) => {
const index = animateToken.findIndex((token) => token === elem)
if (index) {
animateToken.splice(index, 1)
}
Dom.remove(elem)
}
export const animateAlongEdge = (
edgeView: EdgeView,
compelete?: () => void,
) => {
const token = Vector.create('circle', { r: 4, fill: 'red' })
const path = edgeView.container.querySelector('path')
const animate = Dom.createSvgElement<SVGAnimateMotionElement>('animateMotion')
const mpath = Dom.createSvgElement('mpath')
const attrs = {
dur: '1000ms',
repeatCount: '1',
calcMode: 'linear',
fill: 'freeze',
}
const id = Dom.ensureId(path!)
animate.appendChild(mpath)
token.node.appendChild(animate)
token.appendTo(edgeView.container)
Dom.attr(mpath, { 'xlink:href': `#${id}` })
Dom.attr(animate, attrs)
animateToken.push(token.node)
animate.addEventListener('endEvent', () => {
removeAnimationElem(token.node)
if (compelete) {
compelete()
}
})
const ani = animate as any
setTimeout(() => {
ani.beginElement()
})
}
export const animateAlongNode = (
nodeView: NodeView,
path: string,
compelete?: () => void,
) => {
const token = Vector.create('circle', { r: 4, fill: 'red' })
const animate = Dom.createSvgElement<SVGAnimateMotionElement>('animateMotion')
const attrs = {
dur: '2000ms',
repeatCount: '1',
calcMode: 'linear',
fill: 'freeze',
}
Dom.attr(animate, {
...attrs,
path,
})
token.append(animate)
nodeView.container.appendChild(token.node)
animateToken.push(token.node)
animate.addEventListener('endEvent', () => {
removeAnimationElem(token.node)
if (compelete) {
compelete()
}
})
const ani = animate as any
setTimeout(() => {
ani.beginElement()
})
}
export const clearAnimation = () => {
const animations = [...animateToken]
animations.forEach((item) => {
removeAnimationElem(item)
})
}

@ -1,5 +1,5 @@
import React from 'react'
import { Graph, Cell } from '@antv/x6-next'
import { Graph, Cell } from '@antv/x6'
import { Bus, Connector, Component, Fader, Aux } from './shapes'
import '../index.less'
import './index.less'
@ -12,6 +12,9 @@ export default class Example extends React.Component {
container: this.container,
width: 1000,
height: 800,
async: true,
frozen: true,
sorting: 'approx',
translating: {
restrict: true,
},
@ -203,6 +206,8 @@ export default class Example extends React.Component {
connector24,
connector25,
] as any)
graph.unfreeze()
}
refContainer = (container: HTMLDivElement) => {

@ -1,4 +1,4 @@
import { Node, Shape } from '@antv/x6-next'
import { Node, Shape } from '@antv/x6'
export class Bus extends Shape.Edge {
static create(x: number, label: string, color: string) {

@ -1,453 +1,454 @@
// import React from 'react'
// import { Graph, Node, Path, Cell } from '@antv/x6'
// import '@antv/x6-react-shape'
// import '../index.less'
// import './index.less'
// interface NodeStatus {
// id: string
// status: 'default' | 'success' | 'failed' | 'running'
// label?: string
// }
import React from 'react'
import { Graph, Node, Path, Cell } from '@antv/x6'
import '@antv/x6-react-shape'
import '../index.less'
import './index.less'
interface NodeStatus {
id: string
status: 'default' | 'success' | 'failed' | 'running'
label?: string
}
// const image = {
// logo: 'https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*evDjT5vjkX0AAAAAAAAAAAAAARQnAQ',
// success:
// 'https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*6l60T6h8TTQAAAAAAAAAAAAAARQnAQ',
// failed:
// 'https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*SEISQ6My-HoAAAAAAAAAAAAAARQnAQ',
// running:
// 'https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*t8fURKfgSOgAAAAAAAAAAAAAARQnAQ',
// }
// export class AlgoNode extends React.Component<{ node?: Node }> {
// shouldComponentUpdate() {
// const { node } = this.props
// if (node) {
// if (node.hasChanged('data')) {
// return true
// }
// }
// return false
// }
const image = {
logo: 'https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*evDjT5vjkX0AAAAAAAAAAAAAARQnAQ',
success:
'https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*6l60T6h8TTQAAAAAAAAAAAAAARQnAQ',
failed:
'https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*SEISQ6My-HoAAAAAAAAAAAAAARQnAQ',
running:
'https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*t8fURKfgSOgAAAAAAAAAAAAAARQnAQ',
}
export class AlgoNode extends React.Component<{ node?: Node }> {
shouldComponentUpdate() {
const { node } = this.props
if (node) {
if (node.hasChanged('data')) {
return true
}
}
return false
}
// render() {
// const { node } = this.props
// const data = node?.getData() as NodeStatus
// const { label, status = 'default' } = data
render() {
const { node } = this.props
const data = node?.getData() as NodeStatus
const { label, status = 'default' } = data
// return (
// <div className={`node ${status}`}>
// <img src={image.logo} alt="logo" />
// <span className="label">{label}</span>
// <span className="status">
// {status === 'success' && <img src={image.success} alt="success" />}
// {status === 'failed' && <img src={image.failed} alt="failed" />}
// {status === 'running' && <img src={image.running} alt="running" />}
// </span>
// </div>
// )
// }
// }
return (
<div className={`node ${status}`}>
<img src={image.logo} />
<span className="label">{label}</span>
<span className="status">
{status === 'success' && <img src={image.success} />}
{status === 'failed' && <img src={image.failed} />}
{status === 'running' && <img src={image.running} />}
</span>
</div>
)
}
}
// Graph.registerNode(
// 'dag-node',
// {
// inherit: 'react-shape',
// width: 180,
// height: 36,
// component: <AlgoNode />,
// ports: {
// groups: {
// top: {
// position: 'top',
// attrs: {
// circle: {
// r: 4,
// magnet: true,
// stroke: '#C2C8D5',
// strokeWidth: 1,
// fill: '#fff',
// },
// },
// },
// bottom: {
// position: 'bottom',
// attrs: {
// circle: {
// r: 4,
// magnet: true,
// stroke: '#C2C8D5',
// strokeWidth: 1,
// fill: '#fff',
// },
// },
// },
// },
// },
// },
// true,
// )
Graph.registerNode(
'dag-node',
{
inherit: 'react-shape',
width: 180,
height: 36,
component: <AlgoNode />,
ports: {
groups: {
top: {
position: 'top',
attrs: {
circle: {
r: 4,
magnet: true,
stroke: '#C2C8D5',
strokeWidth: 1,
fill: '#fff',
},
},
},
bottom: {
position: 'bottom',
attrs: {
circle: {
r: 4,
magnet: true,
stroke: '#C2C8D5',
strokeWidth: 1,
fill: '#fff',
},
},
},
},
},
},
true,
)
// Graph.registerEdge(
// 'dag-edge',
// {
// inherit: 'edge',
// attrs: {
// line: {
// stroke: '#C2C8D5',
// strokeWidth: 1,
// targetMarker: null,
// },
// },
// },
// true,
// )
Graph.registerEdge(
'dag-edge',
{
inherit: 'edge',
attrs: {
line: {
stroke: '#C2C8D5',
strokeWidth: 1,
targetMarker: null,
},
},
},
true,
)
// Graph.registerConnector(
// 'algo-connector',
// (s, e) => {
// const offset = 4
// const deltaY = Math.abs(e.y - s.y)
// const control = Math.floor((deltaY / 3) * 2)
Graph.registerConnector(
'algo-connector',
(s, e) => {
const offset = 4
const deltaY = Math.abs(e.y - s.y)
const control = Math.floor((deltaY / 3) * 2)
// const v1 = { x: s.x, y: s.y + offset + control }
// const v2 = { x: e.x, y: e.y - offset - control }
const v1 = { x: s.x, y: s.y + offset + control }
const v2 = { x: e.x, y: e.y - offset - control }
// return Path.normalize(
// `M ${s.x} ${s.y}
// L ${s.x} ${s.y + offset}
// C ${v1.x} ${v1.y} ${v2.x} ${v2.y} ${e.x} ${e.y - offset}
// L ${e.x} ${e.y}
// `,
// )
// },
// true,
// )
return Path.normalize(
`M ${s.x} ${s.y}
L ${s.x} ${s.y + offset}
C ${v1.x} ${v1.y} ${v2.x} ${v2.y} ${e.x} ${e.y - offset}
L ${e.x} ${e.y}
`,
)
},
true,
)
// const data = [
// {
// id: '1',
// shape: 'dag-node',
// x: 290,
// y: 110,
// data: {
// label: '读数据',
// status: 'success',
// },
// ports: [
// {
// id: '1-1',
// group: 'bottom',
// },
// ],
// },
// {
// id: '2',
// shape: 'dag-node',
// x: 290,
// y: 225,
// data: {
// label: '读数据',
// status: 'success',
// },
// ports: [
// {
// id: '2-1',
// group: 'top',
// },
// {
// id: '2-2',
// group: 'bottom',
// },
// {
// id: '2-3',
// group: 'bottom',
// },
// ],
// },
// {
// id: '3',
// shape: 'dag-node',
// x: 170,
// y: 350,
// data: {
// label: '读数据',
// status: 'success',
// },
// ports: [
// {
// id: '3-1',
// group: 'top',
// },
// {
// id: '3-2',
// group: 'bottom',
// },
// ],
// },
// {
// id: '4',
// shape: 'dag-node',
// x: 450,
// y: 350,
// data: {
// label: '读数据',
// status: 'success',
// },
// ports: [
// {
// id: '4-1',
// group: 'top',
// },
// {
// id: '4-2',
// group: 'bottom',
// },
// ],
// },
// {
// id: '5',
// shape: 'dag-edge',
// source: {
// cell: '1',
// port: '1-1',
// },
// target: {
// cell: '2',
// port: '2-1',
// },
// zIndex: 0,
// },
// {
// id: '6',
// shape: 'dag-edge',
// source: {
// cell: '2',
// port: '2-2',
// },
// target: {
// cell: '3',
// port: '3-1',
// },
// zIndex: 0,
// },
// {
// id: '7',
// shape: 'dag-edge',
// source: {
// cell: '2',
// port: '2-3',
// },
// target: {
// cell: '4',
// port: '4-1',
// },
// zIndex: 0,
// },
// ]
const data = [
{
id: '1',
shape: 'dag-node',
x: 290,
y: 110,
data: {
label: '读数据',
status: 'success',
},
ports: [
{
id: '1-1',
group: 'bottom',
},
],
},
{
id: '2',
shape: 'dag-node',
x: 290,
y: 225,
data: {
label: '读数据',
status: 'success',
},
ports: [
{
id: '2-1',
group: 'top',
},
{
id: '2-2',
group: 'bottom',
},
{
id: '2-3',
group: 'bottom',
},
],
},
{
id: '3',
shape: 'dag-node',
x: 170,
y: 350,
data: {
label: '读数据',
status: 'success',
},
ports: [
{
id: '3-1',
group: 'top',
},
{
id: '3-2',
group: 'bottom',
},
],
},
{
id: '4',
shape: 'dag-node',
x: 450,
y: 350,
data: {
label: '读数据',
status: 'success',
},
ports: [
{
id: '4-1',
group: 'top',
},
{
id: '4-2',
group: 'bottom',
},
],
},
{
id: '5',
shape: 'dag-edge',
source: {
cell: '1',
port: '1-1',
},
target: {
cell: '2',
port: '2-1',
},
zIndex: 0,
},
{
id: '6',
shape: 'dag-edge',
source: {
cell: '2',
port: '2-2',
},
target: {
cell: '3',
port: '3-1',
},
zIndex: 0,
},
{
id: '7',
shape: 'dag-edge',
source: {
cell: '2',
port: '2-3',
},
target: {
cell: '4',
port: '4-1',
},
zIndex: 0,
},
]
// const nodeStatusList = [
// [
// {
// id: '1',
// status: 'running',
// },
// {
// id: '2',
// status: 'default',
// },
// {
// id: '3',
// status: 'default',
// },
// {
// id: '4',
// status: 'default',
// },
// ],
// [
// {
// id: '1',
// status: 'success',
// },
// {
// id: '2',
// status: 'running',
// },
// {
// id: '3',
// status: 'default',
// },
// {
// id: '4',
// status: 'default',
// },
// ],
// [
// {
// id: '1',
// status: 'success',
// },
// {
// id: '2',
// status: 'success',
// },
// {
// id: '3',
// status: 'running',
// },
// {
// id: '4',
// status: 'running',
// },
// ],
// [
// {
// id: '1',
// status: 'success',
// },
// {
// id: '2',
// status: 'success',
// },
// {
// id: '3',
// status: 'success',
// },
// {
// id: '4',
// status: 'failed',
// },
// ],
// ]
// export default class Example extends React.Component {
// private container: HTMLDivElement
const nodeStatusList = [
[
{
id: '1',
status: 'running',
},
{
id: '2',
status: 'default',
},
{
id: '3',
status: 'default',
},
{
id: '4',
status: 'default',
},
],
[
{
id: '1',
status: 'success',
},
{
id: '2',
status: 'running',
},
{
id: '3',
status: 'default',
},
{
id: '4',
status: 'default',
},
],
[
{
id: '1',
status: 'success',
},
{
id: '2',
status: 'success',
},
{
id: '3',
status: 'running',
},
{
id: '4',
status: 'running',
},
],
[
{
id: '1',
status: 'success',
},
{
id: '2',
status: 'success',
},
{
id: '3',
status: 'success',
},
{
id: '4',
status: 'failed',
},
],
]
export default class Example extends React.Component {
private container: HTMLDivElement
// componentDidMount() {
// const graph: Graph = new Graph({
// container: this.container,
// width: 800,
// height: 600,
// panning: {
// enabled: true,
// eventTypes: ['leftMouseDown', 'mouseWheel'],
// },
// mousewheel: {
// enabled: true,
// modifiers: 'ctrl',
// factor: 1.1,
// maxScale: 1.5,
// minScale: 0.5,
// },
// highlighting: {
// magnetAdsorbed: {
// name: 'stroke',
// args: {
// attrs: {
// fill: '#fff',
// stroke: '#31d0c6',
// strokeWidth: 4,
// },
// },
// },
// },
// connecting: {
// snap: true,
// allowBlank: false,
// allowLoop: false,
// highlight: true,
// connector: 'algo-connector',
// connectionPoint: 'anchor',
// anchor: 'center',
// validateMagnet({ magnet }) {
// return magnet.getAttribute('port-group') !== 'top'
// },
// createEdge() {
// return graph.createEdge({
// shape: 'dag-edge',
// attrs: {
// line: {
// strokeDasharray: '5 5',
// },
// },
// zIndex: -1,
// })
// },
// },
// selecting: {
// enabled: true,
// multiple: true,
// rubberEdge: true,
// rubberNode: true,
// modifiers: 'shift',
// rubberband: true,
// },
// })
componentDidMount() {
const graph: Graph = new Graph({
container: this.container,
width: 800,
height: 600,
snapline: true,
panning: {
enabled: true,
eventTypes: ['leftMouseDown', 'mouseWheel'],
},
mousewheel: {
enabled: true,
modifiers: 'ctrl',
factor: 1.1,
maxScale: 1.5,
minScale: 0.5,
},
highlighting: {
magnetAdsorbed: {
name: 'stroke',
args: {
attrs: {
fill: '#fff',
stroke: '#31d0c6',
strokeWidth: 4,
},
},
},
},
connecting: {
snap: true,
allowBlank: false,
allowLoop: false,
highlight: true,
connector: 'algo-connector',
connectionPoint: 'anchor',
anchor: 'center',
validateMagnet({ magnet }) {
return magnet.getAttribute('port-group') !== 'top'
},
createEdge() {
return graph.createEdge({
shape: 'dag-edge',
attrs: {
line: {
strokeDasharray: '5 5',
},
},
zIndex: -1,
})
},
},
selecting: {
enabled: true,
multiple: true,
rubberEdge: true,
rubberNode: true,
modifiers: 'shift',
rubberband: true,
},
})
// graph.on('edge:connected', ({ edge }) => {
// edge.attr({
// line: {
// strokeDasharray: '',
// },
// })
// })
graph.on('edge:connected', ({ edge }) => {
edge.attr({
line: {
strokeDasharray: '',
},
})
})
// graph.on('node:change:data', ({ node }) => {
// const edges = graph.getIncomingEdges(node)
// const { status } = node.getData() as NodeStatus
// edges?.forEach((edge) => {
// if (status === 'running') {
// edge.attr('line/strokeDasharray', 5)
// edge.attr('line/style/animation', 'running-line 30s infinite linear')
// } else {
// edge.attr('line/strokeDasharray', '')
// edge.attr('line/style/animation', '')
// }
// })
// })
graph.on('node:change:data', ({ node }) => {
const edges = graph.getIncomingEdges(node)
const { status } = node.getData() as NodeStatus
edges?.forEach((edge) => {
if (status === 'running') {
edge.attr('line/strokeDasharray', 5)
edge.attr('line/style/animation', 'running-line 30s infinite linear')
} else {
edge.attr('line/strokeDasharray', '')
edge.attr('line/style/animation', '')
}
})
})
// // 初始化节点/边
// const init = (data: Cell.Metadata[]) => {
// const cells: Cell[] = []
// data.forEach((item) => {
// if (item.shape === 'dag-node') {
// cells.push(graph.createNode(item))
// } else {
// cells.push(graph.createEdge(item))
// }
// })
// graph.resetCells(cells)
// }
// 初始化节点/边
const init = (data: Cell.Metadata[]) => {
const cells: Cell[] = []
data.forEach((item) => {
if (item.shape === 'dag-node') {
cells.push(graph.createNode(item))
} else {
cells.push(graph.createEdge(item))
}
})
graph.resetCells(cells)
}
// // 显示节点状态
// const showNodeStatus = async (statusList: NodeStatus[][]) => {
// const status = statusList.shift()
// status?.forEach((item) => {
// const { id, status } = item
// const node = graph.getCellById(id)
// const data = node.getData() as NodeStatus
// node.setData({
// ...data,
// status: status,
// })
// })
// setTimeout(() => {
// showNodeStatus(statusList)
// }, 3000)
// }
// 显示节点状态
const showNodeStatus = async (statusList: NodeStatus[][]) => {
const status = statusList.shift()
status?.forEach((item) => {
const { id, status } = item
const node = graph.getCellById(id)
const data = node.getData() as NodeStatus
node.setData({
...data,
status: status,
})
})
setTimeout(() => {
showNodeStatus(statusList)
}, 3000)
}
// init(data)
// showNodeStatus(nodeStatusList)
// }
init(data)
showNodeStatus(nodeStatusList)
}
// refContainer = (container: HTMLDivElement) => {
// this.container = container
// }
refContainer = (container: HTMLDivElement) => {
this.container = container
}
// render() {
// return (
// <div className="x6-graph-wrap">
// <div ref={this.refContainer} className="dag" />
// </div>
// )
// }
// }
render() {
return (
<div className="x6-graph-wrap">
<div ref={this.refContainer} className="x6-graph" />
</div>
)
}
}

@ -155,7 +155,7 @@ export default class Example extends React.Component {
const { bendPoints = [] } = edge.sections[0]
if (pos) {
bendPoints.forEach((bendPoint: Position) => {
bendPoints.map((bendPoint: Position) => {
bendPoint.x += pos.x
bendPoint.y += pos.y
})

@ -1,72 +1,70 @@
.dag {
.node {
display: flex;
align-items: center;
width: 100%;
height: 100%;
background-color: #fff;
border: 1px solid #c2c8d5;
border-left: 4px solid #1890ff;
border-radius: 4px;
box-shadow: 0 2px 5px 1px rgba(0, 0, 0, 0.06);
img {
width: 20px;
height: 20px;
flex-shrink: 0;
margin-left: 8px;
}
.label {
display: inline-block;
flex-shrink: 0;
width: 104px;
margin-left: 8px;
color: #666;
font-size: 12px;
}
.status {
flex-shrink: 0;
}
&.success {
border-left: 4px solid #52c41a;
}
&.failed {
border-left: 4px solid #ff4d4f;
}
&.running .status img {
animation: spin 1s linear infinite;
}
}
.x6-node-selected {
.node {
display: flex;
align-items: center;
width: 100%;
height: 100%;
background-color: #fff;
border: 1px solid #c2c8d5;
border-left: 4px solid #1890ff;
border-radius: 4px;
box-shadow: 0 2px 5px 1px rgba(0, 0, 0, 0.06);
img {
width: 20px;
height: 20px;
flex-shrink: 0;
margin-left: 8px;
}
.label {
display: inline-block;
flex-shrink: 0;
width: 104px;
margin-left: 8px;
color: #666;
font-size: 12px;
}
.status {
flex-shrink: 0;
}
&.success {
border-left: 4px solid #52c41a;
}
&.failed {
border-left: 4px solid #ff4d4f;
}
&.running .status img {
animation: spin 1s linear infinite;
}
border-color: #1890ff;
border-radius: 2px;
box-shadow: 0 0 0 4px #d4e8fe;
}
.x6-node-selected {
.node {
border-color: #1890ff;
border-radius: 2px;
box-shadow: 0 0 0 4px #d4e8fe;
}
.node.success {
border-color: #52c41a;
border-radius: 2px;
box-shadow: 0 0 0 4px #ccecc0;
}
.node.failed {
border-color: #ff4d4f;
border-radius: 2px;
box-shadow: 0 0 0 4px #fedcdc;
}
.node.success {
border-color: #52c41a;
border-radius: 2px;
box-shadow: 0 0 0 4px #ccecc0;
}
.x6-edge:hover {
path:nth-child(2) {
stroke: #1890ff;
stroke-width: 1px;
}
.node.failed {
border-color: #ff4d4f;
border-radius: 2px;
box-shadow: 0 0 0 4px #fedcdc;
}
}
.x6-edge-selected {
path:nth-child(2) {
stroke: #1890ff;
stroke-width: 1.5px !important;
}
.x6-edge:hover {
path:nth-child(2) {
stroke: #1890ff;
stroke-width: 1px;
}
}
.x6-edge-selected {
path:nth-child(2) {
stroke: #1890ff;
stroke-width: 1.5px !important;
}
}

@ -189,7 +189,8 @@ export default class Example extends React.Component {
stroke: '#31d0c6',
fill: '#31d0c6',
name: 'path',
d: 'M4.834,4.834L4.833,4.833c-5.889,5.892-5.89,15.443,0.001,21.334s15.44,5.888,21.33-0.002c5.891-5.891,5.893-15.44,0.002-21.33C20.275-1.056,10.725-1.056,4.834,4.834zM25.459,5.542c0.833,0.836,1.523,1.757,2.104,2.726l-4.08,4.08c-0.418-1.062-1.053-2.06-1.912-2.918c-0.859-0.859-1.857-1.494-2.92-1.913l4.08-4.08C23.7,4.018,24.622,4.709,25.459,5.542zM10.139,20.862c-2.958-2.968-2.959-7.758-0.001-10.725c2.966-2.957,7.756-2.957,10.725,0c2.954,2.965,2.955,7.757-0.001,10.724C17.896,23.819,13.104,23.817,10.139,20.862zM5.542,25.459c-0.833-0.837-1.524-1.759-2.105-2.728l4.081-4.081c0.418,1.063,1.055,2.06,1.914,2.919c0.858,0.859,1.855,1.494,2.917,1.913l-4.081,4.081C7.299,26.982,6.379,26.292,5.542,25.459zM8.268,3.435l4.082,4.082C11.288,7.935,10.29,8.571,9.43,9.43c-0.858,0.859-1.494,1.855-1.912,2.918L3.436,8.267c0.58-0.969,1.271-1.89,2.105-2.727C6.377,4.707,7.299,4.016,8.268,3.435zM22.732,27.563l-4.082-4.082c1.062-0.418,2.061-1.053,2.919-1.912c0.859-0.859,1.495-1.857,1.913-2.92l4.082,4.082c-0.58,0.969-1.271,1.891-2.105,2.728C24.623,26.292,23.701,26.983,22.732,27.563z',
d:
'M4.834,4.834L4.833,4.833c-5.889,5.892-5.89,15.443,0.001,21.334s15.44,5.888,21.33-0.002c5.891-5.891,5.893-15.44,0.002-21.33C20.275-1.056,10.725-1.056,4.834,4.834zM25.459,5.542c0.833,0.836,1.523,1.757,2.104,2.726l-4.08,4.08c-0.418-1.062-1.053-2.06-1.912-2.918c-0.859-0.859-1.857-1.494-2.92-1.913l4.08-4.08C23.7,4.018,24.622,4.709,25.459,5.542zM10.139,20.862c-2.958-2.968-2.959-7.758-0.001-10.725c2.966-2.957,7.756-2.957,10.725,0c2.954,2.965,2.955,7.757-0.001,10.724C17.896,23.819,13.104,23.817,10.139,20.862zM5.542,25.459c-0.833-0.837-1.524-1.759-2.105-2.728l4.081-4.081c0.418,1.063,1.055,2.06,1.914,2.919c0.858,0.859,1.855,1.494,2.917,1.913l-4.081,4.081C7.299,26.982,6.379,26.292,5.542,25.459zM8.268,3.435l4.082,4.082C11.288,7.935,10.29,8.571,9.43,9.43c-0.858,0.859-1.494,1.855-1.912,2.918L3.436,8.267c0.58-0.969,1.271-1.89,2.105-2.727C6.377,4.707,7.299,4.016,8.268,3.435zM22.732,27.563l-4.082-4.082c1.062-0.418,2.061-1.053,2.919-1.912c0.859-0.859,1.495-1.857,1.913-2.92l4.082,4.082c-0.58,0.969-1.271,1.891-2.105,2.728C24.623,26.292,23.701,26.983,22.732,27.563z',
offsetX: 10,
},
},

@ -98,12 +98,14 @@ export default class Example extends React.Component {
stroke: '#31d0c6',
sourceMarker: {
name: 'path',
d: 'M5.5,15.499,15.8,21.447,15.8,15.846,25.5,21.447,25.5,9.552,15.8,15.152,15.8,9.552z',
d:
'M5.5,15.499,15.8,21.447,15.8,15.846,25.5,21.447,25.5,9.552,15.8,15.152,15.8,9.552z',
},
targetMarker: {
name: 'path',
offsetX: 10,
d: 'M4.834,4.834L4.833,4.833c-5.889,5.892-5.89,15.443,0.001,21.334s15.44,5.888,21.33-0.002c5.891-5.891,5.893-15.44,0.002-21.33C20.275-1.056,10.725-1.056,4.834,4.834zM25.459,5.542c0.833,0.836,1.523,1.757,2.104,2.726l-4.08,4.08c-0.418-1.062-1.053-2.06-1.912-2.918c-0.859-0.859-1.857-1.494-2.92-1.913l4.08-4.08C23.7,4.018,24.622,4.709,25.459,5.542zM10.139,20.862c-2.958-2.968-2.959-7.758-0.001-10.725c2.966-2.957,7.756-2.957,10.725,0c2.954,2.965,2.955,7.757-0.001,10.724C17.896,23.819,13.104,23.817,10.139,20.862zM5.542,25.459c-0.833-0.837-1.524-1.759-2.105-2.728l4.081-4.081c0.418,1.063,1.055,2.06,1.914,2.919c0.858,0.859,1.855,1.494,2.917,1.913l-4.081,4.081C7.299,26.982,6.379,26.292,5.542,25.459zM8.268,3.435l4.082,4.082C11.288,7.935,10.29,8.571,9.43,9.43c-0.858,0.859-1.494,1.855-1.912,2.918L3.436,8.267c0.58-0.969,1.271-1.89,2.105-2.727C6.377,4.707,7.299,4.016,8.268,3.435zM22.732,27.563l-4.082-4.082c1.062-0.418,2.061-1.053,2.919-1.912c0.859-0.859,1.495-1.857,1.913-2.92l4.082,4.082c-0.58,0.969-1.271,1.891-2.105,2.728C24.623,26.292,23.701,26.983,22.732,27.563z',
d:
'M4.834,4.834L4.833,4.833c-5.889,5.892-5.89,15.443,0.001,21.334s15.44,5.888,21.33-0.002c5.891-5.891,5.893-15.44,0.002-21.33C20.275-1.056,10.725-1.056,4.834,4.834zM25.459,5.542c0.833,0.836,1.523,1.757,2.104,2.726l-4.08,4.08c-0.418-1.062-1.053-2.06-1.912-2.918c-0.859-0.859-1.857-1.494-2.92-1.913l4.08-4.08C23.7,4.018,24.622,4.709,25.459,5.542zM10.139,20.862c-2.958-2.968-2.959-7.758-0.001-10.725c2.966-2.957,7.756-2.957,10.725,0c2.954,2.965,2.955,7.757-0.001,10.724C17.896,23.819,13.104,23.817,10.139,20.862zM5.542,25.459c-0.833-0.837-1.524-1.759-2.105-2.728l4.081-4.081c0.418,1.063,1.055,2.06,1.914,2.919c0.858,0.859,1.855,1.494,2.917,1.913l-4.081,4.081C7.299,26.982,6.379,26.292,5.542,25.459zM8.268,3.435l4.082,4.082C11.288,7.935,10.29,8.571,9.43,9.43c-0.858,0.859-1.494,1.855-1.912,2.918L3.436,8.267c0.58-0.969,1.271-1.89,2.105-2.727C6.377,4.707,7.299,4.016,8.268,3.435zM22.732,27.563l-4.082-4.082c1.062-0.418,2.061-1.053,2.919-1.912c0.859-0.859,1.495-1.857,1.913-2.92l4.082,4.082c-0.58,0.969-1.271,1.891-2.105,2.728C24.623,26.292,23.701,26.983,22.732,27.563z',
},
},
},

@ -1,174 +0,0 @@
import React from 'react'
import ReactDom from 'react-dom'
import { Tooltip } from 'antd'
import { Graph, Markup, ToolsView, EdgeView } from '@antv/x6'
import '../index.less'
class TooltipTool extends ToolsView.ToolItem<EdgeView, TooltipTool.Options> {
private delay = 100
private moveTimer: number
private enterTimer: number
private leaveTimer: number
private tooltipVisible: boolean
protected onRender() {
this.updatePosition()
}
private toggleTooltip(visible: boolean) {
ReactDom.unmountComponentAtNode(this.childNodes.foContent)
if (visible) {
ReactDom.render(
<Tooltip title={this.options.tooltip} visible={true}>
<div />
</Tooltip>,
this.childNodes.foContent,
)
}
this.tooltipVisible = visible
}
private updatePosition(e?: MouseEvent) {
const fo = this.childNodes.fo as SVGForeignObjectElement
if (e) {
const pos = this.graph.clientToLocal(e.clientX, e.clientY)
fo.setAttribute('x', `${pos.x}`)
fo.setAttribute('y', `${pos.y}`)
} else {
fo.setAttribute('x', `-10000`)
fo.setAttribute('y', `-10000`)
}
}
private onMouseEnter({ e }: EdgeView.EventArgs['edge:mouseenter']) {
this.updatePosition(e.originalEvent)
window.clearTimeout(this.leaveTimer)
this.enterTimer = window.setTimeout(
() => this.toggleTooltip(true),
this.delay,
)
if (this.options.follow !== false) {
document.addEventListener('mousemove', this.onMouseMove)
}
}
private onMouseLeave() {
this.updatePosition()
window.clearTimeout(this.enterTimer)
this.leaveTimer = window.setTimeout(
() => this.toggleTooltip(false),
this.delay,
)
if (this.options.follow !== false) {
document.removeEventListener('mousemove', this.onMouseMove)
}
}
private onMouseMove = (e: MouseEvent) => {
window.clearTimeout(this.moveTimer)
window.clearTimeout(this.enterTimer)
this.updatePosition(e)
this.moveTimer = window.setTimeout(() => {
if (this.tooltipVisible) {
this.toggleTooltip(false)
}
this.toggleTooltip(true)
}, this.delay)
}
delegateEvents() {
this.cellView.on('edge:mouseenter', this.onMouseEnter, this)
this.cellView.on('edge:mouseleave', this.onMouseLeave, this)
return super.delegateEvents()
}
protected onRemove() {
this.cellView.off('edge:mouseenter', this.onMouseEnter, this)
this.cellView.off('edge:mouseleave', this.onMouseLeave, this)
}
}
// eslint-disable-next-line
namespace TooltipTool {
TooltipTool.config({
markup: Markup.getForeignObjectMarkup(),
})
export interface Options extends ToolsView.ToolItem.Options {
follow?: boolean
tooltip?: string
}
}
Graph.registerEdgeTool('tooltip', TooltipTool, true)
export default class Example extends React.Component {
private container: HTMLDivElement
componentDidMount() {
const graph = new Graph({
container: this.container,
width: 800,
height: 400,
grid: true,
})
graph.addEdge({
source: { x: 40, y: 40 },
target: { x: 380, y: 40 },
vertices: [
{ x: 40, y: 80 },
{ x: 200, y: 80 },
{ x: 200, y: 40 },
],
attrs: {
line: {
stroke: '#3c4260',
strokeWidth: 2,
targetMarker: 'classic',
},
},
tools: [
{
name: 'tooltip',
args: { follow: false, tooltip: 'tooltip test 1' },
},
],
})
graph.addEdge({
source: { x: 40, y: 160 },
target: { x: 380, y: 160 },
vertices: [
{ x: 40, y: 200 },
{ x: 200, y: 200 },
{ x: 200, y: 160 },
],
attrs: {
line: {
stroke: '#3c4260',
strokeWidth: 2,
targetMarker: 'classic',
},
},
connector: 'smooth',
tools: {
name: 'tooltip',
args: { follow: true, tooltip: 'tooltip test 2' },
},
})
}
refContainer = (container: HTMLDivElement) => {
this.container = container
}
render() {
return (
<div className="x6-graph-wrap">
<div ref={this.refContainer} className="x6-graph" />
</div>
)
}
}

@ -14,9 +14,7 @@ export default class Example extends React.Component {
validateMagnet({ cell, magnet }) {
let count = 0
const connectionCount = magnet.getAttribute('connection-count')
const max = connectionCount
? parseInt(connectionCount, 10)
: Number.MAX_SAFE_INTEGER
const max = connectionCount ? parseInt(connectionCount, 10) : Number.MAX_SAFE_INTEGER
const outgoingEdges = graph.getOutgoingEdges(cell)
if (outgoingEdges) {
outgoingEdges.forEach((edge: Edge) => {

@ -94,7 +94,6 @@ export default class Example extends React.Component<
}
}
// eslint-disable-next-line
namespace Example {
export interface Props {}
export interface State {

@ -163,7 +163,7 @@ export default class Example extends React.Component {
if (!magnet) {
return true
}
var cell = cellView.cell as any as TogglableRect
var cell = (cellView.cell as any) as TogglableRect
var portId = magnet.getAttribute('port')
return portId ? !cell.isPortCollapsed(portId) : true
},
@ -180,7 +180,7 @@ export default class Example extends React.Component {
e.stopPropagation()
var portId = magnet.getAttribute('port')
if (portId) {
const rect = view.cell as any as TogglableRect
const rect = (view.cell as any) as TogglableRect
rect.expandPort(portId)
}
})
@ -191,13 +191,13 @@ export default class Example extends React.Component {
const visible = current !== false
const sourceCell = cell.getSourceCell()
if (sourceCell) {
const rect = sourceCell as any as TogglableRect
const rect = (sourceCell as any) as TogglableRect
rect.onConnectedEdgeVisibleChange(cell, 'source', visible)
}
const targetCell = cell.getTargetCell()
if (targetCell) {
const rect = targetCell as any as TogglableRect
const rect = (targetCell as any) as TogglableRect
rect.onConnectedEdgeVisibleChange(cell, 'target', visible)
}
}

@ -87,7 +87,7 @@ export default class Example extends React.Component {
return (
<div className="x6-graph-wrap">
<div ref={this.refContainer} className="x6-graph" />
<div id="minimap" />
<div id="minimap"/>
</div>
)
}

@ -53,8 +53,10 @@ export class IntermediateEvent extends Event {
})
}
gateTypes = {
or: 'M -20 0 C -20 -15 -10 -30 0 -30 C 10 -30 20 -15 20 0 C 10 -6 -10 -6 -20 0',
xor: 'M -20 0 C -20 -15 -10 -30 0 -30 C 10 -30 20 -15 20 0 C 10 -6 -10 -6 -20 0 M -20 0 0 -30 M 0 -30 20 0',
or:
'M -20 0 C -20 -15 -10 -30 0 -30 C 10 -30 20 -15 20 0 C 10 -6 -10 -6 -20 0',
xor:
'M -20 0 C -20 -15 -10 -30 0 -30 C 10 -30 20 -15 20 0 C 10 -6 -10 -6 -20 0 M -20 0 0 -30 M 0 -30 20 0',
and: 'M -20 0 C -20 -25 -10 -30 0 -30 C 10 -30 20 -25 20 0 Z',
priority_and:
'M -20 0 C -20 -25 -10 -30 0 -30 C 10 -30 20 -25 20 0 Z M -20 0 0 -30 20 0',

@ -154,7 +154,6 @@ export class AttributeCard extends React.Component<
}
}
// eslint-disable-next-line
export namespace AttributeCard {
export interface Props {
attrs: {

@ -212,7 +212,6 @@ export class BackgroundCard extends React.Component<
}
}
// eslint-disable-next-line
export namespace BackgroundCard {
export interface Props {
onChange: (res: Graph.BackgroundOptions) => void

@ -33,7 +33,6 @@ export class BBoxCard extends React.Component<GridCard.Props> {
}
}
// eslint-disable-next-line
export namespace GridCard {
export interface Props {
x: number

@ -105,7 +105,6 @@ export class FitToContentCard extends React.Component<
}
}
// eslint-disable-next-line
export namespace FitToContentCard {
export interface Props {
onChange: (options: State) => void

@ -228,7 +228,6 @@ export class GridCard extends React.Component<GridCard.Props, GridCard.State> {
}
}
// eslint-disable-next-line
export namespace GridCard {
export interface Props {
onGridSizeChange: (size: number) => void

@ -77,7 +77,7 @@ export default class Example extends React.Component<
}),
})
})
.on('translate', ({ origin: { x, y } }) => {
.on('translate', ({origin: {x, y}}) => {
this.effect.hideAll()
this.setState({
attrs: getAttrs({
@ -195,7 +195,6 @@ export default class Example extends React.Component<
}
}
// eslint-disable-next-line
namespace Example {
export interface Props {}
export interface State {

@ -122,7 +122,6 @@ export class ScaleContentToFitCard extends React.Component<
}
}
// eslint-disable-next-line
export namespace ScaleContentToFitCard {
export interface Props {
onChange: (options: State) => void

@ -42,7 +42,7 @@ export default class Example extends React.Component {
stroke: '#9254de',
},
},
},
},
{
id: '2',
shape: 'rect',
@ -57,7 +57,7 @@ export default class Example extends React.Component {
stroke: '#9254de',
},
},
},
},
{
id: '3',
shape: 'rect',
@ -72,7 +72,7 @@ export default class Example extends React.Component {
stroke: '#9254de',
},
},
},
},
{
id: '4',
shape: 'rect',
@ -87,7 +87,7 @@ export default class Example extends React.Component {
stroke: '#9254de',
},
},
},
},
{
id: '5',
shape: 'rect',
@ -185,8 +185,8 @@ export default class Example extends React.Component {
}
onPositionPoint = () => {
this.graph1.positionPoint({ x: 50, y: 60 }, 100, 100)
this.graph2.positionPoint({ x: 50, y: 60 }, 100, 100)
this.graph1.positionPoint({x: 50, y: 60}, 100, 100)
this.graph2.positionPoint({x: 50, y: 60}, 100, 100)
}
onPositionRect = () => {
@ -214,37 +214,23 @@ export default class Example extends React.Component {
render() {
return (
<div>
<div>
<div className="x6-graph-wrap" style={{ display: 'flex' }}>
<div ref={this.refContainer1} className="x6-graph" />
<div ref={this.refContainer2} className="x6-graph" />
</div>
<div
style={{
display: 'flex',
flexFlow: 'wrap',
flexShrink: 0,
padding: '24px 48px',
}}
>
<div style={{
display: 'flex',
flexFlow: 'wrap',
flexShrink: 0,
padding: '24px 48px',
}}>
<Button onClick={() => this.onZoom(0.1)}>ZoomIn</Button>
<Button onClick={() => this.onZoom(-0.1)}>ZoomOut</Button>
<Button
onClick={() => this.onZoom(0.1, { center: { x: 300, y: 200 } })}
>
ZoomIn At [300, 200]
</Button>
<Button
onClick={() => this.onZoom(-0.1, { center: { x: 300, y: 200 } })}
>
ZoomOut At [300, 200]
</Button>
<Button onClick={() => this.onZoom(0.1, { center: {x: 300, y: 200} })}>ZoomIn At [300, 200]</Button>
<Button onClick={() => this.onZoom(-0.1, { center: {x: 300, y: 200} })}>ZoomOut At [300, 200]</Button>
<Button onClick={() => this.onZoomTo(1.5)}>ZoomTo</Button>
<Button
onClick={() => this.onZoomTo(1.5, { center: { x: 200, y: 100 } })}
>
ZoomTo At [200, 100]
</Button>
<Button onClick={() => this.onZoomTo(1.5, { center: {x: 200, y: 100} })}>ZoomTo At [200, 100]</Button>
<Button onClick={() => this.onZoomToRect()}>ZoomToRect</Button>
<Button onClick={() => this.onZoomToFit()}>ZoomToFit</Button>
<Button onClick={() => this.onCenterPoint()}>CenterPoint</Button>
@ -253,9 +239,7 @@ export default class Example extends React.Component {
<Button onClick={() => this.onCenterCell()}>CenterCell</Button>
<Button onClick={() => this.onPositionPoint()}>PositionPoint</Button>
<Button onClick={() => this.onPositionRect()}>PositionRect</Button>
<Button onClick={() => this.onPositionContent()}>
PositionContent
</Button>
<Button onClick={() => this.onPositionContent()}>PositionContent</Button>
<Button onClick={() => this.onPositionCell()}>PositionCell</Button>
</div>
</div>

@ -1,310 +1,310 @@
// import React from 'react'
// import { Graph, Node } from '@antv/x6'
// import '@antv/x6-react-shape'
// import data from './data.json'
// import '../index.less'
// import './index.less'
import React from 'react'
import { Graph, Node } from '@antv/x6'
import '@antv/x6-react-shape'
import data from './data.json'
import '../index.less'
import './index.less'
// //#region react component
// interface IProps {
// node?: Node
// }
// interface IState {
// collapsed: boolean
// }
// class GroupComponent extends React.Component<IProps, IState> {
// state = {
// collapsed: false,
// }
//#region react component
interface IProps {
node?: Node
}
interface IState {
collapsed: boolean
}
class GroupComponent extends React.Component<IProps, IState> {
state = {
collapsed: false,
}
// shouldComponentUpdate(nextProps: IProps, nextState: IState) {
// return nextState.collapsed !== this.state.collapsed
// }
shouldComponentUpdate(nextProps: IProps, nextState: IState) {
return nextState.collapsed !== this.state.collapsed
}
// onCollapse = () => {
// const node = this.props.node
// const target = !this.state.collapsed
onCollapse = () => {
const node = this.props.node
const target = !this.state.collapsed
// if (node) {
// const cells = node.getChildren()
// if (cells) {
// cells.forEach((cell: Node) => {
// if (target) {
// cell.hide()
// } else {
// cell.show()
// }
// })
// }
// if (target) {
// node.prop('previousSize', node.size())
// node.size(160, 32)
// } else {
// const previousSize = node.prop('previousSize')
// node.size(previousSize.width, previousSize.height)
// }
// }
if (node) {
const cells = node.getChildren()
if (cells) {
cells.forEach((cell: Node) => {
if (target) {
cell.hide()
} else {
cell.show()
}
})
}
if (target) {
node.prop('previousSize', node.size())
node.size(160, 32)
} else {
const previousSize = node.prop('previousSize')
node.size(previousSize.width, previousSize.height)
}
}
// this.setState({
// collapsed: target,
// })
// }
this.setState({
collapsed: target,
})
}
// render() {
// return (
// <div className="group">
// <div className="header">
// <span>
// <img
// src="https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*rYacTYE0PR0AAAAAAAAAAAAAARQnAQ"
// alt="group"
// />
// <span>Group</span>
// </span>
// <span className="btn" onClick={this.onCollapse}>
// {this.state.collapsed ? '+' : '-'}
// </span>
// </div>
// </div>
// )
// }
// }
// Graph.registerReactComponent('group', <GroupComponent />, true)
// //#endregion
render() {
return (
<div className="group">
<div className="header">
<span>
<img
src="https://gw.alipayobjects.com/mdn/rms_43231b/afts/img/A*rYacTYE0PR0AAAAAAAAAAAAAARQnAQ"
alt="group"
/>
<span>Group</span>
</span>
<span className="btn" onClick={this.onCollapse}>
{this.state.collapsed ? '+' : '-'}
</span>
</div>
</div>
)
}
}
Graph.registerReactComponent('group', <GroupComponent />, true)
//#endregion
// export default class Example extends React.Component {
// private graph: Graph
// private container: HTMLDivElement
export default class Example extends React.Component {
private graph: Graph
private container: HTMLDivElement
// componentDidMount() {
// const graph = new Graph({
// container: this.container,
// width: 800,
// height: 600,
// grid: true,
// connecting: {
// connector: 'smooth',
// },
// })
componentDidMount() {
const graph = new Graph({
container: this.container,
width: 800,
height: 600,
grid: true,
connecting: {
connector: 'smooth',
},
})
// this.graph = graph
// this.initShape()
// this.initEvent()
// }
this.graph = graph
this.initShape()
this.initEvent()
}
// initShape = () => {
// const nodes = data.nodes
// const edges = data.edges
// const groups = data.groups
// const newEdges: typeof edges = []
initShape = () => {
const nodes = data.nodes
const edges = data.edges
const groups = data.groups
const newEdges: typeof edges = []
// const getNode = (nodeId: string) => {
// if (nodeId) {
// return nodes.find((node) => node.id === nodeId)
// }
// return null
// }
const getNode = (nodeId: string) => {
if (nodeId) {
return nodes.find((node) => node.id === nodeId)
}
return null
}
// const getGroup = (groupId: string | undefined) => {
// if (groupId) {
// return groups.find((group) => group.id === groupId)
// }
// return null
// }
const getGroup = (groupId: string | undefined) => {
if (groupId) {
return groups.find((group) => group.id === groupId)
}
return null
}
// // 将连接到群组内部节点的连线进行拆分
// // source target op
// // √ X source->群组->target
// // X √ source->群组->target
// // √ √ source->群组1->群组2->target
// edges.forEach((edge) => {
// const sourceNodeId =
// typeof edge.source === 'string' ? edge.source : edge.source.cell
// const targetNodeId =
// typeof edge.target === 'string' ? edge.target : edge.target.cell
// const sourceNode = getNode(sourceNodeId)
// const targetNode = getNode(targetNodeId)
// const sourceGroup = getGroup(sourceNode?.group)
// const targetGroup = getGroup(targetNode?.group)
// 将连接到群组内部节点的连线进行拆分
// source target op
// √ X source->群组->target
// X √ source->群组->target
// √ √ source->群组1->群组2->target
edges.forEach((edge) => {
const sourceNodeId =
typeof edge.source === 'string' ? edge.source : edge.source.cell
const targetNodeId =
typeof edge.target === 'string' ? edge.target : edge.target.cell
const sourceNode = getNode(sourceNodeId)
const targetNode = getNode(targetNodeId)
const sourceGroup = getGroup(sourceNode?.group)
const targetGroup = getGroup(targetNode?.group)
// if (sourceGroup !== targetGroup) {
// if (sourceGroup && targetGroup) {
// const sourceGroupPort = {
// cell: sourceGroup.id,
// port: sourceGroup.ports.items[0].id,
// }
// const targetGroupPort = {
// cell: targetGroup.id,
// port: targetGroup.ports.items[0].id,
// }
// newEdges.push(
// ...[
// {
// ...edge,
// source: edge.source,
// target: sourceGroupPort,
// id: `${edge.id}_1`,
// for: edge.id,
// },
// {
// ...edge,
// source: targetGroupPort,
// target: edge.target,
// id: `${edge.id}_2`,
// for: edge.id,
// },
// ],
// )
// edge.source = sourceGroupPort
// edge.target = targetGroupPort
if (sourceGroup !== targetGroup) {
if (sourceGroup && targetGroup) {
const sourceGroupPort = {
cell: sourceGroup.id,
port: sourceGroup.ports.items[0].id,
}
const targetGroupPort = {
cell: targetGroup.id,
port: targetGroup.ports.items[0].id,
}
newEdges.push(
...[
{
...edge,
source: edge.source,
target: sourceGroupPort,
id: `${edge.id}_1`,
for: edge.id,
},
{
...edge,
source: targetGroupPort,
target: edge.target,
id: `${edge.id}_2`,
for: edge.id,
},
],
)
edge.source = sourceGroupPort
edge.target = targetGroupPort
// const sourceChildren = sourceGroup.children as string[]
// const targetChildren = targetGroup.children as string[]
// sourceChildren.push(sourceNode!.id)
// targetChildren.push(targetNode!.id)
// } else if (sourceGroup) {
// const sourceGroupPort = {
// cell: sourceGroup.id,
// port: sourceGroup.ports.items[0].id,
// }
// newEdges.push(
// ...[
// {
// ...edge,
// source: edge.source,
// target: sourceGroupPort,
// id: `${edge.id}_1`,
// for: edge.id,
// },
// ],
// )
// edge.source = sourceGroupPort
const sourceChildren = sourceGroup.children as string[]
const targetChildren = targetGroup.children as string[]
sourceChildren.push(sourceNode!.id)
targetChildren.push(targetNode!.id)
} else if (sourceGroup) {
const sourceGroupPort = {
cell: sourceGroup.id,
port: sourceGroup.ports.items[0].id,
}
newEdges.push(
...[
{
...edge,
source: edge.source,
target: sourceGroupPort,
id: `${edge.id}_1`,
for: edge.id,
},
],
)
edge.source = sourceGroupPort
// const children = sourceGroup.children as string[]
// children.push(sourceNode!.id)
// } else if (targetGroup) {
// const targetGroupPort = {
// cell: targetGroup.id,
// port: targetGroup.ports.items[0].id,
// }
// newEdges.push(
// ...[
// {
// ...edge,
// source: targetGroupPort,
// target: edge.target,
// id: `${edge.id}_1`,
// for: edge.id,
// },
// ],
// )
// edge.target = targetGroupPort
const children = sourceGroup.children as string[]
children.push(sourceNode!.id)
} else if (targetGroup) {
const targetGroupPort = {
cell: targetGroup.id,
port: targetGroup.ports.items[0].id,
}
newEdges.push(
...[
{
...edge,
source: targetGroupPort,
target: edge.target,
id: `${edge.id}_1`,
for: edge.id,
},
],
)
edge.target = targetGroupPort
// const children = targetGroup.children as string[]
// children.push(targetNode!.id)
// }
// }
// })
const children = targetGroup.children as string[]
children.push(targetNode!.id)
}
}
})
// this.graph.addNodes([...nodes, ...groups])
// this.graph.addEdges([...edges, ...newEdges])
// }
this.graph.addNodes([...nodes, ...groups])
this.graph.addEdges([...edges, ...newEdges])
}
// initEvent = () => {
// const graph = this.graph
// graph.on('node:moving', ({ node }) => {
// const isGroup = node.prop('isGroup')
// if (isGroup) {
// node.prop('originPosition', node.getPosition())
// return
// }
initEvent = () => {
const graph = this.graph
graph.on('node:moving', ({ node }) => {
const isGroup = node.prop('isGroup')
if (isGroup) {
node.prop('originPosition', node.getPosition())
return
}
// const groupId = node.prop('group')
// const group = graph.getNodes().find((node) => node.id === groupId)
// if (!group) {
// return
// }
const groupId = node.prop('group')
const group = graph.getNodes().find((node) => node.id === groupId)
if (!group) {
return
}
// let hasChange = false
// let originSize = group.prop('originSize')
// if (originSize == null) {
// originSize = group.size()
// group.prop('originSize', originSize)
// }
// let originPosition = group.prop('originPosition')
// if (originPosition == null) {
// originPosition = group.position()
// group.prop('originPosition', originPosition)
// }
let hasChange = false
let originSize = group.prop('originSize')
if (originSize == null) {
originSize = group.size()
group.prop('originSize', originSize)
}
let originPosition = group.prop('originPosition')
if (originPosition == null) {
originPosition = group.position()
group.prop('originPosition', originPosition)
}
// let x = originPosition.x
// let y = originPosition.y
// let cornerX = originPosition.x + originSize.width
// let cornerY = originPosition.y + originSize.height
// const childs = group.getChildren()
// if (childs) {
// childs.forEach((child) => {
// const bbox = child.getBBox().inflate(32)
// const corner = bbox.getCorner()
let x = originPosition.x
let y = originPosition.y
let cornerX = originPosition.x + originSize.width
let cornerY = originPosition.y + originSize.height
const childs = group.getChildren()
if (childs) {
childs.forEach((child) => {
const bbox = child.getBBox().inflate(32)
const corner = bbox.getCorner()
// if (bbox.x < x) {
// x = bbox.x
// hasChange = true
// }
if (bbox.x < x) {
x = bbox.x
hasChange = true
}
// if (bbox.y < y) {
// y = bbox.y
// hasChange = true
// }
if (bbox.y < y) {
y = bbox.y
hasChange = true
}
// if (corner.x > cornerX) {
// cornerX = corner.x
// hasChange = true
// }
if (corner.x > cornerX) {
cornerX = corner.x
hasChange = true
}
// if (corner.y > cornerY) {
// cornerY = corner.y
// hasChange = true
// }
// })
// }
if (corner.y > cornerY) {
cornerY = corner.y
hasChange = true
}
})
}
// if (hasChange) {
// group.prop({
// position: { x, y },
// size: { width: cornerX - x, height: cornerY - y },
// })
// }
// })
// }
if (hasChange) {
group.prop({
position: { x, y },
size: { width: cornerX - x, height: cornerY - y },
})
}
})
}
// toJson = () => {
// const res = this.graph.toJSON()
// const cells = res.cells
// res.cells = cells
// .filter((cell) => !cell.for)
// .map((cell) => {
// if (cell.shape === 'edge') {
// return {
// ...cell,
// source: cell.originSource || cell.source,
// target: cell.originTarget || cell.target,
// }
// }
// return cell
// })
// return res
// }
toJson = () => {
const res = this.graph.toJSON()
const cells = res.cells
res.cells = cells
.filter((cell) => !cell.for)
.map((cell) => {
if (cell.shape === 'edge') {
return {
...cell,
source: cell.originSource || cell.source,
target: cell.originTarget || cell.target,
}
}
return cell
})
return res
}
// refContainer = (container: HTMLDivElement) => {
// this.container = container
// }
refContainer = (container: HTMLDivElement) => {
this.container = container
}
// render() {
// return (
// <div className="x6-graph-wrap">
// <div ref={this.refContainer} className="x6-graph" />
// </div>
// )
// }
// }
render() {
return (
<div className="x6-graph-wrap">
<div ref={this.refContainer} className="x6-graph" />
</div>
)
}
}

@ -23,9 +23,3 @@
box-shadow: 0 0 10px 1px #e9e9e9;
margin: 0 auto;
}
.home {
width: 800px;
height: 100%;
margin: 0 auto;
}

@ -1,42 +1,9 @@
import React from 'react'
import { Table } from 'antd'
import './index.less'
const dataSource = [
{
key: '1',
example: 'animation/transition',
description: 'transition 动画',
},
]
const columns = [
{
title: 'example',
dataIndex: 'example',
render(text: string) {
return (
<a href={`./${text}`} target="_blank">
{text}
</a>
)
},
},
{
title: 'description',
dataIndex: 'description',
},
]
export default function () {
export default function() {
return (
<div className="home">
<Table
dataSource={dataSource}
columns={columns}
pagination={false}
size="small"
/>
<div>
<h1>Feature List</h1>
</div>
)
}

@ -245,7 +245,6 @@ export default class Example extends React.Component<
}
}
// eslint-disable-next-line
export namespace Example {
export interface Props {}

@ -174,7 +174,6 @@ export default class Example extends React.Component<
}
}
// eslint-disable-next-line
export namespace Example {
export interface Props {}

@ -32,7 +32,7 @@ class ContextMenuTool extends ToolsView.ToolItem<
trigger={['click']}
overlay={this.options.menu}
>
<a href="#" />
<a />
</Dropdown>,
this.knob,
() => {

@ -43,7 +43,8 @@ const data = {
y: 40,
attrs: {
label: {
text: 'testing测试测试测试thisisaveryveryveryveryveryverylongword jsvascriptjsvascriptjsvascript',
text:
'testing测试测试测试thisisaveryveryveryveryveryverylongword jsvascriptjsvascriptjsvascript',
},
},
},

@ -84,7 +84,6 @@ export default class Example extends React.Component<
}
}
// eslint-disable-next-line
export namespace Example {
export interface Props {}

@ -56,10 +56,14 @@ export default class Example extends React.Component {
graph.on('edge:connected', ({ edge }) => {
graph.batchUpdate(() => {
const { port: sourcePort, ...source } =
edge.getSource() as Edge.TerminalCellData
const { port: targetPort, ...target } =
edge.getTarget() as Edge.TerminalCellData
const {
port: sourcePort,
...source
} = edge.getSource() as Edge.TerminalCellData
const {
port: targetPort,
...target
} = edge.getTarget() as Edge.TerminalCellData
edge.removeProp('source')
edge.removeProp('target')

@ -1,6 +1,5 @@
import React from 'react'
import { Graph } from '@antv/x6-next'
import { Keyboard } from '@antv/x6-plugin-keyboard'
import { Graph } from '@antv/x6'
import '../index.less'
export default class Example extends React.Component {
@ -12,28 +11,17 @@ export default class Example extends React.Component {
width: 800,
height: 600,
grid: true,
// selecting: {
// enabled: true,
// showNodeSelectionBox: true,
// },
// clipboard: {
// enabled: true,
// },
// keyboard: {
// enabled: true,
// global: false,
// },
})
graph.use(
new Keyboard({
selecting: {
enabled: true,
}),
)
const keyboard = graph.getPlugin('keyboard') as Keyboard
keyboard.bindKey('backspace', () => {
console.log('backspace')
showNodeSelectionBox: true,
},
clipboard: {
enabled: true,
},
keyboard: {
enabled: true,
global: false,
},
})
graph.addNode({
@ -60,30 +48,30 @@ export default class Example extends React.Component {
attrs: { label: { text: 'C' } },
})
// graph.bindKey('meta+c', () => {
// const cells = graph.getSelectedCells()
// if (cells.length) {
// graph.copy(cells)
// }
// return false
// })
graph.bindKey('meta+c', () => {
const cells = graph.getSelectedCells()
if (cells.length) {
graph.copy(cells)
}
return false
})
// graph.bindKey('meta+v', () => {
// if (!graph.isClipboardEmpty()) {
// const cells = graph.paste({ offset: 32 })
// graph.resetSelection(cells)
// }
// console.log(graph.toJSON())
// return false
// })
graph.bindKey('meta+v', () => {
if (!graph.isClipboardEmpty()) {
const cells = graph.paste({ offset: 32 })
graph.resetSelection(cells)
}
console.log(graph.toJSON())
return false
})
// graph.bindKey('backspace', () => {
// graph.removeCells(graph.getSelectedCells())
// })
graph.bindKey('backspace', () => {
graph.removeCells(graph.getSelectedCells())
})
// graph.on('selection:changed', ({ selected }) => {
// console.log(selected)
// })
graph.on('selection:changed', ({ selected }) => {
console.log(selected)
})
}
refContainer = (container: HTMLDivElement) => {

@ -1,4 +1,3 @@
/* eslint-disable @typescript-eslint/no-use-before-define */
import {
Graph,
Node,
@ -139,7 +138,7 @@ Graph.registerEdge(
return defaults
}
const attr = val as {} as AngleEdge.AngleOptions
const attr = (val as {}) as AngleEdge.AngleOptions
var angleRadius = attr.radius || 40
var angleStart = attr.start || 'self'
var anglePie = attr.pie || false
@ -182,7 +181,7 @@ Graph.registerEdge(
set(val, options) {
let text = ''
const view = options.view as EdgeView
const attr = val as {} as AngleEdge.AngleTextOptions
const attr = (val as {}) as AngleEdge.AngleTextOptions
let meta = AngleEdge.getArcMeta(view, attr.type, { radius: 40 })
if (meta) {
@ -214,8 +213,8 @@ Graph.registerEdge(
line = new Line(connectionPoint, p).setLength(distance)
} else {
const c = new Line(arcPoint1, arcPoint2).getCenter()
line = new Line(connectionPoint, c).setLength(distance)
largeArcFlag && line.scale(-1, -1, line.start)
;(line = new Line(connectionPoint, c).setLength(distance)),
largeArcFlag && line.scale(-1, -1, line.start)
}
const pos = line.end
@ -231,7 +230,6 @@ Graph.registerEdge(
true,
)
// eslint-disable-next-line
namespace Cache {
function ensure(view: EdgeView) {
const cacheKey = 'angleData'
@ -239,7 +237,7 @@ namespace Cache {
if (!(cacheKey in cache)) {
cache[cacheKey] = {}
}
return cache[cacheKey] as Object as {
return (cache[cacheKey] as Object) as {
[key: string]: AngleEdge.Metadata | null
}
}
@ -263,7 +261,6 @@ namespace Cache {
}
}
// eslint-disable-next-line
namespace AngleEdge {
export type AngleStart = 'self' | 'source' | 'target'
export type AngleDirection = 'clockwise' | 'anticlockwise' | 'small' | 'large'

@ -202,7 +202,8 @@ export default class Example extends React.Component {
{
tagName: 'path',
attrs: {
d: 'M -4 -0.8 L -7.2 2.4 L -4 5.6 L -4 3.2 L 1.6 3.2 L 1.6 1.6 L -4 1.6 L -4 -0.8 Z M 7.2 -2.4 L 4 -5.6 L 4 -3.2 L -1.6 -3.2 L -1.6 -1.6 L 4 -1.6 L 4 0.8 L 7.2 -2.4 Z',
d:
'M -4 -0.8 L -7.2 2.4 L -4 5.6 L -4 3.2 L 1.6 3.2 L 1.6 1.6 L -4 1.6 L -4 -0.8 Z M 7.2 -2.4 L 4 -5.6 L 4 -3.2 L -1.6 -3.2 L -1.6 -1.6 L 4 -1.6 L 4 0.8 L 7.2 -2.4 Z',
cursor: 'pointer',
strokeWidth: 2,
fill: '#fff',
@ -240,7 +241,8 @@ export default class Example extends React.Component {
{
tagName: 'path',
attrs: {
d: 'M -4 -0.8 L -7.2 2.4 L -4 5.6 L -4 3.2 L 1.6 3.2 L 1.6 1.6 L -4 1.6 L -4 -0.8 Z M 7.2 -2.4 L 4 -5.6 L 4 -3.2 L -1.6 -3.2 L -1.6 -1.6 L 4 -1.6 L 4 0.8 L 7.2 -2.4 Z',
d:
'M -4 -0.8 L -7.2 2.4 L -4 5.6 L -4 3.2 L 1.6 3.2 L 1.6 1.6 L -4 1.6 L -4 -0.8 Z M 7.2 -2.4 L 4 -5.6 L 4 -3.2 L -1.6 -3.2 L -1.6 -1.6 L 4 -1.6 L 4 0.8 L 7.2 -2.4 Z',
cursor: 'pointer',
strokeWidth: 2,
fill: '#fff',

@ -1,4 +1,3 @@
/* eslint-disable @typescript-eslint/no-namespace */
import { Graph, Shape, EdgeView, Edge, Registry, Point, Angle } from '@antv/x6'
Graph.registerNode(
@ -139,7 +138,7 @@ export const DistanceEdgeBase = Graph.registerEdge(
distanceAnchor: {
set(val, { view }) {
if (typeof val === 'object') {
const attr = val as {} as DistanceEdge.DistanceAnchorOptions
const attr = (val as {}) as DistanceEdge.DistanceAnchorOptions
const edgeView = view as EdgeView
const anchor = edgeView.getTerminalAnchor(attr.type)
const kont = edgeView.getTerminalConnectionPoint(attr.type)
@ -152,7 +151,7 @@ export const DistanceEdgeBase = Graph.registerEdge(
distanceText: {
set(val, options) {
const view = options.view as EdgeView
const attr = val as {} as DistanceEdge.DistanceTextOptions
const attr = (val as {}) as DistanceEdge.DistanceTextOptions
const text = DistanceEdge.getDistanceText(view, attr)
const raw = Registry.Attr.presets.text as Registry.Attr.SetDefinition
raw.set.call(this, text, options)

@ -247,7 +247,6 @@ export default class Example extends React.Component<
}
}
// eslint-disable-next-line
export namespace Example {
export interface Props {}

@ -31,7 +31,6 @@ class Coords {
}
}
// eslint-disable-next-line
namespace RandomDir {
let radian = 4

@ -181,7 +181,7 @@ export default class Example extends React.Component<
edges.shift()
this.viewport = viewportTemplate.clone() as any as Node
this.viewport = (viewportTemplate.clone() as any) as Node
console.time('perf-reset')
@ -305,7 +305,6 @@ export default class Example extends React.Component<
}
}
// eslint-disable-next-line
export namespace Example {
export interface Props {}

@ -1,102 +1,81 @@
[
{
"num": 200,
"time": 0.379,
"type": "async"
},
{
"num": 400,
"time": 0.481,
"type": "async"
},
{
"num": 600,
"time": 0.569,
"type": "async"
},
{
"num": 800,
"time": 0.681,
"type": "async"
},
{
"num": 1000,
"time": 0.79,
"type": "async"
},
{
"num": 1200,
"time": 0.915,
"type": "async"
},
{
"num": 1400,
"time": 1.056,
"type": "async"
},
{
"num": 1600,
"time": 1.24,
"type": "async"
},
{
"num": 1800,
"time": 1.388,
"type": "async"
},
{
"num": 2000,
"time": 1.497,
"type": "async"
},
{
"num": 200,
"time": 0.224,
"type": "sync"
},
{
"num": 400,
"time": 0.355,
"type": "sync"
},
{
"num": 600,
"time": 0.489,
"type": "sync"
},
{
"num": 800,
"time": 0.579,
"type": "sync"
},
{
"num": 1000,
"time": 0.764,
"type": "sync"
},
{
"num": 1200,
"time": 0.858,
"type": "sync"
},
{
"num": 1400,
"time": 0.992,
"type": "sync"
},
{
"num": 1600,
"time": 1.126,
"type": "sync"
},
{
"num": 1800,
"time": 1.282,
"type": "sync"
},
{
"num": 2000,
"time": 1.763,
"type": "sync"
}
]
[{
"num": 200,
"time": 0.379,
"type": "async"
}, {
"num": 400,
"time": 0.481,
"type": "async"
}, {
"num": 600,
"time": 0.569,
"type": "async"
}, {
"num": 800,
"time": 0.681,
"type": "async"
}, {
"num": 1000,
"time": 0.79,
"type": "async"
}, {
"num": 1200,
"time": 0.915,
"type": "async"
}, {
"num": 1400,
"time": 1.056,
"type": "async"
}, {
"num": 1600,
"time": 1.24,
"type": "async"
}, {
"num": 1800,
"time": 1.388,
"type": "async"
}, {
"num": 2000,
"time": 1.497,
"type": "async"
},{
"num": 200,
"time": 0.224,
"type": "sync"
}, {
"num": 400,
"time": 0.355,
"type": "sync"
}, {
"num": 600,
"time": 0.489,
"type": "sync"
}, {
"num": 800,
"time": 0.579,
"type": "sync"
}, {
"num": 1000,
"time": 0.764,
"type": "sync"
}, {
"num": 1200,
"time": 0.858,
"type": "sync"
}, {
"num": 1400,
"time": 0.992,
"type": "sync"
}, {
"num": 1600,
"time": 1.126,
"type": "sync"
}, {
"num": 1800,
"time": 1.282,
"type": "sync"
}, {
"num": 2000,
"time": 1.763,
"type": "sync"
}]

@ -73,7 +73,7 @@ export default class Example extends React.Component {
})
nodes.push(a)
})
Array.from({ length: num }).forEach(() => {
const a = graph.createEdge({
shape: 'performance_normal_edge',
@ -92,7 +92,7 @@ export default class Example extends React.Component {
function test(num: number, iterations: number) {
const { nodes, edges } = mockCells(num)
graph.model.resetCells(nodes)
const startTime = new Date().getTime()
graph.model.addCells(edges)
if (ASYNC) {
@ -121,11 +121,7 @@ export default class Example extends React.Component {
function output() {
const res = Object.keys(result).map((key: string) => ({
num: parseInt(key, 10),
time: parseFloat(
(result[key].reduce((pre, cur) => pre + cur, 0) / ITERATIONS).toFixed(
3,
),
),
time: parseFloat((result[key].reduce((pre, cur) => pre + cur, 0) / ITERATIONS).toFixed(3)),
type: ASYNC ? 'async' : 'sync',
}))
document.getElementById('result')!.innerText = JSON.stringify(res)
@ -141,7 +137,7 @@ export default class Example extends React.Component {
render() {
return (
<div className="x6-graph-wrap">
<div id="result" style={{ paddingLeft: 8, paddingBottom: 8 }} />
<div id="result" style={{ paddingLeft: 8, paddingBottom: 8 }}/>
<div ref={this.refContainer} className="x6-graph" />
</div>
)

@ -1,102 +1,81 @@
[
{
"num": 500,
"time": 0.285,
"type": "sync"
},
{
"num": 1000,
"time": 0.477,
"type": "sync"
},
{
"num": 1500,
"time": 0.744,
"type": "sync"
},
{
"num": 2000,
"time": 0.964,
"type": "sync"
},
{
"num": 2500,
"time": 1.347,
"type": "sync"
},
{
"num": 3000,
"time": 1.561,
"type": "sync"
},
{
"num": 3500,
"time": 1.831,
"type": "sync"
},
{
"num": 4000,
"time": 2.14,
"type": "sync"
},
{
"num": 4500,
"time": 2.715,
"type": "sync"
},
{
"num": 5000,
"time": 2.848,
"type": "sync"
},
{
"num": 500,
"time": 0.276,
"type": "async"
},
{
"num": 1000,
"time": 0.429,
"type": "async"
},
{
"num": 1500,
"time": 0.677,
"type": "async"
},
{
"num": 2000,
"time": 0.897,
"type": "async"
},
{
"num": 2500,
"time": 1.356,
"type": "async"
},
{
"num": 3000,
"time": 1.584,
"type": "async"
},
{
"num": 3500,
"time": 2.045,
"type": "async"
},
{
"num": 4000,
"time": 2.347,
"type": "async"
},
{
"num": 4500,
"time": 2.705,
"type": "async"
},
{
"num": 5000,
"time": 3.072,
"type": "async"
}
]
[{
"num": 500,
"time": 0.285,
"type": "sync"
}, {
"num": 1000,
"time": 0.477,
"type": "sync"
}, {
"num": 1500,
"time": 0.744,
"type": "sync"
}, {
"num": 2000,
"time": 0.964,
"type": "sync"
}, {
"num": 2500,
"time": 1.347,
"type": "sync"
}, {
"num": 3000,
"time": 1.561,
"type": "sync"
}, {
"num": 3500,
"time": 1.831,
"type": "sync"
}, {
"num": 4000,
"time": 2.14,
"type": "sync"
}, {
"num": 4500,
"time": 2.715,
"type": "sync"
}, {
"num": 5000,
"time": 2.848,
"type": "sync"
},{
"num": 500,
"time": 0.276,
"type": "async"
}, {
"num": 1000,
"time": 0.429,
"type": "async"
}, {
"num": 1500,
"time": 0.677,
"type": "async"
}, {
"num": 2000,
"time": 0.897,
"type": "async"
}, {
"num": 2500,
"time": 1.356,
"type": "async"
}, {
"num": 3000,
"time": 1.584,
"type": "async"
}, {
"num": 3500,
"time": 2.045,
"type": "async"
}, {
"num": 4000,
"time": 2.347,
"type": "async"
}, {
"num": 4500,
"time": 2.705,
"type": "async"
}, {
"num": 5000,
"time": 3.072,
"type": "async"
}]

@ -90,11 +90,7 @@ export default class Example extends React.Component {
function output() {
const res = Object.keys(result).map((key: string) => ({
num: parseInt(key, 10),
time: parseFloat(
(result[key].reduce((pre, cur) => pre + cur, 0) / ITERATIONS).toFixed(
3,
),
),
time: parseFloat((result[key].reduce((pre, cur) => pre + cur, 0) / ITERATIONS).toFixed(3)),
type: ASYNC ? 'async' : 'sync',
}))
document.getElementById('result')!.innerText = JSON.stringify(res)
@ -110,7 +106,7 @@ export default class Example extends React.Component {
render() {
return (
<div className="x6-graph-wrap">
<div id="result" style={{ paddingLeft: 8, paddingBottom: 8 }} />
<div id="result" style={{ paddingLeft: 8, paddingBottom: 8 }}/>
<div ref={this.refContainer} className="x6-graph" />
</div>
)

@ -1,102 +1,81 @@
[
{
"num": 500,
"time": 0.594,
"type": "sync"
},
{
"num": 1000,
"time": 1.005,
"type": "sync"
},
{
"num": 1500,
"time": 1.514,
"type": "sync"
},
{
"num": 2000,
"time": 2.014,
"type": "sync"
},
{
"num": 2500,
"time": 2.775,
"type": "sync"
},
{
"num": 3000,
"time": 3.103,
"type": "sync"
},
{
"num": 3500,
"time": 3.689,
"type": "sync"
},
{
"num": 4000,
"time": 4.844,
"type": "sync"
},
{
"num": 4500,
"time": 4.972,
"type": "sync"
},
{
"num": 5000,
"time": 6.49,
"type": "sync"
},
{
"num": 500,
"time": 0.546,
"type": "async"
},
{
"num": 1000,
"time": 0.934,
"type": "async"
},
{
"num": 1500,
"time": 1.37,
"type": "async"
},
{
"num": 2000,
"time": 1.867,
"type": "async"
},
{
"num": 2500,
"time": 2.976,
"type": "async"
},
{
"num": 3000,
"time": 3.687,
"type": "async"
},
{
"num": 3500,
"time": 4.809,
"type": "async"
},
{
"num": 4000,
"time": 5.251,
"type": "async"
},
{
"num": 4500,
"time": 6.628,
"type": "async"
},
{
"num": 5000,
"time": 7.04,
"type": "async"
}
]
[{
"num": 500,
"time": 0.594,
"type": "sync"
}, {
"num": 1000,
"time": 1.005,
"type": "sync"
}, {
"num": 1500,
"time": 1.514,
"type": "sync"
}, {
"num": 2000,
"time": 2.014,
"type": "sync"
}, {
"num": 2500,
"time": 2.775,
"type": "sync"
}, {
"num": 3000,
"time": 3.103,
"type": "sync"
}, {
"num": 3500,
"time": 3.689,
"type": "sync"
}, {
"num": 4000,
"time": 4.844,
"type": "sync"
}, {
"num": 4500,
"time": 4.972,
"type": "sync"
}, {
"num": 5000,
"time": 6.49,
"type": "sync"
}, {
"num": 500,
"time": 0.546,
"type": "async"
}, {
"num": 1000,
"time": 0.934,
"type": "async"
}, {
"num": 1500,
"time": 1.37,
"type": "async"
}, {
"num": 2000,
"time": 1.867,
"type": "async"
}, {
"num": 2500,
"time": 2.976,
"type": "async"
}, {
"num": 3000,
"time": 3.687,
"type": "async"
}, {
"num": 3500,
"time": 4.809,
"type": "async"
}, {
"num": 4000,
"time": 5.251,
"type": "async"
}, {
"num": 4500,
"time": 6.628,
"type": "async"
}, {
"num": 5000,
"time": 7.04,
"type": "async"
}]

@ -156,11 +156,7 @@ export default class Example extends React.Component {
function output() {
const res = Object.keys(result).map((key: string) => ({
num: parseInt(key, 10),
time: parseFloat(
(result[key].reduce((pre, cur) => pre + cur, 0) / ITERATIONS).toFixed(
3,
),
),
time: parseFloat((result[key].reduce((pre, cur) => pre + cur, 0) / ITERATIONS).toFixed(3)),
type: ASYNC ? 'async' : 'sync',
}))
document.getElementById('result')!.innerText = JSON.stringify(res)
@ -176,7 +172,7 @@ export default class Example extends React.Component {
render() {
return (
<div className="x6-graph-wrap">
<div id="result" style={{ paddingLeft: 8, paddingBottom: 8 }} />
<div id="result" style={{ paddingLeft: 8, paddingBottom: 8 }}/>
<div ref={this.refContainer} className="x6-graph" />
</div>
)

@ -1,102 +1,81 @@
[
{
"num": 500,
"time": 0.232,
"type": "sync"
},
{
"num": 1000,
"time": 0.344,
"type": "sync"
},
{
"num": 1500,
"time": 0.565,
"type": "sync"
},
{
"num": 2000,
"time": 0.707,
"type": "sync"
},
{
"num": 2500,
"time": 0.903,
"type": "sync"
},
{
"num": 3000,
"time": 1.147,
"type": "sync"
},
{
"num": 3500,
"time": 1.36,
"type": "sync"
},
{
"num": 4000,
"time": 1.589,
"type": "sync"
},
{
"num": 4500,
"time": 1.848,
"type": "sync"
},
{
"num": 5000,
"time": 2.332,
"type": "sync"
},
{
"num": 500,
"time": 0.39,
"type": "async"
},
{
"num": 1000,
"time": 0.633,
"type": "async"
},
{
"num": 1500,
"time": 0.903,
"type": "async"
},
{
"num": 2000,
"time": 1.163,
"type": "async"
},
{
"num": 2500,
"time": 1.831,
"type": "async"
},
{
"num": 3000,
"time": 2.172,
"type": "async"
},
{
"num": 3500,
"time": 2.739,
"type": "async"
},
{
"num": 4000,
"time": 3.073,
"type": "async"
},
{
"num": 4500,
"time": 3.7,
"type": "async"
},
{
"num": 5000,
"time": 4.065,
"type": "async"
}
]
[{
"num": 500,
"time": 0.232,
"type": "sync"
}, {
"num": 1000,
"time": 0.344,
"type": "sync"
}, {
"num": 1500,
"time": 0.565,
"type": "sync"
}, {
"num": 2000,
"time": 0.707,
"type": "sync"
}, {
"num": 2500,
"time": 0.903,
"type": "sync"
}, {
"num": 3000,
"time": 1.147,
"type": "sync"
}, {
"num": 3500,
"time": 1.36,
"type": "sync"
}, {
"num": 4000,
"time": 1.589,
"type": "sync"
}, {
"num": 4500,
"time": 1.848,
"type": "sync"
}, {
"num": 5000,
"time": 2.332,
"type": "sync"
}, {
"num": 500,
"time": 0.39,
"type": "async"
}, {
"num": 1000,
"time": 0.633,
"type": "async"
}, {
"num": 1500,
"time": 0.903,
"type": "async"
}, {
"num": 2000,
"time": 1.163,
"type": "async"
}, {
"num": 2500,
"time": 1.831,
"type": "async"
}, {
"num": 3000,
"time": 2.172,
"type": "async"
}, {
"num": 3500,
"time": 2.739,
"type": "async"
}, {
"num": 4000,
"time": 3.073,
"type": "async"
}, {
"num": 4500,
"time": 3.7,
"type": "async"
}, {
"num": 5000,
"time": 4.065,
"type": "async"
}]

Some files were not shown because too many files have changed in this diff Show More