├── .nojekyll
├── .nvmrc
├── docs
├── .nojekyll
├── zh
│ ├── README.md
│ ├── guide
│ │ ├── basic
│ │ │ ├── dsl.md
│ │ │ └── redoundo.md
│ │ └── extension
│ │ │ └── extension-components.md
│ ├── usage
│ │ ├── _sidebar.md
│ │ └── bpmn.md
│ ├── assets
│ │ └── images
│ │ │ ├── core.png
│ │ │ ├── tool.png
│ │ │ ├── control.png
│ │ │ ├── overlay.png
│ │ │ ├── background.png
│ │ │ ├── node-menu.png
│ │ │ ├── start_02.png
│ │ │ ├── text-edit.png
│ │ │ ├── LogicFlow-2.png
│ │ │ ├── controlTool.png
│ │ │ ├── custom-node.png
│ │ │ ├── resize-node.png
│ │ │ ├── LogicFlow-1.0-4.png
│ │ │ ├── logicFlow-1.0-3.png
│ │ │ ├── logicflow-1.0-2.png
│ │ │ ├── custom-edge-model.png
│ │ │ ├── custom-node-model.png
│ │ │ └── nodeApi
│ │ │ └── node-rect.png
│ ├── release
│ │ └── _sidebar.md
│ ├── version-info
│ │ ├── 0.6.0.md
│ │ └── 0.4.0.md
│ ├── article
│ │ ├── _sidebar.md
│ │ └── LogicFlow替换bpmn-js实践.md
│ └── api
│ │ └── _sidebar.md
├── en
│ ├── README.md
│ ├── guide
│ │ ├── basic
│ │ │ ├── dsl.md
│ │ │ └── redoundo.md
│ │ └── extension
│ │ │ └── extension-components.md
│ ├── _sidebar.md
│ ├── usage
│ │ ├── _sidebar.md
│ │ └── bpmn.md
│ ├── assets
│ │ └── images
│ │ │ ├── core.png
│ │ │ ├── tool.png
│ │ │ ├── control.png
│ │ │ ├── overlay.png
│ │ │ ├── background.png
│ │ │ ├── node-menu.png
│ │ │ ├── start_02.png
│ │ │ ├── text-edit.png
│ │ │ ├── LogicFlow-2.png
│ │ │ ├── controlTool.png
│ │ │ ├── custom-node.png
│ │ │ ├── resize-node.png
│ │ │ ├── LogicFlow-1.0-4.png
│ │ │ ├── logicFlow-1.0-3.png
│ │ │ ├── logicflow-1.0-2.png
│ │ │ ├── custom-edge-model.png
│ │ │ ├── custom-node-model.png
│ │ │ └── nodeApi
│ │ │ └── node-rect.png
│ ├── release
│ │ └── _sidebar.md
│ ├── version-info
│ │ ├── 0.6.0.md
│ │ └── 0.4.0.md
│ ├── version-info copy
│ │ ├── 0.6.0.md
│ │ └── 0.4.0.md
│ ├── article
│ │ ├── _sidebar.md
│ │ └── LogicFlow替换bpmn-js实践.md
│ └── api
│ │ └── _sidebar.md
├── README.md
├── .DS_Store
├── _images
│ ├── line.png
│ ├── logo.png
│ ├── apply.png
│ ├── arrow.png
│ ├── expand.png
│ ├── find_path.png
│ ├── points1.png
│ ├── points2.png
│ ├── points3.png
│ ├── points4.png
│ ├── points5.png
│ ├── structure.png
│ ├── adjustment.png
│ ├── custom_line.png
│ ├── custom_node.png
│ ├── bpmn_extension.png
│ ├── cubic_bezier.png
│ ├── line_clickable.png
│ ├── line_selected.png
│ ├── orth_polyline.png
│ ├── bezier_clickable.png
│ ├── bezier_selected.png
│ ├── horizontal-logo.png
│ ├── polyline_clickable.png
│ ├── polyline_selected.png
│ └── adjust_controll_points.png
├── style
│ └── loading.webp
├── fonts
│ ├── fontawesome-webfont.woff2
│ ├── 6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7lujVj9w.woff2
│ └── 6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdu3cOWxw.woff2
└── package.json
├── CNAME
├── examples
├── .env.development
├── .env.production
├── .vscode
│ └── extensions.json
├── dist
│ └── logo.png
├── public
│ ├── logo.png
│ └── no_pic.png
├── README.md
├── src
│ ├── screenshots
│ │ ├── pool.png
│ │ ├── vue.png
│ │ ├── example.png
│ │ ├── vue-1-2.png
│ │ ├── vue-1-3.png
│ │ ├── vue-2-1.png
│ │ ├── vue-2-2.png
│ │ ├── vue-2-3.png
│ │ ├── vue-3-1.png
│ │ ├── vue-3-2.png
│ │ ├── vue-3-3.png
│ │ ├── BPMN-Demo.png
│ │ ├── bpmn-vue.png
│ │ ├── html-card.png
│ │ ├── organizer.png
│ │ ├── angular-demo.png
│ │ ├── custom-node.png
│ │ ├── custom-style.png
│ │ ├── mind-mapping.png
│ │ ├── organization.png
│ │ ├── html-card-1-2.png
│ │ ├── html-card-1-3.png
│ │ ├── html-card-2-1.png
│ │ ├── html-card-2-2.png
│ │ ├── html-card-2-3.png
│ │ ├── html-card-3-1.png
│ │ ├── html-card-3-2.png
│ │ ├── html-card-3-3.png
│ │ ├── logicflow-mvp.png
│ │ ├── bpmn-and-engine.png
│ │ ├── custom-edge-arrow.png
│ │ ├── custom-edge-rules.png
│ │ ├── custom-edge-style.png
│ │ ├── custom-edge-type.png
│ │ ├── custom-html-node.png
│ │ ├── custom-node-1-2.png
│ │ ├── custom-node-1-3.png
│ │ ├── custom-node-2-1.png
│ │ ├── custom-node-2-2.png
│ │ ├── custom-node-2-3.png
│ │ ├── custom-node-3-1.png
│ │ ├── custom-node-3-2.png
│ │ ├── custom-node-3-3.png
│ │ ├── custom-node-style.png
│ │ ├── custom-react-node.png
│ │ ├── custom-svg-node.png
│ │ ├── custom-vue-node.png
│ │ ├── logicflow-vue-demo.png
│ │ ├── bpmn-boundary-events.png
│ │ ├── logicflow-approve-demo.png
│ │ ├── logicflow-draft-demo.png
│ │ ├── logicflow-node-red-vue3.png
│ │ ├── logicflow-promotion-demo.png
│ │ └── mindmap-and-one-click-beautification.png
│ ├── assets
│ │ ├── icon
│ │ │ ├── gallery.png
│ │ │ ├── arrow-down.png
│ │ │ ├── arrow-right.png
│ │ │ └── horizontal-logo.png
│ │ └── vue.svg
│ ├── static
│ │ └── playground-elements
│ │ │ ├── images
│ │ │ ├── ie.png
│ │ │ ├── edge.png
│ │ │ ├── chrome.png
│ │ │ ├── firefox.png
│ │ │ ├── preview.png
│ │ │ ├── safari.png
│ │ │ ├── red-cross.png
│ │ │ ├── typescript.png
│ │ │ ├── check-green.png
│ │ │ ├── fold-example.png
│ │ │ ├── hide-example.png
│ │ │ ├── colors
│ │ │ │ ├── 000000.png
│ │ │ │ ├── 0000CC.png
│ │ │ │ ├── 0000FF.png
│ │ │ │ ├── 0055AA.png
│ │ │ │ ├── 008855.png
│ │ │ │ ├── 116644.png
│ │ │ │ ├── 117700.png
│ │ │ │ ├── 221199.png
│ │ │ │ ├── 3300AA.png
│ │ │ │ ├── 444444.png
│ │ │ │ ├── 555555.png
│ │ │ │ ├── 6200EE.png
│ │ │ │ ├── 767676.png
│ │ │ │ ├── 770088.png
│ │ │ │ ├── AA1111.png
│ │ │ │ ├── AA5500.png
│ │ │ │ ├── D7D4F0.png
│ │ │ │ ├── DDDDDD.png
│ │ │ │ ├── EAEAEA.png
│ │ │ │ ├── FF5500.png
│ │ │ │ └── FFFFFF.png
│ │ │ └── custom-layout.png
│ │ │ ├── themes
│ │ │ ├── mbo.css.d.ts
│ │ │ ├── neo.css.d.ts
│ │ │ ├── abbott.css.d.ts
│ │ │ ├── abcdef.css.d.ts
│ │ │ ├── bespin.css.d.ts
│ │ │ ├── cobalt.css.d.ts
│ │ │ ├── idea.css.d.ts
│ │ │ ├── juejin.css.d.ts
│ │ │ ├── moxer.css.d.ts
│ │ │ ├── neat.css.d.ts
│ │ │ ├── night.css.d.ts
│ │ │ ├── nord.css.d.ts
│ │ │ ├── seti.css.d.ts
│ │ │ ├── ssms.css.d.ts
│ │ │ ├── ttcn.css.d.ts
│ │ │ ├── yeti.css.d.ts
│ │ │ ├── yonce.css.d.ts
│ │ │ ├── 3024-day.css.d.ts
│ │ │ ├── ambiance.css.d.ts
│ │ │ ├── ayu-dark.css.d.ts
│ │ │ ├── darcula.css.d.ts
│ │ │ ├── dracula.css.d.ts
│ │ │ ├── eclipse.css.d.ts
│ │ │ ├── elegant.css.d.ts
│ │ │ ├── icecoder.css.d.ts
│ │ │ ├── isotope.css.d.ts
│ │ │ ├── lucario.css.d.ts
│ │ │ ├── material.css.d.ts
│ │ │ ├── mdn-like.css.d.ts
│ │ │ ├── midnight.css.d.ts
│ │ │ ├── monokai.css.d.ts
│ │ │ ├── rubyblue.css.d.ts
│ │ │ ├── twilight.css.d.ts
│ │ │ ├── xq-dark.css.d.ts
│ │ │ ├── xq-light.css.d.ts
│ │ │ ├── zenburn.css.d.ts
│ │ │ ├── 3024-night.css.d.ts
│ │ │ ├── ayu-mirage.css.d.ts
│ │ │ ├── base16-dark.css.d.ts
│ │ │ ├── blackboard.css.d.ts
│ │ │ ├── colorforth.css.d.ts
│ │ │ ├── erlang-dark.css.d.ts
│ │ │ ├── hopscotch.css.d.ts
│ │ │ ├── lesser-dark.css.d.ts
│ │ │ ├── liquibyte.css.d.ts
│ │ │ ├── railscasts.css.d.ts
│ │ │ ├── shadowfox.css.d.ts
│ │ │ ├── solarized.css.d.ts
│ │ │ ├── the-matrix.css.d.ts
│ │ │ ├── vibrant-ink.css.d.ts
│ │ │ ├── base16-light.css.d.ts
│ │ │ ├── duotone-dark.css.d.ts
│ │ │ ├── duotone-light.css.d.ts
│ │ │ ├── gruvbox-dark.css.d.ts
│ │ │ ├── oceanic-next.css.d.ts
│ │ │ ├── panda-syntax.css.d.ts
│ │ │ ├── paraiso-dark.css.d.ts
│ │ │ ├── paraiso-light.css.d.ts
│ │ │ ├── material-darker.css.d.ts
│ │ │ ├── material-ocean.css.d.ts
│ │ │ ├── pastel-on-dark.css.d.ts
│ │ │ ├── material-palenight.css.d.ts
│ │ │ ├── tomorrow-night-bright.css.d.ts
│ │ │ ├── tomorrow-night-eighties.css.d.ts
│ │ │ ├── idea.css.d.ts.map
│ │ │ ├── mbo.css.d.ts.map
│ │ │ ├── neat.css.d.ts.map
│ │ │ ├── neo.css.d.ts.map
│ │ │ ├── nord.css.d.ts.map
│ │ │ ├── seti.css.d.ts.map
│ │ │ ├── ssms.css.d.ts.map
│ │ │ ├── ttcn.css.d.ts.map
│ │ │ ├── yeti.css.d.ts.map
│ │ │ ├── abbott.css.d.ts.map
│ │ │ ├── abcdef.css.d.ts.map
│ │ │ ├── bespin.css.d.ts.map
│ │ │ ├── cobalt.css.d.ts.map
│ │ │ ├── juejin.css.d.ts.map
│ │ │ ├── moxer.css.d.ts.map
│ │ │ ├── night.css.d.ts.map
│ │ │ ├── yonce.css.d.ts.map
│ │ │ ├── darcula.css.d.ts.map
│ │ │ ├── dracula.css.d.ts.map
│ │ │ ├── eclipse.css.d.ts.map
│ │ │ ├── elegant.css.d.ts.map
│ │ │ ├── isotope.css.d.ts.map
│ │ │ ├── lucario.css.d.ts.map
│ │ │ ├── monokai.css.d.ts.map
│ │ │ ├── xq-dark.css.d.ts.map
│ │ │ ├── zenburn.css.d.ts.map
│ │ │ ├── 3024-day.css.d.ts.map
│ │ │ ├── ambiance.css.d.ts.map
│ │ │ ├── ayu-dark.css.d.ts.map
│ │ │ ├── hopscotch.css.d.ts.map
│ │ │ ├── icecoder.css.d.ts.map
│ │ │ ├── liquibyte.css.d.ts.map
│ │ │ ├── material.css.d.ts.map
│ │ │ ├── mdn-like.css.d.ts.map
│ │ │ ├── midnight.css.d.ts.map
│ │ │ ├── rubyblue.css.d.ts.map
│ │ │ ├── shadowfox.css.d.ts.map
│ │ │ ├── solarized.css.d.ts.map
│ │ │ ├── twilight.css.d.ts.map
│ │ │ ├── xq-light.css.d.ts.map
│ │ │ ├── 3024-night.css.d.ts.map
│ │ │ ├── ayu-mirage.css.d.ts.map
│ │ │ ├── base16-dark.css.d.ts.map
│ │ │ ├── blackboard.css.d.ts.map
│ │ │ ├── colorforth.css.d.ts.map
│ │ │ ├── erlang-dark.css.d.ts.map
│ │ │ ├── lesser-dark.css.d.ts.map
│ │ │ ├── railscasts.css.d.ts.map
│ │ │ ├── the-matrix.css.d.ts.map
│ │ │ ├── vibrant-ink.css.d.ts.map
│ │ │ ├── base16-light.css.d.ts.map
│ │ │ ├── duotone-dark.css.d.ts.map
│ │ │ ├── gruvbox-dark.css.d.ts.map
│ │ │ ├── oceanic-next.css.d.ts.map
│ │ │ ├── panda-syntax.css.d.ts.map
│ │ │ ├── paraiso-dark.css.d.ts.map
│ │ │ ├── duotone-light.css.d.ts.map
│ │ │ ├── material-ocean.css.d.ts.map
│ │ │ ├── paraiso-light.css.d.ts.map
│ │ │ ├── pastel-on-dark.css.d.ts.map
│ │ │ ├── material-darker.css.d.ts.map
│ │ │ ├── material-palenight.css.d.ts.map
│ │ │ ├── tomorrow-night-bright.css.d.ts.map
│ │ │ ├── tomorrow-night-eighties.css.d.ts.map
│ │ │ ├── ttcn.css
│ │ │ ├── eclipse.css
│ │ │ ├── ttcn.css.js
│ │ │ └── eclipse.css.js
│ │ │ ├── index.d.ts.map
│ │ │ ├── index.js
│ │ │ ├── playground-styles.d.ts
│ │ │ ├── index.d.ts
│ │ │ ├── shared
│ │ │ ├── version.d.ts.map
│ │ │ ├── version.d.ts
│ │ │ ├── version.js
│ │ │ ├── deferred.d.ts.map
│ │ │ ├── deferred.d.ts
│ │ │ ├── util.d.ts.map
│ │ │ └── deferred.js
│ │ │ ├── playground-styles.d.ts.map
│ │ │ ├── internal
│ │ │ ├── overlay.d.ts.map
│ │ │ ├── codemirror.d.ts.map
│ │ │ ├── codemirror.js
│ │ │ ├── tab.d.ts.map
│ │ │ └── overlay.d.ts
│ │ │ └── playground-connected-element.d.ts.map
│ ├── components
│ │ └── SideBarTransition
│ │ │ └── utils.js
│ ├── main.js
│ ├── views
│ │ └── Playground
│ │ │ └── style.scss
│ ├── utils
│ │ └── index.js
│ └── router
│ │ └── index.js
├── examples
│ ├── 节点
│ │ └── custom-node
│ │ │ ├── config.json
│ │ │ ├── custom-html-node
│ │ │ ├── style.css
│ │ │ └── index.html
│ │ │ ├── custom-vue-node
│ │ │ └── style.css
│ │ │ ├── custom-react-node
│ │ │ └── style.css
│ │ │ └── custom-svg-node
│ │ │ └── index.html
│ ├── 边
│ │ └── custom-edge
│ │ │ ├── config.json
│ │ │ ├── custom-edge-arrow
│ │ │ └── style.css
│ │ │ ├── custom-edge-type
│ │ │ └── index.html
│ │ │ └── custom-edge-rules
│ │ │ └── index.html
│ └── 案例
│ │ ├── demo
│ │ └── html-card
│ │ │ ├── cardLine.js
│ │ │ └── index.html
│ │ └── business-scenario
│ │ └── mind-mapping
│ │ └── htmlEdge.js
├── .gitignore
└── scripts
│ ├── rollup-plugin-playground
│ └── playground-json-plugin.mjs
│ └── rollup-plugin-config
│ └── rollup-plugin-config-json.js
├── demo
├── .DS_Store
├── bpmn-and-engine
│ ├── src
│ │ ├── vite-env.d.ts
│ │ ├── main.ts
│ │ ├── icons
│ │ │ ├── bpmn-icon-association.svg
│ │ │ ├── flow-control-play.svg
│ │ │ ├── flow-control-pause.svg
│ │ │ ├── bpmn-icon-lane.svg
│ │ │ ├── bpmn-entry.svg
│ │ │ ├── flow-control-stop.svg
│ │ │ ├── bpmn-icon-data-input-output-association.svg
│ │ │ ├── bpmn-icon-participant.svg
│ │ │ ├── bpmn-icon-connection.svg
│ │ │ ├── flow-control-refresh.svg
│ │ │ └── bpmn-icon-task-none.svg
│ │ ├── engine
│ │ │ └── nodes
│ │ │ │ ├── end.ts
│ │ │ │ ├── gateway.ts
│ │ │ │ └── task.ts
│ │ ├── components
│ │ │ ├── Panels
│ │ │ │ ├── index.ts
│ │ │ │ └── components
│ │ │ │ │ └── index.ts
│ │ │ └── Tools.vue
│ │ ├── App.vue
│ │ └── assets
│ │ │ └── vue.svg
│ ├── .vscode
│ │ └── extensions.json
│ ├── tsconfig.node.json
│ └── .gitignore
├── bpmn-vue
│ ├── src
│ │ ├── style.css
│ │ ├── vite-env.d.ts
│ │ ├── plugin
│ │ │ └── bpmn-elements
│ │ │ │ ├── presets
│ │ │ │ ├── Flow
│ │ │ │ │ ├── flow.d.ts
│ │ │ │ │ └── index.ts
│ │ │ │ └── Gateway
│ │ │ │ │ └── index.ts
│ │ │ │ └── index.d.ts
│ │ ├── icons
│ │ │ ├── bpmn-icon-association.svg
│ │ │ ├── bpmn-icon-lane.svg
│ │ │ ├── bpmn-icon-data-input-output-association.svg
│ │ │ ├── bpmn-icon-participant.svg
│ │ │ ├── bpmn-icon-connection.svg
│ │ │ └── bpmn-icon-task-none.svg
│ │ ├── main.ts
│ │ ├── components
│ │ │ └── panels
│ │ │ │ ├── index.ts
│ │ │ │ └── components
│ │ │ │ └── index.ts
│ │ ├── assets
│ │ │ └── vue.svg
│ │ ├── App.vue
│ │ └── data.d.ts
│ ├── .vscode
│ │ └── extensions.json
│ ├── tsconfig.node.json
│ └── .gitignore
├── examples
│ ├── src
│ │ ├── pages
│ │ │ ├── start
│ │ │ │ └── index.css
│ │ │ ├── basic
│ │ │ │ ├── dnd
│ │ │ │ │ └── index.css
│ │ │ │ ├── keyboard
│ │ │ │ │ └── index.css
│ │ │ │ └── grid
│ │ │ │ │ └── index.css
│ │ │ ├── extension
│ │ │ │ ├── components
│ │ │ │ │ ├── mini-map
│ │ │ │ │ │ └── index.css
│ │ │ │ │ ├── custom-dnd
│ │ │ │ │ │ ├── Dnd.tsx
│ │ │ │ │ │ └── index.tsx
│ │ │ │ │ └── menu
│ │ │ │ │ │ └── CustomCircle.ts
│ │ │ │ ├── adapter
│ │ │ │ │ └── index.css
│ │ │ │ └── InserNodeInPolyline
│ │ │ │ │ └── index.css
│ │ │ ├── usage
│ │ │ │ ├── bpmn
│ │ │ │ │ └── img
│ │ │ │ │ │ ├── img.png
│ │ │ │ │ │ ├── download.png
│ │ │ │ │ │ └── upload.png
│ │ │ │ ├── approvePreview
│ │ │ │ │ ├── index.css
│ │ │ │ │ └── type.ts
│ │ │ │ └── approve
│ │ │ │ │ └── type.ts
│ │ │ └── advance
│ │ │ │ ├── custom-node
│ │ │ │ ├── anchor
│ │ │ │ │ └── circle.ts
│ │ │ │ └── triangle
│ │ │ │ │ └── triangleNode.ts
│ │ │ │ └── custom-edge
│ │ │ │ └── process.ts
│ │ ├── assets
│ │ │ └── iconfont
│ │ │ │ ├── iconfont.eot
│ │ │ │ ├── iconfont.ttf
│ │ │ │ ├── iconfont.woff
│ │ │ │ └── iconfont.woff2
│ │ ├── setupTests.ts
│ │ ├── App.test.tsx
│ │ ├── App.css
│ │ ├── index.css
│ │ ├── reportWebVitals.ts
│ │ └── components
│ │ │ └── example-header
│ │ │ └── style.css
│ ├── public
│ │ ├── robots.txt
│ │ ├── favicon.ico
│ │ ├── logo192.png
│ │ ├── logo512.png
│ │ └── manifest.json
│ ├── config
│ │ └── jest
│ │ │ └── cssTransform.js
│ ├── .gitignore
│ └── README.md
├── mvp
│ ├── public
│ │ ├── favicon.ico
│ │ └── index.html
│ ├── src
│ │ ├── assets
│ │ │ ├── circle.png
│ │ │ └── data
│ │ │ │ └── mvp.json
│ │ ├── components
│ │ │ ├── config.js
│ │ │ ├── node
│ │ │ │ ├── basic
│ │ │ │ │ ├── RectRadiusNode.js
│ │ │ │ │ ├── BaseNode.js
│ │ │ │ │ └── EllipseNode.js
│ │ │ │ ├── image
│ │ │ │ │ ├── Cloud.js
│ │ │ │ │ ├── Star.js
│ │ │ │ │ ├── User.js
│ │ │ │ │ └── Setting.js
│ │ │ │ └── icon
│ │ │ │ │ └── Message.js
│ │ │ └── icon
│ │ │ │ ├── Line.vue
│ │ │ │ ├── Minus.vue
│ │ │ │ ├── DownArrow.vue
│ │ │ │ ├── LeftArrow.vue
│ │ │ │ ├── RightArrow.vue
│ │ │ │ ├── Trapezoid.vue
│ │ │ │ ├── Pentagon.vue
│ │ │ │ ├── Triangle.vue
│ │ │ │ ├── Hexagon.vue
│ │ │ │ ├── UpArrow.vue
│ │ │ │ ├── Diamond.vue
│ │ │ │ ├── VerticalArrow.vue
│ │ │ │ ├── Cross.vue
│ │ │ │ ├── Septagon.vue
│ │ │ │ ├── HorizontalArrow.vue
│ │ │ │ ├── Heptagon.vue
│ │ │ │ ├── Ellipse.vue
│ │ │ │ ├── Parallelogram.vue
│ │ │ │ ├── Times.vue
│ │ │ │ ├── RectRadius.vue
│ │ │ │ ├── ColorText.vue
│ │ │ │ └── Rect.vue
│ │ ├── App.vue
│ │ └── main.js
│ ├── babel.config.js
│ ├── vue.config.js
│ ├── .gitignore
│ └── README.md
├── pool
│ ├── public
│ │ ├── favicon.ico
│ │ ├── logo192.png
│ │ ├── logo512.png
│ │ ├── robots.txt
│ │ └── manifest.json
│ ├── src
│ │ ├── node
│ │ │ └── index.js
│ │ ├── setupTests.js
│ │ ├── icon
│ │ │ └── nodes
│ │ │ │ └── FlowChartConfig.js
│ │ ├── index.less
│ │ ├── reportWebVitals.js
│ │ ├── index.js
│ │ └── DiagramSidebar.js
│ ├── config
│ │ ├── webpack
│ │ │ └── persistentCache
│ │ │ │ └── createEnvironmentHash.js
│ │ └── jest
│ │ │ ├── cssTransform.js
│ │ │ └── babelTransform.js
│ └── .gitignore
├── logicflow-node-red-vue3
│ ├── .vscode
│ │ └── extensions.json
│ ├── src
│ │ ├── components
│ │ │ ├── engine
│ │ │ │ └── index.js
│ │ │ └── node-red
│ │ │ │ ├── readme.md
│ │ │ │ ├── style.css
│ │ │ │ ├── FlowLink.js
│ │ │ │ └── util.js
│ │ ├── assets
│ │ │ └── logo.png
│ │ ├── style.css
│ │ ├── main.js
│ │ └── App.vue
│ ├── public
│ │ ├── favicon.ico
│ │ └── images
│ │ │ ├── start.svg
│ │ │ ├── switch.svg
│ │ │ ├── swap.svg
│ │ │ └── function.svg
│ ├── auto-imports.d.ts
│ ├── .gitignore
│ ├── README.md
│ ├── index.html
│ └── package.json
├── organizer
│ ├── public
│ │ └── favicon.ico
│ ├── babel.config.js
│ ├── vue.config.js
│ ├── src
│ │ ├── assets
│ │ │ └── logo.svg
│ │ ├── context
│ │ │ └── index.js
│ │ ├── main.js
│ │ ├── util
│ │ │ ├── index.js
│ │ │ ├── edge.js
│ │ │ ├── expression.js
│ │ │ ├── node.js
│ │ │ └── dataType.js
│ │ ├── tool
│ │ │ ├── pageTip
│ │ │ │ └── index.vue
│ │ │ └── popover
│ │ │ │ └── popoverContent.vue
│ │ └── icon
│ │ │ ├── plusIcon.vue
│ │ │ └── filterIcon.vue
│ ├── .gitignore
│ ├── README.md
│ └── jsconfig.json
├── demo-b
│ └── package.json
└── demo-a
│ └── package.json
├── index.html
├── .vscode
└── settings.json
├── .gitignore
├── lerna.json
└── remove.sh
/.nojekyll:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/.nvmrc:
--------------------------------------------------------------------------------
1 | 14
2 |
--------------------------------------------------------------------------------
/docs/.nojekyll:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/zh/README.md:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/CNAME:
--------------------------------------------------------------------------------
1 | site.logic-flow.cn
--------------------------------------------------------------------------------
/docs/en/README.md:
--------------------------------------------------------------------------------
1 | english
--------------------------------------------------------------------------------
/docs/en/guide/basic/dsl.md:
--------------------------------------------------------------------------------
1 | # LogicFlow的DSL
2 |
3 |
--------------------------------------------------------------------------------
/docs/zh/guide/basic/dsl.md:
--------------------------------------------------------------------------------
1 | # LogicFlow的DSL
2 |
3 |
--------------------------------------------------------------------------------
/docs/README.md:
--------------------------------------------------------------------------------
1 | # Headline
2 |
3 | >A An awesome project.
4 |
--------------------------------------------------------------------------------
/examples/.env.development:
--------------------------------------------------------------------------------
1 | # .env.development
2 | NODE_ENV=development
--------------------------------------------------------------------------------
/examples/.env.production:
--------------------------------------------------------------------------------
1 | # .env.production
2 | NODE_ENV=production
--------------------------------------------------------------------------------
/docs/en/_sidebar.md:
--------------------------------------------------------------------------------
1 | - [Summary](en/README)
2 | - [Summary](en/README)
3 |
--------------------------------------------------------------------------------
/demo/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/demo/.DS_Store
--------------------------------------------------------------------------------
/demo/bpmn-and-engine/src/vite-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 |
--------------------------------------------------------------------------------
/demo/bpmn-vue/src/style.css:
--------------------------------------------------------------------------------
1 | @import '@logicflow/core/dist/style/index.css';
2 |
--------------------------------------------------------------------------------
/docs/.DS_Store:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/.DS_Store
--------------------------------------------------------------------------------
/examples/.vscode/extensions.json:
--------------------------------------------------------------------------------
1 | {
2 | "recommendations": ["Vue.volar"]
3 | }
4 |
--------------------------------------------------------------------------------
/demo/examples/src/pages/start/index.css:
--------------------------------------------------------------------------------
1 | .start-example {
2 | overflow: hidden;
3 | }
--------------------------------------------------------------------------------
/docs/en/usage/_sidebar.md:
--------------------------------------------------------------------------------
1 | - [Approve](en/usage/approve)
2 | - [Bpmn](en/usage/bpmn)
3 |
--------------------------------------------------------------------------------
/docs/zh/usage/_sidebar.md:
--------------------------------------------------------------------------------
1 | - [Approve](zh/usage/approve)
2 | - [Bpmn](zh/usage/bpmn)
3 |
--------------------------------------------------------------------------------
/docs/_images/line.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/_images/line.png
--------------------------------------------------------------------------------
/docs/_images/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/_images/logo.png
--------------------------------------------------------------------------------
/docs/_images/apply.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/_images/apply.png
--------------------------------------------------------------------------------
/docs/_images/arrow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/_images/arrow.png
--------------------------------------------------------------------------------
/docs/_images/expand.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/_images/expand.png
--------------------------------------------------------------------------------
/docs/style/loading.webp:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/style/loading.webp
--------------------------------------------------------------------------------
/examples/dist/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/dist/logo.png
--------------------------------------------------------------------------------
/docs/_images/find_path.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/_images/find_path.png
--------------------------------------------------------------------------------
/docs/_images/points1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/_images/points1.png
--------------------------------------------------------------------------------
/docs/_images/points2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/_images/points2.png
--------------------------------------------------------------------------------
/docs/_images/points3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/_images/points3.png
--------------------------------------------------------------------------------
/docs/_images/points4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/_images/points4.png
--------------------------------------------------------------------------------
/docs/_images/points5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/_images/points5.png
--------------------------------------------------------------------------------
/docs/_images/structure.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/_images/structure.png
--------------------------------------------------------------------------------
/examples/public/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/public/logo.png
--------------------------------------------------------------------------------
/examples/public/no_pic.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/public/no_pic.png
--------------------------------------------------------------------------------
/demo/mvp/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/demo/mvp/public/favicon.ico
--------------------------------------------------------------------------------
/demo/pool/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/demo/pool/public/favicon.ico
--------------------------------------------------------------------------------
/demo/pool/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/demo/pool/public/logo192.png
--------------------------------------------------------------------------------
/demo/pool/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/demo/pool/public/logo512.png
--------------------------------------------------------------------------------
/demo/pool/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/docs/_images/adjustment.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/_images/adjustment.png
--------------------------------------------------------------------------------
/docs/_images/custom_line.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/_images/custom_line.png
--------------------------------------------------------------------------------
/docs/_images/custom_node.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/_images/custom_node.png
--------------------------------------------------------------------------------
/demo/examples/public/robots.txt:
--------------------------------------------------------------------------------
1 | # https://www.robotstxt.org/robotstxt.html
2 | User-agent: *
3 | Disallow:
4 |
--------------------------------------------------------------------------------
/demo/logicflow-node-red-vue3/.vscode/extensions.json:
--------------------------------------------------------------------------------
1 | {
2 | "recommendations": ["johnsoncodehk.volar"]
3 | }
4 |
--------------------------------------------------------------------------------
/demo/mvp/src/assets/circle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/demo/mvp/src/assets/circle.png
--------------------------------------------------------------------------------
/docs/_images/bpmn_extension.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/_images/bpmn_extension.png
--------------------------------------------------------------------------------
/docs/_images/cubic_bezier.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/_images/cubic_bezier.png
--------------------------------------------------------------------------------
/docs/_images/line_clickable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/_images/line_clickable.png
--------------------------------------------------------------------------------
/docs/_images/line_selected.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/_images/line_selected.png
--------------------------------------------------------------------------------
/docs/_images/orth_polyline.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/_images/orth_polyline.png
--------------------------------------------------------------------------------
/docs/en/assets/images/core.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/en/assets/images/core.png
--------------------------------------------------------------------------------
/docs/en/assets/images/tool.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/en/assets/images/tool.png
--------------------------------------------------------------------------------
/docs/zh/assets/images/core.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/zh/assets/images/core.png
--------------------------------------------------------------------------------
/docs/zh/assets/images/tool.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/zh/assets/images/tool.png
--------------------------------------------------------------------------------
/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/.vscode/settings.json:
--------------------------------------------------------------------------------
1 | {
2 | "files.associations": {
3 | "*.ttml": "xml",
4 | "*.ttss": "css"
5 | }
6 | }
--------------------------------------------------------------------------------
/demo/examples/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/demo/examples/public/favicon.ico
--------------------------------------------------------------------------------
/demo/examples/public/logo192.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/demo/examples/public/logo192.png
--------------------------------------------------------------------------------
/demo/examples/public/logo512.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/demo/examples/public/logo512.png
--------------------------------------------------------------------------------
/demo/logicflow-node-red-vue3/src/components/engine/index.js:
--------------------------------------------------------------------------------
1 | class Engine {
2 | run() {}
3 | initFlow() {}
4 | }
--------------------------------------------------------------------------------
/demo/logicflow-node-red-vue3/src/components/node-red/readme.md:
--------------------------------------------------------------------------------
1 | # 说明
2 |
3 | 参考node-red样式,以logicflow插件的方式实现。
4 |
5 |
--------------------------------------------------------------------------------
/demo/mvp/babel.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | presets: [
3 | '@vue/cli-plugin-babel/preset'
4 | ]
5 | }
6 |
--------------------------------------------------------------------------------
/demo/organizer/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/demo/organizer/public/favicon.ico
--------------------------------------------------------------------------------
/docs/_images/bezier_clickable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/_images/bezier_clickable.png
--------------------------------------------------------------------------------
/docs/_images/bezier_selected.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/_images/bezier_selected.png
--------------------------------------------------------------------------------
/docs/_images/horizontal-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/_images/horizontal-logo.png
--------------------------------------------------------------------------------
/docs/en/assets/images/control.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/en/assets/images/control.png
--------------------------------------------------------------------------------
/docs/en/assets/images/overlay.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/en/assets/images/overlay.png
--------------------------------------------------------------------------------
/docs/zh/assets/images/control.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/zh/assets/images/control.png
--------------------------------------------------------------------------------
/docs/zh/assets/images/overlay.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/zh/assets/images/overlay.png
--------------------------------------------------------------------------------
/examples/README.md:
--------------------------------------------------------------------------------
1 | # logic-flow examples
2 |
3 | 初次启动项目请用npm或yarn 执行 `dev:screenshot` 命令,以启动项目并生成示例必要的截图
4 |
5 |
--------------------------------------------------------------------------------
/examples/src/screenshots/pool.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/pool.png
--------------------------------------------------------------------------------
/examples/src/screenshots/vue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/vue.png
--------------------------------------------------------------------------------
/demo/examples/src/pages/basic/dnd/index.css:
--------------------------------------------------------------------------------
1 | .dnd-example-container {
2 | position: relative;
3 | height: 100%;
4 | }
--------------------------------------------------------------------------------
/demo/examples/src/pages/extension/components/mini-map/index.css:
--------------------------------------------------------------------------------
1 | .lf-mini-map {
2 | right: 15px;
3 | top: 15px;
4 | }
--------------------------------------------------------------------------------
/docs/_images/polyline_clickable.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/_images/polyline_clickable.png
--------------------------------------------------------------------------------
/docs/_images/polyline_selected.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/_images/polyline_selected.png
--------------------------------------------------------------------------------
/docs/en/assets/images/background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/en/assets/images/background.png
--------------------------------------------------------------------------------
/docs/en/assets/images/node-menu.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/en/assets/images/node-menu.png
--------------------------------------------------------------------------------
/docs/en/assets/images/start_02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/en/assets/images/start_02.png
--------------------------------------------------------------------------------
/docs/en/assets/images/text-edit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/en/assets/images/text-edit.png
--------------------------------------------------------------------------------
/docs/fonts/fontawesome-webfont.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/fonts/fontawesome-webfont.woff2
--------------------------------------------------------------------------------
/docs/zh/assets/images/background.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/zh/assets/images/background.png
--------------------------------------------------------------------------------
/docs/zh/assets/images/node-menu.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/zh/assets/images/node-menu.png
--------------------------------------------------------------------------------
/docs/zh/assets/images/start_02.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/zh/assets/images/start_02.png
--------------------------------------------------------------------------------
/docs/zh/assets/images/text-edit.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/zh/assets/images/text-edit.png
--------------------------------------------------------------------------------
/examples/src/assets/icon/gallery.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/assets/icon/gallery.png
--------------------------------------------------------------------------------
/examples/src/screenshots/example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/example.png
--------------------------------------------------------------------------------
/examples/src/screenshots/vue-1-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/vue-1-2.png
--------------------------------------------------------------------------------
/examples/src/screenshots/vue-1-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/vue-1-3.png
--------------------------------------------------------------------------------
/examples/src/screenshots/vue-2-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/vue-2-1.png
--------------------------------------------------------------------------------
/examples/src/screenshots/vue-2-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/vue-2-2.png
--------------------------------------------------------------------------------
/examples/src/screenshots/vue-2-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/vue-2-3.png
--------------------------------------------------------------------------------
/examples/src/screenshots/vue-3-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/vue-3-1.png
--------------------------------------------------------------------------------
/examples/src/screenshots/vue-3-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/vue-3-2.png
--------------------------------------------------------------------------------
/examples/src/screenshots/vue-3-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/vue-3-3.png
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | demo/dist
3 | examples/dist
4 | demo/pool/dist
5 | demo/examples/dist
6 | .DS_Store
7 | deploy
8 |
--------------------------------------------------------------------------------
/demo/bpmn-vue/.vscode/extensions.json:
--------------------------------------------------------------------------------
1 | {
2 | "recommendations": ["Vue.volar", "Vue.vscode-typescript-vue-plugin"]
3 | }
4 |
--------------------------------------------------------------------------------
/demo/bpmn-vue/src/vite-env.d.ts:
--------------------------------------------------------------------------------
1 | ///
2 | type window = {
3 | [key: string]: any;
4 | };
5 |
--------------------------------------------------------------------------------
/docs/en/assets/images/LogicFlow-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/en/assets/images/LogicFlow-2.png
--------------------------------------------------------------------------------
/docs/en/assets/images/controlTool.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/en/assets/images/controlTool.png
--------------------------------------------------------------------------------
/docs/en/assets/images/custom-node.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/en/assets/images/custom-node.png
--------------------------------------------------------------------------------
/docs/en/assets/images/resize-node.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/en/assets/images/resize-node.png
--------------------------------------------------------------------------------
/docs/zh/assets/images/LogicFlow-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/zh/assets/images/LogicFlow-2.png
--------------------------------------------------------------------------------
/docs/zh/assets/images/controlTool.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/zh/assets/images/controlTool.png
--------------------------------------------------------------------------------
/docs/zh/assets/images/custom-node.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/zh/assets/images/custom-node.png
--------------------------------------------------------------------------------
/docs/zh/assets/images/resize-node.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/zh/assets/images/resize-node.png
--------------------------------------------------------------------------------
/examples/examples/节点/custom-node/config.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "自定义节点",
3 | "key": "custom-node",
4 | "examples": []
5 | }
6 |
--------------------------------------------------------------------------------
/examples/examples/边/custom-edge/config.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "自定义边",
3 | "key": "custom-edge",
4 | "examples": []
5 | }
6 |
--------------------------------------------------------------------------------
/examples/src/screenshots/BPMN-Demo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/BPMN-Demo.png
--------------------------------------------------------------------------------
/examples/src/screenshots/bpmn-vue.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/bpmn-vue.png
--------------------------------------------------------------------------------
/examples/src/screenshots/html-card.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/html-card.png
--------------------------------------------------------------------------------
/examples/src/screenshots/organizer.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/organizer.png
--------------------------------------------------------------------------------
/demo/bpmn-and-engine/.vscode/extensions.json:
--------------------------------------------------------------------------------
1 | {
2 | "recommendations": ["Vue.volar", "Vue.vscode-typescript-vue-plugin"]
3 | }
4 |
--------------------------------------------------------------------------------
/demo/mvp/vue.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | publicPath: process.env.NODE_ENV === 'production' ? '/demo/dist/mvp/' : '/',
3 | }
--------------------------------------------------------------------------------
/docs/_images/adjust_controll_points.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/_images/adjust_controll_points.png
--------------------------------------------------------------------------------
/docs/en/assets/images/LogicFlow-1.0-4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/en/assets/images/LogicFlow-1.0-4.png
--------------------------------------------------------------------------------
/docs/en/assets/images/logicFlow-1.0-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/en/assets/images/logicFlow-1.0-3.png
--------------------------------------------------------------------------------
/docs/en/assets/images/logicflow-1.0-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/en/assets/images/logicflow-1.0-2.png
--------------------------------------------------------------------------------
/docs/zh/assets/images/LogicFlow-1.0-4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/zh/assets/images/LogicFlow-1.0-4.png
--------------------------------------------------------------------------------
/docs/zh/assets/images/logicFlow-1.0-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/zh/assets/images/logicFlow-1.0-3.png
--------------------------------------------------------------------------------
/docs/zh/assets/images/logicflow-1.0-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/zh/assets/images/logicflow-1.0-2.png
--------------------------------------------------------------------------------
/examples/src/assets/icon/arrow-down.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/assets/icon/arrow-down.png
--------------------------------------------------------------------------------
/examples/src/assets/icon/arrow-right.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/assets/icon/arrow-right.png
--------------------------------------------------------------------------------
/examples/src/screenshots/angular-demo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/angular-demo.png
--------------------------------------------------------------------------------
/examples/src/screenshots/custom-node.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/custom-node.png
--------------------------------------------------------------------------------
/examples/src/screenshots/custom-style.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/custom-style.png
--------------------------------------------------------------------------------
/examples/src/screenshots/mind-mapping.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/mind-mapping.png
--------------------------------------------------------------------------------
/examples/src/screenshots/organization.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/organization.png
--------------------------------------------------------------------------------
/docs/en/assets/images/custom-edge-model.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/en/assets/images/custom-edge-model.png
--------------------------------------------------------------------------------
/docs/en/assets/images/custom-node-model.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/en/assets/images/custom-node-model.png
--------------------------------------------------------------------------------
/docs/en/assets/images/nodeApi/node-rect.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/en/assets/images/nodeApi/node-rect.png
--------------------------------------------------------------------------------
/docs/zh/assets/images/custom-edge-model.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/zh/assets/images/custom-edge-model.png
--------------------------------------------------------------------------------
/docs/zh/assets/images/custom-node-model.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/zh/assets/images/custom-node-model.png
--------------------------------------------------------------------------------
/docs/zh/assets/images/nodeApi/node-rect.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/zh/assets/images/nodeApi/node-rect.png
--------------------------------------------------------------------------------
/examples/src/screenshots/html-card-1-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/html-card-1-2.png
--------------------------------------------------------------------------------
/examples/src/screenshots/html-card-1-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/html-card-1-3.png
--------------------------------------------------------------------------------
/examples/src/screenshots/html-card-2-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/html-card-2-1.png
--------------------------------------------------------------------------------
/examples/src/screenshots/html-card-2-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/html-card-2-2.png
--------------------------------------------------------------------------------
/examples/src/screenshots/html-card-2-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/html-card-2-3.png
--------------------------------------------------------------------------------
/examples/src/screenshots/html-card-3-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/html-card-3-1.png
--------------------------------------------------------------------------------
/examples/src/screenshots/html-card-3-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/html-card-3-2.png
--------------------------------------------------------------------------------
/examples/src/screenshots/html-card-3-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/html-card-3-3.png
--------------------------------------------------------------------------------
/examples/src/screenshots/logicflow-mvp.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/logicflow-mvp.png
--------------------------------------------------------------------------------
/demo/examples/src/assets/iconfont/iconfont.eot:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/demo/examples/src/assets/iconfont/iconfont.eot
--------------------------------------------------------------------------------
/demo/examples/src/assets/iconfont/iconfont.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/demo/examples/src/assets/iconfont/iconfont.ttf
--------------------------------------------------------------------------------
/demo/examples/src/pages/usage/bpmn/img/img.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/demo/examples/src/pages/usage/bpmn/img/img.png
--------------------------------------------------------------------------------
/examples/src/assets/icon/horizontal-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/assets/icon/horizontal-logo.png
--------------------------------------------------------------------------------
/examples/src/screenshots/bpmn-and-engine.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/bpmn-and-engine.png
--------------------------------------------------------------------------------
/examples/src/screenshots/custom-edge-arrow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/custom-edge-arrow.png
--------------------------------------------------------------------------------
/examples/src/screenshots/custom-edge-rules.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/custom-edge-rules.png
--------------------------------------------------------------------------------
/examples/src/screenshots/custom-edge-style.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/custom-edge-style.png
--------------------------------------------------------------------------------
/examples/src/screenshots/custom-edge-type.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/custom-edge-type.png
--------------------------------------------------------------------------------
/examples/src/screenshots/custom-html-node.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/custom-html-node.png
--------------------------------------------------------------------------------
/examples/src/screenshots/custom-node-1-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/custom-node-1-2.png
--------------------------------------------------------------------------------
/examples/src/screenshots/custom-node-1-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/custom-node-1-3.png
--------------------------------------------------------------------------------
/examples/src/screenshots/custom-node-2-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/custom-node-2-1.png
--------------------------------------------------------------------------------
/examples/src/screenshots/custom-node-2-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/custom-node-2-2.png
--------------------------------------------------------------------------------
/examples/src/screenshots/custom-node-2-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/custom-node-2-3.png
--------------------------------------------------------------------------------
/examples/src/screenshots/custom-node-3-1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/custom-node-3-1.png
--------------------------------------------------------------------------------
/examples/src/screenshots/custom-node-3-2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/custom-node-3-2.png
--------------------------------------------------------------------------------
/examples/src/screenshots/custom-node-3-3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/custom-node-3-3.png
--------------------------------------------------------------------------------
/examples/src/screenshots/custom-node-style.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/custom-node-style.png
--------------------------------------------------------------------------------
/examples/src/screenshots/custom-react-node.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/custom-react-node.png
--------------------------------------------------------------------------------
/examples/src/screenshots/custom-svg-node.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/custom-svg-node.png
--------------------------------------------------------------------------------
/examples/src/screenshots/custom-vue-node.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/custom-vue-node.png
--------------------------------------------------------------------------------
/lerna.json:
--------------------------------------------------------------------------------
1 | {
2 | "$schema": "node_modules/lerna/schemas/lerna-schema.json",
3 | "useWorkspaces": true,
4 | "version": "0.0.0"
5 | }
6 |
--------------------------------------------------------------------------------
/demo/examples/src/assets/iconfont/iconfont.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/demo/examples/src/assets/iconfont/iconfont.woff
--------------------------------------------------------------------------------
/demo/examples/src/assets/iconfont/iconfont.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/demo/examples/src/assets/iconfont/iconfont.woff2
--------------------------------------------------------------------------------
/demo/logicflow-node-red-vue3/public/favicon.ico:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/demo/logicflow-node-red-vue3/public/favicon.ico
--------------------------------------------------------------------------------
/demo/logicflow-node-red-vue3/src/assets/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/demo/logicflow-node-red-vue3/src/assets/logo.png
--------------------------------------------------------------------------------
/examples/src/screenshots/logicflow-vue-demo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/logicflow-vue-demo.png
--------------------------------------------------------------------------------
/demo/examples/src/pages/usage/bpmn/img/download.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/demo/examples/src/pages/usage/bpmn/img/download.png
--------------------------------------------------------------------------------
/demo/examples/src/pages/usage/bpmn/img/upload.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/demo/examples/src/pages/usage/bpmn/img/upload.png
--------------------------------------------------------------------------------
/demo/mvp/src/assets/data/mvp.json:
--------------------------------------------------------------------------------
1 | {"nodes":[{"id":"cbaad213-4a09-4236-a90e-f466797828c0","type":"pro-rect","x":197,"y":99,"properties":{}}],"edges":[]}
--------------------------------------------------------------------------------
/examples/src/screenshots/bpmn-boundary-events.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/bpmn-boundary-events.png
--------------------------------------------------------------------------------
/examples/src/screenshots/logicflow-approve-demo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/logicflow-approve-demo.png
--------------------------------------------------------------------------------
/examples/src/screenshots/logicflow-draft-demo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/logicflow-draft-demo.png
--------------------------------------------------------------------------------
/examples/src/screenshots/logicflow-node-red-vue3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/logicflow-node-red-vue3.png
--------------------------------------------------------------------------------
/examples/src/screenshots/logicflow-promotion-demo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/logicflow-promotion-demo.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/ie.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/ie.png
--------------------------------------------------------------------------------
/docs/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7lujVj9w.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/fonts/6xK3dSBYKcSV-LCoeQqfX1RYOo3qOK7lujVj9w.woff2
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/edge.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/edge.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/chrome.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/chrome.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/firefox.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/firefox.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/preview.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/preview.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/safari.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/safari.png
--------------------------------------------------------------------------------
/demo/organizer/babel.config.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | presets: ["@vue/cli-plugin-babel/preset"],
3 | plugins: ["@babel/plugin-transform-private-methods"],
4 | };
5 |
--------------------------------------------------------------------------------
/docs/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdu3cOWxw.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/docs/fonts/6xKydSBYKcSV-LCoeQqfX1RYOo3ik4zwlxdu3cOWxw.woff2
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/red-cross.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/red-cross.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/typescript.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/typescript.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/mbo.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=mbo.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/neo.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=neo.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/check-green.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/check-green.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/fold-example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/fold-example.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/hide-example.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/hide-example.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/abbott.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=abbott.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/abcdef.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=abcdef.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/bespin.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=bespin.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/cobalt.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=cobalt.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/idea.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=idea.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/juejin.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=juejin.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/moxer.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=moxer.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/neat.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=neat.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/night.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=night.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/nord.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=nord.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/seti.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=seti.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/ssms.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=ssms.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/ttcn.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=ttcn.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/yeti.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=yeti.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/yonce.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=yonce.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/screenshots/mindmap-and-one-click-beautification.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/screenshots/mindmap-and-one-click-beautification.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/colors/000000.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/colors/000000.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/colors/0000CC.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/colors/0000CC.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/colors/0000FF.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/colors/0000FF.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/colors/0055AA.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/colors/0055AA.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/colors/008855.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/colors/008855.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/colors/116644.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/colors/116644.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/colors/117700.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/colors/117700.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/colors/221199.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/colors/221199.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/colors/3300AA.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/colors/3300AA.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/colors/444444.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/colors/444444.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/colors/555555.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/colors/555555.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/colors/6200EE.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/colors/6200EE.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/colors/767676.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/colors/767676.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/colors/770088.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/colors/770088.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/colors/AA1111.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/colors/AA1111.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/colors/AA5500.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/colors/AA5500.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/colors/D7D4F0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/colors/D7D4F0.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/colors/DDDDDD.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/colors/DDDDDD.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/colors/EAEAEA.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/colors/EAEAEA.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/colors/FF5500.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/colors/FF5500.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/colors/FFFFFF.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/colors/FFFFFF.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/images/custom-layout.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/Logic-Flow/docs/HEAD/examples/src/static/playground-elements/images/custom-layout.png
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/3024-day.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=3024-day.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/ambiance.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=ambiance.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/ayu-dark.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=ayu-dark.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/darcula.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=darcula.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/dracula.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=dracula.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/eclipse.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=eclipse.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/elegant.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=elegant.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/icecoder.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=icecoder.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/isotope.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=isotope.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/lucario.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=lucario.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/material.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=material.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/mdn-like.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=mdn-like.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/midnight.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=midnight.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/monokai.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=monokai.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/rubyblue.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=rubyblue.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/twilight.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=twilight.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/xq-dark.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=xq-dark.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/xq-light.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=xq-light.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/zenburn.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=zenburn.css.d.ts.map
--------------------------------------------------------------------------------
/demo/bpmn-vue/src/plugin/bpmn-elements/presets/Flow/flow.d.ts:
--------------------------------------------------------------------------------
1 | export type BBoxType = {
2 | minX: number;
3 | minY: number;
4 | maxX: number;
5 | maxY: number;
6 | }
7 |
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/3024-night.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=3024-night.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/ayu-mirage.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=ayu-mirage.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/base16-dark.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=base16-dark.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/blackboard.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=blackboard.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/colorforth.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=colorforth.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/erlang-dark.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=erlang-dark.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/hopscotch.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=hopscotch.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/lesser-dark.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=lesser-dark.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/liquibyte.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=liquibyte.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/railscasts.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=railscasts.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/shadowfox.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=shadowfox.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/solarized.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=solarized.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/the-matrix.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=the-matrix.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/vibrant-ink.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=vibrant-ink.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/index.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,cAAc,qBAAqB,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/base16-light.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=base16-light.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/duotone-dark.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=duotone-dark.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/duotone-light.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=duotone-light.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/gruvbox-dark.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=gruvbox-dark.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/oceanic-next.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=oceanic-next.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/panda-syntax.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=panda-syntax.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/paraiso-dark.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=paraiso-dark.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/paraiso-light.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=paraiso-light.css.d.ts.map
--------------------------------------------------------------------------------
/demo/logicflow-node-red-vue3/auto-imports.d.ts:
--------------------------------------------------------------------------------
1 | // Generated by 'unplugin-auto-import'
2 | // We suggest you to commit this file into source control
3 | declare global {
4 |
5 | }
6 | export {}
7 |
--------------------------------------------------------------------------------
/docs/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "docs",
3 | "version": "0.0.0",
4 | "description": "文档",
5 | "private": true,
6 | "scripts": {
7 | "serve": "docsify serve"
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/material-darker.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=material-darker.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/material-ocean.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=material-ocean.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/pastel-on-dark.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=pastel-on-dark.css.d.ts.map
--------------------------------------------------------------------------------
/demo/logicflow-node-red-vue3/src/style.css:
--------------------------------------------------------------------------------
1 | html, body {
2 | padding: 0;
3 | margin: 0;
4 | width: 100%;
5 | height: 100%;
6 | }
7 | #app {
8 | width: 100%;
9 | height: 100%;
10 | }
--------------------------------------------------------------------------------
/docs/zh/release/_sidebar.md:
--------------------------------------------------------------------------------
1 | * [**从1.1升级到1.2**](zh/release/1.2)
2 | * [**从1.0升级到1.1**](zh/release/1.1)
3 | * [**从0.7升级到1.0**](zh/release/1.0)
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @license
3 | * Copyright 2020 Google LLC
4 | * SPDX-License-Identifier: BSD-3-Clause
5 | */
6 | export * from './playground-ide.js';
7 |
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/playground-styles.d.ts:
--------------------------------------------------------------------------------
1 | declare const styles: import("lit").CSSResult;
2 | export { styles as default, styles };
3 | //# sourceMappingURL=playground-styles.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/material-palenight.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=material-palenight.css.d.ts.map
--------------------------------------------------------------------------------
/demo/bpmn-and-engine/src/main.ts:
--------------------------------------------------------------------------------
1 | import { createApp } from 'vue'
2 | import 'virtual:svg-icons-register';
3 | import './style.css'
4 | import App from './App.vue'
5 |
6 | createApp(App).mount('#app')
7 |
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/tomorrow-night-bright.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=tomorrow-night-bright.css.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/tomorrow-night-eighties.css.d.ts:
--------------------------------------------------------------------------------
1 | declare const style: import("lit").CSSResult;
2 | export default style;
3 | //# sourceMappingURL=tomorrow-night-eighties.css.d.ts.map
--------------------------------------------------------------------------------
/demo/logicflow-node-red-vue3/public/images/start.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/demo/examples/src/pages/basic/keyboard/index.css:
--------------------------------------------------------------------------------
1 | .keyboard-example-code {
2 | display: inline-block;
3 | background-color: rgb(233, 233, 233);
4 | padding: 2px 10px;
5 | margin-right: 14px;
6 | border-radius: 6px;
7 | }
--------------------------------------------------------------------------------
/remove.sh:
--------------------------------------------------------------------------------
1 | cd ./demo
2 | for file in ./*
3 | do
4 | if [ -d $file/dist ];then
5 | echo $file/dist
6 | mkdir -p ./dist/$file
7 | cp -rf $file/dist/* dist/$file/
8 | fi
9 | done
10 | cd -
--------------------------------------------------------------------------------
/demo/examples/src/pages/basic/grid/index.css:
--------------------------------------------------------------------------------
1 | .grid-example-button {
2 | margin-right: 10px;
3 | }
4 |
5 | .example-grid-visible {
6 | display: block;
7 | }
8 |
9 | .example-grid-hidden {
10 | display: none;
11 | }
--------------------------------------------------------------------------------
/demo/pool/src/node/index.js:
--------------------------------------------------------------------------------
1 |
2 | import PoolNode from './Pool'
3 | import LaneNode from './Lane'
4 |
5 | export const registerCustomElement = (lf) => {
6 | lf.register(PoolNode)
7 | lf.register(LaneNode)
8 | }
9 |
10 |
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/idea.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"idea.css.d.ts","sourceRoot":"","sources":["../src/themes/idea.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBAgBV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/mbo.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"mbo.css.d.ts","sourceRoot":"","sources":["../src/themes/mbo.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/neat.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"neat.css.d.ts","sourceRoot":"","sources":["../src/themes/neat.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBAiBV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/neo.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"neo.css.d.ts","sourceRoot":"","sources":["../src/themes/neo.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA2BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/nord.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"nord.css.d.ts","sourceRoot":"","sources":["../src/themes/nord.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/seti.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"seti.css.d.ts","sourceRoot":"","sources":["../src/themes/seti.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA4BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/ssms.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"ssms.css.d.ts","sourceRoot":"","sources":["../src/themes/ssms.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBAuBV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/ttcn.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"ttcn.css.d.ts","sourceRoot":"","sources":["../src/themes/ttcn.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBASV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/yeti.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"yeti.css.d.ts","sourceRoot":"","sources":["../src/themes/yeti.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA4BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/index.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @license
3 | * Copyright 2020 Google LLC
4 | * SPDX-License-Identifier: BSD-3-Clause
5 | */
6 | export * from './playground-ide.js';
7 | //# sourceMappingURL=index.d.ts.map
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/abbott.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"abbott.css.d.ts","sourceRoot":"","sources":["../src/themes/abbott.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/abcdef.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"abcdef.css.d.ts","sourceRoot":"","sources":["../src/themes/abcdef.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/bespin.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"bespin.css.d.ts","sourceRoot":"","sources":["../src/themes/bespin.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/cobalt.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"cobalt.css.d.ts","sourceRoot":"","sources":["../src/themes/cobalt.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/juejin.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"juejin.css.d.ts","sourceRoot":"","sources":["../src/themes/juejin.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBAmBV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/moxer.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"moxer.css.d.ts","sourceRoot":"","sources":["../src/themes/moxer.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/night.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"night.css.d.ts","sourceRoot":"","sources":["../src/themes/night.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/yonce.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"yonce.css.d.ts","sourceRoot":"","sources":["../src/themes/yonce.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/components/SideBarTransition/utils.js:
--------------------------------------------------------------------------------
1 | export function addClass(el, className) {
2 | el?.classList?.add(className);
3 | }
4 |
5 | export function removeClass(el, className) {
6 | el?.classList?.remove(className);
7 | }
8 |
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/darcula.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"darcula.css.d.ts","sourceRoot":"","sources":["../src/themes/darcula.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA4BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/dracula.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"dracula.css.d.ts","sourceRoot":"","sources":["../src/themes/dracula.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/eclipse.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"eclipse.css.d.ts","sourceRoot":"","sources":["../src/themes/eclipse.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBAUV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/elegant.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"elegant.css.d.ts","sourceRoot":"","sources":["../src/themes/elegant.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBAeV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/isotope.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"isotope.css.d.ts","sourceRoot":"","sources":["../src/themes/isotope.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/lucario.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"lucario.css.d.ts","sourceRoot":"","sources":["../src/themes/lucario.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/monokai.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"monokai.css.d.ts","sourceRoot":"","sources":["../src/themes/monokai.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/xq-dark.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"xq-dark.css.d.ts","sourceRoot":"","sources":["../src/themes/xq-dark.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA2BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/zenburn.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"zenburn.css.d.ts","sourceRoot":"","sources":["../src/themes/zenburn.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA2BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/3024-day.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"3024-day.css.d.ts","sourceRoot":"","sources":["../src/themes/3024-day.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA4BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/ambiance.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"ambiance.css.d.ts","sourceRoot":"","sources":["../src/themes/ambiance.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA8BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/ayu-dark.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"ayu-dark.css.d.ts","sourceRoot":"","sources":["../src/themes/ayu-dark.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/hopscotch.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"hopscotch.css.d.ts","sourceRoot":"","sources":["../src/themes/hopscotch.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/icecoder.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"icecoder.css.d.ts","sourceRoot":"","sources":["../src/themes/icecoder.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA2BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/liquibyte.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"liquibyte.css.d.ts","sourceRoot":"","sources":["../src/themes/liquibyte.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/material.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"material.css.d.ts","sourceRoot":"","sources":["../src/themes/material.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/mdn-like.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"mdn-like.css.d.ts","sourceRoot":"","sources":["../src/themes/mdn-like.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA4BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/midnight.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"midnight.css.d.ts","sourceRoot":"","sources":["../src/themes/midnight.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/rubyblue.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"rubyblue.css.d.ts","sourceRoot":"","sources":["../src/themes/rubyblue.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/shadowfox.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"shadowfox.css.d.ts","sourceRoot":"","sources":["../src/themes/shadowfox.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/solarized.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"solarized.css.d.ts","sourceRoot":"","sources":["../src/themes/solarized.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBAuBV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/twilight.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"twilight.css.d.ts","sourceRoot":"","sources":["../src/themes/twilight.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/xq-light.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"xq-light.css.d.ts","sourceRoot":"","sources":["../src/themes/xq-light.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBAiBV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/demo/organizer/vue.config.js:
--------------------------------------------------------------------------------
1 | const { defineConfig } = require('@vue/cli-service')
2 | module.exports = defineConfig({
3 | publicPath: process.env.NODE_ENV === 'production' ? '/demo/dist/organizer/' : '/',
4 | transpileDependencies: true
5 | })
6 |
--------------------------------------------------------------------------------
/docs/en/release/_sidebar.md:
--------------------------------------------------------------------------------
1 | - [**Upgrade from v1.1 to v1.2**](en/release/1.2)
2 | - [**Upgrade from v1.0 to v1.1**](en/release/1.1)
3 | - [**Upgrade from v0.7 to v1.0**](en/release/1.0)
4 |
--------------------------------------------------------------------------------
/examples/src/main.js:
--------------------------------------------------------------------------------
1 | import { createApp } from 'vue';
2 | import router from './router';
3 | import './static/playground-elements';
4 |
5 | import './style.css';
6 | import App from './App.vue';
7 |
8 | createApp(App).use(router).mount('#app');
9 |
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/shared/version.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/shared/version.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAMH,eAAO,MAAM,UAAU,WAAW,CAAC;AACnC,eAAO,MAAM,iBAAiB,aAAa,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/3024-night.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"3024-night.css.d.ts","sourceRoot":"","sources":["../src/themes/3024-night.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/ayu-mirage.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"ayu-mirage.css.d.ts","sourceRoot":"","sources":["../src/themes/ayu-mirage.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/base16-dark.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"base16-dark.css.d.ts","sourceRoot":"","sources":["../src/themes/base16-dark.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/blackboard.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"blackboard.css.d.ts","sourceRoot":"","sources":["../src/themes/blackboard.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/colorforth.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"colorforth.css.d.ts","sourceRoot":"","sources":["../src/themes/colorforth.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/erlang-dark.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"erlang-dark.css.d.ts","sourceRoot":"","sources":["../src/themes/erlang-dark.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/lesser-dark.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"lesser-dark.css.d.ts","sourceRoot":"","sources":["../src/themes/lesser-dark.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA2BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/railscasts.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"railscasts.css.d.ts","sourceRoot":"","sources":["../src/themes/railscasts.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/the-matrix.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"the-matrix.css.d.ts","sourceRoot":"","sources":["../src/themes/the-matrix.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA4BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/vibrant-ink.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"vibrant-ink.css.d.ts","sourceRoot":"","sources":["../src/themes/vibrant-ink.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/demo/examples/src/pages/extension/adapter/index.css:
--------------------------------------------------------------------------------
1 | .adpter-shape .lf-dnd-shape {
2 | display: inline-table;
3 | width: 36px;
4 | height: 36px;
5 | border: 2px solid black;
6 | }
7 | .adpter-circle .lf-dnd-shape {
8 | border-radius: 18px;
9 | }
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/base16-light.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"base16-light.css.d.ts","sourceRoot":"","sources":["../src/themes/base16-light.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/duotone-dark.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"duotone-dark.css.d.ts","sourceRoot":"","sources":["../src/themes/duotone-dark.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/gruvbox-dark.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"gruvbox-dark.css.d.ts","sourceRoot":"","sources":["../src/themes/gruvbox-dark.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/oceanic-next.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"oceanic-next.css.d.ts","sourceRoot":"","sources":["../src/themes/oceanic-next.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/panda-syntax.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"panda-syntax.css.d.ts","sourceRoot":"","sources":["../src/themes/panda-syntax.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/paraiso-dark.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"paraiso-dark.css.d.ts","sourceRoot":"","sources":["../src/themes/paraiso-dark.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/docs/en/usage/bpmn.md:
--------------------------------------------------------------------------------
1 | # BPMN
2 |
3 | 该示例绘制的图可以在 bpmn-js 官方 Demo 中正常使用。(此处仅实现了 BPMN 中的一部分节点)
4 |
5 |
6 |
7 | 源码地址:https://github.com/didi/LogicFlow/tree/master/examples/src/pages/usage/bpmn
8 |
--------------------------------------------------------------------------------
/docs/zh/usage/bpmn.md:
--------------------------------------------------------------------------------
1 | # BPMN
2 |
3 | 该示例绘制的图可以在 bpmn-js 官方 Demo 中正常使用。(此处仅实现了 BPMN 中的一部分节点)
4 |
5 |
6 |
7 | 源码地址:https://github.com/didi/LogicFlow/tree/master/examples/src/pages/usage/bpmn
8 |
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/duotone-light.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"duotone-light.css.d.ts","sourceRoot":"","sources":["../src/themes/duotone-light.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/material-ocean.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"material-ocean.css.d.ts","sourceRoot":"","sources":["../src/themes/material-ocean.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/paraiso-light.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"paraiso-light.css.d.ts","sourceRoot":"","sources":["../src/themes/paraiso-light.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/pastel-on-dark.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"pastel-on-dark.css.d.ts","sourceRoot":"","sources":["../src/themes/pastel-on-dark.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/examples/案例/demo/html-card/cardLine.js:
--------------------------------------------------------------------------------
1 | class CardLine extends BezierEdge {
2 |
3 | }
4 |
5 | class CardLineModel extends BezierEdgeModel {}
6 |
7 | export default {
8 | type: 'card-line',
9 | view: CardLine,
10 | model: CardLineModel,
11 | }
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/material-darker.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"material-darker.css.d.ts","sourceRoot":"","sources":["../src/themes/material-darker.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/playground-styles.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"playground-styles.d.ts","sourceRoot":"","sources":["src/playground-styles.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,MAAM,yBA+cX,CAAC;AAEF,OAAO,EAAE,MAAM,IAAI,OAAO,EAAE,MAAM,EAAE,CAAC"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/material-palenight.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"material-palenight.css.d.ts","sourceRoot":"","sources":["../src/themes/material-palenight.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/demo/demo-b/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "demo-b",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "index.js",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1"
8 | },
9 | "author": "",
10 | "license": "ISC"
11 | }
12 |
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/tomorrow-night-bright.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"tomorrow-night-bright.css.d.ts","sourceRoot":"","sources":["../src/themes/tomorrow-night-bright.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/demo/pool/src/setupTests.js:
--------------------------------------------------------------------------------
1 | // jest-dom adds custom jest matchers for asserting on DOM nodes.
2 | // allows you to do things like:
3 | // expect(element).toHaveTextContent(/react/i)
4 | // learn more: https://github.com/testing-library/jest-dom
5 | import '@testing-library/jest-dom';
6 |
--------------------------------------------------------------------------------
/demo/examples/src/setupTests.ts:
--------------------------------------------------------------------------------
1 | // jest-dom adds custom jest matchers for asserting on DOM nodes.
2 | // allows you to do things like:
3 | // expect(element).toHaveTextContent(/react/i)
4 | // learn more: https://github.com/testing-library/jest-dom
5 | import '@testing-library/jest-dom';
6 |
--------------------------------------------------------------------------------
/demo/logicflow-node-red-vue3/src/main.js:
--------------------------------------------------------------------------------
1 | import { createApp } from 'vue'
2 | // import ElementPlus from 'element-plus'
3 | import App from './App.vue'
4 | import './style.css'
5 |
6 |
7 | const app = createApp(App)
8 |
9 | // app.use(ElementPlus)
10 |
11 | app.mount('#app')
12 |
--------------------------------------------------------------------------------
/demo/pool/src/icon/nodes/FlowChartConfig.js:
--------------------------------------------------------------------------------
1 | export const x = 15
2 | export const y = 15
3 | export const width = 28
4 | export const height = 20
5 | export const style = {
6 | fill: "#ffffff",
7 | stroke: "#000000",
8 | strokeWidth: "1.3",
9 | pointerEvents: "all"
10 | }
11 |
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/tomorrow-night-eighties.css.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"tomorrow-night-eighties.css.d.ts","sourceRoot":"","sources":["../src/themes/tomorrow-night-eighties.css.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,KAAK,yBA6BV,CAAC;AACF,eAAe,KAAK,CAAC"}
--------------------------------------------------------------------------------
/demo/bpmn-vue/src/icons/bpmn-icon-association.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/demo/bpmn-vue/tsconfig.node.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "composite": true,
4 | "skipLibCheck": true,
5 | "module": "ESNext",
6 | "moduleResolution": "bundler",
7 | "allowSyntheticDefaultImports": true
8 | },
9 | "include": ["vite.config.ts"]
10 | }
11 |
--------------------------------------------------------------------------------
/demo/pool/config/webpack/persistentCache/createEnvironmentHash.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 | const { createHash } = require('crypto');
3 |
4 | module.exports = env => {
5 | const hash = createHash('md5');
6 | hash.update(JSON.stringify(env));
7 |
8 | return hash.digest('hex');
9 | };
10 |
--------------------------------------------------------------------------------
/docs/en/guide/basic/redoundo.md:
--------------------------------------------------------------------------------
1 | # 撤销/重做 Undo/Redo
2 |
3 | 对画布中的所有操作进行撤销和重做,可以通过内置的[控制栏工具](en/guide/extension/component-control)。在画布上展示撤销重做按钮,或者通过调用`LogicFlow`的 API 来实现。
4 |
5 | ```js
6 | const lf = new LogicFlow(config: Object)
7 | lf.undo() // 撤销一步
8 | lf.redo() // 向前一步
9 | ```
10 |
--------------------------------------------------------------------------------
/docs/zh/guide/basic/redoundo.md:
--------------------------------------------------------------------------------
1 | # 撤销/重做 Undo/Redo
2 |
3 | 对画布中的所有操作进行撤销和重做,可以通过内置的[控制栏工具](zh/guide/extension/component-control)。在画布上展示撤销重做按钮,或者通过调用`LogicFlow`的 API 来实现。
4 |
5 | ```js
6 | const lf = new LogicFlow(config: Object)
7 | lf.undo() // 撤销一步
8 | lf.redo() // 向前一步
9 | ```
10 |
--------------------------------------------------------------------------------
/demo/bpmn-and-engine/src/icons/bpmn-icon-association.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/demo/bpmn-and-engine/tsconfig.node.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "composite": true,
4 | "skipLibCheck": true,
5 | "module": "ESNext",
6 | "moduleResolution": "bundler",
7 | "allowSyntheticDefaultImports": true
8 | },
9 | "include": ["vite.config.ts"]
10 | }
11 |
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/shared/version.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @license
3 | * Copyright 2021 Google LLC
4 | * SPDX-License-Identifier: BSD-3-Clause
5 | */
6 | export declare const npmVersion = "0.16.3";
7 | export declare const serviceWorkerHash = "f56081d9";
8 | //# sourceMappingURL=version.d.ts.map
--------------------------------------------------------------------------------
/demo/bpmn-vue/src/plugin/bpmn-elements/presets/Flow/index.ts:
--------------------------------------------------------------------------------
1 | import LogicFlow from '@logicflow/core';
2 | import { sequenceFlowFactory } from './sequenceFlow';
3 |
4 | export const SequenceFlow = sequenceFlowFactory();
5 |
6 | export function registerFlows(lf: LogicFlow) {
7 | lf.register(SequenceFlow);
8 | }
9 |
--------------------------------------------------------------------------------
/demo/bpmn-vue/src/main.ts:
--------------------------------------------------------------------------------
1 | import { createApp } from 'vue';
2 | import './style.css';
3 | import 'virtual:svg-icons-register';
4 | import App from './App.vue';
5 | // import SvgIcon from './components/SvgIcon.vue';
6 |
7 | const app = createApp(App);
8 | app.mount('#app');
9 | // app.component('svg-icon', SvgIcon);
10 |
--------------------------------------------------------------------------------
/docs/en/version-info/0.6.0.md:
--------------------------------------------------------------------------------
1 | # 0.6.0
2 |
3 | ## API
4 |
5 | - [feat: 插件 DndPanel 支持默认文本](en/guide/extension/component-dnd-panel)
6 | [#255](https://github.com/didi/LogicFlow/issues/225)
7 | - [feat: 选区组件使用优化](en/guide/extension/component-selection)
8 |
9 | ## bugfix
10 |
11 | - fix: 解决 html 节点无法动态基于 properties 修改的问题
12 |
--------------------------------------------------------------------------------
/docs/zh/version-info/0.6.0.md:
--------------------------------------------------------------------------------
1 | # 0.6.0
2 |
3 | ## API
4 |
5 | - [feat: 插件 DndPanel 支持默认文本](zh/guide/extension/component-dnd-panel)
6 | [#255](https://github.com/didi/LogicFlow/issues/225)
7 | - [feat: 选区组件使用优化](zh/guide/extension/component-selection)
8 |
9 | ## bugfix
10 |
11 | - fix: 解决 html 节点无法动态基于 properties 修改的问题
12 |
--------------------------------------------------------------------------------
/demo/logicflow-node-red-vue3/src/App.vue:
--------------------------------------------------------------------------------
1 |
6 |
7 |
8 |
9 |
10 |
--------------------------------------------------------------------------------
/demo/organizer/src/assets/logo.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/docs/en/version-info copy/0.6.0.md:
--------------------------------------------------------------------------------
1 | # 0.6.0
2 |
3 | ## API
4 |
5 | - [feat: 插件 DndPanel 支持默认文本](en/guide/extension/component-dnd-panel)
6 | [#255](https://github.com/didi/LogicFlow/issues/225)
7 | - [feat: 选区组件使用优化](en/guide/extension/component-selection)
8 |
9 | ## bugfix
10 |
11 | - fix: 解决 html 节点无法动态基于 properties 修改的问题
12 |
--------------------------------------------------------------------------------
/demo/demo-a/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "demo-a",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "index.js",
6 | "scripts": {
7 | "test": "echo \"Error: no test specified\" && exit 1"
8 | },
9 | "author": "",
10 | "license": "ISC",
11 | "dependencies": {
12 | "lodash": "^4.17.21"
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/examples/examples/边/custom-edge/custom-edge-arrow/style.css:
--------------------------------------------------------------------------------
1 | .custom-node-style {
2 | position: absolute;
3 | top: 0;
4 | right: 0;
5 | width: 300px;
6 | font-size: 14px;
7 | margin: 20px;
8 | }
9 |
10 | .custom-node-style > div {
11 | margin-bottom: 10px;
12 | }
13 |
14 | .custom-node-fill {
15 | display: flex;
16 | }
--------------------------------------------------------------------------------
/demo/examples/src/App.test.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import { render, screen } from '@testing-library/react';
3 | import App from './App';
4 |
5 | test('renders learn react link', () => {
6 | render();
7 | const linkElement = screen.getByText(/learn react/i);
8 | expect(linkElement).toBeInTheDocument();
9 | });
10 |
--------------------------------------------------------------------------------
/demo/bpmn-and-engine/src/icons/flow-control-play.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/demo/logicflow-node-red-vue3/public/images/switch.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/demo/organizer/src/context/index.js:
--------------------------------------------------------------------------------
1 | import History from './history';
2 | import { EventEmitter } from './EventEmitter';
3 |
4 | export default class Context {
5 | constructor(options) {
6 | this.eventCenter = new EventEmitter();
7 | this.history = new History(); // 操作记录
8 |
9 | this.logicList = options.logicList;
10 | }
11 | }
--------------------------------------------------------------------------------
/demo/bpmn-and-engine/src/icons/flow-control-pause.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/demo/logicflow-node-red-vue3/public/images/swap.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/demo/mvp/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /dist
4 |
5 |
6 | # local env files
7 | .env.local
8 | .env.*.local
9 |
10 | # Log files
11 | npm-debug.log*
12 | yarn-debug.log*
13 | yarn-error.log*
14 | pnpm-debug.log*
15 |
16 | # Editor directories and files
17 | .idea
18 | .vscode
19 | *.suo
20 | *.ntvs*
21 | *.njsproj
22 | *.sln
23 | *.sw?
24 |
--------------------------------------------------------------------------------
/demo/bpmn-vue/src/icons/bpmn-icon-lane.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/demo/organizer/.gitignore:
--------------------------------------------------------------------------------
1 | .DS_Store
2 | node_modules
3 | /dist
4 |
5 |
6 | # local env files
7 | .env.local
8 | .env.*.local
9 |
10 | # Log files
11 | npm-debug.log*
12 | yarn-debug.log*
13 | yarn-error.log*
14 | pnpm-debug.log*
15 |
16 | # Editor directories and files
17 | .idea
18 | .vscode
19 | *.suo
20 | *.ntvs*
21 | *.njsproj
22 | *.sln
23 | *.sw?
24 |
--------------------------------------------------------------------------------
/demo/bpmn-and-engine/src/engine/nodes/end.ts:
--------------------------------------------------------------------------------
1 | import { TaskNode } from "@logicflow/engine";
2 |
3 | class End extends TaskNode {
4 | async action(params: {
5 | executionId: string;
6 | actionId: string;
7 | nodeId: string;
8 | data?: Record;
9 | }) {
10 | window.alert('执行结束')
11 | }
12 | }
13 |
14 | export default End;
15 |
--------------------------------------------------------------------------------
/demo/bpmn-and-engine/src/icons/bpmn-icon-lane.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/demo/examples/src/pages/extension/InserNodeInPolyline/index.css:
--------------------------------------------------------------------------------
1 | .circle .lf-dnd-shape {
2 | display: inline-block;
3 | width: 25px;
4 | height: 25px;
5 | border: 2px solid black;
6 | border-radius: 20px;
7 | }
8 | .rect .lf-dnd-shape {
9 | display: inline-block;
10 | width: 25px;
11 | height: 25px;
12 | border: 2px solid black;
13 | }
--------------------------------------------------------------------------------
/demo/mvp/src/components/config.js:
--------------------------------------------------------------------------------
1 | // 元素属性右侧面板默认属性
2 | export const defatuleStyle = {
3 | backgroundColor: '', // 填充色
4 | gradientColor: '', // 渐变色
5 | borderType: 0, // 边框类型
6 | borderColor: '', // 填充颜色
7 | borderWidth: 1, // 边框宽度
8 | borderStyle: '', // 边框类型
9 | fontSize: 12, // 文本大小
10 | fontColor: '', // 文本颜色
11 | fontWeight: '' // 文本加粗
12 | }
13 |
--------------------------------------------------------------------------------
/demo/mvp/src/components/node/basic/RectRadiusNode.js:
--------------------------------------------------------------------------------
1 | import RectNode from './RectNode'
2 |
3 | // 带圆角的矩形
4 | class RectRadiusModel extends RectNode.model {
5 | setAttributes () {
6 | super.setAttributes()
7 | this.radius = 20
8 | }
9 | }
10 | export default {
11 | type: 'rect-radius',
12 | view: RectNode.view,
13 | model: RectRadiusModel
14 | }
15 |
--------------------------------------------------------------------------------
/docs/zh/article/_sidebar.md:
--------------------------------------------------------------------------------
1 | * [**LogicFlow 的设计和架构**](zh/article/article01)
2 | * [**揭秘 LogicFlow 的拓展机制**](zh/article/article02)
3 | * [**LogicFlow 边的绘制与交互**](zh/article/article03)
4 | * [**LogicFlow 节点缩放**](zh/article/NodeResize)
5 | * [**LogicFlow发布1.0版本**](zh/article/LogicFlow发布1.0)
--------------------------------------------------------------------------------
/demo/bpmn-and-engine/src/icons/bpmn-entry.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/demo/organizer/README.md:
--------------------------------------------------------------------------------
1 | # organizer-demo
2 |
3 | ## Project setup
4 | ```
5 | yarn install
6 | ```
7 |
8 | ### Compiles and hot-reloads for development
9 | ```
10 | yarn serve
11 | ```
12 |
13 | ### Compiles and minifies for production
14 | ```
15 | yarn build
16 | ```
17 |
18 | ### Customize configuration
19 | See [Configuration Reference](https://cli.vuejs.org/config/).
20 |
--------------------------------------------------------------------------------
/demo/bpmn-and-engine/src/icons/flow-control-stop.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/demo/bpmn-vue/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | pnpm-debug.log*
8 | lerna-debug.log*
9 |
10 | node_modules
11 | dist
12 | dist-ssr
13 | *.local
14 |
15 | # Editor directories and files
16 | .vscode/*
17 | !.vscode/extensions.json
18 | .idea
19 | .DS_Store
20 | *.suo
21 | *.ntvs*
22 | *.njsproj
23 | *.sln
24 | *.sw?
25 |
--------------------------------------------------------------------------------
/demo/examples/src/pages/usage/approvePreview/index.css:
--------------------------------------------------------------------------------
1 | .approve-example-container {
2 | position: relative;
3 | height: 100%;
4 | }
5 | .approve-example-container .lf-control{
6 | position: fixed;
7 | top: 10px;
8 | left: calc(50vw - 150px);
9 | width: 275px;
10 | box-shadow: 0 0 10px #888888;
11 | }
12 | .hover-panel{
13 | position: absolute;
14 | z-index: 101;
15 | }
--------------------------------------------------------------------------------
/demo/mvp/src/components/node/image/Cloud.js:
--------------------------------------------------------------------------------
1 | import ImageNode from './ImageNode'
2 |
3 | // 云形状的图片节点
4 | class CloudNode extends ImageNode.view {
5 | getImageHref () {
6 | return 'https://dpubstatic.udache.com/static/dpubimg/0oqFX1nvbD/cloud.png';
7 | }
8 | }
9 |
10 |
11 | export default {
12 | type: 'image-cloud',
13 | view: CloudNode,
14 | model: ImageNode.model
15 | }
--------------------------------------------------------------------------------
/demo/mvp/src/components/node/image/Star.js:
--------------------------------------------------------------------------------
1 | import ImageNode from './ImageNode'
2 |
3 |
4 | // 图片-用户节点
5 | class UserNode extends ImageNode.view {
6 | getImageHref () {
7 | return 'https://dpubstatic.udache.com/static/dpubimg/-6Fd2uIoJ-/user.png';
8 | }
9 | }
10 |
11 |
12 | export default {
13 | type: 'image-user',
14 | view: UserNode,
15 | model: ImageNode.model
16 | }
--------------------------------------------------------------------------------
/demo/mvp/src/components/node/image/User.js:
--------------------------------------------------------------------------------
1 | import ImageNode from './ImageNode'
2 |
3 |
4 | // 图片-用户节点
5 | class UserNode extends ImageNode.view {
6 | getImageHref () {
7 | return 'https://dpubstatic.udache.com/static/dpubimg/-6Fd2uIoJ-/user.png';
8 | }
9 | }
10 |
11 |
12 | export default {
13 | type: 'image-user',
14 | view: UserNode,
15 | model: ImageNode.model
16 | }
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/internal/overlay.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"overlay.d.ts","sourceRoot":"","sources":["../src/internal/overlay.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAC,UAAU,EAAY,MAAM,KAAK,CAAC;AAG1C;;GAEG;AACH,qBACa,yBAA0B,SAAQ,UAAU;IACvD,OAAgB,MAAM,0BAwBpB;IAEO,MAAM;CAGhB;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,6BAA6B,EAAE,yBAAyB,CAAC;KAC1D;CACF"}
--------------------------------------------------------------------------------
/demo/mvp/src/components/node/basic/BaseNode.js:
--------------------------------------------------------------------------------
1 | import { BaseNode, BaseNodeModel } from '@logicflow/core'
2 |
3 | class BaseNewNode extends BaseNode {
4 | }
5 |
6 | class BaseNewModel extends BaseNodeModel {
7 | setAttributes () {
8 | this.fill = 'red'
9 | }
10 | }
11 |
12 | export default {
13 | type: 'BaseNode',
14 | view: BaseNewNode,
15 | model: BaseNewModel
16 | }
17 |
--------------------------------------------------------------------------------
/demo/organizer/jsconfig.json:
--------------------------------------------------------------------------------
1 | {
2 | "compilerOptions": {
3 | "target": "es5",
4 | "module": "esnext",
5 | "baseUrl": "./",
6 | "moduleResolution": "node",
7 | "paths": {
8 | "@/*": [
9 | "src/*"
10 | ]
11 | },
12 | "lib": [
13 | "esnext",
14 | "dom",
15 | "dom.iterable",
16 | "scripthost"
17 | ]
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/demo/bpmn-and-engine/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | pnpm-debug.log*
8 | lerna-debug.log*
9 |
10 | node_modules
11 | dist
12 | dist-ssr
13 | *.local
14 |
15 | # Editor directories and files
16 | .vscode/*
17 | !.vscode/extensions.json
18 | .idea
19 | .DS_Store
20 | *.suo
21 | *.ntvs*
22 | *.njsproj
23 | *.sln
24 | *.sw?
25 |
--------------------------------------------------------------------------------
/demo/mvp/src/components/node/icon/Message.js:
--------------------------------------------------------------------------------
1 | import IconNode from './IconNode'
2 |
3 | // 左上角ICON为消息的节点
4 | class MessageNode extends IconNode.view {
5 | getImageHref () {
6 | return 'https://dpubstatic.udache.com/static/dpubimg/1TZgBoaq8G/message.png';
7 | }
8 | }
9 |
10 |
11 | export default {
12 | type: 'icon-message',
13 | view: MessageNode,
14 | model: IconNode.model
15 | }
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/shared/version.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @license
3 | * Copyright 2021 Google LLC
4 | * SPDX-License-Identifier: BSD-3-Clause
5 | */
6 | // DO NOT UPDATE MANUALLY.
7 | // This file is automatically generated by scripts/update-version-module.js
8 | // before publishing.
9 | export const npmVersion = '0.16.3';
10 | export const serviceWorkerHash = 'f56081d9';
11 |
--------------------------------------------------------------------------------
/demo/examples/src/pages/advance/custom-node/anchor/circle.ts:
--------------------------------------------------------------------------------
1 | import { CircleNode, CircleNodeModel } from '@logicflow/core';
2 |
3 | class Model extends CircleNodeModel {
4 | getDefaultAnchor() {
5 | return []
6 | }
7 | }
8 |
9 | class View extends CircleNode {
10 | }
11 |
12 | export const CircleAnchor = {
13 | type: 'circle:anchor',
14 | view: View,
15 | model: Model,
16 | };
17 |
--------------------------------------------------------------------------------
/demo/logicflow-node-red-vue3/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | pnpm-debug.log*
8 | lerna-debug.log*
9 |
10 | node_modules
11 | dist
12 | dist-ssr
13 | *.local
14 |
15 | # Editor directories and files
16 | .vscode/*
17 | !.vscode/extensions.json
18 | .idea
19 | .DS_Store
20 | *.suo
21 | *.ntvs*
22 | *.njsproj
23 | *.sln
24 | *.sw?
25 |
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/shared/deferred.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"deferred.d.ts","sourceRoot":"","sources":["../src/shared/deferred.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,qBAAa,QAAQ,CAAC,CAAC;IACrB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC;IAC7B,OAAO,CAAC,QAAQ,CAAsB;IACtC,OAAO,CAAC,OAAO,CAA8B;IAC7C,OAAO,UAAS;;IAShB,OAAO,CAAC,KAAK,EAAE,CAAC;IAKhB,MAAM,CAAC,MAAM,EAAE,OAAO;CAIvB"}
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/ttcn.css:
--------------------------------------------------------------------------------
1 | .playground-theme-ttcn {
2 | --playground-code-builtin-color: rgb(0, 0, 0);
3 | --playground-code-comment-color: rgb(51, 51, 51);
4 | --playground-code-keyword-color: rgb(0, 0, 0);
5 | --playground-code-number-color: rgb(0, 0, 0);
6 | --playground-code-string-color: rgb(0, 100, 0);
7 | --playground-code-variable-color: rgb(139, 34, 82)
8 | }
--------------------------------------------------------------------------------
/demo/mvp/src/components/icon/Line.vue:
--------------------------------------------------------------------------------
1 |
2 |
6 |
7 |
8 |
17 |
--------------------------------------------------------------------------------
/demo/pool/config/jest/cssTransform.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | // This is a custom Jest transformer turning style imports into empty objects.
4 | // http://facebook.github.io/jest/docs/en/webpack.html
5 |
6 | module.exports = {
7 | process() {
8 | return 'module.exports = {};';
9 | },
10 | getCacheKey() {
11 | // The output is always the same.
12 | return 'cssTransform';
13 | },
14 | };
15 |
--------------------------------------------------------------------------------
/demo/examples/config/jest/cssTransform.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | // This is a custom Jest transformer turning style imports into empty objects.
4 | // http://facebook.github.io/jest/docs/en/webpack.html
5 |
6 | module.exports = {
7 | process() {
8 | return 'module.exports = {};';
9 | },
10 | getCacheKey() {
11 | // The output is always the same.
12 | return 'cssTransform';
13 | },
14 | };
15 |
--------------------------------------------------------------------------------
/demo/organizer/src/main.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import VueCompositionAPI from '@vue/composition-api'
3 | import ElementUI from 'element-ui'
4 |
5 | import 'element-ui/lib/theme-chalk/index.css'
6 | import App from './App.vue'
7 |
8 | Vue.use(VueCompositionAPI)
9 | Vue.use(ElementUI)
10 | window.Vue = Vue;
11 |
12 | const app = new Vue({
13 | render: (h) => h(App)
14 | })
15 |
16 | app.$mount('#app')
17 |
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/internal/codemirror.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"codemirror.d.ts","sourceRoot":"","sources":["../src/internal/codemirror.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,qCAAqC,CAAC;AAI7C,OAAO,KAAK,cAAc,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,iBAAiB,MAAM,mCAAmC,CAAC;AACvE,OAAO,KAAK,iBAAiB,MAAM,oCAAoC,CAAC;AACxE,OAAO,KAAK,iBAAiB,MAAM,qCAAqC,CAAC;AAEzE;;;;;GAKG;AACH,eAAO,MAAM,UAAU,wGAOX,CAAC"}
--------------------------------------------------------------------------------
/demo/logicflow-node-red-vue3/README.md:
--------------------------------------------------------------------------------
1 | # LogicFlow-NodeRed
2 |
3 | LogicFlow仿NodeRed风格流程图。
4 |
5 | ## 效果
6 |
7 | 
8 |
9 | ## codesandbox地址
10 |
11 | [https://codesandbox.io/s/logicflow-node-red-vue3-u2c3zk?file=/src/components/FlowChart.vue](https://codesandbox.io/s/logicflow-node-red-vue3-u2c3zk?file=/src/components/FlowChart.vue)
12 |
--------------------------------------------------------------------------------
/demo/logicflow-node-red-vue3/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 | LogicFlow
8 |
9 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/demo/mvp/README.md:
--------------------------------------------------------------------------------
1 | # mvp
2 |
3 | ## Project setup
4 | ```
5 | yarn install
6 | ```
7 |
8 | ### Compiles and hot-reloads for development
9 | ```
10 | yarn serve
11 | ```
12 |
13 | ### Compiles and minifies for production
14 | ```
15 | yarn build
16 | ```
17 |
18 | ### Lints and fixes files
19 | ```
20 | yarn lint
21 | ```
22 |
23 | ### Customize configuration
24 | See [Configuration Reference](https://cli.vuejs.org/config/).
25 |
--------------------------------------------------------------------------------
/demo/pool/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 | /.pnp
6 | .pnp.js
7 |
8 | # testing
9 | /coverage
10 |
11 | # production
12 | /build
13 |
14 | # misc
15 | .DS_Store
16 | .env.local
17 | .env.development.local
18 | .env.test.local
19 | .env.production.local
20 |
21 | npm-debug.log*
22 | yarn-debug.log*
23 | yarn-error.log*
24 |
--------------------------------------------------------------------------------
/docs/en/guide/extension/extension-components.md:
--------------------------------------------------------------------------------
1 | # 使用指南
2 |
3 | `@logicflow/extension`包中提供一些开箱即用的组件,快速支持产品中常见的功能,如控制面板、右键菜单等。
4 |
5 | ```ts
6 | import LogicFlow from '@logicflow/core';
7 | import { Control, Menu, DndPanel } from '@logicflow/extension';
8 | import '@logicflow/extension/lib/style/index.css';
9 |
10 | LogicFlow.use(Control); // 控制面板
11 | LogicFlow.use(Menu); // 右键菜单
12 | LogicFlow.use(DndPanel); // 拖拽面板
13 | ```
14 |
--------------------------------------------------------------------------------
/docs/zh/guide/extension/extension-components.md:
--------------------------------------------------------------------------------
1 | # 使用指南
2 |
3 | `@logicflow/extension`包中提供一些开箱即用的组件,快速支持产品中常见的功能,如控制面板、右键菜单等。
4 |
5 | ```ts
6 | import LogicFlow from '@logicflow/core';
7 | import { Control, Menu, DndPanel } from '@logicflow/extension';
8 | import '@logicflow/extension/lib/style/index.css';
9 |
10 | LogicFlow.use(Control); // 控制面板
11 | LogicFlow.use(Menu); // 右键菜单
12 | LogicFlow.use(DndPanel); // 拖拽面板
13 | ```
14 |
--------------------------------------------------------------------------------
/demo/bpmn-vue/src/icons/bpmn-icon-data-input-output-association.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/demo/pool/src/index.less:
--------------------------------------------------------------------------------
1 | body {
2 | margin: 0;
3 | font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',
4 | 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',
5 | sans-serif;
6 | -webkit-font-smoothing: antialiased;
7 | -moz-osx-font-smoothing: grayscale;
8 | }
9 |
10 | code {
11 | font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New',
12 | monospace;
13 | }
14 |
--------------------------------------------------------------------------------
/demo/bpmn-and-engine/src/icons/bpmn-icon-data-input-output-association.svg:
--------------------------------------------------------------------------------
1 |
5 |
--------------------------------------------------------------------------------
/demo/pool/src/reportWebVitals.js:
--------------------------------------------------------------------------------
1 | const reportWebVitals = onPerfEntry => {
2 | if (onPerfEntry && onPerfEntry instanceof Function) {
3 | import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {
4 | getCLS(onPerfEntry);
5 | getFID(onPerfEntry);
6 | getFCP(onPerfEntry);
7 | getLCP(onPerfEntry);
8 | getTTFB(onPerfEntry);
9 | });
10 | }
11 | };
12 |
13 | export default reportWebVitals;
14 |
--------------------------------------------------------------------------------
/demo/bpmn-vue/src/components/panels/index.ts:
--------------------------------------------------------------------------------
1 | import { createApp, h } from 'vue';
2 | import Panels from './index.vue';
3 |
4 | function mountPanel(lf: any) {
5 | let panel = createApp(
6 | h(Panels, {
7 | lf,
8 | }),
9 | );
10 | const div = document.createElement('div');
11 | div.id = 'my-panel';
12 | document.querySelector('#graph')?.appendChild(div);
13 | panel.mount('#my-panel');
14 | }
15 |
16 | export default mountPanel;
17 |
--------------------------------------------------------------------------------
/docs/en/version-info/0.4.0.md:
--------------------------------------------------------------------------------
1 | # 0.4.0
2 |
3 | ### @logicflow/core
4 |
5 | - 支持新的组件注册方式;
6 | ```js
7 | import { RectNode, RectModel } from '@logicflow/core'
8 |
9 | lf.register({
10 | type: 'square',
11 | view: RectNode,
12 | model: RectModel,
13 | });
14 | ```
15 |
16 | - 支持class作为插件
17 |
18 | ### @logicflow/extension
19 |
20 | - 新增:ResizeNode插件(ResizeNode)。
21 | - 新增:bpmn插件增加路径生成和自动布局功能。
22 | - 新增: 节点拖入折线插件。
23 | ### 兼容性
24 |
25 | - 新增:兼容IE11
--------------------------------------------------------------------------------
/docs/zh/version-info/0.4.0.md:
--------------------------------------------------------------------------------
1 | # 0.4.0
2 |
3 | ### @logicflow/core
4 |
5 | - 支持新的组件注册方式;
6 | ```js
7 | import { RectNode, RectModel } from '@logicflow/core'
8 |
9 | lf.register({
10 | type: 'square',
11 | view: RectNode,
12 | model: RectModel,
13 | });
14 | ```
15 |
16 | - 支持class作为插件
17 |
18 | ### @logicflow/extension
19 |
20 | - 新增:ResizeNode插件(ResizeNode)。
21 | - 新增:bpmn插件增加路径生成和自动布局功能。
22 | - 新增: 节点拖入折线插件。
23 | ### 兼容性
24 |
25 | - 新增:兼容IE11
--------------------------------------------------------------------------------
/docs/en/version-info copy/0.4.0.md:
--------------------------------------------------------------------------------
1 | # 0.4.0
2 |
3 | ### @logicflow/core
4 |
5 | - 支持新的组件注册方式;
6 | ```js
7 | import { RectNode, RectModel } from '@logicflow/core'
8 |
9 | lf.register({
10 | type: 'square',
11 | view: RectNode,
12 | model: RectModel,
13 | });
14 | ```
15 |
16 | - 支持class作为插件
17 |
18 | ### @logicflow/extension
19 |
20 | - 新增:ResizeNode插件(ResizeNode)。
21 | - 新增:bpmn插件增加路径生成和自动布局功能。
22 | - 新增: 节点拖入折线插件。
23 | ### 兼容性
24 |
25 | - 新增:兼容IE11
--------------------------------------------------------------------------------
/examples/examples/案例/business-scenario/mind-mapping/htmlEdge.js:
--------------------------------------------------------------------------------
1 | class Model extends BezierEdgeModel {
2 | initEdgeData(data) {
3 | super.initEdgeData(data);
4 | }
5 |
6 | getEdgeStyle() {
7 | const style = super.getEdgeStyle();
8 | style.stroke = '#0074d9';
9 | style.strokeWidth = 2;
10 | return style;
11 | }
12 | }
13 |
14 | export default {
15 | type: 'mindmap-edge',
16 | view: BezierEdge,
17 | model: Model,
18 | };
19 |
20 |
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/shared/deferred.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @license
3 | * Copyright 2020 Google LLC
4 | * SPDX-License-Identifier: BSD-3-Clause
5 | */
6 | export declare class Deferred {
7 | readonly promise: Promise;
8 | private _resolve;
9 | private _reject;
10 | settled: boolean;
11 | constructor();
12 | resolve(value: T): void;
13 | reject(reason: unknown): void;
14 | }
15 | //# sourceMappingURL=deferred.d.ts.map
--------------------------------------------------------------------------------
/demo/bpmn-and-engine/src/components/Panels/index.ts:
--------------------------------------------------------------------------------
1 | import { createApp, h } from 'vue';
2 | import Panels from './index.vue';
3 |
4 | function mountPanel(lf: any) {
5 | let panel = createApp(
6 | h(Panels, {
7 | lf,
8 | }),
9 | );
10 | const div = document.createElement('div');
11 | div.id = 'my-panel';
12 | document.querySelector('#main-graph')?.appendChild(div);
13 | panel.mount('#my-panel');
14 | }
15 |
16 | export default mountPanel;
17 |
--------------------------------------------------------------------------------
/demo/examples/.gitignore:
--------------------------------------------------------------------------------
1 | # See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
2 |
3 | # dependencies
4 | /node_modules
5 | /.pnp
6 | .pnp.js
7 |
8 | dist/*
9 |
10 | # testing
11 | /coverage
12 |
13 | # production
14 | /build
15 |
16 | # misc
17 | .DS_Store
18 | .env.local
19 | .env.development.local
20 | .env.test.local
21 | .env.production.local
22 |
23 | npm-debug.log*
24 | yarn-debug.log*
25 | yarn-error.log*
26 | .eslintcache
--------------------------------------------------------------------------------
/docs/en/article/_sidebar.md:
--------------------------------------------------------------------------------
1 | - [**The design and architecture of LogicFlow**](en/article/article01)
2 | - [**Decoding LogicFlow's Extension Mechanism**](en/article/article02)
3 | - [**LogicFlow Edge Drawing and Interaction**](en/article/article03)
4 | - [**LogicFlow Node Resize**](en/article/NodeResize)
5 | - [**LogicFlow released version 1.0**](en/article/LogicFlow-release1.0)
6 |
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/eclipse.css:
--------------------------------------------------------------------------------
1 | .playground-theme-eclipse {
2 | --playground-code-comment-color: rgb(63, 127, 95);
3 | --playground-code-keyword-color: rgb(127, 0, 85);
4 | --playground-code-meta-color: rgb(255, 23, 23);
5 | --playground-code-string-color: rgb(42, 0, 255);
6 | --playground-code-type-color: rgb(0, 0, 192);
7 | --playground-code-variable-2-color: rgb(0, 0, 192);
8 | --playground-code-variable-3-color: rgb(0, 0, 192)
9 | }
--------------------------------------------------------------------------------
/demo/bpmn-and-engine/src/App.vue:
--------------------------------------------------------------------------------
1 |
4 |
5 |
6 |
7 |
8 |
9 |
23 |
--------------------------------------------------------------------------------
/demo/examples/src/pages/advance/custom-node/triangle/triangleNode.ts:
--------------------------------------------------------------------------------
1 | import { PolygonNode, PolygonNodeModel } from '@logicflow/core';
2 | class TriangleNodeModel extends PolygonNodeModel {
3 | setAttributes() {
4 | // 多边形的节点属性 points
5 | this.points = [
6 | [50, 0],
7 | [100, 80],
8 | [0, 80],
9 | ];
10 | }
11 | }
12 | export const TriangleNode = {
13 | type: 'triangle',
14 | view: PolygonNode,
15 | model: TriangleNodeModel,
16 | };
--------------------------------------------------------------------------------
/demo/mvp/src/components/icon/Minus.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/playground-connected-element.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"playground-connected-element.d.ts","sourceRoot":"","sources":["src/playground-connected-element.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAC,UAAU,EAAC,MAAM,KAAK,CAAC;AAE/B,OAAO,EAAC,iBAAiB,EAAC,MAAM,yBAAyB,CAAC;AAE1D;;GAEG;AACH,qBAAa,0BAA2B,SAAQ,UAAU;IACxD;;;OAGG;IACH,IACI,OAAO,CAAC,WAAW,EAAE,iBAAiB,GAAG,MAAM,EAclD;IAED;;;OAGG;IAEH,SAAS,CAAC,QAAQ,CAAC,EAAE,iBAAiB,CAAC;CACxC"}
--------------------------------------------------------------------------------
/demo/mvp/src/components/icon/DownArrow.vue:
--------------------------------------------------------------------------------
1 |
2 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/demo/mvp/src/components/icon/LeftArrow.vue:
--------------------------------------------------------------------------------
1 |
2 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/demo/mvp/src/components/icon/RightArrow.vue:
--------------------------------------------------------------------------------
1 |
2 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/shared/util.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"util.d.ts","sourceRoot":"","sources":["../src/shared/util.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,eAAO,MAAM,YAAY,MAAO,MAAM,WAAoC,CAAC;AAE3E,eAAO,MAAM,eAAe,cACgC,CAAC;AAE7D;;;;;GAKG;AACH,eAAO,MAAM,mBAAmB,QAAS,GAAG,KAAG,GAQ9C,CAAC;AAEF,oBAAY,MAAM,CAAC,CAAC,EAAE,CAAC,IACnB;IAAC,MAAM,EAAE,CAAC,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,CAAA;CAAC,GAC9B;IAAC,MAAM,CAAC,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,CAAC,CAAA;CAAC,CAAC"}
--------------------------------------------------------------------------------
/demo/bpmn-vue/src/icons/bpmn-icon-participant.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/demo/mvp/src/components/icon/Trapezoid.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/demo/examples/src/pages/usage/approve/type.ts:
--------------------------------------------------------------------------------
1 | export type HtmlNodeConfig = {
2 | type: string,
3 | label: string,
4 | style: {
5 | width: string,
6 | height: string,
7 | borderRadius?: string,
8 | border: string,
9 | transform?: string,
10 | }
11 | }
12 | export type IApproveUser = {
13 | label: string,
14 | value: string,
15 | }
16 | export type nodeProperty = {
17 | labelColor: string,
18 | approveTypeLabel: string,
19 | approveType: string,
20 | }
--------------------------------------------------------------------------------
/demo/bpmn-and-engine/src/icons/bpmn-icon-participant.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/demo/examples/src/pages/usage/approvePreview/type.ts:
--------------------------------------------------------------------------------
1 | export type HtmlNodeConfig = {
2 | type: string,
3 | label: string,
4 | style: {
5 | width: string,
6 | height: string,
7 | borderRadius?: string,
8 | border: string,
9 | transform?: string,
10 | }
11 | }
12 | export type IApproveUser = {
13 | label: string,
14 | value: string,
15 | }
16 | export type nodeProperty = {
17 | labelColor: string,
18 | approveTypeLabel: string,
19 | approveType: string,
20 | }
--------------------------------------------------------------------------------
/demo/mvp/src/components/icon/Pentagon.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/demo/mvp/src/components/icon/Triangle.vue:
--------------------------------------------------------------------------------
1 |
2 |
14 |
15 |
16 |
20 |
--------------------------------------------------------------------------------
/demo/mvp/src/components/node/basic/EllipseNode.js:
--------------------------------------------------------------------------------
1 | import CircleNode from './CircleNode'
2 |
3 | // 椭圆
4 | class EllipseNewModel extends CircleNode.model {
5 | initNodeData(data) {
6 | super.initNodeData(data)
7 | this.rx = 60
8 | this.ry = 30
9 | }
10 | getNodeStyle() {
11 | const style = super.getNodeStyle()
12 | return {...style}
13 | }
14 | }
15 | export default {
16 | type: 'pro-ellipse',
17 | view: CircleNode.view,
18 | model: EllipseNewModel
19 | }
20 |
--------------------------------------------------------------------------------
/demo/examples/src/pages/extension/components/custom-dnd/Dnd.tsx:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import ReactDOM from 'react-dom';
3 | import DndTool from './DndTool';
4 | import LogicFlow, { Extension } from '@logicflow/core';
5 |
6 | const Dnd: Extension = {
7 | pluginName: 'dnd',
8 | install() { },
9 | render(lf: LogicFlow, domContainer: HTMLElement) {
10 | ReactDOM.render(, domContainer);
11 | },
12 | };
13 |
14 | export default Dnd;
15 | export {
16 | Dnd
17 | };
--------------------------------------------------------------------------------
/demo/logicflow-node-red-vue3/src/components/node-red/style.css:
--------------------------------------------------------------------------------
1 | .custom-anchor {
2 | stroke: #999;
3 | stroke-width: 1;
4 | fill: #d9d9d9;
5 | cursor: crosshair;
6 | rx: 3;
7 | ry: 3;
8 | }
9 | .custom-anchor:hover {
10 | fill: #ff7f0e;
11 | stroke: #ff7f0e;
12 | }
13 | .node-red-palette {
14 | width: 150px;
15 | overflow: hidden;
16 | position: absolute;
17 | left: 0px;
18 | top: 0px;
19 | }
20 | .node-red-start {
21 | cursor: pointer;
22 | pointer-events: all;
23 | }
--------------------------------------------------------------------------------
/demo/mvp/src/components/icon/Hexagon.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/demo/mvp/src/components/icon/UpArrow.vue:
--------------------------------------------------------------------------------
1 |
2 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/internal/codemirror.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @license
3 | * Copyright 2021 Google LLC
4 | * SPDX-License-Identifier: BSD-3-Clause
5 | */
6 | // Our own specialized CodeMirror bundle (see rollup.config.js).
7 | import '../_codemirror/codemirror-bundle.js';
8 | /**
9 | * CodeMirror function.
10 | *
11 | * This function is defined as window.CodeMirror, but @types/codemirror doesn't
12 | * declare that.
13 | */
14 | export const CodeMirror = window.CodeMirror;
15 |
--------------------------------------------------------------------------------
/demo/examples/src/App.css:
--------------------------------------------------------------------------------
1 | * {
2 | box-sizing: border-box;
3 | }
4 |
5 | .App {
6 | display: flex;
7 | }
8 |
9 | .container {
10 | border: 1px rgb(230, 230, 230) solid;
11 | border-radius: 6px;
12 | padding: 0 10px 10px;
13 | width: 100%;
14 | height: 100vh;
15 | display: flex;
16 | flex-direction: column;
17 | user-select: none;
18 | }
19 |
20 | .viewport {
21 | height: 100%;
22 | overflow: hidden;
23 | position: relative;
24 | }
25 | .import_icon {
26 | color: red;
27 | }
--------------------------------------------------------------------------------
/demo/organizer/src/util/index.js:
--------------------------------------------------------------------------------
1 | export const waitTime = (time = 100) => {
2 | return new Promise((resolve) => {
3 | setTimeout(() => {
4 | resolve(true);
5 | }, time);
6 | });
7 | };
8 |
9 |
10 | export const getUniqueId = () => {
11 | // Math.random should be unique because of its seeding algorithm.
12 | // Convert it to base 36 (numbers + letters), and grab the first 9 characters
13 | // after the decimal.
14 | return Math.random().toString(36).substring(2, 6);
15 | };
16 |
--------------------------------------------------------------------------------
/demo/mvp/src/components/icon/Diamond.vue:
--------------------------------------------------------------------------------
1 |
2 |
14 |
15 |
16 |
20 |
--------------------------------------------------------------------------------
/demo/mvp/src/components/icon/VerticalArrow.vue:
--------------------------------------------------------------------------------
1 |
2 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/demo/organizer/src/tool/pageTip/index.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | {{ text }}
5 |
6 |
7 |
14 |
15 |
--------------------------------------------------------------------------------
/examples/src/assets/vue.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/ttcn.css.js:
--------------------------------------------------------------------------------
1 | import { css } from 'lit';
2 | const style = css `
3 | .playground-theme-ttcn {
4 | --playground-code-builtin-color: rgb(0, 0, 0);
5 | --playground-code-comment-color: rgb(51, 51, 51);
6 | --playground-code-keyword-color: rgb(0, 0, 0);
7 | --playground-code-number-color: rgb(0, 0, 0);
8 | --playground-code-string-color: rgb(0, 100, 0);
9 | --playground-code-variable-color: rgb(139, 34, 82)
10 | }
11 | `;
12 | export default style;
13 |
--------------------------------------------------------------------------------
/demo/bpmn-vue/src/assets/vue.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/demo/examples/README.md:
--------------------------------------------------------------------------------
1 | # LogicFlow 使用示例
2 |
3 | 该目录下的示例为[【文档】](http://logic-flow.org/)的辅助示例,示例使用 React 框架进行开发,但 LogicFlow 不依赖于任何宿主环境。
4 |
5 | ## 项目启动
6 |
7 | ### 安装依赖
8 |
9 | LogicFlow 使用 monorepo 的形式对项目进行管理,所以我们应该先到根目录下执行以下命令:
10 |
11 | ```shell
12 | npm run bootstrap
13 |
14 | npm run build:types
15 |
16 | npm run build
17 | ```
18 |
19 | ### 启动调试
20 |
21 | ```shell
22 | # 回到 examples 目录下
23 | cd examples
24 |
25 | yarn dev
26 | ```
27 |
28 | ### 打包构建
29 |
30 | ```shell
31 | yarn build
32 | ```
33 |
--------------------------------------------------------------------------------
/demo/examples/src/index.css:
--------------------------------------------------------------------------------
1 | @import '~@logicflow/core/dist/style/index.css';
2 |
3 |
4 | body {
5 | margin: 0;
6 | font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen',
7 | 'Ubuntu', 'Cantarell', 'Fira Sans', 'Droid Sans', 'Helvetica Neue',
8 | sans-serif;
9 | -webkit-font-smoothing: antialiased;
10 | -moz-osx-font-smoothing: grayscale;
11 | }
12 |
13 | code {
14 | font-family: source-code-pro, Menlo, Monaco, Consolas, 'Courier New',
15 | monospace;
16 | }
17 |
--------------------------------------------------------------------------------
/demo/mvp/src/components/icon/Cross.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/demo/mvp/src/components/icon/Septagon.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/demo/organizer/src/util/edge.js:
--------------------------------------------------------------------------------
1 | export const pointFilter = (points) => {
2 | const allPoints = points;
3 | let i = 1;
4 | while (i < allPoints.length - 1) {
5 | const pre = allPoints[i - 1];
6 | const current = allPoints[i];
7 | const next = allPoints[i + 1];
8 | if ((pre.x === current.x && current.x === next.x)
9 | || (pre.y === current.y && current.y === next.y)) {
10 | allPoints.splice(i, 1);
11 | } else {
12 | i++;
13 | }
14 | }
15 | return allPoints;
16 | };
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/internal/tab.d.ts.map:
--------------------------------------------------------------------------------
1 | {"version":3,"file":"tab.d.ts","sourceRoot":"","sources":["../src/internal/tab.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAY,UAAU,EAAE,cAAc,EAAC,MAAM,KAAK,CAAC;AAG1D;;;;;;;;GAQG;AACH,qBACa,qBAAsB,SAAQ,UAAU;IACnD,MAAM,CAAC,MAAM,0BAoDX;IAEF;;OAEG;IAEH,MAAM,UAAS;IAGf,OAAO,CAAC,OAAO,CAAqB;IAEpC;;;;;OAKG;IACH,KAAK,SAAK;IAEV,MAAM;IAWN,OAAO,CAAC,OAAO,EAAE,cAAc;IAW/B,KAAK;CAGN;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,qBAAqB;QAC7B,yBAAyB,EAAE,qBAAqB,CAAC;KAClD;CACF"}
--------------------------------------------------------------------------------
/demo/mvp/src/components/icon/HorizontalArrow.vue:
--------------------------------------------------------------------------------
1 |
2 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/docs/zh/api/_sidebar.md:
--------------------------------------------------------------------------------
1 | * [**LogicFlow**](zh/api/logicFlowApi)
2 | * [**graphModel**](zh/api/graphModelApi)
3 | * [**nodeModel**](zh/api/nodeModelApi)
4 | * [**edgeModel**](zh/api/edgeModelApi)
5 | * [**事件**](zh/api/eventCenterApi)
6 | * [**transformModel**](zh/api/transformModelApi)
7 | * [**editConfigModel**](zh/api/editConfigModelApi)
8 | * [**主题**](zh/api/themeApi)
--------------------------------------------------------------------------------
/demo/bpmn-and-engine/src/assets/vue.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/demo/examples/src/reportWebVitals.ts:
--------------------------------------------------------------------------------
1 | import { ReportHandler } from 'web-vitals';
2 |
3 | const reportWebVitals = (onPerfEntry?: ReportHandler) => {
4 | if (onPerfEntry && onPerfEntry instanceof Function) {
5 | import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {
6 | getCLS(onPerfEntry);
7 | getFID(onPerfEntry);
8 | getFCP(onPerfEntry);
9 | getLCP(onPerfEntry);
10 | getTTFB(onPerfEntry);
11 | });
12 | }
13 | };
14 |
15 | export default reportWebVitals;
16 |
--------------------------------------------------------------------------------
/demo/mvp/src/components/icon/Heptagon.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/demo/mvp/src/components/icon/Ellipse.vue:
--------------------------------------------------------------------------------
1 |
2 |
16 |
17 |
18 |
22 |
--------------------------------------------------------------------------------
/demo/mvp/src/components/icon/Parallelogram.vue:
--------------------------------------------------------------------------------
1 |
2 |
14 |
15 |
16 |
20 |
--------------------------------------------------------------------------------
/docs/en/api/_sidebar.md:
--------------------------------------------------------------------------------
1 | - [**LogicFlow**](en/api/logicFlowApi)
2 | - [**graphModel**](en/api/graphModelApi)
3 | - [**nodeModel**](en/api/nodeModelApi)
4 | - [**edgeModel**](en/api/edgeModelApi)
5 | - [**EventCenter**](en/api/eventCenterApi)
6 | - [**transformModel**](en/api/transformModelApi)
7 | - [**editConfigModel**](en/api/editConfigModelApi)
8 | - [**Theme**](en/api/themeApi)
9 |
--------------------------------------------------------------------------------
/examples/.gitignore:
--------------------------------------------------------------------------------
1 | # Logs
2 | logs
3 | *.log
4 | npm-debug.log*
5 | yarn-debug.log*
6 | yarn-error.log*
7 | pnpm-debug.log*
8 | lerna-debug.log*
9 |
10 | node_modules
11 | dist
12 | dist-ssr
13 | *.local
14 |
15 | public/playground_json/*
16 | !public/playground_json/example.json
17 | # src/screenshots/*
18 | # !src/screenshots/example.png
19 |
20 |
21 | # Editor directories and files
22 | .vscode/*
23 | !.vscode/extensions.json
24 | .idea
25 | .DS_Store
26 | *.suo
27 | *.ntvs*
28 | *.njsproj
29 | *.sln
30 | *.sw?
31 |
32 |
--------------------------------------------------------------------------------
/demo/logicflow-node-red-vue3/src/components/node-red/FlowLink.js:
--------------------------------------------------------------------------------
1 | import { BezierEdge, BezierEdgeModel } from "@logicflow/core";
2 |
3 | class FlowLinkModel extends BezierEdgeModel {
4 | getEdgeStyle() {
5 | const style = super.getEdgeStyle();
6 | style.strokeWidth = 3;
7 | style.stroke = this.isSelected ? '#ff7f0e' : '#999';
8 | return style;
9 | }
10 | }
11 | class FlowLink extends BezierEdge {}
12 |
13 | export default {
14 | type: 'flow-link',
15 | view: FlowLink,
16 | model: FlowLinkModel
17 | }
18 |
19 |
--------------------------------------------------------------------------------
/demo/mvp/src/components/icon/Times.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/demo/mvp/src/App.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
17 |
18 |
27 |
33 |
--------------------------------------------------------------------------------
/demo/organizer/src/icon/plusIcon.vue:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
7 |
17 |
--------------------------------------------------------------------------------
/demo/organizer/src/icon/filterIcon.vue:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
7 |
17 |
--------------------------------------------------------------------------------
/demo/organizer/src/tool/popover/popoverContent.vue:
--------------------------------------------------------------------------------
1 |
2 |
3 |
添加通用节点:{{model.id}}
4 |
5 | - 11
6 | - 14
7 | - 13
8 | - 11
9 | - 14
10 | - 13
11 |
12 |
13 |
14 |
15 |
26 |
27 |
--------------------------------------------------------------------------------
/demo/logicflow-node-red-vue3/src/components/node-red/util.js:
--------------------------------------------------------------------------------
1 | /* 求字符串的字节长度 */
2 | export const getBytesLength = (word) => {
3 | if (!word) {
4 | return 0;
5 | }
6 | let totalLength = 0;
7 | for (let i = 0; i < word.length; i++) {
8 | const c = word.charCodeAt(i);
9 | if ((word.match(/[A-Z]/))) {
10 | totalLength += 1.5;
11 | } else if ((c >= 0x0001 && c <= 0x007e) || (c >= 0xff60 && c <= 0xff9f)) {
12 | totalLength += 1;
13 | } else {
14 | totalLength += 1.8;
15 | }
16 | }
17 | return totalLength;
18 | };
--------------------------------------------------------------------------------
/demo/bpmn-and-engine/src/engine/nodes/gateway.ts:
--------------------------------------------------------------------------------
1 | import { TaskNode } from "@logicflow/engine";
2 |
3 | class Gateway extends TaskNode {
4 | async action(params: {
5 | executionId: string;
6 | actionId: string;
7 | nodeId: string;
8 | data?: Record;
9 | }) {
10 | const { variable } = this.properties!;
11 | const value = window.prompt(`请输入${variable}的值`);
12 | this.globalData[(variable as string)] = value;
13 | return {
14 | status: "success",
15 | };
16 | }
17 | }
18 |
19 | export default Gateway;
20 |
--------------------------------------------------------------------------------
/demo/examples/src/pages/advance/custom-edge/process.ts:
--------------------------------------------------------------------------------
1 | import { LineEdge, LineEdgeModel } from '@logicflow/core'
2 | export const registerProcess: any = () => {
3 | class ProcessModel extends LineEdgeModel {
4 | setAttributes() {
5 | const {
6 | // @ts-ignore
7 | properties: { isExecuted },
8 | } = this;
9 |
10 | if (isExecuted) {
11 | this.stroke = "green";
12 | }
13 | }
14 | }
15 | return {
16 | type: 'process',
17 | view: LineEdge,
18 | model: ProcessModel,
19 | };
20 | };
21 |
--------------------------------------------------------------------------------
/demo/mvp/src/components/icon/RectRadius.vue:
--------------------------------------------------------------------------------
1 |
2 |
18 |
19 |
20 |
24 |
--------------------------------------------------------------------------------
/demo/mvp/src/components/node/image/Setting.js:
--------------------------------------------------------------------------------
1 | import ImageNode from './ImageNode'
2 |
3 | // 图片-设置节点
4 | class SettingModel extends ImageNode.model {
5 | initNodeData(data) {
6 | super.initNodeData(data)
7 | this.width = 60
8 | this.height = 60
9 | }
10 | }
11 | class SettingNode extends ImageNode.view {
12 | getImageHref () {
13 | return 'https://dpubstatic.udache.com/static/dpubimg/UzI4AFUcfO/setting.png';
14 | }
15 | }
16 |
17 |
18 | export default {
19 | type: 'image-setting',
20 | view: SettingNode,
21 | model: SettingModel,
22 | }
--------------------------------------------------------------------------------
/demo/organizer/src/util/expression.js:
--------------------------------------------------------------------------------
1 | export const comparisonOperators = [
2 | {
3 | name: '严格等于',
4 | value: '==='
5 | },
6 | {
7 | name: '不严格等于',
8 | value: '!=='
9 | },
10 | {
11 | name: '等于',
12 | value: '=='
13 | },
14 | {
15 | name: '不等于',
16 | value: '!='
17 | },
18 | {
19 | name: '大于',
20 | value: '>'
21 | },
22 | {
23 | name: '小于',
24 | value: '<'
25 | },
26 | {
27 | name: '大于等于',
28 | value: '>='
29 | },
30 | {
31 | name: '小于等于',
32 | value: '<='
33 | }
34 | ]
35 |
--------------------------------------------------------------------------------
/demo/mvp/src/components/icon/ColorText.vue:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
7 |
16 |
--------------------------------------------------------------------------------
/demo/organizer/src/util/node.js:
--------------------------------------------------------------------------------
1 | /**
2 | * 根据组件model生成节点名
3 | */
4 | export const getNodeName = ( model ) => {
5 | return model.getModelName() || model.name || model.componentName
6 | }
7 |
8 | /**
9 | * 聚焦至该节点
10 | */
11 | export const focusNode = function (graphModel, id, deltaX) {
12 | graphModel.selectElementById(id)
13 | const model = graphModel.getElement(id)
14 | const rect = graphModel.rootEl.getBoundingClientRect()
15 | const dx = deltaX || 0
16 | graphModel.transformModel.focusOn(model.x + dx, model.y, Number(rect.width), Number(rect.height))
17 | }
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/themes/eclipse.css.js:
--------------------------------------------------------------------------------
1 | import { css } from 'lit';
2 | const style = css `
3 | .playground-theme-eclipse {
4 | --playground-code-comment-color: rgb(63, 127, 95);
5 | --playground-code-keyword-color: rgb(127, 0, 85);
6 | --playground-code-meta-color: rgb(255, 23, 23);
7 | --playground-code-string-color: rgb(42, 0, 255);
8 | --playground-code-type-color: rgb(0, 0, 192);
9 | --playground-code-variable-2-color: rgb(0, 0, 192);
10 | --playground-code-variable-3-color: rgb(0, 0, 192)
11 | }
12 | `;
13 | export default style;
14 |
--------------------------------------------------------------------------------
/demo/logicflow-node-red-vue3/public/images/function.svg:
--------------------------------------------------------------------------------
1 |
2 |
--------------------------------------------------------------------------------
/demo/pool/src/index.js:
--------------------------------------------------------------------------------
1 | import React from 'react';
2 | import ReactDOM from 'react-dom/client';
3 | import './index.less';
4 | import Pool from './Pool';
5 | import reportWebVitals from './reportWebVitals';
6 |
7 | const root = ReactDOM.createRoot(document.getElementById('root'));
8 | root.render(
9 |
10 | );
11 |
12 | // If you want to start measuring performance in your app, pass a function
13 | // to log results (for example: reportWebVitals(console.log))
14 | // or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals
15 | reportWebVitals();
16 |
--------------------------------------------------------------------------------
/demo/organizer/src/util/dataType.js:
--------------------------------------------------------------------------------
1 | /**
2 | * 可选的数据类型
3 | */
4 | export const TypeOptions = [{
5 | value: 'string',
6 | label: 'string',
7 | }, {
8 | value: 'number',
9 | label: 'number',
10 | }, {
11 | value: 'boolean',
12 | label: 'boolean',
13 | }, {
14 | value: 'undefined',
15 | label: 'undefined',
16 | }, {
17 | value: 'null',
18 | label: 'null',
19 | }, {
20 | value: 'object',
21 | label: 'object',
22 | }, {
23 | value: 'array[string]',
24 | label: 'array[string]',
25 | }, {
26 | value: 'array[number]',
27 | label: 'array[number]',
28 | }]
29 |
30 |
--------------------------------------------------------------------------------
/examples/examples/节点/custom-node/custom-html-node/style.css:
--------------------------------------------------------------------------------
1 | .uml-wrapper {
2 | background: #68fce2;
3 | width: 100%;
4 | height: 100%;
5 | border-radius: 10px;
6 | border: 2px solid #838382;
7 | box-sizing: border-box;
8 | }
9 | .uml-head {
10 | text-align: center;
11 | line-height: 30px;
12 | font-size: 16px;
13 | font-weight: bold;
14 | }
15 | .uml-body {
16 | border-top: 1px solid #838382;
17 | border-bottom: 1px solid #838382;
18 | padding: 5px 10px;
19 | font-size: 12px;
20 | }
21 | .uml-footer {
22 | padding: 5px 10px;
23 | font-size: 14px;
24 | }
25 |
--------------------------------------------------------------------------------
/examples/examples/节点/custom-node/custom-vue-node/style.css:
--------------------------------------------------------------------------------
1 | .uml-wrapper {
2 | background: #68fce2;
3 | width: 100%;
4 | height: 100%;
5 | border-radius: 10px;
6 | border: 2px solid #838382;
7 | box-sizing: border-box;
8 | }
9 | .uml-head {
10 | text-align: center;
11 | line-height: 30px;
12 | font-size: 16px;
13 | font-weight: bold;
14 | }
15 | .uml-body {
16 | border-top: 1px solid #838382;
17 | border-bottom: 1px solid #838382;
18 | padding: 5px 10px;
19 | font-size: 12px;
20 | }
21 | .uml-footer {
22 | padding: 5px 10px;
23 | font-size: 14px;
24 | }
25 |
--------------------------------------------------------------------------------
/examples/src/views/Playground/style.scss:
--------------------------------------------------------------------------------
1 | #ide {
2 | display: flex;
3 | height: 100%;
4 | --playground-bar-height: 54px;
5 | --playground-preview-width: 55%;
6 | scrollbar-width: none !important; /* firefox */
7 | -ms-overflow-style: none !important; /* ie10+ */
8 | & ::-webkit-scrollbar {
9 | /* chrome */
10 | display: none !important;
11 | }
12 | }
13 |
14 | .urlDiv {
15 | position: absolute;
16 | width: 0;
17 | height: 0;
18 | visibility: hidden;
19 | }
20 | div {
21 | height: 100%;
22 | overflow: scroll;
23 | }
24 |
--------------------------------------------------------------------------------
/demo/pool/src/DiagramSidebar.js:
--------------------------------------------------------------------------------
1 | import React from 'react'
2 | import Pool from './icon/nodes/Pool'
3 |
4 |
5 |
6 | const DiagramSidebar = (props:any) => {
7 | const {dragInNode} = props
8 |
9 | return
10 |
11 | {/* 横泳道 */}
12 |
拖动图标到画布以添加新的泳道
13 |
dragInNode('pool')}>
14 |
15 |
16 |
17 |
18 | }
19 |
20 | export default DiagramSidebar
--------------------------------------------------------------------------------
/examples/examples/节点/custom-node/custom-react-node/style.css:
--------------------------------------------------------------------------------
1 |
2 | .uml-wrapper {
3 | background: #68fce2;
4 | width: 100%;
5 | height: 100%;
6 | border-radius: 10px;
7 | border: 2px solid #838382;
8 | box-sizing: border-box;
9 | }
10 | .uml-head {
11 | text-align: center;
12 | line-height: 30px;
13 | font-size: 16px;
14 | font-weight: bold;
15 | }
16 | .uml-body {
17 | border-top: 1px solid #838382;
18 | border-bottom: 1px solid #838382;
19 | padding: 5px 10px;
20 | font-size: 12px;
21 | }
22 | .uml-footer {
23 | padding: 5px 10px;
24 | font-size: 14px;
25 | }
26 |
--------------------------------------------------------------------------------
/demo/bpmn-vue/src/icons/bpmn-icon-connection.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/demo/bpmn-and-engine/src/icons/bpmn-icon-connection.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/demo/examples/src/pages/extension/components/custom-dnd/index.tsx:
--------------------------------------------------------------------------------
1 | import React, { useEffect } from 'react';
2 | import LogicFlow from '@logicflow/core';
3 | import Dnd from './Dnd';
4 |
5 | const config = {
6 | stopScrollGraph: true,
7 | stopZoomGraph: true,
8 | }
9 |
10 | export default function CustomDndExample() {
11 | useEffect(() => {
12 | LogicFlow.use(Dnd);
13 | const lf = new LogicFlow({
14 | ...config,
15 | container: document.querySelector('#graph') as HTMLElement
16 | });
17 | lf.render();
18 | }, []);
19 |
20 | return ;
21 | }
22 |
--------------------------------------------------------------------------------
/demo/bpmn-and-engine/src/engine/nodes/task.ts:
--------------------------------------------------------------------------------
1 | import { TaskNode } from "@logicflow/engine";
2 |
3 | class ManualTask extends TaskNode {
4 | async action(params: {
5 | executionId: string;
6 | actionId: string;
7 | nodeId: string;
8 | data?: Record;
9 | }) {
10 | const { flag } = this.properties!;
11 | const value = window.confirm(`${flag}是否通过?`);
12 | if (value) {
13 | return {
14 | status: "success",
15 | };
16 | } else {
17 | return {
18 | status: "error",
19 | };
20 | }
21 | }
22 | }
23 |
24 | export default ManualTask;
25 |
--------------------------------------------------------------------------------
/demo/bpmn-vue/src/App.vue:
--------------------------------------------------------------------------------
1 |
5 |
6 |
7 |
8 |
9 |
10 |
30 |
--------------------------------------------------------------------------------
/demo/logicflow-node-red-vue3/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "logicflow-node-red-vue3",
3 | "private": true,
4 | "version": "0.0.0",
5 | "scripts": {
6 | "dev": "vite",
7 | "build": "vite build",
8 | "preview": "vite preview"
9 | },
10 | "dependencies": {
11 | "@logicflow/core": "^1.1.23",
12 | "@logicflow/extension": "^1.1.23",
13 | "element-plus": "^2.0.4",
14 | "vue": "^3.2.25"
15 | },
16 | "devDependencies": {
17 | "@vitejs/plugin-vue": "^2.2.0",
18 | "unplugin-auto-import": "^0.6.1",
19 | "unplugin-vue-components": "^0.17.21",
20 | "vite": "^2.8.0"
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/demo/pool/public/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "short_name": "React App",
3 | "name": "Create React App Sample",
4 | "icons": [
5 | {
6 | "src": "favicon.ico",
7 | "sizes": "64x64 32x32 24x24 16x16",
8 | "type": "image/x-icon"
9 | },
10 | {
11 | "src": "logo192.png",
12 | "type": "image/png",
13 | "sizes": "192x192"
14 | },
15 | {
16 | "src": "logo512.png",
17 | "type": "image/png",
18 | "sizes": "512x512"
19 | }
20 | ],
21 | "start_url": ".",
22 | "display": "standalone",
23 | "theme_color": "#000000",
24 | "background_color": "#ffffff"
25 | }
26 |
--------------------------------------------------------------------------------
/demo/examples/public/manifest.json:
--------------------------------------------------------------------------------
1 | {
2 | "short_name": "React App",
3 | "name": "Create React App Sample",
4 | "icons": [
5 | {
6 | "src": "favicon.ico",
7 | "sizes": "64x64 32x32 24x24 16x16",
8 | "type": "image/x-icon"
9 | },
10 | {
11 | "src": "logo192.png",
12 | "type": "image/png",
13 | "sizes": "192x192"
14 | },
15 | {
16 | "src": "logo512.png",
17 | "type": "image/png",
18 | "sizes": "512x512"
19 | }
20 | ],
21 | "start_url": ".",
22 | "display": "standalone",
23 | "theme_color": "#000000",
24 | "background_color": "#ffffff"
25 | }
26 |
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/shared/deferred.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @license
3 | * Copyright 2020 Google LLC
4 | * SPDX-License-Identifier: BSD-3-Clause
5 | */
6 | export class Deferred {
7 | constructor() {
8 | this.settled = false;
9 | this.promise = new Promise((resolve, reject) => {
10 | this._resolve = resolve;
11 | this._reject = reject;
12 | });
13 | }
14 | resolve(value) {
15 | this.settled = true;
16 | this._resolve(value);
17 | }
18 | reject(reason) {
19 | this.settled = true;
20 | this._reject(reason);
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/demo/bpmn-and-engine/src/components/Panels/components/index.ts:
--------------------------------------------------------------------------------
1 | import { reactive, markRaw, defineAsyncComponent } from 'vue';
2 |
3 | const components: any = reactive({
4 | normal: markRaw(defineAsyncComponent(() => import('./normal.vue'))),
5 | timerDefinition: markRaw(
6 | defineAsyncComponent(() => import('./timerDefinition.vue')),
7 | ),
8 | condition: markRaw(defineAsyncComponent(() => import('./condition.vue'))),
9 | variable: markRaw(defineAsyncComponent(() => import('./variable.vue'))),
10 | processRef: markRaw(defineAsyncComponent(() => import('./processRef.vue'))),
11 | });
12 |
13 | export default components;
14 |
--------------------------------------------------------------------------------
/demo/mvp/public/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
7 |
8 | <%= htmlWebpackPlugin.options.title %>
9 |
10 |
11 |
12 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/demo/examples/src/components/example-header/style.css:
--------------------------------------------------------------------------------
1 | .example-header {
2 | padding: 7px 10px;
3 | margin-bottom: 10px;
4 | border-bottom: 1px rgb(230, 230, 230) solid;
5 | color: rgb(90, 90, 90);
6 | flex-shrink: 0;
7 | display: flex;
8 | justify-content: space-between;
9 | align-items: center;
10 | }
11 |
12 | .example-header .content {
13 | width: 70%;
14 | white-space: nowrap;
15 | text-overflow: ellipsis;
16 | overflow: hidden;
17 | }
18 |
19 | .content-text {
20 | padding-right: 6px;
21 | }
22 |
23 | .example-header .tools {
24 | white-space: nowrap;
25 | text-overflow: ellipsis;
26 | overflow: hidden;
27 | }
28 |
--------------------------------------------------------------------------------
/examples/src/utils/index.js:
--------------------------------------------------------------------------------
1 | export const TypeOf = (target, type) => {
2 | if (Object.prototype.toString.call(target) === `[object ${type}]`) {
3 | return true;
4 | }
5 | return false;
6 | };
7 |
8 | export const getScreenshots = () => {
9 | const mode = import.meta.env.MODE;
10 | if (mode === "development") {
11 | return (name) => {
12 | return `/src/screenshots/${name}.png`;
13 | };
14 | } else {
15 | const modules = import.meta.globEager("/src/screenshots/*.png");
16 | return (name) => {
17 | const path = `/src/screenshots/${name}.png`;
18 | return modules[path].default;
19 | };
20 | }
21 | };
22 |
--------------------------------------------------------------------------------
/demo/bpmn-and-engine/src/icons/flow-control-refresh.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/examples/examples/节点/custom-node/custom-svg-node/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
--------------------------------------------------------------------------------
/examples/src/static/playground-elements/internal/overlay.d.ts:
--------------------------------------------------------------------------------
1 | /**
2 | * @license
3 | * Copyright 2021 Google LLC
4 | * SPDX-License-Identifier: BSD-3-Clause
5 | */
6 | import { LitElement } from 'lit';
7 | /**
8 | * An absolutely positioned scrim with a floating message.
9 | */
10 | export declare class PlaygroundInternalOverlay extends LitElement {
11 | static styles: import("lit").CSSResult;
12 | render(): import("lit-html").TemplateResult<1>;
13 | }
14 | declare global {
15 | interface HTMLElementTagNameMap {
16 | 'playground-internal-overlay': PlaygroundInternalOverlay;
17 | }
18 | }
19 | //# sourceMappingURL=overlay.d.ts.map
--------------------------------------------------------------------------------
/demo/bpmn-vue/src/components/panels/components/index.ts:
--------------------------------------------------------------------------------
1 | import { reactive, markRaw, defineAsyncComponent } from 'vue';
2 |
3 | const components: any = reactive({
4 | normal: markRaw(defineAsyncComponent(() => import('./normal.vue'))),
5 | timerDefinition: markRaw(
6 | defineAsyncComponent(() => import('./timerDefinition.vue')),
7 | ),
8 | condition: markRaw(defineAsyncComponent(() => import('./condition.vue'))),
9 | multiInstance: markRaw(
10 | defineAsyncComponent(() => import('./multiInstance.vue')),
11 | ),
12 | processRef: markRaw(defineAsyncComponent(() => import('./processRef.vue'))),
13 | });
14 |
15 | export default components;
16 |
--------------------------------------------------------------------------------
/examples/scripts/rollup-plugin-playground/playground-json-plugin.mjs:
--------------------------------------------------------------------------------
1 | import generatePlaygroundJson from './generate-playground-json.mjs';
2 |
3 | const playgroundJson = {
4 | name: 'playgroundJson',
5 | serve(context) {
6 | return new Promise((resolve) => {
7 | const exampleMatch = context.path.match(/([\w|-]*?)\.playground\.json/);
8 | if (exampleMatch) {
9 | const name = exampleMatch[1];
10 |
11 | const jsonObject = generatePlaygroundJson(name);
12 | resolve(JSON.stringify(jsonObject));
13 | } else {
14 | resolve();
15 | }
16 | });
17 | },
18 | };
19 |
20 | export default playgroundJson;
21 |
--------------------------------------------------------------------------------
/demo/bpmn-and-engine/src/components/Tools.vue:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
7 |
18 |
26 |
--------------------------------------------------------------------------------
/demo/bpmn-vue/src/data.d.ts:
--------------------------------------------------------------------------------
1 | type DefinitionConfigType = {
2 | nodes: string[];
3 | definition: EventDefinitionType[] | TaskDefinitionType[];
4 | };
5 |
6 | type DefinitionPropertiesType = {
7 | definitionType: string;
8 | timerType?: TimerType;
9 | timerValue?: string;
10 | [key: string]: any;
11 | };
12 |
13 | type EventDefinitionType = {
14 | type: string;
15 | icon: string | Object;
16 | toJSON: Function;
17 | properties: DefinitionPropertiesType;
18 | [key: string]: any;
19 | };
20 |
21 | type TaskDefinitionType = {
22 | type: string;
23 | [key: string]: any;
24 | };
25 |
26 | type TimerType = 'timerCycle' | 'timerDate' | 'timerDuration';
27 |
--------------------------------------------------------------------------------
/demo/examples/src/pages/extension/components/menu/CustomCircle.ts:
--------------------------------------------------------------------------------
1 | import { CircleNode, CircleNodeModel, EventArgs } from '@logicflow/core';
2 |
3 | class CustomCircleModel extends CircleNodeModel {
4 | setAttributes() {
5 | this.fill = 'red';
6 | this.menu = [{
7 | text: '自定义元素菜单',
8 | icon: true,
9 | className: 'custom-menu',
10 | callback: (res: EventArgs) => {
11 | this.graphModel.eventCenter.emit('custom:node:event', res);
12 | }
13 | }]
14 | }
15 | }
16 |
17 | const CustomCircle = {
18 | type: 'custom:circle',
19 | model: CustomCircleModel,
20 | view: CircleNode,
21 | }
22 |
23 | export default CustomCircle;
24 |
--------------------------------------------------------------------------------
/examples/examples/边/custom-edge/custom-edge-type/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/examples/examples/节点/custom-node/custom-html-node/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/examples/examples/边/custom-edge/custom-edge-rules/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/examples/scripts/rollup-plugin-config/rollup-plugin-config-json.js:
--------------------------------------------------------------------------------
1 | import fs from "fs";
2 | import path from "path";
3 | import generateConfig from "./generate-config";
4 |
5 | function generateExamplesConfig() {
6 | return new Promise((resolve) => {
7 | const jsonConfig = generateConfig();
8 | const targetDir = path.resolve("examples/config.json");
9 | fs.writeFileSync(targetDir, JSON.stringify(jsonConfig));
10 | resolve();
11 | });
12 | }
13 |
14 | export default function examplesConfig() {
15 | return {
16 | name: "generateExamplesConfig",
17 | buildStart: async function () {
18 | await generateExamplesConfig();
19 | },
20 | };
21 | }
22 |
--------------------------------------------------------------------------------
/demo/bpmn-vue/src/icons/bpmn-icon-task-none.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/demo/bpmn-vue/src/plugin/bpmn-elements/presets/Gateway/index.ts:
--------------------------------------------------------------------------------
1 | import LogicFlow from '@logicflow/core';
2 | import { exclusiveIcon, parallelIcon, inclusiveIcon } from '../icons';
3 | import { GatewayNodeFactory } from './gateway';
4 |
5 | export function registerGatewayNodes(lf: LogicFlow) {
6 | const ExclusiveGateway = GatewayNodeFactory('bpmn:exclusiveGateway', exclusiveIcon);
7 |
8 | const ParallelGateway = GatewayNodeFactory('bpmn:parallelGateway', parallelIcon);
9 |
10 | const InclusiveGateway = GatewayNodeFactory('bpmn:inclusiveGateway', inclusiveIcon);
11 | lf.register(ExclusiveGateway);
12 | lf.register(InclusiveGateway);
13 | lf.register(ParallelGateway);
14 | }
15 |
--------------------------------------------------------------------------------
/demo/mvp/src/components/icon/Rect.vue:
--------------------------------------------------------------------------------
1 |
2 |
16 |
17 |
21 |
32 |
--------------------------------------------------------------------------------
/demo/mvp/src/main.js:
--------------------------------------------------------------------------------
1 | import Vue from 'vue'
2 | import { Popover, Select, Option, Input, Button, InputNumber, RadioGroup, RadioButton } from 'element-ui'
3 | import 'element-ui/lib/theme-chalk/index.css'
4 |
5 | import App from './App.vue'
6 |
7 | Vue.component(Popover.name, Popover)
8 | Vue.component(Select.name, Select)
9 | Vue.component(Option.name, Option)
10 | Vue.component(Input.name, Input)
11 | Vue.component(Button.name, Button)
12 | Vue.component(InputNumber.name, InputNumber)
13 | Vue.component(RadioGroup.name, RadioGroup)
14 | Vue.component(RadioButton.name, RadioButton)
15 |
16 | Vue.config.productionTip = false
17 |
18 | new Vue({
19 | render: h => h(App)
20 | }).$mount('#app')
--------------------------------------------------------------------------------
/demo/bpmn-and-engine/src/icons/bpmn-icon-task-none.svg:
--------------------------------------------------------------------------------
1 |
4 |
--------------------------------------------------------------------------------
/demo/bpmn-vue/src/plugin/bpmn-elements/index.d.ts:
--------------------------------------------------------------------------------
1 | type DefinitionConfigType = {
2 | nodes: string[];
3 | definition: EventDefinitionType[] | TaskDefinitionType[];
4 | };
5 |
6 | type DefinitionPropertiesType = {
7 | definitionType: string;
8 | timerType?: TimerType;
9 | timerValue?: string;
10 | [key: string]: any;
11 | };
12 |
13 | type EventDefinitionType = {
14 | type: string;
15 | icon: string | Object;
16 | toJSON: Function;
17 | properties: DefinitionPropertiesType;
18 | [key: string]: any;
19 | };
20 |
21 | type TaskDefinitionType = {
22 | type: string;
23 | [key: string]: any;
24 | };
25 |
26 | type TimerType = 'timerCycle' | 'timerDate' | 'timerDuration';
27 |
--------------------------------------------------------------------------------
/docs/en/article/LogicFlow替换bpmn-js实践.md:
--------------------------------------------------------------------------------
1 | # LogicFlow替换bpmn-js实践
2 |
3 | 在我们的项目里面,有一个项目是用bpmn-js来对工作流的流程进行绘制的。为了满足业务需求,我们需要对其进行各种改造,但是随着业务的发展,在bpmn-js上的改造让我们越发的促襟见肘,比如我们要对流程的执行路径进行可视化和数据分析;要将流程图核心部分提取成模板进行复用;要支持流程中间引用其他已上线流程等。所以我们希望有一个核心职责清晰,扩展性强的流程图编辑器。关于LogicFlow的扩展性,可以参考文章[揭秘 LogicFlow 的拓展机制
4 | ](http://logic-flow.org/article/article02.html#logicflow-%E7%9A%84%E6%8B%93%E5%B1%95%E8%83%BD%E5%8A%9B)。
5 |
6 | ## 定制流程图
7 |
8 | LogicFlow本身只是一个提供流程图编辑能力的基础库,是不带任何业务逻辑的。
9 |
10 |
11 | ### 定义bpmn节点
12 |
13 | ### 定义控制面板
14 |
15 | ### 定义菜单栏
16 |
17 | ### 定义节点绘版
18 |
19 | ### 给节点和边绑定业务属性
20 |
21 | ## 历史数据兼容
22 |
23 | ### 适配器
24 |
25 | ### 编辑器切换
26 |
27 | ### 坐标整理
28 |
29 | ### 边整理
30 |
31 | ## 总结
--------------------------------------------------------------------------------
/docs/zh/article/LogicFlow替换bpmn-js实践.md:
--------------------------------------------------------------------------------
1 | # LogicFlow替换bpmn-js实践
2 |
3 | 在我们的项目里面,有一个项目是用bpmn-js来对工作流的流程进行绘制的。为了满足业务需求,我们需要对其进行各种改造,但是随着业务的发展,在bpmn-js上的改造让我们越发的促襟见肘,比如我们要对流程的执行路径进行可视化和数据分析;要将流程图核心部分提取成模板进行复用;要支持流程中间引用其他已上线流程等。所以我们希望有一个核心职责清晰,扩展性强的流程图编辑器。关于LogicFlow的扩展性,可以参考文章[揭秘 LogicFlow 的拓展机制
4 | ](http://logic-flow.org/article/article02.html#logicflow-%E7%9A%84%E6%8B%93%E5%B1%95%E8%83%BD%E5%8A%9B)。
5 |
6 | ## 定制流程图
7 |
8 | LogicFlow本身只是一个提供流程图编辑能力的基础库,是不带任何业务逻辑的。
9 |
10 |
11 | ### 定义bpmn节点
12 |
13 | ### 定义控制面板
14 |
15 | ### 定义菜单栏
16 |
17 | ### 定义节点绘版
18 |
19 | ### 给节点和边绑定业务属性
20 |
21 | ## 历史数据兼容
22 |
23 | ### 适配器
24 |
25 | ### 编辑器切换
26 |
27 | ### 坐标整理
28 |
29 | ### 边整理
30 |
31 | ## 总结
--------------------------------------------------------------------------------
/examples/examples/案例/demo/html-card/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 |
16 |
17 |
18 |
19 |
20 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/demo/pool/config/jest/babelTransform.js:
--------------------------------------------------------------------------------
1 | 'use strict';
2 |
3 | const babelJest = require('babel-jest').default;
4 |
5 | const hasJsxRuntime = (() => {
6 | if (process.env.DISABLE_NEW_JSX_TRANSFORM === 'true') {
7 | return false;
8 | }
9 |
10 | try {
11 | require.resolve('react/jsx-runtime');
12 | return true;
13 | } catch (e) {
14 | return false;
15 | }
16 | })();
17 |
18 | module.exports = babelJest.createTransformer({
19 | presets: [
20 | [
21 | require.resolve('babel-preset-react-app'),
22 | {
23 | runtime: hasJsxRuntime ? 'automatic' : 'classic',
24 | },
25 | ],
26 | ],
27 | babelrc: false,
28 | configFile: false,
29 | });
30 |
--------------------------------------------------------------------------------
/examples/src/router/index.js:
--------------------------------------------------------------------------------
1 | import { createRouter, createWebHashHistory } from "vue-router";
2 |
3 | const routes = [
4 | {
5 | path: "/",
6 | name: "Index",
7 | redirect: "/gallery",
8 | children: [
9 | {
10 | path: "/gallery",
11 | name: "Gallery",
12 | component: () => import("../views/Gallery/index.vue"),
13 | },
14 | {
15 | path: "/playground",
16 | name: "Playground",
17 | component: () => import("../views/Playground/index.vue"),
18 | },
19 | ],
20 | },
21 | ];
22 |
23 | const router = createRouter({
24 | history: createWebHashHistory(),
25 | routes,
26 | });
27 |
28 | export default router;
29 |
--------------------------------------------------------------------------------