{"version":3,"sources":["jsdelivr-header.js","/npm/vue-flow-raku@1.3.16/lib/index.umd.js"],"names":[],"mappings":"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","file":"/npm/vue-flow-raku@1.3.16/lib/index.umd.js","sourceRoot":"","sourcesContent":["/**\n * Minified by jsDelivr using Terser v5.39.0.\n * Original file: /npm/vue-flow-raku@1.3.16/lib/index.umd.js\n *\n * Do NOT use SRI with dynamically generated files! More information: https://www.jsdelivr.com/using-sri-with-dynamic-files\n */\n","(function webpackUniversalModuleDefinition(root, factory) {\n\tif(typeof exports === 'object' && typeof module === 'object')\n\t\tmodule.exports = factory();\n\telse if(typeof define === 'function' && define.amd)\n\t\tdefine(\"SuperFrom\", [], factory);\n\telse if(typeof exports === 'object')\n\t\texports[\"SuperFrom\"] = factory();\n\telse\n\t\troot[\"SuperFrom\"] = factory();\n})((typeof self !== 'undefined' ? self : this), function() {\nreturn /******/ (function(modules) { // webpackBootstrap\n/******/ \t// The module cache\n/******/ \tvar installedModules = {};\n/******/\n/******/ \t// The require function\n/******/ \tfunction __webpack_require__(moduleId) {\n/******/\n/******/ \t\t// Check if module is in cache\n/******/ \t\tif(installedModules[moduleId]) {\n/******/ \t\t\treturn installedModules[moduleId].exports;\n/******/ \t\t}\n/******/ \t\t// Create a new module (and put it into the cache)\n/******/ \t\tvar module = installedModules[moduleId] = {\n/******/ \t\t\ti: moduleId,\n/******/ \t\t\tl: false,\n/******/ \t\t\texports: {}\n/******/ \t\t};\n/******/\n/******/ \t\t// Execute the module function\n/******/ \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n/******/\n/******/ \t\t// Flag the module as loaded\n/******/ \t\tmodule.l = true;\n/******/\n/******/ \t\t// Return the exports of the module\n/******/ \t\treturn module.exports;\n/******/ \t}\n/******/\n/******/\n/******/ \t// expose the modules object (__webpack_modules__)\n/******/ \t__webpack_require__.m = modules;\n/******/\n/******/ \t// expose the module cache\n/******/ \t__webpack_require__.c = installedModules;\n/******/\n/******/ \t// define getter function for harmony exports\n/******/ \t__webpack_require__.d = function(exports, name, getter) {\n/******/ \t\tif(!__webpack_require__.o(exports, name)) {\n/******/ \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n/******/ \t\t}\n/******/ \t};\n/******/\n/******/ \t// define __esModule on exports\n/******/ \t__webpack_require__.r = function(exports) {\n/******/ \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n/******/ \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n/******/ \t\t}\n/******/ \t\tObject.defineProperty(exports, '__esModule', { value: true });\n/******/ \t};\n/******/\n/******/ \t// create a fake namespace object\n/******/ \t// mode & 1: value is a module id, require it\n/******/ \t// mode & 2: merge all properties of value into the ns\n/******/ \t// mode & 4: return value when already ns object\n/******/ \t// mode & 8|1: behave like require\n/******/ \t__webpack_require__.t = function(value, mode) {\n/******/ \t\tif(mode & 1) value = __webpack_require__(value);\n/******/ \t\tif(mode & 8) return value;\n/******/ \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n/******/ \t\tvar ns = Object.create(null);\n/******/ \t\t__webpack_require__.r(ns);\n/******/ \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n/******/ \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n/******/ \t\treturn ns;\n/******/ \t};\n/******/\n/******/ \t// getDefaultExport function for compatibility with non-harmony modules\n/******/ \t__webpack_require__.n = function(module) {\n/******/ \t\tvar getter = module && module.__esModule ?\n/******/ \t\t\tfunction getDefault() { return module['default']; } :\n/******/ \t\t\tfunction getModuleExports() { return module; };\n/******/ \t\t__webpack_require__.d(getter, 'a', getter);\n/******/ \t\treturn getter;\n/******/ \t};\n/******/\n/******/ \t// Object.prototype.hasOwnProperty.call\n/******/ \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n/******/\n/******/ \t// __webpack_public_path__\n/******/ \t__webpack_require__.p = \"\";\n/******/\n/******/\n/******/ \t// Load entry module and return exports\n/******/ \treturn __webpack_require__(__webpack_require__.s = \"fb15\");\n/******/ })\n/************************************************************************/\n/******/ ({\n\n/***/ \"2470\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_10_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_10_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_10_oneOf_1_2_node_modules_less_loader_dist_cjs_js_ref_10_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_node_vue_vue_type_style_index_0_lang_less___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(\"5341\");\n/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_10_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_10_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_10_oneOf_1_2_node_modules_less_loader_dist_cjs_js_ref_10_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_node_vue_vue_type_style_index_0_lang_less___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_dist_loader_js_ref_10_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_10_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_10_oneOf_1_2_node_modules_less_loader_dist_cjs_js_ref_10_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_node_vue_vue_type_style_index_0_lang_less___WEBPACK_IMPORTED_MODULE_0__);\n/* unused harmony reexport * */\n\n\n/***/ }),\n\n/***/ \"3ad9\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_10_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_10_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_10_oneOf_1_2_node_modules_less_loader_dist_cjs_js_ref_10_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_lang_less___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(\"41f0\");\n/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_10_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_10_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_10_oneOf_1_2_node_modules_less_loader_dist_cjs_js_ref_10_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_lang_less___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_dist_loader_js_ref_10_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_10_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_10_oneOf_1_2_node_modules_less_loader_dist_cjs_js_ref_10_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_index_vue_vue_type_style_index_0_lang_less___WEBPACK_IMPORTED_MODULE_0__);\n/* unused harmony reexport * */\n\n\n/***/ }),\n\n/***/ \"41f0\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n\n/***/ \"5341\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n\n/***/ \"5ebe\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n\n/***/ \"5fa5\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n\n/***/ \"7e2d\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_10_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_10_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_10_oneOf_1_2_node_modules_less_loader_dist_cjs_js_ref_10_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_link_vue_vue_type_style_index_0_lang_less___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(\"5fa5\");\n/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_10_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_10_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_10_oneOf_1_2_node_modules_less_loader_dist_cjs_js_ref_10_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_link_vue_vue_type_style_index_0_lang_less___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_dist_loader_js_ref_10_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_10_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_10_oneOf_1_2_node_modules_less_loader_dist_cjs_js_ref_10_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_link_vue_vue_type_style_index_0_lang_less___WEBPACK_IMPORTED_MODULE_0__);\n/* unused harmony reexport * */\n\n\n/***/ }),\n\n/***/ \"8875\":\n/***/ (function(module, exports, __webpack_require__) {\n\nvar __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;// addapted from the document.currentScript polyfill by Adam Miller\n// MIT license\n// source: https://github.com/amiller-gh/currentScript-polyfill\n\n// added support for Firefox https://bugzilla.mozilla.org/show_bug.cgi?id=1620505\n\n(function (root, factory) {\n  if (true) {\n    !(__WEBPACK_AMD_DEFINE_ARRAY__ = [], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?\n\t\t\t\t(__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__),\n\t\t\t\t__WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));\n  } else {}\n}(typeof self !== 'undefined' ? self : this, function () {\n  function getCurrentScript () {\n    if (document.currentScript) {\n      return document.currentScript\n    }\n  \n    // IE 8-10 support script readyState\n    // IE 11+ & Firefox support stack trace\n    try {\n      throw new Error();\n    }\n    catch (err) {\n      // Find the second match for the \"at\" string to get file src url from stack.\n      var ieStackRegExp = /.*at [^(]*\\((.*):(.+):(.+)\\)$/ig,\n        ffStackRegExp = /@([^@]*):(\\d+):(\\d+)\\s*$/ig,\n        stackDetails = ieStackRegExp.exec(err.stack) || ffStackRegExp.exec(err.stack),\n        scriptLocation = (stackDetails && stackDetails[1]) || false,\n        line = (stackDetails && stackDetails[2]) || false,\n        currentLocation = document.location.href.replace(document.location.hash, ''),\n        pageSource,\n        inlineScriptSourceRegExp,\n        inlineScriptSource,\n        scripts = document.getElementsByTagName('script'); // Live NodeList collection\n  \n      if (scriptLocation === currentLocation) {\n        pageSource = document.documentElement.outerHTML;\n        inlineScriptSourceRegExp = new RegExp('(?:[^\\\\n]+?\\\\n){0,' + (line - 2) + '}[^<]*<script>([\\\\d\\\\D]*?)<\\\\/script>[\\\\d\\\\D]*', 'i');\n        inlineScriptSource = pageSource.replace(inlineScriptSourceRegExp, '$1').trim();\n      }\n  \n      for (var i = 0; i < scripts.length; i++) {\n        // If ready state is interactive, return the script tag\n        if (scripts[i].readyState === 'interactive') {\n          return scripts[i];\n        }\n  \n        // If src matches, return the script tag\n        if (scripts[i].src === scriptLocation) {\n          return scripts[i];\n        }\n  \n        // If inline source matches, return the script tag\n        if (\n          scriptLocation === currentLocation &&\n          scripts[i].innerHTML &&\n          scripts[i].innerHTML.trim() === inlineScriptSource\n        ) {\n          return scripts[i];\n        }\n      }\n  \n      // If no match, return null\n      return null;\n    }\n  };\n\n  return getCurrentScript\n}));\n\n\n/***/ }),\n\n/***/ \"a733\":\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n\n/***/ \"b8fb\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_10_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_10_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_10_oneOf_1_2_node_modules_less_loader_dist_cjs_js_ref_10_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_menu_vue_vue_type_style_index_0_lang_less___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(\"a733\");\n/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_10_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_10_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_10_oneOf_1_2_node_modules_less_loader_dist_cjs_js_ref_10_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_menu_vue_vue_type_style_index_0_lang_less___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_dist_loader_js_ref_10_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_10_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_10_oneOf_1_2_node_modules_less_loader_dist_cjs_js_ref_10_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_menu_vue_vue_type_style_index_0_lang_less___WEBPACK_IMPORTED_MODULE_0__);\n/* unused harmony reexport * */\n\n\n/***/ }),\n\n/***/ \"bce9\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_10_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_10_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_10_oneOf_1_2_node_modules_less_loader_dist_cjs_js_ref_10_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_markLine_vue_vue_type_style_index_0_lang_less___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(\"5ebe\");\n/* harmony import */ var _node_modules_mini_css_extract_plugin_dist_loader_js_ref_10_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_10_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_10_oneOf_1_2_node_modules_less_loader_dist_cjs_js_ref_10_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_markLine_vue_vue_type_style_index_0_lang_less___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_mini_css_extract_plugin_dist_loader_js_ref_10_oneOf_1_0_node_modules_css_loader_dist_cjs_js_ref_10_oneOf_1_1_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_postcss_loader_src_index_js_ref_10_oneOf_1_2_node_modules_less_loader_dist_cjs_js_ref_10_oneOf_1_3_node_modules_cache_loader_dist_cjs_js_ref_0_0_node_modules_vue_loader_lib_index_js_vue_loader_options_markLine_vue_vue_type_style_index_0_lang_less___WEBPACK_IMPORTED_MODULE_0__);\n/* unused harmony reexport * */\n\n\n/***/ }),\n\n/***/ \"fb15\":\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n// ESM COMPAT FLAG\n__webpack_require__.r(__webpack_exports__);\n\n// CONCATENATED MODULE: ./node_modules/@vue/cli-service/lib/commands/build/setPublicPath.js\n// This file is imported into lib/wc client bundles.\n\nif (typeof window !== 'undefined') {\n  var currentScript = window.document.currentScript\n  if (true) {\n    var getCurrentScript = __webpack_require__(\"8875\")\n    currentScript = getCurrentScript()\n\n    // for backward compatibility, because previously we directly included the polyfill\n    if (!('currentScript' in document)) {\n      Object.defineProperty(document, 'currentScript', { get: getCurrentScript })\n    }\n  }\n\n  var src = currentScript && currentScript.src.match(/(.+\\/)[^/]+\\.js(\\?.*)?$/)\n  if (src) {\n    __webpack_require__.p = src[1] // eslint-disable-line\n  }\n}\n\n// Indicate to webpack that this file can be concatenated\n/* harmony default export */ var setPublicPath = (null);\n\n// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{\"cacheDirectory\":\"node_modules/.cache/vue-loader\",\"cacheIdentifier\":\"73c5a3ac-vue-loader-template\"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./packages/index.vue?vue&type=template&id=00f76ee2&\nvar render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{ref:\"flow-canvas\",staticClass:\"super-flow\",on:{\"contextmenu\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.contextmenu($event)}}},[(_vm.temEdgeConf.visible)?_c('graph-line',{attrs:{\"padding\":_vm.linkPadding,\"graph\":_vm.graph,\"link\":_vm.temEdgeConf.link,\"link-base-style\":_vm.linkBaseStyle,\"link-desc\":_vm.linkDesc,\"link-style\":_vm.linkStyle}}):_vm._e(),_vm._l((_vm.graph.linkList),function(edge,idx){return _c('graph-line',{key:edge.key,attrs:{\"index\":idx,\"padding\":_vm.linkPadding,\"graph\":_vm.graph,\"link\":edge,\"link-base-style\":_vm.linkBaseStyle,\"link-desc\":_vm.linkDesc,\"link-style\":_vm.linkStyle}})}),(_vm.moveNodeConf.isMove && _vm.hasMarkLine)?_c('mark-line',{attrs:{\"width\":_vm.clientWidth,\"height\":_vm.clientHeight,\"mark-color\":_vm.markLineColor,\"markLine\":_vm.moveNodeConf.markLine}}):_vm._e(),_vm._l((_vm.graph.nodeList),function(node,idx){return _c('graph-node',{key:node.key,attrs:{\"index\":idx,\"node\":node,\"graph\":_vm.graph,\"is-move\":node === _vm.moveNodeConf.node,\"is-tem-edge\":_vm.temEdgeConf.visible,\"node-intercept\":_vm.nodeIntercept(node),\"line-drop\":_vm.linkAddable,\"node-drop\":_vm.draggable},on:{\"node-mousedown\":_vm.nodeMousedown,\"node-mouseenter\":_vm.nodeMouseenter,\"node-mouseleave\":_vm.nodeMouseleave,\"node-mouseup\":_vm.nodeMouseup,\"side-mousedown\":_vm.sideMousedown,\"node-contextmenu\":_vm.nodeContextmenu},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar meta = ref.meta;\nreturn [_vm._t(\"node\",null,{\"meta\":meta})]}}],null,true)})}),_c('graph-menu',{attrs:{\"visible\":_vm.menuConf.visible,\"graph\":_vm.graph,\"position\":_vm.menuConf.position,\"list\":_vm.menuConf.list,\"source\":_vm.menuConf.source},on:{\"update:visible\":function($event){return _vm.$set(_vm.menuConf, \"visible\", $event)}},scopedSlots:_vm._u([{key:\"default\",fn:function(ref){\nvar item = ref.item;\nreturn [_vm._t(\"menuItem\",null,{\"item\":item})]}}],null,true)}),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.graph.graphSelected),expression:\"graph.graphSelected\"}],ref:\"selectAllMask\",staticClass:\"select-all__mask\",style:(_vm.maskStyle),attrs:{\"tabindex\":\"-1\"},on:{\"blur\":function($event){_vm.graph.graphSelected = false},\"mousedown\":_vm.selectAllMaskMouseDown,\"contextmenu\":function($event){$event.preventDefault();$event.stopPropagation();}}}),_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.graph.graphPartSelected ),expression:\"graph.graphPartSelected \"}],ref:\"selectPartMask\",staticClass:\"select-part__mask\",style:(_vm.maskStylePart),attrs:{\"tabindex\":\"-1\"},on:{\"blur\":function($event){_vm.graph.graphPartSelected = false},\"mousedown\":_vm.selectPartMaskMouseDown,\"contextmenu\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.showMenu($event)}}},[_c('vue-context-menu',{staticStyle:{\"width\":\"120px\",\"height\":\"20px\",\"text-align\":\"center\",\"padding-left\":\"1px\",\"padding-right\":\"1px\"},attrs:{\"contextMenuData\":_vm.contextMenuData},on:{\"copyPartial\":_vm.copyPartial,\"deletePartial\":_vm.deletePartial}})],1)],2)}\nvar staticRenderFns = []\n\n\n// CONCATENATED MODULE: ./packages/index.vue?vue&type=template&id=00f76ee2&\n\n// CONCATENATED MODULE: ./packages/GraphEvent.js\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\n/**\r\n * User: CHT\r\n * Date: 2020/6/3\r\n * Time: 14:53\r\n */\nvar GraphEvent = /*#__PURE__*/function () {\n  function GraphEvent() {\n    _classCallCheck(this, GraphEvent);\n\n    this.listeners = {};\n  }\n\n  _createClass(GraphEvent, [{\n    key: \"add\",\n    value: function add(type, callback) {\n      if (!(type in this.listeners)) {\n        this.listeners[type] = [];\n      }\n\n      this.listeners[type].push(callback);\n    }\n  }, {\n    key: \"remove\",\n    value: function remove(type, callback) {\n      if (!(type in this.listeners)) {\n        return;\n      }\n\n      var stack = this.listeners[type];\n\n      for (var i = 0, l = stack.length; i < l; i++) {\n        if (stack[i] === callback) {\n          stack.splice(i, 1);\n          return this.remove(type, callback);\n        }\n      }\n    }\n  }, {\n    key: \"dispatch\",\n    value: function dispatch(event) {\n      var _this = this;\n\n      var breakOff = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n      if (!(event.type in this.listeners)) {\n        return;\n      }\n\n      var stack = this.listeners[event.type];\n      event.target = this;\n\n      if (breakOff) {\n        stack.some(function (fun, idx) {\n          var result = fun.call(_this, event);\n          if (result) stack.unshift.apply(stack, _toConsumableArray(stack.splice(idx, 1)));\n          return result;\n        });\n      } else {\n        stack.forEach(function (fun) {\n          return fun.call(_this, event);\n        });\n      }\n    }\n  }]);\n\n  return GraphEvent;\n}();\n\n\n// CONCATENATED MODULE: ./packages/utils.js\nfunction utils_toConsumableArray(arr) { return utils_arrayWithoutHoles(arr) || utils_iterableToArray(arr) || utils_unsupportedIterableToArray(arr) || utils_nonIterableSpread(); }\n\nfunction utils_nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction utils_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return utils_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return utils_arrayLikeToArray(o, minLen); }\n\nfunction utils_iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\n\nfunction utils_arrayWithoutHoles(arr) { if (Array.isArray(arr)) return utils_arrayLikeToArray(arr); }\n\nfunction utils_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\n/**\r\n * User: CHT\r\n * Date: 2020/5/8\r\n * Time: 14:03\r\n */\nfunction uuid() {\n  var before = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n  var after = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';\n  var chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.split('');\n  var charsLen = chars.length;\n  var uuid = [];\n  var len = 16;\n\n  for (var i = 0; i < len; i++) {\n    uuid[i] = chars[0 | Math.random() * charsLen];\n  }\n\n  return before + uuid.join('') + after;\n}\nfunction getOffset(evt, zoomDiv) {\n  var target = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : null;\n  var clientX = evt.clientX,\n      clientY = evt.clientY,\n      currentTarget = evt.currentTarget;\n  var current = target || currentTarget;\n\n  var _current$getBoundingC = current.getBoundingClientRect(),\n      left = _current$getBoundingC.left,\n      top = _current$getBoundingC.top;\n\n  return [clientX / zoomDiv * 100 - left, clientY / zoomDiv * 100 - top];\n}\nfunction isIntersect(_ref, target) {\n  var clientX = _ref.clientX,\n      clientY = _ref.clientY;\n\n  var _target$getBoundingCl = target.getBoundingClientRect(),\n      top = _target$getBoundingCl.top,\n      right = _target$getBoundingCl.right,\n      bottom = _target$getBoundingCl.bottom,\n      left = _target$getBoundingCl.left;\n\n  return top < clientY && right > clientX && bottom > clientY && left < clientX;\n} // 向量相加\n\nfunction addVector(vectorA, vectorB) {\n  return [vectorA[0] + vectorB[0], vectorA[1] + vectorB[1]];\n} //  向量乘以常量系数\n\nfunction multiply(vector, k) {\n  return [vector[0] * k, vector[1] * k];\n}\nfunction differ(pointA, pointB) {\n  return [pointB[0] - pointA[0], pointB[1] - pointA[1]];\n}\nfunction minus(pointA, pointB) {\n  return [pointA[0] - pointB[0], pointA[1] - pointB[1]];\n} // 向量点积\n\nfunction dotProduct(vectorA, vectorB) {\n  return vectorA[0] * vectorB[0] + vectorA[1] * vectorB[1];\n} // 向量叉乘\n\nfunction cross(vectorA, vectorB) {\n  return vectorA[0] * vectorB[1] - vectorA[1] * vectorB[0];\n} // 向量的单位向量\n\nfunction unitVector(vector) {\n  var m = Math.sqrt(vector[0] * vector[0] + vector[1] * vector[1]);\n  return [vector[0] / m, vector[1] / m];\n} // 判断向量 x,y 坐标相等\n\nfunction equals(vector, target) {\n  return vector[0] === target[0] && vector[1] === target[1];\n} // 向量夹角\n\nfunction utils_angle(vector) {\n  return Math.round(180 / Math.PI * Math.atan2(vector[1], vector[0])) + 180;\n} // 判断向量是否平行\n\nfunction parallel(vectorA, vectorB) {\n  return vectorA[0] * vectorB[1] - vectorA[1] * vectorB[0] === 0;\n} // 判断 y 轴相等\n\nfunction yAxisEqual(vectorA, vectorB) {\n  return vectorA[1] === vectorB[1];\n} // 判断 x 轴相等\n\nfunction xAxisEqual(vectorA, vectorB) {\n  return vectorA[0] === vectorB[0];\n} //\n\nfunction vector(result) {\n  var handler = {\n    add: addVector,\n    multiply: multiply,\n    differ: differ,\n    minus: minus,\n    dotProduct: dotProduct,\n    cross: cross,\n    unitVector: unitVector,\n    equals: equals,\n    angle: utils_angle,\n    parallel: parallel\n  };\n  var proxyHandler = {};\n  Object.keys(handler).forEach(function (key) {\n    Object.defineProperty(proxyHandler, key, {\n      get: function get() {\n        return function (val) {\n          result = handler[key](result, val);\n          return proxyHandler;\n        };\n      }\n    });\n  });\n  Object.defineProperty(proxyHandler, 'end', {\n    get: function get() {\n      return result;\n    }\n  });\n  return proxyHandler;\n}\nfunction toRawType(val) {\n  return Object.prototype.toString.call(val).slice(8, -1).toLocaleLowerCase();\n}\nfunction isFun(val) {\n  return toRawType(val) === 'function';\n}\nfunction isBool(val) {\n  return toRawType(val) === 'boolean';\n}\nfunction isUndef(val) {\n  return toRawType(val) === 'undefined';\n}\nfunction isString(val) {\n  return toRawType(val) === 'string';\n}\nfunction isObject(val) {\n  return toRawType(val) === 'object';\n}\nfunction arrayReplace(arr1, arr2) {\n  arr1.splice.apply(arr1, [0, arr1.length].concat(utils_toConsumableArray(arr2)));\n}\nfunction debounce(fn, timestamp) {\n  var timeout = null;\n  return function () {\n    if (timeout) clearTimeout(timeout);\n    timeout = setTimeout(fn, timestamp);\n  };\n}\n// CONCATENATED MODULE: ./packages/types.js\nvar _directionVector;\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n/**\r\n * User: CHT\r\n * Date: 2020/5/27\r\n * Time: 9:52\r\n*/\nvar types_direction = {\n  top: 1,\n  right: 2,\n  bottom: 3,\n  left: 4\n}; // [0,-1] 右：[1,0] 下 [1,1] 左 [-1,0]\n\nvar directionVector = (_directionVector = {}, _defineProperty(_directionVector, types_direction.top, [0, -1]), _defineProperty(_directionVector, types_direction.right, [1, 0]), _defineProperty(_directionVector, types_direction.bottom, [0, 1]), _defineProperty(_directionVector, types_direction.left, [-1, 0]), _directionVector);\n// CONCATENATED MODULE: ./packages/GraphNode.js\nfunction GraphNode_toConsumableArray(arr) { return GraphNode_arrayWithoutHoles(arr) || GraphNode_iterableToArray(arr) || GraphNode_unsupportedIterableToArray(arr) || GraphNode_nonIterableSpread(); }\n\nfunction GraphNode_nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction GraphNode_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return GraphNode_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return GraphNode_arrayLikeToArray(o, minLen); }\n\nfunction GraphNode_iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\n\nfunction GraphNode_arrayWithoutHoles(arr) { if (Array.isArray(arr)) return GraphNode_arrayLikeToArray(arr); }\n\nfunction GraphNode_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction GraphNode_classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction GraphNode_defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction GraphNode_createClass(Constructor, protoProps, staticProps) { if (protoProps) GraphNode_defineProperties(Constructor.prototype, protoProps); if (staticProps) GraphNode_defineProperties(Constructor, staticProps); return Constructor; }\n\n/**\r\n * User: CHT\r\n * Date: 2020/5/8\r\n * Time: 14:01\r\n */\n\n\n\nvar GraphNode_GraphNode = /*#__PURE__*/function () {\n  function GraphNode(props, graph) {\n    GraphNode_classCallCheck(this, GraphNode);\n\n    var _props$id = props.id,\n        id = _props$id === void 0 ? uuid('node') : _props$id,\n        _props$width = props.width,\n        width = _props$width === void 0 ? 180 : _props$width,\n        _props$height = props.height,\n        height = _props$height === void 0 ? 100 : _props$height,\n        _props$coordinate = props.coordinate,\n        coordinate = _props$coordinate === void 0 ? [0, 0] : _props$coordinate,\n        _props$meta = props.meta,\n        meta = _props$meta === void 0 ? null : _props$meta;\n    this.key = uuid('node');\n    this.graph = graph;\n    this.id = id;\n    this.coordinate = GraphNode_toConsumableArray(coordinate);\n    this.meta = meta;\n    this.width = width;\n    this.height = height;\n  }\n\n  GraphNode_createClass(GraphNode, [{\n    key: \"position\",\n    get: function get() {\n      return vector(this.coordinate).add(this.graph.origin).end;\n    },\n    set: function set(position) {\n      this.coordinate = vector(position).minus(this.graph.origin).end;\n    }\n  }, {\n    key: \"center\",\n    get: function get() {\n      return vector(this.coordinate).add([this.width / 2, this.height / 2]).end;\n    },\n    set: function set(position) {\n      this.coordinate = vector(position).minus([this.width / 2, this.height / 2]).end;\n    }\n  }, {\n    key: \"width\",\n    get: function get() {\n      return this._width;\n    },\n    set: function set(w) {\n      w = Math.floor(w);\n      this._width = w > 50 ? w : 50;\n      this.angle();\n    }\n  }, {\n    key: \"height\",\n    get: function get() {\n      return this._height;\n    },\n    set: function set(h) {\n      h = Math.floor(h);\n      this._height = h > 20 ? h : 20;\n      this.angle();\n    }\n  }, {\n    key: \"angle\",\n    value: function angle() {\n      var w = this.width / 2,\n          h = this.height / 2,\n          center = [0, 0];\n      var topLeft = vector(center).minus([w, h]).angle().end;\n      var topRight = vector(center).add([w, 0]).minus([0, h]).angle().end;\n      var bottomRight = vector(center).add([w, h]).angle().end;\n      var bottomLeft = vector(center).add([0, h]).minus([w, 0]).angle().end;\n      this.angleList = [topLeft, topRight, bottomRight, bottomLeft];\n    }\n  }, {\n    key: \"relative\",\n    value: function relative(offset) {\n      var angle = vector(offset).minus([this.width / 2, this.height / 2]).angle().end;\n      var angleList = this.angleList;\n      var directionList = [types_direction.top, types_direction.right, types_direction.bottom, types_direction.left];\n      var dir = types_direction.left;\n      angleList.reduce(function (prev, current, idx) {\n        if (angle >= prev && angle < current) {\n          dir = directionList[idx - 1];\n        }\n\n        return current;\n      });\n      return {\n        position: this.fixOffset(offset, dir),\n        direction: directionVector[dir]\n      };\n    }\n  }, {\n    key: \"fixOffset\",\n    value: function fixOffset(offset, dir) {\n      switch (dir) {\n        case types_direction.top:\n          offset[0] = this.width / 2;\n          offset[1] = 0;\n          break;\n\n        case types_direction.right:\n          offset[0] = this.width;\n          offset[1] = this.height / 2;\n          break;\n\n        case types_direction.bottom:\n          offset[0] = this.width / 2;\n          offset[1] = this.height;\n          break;\n\n        case types_direction.left:\n        default:\n          offset[0] = 0;\n          offset[1] = this.height / 2;\n          break;\n      }\n\n      return offset;\n    }\n  }, {\n    key: \"remove\",\n    value: function remove() {\n      return this.graph.removeNode(this);\n    }\n  }, {\n    key: \"toJSON\",\n    value: function toJSON() {\n      return {\n        id: this.id,\n        width: this.width,\n        height: this.height,\n        coordinate: GraphNode_toConsumableArray(this.coordinate),\n        meta: this.meta\n      };\n    }\n  }]);\n\n  return GraphNode;\n}();\n\n\n// CONCATENATED MODULE: ./packages/GraphLink.js\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || GraphLink_unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction GraphLink_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return GraphLink_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return GraphLink_arrayLikeToArray(o, minLen); }\n\nfunction GraphLink_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr && (typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]); if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction GraphLink_classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction GraphLink_defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction GraphLink_createClass(Constructor, protoProps, staticProps) { if (protoProps) GraphLink_defineProperties(Constructor.prototype, protoProps); if (staticProps) GraphLink_defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction GraphLink_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n/**\r\n * User: CHT\r\n * Date: 2020/5/8\r\n * Time: 14:01\r\n */\n\n\n\nvar GraphLink_GraphLink = /*#__PURE__*/function () {\n  function GraphLink(options, graph) {\n    GraphLink_classCallCheck(this, GraphLink);\n\n    var _options$id = options.id,\n        id = _options$id === void 0 ? uuid('link') : _options$id,\n        start = options.start,\n        _options$end = options.end,\n        end = _options$end === void 0 ? null : _options$end,\n        _options$startAt = options.startAt,\n        startAt = _options$startAt === void 0 ? [0, 0] : _options$startAt,\n        _options$endAt = options.endAt,\n        endAt = _options$endAt === void 0 ? [0, 0] : _options$endAt,\n        _options$meta = options.meta,\n        meta = _options$meta === void 0 ? null : _options$meta;\n    this.key = uuid('link');\n    this.id = id;\n    this.graph = graph;\n    this.start = start;\n    this.meta = meta;\n    this.end = end;\n    this.startDirection = directionVector[types_direction.top];\n    this.endDirection = directionVector[types_direction.top];\n    this.startAt = startAt;\n    this.endAt = endAt;\n  }\n\n  GraphLink_createClass(GraphLink, [{\n    key: \"end\",\n    get: function get() {\n      return this._end;\n    },\n    set: function set(node) {\n      if (this.start === node) {\n        return false;\n      } else {\n        this._end = node;\n      }\n    }\n  }, {\n    key: \"startAt\",\n    get: function get() {\n      return this._startAt;\n    },\n    set: function set(offset) {\n      var relative = this.start.relative(offset);\n      this._startAt = relative.position;\n      this.startDirection = relative.direction;\n    }\n  }, {\n    key: \"endAt\",\n    get: function get() {\n      return this._endAt;\n    },\n    set: function set(offset) {\n      if (this.end) {\n        var relative = this.end.relative(offset);\n        this._endAt = relative.position;\n        this.endDirection = relative.direction;\n      } else {\n        this._endAt = offset;\n      }\n    }\n  }, {\n    key: \"movePosition\",\n    get: function get() {\n      return this._movePosition;\n    },\n    set: function set(offset) {\n      this._movePosition = offset;\n      if (this.end) return;\n      var relative = this.start.relative(vector(offset).minus(this.graph.origin).minus(this.start.coordinate).end);\n      this.endDirection = vector(relative.direction).multiply(-1).end;\n    }\n  }, {\n    key: \"pathPointList\",\n    get: function get() {\n      var pointList = this.coordinateList(),\n          xList = [],\n          yList = [];\n      pointList.forEach(function (item) {\n        xList.push(item[0]);\n        yList.push(item[1]);\n      });\n      return {\n        pointList: pointList,\n        xList: xList,\n        yList: yList,\n        minX: Math.min.apply(Math, xList),\n        maxX: Math.max.apply(Math, xList),\n        minY: Math.min.apply(Math, yList),\n        maxY: Math.max.apply(Math, yList)\n      };\n    }\n  }, {\n    key: \"startCoordinate\",\n    value: function startCoordinate() {\n      return vector(this.start.position).add(this.startAt).end;\n    }\n  }, {\n    key: \"endCoordinate\",\n    value: function endCoordinate() {\n      if (this.end) {\n        return vector(this.end.position).add(this.endAt).end;\n      } else {\n        return this.movePosition;\n      }\n    }\n  }, {\n    key: \"coordinateList\",\n    value: function coordinateList() {\n      var turnRatio = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 0.5;\n      var entryPoint = this.startCoordinate();\n      var exitPoint = this.endCoordinate();\n      var entryDirection = this.startDirection;\n      var exitDirection = this.endDirection; // 路径起点\n\n      var startPoint = vector(entryDirection).multiply(GraphLink.distance).add(entryPoint).end; // 路径终点\n\n      var endPoint = vector(exitDirection).multiply(GraphLink.distance).add(exitPoint).end; // 入口方向取反\n\n      exitDirection = vector(exitDirection).multiply(-1).end; // 终点 - 起点  垂直 水平向量\n\n      var pathHorizontalVec = [endPoint[0] - startPoint[0], 0];\n      var pathVerticalVec = [0, endPoint[1] - startPoint[1]];\n      var startDirection = this.pathDirection(pathVerticalVec, pathHorizontalVec, entryDirection);\n      var endDirection = this.pathDirection(pathVerticalVec, pathHorizontalVec, exitDirection);\n      var splitNum = vector(startDirection).dotProduct(endDirection).end > 0 ? 2 : 1;\n      var pathMiddle = endDirection === pathHorizontalVec ? pathVerticalVec : pathHorizontalVec;\n      var points = [];\n      points.push(entryPoint, startPoint);\n\n      if (splitNum === 1) {\n        var point1 = vector(startPoint).add(startDirection).end;\n        var point2 = vector(point1).add(endDirection).end;\n        points.push(point1, point2);\n      } else {\n        var _point = vector(startDirection).multiply(turnRatio).add(startPoint).end;\n        var _point2 = vector(_point).add(pathMiddle).end;\n        var point3 = vector(endDirection).multiply(1 - turnRatio).add(_point2).end;\n        points.push(_point, _point2, point3);\n      }\n\n      points.push(exitPoint);\n      return points;\n    }\n  }, {\n    key: \"pathDirection\",\n    value: function pathDirection(vertical, horizontal, direction) {\n      if (vector(horizontal).parallel(direction).end) {\n        if (vector(horizontal).dotProduct(direction).end > 0) {\n          return horizontal;\n        } else {\n          return vertical;\n        }\n      } else {\n        if (vector(vertical).dotProduct(direction).end > 0) {\n          return vertical;\n        } else {\n          return horizontal;\n        }\n      }\n    }\n  }, {\n    key: \"isPointInLink\",\n    value: function isPointInLink(position, pathPointList) {\n      var _ref = pathPointList || this.pathPointList,\n          pointList = _ref.pointList,\n          minX = _ref.minX,\n          minY = _ref.minY,\n          maxX = _ref.maxX,\n          maxY = _ref.maxY;\n\n      var n = 5;\n\n      if (position[0] < minX - n || position[0] > maxX + n || position[1] < minY - n || position[1] > maxY + n) {\n        return false;\n      }\n\n      for (var i = 0; i < pointList.length - 2; i++) {\n        var prev = pointList[i];\n        var current = pointList[i + 1];\n        var top = Math.min(prev[1], current[1]) - n;\n        var right = Math.max(prev[0], current[0]) + n;\n        var bottom = Math.max(prev[1], current[1]) + n;\n        var left = Math.min(prev[0], current[0]) - n;\n\n        var _position = _slicedToArray(position, 2),\n            x = _position[0],\n            y = _position[1];\n\n        if (x > left && x < right && y > top && y < bottom) {\n          return true;\n        }\n      }\n\n      return false;\n    }\n  }, {\n    key: \"remove\",\n    value: function remove() {\n      return this.graph.removeLink(this);\n    }\n  }, {\n    key: \"toJSON\",\n    value: function toJSON() {\n      return {\n        id: this.id,\n        startId: this.start.id,\n        endId: this.end.id,\n        startAt: this.startAt,\n        endAt: this.endAt,\n        meta: this.meta\n      };\n    }\n  }]);\n\n  return GraphLink;\n}();\n\nGraphLink_defineProperty(GraphLink_GraphLink, \"distance\", 15);\n\n\n// CONCATENATED MODULE: ./packages/Graph.js\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction Graph_toConsumableArray(arr) { return Graph_arrayWithoutHoles(arr) || Graph_iterableToArray(arr) || Graph_unsupportedIterableToArray(arr) || Graph_nonIterableSpread(); }\n\nfunction Graph_nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction Graph_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return Graph_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return Graph_arrayLikeToArray(o, minLen); }\n\nfunction Graph_iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\n\nfunction Graph_arrayWithoutHoles(arr) { if (Array.isArray(arr)) return Graph_arrayLikeToArray(arr); }\n\nfunction Graph_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction Graph_classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction Graph_defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction Graph_createClass(Constructor, protoProps, staticProps) { if (protoProps) Graph_defineProperties(Constructor.prototype, protoProps); if (staticProps) Graph_defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\n/**\r\n * User: CHT\r\n * Date: 2020/5/8\r\n * Time: 14:00\r\n */\n\n\n\n\n\nvar Graph_Graph = /*#__PURE__*/function (_GraphEvent) {\n  _inherits(Graph, _GraphEvent);\n\n  var _super = _createSuper(Graph);\n\n  function Graph(options) {\n    var _this;\n\n    Graph_classCallCheck(this, Graph);\n\n    var _options$nodeList = options.nodeList,\n        nodeList = _options$nodeList === void 0 ? [] : _options$nodeList,\n        _options$linkList = options.linkList,\n        linkList = _options$linkList === void 0 ? [] : _options$linkList,\n        origin = options.origin;\n    _this = _super.call(this);\n    _this.nodeList = [];\n    _this.linkList = [];\n    _this.origin = origin;\n    _this.mouseonLink = null;\n    _this.mouseonNode = null;\n    _this.zoomDiv = 100;\n    _this.graphSelected = false;\n    _this.maskBoundingClientRect = {};\n    _this.graphPartSelected = false;\n    _this.maskBoundingClientRectPart = {};\n\n    _this.initNode(nodeList);\n\n    _this.initLink(linkList);\n\n    return _this;\n  }\n\n  Graph_createClass(Graph, [{\n    key: \"setZoomDiv\",\n    value: function setZoomDiv(zoomDiv) {\n      this.zoomDiv = zoomDiv;\n    }\n  }, {\n    key: \"pointMap\",\n    value: function pointMap() {\n      var map = {};\n      this.nodeList.forEach(function (point) {\n        map[point.id] = point;\n      });\n      return map;\n    }\n  }, {\n    key: \"initNode\",\n    value: function initNode(nodeList) {\n      var _this2 = this;\n\n      arrayReplace(this.nodeList, nodeList.map(function (node) {\n        return _this2.createNode(node);\n      }));\n      return this.nodeList;\n    }\n  }, {\n    key: \"initLink\",\n    value: function initLink(linkList) {\n      var _this3 = this;\n\n      var list = [];\n      linkList.forEach(function (link) {\n        var _link$startId = link.startId,\n            startId = _link$startId === void 0 ? '' : _link$startId,\n            _link$endId = link.endId,\n            endId = _link$endId === void 0 ? '' : _link$endId,\n            _link$startAt = link.startAt,\n            startAt = _link$startAt === void 0 ? [0, 0] : _link$startAt,\n            _link$endAt = link.endAt,\n            endAt = _link$endAt === void 0 ? [0, 0] : _link$endAt,\n            _link$meta = link.meta,\n            meta = _link$meta === void 0 ? null : _link$meta;\n\n        var pointMap = _this3.pointMap();\n\n        var start = pointMap[startId];\n        var end = pointMap[endId];\n\n        if (start && end) {\n          list.push(_this3.createLink({\n            start: start,\n            end: end,\n            meta: meta,\n            startAt: startAt,\n            endAt: endAt\n          }));\n        }\n      });\n      arrayReplace(this.linkList, list);\n      return this.linkList;\n    }\n  }, {\n    key: \"createNode\",\n    value: function createNode(options) {\n      return new GraphNode_GraphNode(options, this);\n    }\n  }, {\n    key: \"createLink\",\n    value: function createLink(options) {\n      return new GraphLink_GraphLink(options, this);\n    }\n  }, {\n    key: \"addNode\",\n    value: function addNode(options) {\n      var node = options.constructor === GraphNode_GraphNode ? options : this.createNode(options);\n      this.nodeList.push(node);\n      return node;\n    }\n  }, {\n    key: \"addLink\",\n    value: function addLink(options) {\n      var newLink = options.constructor === GraphLink_GraphLink ? options : this.createLink(options);\n      var currentLink = this.linkList.find(function (item) {\n        return item.start === newLink.start && item.end === newLink.end;\n      });\n\n      if (currentLink) {\n        currentLink.startAt = newLink.startAt;\n        currentLink.endAt = newLink.endAt;\n      } else if (newLink.start && newLink.end) {\n        this.linkList.push(newLink);\n      }\n\n      return newLink;\n    }\n  }, {\n    key: \"removeNode\",\n    value: function removeNode(node) {\n      var _this4 = this;\n\n      var idx = this.nodeList.indexOf(node);\n      this.linkList.filter(function (link) {\n        return link.start === node || link.end === node;\n      }).forEach(function (link) {\n        _this4.removeLink(link);\n      });\n      this.nodeList.splice(idx, 1);\n      return node;\n    }\n  }, {\n    key: \"removeLink\",\n    value: function removeLink(link) {\n      var idx = this.linkList.indexOf(link);\n      this.linkList.splice(idx, 1);\n\n      if (this.mouseonLink === link) {\n        this.mouseonLink = null;\n      }\n\n      return link;\n    }\n  }, {\n    key: \"toLastNode\",\n    value: function toLastNode(idx) {\n      var nodeList = this.nodeList;\n      nodeList.splice.apply(nodeList, [nodeList.length - 1, 0].concat(Graph_toConsumableArray(nodeList.splice(idx, 1))));\n    }\n  }, {\n    key: \"toLastLink\",\n    value: function toLastLink(idx) {\n      var linkList = this.linkList;\n      linkList.splice.apply(linkList, [linkList.length - 1, 0].concat(Graph_toConsumableArray(linkList.splice(idx, 1))));\n    }\n  }, {\n    key: \"toJSON\",\n    value: function toJSON() {\n      return {\n        origin: this.origin,\n        nodeList: this.nodeList.map(function (node) {\n          return node.toJSON();\n        }),\n        linkList: this.linkList.map(function (link) {\n          return link.toJSON();\n        })\n      };\n    }\n  }, {\n    key: \"selectAll\",\n    value: function selectAll() {\n      var nodeList = this.nodeList;\n      var margin = 20;\n      this.maskBoundingClientRect = {\n        top: Math.min.apply(Math, Graph_toConsumableArray(nodeList.map(function (node) {\n          return node.center[1] - node.height / 2;\n        }))) - margin,\n        right: Math.max.apply(Math, Graph_toConsumableArray(nodeList.map(function (node) {\n          return node.center[0] + node.width / 2;\n        }))) + margin,\n        bottom: Math.max.apply(Math, Graph_toConsumableArray(nodeList.map(function (node) {\n          return node.center[1] + node.height / 2;\n        }))) + margin,\n        left: Math.min.apply(Math, Graph_toConsumableArray(nodeList.map(function (node) {\n          return node.center[0] - node.width / 2;\n        }))) - margin\n      };\n      this.graphSelected = true;\n    }\n  }, {\n    key: \"selectPartial\",\n    value: function selectPartial(startLeft, startTop, startWidth, startHeight, graphPartFlg) {\n      this.maskBoundingClientRectPart = {\n        top: startTop,\n        right: startLeft + startWidth,\n        bottom: startTop + startHeight,\n        left: startLeft\n      };\n      this.graphPartSelected = graphPartFlg;\n    }\n  }]);\n\n  return Graph;\n}(GraphEvent);\n\n/* harmony default export */ var packages_Graph = (Graph_Graph);\n// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{\"cacheDirectory\":\"node_modules/.cache/vue-loader\",\"cacheIdentifier\":\"73c5a3ac-vue-loader-template\"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./packages/menu.vue?vue&type=template&id=3f925806&\nvar menuvue_type_template_id_3f925806_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"super-flow__menu-container\"},[_c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.visible),expression:\"visible\"}],staticClass:\"flow__menu-mask\",on:{\"mousemove\":function($event){$event.stopPropagation();$event.preventDefault();},\"mousedown\":_vm.close}}),_c('ul',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.visible),expression:\"visible\"}],staticClass:\"super-flow__menu\",style:(_vm.style),attrs:{\"tabindex\":\"-1\"},on:{\"mousemove\":function($event){$event.stopPropagation();$event.preventDefault();},\"contextmenu\":function($event){$event.preventDefault();$event.stopPropagation();},\"blur\":_vm.close}},[_vm._l((_vm.list),function(subList){return [_vm._l((subList),function(subItem){return _c('li',{staticClass:\"super-flow__menu-item\",class:{'is-disabled': subItem.disable},on:{\"click\":function($event){return _vm.select(subItem)}}},[_vm._t(\"default\",[_c('span',{staticClass:\"super-flow__menu-item-icon\"}),_c('span',{staticClass:\"super-flow__menu-item-content\"},[_vm._v(\" \"+_vm._s(subItem.label)+\" \")])],{\"item\":subItem})],2)}),_c('li',{staticClass:\"super-flow__menu-line\"})]})],2)])}\nvar menuvue_type_template_id_3f925806_staticRenderFns = []\n\n\n// CONCATENATED MODULE: ./packages/menu.vue?vue&type=template&id=3f925806&\n\n// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./packages/menu.vue?vue&type=script&lang=js&\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n/* harmony default export */ var menuvue_type_script_lang_js_ = ({\n  props: {\n    graph: Object,\n    visible: {\n      type: Boolean,\n      \"default\": false\n    },\n    list: {\n      type: Array,\n      \"default\": function _default() {\n        return [];\n      }\n    },\n    position: {\n      type: Array,\n      \"default\": function _default() {\n        return [0, 0];\n      }\n    },\n    source: {\n      type: Object,\n      \"default\": function _default() {\n        return {};\n      }\n    }\n  },\n  computed: {\n    style: function style() {\n      return {\n        left: this.position[0] + 'px',\n        top: this.position[1] + 'px'\n      };\n    }\n  },\n  methods: {\n    select: function select(subItem) {\n      if (subItem.disable) return;\n      this.$emit('update:visible', false);\n      subItem.selected(this.source, vector(this.position).minus(this.graph.origin).end);\n    },\n    close: function close(evt) {\n      this.$emit('update:visible', false);\n    }\n  },\n  watch: {\n    visible: function visible() {\n      var _this = this;\n\n      if (this.visible) {\n        this.$nextTick(function () {\n          return _this.$el.focus();\n        });\n      }\n    }\n  }\n});\n// CONCATENATED MODULE: ./packages/menu.vue?vue&type=script&lang=js&\n /* harmony default export */ var packages_menuvue_type_script_lang_js_ = (menuvue_type_script_lang_js_); \n// EXTERNAL MODULE: ./packages/menu.vue?vue&type=style&index=0&lang=less&\nvar menuvue_type_style_index_0_lang_less_ = __webpack_require__(\"b8fb\");\n\n// CONCATENATED MODULE: ./node_modules/vue-loader/lib/runtime/componentNormalizer.js\n/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nfunction normalizeComponent (\n  scriptExports,\n  render,\n  staticRenderFns,\n  functionalTemplate,\n  injectStyles,\n  scopeId,\n  moduleIdentifier, /* server only */\n  shadowMode /* vue-cli only */\n) {\n  // Vue.extend constructor export interop\n  var options = typeof scriptExports === 'function'\n    ? scriptExports.options\n    : scriptExports\n\n  // render functions\n  if (render) {\n    options.render = render\n    options.staticRenderFns = staticRenderFns\n    options._compiled = true\n  }\n\n  // functional template\n  if (functionalTemplate) {\n    options.functional = true\n  }\n\n  // scopedId\n  if (scopeId) {\n    options._scopeId = 'data-v-' + scopeId\n  }\n\n  var hook\n  if (moduleIdentifier) { // server build\n    hook = function (context) {\n      // 2.3 injection\n      context =\n        context || // cached call\n        (this.$vnode && this.$vnode.ssrContext) || // stateful\n        (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n      // 2.2 with runInNewContext: true\n      if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n        context = __VUE_SSR_CONTEXT__\n      }\n      // inject component styles\n      if (injectStyles) {\n        injectStyles.call(this, context)\n      }\n      // register component module identifier for async chunk inferrence\n      if (context && context._registeredComponents) {\n        context._registeredComponents.add(moduleIdentifier)\n      }\n    }\n    // used by ssr in case component is cached and beforeCreate\n    // never gets called\n    options._ssrRegister = hook\n  } else if (injectStyles) {\n    hook = shadowMode\n      ? function () {\n        injectStyles.call(\n          this,\n          (options.functional ? this.parent : this).$root.$options.shadowRoot\n        )\n      }\n      : injectStyles\n  }\n\n  if (hook) {\n    if (options.functional) {\n      // for template-only hot-reload because in that case the render fn doesn't\n      // go through the normalizer\n      options._injectStyles = hook\n      // register for functional component in vue file\n      var originalRender = options.render\n      options.render = function renderWithStyleInjection (h, context) {\n        hook.call(context)\n        return originalRender(h, context)\n      }\n    } else {\n      // inject component registration as beforeCreate hook\n      var existing = options.beforeCreate\n      options.beforeCreate = existing\n        ? [].concat(existing, hook)\n        : [hook]\n    }\n  }\n\n  return {\n    exports: scriptExports,\n    options: options\n  }\n}\n\n// CONCATENATED MODULE: ./packages/menu.vue\n\n\n\n\n\n\n/* normalize component */\n\nvar component = normalizeComponent(\n  packages_menuvue_type_script_lang_js_,\n  menuvue_type_template_id_3f925806_render,\n  menuvue_type_template_id_3f925806_staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\n/* harmony default export */ var packages_menu = (component.exports);\n// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{\"cacheDirectory\":\"node_modules/.cache/vue-loader\",\"cacheIdentifier\":\"73c5a3ac-vue-loader-template\"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./packages/node.vue?vue&type=template&id=14ffa849&\nvar nodevue_type_template_id_14ffa849_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"super-flow__node\",class:{'can-move': _vm.nodeDrop},style:(_vm.style),attrs:{\"tabindex\":\"-1\"},on:{\"mousedown\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"left\",37,$event.key,[\"Left\",\"ArrowLeft\"])){ return null; }if('button' in $event && $event.button !== 0){ return null; }return _vm.nodeMousedown($event)},\"mouseenter\":_vm.nodeMouseenter,\"mouseleave\":_vm.nodeMouseleave,\"mouseup\":_vm.nodeMouseup,\"contextmenu\":function($event){$event.preventDefault();$event.stopPropagation();return _vm.nodeContextmenu($event)}}},[_vm._t(\"default\",null,{\"meta\":_vm.node.meta}),_vm._l((_vm.direction),function(dir,key){return _c('div',{directives:[{name:\"show\",rawName:\"v-show\",value:(_vm.output && _vm.lineDrop),expression:\"output && lineDrop\"}],class:(\"node-side node-side-\" + key),on:{\"contextmenu\":function($event){$event.stopPropagation();$event.preventDefault();},\"mousedown\":function($event){if(!$event.type.indexOf('key')&&_vm._k($event.keyCode,\"left\",37,$event.key,[\"Left\",\"ArrowLeft\"])){ return null; }if('button' in $event && $event.button !== 0){ return null; }$event.preventDefault();$event.stopPropagation();return (function (evt) { return _vm.sideMousedown(evt, dir); })($event)}}})})],2)}\nvar nodevue_type_template_id_14ffa849_staticRenderFns = []\n\n\n// CONCATENATED MODULE: ./packages/node.vue?vue&type=template&id=14ffa849&\n\n// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./packages/node.vue?vue&type=script&lang=js&\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n/* harmony default export */ var nodevue_type_script_lang_js_ = ({\n  props: {\n    graph: Object,\n    node: Object,\n    index: Number,\n    isMove: Boolean,\n    isTemEdge: Boolean,\n    nodeIntercept: Function,\n    lineDrop: Boolean,\n    nodeDrop: Boolean\n  },\n  data: function data() {\n    return {\n      direction: types_direction,\n      output: this.nodeIntercept()\n    };\n  },\n  computed: {\n    style: function style() {\n      var _this$node = this.node,\n          position = _this$node.position,\n          width = _this$node.width,\n          height = _this$node.height;\n      return {\n        width: width + 'px',\n        height: height + 'px',\n        top: position[1] + 'px',\n        left: position[0] + 'px'\n      };\n    }\n  },\n  methods: {\n    nodeMousedown: function nodeMousedown(evt) {\n      this.graph.toLastNode(this.index);\n      this.$emit('node-mousedown', this.node, getOffset(evt, this.graph.zoomDiv));\n    },\n    nodeMouseenter: function nodeMouseenter(evt) {\n      this.output = this.nodeIntercept();\n      this.graph.mouseonNode = this.node;\n      if (!this.isTemEdge) return;\n      this.$emit('node-mouseenter', evt, this.node, getOffset(evt, this.graph.zoomDiv, this.$el));\n    },\n    nodeMouseleave: function nodeMouseleave() {\n      this.graph.mouseonNode = null;\n      if (!this.isTemEdge) return;\n      this.$emit('node-mouseleave');\n    },\n    nodeMouseup: function nodeMouseup() {\n      if (!this.isTemEdge) return;\n      this.$emit('node-mouseup');\n    },\n    nodeContextmenu: function nodeContextmenu(evt) {\n      this.$emit('node-contextmenu', evt, this.node);\n    },\n    sideMousedown: function sideMousedown(evt) {\n      this.$emit('side-mousedown', evt, this.node, getOffset(evt, this.graph.zoomDiv, this.$el));\n    }\n  }\n});\n// CONCATENATED MODULE: ./packages/node.vue?vue&type=script&lang=js&\n /* harmony default export */ var packages_nodevue_type_script_lang_js_ = (nodevue_type_script_lang_js_); \n// EXTERNAL MODULE: ./packages/node.vue?vue&type=style&index=0&lang=less&\nvar nodevue_type_style_index_0_lang_less_ = __webpack_require__(\"2470\");\n\n// CONCATENATED MODULE: ./packages/node.vue\n\n\n\n\n\n\n/* normalize component */\n\nvar node_component = normalizeComponent(\n  packages_nodevue_type_script_lang_js_,\n  nodevue_type_template_id_14ffa849_render,\n  nodevue_type_template_id_14ffa849_staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\n/* harmony default export */ var packages_node = (node_component.exports);\n// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{\"cacheDirectory\":\"node_modules/.cache/vue-loader\",\"cacheIdentifier\":\"73c5a3ac-vue-loader-template\"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./packages/link.vue?vue&type=template&id=2a7439af&\nvar linkvue_type_template_id_2a7439af_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('canvas',{staticClass:\"super-flow__line\"})}\nvar linkvue_type_template_id_2a7439af_staticRenderFns = []\n\n\n// CONCATENATED MODULE: ./packages/link.vue?vue&type=template&id=2a7439af&\n\n// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./packages/link.vue?vue&type=script&lang=js&\nfunction linkvue_type_script_lang_js_slicedToArray(arr, i) { return linkvue_type_script_lang_js_arrayWithHoles(arr) || linkvue_type_script_lang_js_iterableToArrayLimit(arr, i) || linkvue_type_script_lang_js_unsupportedIterableToArray(arr, i) || linkvue_type_script_lang_js_nonIterableRest(); }\n\nfunction linkvue_type_script_lang_js_nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction linkvue_type_script_lang_js_iterableToArrayLimit(arr, i) { var _i = arr && (typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]); if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction linkvue_type_script_lang_js_arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction linkvue_type_script_lang_js_toConsumableArray(arr) { return linkvue_type_script_lang_js_arrayWithoutHoles(arr) || linkvue_type_script_lang_js_iterableToArray(arr) || linkvue_type_script_lang_js_unsupportedIterableToArray(arr) || linkvue_type_script_lang_js_nonIterableSpread(); }\n\nfunction linkvue_type_script_lang_js_nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction linkvue_type_script_lang_js_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return linkvue_type_script_lang_js_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return linkvue_type_script_lang_js_arrayLikeToArray(o, minLen); }\n\nfunction linkvue_type_script_lang_js_iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\n\nfunction linkvue_type_script_lang_js_arrayWithoutHoles(arr) { if (Array.isArray(arr)) return linkvue_type_script_lang_js_arrayLikeToArray(arr); }\n\nfunction linkvue_type_script_lang_js_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n/* harmony default export */ var linkvue_type_script_lang_js_ = ({\n  props: {\n    padding: {\n      type: Number,\n      \"default\": 50\n    },\n    linkDesc: [Function, null],\n    linkStyle: [Function, null],\n    linkBaseStyle: Object,\n    index: Number,\n    graph: Object,\n    link: Object\n  },\n  data: function data() {\n    return {\n      top: 0,\n      right: 0,\n      bottom: 0,\n      left: 0,\n      currentPointList: [],\n      currentPathPointList: null\n    };\n  },\n  mounted: function mounted() {\n    var _this = this;\n\n    this.ctx = this.$el.getContext('2d');\n    this.draw();\n    this.graph.add('mousemove', this.rootMousemove);\n    this.$once('hook:beforeDestroy', function () {\n      _this.graph.remove('mousemove', _this.rootMousemove);\n    });\n  },\n  computed: {\n    styles: function styles() {\n      return Object.assign({\n        hover: '#FF0000',\n        color: '#666666',\n        textColor: '#666666',\n        textHover: '#FF0000',\n        font: '14px Arial',\n        dotted: false,\n        lineDash: [4, 4],\n        background: 'rgba(255,255,255,0.6)'\n      }, this.linkBaseStyle);\n    },\n    inPath: {\n      get: function get() {\n        return this.graph.mouseonLink === this.link;\n      },\n      set: function set(bol) {\n        if (bol && !this.graph.mouseonNode) {\n          this.graph.mouseonLink = this.link;\n          this.$el.style.zIndex = '1';\n          this.graph.toLastLink(this.index);\n        } else if (this.inPath) {\n          this.graph.mouseonLink = null;\n          this.$el.style.zIndex = '0';\n        }\n      }\n    }\n  },\n  methods: {\n    draw: function draw() {\n      var _this2 = this;\n\n      var _this$currentPathPoin = this.currentPathPointList = this.link.pathPointList,\n          pointList = _this$currentPathPoin.pointList,\n          minX = _this$currentPathPoin.minX,\n          minY = _this$currentPathPoin.minY,\n          maxX = _this$currentPathPoin.maxX,\n          maxY = _this$currentPathPoin.maxY;\n\n      this.top = minY - this.padding;\n      this.right = maxX + this.padding;\n      this.bottom = maxY + this.padding;\n      this.left = minX - this.padding;\n      this.currentPointList = pointList.map(function (point) {\n        return [Math.floor(point[0] - _this2.left), Math.floor(point[1] - _this2.top)];\n      });\n      this.changeStyle();\n      this.initLine();\n    },\n    changeStyle: function changeStyle() {\n      this.$el.width = this.right - this.left;\n      this.$el.height = this.bottom - this.top;\n      this.$el.style.top = this.top + 'px';\n      this.$el.style.left = this.left + 'px';\n    },\n    initLine: function initLine() {\n      this.ctx.clearRect(0, 0, this.$el.width, this.$el.height);\n\n      if (this.linkStyle) {\n        var style = this.linkStyle(this.link);\n\n        if (isObject(style)) {\n          Object.assign(this.styles, style);\n        }\n      }\n\n      if (this.inPath) {\n        var color = this.styles.hover;\n        var textColor = this.styles.textHover;\n        this.drawLine(color);\n        this.drawDesc(textColor);\n        this.drawArrow(color);\n      } else {\n        var _color = this.styles.color;\n        var _textColor = this.styles.textColor;\n        this.drawLine(_color);\n        this.drawDesc(_textColor);\n        this.drawArrow(_color);\n      }\n    },\n    drawLine: function drawLine(strokeStyle) {\n      var lineWidth = 2;\n      var ctx = this.ctx;\n      ctx.lineJoin = 'round';\n      ctx.beginPath();\n\n      if (this.styles.dotted) {\n        ctx.setLineDash(this.styles.lineDash);\n      }\n\n      ctx.lineWidth = lineWidth;\n      ctx.strokeStyle = strokeStyle;\n      this.currentPointList.forEach(function (point, idx) {\n        if (idx === 0) {\n          ctx.moveTo.apply(ctx, linkvue_type_script_lang_js_toConsumableArray(point));\n        } else {\n          ctx.lineTo.apply(ctx, linkvue_type_script_lang_js_toConsumableArray(point));\n          ctx.stroke();\n        }\n      });\n      ctx.save();\n    },\n    drawDesc: function drawDesc(color) {\n      var ctx = this.ctx;\n      var desc;\n\n      if (isFun(this.linkDesc)) {\n        desc = this.linkDesc(this.link);\n      }\n\n      if (isString(desc)) {\n        var _this$styles = this.styles,\n            font = _this$styles.font,\n            background = _this$styles.background;\n        this.ctx.font = font;\n        this.ctx.textAlign = 'center';\n        this.ctx.textBaseline = 'middle';\n\n        var _this$descIntercept = this.descIntercept(desc),\n            text = _this$descIntercept.text,\n            width = _this$descIntercept.width;\n\n        var height = parseInt(font.match(/(\\d+px)/g)[0]);\n        var descPosition = this.descPosition();\n        var position = vector(descPosition).minus([width / 2, height / 2]).end;\n        this.ctx.fillStyle = background;\n        ctx.fillRect(position[0], position[1], width, height);\n        this.ctx.fillStyle = color;\n        ctx.fillText.apply(ctx, [text].concat(linkvue_type_script_lang_js_toConsumableArray(descPosition)));\n      }\n    },\n    descPosition: function descPosition() {\n      var lineLen = 0;\n      var contrastLen = 0;\n      var descPosition = null;\n      this.currentPointList.reduce(function (prev, current) {\n        var vec = vector(prev).minus(current).end;\n        lineLen += Math.abs(vec[0]) + Math.abs(vec[1]);\n        return current;\n      });\n      this.currentPointList.reduce(function (prev, current) {\n        var vec = vector(prev).minus(current).end;\n        var size = Math.abs(vec[0]) + Math.abs(vec[1]);\n        var prevLen = contrastLen;\n        var middle = lineLen / 2;\n        contrastLen += size;\n\n        if (contrastLen >= lineLen / 2 && descPosition === null) {\n          descPosition = prev;\n\n          if (prev[0] === current[0]) {\n            if (prev[1] < current[1]) {\n              descPosition = vector(prev).add([0, middle - prevLen]).end;\n            } else {\n              descPosition = vector(prev).add([0, -(middle - prevLen)]).end;\n            }\n          } else {\n            if (prev[0] < current[0]) {\n              descPosition = vector(prev).add([middle - prevLen, 0]).end;\n            } else {\n              descPosition = vector(prev).add([-(middle - prevLen), 0]).end;\n            }\n          }\n        }\n\n        return current;\n      });\n      return descPosition;\n    },\n    descIntercept: function descIntercept(str) {\n      var ctx = this.ctx;\n      var strWidth = ctx.measureText(str).width;\n      var maxWidth = this.padding * 2 - 10;\n      var ellipsis = '...';\n      var ellipsisWidth = ctx.measureText(ellipsis).width;\n\n      if (strWidth <= maxWidth || maxWidth <= ellipsisWidth) {\n        return {\n          text: str,\n          width: strWidth\n        };\n      } else {\n        var len = str.length;\n\n        while (strWidth >= maxWidth - ellipsisWidth && len-- > 0) {\n          str = str.slice(0, len);\n          strWidth = ctx.measureText(str).width;\n        }\n\n        return {\n          text: str + ellipsis,\n          width: maxWidth + ellipsisWidth\n        };\n      }\n    },\n    drawArrow: function drawArrow(fillStyle) {\n      var size = 4;\n      var len = this.currentPointList.length;\n      if (len < 2) return;\n      var start = this.currentPointList[len - 2];\n      var end = this.currentPointList[len - 1];\n      var ctx = this.ctx; // 移动中心点\n\n      ctx.translate.apply(ctx, linkvue_type_script_lang_js_toConsumableArray(end)); // 箭头原方向垂直向下,\n      // 算出直线偏离Y的角, 然后旋转 ,\n      // rotate是顺时针旋转的, 所以加个负号\n\n      var ang = Math.atan((end[0] - start[0]) / (end[1] - start[1]));\n      ctx.beginPath();\n\n      if (end[1] - start[1] >= 0) {\n        ctx.rotate(-ang);\n      } else {\n        ctx.rotate(Math.PI - ang); // 加个180度，反过来\n      }\n\n      ctx.fillStyle = fillStyle;\n      ctx.lineTo(-size, -size * 2);\n      ctx.lineTo(0, -size);\n      ctx.lineTo(size, -size * 2);\n      ctx.lineTo(0, 0);\n      ctx.closePath();\n      ctx.fill();\n      ctx.restore();\n    },\n    getCoordinates: function getCoordinates(evt) {\n      var zoomDiv = 100;\n      zoomDiv = this.graph.zoomDiv; // const {\n      //   clientX,\n      //   clientY\n      // } = evt\n\n      var clientX = evt.clientX / zoomDiv * 100;\n      var clientY = evt.clientY / zoomDiv * 100;\n\n      var _this$$el$getBounding = this.$el.getBoundingClientRect(),\n          top = _this$$el$getBounding.top,\n          left = _this$$el$getBounding.left;\n\n      return [clientX - left, clientY - top];\n    },\n    isPointInStroke: function isPointInStroke(evt) {\n      var _this$getCoordinates = this.getCoordinates(evt),\n          _this$getCoordinates2 = linkvue_type_script_lang_js_slicedToArray(_this$getCoordinates, 2),\n          x = _this$getCoordinates2[0],\n          y = _this$getCoordinates2[1];\n\n      return this.link.isPointInLink([this.left + x, this.top + y], this.currentPathPointList);\n    },\n    rootMousemove: function rootMousemove(_ref) {\n      var evt = _ref.evt;\n      this.inPath = this.isPointInStroke(evt);\n      return this.inPath;\n    }\n  },\n  watch: {\n    'link.pathPointList': function linkPathPointList() {\n      this.draw();\n    },\n    inPath: function inPath() {\n      this.initLine();\n    },\n    'link.meta': {\n      deep: true,\n      handler: function handler() {\n        this.draw();\n      }\n    },\n    'linkBaseStyle': {\n      deep: true,\n      handler: function handler() {\n        this.draw();\n      }\n    }\n  }\n});\n// CONCATENATED MODULE: ./packages/link.vue?vue&type=script&lang=js&\n /* harmony default export */ var packages_linkvue_type_script_lang_js_ = (linkvue_type_script_lang_js_); \n// EXTERNAL MODULE: ./packages/link.vue?vue&type=style&index=0&lang=less&\nvar linkvue_type_style_index_0_lang_less_ = __webpack_require__(\"7e2d\");\n\n// CONCATENATED MODULE: ./packages/link.vue\n\n\n\n\n\n\n/* normalize component */\n\nvar link_component = normalizeComponent(\n  packages_linkvue_type_script_lang_js_,\n  linkvue_type_template_id_2a7439af_render,\n  linkvue_type_template_id_2a7439af_staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\n/* harmony default export */ var packages_link = (link_component.exports);\n// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js?{\"cacheDirectory\":\"node_modules/.cache/vue-loader\",\"cacheIdentifier\":\"73c5a3ac-vue-loader-template\"}!./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./packages/markLine.vue?vue&type=template&id=e5ae067e&\nvar markLinevue_type_template_id_e5ae067e_render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('canvas',{ref:\"markLine\",staticClass:\"super-flow__mark-line\"})}\nvar markLinevue_type_template_id_e5ae067e_staticRenderFns = []\n\n\n// CONCATENATED MODULE: ./packages/markLine.vue?vue&type=template&id=e5ae067e&\n\n// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./packages/markLine.vue?vue&type=script&lang=js&\nfunction markLinevue_type_script_lang_js_toConsumableArray(arr) { return markLinevue_type_script_lang_js_arrayWithoutHoles(arr) || markLinevue_type_script_lang_js_iterableToArray(arr) || markLinevue_type_script_lang_js_unsupportedIterableToArray(arr) || markLinevue_type_script_lang_js_nonIterableSpread(); }\n\nfunction markLinevue_type_script_lang_js_nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction markLinevue_type_script_lang_js_iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\n\nfunction markLinevue_type_script_lang_js_arrayWithoutHoles(arr) { if (Array.isArray(arr)) return markLinevue_type_script_lang_js_arrayLikeToArray(arr); }\n\nfunction markLinevue_type_script_lang_js_slicedToArray(arr, i) { return markLinevue_type_script_lang_js_arrayWithHoles(arr) || markLinevue_type_script_lang_js_iterableToArrayLimit(arr, i) || markLinevue_type_script_lang_js_unsupportedIterableToArray(arr, i) || markLinevue_type_script_lang_js_nonIterableRest(); }\n\nfunction markLinevue_type_script_lang_js_nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction markLinevue_type_script_lang_js_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return markLinevue_type_script_lang_js_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return markLinevue_type_script_lang_js_arrayLikeToArray(o, minLen); }\n\nfunction markLinevue_type_script_lang_js_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction markLinevue_type_script_lang_js_iterableToArrayLimit(arr, i) { var _i = arr && (typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]); if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction markLinevue_type_script_lang_js_arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n/* harmony default export */ var markLinevue_type_script_lang_js_ = ({\n  props: {\n    width: {\n      type: Number,\n      \"default\": 0\n    },\n    height: {\n      type: Number,\n      \"default\": 0\n    },\n    markLine: Array,\n    markColor: String\n  },\n  mounted: function mounted() {\n    this.$refs.markLine.height = this.height;\n    this.$refs.markLine.width = this.width;\n    this.draw();\n  },\n  methods: {\n    draw: function draw() {\n      var ctx = this.$el.getContext('2d');\n      ctx.clearRect(0, 0, this.width, this.height);\n      ctx.strokeStyle = this.markColor;\n      ctx.lineWidth = 1;\n      ctx.setLineDash([4, 2]);\n      this.markLine.forEach(function (_ref) {\n        var _ref2 = markLinevue_type_script_lang_js_slicedToArray(_ref, 2),\n            start = _ref2[0],\n            end = _ref2[1];\n\n        ctx.beginPath();\n        ctx.moveTo.apply(ctx, markLinevue_type_script_lang_js_toConsumableArray(start));\n        ctx.lineTo.apply(ctx, markLinevue_type_script_lang_js_toConsumableArray(end));\n        ctx.stroke();\n      });\n    }\n  },\n  watch: {\n    markLine: function markLine() {\n      this.draw();\n    }\n  }\n});\n// CONCATENATED MODULE: ./packages/markLine.vue?vue&type=script&lang=js&\n /* harmony default export */ var packages_markLinevue_type_script_lang_js_ = (markLinevue_type_script_lang_js_); \n// EXTERNAL MODULE: ./packages/markLine.vue?vue&type=style&index=0&lang=less&\nvar markLinevue_type_style_index_0_lang_less_ = __webpack_require__(\"bce9\");\n\n// CONCATENATED MODULE: ./packages/markLine.vue\n\n\n\n\n\n\n/* normalize component */\n\nvar markLine_component = normalizeComponent(\n  packages_markLinevue_type_script_lang_js_,\n  markLinevue_type_template_id_e5ae067e_render,\n  markLinevue_type_template_id_e5ae067e_staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\n/* harmony default export */ var markLine = (markLine_component.exports);\n// CONCATENATED MODULE: ./node_modules/cache-loader/dist/cjs.js??ref--12-0!./node_modules/thread-loader/dist/cjs.js!./node_modules/babel-loader/lib!./node_modules/cache-loader/dist/cjs.js??ref--0-0!./node_modules/vue-loader/lib??vue-loader-options!./packages/index.vue?vue&type=script&lang=js&\nfunction lib_vue_loader_options_packagesvue_type_script_lang_js_toConsumableArray(arr) { return lib_vue_loader_options_packagesvue_type_script_lang_js_arrayWithoutHoles(arr) || lib_vue_loader_options_packagesvue_type_script_lang_js_iterableToArray(arr) || lib_vue_loader_options_packagesvue_type_script_lang_js_unsupportedIterableToArray(arr) || lib_vue_loader_options_packagesvue_type_script_lang_js_nonIterableSpread(); }\n\nfunction lib_vue_loader_options_packagesvue_type_script_lang_js_nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction lib_vue_loader_options_packagesvue_type_script_lang_js_unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return lib_vue_loader_options_packagesvue_type_script_lang_js_arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return lib_vue_loader_options_packagesvue_type_script_lang_js_arrayLikeToArray(o, minLen); }\n\nfunction lib_vue_loader_options_packagesvue_type_script_lang_js_iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && iter[Symbol.iterator] != null || iter[\"@@iterator\"] != null) return Array.from(iter); }\n\nfunction lib_vue_loader_options_packagesvue_type_script_lang_js_arrayWithoutHoles(arr) { if (Array.isArray(arr)) return lib_vue_loader_options_packagesvue_type_script_lang_js_arrayLikeToArray(arr); }\n\nfunction lib_vue_loader_options_packagesvue_type_script_lang_js_arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { lib_vue_loader_options_packagesvue_type_script_lang_js_defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction lib_vue_loader_options_packagesvue_type_script_lang_js_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n\n\n\n\n\n\n/* harmony default export */ var lib_vue_loader_options_packagesvue_type_script_lang_js_ = ({\n  name: 'super-flow',\n  props: {\n    draggable: {\n      type: Boolean,\n      \"default\": true\n    },\n    linkAddable: {\n      type: Boolean,\n      \"default\": true\n    },\n    linkEditable: {\n      type: Boolean,\n      \"default\": true\n    },\n    hasMarkLine: {\n      type: Boolean,\n      \"default\": true\n    },\n    linkDesc: {\n      type: [Function, null],\n      \"default\": null\n    },\n    linkStyle: {\n      type: [Function, null],\n      \"default\": null\n    },\n    linkBaseStyle: {\n      type: Object,\n      \"default\": function _default() {\n        return {};\n      }\n    },\n    markLineColor: {\n      type: String,\n      \"default\": '#55abfc'\n    },\n    origin: {\n      type: Array,\n      \"default\": function _default() {\n        return [0, 0];\n      }\n    },\n    nodeList: {\n      type: Array,\n      \"default\": function _default() {\n        return [];\n      }\n    },\n    linkList: {\n      type: Array,\n      \"default\": function _default() {\n        return [];\n      }\n    },\n    graphMenu: {\n      type: Array,\n      \"default\": function _default() {\n        return [];\n      }\n    },\n    nodeMenu: {\n      type: Array,\n      \"default\": function _default() {\n        return [];\n      }\n    },\n    linkMenu: {\n      type: Array,\n      \"default\": function _default() {\n        return [];\n      }\n    },\n    linkPadding: {\n      type: Number,\n      \"default\": 50\n    },\n    enterIntercept: {\n      type: Function,\n      \"default\": function _default() {\n        return true;\n      }\n    },\n    outputIntercept: {\n      type: Function,\n      \"default\": function _default() {\n        return true;\n      }\n    }\n  },\n  data: function data() {\n    return {\n      zoomDiv: 100,\n      graph: new packages_Graph({\n        width: this.width,\n        height: this.height,\n        origin: this.origin\n      }),\n      menuConf: {\n        visible: false,\n        position: [0, 0],\n        source: null,\n        list: []\n      },\n      moveNodeConf: {\n        isMove: false,\n        node: null,\n        offset: null,\n        verticalList: [],\n        horizontalList: [],\n        markLine: []\n      },\n      moveAllConf: {\n        isMove: false,\n        downPosition: [0, 0]\n      },\n      movePartConf: {\n        isMove: false,\n        downPosition: [0, 0],\n        node: null,\n        offset: null,\n        verticalList: [],\n        horizontalList: [],\n        markLine: []\n      },\n      temEdgeConf: {\n        visible: false,\n        link: null\n      },\n      loaded: false,\n      clientWidth: 0,\n      clientHeight: 0,\n      contextMenuData: {\n        menuName: \"demo\",\n        axis: {\n          x: null,\n          y: null\n        },\n        menulists: [{\n          fnHandler: \"copyPartial\",\n          btnName: \"区域复制\"\n        }, {\n          fnHandler: \"deletePartial\",\n          btnName: \"区域删除\"\n        }]\n      },\n      nodeListRakuCopy: [],\n      linkListRakuCopy: [],\n      tmpTop: 0,\n      tmpLeft: 0,\n      tmpWidth: 0,\n      tmpHeight: 0,\n      startTop: 0,\n      startLeft: 0,\n      startWidth: 0,\n      startHeight: 0,\n      linkCopyName: {\n        id: \"\",\n        startName: \"\",\n        endName: \"\"\n      },\n      linkListCopyName: [],\n      nodeListRakuCopyDel: [],\n      tmpTopDel: 0,\n      tmpLeftDel: 0,\n      tmpWidthDel: 0,\n      tmpHeightDel: 0,\n      areaNodes: [],\n      copyIndex: 0,\n      copyflg: false,\n      delflg: false\n    };\n  },\n  components: {\n    GraphMenu: packages_menu,\n    GraphNode: packages_node,\n    GraphLine: packages_link,\n    MarkLine: markLine\n  },\n  computed: {\n    maskStyle: function maskStyle() {\n      var _this$graph$maskBound = this.graph.maskBoundingClientRect,\n          top = _this$graph$maskBound.top,\n          right = _this$graph$maskBound.right,\n          bottom = _this$graph$maskBound.bottom,\n          left = _this$graph$maskBound.left;\n      return {\n        width: \"\".concat(right - left, \"px\"),\n        height: \"\".concat(bottom - top, \"px\"),\n        top: \"\".concat(top + this.graph.origin[1], \"px\"),\n        left: \"\".concat(left + this.graph.origin[0], \"px\")\n      };\n    },\n    maskStylePart: function maskStylePart() {\n      var _this$graph$maskBound2 = this.graph.maskBoundingClientRectPart,\n          top = _this$graph$maskBound2.top,\n          right = _this$graph$maskBound2.right,\n          bottom = _this$graph$maskBound2.bottom,\n          left = _this$graph$maskBound2.left;\n      return {\n        width: \"\".concat(right - left, \"px\"),\n        height: \"\".concat(bottom - top, \"px\"),\n        top: \"\".concat(top + this.graph.origin[1], \"px\"),\n        left: \"\".concat(left + this.graph.origin[0], \"px\")\n      };\n    }\n  },\n  mounted: function mounted() {\n    var _this = this;\n\n    document.addEventListener('mouseup', this.docMouseup);\n    document.addEventListener('mousemove', this.docMousemove);\n    this.$once('hook:beforeDestroy', function () {\n      document.removeEventListener('mouseup', _this.docMouseup);\n      document.removeEventListener('mousemove', _this.docMousemove);\n    });\n    this.$nextTick(function () {\n      _this.graph.initNode(_this.nodeList);\n\n      _this.graph.initLink(_this.linkList);\n    });\n  },\n  methods: {\n    initMenu: function initMenu(menu, source) {\n      return menu.map(function (subList) {\n        return subList.map(function (item) {\n          var disable;\n          var hidden;\n\n          if (isFun(item.disable)) {\n            disable = item.disable(source);\n          } else if (isBool(item.disable)) {\n            disable = item.disable;\n          } else {\n            disable = Boolean(item.disable);\n          }\n\n          if (isFun(item.hidden)) {\n            hidden = item.hidden(source);\n          } else if (isBool(item.hidden)) {\n            hidden = item.hidden;\n          } else {\n            hidden = Boolean(item.hidden);\n          }\n\n          return _objectSpread(_objectSpread({}, item), {}, {\n            disable: disable,\n            hidden: hidden\n          });\n        }).filter(function (item) {\n          return !item.hidden;\n        });\n      }).filter(function (sublist) {\n        return sublist.length;\n      });\n    },\n    showContextMenu: function showContextMenu(position, list, source) {\n      if (!list.length) return;\n      this.$set(this.menuConf, 'position', position);\n      this.$set(this.menuConf, 'list', list);\n      this.$set(this.menuConf, 'source', source);\n      this.menuConf.visible = true;\n    },\n    docMouseup: function docMouseup(evt) {\n      if (this.moveNodeConf.isMove) {\n        evt.stopPropagation();\n        evt.preventDefault();\n      }\n\n      ;\n      this.moveNodeConf.isMove = false;\n      this.moveNodeConf.node = null;\n      this.moveNodeConf.offset = null;\n      arrayReplace(this.moveNodeConf.markLine, []);\n      this.temEdgeConf.visible = false;\n      this.temEdgeConf.link = null;\n      this.moveAllConf.isMove = false;\n      this.movePartConf.isMove = false;\n      var _this$graph$maskBound3 = this.graph.maskBoundingClientRectPart,\n          top = _this$graph$maskBound3.top,\n          right = _this$graph$maskBound3.right,\n          bottom = _this$graph$maskBound3.bottom,\n          left = _this$graph$maskBound3.left;\n      this.startTop = top + this.graph.origin[1];\n      this.startLeft = left + this.graph.origin[0];\n      this.startWidth = right - left;\n      this.startHeight = bottom - top;\n      this.copyflg = false;\n      this.delflg = false;\n    },\n    docMousemove: function docMousemove(evt) {\n      if (this.moveNodeConf.isMove) {\n        this.moveNode(evt);\n      } else if (this.temEdgeConf.visible) {\n        this.moveTemEdge(evt);\n      } else if (this.graph.graphSelected) {\n        this.moveWhole(evt);\n      } else if (this.graph.graphPartSelected) {\n        this.movePart(evt);\n      } else if (this.linkEditable) {\n        this.graph.dispatch({\n          type: 'mousemove',\n          evt: evt\n        }, true);\n      }\n    },\n    moveNode: function moveNode(evt) {\n      var _this2 = this;\n\n      var distance = 10;\n      var conf = this.moveNodeConf;\n      var origin = this.graph.origin;\n      var position = vector(conf.offset).differ(getOffset(evt, this.zoomDiv, this.$el)).minus(origin).add([conf.node.width / 2, conf.node.height / 2]).end;\n\n      if (this.hasMarkLine) {\n        var resultList = [];\n        conf.verticalList.some(function (vertical) {\n          var x = position[0];\n          var result = vertical - distance < x && vertical + distance > x;\n\n          if (result) {\n            position[0] = vertical;\n            vertical = Math.floor(vertical);\n            vertical += origin[0];\n            vertical += vertical % 1 === 0 ? 0.5 : 0;\n            resultList.push([[vertical, 0], [vertical, _this2.clientHeight]]);\n          }\n\n          return result;\n        });\n        conf.horizontalList.some(function (horizontal) {\n          var y = position[1];\n          var result = horizontal - distance < y && horizontal + distance > y;\n\n          if (result) {\n            position[1] = horizontal;\n            horizontal = Math.floor(horizontal);\n            horizontal += origin[1];\n            horizontal += horizontal % 1 === 0 ? 0.5 : 0;\n            resultList.push([[0, horizontal], [_this2.clientWidth, horizontal]]);\n          }\n\n          return result;\n        });\n        arrayReplace(conf.markLine, resultList);\n      }\n\n      conf.node.center = position;\n    },\n    moveTemEdge: function moveTemEdge(evt) {\n      this.temEdgeConf.link.movePosition = getOffset(evt, this.zoomDiv, this.$el);\n    },\n    moveWhole: function moveWhole(evt) {\n      if (this.moveAllConf.isMove) {\n        var offset = vector(this.moveAllConf.downPosition).differ([evt.clientX, evt.clientY]).end;\n        arrayReplace(this.graph.origin, vector(this.moveAllConf.origin).add(offset).end);\n      }\n    },\n    movePart: function movePart(event) {},\n    contextmenu: function contextmenu(evt) {\n      var mouseonLink = this.graph.mouseonLink;\n      var position = getOffset(evt, this.zoomDiv); ///11111111\n\n      var list, source;\n\n      if (mouseonLink && mouseonLink.isPointInLink(position)) {\n        list = this.initMenu(this.linkMenu, mouseonLink);\n        source = mouseonLink;\n      } else {\n        if (mouseonLink) this.graph.mouseonLink = null;\n        list = this.initMenu(this.graphMenu, this.graph);\n        source = this.graph;\n      }\n\n      this.showContextMenu(position, list, source);\n    },\n    nodeMousedown: function nodeMousedown(node, offset) {\n      if (this.draggable) {\n        this.clientWidth = this.$el.clientWidth;\n        this.clientHeight = this.$el.clientHeight;\n        var verticalList = this.moveNodeConf.verticalList;\n        var horizontalList = this.moveNodeConf.horizontalList;\n        var centerList = this.graph.nodeList.filter(function (item) {\n          return item !== node;\n        }).map(function (node) {\n          return node.center;\n        });\n        arrayReplace(verticalList, lib_vue_loader_options_packagesvue_type_script_lang_js_toConsumableArray(new Set(centerList.map(function (center) {\n          return center[0];\n        }))).sort(function (prev, next) {\n          return prev - next;\n        }));\n        arrayReplace(horizontalList, lib_vue_loader_options_packagesvue_type_script_lang_js_toConsumableArray(new Set(centerList.map(function (center) {\n          return center[1];\n        }))).sort(function (prev, next) {\n          return prev - next;\n        }));\n        this.moveNodeConf.isMove = true;\n        this.moveNodeConf.node = node;\n        this.moveNodeConf.offset = offset;\n      }\n    },\n    nodeMouseenter: function nodeMouseenter(evt, node, offset) {\n      var link = this.temEdgeConf.link;\n\n      if (this.enterIntercept(link.start, node, this.graph)) {\n        link.end = node;\n        link.endAt = offset;\n      }\n    },\n    nodeMouseleave: function nodeMouseleave() {\n      this.temEdgeConf.link.end = null;\n    },\n    nodeMouseup: function nodeMouseup() {\n      this.graph.addLink(this.temEdgeConf.link);\n    },\n    nodeContextmenu: function nodeContextmenu(evt, node) {\n      var list = this.initMenu(this.nodeMenu, node);\n      if (!list.length) return;\n      this.$set(this.menuConf, 'position', getOffset(evt, this.graph.zoomDiv, this.$el)); ///11111111\n\n      this.$set(this.menuConf, 'list', list);\n      this.$set(this.menuConf, 'source', node);\n      this.menuConf.visible = true;\n    },\n    sideMousedown: function sideMousedown(evt, node, startAt) {\n      if (this.linkAddable) {\n        var link = this.graph.createLink({\n          start: node,\n          startAt: startAt\n        });\n        link.movePosition = getOffset(evt, this.graph.zoomDiv, this.$el); ///11111111\n\n        this.$set(this.temEdgeConf, 'link', link);\n        this.temEdgeConf.visible = true;\n      }\n    },\n    nodeIntercept: function nodeIntercept(node) {\n      var _this3 = this;\n\n      return function () {\n        return _this3.outputIntercept(node, _this3.graph);\n      };\n    },\n    menuItemSelect: function menuItemSelect() {\n      this.menuConf.visible = false;\n    },\n    selectAllMaskMouseDown: function selectAllMaskMouseDown(evt) {\n      this.moveAllConf.isMove = true;\n      this.moveAllConf.origin = lib_vue_loader_options_packagesvue_type_script_lang_js_toConsumableArray(this.graph.origin);\n      this.moveAllConf.downPosition = [evt.clientX, evt.clientY];\n    },\n    selectPartMaskMouseDown: function selectPartMaskMouseDown(evt) {// this.movePartConf.isMove = true\n      // this.movePartConf.origin = [...this.graph.osrigin]\n      // this.movePartConf.downPosition = [\n      //   evt.clientX,\n      //   evt.clientY\n      // ]\n    },\n    selectedAll: function selectedAll() {\n      this.graph.selectAll();\n    },\n    selectedPart: function selectedPart() {\n      this.graph.selectPartial();\n    },\n    toJSON: function toJSON() {\n      return this.graph.toJSON();\n    },\n    getMouseCoordinate: function getMouseCoordinate(clientX, clientY) {\n      var offset = getOffset({\n        clientX: clientX,\n        clientY: clientY\n      }, 100, this.$el);\n      return vector(offset).minus(this.graph.origin).end;\n    },\n    addNode: function addNode(options) {\n      return this.graph.addNode(options);\n    },\n    setZoom: function setZoom(zoom) {\n      this.zoomDiv = zoom;\n      this.graph.setZoomDiv(zoom);\n    },\n    showMenu: function showMenu(event) {\n      // event.preventDefault();\n      var x = event.clientX / this.zoomDiv * 100;\n      var y = event.clientY / this.zoomDiv * 100;\n      this.contextMenuData.axis = {\n        x: x,\n        y: y\n      };\n    },\n    copyPartial: function copyPartial() {\n      if (this.startLeft != 0 && this.startTop != 0 && this.startHeight != 0 && this.startWidth != 0) {\n        // 区域复制\n        var nodeListCopy = this.graph.nodeList;\n        var linkListCopy = this.graph.linkList;\n        this.nodeListRakuCopy = [];\n        this.linkListRakuCopy = [];\n        this.tmpLeft = this.startLeft;\n        this.tmpTop = this.startTop;\n        this.tmpHeight = this.startHeight;\n        this.tmpWidth = this.startWidth;\n\n        for (var i = 0; i < nodeListCopy.length; i++) {\n          if (nodeListCopy[i].coordinate[0] > this.tmpLeft && nodeListCopy[i].coordinate[0] < this.tmpLeft + this.tmpWidth && nodeListCopy[i].coordinate[1] > this.tmpTop && nodeListCopy[i].coordinate[1] < this.tmpTop + this.tmpHeight) {\n            this.nodeListRakuCopy.push(nodeListCopy[i]);\n          }\n        } //节点间连线\n\n\n        for (var j = 0; j < this.nodeListRakuCopy.length; j++) {\n          for (var k = 0; k < linkListCopy.length; k++) {\n            if (this.nodeListRakuCopy[j].id == linkListCopy[k].start.id) {\n              for (var l = 0; l < this.nodeListRakuCopy.length; l++) {\n                if (linkListCopy[k].end.id == this.nodeListRakuCopy[l].id) {\n                  this.linkListRakuCopy.push(linkListCopy[k]);\n                  this.linkCopyName = {};\n                  this.linkCopyName.id = linkListCopy[k].id;\n                  this.linkCopyName.startName = this.nodeListRakuCopy[j].meta.name;\n                  this.linkCopyName.endName = this.nodeListRakuCopy[l].meta.name;\n                  this.linkListCopyName.push(this.linkCopyName);\n                  break;\n                }\n              }\n            }\n          }\n        }\n\n        this.copyflg = true;\n        this.copyIndex = this.copyIndex + 1;\n        this.areaNodes = [this.nodeListRakuCopy, this.linkListRakuCopy, this.linkListCopyName, this.tmpLeft, this.tmpTop, this.tmpHeight, this.tmpWidth, this.copyIndex];\n        this.graph.graphPartSelected = false;\n        this.linkListCopyName = [];\n      }\n\n      return this.areaNodes;\n    },\n    deletePartial: function deletePartial() {\n      if (this.startLeft != 0 && this.startTop != 0 && this.startHeight != 0 && this.startWidth != 0) {\n        // 区域删除\n        var nodeListCopyDel = this.graph.nodeList;\n        this.nodeListRakuCopyDel = [];\n        this.tmpLeftDel = this.startLeft;\n        this.tmpTopDel = this.startTop;\n        this.tmpHeightDel = this.startHeight;\n        this.tmpWidthDel = this.startWidth;\n\n        for (var i = 0; i < nodeListCopyDel.length; i++) {\n          if (nodeListCopyDel[i].coordinate[0] > this.tmpLeftDel && nodeListCopyDel[i].coordinate[0] < this.tmpLeftDel + this.tmpWidthDel && nodeListCopyDel[i].coordinate[1] > this.tmpTopDel && nodeListCopyDel[i].coordinate[1] < this.tmpTopDel + this.tmpHeightDel) {\n            this.nodeListRakuCopyDel.push(nodeListCopyDel[i]);\n          }\n        }\n\n        this.linkListCopyName = [];\n        this.delflg = true;\n      }\n\n      for (var m = 0; m < this.nodeListRakuCopyDel.length; m++) {\n        this.graph.removeNode(this.nodeListRakuCopyDel[m]);\n      }\n\n      this.graph.graphPartSelected = false;\n    }\n  },\n  watch: {\n    'graph.graphSelected': function graphGraphSelected() {\n      var _this4 = this;\n\n      if (this.graph.graphSelected) {\n        this.$nextTick(function () {\n          _this4.$refs.selectAllMask.focus();\n        });\n      }\n    },\n    'graph.graphPartSelected': function graphGraphPartSelected() {\n      var _this5 = this;\n\n      if (this.graph.graphPartSelected) {\n        this.$nextTick(function () {\n          _this5.$refs.selectPartMask.focus();\n        });\n      }\n    },\n    'graph.mouseonLink': function graphMouseonLink() {\n      if (this.graph.mouseonLink) {\n        document.body.style.cursor = 'pointer';\n      } else {\n        document.body.style.cursor = '';\n      }\n    },\n    origin: function origin() {\n      this.graph.origin = this.origin || [];\n    },\n    nodeList: function nodeList() {\n      this.graph.initNode(this.nodeList);\n    },\n    linkList: function linkList() {\n      this.graph.initLink(this.linkList);\n    }\n  },\n  install: function install(Vue) {\n    Vue.component(this.name, this);\n  }\n});\n// CONCATENATED MODULE: ./packages/index.vue?vue&type=script&lang=js&\n /* harmony default export */ var packagesvue_type_script_lang_js_ = (lib_vue_loader_options_packagesvue_type_script_lang_js_); \n// EXTERNAL MODULE: ./packages/index.vue?vue&type=style&index=0&lang=less&\nvar packagesvue_type_style_index_0_lang_less_ = __webpack_require__(\"3ad9\");\n\n// CONCATENATED MODULE: ./packages/index.vue\n\n\n\n\n\n\n/* normalize component */\n\nvar packages_component = normalizeComponent(\n  packagesvue_type_script_lang_js_,\n  render,\n  staticRenderFns,\n  false,\n  null,\n  null,\n  null\n  \n)\n\n/* harmony default export */ var packages_0 = (packages_component.exports);\n// CONCATENATED MODULE: ./node_modules/@vue/cli-service/lib/commands/build/entry-lib.js\n\n\n/* harmony default export */ var entry_lib = __webpack_exports__[\"default\"] = (packages_0);\n\n\n\n/***/ })\n\n/******/ })[\"default\"];\n});"]}