npm.io
1.0.0 • Published 4 years ago

flowchartqa

Licence
MIT
Version
1.0.0
Deps
1
Size
411 kB
Vulns
1
Weekly
0

vue-simple-flowchart

Introduction

a lightweight flowchart editor for Vue.js, code with vanillaJS,

Note

This repository is not being actively maintained due to lack of time and interest.

My sincerest apologies to the open source community for allowing this project to stagnate. I hope it was useful for some of you as a jumping-off point.

Demo

https://jeffreyrn.github.io/vue-simple-flowchart/demo/

Feature
  • drag to connent two node, click to delete link
  • support add, delete, save node
  • reactive flowchart data
Usage

install via npm/yarn

yarn add vue-simple-flowchart

import in script

import SimpleFlowchart from 'vue-simple-flowchart';
import 'vue-simple-flowchart/dist/vue-flowchart.css';

register the component, and add below to html:

<simple-flowchart :scene.sync="data"></simple-flowchart>

then set data for flowchart component, for example:

data() {
    return {
        data: {
            centerX: 1024,
                centerY: 140,
                scale: 1,
                nodes: [
                    {
                        id: 2,
                        x: -700,
                        y: -69,
                        type: 'Action',
                        label: 'test1',
                    },
                    {
                        id: 4,
                        x: -357,
                        y: 80,
                        type: 'Script',
                        label: 'test2',
                    },
                    {
                        id: 6,
                        x: -557,
                        y: 80,
                        type: 'Rule',
                        label: 'test3',
                    }
                    ],
                    links: [
                    {
                        id: 3,
                        from: 2, // node id the link start
                        to: 4,  // node id the link end
                    }
                ]
        },
    };
}
Component
Attributes
  • height, type: Number, default: 400
Events
  • nodeClick, emit when node click, event = nodeID
  • nodeDelete: emit when node deleted, event = nodeID
  • linkBreak: emit when the selected link deleted, event = {id, from, to} (deleted link Object)
  • linkAdded: emit when new link added, event = {id, from, to} (new link Object)
  • canvasClick: emit when canvas click, event = { (Event Object) }

Project setup

yarn install
Compiles and hot-reloads for development
yarn run serve
Compiles and minifies for production
yarn run build
Lints and fixes files
yarn run lint

TODO

  • Add horizontal mode
  • Optimizition for large node array
  • Theme color configurable
  • Remove Console.log in build mode