* chore: init type define
* fix: badge typo in readme
* feat: plugin watermark
* feat: add watmermark plugin
* test: add tc for watermark, but should skip it
* docs: add demos for watermark
* test: add tc for mock
* chore: fix cr
* test: use jest-canvas-mock make ci works
* chore: update demo
* docs: add case panel
* refactor: render watermark into div
* chore: update
* refactor(runtime): merge into getChildrenData, getComboData, add get getAncestorsData
* refactor(runtime): move translate logic from graph to data controller
* feat(utils): add positionOf util
* refactor(runtime): adjust the order of drawing combos
* refactor(elements): sync combo position to model, adjust combo size calc
* refactor(utils): dfs provide depth info
* refactor(elements): combo sync position and zIndex
* feat(utils): add zIndexOf util
* refactor(runtime): refactor data/element controller to fit combo update
* test: assign graph into window.graph
* refactor(elements): combo use childrenData to get marker text
* refactor(elements): filter zIndex from graphicStyle
* feat(utils): add getSubgraphRelatedEdges util
* refactor(animation): add combo-collapse-expand animation
* refactor(runtime): add combo collapse and expand flow
* fix: fix issue in data controller and base-combo
* test: update test case and snapshots
* feat(behaviors): support click collapse-expand, drag-combo
* refactor: merge drag node and drag combo into drag element
* fix(behaviors): fix issue drag element between combo wont update
* test(behaviors): add drag-element test case and snapshots
* test: fix snapshot
* test: update test case and snapshots
* fix: fix format and types
* chore: adjust drag-node to drag element
* refactor(runtime): element split draw to draw and computeDrawData
* feat(utils): add parentIdOf util
* refactor(runtime): element controller use data flow
* refactor(utils): toGraphlibData does a shallow copy
* refactor: base-shape set visibility, setVisibility support keep raw attributes
* refactor(runtime): refactor element controller, merge runtime style into model
* test: update test case and snapshots
* test(elements): add test case and snapshots
* chore(site): update site demo
* refactor(runtime): add syntax sugar for runtime api
* test: remove layout case demo
* refactor(animation): recover to enter, exit animation stage
* refactor(runtime): add frontElement, backElement api
* refactor(runtime): add showElement, hideElement API
* refactor(behaviors): drag-node adpat new api
* refactor: export idOf util
* refactor(runtime): setElementVisibility support set animation individually
* feat(utils): add setCacheStyle util
* fix(runtime): fix issue that setVisibility call in a short period of time
* fix(elements): fix edge arrow that create and animate error
* refactor(elements): adjust nodelike default style props'
* feat(behaviors): add drag node behavior
* test(behaviors): add drag node test snapshots
* test(behavior): update test case and snapshot
* refactor: adjust exports
* refactor(utils): union support multiple bboxes
* fix(test): fix test env
* refactor(utils): add getBBoxSize, multiple and divide support number
* refactor(spec): adjust animation, add extra viewport options
* refactor(behaviors): zoom canvas set pointer position as origin when wheel
* refactor(behaviors): drag-canvas use graph api
* feat(runtime): support fit api
* refactor(test): update test case and snapshot use x,y
* refactor(animation): add getAnimation util to get global animation config
* refactor(utils): remove getElementsBBox, and extend union to getCombinedBBox