drawflow.js 605 B

123456789101112131415161718192021222324
  1. import { createApp, h, defineComponent } from 'vue';
  2. import Drawflow from 'drawflow';
  3. import '@/assets/css/drawflow.css';
  4. const blockComponents = require.context('../components/block', false, /\.vue$/);
  5. export default function (element, ctx) {
  6. const editor = new Drawflow(
  7. element,
  8. { defineComponent, createApp, version: 3, h },
  9. ctx
  10. );
  11. editor.useuuid = true;
  12. editor.reroute = true;
  13. blockComponents.keys().forEach((key) => {
  14. const name = key.replace(/(.\/)|\.vue$/g, '');
  15. editor.registerNode(name, blockComponents(key).default, { editor }, {});
  16. });
  17. return editor;
  18. }