* feat: add RectNode
* add: add rect test demo
* add: add rect test demo
* update: update RectNode with less override
* update: remove 'console.log'
* update: remove comment
* update: remove cn comment
* add: add rect-spec.ts for unit test
---------
Co-authored-by: Yanyan Wang <yanyanwang93@gmail.com>
* perf: performance test
* fix: use latest g-webgl to enhance performance
* chore: lint
* fix: save zoom ratio on item controller
---------
Co-authored-by: yuqi.pyq <yuqi.pyq@antgroup.com>
* feat: 3d item rendering
* test: large number for 3d rendering
* fix: share geometry & material between meshes
* feat: rotate-canvas and zoom-canvas for 3d
* perf: types for 3d item
* chore: types
* feat: tracking-canvas-3d behavivor
* fix: rotate canvas 3d behavior export
* chore: type refine
---------
Co-authored-by: yuqi.pyq <yuqi.pyq@antgroup.com>
* feat: support translate & zoom with camera #4344
* feat: support fitCenter & focusItem with Camera API #4344
* feat: support fitView #4344
* feat: support focusing multi-items & stop transition of current transform #4348
* feat: theme module
* chore: add test for theme
* chore: move default themes into stdlibs and refine the theme to be same as v4
* chore: rebase v5 with item module
* feat: subject theme solver
* chore: typo
* feat: support transition on layouts without iterations #4339
* feat: use immediately invoked layout as a shortcut #4339
* feat: handle scenario when layout is unset in spec
* fix: disable css parsing for better performance
* feat: unified datachange from changeData, addData, updateData, and removeData; feat: item definition and first drawing
* feat: update canvas while addData; feat: update canvas while updateData (node); chore: unified additems, removeitems, updateitems to be itemchange hook
* feat: init layout controller
* feat: node and edge updating and drawing
* chore: neaten
* feat: draw and update labels for node and edge
* feat: icon for edge; feat: custom node and edge and register to lib
* feat: init layout controller
* fix: use latest g-webgl
* feat: layout controller should support & option
* fix: registry typo & add custom layout test case
* feat: state related API for graph and item
* chore: update notes
---------
Co-authored-by: Yanyan-Wang <yanyanwang93@gmail.com>
* feat: unified datachange from changeData, addData, updateData, and removeData; feat: item definition and first drawing
* feat: update canvas while addData; feat: update canvas while updateData (node); chore: unified additems, removeitems, updateitems to be itemchange hook
* feat: node and edge updating and drawing
* chore: neaten
* feat: draw and update labels for node and edge
* feat: icon for edge; feat: custom node and edge and register to lib
* feat: state related API for graph and item
* chore: update notes
* feat: state styles for item
* chore: update tests
* feat: implement add remove and update API for graph data module
* chore: remove IItem INode IEdge and ICombo from input and output of API in graph
* docs: udpate temporary graph api docs
* feat: hooks for graph; feat: data and interaction controllers for these two types of extensions
* chore: format notes
* perf: types refine
* feat: graph behavior apis
* feat: item and its controller
* feat: init Node Edge and Combo item
* feat: init layoutm theme, extension controllers
* feat: init Graph class
* feat: add gymnastics for behavior
* chore: behavior type generic refine
* chore: refine
* feat: complete hooks list