├── .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 | 2 | 3 | 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 | 2 | 3 | 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 | 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 | 2 | 3 | -------------------------------------------------------------------------------- /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 | 2 | 3 | -------------------------------------------------------------------------------- /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 | 2 | 3 | 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 | 2 | 3 | 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 | 2 | 3 | -------------------------------------------------------------------------------- /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 | 2 | 3 | -------------------------------------------------------------------------------- /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 | 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 | ![node-red](https://cdn.jsdelivr.net/gh/Logic-Flow/static@latest/core/node-red.png) 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 | 2 | 3 | 4 | 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 | 2 | 3 | 4 | 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 | 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 | 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 | 14 | 15 | -------------------------------------------------------------------------------- /demo/mvp/src/components/icon/LeftArrow.vue: -------------------------------------------------------------------------------- 1 | 14 | 15 | -------------------------------------------------------------------------------- /demo/mvp/src/components/icon/RightArrow.vue: -------------------------------------------------------------------------------- 1 | 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 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /demo/mvp/src/components/icon/Trapezoid.vue: -------------------------------------------------------------------------------- 1 | 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 | 2 | 3 | 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 | 15 | 16 | -------------------------------------------------------------------------------- /demo/mvp/src/components/icon/Triangle.vue: -------------------------------------------------------------------------------- 1 | 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 | 15 | 16 | -------------------------------------------------------------------------------- /demo/mvp/src/components/icon/UpArrow.vue: -------------------------------------------------------------------------------- 1 | 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 | 15 | 16 | 20 | -------------------------------------------------------------------------------- /demo/mvp/src/components/icon/VerticalArrow.vue: -------------------------------------------------------------------------------- 1 | 14 | 15 | -------------------------------------------------------------------------------- /demo/organizer/src/tool/pageTip/index.vue: -------------------------------------------------------------------------------- 1 | 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 | 15 | 16 | -------------------------------------------------------------------------------- /demo/mvp/src/components/icon/Septagon.vue: -------------------------------------------------------------------------------- 1 | 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 | 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 | 15 | 16 | -------------------------------------------------------------------------------- /demo/mvp/src/components/icon/Ellipse.vue: -------------------------------------------------------------------------------- 1 | 17 | 18 | 22 | -------------------------------------------------------------------------------- /demo/mvp/src/components/icon/Parallelogram.vue: -------------------------------------------------------------------------------- 1 | 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 | 15 | 16 | -------------------------------------------------------------------------------- /demo/mvp/src/App.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 17 | 18 | 27 | 33 | -------------------------------------------------------------------------------- /demo/organizer/src/icon/plusIcon.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 17 | -------------------------------------------------------------------------------- /demo/organizer/src/icon/filterIcon.vue: -------------------------------------------------------------------------------- 1 | 6 | 7 | 17 | -------------------------------------------------------------------------------- /demo/organizer/src/tool/popover/popoverContent.vue: -------------------------------------------------------------------------------- 1 | 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 | 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 | 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 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /demo/bpmn-and-engine/src/icons/bpmn-icon-connection.svg: -------------------------------------------------------------------------------- 1 | 2 | 3 | 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 | 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 | 2 | 3 | 4 | -------------------------------------------------------------------------------- /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 | 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 | 2 | 3 | 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 | 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 | 2 | 3 | 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 | --------------------------------------------------------------------------------