It's a simple component for drawing flow charts. Still got bugs to fix and function to add.
You can simply import this component by including the FreeFlowChart.min.js file, without other dependencies.
<script src="FreeFlowChart.min.js"></script>
Check directory example for more infomation. And a example of usage is shown as below:
let flowChart = FreeFlowChart({ el: '#draw-main', toolbar: { el: '#draw-tools' } })
You can custom your freeflowchart by change the setting. The options is shown as below:
option | usage | values | default | isNecessary |
---|---|---|---|---|
el | the div of component | div element | none | true |
shapes | enabled shapes | 'process','decision','terminator','storedData' | all | false |
toolbar | toolbar information | el, tools | none | false |
toolbar option | usage | values | default | isNecessary |
---|---|---|---|---|
el | the div of toolbar | div element | none | true |
tools | enabled tools | 'undo', 'redo', 'bold', 'italic', 'underline', 'fontFamily', 'fontSize', 'fontColor', 'fillStyle', 'strokeStyle', 'lineWidth', 'lineDash', 'linkerType', 'arrowType' | all | false |
function | usage | input | output |
---|---|---|---|
FreeFlowChart | Create the instance of freeflowchart or return the created instance. | options / none | instance |
generateImage | generate a image of current shapes and lines. | none | image object |
clear | clear canvas. | none | none |
getModel | get the data model of canvas. | none | json |
addModel | add the model info the current canvas. | model | none |
setModel | reset the canvas. | model | none |
Because this module use singleton pattern to create component. Each page can only have one freeflowchart.