hookehuyr

🎉 init:

Showing 147 changed files with 10727 additions and 0 deletions
> 1%
last 2 versions
node_modules
MIT License
Copyright (c) 2020 martsforever
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
# vue-flow-editor-vue3.0
## 简介
vue-flow-editor 是基于 Vue3.0 以及 G6@3.1.10 实现的流程编辑器。在线操作地址:
## 特点
- 兼容ie;
- 轻量级依赖
- 依赖于 Vue3.0、g6、element-plus,但是打包的 vue-flow-editor 中是不包含这些依赖的,
由开发者手动引入,方便管理依赖;
- 对G6的连接线进行了简单封装,对节点无影响。开发者可以使用G6的默认节点以实现自定义的样式;
- 操作丰富,请见操作手册;
- 界面简洁,左侧菜单栏以及顶部工具栏都有插槽供开发者自定义内容;
- 内置一个右侧弹出框,开发者可以通过插槽,以及手动打开这个弹出框以编辑节点内容;
## 安装
### npm安装
npm i 所有包我都配置好了,记住不要用cnpm i,不然有个包下不下来
装好执行 npm run start 就行了
### 静态引入
参考docs\demo.html,还是2.0的要用自己改一下,只是把非静态引入的改了
## vue-flow-editor 属性说明
|属性名称|类型|默认值|可选值|说明|
| --- | --- | --- | --- | --- |
| data | object | --- | --- | 渲染的数据,数据格式参考G6文档 |
| grid | boolean | true | --- | 是否开启网格 |
| miniMap | boolean | false | --- | 是否开启缩略图 |
| --- | --- | --- | --- | --- |
| disabledDragEdge | boolean | --- | --- | 是否禁用拖拽连线 |
| disabledUndo | boolean | --- | --- | 是否禁用撤销/重做 |
| --- | --- | --- | --- | --- |
| height| number,string | 100%| --- | 画布高度 |
| toolbarHeight | string,number | 50px | --- | 工具栏高度 |
| menuWidth | string,number | 250px | --- | 菜单栏宽度 |
| modelWidth | string,number | 500px | --- | 右侧弹框宽度 |
| --- | --- | --- | --- | --- |
| onRef | (editor:object null )=>void | --- | --- | 获取组件的引用时,传递的函数,参数为组件暴露的函数以及响应式变量 |
| toolbarButtonHandler | (object:[])=>object[] | --- | --- | 对工具栏按钮做格式化的函数 |
| loading | boolean | --- | --- | 开始编辑器的loading状态 |
| multipleSelect | boolean | true | --- | 编辑器是否可以多选 |
| --- | --- | --- | --- | --- |
| beforeDelete | (model:object)=>Promise<any> | --- | --- | 删除前校验 |
| afterDelete | (model:object)=>Promise<any> | --- | --- | 删除后动作 |
| beforeAdd | (model:object)=>Promise<any> | --- | --- | 添加前校验 |
| afterAdd | (model:object)=>Promise<any> | --- | --- | 添加后动作 |
## 通过 onRef 得到的对象
|属性名称|类型|说明|
| --- | --- | --- |
| editorState | object | 编辑器组件内部状态变量 |
| commander | object | 命令对象,画布中所有操作都是通过commander进行的,以便实现撤销以及重做 |
| openModel | function | 打开右侧弹框 |
| closeModel | function | 关闭右侧弹框 |
| updateModel | function | 更新model |
| openPreview | function | 打开预览对话框 |
## 操作手册
### 工具栏
从左至右依次为:
- 开启/关闭网格;
- 开启/关闭缩略图;
- 适应画布(画布缩放适应界面大小);
- 实际尺寸(画布中元素大小为实际像素大小);
- 撤销;
- 重做;
- 放大;
- 缩小;
- 删除(选中节点之后删除);
- 预览(在弹框中以适应画布的模式展示画布内容);
### 选择
- 单击 节点/边 可以选中,选中的时候样式会有变化;
- 摁住 shift单击 可以选中多个 节点/边;
- 摁住 shift可以拖拽生成一个选择框,框内的 节点/边 会被选中;
- 鼠标在画布内快捷键 CTRL+A 可以全选;
- 多选的时候拖拽节点,会拖拽所有的节点;
### 新建节点/边
- 从左侧选项菜单列表中拖拽菜单到画布可以添加节点;
- 悬浮在节点内,会显示用来连接线的指示节点,点击拖拽连接其他节点的指示节点可以新建连线(这个不是特别灵敏,拖拽指示节点的时候稍微慢一点);
- 右侧选项菜单中有各种形状的节点供拖拽展示;
### 编辑
- 双击节点会弹出编辑器右侧的编辑框(这个动作是开发者自定义的,可以自定义弹框编辑节点内容);
- 编辑器右侧的编辑框内的内容是自定义的,可以根据节点内容动态变化,显示不同的表单内容;比如实例中,【开始】以及【结束】节点就只能编辑节点名称;而【审批节点】可以从下拉选项中选择【节点任务内容】;
# 后续待完成的功能
- 节点增加宽度以及高度的功能;
- 节点复制;
# 其他
- vue-flow-editor是基于 Vue3.0 + typescript 实现的库
- 如遇到元素突然不能拖拽的话,先点击一下旁边画布,再重新点击元素就可拖拽了
\ No newline at end of file
......
module.exports = {
sourceType: 'unambiguous', // 打包G6的时候才需要的属性
presets: ['vca-jsx', '@vue/app'],
plugins: ["@babel/plugin-transform-modules-umd"]
};
const $utils = require('./build.utils')
module.exports = {
outputDir: 'docs/lib',
transpileDependencies: [
'@antv',
'd3-force',
],
configureWebpack: {
entry: {
'G6': $utils.resolve('src/build.g6.ts')
},
output: {
filename: `g6.umd.min.js`,
libraryTarget: 'umd',
library: ['G6'],
globalObject: 'this'
},
},
chainWebpack: config => {
config.optimization.delete('splitChunks')
config.plugins.delete('copy')
config.plugins.delete('preload')
config.plugins.delete('prefetch')
config.plugins.delete('html')
config.plugins.delete('hmr')
config.entryPoints.delete('app')
}
}
\ No newline at end of file
const path = require('path')
const fs = require('fs')
const resolve = (dir) => path.join(__dirname, '../', dir)
const packageJson = require('../package')
const join = path.join
const webpack = require('webpack')
const WebpackMerge = require('webpack-merge')
/**
* 转为驼峰命名
* @author 韦胜健
* @date 2018/11/19
*/
function camelCase(name) {
const SPECIAL_CHARS_REGEXP = /([:\-_]+(.))/g;
const MOZ_HACK_REGEXP = /^moz([A-Z])/;
return name
.replace(SPECIAL_CHARS_REGEXP, function (_, separator, letter, offset) {
return offset ? letter.toUpperCase() : letter;
})
.replace(MOZ_HACK_REGEXP, 'Moz$1');
}
const entryName = (() => {
let name = packageJson.name
let separatorIndex = name.indexOf('/')
if (separatorIndex > -1) {
name = name.substring(separatorIndex + 1)
}
return name
})();
module.exports = {
// 当前是否为生产模式
isProduction: process.env.NODE_ENV === 'production',
// 包名
packageName: packageJson.name,
// 打包主入口文件名
entryName,
// 打包暴露对象名称
libraryName: (() => {
let name = camelCase(entryName)
name = name.charAt(0).toUpperCase() + name.substring(1)
return name
})(),
// 版本
version: packageJson.version,
webpack,
WebpackMerge,
resolve,
join,
camelCase,
argv: (() => {
const args = process.argv.slice(2)
return args.reduce((ret, item) => {
if (item.indexOf('=') > -1) {
const [key, value] = item.split('=')
ret[key] = value
} else if (item.indexOf('--') > -1) {
const key = item.replace('--', '')
ret[key] = true
}
return ret
}, {})
})(),
isExist(path) {
try {
return fs.statSync(path)
} catch (e) {
return null
}
},
checkEntries(path) {
let files = fs.readdirSync(resolve(path));
files.forEach((item) => {
let itemPath = join(path, item)
let isDir = fs.statSync(itemPath).isDirectory();
if (isDir) {
let p;
p = resolve(join(itemPath, 'index.js'))
if (!!this.isExist(p)) {
return
}
p = resolve(join(itemPath, 'index.ts'))
if (!!this.isExist(p)) {
return
}
p = resolve(join(itemPath, 'index.tsx'))
if (!!this.isExist(p)) {
return
}
console.log(`create index file:` + p)
fs.writeFileSync(join(itemPath, 'index.js'), `
import component from './pl-${item}.vue'
import {plugin} from "../../utils";
export default plugin(component)
`.trim())
}
})
},
getEntries(path) {
let files = fs.readdirSync(resolve(path));
const componentEntries = files.reduce((ret, item) => {
let itemPath = join(path, item)
let isDir = fs.statSync(itemPath).isDirectory();
if (isDir) {
let p;
p = resolve(join(itemPath, 'index.js'))
if (!!this.isExist(p)) {
ret[item] = p
}
p = resolve(join(itemPath, 'index.ts'))
if (!!this.isExist(p)) {
ret[item] = p
}
p = resolve(join(itemPath, 'index.tsx'))
if (!!this.isExist(p)) {
ret[item] = p
}
} else {
const [name] = item.split('.')
ret[name] = resolve(`${itemPath}`)
}
return ret
}, {})
return componentEntries
},
}
/*
* @Date: 2021-08-18 12:47:05
* @LastEditors: hookehuyr hookehuyr@gmail.com
* @LastEditTime: 2023-10-26 10:10:07
* @FilePath: /vue-flow-editor-for-vue3.0-master/build/docs.js
* @Description: 文件描述
*/
const $utils = require('./build.utils')
module.exports = {
publicPath: './',
outputDir: 'docs',
devServer: {
port: '4488'
},
pages: {
index: {
entry: $utils.resolve('doc/main.ts'),
template: 'public/index.html',
filename: 'index.html',
title: 'vue-flow-editor',
chunks: ['chunk-vendors', 'chunk-common', 'index'],
},
},
configureWebpack:{
module: {
rules: [
{
test: /\.mjs$/,
include: /node_modules/,
type: "javascript/auto"
},
]
}
},
}
/*
* @Date: 2021-08-18 12:47:05
* @LastEditors: hookehuyr hookehuyr@gmail.com
* @LastEditTime: 2023-10-25 18:27:38
* @FilePath: /vue-flow-editor-for-vue3.0-master/build/index.js
* @Description: 文件描述
*/
const $utils = require('./build.utils')
// const argv = $utils.argv
// if (argv.g6) {
// return module.exports = require('./build.g6')
// }
// if (!argv.release) {
// return module.exports = require('./docs')
// } else {
// return module.exports = require('./release')
// }
module.exports = require('./docs')
const $utils = require('./build.utils')
console.log('build umd')
module.exports = {
publicPath: './',
outputDir: 'docs/dist',
configureWebpack: {
entry: {
'vue-flow-editor': $utils.resolve('src/index.ts')
},
output: {
filename: `vue-flow-editor.js`,
libraryTarget: 'umd',
libraryExport: 'default',
library: ['VueFlowEditor'],
globalObject: 'this'
},
},
css: {
sourceMap: true,
extract: {
filename: `[name].css`
}
},
chainWebpack: config => {
config.optimization.delete('splitChunks')
config.plugins.delete('copy')
config.plugins.delete('preload')
config.plugins.delete('prefetch')
config.plugins.delete('html')
config.plugins.delete('hmr')
config.entryPoints.delete('app')
}
}
<template>
<div class="app" style="height: 100vh">
<vue-flow-editor
ref="editor"
:data="state.data"
:grid="showGrid"
:miniMap="showMiniMap"
:onRef="onRef"
:multipleSelect="true"
:loading="state.editorLoading"
:beforeDelete="handleBeforeDelete"
:afterDelete="handleAfterDelete"
:beforeAdd="handleBeforeAdd"
:afterAdd="handleAfterAdd"
@dblclick-node="onDblclickNode"
@dblclick-edge="onDblClickEdge"
:activityConfig="state.activityConfig"
>
<template v-slot:menu>
<vue-flow-edit-menu-group label="活动节点" value>
<vue-flow-edit-menu
v-for="(value, key) in state.activityConfig"
:key="key"
:model="{ activity: key, text: value.text, desc: value.desc }"
>
<template v-slot:content>
<div class="activity-menu">
<img :src="value.img" />
<span>{{ value.text }}</span>
</div>
</template>
</vue-flow-edit-menu>
</vue-flow-edit-menu-group>
<vue-flow-edit-menu-group
v-for="(group, groupIndex) in state.menuData"
:label="group.label"
:key="groupIndex"
value
>
<vue-flow-edit-menu
v-for="(menu, menuIndex) in group.menus"
:key="menuIndex"
:model="menu"
/>
</vue-flow-edit-menu-group>
</template>
<template v-slot:model>
<el-form
v-if="!!state.detailModel"
ref="form"
:model="state.detailModel"
label-width="100px"
>
<template v-if="state.detailModel.activity === undefined">
<el-form-item label="节点名称" prop="label">
<el-input v-model="state.detailModel.label" />
</el-form-item>
<el-form-item label="测试属性" prop="label">
<el-input v-model="state.detailModel.data.test" />
</el-form-item>
<template v-if="state.detailModel.type !== 'edge'">
<el-form-item label="节点背景色" prop="style.fill">
<el-color-picker v-model="state.detailModel.style.fill" />
</el-form-item>
<el-form-item label="节点边框色" prop="style.stroke">
<el-color-picker v-model="state.detailModel.style.stroke" />
</el-form-item>
<el-form-item label="节点文字色" prop="labelCfg.style.stroke">
<el-color-picker
v-model="state.detailModel.labelCfg.style.fill"
/>
</el-form-item>
</template>
</template>
<template v-else>
<el-form-item label="活动标题">
<el-input v-model="state.detailModel.text" />
</el-form-item>
<el-form-item label="活动副标题">
<el-input v-model="state.detailModel.desc" />
</el-form-item>
<el-form-item label="活动类型">
<el-select v-model="state.detailModel.activity">
<el-option
v-for="(value, key) in state.activityConfig"
:key="key"
:label="value.text"
:value="key"
/>
</el-select>
</el-form-item>
</template>
</el-form>
</template>
<template v-slot:toolbar>
<el-tooltip content="测试工具栏插槽">
<div class="vue-flow-editor-toolbar-item" @click="logData">
<i class="el-icon-search" />
</div>
</el-tooltip>
</template>
<template v-slot:foot>
<el-button type="primary" @click="save">保存</el-button>
<el-button @click="cancel">取消</el-button>
</template>
</vue-flow-editor>
</div>
</template>
<script lang="ts">
import { reactive } from "vue";
import { AppData } from "./data.js";
import { staticPath } from "./utils";
import { ElNotification } from 'element-plus'
const G6 = (window as any).G6.default as any;
function delay(time) {
return new Promise((resolve) => setTimeout(resolve, time));
}
export default {
setup(props, context) {
const state = reactive({
data: AppData,
detailModel: null,
editorLoading: false,
selectOptions: [
{ label: "待确认", value: "0" },
{ label: "填写表单", value: "1" },
{ label: "部门负责人审批", value: "2" },
{ label: "总经理审批", value: "3" },
],
menuData: [
{
label: "流程节点",
menus: [
{ label: "开始", shape: "ellipse", id: "start-node" },
{ label: "结束", shape: "ellipse", id: "end-node" },
{ label: "审批节点", busType: "123" },
{ label: "判断节点", shape: "diamond" },
],
},
{
label: "其他形状节点",
menus: [
{ label: "矩形节点", shape: "rect" },
{ label: "圆形节点", shape: "circle" },
{ label: "椭圆节点", shape: "ellipse" },
{ label: "菱形节点", shape: "diamond" },
{ label: "三角形节点", shape: "triangle" },
{ label: "星形节点", shape: "star" },
],
},
],
activityConfig: {
advertisement: {
text: "广告宣传1",
desc: "通过广告宣传新品",
color: "#9283ed",
img: 'https://cdn.ipadbiz.cn/oa/advertisement-node.svg',
},
coupon: {
text: "优惠券",
desc: "发放奖励优惠券",
color: "#ed8383",
img: 'https://cdn.ipadbiz.cn/oa/coupon-node.svg',
},
crowd: {
text: "用户反馈",
desc: "收集用户反馈信息",
color: "#92dba8",
img: 'https://cdn.ipadbiz.cn/oa/crowd-node.svg',
},
},
});
let editor;
function onDblclickNode(e) {
const model = G6.Util.clone(e.item.get("model"));
model.style = model.style || {};
model.labelCfg = model.labelCfg || { style: {} };
state.detailModel = model;
editor.openModel();
}
function onDblClickEdge(e) {
const { source, target, style, labelCfg, label } = e.item.get("model");
const model = {
label,
source,
target,
style: style || {},
labelCfg: labelCfg || { style: {} },
type: null,
id: null,
};
model.type = e.item.get("type");
model.id = e.item.get("id");
state.detailModel = model;
editor.openModel();
}
function cancel() {
editor.closeModel();
}
function save() {
editor.updateModel(state.detailModel);
editor.closeModel();
}
async function handleBeforeDelete(model, type) {
if (type === "node") {
if (model.label === "开始") {
state.editorLoading = true;
await delay(1000);
state.editorLoading = false;
ElNotification.error("不可以删除【开始】节点");
return Promise.reject("reject");
}
}
}
function handleAfterDelete(model, type) {
if (type === "edge") {
console.log("delete edge");
} else {
console.log("after delete", model.label, { ...model });
}
}
function handleBeforeAdd(model, type) {
if (type === "edge") {
if (model.source === "end-node") {
ElNotification.error("结束节点不能输出连线其他节点");
return Promise.reject("reject");
}
}
if (type === "node") {
if (model.id === "start-node" || model.id === "end-node") {
const data = editor.editorState.graph.save();
for (let i = 0; i < data.nodes.length; i++) {
const node = data.nodes[i];
if (node.id === model.id) {
ElNotification.error(
`只能有一个${model.id === "start-node" ? "开始" : "结束"}节点`
);
return Promise.reject("reject");
}
}
}
}
}
function handleAfterAdd(model, type) {
if (type === "edge") {
console.log(`新增连接线`);
}
}
function logData() {
let { nodes, edges } = editor.editorState.graph.save();
nodes = nodes.map(
({ data, id, label, shape, x, y, text, desc, img }) => ({
data,
id,
label,
shape,
x,
y,
text,
desc,
img,
})
);
edges = edges.map(({ source, sourceAnchor, target, targetAnchor }) => ({
source,
sourceAnchor,
target,
targetAnchor,
}));
console.log(JSON.stringify({ nodes, edges }, null, 2));
}
return {
state,
showGrid: true,
showMiniMap: true,
onDblclickNode,
onDblClickEdge,
cancel,
save,
handleBeforeDelete,
handleAfterDelete,
handleBeforeAdd,
handleAfterAdd,
logData,
onRef: (e) => (editor = e),
staticPath,
};
},
};
</script>
<style lang="scss">
html,
body {
padding: 0;
margin: 0;
.activity-menu {
display: flex;
align-items: center;
img {
margin-right: 1em;
width: 30px;
height: 30px;
}
}
}
</style>
export const AppData = {
"nodes": [
{
"id": "123456",
"x": 590,
"y": 100,
"text": "广告宣传",
"desc": "通过广告短频宣传",
"activity": "advertisement",
},
{
"id": "2323456789",
"x": 1020,
"y": 100,
"text": "优惠券",
"desc": "发送奖励优惠券",
"activity": "coupon",
},
{
"data": {},
"id": "start-node",
"label": "开始",
"shape": "ellipse",
"x": 380,
"y": 100
},
{
"data": {},
"id": "1588848310120",
"label": "主管审批",
"shape": "rect",
"x": 380,
"y": 180
},
{
"data": {},
"id": "1588848322179",
"label": "经理审批",
"shape": "rect",
"x": 380,
"y": 260
},
{
"data": {},
"id": "1588848338211",
"label": "金额>2万",
"shape": "diamond",
"x": 380,
"y": 340
},
{
"data": {},
"id": "1588848351476",
"label": "财务打款",
"shape": "rect",
"x": 380,
"y": 460
},
{
"data": {},
"id": "end-node",
"label": "结束",
"shape": "ellipse",
"x": 380,
"y": 540
},
{
"data": {},
"id": "1588848397511",
"label": "VIP审批",
"shape": "rect",
"x": 590,
"y": 340
},
{
"data": {
test: 100
},
"id": "1588848436694",
"label": "金额>10万1",
"shape": "diamond",
"x": 780,
"y": 340
},
{
"data": {},
"id": "1588848449431",
"label": "CEO审批",
"shape": "rect",
"x": 960,
"y": 460
}
],
"edges": [
{
"source": "start-node",
"sourceAnchor": 2,
"target": "1588848310120",
"targetAnchor": 0
},
{
"source": "1588848310120",
"sourceAnchor": 2,
"target": "1588848322179",
"targetAnchor": 0
},
{
"source": "1588848322179",
"sourceAnchor": 2,
"target": "1588848338211",
"targetAnchor": 0
},
{
"source": "1588848338211",
"sourceAnchor": 2,
"target": "1588848351476",
"targetAnchor": 0
},
{
"source": "1588848351476",
"sourceAnchor": 2,
"target": "end-node",
"targetAnchor": 0
},
{
"source": "1588848338211",
"sourceAnchor": 3,
"target": "1588848397511",
"targetAnchor": 1
},
{
"source": "1588848436694",
"sourceAnchor": 3,
"target": "1588848449431",
"targetAnchor": 0
},
{
"source": "1588848449431",
"sourceAnchor": 1,
"target": "1588848351476",
"targetAnchor": 3
},
{
"source": "1588848436694",
"sourceAnchor": 2,
"target": "1588848351476",
"targetAnchor": 3
},
{
"source": "1588848397511",
"sourceAnchor": 3,
"target": "1588848436694",
"targetAnchor": 1
},
{
"source": "start-node",
"sourceAnchor": 3,
"target": "123456",
"targetAnchor": 1
},
{
"source": "123456",
"sourceAnchor": 3,
"target": "2323456789",
"targetAnchor": 1
},
{
"source": "2323456789",
"sourceAnchor": 3,
"target": "end-node",
"targetAnchor": 3
}
]
}
/*
* @Date: 2021-08-18 12:47:05
* @LastEditors: hookehuyr hookehuyr@gmail.com
* @LastEditTime: 2023-10-26 10:01:48
* @FilePath: /vue-flow-editor-for-vue3.0-master/doc/main.ts
* @Description: 文件描述
*/
import { createApp ,h } from 'vue';
import App from './App.vue'
import VueFlowEditor from '../src/index'
import element from 'element-plus'
import 'element-plus/dist/index.css'
const Vue = createApp({
render: ()=>h(App)
});
Vue.use(VueFlowEditor)
// @ts-ignore
//Vue.use(window.ELEMENT)
//Vue.config.productionTip = false
Vue.use(element)
Vue.mount("#app")
declare module '*.bmp' {
const src: string;
export default src;
}
declare module '*.gif' {
const src: string;
export default src;
}
declare module '*.jpg' {
const src: string;
export default src;
}
declare module '*.jpeg' {
const src: string;
export default src;
}
declare module '*.png' {
const src: string;
export default src;
}
declare module '*.webp' {
const src: string;
export default src;
}
declare module '*.module.css' {
const classes: { readonly [key: string]: string };
export default classes;
}
declare module '*.module.scss' {
const classes: { readonly [key: string]: string };
export default classes;
}
declare module '*.module.sass' {
const classes: { readonly [key: string]: string };
export default classes;
}
declare module '*.vue' {
import type { DefineComponent } from 'vue'
const component: DefineComponent<{}, {}, any>
export default component
}
\ No newline at end of file
import { VNode } from 'vue'
import { ComponentRenderProxy } from '@vue/composition-api'
declare global {
namespace JSX {
// tslint:disable no-empty-interface
interface Element extends VNode {}
// tslint:disable no-empty-interface
interface ElementClass extends ComponentRenderProxy {}
interface ElementAttributesProperty {
$props: any; // specify the property name to use
}
interface IntrinsicElements {
[elem: string]: any
}
}
}
export function staticPath(path) {
return joinPath('/vue-flow-editor', path)
}
export function joinPath(source: string, target: string, separator = '/') {
if (source.indexOf('/') === source.length - 1) {
source = source.slice(0, -1)
}
if (target.charAt(0) === '/') {
target = target.slice(1)
}
return `${source}${separator}${target}`
}
\ No newline at end of file
This diff could not be displayed because it is too large.
body,html{padding:0;margin:0}body .activity-menu,html .activity-menu{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}body .activity-menu img,html .activity-menu img{margin-right:1em;width:30px;height:30px}.icon{width:1em;height:1em;vertical-align:-.15em;fill:currentColor;overflow:hidden}.vue-flow-editor{height:100%;position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;overflow:hidden}.vue-flow-editor .vue-flow-editor-left{overflow:hidden;-webkit-box-shadow:0 2px 8px #f0f1f2;box-shadow:0 2px 8px #f0f1f2}.vue-flow-editor .vue-flow-editor-right{-webkit-box-flex:1;-ms-flex:1;flex:1;flex-direction:column;overflow:hidden}.vue-flow-editor .vue-flow-editor-menu,.vue-flow-editor .vue-flow-editor-right{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column}.vue-flow-editor .vue-flow-editor-menu{height:100%;width:100%;flex-direction:column}.vue-flow-editor .vue-flow-editor-menu .vue-flow-editor-menu-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;letter-spacing:2px;color:#000;-webkit-box-shadow:0 2px 8px #f0f1f2;box-shadow:0 2px 8px #f0f1f2;-webkit-box-sizing:border-box;box-sizing:border-box}.vue-flow-editor .vue-flow-editor-menu .vue-flow-editor-menu-header img{height:100%}.vue-flow-editor .vue-flow-editor-menu .vue-flow-editor-menu-list{-webkit-box-flex:1;-ms-flex:1;flex:1;overflow:hidden;background-color:#f9f9f9;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vue-flow-editor .vue-flow-editor-menu .vue-flow-editor-menu-list .vue-flow-editor-menu-list-content{height:100%;width:100%;overflow-y:auto;overflow-x:hidden}.vue-flow-editor .vue-flow-editor-menu .vue-flow-editor-menu-list .vue-flow-edit-menu-group .vue-flow-edit-menu-group-title{font-size:14px;font-weight:500;color:#777;background-color:#fff;padding:0 16px;height:40px;margin-top:2px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;cursor:pointer}.vue-flow-editor .vue-flow-editor-menu .vue-flow-editor-menu-list .vue-flow-edit-menu-group .vue-flow-edit-menu-group-content{-webkit-box-sizing:border-box;box-sizing:border-box;padding:6px}.vue-flow-editor .vue-flow-editor-menu .vue-flow-editor-menu-list .vue-flow-edit-menu-group.vue-flow-edit-menu-group-expanded .vue-flow-edit-menu-group-title i{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.vue-flow-editor .vue-flow-editor-menu .vue-flow-editor-menu-list .vue-flow-edit-menu{padding:9px 16px;-webkit-box-sizing:border-box;box-sizing:border-box;background-color:#fff;margin-bottom:2px;cursor:move;font-size:14px;color:#777;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-transition:all .3s linear;transition:all .3s linear}.vue-flow-editor .vue-flow-editor-menu .vue-flow-editor-menu-list .vue-flow-edit-menu:hover{background-color:rgba(31,116,255,.08);color:#000}.vue-flow-editor .vue-flow-editor-menu .vue-flow-editor-menu-list .vue-flow-edit-menu:active{background-color:rgba(31,116,255,.08)}.vue-flow-editor .vue-flow-editor-menu .vue-flow-editor-menu-list .vue-flow-edit-menu:first-child{margin-top:2px}.vue-flow-editor .vue-flow-editor-toolbar{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;padding:0 16px;-webkit-box-shadow:0 2px 8px #f0f1f2;box-shadow:0 2px 8px #f0f1f2;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-size:14px}.vue-flow-editor .vue-flow-editor-toolbar>*{cursor:pointer;color:#777}.vue-flow-editor .vue-flow-editor-toolbar .vue-flow-editor-toolbar-item{width:60px;height:48px;outline:none;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.vue-flow-editor .vue-flow-editor-toolbar .vue-flow-editor-toolbar-item img{width:16px;height:16px;margin-bottom:4px}.vue-flow-editor .vue-flow-editor-toolbar .vue-flow-editor-toolbar-item span{font-size:12px;-webkit-transform:scale(.8);transform:scale(.8)}.vue-flow-editor .vue-flow-editor-toolbar .vue-flow-editor-toolbar-item:hover{background-color:#f6f6f6;border-radius:2px}.vue-flow-editor .vue-flow-editor-toolbar .vue-flow-editor-toolbar-item.vue-flow-editor-toolbar-item-disabled{opacity:.5;background-color:transparent;cursor:not-allowed}.vue-flow-editor .vue-flow-editor-toolbar .vue-flow-editor-toolbar-divider{height:18px;border-left:1px solid #ddd}.vue-flow-editor .vue-flow-editor-canvas{-webkit-box-flex:1;-ms-flex:1;flex:1;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vue-flow-editor .vue-flow-editor-canvas .vue-flow-editor-canvas-target{position:relative}.vue-flow-editor .vue-flow-editor-canvas .vue-flow-editor-canvas-target .g6-minimap{position:absolute;bottom:0;right:0;background-color:rgba(0,0,0,.1)}.vue-flow-editor .vue-flow-editor-model{z-index:2}.vue-flow-editor .vue-flow-editor-model,.vue-flow-editor .vue-flow-editor-model:before{position:absolute;top:0;left:0;right:0;bottom:0;-webkit-transition:all .3s cubic-bezier(.23,1,.32,1);transition:all .3s cubic-bezier(.23,1,.32,1);-webkit-transition-duration:.5s;transition-duration:.5s}.vue-flow-editor .vue-flow-editor-model:before{background-color:rgba(0,0,0,.1);content:""}.vue-flow-editor .vue-flow-editor-model .vue-flow-editor-model-body{background-color:#fff;position:absolute;top:0;bottom:0;right:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;border-left:1px solid #ddd;-webkit-box-shadow:0 2px 8px #f0f1f2;box-shadow:0 2px 8px #f0f1f2;-webkit-transition:all .3s cubic-bezier(.23,1,.32,1);transition:all .3s cubic-bezier(.23,1,.32,1);-webkit-transition-duration:.5s;transition-duration:.5s}.vue-flow-editor .vue-flow-editor-model .vue-flow-editor-model-body .vue-flow-editor-model-head{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:0 16px;-webkit-box-shadow:0 2px 8px #f0f1f2;box-shadow:0 2px 8px #f0f1f2}.vue-flow-editor .vue-flow-editor-model .vue-flow-editor-model-body .vue-flow-editor-model-head>i{cursor:pointer}.vue-flow-editor .vue-flow-editor-model .vue-flow-editor-model-body .vue-flow-editor-model-content{-webkit-box-flex:1;-ms-flex:1;flex:1;overflow:auto}.vue-flow-editor .vue-flow-editor-model .vue-flow-editor-model-body .vue-flow-editor-model-foot{height:50px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-top:1px solid #eee;-webkit-box-shadow:0 2px 8px #f0f1f2;box-shadow:0 2px 8px #f0f1f2}.vue-flow-editor .vue-flow-editor-model.vue-flow-editor-transition-enter-active .vue-flow-editor-model-body,.vue-flow-editor .vue-flow-editor-model.vue-flow-editor-transition-leave-active .vue-flow-editor-model-body{-webkit-transform:translateX(0);transform:translateX(0)}.vue-flow-editor .vue-flow-editor-model.vue-flow-editor-transition-enter-active:before,.vue-flow-editor .vue-flow-editor-model.vue-flow-editor-transition-leave-active:before{opacity:1}.vue-flow-editor .vue-flow-editor-model.vue-flow-editor-transition-enter .vue-flow-editor-model-body,.vue-flow-editor .vue-flow-editor-model.vue-flow-editor-transition-leave-to .vue-flow-editor-model-body{-webkit-transform:translateX(100%);transform:translateX(100%)}.vue-flow-editor .vue-flow-editor-model.vue-flow-editor-transition-enter:before,.vue-flow-editor .vue-flow-editor-model.vue-flow-editor-transition-leave-to:before{opacity:0}.vue-flow-editor .vue-flow-editor-preview{position:fixed;z-index:2;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vue-flow-editor .vue-flow-editor-preview,.vue-flow-editor .vue-flow-editor-preview:before{top:0;bottom:0;left:0;right:0;-webkit-transition:all .3s cubic-bezier(.23,1,.32,1);transition:all .3s cubic-bezier(.23,1,.32,1);-webkit-transition-duration:.5s;transition-duration:.5s}.vue-flow-editor .vue-flow-editor-preview:before{position:absolute;content:"";background-color:rgba(0,0,0,.1)}.vue-flow-editor .vue-flow-editor-preview .vue-flow-editor-preview-body{width:80%;height:80%;background-color:#fff;border-radius:12px;position:relative;z-index:1;-webkit-transition:all .3s cubic-bezier(.23,1,.32,1);transition:all .3s cubic-bezier(.23,1,.32,1);-webkit-transition-duration:.5s;transition-duration:.5s}.vue-flow-editor .vue-flow-editor-preview .vue-flow-editor-preview-body .vue-flow-editor-preview-close{position:absolute;top:-20px;right:-20px;font-size:20px;background-color:#fff;height:40px;width:40px;border-radius:20px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-shadow:0 2px 8px #f0f1f2;box-shadow:0 2px 8px #f0f1f2;border:1px solid #eee;color:#999;cursor:pointer}.vue-flow-editor .vue-flow-editor-preview.vue-flow-editor-preview-transition-enter-active .vue-flow-editor-preview-body,.vue-flow-editor .vue-flow-editor-preview.vue-flow-editor-preview-transition-leave-active .vue-flow-editor-preview-body{-webkit-transform:translateX(0);transform:translateX(0)}.vue-flow-editor .vue-flow-editor-preview.vue-flow-editor-preview-transition-enter-active:before,.vue-flow-editor .vue-flow-editor-preview.vue-flow-editor-preview-transition-leave-active:before{opacity:1}.vue-flow-editor .vue-flow-editor-preview.vue-flow-editor-preview-transition-enter .vue-flow-editor-preview-body,.vue-flow-editor .vue-flow-editor-preview.vue-flow-editor-preview-transition-leave-to .vue-flow-editor-preview-body{-webkit-transform:translateY(-15%);transform:translateY(-15%);opacity:0}.vue-flow-editor .vue-flow-editor-preview.vue-flow-editor-preview-transition-enter:before,.vue-flow-editor .vue-flow-editor-preview.vue-flow-editor-preview-transition-leave-to:before{opacity:0}.vue-flow-editor-icon{color:inherit;font-size:inherit;-webkit-box-sizing:border-box;box-sizing:border-box;outline:none;width:1em;height:1em;vertical-align:-.15em;fill:currentColor;overflow:hidden}
\ No newline at end of file
<html>
<head>
<meta charset="utf-8">
<title>vue-flow-editor demo</title>
<link type="text/css" rel="stylesheet" href="http://martsforever-pot.gitee.io/vue-flow-editor/dist/vue-flow-editor.css">
<link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
<style>
html, body {
padding: 0;
margin: 0;
}
</style>
</head>
<body>
<div id="app">
</div>
<script src="./lib/g6.umd.min.js"></script>
<script src="http://martsforever-pot.gitee.io/vue-flow-editor/lib/vue.min.js"></script>
<script src="https://unpkg.com/@vue/composition-api/dist/vue-composition-api.umd.js"></script>
<script src="https://unpkg.com/element-ui/lib/index.js"></script>
<script src="http://martsforever-pot.gitee.io/vue-flow-editor/dist/vue-flow-editor.js"></script>
<script>
console.log(window)
Vue.use(window.vueCompositionApi.default)
Vue.use(window.VueFlowEditor)
const Ele = window.ELEMENT
const G6 = window.G6.default
const reactive = window.vueCompositionApi.reactive
function delay(time) {
return new Promise((resolve) => setTimeout(resolve, time))
}
const AppData = {
"nodes": [{"data": {}, "id": "start-node", "label": "开始", "shape": "ellipse", "size": [120, 40], "x": 380, "y": 100}, {"data": {}, "id": "1588848310120", "label": "主管审批", "shape": "rect", "size": [120, 40], "x": 380, "y": 180}, {"data": {}, "id": "1588848322179", "label": "经理审批", "shape": "rect", "size": [120, 40], "x": 380, "y": 260}, {
"data": {},
"id": "1588848338211",
"label": "金额>2万",
"shape": "diamond",
"size": [120, 40],
"x": 380,
"y": 340
}, {"data": {}, "id": "1588848351476", "label": "财务打款", "shape": "rect", "size": [120, 40], "x": 380, "y": 460}, {"data": {}, "id": "end-node", "label": "结束", "shape": "ellipse", "size": [120, 40], "x": 380, "y": 540}, {"data": {}, "id": "1588848397511", "label": "VIP审批", "shape": "rect", "size": [120, 40], "x": 620, "y": 340}, {
"data": {},
"id": "1588848436694",
"label": "金额>10万",
"shape": "diamond",
"size": [120, 40],
"x": 780,
"y": 340
}, {"data": {}, "id": "1588848449431", "label": "CEO审批", "shape": "rect", "size": [120, 40], "x": 980, "y": 460}],
"edges": [{"shape": "flow-polyline-round", "source": "start-node", "sourceAnchor": 2, "target": "1588848310120", "targetAnchor": 0}, {"shape": "flow-polyline-round", "source": "1588848310120", "sourceAnchor": 2, "target": "1588848322179", "targetAnchor": 0}, {
"shape": "flow-polyline-round",
"source": "1588848322179",
"sourceAnchor": 2,
"target": "1588848338211",
"targetAnchor": 0
}, {"shape": "flow-polyline-round", "source": "1588848338211", "sourceAnchor": 2, "target": "1588848351476", "targetAnchor": 0, "label": "否"}, {"shape": "flow-polyline-round", "source": "1588848351476", "sourceAnchor": 2, "target": "end-node", "targetAnchor": 0}, {
"shape": "flow-polyline-round",
"source": "1588848338211",
"sourceAnchor": 3,
"target": "1588848397511",
"targetAnchor": 1,
"label": "是"
}, {"shape": "flow-polyline-round", "source": "1588848436694", "sourceAnchor": 3, "target": "1588848449431", "targetAnchor": 0, "label": "是"}, {"shape": "flow-polyline-round", "source": "1588848449431", "sourceAnchor": 1, "target": "1588848351476", "targetAnchor": 3}, {
"shape": "flow-polyline-round",
"source": "1588848436694",
"sourceAnchor": 2,
"target": "1588848351476",
"targetAnchor": 3,
"label": "否"
}, {"shape": "flow-polyline-round", "source": "1588848397511", "sourceAnchor": 3, "target": "1588848436694", "targetAnchor": 1}]
}
new Vue({
el: '#app',
template: `
<div class="app" style="height: 100vh">
<vue-flow-editor
ref="editor"
:data="state.data"
:grid="showGrid"
:miniMap="showMiniMap"
:onRef="onRef"
:multipleSelect="true"
:loading="state.editorLoading"
:disabledUndo="false"
:disabledDragEdge="true"
:beforeDelete="handleBeforeDelete"
:afterDelete="handleAfterDelete"
:beforeAdd="handleBeforeAdd"
:afterAdd="handleAfterAdd"
@dblclick-node="onDblclickNode"
@dblclick-edge="onDblClickEdge"
>
<div slot="menu">
<vue-flow-edit-menu-group v-for="(group,groupIndex) in state.menuData" :label="group.label" :key="groupIndex">
<vue-flow-edit-menu v-for="(menu,menuIndex) in group.menus" :key="menuIndex" :model="menu"/>
</vue-flow-edit-menu-group>
</div>
<div slot="model" style="padding: 16px">
<el-form v-if="!!state.detailModel" ref="form" :model="state.detailModel" label-width="100px">
<el-form-item label="节点名称" prop="label">
<el-input v-model="state.detailModel.label"/>
</el-form-item>
<template v-if="state.detailModel.type !== 'edge'">
<el-form-item label="节点背景色" prop="style.fill">
<el-color-picker v-model="state.detailModel.style.fill"/>
</el-form-item>
<el-form-item label="节点边框色" prop="style.stroke">
<el-color-picker v-model="state.detailModel.style.stroke"/>
</el-form-item>
<el-form-item label="节点文字色" prop="labelCfg.style.stroke">
<el-color-picker v-model="state.detailModel.labelCfg.style.fill"/>
</el-form-item>
</template>
</el-form>
</div>
<template slot="toolbar">
<el-tooltip content="测试工具栏插槽">
<div class="vue-flow-editor-toolbar-item">
<i class="el-icon-search"/>
</div>
</el-tooltip>
</template>
<template slot="foot">
<el-button type="primary" @click="save">保存</el-button>
<el-button @click="cancel">取消</el-button>
</template>
</vue-flow-editor>
</div>
`,
setup() {
const state = reactive({
data: AppData,
detailModel: null,
editorLoading: false,
selectOptions: [
{label: '待确认', value: '0'},
{label: '填写表单', value: '1'},
{label: '部门负责人审批', value: '2'},
{label: '总经理审批', value: '3'},
],
menuData: [
{
label: '流程节点',
menus: [
{label: '开始', shape: 'ellipse', id: 'start-node'},
{label: '结束', shape: 'ellipse', id: 'end-node'},
{label: '审批节点', busType: '123'},
{label: '判断节点'},
],
},
{
label: '其他形状节点',
menus: [
{label: '矩形节点', shape: 'rect'},
{label: '圆形节点', shape: 'circle'},
{label: '椭圆节点', shape: 'ellipse'},
{label: '菱形节点', shape: 'diamond'},
{label: '三角形节点', shape: 'triangle'},
{label: '星形节点', shape: 'star'},
]
}
]
})
let editor;
function onDblclickNode(e) {
const model = G6.Util.clone(e.item.get('model'))
model.style = model.style || {}
model.labelCfg = model.labelCfg || {style: {}}
state.detailModel = model
editor.openModel()
}
function onDblClickEdge(e) {
const {source, target, style, labelCfg, label} = e.item.get('model')
const model = {label, source, target, style: style || {}, labelCfg: labelCfg || {style: {}}, type: null, id: null}
model.type = e.item.get('type')
model.id = e.item.get('id')
state.detailModel = model
editor.openModel()
}
function cancel() {
editor.closeModel()
}
function save() {
editor.updateModel(state.detailModel)
editor.closeModel()
}
async function handleBeforeDelete(model, type) {
if (type === 'node') {
if (model.label === '开始') {
state.editorLoading = true
await delay(1000)
state.editorLoading = false
Ele.Notification.error('不可以删除【开始】节点')
return Promise.reject('reject')
}
}
}
function handleAfterDelete(model, type) {
if (type === 'edge') {
console.log('delete edge')
} else {
console.log('after delete', model.label, {...model})
}
}
function handleBeforeAdd(model, type) {
if (type === 'edge') {
if (model.source === 'end-node') {
Ele.Notification.error('结束节点不能输出连线其他节点')
return Promise.reject('reject')
}
}
if (type === 'node') {
if (model.id === 'start-node' || model.id === 'end-node') {
const data = editor.editorState.graph.save()
for (let i = 0; i < data.nodes.length; i++) {
const node = data.nodes[i];
if (node.id === model.id) {
Ele.Notification.error(`只能有一个${model.id === 'start-node' ? '开始' : '结束'}节点`)
return Promise.reject('reject')
}
}
}
}
}
function handleAfterAdd(model, type) {
if (type === 'edge') {
console.log(`新增连接线`)
}
}
return {
state,
showGrid: true,
showMiniMap: false,
onDblclickNode,
onDblClickEdge,
cancel,
save,
handleBeforeDelete,
handleAfterDelete,
handleBeforeAdd,
handleAfterAdd,
onRef: e => editor = e,
}
},
}).$mount()
</script>
</body>
</html>
\ No newline at end of file
<html>
<head>
<meta charset="utf-8">
<title>vue-flow-editor demo</title>
<link type="text/css" rel="stylesheet" href="http://martsforever-pot.gitee.io/vue-flow-editor/dist/vue-flow-editor.css">
<link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
<style>
html, body {
padding: 0;
margin: 0;
}
</style>
</head>
<body>
<div id="app">
</div>
<script src="http://martsforever-pot.gitee.io/vue-flow-editor/lib/g6.umd.min.js"></script>
<script src="http://martsforever-pot.gitee.io/vue-flow-editor/lib/vue.min.js"></script>
<script src="http://martsforever-pot.gitee.io/vue-flow-editor/lib/vue-composition-api.umd.js"></script>
<script src="http://martsforever-pot.gitee.io/vue-flow-editor/lib/element-ui.js"></script>
<script src="http://martsforever-pot.gitee.io/vue-flow-editor/dist/vue-flow-editor.js"></script>
<script>
"use strict";
function 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; }
function _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) { _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; }
function _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; }
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
console.log(window);
Vue.use(window.vueCompositionApi.default);
Vue.use(window.VueFlowEditor);
var Ele = window.ELEMENT;
var G6 = window.G6.default;
var reactive = window.vueCompositionApi.reactive;
function delay(time) {
return new Promise(function (resolve) {
return setTimeout(resolve, time);
});
}
var AppData = {
"nodes": [{
"data": {},
"id": "start-node",
"label": "开始",
"shape": "ellipse",
"size": [120, 40],
"x": 380,
"y": 100
}, {
"data": {},
"id": "1588848310120",
"label": "主管审批",
"shape": "rect",
"size": [120, 40],
"x": 380,
"y": 180
}, {
"data": {},
"id": "1588848322179",
"label": "经理审批",
"shape": "rect",
"size": [120, 40],
"x": 380,
"y": 260
}, {
"data": {},
"id": "1588848338211",
"label": "金额>2万",
"shape": "diamond",
"size": [120, 40],
"x": 380,
"y": 340
}, {
"data": {},
"id": "1588848351476",
"label": "财务打款",
"shape": "rect",
"size": [120, 40],
"x": 380,
"y": 460
}, {
"data": {},
"id": "end-node",
"label": "结束",
"shape": "ellipse",
"size": [120, 40],
"x": 380,
"y": 540
}, {
"data": {},
"id": "1588848397511",
"label": "VIP审批",
"shape": "rect",
"size": [120, 40],
"x": 620,
"y": 340
}, {
"data": {},
"id": "1588848436694",
"label": "金额>10万",
"shape": "diamond",
"size": [120, 40],
"x": 780,
"y": 340
}, {
"data": {},
"id": "1588848449431",
"label": "CEO审批",
"shape": "rect",
"size": [120, 40],
"x": 980,
"y": 460
}],
"edges": [{
"shape": "flow-polyline-round",
"source": "start-node",
"sourceAnchor": 2,
"target": "1588848310120",
"targetAnchor": 0
}, {
"shape": "flow-polyline-round",
"source": "1588848310120",
"sourceAnchor": 2,
"target": "1588848322179",
"targetAnchor": 0
}, {
"shape": "flow-polyline-round",
"source": "1588848322179",
"sourceAnchor": 2,
"target": "1588848338211",
"targetAnchor": 0
}, {
"shape": "flow-polyline-round",
"source": "1588848338211",
"sourceAnchor": 2,
"target": "1588848351476",
"targetAnchor": 0,
"label": "否"
}, {
"shape": "flow-polyline-round",
"source": "1588848351476",
"sourceAnchor": 2,
"target": "end-node",
"targetAnchor": 0
}, {
"shape": "flow-polyline-round",
"source": "1588848338211",
"sourceAnchor": 3,
"target": "1588848397511",
"targetAnchor": 1,
"label": "是"
}, {
"shape": "flow-polyline-round",
"source": "1588848436694",
"sourceAnchor": 3,
"target": "1588848449431",
"targetAnchor": 0,
"label": "是"
}, {
"shape": "flow-polyline-round",
"source": "1588848449431",
"sourceAnchor": 1,
"target": "1588848351476",
"targetAnchor": 3
}, {
"shape": "flow-polyline-round",
"source": "1588848436694",
"sourceAnchor": 2,
"target": "1588848351476",
"targetAnchor": 3,
"label": "否"
}, {
"shape": "flow-polyline-round",
"source": "1588848397511",
"sourceAnchor": 3,
"target": "1588848436694",
"targetAnchor": 1
}]
};
new Vue({
el: '#app',
template: "\n <div class=\"app\" style=\"height: 100vh\">\n <vue-flow-editor\n ref=\"editor\"\n :data=\"state.data\"\n :grid=\"showGrid\"\n :miniMap=\"showMiniMap\"\n :onRef=\"onRef\"\n :multipleSelect=\"true\"\n :loading=\"state.editorLoading\"\n\n :disabledUndo=\"false\"\n :disabledDragEdge=\"true\"\n\n :beforeDelete=\"handleBeforeDelete\"\n :afterDelete=\"handleAfterDelete\"\n :beforeAdd=\"handleBeforeAdd\"\n :afterAdd=\"handleAfterAdd\"\n\n @dblclick-node=\"onDblclickNode\"\n @dblclick-edge=\"onDblClickEdge\"\n >\n <div slot=\"menu\">\n <vue-flow-edit-menu-group v-for=\"(group,groupIndex) in state.menuData\" :label=\"group.label\" :key=\"groupIndex\">\n <vue-flow-edit-menu v-for=\"(menu,menuIndex) in group.menus\" :key=\"menuIndex\" :model=\"menu\"/>\n </vue-flow-edit-menu-group>\n </div>\n <div slot=\"model\" style=\"padding: 16px\">\n <el-form v-if=\"!!state.detailModel\" ref=\"form\" :model=\"state.detailModel\" label-width=\"100px\">\n\n <el-form-item label=\"\u8282\u70B9\u540D\u79F0\" prop=\"label\">\n <el-input v-model=\"state.detailModel.label\"/>\n </el-form-item>\n\n <template v-if=\"state.detailModel.type !== 'edge'\">\n <el-form-item label=\"\u8282\u70B9\u80CC\u666F\u8272\" prop=\"style.fill\">\n <el-color-picker v-model=\"state.detailModel.style.fill\"/>\n </el-form-item>\n <el-form-item label=\"\u8282\u70B9\u8FB9\u6846\u8272\" prop=\"style.stroke\">\n <el-color-picker v-model=\"state.detailModel.style.stroke\"/>\n </el-form-item>\n <el-form-item label=\"\u8282\u70B9\u6587\u5B57\u8272\" prop=\"labelCfg.style.stroke\">\n <el-color-picker v-model=\"state.detailModel.labelCfg.style.fill\"/>\n </el-form-item>\n </template>\n\n </el-form>\n </div>\n\n <template slot=\"toolbar\">\n <el-tooltip content=\"\u6D4B\u8BD5\u5DE5\u5177\u680F\u63D2\u69FD\">\n <div class=\"vue-flow-editor-toolbar-item\">\n <i class=\"el-icon-search\"/>\n </div>\n </el-tooltip>\n </template>\n\n <template slot=\"foot\">\n <el-button type=\"primary\" @click=\"save\">\u4FDD\u5B58</el-button>\n <el-button @click=\"cancel\">\u53D6\u6D88</el-button>\n </template>\n </vue-flow-editor>\n </div>\n ",
setup: function setup() {
var state = reactive({
data: AppData,
detailModel: null,
editorLoading: false,
selectOptions: [{
label: '待确认',
value: '0'
}, {
label: '填写表单',
value: '1'
}, {
label: '部门负责人审批',
value: '2'
}, {
label: '总经理审批',
value: '3'
}],
menuData: [{
label: '流程节点',
menus: [{
label: '开始',
shape: 'ellipse',
id: 'start-node'
}, {
label: '结束',
shape: 'ellipse',
id: 'end-node'
}, {
label: '审批节点',
busType: '123'
}, {
label: '判断节点'
}]
}, {
label: '其他形状节点',
menus: [{
label: '矩形节点',
shape: 'rect'
}, {
label: '圆形节点',
shape: 'circle'
}, {
label: '椭圆节点',
shape: 'ellipse'
}, {
label: '菱形节点',
shape: 'diamond'
}, {
label: '三角形节点',
shape: 'triangle'
}, {
label: '星形节点',
shape: 'star'
}]
}]
});
var editor;
function onDblclickNode(e) {
var model = G6.Util.clone(e.item.get('model'));
model.style = model.style || {};
model.labelCfg = model.labelCfg || {
style: {}
};
state.detailModel = model;
editor.openModel();
}
function onDblClickEdge(e) {
var _e$item$get = e.item.get('model'),
source = _e$item$get.source,
target = _e$item$get.target,
style = _e$item$get.style,
labelCfg = _e$item$get.labelCfg,
label = _e$item$get.label;
var model = {
label: label,
source: source,
target: target,
style: style || {},
labelCfg: labelCfg || {
style: {}
},
type: null,
id: null
};
model.type = e.item.get('type');
model.id = e.item.get('id');
state.detailModel = model;
editor.openModel();
}
function cancel() {
editor.closeModel();
}
function save() {
editor.updateModel(state.detailModel);
editor.closeModel();
}
function handleBeforeDelete(_x, _x2) {
return _handleBeforeDelete.apply(this, arguments);
}
function _handleBeforeDelete() {
_handleBeforeDelete = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(model, type) {
return regeneratorRuntime.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
if (!(type === 'node')) {
_context.next = 8;
break;
}
if (!(model.label === '开始')) {
_context.next = 8;
break;
}
state.editorLoading = true;
_context.next = 5;
return delay(1000);
case 5:
state.editorLoading = false;
Ele.Notification.error('不可以删除【开始】节点');
return _context.abrupt("return", Promise.reject('reject'));
case 8:
case "end":
return _context.stop();
}
}
}, _callee);
}));
return _handleBeforeDelete.apply(this, arguments);
}
function handleAfterDelete(model, type) {
if (type === 'edge') {
console.log('delete edge');
} else {
console.log('after delete', model.label, _objectSpread({}, model));
}
}
function handleBeforeAdd(model, type) {
if (type === 'edge') {
if (model.source === 'end-node') {
Ele.Notification.error('结束节点不能输出连线其他节点');
return Promise.reject('reject');
}
}
if (type === 'node') {
if (model.id === 'start-node' || model.id === 'end-node') {
var data = editor.editorState.graph.save();
for (var i = 0; i < data.nodes.length; i++) {
var node = data.nodes[i];
if (node.id === model.id) {
Ele.Notification.error("\u53EA\u80FD\u6709\u4E00\u4E2A" + (model.id === 'start-node' ? '开始' : '结束') + "\u8282\u70B9");
return Promise.reject('reject');
}
}
}
}
}
function handleAfterAdd(model, type) {
if (type === 'edge') {
console.log("\u65B0\u589E\u8FDE\u63A5\u7EBF");
}
}
return {
state: state,
showGrid: true,
showMiniMap: false,
onDblclickNode: onDblclickNode,
onDblClickEdge: onDblClickEdge,
cancel: cancel,
save: save,
handleBeforeDelete: handleBeforeDelete,
handleAfterDelete: handleAfterDelete,
handleBeforeAdd: handleBeforeAdd,
handleAfterAdd: handleAfterAdd,
onRef: function onRef(e) {
return editor = e;
}
};
}
}).$mount();
</script>
</body>
</html>
\ No newline at end of file
No preview for this file type
<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 52.4 (67378) - http://www.bohemiancoding.com/sketch -->
<title>Group 15</title>
<desc>Created with Sketch.</desc>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="营销活动-新建活动-维护活动事件收起" transform="translate(-234.000000, -1217.000000)">
<g id="Group-17" transform="translate(218.000000, 749.000000)">
<g transform="translate(16.000000, 348.000000)" id="Group-5-Copy-6">
<g transform="translate(0.000000, 120.000000)">
<g id="Group-15">
<rect id="Rectangle-5" fill="#9283ED" x="0" y="0" width="24" height="24"></rect>
<g id="_08-2广告投放日志" transform="translate(6.000000, 7.000000)" fill="#FFFFFF" fill-rule="nonzero">
<path d="M0.00260303688,7.74513716 C0.00260303688,8.17286783 0.449075922,8.49206983 0.888885033,8.49206983 L5.7401128,8.49206983 L5.7401128,9.49436409 L3.23453362,9.49436409 C3.08126681,9.49436409 2.97464642,9.59650873 2.97464642,9.74334165 C2.97464642,9.89017456 3.08126681,9.9923192 3.23453362,9.9923192 L8.97204338,9.9923192 C9.1253102,9.9923192 9.23193059,9.89017456 9.23193059,9.74334165 C9.23193059,9.59650873 9.1253102,9.49436409 8.97204338,9.49436409 L6.2598872,9.49436409 L6.2598872,8.49206983 L11.317692,8.49206983 C11.7641649,8.49206983 11.997397,8.16648379 11.997397,7.74513716 L11.997397,7.4961596 L0.00260303688,7.4961596 L0.00260303688,7.74513716 Z M4.03418655,2.81027431 C3.95422126,3.02733167 3.95422126,3.02733167 3.94089371,3.07201995 L3.43444685,4.45097257 L4.64059002,4.45097257 L4.12081562,3.07201995 C4.1008243,3.02094763 4.08749675,2.96349127 4.03418655,2.81027431 Z M7.81921041,2.82304239 L7.03954881,2.82304239 L7.03954881,5.43411471 L7.81254664,5.43411471 C8.2123731,5.43411471 8.4722603,5.34473815 8.67217354,5.13406484 C8.90540564,4.89785536 9.03201735,4.53396509 9.03201735,4.09985037 C9.03201735,3.65935162 8.91873319,3.32738155 8.69216486,3.10394015 C8.49225163,2.89965087 8.2390282,2.82304239 7.81921041,2.82304239 Z" id="Shape"></path>
<path d="M11.317692,0.0012967581 L0.888885033,0.0012967581 C0.442412148,0.0012967581 0.00260303688,0.352418953 0.00260303688,0.805685786 L0.00260303688,7.52169576 L11.997397,7.52169576 L11.997397,0.812069825 C11.997397,0.352418953 11.7375098,0.0012967581 11.317692,0.0012967581 Z M5.14703688,5.98952618 C5.12038178,5.83630923 5.06707158,5.63201995 5.00709761,5.49795511 L4.81384816,4.98723192 L3.26118872,4.98723192 L3.06793926,5.49795511 C2.9813102,5.72139651 2.96131887,5.79162095 2.92133623,5.98952618 L2.1216833,5.98952618 C2.19498482,5.86184539 2.29494143,5.65117207 2.3815705,5.44049875 L3.45443818,2.74643392 C3.54773102,2.51022444 3.58771367,2.39531172 3.60770499,2.27401496 L4.45400434,2.27401496 C4.48065944,2.38892768 4.50731453,2.45915212 4.6205987,2.74643392 L5.70013015,5.44049875 C5.82007809,5.74054863 5.88005206,5.86822943 5.9466898,5.98952618 L5.14703688,5.98952618 Z M9.13197397,5.58094763 C8.81877657,5.86184539 8.43227766,5.98952618 7.85919306,5.98952618 L6.97291106,5.98952618 C6.67304121,5.98952618 6.55309328,5.99591022 6.35318004,6.00229426 C6.37983514,5.81077307 6.39316269,5.66394015 6.39316269,5.38942643 L6.39316269,2.86773067 C6.39316269,2.60598504 6.38649892,2.46553616 6.35318004,2.26124688 C6.5464295,2.26763092 6.66637744,2.27401496 6.97291106,2.27401496 L7.85252928,2.27401496 C8.45893275,2.27401496 8.85875922,2.39531172 9.16529284,2.68259352 C9.52513666,3.00179551 9.70505857,3.48698254 9.70505857,4.09346633 C9.70505857,4.73187032 9.51180911,5.23620948 9.13197397,5.58094763 Z" id="Shape"></path>
</g>
</g>
</g>
</g>
</g>
</g>
</g>
</svg>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<svg width="56px" height="56px" viewBox="0 0 56 56" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 52.4 (67378) - http://www.bohemiancoding.com/sketch -->
<title>优惠券@3x</title>
<desc>Created with Sketch.</desc>
<g id="老窖智慧零售" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="Artboard" transform="translate(-340.000000, -460.000000)">
<g id="优惠券" transform="translate(340.000000, 460.000000)">
<rect id="Rectangle-5" fill="#ED8383" x="0" y="0" width="56" height="56"></rect>
<g transform="translate(14.000000, 16.500000)" fill="#FFFFFF" fill-rule="nonzero" id="Shape">
<path d="M27.0206628,14.1948104 C25.4237817,13.4113107 24.9447174,12.784511 24.9447173,11.5309115 C24.9447173,10.355662 25.4237816,9.72886228 27.0206628,8.86701265 C27.8989474,8.31856287 27.9787914,7.84846309 27.9787914,7.0649634 L27.9787914,2.59901529 C27.9787914,1.18871589 26.7811306,0.0134663967 25.3439376,0.0134663967 L2.66822611,0.0134663967 C1.23103312,0.0134663967 0.0333723158,1.18871589 0.0333723158,2.59901529 L0.0333723158,7.0649634 C0.0333723158,7.7701131 0.113216386,8.39691282 0.991500982,8.86701265 C1.6302534,9.1804125 3.06744639,9.96391219 3.06744639,11.5309115 C3.06744639,13.2546108 2.02947368,13.8030605 1.07134502,14.1164604 L0.991500982,14.1164604 C0.113216386,14.6649102 0.0333723158,15.5267598 0.0333723158,15.9185097 L0.0333723158,20.3844578 C0.0333723158,21.7947572 1.23103312,22.9700067 2.66822611,22.9700067 L25.3439376,22.9700067 C26.7811306,22.9700067 27.9787914,21.7947572 27.9787914,20.3844578 L27.9787914,15.9185097 C27.9787914,15.05666 27.6594152,14.7432602 27.0206628,14.1948104 Z M18.2378168,12.6278111 C18.7168811,12.6278111 19.1161014,13.0195609 19.1161014,13.4896607 C19.1161014,13.9597605 18.7168811,14.3515103 18.2378168,14.3515103 L14.8843665,14.3515103 L14.8843665,17.6422089 C14.8843665,18.1123087 14.4851462,18.5040585 14.0060819,18.5040585 C13.5270175,18.5040585 13.1277973,18.1123087 13.1277973,17.6422089 L13.1277973,14.3515103 L9.77434698,14.3515103 C9.29528267,14.3515103 8.89606239,13.9597605 8.89606239,13.4896607 C8.89606239,13.0195609 9.29528267,12.6278111 9.77434698,12.6278111 L13.1277973,12.6278111 L13.1277973,10.5907119 L9.53481481,10.5907119 C9.05575049,10.5907119 8.65653021,10.1989621 8.65653021,9.72886228 C8.65653021,9.25876249 9.05575049,8.86701265 9.53481481,8.86701265 L12.1696686,8.86701265 L9.3751267,6.12476379 C9.05575049,5.81136393 9.05575049,5.26291416 9.3751267,4.9495143 C9.69450291,4.63611444 10.2534113,4.63611444 10.5727875,4.9495143 L14.0060819,8.31856287 L17.4393762,4.9495143 C17.7587524,4.63611444 18.3176608,4.63611444 18.6370371,4.9495143 C18.9564133,5.26291416 18.9564133,5.81136393 18.6370371,6.12476379 L15.8424951,8.86701265 L18.3975049,8.86701265 C18.8765692,8.86701265 19.2757895,9.25876249 19.2757895,9.72886228 C19.2757895,10.1989621 18.8765692,10.5907119 18.3975049,10.5907119 L14.8045224,10.5907119 L14.8045224,12.6278111 L18.2378168,12.6278111 Z"></path>
</g>
</g>
</g>
</g>
</svg>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 52.4 (67378) - http://www.bohemiancoding.com/sketch -->
<title>Group 7</title>
<desc>Created with Sketch.</desc>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="营销活动-新建活动-维护活动事件收起" transform="translate(-234.000000, -841.000000)">
<g id="Group-5" transform="translate(234.000000, 841.000000)">
<g id="Group-7">
<rect id="Rectangle-5" fill="#92DBA8" x="0" y="0" width="24" height="24"></rect>
<g id="选择人群" transform="translate(6.000000, 6.000000)" fill="#FFFFFF" fill-rule="nonzero">
<path d="M6.07954684,0.0879348459 C6.27427218,0.127410328 6.46293741,0.192275772 6.64067902,0.280859046 C6.8102853,0.353040709 6.96966437,0.447089399 7.11473896,0.560599136 C7.23270551,0.650915741 7.33983452,0.754492582 7.43400383,0.869277845 C7.6096674,1.10543782 7.743798,1.3696474 7.83066622,1.65062084 C7.90815537,1.91946351 7.96635063,2.19346537 8.0048107,2.47054868 C8.04340938,2.76803307 8.0627987,3.06768277 8.06285885,3.36764619 C8.11177355,3.40676316 8.15141696,3.45617153 8.17895517,3.51233934 C8.20586843,3.57834292 8.22848954,3.64600647 8.24667801,3.71490975 C8.26110047,3.81406862 8.26110047,3.91478338 8.24667801,4.01394225 C8.23277675,4.14333562 8.20019089,4.27004632 8.14993109,4.39014444 C8.11296793,4.47042419 8.06034712,4.54256479 7.995136,4.60236105 C7.94281913,4.66039795 7.87607712,4.70365254 7.80164215,4.72776178 C7.80164215,4.8435163 7.7339193,4.95927082 7.69522052,5.08467155 L7.57912421,5.36441163 C7.53873738,5.44264135 7.48652933,5.51421609 7.42432913,5.57662825 L7.09538957,5.86601454 C6.998376,5.97618752 6.94056027,6.11521495 6.9309198,6.26150915 C6.92102457,6.37383202 6.92102457,6.48680361 6.9309198,6.59912648 C6.94377829,6.7163127 6.97649181,6.83047294 7.02766672,6.93674384 C7.02766672,6.93674384 7.09538957,7.01391352 7.02766672,7.03320594 C5.85840368,8.06021036 5.57533261,9.76573242 6.35043823,11.1135527 L0.00383979921,11.1135527 C0.0484947862,10.5618146 0.17230191,10.0193167 0.371478118,9.50263565 C0.655979451,8.98774748 1.08682936,8.56823433 1.6098388,8.29685942 C2.03232171,8.06520837 2.47617744,7.87462158 2.9352717,7.72773304 C3.1657719,7.66730243 3.38475398,7.56953942 3.58347612,7.43834674 C3.70199899,7.35979832 3.80938384,7.26570764 3.90274097,7.15860665 C3.97403505,7.07963202 4.02982465,6.9880138 4.06721075,6.88851279 C4.10475758,6.80334678 4.12450861,6.71144666 4.12525891,6.6184189 L4.12525891,6.29044778 C4.10646041,6.13177975 4.02669894,5.98655719 3.90274097,5.88530696 C3.80599404,5.77919865 3.68989773,5.67309034 3.58347612,5.57662825 C3.51809483,5.51907594 3.46820471,5.44611919 3.43835572,5.36441163 L3.32225941,5.07502534 C3.32225941,4.95927082 3.24486187,4.8435163 3.21583779,4.72776178 C3.16234019,4.7083446 3.11307613,4.67887318 3.07071739,4.64094589 C3.01825681,4.59636533 2.97262442,4.54436756 2.9352717,4.48660654 C2.87405499,4.39967129 2.83125963,4.30120353 2.8095007,4.19722024 C2.78360203,4.08973474 2.78030797,3.97806645 2.799826,3.8692491 C2.80890097,3.77732376 2.82837411,3.68671665 2.85787416,3.59915523 C2.88751895,3.51394932 2.93352397,3.43531575 2.99331985,3.36764619 C2.97402783,3.08501761 2.97402783,2.80140832 2.99331985,2.51877973 C3.03093752,2.26213766 3.08261314,2.00774044 3.14811494,1.75672915 C3.2195717,1.47529117 3.34435992,1.21007834 3.51575327,0.975386155 C3.64051454,0.79730067 3.79040549,0.638104288 3.96078913,0.502721876 C4.11460093,0.381471537 4.28374782,0.280930836 4.46387315,0.203689366 C4.627772,0.114590779 4.80373999,0.0496093232 4.98630656,0.0107651658 C5.15046156,-0.00358290013 5.31556089,-0.00358290013 5.47971589,0.0107651658 C5.68206408,0.0120561592 5.88349756,0.0379710558 6.07954684,0.0879348459 Z M8.42082248,8.63447676 L7.82099153,9.17466451 L8.54659349,10.0524696 L9.06902689,10.6601808 L9.66885784,10.1199931 L11.7005433,8.25827458 C12.1888311,9.19354561 12.0510689,10.3317812 11.3536536,11.1243887 C10.6562384,11.9169962 9.54228256,12.2013293 8.54867674,11.8403487 C7.55507093,11.4793681 6.88570713,10.5471485 6.86319696,9.49298944 C6.85800832,8.46749633 7.46798468,7.53817708 8.4125917,7.13243506 C9.35719873,6.72669304 10.4535645,6.92307817 11.1974593,7.63127094 L9.14642444,9.50263565 L8.42082248,8.63447676 Z" id="Shape"></path>
</g>
</g>
</g>
</g>
</g>
</svg>
\ No newline at end of file
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="stylesheet" href="./lib/element-ui.css"><link href="css/chunk-vendors.d1676ea7.css" rel="preload" as="style"><link href="css/index.0ba1d066.css" rel="preload" as="style"><link href="js/chunk-vendors.9382c778.js" rel="preload" as="script"><link href="js/index.e8a5c5ea.js" rel="preload" as="script"><link href="css/chunk-vendors.d1676ea7.css" rel="stylesheet"><link href="css/index.0ba1d066.css" rel="stylesheet"></head><body><script src="./lib/g6.umd.min.js"></script><div id="app"></div><script src="js/chunk-vendors.9382c778.js"></script><script src="js/index.e8a5c5ea.js"></script></body></html>
\ No newline at end of file
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
(function(e){function t(t){for(var o,r,d=t[0],l=t[1],s=t[2],u=0,f=[];u<d.length;u++)r=d[u],Object.prototype.hasOwnProperty.call(i,r)&&i[r]&&f.push(i[r][0]),i[r]=0;for(o in l)Object.prototype.hasOwnProperty.call(l,o)&&(e[o]=l[o]);c&&c(t);while(f.length)f.shift()();return a.push.apply(a,s||[]),n()}function n(){for(var e,t=0;t<a.length;t++){for(var n=a[t],o=!0,d=1;d<n.length;d++){var l=n[d];0!==i[l]&&(o=!1)}o&&(a.splice(t--,1),e=r(r.s=n[0]))}return e}var o={},i={index:0},a=[];function r(t){if(o[t])return o[t].exports;var n=o[t]={i:t,l:!1,exports:{}};return e[t].call(n.exports,n,n.exports,r),n.l=!0,n.exports}r.m=e,r.c=o,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"===typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="";var d=window["webpackJsonp"]=window["webpackJsonp"]||[],l=d.push.bind(d);d.push=t,d=d.slice();for(var s=0;s<d.length;s++)t(d[s]);var c=l;a.push([0,"chunk-vendors"]),n()})({0:function(e,t,n){e.exports=n("4e68")},"0a5f":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("b4ec"),n("5368"),n("c3b9"),n("c9b6"),n("87ea"),n("823a"),n("2339"),n("a214")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a,r,d,l,s){"use strict";var c=n("4ea4").default;Object.defineProperty(e,"__esModule",{value:!0}),e.EditorComponent=void 0,o=c(o),i=c(i),a=c(a),r=c(r),d=c(d),l=c(l),s=c(s);var u=[o.default,i.default,a.default,r.default,d.default,l.default,s.default];e.EditorComponent=u}))},"0c02":function(e,t){e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqBAMAAAA37dRoAAAAMFBMVEUAAAAmJiYnJycqKiomJiYnJyctLS0nJycnJycnJycmJiYnJycrKysnJycmJiYmJiZC1GUPAAAAD3RSTlMASG0kk5EisZdi0X0UmGR1kx7+AAAAjElEQVQoz2OgAuD/DwQfoRx5EOcDbtFfoaH1cNHvoaHrwaJfgZx/xhDwHijtDxf9DwNEiP5QgoB+uOh3QcH9cNt+CwrWfyDRvYyC838IykBFDwr2/xQUADPtPyEFgP5nBoZRUXyi2EOSxLjAjE14zP+Fxvx9stPOzzQImA8X/eXigpRSXVzWk5Z2KAcAa8PckkqK+zkAAAAASUVORK5CYII="},"0f81":function(e,t){e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAREAAABWBAMAAAAakL/dAAAAMFBMVEX////ExMTLy8va2trS0tLw8PDh4eHo6Oj39/cAAAAAAAAAAAAAAAAAAAAAAAAAAAB2+XkbAAAACXBIWXMAAAsTAAALEwEAmpwYAAACVElEQVRoge2WsXKbQBRFMVi2S10BSkqY+AOkJjXETNLKXUr5D6Qiqc2fZ+/ugthoWYGHyaR4Z8YCI9g9Wt59EEWCIAiCIAiCIAiCIAjCdEqk3MTA7vpLWLaBAbpzcNT/JsD6YyY1wM1rN5Lf5M4r6jO5VyaBswOcgYPa7IH3sEk1y2Ts7ACt8S+RBWb5iMns26SuLKJo5a8FYNOQH0ETc05zck3u55o8AnkUPQCfvbPYlQqaOKtJgaRpjvNNnsDwxHplljJxdyZTYzMWnX9s8sbw8ENnjx93tgR3rkl/OKb7G5eyVpNdTLoT1pdBunpOI5i+FUKHp1SD6989nLLym1QJ3Uv2IXOOqdgXx6RyTTIO9bs+Bk0YnidGx2sySHF/WBX5SV2Bw8qsm+WWCfwVcEHFJuffdBNlsXvkbVKXnRY04Xro6AxNzM6VyXNT83CJQq0kioSN2TF5br5Zk0TtZC/m3k00YY20tlhvrYkV3GOtrkCuS9cxqf7ubLrSOpMvh7CJyk3NGvSaDHrsxeSM/Ey/lnlwshMy2fwMe+heAv64CdmxJi22e2yQveLTDBPfg80l5qypx+S6n1iTGCnwFdjzEbGgyQNnzV2Tynw1YpLwil/8KBY1WenkRVGfjXETmx3t/m6WbfAsdrJDk+z7MDu3TdguOWRfHje6faXdM75cqXYyeD9x+glNuvBONrFDXpmMdXs9+5Zve3zPW9KE4YlmmdQsrFYnblGT2Dwn+5syvDtpbzI4zOUoOFU6arLTZZ3OehYLgiAIgiAIgiAIgiD8J/wBKFCTuCCfcxQAAAAASUVORK5CYII="},"10da":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("159b"),n("caad")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.brushSelecct=l;var o=Math.min,i=Math.max,a=Math.abs,r="shift",d=["drag","shift","ctrl","alt","control"];function l(e){e.registerBehavior("brush-select",{getDefaultCfg:function(){return{brushStyle:{fill:"#EEF6FF",fillOpacity:.4,stroke:"#DDEEFE",lineWidth:1},onSelect:function(){},onDeselect:function(){},selectedState:"selected",trigger:r,includeEdges:!0,selectedEdges:[],selectedNodes:[]}},getEvents:function(){var e;return d.indexOf(this.trigger.toLowerCase())>-1?e=this.trigger:(e=r,console.warn("Behavior brush-select的trigger参数不合法,请输入drag、shift、ctrl或alt")),"drag"===e?{mousedown:"onMouseDown",mousemove:"onMouseMove",mouseup:"onMouseUp","canvas:click":"clearStates"}:{mousedown:"onMouseDown",mousemove:"onMouseMove",mouseup:"onMouseUp","canvas:click":"clearStates",keyup:"onKeyUp",keydown:"onKeyDown"}},onMouseDown:function(e){var t=e.item;if(!t&&("drag"===this.trigger||this.keydown)){this.selectedNodes&&0!==this.selectedNodes.length&&this.clearStates();var n=this.brush;n||(n=this._createBrush()),this.originPoint={x:e.canvasX,y:e.canvasY},n.attr({width:0,height:0}),n.show(),this.dragging=!0}},onMouseMove:function(e){this.dragging&&("drag"===this.trigger||this.keydown)&&(this._updateBrush(e),this.graph.paint())},onMouseUp:function(e){if((this.brush||this.dragging)&&("drag"===this.trigger||this.keydown)){var t=this.graph,n=t.get("autoPaint");t.setAutoPaint(!1),this.brush.destroy(),this.brush=null,this._getSelectedNodes(e),this.dragging=!1,this.graph.paint(),t.setAutoPaint(n)}},clearStates:function(){if(!this.keydown){var e=this.graph,t=e.get("autoPaint");e.setAutoPaint(!1);var n=this.selectedState,o=e.findAllByState("node",n),i=e.findAllByState("edge",n);o.forEach((function(t){return e.setItemState(t,n,!1)})),i.forEach((function(t){return e.setItemState(t,n,!1)})),this.selectedNodes=[],this.selectedEdges=[],this.onDeselect&&this.onDeselect(this.selectedNodes,this.selectedEdges),e.emit("nodeselectchange",{targets:{nodes:[],edges:[]},select:!1}),e.paint(),e.setAutoPaint(t)}},_getSelectedNodes:function(e){var t=this,n=this.graph,a=this.selectedState,r=this.originPoint,d={x:e.x,y:e.y},l=n.getPointByCanvas(r.x,r.y),s=o(d.x,l.x),c=i(d.x,l.x),u=o(d.y,l.y),f=i(d.y,l.y),h=[],p=this.shouldUpdate,g=[];n.getNodes().forEach((function(e){var t=e.getBBox();if(t.centerX>=s&&t.centerX<=c&&t.centerY>=u&&t.centerY<=f&&p(e,"select")){h.push(e);var o=e.getModel();g.push(o.id),n.setItemState(e,a,!0)}}));var y=[];this.includeEdges&&h.forEach((function(e){var o=e.getEdges();o.forEach((function(e){var o=e.getModel(),i=o.source,a=o.target;g.includes(i)&&g.includes(a)&&p(e,"select")&&(y.push(e),n.setItemState(e,t.selectedState,!0))}))})),this.selectedEdges=y,this.selectedNodes=h,this.onSelect&&this.onSelect(h,y),n.emit("nodeselectchange",{targets:{nodes:h,edges:y},select:!0})},_createBrush:function(){var e=this,t=e.graph.get("canvas").addShape("rect",{attrs:e.brushStyle,capture:!1});return this.brush=t,t},_updateBrush:function(e){var t=this.originPoint;this.brush.attr({width:a(e.canvasX-t.x),height:a(e.canvasY-t.y),x:o(e.canvasX,t.x),y:o(e.canvasY,t.y)})},onKeyDown:function(e){var t=e.key;t&&t.toLowerCase()===this.trigger.toLowerCase()||"control"===t.toLowerCase()?this.keydown=!0:this.keydown=!1},onKeyUp:function(){this.brush&&(this.brush.destroy(),this.brush=null,this.dragging=!1),this.keydown=!1}})}}))},"15a4":function(e,t,n){},"16b0":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("7a23")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.render=d;var n={key:0,class:"vue-flow-editor-preview"},o={class:"vue-flow-editor-preview-body",ref:"body"},i={class:"vue-flow-editor-preview-target",ref:"target"},a=(0,t.createElementVNode)("i",{class:"el-icon-close"},null,-1),r=[a];function d(e,a,d,l,s,c){return(0,t.openBlock)(),(0,t.createBlock)(t.Transition,{name:"vue-flow-editor-preview-transition"},{default:(0,t.withCtx)((function(){return[s.p_value?((0,t.openBlock)(),(0,t.createElementBlock)("div",n,[(0,t.createElementVNode)("div",o,[(0,t.createElementVNode)("div",i,null,512),(0,t.createElementVNode)("div",{class:"vue-flow-editor-preview-close",onClick:a[0]||(a[0]=function(){return c.close&&c.close.apply(c,arguments)})},r)],512)])):(0,t.createCommentVNode)("",!0)]})),_:1})}}))},"22f6":function(e,t,n){"use strict";var o=n("3aa2");n.o(o,"render")&&n.d(t,"render",(function(){return o["render"]}))},2339:function(e,t,n){"use strict";n.r(t);var o=n("22f6"),i=n("d4c5");for(var a in i)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return i[e]}))}(a);i["default"].render=o["render"],t["default"]=i["default"]},"277b":function(e,t,n){},"2a82":function(e,t,n){"use strict";var o=n("16b0");n.o(o,"render")&&n.d(t,"render",(function(){return o["render"]}))},3617:function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("743b")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t){"use strict";var o=n("4ea4").default;Object.defineProperty(e,"__esModule",{value:!0}),e.externalComponents=void 0,t=o(t);var i=[t.default];e.externalComponents=i}))},"38b5":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("fb6a"),n("99af")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,n){"use strict";function o(e){return i("/vue-flow-editor",e)}function i(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"/";return e.indexOf("/")===e.length-1&&(e=e.slice(0,-1)),"/"===t.charAt(0)&&(t=t.slice(1)),"".concat(e).concat(n).concat(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.staticPath=o,e.joinPath=i}))},"3aa2":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("7a23")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.render=i;var n={key:0,class:"el-icon-arrow-down"},o={key:0,class:"vue-flow-edit-menu-group-content",style:{"transition-duration":"200ms"}};function i(e,i,a,r,d,l){var s=(0,t.resolveComponent)("el-collapse-transition");return(0,t.openBlock)(),(0,t.createElementBlock)("div",{class:(0,t.normalizeClass)(["vue-flow-edit-menu-group",{"vue-flow-edit-menu-group-expanded":d.p_value}])},[(0,t.createElementVNode)("div",{class:"vue-flow-edit-menu-group-title",onClick:i[0]||(i[0]=function(){return l.onClickTitle&&l.onClickTitle.apply(l,arguments)})},[(0,t.renderSlot)(e.$slots,"content",{model:{label:a.label}},(function(){return[(0,t.createElementVNode)("span",null,(0,t.toDisplayString)(a.label),1)]})),a.hideArrow?(0,t.createCommentVNode)("",!0):((0,t.openBlock)(),(0,t.createElementBlock)("i",n))]),(0,t.createVNode)(s,null,{default:(0,t.withCtx)((function(){return[d.p_value?((0,t.openBlock)(),(0,t.createElementBlock)("div",o,[(0,t.renderSlot)(e.$slots,"default")])):(0,t.createCommentVNode)("",!0)]})),_:3})],2)}}))},"3ced":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("a0bb"),n("80ca"),n("8f3b"),n("9618"),n("0c02"),n("d64a"),n("88ec"),n("d1f9"),n("93e4"),n("c058"),n("6e88")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a,r,d,l,s,c,u,f){"use strict";var h=n("4ea4").default;Object.defineProperty(e,"__esModule",{value:!0}),e.TOOLBAR_IMAGE=void 0,t=h(t),o=h(o),i=h(i),a=h(a),r=h(r),d=h(d),l=h(l),s=h(s),c=h(c),u=h(u),f=h(f);var p={actualSize:t.default,copy:o.default,delete:i.default,fitView:a.default,grid:r.default,preview:d.default,redo:l.default,undo:s.default,save:c.default,zoomIn:u.default,zoomOut:u.default,image:f.default};e.TOOLBAR_IMAGE=p}))},"3d08":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("159b"),n("07ac"),n("73ec")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,n,o){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.clickSelect=d,e.getSelected=l,e.SELECTED_STATE=void 0;var i="shift",a=["shift","ctrl","alt"],r="selected";function d(e){e.registerBehavior("click-select",{getDefaultCfg:function(){return{multiple:!0,trigger:i}},getEvents:function(){return this.multiple?{"node:click":"onClick","edge:click":"onClick","canvas:click":"onCanvasClick",keyup:"onKeyUp",keydown:"onKeyDown"}:{"node:click":"onClick","edge:click":"onClick","canvas:click":"onCanvasClick"}},onClick:function(e){var t=this,n=e.item,i=t.graph,a=i.get("autoPaint");i.setAutoPaint(!1);var d=!1;if(!t.keydown||!t.multiple){var l=this.getSelected();(0,o.flatten)(Object.values(l)).forEach((function(e){e!==n&&e.hasState(r)&&(d=!0,i.setItemState(e,r,!1))}))}n.hasState(r)||(t.shouldUpdate.call(t,e)&&(d=!0,i.setItemState(n,r,!0)),i.emit("nodeselectchange",{target:n,select:!0}),d&&this.emitSelectChange(),i.setAutoPaint(a),i.paint())},onCanvasClick:function(){if(!this.keydown){var e=this.graph,t=e.get("autoPaint");e.setAutoPaint(!1);var n=this.getSelected(),i=!1;(0,o.flatten)(Object.values(n)).forEach((function(t){t.hasState(r)&&(i=!0,e.setItemState(t,r,!1))})),i&&this.emitSelectChange(!0),e.paint(),e.setAutoPaint(t)}},onKeyDown:function(e){var t=e.key;a.indexOf(t.toLowerCase())>-1?this.keydown=!0:this.keydown=!1},onKeyUp:function(){this.keydown=!1},getSelected:function(){return l(this.graph)},emitSelectChange:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(e)this.selectChange([],[]);else{var t=this.graph,n=t.findAllByState("node",r),o=t.findAllByState("edge",r);this.selectChange(n,o)}},selectChange:function(e,t){this.graph.emit("select-change",{nodes:e,edges:t})}})}function l(e){return{nodes:e.findAllByState("node",r),edges:e.findAllByState("edge",r)}}e.SELECTED_STATE=r}))},4775:function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("7a23")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.render=o;var n=["xlink:href"];function o(e,o,i,a,r,d){return(0,t.openBlock)(),(0,t.createElementBlock)("svg",{class:"vue-flow-editor-icon","aria-hidden":"true",onClick:o[0]||(o[0]=function(t){return e.$emit("click",t)})},[(0,t.createElementVNode)("use",{"xlink:href":"#"+i.icon},null,8,n)])}}))},"4a62":function(e,t,n){var o,i,a;n("6c57"),function(n,r){i=[t],o=r,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var t={name:"vue-flow-editor-icon",props:{icon:{type:String,required:!0}}};e.default=t}))},"4a91":function(e,t,n){var o,i,a;n("18a5"),n("6c57"),function(r,d){i=[t,n("b526"),n("b87a"),n("9741")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,n,o){"use strict";function i(e){(0,t.registerAnchor)(e),(0,n.registerEdge)(e),(0,o.registerActivity)(e)}Object.defineProperty(e,"__esModule",{value:!0}),e.registerShape=i}))},"4e68":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[n("e260"),n("e6cf"),n("cca6"),n("a79d"),n("7a23"),n("b7a4"),n("ffb4"),n("1f77"),n("7437")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a,r,d,l,s){"use strict";var c=n("4ea4").default;r=c(r),d=c(d),l=c(l);var u=(0,a.createApp)({render:function(){return(0,a.h)(r.default)}});u.use(d.default),u.use(l.default),u.mount("#app")}))},"4f11":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("5530"),n("8c01"),n("ad39")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i){"use strict";var a=n("4ea4").default;Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,t=a(t);var r={name:"vue-flow-editor-preview",props:{value:{type:Boolean},data:{type:Object}},watch:{value:function(e){var t=this;this.p_value=e,e&&this.$nextTick((function(){t.refresh()}))}},data:function(){return{graph:null,p_value:this.value}},methods:{refresh:function(){var e=this.$refs.target,n=this.$refs.body,a=n.offsetHeight,r=n.offsetWidth;this.graph&&this.graph.destroy(),this.graph=new o.G6.Graph((0,t.default)((0,t.default)({container:e,width:r,height:a},i.GraphStyle.default),{},{mode:{default:["drag-canvas","zoom-canvas"]}})),this.graph.read(this.data),this.graph.fitView(20)},close:function(){this.p_value=!1,this.$emit("input",this.p_value)}}};e.default=r}))},"4f4b":function(e,t,n){var o,i,a;n("6c57"),function(n,r){i=[t],o=r,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.KeyboardCode=void 0;var t={16:"shift",17:"ctrl",18:"alt",8:"backspace",9:"tab",13:"enter",27:"esc",32:"space",37:"left",38:"up",39:"right",40:"down",46:"delete",189:"-",187:"=",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",65:"a",66:"b",67:"c",68:"d",69:"e",70:"f",71:"g",72:"h",73:"i",74:"j",75:"k",76:"l",77:"m",78:"n",79:"o",80:"p",81:"q",82:"r",83:"s",84:"t",85:"u",86:"v",87:"w",88:"x",89:"y",90:"z",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12"};e.KeyboardCode=t}))},5368:function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("159b"),n("7a23"),n("2909"),n("5530"),n("ed09"),n("8e2d"),n("8c01"),n("746d"),n("ad39"),n("4a91"),n("73ec")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a,r,d,l,s,c,u,f){"use strict";var h=n("4ea4").default;Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,i=h(i),a=h(a),(0,u.registerShape)(l.G6);var p={name:"vue-flow-editor-canvas",props:{data:{type:Object},miniMap:{type:[Boolean,Object],default:!0},grid:{type:[Boolean,Object],default:!0}},setup:function(e,t){var n=(0,o.getCurrentInstance)(),r=n.proxy,u=(0,o.inject)(d.VueFlowEditorProvider),h=u.editorState,p=u.commander,g=u.props;function y(e){p.initEvent()}function v(e){p.destroyEvent()}function m(){h.graph&&h.graph.destroy();var t=r.$refs.target,n=r.$refs.root,o=n.offsetHeight,u=n.offsetWidth,p=(0,s.useBehavior)({multipleSelect:h.props.multipleSelect,dragEdge:{disabled:h.props.disabledDragEdge,beforeAdd:h.props.beforeAdd,afterAdd:h.props.afterAdd}}),y=new l.G6.Graph((0,a.default)({container:t,width:u,height:o,modes:{edit:(0,i.default)(p)}},c.GraphStyle.default)),v=y.read;y.read=function(e){var t=e||{},n=t.nodes,o=t.edges;n=n||[],o=o||[],n.forEach((function(e){return(0,f.formatNodeModel)(e,g.activityConfig)})),e={nodes:n,edges:o},v.apply(y,[e])},y.setMode("edit"),y.read(e.data),(0,d.useEditorPlugins)(e,y),h.setGraph(y)}function A(){m()}return(0,o.onMounted)((function(){var e=r.$refs.target;e.addEventListener("mouseenter",y),e.addEventListener("mouseout",v),window.addEventListener("resize",A),m()})),(0,o.onBeforeUnmount)((function(){var e=r.$refs.target;e.removeEventListener("mouseenter",y),e.removeEventListener("mouseout",v),window.removeEventListener("resize",A),p.destroyEvent()})),function(){return(0,o.createVNode)("div",{class:"vue-flow-editor-canvas",ref:"root"},[(0,o.createVNode)("div",{class:"vue-flow-editor-canvas-target",ref:"target"},null)])}}};e.default=p}))},"57a3":function(e,t,n){"use strict";n.r(t);var o=n("8efd"),i=n.n(o);for(var a in n.d(t,"default",(function(){return i.a})),o)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return o[e]}))}(a)},"6b1b":function(e,t,n){var o,i,a;n("6c57"),function(n,r){i=[t],o=r,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var t={name:"vue-flow-edit-menu-group",props:{value:{type:Boolean},label:{type:String},hideArrow:{type:Boolean}},watch:{value:function(e){this.p_value=e}},data:function(){return{p_value:this.value}},methods:{onClickTitle:function(){this.p_value=!this.p_value,this.$emit("input",this.p_value)}}};e.default=t}))},"6e88":function(e,t){e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAYAAADFw8lbAAAC3klEQVRYR+3YPWzTQBQH8P9zknaoRFsGhBgMKlFzhxGtYGErK62QECMDUwfEgKDsMDACohsbrRBIbGylA+JDLDBRgaKzQ6mC2Cs+hopU9oOrYnSYpLWbw1GkeHQuL7/87935EkKPXNQjTvShtmeqtxOVUs4z86TtVNLUI6IVpdSV5NiWiQohXhLRVJrCtscw8yvf909lgjLzTwBvbGPa1DtJRIO7ggL4rJQ6lAdUSlkHcLAPTZN2uVweLBaLM8x82HGcLxsbG8v1ev2r+d6uJ+p53v4wDJeJaMKAfQJwWin1Mb7XdagQ4gUR/bOKASjHcSar1WpDY7sKLZfLR0qlUrWZ2sP19fWLIyMj847jzOp7YRhO12q1p12Hjo+Pny0UCk+a0Bml1JKU8iiAD817c0qpu/8FKqU8HkWRDILg0U4LaWxszB0YGKgTkX6wLDHzLQBzRHTGxFuHaiQzPwewh4jOK6Ue74QVQtwmomvJcczsFwqFCes9GiOJaFh/KDNzSmxRCHGHiC6bq56Zp33fr1ld9UlkXDwDFp7n7Q3DsAJgsNFovFtbW/tmdR8FcE5Pd5wkgHvM/BbAgu69LNjt2qSj7YmZfwCIDOS8Uupqs/kvMPNiVmylUjkWhmF9dXX1u81EzVrXlVI3E8UzYXULAXimDzubm5tTJrajRGNUFEWXgiC412rqpJSpsAZytFlnxcR2BNX9x8yzQRDc36G/tsW2QMbl/mA7gmY5j7ZLNolk5gdEdAKAZyZbKpXe53YebYG9AUAvvq3pZuYF3/dnXdcdHhoaem1imfkAEe3L7eBsYs12iZF6F9H3XdcdTWC3hucGTW5dZpIxMv4CrbC5Qk0sgEU93UlkO2zuUA0RQkz5vq97cWu6213NZPWpf7Qr0O1wyddy256yoNo8OPo/lzsN8a/3dzr1VjFpiu12MaWpbXVMJmjP/O1oNSJLxXr7H2dLIVgt00/Uapy/i/0CuOzGScHnzoEAAAAASUVORK5CYII="},"719e":function(e,t,n){"use strict";n.r(t);var o=n("723b"),i=n.n(o);for(var a in n.d(t,"default",(function(){return i.a})),o)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return o[e]}))}(a)},"723b":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("96cf"),n("5530"),n("1da1"),n("d3b7"),n("d81d"),n("7a23"),n("76c0"),n("38b5")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a,r,d,l,s){"use strict";var c=n("4ea4").default;Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,o=c(o),i=c(i);var u=window.G6.default;function f(e){return new Promise((function(t){return setTimeout(t,e)}))}var h={setup:function(e,t){var n,a=(0,d.reactive)({data:l.AppData,detailModel:null,editorLoading:!1,selectOptions:[{label:"待确认",value:"0"},{label:"填写表单",value:"1"},{label:"部门负责人审批",value:"2"},{label:"总经理审批",value:"3"}],menuData:[{label:"流程节点",menus:[{label:"开始",shape:"ellipse",id:"start-node"},{label:"结束",shape:"ellipse",id:"end-node"},{label:"审批节点",busType:"123"},{label:"判断节点",shape:"diamond"}]},{label:"其他形状节点",menus:[{label:"矩形节点",shape:"rect"},{label:"圆形节点",shape:"circle"},{label:"椭圆节点",shape:"ellipse"},{label:"菱形节点",shape:"diamond"},{label:"三角形节点",shape:"triangle"},{label:"星形节点",shape:"star"}]}],activityConfig:{advertisement:{text:"广告宣传1",desc:"通过广告宣传新品",color:"#9283ed",img:"https://cdn.ipadbiz.cn/oa/advertisement-node.svg"},coupon:{text:"优惠券",desc:"发放奖励优惠券",color:"#ed8383",img:"https://cdn.ipadbiz.cn/oa/coupon-node.svg"},crowd:{text:"用户反馈",desc:"收集用户反馈信息",color:"#92dba8",img:"https://cdn.ipadbiz.cn/oa/crowd-node.svg"}}});function r(e){var t=u.Util.clone(e.item.get("model"));t.style=t.style||{},t.labelCfg=t.labelCfg||{style:{}},a.detailModel=t,n.openModel()}function c(e){var t=e.item.get("model"),o=t.source,i=t.target,r=t.style,d=t.labelCfg,l=t.label,s={label:l,source:o,target:i,style:r||{},labelCfg:d||{style:{}},type:null,id:null};s.type=e.item.get("type"),s.id=e.item.get("id"),a.detailModel=s,n.openModel()}function h(){n.closeModel()}function p(){n.updateModel(a.detailModel),n.closeModel()}function g(e,t){return y.apply(this,arguments)}function y(){return y=(0,i.default)(regeneratorRuntime.mark((function e(t,n){return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:if("node"!==n){e.next=7;break}if("开始"!==t.label){e.next=7;break}return a.editorLoading=!0,e.next=5,f(1e3);case 5:return a.editorLoading=!1,e.abrupt("return",Promise.reject("reject"));case 7:case"end":return e.stop()}}),e)}))),y.apply(this,arguments)}function v(e,t){"edge"===t?console.log("delete edge"):console.log("after delete",e.label,(0,o.default)({},e))}function m(e,t){if("edge"===t&&"end-node"===e.source)return Promise.reject("reject");if("node"===t&&("start-node"===e.id||"end-node"===e.id))for(var o=n.editorState.graph.save(),i=0;i<o.nodes.length;i++){var a=o.nodes[i];if(a.id===e.id)return Promise.reject("reject")}}function A(e,t){"edge"===t&&console.log("新增连接线")}function b(){var e=n.editorState.graph.save(),t=e.nodes,o=e.edges;t=t.map((function(e){var t=e.data,n=e.id,o=e.label,i=e.shape,a=e.x,r=e.y,d=e.text,l=e.desc,s=e.img;return{data:t,id:n,label:o,shape:i,x:a,y:r,text:d,desc:l,img:s}})),o=o.map((function(e){var t=e.source,n=e.sourceAnchor,o=e.target,i=e.targetAnchor;return{source:t,sourceAnchor:n,target:o,targetAnchor:i}})),console.log(JSON.stringify({nodes:t,edges:o},null,2))}return{state:a,showGrid:!0,showMiniMap:!0,onDblclickNode:r,onDblClickEdge:c,cancel:h,save:p,handleBeforeDelete:g,handleAfterDelete:v,handleBeforeAdd:m,handleAfterAdd:A,logData:b,onRef:function(e){return n=e},staticPath:s.staticPath}}};e.default=h}))},"73ec":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("3835"),n("5530"),n("159b")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i){"use strict";var a=n("4ea4").default;function r(e){return"number"===typeof e?"".concat(e,"px"):(e=String(e),/^[\d]+$/.test(e)?"".concat(e,"px"):(e.indexOf("px"),e))}function d(e){var t=[];return function e(n){n.forEach((function(n){Array.isArray(n)?e(n):t.push(n)}))}(e),t}Object.defineProperty(e,"__esModule",{value:!0}),e.suffixSize=r,e.flatten=d,e.formatPos=s,e.formatNodeModel=c,e.DEFAULT_SIZE=void 0,t=a(t),o=a(o);var l={rect:[130,40],ellipse:[100,50],diamond:[140,50],circle:[80,80],triangle:[80,80],star:[80,80],activity:[200,80]};function s(e){var n=e,i=n.x,a=n.y;e=(0,o.default)({},e),e.size=e.size||l[e.shape];var r=(0,t.default)(e.size,2),d=r[0],s=r[1],c={x:d/2,y:s/2},u={x:i,y:a},f=5,h=u.x-c.x,p=u.y-c.y;return h=h%f>f/2?Math.ceil(h/f)*f:Math.floor(h/f)*f,p=p%f>f/2?Math.ceil(p/f)*f:Math.floor(p/f)*f,u.x=h+c.x,u.y=p+c.y,(0,o.default)((0,o.default)({},u),{},{size:e.size,shape:e.shape})}function c(e,t){var n=e.shape,o=e.size,i=e.activity;i&&(n="activity"),e.size=o||l[n],i&&t[i]&&(e.shape="activity",e.img=t[i].img,e.color=t[i].color)}e.DEFAULT_SIZE=l}))},"743b":function(e,t,n){"use strict";n.r(t);var o=n("b531"),i=n("c31f");for(var a in i)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return i[e]}))}(a);n("ea19");i["default"].render=o["render"],t["default"]=i["default"]},"746d":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("8c01"),n("3d08"),n("a523"),n("e14a"),n("ecec"),n("9ef9"),n("9abc"),n("10da")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,n,o,i,a,r,d,l){"use strict";function s(e){(0,n.clickSelect)(t.G6),(0,o.dragNode)(t.G6),(0,i.hoverItemActive)(t.G6),(0,a.hoverAnchorActive)(t.G6),(0,r.dragEdge)(t.G6,{beforeAdd:e.dragEdge.beforeAdd,afterAdd:e.dragEdge.afterAdd}),(0,d.dragCanvas)(t.G6),(0,l.brushSelecct)(t.G6);var s=["drag-canvas",{type:"drag-node"},{type:"click-select",multiple:e.multipleSelect},"hover-item-active"];return e.dragEdge.disabled||s.push.apply(s,["hover-anchor-active","drag-edge"]),e.multipleSelect&&s.push({type:"brush-select",selectedState:"selected",includeEdges:!0,onSelect:function(){var e=this.graph,t=e.findAllByState("node","selected"),n=e.findAllByState("edge","selected");e.emit("select-change",{nodes:t,edges:n})}}),s}Object.defineProperty(e,"__esModule",{value:!0}),e.useBehavior=s}))},"76c0":function(e,t,n){var o,i,a;n("6c57"),function(n,r){i=[t],o=r,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AppData=void 0;var t={nodes:[{id:"123456",x:590,y:100,text:"广告宣传",desc:"通过广告短频宣传",activity:"advertisement"},{id:"2323456789",x:1020,y:100,text:"优惠券",desc:"发送奖励优惠券",activity:"coupon"},{data:{},id:"start-node",label:"开始",shape:"ellipse",x:380,y:100},{data:{},id:"1588848310120",label:"主管审批",shape:"rect",x:380,y:180},{data:{},id:"1588848322179",label:"经理审批",shape:"rect",x:380,y:260},{data:{},id:"1588848338211",label:"金额>2万",shape:"diamond",x:380,y:340},{data:{},id:"1588848351476",label:"财务打款",shape:"rect",x:380,y:460},{data:{},id:"end-node",label:"结束",shape:"ellipse",x:380,y:540},{data:{},id:"1588848397511",label:"VIP审批",shape:"rect",x:590,y:340},{data:{},id:"1588848436694",label:"金额>10万",shape:"diamond",x:780,y:340},{data:{},id:"1588848449431",label:"CEO审批",shape:"rect",x:960,y:460}],edges:[{source:"start-node",sourceAnchor:2,target:"1588848310120",targetAnchor:0},{source:"1588848310120",sourceAnchor:2,target:"1588848322179",targetAnchor:0},{source:"1588848322179",sourceAnchor:2,target:"1588848338211",targetAnchor:0},{source:"1588848338211",sourceAnchor:2,target:"1588848351476",targetAnchor:0},{source:"1588848351476",sourceAnchor:2,target:"end-node",targetAnchor:0},{source:"1588848338211",sourceAnchor:3,target:"1588848397511",targetAnchor:1},{source:"1588848436694",sourceAnchor:3,target:"1588848449431",targetAnchor:0},{source:"1588848449431",sourceAnchor:1,target:"1588848351476",targetAnchor:3},{source:"1588848436694",sourceAnchor:2,target:"1588848351476",targetAnchor:3},{source:"1588848397511",sourceAnchor:3,target:"1588848436694",targetAnchor:1},{source:"start-node",sourceAnchor:3,target:"123456",targetAnchor:1},{source:"123456",sourceAnchor:3,target:"2323456789",targetAnchor:1},{source:"2323456789",sourceAnchor:3,target:"end-node",targetAnchor:3}]};e.AppData=t}))},"80ca":function(e,t){e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqBAMAAAA37dRoAAAAHlBMVEUAAAAnJycnJycpKSkmJiYmJiYmJiYnJycmJiYmJiZwr+slAAAACXRSTlMAqlUu48eSiXGzmKc1AAAAXElEQVQoz2OgFpCciQQmEBCdKAgHngjRCUimkSrKpKSkZIAhygm0NYFY0alYTZgIJEZFSRRFj3kCoo2CSEAAIooO0EWZyw2wiDLNVKCa6BQkR4nCRWciA3yilAMAccBpS5pv+8UAAAAASUVORK5CYII="},"823a":function(e,t,n){"use strict";n.r(t);var o=n("c1c1"),i=n("57a3");for(var a in i)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return i[e]}))}(a);i["default"].render=o["render"],t["default"]=i["default"]},"870c":function(e,t,n){},"87ea":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("7a23"),n("a9e3"),n("99af"),n("a434"),n("d81d"),n("ed09"),n("73ec"),n("8e2d"),n("3ced")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,n,o,i,a,r,d,l,s){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var c={name:"vue-flow-editor-toolbar",props:{height:{type:[String,Number]},toolbarButtonHandler:{type:Function}},setup:function(e,n){var o=(0,t.computed)((function(){return{height:(0,d.suffixSize)(e.height)}})),i=(0,t.inject)(l.VueFlowEditorProvider),a=i.editorState,r=i.commander,c=i.openPreview,u=[{key:"gridSwitcher",tip:"开启/关闭网格",label:"网格",icon:"grid",handler:function(){r.commands.switchGrid()},isEnable:function(){return r.isEnable.value.switchGrid}},{key:"miniMapSwitcher",tip:"开启/关闭缩略图",label:"缩略图",icon:"image",handler:function(){r.commands.switchMiniMap()},isEnable:function(){return r.isEnable.value.switchMiniMap}},{key:"fitSize",tip:"适应画布",icon:"fitView",handler:function(){r.commands.fitView()},isEnable:function(){return r.isEnable.value.fitView}},{key:"actualSize",tip:"实际尺寸",icon:"actualSize",handler:function(){r.commands.actualView()},isEnable:function(){return r.isEnable.value.actualView}},{key:"zoomIn",tip:"放大 CTRL+=",label:"放大",icon:"zoomIn",handler:function(){r.commands.zoomIn()},isEnable:function(){return r.isEnable.value.zoomIn}},{key:"zoomOut",tip:"缩小 CTRL+-",label:"缩小",icon:"zoomOut",handler:function(){r.commands.zoomOut()},isEnable:function(){return r.isEnable.value.zoomOut}},{key:"preview",tip:"预览",icon:"preview",handler:function(){c()}},{key:"delete",tip:"删除 DELETE , CTRL+D",label:"删除",icon:"delete",handler:function(){r.commands.delete()},isEnable:function(){return r.isEnable.value.delete}}],f=(0,t.computed)((function(){var t=[].concat(u);return a.props.disabledUndo||t.splice.apply(t,[8,0].concat([{key:"undo",tip:"撤销 CTRL+Z",label:"撤销",icon:"undo",handler:function(){r.commands.undo()},isEnable:function(){return r.isEnable.value.undo}},{key:"redo",tip:"重做 CTRL+SHIFT+Z",label:"重做",icon:"redo",handler:function(){r.commands.redo()},isEnable:function(){return r.isEnable.value.redo}}])),e.toolbarButtonHandler?e.toolbarButtonHandler(t):t}));return function(){return(0,t.createVNode)("div",{class:"vue-flow-editor-toolbar",style:o.value},[f.value.map((function(e){return(0,t.createVNode)((0,t.resolveComponent)("el-tooltip"),{content:e.tip,key:e.key},{default:function(){return[(0,t.createVNode)("div",{class:["vue-flow-editor-toolbar-item",{"vue-flow-editor-toolbar-item-disabled":!!e.isEnable&&!e.isEnable()}],onClick:function(){return(!e.isEnable||e.isEnable())&&e.handler()}},[(0,t.createVNode)("img",{src:s.TOOLBAR_IMAGE[e.icon]},null),(0,t.createVNode)("span",null,[e.label||e.tip])])]}})})),n.slots.default&&n.slots.default()])}}};e.default=c}))},"88ba":function(e,t,n){"use strict";n.r(t);var o=n("4f11"),i=n.n(o);for(var a in n.d(t,"default",(function(){return i.a})),o)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return o[e]}))}(a)},"88ec":function(e,t){e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAMAAADyHTlpAAAAflBMVEUAAAAmJiYpKSktLS0mJiYmJiYmJiYnJycqKiosLCwwMDA8PDwmJiYmJiYmJiYmJiYmJiYnJycoKCgrKytAQEAmJiYnJycmJiYmJiYmJiYnJycnJycmJiYmJiYnJycnJycnJycmJiYmJiYpKSkpKSkmJiYnJycnJycoKCgmJiZgG4liAAAAKXRSTlMAmUsOzMG4dRkUCgfm3tWxp1UpIQT99OLRxohf7ejafG5rUEEuoJyRbKZI9bcAAADmSURBVDjL7ZO5EoMwDERJwBjCfUNIgAA59P8/GHnS2EGFCkq29Dx5VtLKOrSLsp5LPgDSkodeASAJWKjfIuteeKyDrLBZrN0h2zFZgazjs9iLi2zssdhAsQOTTZCNCrLtdTkbmiNkm/y/iz69Aa3YBEeDMzXo5BL+yt3nyZQycF81Ulb40vYelRoIdasfVZoRbUrVlD6AGf8UHh0vc1Q2+uyoDL03y8LahkrFS/n3jU3XAITPMlVhMb/I8IVaKRFXrJZbdKSOwAHIiTFRp4X924TVadoebAW1xRTwUQcEF81lYR3aV19THx6pEtIaRAAAAABJRU5ErkJggg=="},"8c01":function(e,t,n){var o,i,a;n("6c57"),function(n,r){i=[t],o=r,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SingleShapeMixin=e.Minimap=e.Grid=e.Item=e.G6=void 0;var t=window.G6,n=t.default;e.G6=n;var o=t.Item;e.Item=o;var i=t.Grid;e.Grid=i;var a=t.Minimap;e.Minimap=a;var r=t.SingleShapeMixin;e.SingleShapeMixin=r}))},"8e2d":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("96cf"),n("d3b7"),n("3ca3"),n("ddb0"),n("d81d"),n("07ac"),n("99af"),n("159b"),n("2909"),n("1da1"),n("5530"),n("7a23"),n("8c01"),n("73ec"),n("aea6"),n("3d08"),n("e0ef")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a,r,d,l,s,c,u,f,h,p,g,y,v,m){"use strict";var A=n("4ea4").default;Object.defineProperty(e,"__esModule",{value:!0}),e.useEditorStyles=x,e.useEditorPlugins=w,e.useCanvasProps=S,e.useEditorCommander=E,e.VueFlowEditorProvider=void 0,c=A(c),u=A(u),f=A(f),m=A(m);var b="@@VueFlowEditorProvider";function x(e){return(0,h.computed)((function(){return{root:{height:(0,g.suffixSize)(e.height)},left:{width:(0,g.suffixSize)(e.menuWidth)},toolbar:{height:(0,g.suffixSize)(e.toolbarHeight)}}}))}function w(e,t){var n=(0,h.reactive)({plugin:{grid:null,miniMap:null}});function o(e){if(!1===e||null==e)n.plugin.grid&&(t.removePlugin(n.plugin.grid),n.plugin.grid=null);else{var o="boolean"===typeof e?{}:e;n.plugin.grid=new p.Grid(o),t.addPlugin(n.plugin.grid)}}function i(e){if(!1===e||null==e)n.plugin.miniMap&&(t.removePlugin(n.plugin.miniMap),n.plugin.miniMap=null);else{var o="boolean"===typeof e?{}:e;n.plugin.miniMap=new p.Minimap(o),t.addPlugin(n.plugin.miniMap)}}return o(e.grid),i(e.miniMap),(0,h.watch)((function(){return e.grid}),(function(e){o(e)})),(0,h.watch)((function(){return e.miniMap}),(function(e){i(e)})),{pluginState:n}}function S(e){var t=(0,h.reactive)({data:e.data,grid:e.grid,miniMap:e.miniMap});return(0,h.watch)((function(){return e.data}),(function(e){return t.data=e})),(0,h.watch)((function(){return e.grid}),(function(e){return t.grid=e})),(0,h.watch)((function(){return e.miniMap}),(function(e){return t.miniMap=e})),t}function E(e){var t=(0,y.useCommander)(e);return t.register(new y.Command({name:"switchGrid",execute:function(){var t=e.canvasProps.grid;return{redo:function(){e.canvasProps.grid=!t},undo:function(){e.canvasProps.grid=t}}}})),t.register(new y.Command({name:"switchMiniMap",execute:function(){var t=e.canvasProps.miniMap;return{redo:function(){e.canvasProps.miniMap=!t},undo:function(){e.canvasProps.miniMap=t}}}})),t.register(new y.Command({name:"fitView",execute:function(){var e=this.graph,t=e.getZoom();return{redo:function(){e.fitView(20)},undo:function(){e.zoomTo(t)}}}})),t.register(new y.Command({name:"actualView",execute:function(){var e=this.graph,t=e.getZoom();return{redo:function(){e.zoomTo(1)},undo:function(){e.zoomTo(t)}}}})),t.register(new y.Command({name:"zoomIn",keyboard:"ctrl+=",execute:function(){var e=this.graph,t=e.getZoom();return{redo:function(){e.zoom(1.1)},undo:function(){e.zoomTo(t)}}}})),t.register(new y.Command({name:"zoomOut",keyboard:"ctrl+-",execute:function(){var e=this.graph,t=e.getZoom();return{redo:function(){e.zoom(.9)},undo:function(){e.zoomTo(t)}}}})),t.register(new y.Command({name:"delete",keyboard:["ctrl+d","backspace","delete"],init:function(){var e=this;this.data={onSelectChange:function(t){e.data=(0,f.default)((0,f.default)({},e.data),{},{selected:t})}},this.graph.on("select-change",this.data.onSelectChange)},destroy:function(){this.graph.off("select-change",this.data.onSelectChange)},execute:function(){var t,n,o=this.graph;return{redo:function(){var i=(0,u.default)(regeneratorRuntime.mark((function i(){var a,r,d;return regeneratorRuntime.wrap((function(i){while(1)switch(i.prev=i.next){case 0:if(t||n){i.next=8;break}return a=e.props,r=a.beforeDelete,d=a.afterDelete,t=(0,m.default)(o.save()),i.next=5,Promise.all((0,g.flatten)(Object.values((0,v.getSelected)(o))).map(function(){var e=(0,u.default)(regeneratorRuntime.mark((function e(t){var n,i;return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:if(n=t.get("model"),i=t.get("type"),e.prev=2,!r){e.next=6;break}return e.next=6,r(n,i);case 6:if(t.clearAnchor(),o.removeItem(t),o.paint(),!d){e.next=12;break}return e.next=12,d(n,i);case 12:e.next=17;break;case 14:e.prev=14,e.t0=e["catch"](2),console.error(e.t0);case 17:case"end":return e.stop()}}),e,null,[[2,14]])})));return function(t){return e.apply(this,arguments)}}()));case 5:n=(0,m.default)(o.save()),i.next=9;break;case 8:o.read(n);case 9:case"end":return i.stop()}}),i)})));function a(){return i.apply(this,arguments)}return a}(),undo:function(){o.read(t)}}},isEnable:function(){var e=this.data.selected;if(e){var t=e.nodes,n=e.edges;return[].concat((0,c.default)(t),(0,c.default)(n)).length>0}return!1}})),t.register(new y.Command({name:"drag",doNothingWhenExecute:!0,init:function(){var e=this;this.data={ondragstart:function(){e.data=(0,f.default)((0,f.default)({},e.data),{},{start:(0,m.default)(e.graph.save())})},ondragend:function(){e.data=(0,f.default)((0,f.default)({},e.data),{},{end:(0,m.default)(e.graph.save())}),t.commands.drag()}},this.graph.on("drag-node:start",this.data.ondragstart),this.graph.on("drag-node:end",this.data.ondragend)},destroy:function(){this.graph.off("drag-node:start",this.data.ondragstart),this.graph.off("drag-node:end",this.data.ondragend)},execute:function(){var e=this,t=this.data,n=t.start,o=t.end;return{redo:function(){e.graph.read(o)},undo:function(){e.graph.read(n)}}}})),t.register(new y.Command({name:"selectAll",keyboard:"ctrl+a",isQueue:!1,execute:function(){var t=this;return{redo:function(){if(e.props.multipleSelect){var n={nodes:t.graph.findAll("node",(function(){return!0})),edges:t.graph.findAll("edge",(function(){return!0}))};(0,g.flatten)(Object.values(n)).forEach((function(e){e.setState(v.SELECTED_STATE,!0)})),t.graph.paint(),t.graph.emit("select-change",n)}}}}})),t.register(new y.Command({name:"addEdge",doNothingWhenExecute:!0,init:function(){var e=this;this.data={beforeAdd:function(){e.data=(0,f.default)((0,f.default)({},e.data),{},{before:(0,m.default)(e.graph.save())})},afterAdd:function(){e.data=(0,f.default)((0,f.default)({},e.data),{},{after:(0,m.default)(e.graph.save())}),t.commands.addEdge()}},this.graph.on("add-edge:before",this.data.beforeAdd),this.graph.on("add-edge:after",this.data.afterAdd)},destroy:function(){this.graph.off("add-edge:before",this.data.beforeAdd),this.graph.off("add-edge:after",this.data.afterAdd)},execute:function(){var e=this,t=this.data,n=t.before,o=t.after;return{redo:function(){e.graph.read(o)},undo:function(){e.graph.read(n)}}}})),t.register(new y.Command({name:"addNode",doNothingWhenExecute:!0,init:function(){var e=this;this.data={beforeAdd:function(){e.data=(0,f.default)((0,f.default)({},e.data),{},{before:(0,m.default)(e.graph.save())})},afterAdd:function(){e.data=(0,f.default)((0,f.default)({},e.data),{},{after:(0,m.default)(e.graph.save())}),t.commands.addNode()}},this.graph.on("add-node:before",this.data.beforeAdd),this.graph.on("add-node:after",this.data.afterAdd)},destroy:function(){this.graph.off("add-node:before",this.data.beforeAdd),this.graph.off("add-node:after",this.data.afterAdd)},execute:function(){var e=this,t=this.data,n=t.before,o=t.after;return{redo:function(){e.graph.read(o)},undo:function(){e.graph.read(n)}}}})),t.register(new y.Command({name:"update",doNothingWhenExecute:!0,init:function(){this.data={before:null,after:null}},execute:function(e){var t=this.graph,n=t.findById(e.id);this.data.before=(0,m.default)(t.save()),n?(t.update(n,e),t.paint(),this.data.after=(0,m.default)(t.save())):this.data.after=this.data.before;var o=this.data,i=o.before,a=o.after;return{redo:function(){t.read(a)},undo:function(){t.read(i)}}}})),t}e.VueFlowEditorProvider=b}))},"8efd":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("96cf"),n("5530"),n("1da1"),n("ade3"),n("8e2d"),n("73ec")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a,r,d){"use strict";var l=n("4ea4").default;Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,o=l(o),i=l(i),a=l(a);var s={name:"vue-flow-edit-menu",inject:(0,a.default)({},r.VueFlowEditorProvider,{}),props:{model:{type:Object,require:!0},hideArrow:{type:Boolean}},data:function(){var e=this;return{handler:{dragenter:function(e){e.dataTransfer.dropEffect="move"},dragover:function(e){e.preventDefault()},dragleave:function(e){e.dataTransfer.dropEffect="none"},drop:function(){var t=(0,i.default)(regeneratorRuntime.mark((function t(n){var i,a,l,s,c,u,f,h,p,g,y,v,m,A;return regeneratorRuntime.wrap((function(t){while(1)switch(t.prev=t.next){case 0:if(i=(0,o.default)({},e.model),(0,d.formatNodeModel)(i,e[r.VueFlowEditorProvider].props.activityConfig),a=i,l=a.id,s=a.shape,c=a.size,s=s||"rect",l=l||String((new Date).getTime()),"function"!==typeof l){t.next=9;break}return t.next=8,l();case 8:l=t.sent;case 9:if(u=n.clientX,f=n.clientY,h=e.graph.getPointByClient(u,f),p=h.x,g=h.y,y=e[r.VueFlowEditorProvider].editorState.props,v=y.beforeAdd,m=y.afterAdd,A=(0,d.formatPos)({x:p,y:g,size:c,shape:s}),i=(0,o.default)((0,o.default)({},i),{},{id:l,shape:A.shape,size:A.size,x:A.x,y:A.y}),t.prev=14,!v){t.next=18;break}return t.next=18,v(i,"node");case 18:if(e.graph.emit("add-node:before",i),e.graph.add("node",i),e.graph.paint(),e.graph.emit("add-node:after",i),!m){t.next=25;break}return t.next=25,m(i,"node");case 25:t.next=30;break;case 27:t.prev=27,t.t0=t["catch"](14),console.error(t.t0);case 30:case"end":return t.stop()}}),t,null,[[14,27]])})));function n(e){return t.apply(this,arguments)}return n}()}}},computed:{graph:function(){return this[r.VueFlowEditorProvider].editorState.graph},container:function(){return this.graph?this.graph.get("container"):null}},methods:{onDragstart:function(e){e.dataTransfer.effectAllowed="move",this.container.addEventListener("dragenter",this.handler.dragenter),this.container.addEventListener("dragover",this.handler.dragover),this.container.addEventListener("dragleave",this.handler.dragleave),this.container.addEventListener("drop",this.handler.drop)},onDragend:function(){this.container.removeEventListener("dragenter",this.handler.dragenter),this.container.removeEventListener("dragover",this.handler.dragover),this.container.removeEventListener("dragleave",this.handler.dragleave),this.container.removeEventListener("drop",this.handler.drop)}}};e.default=s}))},"8f3b":function(e,t){e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAMAAADyHTlpAAAASFBMVEUAAAAoKCgnJycnJycoKCgnJycmJiYoKCgmJiYnJycnJycnJycqKiopKSkrKytAQEAnJycvLy8nJycmJiYmJiYnJyctLS0mJiaedWoaAAAAF3RSTlMAGVz7eX0oTKyS34oqHxUGdg3r4rFUEQiYI8sAAACLSURBVDjL7ZPLCsMgEEU1iXaMGpO+7v//aQupHQp2XLQLQ3I2wuEsLsKo1nB44yrpyOlYSe08vJjtj/v6Ko73yfDuYIwHyBQhwBsTeIMGOlWkA/Tz2Xiq71ktUU5jf06rSRcEMT0Bls2R7jSNq5mAm5gmcln569L4wfw7paEIcZp/UWBSHxC+QqoRHmzYHVNObHQlAAAAAElFTkSuQmCC"},9330:function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("cb29"),n("7a23")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.render=c;var o={class:"app",style:{height:"100vh"}},i={class:"activity-menu"},a=["src"],r=(0,n.createElementVNode)("i",{class:"el-icon-search"},null,-1),d=[r],l=(0,n.createTextVNode)("保存"),s=(0,n.createTextVNode)("取消");function c(e,t,r,c,u,f){var h=(0,n.resolveComponent)("vue-flow-edit-menu"),p=(0,n.resolveComponent)("vue-flow-edit-menu-group"),g=(0,n.resolveComponent)("el-input"),y=(0,n.resolveComponent)("el-form-item"),v=(0,n.resolveComponent)("el-color-picker"),m=(0,n.resolveComponent)("el-option"),A=(0,n.resolveComponent)("el-select"),b=(0,n.resolveComponent)("el-form"),x=(0,n.resolveComponent)("el-tooltip"),w=(0,n.resolveComponent)("el-button"),S=(0,n.resolveComponent)("vue-flow-editor");return(0,n.openBlock)(),(0,n.createElementBlock)("div",o,[(0,n.createVNode)(S,{ref:"editor",data:c.state.data,grid:c.showGrid,miniMap:c.showMiniMap,onRef:c.onRef,multipleSelect:!0,loading:c.state.editorLoading,beforeDelete:c.handleBeforeDelete,afterDelete:c.handleAfterDelete,beforeAdd:c.handleBeforeAdd,afterAdd:c.handleAfterAdd,onDblclickNode:c.onDblclickNode,onDblclickEdge:c.onDblClickEdge,activityConfig:c.state.activityConfig},{menu:(0,n.withCtx)((function(){return[(0,n.createVNode)(p,{label:"活动节点",value:""},{default:(0,n.withCtx)((function(){return[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(c.state.activityConfig,(function(e,t){return(0,n.openBlock)(),(0,n.createBlock)(h,{key:t,model:{activity:t,text:e.text,desc:e.desc}},{content:(0,n.withCtx)((function(){return[(0,n.createElementVNode)("div",i,[(0,n.createElementVNode)("img",{src:e.img},null,8,a),(0,n.createElementVNode)("span",null,(0,n.toDisplayString)(e.text),1)])]})),_:2},1032,["model"])})),128))]})),_:1}),((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(c.state.menuData,(function(e,t){return(0,n.openBlock)(),(0,n.createBlock)(p,{label:e.label,key:t,value:""},{default:(0,n.withCtx)((function(){return[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(e.menus,(function(e,t){return(0,n.openBlock)(),(0,n.createBlock)(h,{key:t,model:e},null,8,["model"])})),128))]})),_:2},1032,["label"])})),128))]})),model:(0,n.withCtx)((function(){return[c.state.detailModel?((0,n.openBlock)(),(0,n.createBlock)(b,{key:0,ref:"form",model:c.state.detailModel,"label-width":"100px"},{default:(0,n.withCtx)((function(){return[void 0===c.state.detailModel.activity?((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,{key:0},[(0,n.createVNode)(y,{label:"节点名称",prop:"label"},{default:(0,n.withCtx)((function(){return[(0,n.createVNode)(g,{modelValue:c.state.detailModel.label,"onUpdate:modelValue":t[0]||(t[0]=function(e){return c.state.detailModel.label=e})},null,8,["modelValue"])]})),_:1}),"edge"!==c.state.detailModel.type?((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,{key:0},[(0,n.createVNode)(y,{label:"节点背景色",prop:"style.fill"},{default:(0,n.withCtx)((function(){return[(0,n.createVNode)(v,{modelValue:c.state.detailModel.style.fill,"onUpdate:modelValue":t[1]||(t[1]=function(e){return c.state.detailModel.style.fill=e})},null,8,["modelValue"])]})),_:1}),(0,n.createVNode)(y,{label:"节点边框色",prop:"style.stroke"},{default:(0,n.withCtx)((function(){return[(0,n.createVNode)(v,{modelValue:c.state.detailModel.style.stroke,"onUpdate:modelValue":t[2]||(t[2]=function(e){return c.state.detailModel.style.stroke=e})},null,8,["modelValue"])]})),_:1}),(0,n.createVNode)(y,{label:"节点文字色",prop:"labelCfg.style.stroke"},{default:(0,n.withCtx)((function(){return[(0,n.createVNode)(v,{modelValue:c.state.detailModel.labelCfg.style.fill,"onUpdate:modelValue":t[3]||(t[3]=function(e){return c.state.detailModel.labelCfg.style.fill=e})},null,8,["modelValue"])]})),_:1})],64)):(0,n.createCommentVNode)("",!0)],64)):((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,{key:1},[(0,n.createVNode)(y,{label:"活动标题"},{default:(0,n.withCtx)((function(){return[(0,n.createVNode)(g,{modelValue:c.state.detailModel.text,"onUpdate:modelValue":t[4]||(t[4]=function(e){return c.state.detailModel.text=e})},null,8,["modelValue"])]})),_:1}),(0,n.createVNode)(y,{label:"活动副标题"},{default:(0,n.withCtx)((function(){return[(0,n.createVNode)(g,{modelValue:c.state.detailModel.desc,"onUpdate:modelValue":t[5]||(t[5]=function(e){return c.state.detailModel.desc=e})},null,8,["modelValue"])]})),_:1}),(0,n.createVNode)(y,{label:"活动类型"},{default:(0,n.withCtx)((function(){return[(0,n.createVNode)(A,{modelValue:c.state.detailModel.activity,"onUpdate:modelValue":t[6]||(t[6]=function(e){return c.state.detailModel.activity=e})},{default:(0,n.withCtx)((function(){return[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(c.state.activityConfig,(function(e,t){return(0,n.openBlock)(),(0,n.createBlock)(m,{key:t,label:e.text,value:t},null,8,["label","value"])})),128))]})),_:1},8,["modelValue"])]})),_:1})],64))]})),_:1},8,["model"])):(0,n.createCommentVNode)("",!0)]})),toolbar:(0,n.withCtx)((function(){return[(0,n.createVNode)(x,{content:"测试工具栏插槽"},{default:(0,n.withCtx)((function(){return[(0,n.createElementVNode)("div",{class:"vue-flow-editor-toolbar-item",onClick:t[7]||(t[7]=function(){return c.logData&&c.logData.apply(c,arguments)})},d)]})),_:1})]})),foot:(0,n.withCtx)((function(){return[(0,n.createVNode)(w,{type:"primary",onClick:c.save},{default:(0,n.withCtx)((function(){return[l]})),_:1},8,["onClick"]),(0,n.createVNode)(w,{onClick:c.cancel},{default:(0,n.withCtx)((function(){return[s]})),_:1},8,["onClick"])]})),_:1},8,["data","grid","miniMap","onRef","loading","beforeDelete","afterDelete","beforeAdd","afterAdd","onDblclickNode","onDblclickEdge","activityConfig"])])}}))},"93e4":function(e,t){e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAMAAADyHTlpAAAAM1BMVEUAAAAmJiYmJiYpKSkoKCgnJycoKCgmJiYnJycnJycnJycnJycmJiYmJiYmJiYnJycmJiaCPH/MAAAAEHRSTlMA95pETZEftW7u1/n53dRdt2KMpwAAAHNJREFUOMvt1N0KgCAMhmG3fkz7++7/aksRUUIsChHyORmM92wwUQNF1gLMFJmBhSzlUkIW+VTzSQKSvXCjg5TN6IBeRHqgM5O/SvdtG2+mE/DzdF/XIC12LTlEZDq9eJsmtbSlZVLNSe5pPn/FirKUqMABSRcS+QJrNlMAAAAASUVORK5CYII="},9618:function(e,t){e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqBAMAAAA37dRoAAAAIVBMVEUAAAAnJycnJycnJycnJycnJycnJycrKysmJiYrKysmJibiL9FcAAAACnRSTlMAxHZOnfJIMIU2iAm2agAAAGRJREFUKM9joALgWoUOFuAWXSqICqLAogvRjJQiRjRJCQg00UW9QFYtIk602NjYuGsRNtusBq1oiRtQlPQwS3HHJqq1eNCKrgDGjTmGKCgalxAnOgmUPNSggmSEGWZKJSmtUw4A7MSAPCMo+AMAAAAASUVORK5CYII="},"96a9":function(e,t,n){"use strict";var o=n("9330");n.o(o,"render")&&n.d(t,"render",(function(){return o["render"]}))},9741:function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("159b"),n("b64b"),n("3835"),n("ad39")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a){"use strict";var r=n("4ea4").default;function d(e){e.registerNode("activity",{options:{style:{},stateStyles:{}},setState:function(){},drawShape:function(e,t){var n=e.text,o=e.desc,r=e.img,d=e.color;d=d||a.BASE_COLOR,o=o||"无描述";var l,s=e.size||[200,80],c=(0,i.default)(s,2),u=c[0],f=c[1],h={keyShape:{type:"rect",attrs:{fill:"white",x:-u/2,y:-f/2,width:u,height:f,shadowColor:"#BFC5D2",shadowBlur:50}},sideRect:{type:"rect",attrs:{x:-u/2,y:-f/2,width:6,height:f,fill:d}},img:{type:"image",attrs:{x:f/4-u/2,y:f/4-f/2,width:f/2,height:f/2,img:r}},label:{type:"text",attrs:{text:n,x:f-u/2,y:f*(3/8)-f/2,fontSize:16,textAlign:"left",textBaseline:"middle",fill:"black"}},desc:{type:"text",attrs:{text:o,x:f-u/2,y:f*(5/8)-f/2,fontSize:12,textAlign:"left",textBaseline:"middle",fill:"#999"}}},p={};return Object.keys(h).forEach((function(e){var n=h[e],o=n.type,i=n.attrs;p[e]=t.addShape(o,{attrs:i,name:e,draggable:!0}),"keyShape"===e&&(l=p[e])})),t.shapes=p,l},update:function(e,t){t=t.getContainer(),t.shapes.sideRect.attr({fill:e.color}),t.shapes.img.attr({img:e.img}),t.shapes.label.attr({text:e.text}),t.shapes.desc.attr({text:e.desc})}},"single-shape")}Object.defineProperty(e,"__esModule",{value:!0}),e.registerActivity=d,i=r(i)}))},"9abc":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("8c01")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.dragCanvas=d;var n=t.G6.Util,o=Math.abs,i=10,a=document.body,r=[16,17,18];function d(e){e.registerBehavior("drag-canvas",{getDefaultCfg:function(){return{direction:"both"}},getEvents:function(){return{"canvas:mousedown":"onMouseDown","canvas:mousemove":"onMouseMove","canvas:mouseup":"onMouseUp","canvas:click":"onMouseUp","canvas:mouseleave":"onOutOfRange",keyup:"onKeyUp",keydown:"onKeyDown"}},updateViewport:function(e){var t=this.origin,n=+e.clientX,o=+e.clientY;if(!isNaN(n)&&!isNaN(o)){var i=n-t.x,a=o-t.y;"x"===this.get("direction")?a=0:"y"===this.get("direction")&&(i=0),this.origin={x:n,y:o},this.graph.translate(i,a),this.graph.paint()}},onMouseDown:function(e){2!==e.event.button&&(this.keydown||(this.origin={x:e.clientX,y:e.clientY},this.dragging=!1))},onMouseMove:function(e){if(!this.keydown){e=n.cloneEvent(e);var t=this.graph;if(this.origin){if(this.origin&&!this.dragging){if(o(this.origin.x-e.clientX)+o(this.origin.y-e.clientY)<i)return;this.shouldBegin.call(this,e)&&(e.type="dragstart",t.emit("canvas:dragstart",e),this.dragging=!0)}this.dragging&&(e.type="drag",t.emit("canvas:drag",e)),this.shouldUpdate.call(this,e)&&this.updateViewport(e)}}},onMouseUp:function(e){if(!this.keydown)if(this.dragging){e=n.cloneEvent(e);var t=this.graph;this.shouldEnd.call(this,e)&&this.updateViewport(e),e.type="dragend",t.emit("canvas:dragend",e),this.endDrag()}else this.origin=null},endDrag:function(){if(this.dragging){this.origin=null,this.dragging=!1;var e=this.fn;e&&(a.removeEventListener("mouseup",e,!1),this.fn=null)}},onOutOfRange:function(e){if(this.dragging){var t=this,n=t.graph.get("canvas").get("el"),o=function(o){o.target!==n&&t.onMouseUp(e)};this.fn=o,a.addEventListener("mouseup",o,!1)}},onKeyDown:function(e){var t=e.keyCode||e.which;r.indexOf(t)>-1?this.keydown=!0:this.keydown=!1},onKeyUp:function(){this.keydown=!1}})}}))},"9ef9":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("96cf"),n("1da1"),n("5530"),n("159b"),n("ad39")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a,r){"use strict";var d=n("4ea4").default;function l(e,t){e.registerBehavior("drag-edge",{getDefaultCfg:function(){return{updateEdge:!0,delegate:!0,delegateStyle:{},dragEdge:!1}},getEvents:function(){return{"anchor:dragstart":"onDragStart","anchor:drag":"onDrag","anchor:dragenter":"onDragEnter","anchor:dragleave":"onDragLeave","anchor:dragend":"onDragEnd"}},onDragStart:function(e){var t=this,n=e.target.getParent().getParent().get("item"),o=e.item,i=o.index,a=n.getAnchorPoints()[i];this.target=e.item,this.origin={x:a.x,y:a.y,sourceNode:n,sourceAnchor:i},this.graph.getNodes().forEach((function(e){e.showAnchor(t.graph),e.getContainer().anchorShapes.forEach((function(e){e.get("item").showHotpot()}))})),this.graph.set("onDragEdge",!0)},onDrag:function(e){this.origin&&this._updateEdge(this.target,e)},onDragEnter:function(e){this.origin&&(this.sameNode(e)||(e.item.setHotspotActived(!0),this.origin.targetNode=e.target.getParent().getParent().get("item"),this.origin.targetAnchor=e.item.get("index")))},onDragLeave:function(e){this.origin&&(this.sameNode(e)||(e.item.setHotspotActived(!1),this.origin.targetNode=null,this.origin.targetAnchor=null))},onDragEnd:function(e){var t=this;if(this.origin){var n=e.item.get("edgeDelegate");n&&(n.remove(),this.target.set("edgeDelegate",null)),this._updateEdge(this.target,e,!0),this.target=null,this.origin=null,this.graph.set("onDragEdge",!1),this.graph.getNodes().forEach((function(e){e.hideAnchor(t.graph),e.getContainer().anchorShapes.forEach((function(e){e.get("item").hideHotpot()}))}))}},sameNode:function(e){return"marker"===e.target.type&&e.target.getParent()&&e.target.getParent().getParent().get("item").get("id")===this.origin.sourceNode.get("id")},_updateEdge:function(e,t,n){var o=t.x,i=t.y;!this.delegate||n?(this._addEdge(t),this.graph.paint()):this._updateEdgeDelegate(e,o,i)},_updateEdgeDelegate:function(e,t,n){var o=this,a=e.get("edgeDelegate");if(!a){var d=o.graph.get("group");a=d.addShape("line",{attrs:(0,i.default)({x1:this.origin.x,y1:this.origin.y,x2:t,y2:n},r.GraphStyle.edgeDelegationStyle)}),a.set("capture",!1),e.set("edgeDelegate",a)}a.attr({x2:t,y2:n}),this.graph.paint()},_addEdge:function(){var e=this;return(0,o.default)(regeneratorRuntime.mark((function n(){var o;return regeneratorRuntime.wrap((function(n){while(1)switch(n.prev=n.next){case 0:if(!e.origin.targetNode){n.next=21;break}if(o={clazz:"flow",source:e.origin.sourceNode.get("id"),target:e.origin.targetNode.get("id"),sourceAnchor:e.origin.sourceAnchor,targetAnchor:e.origin.targetAnchor},!e.graph.executeCommand){n.next=6;break}e.graph.executeCommand("add",{type:"edge",addModel:o}),n.next=21;break;case 6:if(n.prev=6,!t.beforeAdd){n.next=10;break}return n.next=10,t.beforeAdd(o,"edge");case 10:if(e.graph.emit("add-edge:before"),e.graph.add("edge",o),e.graph.emit("add-edge:after"),!t.afterAdd){n.next=16;break}return n.next=16,t.afterAdd(o,"edge");case 16:n.next=21;break;case 18:n.prev=18,n.t0=n["catch"](6),console.error(n.t0);case 21:case"end":return n.stop()}}),n,null,[[6,18]])})))()}})}Object.defineProperty(e,"__esModule",{value:!0}),e.dragEdge=l,o=d(o),i=d(i)}))},a0bb:function(e,t){e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAMAAADyHTlpAAAAWlBMVEUAAAAmJiYnJycnJycnJycmJiYmJiYmJiYqKionJycmJiYnJycoKCgsLCwyMjInJycnJycnJycmJiYnJycnJycnJycoKCgzMzMmJiYmJiYoKCgnJycoKCgmJiZvfRRyAAAAHXRSTlMAkq/r2cHRnRL69nE4Fw3n4bemjINRSArIZF9BQERN+KIAAACWSURBVDjL5dTJDsIgAIRhqMrSAlW7uc37v6YHEmMrkomJEdP/QkK+44AoIRB9QpXMpp6oFNnkWmjwS+NNml5rNHN5tnZI0iOwn1MFHJK0Ajbxwt3iuQV2eXoBGpJqoCKpa1tH0di/0KnvAkl7QJK0AzRJjdb+Qcm5nN7NZXwZ4WDrMT3tyYhFJpT6DH9A+U/zS792Ad0BpIgqb+WRTqwAAAAASUVORK5CYII="},a214:function(e,t,n){"use strict";n.r(t);var o=n("2a82"),i=n("88ba");for(var a in i)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return i[e]}))}(a);i["default"].render=o["render"],t["default"]=i["default"]},a523:function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("b85c"),n("5530"),n("4de4"),n("159b"),n("8c01")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a,r){"use strict";var d=n("4ea4").default;Object.defineProperty(e,"__esModule",{value:!0}),e.dragNode=p,t=d(t),o=d(o);var l=r.G6.Util.isString,s=r.G6.Util.deepMix,c=n("ad39"),u=c.delegateStyle,f=document.body,h=["shift"];function p(e){e.registerBehavior("drag-node",{getDefaultCfg:function(){return{updateEdge:!0,delegateStyle:{},enableDelegate:!1,ondragend:function(){}}},getEvents:function(){return{"node:dragstart":"onDragStart","node:drag":"onDrag","node:dragend":"onDragEnd","canvas:mouseleave":"onOutOfRange",keyup:"onKeyUp",keydown:"onKeyDown"}},onDragStart:function(e){var t=this;if(this.shouldBegin.call(this,e)){var n=e.item,o=e.target,i=n.hasLocked();if(!i){if(o){var a=o.get("isAnchorPoint");if(a)return}var r=this.graph;this.targets=[];var d=r.findAllByState("node","selected"),l=n.get("id"),s=d.filter((function(e){var t=e.get("id");return l===t}));0===s.length?(this.target=n,this.target.origin={x:n._cfg.model.x,y:n._cfg.model.y}):d.length>1?d.forEach((function(e){var n=e.hasLocked();n||(e.origin={x:e._cfg.model.x,y:e._cfg.model.y},t.targets.push(e))})):this.targets.push(n),this.origin={x:e.x,y:e.y},this.point={},this.originPoint={},r.emit("drag-node:start")}}},onDrag:function(e){var t=this;if(this.origin&&this.get("shouldUpdate").call(this,e)){var n=this.graph,o=n.get("autoPaint");n.setAutoPaint(!1),this.targets.length>0?this.enableDelegate?this._updateDelegate(e):this.targets.forEach((function(n){t._update(n,e,t.enableDelegate)})):this._update(this.target,e,this.enableDelegate),n.paint(),n.setAutoPaint(o)}},onDragEnd:function(e){var t=this;if(this.origin&&this.shouldEnd.call(this,e)){var n=this.graph,o=n.get("autoPaint");if(n.setAutoPaint(!1),this.shape&&(this.shape.remove(),this.shape=null),this.target){var i=this.target.get("delegateShape");i&&(i.remove(),this.target.set("delegateShape",null))}this.targets.length>0?this.targets.forEach((function(n){return t._update(n,e)})):this.target&&this._update(this.target,e),this.point={},this.origin=null,this.originPoint={},this.targets.length=0,this.target=null;var a=this.fn;a&&(f.removeEventListener("mouseup",a,!1),this.fn=null),n.paint(),n.setAutoPaint(o),n.emit("drag-node:end")}},onOutOfRange:function(e){var t=this;if(this.origin){var n=t.graph.get("canvas").get("el"),o=function(o){o.target!==n&&t.onDragEnd(e)};this.fn=o,f.addEventListener("mouseup",o,!1)}},_update:function(e,t,n){var o=this.origin,i=e.get("model"),a=e.get("id");this.point[a]||(this.point[a]={x:i.x,y:i.y});var r=t.x-o.x,d=t.y-o.y,l=5;if(r=r%l>l/2?Math.ceil(r/l)*l:Math.floor(r/l)*l,d=d%l>l/2?Math.ceil(d/l)*l:Math.floor(d/l)*l,this.keydown&&(Math.abs(r)>Math.abs(d)?d=0:r=0),e.origin){var s=r+e.origin.x,c=d+e.origin.y;if(n)this._updateDelegate(t,s,c);else{var u={x:s,y:c};this.get("updateEdge")?this.graph.updateItem(e,u):e.updatePosition(u)}}},_updateDelegate:function(e,t,n){var i=e.item.get("keyShape").getBBox();if(this.shape)if(this.targets.length>0){var a=e.x-this.origin.x+this.originPoint.minX,r=e.y-this.origin.y+this.originPoint.minY;this.shape.attr({x:a,y:r})}else this.target&&this.shape.attr({x:t+i.x,y:n+i.y});else{var d=this.graph.get("group"),l=s({},u,this.delegateStyle);if(this.targets.length>0){var c=this.calculationGroupPosition(),f=c.x,h=c.y,p=c.width,g=c.height,y=c.minX,v=c.minY;this.originPoint={x:f,y:h,width:p,height:g,minX:y,minY:v},this.shape=d.addShape("rect",{attrs:(0,o.default)({width:p,height:g,x:f,y:h},l)})}else this.target&&(this.shape=d.addShape("rect",{attrs:(0,o.default)({width:i.width,height:i.height,x:t+i.x,y:n+i.y},l)}),this.target.set("delegateShape",this.shape));this.shape.set("capture",!1)}},calculationGroupPosition:function(){var e,n=this.graph,o=n.findAllByState("node","selected"),i=1/0,a=-1/0,r=1/0,d=-1/0,s=(0,t.default)(o);try{for(s.s();!(e=s.n()).done;){var c=e.value,u=l(c)?n.findById(c):c,f=u.getBBox(),h=f.minX,p=f.minY,g=f.maxX,y=f.maxY;h<i&&(i=h),p<r&&(r=p),g>a&&(a=g),y>d&&(d=y)}}catch(x){s.e(x)}finally{s.f()}var v=Math.floor(i)-20,m=Math.floor(r)+10,A=Math.ceil(a)-v,b=Math.ceil(d)-m;return{x:v,y:m,width:A,height:b,minX:i,minY:r}},onKeyDown:function(e){var t=e.key;h.indexOf(t.toLowerCase())>-1?this.keydown=!0:this.keydown=!1},onKeyUp:function(){this.keydown=!1}})}}))},ad39:function(e,t,n){var o,i,a;n("6c57"),function(n,r){i=[t],o=r,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.GraphStyle=e.BASE_COLOR_DEEP=e.BASE_COLOR=void 0;var t="#1F74FF";e.BASE_COLOR=t;var n="#324aff";e.BASE_COLOR_DEEP=n;var o={default:{defaultEdge:{shape:"flow-polyline-round",style:{stroke:"#BFC5D2",lineWidth:1,lineAppendWidth:10,cursor:"pointer"}},defaultNode:{shape:"rect",size:[120,40],anchorPoints:[[.5,0],[0,.5],[.5,1],[1,.5]],style:{fill:"#E8F1FF",lineWidth:0,stroke:t,cursor:"pointer"},labelCfg:{style:{fontSize:14,fill:t,cursor:"pointer"}}},nodeStateStyles:{selected:{lineWidth:2,stroke:t},hover:{stroke:t}},edgeStateStyles:{selected:{stroke:t,lineWidth:1}}},anchorStyle:{stroke:t,radius:3.5,fill:"#fff",lineAppendWidth:12},anchorHotsoptStyle:{radius:12,fill:t,fillOpacity:.25},anchorHotsoptActivedStyle:{radius:14},anchorPointHoverStyle:{radius:4,fill:t,fillOpacity:1,stroke:n},edgeDelegationStyle:{stroke:t,lineDash:[4,4],lineWidth:1}};e.GraphStyle=o}))},aea6:function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("b0c0"),n("fb6a"),n("a15b"),n("159b"),n("d4ec"),n("7a23"),n("4f4b")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a,r,d,l){"use strict";var s=n("4ea4").default;Object.defineProperty(e,"__esModule",{value:!0}),e.useCommander=u,e.Command=void 0,r=s(r);var c=function e(t){(0,r.default)(this,e),Object.assign(this,t),this.isEnable=null==t.isEnable?function(){return!0}:t.isEnable,this.isQueue=null==t.isQueue||t.isQueue,this.doNothingWhenExecute=null!=t.doNothingWhenExecute&&t.doNothingWhenExecute,this.data={}};function u(e){var t,n=(0,d.reactive)({queue:[],index:-1,registerCommands:[]}),o={},i=(0,d.computed)((function(){return n.registerCommands.reduce((function(e,t){return e[t.name]=t.isEnable(),e}),{})})),a=function(e){if(!e.name)throw console.log(e),new Error("Commander: command's name can not be empty!");n.registerCommands.push(e),o[e.name]=function(){if(!e.isEnable||e.isEnable()){var t=e.execute.apply(e,arguments),o=t.undo,i=t.redo;if(!e.isQueue)return!e.doNothingWhenExecute&&i();var a=n.queue,r=n.index;a.length>0&&(a=a.slice(0,r+1),n.queue=a),a.push({undo:o,redo:i}),n.index=r+1,!e.doNothingWhenExecute&&i()}}};function r(){t||(t=function(e){var t=[];e.ctrlKey&&t.push("ctrl"),e.shiftKey&&t.push("shift"),e.altKey&&t.push("alt"),t.push(l.KeyboardCode[e.keyCode]);var i=t.join("+");n.registerCommands.forEach((function(t){if(t.keyboard){var n=Array.isArray(t.keyboard)?t.keyboard:[t.keyboard];n.indexOf(i)>-1&&(e.stopPropagation(),e.preventDefault(),o[t.name]())}}))},window.addEventListener("keydown",t))}function s(){t&&(window.removeEventListener("keydown",t),t=null)}function u(e){n.registerCommands.forEach((function(t){t.graph=e,t.init&&t.init()}))}function f(){s(),n.registerCommands.forEach((function(e){e.destroy&&e.destroy()}))}return a(new c({name:"undo",keyboard:"ctrl+z",isQueue:!1,execute:function(){return{redo:function(){if(-1!==n.index){var e=n.queue[n.index];e&&(e.undo(),n.index--)}}}},isEnable:function(){return!e.props.disabledUndo&&!!n.queue[n.index]}})),a(new c({name:"redo",keyboard:"ctrl+shift+z",isQueue:!1,execute:function(){return{redo:function(){var e=n.queue[n.index+1];e&&(e.redo(),n.index++)}}},isEnable:function(){return!e.props.disabledUndo&&!!n.queue[n.index+1]}})),{state:n,register:a,commands:o,isEnable:i,initEvent:r,destroyEvent:s,init:u,destroy:f}}e.Command=c}))},b4ec:function(e,t){!function(e){var t,n='<svg><symbol id="vfe-actual-size" viewBox="0 0 1024 1024"><path d="M205.66145834 90.125h70.30975342v843.75H205.66145834V90.125z m562.50274658 0H838.47395834v843.75h-70.30975342V90.125zM486.90871176 301.0625h70.31799316v70.30975342h-70.31799316V301.0625z m0 281.24725342h70.31799316v70.31799316h-70.31799316v-70.31799316z" ></path></symbol><symbol id="vfe-fit" viewBox="0 0 1024 1024"><path d="M640 288V96c0-19.2 12.8-32 32-32s32 12.8 32 32v160h160c19.2 0 32 12.8 32 32s-12.8 32-32 32H672c-6.4 0-12.8 0-19.2-6.4h-6.4c0-12.8-6.4-19.2-6.4-25.6zM288 64c-19.2 0-32 12.8-32 32v160H96c-19.2 0-32 12.8-32 32s12.8 32 32 32h192c6.4 0 12.8 0 19.2-6.4h6.4c6.4-6.4 6.4-12.8 6.4-19.2v-192c0-25.6-12.8-38.4-32-38.4z m576 576H672c-6.4 0-12.8 0-19.2 6.4h-6.4c-6.4 6.4-6.4 12.8-6.4 19.2v192c0 19.2 12.8 32 32 32s32-12.8 32-32V704h160c19.2 0 32-12.8 32-32s-12.8-32-32-32z m-550.4 12.8c-6.4-6.4-6.4-6.4 0 0-12.8-6.4-19.2-12.8-25.6-12.8H96c-19.2 0-32 12.8-32 32s12.8 32 32 32h160v160c0 19.2 12.8 32 32 32s32-12.8 32-32V672c0-6.4-6.4-12.8-6.4-19.2zM480 352c-70.4 0-128 57.6-128 128s57.6 128 128 128 128-57.6 128-128-57.6-128-128-128z" ></path></symbol><symbol id="vfe-search" viewBox="0 0 1024 1024"><path d="M399.5 737c-187.49999971 0-337.5-150.00000029-337.5-337.5s150.00000029-337.5 337.5-337.5 337.5 150.00000029 337.5 337.5S586.99999971 737 399.5 737zM399.5 136.99999971C253.25 136.99999971 136.99999971 253.25 136.99999971 399.5s116.25000029 262.50000029 262.50000029 262.50000029 262.50000029-116.25000029 262.50000029-262.50000029S545.75 136.99999971 399.5 136.99999971z" ></path><path d="M924.49999971 962c-11.25 0-18.74999971-3.75000029-26.25000029-11.25l-299.99999971-299.99999971c-15.00000029-15.00000029-15.00000029-37.50000029 0-52.49999971s37.50000029-15.00000029 52.49999971 0l299.9999997 299.99999971c15.00000029 15.00000029 15.00000029 37.50000029 0 52.49999971C943.25000029 958.24999971 935.74999971 962 924.49999971 962z" ></path></symbol><symbol id="vfe-zoom-in" viewBox="0 0 1024 1024"><path d="M968.842667 908.501333L726.698667 666.357333A382.293333 382.293333 0 0 0 810.666667 426.666667C810.666667 214.592 638.752 42.666667 426.666667 42.666667 214.592 42.666667 42.666667 214.592 42.666667 426.666667s171.925333 384 384 384c90.666667 0 173.994667-31.413333 239.690666-83.978667l242.144 242.144a42.666667 42.666667 0 0 0 60.341334-60.330667zM426.666667 725.333333c-164.949333 0-298.666667-133.717333-298.666667-298.666666s133.717333-298.666667 298.666667-298.666667c164.96 0 298.666667 133.717333 298.666666 298.666667S591.626667 725.333333 426.666667 725.333333z m170.666666-298.666666a42.666667 42.666667 0 0 1-42.666666 42.666666h-85.333334v85.333334a42.666667 42.666667 0 0 1-85.333333 0v-85.333334h-85.333333a42.666667 42.666667 0 0 1 0-85.333333h85.333333v-85.333333a42.666667 42.666667 0 0 1 85.333333 0v85.333333h85.333334a42.666667 42.666667 0 0 1 42.666666 42.666667z" ></path></symbol><symbol id="vfe-zoom-out" viewBox="0 0 1024 1024"><path d="M968.842667 908.501333L726.698667 666.357333A382.293333 382.293333 0 0 0 810.666667 426.666667C810.666667 214.592 638.752 42.666667 426.666667 42.666667 214.592 42.666667 42.666667 214.592 42.666667 426.666667s171.925333 384 384 384c90.666667 0 173.994667-31.413333 239.690666-83.968l242.144 242.133333a42.666667 42.666667 0 0 0 60.341334-60.330667zM426.666667 725.333333c-164.949333 0-298.666667-133.717333-298.666667-298.666666s133.717333-298.666667 298.666667-298.666667c164.96 0 298.666667 133.717333 298.666666 298.666667S591.626667 725.333333 426.666667 725.333333z m170.666666-298.666666a42.666667 42.666667 0 0 1-42.666666 42.666666H298.666667a42.666667 42.666667 0 0 1 0-85.333333h256a42.666667 42.666667 0 0 1 42.666666 42.666667z" ></path></symbol><symbol id="vfe-undo" viewBox="0 0 1024 1024"><path d="M761.856 1024c113.728-206.048 132.896-520.32-313.856-509.824l0 253.824-384-384 384-384 0 248.384c534.976-13.952 594.56 472.224 313.856 775.616z" ></path></symbol><symbol id="vfe-redo" viewBox="0 0 1024 1024"><path d="M576 248.384V0l384 384-384 384v-253.824C129.248 503.68 148.416 817.952 262.144 1024-18.56 720.576 41.056 234.432 576 248.384z" ></path></symbol></svg>',o=(t=document.getElementsByTagName("script"))[t.length-1].getAttribute("data-injectcss");if(o&&!e.__iconfont__svg__cssinject__){e.__iconfont__svg__cssinject__=!0;try{document.write("<style>.svgfont {display: inline-block;width: 1em;height: 1em;fill: currentColor;vertical-align: -0.1em;font-size:16px;}</style>")}catch(t){console&&console.log(t)}}!function(t){if(document.addEventListener)if(~["complete","loaded","interactive"].indexOf(document.readyState))setTimeout(t,0);else{var n=function e(){document.removeEventListener("DOMContentLoaded",e,!1),t()};document.addEventListener("DOMContentLoaded",n,!1)}else document.attachEvent&&(i=t,a=e.document,r=!1,(d=function(){try{a.documentElement.doScroll("left")}catch(t){return void setTimeout(d,50)}o()})(),a.onreadystatechange=function(){"complete"==a.readyState&&(a.onreadystatechange=null,o())});function o(){r||(r=!0,i())}var i,a,r,d}((function(){var e,t,o,i,a,r;(e=document.createElement("div")).innerHTML=n,n=null,(t=e.getElementsByTagName("svg")[0])&&(t.setAttribute("aria-hidden","true"),t.style.position="absolute",t.style.width=0,t.style.height=0,t.style.overflow="hidden",o=t,(i=document.body).firstChild?(a=o,(r=i.firstChild).parentNode.insertBefore(a,r)):i.appendChild(o))}))}(window)},b526:function(e,t,n){var o,i,a;n("18a5"),n("6c57"),function(r,d){i=[t,n("5530"),n("159b"),n("c2a9"),n("ad39"),n("8c01")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a,r){"use strict";var d=n("4ea4").default;function l(e,n,o){var d,l=o.addGroup(),s=new r.Item({type:"anchor",group:l,capture:!1,index:e,isActived:!1,model:{style:(0,t.default)((0,t.default)((0,t.default)({},n),a.GraphStyle.anchorStyle),{},{cursor:i.default.cursor.hoverEffectiveAnchor})}});return s.index=e,s.isAnchor=!0,s.toFront(),s.hideHotpot=function(){d.remove()},s.showHotpot=function(){d=l.addShape("marker",{attrs:(0,t.default)((0,t.default)({},n),a.GraphStyle.anchorHotsoptStyle)}),d.toFront(),s.getKeyShape().toFront()},s.setActived=function(){s.update({style:(0,t.default)({},a.GraphStyle.anchorPointHoverStyle)})},s.clearActived=function(){s.update({style:(0,t.default)({},a.GraphStyle.anchorStyle)})},s.setHotspotActived=function(e){d&&(e?d.attr(a.GraphStyle.anchorHotsoptActivedStyle):d.attr(a.GraphStyle.anchorHotsoptStyle))},l}function s(e){e.Shape.registerFactory("anchor",{defaultShapeType:"marker"}),e.Shape.registerAnchor("single-anchor",e.Util.mix({},r.SingleShapeMixin,{itemType:"anchor",drawShape:function(e,t){var n=this.shapeType,o=this.getShapeStyle(e),i=t.addShape(n,{attrs:o});return i},setState:function(e,n,o){"active-anchor"===e&&(n?this.update({style:(0,t.default)({},a.GraphStyle.anchorPointHoverStyle)},o):this.update({style:(0,t.default)({},a.GraphStyle.anchorStyle)},o))}})),e.Shape.registerAnchor("marker",{shapeType:"marker"},"single-anchor")}Object.defineProperty(e,"__esModule",{value:!0}),e.createAnchor=l,e.registerAnchor=s,t=d(t),i=d(i),r.Item.prototype.anchorDebounceTimer=null,r.Item.prototype.getShowAnchorPoints=function(){return[[0,-.5],[-.5,0],[0,.5],[.5,0]]},r.Item.prototype.showAnchor=function(e){if(this.anchorDebounceTimer&&(clearTimeout(this.anchorDebounceTimer),this.anchorDebounceTimer=null),"node"===this.getType()){var t=this.getContainer();if(t.anchorShapes)t.anchorShapes.forEach((function(e){e.show(),e.toFront()}));else{t.anchorShapes=[],t.keyShape=this;var n=this.getBBox();this.getShowAnchorPoints().forEach((function(e,o){var i=l(o,{x:n.width*e[0],y:n.height*e[1]},t);t.anchorShapes.push(i)}))}e.paint()}},r.Item.prototype.hideAnchor=function(e){var t=this;!0!==e.get("onDragEdge")&&(this.anchorDebounceTimer||(this.anchorDebounceTimer=setTimeout((function(){try{if("node"!==t.getType())return;var n=t.getContainer();if(!n.anchorShapes)return;n.anchorShapes.forEach((function(e){return e.hide()})),t.anchorDebounceTimer=null,e.paint()}catch(o){}}),100)))},r.Item.prototype.clearAnchor=function(){try{var e=this.getContainer();e.anchorShapes&&e.anchorShapes.length>0&&e.anchorShapes.forEach((function(e){return e.remove()}))}catch(t){}}}))},b531:function(e,t,n){"use strict";var o=n("4775");n.o(o,"render")&&n.d(t,"render",(function(){return o["render"]}))},b7a4:function(e,t,n){"use strict";n.r(t);var o=n("96a9"),i=n("719e");for(var a in i)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return i[e]}))}(a);n("fcef");i["default"].render=o["render"],t["default"]=i["default"]},b87a:function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("5530"),n("159b"),n("7db0"),n("99af"),n("4de4"),n("a434"),n("c740"),n("ad39"),n("c2a9"),n("8c01")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a,r,d,l,s,c,u){"use strict";var f=n("4ea4").default;Object.defineProperty(e,"__esModule",{value:!0}),e.registerEdge=g,t=f(t),c=f(c);var h=u.G6.Util.deepMix,p=function(e,t){var n=[];return e.forEach((function(e){n.find((function(n){return n[t]===e[t]}))||n.push(e)})),n};function g(e){e.registerEdge("flow-polyline-round",{options:{style:(0,t.default)({},s.GraphStyle.default.defaultEdge.style),stateStyles:(0,t.default)({},s.GraphStyle.default.edgeStateStyles)},setState:function(t,n,o){var i=o.get("keyShape");if(i){var a=o.getStateStyle(t),r=this.getStateStyle(t,n,o),d=h({},r,a);if(n)i.attr(d);else{var l=o.getCurrentStatesStyle();e.Util.each(d,(function(e,t){l[t]||(l[t]=null)})),i.attr(l)}}},drawShape:function(e,t){this.group=t;var n=this.getShapeStyle(e),o=t.addShape("path",{className:"edge-shape",attrs:n});return o},drawLabel:function(e,t){var n=e.labelCfg||{},o=this.getLabelStyle(e,n,t),i=t.addShape("text",{attrs:o}),a=i.getBBox();return t.addShape("rect",{className:"edge-labelRect",attrs:{x:a.x-c.default.edgeLabelRectPadding/2,y:a.y-c.default.edgeLabelRectPadding/2,width:a.width+c.default.edgeLabelRectPadding,height:a.height+c.default.edgeLabelRectPadding,fill:"#fff",stroke:"#fff"}}),t.toBack(),i.toFront(),i},afterUpdate:function(e,t){var n=t.getContainer().findByClassName("edge-label"),o=t.getContainer().findByClassName("edge-labelRect");if(n){var i=n.getBBox();o.attr({x:i.x-c.default.edgeLabelRectPadding/2,y:i.y-c.default.edgeLabelRectPadding/2,width:i.width+c.default.edgeLabelRectPadding,height:i.height+c.default.edgeLabelRectPadding})}},getShapeStyle:function(e){e=this.getPathPoints(e);var n=e.startPoint,o=e.endPoint,i=this.getControlPoints(e),a=[n];i&&(a=a.concat(i)),a.push(o);var r=this.getPath(a),d=this.options.style;return d=e.reverse?(0,t.default)((0,t.default)({},d),{},{lineDash:[1,3]}):(0,t.default)((0,t.default)({},d),{},{lineDash:null}),(0,t.default)((0,t.default)({path:r},d),{},{endArrow:{path:"M 0,0 L -10,-4 S -8 0,-10 4 Z"}})},getPath:function(e){for(var t=[],n=0;n<e.length;n++){var o=e[n];if(0===n)t.push(["M",o.x,o.y]);else if(n===e.length-1)t.push(["L",o.x,o.y]);else{var i=e[n-1],a=e[n+1],r=5;(Math.abs(o.y-i.y)>r||Math.abs(o.x-i.x)>r)&&(i.x===o.x?t.push(["L",o.x,o.y>i.y?o.y-r:o.y+r]):i.y===o.y&&t.push(["L",o.x>i.x?o.x-r:o.x+r,o.y]));var d=Math.abs(o.y-a.y),l=Math.abs(o.x-a.x);d>0&&d<r?r=d:l>0&&l<r&&(r=l),i.x!==a.x&&a.x===o.x?t.push(["Q",o.x,o.y,o.x,o.y>a.y?o.y-r:o.y+r]):i.y!==a.y&&a.y===o.y&&t.push(["Q",o.x,o.y,o.x>a.x?o.x-r:o.x+r,o.y])}}return t},getControlPoints:function(e){return e.sourceNode?this.polylineFinding(e.sourceNode,e.targetNode,e.startPoint,e.endPoint,15):e.controlPoints},getExpandedBBox:function(e,t){return 0===e.width&&0===e.height?e:{centerX:e.centerX,centerY:e.centerY,minX:e.minX-t,minY:e.minY-t,maxX:e.maxX+t,maxY:e.maxY+t,height:e.height+2*t,width:e.width+2*t}},getExpandedPort:function(e,t){return Math.abs(t.x-e.centerX)/e.width>Math.abs(t.y-e.centerY)/e.height?{x:t.x>e.centerX?e.maxX:e.minX,y:t.y}:{x:t.x,y:t.y>e.centerY?e.maxY:e.minY}},combineBBoxes:function(e,t){var n=Math.min(e.minX,t.minX),o=Math.min(e.minY,t.minY),i=Math.max(e.maxX,t.maxX),a=Math.max(e.maxY,t.maxY);return{centerX:(n+i)/2,centerY:(o+a)/2,minX:n,minY:o,maxX:i,maxY:a,height:a-o,width:i-n}},getBBoxFromVertexes:function(e,t){var n=Math.min(e.x,t.x),o=Math.max(e.x,t.x),i=Math.min(e.y,t.y),a=Math.max(e.y,t.y);return{centerX:(n+o)/2,centerY:(i+a)/2,maxX:o,maxY:a,minX:n,minY:i,height:a-i,width:o-n}},vertexOfBBox:function(e){return[{x:e.minX,y:e.minY},{x:e.maxX,y:e.minY},{x:e.maxX,y:e.maxY},{x:e.minX,y:e.maxY}]},crossPointsByLineAndBBox:function(e,t){var n=[];return t.x<e.minX||t.x>e.maxX||(n=n.concat([{x:t.x,y:e.minY},{x:t.x,y:e.maxY}])),t.y<e.minY||t.y>e.maxY||(n=n.concat([{x:e.minX,y:t.y},{x:e.maxX,y:t.y}])),n},getConnectablePoints:function(e,t,n,o){var i=this,a=this.getBBoxFromVertexes(n,o),r=this.combineBBoxes(e,t),d=this.combineBBoxes(e,a),l=this.combineBBoxes(t,a),s=[];s=s.concat(this.vertexOfBBox(d),this.vertexOfBBox(l),this.vertexOfBBox(r));var c={x:r.centerX,y:r.centerY};return[r,d,l,a].forEach((function(e){s=s.concat(i.crossPointsByLineAndBBox(e,c))})),s.push({x:n.x,y:o.y}),s.push({x:o.x,y:n.y}),s},filterConnectablePoints:function(e,t){return e.filter((function(e){return e.x<=t.minX||e.x>=t.maxX||e.y<=t.minY||e.y>=t.maxY}))},AStar:function(e,t,n,o,i){var a,r=this,d=[t],l=[];e=p(this.fillId(e),"id"),e.push(n);var s=function(){var t=void 0;if(d.forEach((function(e,n){e.parent||(e.f=0),t||(t=e),e.f<t.f&&(t=e)})),t.x===n.x&&t.y===n.y)return a=t,"break";d.splice(d.findIndex((function(e){return e.x===t.x&&e.y===t.y})),1),l.push(t);var s=e.filter((function(e){return(e.x===t.x||e.y===t.y)&&!(e.x===t.x&&e.y===t.y)&&!r.crossBBox([o,i],t,e)}));s.forEach((function(e){var o=d.find((function(t){return t.x===e.x&&t.y===e.y})),a=r.getCost(e,t);if(l.find((function(t){return t.x===e.x&&t.y===e.y})));else if(o)e.g>a&&(e.parent=t,e.g=a,e.f=e.g+e.h);else{e.parent=t,e.g=a;var s=r.getCost(e,n);r.crossBBox([i],e,n)&&(s+=i.width/2+i.height/2),e.h=s,e.f=e.g+e.h,d.push(e)}}))};while(d.length>0){var c=s();if("break"===c)break}if(a){var u=[];u.push({x:a.x,y:a.y});while(a.parent)a=a.parent,u.push({x:a.x,y:a.y});return u.reverse()}return[]},crossBBox:function(e,t,n){for(var o=0;o<e.length;o++){var i=e[o];if(t.x===n.x&&i.minX<t.x&&i.maxX>t.x){if(t.y<i.maxY&&n.y>=i.maxY||n.y<i.maxY&&t.y>=i.maxY)return!0}else if(t.y===n.y&&i.minY<t.y&&i.maxY>t.y&&(t.x<i.maxX&&n.x>=i.maxX||n.x<i.maxX&&t.x>=i.maxX))return!0}return!1},getCost:function(e,t){return Math.abs(e.x-t.x)+Math.abs(e.y-t.y)},getPointBBox:function(e){return{centerX:e.x,centerY:e.y,minX:e.x,minY:e.y,maxX:e.x,maxY:e.y,height:0,width:0}},fillId:function(e){return e.forEach((function(e){e.id=e.x+"-"+e.y})),e},polylineFinding:function(e,t,n,o,i){var a=e&&e.getBBox()?e.getBBox():this.getPointBBox(n),r=t&&t.getBBox()?t.getBBox():this.getPointBBox(o),d=this.getExpandedBBox(a,i),l=this.getExpandedBBox(r,i),s=this.getExpandedPort(d,n),c=this.getExpandedPort(l,o),u=this.getConnectablePoints(d,l,s,c);u=this.filterConnectablePoints(u,d),u=this.filterConnectablePoints(u,l);var f=this.AStar(u,s,c,d,l);return f}},"polyline")}}))},c058:function(e,t){e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAMAAADyHTlpAAAAh1BMVEUAAAAnJycnJycmJiYoKCgmJiYrKysmJiYmJiYmJiYmJiYmJiYpKSk7OzswMDAmJiYmJiYmJiYmJiYmJiYnJycmJiYmJiYyMjImJiYnJyctLS0mJiYnJycoKCgmJiYoKCgoKCgoKCiAgIAnJycnJycnJycmJiYnJycmJiYmJiYnJycrKysmJiZIkMZuAAAALHRSTlMAxXj6JbQf6d7YzsoxBgruv6ynnpFyFA3yjxrjb2xXRkA8AvP14aaKfmRhKg14PrYAAAGISURBVDjLzZTZkoIwEEWREFZlEVBwHXVW5/z/941aaloI1jx6X6gOpyu5N4vzYvLXRbJUQay/x8/BTYxR6E4GwbcEAPWRhO8ALI8DpAswqr1LsfjRCpimFnAyBZI3MeIVQLzooydS1Z2xbQbR3DJ7s+31exHofccRqK0tuwDcx6EEaqvXnaKZPeQJiSjHItAKKonGILx/kZti1qCEMx9GonEEomphY6o11IPoDj5NVYA3iO4DAulfOYOok4OxueTj5mh00gHOn3J230ezu+oW1Rip9T0uc3YDwuuZyTGKrusvpZOY9+drNcFqWAyjIQdTfMPPIPoLWuw56EHUhZWcAyX2oCQyxSQE/7GzECdkLfpq+eukdAlb+7uQnVOVOkLmWcg0hrJ/CyO/T2qIUkt7sOvOHgOt09UiAlXJazSpMwDcHjvXQNPu9tfk3RCIWiu7dxuAIJ9WZX7moEwdV7Ii0EohVFxSkqzUfPMZAHDQq3MgNlba8cfevPtErpynkmzm/FOrrHVeQH8ORzTuxiL3kQAAAABJRU5ErkJggg=="},c1c1:function(e,t,n){"use strict";var o=n("d5e3");n.o(o,"render")&&n.d(t,"render",(function(){return o["render"]}))},c2a9:function(e,t,n){var o,i,a;n("6c57"),function(n,r){i=[t],o=r,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var t={nodeActivedOutterStyle:{lineWidth:0},groupSelectedOutterStyle:{stroke:"#E0F0FF",lineWidth:2},nodeSelectedOutterStyle:{stroke:"#E0F0FF",lineWidth:2},edgeActivedStyle:{stroke:"#1890FF",strokeOpacity:.92},nodeActivedStyle:{fill:"#F3F9FF",stroke:"#1890FF"},groupActivedStyle:{stroke:"#1890FF"},edgeSelectedStyle:{lineWidth:2,strokeOpacity:.92,stroke:"#A3B1BF"},nodeSelectedStyle:{fill:"#F3F9FF",stroke:"#1890FF",fillOpacity:.4},groupSelectedStyle:{stroke:"#1890FF",fillOpacity:.92},nodeStyle:{stroke:"#CED4D9",fill:"#FFFFFF",shadowOffsetX:0,shadowOffsetY:4,shadowBlur:10,shadowColor:"rgba(13, 26, 38, 0.08)",lineWidth:1,radius:4,strokeOpacity:.7},edgeStyle:{stroke:"#A3B1BF",strokeOpacity:.92,lineWidth:1,lineAppendWidth:8,endArrow:!0},groupBackgroundPadding:[40,10,10,10],groupLabelOffsetX:10,groupLabelOffsetY:10,edgeLabelStyle:{fill:"#666",textAlign:"center",textBaseline:"middle"},edgeLabelRectPadding:4,edgeLabelRectStyle:{fill:"white"},nodeLabelStyle:{fill:"#666",textAlign:"center",textBaseline:"middle"},groupStyle:{stroke:"#CED4D9",radius:4},groupLabelStyle:{fill:"#666",textAlign:"left",textBaseline:"top"},multiSelectRectStyle:{fill:"#1890FF",fillOpacity:.08,stroke:"#1890FF",opacity:.1},dragNodeHoverToGroupStyle:{stroke:"#1890FF",lineWidth:2},dragNodeLeaveFromGroupStyle:{stroke:"#BAE7FF",lineWidth:2},anchorPointStyle:{radius:3.5,fill:"#fff",stroke:"#1890FF",lineAppendWidth:12},anchorHotsoptStyle:{radius:12,fill:"#1890FF",fillOpacity:.25},anchorHotsoptActivedStyle:{radius:14},anchorPointHoverStyle:{radius:4,fill:"#1890FF",fillOpacity:1,stroke:"#1890FF"},nodeControlPointStyle:{radius:4,fill:"#fff",shadowBlur:4,shadowColor:"#666"},edgeControlPointStyle:{radius:6,symbol:"square",lineAppendWidth:6,fillOpacity:0,strokeOpacity:0},nodeSelectedBoxStyle:{stroke:"#C2C2C2"},cursor:{panningCanvas:"-webkit-grabbing",beforePanCanvas:"-webkit-grab",hoverNode:"move",hoverEffectiveAnchor:"crosshair",hoverEdge:"default",hoverGroup:"move",hoverUnEffectiveAnchor:"default",hoverEdgeControllPoint:"crosshair",multiSelect:"crosshair"},nodeDelegationStyle:{stroke:"#1890FF",fill:"#1890FF",fillOpacity:.08,lineDash:[4,4],radius:4,lineWidth:1},edgeDelegationStyle:{stroke:"#1890FF",lineDash:[4,4],lineWidth:1}};e.default=t}))},c31f:function(e,t,n){"use strict";n.r(t);var o=n("4a62"),i=n.n(o);for(var a in n.d(t,"default",(function(){return i.a})),o)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return o[e]}))}(a)},c3b9:function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("7a23"),n("a9e3"),n("ed09"),n("15a4"),n("8e2d"),n("73ec")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,n,o,i,a,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var d={name:"vue-flow-editor",props:{data:{type:Object},grid:{type:Boolean,default:!0},miniMap:{type:Boolean,default:!1},disabledDragEdge:{type:Boolean},disabledUndo:{type:Boolean},editorTitle:{type:String},height:{type:[String,Number],default:"100%"},toolbarHeight:{type:[String,Number],default:"56"},menuWidth:{type:[String,Number],default:"250"},modelWidth:{type:[String,Number],default:"500px"},onRef:{type:Function},toolbarButtonHandler:{type:Function},loading:{type:Boolean},multipleSelect:{type:Boolean,default:!0},beforeDelete:{type:Function},afterDelete:{type:Function},beforeAdd:{type:Function},afterAdd:{type:Function},activityConfig:{type:Object}},setup:function(e,n){var o=(0,a.useEditorStyles)(e),i=(0,a.useCanvasProps)(e),d=(0,t.computed)((function(){return{width:(0,r.suffixSize)(e.modelWidth)}})),l=(0,t.reactive)({graph:null,canvasProps:i,props:e,canvasKey:0,showModel:!1,showPreview:!1,data:null,refreshCanvas:function(){l.canvasKey++},setGraph:function(e){l.graph=e,s.init(e),e.on("node:dblclick",(function(e){n.emit("dblclick-node",e)})),e.on("edge:dblclick",(function(e){n.emit("dblclick-edge",e)})),e.on("select-change",(function(e){n.emit("select-change",e)}))}}),s=(0,a.useEditorCommander)(l),c={props:e,editorState:l,commander:s,openModel:function(){l.showModel=!0},closeModel:function(){l.showModel=!1},updateModel:function(t){(0,r.formatNodeModel)(t,e.activityConfig),s.commands.update(t)},openPreview:function(){l.data=l.graph.save(),l.showPreview=!0},read:function(e){l.graph?l.graph.read(e):console.warn("graph is not initialized")}};(0,t.provide)(a.VueFlowEditorProvider,c),e.onRef&&e.onRef(c);var u=(0,t.getCurrentInstance)();return Object.assign(u,c),(0,t.onBeforeUnmount)((function(){s.destroy(),e.onRef&&e.onRef(null)})),function(){return(0,t.withDirectives)((0,t.createVNode)("div",{class:"vue-flow-editor",style:o.value.root},[(0,t.createVNode)("div",{class:"vue-flow-editor-left",style:o.value.left},[(0,t.createVNode)((0,t.resolveComponent)("vue-flow-editor-menu"),null,{default:function(){return[!!n.slots.menu&&n.slots.menu()]}})]),(0,t.createVNode)("div",{class:"vue-flow-editor-right"},[(0,t.createVNode)((0,t.resolveComponent)("vue-flow-editor-toolbar"),{style:o.value.toolbar,canvasProps:i,toolbarButtonHandler:e.toolbarButtonHandler},{default:function(){return[!!n.slots.toolbar&&n.slots.toolbar()]}}),(0,t.createVNode)((0,t.resolveComponent)("vue-flow-editor-canvas"),{data:i.data,grid:i.grid,miniMap:i.miniMap,key:String(l.canvasKey)+String(e.multipleSelect)+String(e.disabledDragEdge)},null)]),(0,t.createVNode)((0,t.resolveComponent)("transition"),{name:"vue-flow-editor-transition"},{default:function(){return[(0,t.withDirectives)((0,t.createVNode)("div",{class:"vue-flow-editor-model"},[(0,t.createVNode)("div",{class:"vue-flow-editor-model-body",style:d.value},[(0,t.createVNode)("div",{class:"vue-flow-editor-model-head",style:o.value.toolbar},[(0,t.createVNode)("i",{class:"el-icon-close",onClick:c.closeModel},null)]),(0,t.createVNode)("div",{class:"vue-flow-editor-model-content"},[!!n.slots.model&&n.slots.model()]),!!n.slots.foot&&(0,t.createVNode)("div",{class:"vue-flow-editor-model-foot"},[n.slots.foot()])])]),[[t.vShow,l.showModel]])]}}),(0,t.createVNode)((0,t.resolveComponent)("vue-flow-editor-preview"),{value:l.showPreview,onInput:function(e){return l.showPreview=e},data:l.data},null)]),[[(0,t.resolveDirective)("loading"),e.loading]])}}};e.default=d}))},c9b6:function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("7a23"),n("ed09"),n("8e2d"),n("73ec")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var r=n("0f81"),d={name:"vue-flow-editor-menu",setup:function(e,n){var o=(0,t.inject)(i.VueFlowEditorProvider),d=o.editorState,l=o.props,s=(0,t.computed)((function(){return{height:(0,a.suffixSize)(d.props.toolbarHeight)}}));return function(){return(0,t.createVNode)("div",{class:"vue-flow-editor-menu"},[(0,t.createVNode)("div",{class:"vue-flow-editor-menu-header",style:s.value},[l.editorTitle||(0,t.createVNode)("img",{src:r,alt:"vue-flow-editor"},null)]),(0,t.createVNode)("div",{class:"vue-flow-editor-menu-list"},[(0,t.createVNode)("div",{class:"vue-flow-editor-menu-list-content"},[!!n.slots.default&&n.slots.default()])])])}}};e.default=d}))},d1f9:function(e,t){e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAMAAADyHTlpAAAAhFBMVEUAAAAmJiYpKSktLS1SUlImJiYmJiYmJiYmJiYtLS0rKyswMDA8PDwmJiYmJiYnJycnJycoKCgmJiYnJycmJiYmJiYmJiYmJiYmJiYmJiYtLS0nJycmJiYmJiYmJiYnJycnJycnJycnJycnJycmJiYpKSkpKSkpKSkmJiYnJycrKysmJiZrLkVEAAAAK3RSTlMAmUsNA8vmwbQWEQoH3Kd0VSn99Oziz8Z7ayLf1tS5r46HbmBQQS4coFwk5+kjJQAAAOlJREFUOMvt09kSgjAMBVC07MimAooKyuaS//8/7/gWWmeiz9zHzGmamabWkn9jPzOpTIiOIrlpiegmkZEPWYYCqTxIRyQryEoJZOhAehIZXCCbSCDvMaS/Ecj6BNlKZF5AxsOaZZwCW6dnMmef9GpGYwa4PnA87VE8rXge/uWD3ZEP65JpT4K+RH2bsuKrQA0lLZnepI6/LFXgoe/AH+EMezXYqMK8ih8vYVe2bsMCPQwLkxhsRrSLtIU1LwJ6ZPOxGtiDTlPcpn0u30hzIkf/sl1nGFYRuZYwO9rKKUmpR46U1mluLfkpbyBhID4w4NBpAAAAAElFTkSuQmCC"},d4c5:function(e,t,n){"use strict";n.r(t);var o=n("6b1b"),i=n.n(o);for(var a in n.d(t,"default",(function(){return i.a})),o)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return o[e]}))}(a)},d5e3:function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("7a23")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.render=o;var n={key:0,class:"el-icon-arrow-right"};function o(e,o,i,a,r,d){return(0,t.openBlock)(),(0,t.createElementBlock)("div",{class:"vue-flow-edit-menu",draggable:"true",onDragstart:o[0]||(o[0]=function(){return d.onDragstart&&d.onDragstart.apply(d,arguments)}),onDragend:o[1]||(o[1]=function(){return d.onDragend&&d.onDragend.apply(d,arguments)})},[(0,t.renderSlot)(e.$slots,"content",{model:i.model},(function(){return[(0,t.createElementVNode)("span",null,(0,t.toDisplayString)(i.model.label),1)]})),i.hideArrow?(0,t.createCommentVNode)("",!0):((0,t.openBlock)(),(0,t.createElementBlock)("i",n))],32)}}))},d64a:function(e,t){e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAMAAADyHTlpAAAAgVBMVEUAAAAnJycmJiYmJiYmJiYxMTEmJiY9PT0mJiYmJiYqKiorKysnJycmJiYnJycqKioqKionJycmJiYmJiYmJiYmJiYmJiYmJiYnJycmJiYmJiYoKCgoKCgoKCgmJiaAgIAmJiYnJycnJycmJiYmJiYmJiYnJycnJycpKSkrKysmJiYLGVcwAAAAKnRSTlMAd/rvywypB+myHhrfuJEoJIzj2tXPpHFtZldGQDwUAvPhxsGafnthMi8NdQq9AAABXklEQVQ4y82T13LCMBBFVVxxwaZXmxrg/P8HJkMyyBaSJ4+ct6s5o12tJPFhjFZRMFHJvLg+hsVNgCGXsVfc/YrqGEwPAExuHvML4CTHz5CtUwVEoUOMIyDYCUP1XMne1QjU0lrbapiFjup6K2yqKaStdSJQW9fsEpD9pQCWwsVeoZvePCEQbkoorU13HrXRqLDTEZyEjxo2Jq1AetU9LExKYexV24Sk26oSfs5g3s2E44AagbldRTCglnB/hYTpgLqA6hXmHAbUAuJuyPxqjjbhCmuvOYbCpAekXlX298lRlceM8353EiKPurQqxhPYOs2RRvUv/Qba1UI4h8v77U1H72bq+IdhAMnerj4HamGTzUCVTfcASw2AdBZD1/v2b/IyB2a1022lBkjOUbkocgB1CYV0uqIpFR3S55Q8rgg3iwQAXayzn2xcJ/HoXsXWK2Al/FiuFv9kpWvxAXwDfwkohcnkmAEAAAAASUVORK5CYII="},e14a:function(e,t,n){var o,i,a;n("6c57"),function(n,r){i=[t],o=r,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.hoverItemActive=n,e.HOVER_STATE_NAME=void 0;var t="hover";function n(e){e.registerBehavior("hover-item-active",{getEvents:function(){return{"node:mouseenter":"onEnter","node:mouseleave":"onLeave","edge:mouseenter":"onEnter","edge:mouseleave":"onLeave"}},onEnter:function(e){var n=this,o=e.item,i=n.graph;i.setItemState(o,t,!0)},onLeave:function(e){var n=this,o=e.item;if(o){var i=n.graph;i.setItemState(o,t,!1)}}})}e.HOVER_STATE_NAME=t}))},ea19:function(e,t,n){"use strict";n("870c")},ecec:function(e,t,n){var o,i,a;n("6c57"),function(n,r){i=[t],o=r,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e){"use strict";function t(e){e.registerBehavior("hover-anchor-active",{getEvents:function(){return{"anchor:mouseenter":"onEnter","anchor:mouseleave":"onLeave","node:mouseenter":"onEnterNode","node:mouseleave":"onLeaveNode"}},onEnter:function(e){var t=e.item,n=t.getContainer()._cfg.parent;n&&(n.keyShape.showAnchor(this.graph),t.setState("active-anchor",!0))},onLeave:function(e){var t=e.item,n=t.getContainer()._cfg.parent;n&&(t.getContainer()._cfg.parent.keyShape.hideAnchor(this.graph),t.setState("active-anchor",!1))},onEnterNode:function(e){var t=e.item;t.showAnchor(this.graph)},onLeaveNode:function(e){try{var t=e.item;t.hideAnchor(this.graph)}catch(e){}}})}Object.defineProperty(e,"__esModule",{value:!0}),e.hoverAnchorActive=t}))},fcef:function(e,t,n){"use strict";n("277b")},ffb4:function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("2909"),n("159b"),n("99af"),n("b0c0"),n("0a5f"),n("3617"),n("c3b9"),n("823a"),n("2339"),n("73ec")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a,r,d,l,s,c,u){"use strict";var f=n("4ea4").default;Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,t=f(t),l=f(l),s=f(s),c=f(c);var h={VueFlowEditor:l.default,VueFLowEditMenu:s.default,VueFLowEditMenuGroup:c.default,formatPos:u.formatPos,install:function(e){[].concat((0,t.default)(d.externalComponents),(0,t.default)(r.EditorComponent)).forEach((function(t){e.component(t.name,t)}))}};e.default=h}))}});
//# sourceMappingURL=index.e8a5c5ea.js.map
\ No newline at end of file
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
No preview for this file type
No preview for this file type
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
import vca from '@vue/composition-api'
export default vca
export * from '@vue/composition-api'
\ No newline at end of file
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('vue')) :
typeof define === 'function' && define.amd ? define(['exports', 'vue'], factory) :
(global = global || self, factory(global.vueCompositionApi = {}, global.Vue));
}(this, function (exports, Vue) { 'use strict';
Vue = Vue && Vue.hasOwnProperty('default') ? Vue['default'] : Vue;
var toString = function (x) { return Object.prototype.toString.call(x); };
function isNative(Ctor) {
return typeof Ctor === 'function' && /native code/.test(Ctor.toString());
}
var hasSymbol = typeof Symbol !== 'undefined' && isNative(Symbol) &&
typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);
var noopFn = function (_) { return _; };
var sharedPropertyDefinition = {
enumerable: true,
configurable: true,
get: noopFn,
set: noopFn,
};
function proxy(target, key, _a) {
var get = _a.get, set = _a.set;
sharedPropertyDefinition.get = get || noopFn;
sharedPropertyDefinition.set = set || noopFn;
Object.defineProperty(target, key, sharedPropertyDefinition);
}
function def(obj, key, val, enumerable) {
Object.defineProperty(obj, key, {
value: val,
enumerable: !!enumerable,
writable: true,
configurable: true,
});
}
var hasOwnProperty = Object.prototype.hasOwnProperty;
function hasOwn(obj, key) {
return hasOwnProperty.call(obj, key);
}
function assert(condition, msg) {
if (!condition)
throw new Error("[vue-composition-api] " + msg);
}
function isArray(x) {
return Array.isArray(x);
}
function isPlainObject(x) {
return toString(x) === '[object Object]';
}
function isFunction(x) {
return typeof x === 'function';
}
function warn(msg, vm) {
Vue.util.warn(msg, vm);
}
function logError(err, vm, info) {
{
warn("Error in " + info + ": \"" + err.toString() + "\"", vm);
}
if (typeof window !== 'undefined' && typeof console !== 'undefined') {
console.error(err);
}
else {
throw err;
}
}
var currentVue = null;
var currentVM = null;
function getCurrentVue() {
{
assert(currentVue, "must call Vue.use(plugin) before using any function.");
}
return currentVue;
}
function setCurrentVue(vue) {
currentVue = vue;
}
function getCurrentVM() {
return currentVM;
}
function setCurrentVM(vm) {
currentVM = vm;
}
function ensureCurrentVMInFn(hook) {
var vm = getCurrentVM();
{
assert(vm, "\"" + hook + "\" get called outside of \"setup()\"");
}
return vm;
}
function defineComponentInstance(Ctor, options) {
if (options === void 0) { options = {}; }
var silent = Ctor.config.silent;
Ctor.config.silent = true;
var vm = new Ctor(options);
Ctor.config.silent = silent;
return vm;
}
function isComponentInstance(obj) {
return currentVue && obj instanceof currentVue;
}
function createSlotProxy(vm, slotName) {
return function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
if (!vm.$scopedSlots[slotName]) {
return warn("slots." + slotName + "() got called outside of the \"render()\" scope", vm);
}
return vm.$scopedSlots[slotName].apply(vm, args);
};
}
function resolveSlots(slots, normalSlots) {
var res;
if (!slots) {
res = {};
}
else if (slots._normalized) {
// fast path 1: child component re-render only, parent did not change
return slots._normalized;
}
else {
res = {};
for (var key in slots) {
if (slots[key] && key[0] !== '$') {
res[key] = true;
}
}
}
// expose normal slots on scopedSlots
for (var key in normalSlots) {
if (!(key in res)) {
res[key] = true;
}
}
return res;
}
function createSymbol(name) {
return hasSymbol ? Symbol.for(name) : name;
}
var WatcherPreFlushQueueKey = createSymbol('vfa.key.preFlushQueue');
var WatcherPostFlushQueueKey = createSymbol('vfa.key.postFlushQueue');
var AccessControlIdentifierKey = createSymbol('vfa.key.accessControlIdentifier');
var ReactiveIdentifierKey = createSymbol('vfa.key.reactiveIdentifier');
var NonReactiveIdentifierKey = createSymbol('vfa.key.nonReactiveIdentifier');
// must be a string, symbol key is ignored in reactive
var RefKey = 'vfa.key.refKey';
var RefImpl = /** @class */ (function () {
function RefImpl(_a) {
var get = _a.get, set = _a.set;
proxy(this, 'value', {
get: get,
set: set,
});
}
return RefImpl;
}());
function createRef(options) {
// seal the ref, this could prevent ref from being observed
// It's safe to seal the ref, since we really shoulnd't extend it.
// related issues: #79
return Object.seal(new RefImpl(options));
}
// implementation
function ref(raw) {
// if (isRef(raw)) {
// return {} as any;
// }
var _a;
var value = reactive((_a = {}, _a[RefKey] = raw, _a));
return createRef({
get: function () { return value[RefKey]; },
set: function (v) { return (value[RefKey] = v); },
});
}
function isRef(value) {
return value instanceof RefImpl;
}
function toRefs(obj) {
if (!isPlainObject(obj))
return obj;
var res = {};
Object.keys(obj).forEach(function (key) {
var val = obj[key];
// use ref to proxy the property
if (!isRef(val)) {
val = createRef({
get: function () { return obj[key]; },
set: function (v) { return (obj[key] = v); },
});
}
// todo
res[key] = val;
});
return res;
}
var AccessControlIdentifier = {};
var ReactiveIdentifier = {};
var NonReactiveIdentifier = {};
function isNonReactive(obj) {
return (hasOwn(obj, NonReactiveIdentifierKey) && obj[NonReactiveIdentifierKey] === NonReactiveIdentifier);
}
function isReactive(obj) {
return hasOwn(obj, ReactiveIdentifierKey) && obj[ReactiveIdentifierKey] === ReactiveIdentifier;
}
/**
* Proxing property access of target.
* We can do unwrapping and other things here.
*/
function setupAccessControl(target) {
if (!isPlainObject(target) ||
isNonReactive(target) ||
Array.isArray(target) ||
isRef(target) ||
isComponentInstance(target)) {
return;
}
if (hasOwn(target, AccessControlIdentifierKey) &&
target[AccessControlIdentifierKey] === AccessControlIdentifier) {
return;
}
if (Object.isExtensible(target)) {
def(target, AccessControlIdentifierKey, AccessControlIdentifier);
}
var keys = Object.keys(target);
for (var i = 0; i < keys.length; i++) {
defineAccessControl(target, keys[i]);
}
}
/**
* Auto unwrapping when access property
*/
function defineAccessControl(target, key, val) {
if (key === '__ob__')
return;
var getter;
var setter;
var property = Object.getOwnPropertyDescriptor(target, key);
if (property) {
if (property.configurable === false) {
return;
}
getter = property.get;
setter = property.set;
if ((!getter || setter) /* not only have getter */ && arguments.length === 2) {
val = target[key];
}
}
setupAccessControl(val);
Object.defineProperty(target, key, {
enumerable: true,
configurable: true,
get: function getterHandler() {
var value = getter ? getter.call(target) : val;
// if the key is equal to RefKey, skip the unwrap logic
if (key !== RefKey && isRef(value)) {
return value.value;
}
else {
return value;
}
},
set: function setterHandler(newVal) {
if (getter && !setter)
return;
var value = getter ? getter.call(target) : val;
// If the key is equal to RefKey, skip the unwrap logic
// If and only if "value" is ref and "newVal" is not a ref,
// the assignment should be proxied to "value" ref.
if (key !== RefKey && isRef(value) && !isRef(newVal)) {
value.value = newVal;
}
else if (setter) {
setter.call(target, newVal);
}
else {
val = newVal;
}
setupAccessControl(newVal);
},
});
}
function observe(obj) {
var Vue = getCurrentVue();
var observed;
if (Vue.observable) {
observed = Vue.observable(obj);
}
else {
var vm = defineComponentInstance(Vue, {
data: {
$$state: obj,
},
});
observed = vm._data.$$state;
}
return observed;
}
/**
* Make obj reactivity
*/
function reactive(obj) {
if (!obj) {
warn('"reactive()" is called without provide an "object".');
// @ts-ignore
return;
}
if (!isPlainObject(obj) || isReactive(obj) || isNonReactive(obj) || !Object.isExtensible(obj)) {
return obj;
}
var observed = observe(obj);
def(observed, ReactiveIdentifierKey, ReactiveIdentifier);
setupAccessControl(observed);
return observed;
}
/**
* Make sure obj can't be a reactive
*/
function nonReactive(obj) {
if (!isPlainObject(obj)) {
return obj;
}
// set the vue observable flag at obj
def(obj, '__ob__', observe({}).__ob__);
// mark as nonReactive
def(obj, NonReactiveIdentifierKey, NonReactiveIdentifier);
return obj;
}
function isUndef(v) {
return v === undefined || v === null;
}
function isPrimitive(value) {
return (typeof value === 'string' ||
typeof value === 'number' ||
// $flow-disable-line
typeof value === 'symbol' ||
typeof value === 'boolean');
}
function isValidArrayIndex(val) {
var n = parseFloat(String(val));
return n >= 0 && Math.floor(n) === n && isFinite(val);
}
/**
* Set a property on an object. Adds the new property, triggers change
* notification and intercept it's subsequent access if the property doesn't
* already exist.
*/
function set(target, key, val) {
var Vue = getCurrentVue();
var _a = Vue.util, warn = _a.warn, defineReactive = _a.defineReactive;
if (isUndef(target) || isPrimitive(target)) {
warn("Cannot set reactive property on undefined, null, or primitive value: " + target);
}
if (isArray(target) && isValidArrayIndex(key)) {
target.length = Math.max(target.length, key);
target.splice(key, 1, val);
return val;
}
if (key in target && !(key in Object.prototype)) {
target[key] = val;
return val;
}
var ob = target.__ob__;
if (target._isVue || (ob && ob.vmCount)) {
warn('Avoid adding reactive properties to a Vue instance or its root $data ' +
'at runtime - declare it upfront in the data option.');
return val;
}
if (!ob) {
target[key] = val;
return val;
}
defineReactive(ob.value, key, val);
// IMPORTANT: define access control before trigger watcher
defineAccessControl(target, key, val);
ob.dep.notify();
return val;
}
/**
* Helper that recursively merges two data objects together.
*/
function mergeData(from, to) {
if (!from)
return to;
var key;
var toVal;
var fromVal;
var keys = hasSymbol ? Reflect.ownKeys(from) : Object.keys(from);
for (var i = 0; i < keys.length; i++) {
key = keys[i];
// in case the object is already observed...
if (key === '__ob__')
continue;
toVal = to[key];
fromVal = from[key];
if (!hasOwn(to, key)) {
to[key] = fromVal;
}
else if (toVal !== fromVal &&
(isPlainObject(toVal) && !isRef(toVal)) &&
(isPlainObject(fromVal) && !isRef(fromVal))) {
mergeData(fromVal, toVal);
}
}
return to;
}
function install(Vue, _install) {
if (currentVue && currentVue === Vue) {
{
assert(false, 'already installed. Vue.use(plugin) should be called only once');
}
return;
}
Vue.config.optionMergeStrategies.setup = function (parent, child) {
return function mergedSetupFn(props, context) {
return mergeData(typeof parent === 'function' ? parent(props, context) || {} : {}, typeof child === 'function' ? child(props, context) || {} : {});
};
};
setCurrentVue(Vue);
_install(Vue);
}
/*! *****************************************************************************
Copyright (c) Microsoft Corporation. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
this file except in compliance with the License. You may obtain a copy of the
License at http://www.apache.org/licenses/LICENSE-2.0
THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
MERCHANTABLITY OR NON-INFRINGEMENT.
See the Apache Version 2.0 License for specific language governing permissions
and limitations under the License.
***************************************************************************** */
var __assign = function() {
__assign = Object.assign || function __assign(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
function __read(o, n) {
var m = typeof Symbol === "function" && o[Symbol.iterator];
if (!m) return o;
var i = m.call(o), r, ar = [], e;
try {
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
}
catch (error) { e = { error: error }; }
finally {
try {
if (r && !r.done && (m = i["return"])) m.call(i);
}
finally { if (e) throw e.error; }
}
return ar;
}
function __spread() {
for (var ar = [], i = 0; i < arguments.length; i++)
ar = ar.concat(__read(arguments[i]));
return ar;
}
function set$1(vm, key, value) {
var state = (vm.__secret_vfa_state__ = vm.__secret_vfa_state__ || {});
state[key] = value;
}
function get(vm, key) {
return (vm.__secret_vfa_state__ || {})[key];
}
var vmStateManager = {
set: set$1,
get: get,
};
function asVmProperty(vm, propName, propValue) {
var props = vm.$options.props;
if (!(propName in vm) && !(props && hasOwn(props, propName))) {
proxy(vm, propName, {
get: function () { return propValue.value; },
set: function (val) {
propValue.value = val;
},
});
{
// expose binding to Vue Devtool as a data property
// delay this until state has been resolved to prevent repeated works
vm.$nextTick(function () {
proxy(vm._data, propName, {
get: function () { return propValue.value; },
set: function (val) {
propValue.value = val;
},
});
});
}
}
else {
if (props && hasOwn(props, propName)) {
warn("The setup binding property \"" + propName + "\" is already declared as a prop.", vm);
}
else {
warn("The setup binding property \"" + propName + "\" is already declared.", vm);
}
}
}
function updateTemplateRef(vm) {
var rawBindings = vmStateManager.get(vm, 'rawBindings') || {};
if (!rawBindings || !Object.keys(rawBindings).length)
return;
var refs = vm.$refs;
var oldRefKeys = vmStateManager.get(vm, 'refs') || [];
for (var index = 0; index < oldRefKeys.length; index++) {
var key = oldRefKeys[index];
var setupValue = rawBindings[key];
if (!refs[key] && setupValue && isRef(setupValue)) {
setupValue.value = null;
}
}
var newKeys = Object.keys(refs);
var validNewKeys = [];
for (var index = 0; index < newKeys.length; index++) {
var key = newKeys[index];
var setupValue = rawBindings[key];
if (refs[key] && setupValue && isRef(setupValue)) {
setupValue.value = refs[key];
validNewKeys.push(key);
}
}
vmStateManager.set(vm, 'refs', validNewKeys);
}
function resolveScopedSlots(vm, slotsProxy) {
var parentVode = vm.$options._parentVnode;
if (!parentVode)
return;
var prevSlots = vmStateManager.get(vm, 'slots') || [];
var curSlots = resolveSlots(parentVode.data.scopedSlots, vm.$slots);
// remove staled slots
for (var index = 0; index < prevSlots.length; index++) {
var key = prevSlots[index];
if (!curSlots[key]) {
delete slotsProxy[key];
}
}
// proxy fresh slots
var slotNames = Object.keys(curSlots);
for (var index = 0; index < slotNames.length; index++) {
var key = slotNames[index];
if (!slotsProxy[key]) {
slotsProxy[key] = createSlotProxy(vm, key);
}
}
vmStateManager.set(vm, 'slots', slotNames);
}
function activateCurrentInstance(vm, fn, onError) {
var preVm = getCurrentVM();
setCurrentVM(vm);
try {
return fn(vm);
}
catch (err) {
if (onError) {
onError(err);
}
else {
throw err;
}
}
finally {
setCurrentVM(preVm);
}
}
function mixin(Vue) {
Vue.mixin({
beforeCreate: functionApiInit,
mounted: function () {
updateTemplateRef(this);
},
updated: function () {
updateTemplateRef(this);
},
});
/**
* Vuex init hook, injected into each instances init hooks list.
*/
function functionApiInit() {
var vm = this;
var $options = vm.$options;
var setup = $options.setup, render = $options.render;
if (render) {
// keep currentInstance accessible for createElement
$options.render = function () {
var _this = this;
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
return activateCurrentInstance(vm, function () { return render.apply(_this, args); });
};
}
if (!setup) {
return;
}
if (typeof setup !== 'function') {
{
warn('The "setup" option should be a function that returns a object in component definitions.', vm);
}
return;
}
var data = $options.data;
// wrapper the data option, so we can invoke setup before data get resolved
$options.data = function wrappedData() {
initSetup(vm, vm.$props);
return typeof data === 'function'
? data.call(vm, vm)
: data || {};
};
}
function initSetup(vm, props) {
if (props === void 0) { props = {}; }
var setup = vm.$options.setup;
var ctx = createSetupContext(vm);
// resolve scopedSlots and slots to functions
resolveScopedSlots(vm, ctx.slots);
var binding;
activateCurrentInstance(vm, function () {
binding = setup(props, ctx);
});
if (!binding)
return;
if (isFunction(binding)) {
// keep typescript happy with the binding type.
var bindingFunc_1 = binding;
// keep currentInstance accessible for createElement
vm.$options.render = function () {
resolveScopedSlots(vm, ctx.slots);
return activateCurrentInstance(vm, function () { return bindingFunc_1(); });
};
return;
}
if (isPlainObject(binding)) {
var bindingObj_1 = binding;
vmStateManager.set(vm, 'rawBindings', binding);
Object.keys(binding).forEach(function (name) {
var bindingValue = bindingObj_1[name];
// only make primitive value reactive
if (!isRef(bindingValue)) {
if (isReactive(bindingValue)) {
bindingValue = ref(bindingValue);
}
else {
// a non-reactive should not don't get reactivity
bindingValue = ref(nonReactive(bindingValue));
}
}
asVmProperty(vm, name, bindingValue);
});
return;
}
{
assert(false, "\"setup\" must return a \"Object\" or a \"Function\", got \"" + Object.prototype.toString
.call(binding)
.slice(8, -1) + "\"");
}
}
function createSetupContext(vm) {
var ctx = {
slots: {},
};
var props = [
'root',
'parent',
'refs',
'attrs',
'listeners',
'isServer',
'ssrContext',
];
var methodReturnVoid = ['emit'];
props.forEach(function (key) {
var _a;
var targetKey;
var srcKey;
if (Array.isArray(key)) {
_a = __read(key, 2), targetKey = _a[0], srcKey = _a[1];
}
else {
targetKey = srcKey = key;
}
srcKey = "$" + srcKey;
proxy(ctx, targetKey, {
get: function () { return vm[srcKey]; },
set: function () {
warn("Cannot assign to '" + targetKey + "' because it is a read-only property", vm);
},
});
});
methodReturnVoid.forEach(function (key) {
var srcKey = "$" + key;
proxy(ctx, key, {
get: function () {
return function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
var fn = vm[srcKey];
fn.apply(vm, args);
};
},
});
});
return ctx;
}
}
var fallbackCreateElement;
var createElement = function createElement() {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
if (!currentVM) {
warn('`createElement()` has been called outside of render function.');
if (!fallbackCreateElement) {
fallbackCreateElement = defineComponentInstance(getCurrentVue()).$createElement;
}
return fallbackCreateElement.apply(fallbackCreateElement, args);
}
return currentVM.$createElement.apply(currentVM, args);
};
// implementation, close to no-op
function defineComponent(options) {
return options;
}
// implementation, deferring to defineComponent, but logging a warning in dev mode
function createComponent(options) {
{
Vue.util.warn('`createComponent` has been renamed to `defineComponent`.');
}
return defineComponent(options);
}
var genName = function (name) { return "on" + (name[0].toUpperCase() + name.slice(1)); };
function createLifeCycle(lifeCyclehook) {
return function (callback) {
var vm = ensureCurrentVMInFn(genName(lifeCyclehook));
injectHookOption(getCurrentVue(), vm, lifeCyclehook, callback);
};
}
function injectHookOption(Vue, vm, hook, val) {
var options = vm.$options;
var mergeFn = Vue.config.optionMergeStrategies[hook];
options[hook] = mergeFn(options[hook], val);
}
// export const onCreated = createLifeCycle('created');
var onBeforeMount = createLifeCycle('beforeMount');
var onMounted = createLifeCycle('mounted');
var onBeforeUpdate = createLifeCycle('beforeUpdate');
var onUpdated = createLifeCycle('updated');
var onBeforeUnmount = createLifeCycle('beforeDestroy');
var onUnmounted = createLifeCycle('destroyed');
var onErrorCaptured = createLifeCycle('errorCaptured');
var onActivated = createLifeCycle('activated');
var onDeactivated = createLifeCycle('deactivated');
var onServerPrefetch = createLifeCycle('serverPrefetch');
var fallbackVM;
function flushPreQueue() {
flushQueue(this, WatcherPreFlushQueueKey);
}
function flushPostQueue() {
flushQueue(this, WatcherPostFlushQueueKey);
}
function hasWatchEnv(vm) {
return vm[WatcherPreFlushQueueKey] !== undefined;
}
function installWatchEnv(vm) {
vm[WatcherPreFlushQueueKey] = [];
vm[WatcherPostFlushQueueKey] = [];
vm.$on('hook:beforeUpdate', flushPreQueue);
vm.$on('hook:updated', flushPostQueue);
}
function getWatcherOption(options) {
return __assign({
lazy: false,
deep: false,
flush: 'post',
}, options);
}
function getWatcherVM() {
var vm = getCurrentVM();
if (!vm) {
if (!fallbackVM) {
fallbackVM = defineComponentInstance(getCurrentVue());
}
vm = fallbackVM;
}
else if (!hasWatchEnv(vm)) {
installWatchEnv(vm);
}
return vm;
}
function flushQueue(vm, key) {
var queue = vm[key];
for (var index = 0; index < queue.length; index++) {
queue[index]();
}
queue.length = 0;
}
function queueFlushJob(vm, fn, mode) {
// flush all when beforeUpdate and updated are not fired
var fallbackFlush = function () {
vm.$nextTick(function () {
if (vm[WatcherPreFlushQueueKey].length) {
flushQueue(vm, WatcherPreFlushQueueKey);
}
if (vm[WatcherPostFlushQueueKey].length) {
flushQueue(vm, WatcherPostFlushQueueKey);
}
});
};
switch (mode) {
case 'pre':
fallbackFlush();
vm[WatcherPreFlushQueueKey].push(fn);
break;
case 'post':
fallbackFlush();
vm[WatcherPostFlushQueueKey].push(fn);
break;
default:
assert(false, "flush must be one of [\"post\", \"pre\", \"sync\"], but got " + mode);
break;
}
}
function createVueWatcher(vm, getter, callback, options) {
var index = vm._watchers.length;
// @ts-ignore: use undocumented options
vm.$watch(getter, callback, {
immediate: options.immediateInvokeCallback,
deep: options.deep,
lazy: options.noRun,
sync: options.sync,
before: options.before,
});
return vm._watchers[index];
}
function createWatcher(vm, source, cb, options) {
var flushMode = options.flush;
var isSync = flushMode === 'sync';
var cleanup;
var registerCleanup = function (fn) {
cleanup = function () {
try {
fn();
}
catch (error) {
logError(error, vm, 'onCleanup()');
}
};
};
// cleanup before running getter again
var runCleanup = function () {
if (cleanup) {
cleanup();
cleanup = null;
}
};
var createScheduler = function (fn) {
if (isSync || /* without a current active instance, ignore pre|post mode */ vm === fallbackVM) {
return fn;
}
return (function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
return queueFlushJob(vm, function () {
fn.apply(void 0, __spread(args));
}, flushMode);
});
};
// effect watch
if (cb === null) {
var getter_1 = function () { return source(registerCleanup); };
var watcher_1 = createVueWatcher(vm, getter_1, noopFn, {
noRun: true,
deep: options.deep,
sync: isSync,
before: runCleanup,
});
// enable the watcher update
watcher_1.lazy = false;
var originGet = watcher_1.get.bind(watcher_1);
if (isSync) {
watcher_1.get();
}
else {
vm.$nextTick(originGet);
}
watcher_1.get = createScheduler(originGet);
return function () {
watcher_1.teardown();
runCleanup();
};
}
var getter;
if (Array.isArray(source)) {
getter = function () { return source.map(function (s) { return (isRef(s) ? s.value : s()); }); };
}
else if (isRef(source)) {
getter = function () { return source.value; };
}
else {
getter = source;
}
var applyCb = function (n, o) {
// cleanup before running cb again
runCleanup();
cb(n, o, registerCleanup);
};
var callback = createScheduler(applyCb);
if (!options.lazy) {
var originalCallbck_1 = callback;
// `shiftCallback` is used to handle the first sync effect run.
// The subsequent callbacks will redirect to `callback`.
var shiftCallback_1 = function (n, o) {
shiftCallback_1 = originalCallbck_1;
applyCb(n, o);
};
callback = function (n, o) {
shiftCallback_1(n, o);
};
}
// @ts-ignore: use undocumented option "sync"
var stop = vm.$watch(getter, callback, {
immediate: !options.lazy,
deep: options.deep,
sync: isSync,
});
return function () {
stop();
runCleanup();
};
}
function watchEffect(effect, options) {
var opts = getWatcherOption(options);
var vm = getWatcherVM();
return createWatcher(vm, effect, null, opts);
}
function watch(source, cb, options) {
var callback = null;
if (typeof cb === 'function') {
// source watch
callback = cb;
}
else {
// effect watch
{
warn("`watch(fn, options?)` signature has been moved to a separate API. " +
"Use `watchEffect(fn, options?)` instead. `watch` now only " +
"supports `watch(source, cb, options?) signature.");
}
options = cb;
callback = null;
}
var opts = getWatcherOption(options);
var vm = getWatcherVM();
return createWatcher(vm, source, callback, opts);
}
// implement
function computed(options) {
var vm = getCurrentVM();
var get, set;
if (typeof options === 'function') {
get = options;
}
else {
get = options.get;
set = options.set;
}
var computedHost = defineComponentInstance(getCurrentVue(), {
computed: {
$$state: {
get: get,
set: set,
},
},
});
return createRef({
get: function () { return computedHost.$$state; },
set: function (v) {
if (!set) {
warn('Computed property was assigned to but it has no setter.', vm);
return;
}
computedHost.$$state = v;
},
});
}
var NOT_FOUND = {};
function resolveInject(provideKey, vm) {
var source = vm;
while (source) {
// @ts-ignore
if (source._provided && hasOwn(source._provided, provideKey)) {
//@ts-ignore
return source._provided[provideKey];
}
source = source.$parent;
}
return NOT_FOUND;
}
function provide(key, value) {
var vm = ensureCurrentVMInFn('provide');
if (!vm._provided) {
var provideCache_1 = {};
Object.defineProperty(vm, '_provided', {
get: function () { return provideCache_1; },
set: function (v) { return Object.assign(provideCache_1, v); },
});
}
vm._provided[key] = value;
}
function inject(key, defaultValue) {
if (!key) {
return defaultValue;
}
var vm = ensureCurrentVMInFn('inject');
var val = resolveInject(key, vm);
if (val !== NOT_FOUND) {
return val;
}
else if (defaultValue !== undefined) {
return defaultValue;
}
else {
warn("Injection \"" + String(key) + "\" not found", vm);
}
}
var _install = function (Vue) { return install(Vue, mixin); };
var plugin = {
install: _install,
};
// Auto install if it is not done yet and `window` has `Vue`.
// To allow users to avoid auto-installation in some cases,
if (currentVue && typeof window !== 'undefined' && window.Vue) {
_install(window.Vue);
}
exports.computed = computed;
exports.createComponent = createComponent;
exports.createElement = createElement;
exports.default = plugin;
exports.defineComponent = defineComponent;
exports.getCurrentInstance = getCurrentVM;
exports.inject = inject;
exports.isRef = isRef;
exports.onActivated = onActivated;
exports.onBeforeMount = onBeforeMount;
exports.onBeforeUnmount = onBeforeUnmount;
exports.onBeforeUpdate = onBeforeUpdate;
exports.onDeactivated = onDeactivated;
exports.onErrorCaptured = onErrorCaptured;
exports.onMounted = onMounted;
exports.onServerPrefetch = onServerPrefetch;
exports.onUnmounted = onUnmounted;
exports.onUpdated = onUpdated;
exports.provide = provide;
exports.reactive = reactive;
exports.ref = ref;
exports.set = set;
exports.toRefs = toRefs;
exports.watch = watch;
exports.watchEffect = watchEffect;
Object.defineProperty(exports, '__esModule', { value: true });
}));
\ No newline at end of file
/*!
* Vue.js v2.6.11
* (c) 2014-2019 Evan You
* Released under the MIT License.
*/
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self).Vue=t()}(this,function(){"use strict";var e=Object.freeze({});function t(e){return null==e}function n(e){return null!=e}function r(e){return!0===e}function i(e){return"string"==typeof e||"number"==typeof e||"symbol"==typeof e||"boolean"==typeof e}function o(e){return null!==e&&"object"==typeof e}var a=Object.prototype.toString;function s(e){return"[object Object]"===a.call(e)}function c(e){var t=parseFloat(String(e));return t>=0&&Math.floor(t)===t&&isFinite(e)}function u(e){return n(e)&&"function"==typeof e.then&&"function"==typeof e.catch}function l(e){return null==e?"":Array.isArray(e)||s(e)&&e.toString===a?JSON.stringify(e,null,2):String(e)}function f(e){var t=parseFloat(e);return isNaN(t)?e:t}function p(e,t){for(var n=Object.create(null),r=e.split(","),i=0;i<r.length;i++)n[r[i]]=!0;return t?function(e){return n[e.toLowerCase()]}:function(e){return n[e]}}var d=p("slot,component",!0),v=p("key,ref,slot,slot-scope,is");function h(e,t){if(e.length){var n=e.indexOf(t);if(n>-1)return e.splice(n,1)}}var m=Object.prototype.hasOwnProperty;function y(e,t){return m.call(e,t)}function g(e){var t=Object.create(null);return function(n){return t[n]||(t[n]=e(n))}}var _=/-(\w)/g,b=g(function(e){return e.replace(_,function(e,t){return t?t.toUpperCase():""})}),$=g(function(e){return e.charAt(0).toUpperCase()+e.slice(1)}),w=/\B([A-Z])/g,C=g(function(e){return e.replace(w,"-$1").toLowerCase()});var x=Function.prototype.bind?function(e,t){return e.bind(t)}:function(e,t){function n(n){var r=arguments.length;return r?r>1?e.apply(t,arguments):e.call(t,n):e.call(t)}return n._length=e.length,n};function k(e,t){t=t||0;for(var n=e.length-t,r=new Array(n);n--;)r[n]=e[n+t];return r}function A(e,t){for(var n in t)e[n]=t[n];return e}function O(e){for(var t={},n=0;n<e.length;n++)e[n]&&A(t,e[n]);return t}function S(e,t,n){}var T=function(e,t,n){return!1},E=function(e){return e};function N(e,t){if(e===t)return!0;var n=o(e),r=o(t);if(!n||!r)return!n&&!r&&String(e)===String(t);try{var i=Array.isArray(e),a=Array.isArray(t);if(i&&a)return e.length===t.length&&e.every(function(e,n){return N(e,t[n])});if(e instanceof Date&&t instanceof Date)return e.getTime()===t.getTime();if(i||a)return!1;var s=Object.keys(e),c=Object.keys(t);return s.length===c.length&&s.every(function(n){return N(e[n],t[n])})}catch(e){return!1}}function j(e,t){for(var n=0;n<e.length;n++)if(N(e[n],t))return n;return-1}function D(e){var t=!1;return function(){t||(t=!0,e.apply(this,arguments))}}var L="data-server-rendered",M=["component","directive","filter"],I=["beforeCreate","created","beforeMount","mounted","beforeUpdate","updated","beforeDestroy","destroyed","activated","deactivated","errorCaptured","serverPrefetch"],F={optionMergeStrategies:Object.create(null),silent:!1,productionTip:!1,devtools:!1,performance:!1,errorHandler:null,warnHandler:null,ignoredElements:[],keyCodes:Object.create(null),isReservedTag:T,isReservedAttr:T,isUnknownElement:T,getTagNamespace:S,parsePlatformTagName:E,mustUseProp:T,async:!0,_lifecycleHooks:I},P=/a-zA-Z\u00B7\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u037D\u037F-\u1FFF\u200C-\u200D\u203F-\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD/;function R(e,t,n,r){Object.defineProperty(e,t,{value:n,enumerable:!!r,writable:!0,configurable:!0})}var H=new RegExp("[^"+P.source+".$_\\d]");var B,U="__proto__"in{},z="undefined"!=typeof window,V="undefined"!=typeof WXEnvironment&&!!WXEnvironment.platform,K=V&&WXEnvironment.platform.toLowerCase(),J=z&&window.navigator.userAgent.toLowerCase(),q=J&&/msie|trident/.test(J),W=J&&J.indexOf("msie 9.0")>0,Z=J&&J.indexOf("edge/")>0,G=(J&&J.indexOf("android"),J&&/iphone|ipad|ipod|ios/.test(J)||"ios"===K),X=(J&&/chrome\/\d+/.test(J),J&&/phantomjs/.test(J),J&&J.match(/firefox\/(\d+)/)),Y={}.watch,Q=!1;if(z)try{var ee={};Object.defineProperty(ee,"passive",{get:function(){Q=!0}}),window.addEventListener("test-passive",null,ee)}catch(e){}var te=function(){return void 0===B&&(B=!z&&!V&&"undefined"!=typeof global&&(global.process&&"server"===global.process.env.VUE_ENV)),B},ne=z&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function re(e){return"function"==typeof e&&/native code/.test(e.toString())}var ie,oe="undefined"!=typeof Symbol&&re(Symbol)&&"undefined"!=typeof Reflect&&re(Reflect.ownKeys);ie="undefined"!=typeof Set&&re(Set)?Set:function(){function e(){this.set=Object.create(null)}return e.prototype.has=function(e){return!0===this.set[e]},e.prototype.add=function(e){this.set[e]=!0},e.prototype.clear=function(){this.set=Object.create(null)},e}();var ae=S,se=0,ce=function(){this.id=se++,this.subs=[]};ce.prototype.addSub=function(e){this.subs.push(e)},ce.prototype.removeSub=function(e){h(this.subs,e)},ce.prototype.depend=function(){ce.target&&ce.target.addDep(this)},ce.prototype.notify=function(){for(var e=this.subs.slice(),t=0,n=e.length;t<n;t++)e[t].update()},ce.target=null;var ue=[];function le(e){ue.push(e),ce.target=e}function fe(){ue.pop(),ce.target=ue[ue.length-1]}var pe=function(e,t,n,r,i,o,a,s){this.tag=e,this.data=t,this.children=n,this.text=r,this.elm=i,this.ns=void 0,this.context=o,this.fnContext=void 0,this.fnOptions=void 0,this.fnScopeId=void 0,this.key=t&&t.key,this.componentOptions=a,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=s,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1},de={child:{configurable:!0}};de.child.get=function(){return this.componentInstance},Object.defineProperties(pe.prototype,de);var ve=function(e){void 0===e&&(e="");var t=new pe;return t.text=e,t.isComment=!0,t};function he(e){return new pe(void 0,void 0,void 0,String(e))}function me(e){var t=new pe(e.tag,e.data,e.children&&e.children.slice(),e.text,e.elm,e.context,e.componentOptions,e.asyncFactory);return t.ns=e.ns,t.isStatic=e.isStatic,t.key=e.key,t.isComment=e.isComment,t.fnContext=e.fnContext,t.fnOptions=e.fnOptions,t.fnScopeId=e.fnScopeId,t.asyncMeta=e.asyncMeta,t.isCloned=!0,t}var ye=Array.prototype,ge=Object.create(ye);["push","pop","shift","unshift","splice","sort","reverse"].forEach(function(e){var t=ye[e];R(ge,e,function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];var i,o=t.apply(this,n),a=this.__ob__;switch(e){case"push":case"unshift":i=n;break;case"splice":i=n.slice(2)}return i&&a.observeArray(i),a.dep.notify(),o})});var _e=Object.getOwnPropertyNames(ge),be=!0;function $e(e){be=e}var we=function(e){var t;this.value=e,this.dep=new ce,this.vmCount=0,R(e,"__ob__",this),Array.isArray(e)?(U?(t=ge,e.__proto__=t):function(e,t,n){for(var r=0,i=n.length;r<i;r++){var o=n[r];R(e,o,t[o])}}(e,ge,_e),this.observeArray(e)):this.walk(e)};function Ce(e,t){var n;if(o(e)&&!(e instanceof pe))return y(e,"__ob__")&&e.__ob__ instanceof we?n=e.__ob__:be&&!te()&&(Array.isArray(e)||s(e))&&Object.isExtensible(e)&&!e._isVue&&(n=new we(e)),t&&n&&n.vmCount++,n}function xe(e,t,n,r,i){var o=new ce,a=Object.getOwnPropertyDescriptor(e,t);if(!a||!1!==a.configurable){var s=a&&a.get,c=a&&a.set;s&&!c||2!==arguments.length||(n=e[t]);var u=!i&&Ce(n);Object.defineProperty(e,t,{enumerable:!0,configurable:!0,get:function(){var t=s?s.call(e):n;return ce.target&&(o.depend(),u&&(u.dep.depend(),Array.isArray(t)&&function e(t){for(var n=void 0,r=0,i=t.length;r<i;r++)(n=t[r])&&n.__ob__&&n.__ob__.dep.depend(),Array.isArray(n)&&e(n)}(t))),t},set:function(t){var r=s?s.call(e):n;t===r||t!=t&&r!=r||s&&!c||(c?c.call(e,t):n=t,u=!i&&Ce(t),o.notify())}})}}function ke(e,t,n){if(Array.isArray(e)&&c(t))return e.length=Math.max(e.length,t),e.splice(t,1,n),n;if(t in e&&!(t in Object.prototype))return e[t]=n,n;var r=e.__ob__;return e._isVue||r&&r.vmCount?n:r?(xe(r.value,t,n),r.dep.notify(),n):(e[t]=n,n)}function Ae(e,t){if(Array.isArray(e)&&c(t))e.splice(t,1);else{var n=e.__ob__;e._isVue||n&&n.vmCount||y(e,t)&&(delete e[t],n&&n.dep.notify())}}we.prototype.walk=function(e){for(var t=Object.keys(e),n=0;n<t.length;n++)xe(e,t[n])},we.prototype.observeArray=function(e){for(var t=0,n=e.length;t<n;t++)Ce(e[t])};var Oe=F.optionMergeStrategies;function Se(e,t){if(!t)return e;for(var n,r,i,o=oe?Reflect.ownKeys(t):Object.keys(t),a=0;a<o.length;a++)"__ob__"!==(n=o[a])&&(r=e[n],i=t[n],y(e,n)?r!==i&&s(r)&&s(i)&&Se(r,i):ke(e,n,i));return e}function Te(e,t,n){return n?function(){var r="function"==typeof t?t.call(n,n):t,i="function"==typeof e?e.call(n,n):e;return r?Se(r,i):i}:t?e?function(){return Se("function"==typeof t?t.call(this,this):t,"function"==typeof e?e.call(this,this):e)}:t:e}function Ee(e,t){var n=t?e?e.concat(t):Array.isArray(t)?t:[t]:e;return n?function(e){for(var t=[],n=0;n<e.length;n++)-1===t.indexOf(e[n])&&t.push(e[n]);return t}(n):n}function Ne(e,t,n,r){var i=Object.create(e||null);return t?A(i,t):i}Oe.data=function(e,t,n){return n?Te(e,t,n):t&&"function"!=typeof t?e:Te(e,t)},I.forEach(function(e){Oe[e]=Ee}),M.forEach(function(e){Oe[e+"s"]=Ne}),Oe.watch=function(e,t,n,r){if(e===Y&&(e=void 0),t===Y&&(t=void 0),!t)return Object.create(e||null);if(!e)return t;var i={};for(var o in A(i,e),t){var a=i[o],s=t[o];a&&!Array.isArray(a)&&(a=[a]),i[o]=a?a.concat(s):Array.isArray(s)?s:[s]}return i},Oe.props=Oe.methods=Oe.inject=Oe.computed=function(e,t,n,r){if(!e)return t;var i=Object.create(null);return A(i,e),t&&A(i,t),i},Oe.provide=Te;var je=function(e,t){return void 0===t?e:t};function De(e,t,n){if("function"==typeof t&&(t=t.options),function(e,t){var n=e.props;if(n){var r,i,o={};if(Array.isArray(n))for(r=n.length;r--;)"string"==typeof(i=n[r])&&(o[b(i)]={type:null});else if(s(n))for(var a in n)i=n[a],o[b(a)]=s(i)?i:{type:i};e.props=o}}(t),function(e,t){var n=e.inject;if(n){var r=e.inject={};if(Array.isArray(n))for(var i=0;i<n.length;i++)r[n[i]]={from:n[i]};else if(s(n))for(var o in n){var a=n[o];r[o]=s(a)?A({from:o},a):{from:a}}}}(t),function(e){var t=e.directives;if(t)for(var n in t){var r=t[n];"function"==typeof r&&(t[n]={bind:r,update:r})}}(t),!t._base&&(t.extends&&(e=De(e,t.extends,n)),t.mixins))for(var r=0,i=t.mixins.length;r<i;r++)e=De(e,t.mixins[r],n);var o,a={};for(o in e)c(o);for(o in t)y(e,o)||c(o);function c(r){var i=Oe[r]||je;a[r]=i(e[r],t[r],n,r)}return a}function Le(e,t,n,r){if("string"==typeof n){var i=e[t];if(y(i,n))return i[n];var o=b(n);if(y(i,o))return i[o];var a=$(o);return y(i,a)?i[a]:i[n]||i[o]||i[a]}}function Me(e,t,n,r){var i=t[e],o=!y(n,e),a=n[e],s=Pe(Boolean,i.type);if(s>-1)if(o&&!y(i,"default"))a=!1;else if(""===a||a===C(e)){var c=Pe(String,i.type);(c<0||s<c)&&(a=!0)}if(void 0===a){a=function(e,t,n){if(!y(t,"default"))return;var r=t.default;if(e&&e.$options.propsData&&void 0===e.$options.propsData[n]&&void 0!==e._props[n])return e._props[n];return"function"==typeof r&&"Function"!==Ie(t.type)?r.call(e):r}(r,i,e);var u=be;$e(!0),Ce(a),$e(u)}return a}function Ie(e){var t=e&&e.toString().match(/^\s*function (\w+)/);return t?t[1]:""}function Fe(e,t){return Ie(e)===Ie(t)}function Pe(e,t){if(!Array.isArray(t))return Fe(t,e)?0:-1;for(var n=0,r=t.length;n<r;n++)if(Fe(t[n],e))return n;return-1}function Re(e,t,n){le();try{if(t)for(var r=t;r=r.$parent;){var i=r.$options.errorCaptured;if(i)for(var o=0;o<i.length;o++)try{if(!1===i[o].call(r,e,t,n))return}catch(e){Be(e,r,"errorCaptured hook")}}Be(e,t,n)}finally{fe()}}function He(e,t,n,r,i){var o;try{(o=n?e.apply(t,n):e.call(t))&&!o._isVue&&u(o)&&!o._handled&&(o.catch(function(e){return Re(e,r,i+" (Promise/async)")}),o._handled=!0)}catch(e){Re(e,r,i)}return o}function Be(e,t,n){if(F.errorHandler)try{return F.errorHandler.call(null,e,t,n)}catch(t){t!==e&&Ue(t,null,"config.errorHandler")}Ue(e,t,n)}function Ue(e,t,n){if(!z&&!V||"undefined"==typeof console)throw e;console.error(e)}var ze,Ve=!1,Ke=[],Je=!1;function qe(){Je=!1;var e=Ke.slice(0);Ke.length=0;for(var t=0;t<e.length;t++)e[t]()}if("undefined"!=typeof Promise&&re(Promise)){var We=Promise.resolve();ze=function(){We.then(qe),G&&setTimeout(S)},Ve=!0}else if(q||"undefined"==typeof MutationObserver||!re(MutationObserver)&&"[object MutationObserverConstructor]"!==MutationObserver.toString())ze="undefined"!=typeof setImmediate&&re(setImmediate)?function(){setImmediate(qe)}:function(){setTimeout(qe,0)};else{var Ze=1,Ge=new MutationObserver(qe),Xe=document.createTextNode(String(Ze));Ge.observe(Xe,{characterData:!0}),ze=function(){Ze=(Ze+1)%2,Xe.data=String(Ze)},Ve=!0}function Ye(e,t){var n;if(Ke.push(function(){if(e)try{e.call(t)}catch(e){Re(e,t,"nextTick")}else n&&n(t)}),Je||(Je=!0,ze()),!e&&"undefined"!=typeof Promise)return new Promise(function(e){n=e})}var Qe=new ie;function et(e){!function e(t,n){var r,i;var a=Array.isArray(t);if(!a&&!o(t)||Object.isFrozen(t)||t instanceof pe)return;if(t.__ob__){var s=t.__ob__.dep.id;if(n.has(s))return;n.add(s)}if(a)for(r=t.length;r--;)e(t[r],n);else for(i=Object.keys(t),r=i.length;r--;)e(t[i[r]],n)}(e,Qe),Qe.clear()}var tt=g(function(e){var t="&"===e.charAt(0),n="~"===(e=t?e.slice(1):e).charAt(0),r="!"===(e=n?e.slice(1):e).charAt(0);return{name:e=r?e.slice(1):e,once:n,capture:r,passive:t}});function nt(e,t){function n(){var e=arguments,r=n.fns;if(!Array.isArray(r))return He(r,null,arguments,t,"v-on handler");for(var i=r.slice(),o=0;o<i.length;o++)He(i[o],null,e,t,"v-on handler")}return n.fns=e,n}function rt(e,n,i,o,a,s){var c,u,l,f;for(c in e)u=e[c],l=n[c],f=tt(c),t(u)||(t(l)?(t(u.fns)&&(u=e[c]=nt(u,s)),r(f.once)&&(u=e[c]=a(f.name,u,f.capture)),i(f.name,u,f.capture,f.passive,f.params)):u!==l&&(l.fns=u,e[c]=l));for(c in n)t(e[c])&&o((f=tt(c)).name,n[c],f.capture)}function it(e,i,o){var a;e instanceof pe&&(e=e.data.hook||(e.data.hook={}));var s=e[i];function c(){o.apply(this,arguments),h(a.fns,c)}t(s)?a=nt([c]):n(s.fns)&&r(s.merged)?(a=s).fns.push(c):a=nt([s,c]),a.merged=!0,e[i]=a}function ot(e,t,r,i,o){if(n(t)){if(y(t,r))return e[r]=t[r],o||delete t[r],!0;if(y(t,i))return e[r]=t[i],o||delete t[i],!0}return!1}function at(e){return i(e)?[he(e)]:Array.isArray(e)?function e(o,a){var s=[];var c,u,l,f;for(c=0;c<o.length;c++)t(u=o[c])||"boolean"==typeof u||(l=s.length-1,f=s[l],Array.isArray(u)?u.length>0&&(st((u=e(u,(a||"")+"_"+c))[0])&&st(f)&&(s[l]=he(f.text+u[0].text),u.shift()),s.push.apply(s,u)):i(u)?st(f)?s[l]=he(f.text+u):""!==u&&s.push(he(u)):st(u)&&st(f)?s[l]=he(f.text+u.text):(r(o._isVList)&&n(u.tag)&&t(u.key)&&n(a)&&(u.key="__vlist"+a+"_"+c+"__"),s.push(u)));return s}(e):void 0}function st(e){return n(e)&&n(e.text)&&!1===e.isComment}function ct(e,t){if(e){for(var n=Object.create(null),r=oe?Reflect.ownKeys(e):Object.keys(e),i=0;i<r.length;i++){var o=r[i];if("__ob__"!==o){for(var a=e[o].from,s=t;s;){if(s._provided&&y(s._provided,a)){n[o]=s._provided[a];break}s=s.$parent}if(!s&&"default"in e[o]){var c=e[o].default;n[o]="function"==typeof c?c.call(t):c}}}return n}}function ut(e,t){if(!e||!e.length)return{};for(var n={},r=0,i=e.length;r<i;r++){var o=e[r],a=o.data;if(a&&a.attrs&&a.attrs.slot&&delete a.attrs.slot,o.context!==t&&o.fnContext!==t||!a||null==a.slot)(n.default||(n.default=[])).push(o);else{var s=a.slot,c=n[s]||(n[s]=[]);"template"===o.tag?c.push.apply(c,o.children||[]):c.push(o)}}for(var u in n)n[u].every(lt)&&delete n[u];return n}function lt(e){return e.isComment&&!e.asyncFactory||" "===e.text}function ft(t,n,r){var i,o=Object.keys(n).length>0,a=t?!!t.$stable:!o,s=t&&t.$key;if(t){if(t._normalized)return t._normalized;if(a&&r&&r!==e&&s===r.$key&&!o&&!r.$hasNormal)return r;for(var c in i={},t)t[c]&&"$"!==c[0]&&(i[c]=pt(n,c,t[c]))}else i={};for(var u in n)u in i||(i[u]=dt(n,u));return t&&Object.isExtensible(t)&&(t._normalized=i),R(i,"$stable",a),R(i,"$key",s),R(i,"$hasNormal",o),i}function pt(e,t,n){var r=function(){var e=arguments.length?n.apply(null,arguments):n({});return(e=e&&"object"==typeof e&&!Array.isArray(e)?[e]:at(e))&&(0===e.length||1===e.length&&e[0].isComment)?void 0:e};return n.proxy&&Object.defineProperty(e,t,{get:r,enumerable:!0,configurable:!0}),r}function dt(e,t){return function(){return e[t]}}function vt(e,t){var r,i,a,s,c;if(Array.isArray(e)||"string"==typeof e)for(r=new Array(e.length),i=0,a=e.length;i<a;i++)r[i]=t(e[i],i);else if("number"==typeof e)for(r=new Array(e),i=0;i<e;i++)r[i]=t(i+1,i);else if(o(e))if(oe&&e[Symbol.iterator]){r=[];for(var u=e[Symbol.iterator](),l=u.next();!l.done;)r.push(t(l.value,r.length)),l=u.next()}else for(s=Object.keys(e),r=new Array(s.length),i=0,a=s.length;i<a;i++)c=s[i],r[i]=t(e[c],c,i);return n(r)||(r=[]),r._isVList=!0,r}function ht(e,t,n,r){var i,o=this.$scopedSlots[e];o?(n=n||{},r&&(n=A(A({},r),n)),i=o(n)||t):i=this.$slots[e]||t;var a=n&&n.slot;return a?this.$createElement("template",{slot:a},i):i}function mt(e){return Le(this.$options,"filters",e)||E}function yt(e,t){return Array.isArray(e)?-1===e.indexOf(t):e!==t}function gt(e,t,n,r,i){var o=F.keyCodes[t]||n;return i&&r&&!F.keyCodes[t]?yt(i,r):o?yt(o,e):r?C(r)!==t:void 0}function _t(e,t,n,r,i){if(n)if(o(n)){var a;Array.isArray(n)&&(n=O(n));var s=function(o){if("class"===o||"style"===o||v(o))a=e;else{var s=e.attrs&&e.attrs.type;a=r||F.mustUseProp(t,s,o)?e.domProps||(e.domProps={}):e.attrs||(e.attrs={})}var c=b(o),u=C(o);c in a||u in a||(a[o]=n[o],i&&((e.on||(e.on={}))["update:"+o]=function(e){n[o]=e}))};for(var c in n)s(c)}else;return e}function bt(e,t){var n=this._staticTrees||(this._staticTrees=[]),r=n[e];return r&&!t?r:(wt(r=n[e]=this.$options.staticRenderFns[e].call(this._renderProxy,null,this),"__static__"+e,!1),r)}function $t(e,t,n){return wt(e,"__once__"+t+(n?"_"+n:""),!0),e}function wt(e,t,n){if(Array.isArray(e))for(var r=0;r<e.length;r++)e[r]&&"string"!=typeof e[r]&&Ct(e[r],t+"_"+r,n);else Ct(e,t,n)}function Ct(e,t,n){e.isStatic=!0,e.key=t,e.isOnce=n}function xt(e,t){if(t)if(s(t)){var n=e.on=e.on?A({},e.on):{};for(var r in t){var i=n[r],o=t[r];n[r]=i?[].concat(i,o):o}}else;return e}function kt(e,t,n,r){t=t||{$stable:!n};for(var i=0;i<e.length;i++){var o=e[i];Array.isArray(o)?kt(o,t,n):o&&(o.proxy&&(o.fn.proxy=!0),t[o.key]=o.fn)}return r&&(t.$key=r),t}function At(e,t){for(var n=0;n<t.length;n+=2){var r=t[n];"string"==typeof r&&r&&(e[t[n]]=t[n+1])}return e}function Ot(e,t){return"string"==typeof e?t+e:e}function St(e){e._o=$t,e._n=f,e._s=l,e._l=vt,e._t=ht,e._q=N,e._i=j,e._m=bt,e._f=mt,e._k=gt,e._b=_t,e._v=he,e._e=ve,e._u=kt,e._g=xt,e._d=At,e._p=Ot}function Tt(t,n,i,o,a){var s,c=this,u=a.options;y(o,"_uid")?(s=Object.create(o))._original=o:(s=o,o=o._original);var l=r(u._compiled),f=!l;this.data=t,this.props=n,this.children=i,this.parent=o,this.listeners=t.on||e,this.injections=ct(u.inject,o),this.slots=function(){return c.$slots||ft(t.scopedSlots,c.$slots=ut(i,o)),c.$slots},Object.defineProperty(this,"scopedSlots",{enumerable:!0,get:function(){return ft(t.scopedSlots,this.slots())}}),l&&(this.$options=u,this.$slots=this.slots(),this.$scopedSlots=ft(t.scopedSlots,this.$slots)),u._scopeId?this._c=function(e,t,n,r){var i=Pt(s,e,t,n,r,f);return i&&!Array.isArray(i)&&(i.fnScopeId=u._scopeId,i.fnContext=o),i}:this._c=function(e,t,n,r){return Pt(s,e,t,n,r,f)}}function Et(e,t,n,r,i){var o=me(e);return o.fnContext=n,o.fnOptions=r,t.slot&&((o.data||(o.data={})).slot=t.slot),o}function Nt(e,t){for(var n in t)e[b(n)]=t[n]}St(Tt.prototype);var jt={init:function(e,t){if(e.componentInstance&&!e.componentInstance._isDestroyed&&e.data.keepAlive){var r=e;jt.prepatch(r,r)}else{(e.componentInstance=function(e,t){var r={_isComponent:!0,_parentVnode:e,parent:t},i=e.data.inlineTemplate;n(i)&&(r.render=i.render,r.staticRenderFns=i.staticRenderFns);return new e.componentOptions.Ctor(r)}(e,Wt)).$mount(t?e.elm:void 0,t)}},prepatch:function(t,n){var r=n.componentOptions;!function(t,n,r,i,o){var a=i.data.scopedSlots,s=t.$scopedSlots,c=!!(a&&!a.$stable||s!==e&&!s.$stable||a&&t.$scopedSlots.$key!==a.$key),u=!!(o||t.$options._renderChildren||c);t.$options._parentVnode=i,t.$vnode=i,t._vnode&&(t._vnode.parent=i);if(t.$options._renderChildren=o,t.$attrs=i.data.attrs||e,t.$listeners=r||e,n&&t.$options.props){$e(!1);for(var l=t._props,f=t.$options._propKeys||[],p=0;p<f.length;p++){var d=f[p],v=t.$options.props;l[d]=Me(d,v,n,t)}$e(!0),t.$options.propsData=n}r=r||e;var h=t.$options._parentListeners;t.$options._parentListeners=r,qt(t,r,h),u&&(t.$slots=ut(o,i.context),t.$forceUpdate())}(n.componentInstance=t.componentInstance,r.propsData,r.listeners,n,r.children)},insert:function(e){var t,n=e.context,r=e.componentInstance;r._isMounted||(r._isMounted=!0,Yt(r,"mounted")),e.data.keepAlive&&(n._isMounted?((t=r)._inactive=!1,en.push(t)):Xt(r,!0))},destroy:function(e){var t=e.componentInstance;t._isDestroyed||(e.data.keepAlive?function e(t,n){if(n&&(t._directInactive=!0,Gt(t)))return;if(!t._inactive){t._inactive=!0;for(var r=0;r<t.$children.length;r++)e(t.$children[r]);Yt(t,"deactivated")}}(t,!0):t.$destroy())}},Dt=Object.keys(jt);function Lt(i,a,s,c,l){if(!t(i)){var f=s.$options._base;if(o(i)&&(i=f.extend(i)),"function"==typeof i){var p;if(t(i.cid)&&void 0===(i=function(e,i){if(r(e.error)&&n(e.errorComp))return e.errorComp;if(n(e.resolved))return e.resolved;var a=Ht;a&&n(e.owners)&&-1===e.owners.indexOf(a)&&e.owners.push(a);if(r(e.loading)&&n(e.loadingComp))return e.loadingComp;if(a&&!n(e.owners)){var s=e.owners=[a],c=!0,l=null,f=null;a.$on("hook:destroyed",function(){return h(s,a)});var p=function(e){for(var t=0,n=s.length;t<n;t++)s[t].$forceUpdate();e&&(s.length=0,null!==l&&(clearTimeout(l),l=null),null!==f&&(clearTimeout(f),f=null))},d=D(function(t){e.resolved=Bt(t,i),c?s.length=0:p(!0)}),v=D(function(t){n(e.errorComp)&&(e.error=!0,p(!0))}),m=e(d,v);return o(m)&&(u(m)?t(e.resolved)&&m.then(d,v):u(m.component)&&(m.component.then(d,v),n(m.error)&&(e.errorComp=Bt(m.error,i)),n(m.loading)&&(e.loadingComp=Bt(m.loading,i),0===m.delay?e.loading=!0:l=setTimeout(function(){l=null,t(e.resolved)&&t(e.error)&&(e.loading=!0,p(!1))},m.delay||200)),n(m.timeout)&&(f=setTimeout(function(){f=null,t(e.resolved)&&v(null)},m.timeout)))),c=!1,e.loading?e.loadingComp:e.resolved}}(p=i,f)))return function(e,t,n,r,i){var o=ve();return o.asyncFactory=e,o.asyncMeta={data:t,context:n,children:r,tag:i},o}(p,a,s,c,l);a=a||{},$n(i),n(a.model)&&function(e,t){var r=e.model&&e.model.prop||"value",i=e.model&&e.model.event||"input";(t.attrs||(t.attrs={}))[r]=t.model.value;var o=t.on||(t.on={}),a=o[i],s=t.model.callback;n(a)?(Array.isArray(a)?-1===a.indexOf(s):a!==s)&&(o[i]=[s].concat(a)):o[i]=s}(i.options,a);var d=function(e,r,i){var o=r.options.props;if(!t(o)){var a={},s=e.attrs,c=e.props;if(n(s)||n(c))for(var u in o){var l=C(u);ot(a,c,u,l,!0)||ot(a,s,u,l,!1)}return a}}(a,i);if(r(i.options.functional))return function(t,r,i,o,a){var s=t.options,c={},u=s.props;if(n(u))for(var l in u)c[l]=Me(l,u,r||e);else n(i.attrs)&&Nt(c,i.attrs),n(i.props)&&Nt(c,i.props);var f=new Tt(i,c,a,o,t),p=s.render.call(null,f._c,f);if(p instanceof pe)return Et(p,i,f.parent,s);if(Array.isArray(p)){for(var d=at(p)||[],v=new Array(d.length),h=0;h<d.length;h++)v[h]=Et(d[h],i,f.parent,s);return v}}(i,d,a,s,c);var v=a.on;if(a.on=a.nativeOn,r(i.options.abstract)){var m=a.slot;a={},m&&(a.slot=m)}!function(e){for(var t=e.hook||(e.hook={}),n=0;n<Dt.length;n++){var r=Dt[n],i=t[r],o=jt[r];i===o||i&&i._merged||(t[r]=i?Mt(o,i):o)}}(a);var y=i.options.name||l;return new pe("vue-component-"+i.cid+(y?"-"+y:""),a,void 0,void 0,void 0,s,{Ctor:i,propsData:d,listeners:v,tag:l,children:c},p)}}}function Mt(e,t){var n=function(n,r){e(n,r),t(n,r)};return n._merged=!0,n}var It=1,Ft=2;function Pt(e,a,s,c,u,l){return(Array.isArray(s)||i(s))&&(u=c,c=s,s=void 0),r(l)&&(u=Ft),function(e,i,a,s,c){if(n(a)&&n(a.__ob__))return ve();n(a)&&n(a.is)&&(i=a.is);if(!i)return ve();Array.isArray(s)&&"function"==typeof s[0]&&((a=a||{}).scopedSlots={default:s[0]},s.length=0);c===Ft?s=at(s):c===It&&(s=function(e){for(var t=0;t<e.length;t++)if(Array.isArray(e[t]))return Array.prototype.concat.apply([],e);return e}(s));var u,l;if("string"==typeof i){var f;l=e.$vnode&&e.$vnode.ns||F.getTagNamespace(i),u=F.isReservedTag(i)?new pe(F.parsePlatformTagName(i),a,s,void 0,void 0,e):a&&a.pre||!n(f=Le(e.$options,"components",i))?new pe(i,a,s,void 0,void 0,e):Lt(f,a,e,s,i)}else u=Lt(i,a,e,s);return Array.isArray(u)?u:n(u)?(n(l)&&function e(i,o,a){i.ns=o;"foreignObject"===i.tag&&(o=void 0,a=!0);if(n(i.children))for(var s=0,c=i.children.length;s<c;s++){var u=i.children[s];n(u.tag)&&(t(u.ns)||r(a)&&"svg"!==u.tag)&&e(u,o,a)}}(u,l),n(a)&&function(e){o(e.style)&&et(e.style);o(e.class)&&et(e.class)}(a),u):ve()}(e,a,s,c,u)}var Rt,Ht=null;function Bt(e,t){return(e.__esModule||oe&&"Module"===e[Symbol.toStringTag])&&(e=e.default),o(e)?t.extend(e):e}function Ut(e){return e.isComment&&e.asyncFactory}function zt(e){if(Array.isArray(e))for(var t=0;t<e.length;t++){var r=e[t];if(n(r)&&(n(r.componentOptions)||Ut(r)))return r}}function Vt(e,t){Rt.$on(e,t)}function Kt(e,t){Rt.$off(e,t)}function Jt(e,t){var n=Rt;return function r(){null!==t.apply(null,arguments)&&n.$off(e,r)}}function qt(e,t,n){Rt=e,rt(t,n||{},Vt,Kt,Jt,e),Rt=void 0}var Wt=null;function Zt(e){var t=Wt;return Wt=e,function(){Wt=t}}function Gt(e){for(;e&&(e=e.$parent);)if(e._inactive)return!0;return!1}function Xt(e,t){if(t){if(e._directInactive=!1,Gt(e))return}else if(e._directInactive)return;if(e._inactive||null===e._inactive){e._inactive=!1;for(var n=0;n<e.$children.length;n++)Xt(e.$children[n]);Yt(e,"activated")}}function Yt(e,t){le();var n=e.$options[t],r=t+" hook";if(n)for(var i=0,o=n.length;i<o;i++)He(n[i],e,null,e,r);e._hasHookEvent&&e.$emit("hook:"+t),fe()}var Qt=[],en=[],tn={},nn=!1,rn=!1,on=0;var an=0,sn=Date.now;if(z&&!q){var cn=window.performance;cn&&"function"==typeof cn.now&&sn()>document.createEvent("Event").timeStamp&&(sn=function(){return cn.now()})}function un(){var e,t;for(an=sn(),rn=!0,Qt.sort(function(e,t){return e.id-t.id}),on=0;on<Qt.length;on++)(e=Qt[on]).before&&e.before(),t=e.id,tn[t]=null,e.run();var n=en.slice(),r=Qt.slice();on=Qt.length=en.length=0,tn={},nn=rn=!1,function(e){for(var t=0;t<e.length;t++)e[t]._inactive=!0,Xt(e[t],!0)}(n),function(e){var t=e.length;for(;t--;){var n=e[t],r=n.vm;r._watcher===n&&r._isMounted&&!r._isDestroyed&&Yt(r,"updated")}}(r),ne&&F.devtools&&ne.emit("flush")}var ln=0,fn=function(e,t,n,r,i){this.vm=e,i&&(e._watcher=this),e._watchers.push(this),r?(this.deep=!!r.deep,this.user=!!r.user,this.lazy=!!r.lazy,this.sync=!!r.sync,this.before=r.before):this.deep=this.user=this.lazy=this.sync=!1,this.cb=n,this.id=++ln,this.active=!0,this.dirty=this.lazy,this.deps=[],this.newDeps=[],this.depIds=new ie,this.newDepIds=new ie,this.expression="","function"==typeof t?this.getter=t:(this.getter=function(e){if(!H.test(e)){var t=e.split(".");return function(e){for(var n=0;n<t.length;n++){if(!e)return;e=e[t[n]]}return e}}}(t),this.getter||(this.getter=S)),this.value=this.lazy?void 0:this.get()};fn.prototype.get=function(){var e;le(this);var t=this.vm;try{e=this.getter.call(t,t)}catch(e){if(!this.user)throw e;Re(e,t,'getter for watcher "'+this.expression+'"')}finally{this.deep&&et(e),fe(),this.cleanupDeps()}return e},fn.prototype.addDep=function(e){var t=e.id;this.newDepIds.has(t)||(this.newDepIds.add(t),this.newDeps.push(e),this.depIds.has(t)||e.addSub(this))},fn.prototype.cleanupDeps=function(){for(var e=this.deps.length;e--;){var t=this.deps[e];this.newDepIds.has(t.id)||t.removeSub(this)}var n=this.depIds;this.depIds=this.newDepIds,this.newDepIds=n,this.newDepIds.clear(),n=this.deps,this.deps=this.newDeps,this.newDeps=n,this.newDeps.length=0},fn.prototype.update=function(){this.lazy?this.dirty=!0:this.sync?this.run():function(e){var t=e.id;if(null==tn[t]){if(tn[t]=!0,rn){for(var n=Qt.length-1;n>on&&Qt[n].id>e.id;)n--;Qt.splice(n+1,0,e)}else Qt.push(e);nn||(nn=!0,Ye(un))}}(this)},fn.prototype.run=function(){if(this.active){var e=this.get();if(e!==this.value||o(e)||this.deep){var t=this.value;if(this.value=e,this.user)try{this.cb.call(this.vm,e,t)}catch(e){Re(e,this.vm,'callback for watcher "'+this.expression+'"')}else this.cb.call(this.vm,e,t)}}},fn.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},fn.prototype.depend=function(){for(var e=this.deps.length;e--;)this.deps[e].depend()},fn.prototype.teardown=function(){if(this.active){this.vm._isBeingDestroyed||h(this.vm._watchers,this);for(var e=this.deps.length;e--;)this.deps[e].removeSub(this);this.active=!1}};var pn={enumerable:!0,configurable:!0,get:S,set:S};function dn(e,t,n){pn.get=function(){return this[t][n]},pn.set=function(e){this[t][n]=e},Object.defineProperty(e,n,pn)}function vn(e){e._watchers=[];var t=e.$options;t.props&&function(e,t){var n=e.$options.propsData||{},r=e._props={},i=e.$options._propKeys=[];e.$parent&&$e(!1);var o=function(o){i.push(o);var a=Me(o,t,n,e);xe(r,o,a),o in e||dn(e,"_props",o)};for(var a in t)o(a);$e(!0)}(e,t.props),t.methods&&function(e,t){e.$options.props;for(var n in t)e[n]="function"!=typeof t[n]?S:x(t[n],e)}(e,t.methods),t.data?function(e){var t=e.$options.data;s(t=e._data="function"==typeof t?function(e,t){le();try{return e.call(t,t)}catch(e){return Re(e,t,"data()"),{}}finally{fe()}}(t,e):t||{})||(t={});var n=Object.keys(t),r=e.$options.props,i=(e.$options.methods,n.length);for(;i--;){var o=n[i];r&&y(r,o)||(a=void 0,36!==(a=(o+"").charCodeAt(0))&&95!==a&&dn(e,"_data",o))}var a;Ce(t,!0)}(e):Ce(e._data={},!0),t.computed&&function(e,t){var n=e._computedWatchers=Object.create(null),r=te();for(var i in t){var o=t[i],a="function"==typeof o?o:o.get;r||(n[i]=new fn(e,a||S,S,hn)),i in e||mn(e,i,o)}}(e,t.computed),t.watch&&t.watch!==Y&&function(e,t){for(var n in t){var r=t[n];if(Array.isArray(r))for(var i=0;i<r.length;i++)_n(e,n,r[i]);else _n(e,n,r)}}(e,t.watch)}var hn={lazy:!0};function mn(e,t,n){var r=!te();"function"==typeof n?(pn.get=r?yn(t):gn(n),pn.set=S):(pn.get=n.get?r&&!1!==n.cache?yn(t):gn(n.get):S,pn.set=n.set||S),Object.defineProperty(e,t,pn)}function yn(e){return function(){var t=this._computedWatchers&&this._computedWatchers[e];if(t)return t.dirty&&t.evaluate(),ce.target&&t.depend(),t.value}}function gn(e){return function(){return e.call(this,this)}}function _n(e,t,n,r){return s(n)&&(r=n,n=n.handler),"string"==typeof n&&(n=e[n]),e.$watch(t,n,r)}var bn=0;function $n(e){var t=e.options;if(e.super){var n=$n(e.super);if(n!==e.superOptions){e.superOptions=n;var r=function(e){var t,n=e.options,r=e.sealedOptions;for(var i in n)n[i]!==r[i]&&(t||(t={}),t[i]=n[i]);return t}(e);r&&A(e.extendOptions,r),(t=e.options=De(n,e.extendOptions)).name&&(t.components[t.name]=e)}}return t}function wn(e){this._init(e)}function Cn(e){e.cid=0;var t=1;e.extend=function(e){e=e||{};var n=this,r=n.cid,i=e._Ctor||(e._Ctor={});if(i[r])return i[r];var o=e.name||n.options.name,a=function(e){this._init(e)};return(a.prototype=Object.create(n.prototype)).constructor=a,a.cid=t++,a.options=De(n.options,e),a.super=n,a.options.props&&function(e){var t=e.options.props;for(var n in t)dn(e.prototype,"_props",n)}(a),a.options.computed&&function(e){var t=e.options.computed;for(var n in t)mn(e.prototype,n,t[n])}(a),a.extend=n.extend,a.mixin=n.mixin,a.use=n.use,M.forEach(function(e){a[e]=n[e]}),o&&(a.options.components[o]=a),a.superOptions=n.options,a.extendOptions=e,a.sealedOptions=A({},a.options),i[r]=a,a}}function xn(e){return e&&(e.Ctor.options.name||e.tag)}function kn(e,t){return Array.isArray(e)?e.indexOf(t)>-1:"string"==typeof e?e.split(",").indexOf(t)>-1:(n=e,"[object RegExp]"===a.call(n)&&e.test(t));var n}function An(e,t){var n=e.cache,r=e.keys,i=e._vnode;for(var o in n){var a=n[o];if(a){var s=xn(a.componentOptions);s&&!t(s)&&On(n,o,r,i)}}}function On(e,t,n,r){var i=e[t];!i||r&&i.tag===r.tag||i.componentInstance.$destroy(),e[t]=null,h(n,t)}!function(t){t.prototype._init=function(t){var n=this;n._uid=bn++,n._isVue=!0,t&&t._isComponent?function(e,t){var n=e.$options=Object.create(e.constructor.options),r=t._parentVnode;n.parent=t.parent,n._parentVnode=r;var i=r.componentOptions;n.propsData=i.propsData,n._parentListeners=i.listeners,n._renderChildren=i.children,n._componentTag=i.tag,t.render&&(n.render=t.render,n.staticRenderFns=t.staticRenderFns)}(n,t):n.$options=De($n(n.constructor),t||{},n),n._renderProxy=n,n._self=n,function(e){var t=e.$options,n=t.parent;if(n&&!t.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(e)}e.$parent=n,e.$root=n?n.$root:e,e.$children=[],e.$refs={},e._watcher=null,e._inactive=null,e._directInactive=!1,e._isMounted=!1,e._isDestroyed=!1,e._isBeingDestroyed=!1}(n),function(e){e._events=Object.create(null),e._hasHookEvent=!1;var t=e.$options._parentListeners;t&&qt(e,t)}(n),function(t){t._vnode=null,t._staticTrees=null;var n=t.$options,r=t.$vnode=n._parentVnode,i=r&&r.context;t.$slots=ut(n._renderChildren,i),t.$scopedSlots=e,t._c=function(e,n,r,i){return Pt(t,e,n,r,i,!1)},t.$createElement=function(e,n,r,i){return Pt(t,e,n,r,i,!0)};var o=r&&r.data;xe(t,"$attrs",o&&o.attrs||e,null,!0),xe(t,"$listeners",n._parentListeners||e,null,!0)}(n),Yt(n,"beforeCreate"),function(e){var t=ct(e.$options.inject,e);t&&($e(!1),Object.keys(t).forEach(function(n){xe(e,n,t[n])}),$e(!0))}(n),vn(n),function(e){var t=e.$options.provide;t&&(e._provided="function"==typeof t?t.call(e):t)}(n),Yt(n,"created"),n.$options.el&&n.$mount(n.$options.el)}}(wn),function(e){var t={get:function(){return this._data}},n={get:function(){return this._props}};Object.defineProperty(e.prototype,"$data",t),Object.defineProperty(e.prototype,"$props",n),e.prototype.$set=ke,e.prototype.$delete=Ae,e.prototype.$watch=function(e,t,n){if(s(t))return _n(this,e,t,n);(n=n||{}).user=!0;var r=new fn(this,e,t,n);if(n.immediate)try{t.call(this,r.value)}catch(e){Re(e,this,'callback for immediate watcher "'+r.expression+'"')}return function(){r.teardown()}}}(wn),function(e){var t=/^hook:/;e.prototype.$on=function(e,n){var r=this;if(Array.isArray(e))for(var i=0,o=e.length;i<o;i++)r.$on(e[i],n);else(r._events[e]||(r._events[e]=[])).push(n),t.test(e)&&(r._hasHookEvent=!0);return r},e.prototype.$once=function(e,t){var n=this;function r(){n.$off(e,r),t.apply(n,arguments)}return r.fn=t,n.$on(e,r),n},e.prototype.$off=function(e,t){var n=this;if(!arguments.length)return n._events=Object.create(null),n;if(Array.isArray(e)){for(var r=0,i=e.length;r<i;r++)n.$off(e[r],t);return n}var o,a=n._events[e];if(!a)return n;if(!t)return n._events[e]=null,n;for(var s=a.length;s--;)if((o=a[s])===t||o.fn===t){a.splice(s,1);break}return n},e.prototype.$emit=function(e){var t=this._events[e];if(t){t=t.length>1?k(t):t;for(var n=k(arguments,1),r='event handler for "'+e+'"',i=0,o=t.length;i<o;i++)He(t[i],this,n,this,r)}return this}}(wn),function(e){e.prototype._update=function(e,t){var n=this,r=n.$el,i=n._vnode,o=Zt(n);n._vnode=e,n.$el=i?n.__patch__(i,e):n.__patch__(n.$el,e,t,!1),o(),r&&(r.__vue__=null),n.$el&&(n.$el.__vue__=n),n.$vnode&&n.$parent&&n.$vnode===n.$parent._vnode&&(n.$parent.$el=n.$el)},e.prototype.$forceUpdate=function(){this._watcher&&this._watcher.update()},e.prototype.$destroy=function(){var e=this;if(!e._isBeingDestroyed){Yt(e,"beforeDestroy"),e._isBeingDestroyed=!0;var t=e.$parent;!t||t._isBeingDestroyed||e.$options.abstract||h(t.$children,e),e._watcher&&e._watcher.teardown();for(var n=e._watchers.length;n--;)e._watchers[n].teardown();e._data.__ob__&&e._data.__ob__.vmCount--,e._isDestroyed=!0,e.__patch__(e._vnode,null),Yt(e,"destroyed"),e.$off(),e.$el&&(e.$el.__vue__=null),e.$vnode&&(e.$vnode.parent=null)}}}(wn),function(e){St(e.prototype),e.prototype.$nextTick=function(e){return Ye(e,this)},e.prototype._render=function(){var e,t=this,n=t.$options,r=n.render,i=n._parentVnode;i&&(t.$scopedSlots=ft(i.data.scopedSlots,t.$slots,t.$scopedSlots)),t.$vnode=i;try{Ht=t,e=r.call(t._renderProxy,t.$createElement)}catch(n){Re(n,t,"render"),e=t._vnode}finally{Ht=null}return Array.isArray(e)&&1===e.length&&(e=e[0]),e instanceof pe||(e=ve()),e.parent=i,e}}(wn);var Sn=[String,RegExp,Array],Tn={KeepAlive:{name:"keep-alive",abstract:!0,props:{include:Sn,exclude:Sn,max:[String,Number]},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var e in this.cache)On(this.cache,e,this.keys)},mounted:function(){var e=this;this.$watch("include",function(t){An(e,function(e){return kn(t,e)})}),this.$watch("exclude",function(t){An(e,function(e){return!kn(t,e)})})},render:function(){var e=this.$slots.default,t=zt(e),n=t&&t.componentOptions;if(n){var r=xn(n),i=this.include,o=this.exclude;if(i&&(!r||!kn(i,r))||o&&r&&kn(o,r))return t;var a=this.cache,s=this.keys,c=null==t.key?n.Ctor.cid+(n.tag?"::"+n.tag:""):t.key;a[c]?(t.componentInstance=a[c].componentInstance,h(s,c),s.push(c)):(a[c]=t,s.push(c),this.max&&s.length>parseInt(this.max)&&On(a,s[0],s,this._vnode)),t.data.keepAlive=!0}return t||e&&e[0]}}};!function(e){var t={get:function(){return F}};Object.defineProperty(e,"config",t),e.util={warn:ae,extend:A,mergeOptions:De,defineReactive:xe},e.set=ke,e.delete=Ae,e.nextTick=Ye,e.observable=function(e){return Ce(e),e},e.options=Object.create(null),M.forEach(function(t){e.options[t+"s"]=Object.create(null)}),e.options._base=e,A(e.options.components,Tn),function(e){e.use=function(e){var t=this._installedPlugins||(this._installedPlugins=[]);if(t.indexOf(e)>-1)return this;var n=k(arguments,1);return n.unshift(this),"function"==typeof e.install?e.install.apply(e,n):"function"==typeof e&&e.apply(null,n),t.push(e),this}}(e),function(e){e.mixin=function(e){return this.options=De(this.options,e),this}}(e),Cn(e),function(e){M.forEach(function(t){e[t]=function(e,n){return n?("component"===t&&s(n)&&(n.name=n.name||e,n=this.options._base.extend(n)),"directive"===t&&"function"==typeof n&&(n={bind:n,update:n}),this.options[t+"s"][e]=n,n):this.options[t+"s"][e]}})}(e)}(wn),Object.defineProperty(wn.prototype,"$isServer",{get:te}),Object.defineProperty(wn.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(wn,"FunctionalRenderContext",{value:Tt}),wn.version="2.6.11";var En=p("style,class"),Nn=p("input,textarea,option,select,progress"),jn=function(e,t,n){return"value"===n&&Nn(e)&&"button"!==t||"selected"===n&&"option"===e||"checked"===n&&"input"===e||"muted"===n&&"video"===e},Dn=p("contenteditable,draggable,spellcheck"),Ln=p("events,caret,typing,plaintext-only"),Mn=function(e,t){return Hn(t)||"false"===t?"false":"contenteditable"===e&&Ln(t)?t:"true"},In=p("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,translate,truespeed,typemustmatch,visible"),Fn="http://www.w3.org/1999/xlink",Pn=function(e){return":"===e.charAt(5)&&"xlink"===e.slice(0,5)},Rn=function(e){return Pn(e)?e.slice(6,e.length):""},Hn=function(e){return null==e||!1===e};function Bn(e){for(var t=e.data,r=e,i=e;n(i.componentInstance);)(i=i.componentInstance._vnode)&&i.data&&(t=Un(i.data,t));for(;n(r=r.parent);)r&&r.data&&(t=Un(t,r.data));return function(e,t){if(n(e)||n(t))return zn(e,Vn(t));return""}(t.staticClass,t.class)}function Un(e,t){return{staticClass:zn(e.staticClass,t.staticClass),class:n(e.class)?[e.class,t.class]:t.class}}function zn(e,t){return e?t?e+" "+t:e:t||""}function Vn(e){return Array.isArray(e)?function(e){for(var t,r="",i=0,o=e.length;i<o;i++)n(t=Vn(e[i]))&&""!==t&&(r&&(r+=" "),r+=t);return r}(e):o(e)?function(e){var t="";for(var n in e)e[n]&&(t&&(t+=" "),t+=n);return t}(e):"string"==typeof e?e:""}var Kn={svg:"http://www.w3.org/2000/svg",math:"http://www.w3.org/1998/Math/MathML"},Jn=p("html,body,base,head,link,meta,style,title,address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,menuitem,summary,content,element,shadow,template,blockquote,iframe,tfoot"),qn=p("svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view",!0),Wn=function(e){return Jn(e)||qn(e)};function Zn(e){return qn(e)?"svg":"math"===e?"math":void 0}var Gn=Object.create(null);var Xn=p("text,number,password,search,email,tel,url");function Yn(e){if("string"==typeof e){var t=document.querySelector(e);return t||document.createElement("div")}return e}var Qn=Object.freeze({createElement:function(e,t){var n=document.createElement(e);return"select"!==e?n:(t.data&&t.data.attrs&&void 0!==t.data.attrs.multiple&&n.setAttribute("multiple","multiple"),n)},createElementNS:function(e,t){return document.createElementNS(Kn[e],t)},createTextNode:function(e){return document.createTextNode(e)},createComment:function(e){return document.createComment(e)},insertBefore:function(e,t,n){e.insertBefore(t,n)},removeChild:function(e,t){e.removeChild(t)},appendChild:function(e,t){e.appendChild(t)},parentNode:function(e){return e.parentNode},nextSibling:function(e){return e.nextSibling},tagName:function(e){return e.tagName},setTextContent:function(e,t){e.textContent=t},setStyleScope:function(e,t){e.setAttribute(t,"")}}),er={create:function(e,t){tr(t)},update:function(e,t){e.data.ref!==t.data.ref&&(tr(e,!0),tr(t))},destroy:function(e){tr(e,!0)}};function tr(e,t){var r=e.data.ref;if(n(r)){var i=e.context,o=e.componentInstance||e.elm,a=i.$refs;t?Array.isArray(a[r])?h(a[r],o):a[r]===o&&(a[r]=void 0):e.data.refInFor?Array.isArray(a[r])?a[r].indexOf(o)<0&&a[r].push(o):a[r]=[o]:a[r]=o}}var nr=new pe("",{},[]),rr=["create","activate","update","remove","destroy"];function ir(e,i){return e.key===i.key&&(e.tag===i.tag&&e.isComment===i.isComment&&n(e.data)===n(i.data)&&function(e,t){if("input"!==e.tag)return!0;var r,i=n(r=e.data)&&n(r=r.attrs)&&r.type,o=n(r=t.data)&&n(r=r.attrs)&&r.type;return i===o||Xn(i)&&Xn(o)}(e,i)||r(e.isAsyncPlaceholder)&&e.asyncFactory===i.asyncFactory&&t(i.asyncFactory.error))}function or(e,t,r){var i,o,a={};for(i=t;i<=r;++i)n(o=e[i].key)&&(a[o]=i);return a}var ar={create:sr,update:sr,destroy:function(e){sr(e,nr)}};function sr(e,t){(e.data.directives||t.data.directives)&&function(e,t){var n,r,i,o=e===nr,a=t===nr,s=ur(e.data.directives,e.context),c=ur(t.data.directives,t.context),u=[],l=[];for(n in c)r=s[n],i=c[n],r?(i.oldValue=r.value,i.oldArg=r.arg,fr(i,"update",t,e),i.def&&i.def.componentUpdated&&l.push(i)):(fr(i,"bind",t,e),i.def&&i.def.inserted&&u.push(i));if(u.length){var f=function(){for(var n=0;n<u.length;n++)fr(u[n],"inserted",t,e)};o?it(t,"insert",f):f()}l.length&&it(t,"postpatch",function(){for(var n=0;n<l.length;n++)fr(l[n],"componentUpdated",t,e)});if(!o)for(n in s)c[n]||fr(s[n],"unbind",e,e,a)}(e,t)}var cr=Object.create(null);function ur(e,t){var n,r,i=Object.create(null);if(!e)return i;for(n=0;n<e.length;n++)(r=e[n]).modifiers||(r.modifiers=cr),i[lr(r)]=r,r.def=Le(t.$options,"directives",r.name);return i}function lr(e){return e.rawName||e.name+"."+Object.keys(e.modifiers||{}).join(".")}function fr(e,t,n,r,i){var o=e.def&&e.def[t];if(o)try{o(n.elm,e,n,r,i)}catch(r){Re(r,n.context,"directive "+e.name+" "+t+" hook")}}var pr=[er,ar];function dr(e,r){var i=r.componentOptions;if(!(n(i)&&!1===i.Ctor.options.inheritAttrs||t(e.data.attrs)&&t(r.data.attrs))){var o,a,s=r.elm,c=e.data.attrs||{},u=r.data.attrs||{};for(o in n(u.__ob__)&&(u=r.data.attrs=A({},u)),u)a=u[o],c[o]!==a&&vr(s,o,a);for(o in(q||Z)&&u.value!==c.value&&vr(s,"value",u.value),c)t(u[o])&&(Pn(o)?s.removeAttributeNS(Fn,Rn(o)):Dn(o)||s.removeAttribute(o))}}function vr(e,t,n){e.tagName.indexOf("-")>-1?hr(e,t,n):In(t)?Hn(n)?e.removeAttribute(t):(n="allowfullscreen"===t&&"EMBED"===e.tagName?"true":t,e.setAttribute(t,n)):Dn(t)?e.setAttribute(t,Mn(t,n)):Pn(t)?Hn(n)?e.removeAttributeNS(Fn,Rn(t)):e.setAttributeNS(Fn,t,n):hr(e,t,n)}function hr(e,t,n){if(Hn(n))e.removeAttribute(t);else{if(q&&!W&&"TEXTAREA"===e.tagName&&"placeholder"===t&&""!==n&&!e.__ieph){var r=function(t){t.stopImmediatePropagation(),e.removeEventListener("input",r)};e.addEventListener("input",r),e.__ieph=!0}e.setAttribute(t,n)}}var mr={create:dr,update:dr};function yr(e,r){var i=r.elm,o=r.data,a=e.data;if(!(t(o.staticClass)&&t(o.class)&&(t(a)||t(a.staticClass)&&t(a.class)))){var s=Bn(r),c=i._transitionClasses;n(c)&&(s=zn(s,Vn(c))),s!==i._prevClass&&(i.setAttribute("class",s),i._prevClass=s)}}var gr,_r,br,$r,wr,Cr,xr={create:yr,update:yr},kr=/[\w).+\-_$\]]/;function Ar(e){var t,n,r,i,o,a=!1,s=!1,c=!1,u=!1,l=0,f=0,p=0,d=0;for(r=0;r<e.length;r++)if(n=t,t=e.charCodeAt(r),a)39===t&&92!==n&&(a=!1);else if(s)34===t&&92!==n&&(s=!1);else if(c)96===t&&92!==n&&(c=!1);else if(u)47===t&&92!==n&&(u=!1);else if(124!==t||124===e.charCodeAt(r+1)||124===e.charCodeAt(r-1)||l||f||p){switch(t){case 34:s=!0;break;case 39:a=!0;break;case 96:c=!0;break;case 40:p++;break;case 41:p--;break;case 91:f++;break;case 93:f--;break;case 123:l++;break;case 125:l--}if(47===t){for(var v=r-1,h=void 0;v>=0&&" "===(h=e.charAt(v));v--);h&&kr.test(h)||(u=!0)}}else void 0===i?(d=r+1,i=e.slice(0,r).trim()):m();function m(){(o||(o=[])).push(e.slice(d,r).trim()),d=r+1}if(void 0===i?i=e.slice(0,r).trim():0!==d&&m(),o)for(r=0;r<o.length;r++)i=Or(i,o[r]);return i}function Or(e,t){var n=t.indexOf("(");if(n<0)return'_f("'+t+'")('+e+")";var r=t.slice(0,n),i=t.slice(n+1);return'_f("'+r+'")('+e+(")"!==i?","+i:i)}function Sr(e,t){console.error("[Vue compiler]: "+e)}function Tr(e,t){return e?e.map(function(e){return e[t]}).filter(function(e){return e}):[]}function Er(e,t,n,r,i){(e.props||(e.props=[])).push(Rr({name:t,value:n,dynamic:i},r)),e.plain=!1}function Nr(e,t,n,r,i){(i?e.dynamicAttrs||(e.dynamicAttrs=[]):e.attrs||(e.attrs=[])).push(Rr({name:t,value:n,dynamic:i},r)),e.plain=!1}function jr(e,t,n,r){e.attrsMap[t]=n,e.attrsList.push(Rr({name:t,value:n},r))}function Dr(e,t,n,r,i,o,a,s){(e.directives||(e.directives=[])).push(Rr({name:t,rawName:n,value:r,arg:i,isDynamicArg:o,modifiers:a},s)),e.plain=!1}function Lr(e,t,n){return n?"_p("+t+',"'+e+'")':e+t}function Mr(t,n,r,i,o,a,s,c){var u;(i=i||e).right?c?n="("+n+")==='click'?'contextmenu':("+n+")":"click"===n&&(n="contextmenu",delete i.right):i.middle&&(c?n="("+n+")==='click'?'mouseup':("+n+")":"click"===n&&(n="mouseup")),i.capture&&(delete i.capture,n=Lr("!",n,c)),i.once&&(delete i.once,n=Lr("~",n,c)),i.passive&&(delete i.passive,n=Lr("&",n,c)),i.native?(delete i.native,u=t.nativeEvents||(t.nativeEvents={})):u=t.events||(t.events={});var l=Rr({value:r.trim(),dynamic:c},s);i!==e&&(l.modifiers=i);var f=u[n];Array.isArray(f)?o?f.unshift(l):f.push(l):u[n]=f?o?[l,f]:[f,l]:l,t.plain=!1}function Ir(e,t,n){var r=Fr(e,":"+t)||Fr(e,"v-bind:"+t);if(null!=r)return Ar(r);if(!1!==n){var i=Fr(e,t);if(null!=i)return JSON.stringify(i)}}function Fr(e,t,n){var r;if(null!=(r=e.attrsMap[t]))for(var i=e.attrsList,o=0,a=i.length;o<a;o++)if(i[o].name===t){i.splice(o,1);break}return n&&delete e.attrsMap[t],r}function Pr(e,t){for(var n=e.attrsList,r=0,i=n.length;r<i;r++){var o=n[r];if(t.test(o.name))return n.splice(r,1),o}}function Rr(e,t){return t&&(null!=t.start&&(e.start=t.start),null!=t.end&&(e.end=t.end)),e}function Hr(e,t,n){var r=n||{},i=r.number,o="$$v";r.trim&&(o="(typeof $$v === 'string'? $$v.trim(): $$v)"),i&&(o="_n("+o+")");var a=Br(t,o);e.model={value:"("+t+")",expression:JSON.stringify(t),callback:"function ($$v) {"+a+"}"}}function Br(e,t){var n=function(e){if(e=e.trim(),gr=e.length,e.indexOf("[")<0||e.lastIndexOf("]")<gr-1)return($r=e.lastIndexOf("."))>-1?{exp:e.slice(0,$r),key:'"'+e.slice($r+1)+'"'}:{exp:e,key:null};_r=e,$r=wr=Cr=0;for(;!zr();)Vr(br=Ur())?Jr(br):91===br&&Kr(br);return{exp:e.slice(0,wr),key:e.slice(wr+1,Cr)}}(e);return null===n.key?e+"="+t:"$set("+n.exp+", "+n.key+", "+t+")"}function Ur(){return _r.charCodeAt(++$r)}function zr(){return $r>=gr}function Vr(e){return 34===e||39===e}function Kr(e){var t=1;for(wr=$r;!zr();)if(Vr(e=Ur()))Jr(e);else if(91===e&&t++,93===e&&t--,0===t){Cr=$r;break}}function Jr(e){for(var t=e;!zr()&&(e=Ur())!==t;);}var qr,Wr="__r",Zr="__c";function Gr(e,t,n){var r=qr;return function i(){null!==t.apply(null,arguments)&&Qr(e,i,n,r)}}var Xr=Ve&&!(X&&Number(X[1])<=53);function Yr(e,t,n,r){if(Xr){var i=an,o=t;t=o._wrapper=function(e){if(e.target===e.currentTarget||e.timeStamp>=i||e.timeStamp<=0||e.target.ownerDocument!==document)return o.apply(this,arguments)}}qr.addEventListener(e,t,Q?{capture:n,passive:r}:n)}function Qr(e,t,n,r){(r||qr).removeEventListener(e,t._wrapper||t,n)}function ei(e,r){if(!t(e.data.on)||!t(r.data.on)){var i=r.data.on||{},o=e.data.on||{};qr=r.elm,function(e){if(n(e[Wr])){var t=q?"change":"input";e[t]=[].concat(e[Wr],e[t]||[]),delete e[Wr]}n(e[Zr])&&(e.change=[].concat(e[Zr],e.change||[]),delete e[Zr])}(i),rt(i,o,Yr,Qr,Gr,r.context),qr=void 0}}var ti,ni={create:ei,update:ei};function ri(e,r){if(!t(e.data.domProps)||!t(r.data.domProps)){var i,o,a=r.elm,s=e.data.domProps||{},c=r.data.domProps||{};for(i in n(c.__ob__)&&(c=r.data.domProps=A({},c)),s)i in c||(a[i]="");for(i in c){if(o=c[i],"textContent"===i||"innerHTML"===i){if(r.children&&(r.children.length=0),o===s[i])continue;1===a.childNodes.length&&a.removeChild(a.childNodes[0])}if("value"===i&&"PROGRESS"!==a.tagName){a._value=o;var u=t(o)?"":String(o);ii(a,u)&&(a.value=u)}else if("innerHTML"===i&&qn(a.tagName)&&t(a.innerHTML)){(ti=ti||document.createElement("div")).innerHTML="<svg>"+o+"</svg>";for(var l=ti.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;l.firstChild;)a.appendChild(l.firstChild)}else if(o!==s[i])try{a[i]=o}catch(e){}}}}function ii(e,t){return!e.composing&&("OPTION"===e.tagName||function(e,t){var n=!0;try{n=document.activeElement!==e}catch(e){}return n&&e.value!==t}(e,t)||function(e,t){var r=e.value,i=e._vModifiers;if(n(i)){if(i.number)return f(r)!==f(t);if(i.trim)return r.trim()!==t.trim()}return r!==t}(e,t))}var oi={create:ri,update:ri},ai=g(function(e){var t={},n=/:(.+)/;return e.split(/;(?![^(]*\))/g).forEach(function(e){if(e){var r=e.split(n);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t});function si(e){var t=ci(e.style);return e.staticStyle?A(e.staticStyle,t):t}function ci(e){return Array.isArray(e)?O(e):"string"==typeof e?ai(e):e}var ui,li=/^--/,fi=/\s*!important$/,pi=function(e,t,n){if(li.test(t))e.style.setProperty(t,n);else if(fi.test(n))e.style.setProperty(C(t),n.replace(fi,""),"important");else{var r=vi(t);if(Array.isArray(n))for(var i=0,o=n.length;i<o;i++)e.style[r]=n[i];else e.style[r]=n}},di=["Webkit","Moz","ms"],vi=g(function(e){if(ui=ui||document.createElement("div").style,"filter"!==(e=b(e))&&e in ui)return e;for(var t=e.charAt(0).toUpperCase()+e.slice(1),n=0;n<di.length;n++){var r=di[n]+t;if(r in ui)return r}});function hi(e,r){var i=r.data,o=e.data;if(!(t(i.staticStyle)&&t(i.style)&&t(o.staticStyle)&&t(o.style))){var a,s,c=r.elm,u=o.staticStyle,l=o.normalizedStyle||o.style||{},f=u||l,p=ci(r.data.style)||{};r.data.normalizedStyle=n(p.__ob__)?A({},p):p;var d=function(e,t){var n,r={};if(t)for(var i=e;i.componentInstance;)(i=i.componentInstance._vnode)&&i.data&&(n=si(i.data))&&A(r,n);(n=si(e.data))&&A(r,n);for(var o=e;o=o.parent;)o.data&&(n=si(o.data))&&A(r,n);return r}(r,!0);for(s in f)t(d[s])&&pi(c,s,"");for(s in d)(a=d[s])!==f[s]&&pi(c,s,null==a?"":a)}}var mi={create:hi,update:hi},yi=/\s+/;function gi(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(yi).forEach(function(t){return e.classList.add(t)}):e.classList.add(t);else{var n=" "+(e.getAttribute("class")||"")+" ";n.indexOf(" "+t+" ")<0&&e.setAttribute("class",(n+t).trim())}}function _i(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(yi).forEach(function(t){return e.classList.remove(t)}):e.classList.remove(t),e.classList.length||e.removeAttribute("class");else{for(var n=" "+(e.getAttribute("class")||"")+" ",r=" "+t+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?e.setAttribute("class",n):e.removeAttribute("class")}}function bi(e){if(e){if("object"==typeof e){var t={};return!1!==e.css&&A(t,$i(e.name||"v")),A(t,e),t}return"string"==typeof e?$i(e):void 0}}var $i=g(function(e){return{enterClass:e+"-enter",enterToClass:e+"-enter-to",enterActiveClass:e+"-enter-active",leaveClass:e+"-leave",leaveToClass:e+"-leave-to",leaveActiveClass:e+"-leave-active"}}),wi=z&&!W,Ci="transition",xi="animation",ki="transition",Ai="transitionend",Oi="animation",Si="animationend";wi&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(ki="WebkitTransition",Ai="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(Oi="WebkitAnimation",Si="webkitAnimationEnd"));var Ti=z?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(e){return e()};function Ei(e){Ti(function(){Ti(e)})}function Ni(e,t){var n=e._transitionClasses||(e._transitionClasses=[]);n.indexOf(t)<0&&(n.push(t),gi(e,t))}function ji(e,t){e._transitionClasses&&h(e._transitionClasses,t),_i(e,t)}function Di(e,t,n){var r=Mi(e,t),i=r.type,o=r.timeout,a=r.propCount;if(!i)return n();var s=i===Ci?Ai:Si,c=0,u=function(){e.removeEventListener(s,l),n()},l=function(t){t.target===e&&++c>=a&&u()};setTimeout(function(){c<a&&u()},o+1),e.addEventListener(s,l)}var Li=/\b(transform|all)(,|$)/;function Mi(e,t){var n,r=window.getComputedStyle(e),i=(r[ki+"Delay"]||"").split(", "),o=(r[ki+"Duration"]||"").split(", "),a=Ii(i,o),s=(r[Oi+"Delay"]||"").split(", "),c=(r[Oi+"Duration"]||"").split(", "),u=Ii(s,c),l=0,f=0;return t===Ci?a>0&&(n=Ci,l=a,f=o.length):t===xi?u>0&&(n=xi,l=u,f=c.length):f=(n=(l=Math.max(a,u))>0?a>u?Ci:xi:null)?n===Ci?o.length:c.length:0,{type:n,timeout:l,propCount:f,hasTransform:n===Ci&&Li.test(r[ki+"Property"])}}function Ii(e,t){for(;e.length<t.length;)e=e.concat(e);return Math.max.apply(null,t.map(function(t,n){return Fi(t)+Fi(e[n])}))}function Fi(e){return 1e3*Number(e.slice(0,-1).replace(",","."))}function Pi(e,r){var i=e.elm;n(i._leaveCb)&&(i._leaveCb.cancelled=!0,i._leaveCb());var a=bi(e.data.transition);if(!t(a)&&!n(i._enterCb)&&1===i.nodeType){for(var s=a.css,c=a.type,u=a.enterClass,l=a.enterToClass,p=a.enterActiveClass,d=a.appearClass,v=a.appearToClass,h=a.appearActiveClass,m=a.beforeEnter,y=a.enter,g=a.afterEnter,_=a.enterCancelled,b=a.beforeAppear,$=a.appear,w=a.afterAppear,C=a.appearCancelled,x=a.duration,k=Wt,A=Wt.$vnode;A&&A.parent;)k=A.context,A=A.parent;var O=!k._isMounted||!e.isRootInsert;if(!O||$||""===$){var S=O&&d?d:u,T=O&&h?h:p,E=O&&v?v:l,N=O&&b||m,j=O&&"function"==typeof $?$:y,L=O&&w||g,M=O&&C||_,I=f(o(x)?x.enter:x),F=!1!==s&&!W,P=Bi(j),R=i._enterCb=D(function(){F&&(ji(i,E),ji(i,T)),R.cancelled?(F&&ji(i,S),M&&M(i)):L&&L(i),i._enterCb=null});e.data.show||it(e,"insert",function(){var t=i.parentNode,n=t&&t._pending&&t._pending[e.key];n&&n.tag===e.tag&&n.elm._leaveCb&&n.elm._leaveCb(),j&&j(i,R)}),N&&N(i),F&&(Ni(i,S),Ni(i,T),Ei(function(){ji(i,S),R.cancelled||(Ni(i,E),P||(Hi(I)?setTimeout(R,I):Di(i,c,R)))})),e.data.show&&(r&&r(),j&&j(i,R)),F||P||R()}}}function Ri(e,r){var i=e.elm;n(i._enterCb)&&(i._enterCb.cancelled=!0,i._enterCb());var a=bi(e.data.transition);if(t(a)||1!==i.nodeType)return r();if(!n(i._leaveCb)){var s=a.css,c=a.type,u=a.leaveClass,l=a.leaveToClass,p=a.leaveActiveClass,d=a.beforeLeave,v=a.leave,h=a.afterLeave,m=a.leaveCancelled,y=a.delayLeave,g=a.duration,_=!1!==s&&!W,b=Bi(v),$=f(o(g)?g.leave:g),w=i._leaveCb=D(function(){i.parentNode&&i.parentNode._pending&&(i.parentNode._pending[e.key]=null),_&&(ji(i,l),ji(i,p)),w.cancelled?(_&&ji(i,u),m&&m(i)):(r(),h&&h(i)),i._leaveCb=null});y?y(C):C()}function C(){w.cancelled||(!e.data.show&&i.parentNode&&((i.parentNode._pending||(i.parentNode._pending={}))[e.key]=e),d&&d(i),_&&(Ni(i,u),Ni(i,p),Ei(function(){ji(i,u),w.cancelled||(Ni(i,l),b||(Hi($)?setTimeout(w,$):Di(i,c,w)))})),v&&v(i,w),_||b||w())}}function Hi(e){return"number"==typeof e&&!isNaN(e)}function Bi(e){if(t(e))return!1;var r=e.fns;return n(r)?Bi(Array.isArray(r)?r[0]:r):(e._length||e.length)>1}function Ui(e,t){!0!==t.data.show&&Pi(t)}var zi=function(e){var o,a,s={},c=e.modules,u=e.nodeOps;for(o=0;o<rr.length;++o)for(s[rr[o]]=[],a=0;a<c.length;++a)n(c[a][rr[o]])&&s[rr[o]].push(c[a][rr[o]]);function l(e){var t=u.parentNode(e);n(t)&&u.removeChild(t,e)}function f(e,t,i,o,a,c,l){if(n(e.elm)&&n(c)&&(e=c[l]=me(e)),e.isRootInsert=!a,!function(e,t,i,o){var a=e.data;if(n(a)){var c=n(e.componentInstance)&&a.keepAlive;if(n(a=a.hook)&&n(a=a.init)&&a(e,!1),n(e.componentInstance))return d(e,t),v(i,e.elm,o),r(c)&&function(e,t,r,i){for(var o,a=e;a.componentInstance;)if(a=a.componentInstance._vnode,n(o=a.data)&&n(o=o.transition)){for(o=0;o<s.activate.length;++o)s.activate[o](nr,a);t.push(a);break}v(r,e.elm,i)}(e,t,i,o),!0}}(e,t,i,o)){var f=e.data,p=e.children,m=e.tag;n(m)?(e.elm=e.ns?u.createElementNS(e.ns,m):u.createElement(m,e),g(e),h(e,p,t),n(f)&&y(e,t),v(i,e.elm,o)):r(e.isComment)?(e.elm=u.createComment(e.text),v(i,e.elm,o)):(e.elm=u.createTextNode(e.text),v(i,e.elm,o))}}function d(e,t){n(e.data.pendingInsert)&&(t.push.apply(t,e.data.pendingInsert),e.data.pendingInsert=null),e.elm=e.componentInstance.$el,m(e)?(y(e,t),g(e)):(tr(e),t.push(e))}function v(e,t,r){n(e)&&(n(r)?u.parentNode(r)===e&&u.insertBefore(e,t,r):u.appendChild(e,t))}function h(e,t,n){if(Array.isArray(t))for(var r=0;r<t.length;++r)f(t[r],n,e.elm,null,!0,t,r);else i(e.text)&&u.appendChild(e.elm,u.createTextNode(String(e.text)))}function m(e){for(;e.componentInstance;)e=e.componentInstance._vnode;return n(e.tag)}function y(e,t){for(var r=0;r<s.create.length;++r)s.create[r](nr,e);n(o=e.data.hook)&&(n(o.create)&&o.create(nr,e),n(o.insert)&&t.push(e))}function g(e){var t;if(n(t=e.fnScopeId))u.setStyleScope(e.elm,t);else for(var r=e;r;)n(t=r.context)&&n(t=t.$options._scopeId)&&u.setStyleScope(e.elm,t),r=r.parent;n(t=Wt)&&t!==e.context&&t!==e.fnContext&&n(t=t.$options._scopeId)&&u.setStyleScope(e.elm,t)}function _(e,t,n,r,i,o){for(;r<=i;++r)f(n[r],o,e,t,!1,n,r)}function b(e){var t,r,i=e.data;if(n(i))for(n(t=i.hook)&&n(t=t.destroy)&&t(e),t=0;t<s.destroy.length;++t)s.destroy[t](e);if(n(t=e.children))for(r=0;r<e.children.length;++r)b(e.children[r])}function $(e,t,r){for(;t<=r;++t){var i=e[t];n(i)&&(n(i.tag)?(w(i),b(i)):l(i.elm))}}function w(e,t){if(n(t)||n(e.data)){var r,i=s.remove.length+1;for(n(t)?t.listeners+=i:t=function(e,t){function n(){0==--n.listeners&&l(e)}return n.listeners=t,n}(e.elm,i),n(r=e.componentInstance)&&n(r=r._vnode)&&n(r.data)&&w(r,t),r=0;r<s.remove.length;++r)s.remove[r](e,t);n(r=e.data.hook)&&n(r=r.remove)?r(e,t):t()}else l(e.elm)}function C(e,t,r,i){for(var o=r;o<i;o++){var a=t[o];if(n(a)&&ir(e,a))return o}}function x(e,i,o,a,c,l){if(e!==i){n(i.elm)&&n(a)&&(i=a[c]=me(i));var p=i.elm=e.elm;if(r(e.isAsyncPlaceholder))n(i.asyncFactory.resolved)?O(e.elm,i,o):i.isAsyncPlaceholder=!0;else if(r(i.isStatic)&&r(e.isStatic)&&i.key===e.key&&(r(i.isCloned)||r(i.isOnce)))i.componentInstance=e.componentInstance;else{var d,v=i.data;n(v)&&n(d=v.hook)&&n(d=d.prepatch)&&d(e,i);var h=e.children,y=i.children;if(n(v)&&m(i)){for(d=0;d<s.update.length;++d)s.update[d](e,i);n(d=v.hook)&&n(d=d.update)&&d(e,i)}t(i.text)?n(h)&&n(y)?h!==y&&function(e,r,i,o,a){for(var s,c,l,p=0,d=0,v=r.length-1,h=r[0],m=r[v],y=i.length-1,g=i[0],b=i[y],w=!a;p<=v&&d<=y;)t(h)?h=r[++p]:t(m)?m=r[--v]:ir(h,g)?(x(h,g,o,i,d),h=r[++p],g=i[++d]):ir(m,b)?(x(m,b,o,i,y),m=r[--v],b=i[--y]):ir(h,b)?(x(h,b,o,i,y),w&&u.insertBefore(e,h.elm,u.nextSibling(m.elm)),h=r[++p],b=i[--y]):ir(m,g)?(x(m,g,o,i,d),w&&u.insertBefore(e,m.elm,h.elm),m=r[--v],g=i[++d]):(t(s)&&(s=or(r,p,v)),t(c=n(g.key)?s[g.key]:C(g,r,p,v))?f(g,o,e,h.elm,!1,i,d):ir(l=r[c],g)?(x(l,g,o,i,d),r[c]=void 0,w&&u.insertBefore(e,l.elm,h.elm)):f(g,o,e,h.elm,!1,i,d),g=i[++d]);p>v?_(e,t(i[y+1])?null:i[y+1].elm,i,d,y,o):d>y&&$(r,p,v)}(p,h,y,o,l):n(y)?(n(e.text)&&u.setTextContent(p,""),_(p,null,y,0,y.length-1,o)):n(h)?$(h,0,h.length-1):n(e.text)&&u.setTextContent(p,""):e.text!==i.text&&u.setTextContent(p,i.text),n(v)&&n(d=v.hook)&&n(d=d.postpatch)&&d(e,i)}}}function k(e,t,i){if(r(i)&&n(e.parent))e.parent.data.pendingInsert=t;else for(var o=0;o<t.length;++o)t[o].data.hook.insert(t[o])}var A=p("attrs,class,staticClass,staticStyle,key");function O(e,t,i,o){var a,s=t.tag,c=t.data,u=t.children;if(o=o||c&&c.pre,t.elm=e,r(t.isComment)&&n(t.asyncFactory))return t.isAsyncPlaceholder=!0,!0;if(n(c)&&(n(a=c.hook)&&n(a=a.init)&&a(t,!0),n(a=t.componentInstance)))return d(t,i),!0;if(n(s)){if(n(u))if(e.hasChildNodes())if(n(a=c)&&n(a=a.domProps)&&n(a=a.innerHTML)){if(a!==e.innerHTML)return!1}else{for(var l=!0,f=e.firstChild,p=0;p<u.length;p++){if(!f||!O(f,u[p],i,o)){l=!1;break}f=f.nextSibling}if(!l||f)return!1}else h(t,u,i);if(n(c)){var v=!1;for(var m in c)if(!A(m)){v=!0,y(t,i);break}!v&&c.class&&et(c.class)}}else e.data!==t.text&&(e.data=t.text);return!0}return function(e,i,o,a){if(!t(i)){var c,l=!1,p=[];if(t(e))l=!0,f(i,p);else{var d=n(e.nodeType);if(!d&&ir(e,i))x(e,i,p,null,null,a);else{if(d){if(1===e.nodeType&&e.hasAttribute(L)&&(e.removeAttribute(L),o=!0),r(o)&&O(e,i,p))return k(i,p,!0),e;c=e,e=new pe(u.tagName(c).toLowerCase(),{},[],void 0,c)}var v=e.elm,h=u.parentNode(v);if(f(i,p,v._leaveCb?null:h,u.nextSibling(v)),n(i.parent))for(var y=i.parent,g=m(i);y;){for(var _=0;_<s.destroy.length;++_)s.destroy[_](y);if(y.elm=i.elm,g){for(var w=0;w<s.create.length;++w)s.create[w](nr,y);var C=y.data.hook.insert;if(C.merged)for(var A=1;A<C.fns.length;A++)C.fns[A]()}else tr(y);y=y.parent}n(h)?$([e],0,0):n(e.tag)&&b(e)}}return k(i,p,l),i.elm}n(e)&&b(e)}}({nodeOps:Qn,modules:[mr,xr,ni,oi,mi,z?{create:Ui,activate:Ui,remove:function(e,t){!0!==e.data.show?Ri(e,t):t()}}:{}].concat(pr)});W&&document.addEventListener("selectionchange",function(){var e=document.activeElement;e&&e.vmodel&&Xi(e,"input")});var Vi={inserted:function(e,t,n,r){"select"===n.tag?(r.elm&&!r.elm._vOptions?it(n,"postpatch",function(){Vi.componentUpdated(e,t,n)}):Ki(e,t,n.context),e._vOptions=[].map.call(e.options,Wi)):("textarea"===n.tag||Xn(e.type))&&(e._vModifiers=t.modifiers,t.modifiers.lazy||(e.addEventListener("compositionstart",Zi),e.addEventListener("compositionend",Gi),e.addEventListener("change",Gi),W&&(e.vmodel=!0)))},componentUpdated:function(e,t,n){if("select"===n.tag){Ki(e,t,n.context);var r=e._vOptions,i=e._vOptions=[].map.call(e.options,Wi);if(i.some(function(e,t){return!N(e,r[t])}))(e.multiple?t.value.some(function(e){return qi(e,i)}):t.value!==t.oldValue&&qi(t.value,i))&&Xi(e,"change")}}};function Ki(e,t,n){Ji(e,t,n),(q||Z)&&setTimeout(function(){Ji(e,t,n)},0)}function Ji(e,t,n){var r=t.value,i=e.multiple;if(!i||Array.isArray(r)){for(var o,a,s=0,c=e.options.length;s<c;s++)if(a=e.options[s],i)o=j(r,Wi(a))>-1,a.selected!==o&&(a.selected=o);else if(N(Wi(a),r))return void(e.selectedIndex!==s&&(e.selectedIndex=s));i||(e.selectedIndex=-1)}}function qi(e,t){return t.every(function(t){return!N(t,e)})}function Wi(e){return"_value"in e?e._value:e.value}function Zi(e){e.target.composing=!0}function Gi(e){e.target.composing&&(e.target.composing=!1,Xi(e.target,"input"))}function Xi(e,t){var n=document.createEvent("HTMLEvents");n.initEvent(t,!0,!0),e.dispatchEvent(n)}function Yi(e){return!e.componentInstance||e.data&&e.data.transition?e:Yi(e.componentInstance._vnode)}var Qi={model:Vi,show:{bind:function(e,t,n){var r=t.value,i=(n=Yi(n)).data&&n.data.transition,o=e.__vOriginalDisplay="none"===e.style.display?"":e.style.display;r&&i?(n.data.show=!0,Pi(n,function(){e.style.display=o})):e.style.display=r?o:"none"},update:function(e,t,n){var r=t.value;!r!=!t.oldValue&&((n=Yi(n)).data&&n.data.transition?(n.data.show=!0,r?Pi(n,function(){e.style.display=e.__vOriginalDisplay}):Ri(n,function(){e.style.display="none"})):e.style.display=r?e.__vOriginalDisplay:"none")},unbind:function(e,t,n,r,i){i||(e.style.display=e.__vOriginalDisplay)}}},eo={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function to(e){var t=e&&e.componentOptions;return t&&t.Ctor.options.abstract?to(zt(t.children)):e}function no(e){var t={},n=e.$options;for(var r in n.propsData)t[r]=e[r];var i=n._parentListeners;for(var o in i)t[b(o)]=i[o];return t}function ro(e,t){if(/\d-keep-alive$/.test(t.tag))return e("keep-alive",{props:t.componentOptions.propsData})}var io=function(e){return e.tag||Ut(e)},oo=function(e){return"show"===e.name},ao={name:"transition",props:eo,abstract:!0,render:function(e){var t=this,n=this.$slots.default;if(n&&(n=n.filter(io)).length){var r=this.mode,o=n[0];if(function(e){for(;e=e.parent;)if(e.data.transition)return!0}(this.$vnode))return o;var a=to(o);if(!a)return o;if(this._leaving)return ro(e,o);var s="__transition-"+this._uid+"-";a.key=null==a.key?a.isComment?s+"comment":s+a.tag:i(a.key)?0===String(a.key).indexOf(s)?a.key:s+a.key:a.key;var c=(a.data||(a.data={})).transition=no(this),u=this._vnode,l=to(u);if(a.data.directives&&a.data.directives.some(oo)&&(a.data.show=!0),l&&l.data&&!function(e,t){return t.key===e.key&&t.tag===e.tag}(a,l)&&!Ut(l)&&(!l.componentInstance||!l.componentInstance._vnode.isComment)){var f=l.data.transition=A({},c);if("out-in"===r)return this._leaving=!0,it(f,"afterLeave",function(){t._leaving=!1,t.$forceUpdate()}),ro(e,o);if("in-out"===r){if(Ut(a))return u;var p,d=function(){p()};it(c,"afterEnter",d),it(c,"enterCancelled",d),it(f,"delayLeave",function(e){p=e})}}return o}}},so=A({tag:String,moveClass:String},eo);function co(e){e.elm._moveCb&&e.elm._moveCb(),e.elm._enterCb&&e.elm._enterCb()}function uo(e){e.data.newPos=e.elm.getBoundingClientRect()}function lo(e){var t=e.data.pos,n=e.data.newPos,r=t.left-n.left,i=t.top-n.top;if(r||i){e.data.moved=!0;var o=e.elm.style;o.transform=o.WebkitTransform="translate("+r+"px,"+i+"px)",o.transitionDuration="0s"}}delete so.mode;var fo={Transition:ao,TransitionGroup:{props:so,beforeMount:function(){var e=this,t=this._update;this._update=function(n,r){var i=Zt(e);e.__patch__(e._vnode,e.kept,!1,!0),e._vnode=e.kept,i(),t.call(e,n,r)}},render:function(e){for(var t=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,i=this.$slots.default||[],o=this.children=[],a=no(this),s=0;s<i.length;s++){var c=i[s];c.tag&&null!=c.key&&0!==String(c.key).indexOf("__vlist")&&(o.push(c),n[c.key]=c,(c.data||(c.data={})).transition=a)}if(r){for(var u=[],l=[],f=0;f<r.length;f++){var p=r[f];p.data.transition=a,p.data.pos=p.elm.getBoundingClientRect(),n[p.key]?u.push(p):l.push(p)}this.kept=e(t,null,u),this.removed=l}return e(t,null,o)},updated:function(){var e=this.prevChildren,t=this.moveClass||(this.name||"v")+"-move";e.length&&this.hasMove(e[0].elm,t)&&(e.forEach(co),e.forEach(uo),e.forEach(lo),this._reflow=document.body.offsetHeight,e.forEach(function(e){if(e.data.moved){var n=e.elm,r=n.style;Ni(n,t),r.transform=r.WebkitTransform=r.transitionDuration="",n.addEventListener(Ai,n._moveCb=function e(r){r&&r.target!==n||r&&!/transform$/.test(r.propertyName)||(n.removeEventListener(Ai,e),n._moveCb=null,ji(n,t))})}}))},methods:{hasMove:function(e,t){if(!wi)return!1;if(this._hasMove)return this._hasMove;var n=e.cloneNode();e._transitionClasses&&e._transitionClasses.forEach(function(e){_i(n,e)}),gi(n,t),n.style.display="none",this.$el.appendChild(n);var r=Mi(n);return this.$el.removeChild(n),this._hasMove=r.hasTransform}}}};wn.config.mustUseProp=jn,wn.config.isReservedTag=Wn,wn.config.isReservedAttr=En,wn.config.getTagNamespace=Zn,wn.config.isUnknownElement=function(e){if(!z)return!0;if(Wn(e))return!1;if(e=e.toLowerCase(),null!=Gn[e])return Gn[e];var t=document.createElement(e);return e.indexOf("-")>-1?Gn[e]=t.constructor===window.HTMLUnknownElement||t.constructor===window.HTMLElement:Gn[e]=/HTMLUnknownElement/.test(t.toString())},A(wn.options.directives,Qi),A(wn.options.components,fo),wn.prototype.__patch__=z?zi:S,wn.prototype.$mount=function(e,t){return function(e,t,n){var r;return e.$el=t,e.$options.render||(e.$options.render=ve),Yt(e,"beforeMount"),r=function(){e._update(e._render(),n)},new fn(e,r,S,{before:function(){e._isMounted&&!e._isDestroyed&&Yt(e,"beforeUpdate")}},!0),n=!1,null==e.$vnode&&(e._isMounted=!0,Yt(e,"mounted")),e}(this,e=e&&z?Yn(e):void 0,t)},z&&setTimeout(function(){F.devtools&&ne&&ne.emit("init",wn)},0);var po=/\{\{((?:.|\r?\n)+?)\}\}/g,vo=/[-.*+?^${}()|[\]\/\\]/g,ho=g(function(e){var t=e[0].replace(vo,"\\$&"),n=e[1].replace(vo,"\\$&");return new RegExp(t+"((?:.|\\n)+?)"+n,"g")});var mo={staticKeys:["staticClass"],transformNode:function(e,t){t.warn;var n=Fr(e,"class");n&&(e.staticClass=JSON.stringify(n));var r=Ir(e,"class",!1);r&&(e.classBinding=r)},genData:function(e){var t="";return e.staticClass&&(t+="staticClass:"+e.staticClass+","),e.classBinding&&(t+="class:"+e.classBinding+","),t}};var yo,go={staticKeys:["staticStyle"],transformNode:function(e,t){t.warn;var n=Fr(e,"style");n&&(e.staticStyle=JSON.stringify(ai(n)));var r=Ir(e,"style",!1);r&&(e.styleBinding=r)},genData:function(e){var t="";return e.staticStyle&&(t+="staticStyle:"+e.staticStyle+","),e.styleBinding&&(t+="style:("+e.styleBinding+"),"),t}},_o=function(e){return(yo=yo||document.createElement("div")).innerHTML=e,yo.textContent},bo=p("area,base,br,col,embed,frame,hr,img,input,isindex,keygen,link,meta,param,source,track,wbr"),$o=p("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source"),wo=p("address,article,aside,base,blockquote,body,caption,col,colgroup,dd,details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,title,tr,track"),Co=/^\s*([^\s"'<>\/=]+)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,xo=/^\s*((?:v-[\w-]+:|@|:|#)\[[^=]+\][^\s"'<>\/=]*)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,ko="[a-zA-Z_][\\-\\.0-9_a-zA-Z"+P.source+"]*",Ao="((?:"+ko+"\\:)?"+ko+")",Oo=new RegExp("^<"+Ao),So=/^\s*(\/?)>/,To=new RegExp("^<\\/"+Ao+"[^>]*>"),Eo=/^<!DOCTYPE [^>]+>/i,No=/^<!\--/,jo=/^<!\[/,Do=p("script,style,textarea",!0),Lo={},Mo={"&lt;":"<","&gt;":">","&quot;":'"',"&amp;":"&","&#10;":"\n","&#9;":"\t","&#39;":"'"},Io=/&(?:lt|gt|quot|amp|#39);/g,Fo=/&(?:lt|gt|quot|amp|#39|#10|#9);/g,Po=p("pre,textarea",!0),Ro=function(e,t){return e&&Po(e)&&"\n"===t[0]};function Ho(e,t){var n=t?Fo:Io;return e.replace(n,function(e){return Mo[e]})}var Bo,Uo,zo,Vo,Ko,Jo,qo,Wo,Zo=/^@|^v-on:/,Go=/^v-|^@|^:|^#/,Xo=/([\s\S]*?)\s+(?:in|of)\s+([\s\S]*)/,Yo=/,([^,\}\]]*)(?:,([^,\}\]]*))?$/,Qo=/^\(|\)$/g,ea=/^\[.*\]$/,ta=/:(.*)$/,na=/^:|^\.|^v-bind:/,ra=/\.[^.\]]+(?=[^\]]*$)/g,ia=/^v-slot(:|$)|^#/,oa=/[\r\n]/,aa=/\s+/g,sa=g(_o),ca="_empty_";function ua(e,t,n){return{type:1,tag:e,attrsList:t,attrsMap:ma(t),rawAttrsMap:{},parent:n,children:[]}}function la(e,t){Bo=t.warn||Sr,Jo=t.isPreTag||T,qo=t.mustUseProp||T,Wo=t.getTagNamespace||T;t.isReservedTag;zo=Tr(t.modules,"transformNode"),Vo=Tr(t.modules,"preTransformNode"),Ko=Tr(t.modules,"postTransformNode"),Uo=t.delimiters;var n,r,i=[],o=!1!==t.preserveWhitespace,a=t.whitespace,s=!1,c=!1;function u(e){if(l(e),s||e.processed||(e=fa(e,t)),i.length||e===n||n.if&&(e.elseif||e.else)&&da(n,{exp:e.elseif,block:e}),r&&!e.forbidden)if(e.elseif||e.else)a=e,(u=function(e){var t=e.length;for(;t--;){if(1===e[t].type)return e[t];e.pop()}}(r.children))&&u.if&&da(u,{exp:a.elseif,block:a});else{if(e.slotScope){var o=e.slotTarget||'"default"';(r.scopedSlots||(r.scopedSlots={}))[o]=e}r.children.push(e),e.parent=r}var a,u;e.children=e.children.filter(function(e){return!e.slotScope}),l(e),e.pre&&(s=!1),Jo(e.tag)&&(c=!1);for(var f=0;f<Ko.length;f++)Ko[f](e,t)}function l(e){if(!c)for(var t;(t=e.children[e.children.length-1])&&3===t.type&&" "===t.text;)e.children.pop()}return function(e,t){for(var n,r,i=[],o=t.expectHTML,a=t.isUnaryTag||T,s=t.canBeLeftOpenTag||T,c=0;e;){if(n=e,r&&Do(r)){var u=0,l=r.toLowerCase(),f=Lo[l]||(Lo[l]=new RegExp("([\\s\\S]*?)(</"+l+"[^>]*>)","i")),p=e.replace(f,function(e,n,r){return u=r.length,Do(l)||"noscript"===l||(n=n.replace(/<!\--([\s\S]*?)-->/g,"$1").replace(/<!\[CDATA\[([\s\S]*?)]]>/g,"$1")),Ro(l,n)&&(n=n.slice(1)),t.chars&&t.chars(n),""});c+=e.length-p.length,e=p,A(l,c-u,c)}else{var d=e.indexOf("<");if(0===d){if(No.test(e)){var v=e.indexOf("--\x3e");if(v>=0){t.shouldKeepComment&&t.comment(e.substring(4,v),c,c+v+3),C(v+3);continue}}if(jo.test(e)){var h=e.indexOf("]>");if(h>=0){C(h+2);continue}}var m=e.match(Eo);if(m){C(m[0].length);continue}var y=e.match(To);if(y){var g=c;C(y[0].length),A(y[1],g,c);continue}var _=x();if(_){k(_),Ro(_.tagName,e)&&C(1);continue}}var b=void 0,$=void 0,w=void 0;if(d>=0){for($=e.slice(d);!(To.test($)||Oo.test($)||No.test($)||jo.test($)||(w=$.indexOf("<",1))<0);)d+=w,$=e.slice(d);b=e.substring(0,d)}d<0&&(b=e),b&&C(b.length),t.chars&&b&&t.chars(b,c-b.length,c)}if(e===n){t.chars&&t.chars(e);break}}function C(t){c+=t,e=e.substring(t)}function x(){var t=e.match(Oo);if(t){var n,r,i={tagName:t[1],attrs:[],start:c};for(C(t[0].length);!(n=e.match(So))&&(r=e.match(xo)||e.match(Co));)r.start=c,C(r[0].length),r.end=c,i.attrs.push(r);if(n)return i.unarySlash=n[1],C(n[0].length),i.end=c,i}}function k(e){var n=e.tagName,c=e.unarySlash;o&&("p"===r&&wo(n)&&A(r),s(n)&&r===n&&A(n));for(var u=a(n)||!!c,l=e.attrs.length,f=new Array(l),p=0;p<l;p++){var d=e.attrs[p],v=d[3]||d[4]||d[5]||"",h="a"===n&&"href"===d[1]?t.shouldDecodeNewlinesForHref:t.shouldDecodeNewlines;f[p]={name:d[1],value:Ho(v,h)}}u||(i.push({tag:n,lowerCasedTag:n.toLowerCase(),attrs:f,start:e.start,end:e.end}),r=n),t.start&&t.start(n,f,u,e.start,e.end)}function A(e,n,o){var a,s;if(null==n&&(n=c),null==o&&(o=c),e)for(s=e.toLowerCase(),a=i.length-1;a>=0&&i[a].lowerCasedTag!==s;a--);else a=0;if(a>=0){for(var u=i.length-1;u>=a;u--)t.end&&t.end(i[u].tag,n,o);i.length=a,r=a&&i[a-1].tag}else"br"===s?t.start&&t.start(e,[],!0,n,o):"p"===s&&(t.start&&t.start(e,[],!1,n,o),t.end&&t.end(e,n,o))}A()}(e,{warn:Bo,expectHTML:t.expectHTML,isUnaryTag:t.isUnaryTag,canBeLeftOpenTag:t.canBeLeftOpenTag,shouldDecodeNewlines:t.shouldDecodeNewlines,shouldDecodeNewlinesForHref:t.shouldDecodeNewlinesForHref,shouldKeepComment:t.comments,outputSourceRange:t.outputSourceRange,start:function(e,o,a,l,f){var p=r&&r.ns||Wo(e);q&&"svg"===p&&(o=function(e){for(var t=[],n=0;n<e.length;n++){var r=e[n];ya.test(r.name)||(r.name=r.name.replace(ga,""),t.push(r))}return t}(o));var d,v=ua(e,o,r);p&&(v.ns=p),"style"!==(d=v).tag&&("script"!==d.tag||d.attrsMap.type&&"text/javascript"!==d.attrsMap.type)||te()||(v.forbidden=!0);for(var h=0;h<Vo.length;h++)v=Vo[h](v,t)||v;s||(!function(e){null!=Fr(e,"v-pre")&&(e.pre=!0)}(v),v.pre&&(s=!0)),Jo(v.tag)&&(c=!0),s?function(e){var t=e.attrsList,n=t.length;if(n)for(var r=e.attrs=new Array(n),i=0;i<n;i++)r[i]={name:t[i].name,value:JSON.stringify(t[i].value)},null!=t[i].start&&(r[i].start=t[i].start,r[i].end=t[i].end);else e.pre||(e.plain=!0)}(v):v.processed||(pa(v),function(e){var t=Fr(e,"v-if");if(t)e.if=t,da(e,{exp:t,block:e});else{null!=Fr(e,"v-else")&&(e.else=!0);var n=Fr(e,"v-else-if");n&&(e.elseif=n)}}(v),function(e){null!=Fr(e,"v-once")&&(e.once=!0)}(v)),n||(n=v),a?u(v):(r=v,i.push(v))},end:function(e,t,n){var o=i[i.length-1];i.length-=1,r=i[i.length-1],u(o)},chars:function(e,t,n){if(r&&(!q||"textarea"!==r.tag||r.attrsMap.placeholder!==e)){var i,u,l,f=r.children;if(e=c||e.trim()?"script"===(i=r).tag||"style"===i.tag?e:sa(e):f.length?a?"condense"===a&&oa.test(e)?"":" ":o?" ":"":"")c||"condense"!==a||(e=e.replace(aa," ")),!s&&" "!==e&&(u=function(e,t){var n=t?ho(t):po;if(n.test(e)){for(var r,i,o,a=[],s=[],c=n.lastIndex=0;r=n.exec(e);){(i=r.index)>c&&(s.push(o=e.slice(c,i)),a.push(JSON.stringify(o)));var u=Ar(r[1].trim());a.push("_s("+u+")"),s.push({"@binding":u}),c=i+r[0].length}return c<e.length&&(s.push(o=e.slice(c)),a.push(JSON.stringify(o))),{expression:a.join("+"),tokens:s}}}(e,Uo))?l={type:2,expression:u.expression,tokens:u.tokens,text:e}:" "===e&&f.length&&" "===f[f.length-1].text||(l={type:3,text:e}),l&&f.push(l)}},comment:function(e,t,n){if(r){var i={type:3,text:e,isComment:!0};r.children.push(i)}}}),n}function fa(e,t){var n,r;(r=Ir(n=e,"key"))&&(n.key=r),e.plain=!e.key&&!e.scopedSlots&&!e.attrsList.length,function(e){var t=Ir(e,"ref");t&&(e.ref=t,e.refInFor=function(e){var t=e;for(;t;){if(void 0!==t.for)return!0;t=t.parent}return!1}(e))}(e),function(e){var t;"template"===e.tag?(t=Fr(e,"scope"),e.slotScope=t||Fr(e,"slot-scope")):(t=Fr(e,"slot-scope"))&&(e.slotScope=t);var n=Ir(e,"slot");n&&(e.slotTarget='""'===n?'"default"':n,e.slotTargetDynamic=!(!e.attrsMap[":slot"]&&!e.attrsMap["v-bind:slot"]),"template"===e.tag||e.slotScope||Nr(e,"slot",n,function(e,t){return e.rawAttrsMap[":"+t]||e.rawAttrsMap["v-bind:"+t]||e.rawAttrsMap[t]}(e,"slot")));if("template"===e.tag){var r=Pr(e,ia);if(r){var i=va(r),o=i.name,a=i.dynamic;e.slotTarget=o,e.slotTargetDynamic=a,e.slotScope=r.value||ca}}else{var s=Pr(e,ia);if(s){var c=e.scopedSlots||(e.scopedSlots={}),u=va(s),l=u.name,f=u.dynamic,p=c[l]=ua("template",[],e);p.slotTarget=l,p.slotTargetDynamic=f,p.children=e.children.filter(function(e){if(!e.slotScope)return e.parent=p,!0}),p.slotScope=s.value||ca,e.children=[],e.plain=!1}}}(e),function(e){"slot"===e.tag&&(e.slotName=Ir(e,"name"))}(e),function(e){var t;(t=Ir(e,"is"))&&(e.component=t);null!=Fr(e,"inline-template")&&(e.inlineTemplate=!0)}(e);for(var i=0;i<zo.length;i++)e=zo[i](e,t)||e;return function(e){var t,n,r,i,o,a,s,c,u=e.attrsList;for(t=0,n=u.length;t<n;t++)if(r=i=u[t].name,o=u[t].value,Go.test(r))if(e.hasBindings=!0,(a=ha(r.replace(Go,"")))&&(r=r.replace(ra,"")),na.test(r))r=r.replace(na,""),o=Ar(o),(c=ea.test(r))&&(r=r.slice(1,-1)),a&&(a.prop&&!c&&"innerHtml"===(r=b(r))&&(r="innerHTML"),a.camel&&!c&&(r=b(r)),a.sync&&(s=Br(o,"$event"),c?Mr(e,'"update:"+('+r+")",s,null,!1,0,u[t],!0):(Mr(e,"update:"+b(r),s,null,!1,0,u[t]),C(r)!==b(r)&&Mr(e,"update:"+C(r),s,null,!1,0,u[t])))),a&&a.prop||!e.component&&qo(e.tag,e.attrsMap.type,r)?Er(e,r,o,u[t],c):Nr(e,r,o,u[t],c);else if(Zo.test(r))r=r.replace(Zo,""),(c=ea.test(r))&&(r=r.slice(1,-1)),Mr(e,r,o,a,!1,0,u[t],c);else{var l=(r=r.replace(Go,"")).match(ta),f=l&&l[1];c=!1,f&&(r=r.slice(0,-(f.length+1)),ea.test(f)&&(f=f.slice(1,-1),c=!0)),Dr(e,r,i,o,f,c,a,u[t])}else Nr(e,r,JSON.stringify(o),u[t]),!e.component&&"muted"===r&&qo(e.tag,e.attrsMap.type,r)&&Er(e,r,"true",u[t])}(e),e}function pa(e){var t;if(t=Fr(e,"v-for")){var n=function(e){var t=e.match(Xo);if(!t)return;var n={};n.for=t[2].trim();var r=t[1].trim().replace(Qo,""),i=r.match(Yo);i?(n.alias=r.replace(Yo,"").trim(),n.iterator1=i[1].trim(),i[2]&&(n.iterator2=i[2].trim())):n.alias=r;return n}(t);n&&A(e,n)}}function da(e,t){e.ifConditions||(e.ifConditions=[]),e.ifConditions.push(t)}function va(e){var t=e.name.replace(ia,"");return t||"#"!==e.name[0]&&(t="default"),ea.test(t)?{name:t.slice(1,-1),dynamic:!0}:{name:'"'+t+'"',dynamic:!1}}function ha(e){var t=e.match(ra);if(t){var n={};return t.forEach(function(e){n[e.slice(1)]=!0}),n}}function ma(e){for(var t={},n=0,r=e.length;n<r;n++)t[e[n].name]=e[n].value;return t}var ya=/^xmlns:NS\d+/,ga=/^NS\d+:/;function _a(e){return ua(e.tag,e.attrsList.slice(),e.parent)}var ba=[mo,go,{preTransformNode:function(e,t){if("input"===e.tag){var n,r=e.attrsMap;if(!r["v-model"])return;if((r[":type"]||r["v-bind:type"])&&(n=Ir(e,"type")),r.type||n||!r["v-bind"]||(n="("+r["v-bind"]+").type"),n){var i=Fr(e,"v-if",!0),o=i?"&&("+i+")":"",a=null!=Fr(e,"v-else",!0),s=Fr(e,"v-else-if",!0),c=_a(e);pa(c),jr(c,"type","checkbox"),fa(c,t),c.processed=!0,c.if="("+n+")==='checkbox'"+o,da(c,{exp:c.if,block:c});var u=_a(e);Fr(u,"v-for",!0),jr(u,"type","radio"),fa(u,t),da(c,{exp:"("+n+")==='radio'"+o,block:u});var l=_a(e);return Fr(l,"v-for",!0),jr(l,":type",n),fa(l,t),da(c,{exp:i,block:l}),a?c.else=!0:s&&(c.elseif=s),c}}}}];var $a,wa,Ca={expectHTML:!0,modules:ba,directives:{model:function(e,t,n){var r=t.value,i=t.modifiers,o=e.tag,a=e.attrsMap.type;if(e.component)return Hr(e,r,i),!1;if("select"===o)!function(e,t,n){var r='var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = "_value" in o ? o._value : o.value;return '+(n&&n.number?"_n(val)":"val")+"});";r=r+" "+Br(t,"$event.target.multiple ? $$selectedVal : $$selectedVal[0]"),Mr(e,"change",r,null,!0)}(e,r,i);else if("input"===o&&"checkbox"===a)!function(e,t,n){var r=n&&n.number,i=Ir(e,"value")||"null",o=Ir(e,"true-value")||"true",a=Ir(e,"false-value")||"false";Er(e,"checked","Array.isArray("+t+")?_i("+t+","+i+")>-1"+("true"===o?":("+t+")":":_q("+t+","+o+")")),Mr(e,"change","var $$a="+t+",$$el=$event.target,$$c=$$el.checked?("+o+"):("+a+");if(Array.isArray($$a)){var $$v="+(r?"_n("+i+")":i)+",$$i=_i($$a,$$v);if($$el.checked){$$i<0&&("+Br(t,"$$a.concat([$$v])")+")}else{$$i>-1&&("+Br(t,"$$a.slice(0,$$i).concat($$a.slice($$i+1))")+")}}else{"+Br(t,"$$c")+"}",null,!0)}(e,r,i);else if("input"===o&&"radio"===a)!function(e,t,n){var r=n&&n.number,i=Ir(e,"value")||"null";Er(e,"checked","_q("+t+","+(i=r?"_n("+i+")":i)+")"),Mr(e,"change",Br(t,i),null,!0)}(e,r,i);else if("input"===o||"textarea"===o)!function(e,t,n){var r=e.attrsMap.type,i=n||{},o=i.lazy,a=i.number,s=i.trim,c=!o&&"range"!==r,u=o?"change":"range"===r?Wr:"input",l="$event.target.value";s&&(l="$event.target.value.trim()"),a&&(l="_n("+l+")");var f=Br(t,l);c&&(f="if($event.target.composing)return;"+f),Er(e,"value","("+t+")"),Mr(e,u,f,null,!0),(s||a)&&Mr(e,"blur","$forceUpdate()")}(e,r,i);else if(!F.isReservedTag(o))return Hr(e,r,i),!1;return!0},text:function(e,t){t.value&&Er(e,"textContent","_s("+t.value+")",t)},html:function(e,t){t.value&&Er(e,"innerHTML","_s("+t.value+")",t)}},isPreTag:function(e){return"pre"===e},isUnaryTag:bo,mustUseProp:jn,canBeLeftOpenTag:$o,isReservedTag:Wn,getTagNamespace:Zn,staticKeys:function(e){return e.reduce(function(e,t){return e.concat(t.staticKeys||[])},[]).join(",")}(ba)},xa=g(function(e){return p("type,tag,attrsList,attrsMap,plain,parent,children,attrs,start,end,rawAttrsMap"+(e?","+e:""))});function ka(e,t){e&&($a=xa(t.staticKeys||""),wa=t.isReservedTag||T,function e(t){t.static=function(e){if(2===e.type)return!1;if(3===e.type)return!0;return!(!e.pre&&(e.hasBindings||e.if||e.for||d(e.tag)||!wa(e.tag)||function(e){for(;e.parent;){if("template"!==(e=e.parent).tag)return!1;if(e.for)return!0}return!1}(e)||!Object.keys(e).every($a)))}(t);if(1===t.type){if(!wa(t.tag)&&"slot"!==t.tag&&null==t.attrsMap["inline-template"])return;for(var n=0,r=t.children.length;n<r;n++){var i=t.children[n];e(i),i.static||(t.static=!1)}if(t.ifConditions)for(var o=1,a=t.ifConditions.length;o<a;o++){var s=t.ifConditions[o].block;e(s),s.static||(t.static=!1)}}}(e),function e(t,n){if(1===t.type){if((t.static||t.once)&&(t.staticInFor=n),t.static&&t.children.length&&(1!==t.children.length||3!==t.children[0].type))return void(t.staticRoot=!0);if(t.staticRoot=!1,t.children)for(var r=0,i=t.children.length;r<i;r++)e(t.children[r],n||!!t.for);if(t.ifConditions)for(var o=1,a=t.ifConditions.length;o<a;o++)e(t.ifConditions[o].block,n)}}(e,!1))}var Aa=/^([\w$_]+|\([^)]*?\))\s*=>|^function(?:\s+[\w$]+)?\s*\(/,Oa=/\([^)]*?\);*$/,Sa=/^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\['[^']*?']|\["[^"]*?"]|\[\d+]|\[[A-Za-z_$][\w$]*])*$/,Ta={esc:27,tab:9,enter:13,space:32,up:38,left:37,right:39,down:40,delete:[8,46]},Ea={esc:["Esc","Escape"],tab:"Tab",enter:"Enter",space:[" ","Spacebar"],up:["Up","ArrowUp"],left:["Left","ArrowLeft"],right:["Right","ArrowRight"],down:["Down","ArrowDown"],delete:["Backspace","Delete","Del"]},Na=function(e){return"if("+e+")return null;"},ja={stop:"$event.stopPropagation();",prevent:"$event.preventDefault();",self:Na("$event.target !== $event.currentTarget"),ctrl:Na("!$event.ctrlKey"),shift:Na("!$event.shiftKey"),alt:Na("!$event.altKey"),meta:Na("!$event.metaKey"),left:Na("'button' in $event && $event.button !== 0"),middle:Na("'button' in $event && $event.button !== 1"),right:Na("'button' in $event && $event.button !== 2")};function Da(e,t){var n=t?"nativeOn:":"on:",r="",i="";for(var o in e){var a=La(e[o]);e[o]&&e[o].dynamic?i+=o+","+a+",":r+='"'+o+'":'+a+","}return r="{"+r.slice(0,-1)+"}",i?n+"_d("+r+",["+i.slice(0,-1)+"])":n+r}function La(e){if(!e)return"function(){}";if(Array.isArray(e))return"["+e.map(function(e){return La(e)}).join(",")+"]";var t=Sa.test(e.value),n=Aa.test(e.value),r=Sa.test(e.value.replace(Oa,""));if(e.modifiers){var i="",o="",a=[];for(var s in e.modifiers)if(ja[s])o+=ja[s],Ta[s]&&a.push(s);else if("exact"===s){var c=e.modifiers;o+=Na(["ctrl","shift","alt","meta"].filter(function(e){return!c[e]}).map(function(e){return"$event."+e+"Key"}).join("||"))}else a.push(s);return a.length&&(i+=function(e){return"if(!$event.type.indexOf('key')&&"+e.map(Ma).join("&&")+")return null;"}(a)),o&&(i+=o),"function($event){"+i+(t?"return "+e.value+"($event)":n?"return ("+e.value+")($event)":r?"return "+e.value:e.value)+"}"}return t||n?e.value:"function($event){"+(r?"return "+e.value:e.value)+"}"}function Ma(e){var t=parseInt(e,10);if(t)return"$event.keyCode!=="+t;var n=Ta[e],r=Ea[e];return"_k($event.keyCode,"+JSON.stringify(e)+","+JSON.stringify(n)+",$event.key,"+JSON.stringify(r)+")"}var Ia={on:function(e,t){e.wrapListeners=function(e){return"_g("+e+","+t.value+")"}},bind:function(e,t){e.wrapData=function(n){return"_b("+n+",'"+e.tag+"',"+t.value+","+(t.modifiers&&t.modifiers.prop?"true":"false")+(t.modifiers&&t.modifiers.sync?",true":"")+")"}},cloak:S},Fa=function(e){this.options=e,this.warn=e.warn||Sr,this.transforms=Tr(e.modules,"transformCode"),this.dataGenFns=Tr(e.modules,"genData"),this.directives=A(A({},Ia),e.directives);var t=e.isReservedTag||T;this.maybeComponent=function(e){return!!e.component||!t(e.tag)},this.onceId=0,this.staticRenderFns=[],this.pre=!1};function Pa(e,t){var n=new Fa(t);return{render:"with(this){return "+(e?Ra(e,n):'_c("div")')+"}",staticRenderFns:n.staticRenderFns}}function Ra(e,t){if(e.parent&&(e.pre=e.pre||e.parent.pre),e.staticRoot&&!e.staticProcessed)return Ha(e,t);if(e.once&&!e.onceProcessed)return Ba(e,t);if(e.for&&!e.forProcessed)return za(e,t);if(e.if&&!e.ifProcessed)return Ua(e,t);if("template"!==e.tag||e.slotTarget||t.pre){if("slot"===e.tag)return function(e,t){var n=e.slotName||'"default"',r=qa(e,t),i="_t("+n+(r?","+r:""),o=e.attrs||e.dynamicAttrs?Ga((e.attrs||[]).concat(e.dynamicAttrs||[]).map(function(e){return{name:b(e.name),value:e.value,dynamic:e.dynamic}})):null,a=e.attrsMap["v-bind"];!o&&!a||r||(i+=",null");o&&(i+=","+o);a&&(i+=(o?"":",null")+","+a);return i+")"}(e,t);var n;if(e.component)n=function(e,t,n){var r=t.inlineTemplate?null:qa(t,n,!0);return"_c("+e+","+Va(t,n)+(r?","+r:"")+")"}(e.component,e,t);else{var r;(!e.plain||e.pre&&t.maybeComponent(e))&&(r=Va(e,t));var i=e.inlineTemplate?null:qa(e,t,!0);n="_c('"+e.tag+"'"+(r?","+r:"")+(i?","+i:"")+")"}for(var o=0;o<t.transforms.length;o++)n=t.transforms[o](e,n);return n}return qa(e,t)||"void 0"}function Ha(e,t){e.staticProcessed=!0;var n=t.pre;return e.pre&&(t.pre=e.pre),t.staticRenderFns.push("with(this){return "+Ra(e,t)+"}"),t.pre=n,"_m("+(t.staticRenderFns.length-1)+(e.staticInFor?",true":"")+")"}function Ba(e,t){if(e.onceProcessed=!0,e.if&&!e.ifProcessed)return Ua(e,t);if(e.staticInFor){for(var n="",r=e.parent;r;){if(r.for){n=r.key;break}r=r.parent}return n?"_o("+Ra(e,t)+","+t.onceId+++","+n+")":Ra(e,t)}return Ha(e,t)}function Ua(e,t,n,r){return e.ifProcessed=!0,function e(t,n,r,i){if(!t.length)return i||"_e()";var o=t.shift();return o.exp?"("+o.exp+")?"+a(o.block)+":"+e(t,n,r,i):""+a(o.block);function a(e){return r?r(e,n):e.once?Ba(e,n):Ra(e,n)}}(e.ifConditions.slice(),t,n,r)}function za(e,t,n,r){var i=e.for,o=e.alias,a=e.iterator1?","+e.iterator1:"",s=e.iterator2?","+e.iterator2:"";return e.forProcessed=!0,(r||"_l")+"(("+i+"),function("+o+a+s+"){return "+(n||Ra)(e,t)+"})"}function Va(e,t){var n="{",r=function(e,t){var n=e.directives;if(!n)return;var r,i,o,a,s="directives:[",c=!1;for(r=0,i=n.length;r<i;r++){o=n[r],a=!0;var u=t.directives[o.name];u&&(a=!!u(e,o,t.warn)),a&&(c=!0,s+='{name:"'+o.name+'",rawName:"'+o.rawName+'"'+(o.value?",value:("+o.value+"),expression:"+JSON.stringify(o.value):"")+(o.arg?",arg:"+(o.isDynamicArg?o.arg:'"'+o.arg+'"'):"")+(o.modifiers?",modifiers:"+JSON.stringify(o.modifiers):"")+"},")}if(c)return s.slice(0,-1)+"]"}(e,t);r&&(n+=r+","),e.key&&(n+="key:"+e.key+","),e.ref&&(n+="ref:"+e.ref+","),e.refInFor&&(n+="refInFor:true,"),e.pre&&(n+="pre:true,"),e.component&&(n+='tag:"'+e.tag+'",');for(var i=0;i<t.dataGenFns.length;i++)n+=t.dataGenFns[i](e);if(e.attrs&&(n+="attrs:"+Ga(e.attrs)+","),e.props&&(n+="domProps:"+Ga(e.props)+","),e.events&&(n+=Da(e.events,!1)+","),e.nativeEvents&&(n+=Da(e.nativeEvents,!0)+","),e.slotTarget&&!e.slotScope&&(n+="slot:"+e.slotTarget+","),e.scopedSlots&&(n+=function(e,t,n){var r=e.for||Object.keys(t).some(function(e){var n=t[e];return n.slotTargetDynamic||n.if||n.for||Ka(n)}),i=!!e.if;if(!r)for(var o=e.parent;o;){if(o.slotScope&&o.slotScope!==ca||o.for){r=!0;break}o.if&&(i=!0),o=o.parent}var a=Object.keys(t).map(function(e){return Ja(t[e],n)}).join(",");return"scopedSlots:_u(["+a+"]"+(r?",null,true":"")+(!r&&i?",null,false,"+function(e){var t=5381,n=e.length;for(;n;)t=33*t^e.charCodeAt(--n);return t>>>0}(a):"")+")"}(e,e.scopedSlots,t)+","),e.model&&(n+="model:{value:"+e.model.value+",callback:"+e.model.callback+",expression:"+e.model.expression+"},"),e.inlineTemplate){var o=function(e,t){var n=e.children[0];if(n&&1===n.type){var r=Pa(n,t.options);return"inlineTemplate:{render:function(){"+r.render+"},staticRenderFns:["+r.staticRenderFns.map(function(e){return"function(){"+e+"}"}).join(",")+"]}"}}(e,t);o&&(n+=o+",")}return n=n.replace(/,$/,"")+"}",e.dynamicAttrs&&(n="_b("+n+',"'+e.tag+'",'+Ga(e.dynamicAttrs)+")"),e.wrapData&&(n=e.wrapData(n)),e.wrapListeners&&(n=e.wrapListeners(n)),n}function Ka(e){return 1===e.type&&("slot"===e.tag||e.children.some(Ka))}function Ja(e,t){var n=e.attrsMap["slot-scope"];if(e.if&&!e.ifProcessed&&!n)return Ua(e,t,Ja,"null");if(e.for&&!e.forProcessed)return za(e,t,Ja);var r=e.slotScope===ca?"":String(e.slotScope),i="function("+r+"){return "+("template"===e.tag?e.if&&n?"("+e.if+")?"+(qa(e,t)||"undefined")+":undefined":qa(e,t)||"undefined":Ra(e,t))+"}",o=r?"":",proxy:true";return"{key:"+(e.slotTarget||'"default"')+",fn:"+i+o+"}"}function qa(e,t,n,r,i){var o=e.children;if(o.length){var a=o[0];if(1===o.length&&a.for&&"template"!==a.tag&&"slot"!==a.tag){var s=n?t.maybeComponent(a)?",1":",0":"";return""+(r||Ra)(a,t)+s}var c=n?function(e,t){for(var n=0,r=0;r<e.length;r++){var i=e[r];if(1===i.type){if(Wa(i)||i.ifConditions&&i.ifConditions.some(function(e){return Wa(e.block)})){n=2;break}(t(i)||i.ifConditions&&i.ifConditions.some(function(e){return t(e.block)}))&&(n=1)}}return n}(o,t.maybeComponent):0,u=i||Za;return"["+o.map(function(e){return u(e,t)}).join(",")+"]"+(c?","+c:"")}}function Wa(e){return void 0!==e.for||"template"===e.tag||"slot"===e.tag}function Za(e,t){return 1===e.type?Ra(e,t):3===e.type&&e.isComment?(r=e,"_e("+JSON.stringify(r.text)+")"):"_v("+(2===(n=e).type?n.expression:Xa(JSON.stringify(n.text)))+")";var n,r}function Ga(e){for(var t="",n="",r=0;r<e.length;r++){var i=e[r],o=Xa(i.value);i.dynamic?n+=i.name+","+o+",":t+='"'+i.name+'":'+o+","}return t="{"+t.slice(0,-1)+"}",n?"_d("+t+",["+n.slice(0,-1)+"])":t}function Xa(e){return e.replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}new RegExp("\\b"+"do,if,for,let,new,try,var,case,else,with,await,break,catch,class,const,super,throw,while,yield,delete,export,import,return,switch,default,extends,finally,continue,debugger,function,arguments".split(",").join("\\b|\\b")+"\\b");function Ya(e,t){try{return new Function(e)}catch(n){return t.push({err:n,code:e}),S}}function Qa(e){var t=Object.create(null);return function(n,r,i){(r=A({},r)).warn;delete r.warn;var o=r.delimiters?String(r.delimiters)+n:n;if(t[o])return t[o];var a=e(n,r),s={},c=[];return s.render=Ya(a.render,c),s.staticRenderFns=a.staticRenderFns.map(function(e){return Ya(e,c)}),t[o]=s}}var es,ts,ns=(es=function(e,t){var n=la(e.trim(),t);!1!==t.optimize&&ka(n,t);var r=Pa(n,t);return{ast:n,render:r.render,staticRenderFns:r.staticRenderFns}},function(e){function t(t,n){var r=Object.create(e),i=[],o=[];if(n)for(var a in n.modules&&(r.modules=(e.modules||[]).concat(n.modules)),n.directives&&(r.directives=A(Object.create(e.directives||null),n.directives)),n)"modules"!==a&&"directives"!==a&&(r[a]=n[a]);r.warn=function(e,t,n){(n?o:i).push(e)};var s=es(t.trim(),r);return s.errors=i,s.tips=o,s}return{compile:t,compileToFunctions:Qa(t)}})(Ca),rs=(ns.compile,ns.compileToFunctions);function is(e){return(ts=ts||document.createElement("div")).innerHTML=e?'<a href="\n"/>':'<div a="\n"/>',ts.innerHTML.indexOf("&#10;")>0}var os=!!z&&is(!1),as=!!z&&is(!0),ss=g(function(e){var t=Yn(e);return t&&t.innerHTML}),cs=wn.prototype.$mount;return wn.prototype.$mount=function(e,t){if((e=e&&Yn(e))===document.body||e===document.documentElement)return this;var n=this.$options;if(!n.render){var r=n.template;if(r)if("string"==typeof r)"#"===r.charAt(0)&&(r=ss(r));else{if(!r.nodeType)return this;r=r.innerHTML}else e&&(r=function(e){if(e.outerHTML)return e.outerHTML;var t=document.createElement("div");return t.appendChild(e.cloneNode(!0)),t.innerHTML}(e));if(r){var i=rs(r,{outputSourceRange:!1,shouldDecodeNewlines:os,shouldDecodeNewlinesForHref:as,delimiters:n.delimiters,comments:n.comments},this),o=i.render,a=i.staticRenderFns;n.render=o,n.staticRenderFns=a}}return cs.call(this,e,t)},wn.compile=rs,wn});
\ No newline at end of file
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
body,html{padding:0;margin:0}body .activity-menu,html .activity-menu{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}body .activity-menu img,html .activity-menu img{margin-right:1em;width:30px;height:30px}.icon{width:1em;height:1em;vertical-align:-.15em;fill:currentColor;overflow:hidden}.vue-flow-editor{height:100%;position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:horizontal;-webkit-box-direction:normal;-ms-flex-direction:row;flex-direction:row;-webkit-box-align:stretch;-ms-flex-align:stretch;align-items:stretch;overflow:hidden}.vue-flow-editor .vue-flow-editor-left{overflow:hidden;-webkit-box-shadow:0 2px 8px #f0f1f2;box-shadow:0 2px 8px #f0f1f2}.vue-flow-editor .vue-flow-editor-right{-webkit-box-flex:1;-ms-flex:1;flex:1;flex-direction:column;overflow:hidden}.vue-flow-editor .vue-flow-editor-menu,.vue-flow-editor .vue-flow-editor-right{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column}.vue-flow-editor .vue-flow-editor-menu{height:100%;width:100%;flex-direction:column}.vue-flow-editor .vue-flow-editor-menu .vue-flow-editor-menu-header{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;letter-spacing:2px;color:#000;-webkit-box-shadow:0 2px 8px #f0f1f2;box-shadow:0 2px 8px #f0f1f2;-webkit-box-sizing:border-box;box-sizing:border-box}.vue-flow-editor .vue-flow-editor-menu .vue-flow-editor-menu-header img{height:100%}.vue-flow-editor .vue-flow-editor-menu .vue-flow-editor-menu-list{-webkit-box-flex:1;-ms-flex:1;flex:1;overflow:hidden;background-color:#f9f9f9;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vue-flow-editor .vue-flow-editor-menu .vue-flow-editor-menu-list .vue-flow-editor-menu-list-content{height:100%;width:100%;overflow-y:auto;overflow-x:hidden}.vue-flow-editor .vue-flow-editor-menu .vue-flow-editor-menu-list .vue-flow-edit-menu-group .vue-flow-edit-menu-group-title{font-size:14px;font-weight:500;color:#777;background-color:#fff;padding:0 16px;height:40px;margin-top:2px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;cursor:pointer}.vue-flow-editor .vue-flow-editor-menu .vue-flow-editor-menu-list .vue-flow-edit-menu-group .vue-flow-edit-menu-group-content{-webkit-box-sizing:border-box;box-sizing:border-box;padding:6px}.vue-flow-editor .vue-flow-editor-menu .vue-flow-editor-menu-list .vue-flow-edit-menu-group.vue-flow-edit-menu-group-expanded .vue-flow-edit-menu-group-title i{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.vue-flow-editor .vue-flow-editor-menu .vue-flow-editor-menu-list .vue-flow-edit-menu{padding:9px 16px;-webkit-box-sizing:border-box;box-sizing:border-box;background-color:#fff;margin-bottom:2px;cursor:move;font-size:14px;color:#777;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-transition:all .3s linear;transition:all .3s linear}.vue-flow-editor .vue-flow-editor-menu .vue-flow-editor-menu-list .vue-flow-edit-menu:hover{background-color:rgba(31,116,255,.08);color:#000}.vue-flow-editor .vue-flow-editor-menu .vue-flow-editor-menu-list .vue-flow-edit-menu:active{background-color:rgba(31,116,255,.08)}.vue-flow-editor .vue-flow-editor-menu .vue-flow-editor-menu-list .vue-flow-edit-menu:first-child{margin-top:2px}.vue-flow-editor .vue-flow-editor-toolbar{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:start;-ms-flex-pack:start;justify-content:flex-start;padding:0 16px;-webkit-box-shadow:0 2px 8px #f0f1f2;box-shadow:0 2px 8px #f0f1f2;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;font-size:14px}.vue-flow-editor .vue-flow-editor-toolbar>*{cursor:pointer;color:#777}.vue-flow-editor .vue-flow-editor-toolbar .vue-flow-editor-toolbar-item{width:60px;height:48px;outline:none;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.vue-flow-editor .vue-flow-editor-toolbar .vue-flow-editor-toolbar-item img{width:16px;height:16px;margin-bottom:4px}.vue-flow-editor .vue-flow-editor-toolbar .vue-flow-editor-toolbar-item span{font-size:12px;-webkit-transform:scale(.8);transform:scale(.8)}.vue-flow-editor .vue-flow-editor-toolbar .vue-flow-editor-toolbar-item:hover{background-color:#f6f6f6;border-radius:2px}.vue-flow-editor .vue-flow-editor-toolbar .vue-flow-editor-toolbar-item.vue-flow-editor-toolbar-item-disabled{opacity:.5;background-color:transparent;cursor:not-allowed}.vue-flow-editor .vue-flow-editor-toolbar .vue-flow-editor-toolbar-divider{height:18px;border-left:1px solid #ddd}.vue-flow-editor .vue-flow-editor-canvas{-webkit-box-flex:1;-ms-flex:1;flex:1;overflow:hidden;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vue-flow-editor .vue-flow-editor-canvas .vue-flow-editor-canvas-target{position:relative}.vue-flow-editor .vue-flow-editor-canvas .vue-flow-editor-canvas-target .g6-minimap{position:absolute;bottom:0;right:0;background-color:rgba(0,0,0,.1)}.vue-flow-editor .vue-flow-editor-model{z-index:2}.vue-flow-editor .vue-flow-editor-model,.vue-flow-editor .vue-flow-editor-model:before{position:absolute;top:0;left:0;right:0;bottom:0;-webkit-transition:all .3s cubic-bezier(.23,1,.32,1);transition:all .3s cubic-bezier(.23,1,.32,1);-webkit-transition-duration:.5s;transition-duration:.5s}.vue-flow-editor .vue-flow-editor-model:before{background-color:rgba(0,0,0,.1);content:""}.vue-flow-editor .vue-flow-editor-model .vue-flow-editor-model-body{background-color:#fff;position:absolute;top:0;bottom:0;right:0;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column;border-left:1px solid #ddd;-webkit-box-shadow:0 2px 8px #f0f1f2;box-shadow:0 2px 8px #f0f1f2;-webkit-transition:all .3s cubic-bezier(.23,1,.32,1);transition:all .3s cubic-bezier(.23,1,.32,1);-webkit-transition-duration:.5s;transition-duration:.5s}.vue-flow-editor .vue-flow-editor-model .vue-flow-editor-model-body .vue-flow-editor-model-head{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:end;-ms-flex-pack:end;justify-content:flex-end;-webkit-box-align:center;-ms-flex-align:center;align-items:center;padding:0 16px;-webkit-box-shadow:0 2px 8px #f0f1f2;box-shadow:0 2px 8px #f0f1f2}.vue-flow-editor .vue-flow-editor-model .vue-flow-editor-model-body .vue-flow-editor-model-head>i{cursor:pointer}.vue-flow-editor .vue-flow-editor-model .vue-flow-editor-model-body .vue-flow-editor-model-content{-webkit-box-flex:1;-ms-flex:1;flex:1;overflow:auto}.vue-flow-editor .vue-flow-editor-model .vue-flow-editor-model-body .vue-flow-editor-model-foot{height:50px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-align:center;-ms-flex-align:center;align-items:center;border-top:1px solid #eee;-webkit-box-shadow:0 2px 8px #f0f1f2;box-shadow:0 2px 8px #f0f1f2}.vue-flow-editor .vue-flow-editor-model.vue-flow-editor-transition-enter-active .vue-flow-editor-model-body,.vue-flow-editor .vue-flow-editor-model.vue-flow-editor-transition-leave-active .vue-flow-editor-model-body{-webkit-transform:translateX(0);transform:translateX(0)}.vue-flow-editor .vue-flow-editor-model.vue-flow-editor-transition-enter-active:before,.vue-flow-editor .vue-flow-editor-model.vue-flow-editor-transition-leave-active:before{opacity:1}.vue-flow-editor .vue-flow-editor-model.vue-flow-editor-transition-enter .vue-flow-editor-model-body,.vue-flow-editor .vue-flow-editor-model.vue-flow-editor-transition-leave-to .vue-flow-editor-model-body{-webkit-transform:translateX(100%);transform:translateX(100%)}.vue-flow-editor .vue-flow-editor-model.vue-flow-editor-transition-enter:before,.vue-flow-editor .vue-flow-editor-model.vue-flow-editor-transition-leave-to:before{opacity:0}.vue-flow-editor .vue-flow-editor-preview{position:fixed;z-index:2;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.vue-flow-editor .vue-flow-editor-preview,.vue-flow-editor .vue-flow-editor-preview:before{top:0;bottom:0;left:0;right:0;-webkit-transition:all .3s cubic-bezier(.23,1,.32,1);transition:all .3s cubic-bezier(.23,1,.32,1);-webkit-transition-duration:.5s;transition-duration:.5s}.vue-flow-editor .vue-flow-editor-preview:before{position:absolute;content:"";background-color:rgba(0,0,0,.1)}.vue-flow-editor .vue-flow-editor-preview .vue-flow-editor-preview-body{width:80%;height:80%;background-color:#fff;border-radius:12px;position:relative;z-index:1;-webkit-transition:all .3s cubic-bezier(.23,1,.32,1);transition:all .3s cubic-bezier(.23,1,.32,1);-webkit-transition-duration:.5s;transition-duration:.5s}.vue-flow-editor .vue-flow-editor-preview .vue-flow-editor-preview-body .vue-flow-editor-preview-close{position:absolute;top:-20px;right:-20px;font-size:20px;background-color:#fff;height:40px;width:40px;border-radius:20px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-box-shadow:0 2px 8px #f0f1f2;box-shadow:0 2px 8px #f0f1f2;border:1px solid #eee;color:#999;cursor:pointer}.vue-flow-editor .vue-flow-editor-preview.vue-flow-editor-preview-transition-enter-active .vue-flow-editor-preview-body,.vue-flow-editor .vue-flow-editor-preview.vue-flow-editor-preview-transition-leave-active .vue-flow-editor-preview-body{-webkit-transform:translateX(0);transform:translateX(0)}.vue-flow-editor .vue-flow-editor-preview.vue-flow-editor-preview-transition-enter-active:before,.vue-flow-editor .vue-flow-editor-preview.vue-flow-editor-preview-transition-leave-active:before{opacity:1}.vue-flow-editor .vue-flow-editor-preview.vue-flow-editor-preview-transition-enter .vue-flow-editor-preview-body,.vue-flow-editor .vue-flow-editor-preview.vue-flow-editor-preview-transition-leave-to .vue-flow-editor-preview-body{-webkit-transform:translateY(-15%);transform:translateY(-15%);opacity:0}.vue-flow-editor .vue-flow-editor-preview.vue-flow-editor-preview-transition-enter:before,.vue-flow-editor .vue-flow-editor-preview.vue-flow-editor-preview-transition-leave-to:before{opacity:0}.vue-flow-editor-icon{color:inherit;font-size:inherit;-webkit-box-sizing:border-box;box-sizing:border-box;outline:none;width:1em;height:1em;vertical-align:-.15em;fill:currentColor;overflow:hidden}
\ No newline at end of file
<html>
<head>
<meta charset="utf-8">
<title>vue-flow-editor demo</title>
<link type="text/css" rel="stylesheet" href="http://martsforever-pot.gitee.io/vue-flow-editor/dist/vue-flow-editor.css">
<link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
<style>
html, body {
padding: 0;
margin: 0;
}
</style>
</head>
<body>
<div id="app">
</div>
<script src="./lib/g6.umd.min.js"></script>
<script src="http://martsforever-pot.gitee.io/vue-flow-editor/lib/vue.min.js"></script>
<script src="https://unpkg.com/@vue/composition-api/dist/vue-composition-api.umd.js"></script>
<script src="https://unpkg.com/element-ui/lib/index.js"></script>
<script src="http://martsforever-pot.gitee.io/vue-flow-editor/dist/vue-flow-editor.js"></script>
<script>
console.log(window)
Vue.use(window.vueCompositionApi.default)
Vue.use(window.VueFlowEditor)
const Ele = window.ELEMENT
const G6 = window.G6.default
const reactive = window.vueCompositionApi.reactive
function delay(time) {
return new Promise((resolve) => setTimeout(resolve, time))
}
const AppData = {
"nodes": [{"data": {}, "id": "start-node", "label": "开始", "shape": "ellipse", "size": [120, 40], "x": 380, "y": 100}, {"data": {}, "id": "1588848310120", "label": "主管审批", "shape": "rect", "size": [120, 40], "x": 380, "y": 180}, {"data": {}, "id": "1588848322179", "label": "经理审批", "shape": "rect", "size": [120, 40], "x": 380, "y": 260}, {
"data": {},
"id": "1588848338211",
"label": "金额>2万",
"shape": "diamond",
"size": [120, 40],
"x": 380,
"y": 340
}, {"data": {}, "id": "1588848351476", "label": "财务打款", "shape": "rect", "size": [120, 40], "x": 380, "y": 460}, {"data": {}, "id": "end-node", "label": "结束", "shape": "ellipse", "size": [120, 40], "x": 380, "y": 540}, {"data": {}, "id": "1588848397511", "label": "VIP审批", "shape": "rect", "size": [120, 40], "x": 620, "y": 340}, {
"data": {},
"id": "1588848436694",
"label": "金额>10万",
"shape": "diamond",
"size": [120, 40],
"x": 780,
"y": 340
}, {"data": {}, "id": "1588848449431", "label": "CEO审批", "shape": "rect", "size": [120, 40], "x": 980, "y": 460}],
"edges": [{"shape": "flow-polyline-round", "source": "start-node", "sourceAnchor": 2, "target": "1588848310120", "targetAnchor": 0}, {"shape": "flow-polyline-round", "source": "1588848310120", "sourceAnchor": 2, "target": "1588848322179", "targetAnchor": 0}, {
"shape": "flow-polyline-round",
"source": "1588848322179",
"sourceAnchor": 2,
"target": "1588848338211",
"targetAnchor": 0
}, {"shape": "flow-polyline-round", "source": "1588848338211", "sourceAnchor": 2, "target": "1588848351476", "targetAnchor": 0, "label": "否"}, {"shape": "flow-polyline-round", "source": "1588848351476", "sourceAnchor": 2, "target": "end-node", "targetAnchor": 0}, {
"shape": "flow-polyline-round",
"source": "1588848338211",
"sourceAnchor": 3,
"target": "1588848397511",
"targetAnchor": 1,
"label": "是"
}, {"shape": "flow-polyline-round", "source": "1588848436694", "sourceAnchor": 3, "target": "1588848449431", "targetAnchor": 0, "label": "是"}, {"shape": "flow-polyline-round", "source": "1588848449431", "sourceAnchor": 1, "target": "1588848351476", "targetAnchor": 3}, {
"shape": "flow-polyline-round",
"source": "1588848436694",
"sourceAnchor": 2,
"target": "1588848351476",
"targetAnchor": 3,
"label": "否"
}, {"shape": "flow-polyline-round", "source": "1588848397511", "sourceAnchor": 3, "target": "1588848436694", "targetAnchor": 1}]
}
new Vue({
el: '#app',
template: `
<div class="app" style="height: 100vh">
<vue-flow-editor
ref="editor"
:data="state.data"
:grid="showGrid"
:miniMap="showMiniMap"
:onRef="onRef"
:multipleSelect="true"
:loading="state.editorLoading"
:disabledUndo="false"
:disabledDragEdge="true"
:beforeDelete="handleBeforeDelete"
:afterDelete="handleAfterDelete"
:beforeAdd="handleBeforeAdd"
:afterAdd="handleAfterAdd"
@dblclick-node="onDblclickNode"
@dblclick-edge="onDblClickEdge"
>
<div slot="menu">
<vue-flow-edit-menu-group v-for="(group,groupIndex) in state.menuData" :label="group.label" :key="groupIndex">
<vue-flow-edit-menu v-for="(menu,menuIndex) in group.menus" :key="menuIndex" :model="menu"/>
</vue-flow-edit-menu-group>
</div>
<div slot="model" style="padding: 16px">
<el-form v-if="!!state.detailModel" ref="form" :model="state.detailModel" label-width="100px">
<el-form-item label="节点名称" prop="label">
<el-input v-model="state.detailModel.label"/>
</el-form-item>
<template v-if="state.detailModel.type !== 'edge'">
<el-form-item label="节点背景色" prop="style.fill">
<el-color-picker v-model="state.detailModel.style.fill"/>
</el-form-item>
<el-form-item label="节点边框色" prop="style.stroke">
<el-color-picker v-model="state.detailModel.style.stroke"/>
</el-form-item>
<el-form-item label="节点文字色" prop="labelCfg.style.stroke">
<el-color-picker v-model="state.detailModel.labelCfg.style.fill"/>
</el-form-item>
</template>
</el-form>
</div>
<template slot="toolbar">
<el-tooltip content="测试工具栏插槽">
<div class="vue-flow-editor-toolbar-item">
<i class="el-icon-search"/>
</div>
</el-tooltip>
</template>
<template slot="foot">
<el-button type="primary" @click="save">保存</el-button>
<el-button @click="cancel">取消</el-button>
</template>
</vue-flow-editor>
</div>
`,
setup() {
const state = reactive({
data: AppData,
detailModel: null,
editorLoading: false,
selectOptions: [
{label: '待确认', value: '0'},
{label: '填写表单', value: '1'},
{label: '部门负责人审批', value: '2'},
{label: '总经理审批', value: '3'},
],
menuData: [
{
label: '流程节点',
menus: [
{label: '开始', shape: 'ellipse', id: 'start-node'},
{label: '结束', shape: 'ellipse', id: 'end-node'},
{label: '审批节点', busType: '123'},
{label: '判断节点'},
],
},
{
label: '其他形状节点',
menus: [
{label: '矩形节点', shape: 'rect'},
{label: '圆形节点', shape: 'circle'},
{label: '椭圆节点', shape: 'ellipse'},
{label: '菱形节点', shape: 'diamond'},
{label: '三角形节点', shape: 'triangle'},
{label: '星形节点', shape: 'star'},
]
}
]
})
let editor;
function onDblclickNode(e) {
const model = G6.Util.clone(e.item.get('model'))
model.style = model.style || {}
model.labelCfg = model.labelCfg || {style: {}}
state.detailModel = model
editor.openModel()
}
function onDblClickEdge(e) {
const {source, target, style, labelCfg, label} = e.item.get('model')
const model = {label, source, target, style: style || {}, labelCfg: labelCfg || {style: {}}, type: null, id: null}
model.type = e.item.get('type')
model.id = e.item.get('id')
state.detailModel = model
editor.openModel()
}
function cancel() {
editor.closeModel()
}
function save() {
editor.updateModel(state.detailModel)
editor.closeModel()
}
async function handleBeforeDelete(model, type) {
if (type === 'node') {
if (model.label === '开始') {
state.editorLoading = true
await delay(1000)
state.editorLoading = false
Ele.Notification.error('不可以删除【开始】节点')
return Promise.reject('reject')
}
}
}
function handleAfterDelete(model, type) {
if (type === 'edge') {
console.log('delete edge')
} else {
console.log('after delete', model.label, {...model})
}
}
function handleBeforeAdd(model, type) {
if (type === 'edge') {
if (model.source === 'end-node') {
Ele.Notification.error('结束节点不能输出连线其他节点')
return Promise.reject('reject')
}
}
if (type === 'node') {
if (model.id === 'start-node' || model.id === 'end-node') {
const data = editor.editorState.graph.save()
for (let i = 0; i < data.nodes.length; i++) {
const node = data.nodes[i];
if (node.id === model.id) {
Ele.Notification.error(`只能有一个${model.id === 'start-node' ? '开始' : '结束'}节点`)
return Promise.reject('reject')
}
}
}
}
}
function handleAfterAdd(model, type) {
if (type === 'edge') {
console.log(`新增连接线`)
}
}
return {
state,
showGrid: true,
showMiniMap: false,
onDblclickNode,
onDblClickEdge,
cancel,
save,
handleBeforeDelete,
handleAfterDelete,
handleBeforeAdd,
handleAfterAdd,
onRef: e => editor = e,
}
},
}).$mount()
</script>
</body>
</html>
\ No newline at end of file
<html>
<head>
<meta charset="utf-8">
<title>vue-flow-editor demo</title>
<link type="text/css" rel="stylesheet" href="http://martsforever-pot.gitee.io/vue-flow-editor/dist/vue-flow-editor.css">
<link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
<style>
html, body {
padding: 0;
margin: 0;
}
</style>
</head>
<body>
<div id="app">
</div>
<script src="http://martsforever-pot.gitee.io/vue-flow-editor/lib/g6.umd.min.js"></script>
<script src="http://martsforever-pot.gitee.io/vue-flow-editor/lib/vue.min.js"></script>
<script src="http://martsforever-pot.gitee.io/vue-flow-editor/lib/vue-composition-api.umd.js"></script>
<script src="http://martsforever-pot.gitee.io/vue-flow-editor/lib/element-ui.js"></script>
<script src="http://martsforever-pot.gitee.io/vue-flow-editor/dist/vue-flow-editor.js"></script>
<script>
"use strict";
function 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; }
function _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) { _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; }
function _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; }
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
console.log(window);
Vue.use(window.vueCompositionApi.default);
Vue.use(window.VueFlowEditor);
var Ele = window.ELEMENT;
var G6 = window.G6.default;
var reactive = window.vueCompositionApi.reactive;
function delay(time) {
return new Promise(function (resolve) {
return setTimeout(resolve, time);
});
}
var AppData = {
"nodes": [{
"data": {},
"id": "start-node",
"label": "开始",
"shape": "ellipse",
"size": [120, 40],
"x": 380,
"y": 100
}, {
"data": {},
"id": "1588848310120",
"label": "主管审批",
"shape": "rect",
"size": [120, 40],
"x": 380,
"y": 180
}, {
"data": {},
"id": "1588848322179",
"label": "经理审批",
"shape": "rect",
"size": [120, 40],
"x": 380,
"y": 260
}, {
"data": {},
"id": "1588848338211",
"label": "金额>2万",
"shape": "diamond",
"size": [120, 40],
"x": 380,
"y": 340
}, {
"data": {},
"id": "1588848351476",
"label": "财务打款",
"shape": "rect",
"size": [120, 40],
"x": 380,
"y": 460
}, {
"data": {},
"id": "end-node",
"label": "结束",
"shape": "ellipse",
"size": [120, 40],
"x": 380,
"y": 540
}, {
"data": {},
"id": "1588848397511",
"label": "VIP审批",
"shape": "rect",
"size": [120, 40],
"x": 620,
"y": 340
}, {
"data": {},
"id": "1588848436694",
"label": "金额>10万",
"shape": "diamond",
"size": [120, 40],
"x": 780,
"y": 340
}, {
"data": {},
"id": "1588848449431",
"label": "CEO审批",
"shape": "rect",
"size": [120, 40],
"x": 980,
"y": 460
}],
"edges": [{
"shape": "flow-polyline-round",
"source": "start-node",
"sourceAnchor": 2,
"target": "1588848310120",
"targetAnchor": 0
}, {
"shape": "flow-polyline-round",
"source": "1588848310120",
"sourceAnchor": 2,
"target": "1588848322179",
"targetAnchor": 0
}, {
"shape": "flow-polyline-round",
"source": "1588848322179",
"sourceAnchor": 2,
"target": "1588848338211",
"targetAnchor": 0
}, {
"shape": "flow-polyline-round",
"source": "1588848338211",
"sourceAnchor": 2,
"target": "1588848351476",
"targetAnchor": 0,
"label": "否"
}, {
"shape": "flow-polyline-round",
"source": "1588848351476",
"sourceAnchor": 2,
"target": "end-node",
"targetAnchor": 0
}, {
"shape": "flow-polyline-round",
"source": "1588848338211",
"sourceAnchor": 3,
"target": "1588848397511",
"targetAnchor": 1,
"label": "是"
}, {
"shape": "flow-polyline-round",
"source": "1588848436694",
"sourceAnchor": 3,
"target": "1588848449431",
"targetAnchor": 0,
"label": "是"
}, {
"shape": "flow-polyline-round",
"source": "1588848449431",
"sourceAnchor": 1,
"target": "1588848351476",
"targetAnchor": 3
}, {
"shape": "flow-polyline-round",
"source": "1588848436694",
"sourceAnchor": 2,
"target": "1588848351476",
"targetAnchor": 3,
"label": "否"
}, {
"shape": "flow-polyline-round",
"source": "1588848397511",
"sourceAnchor": 3,
"target": "1588848436694",
"targetAnchor": 1
}]
};
new Vue({
el: '#app',
template: "\n <div class=\"app\" style=\"height: 100vh\">\n <vue-flow-editor\n ref=\"editor\"\n :data=\"state.data\"\n :grid=\"showGrid\"\n :miniMap=\"showMiniMap\"\n :onRef=\"onRef\"\n :multipleSelect=\"true\"\n :loading=\"state.editorLoading\"\n\n :disabledUndo=\"false\"\n :disabledDragEdge=\"true\"\n\n :beforeDelete=\"handleBeforeDelete\"\n :afterDelete=\"handleAfterDelete\"\n :beforeAdd=\"handleBeforeAdd\"\n :afterAdd=\"handleAfterAdd\"\n\n @dblclick-node=\"onDblclickNode\"\n @dblclick-edge=\"onDblClickEdge\"\n >\n <div slot=\"menu\">\n <vue-flow-edit-menu-group v-for=\"(group,groupIndex) in state.menuData\" :label=\"group.label\" :key=\"groupIndex\">\n <vue-flow-edit-menu v-for=\"(menu,menuIndex) in group.menus\" :key=\"menuIndex\" :model=\"menu\"/>\n </vue-flow-edit-menu-group>\n </div>\n <div slot=\"model\" style=\"padding: 16px\">\n <el-form v-if=\"!!state.detailModel\" ref=\"form\" :model=\"state.detailModel\" label-width=\"100px\">\n\n <el-form-item label=\"\u8282\u70B9\u540D\u79F0\" prop=\"label\">\n <el-input v-model=\"state.detailModel.label\"/>\n </el-form-item>\n\n <template v-if=\"state.detailModel.type !== 'edge'\">\n <el-form-item label=\"\u8282\u70B9\u80CC\u666F\u8272\" prop=\"style.fill\">\n <el-color-picker v-model=\"state.detailModel.style.fill\"/>\n </el-form-item>\n <el-form-item label=\"\u8282\u70B9\u8FB9\u6846\u8272\" prop=\"style.stroke\">\n <el-color-picker v-model=\"state.detailModel.style.stroke\"/>\n </el-form-item>\n <el-form-item label=\"\u8282\u70B9\u6587\u5B57\u8272\" prop=\"labelCfg.style.stroke\">\n <el-color-picker v-model=\"state.detailModel.labelCfg.style.fill\"/>\n </el-form-item>\n </template>\n\n </el-form>\n </div>\n\n <template slot=\"toolbar\">\n <el-tooltip content=\"\u6D4B\u8BD5\u5DE5\u5177\u680F\u63D2\u69FD\">\n <div class=\"vue-flow-editor-toolbar-item\">\n <i class=\"el-icon-search\"/>\n </div>\n </el-tooltip>\n </template>\n\n <template slot=\"foot\">\n <el-button type=\"primary\" @click=\"save\">\u4FDD\u5B58</el-button>\n <el-button @click=\"cancel\">\u53D6\u6D88</el-button>\n </template>\n </vue-flow-editor>\n </div>\n ",
setup: function setup() {
var state = reactive({
data: AppData,
detailModel: null,
editorLoading: false,
selectOptions: [{
label: '待确认',
value: '0'
}, {
label: '填写表单',
value: '1'
}, {
label: '部门负责人审批',
value: '2'
}, {
label: '总经理审批',
value: '3'
}],
menuData: [{
label: '流程节点',
menus: [{
label: '开始',
shape: 'ellipse',
id: 'start-node'
}, {
label: '结束',
shape: 'ellipse',
id: 'end-node'
}, {
label: '审批节点',
busType: '123'
}, {
label: '判断节点'
}]
}, {
label: '其他形状节点',
menus: [{
label: '矩形节点',
shape: 'rect'
}, {
label: '圆形节点',
shape: 'circle'
}, {
label: '椭圆节点',
shape: 'ellipse'
}, {
label: '菱形节点',
shape: 'diamond'
}, {
label: '三角形节点',
shape: 'triangle'
}, {
label: '星形节点',
shape: 'star'
}]
}]
});
var editor;
function onDblclickNode(e) {
var model = G6.Util.clone(e.item.get('model'));
model.style = model.style || {};
model.labelCfg = model.labelCfg || {
style: {}
};
state.detailModel = model;
editor.openModel();
}
function onDblClickEdge(e) {
var _e$item$get = e.item.get('model'),
source = _e$item$get.source,
target = _e$item$get.target,
style = _e$item$get.style,
labelCfg = _e$item$get.labelCfg,
label = _e$item$get.label;
var model = {
label: label,
source: source,
target: target,
style: style || {},
labelCfg: labelCfg || {
style: {}
},
type: null,
id: null
};
model.type = e.item.get('type');
model.id = e.item.get('id');
state.detailModel = model;
editor.openModel();
}
function cancel() {
editor.closeModel();
}
function save() {
editor.updateModel(state.detailModel);
editor.closeModel();
}
function handleBeforeDelete(_x, _x2) {
return _handleBeforeDelete.apply(this, arguments);
}
function _handleBeforeDelete() {
_handleBeforeDelete = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(model, type) {
return regeneratorRuntime.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
if (!(type === 'node')) {
_context.next = 8;
break;
}
if (!(model.label === '开始')) {
_context.next = 8;
break;
}
state.editorLoading = true;
_context.next = 5;
return delay(1000);
case 5:
state.editorLoading = false;
Ele.Notification.error('不可以删除【开始】节点');
return _context.abrupt("return", Promise.reject('reject'));
case 8:
case "end":
return _context.stop();
}
}
}, _callee);
}));
return _handleBeforeDelete.apply(this, arguments);
}
function handleAfterDelete(model, type) {
if (type === 'edge') {
console.log('delete edge');
} else {
console.log('after delete', model.label, _objectSpread({}, model));
}
}
function handleBeforeAdd(model, type) {
if (type === 'edge') {
if (model.source === 'end-node') {
Ele.Notification.error('结束节点不能输出连线其他节点');
return Promise.reject('reject');
}
}
if (type === 'node') {
if (model.id === 'start-node' || model.id === 'end-node') {
var data = editor.editorState.graph.save();
for (var i = 0; i < data.nodes.length; i++) {
var node = data.nodes[i];
if (node.id === model.id) {
Ele.Notification.error("\u53EA\u80FD\u6709\u4E00\u4E2A" + (model.id === 'start-node' ? '开始' : '结束') + "\u8282\u70B9");
return Promise.reject('reject');
}
}
}
}
}
function handleAfterAdd(model, type) {
if (type === 'edge') {
console.log("\u65B0\u589E\u8FDE\u63A5\u7EBF");
}
}
return {
state: state,
showGrid: true,
showMiniMap: false,
onDblclickNode: onDblclickNode,
onDblClickEdge: onDblClickEdge,
cancel: cancel,
save: save,
handleBeforeDelete: handleBeforeDelete,
handleAfterDelete: handleAfterDelete,
handleBeforeAdd: handleBeforeAdd,
handleAfterAdd: handleAfterAdd,
onRef: function onRef(e) {
return editor = e;
}
};
}
}).$mount();
</script>
</body>
</html>
\ No newline at end of file
No preview for this file type
<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 52.4 (67378) - http://www.bohemiancoding.com/sketch -->
<title>Group 15</title>
<desc>Created with Sketch.</desc>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="营销活动-新建活动-维护活动事件收起" transform="translate(-234.000000, -1217.000000)">
<g id="Group-17" transform="translate(218.000000, 749.000000)">
<g transform="translate(16.000000, 348.000000)" id="Group-5-Copy-6">
<g transform="translate(0.000000, 120.000000)">
<g id="Group-15">
<rect id="Rectangle-5" fill="#9283ED" x="0" y="0" width="24" height="24"></rect>
<g id="_08-2广告投放日志" transform="translate(6.000000, 7.000000)" fill="#FFFFFF" fill-rule="nonzero">
<path d="M0.00260303688,7.74513716 C0.00260303688,8.17286783 0.449075922,8.49206983 0.888885033,8.49206983 L5.7401128,8.49206983 L5.7401128,9.49436409 L3.23453362,9.49436409 C3.08126681,9.49436409 2.97464642,9.59650873 2.97464642,9.74334165 C2.97464642,9.89017456 3.08126681,9.9923192 3.23453362,9.9923192 L8.97204338,9.9923192 C9.1253102,9.9923192 9.23193059,9.89017456 9.23193059,9.74334165 C9.23193059,9.59650873 9.1253102,9.49436409 8.97204338,9.49436409 L6.2598872,9.49436409 L6.2598872,8.49206983 L11.317692,8.49206983 C11.7641649,8.49206983 11.997397,8.16648379 11.997397,7.74513716 L11.997397,7.4961596 L0.00260303688,7.4961596 L0.00260303688,7.74513716 Z M4.03418655,2.81027431 C3.95422126,3.02733167 3.95422126,3.02733167 3.94089371,3.07201995 L3.43444685,4.45097257 L4.64059002,4.45097257 L4.12081562,3.07201995 C4.1008243,3.02094763 4.08749675,2.96349127 4.03418655,2.81027431 Z M7.81921041,2.82304239 L7.03954881,2.82304239 L7.03954881,5.43411471 L7.81254664,5.43411471 C8.2123731,5.43411471 8.4722603,5.34473815 8.67217354,5.13406484 C8.90540564,4.89785536 9.03201735,4.53396509 9.03201735,4.09985037 C9.03201735,3.65935162 8.91873319,3.32738155 8.69216486,3.10394015 C8.49225163,2.89965087 8.2390282,2.82304239 7.81921041,2.82304239 Z" id="Shape"></path>
<path d="M11.317692,0.0012967581 L0.888885033,0.0012967581 C0.442412148,0.0012967581 0.00260303688,0.352418953 0.00260303688,0.805685786 L0.00260303688,7.52169576 L11.997397,7.52169576 L11.997397,0.812069825 C11.997397,0.352418953 11.7375098,0.0012967581 11.317692,0.0012967581 Z M5.14703688,5.98952618 C5.12038178,5.83630923 5.06707158,5.63201995 5.00709761,5.49795511 L4.81384816,4.98723192 L3.26118872,4.98723192 L3.06793926,5.49795511 C2.9813102,5.72139651 2.96131887,5.79162095 2.92133623,5.98952618 L2.1216833,5.98952618 C2.19498482,5.86184539 2.29494143,5.65117207 2.3815705,5.44049875 L3.45443818,2.74643392 C3.54773102,2.51022444 3.58771367,2.39531172 3.60770499,2.27401496 L4.45400434,2.27401496 C4.48065944,2.38892768 4.50731453,2.45915212 4.6205987,2.74643392 L5.70013015,5.44049875 C5.82007809,5.74054863 5.88005206,5.86822943 5.9466898,5.98952618 L5.14703688,5.98952618 Z M9.13197397,5.58094763 C8.81877657,5.86184539 8.43227766,5.98952618 7.85919306,5.98952618 L6.97291106,5.98952618 C6.67304121,5.98952618 6.55309328,5.99591022 6.35318004,6.00229426 C6.37983514,5.81077307 6.39316269,5.66394015 6.39316269,5.38942643 L6.39316269,2.86773067 C6.39316269,2.60598504 6.38649892,2.46553616 6.35318004,2.26124688 C6.5464295,2.26763092 6.66637744,2.27401496 6.97291106,2.27401496 L7.85252928,2.27401496 C8.45893275,2.27401496 8.85875922,2.39531172 9.16529284,2.68259352 C9.52513666,3.00179551 9.70505857,3.48698254 9.70505857,4.09346633 C9.70505857,4.73187032 9.51180911,5.23620948 9.13197397,5.58094763 Z" id="Shape"></path>
</g>
</g>
</g>
</g>
</g>
</g>
</g>
</svg>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<svg width="56px" height="56px" viewBox="0 0 56 56" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 52.4 (67378) - http://www.bohemiancoding.com/sketch -->
<title>优惠券@3x</title>
<desc>Created with Sketch.</desc>
<g id="老窖智慧零售" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="Artboard" transform="translate(-340.000000, -460.000000)">
<g id="优惠券" transform="translate(340.000000, 460.000000)">
<rect id="Rectangle-5" fill="#ED8383" x="0" y="0" width="56" height="56"></rect>
<g transform="translate(14.000000, 16.500000)" fill="#FFFFFF" fill-rule="nonzero" id="Shape">
<path d="M27.0206628,14.1948104 C25.4237817,13.4113107 24.9447174,12.784511 24.9447173,11.5309115 C24.9447173,10.355662 25.4237816,9.72886228 27.0206628,8.86701265 C27.8989474,8.31856287 27.9787914,7.84846309 27.9787914,7.0649634 L27.9787914,2.59901529 C27.9787914,1.18871589 26.7811306,0.0134663967 25.3439376,0.0134663967 L2.66822611,0.0134663967 C1.23103312,0.0134663967 0.0333723158,1.18871589 0.0333723158,2.59901529 L0.0333723158,7.0649634 C0.0333723158,7.7701131 0.113216386,8.39691282 0.991500982,8.86701265 C1.6302534,9.1804125 3.06744639,9.96391219 3.06744639,11.5309115 C3.06744639,13.2546108 2.02947368,13.8030605 1.07134502,14.1164604 L0.991500982,14.1164604 C0.113216386,14.6649102 0.0333723158,15.5267598 0.0333723158,15.9185097 L0.0333723158,20.3844578 C0.0333723158,21.7947572 1.23103312,22.9700067 2.66822611,22.9700067 L25.3439376,22.9700067 C26.7811306,22.9700067 27.9787914,21.7947572 27.9787914,20.3844578 L27.9787914,15.9185097 C27.9787914,15.05666 27.6594152,14.7432602 27.0206628,14.1948104 Z M18.2378168,12.6278111 C18.7168811,12.6278111 19.1161014,13.0195609 19.1161014,13.4896607 C19.1161014,13.9597605 18.7168811,14.3515103 18.2378168,14.3515103 L14.8843665,14.3515103 L14.8843665,17.6422089 C14.8843665,18.1123087 14.4851462,18.5040585 14.0060819,18.5040585 C13.5270175,18.5040585 13.1277973,18.1123087 13.1277973,17.6422089 L13.1277973,14.3515103 L9.77434698,14.3515103 C9.29528267,14.3515103 8.89606239,13.9597605 8.89606239,13.4896607 C8.89606239,13.0195609 9.29528267,12.6278111 9.77434698,12.6278111 L13.1277973,12.6278111 L13.1277973,10.5907119 L9.53481481,10.5907119 C9.05575049,10.5907119 8.65653021,10.1989621 8.65653021,9.72886228 C8.65653021,9.25876249 9.05575049,8.86701265 9.53481481,8.86701265 L12.1696686,8.86701265 L9.3751267,6.12476379 C9.05575049,5.81136393 9.05575049,5.26291416 9.3751267,4.9495143 C9.69450291,4.63611444 10.2534113,4.63611444 10.5727875,4.9495143 L14.0060819,8.31856287 L17.4393762,4.9495143 C17.7587524,4.63611444 18.3176608,4.63611444 18.6370371,4.9495143 C18.9564133,5.26291416 18.9564133,5.81136393 18.6370371,6.12476379 L15.8424951,8.86701265 L18.3975049,8.86701265 C18.8765692,8.86701265 19.2757895,9.25876249 19.2757895,9.72886228 C19.2757895,10.1989621 18.8765692,10.5907119 18.3975049,10.5907119 L14.8045224,10.5907119 L14.8045224,12.6278111 L18.2378168,12.6278111 Z"></path>
</g>
</g>
</g>
</g>
</svg>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 52.4 (67378) - http://www.bohemiancoding.com/sketch -->
<title>Group 7</title>
<desc>Created with Sketch.</desc>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="营销活动-新建活动-维护活动事件收起" transform="translate(-234.000000, -841.000000)">
<g id="Group-5" transform="translate(234.000000, 841.000000)">
<g id="Group-7">
<rect id="Rectangle-5" fill="#92DBA8" x="0" y="0" width="24" height="24"></rect>
<g id="选择人群" transform="translate(6.000000, 6.000000)" fill="#FFFFFF" fill-rule="nonzero">
<path d="M6.07954684,0.0879348459 C6.27427218,0.127410328 6.46293741,0.192275772 6.64067902,0.280859046 C6.8102853,0.353040709 6.96966437,0.447089399 7.11473896,0.560599136 C7.23270551,0.650915741 7.33983452,0.754492582 7.43400383,0.869277845 C7.6096674,1.10543782 7.743798,1.3696474 7.83066622,1.65062084 C7.90815537,1.91946351 7.96635063,2.19346537 8.0048107,2.47054868 C8.04340938,2.76803307 8.0627987,3.06768277 8.06285885,3.36764619 C8.11177355,3.40676316 8.15141696,3.45617153 8.17895517,3.51233934 C8.20586843,3.57834292 8.22848954,3.64600647 8.24667801,3.71490975 C8.26110047,3.81406862 8.26110047,3.91478338 8.24667801,4.01394225 C8.23277675,4.14333562 8.20019089,4.27004632 8.14993109,4.39014444 C8.11296793,4.47042419 8.06034712,4.54256479 7.995136,4.60236105 C7.94281913,4.66039795 7.87607712,4.70365254 7.80164215,4.72776178 C7.80164215,4.8435163 7.7339193,4.95927082 7.69522052,5.08467155 L7.57912421,5.36441163 C7.53873738,5.44264135 7.48652933,5.51421609 7.42432913,5.57662825 L7.09538957,5.86601454 C6.998376,5.97618752 6.94056027,6.11521495 6.9309198,6.26150915 C6.92102457,6.37383202 6.92102457,6.48680361 6.9309198,6.59912648 C6.94377829,6.7163127 6.97649181,6.83047294 7.02766672,6.93674384 C7.02766672,6.93674384 7.09538957,7.01391352 7.02766672,7.03320594 C5.85840368,8.06021036 5.57533261,9.76573242 6.35043823,11.1135527 L0.00383979921,11.1135527 C0.0484947862,10.5618146 0.17230191,10.0193167 0.371478118,9.50263565 C0.655979451,8.98774748 1.08682936,8.56823433 1.6098388,8.29685942 C2.03232171,8.06520837 2.47617744,7.87462158 2.9352717,7.72773304 C3.1657719,7.66730243 3.38475398,7.56953942 3.58347612,7.43834674 C3.70199899,7.35979832 3.80938384,7.26570764 3.90274097,7.15860665 C3.97403505,7.07963202 4.02982465,6.9880138 4.06721075,6.88851279 C4.10475758,6.80334678 4.12450861,6.71144666 4.12525891,6.6184189 L4.12525891,6.29044778 C4.10646041,6.13177975 4.02669894,5.98655719 3.90274097,5.88530696 C3.80599404,5.77919865 3.68989773,5.67309034 3.58347612,5.57662825 C3.51809483,5.51907594 3.46820471,5.44611919 3.43835572,5.36441163 L3.32225941,5.07502534 C3.32225941,4.95927082 3.24486187,4.8435163 3.21583779,4.72776178 C3.16234019,4.7083446 3.11307613,4.67887318 3.07071739,4.64094589 C3.01825681,4.59636533 2.97262442,4.54436756 2.9352717,4.48660654 C2.87405499,4.39967129 2.83125963,4.30120353 2.8095007,4.19722024 C2.78360203,4.08973474 2.78030797,3.97806645 2.799826,3.8692491 C2.80890097,3.77732376 2.82837411,3.68671665 2.85787416,3.59915523 C2.88751895,3.51394932 2.93352397,3.43531575 2.99331985,3.36764619 C2.97402783,3.08501761 2.97402783,2.80140832 2.99331985,2.51877973 C3.03093752,2.26213766 3.08261314,2.00774044 3.14811494,1.75672915 C3.2195717,1.47529117 3.34435992,1.21007834 3.51575327,0.975386155 C3.64051454,0.79730067 3.79040549,0.638104288 3.96078913,0.502721876 C4.11460093,0.381471537 4.28374782,0.280930836 4.46387315,0.203689366 C4.627772,0.114590779 4.80373999,0.0496093232 4.98630656,0.0107651658 C5.15046156,-0.00358290013 5.31556089,-0.00358290013 5.47971589,0.0107651658 C5.68206408,0.0120561592 5.88349756,0.0379710558 6.07954684,0.0879348459 Z M8.42082248,8.63447676 L7.82099153,9.17466451 L8.54659349,10.0524696 L9.06902689,10.6601808 L9.66885784,10.1199931 L11.7005433,8.25827458 C12.1888311,9.19354561 12.0510689,10.3317812 11.3536536,11.1243887 C10.6562384,11.9169962 9.54228256,12.2013293 8.54867674,11.8403487 C7.55507093,11.4793681 6.88570713,10.5471485 6.86319696,9.49298944 C6.85800832,8.46749633 7.46798468,7.53817708 8.4125917,7.13243506 C9.35719873,6.72669304 10.4535645,6.92307817 11.1974593,7.63127094 L9.14642444,9.50263565 L8.42082248,8.63447676 Z" id="Shape"></path>
</g>
</g>
</g>
</g>
</g>
</svg>
\ No newline at end of file
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width,initial-scale=1"><link rel="stylesheet" href="./lib/element-ui.css"><link href="css/chunk-vendors.d1676ea7.css" rel="preload" as="style"><link href="css/index.0ba1d066.css" rel="preload" as="style"><link href="js/chunk-vendors.9382c778.js" rel="preload" as="script"><link href="js/index.e8a5c5ea.js" rel="preload" as="script"><link href="css/chunk-vendors.d1676ea7.css" rel="stylesheet"><link href="css/index.0ba1d066.css" rel="stylesheet"></head><body><script src="./lib/g6.umd.min.js"></script><div id="app"></div><script src="js/chunk-vendors.9382c778.js"></script><script src="js/index.e8a5c5ea.js"></script></body></html>
\ No newline at end of file
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
(function(e){function t(t){for(var o,r,d=t[0],l=t[1],s=t[2],u=0,f=[];u<d.length;u++)r=d[u],Object.prototype.hasOwnProperty.call(i,r)&&i[r]&&f.push(i[r][0]),i[r]=0;for(o in l)Object.prototype.hasOwnProperty.call(l,o)&&(e[o]=l[o]);c&&c(t);while(f.length)f.shift()();return a.push.apply(a,s||[]),n()}function n(){for(var e,t=0;t<a.length;t++){for(var n=a[t],o=!0,d=1;d<n.length;d++){var l=n[d];0!==i[l]&&(o=!1)}o&&(a.splice(t--,1),e=r(r.s=n[0]))}return e}var o={},i={index:0},a=[];function r(t){if(o[t])return o[t].exports;var n=o[t]={i:t,l:!1,exports:{}};return e[t].call(n.exports,n,n.exports,r),n.l=!0,n.exports}r.m=e,r.c=o,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){"undefined"!==typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&"object"===typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)r.d(n,o,function(t){return e[t]}.bind(null,o));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e["default"]}:function(){return e};return r.d(t,"a",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p="";var d=window["webpackJsonp"]=window["webpackJsonp"]||[],l=d.push.bind(d);d.push=t,d=d.slice();for(var s=0;s<d.length;s++)t(d[s]);var c=l;a.push([0,"chunk-vendors"]),n()})({0:function(e,t,n){e.exports=n("4e68")},"0a5f":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("b4ec"),n("5368"),n("c3b9"),n("c9b6"),n("87ea"),n("823a"),n("2339"),n("a214")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a,r,d,l,s){"use strict";var c=n("4ea4").default;Object.defineProperty(e,"__esModule",{value:!0}),e.EditorComponent=void 0,o=c(o),i=c(i),a=c(a),r=c(r),d=c(d),l=c(l),s=c(s);var u=[o.default,i.default,a.default,r.default,d.default,l.default,s.default];e.EditorComponent=u}))},"0c02":function(e,t){e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqBAMAAAA37dRoAAAAMFBMVEUAAAAmJiYnJycqKiomJiYnJyctLS0nJycnJycnJycmJiYnJycrKysnJycmJiYmJiZC1GUPAAAAD3RSTlMASG0kk5EisZdi0X0UmGR1kx7+AAAAjElEQVQoz2OgAuD/DwQfoRx5EOcDbtFfoaH1cNHvoaHrwaJfgZx/xhDwHijtDxf9DwNEiP5QgoB+uOh3QcH9cNt+CwrWfyDRvYyC838IykBFDwr2/xQUADPtPyEFgP5nBoZRUXyi2EOSxLjAjE14zP+Fxvx9stPOzzQImA8X/eXigpRSXVzWk5Z2KAcAa8PckkqK+zkAAAAASUVORK5CYII="},"0f81":function(e,t){e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAREAAABWBAMAAAAakL/dAAAAMFBMVEX////ExMTLy8va2trS0tLw8PDh4eHo6Oj39/cAAAAAAAAAAAAAAAAAAAAAAAAAAAB2+XkbAAAACXBIWXMAAAsTAAALEwEAmpwYAAACVElEQVRoge2WsXKbQBRFMVi2S10BSkqY+AOkJjXETNLKXUr5D6Qiqc2fZ+/ugthoWYGHyaR4Z8YCI9g9Wt59EEWCIAiCIAiCIAiCIAjCdEqk3MTA7vpLWLaBAbpzcNT/JsD6YyY1wM1rN5Lf5M4r6jO5VyaBswOcgYPa7IH3sEk1y2Ts7ACt8S+RBWb5iMns26SuLKJo5a8FYNOQH0ETc05zck3u55o8AnkUPQCfvbPYlQqaOKtJgaRpjvNNnsDwxHplljJxdyZTYzMWnX9s8sbw8ENnjx93tgR3rkl/OKb7G5eyVpNdTLoT1pdBunpOI5i+FUKHp1SD6989nLLym1QJ3Uv2IXOOqdgXx6RyTTIO9bs+Bk0YnidGx2sySHF/WBX5SV2Bw8qsm+WWCfwVcEHFJuffdBNlsXvkbVKXnRY04Xro6AxNzM6VyXNT83CJQq0kioSN2TF5br5Zk0TtZC/m3k00YY20tlhvrYkV3GOtrkCuS9cxqf7ubLrSOpMvh7CJyk3NGvSaDHrsxeSM/Ey/lnlwshMy2fwMe+heAv64CdmxJi22e2yQveLTDBPfg80l5qypx+S6n1iTGCnwFdjzEbGgyQNnzV2Tynw1YpLwil/8KBY1WenkRVGfjXETmx3t/m6WbfAsdrJDk+z7MDu3TdguOWRfHje6faXdM75cqXYyeD9x+glNuvBONrFDXpmMdXs9+5Zve3zPW9KE4YlmmdQsrFYnblGT2Dwn+5syvDtpbzI4zOUoOFU6arLTZZ3OehYLgiAIgiAIgiAIgiD8J/wBKFCTuCCfcxQAAAAASUVORK5CYII="},"10da":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("159b"),n("caad")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.brushSelecct=l;var o=Math.min,i=Math.max,a=Math.abs,r="shift",d=["drag","shift","ctrl","alt","control"];function l(e){e.registerBehavior("brush-select",{getDefaultCfg:function(){return{brushStyle:{fill:"#EEF6FF",fillOpacity:.4,stroke:"#DDEEFE",lineWidth:1},onSelect:function(){},onDeselect:function(){},selectedState:"selected",trigger:r,includeEdges:!0,selectedEdges:[],selectedNodes:[]}},getEvents:function(){var e;return d.indexOf(this.trigger.toLowerCase())>-1?e=this.trigger:(e=r,console.warn("Behavior brush-select的trigger参数不合法,请输入drag、shift、ctrl或alt")),"drag"===e?{mousedown:"onMouseDown",mousemove:"onMouseMove",mouseup:"onMouseUp","canvas:click":"clearStates"}:{mousedown:"onMouseDown",mousemove:"onMouseMove",mouseup:"onMouseUp","canvas:click":"clearStates",keyup:"onKeyUp",keydown:"onKeyDown"}},onMouseDown:function(e){var t=e.item;if(!t&&("drag"===this.trigger||this.keydown)){this.selectedNodes&&0!==this.selectedNodes.length&&this.clearStates();var n=this.brush;n||(n=this._createBrush()),this.originPoint={x:e.canvasX,y:e.canvasY},n.attr({width:0,height:0}),n.show(),this.dragging=!0}},onMouseMove:function(e){this.dragging&&("drag"===this.trigger||this.keydown)&&(this._updateBrush(e),this.graph.paint())},onMouseUp:function(e){if((this.brush||this.dragging)&&("drag"===this.trigger||this.keydown)){var t=this.graph,n=t.get("autoPaint");t.setAutoPaint(!1),this.brush.destroy(),this.brush=null,this._getSelectedNodes(e),this.dragging=!1,this.graph.paint(),t.setAutoPaint(n)}},clearStates:function(){if(!this.keydown){var e=this.graph,t=e.get("autoPaint");e.setAutoPaint(!1);var n=this.selectedState,o=e.findAllByState("node",n),i=e.findAllByState("edge",n);o.forEach((function(t){return e.setItemState(t,n,!1)})),i.forEach((function(t){return e.setItemState(t,n,!1)})),this.selectedNodes=[],this.selectedEdges=[],this.onDeselect&&this.onDeselect(this.selectedNodes,this.selectedEdges),e.emit("nodeselectchange",{targets:{nodes:[],edges:[]},select:!1}),e.paint(),e.setAutoPaint(t)}},_getSelectedNodes:function(e){var t=this,n=this.graph,a=this.selectedState,r=this.originPoint,d={x:e.x,y:e.y},l=n.getPointByCanvas(r.x,r.y),s=o(d.x,l.x),c=i(d.x,l.x),u=o(d.y,l.y),f=i(d.y,l.y),h=[],p=this.shouldUpdate,g=[];n.getNodes().forEach((function(e){var t=e.getBBox();if(t.centerX>=s&&t.centerX<=c&&t.centerY>=u&&t.centerY<=f&&p(e,"select")){h.push(e);var o=e.getModel();g.push(o.id),n.setItemState(e,a,!0)}}));var y=[];this.includeEdges&&h.forEach((function(e){var o=e.getEdges();o.forEach((function(e){var o=e.getModel(),i=o.source,a=o.target;g.includes(i)&&g.includes(a)&&p(e,"select")&&(y.push(e),n.setItemState(e,t.selectedState,!0))}))})),this.selectedEdges=y,this.selectedNodes=h,this.onSelect&&this.onSelect(h,y),n.emit("nodeselectchange",{targets:{nodes:h,edges:y},select:!0})},_createBrush:function(){var e=this,t=e.graph.get("canvas").addShape("rect",{attrs:e.brushStyle,capture:!1});return this.brush=t,t},_updateBrush:function(e){var t=this.originPoint;this.brush.attr({width:a(e.canvasX-t.x),height:a(e.canvasY-t.y),x:o(e.canvasX,t.x),y:o(e.canvasY,t.y)})},onKeyDown:function(e){var t=e.key;t&&t.toLowerCase()===this.trigger.toLowerCase()||"control"===t.toLowerCase()?this.keydown=!0:this.keydown=!1},onKeyUp:function(){this.brush&&(this.brush.destroy(),this.brush=null,this.dragging=!1),this.keydown=!1}})}}))},"15a4":function(e,t,n){},"16b0":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("7a23")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.render=d;var n={key:0,class:"vue-flow-editor-preview"},o={class:"vue-flow-editor-preview-body",ref:"body"},i={class:"vue-flow-editor-preview-target",ref:"target"},a=(0,t.createElementVNode)("i",{class:"el-icon-close"},null,-1),r=[a];function d(e,a,d,l,s,c){return(0,t.openBlock)(),(0,t.createBlock)(t.Transition,{name:"vue-flow-editor-preview-transition"},{default:(0,t.withCtx)((function(){return[s.p_value?((0,t.openBlock)(),(0,t.createElementBlock)("div",n,[(0,t.createElementVNode)("div",o,[(0,t.createElementVNode)("div",i,null,512),(0,t.createElementVNode)("div",{class:"vue-flow-editor-preview-close",onClick:a[0]||(a[0]=function(){return c.close&&c.close.apply(c,arguments)})},r)],512)])):(0,t.createCommentVNode)("",!0)]})),_:1})}}))},"22f6":function(e,t,n){"use strict";var o=n("3aa2");n.o(o,"render")&&n.d(t,"render",(function(){return o["render"]}))},2339:function(e,t,n){"use strict";n.r(t);var o=n("22f6"),i=n("d4c5");for(var a in i)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return i[e]}))}(a);i["default"].render=o["render"],t["default"]=i["default"]},"277b":function(e,t,n){},"2a82":function(e,t,n){"use strict";var o=n("16b0");n.o(o,"render")&&n.d(t,"render",(function(){return o["render"]}))},3617:function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("743b")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t){"use strict";var o=n("4ea4").default;Object.defineProperty(e,"__esModule",{value:!0}),e.externalComponents=void 0,t=o(t);var i=[t.default];e.externalComponents=i}))},"38b5":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("fb6a"),n("99af")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,n){"use strict";function o(e){return i("/vue-flow-editor",e)}function i(e,t){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:"/";return e.indexOf("/")===e.length-1&&(e=e.slice(0,-1)),"/"===t.charAt(0)&&(t=t.slice(1)),"".concat(e).concat(n).concat(t)}Object.defineProperty(e,"__esModule",{value:!0}),e.staticPath=o,e.joinPath=i}))},"3aa2":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("7a23")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.render=i;var n={key:0,class:"el-icon-arrow-down"},o={key:0,class:"vue-flow-edit-menu-group-content",style:{"transition-duration":"200ms"}};function i(e,i,a,r,d,l){var s=(0,t.resolveComponent)("el-collapse-transition");return(0,t.openBlock)(),(0,t.createElementBlock)("div",{class:(0,t.normalizeClass)(["vue-flow-edit-menu-group",{"vue-flow-edit-menu-group-expanded":d.p_value}])},[(0,t.createElementVNode)("div",{class:"vue-flow-edit-menu-group-title",onClick:i[0]||(i[0]=function(){return l.onClickTitle&&l.onClickTitle.apply(l,arguments)})},[(0,t.renderSlot)(e.$slots,"content",{model:{label:a.label}},(function(){return[(0,t.createElementVNode)("span",null,(0,t.toDisplayString)(a.label),1)]})),a.hideArrow?(0,t.createCommentVNode)("",!0):((0,t.openBlock)(),(0,t.createElementBlock)("i",n))]),(0,t.createVNode)(s,null,{default:(0,t.withCtx)((function(){return[d.p_value?((0,t.openBlock)(),(0,t.createElementBlock)("div",o,[(0,t.renderSlot)(e.$slots,"default")])):(0,t.createCommentVNode)("",!0)]})),_:3})],2)}}))},"3ced":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("a0bb"),n("80ca"),n("8f3b"),n("9618"),n("0c02"),n("d64a"),n("88ec"),n("d1f9"),n("93e4"),n("c058"),n("6e88")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a,r,d,l,s,c,u,f){"use strict";var h=n("4ea4").default;Object.defineProperty(e,"__esModule",{value:!0}),e.TOOLBAR_IMAGE=void 0,t=h(t),o=h(o),i=h(i),a=h(a),r=h(r),d=h(d),l=h(l),s=h(s),c=h(c),u=h(u),f=h(f);var p={actualSize:t.default,copy:o.default,delete:i.default,fitView:a.default,grid:r.default,preview:d.default,redo:l.default,undo:s.default,save:c.default,zoomIn:u.default,zoomOut:u.default,image:f.default};e.TOOLBAR_IMAGE=p}))},"3d08":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("159b"),n("07ac"),n("73ec")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,n,o){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.clickSelect=d,e.getSelected=l,e.SELECTED_STATE=void 0;var i="shift",a=["shift","ctrl","alt"],r="selected";function d(e){e.registerBehavior("click-select",{getDefaultCfg:function(){return{multiple:!0,trigger:i}},getEvents:function(){return this.multiple?{"node:click":"onClick","edge:click":"onClick","canvas:click":"onCanvasClick",keyup:"onKeyUp",keydown:"onKeyDown"}:{"node:click":"onClick","edge:click":"onClick","canvas:click":"onCanvasClick"}},onClick:function(e){var t=this,n=e.item,i=t.graph,a=i.get("autoPaint");i.setAutoPaint(!1);var d=!1;if(!t.keydown||!t.multiple){var l=this.getSelected();(0,o.flatten)(Object.values(l)).forEach((function(e){e!==n&&e.hasState(r)&&(d=!0,i.setItemState(e,r,!1))}))}n.hasState(r)||(t.shouldUpdate.call(t,e)&&(d=!0,i.setItemState(n,r,!0)),i.emit("nodeselectchange",{target:n,select:!0}),d&&this.emitSelectChange(),i.setAutoPaint(a),i.paint())},onCanvasClick:function(){if(!this.keydown){var e=this.graph,t=e.get("autoPaint");e.setAutoPaint(!1);var n=this.getSelected(),i=!1;(0,o.flatten)(Object.values(n)).forEach((function(t){t.hasState(r)&&(i=!0,e.setItemState(t,r,!1))})),i&&this.emitSelectChange(!0),e.paint(),e.setAutoPaint(t)}},onKeyDown:function(e){var t=e.key;a.indexOf(t.toLowerCase())>-1?this.keydown=!0:this.keydown=!1},onKeyUp:function(){this.keydown=!1},getSelected:function(){return l(this.graph)},emitSelectChange:function(){var e=arguments.length>0&&void 0!==arguments[0]&&arguments[0];if(e)this.selectChange([],[]);else{var t=this.graph,n=t.findAllByState("node",r),o=t.findAllByState("edge",r);this.selectChange(n,o)}},selectChange:function(e,t){this.graph.emit("select-change",{nodes:e,edges:t})}})}function l(e){return{nodes:e.findAllByState("node",r),edges:e.findAllByState("edge",r)}}e.SELECTED_STATE=r}))},4775:function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("7a23")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.render=o;var n=["xlink:href"];function o(e,o,i,a,r,d){return(0,t.openBlock)(),(0,t.createElementBlock)("svg",{class:"vue-flow-editor-icon","aria-hidden":"true",onClick:o[0]||(o[0]=function(t){return e.$emit("click",t)})},[(0,t.createElementVNode)("use",{"xlink:href":"#"+i.icon},null,8,n)])}}))},"4a62":function(e,t,n){var o,i,a;n("6c57"),function(n,r){i=[t],o=r,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var t={name:"vue-flow-editor-icon",props:{icon:{type:String,required:!0}}};e.default=t}))},"4a91":function(e,t,n){var o,i,a;n("18a5"),n("6c57"),function(r,d){i=[t,n("b526"),n("b87a"),n("9741")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,n,o){"use strict";function i(e){(0,t.registerAnchor)(e),(0,n.registerEdge)(e),(0,o.registerActivity)(e)}Object.defineProperty(e,"__esModule",{value:!0}),e.registerShape=i}))},"4e68":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[n("e260"),n("e6cf"),n("cca6"),n("a79d"),n("7a23"),n("b7a4"),n("ffb4"),n("1f77"),n("7437")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a,r,d,l,s){"use strict";var c=n("4ea4").default;r=c(r),d=c(d),l=c(l);var u=(0,a.createApp)({render:function(){return(0,a.h)(r.default)}});u.use(d.default),u.use(l.default),u.mount("#app")}))},"4f11":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("5530"),n("8c01"),n("ad39")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i){"use strict";var a=n("4ea4").default;Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,t=a(t);var r={name:"vue-flow-editor-preview",props:{value:{type:Boolean},data:{type:Object}},watch:{value:function(e){var t=this;this.p_value=e,e&&this.$nextTick((function(){t.refresh()}))}},data:function(){return{graph:null,p_value:this.value}},methods:{refresh:function(){var e=this.$refs.target,n=this.$refs.body,a=n.offsetHeight,r=n.offsetWidth;this.graph&&this.graph.destroy(),this.graph=new o.G6.Graph((0,t.default)((0,t.default)({container:e,width:r,height:a},i.GraphStyle.default),{},{mode:{default:["drag-canvas","zoom-canvas"]}})),this.graph.read(this.data),this.graph.fitView(20)},close:function(){this.p_value=!1,this.$emit("input",this.p_value)}}};e.default=r}))},"4f4b":function(e,t,n){var o,i,a;n("6c57"),function(n,r){i=[t],o=r,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.KeyboardCode=void 0;var t={16:"shift",17:"ctrl",18:"alt",8:"backspace",9:"tab",13:"enter",27:"esc",32:"space",37:"left",38:"up",39:"right",40:"down",46:"delete",189:"-",187:"=",48:"0",49:"1",50:"2",51:"3",52:"4",53:"5",54:"6",55:"7",56:"8",57:"9",65:"a",66:"b",67:"c",68:"d",69:"e",70:"f",71:"g",72:"h",73:"i",74:"j",75:"k",76:"l",77:"m",78:"n",79:"o",80:"p",81:"q",82:"r",83:"s",84:"t",85:"u",86:"v",87:"w",88:"x",89:"y",90:"z",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12"};e.KeyboardCode=t}))},5368:function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("159b"),n("7a23"),n("2909"),n("5530"),n("ed09"),n("8e2d"),n("8c01"),n("746d"),n("ad39"),n("4a91"),n("73ec")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a,r,d,l,s,c,u,f){"use strict";var h=n("4ea4").default;Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,i=h(i),a=h(a),(0,u.registerShape)(l.G6);var p={name:"vue-flow-editor-canvas",props:{data:{type:Object},miniMap:{type:[Boolean,Object],default:!0},grid:{type:[Boolean,Object],default:!0}},setup:function(e,t){var n=(0,o.getCurrentInstance)(),r=n.proxy,u=(0,o.inject)(d.VueFlowEditorProvider),h=u.editorState,p=u.commander,g=u.props;function y(e){p.initEvent()}function v(e){p.destroyEvent()}function m(){h.graph&&h.graph.destroy();var t=r.$refs.target,n=r.$refs.root,o=n.offsetHeight,u=n.offsetWidth,p=(0,s.useBehavior)({multipleSelect:h.props.multipleSelect,dragEdge:{disabled:h.props.disabledDragEdge,beforeAdd:h.props.beforeAdd,afterAdd:h.props.afterAdd}}),y=new l.G6.Graph((0,a.default)({container:t,width:u,height:o,modes:{edit:(0,i.default)(p)}},c.GraphStyle.default)),v=y.read;y.read=function(e){var t=e||{},n=t.nodes,o=t.edges;n=n||[],o=o||[],n.forEach((function(e){return(0,f.formatNodeModel)(e,g.activityConfig)})),e={nodes:n,edges:o},v.apply(y,[e])},y.setMode("edit"),y.read(e.data),(0,d.useEditorPlugins)(e,y),h.setGraph(y)}function A(){m()}return(0,o.onMounted)((function(){var e=r.$refs.target;e.addEventListener("mouseenter",y),e.addEventListener("mouseout",v),window.addEventListener("resize",A),m()})),(0,o.onBeforeUnmount)((function(){var e=r.$refs.target;e.removeEventListener("mouseenter",y),e.removeEventListener("mouseout",v),window.removeEventListener("resize",A),p.destroyEvent()})),function(){return(0,o.createVNode)("div",{class:"vue-flow-editor-canvas",ref:"root"},[(0,o.createVNode)("div",{class:"vue-flow-editor-canvas-target",ref:"target"},null)])}}};e.default=p}))},"57a3":function(e,t,n){"use strict";n.r(t);var o=n("8efd"),i=n.n(o);for(var a in n.d(t,"default",(function(){return i.a})),o)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return o[e]}))}(a)},"6b1b":function(e,t,n){var o,i,a;n("6c57"),function(n,r){i=[t],o=r,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var t={name:"vue-flow-edit-menu-group",props:{value:{type:Boolean},label:{type:String},hideArrow:{type:Boolean}},watch:{value:function(e){this.p_value=e}},data:function(){return{p_value:this.value}},methods:{onClickTitle:function(){this.p_value=!this.p_value,this.$emit("input",this.p_value)}}};e.default=t}))},"6e88":function(e,t){e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAYAAADFw8lbAAAC3klEQVRYR+3YPWzTQBQH8P9zknaoRFsGhBgMKlFzhxGtYGErK62QECMDUwfEgKDsMDACohsbrRBIbGylA+JDLDBRgaKzQ6mC2Cs+hopU9oOrYnSYpLWbw1GkeHQuL7/87935EkKPXNQjTvShtmeqtxOVUs4z86TtVNLUI6IVpdSV5NiWiQohXhLRVJrCtscw8yvf909lgjLzTwBvbGPa1DtJRIO7ggL4rJQ6lAdUSlkHcLAPTZN2uVweLBaLM8x82HGcLxsbG8v1ev2r+d6uJ+p53v4wDJeJaMKAfQJwWin1Mb7XdagQ4gUR/bOKASjHcSar1WpDY7sKLZfLR0qlUrWZ2sP19fWLIyMj847jzOp7YRhO12q1p12Hjo+Pny0UCk+a0Bml1JKU8iiAD817c0qpu/8FKqU8HkWRDILg0U4LaWxszB0YGKgTkX6wLDHzLQBzRHTGxFuHaiQzPwewh4jOK6Ue74QVQtwmomvJcczsFwqFCes9GiOJaFh/KDNzSmxRCHGHiC6bq56Zp33fr1ld9UlkXDwDFp7n7Q3DsAJgsNFovFtbW/tmdR8FcE5Pd5wkgHvM/BbAgu69LNjt2qSj7YmZfwCIDOS8Uupqs/kvMPNiVmylUjkWhmF9dXX1u81EzVrXlVI3E8UzYXULAXimDzubm5tTJrajRGNUFEWXgiC412rqpJSpsAZytFlnxcR2BNX9x8yzQRDc36G/tsW2QMbl/mA7gmY5j7ZLNolk5gdEdAKAZyZbKpXe53YebYG9AUAvvq3pZuYF3/dnXdcdHhoaem1imfkAEe3L7eBsYs12iZF6F9H3XdcdTWC3hucGTW5dZpIxMv4CrbC5Qk0sgEU93UlkO2zuUA0RQkz5vq97cWu6213NZPWpf7Qr0O1wyddy256yoNo8OPo/lzsN8a/3dzr1VjFpiu12MaWpbXVMJmjP/O1oNSJLxXr7H2dLIVgt00/Uapy/i/0CuOzGScHnzoEAAAAASUVORK5CYII="},"719e":function(e,t,n){"use strict";n.r(t);var o=n("723b"),i=n.n(o);for(var a in n.d(t,"default",(function(){return i.a})),o)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return o[e]}))}(a)},"723b":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("96cf"),n("5530"),n("1da1"),n("d3b7"),n("d81d"),n("7a23"),n("76c0"),n("38b5")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a,r,d,l,s){"use strict";var c=n("4ea4").default;Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,o=c(o),i=c(i);var u=window.G6.default;function f(e){return new Promise((function(t){return setTimeout(t,e)}))}var h={setup:function(e,t){var n,a=(0,d.reactive)({data:l.AppData,detailModel:null,editorLoading:!1,selectOptions:[{label:"待确认",value:"0"},{label:"填写表单",value:"1"},{label:"部门负责人审批",value:"2"},{label:"总经理审批",value:"3"}],menuData:[{label:"流程节点",menus:[{label:"开始",shape:"ellipse",id:"start-node"},{label:"结束",shape:"ellipse",id:"end-node"},{label:"审批节点",busType:"123"},{label:"判断节点",shape:"diamond"}]},{label:"其他形状节点",menus:[{label:"矩形节点",shape:"rect"},{label:"圆形节点",shape:"circle"},{label:"椭圆节点",shape:"ellipse"},{label:"菱形节点",shape:"diamond"},{label:"三角形节点",shape:"triangle"},{label:"星形节点",shape:"star"}]}],activityConfig:{advertisement:{text:"广告宣传1",desc:"通过广告宣传新品",color:"#9283ed",img:"https://cdn.ipadbiz.cn/oa/advertisement-node.svg"},coupon:{text:"优惠券",desc:"发放奖励优惠券",color:"#ed8383",img:"https://cdn.ipadbiz.cn/oa/coupon-node.svg"},crowd:{text:"用户反馈",desc:"收集用户反馈信息",color:"#92dba8",img:"https://cdn.ipadbiz.cn/oa/crowd-node.svg"}}});function r(e){var t=u.Util.clone(e.item.get("model"));t.style=t.style||{},t.labelCfg=t.labelCfg||{style:{}},a.detailModel=t,n.openModel()}function c(e){var t=e.item.get("model"),o=t.source,i=t.target,r=t.style,d=t.labelCfg,l=t.label,s={label:l,source:o,target:i,style:r||{},labelCfg:d||{style:{}},type:null,id:null};s.type=e.item.get("type"),s.id=e.item.get("id"),a.detailModel=s,n.openModel()}function h(){n.closeModel()}function p(){n.updateModel(a.detailModel),n.closeModel()}function g(e,t){return y.apply(this,arguments)}function y(){return y=(0,i.default)(regeneratorRuntime.mark((function e(t,n){return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:if("node"!==n){e.next=7;break}if("开始"!==t.label){e.next=7;break}return a.editorLoading=!0,e.next=5,f(1e3);case 5:return a.editorLoading=!1,e.abrupt("return",Promise.reject("reject"));case 7:case"end":return e.stop()}}),e)}))),y.apply(this,arguments)}function v(e,t){"edge"===t?console.log("delete edge"):console.log("after delete",e.label,(0,o.default)({},e))}function m(e,t){if("edge"===t&&"end-node"===e.source)return Promise.reject("reject");if("node"===t&&("start-node"===e.id||"end-node"===e.id))for(var o=n.editorState.graph.save(),i=0;i<o.nodes.length;i++){var a=o.nodes[i];if(a.id===e.id)return Promise.reject("reject")}}function A(e,t){"edge"===t&&console.log("新增连接线")}function b(){var e=n.editorState.graph.save(),t=e.nodes,o=e.edges;t=t.map((function(e){var t=e.data,n=e.id,o=e.label,i=e.shape,a=e.x,r=e.y,d=e.text,l=e.desc,s=e.img;return{data:t,id:n,label:o,shape:i,x:a,y:r,text:d,desc:l,img:s}})),o=o.map((function(e){var t=e.source,n=e.sourceAnchor,o=e.target,i=e.targetAnchor;return{source:t,sourceAnchor:n,target:o,targetAnchor:i}})),console.log(JSON.stringify({nodes:t,edges:o},null,2))}return{state:a,showGrid:!0,showMiniMap:!0,onDblclickNode:r,onDblClickEdge:c,cancel:h,save:p,handleBeforeDelete:g,handleAfterDelete:v,handleBeforeAdd:m,handleAfterAdd:A,logData:b,onRef:function(e){return n=e},staticPath:s.staticPath}}};e.default=h}))},"73ec":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("3835"),n("5530"),n("159b")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i){"use strict";var a=n("4ea4").default;function r(e){return"number"===typeof e?"".concat(e,"px"):(e=String(e),/^[\d]+$/.test(e)?"".concat(e,"px"):(e.indexOf("px"),e))}function d(e){var t=[];return function e(n){n.forEach((function(n){Array.isArray(n)?e(n):t.push(n)}))}(e),t}Object.defineProperty(e,"__esModule",{value:!0}),e.suffixSize=r,e.flatten=d,e.formatPos=s,e.formatNodeModel=c,e.DEFAULT_SIZE=void 0,t=a(t),o=a(o);var l={rect:[130,40],ellipse:[100,50],diamond:[140,50],circle:[80,80],triangle:[80,80],star:[80,80],activity:[200,80]};function s(e){var n=e,i=n.x,a=n.y;e=(0,o.default)({},e),e.size=e.size||l[e.shape];var r=(0,t.default)(e.size,2),d=r[0],s=r[1],c={x:d/2,y:s/2},u={x:i,y:a},f=5,h=u.x-c.x,p=u.y-c.y;return h=h%f>f/2?Math.ceil(h/f)*f:Math.floor(h/f)*f,p=p%f>f/2?Math.ceil(p/f)*f:Math.floor(p/f)*f,u.x=h+c.x,u.y=p+c.y,(0,o.default)((0,o.default)({},u),{},{size:e.size,shape:e.shape})}function c(e,t){var n=e.shape,o=e.size,i=e.activity;i&&(n="activity"),e.size=o||l[n],i&&t[i]&&(e.shape="activity",e.img=t[i].img,e.color=t[i].color)}e.DEFAULT_SIZE=l}))},"743b":function(e,t,n){"use strict";n.r(t);var o=n("b531"),i=n("c31f");for(var a in i)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return i[e]}))}(a);n("ea19");i["default"].render=o["render"],t["default"]=i["default"]},"746d":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("8c01"),n("3d08"),n("a523"),n("e14a"),n("ecec"),n("9ef9"),n("9abc"),n("10da")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,n,o,i,a,r,d,l){"use strict";function s(e){(0,n.clickSelect)(t.G6),(0,o.dragNode)(t.G6),(0,i.hoverItemActive)(t.G6),(0,a.hoverAnchorActive)(t.G6),(0,r.dragEdge)(t.G6,{beforeAdd:e.dragEdge.beforeAdd,afterAdd:e.dragEdge.afterAdd}),(0,d.dragCanvas)(t.G6),(0,l.brushSelecct)(t.G6);var s=["drag-canvas",{type:"drag-node"},{type:"click-select",multiple:e.multipleSelect},"hover-item-active"];return e.dragEdge.disabled||s.push.apply(s,["hover-anchor-active","drag-edge"]),e.multipleSelect&&s.push({type:"brush-select",selectedState:"selected",includeEdges:!0,onSelect:function(){var e=this.graph,t=e.findAllByState("node","selected"),n=e.findAllByState("edge","selected");e.emit("select-change",{nodes:t,edges:n})}}),s}Object.defineProperty(e,"__esModule",{value:!0}),e.useBehavior=s}))},"76c0":function(e,t,n){var o,i,a;n("6c57"),function(n,r){i=[t],o=r,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.AppData=void 0;var t={nodes:[{id:"123456",x:590,y:100,text:"广告宣传",desc:"通过广告短频宣传",activity:"advertisement"},{id:"2323456789",x:1020,y:100,text:"优惠券",desc:"发送奖励优惠券",activity:"coupon"},{data:{},id:"start-node",label:"开始",shape:"ellipse",x:380,y:100},{data:{},id:"1588848310120",label:"主管审批",shape:"rect",x:380,y:180},{data:{},id:"1588848322179",label:"经理审批",shape:"rect",x:380,y:260},{data:{},id:"1588848338211",label:"金额>2万",shape:"diamond",x:380,y:340},{data:{},id:"1588848351476",label:"财务打款",shape:"rect",x:380,y:460},{data:{},id:"end-node",label:"结束",shape:"ellipse",x:380,y:540},{data:{},id:"1588848397511",label:"VIP审批",shape:"rect",x:590,y:340},{data:{},id:"1588848436694",label:"金额>10万",shape:"diamond",x:780,y:340},{data:{},id:"1588848449431",label:"CEO审批",shape:"rect",x:960,y:460}],edges:[{source:"start-node",sourceAnchor:2,target:"1588848310120",targetAnchor:0},{source:"1588848310120",sourceAnchor:2,target:"1588848322179",targetAnchor:0},{source:"1588848322179",sourceAnchor:2,target:"1588848338211",targetAnchor:0},{source:"1588848338211",sourceAnchor:2,target:"1588848351476",targetAnchor:0},{source:"1588848351476",sourceAnchor:2,target:"end-node",targetAnchor:0},{source:"1588848338211",sourceAnchor:3,target:"1588848397511",targetAnchor:1},{source:"1588848436694",sourceAnchor:3,target:"1588848449431",targetAnchor:0},{source:"1588848449431",sourceAnchor:1,target:"1588848351476",targetAnchor:3},{source:"1588848436694",sourceAnchor:2,target:"1588848351476",targetAnchor:3},{source:"1588848397511",sourceAnchor:3,target:"1588848436694",targetAnchor:1},{source:"start-node",sourceAnchor:3,target:"123456",targetAnchor:1},{source:"123456",sourceAnchor:3,target:"2323456789",targetAnchor:1},{source:"2323456789",sourceAnchor:3,target:"end-node",targetAnchor:3}]};e.AppData=t}))},"80ca":function(e,t){e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqBAMAAAA37dRoAAAAHlBMVEUAAAAnJycnJycpKSkmJiYmJiYmJiYnJycmJiYmJiZwr+slAAAACXRSTlMAqlUu48eSiXGzmKc1AAAAXElEQVQoz2OgFpCciQQmEBCdKAgHngjRCUimkSrKpKSkZIAhygm0NYFY0alYTZgIJEZFSRRFj3kCoo2CSEAAIooO0EWZyw2wiDLNVKCa6BQkR4nCRWciA3yilAMAccBpS5pv+8UAAAAASUVORK5CYII="},"823a":function(e,t,n){"use strict";n.r(t);var o=n("c1c1"),i=n("57a3");for(var a in i)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return i[e]}))}(a);i["default"].render=o["render"],t["default"]=i["default"]},"870c":function(e,t,n){},"87ea":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("7a23"),n("a9e3"),n("99af"),n("a434"),n("d81d"),n("ed09"),n("73ec"),n("8e2d"),n("3ced")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,n,o,i,a,r,d,l,s){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var c={name:"vue-flow-editor-toolbar",props:{height:{type:[String,Number]},toolbarButtonHandler:{type:Function}},setup:function(e,n){var o=(0,t.computed)((function(){return{height:(0,d.suffixSize)(e.height)}})),i=(0,t.inject)(l.VueFlowEditorProvider),a=i.editorState,r=i.commander,c=i.openPreview,u=[{key:"gridSwitcher",tip:"开启/关闭网格",label:"网格",icon:"grid",handler:function(){r.commands.switchGrid()},isEnable:function(){return r.isEnable.value.switchGrid}},{key:"miniMapSwitcher",tip:"开启/关闭缩略图",label:"缩略图",icon:"image",handler:function(){r.commands.switchMiniMap()},isEnable:function(){return r.isEnable.value.switchMiniMap}},{key:"fitSize",tip:"适应画布",icon:"fitView",handler:function(){r.commands.fitView()},isEnable:function(){return r.isEnable.value.fitView}},{key:"actualSize",tip:"实际尺寸",icon:"actualSize",handler:function(){r.commands.actualView()},isEnable:function(){return r.isEnable.value.actualView}},{key:"zoomIn",tip:"放大 CTRL+=",label:"放大",icon:"zoomIn",handler:function(){r.commands.zoomIn()},isEnable:function(){return r.isEnable.value.zoomIn}},{key:"zoomOut",tip:"缩小 CTRL+-",label:"缩小",icon:"zoomOut",handler:function(){r.commands.zoomOut()},isEnable:function(){return r.isEnable.value.zoomOut}},{key:"preview",tip:"预览",icon:"preview",handler:function(){c()}},{key:"delete",tip:"删除 DELETE , CTRL+D",label:"删除",icon:"delete",handler:function(){r.commands.delete()},isEnable:function(){return r.isEnable.value.delete}}],f=(0,t.computed)((function(){var t=[].concat(u);return a.props.disabledUndo||t.splice.apply(t,[8,0].concat([{key:"undo",tip:"撤销 CTRL+Z",label:"撤销",icon:"undo",handler:function(){r.commands.undo()},isEnable:function(){return r.isEnable.value.undo}},{key:"redo",tip:"重做 CTRL+SHIFT+Z",label:"重做",icon:"redo",handler:function(){r.commands.redo()},isEnable:function(){return r.isEnable.value.redo}}])),e.toolbarButtonHandler?e.toolbarButtonHandler(t):t}));return function(){return(0,t.createVNode)("div",{class:"vue-flow-editor-toolbar",style:o.value},[f.value.map((function(e){return(0,t.createVNode)((0,t.resolveComponent)("el-tooltip"),{content:e.tip,key:e.key},{default:function(){return[(0,t.createVNode)("div",{class:["vue-flow-editor-toolbar-item",{"vue-flow-editor-toolbar-item-disabled":!!e.isEnable&&!e.isEnable()}],onClick:function(){return(!e.isEnable||e.isEnable())&&e.handler()}},[(0,t.createVNode)("img",{src:s.TOOLBAR_IMAGE[e.icon]},null),(0,t.createVNode)("span",null,[e.label||e.tip])])]}})})),n.slots.default&&n.slots.default()])}}};e.default=c}))},"88ba":function(e,t,n){"use strict";n.r(t);var o=n("4f11"),i=n.n(o);for(var a in n.d(t,"default",(function(){return i.a})),o)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return o[e]}))}(a)},"88ec":function(e,t){e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAMAAADyHTlpAAAAflBMVEUAAAAmJiYpKSktLS0mJiYmJiYmJiYnJycqKiosLCwwMDA8PDwmJiYmJiYmJiYmJiYmJiYnJycoKCgrKytAQEAmJiYnJycmJiYmJiYmJiYnJycnJycmJiYmJiYnJycnJycnJycmJiYmJiYpKSkpKSkmJiYnJycnJycoKCgmJiZgG4liAAAAKXRSTlMAmUsOzMG4dRkUCgfm3tWxp1UpIQT99OLRxohf7ejafG5rUEEuoJyRbKZI9bcAAADmSURBVDjL7ZO5EoMwDERJwBjCfUNIgAA59P8/GHnS2EGFCkq29Dx5VtLKOrSLsp5LPgDSkodeASAJWKjfIuteeKyDrLBZrN0h2zFZgazjs9iLi2zssdhAsQOTTZCNCrLtdTkbmiNkm/y/iz69Aa3YBEeDMzXo5BL+yt3nyZQycF81Ulb40vYelRoIdasfVZoRbUrVlD6AGf8UHh0vc1Q2+uyoDL03y8LahkrFS/n3jU3XAITPMlVhMb/I8IVaKRFXrJZbdKSOwAHIiTFRp4X924TVadoebAW1xRTwUQcEF81lYR3aV19THx6pEtIaRAAAAABJRU5ErkJggg=="},"8c01":function(e,t,n){var o,i,a;n("6c57"),function(n,r){i=[t],o=r,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.SingleShapeMixin=e.Minimap=e.Grid=e.Item=e.G6=void 0;var t=window.G6,n=t.default;e.G6=n;var o=t.Item;e.Item=o;var i=t.Grid;e.Grid=i;var a=t.Minimap;e.Minimap=a;var r=t.SingleShapeMixin;e.SingleShapeMixin=r}))},"8e2d":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("96cf"),n("d3b7"),n("3ca3"),n("ddb0"),n("d81d"),n("07ac"),n("99af"),n("159b"),n("2909"),n("1da1"),n("5530"),n("7a23"),n("8c01"),n("73ec"),n("aea6"),n("3d08"),n("e0ef")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a,r,d,l,s,c,u,f,h,p,g,y,v,m){"use strict";var A=n("4ea4").default;Object.defineProperty(e,"__esModule",{value:!0}),e.useEditorStyles=x,e.useEditorPlugins=w,e.useCanvasProps=S,e.useEditorCommander=E,e.VueFlowEditorProvider=void 0,c=A(c),u=A(u),f=A(f),m=A(m);var b="@@VueFlowEditorProvider";function x(e){return(0,h.computed)((function(){return{root:{height:(0,g.suffixSize)(e.height)},left:{width:(0,g.suffixSize)(e.menuWidth)},toolbar:{height:(0,g.suffixSize)(e.toolbarHeight)}}}))}function w(e,t){var n=(0,h.reactive)({plugin:{grid:null,miniMap:null}});function o(e){if(!1===e||null==e)n.plugin.grid&&(t.removePlugin(n.plugin.grid),n.plugin.grid=null);else{var o="boolean"===typeof e?{}:e;n.plugin.grid=new p.Grid(o),t.addPlugin(n.plugin.grid)}}function i(e){if(!1===e||null==e)n.plugin.miniMap&&(t.removePlugin(n.plugin.miniMap),n.plugin.miniMap=null);else{var o="boolean"===typeof e?{}:e;n.plugin.miniMap=new p.Minimap(o),t.addPlugin(n.plugin.miniMap)}}return o(e.grid),i(e.miniMap),(0,h.watch)((function(){return e.grid}),(function(e){o(e)})),(0,h.watch)((function(){return e.miniMap}),(function(e){i(e)})),{pluginState:n}}function S(e){var t=(0,h.reactive)({data:e.data,grid:e.grid,miniMap:e.miniMap});return(0,h.watch)((function(){return e.data}),(function(e){return t.data=e})),(0,h.watch)((function(){return e.grid}),(function(e){return t.grid=e})),(0,h.watch)((function(){return e.miniMap}),(function(e){return t.miniMap=e})),t}function E(e){var t=(0,y.useCommander)(e);return t.register(new y.Command({name:"switchGrid",execute:function(){var t=e.canvasProps.grid;return{redo:function(){e.canvasProps.grid=!t},undo:function(){e.canvasProps.grid=t}}}})),t.register(new y.Command({name:"switchMiniMap",execute:function(){var t=e.canvasProps.miniMap;return{redo:function(){e.canvasProps.miniMap=!t},undo:function(){e.canvasProps.miniMap=t}}}})),t.register(new y.Command({name:"fitView",execute:function(){var e=this.graph,t=e.getZoom();return{redo:function(){e.fitView(20)},undo:function(){e.zoomTo(t)}}}})),t.register(new y.Command({name:"actualView",execute:function(){var e=this.graph,t=e.getZoom();return{redo:function(){e.zoomTo(1)},undo:function(){e.zoomTo(t)}}}})),t.register(new y.Command({name:"zoomIn",keyboard:"ctrl+=",execute:function(){var e=this.graph,t=e.getZoom();return{redo:function(){e.zoom(1.1)},undo:function(){e.zoomTo(t)}}}})),t.register(new y.Command({name:"zoomOut",keyboard:"ctrl+-",execute:function(){var e=this.graph,t=e.getZoom();return{redo:function(){e.zoom(.9)},undo:function(){e.zoomTo(t)}}}})),t.register(new y.Command({name:"delete",keyboard:["ctrl+d","backspace","delete"],init:function(){var e=this;this.data={onSelectChange:function(t){e.data=(0,f.default)((0,f.default)({},e.data),{},{selected:t})}},this.graph.on("select-change",this.data.onSelectChange)},destroy:function(){this.graph.off("select-change",this.data.onSelectChange)},execute:function(){var t,n,o=this.graph;return{redo:function(){var i=(0,u.default)(regeneratorRuntime.mark((function i(){var a,r,d;return regeneratorRuntime.wrap((function(i){while(1)switch(i.prev=i.next){case 0:if(t||n){i.next=8;break}return a=e.props,r=a.beforeDelete,d=a.afterDelete,t=(0,m.default)(o.save()),i.next=5,Promise.all((0,g.flatten)(Object.values((0,v.getSelected)(o))).map(function(){var e=(0,u.default)(regeneratorRuntime.mark((function e(t){var n,i;return regeneratorRuntime.wrap((function(e){while(1)switch(e.prev=e.next){case 0:if(n=t.get("model"),i=t.get("type"),e.prev=2,!r){e.next=6;break}return e.next=6,r(n,i);case 6:if(t.clearAnchor(),o.removeItem(t),o.paint(),!d){e.next=12;break}return e.next=12,d(n,i);case 12:e.next=17;break;case 14:e.prev=14,e.t0=e["catch"](2),console.error(e.t0);case 17:case"end":return e.stop()}}),e,null,[[2,14]])})));return function(t){return e.apply(this,arguments)}}()));case 5:n=(0,m.default)(o.save()),i.next=9;break;case 8:o.read(n);case 9:case"end":return i.stop()}}),i)})));function a(){return i.apply(this,arguments)}return a}(),undo:function(){o.read(t)}}},isEnable:function(){var e=this.data.selected;if(e){var t=e.nodes,n=e.edges;return[].concat((0,c.default)(t),(0,c.default)(n)).length>0}return!1}})),t.register(new y.Command({name:"drag",doNothingWhenExecute:!0,init:function(){var e=this;this.data={ondragstart:function(){e.data=(0,f.default)((0,f.default)({},e.data),{},{start:(0,m.default)(e.graph.save())})},ondragend:function(){e.data=(0,f.default)((0,f.default)({},e.data),{},{end:(0,m.default)(e.graph.save())}),t.commands.drag()}},this.graph.on("drag-node:start",this.data.ondragstart),this.graph.on("drag-node:end",this.data.ondragend)},destroy:function(){this.graph.off("drag-node:start",this.data.ondragstart),this.graph.off("drag-node:end",this.data.ondragend)},execute:function(){var e=this,t=this.data,n=t.start,o=t.end;return{redo:function(){e.graph.read(o)},undo:function(){e.graph.read(n)}}}})),t.register(new y.Command({name:"selectAll",keyboard:"ctrl+a",isQueue:!1,execute:function(){var t=this;return{redo:function(){if(e.props.multipleSelect){var n={nodes:t.graph.findAll("node",(function(){return!0})),edges:t.graph.findAll("edge",(function(){return!0}))};(0,g.flatten)(Object.values(n)).forEach((function(e){e.setState(v.SELECTED_STATE,!0)})),t.graph.paint(),t.graph.emit("select-change",n)}}}}})),t.register(new y.Command({name:"addEdge",doNothingWhenExecute:!0,init:function(){var e=this;this.data={beforeAdd:function(){e.data=(0,f.default)((0,f.default)({},e.data),{},{before:(0,m.default)(e.graph.save())})},afterAdd:function(){e.data=(0,f.default)((0,f.default)({},e.data),{},{after:(0,m.default)(e.graph.save())}),t.commands.addEdge()}},this.graph.on("add-edge:before",this.data.beforeAdd),this.graph.on("add-edge:after",this.data.afterAdd)},destroy:function(){this.graph.off("add-edge:before",this.data.beforeAdd),this.graph.off("add-edge:after",this.data.afterAdd)},execute:function(){var e=this,t=this.data,n=t.before,o=t.after;return{redo:function(){e.graph.read(o)},undo:function(){e.graph.read(n)}}}})),t.register(new y.Command({name:"addNode",doNothingWhenExecute:!0,init:function(){var e=this;this.data={beforeAdd:function(){e.data=(0,f.default)((0,f.default)({},e.data),{},{before:(0,m.default)(e.graph.save())})},afterAdd:function(){e.data=(0,f.default)((0,f.default)({},e.data),{},{after:(0,m.default)(e.graph.save())}),t.commands.addNode()}},this.graph.on("add-node:before",this.data.beforeAdd),this.graph.on("add-node:after",this.data.afterAdd)},destroy:function(){this.graph.off("add-node:before",this.data.beforeAdd),this.graph.off("add-node:after",this.data.afterAdd)},execute:function(){var e=this,t=this.data,n=t.before,o=t.after;return{redo:function(){e.graph.read(o)},undo:function(){e.graph.read(n)}}}})),t.register(new y.Command({name:"update",doNothingWhenExecute:!0,init:function(){this.data={before:null,after:null}},execute:function(e){var t=this.graph,n=t.findById(e.id);this.data.before=(0,m.default)(t.save()),n?(t.update(n,e),t.paint(),this.data.after=(0,m.default)(t.save())):this.data.after=this.data.before;var o=this.data,i=o.before,a=o.after;return{redo:function(){t.read(a)},undo:function(){t.read(i)}}}})),t}e.VueFlowEditorProvider=b}))},"8efd":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("96cf"),n("5530"),n("1da1"),n("ade3"),n("8e2d"),n("73ec")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a,r,d){"use strict";var l=n("4ea4").default;Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,o=l(o),i=l(i),a=l(a);var s={name:"vue-flow-edit-menu",inject:(0,a.default)({},r.VueFlowEditorProvider,{}),props:{model:{type:Object,require:!0},hideArrow:{type:Boolean}},data:function(){var e=this;return{handler:{dragenter:function(e){e.dataTransfer.dropEffect="move"},dragover:function(e){e.preventDefault()},dragleave:function(e){e.dataTransfer.dropEffect="none"},drop:function(){var t=(0,i.default)(regeneratorRuntime.mark((function t(n){var i,a,l,s,c,u,f,h,p,g,y,v,m,A;return regeneratorRuntime.wrap((function(t){while(1)switch(t.prev=t.next){case 0:if(i=(0,o.default)({},e.model),(0,d.formatNodeModel)(i,e[r.VueFlowEditorProvider].props.activityConfig),a=i,l=a.id,s=a.shape,c=a.size,s=s||"rect",l=l||String((new Date).getTime()),"function"!==typeof l){t.next=9;break}return t.next=8,l();case 8:l=t.sent;case 9:if(u=n.clientX,f=n.clientY,h=e.graph.getPointByClient(u,f),p=h.x,g=h.y,y=e[r.VueFlowEditorProvider].editorState.props,v=y.beforeAdd,m=y.afterAdd,A=(0,d.formatPos)({x:p,y:g,size:c,shape:s}),i=(0,o.default)((0,o.default)({},i),{},{id:l,shape:A.shape,size:A.size,x:A.x,y:A.y}),t.prev=14,!v){t.next=18;break}return t.next=18,v(i,"node");case 18:if(e.graph.emit("add-node:before",i),e.graph.add("node",i),e.graph.paint(),e.graph.emit("add-node:after",i),!m){t.next=25;break}return t.next=25,m(i,"node");case 25:t.next=30;break;case 27:t.prev=27,t.t0=t["catch"](14),console.error(t.t0);case 30:case"end":return t.stop()}}),t,null,[[14,27]])})));function n(e){return t.apply(this,arguments)}return n}()}}},computed:{graph:function(){return this[r.VueFlowEditorProvider].editorState.graph},container:function(){return this.graph?this.graph.get("container"):null}},methods:{onDragstart:function(e){e.dataTransfer.effectAllowed="move",this.container.addEventListener("dragenter",this.handler.dragenter),this.container.addEventListener("dragover",this.handler.dragover),this.container.addEventListener("dragleave",this.handler.dragleave),this.container.addEventListener("drop",this.handler.drop)},onDragend:function(){this.container.removeEventListener("dragenter",this.handler.dragenter),this.container.removeEventListener("dragover",this.handler.dragover),this.container.removeEventListener("dragleave",this.handler.dragleave),this.container.removeEventListener("drop",this.handler.drop)}}};e.default=s}))},"8f3b":function(e,t){e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAMAAADyHTlpAAAASFBMVEUAAAAoKCgnJycnJycoKCgnJycmJiYoKCgmJiYnJycnJycnJycqKiopKSkrKytAQEAnJycvLy8nJycmJiYmJiYnJyctLS0mJiaedWoaAAAAF3RSTlMAGVz7eX0oTKyS34oqHxUGdg3r4rFUEQiYI8sAAACLSURBVDjL7ZPLCsMgEEU1iXaMGpO+7v//aQupHQp2XLQLQ3I2wuEsLsKo1nB44yrpyOlYSe08vJjtj/v6Ko73yfDuYIwHyBQhwBsTeIMGOlWkA/Tz2Xiq71ktUU5jf06rSRcEMT0Bls2R7jSNq5mAm5gmcln569L4wfw7paEIcZp/UWBSHxC+QqoRHmzYHVNObHQlAAAAAElFTkSuQmCC"},9330:function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("cb29"),n("7a23")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,n){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.render=c;var o={class:"app",style:{height:"100vh"}},i={class:"activity-menu"},a=["src"],r=(0,n.createElementVNode)("i",{class:"el-icon-search"},null,-1),d=[r],l=(0,n.createTextVNode)("保存"),s=(0,n.createTextVNode)("取消");function c(e,t,r,c,u,f){var h=(0,n.resolveComponent)("vue-flow-edit-menu"),p=(0,n.resolveComponent)("vue-flow-edit-menu-group"),g=(0,n.resolveComponent)("el-input"),y=(0,n.resolveComponent)("el-form-item"),v=(0,n.resolveComponent)("el-color-picker"),m=(0,n.resolveComponent)("el-option"),A=(0,n.resolveComponent)("el-select"),b=(0,n.resolveComponent)("el-form"),x=(0,n.resolveComponent)("el-tooltip"),w=(0,n.resolveComponent)("el-button"),S=(0,n.resolveComponent)("vue-flow-editor");return(0,n.openBlock)(),(0,n.createElementBlock)("div",o,[(0,n.createVNode)(S,{ref:"editor",data:c.state.data,grid:c.showGrid,miniMap:c.showMiniMap,onRef:c.onRef,multipleSelect:!0,loading:c.state.editorLoading,beforeDelete:c.handleBeforeDelete,afterDelete:c.handleAfterDelete,beforeAdd:c.handleBeforeAdd,afterAdd:c.handleAfterAdd,onDblclickNode:c.onDblclickNode,onDblclickEdge:c.onDblClickEdge,activityConfig:c.state.activityConfig},{menu:(0,n.withCtx)((function(){return[(0,n.createVNode)(p,{label:"活动节点",value:""},{default:(0,n.withCtx)((function(){return[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(c.state.activityConfig,(function(e,t){return(0,n.openBlock)(),(0,n.createBlock)(h,{key:t,model:{activity:t,text:e.text,desc:e.desc}},{content:(0,n.withCtx)((function(){return[(0,n.createElementVNode)("div",i,[(0,n.createElementVNode)("img",{src:e.img},null,8,a),(0,n.createElementVNode)("span",null,(0,n.toDisplayString)(e.text),1)])]})),_:2},1032,["model"])})),128))]})),_:1}),((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(c.state.menuData,(function(e,t){return(0,n.openBlock)(),(0,n.createBlock)(p,{label:e.label,key:t,value:""},{default:(0,n.withCtx)((function(){return[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(e.menus,(function(e,t){return(0,n.openBlock)(),(0,n.createBlock)(h,{key:t,model:e},null,8,["model"])})),128))]})),_:2},1032,["label"])})),128))]})),model:(0,n.withCtx)((function(){return[c.state.detailModel?((0,n.openBlock)(),(0,n.createBlock)(b,{key:0,ref:"form",model:c.state.detailModel,"label-width":"100px"},{default:(0,n.withCtx)((function(){return[void 0===c.state.detailModel.activity?((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,{key:0},[(0,n.createVNode)(y,{label:"节点名称",prop:"label"},{default:(0,n.withCtx)((function(){return[(0,n.createVNode)(g,{modelValue:c.state.detailModel.label,"onUpdate:modelValue":t[0]||(t[0]=function(e){return c.state.detailModel.label=e})},null,8,["modelValue"])]})),_:1}),"edge"!==c.state.detailModel.type?((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,{key:0},[(0,n.createVNode)(y,{label:"节点背景色",prop:"style.fill"},{default:(0,n.withCtx)((function(){return[(0,n.createVNode)(v,{modelValue:c.state.detailModel.style.fill,"onUpdate:modelValue":t[1]||(t[1]=function(e){return c.state.detailModel.style.fill=e})},null,8,["modelValue"])]})),_:1}),(0,n.createVNode)(y,{label:"节点边框色",prop:"style.stroke"},{default:(0,n.withCtx)((function(){return[(0,n.createVNode)(v,{modelValue:c.state.detailModel.style.stroke,"onUpdate:modelValue":t[2]||(t[2]=function(e){return c.state.detailModel.style.stroke=e})},null,8,["modelValue"])]})),_:1}),(0,n.createVNode)(y,{label:"节点文字色",prop:"labelCfg.style.stroke"},{default:(0,n.withCtx)((function(){return[(0,n.createVNode)(v,{modelValue:c.state.detailModel.labelCfg.style.fill,"onUpdate:modelValue":t[3]||(t[3]=function(e){return c.state.detailModel.labelCfg.style.fill=e})},null,8,["modelValue"])]})),_:1})],64)):(0,n.createCommentVNode)("",!0)],64)):((0,n.openBlock)(),(0,n.createElementBlock)(n.Fragment,{key:1},[(0,n.createVNode)(y,{label:"活动标题"},{default:(0,n.withCtx)((function(){return[(0,n.createVNode)(g,{modelValue:c.state.detailModel.text,"onUpdate:modelValue":t[4]||(t[4]=function(e){return c.state.detailModel.text=e})},null,8,["modelValue"])]})),_:1}),(0,n.createVNode)(y,{label:"活动副标题"},{default:(0,n.withCtx)((function(){return[(0,n.createVNode)(g,{modelValue:c.state.detailModel.desc,"onUpdate:modelValue":t[5]||(t[5]=function(e){return c.state.detailModel.desc=e})},null,8,["modelValue"])]})),_:1}),(0,n.createVNode)(y,{label:"活动类型"},{default:(0,n.withCtx)((function(){return[(0,n.createVNode)(A,{modelValue:c.state.detailModel.activity,"onUpdate:modelValue":t[6]||(t[6]=function(e){return c.state.detailModel.activity=e})},{default:(0,n.withCtx)((function(){return[((0,n.openBlock)(!0),(0,n.createElementBlock)(n.Fragment,null,(0,n.renderList)(c.state.activityConfig,(function(e,t){return(0,n.openBlock)(),(0,n.createBlock)(m,{key:t,label:e.text,value:t},null,8,["label","value"])})),128))]})),_:1},8,["modelValue"])]})),_:1})],64))]})),_:1},8,["model"])):(0,n.createCommentVNode)("",!0)]})),toolbar:(0,n.withCtx)((function(){return[(0,n.createVNode)(x,{content:"测试工具栏插槽"},{default:(0,n.withCtx)((function(){return[(0,n.createElementVNode)("div",{class:"vue-flow-editor-toolbar-item",onClick:t[7]||(t[7]=function(){return c.logData&&c.logData.apply(c,arguments)})},d)]})),_:1})]})),foot:(0,n.withCtx)((function(){return[(0,n.createVNode)(w,{type:"primary",onClick:c.save},{default:(0,n.withCtx)((function(){return[l]})),_:1},8,["onClick"]),(0,n.createVNode)(w,{onClick:c.cancel},{default:(0,n.withCtx)((function(){return[s]})),_:1},8,["onClick"])]})),_:1},8,["data","grid","miniMap","onRef","loading","beforeDelete","afterDelete","beforeAdd","afterAdd","onDblclickNode","onDblclickEdge","activityConfig"])])}}))},"93e4":function(e,t){e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAMAAADyHTlpAAAAM1BMVEUAAAAmJiYmJiYpKSkoKCgnJycoKCgmJiYnJycnJycnJycnJycmJiYmJiYmJiYnJycmJiaCPH/MAAAAEHRSTlMA95pETZEftW7u1/n53dRdt2KMpwAAAHNJREFUOMvt1N0KgCAMhmG3fkz7++7/aksRUUIsChHyORmM92wwUQNF1gLMFJmBhSzlUkIW+VTzSQKSvXCjg5TN6IBeRHqgM5O/SvdtG2+mE/DzdF/XIC12LTlEZDq9eJsmtbSlZVLNSe5pPn/FirKUqMABSRcS+QJrNlMAAAAASUVORK5CYII="},9618:function(e,t){e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqBAMAAAA37dRoAAAAIVBMVEUAAAAnJycnJycnJycnJycnJycnJycrKysmJiYrKysmJibiL9FcAAAACnRSTlMAxHZOnfJIMIU2iAm2agAAAGRJREFUKM9joALgWoUOFuAWXSqICqLAogvRjJQiRjRJCQg00UW9QFYtIk602NjYuGsRNtusBq1oiRtQlPQwS3HHJqq1eNCKrgDGjTmGKCgalxAnOgmUPNSggmSEGWZKJSmtUw4A7MSAPCMo+AMAAAAASUVORK5CYII="},"96a9":function(e,t,n){"use strict";var o=n("9330");n.o(o,"render")&&n.d(t,"render",(function(){return o["render"]}))},9741:function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("159b"),n("b64b"),n("3835"),n("ad39")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a){"use strict";var r=n("4ea4").default;function d(e){e.registerNode("activity",{options:{style:{},stateStyles:{}},setState:function(){},drawShape:function(e,t){var n=e.text,o=e.desc,r=e.img,d=e.color;d=d||a.BASE_COLOR,o=o||"无描述";var l,s=e.size||[200,80],c=(0,i.default)(s,2),u=c[0],f=c[1],h={keyShape:{type:"rect",attrs:{fill:"white",x:-u/2,y:-f/2,width:u,height:f,shadowColor:"#BFC5D2",shadowBlur:50}},sideRect:{type:"rect",attrs:{x:-u/2,y:-f/2,width:6,height:f,fill:d}},img:{type:"image",attrs:{x:f/4-u/2,y:f/4-f/2,width:f/2,height:f/2,img:r}},label:{type:"text",attrs:{text:n,x:f-u/2,y:f*(3/8)-f/2,fontSize:16,textAlign:"left",textBaseline:"middle",fill:"black"}},desc:{type:"text",attrs:{text:o,x:f-u/2,y:f*(5/8)-f/2,fontSize:12,textAlign:"left",textBaseline:"middle",fill:"#999"}}},p={};return Object.keys(h).forEach((function(e){var n=h[e],o=n.type,i=n.attrs;p[e]=t.addShape(o,{attrs:i,name:e,draggable:!0}),"keyShape"===e&&(l=p[e])})),t.shapes=p,l},update:function(e,t){t=t.getContainer(),t.shapes.sideRect.attr({fill:e.color}),t.shapes.img.attr({img:e.img}),t.shapes.label.attr({text:e.text}),t.shapes.desc.attr({text:e.desc})}},"single-shape")}Object.defineProperty(e,"__esModule",{value:!0}),e.registerActivity=d,i=r(i)}))},"9abc":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("8c01")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.dragCanvas=d;var n=t.G6.Util,o=Math.abs,i=10,a=document.body,r=[16,17,18];function d(e){e.registerBehavior("drag-canvas",{getDefaultCfg:function(){return{direction:"both"}},getEvents:function(){return{"canvas:mousedown":"onMouseDown","canvas:mousemove":"onMouseMove","canvas:mouseup":"onMouseUp","canvas:click":"onMouseUp","canvas:mouseleave":"onOutOfRange",keyup:"onKeyUp",keydown:"onKeyDown"}},updateViewport:function(e){var t=this.origin,n=+e.clientX,o=+e.clientY;if(!isNaN(n)&&!isNaN(o)){var i=n-t.x,a=o-t.y;"x"===this.get("direction")?a=0:"y"===this.get("direction")&&(i=0),this.origin={x:n,y:o},this.graph.translate(i,a),this.graph.paint()}},onMouseDown:function(e){2!==e.event.button&&(this.keydown||(this.origin={x:e.clientX,y:e.clientY},this.dragging=!1))},onMouseMove:function(e){if(!this.keydown){e=n.cloneEvent(e);var t=this.graph;if(this.origin){if(this.origin&&!this.dragging){if(o(this.origin.x-e.clientX)+o(this.origin.y-e.clientY)<i)return;this.shouldBegin.call(this,e)&&(e.type="dragstart",t.emit("canvas:dragstart",e),this.dragging=!0)}this.dragging&&(e.type="drag",t.emit("canvas:drag",e)),this.shouldUpdate.call(this,e)&&this.updateViewport(e)}}},onMouseUp:function(e){if(!this.keydown)if(this.dragging){e=n.cloneEvent(e);var t=this.graph;this.shouldEnd.call(this,e)&&this.updateViewport(e),e.type="dragend",t.emit("canvas:dragend",e),this.endDrag()}else this.origin=null},endDrag:function(){if(this.dragging){this.origin=null,this.dragging=!1;var e=this.fn;e&&(a.removeEventListener("mouseup",e,!1),this.fn=null)}},onOutOfRange:function(e){if(this.dragging){var t=this,n=t.graph.get("canvas").get("el"),o=function(o){o.target!==n&&t.onMouseUp(e)};this.fn=o,a.addEventListener("mouseup",o,!1)}},onKeyDown:function(e){var t=e.keyCode||e.which;r.indexOf(t)>-1?this.keydown=!0:this.keydown=!1},onKeyUp:function(){this.keydown=!1}})}}))},"9ef9":function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("96cf"),n("1da1"),n("5530"),n("159b"),n("ad39")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a,r){"use strict";var d=n("4ea4").default;function l(e,t){e.registerBehavior("drag-edge",{getDefaultCfg:function(){return{updateEdge:!0,delegate:!0,delegateStyle:{},dragEdge:!1}},getEvents:function(){return{"anchor:dragstart":"onDragStart","anchor:drag":"onDrag","anchor:dragenter":"onDragEnter","anchor:dragleave":"onDragLeave","anchor:dragend":"onDragEnd"}},onDragStart:function(e){var t=this,n=e.target.getParent().getParent().get("item"),o=e.item,i=o.index,a=n.getAnchorPoints()[i];this.target=e.item,this.origin={x:a.x,y:a.y,sourceNode:n,sourceAnchor:i},this.graph.getNodes().forEach((function(e){e.showAnchor(t.graph),e.getContainer().anchorShapes.forEach((function(e){e.get("item").showHotpot()}))})),this.graph.set("onDragEdge",!0)},onDrag:function(e){this.origin&&this._updateEdge(this.target,e)},onDragEnter:function(e){this.origin&&(this.sameNode(e)||(e.item.setHotspotActived(!0),this.origin.targetNode=e.target.getParent().getParent().get("item"),this.origin.targetAnchor=e.item.get("index")))},onDragLeave:function(e){this.origin&&(this.sameNode(e)||(e.item.setHotspotActived(!1),this.origin.targetNode=null,this.origin.targetAnchor=null))},onDragEnd:function(e){var t=this;if(this.origin){var n=e.item.get("edgeDelegate");n&&(n.remove(),this.target.set("edgeDelegate",null)),this._updateEdge(this.target,e,!0),this.target=null,this.origin=null,this.graph.set("onDragEdge",!1),this.graph.getNodes().forEach((function(e){e.hideAnchor(t.graph),e.getContainer().anchorShapes.forEach((function(e){e.get("item").hideHotpot()}))}))}},sameNode:function(e){return"marker"===e.target.type&&e.target.getParent()&&e.target.getParent().getParent().get("item").get("id")===this.origin.sourceNode.get("id")},_updateEdge:function(e,t,n){var o=t.x,i=t.y;!this.delegate||n?(this._addEdge(t),this.graph.paint()):this._updateEdgeDelegate(e,o,i)},_updateEdgeDelegate:function(e,t,n){var o=this,a=e.get("edgeDelegate");if(!a){var d=o.graph.get("group");a=d.addShape("line",{attrs:(0,i.default)({x1:this.origin.x,y1:this.origin.y,x2:t,y2:n},r.GraphStyle.edgeDelegationStyle)}),a.set("capture",!1),e.set("edgeDelegate",a)}a.attr({x2:t,y2:n}),this.graph.paint()},_addEdge:function(){var e=this;return(0,o.default)(regeneratorRuntime.mark((function n(){var o;return regeneratorRuntime.wrap((function(n){while(1)switch(n.prev=n.next){case 0:if(!e.origin.targetNode){n.next=21;break}if(o={clazz:"flow",source:e.origin.sourceNode.get("id"),target:e.origin.targetNode.get("id"),sourceAnchor:e.origin.sourceAnchor,targetAnchor:e.origin.targetAnchor},!e.graph.executeCommand){n.next=6;break}e.graph.executeCommand("add",{type:"edge",addModel:o}),n.next=21;break;case 6:if(n.prev=6,!t.beforeAdd){n.next=10;break}return n.next=10,t.beforeAdd(o,"edge");case 10:if(e.graph.emit("add-edge:before"),e.graph.add("edge",o),e.graph.emit("add-edge:after"),!t.afterAdd){n.next=16;break}return n.next=16,t.afterAdd(o,"edge");case 16:n.next=21;break;case 18:n.prev=18,n.t0=n["catch"](6),console.error(n.t0);case 21:case"end":return n.stop()}}),n,null,[[6,18]])})))()}})}Object.defineProperty(e,"__esModule",{value:!0}),e.dragEdge=l,o=d(o),i=d(i)}))},a0bb:function(e,t){e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAMAAADyHTlpAAAAWlBMVEUAAAAmJiYnJycnJycnJycmJiYmJiYmJiYqKionJycmJiYnJycoKCgsLCwyMjInJycnJycnJycmJiYnJycnJycnJycoKCgzMzMmJiYmJiYoKCgnJycoKCgmJiZvfRRyAAAAHXRSTlMAkq/r2cHRnRL69nE4Fw3n4bemjINRSArIZF9BQERN+KIAAACWSURBVDjL5dTJDsIgAIRhqMrSAlW7uc37v6YHEmMrkomJEdP/QkK+44AoIRB9QpXMpp6oFNnkWmjwS+NNml5rNHN5tnZI0iOwn1MFHJK0Ajbxwt3iuQV2eXoBGpJqoCKpa1tH0di/0KnvAkl7QJK0AzRJjdb+Qcm5nN7NZXwZ4WDrMT3tyYhFJpT6DH9A+U/zS792Ad0BpIgqb+WRTqwAAAAASUVORK5CYII="},a214:function(e,t,n){"use strict";n.r(t);var o=n("2a82"),i=n("88ba");for(var a in i)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return i[e]}))}(a);i["default"].render=o["render"],t["default"]=i["default"]},a523:function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("b85c"),n("5530"),n("4de4"),n("159b"),n("8c01")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a,r){"use strict";var d=n("4ea4").default;Object.defineProperty(e,"__esModule",{value:!0}),e.dragNode=p,t=d(t),o=d(o);var l=r.G6.Util.isString,s=r.G6.Util.deepMix,c=n("ad39"),u=c.delegateStyle,f=document.body,h=["shift"];function p(e){e.registerBehavior("drag-node",{getDefaultCfg:function(){return{updateEdge:!0,delegateStyle:{},enableDelegate:!1,ondragend:function(){}}},getEvents:function(){return{"node:dragstart":"onDragStart","node:drag":"onDrag","node:dragend":"onDragEnd","canvas:mouseleave":"onOutOfRange",keyup:"onKeyUp",keydown:"onKeyDown"}},onDragStart:function(e){var t=this;if(this.shouldBegin.call(this,e)){var n=e.item,o=e.target,i=n.hasLocked();if(!i){if(o){var a=o.get("isAnchorPoint");if(a)return}var r=this.graph;this.targets=[];var d=r.findAllByState("node","selected"),l=n.get("id"),s=d.filter((function(e){var t=e.get("id");return l===t}));0===s.length?(this.target=n,this.target.origin={x:n._cfg.model.x,y:n._cfg.model.y}):d.length>1?d.forEach((function(e){var n=e.hasLocked();n||(e.origin={x:e._cfg.model.x,y:e._cfg.model.y},t.targets.push(e))})):this.targets.push(n),this.origin={x:e.x,y:e.y},this.point={},this.originPoint={},r.emit("drag-node:start")}}},onDrag:function(e){var t=this;if(this.origin&&this.get("shouldUpdate").call(this,e)){var n=this.graph,o=n.get("autoPaint");n.setAutoPaint(!1),this.targets.length>0?this.enableDelegate?this._updateDelegate(e):this.targets.forEach((function(n){t._update(n,e,t.enableDelegate)})):this._update(this.target,e,this.enableDelegate),n.paint(),n.setAutoPaint(o)}},onDragEnd:function(e){var t=this;if(this.origin&&this.shouldEnd.call(this,e)){var n=this.graph,o=n.get("autoPaint");if(n.setAutoPaint(!1),this.shape&&(this.shape.remove(),this.shape=null),this.target){var i=this.target.get("delegateShape");i&&(i.remove(),this.target.set("delegateShape",null))}this.targets.length>0?this.targets.forEach((function(n){return t._update(n,e)})):this.target&&this._update(this.target,e),this.point={},this.origin=null,this.originPoint={},this.targets.length=0,this.target=null;var a=this.fn;a&&(f.removeEventListener("mouseup",a,!1),this.fn=null),n.paint(),n.setAutoPaint(o),n.emit("drag-node:end")}},onOutOfRange:function(e){var t=this;if(this.origin){var n=t.graph.get("canvas").get("el"),o=function(o){o.target!==n&&t.onDragEnd(e)};this.fn=o,f.addEventListener("mouseup",o,!1)}},_update:function(e,t,n){var o=this.origin,i=e.get("model"),a=e.get("id");this.point[a]||(this.point[a]={x:i.x,y:i.y});var r=t.x-o.x,d=t.y-o.y,l=5;if(r=r%l>l/2?Math.ceil(r/l)*l:Math.floor(r/l)*l,d=d%l>l/2?Math.ceil(d/l)*l:Math.floor(d/l)*l,this.keydown&&(Math.abs(r)>Math.abs(d)?d=0:r=0),e.origin){var s=r+e.origin.x,c=d+e.origin.y;if(n)this._updateDelegate(t,s,c);else{var u={x:s,y:c};this.get("updateEdge")?this.graph.updateItem(e,u):e.updatePosition(u)}}},_updateDelegate:function(e,t,n){var i=e.item.get("keyShape").getBBox();if(this.shape)if(this.targets.length>0){var a=e.x-this.origin.x+this.originPoint.minX,r=e.y-this.origin.y+this.originPoint.minY;this.shape.attr({x:a,y:r})}else this.target&&this.shape.attr({x:t+i.x,y:n+i.y});else{var d=this.graph.get("group"),l=s({},u,this.delegateStyle);if(this.targets.length>0){var c=this.calculationGroupPosition(),f=c.x,h=c.y,p=c.width,g=c.height,y=c.minX,v=c.minY;this.originPoint={x:f,y:h,width:p,height:g,minX:y,minY:v},this.shape=d.addShape("rect",{attrs:(0,o.default)({width:p,height:g,x:f,y:h},l)})}else this.target&&(this.shape=d.addShape("rect",{attrs:(0,o.default)({width:i.width,height:i.height,x:t+i.x,y:n+i.y},l)}),this.target.set("delegateShape",this.shape));this.shape.set("capture",!1)}},calculationGroupPosition:function(){var e,n=this.graph,o=n.findAllByState("node","selected"),i=1/0,a=-1/0,r=1/0,d=-1/0,s=(0,t.default)(o);try{for(s.s();!(e=s.n()).done;){var c=e.value,u=l(c)?n.findById(c):c,f=u.getBBox(),h=f.minX,p=f.minY,g=f.maxX,y=f.maxY;h<i&&(i=h),p<r&&(r=p),g>a&&(a=g),y>d&&(d=y)}}catch(x){s.e(x)}finally{s.f()}var v=Math.floor(i)-20,m=Math.floor(r)+10,A=Math.ceil(a)-v,b=Math.ceil(d)-m;return{x:v,y:m,width:A,height:b,minX:i,minY:r}},onKeyDown:function(e){var t=e.key;h.indexOf(t.toLowerCase())>-1?this.keydown=!0:this.keydown=!1},onKeyUp:function(){this.keydown=!1}})}}))},ad39:function(e,t,n){var o,i,a;n("6c57"),function(n,r){i=[t],o=r,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.GraphStyle=e.BASE_COLOR_DEEP=e.BASE_COLOR=void 0;var t="#1F74FF";e.BASE_COLOR=t;var n="#324aff";e.BASE_COLOR_DEEP=n;var o={default:{defaultEdge:{shape:"flow-polyline-round",style:{stroke:"#BFC5D2",lineWidth:1,lineAppendWidth:10,cursor:"pointer"}},defaultNode:{shape:"rect",size:[120,40],anchorPoints:[[.5,0],[0,.5],[.5,1],[1,.5]],style:{fill:"#E8F1FF",lineWidth:0,stroke:t,cursor:"pointer"},labelCfg:{style:{fontSize:14,fill:t,cursor:"pointer"}}},nodeStateStyles:{selected:{lineWidth:2,stroke:t},hover:{stroke:t}},edgeStateStyles:{selected:{stroke:t,lineWidth:1}}},anchorStyle:{stroke:t,radius:3.5,fill:"#fff",lineAppendWidth:12},anchorHotsoptStyle:{radius:12,fill:t,fillOpacity:.25},anchorHotsoptActivedStyle:{radius:14},anchorPointHoverStyle:{radius:4,fill:t,fillOpacity:1,stroke:n},edgeDelegationStyle:{stroke:t,lineDash:[4,4],lineWidth:1}};e.GraphStyle=o}))},aea6:function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("b0c0"),n("fb6a"),n("a15b"),n("159b"),n("d4ec"),n("7a23"),n("4f4b")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a,r,d,l){"use strict";var s=n("4ea4").default;Object.defineProperty(e,"__esModule",{value:!0}),e.useCommander=u,e.Command=void 0,r=s(r);var c=function e(t){(0,r.default)(this,e),Object.assign(this,t),this.isEnable=null==t.isEnable?function(){return!0}:t.isEnable,this.isQueue=null==t.isQueue||t.isQueue,this.doNothingWhenExecute=null!=t.doNothingWhenExecute&&t.doNothingWhenExecute,this.data={}};function u(e){var t,n=(0,d.reactive)({queue:[],index:-1,registerCommands:[]}),o={},i=(0,d.computed)((function(){return n.registerCommands.reduce((function(e,t){return e[t.name]=t.isEnable(),e}),{})})),a=function(e){if(!e.name)throw console.log(e),new Error("Commander: command's name can not be empty!");n.registerCommands.push(e),o[e.name]=function(){if(!e.isEnable||e.isEnable()){var t=e.execute.apply(e,arguments),o=t.undo,i=t.redo;if(!e.isQueue)return!e.doNothingWhenExecute&&i();var a=n.queue,r=n.index;a.length>0&&(a=a.slice(0,r+1),n.queue=a),a.push({undo:o,redo:i}),n.index=r+1,!e.doNothingWhenExecute&&i()}}};function r(){t||(t=function(e){var t=[];e.ctrlKey&&t.push("ctrl"),e.shiftKey&&t.push("shift"),e.altKey&&t.push("alt"),t.push(l.KeyboardCode[e.keyCode]);var i=t.join("+");n.registerCommands.forEach((function(t){if(t.keyboard){var n=Array.isArray(t.keyboard)?t.keyboard:[t.keyboard];n.indexOf(i)>-1&&(e.stopPropagation(),e.preventDefault(),o[t.name]())}}))},window.addEventListener("keydown",t))}function s(){t&&(window.removeEventListener("keydown",t),t=null)}function u(e){n.registerCommands.forEach((function(t){t.graph=e,t.init&&t.init()}))}function f(){s(),n.registerCommands.forEach((function(e){e.destroy&&e.destroy()}))}return a(new c({name:"undo",keyboard:"ctrl+z",isQueue:!1,execute:function(){return{redo:function(){if(-1!==n.index){var e=n.queue[n.index];e&&(e.undo(),n.index--)}}}},isEnable:function(){return!e.props.disabledUndo&&!!n.queue[n.index]}})),a(new c({name:"redo",keyboard:"ctrl+shift+z",isQueue:!1,execute:function(){return{redo:function(){var e=n.queue[n.index+1];e&&(e.redo(),n.index++)}}},isEnable:function(){return!e.props.disabledUndo&&!!n.queue[n.index+1]}})),{state:n,register:a,commands:o,isEnable:i,initEvent:r,destroyEvent:s,init:u,destroy:f}}e.Command=c}))},b4ec:function(e,t){!function(e){var t,n='<svg><symbol id="vfe-actual-size" viewBox="0 0 1024 1024"><path d="M205.66145834 90.125h70.30975342v843.75H205.66145834V90.125z m562.50274658 0H838.47395834v843.75h-70.30975342V90.125zM486.90871176 301.0625h70.31799316v70.30975342h-70.31799316V301.0625z m0 281.24725342h70.31799316v70.31799316h-70.31799316v-70.31799316z" ></path></symbol><symbol id="vfe-fit" viewBox="0 0 1024 1024"><path d="M640 288V96c0-19.2 12.8-32 32-32s32 12.8 32 32v160h160c19.2 0 32 12.8 32 32s-12.8 32-32 32H672c-6.4 0-12.8 0-19.2-6.4h-6.4c0-12.8-6.4-19.2-6.4-25.6zM288 64c-19.2 0-32 12.8-32 32v160H96c-19.2 0-32 12.8-32 32s12.8 32 32 32h192c6.4 0 12.8 0 19.2-6.4h6.4c6.4-6.4 6.4-12.8 6.4-19.2v-192c0-25.6-12.8-38.4-32-38.4z m576 576H672c-6.4 0-12.8 0-19.2 6.4h-6.4c-6.4 6.4-6.4 12.8-6.4 19.2v192c0 19.2 12.8 32 32 32s32-12.8 32-32V704h160c19.2 0 32-12.8 32-32s-12.8-32-32-32z m-550.4 12.8c-6.4-6.4-6.4-6.4 0 0-12.8-6.4-19.2-12.8-25.6-12.8H96c-19.2 0-32 12.8-32 32s12.8 32 32 32h160v160c0 19.2 12.8 32 32 32s32-12.8 32-32V672c0-6.4-6.4-12.8-6.4-19.2zM480 352c-70.4 0-128 57.6-128 128s57.6 128 128 128 128-57.6 128-128-57.6-128-128-128z" ></path></symbol><symbol id="vfe-search" viewBox="0 0 1024 1024"><path d="M399.5 737c-187.49999971 0-337.5-150.00000029-337.5-337.5s150.00000029-337.5 337.5-337.5 337.5 150.00000029 337.5 337.5S586.99999971 737 399.5 737zM399.5 136.99999971C253.25 136.99999971 136.99999971 253.25 136.99999971 399.5s116.25000029 262.50000029 262.50000029 262.50000029 262.50000029-116.25000029 262.50000029-262.50000029S545.75 136.99999971 399.5 136.99999971z" ></path><path d="M924.49999971 962c-11.25 0-18.74999971-3.75000029-26.25000029-11.25l-299.99999971-299.99999971c-15.00000029-15.00000029-15.00000029-37.50000029 0-52.49999971s37.50000029-15.00000029 52.49999971 0l299.9999997 299.99999971c15.00000029 15.00000029 15.00000029 37.50000029 0 52.49999971C943.25000029 958.24999971 935.74999971 962 924.49999971 962z" ></path></symbol><symbol id="vfe-zoom-in" viewBox="0 0 1024 1024"><path d="M968.842667 908.501333L726.698667 666.357333A382.293333 382.293333 0 0 0 810.666667 426.666667C810.666667 214.592 638.752 42.666667 426.666667 42.666667 214.592 42.666667 42.666667 214.592 42.666667 426.666667s171.925333 384 384 384c90.666667 0 173.994667-31.413333 239.690666-83.978667l242.144 242.144a42.666667 42.666667 0 0 0 60.341334-60.330667zM426.666667 725.333333c-164.949333 0-298.666667-133.717333-298.666667-298.666666s133.717333-298.666667 298.666667-298.666667c164.96 0 298.666667 133.717333 298.666666 298.666667S591.626667 725.333333 426.666667 725.333333z m170.666666-298.666666a42.666667 42.666667 0 0 1-42.666666 42.666666h-85.333334v85.333334a42.666667 42.666667 0 0 1-85.333333 0v-85.333334h-85.333333a42.666667 42.666667 0 0 1 0-85.333333h85.333333v-85.333333a42.666667 42.666667 0 0 1 85.333333 0v85.333333h85.333334a42.666667 42.666667 0 0 1 42.666666 42.666667z" ></path></symbol><symbol id="vfe-zoom-out" viewBox="0 0 1024 1024"><path d="M968.842667 908.501333L726.698667 666.357333A382.293333 382.293333 0 0 0 810.666667 426.666667C810.666667 214.592 638.752 42.666667 426.666667 42.666667 214.592 42.666667 42.666667 214.592 42.666667 426.666667s171.925333 384 384 384c90.666667 0 173.994667-31.413333 239.690666-83.968l242.144 242.133333a42.666667 42.666667 0 0 0 60.341334-60.330667zM426.666667 725.333333c-164.949333 0-298.666667-133.717333-298.666667-298.666666s133.717333-298.666667 298.666667-298.666667c164.96 0 298.666667 133.717333 298.666666 298.666667S591.626667 725.333333 426.666667 725.333333z m170.666666-298.666666a42.666667 42.666667 0 0 1-42.666666 42.666666H298.666667a42.666667 42.666667 0 0 1 0-85.333333h256a42.666667 42.666667 0 0 1 42.666666 42.666667z" ></path></symbol><symbol id="vfe-undo" viewBox="0 0 1024 1024"><path d="M761.856 1024c113.728-206.048 132.896-520.32-313.856-509.824l0 253.824-384-384 384-384 0 248.384c534.976-13.952 594.56 472.224 313.856 775.616z" ></path></symbol><symbol id="vfe-redo" viewBox="0 0 1024 1024"><path d="M576 248.384V0l384 384-384 384v-253.824C129.248 503.68 148.416 817.952 262.144 1024-18.56 720.576 41.056 234.432 576 248.384z" ></path></symbol></svg>',o=(t=document.getElementsByTagName("script"))[t.length-1].getAttribute("data-injectcss");if(o&&!e.__iconfont__svg__cssinject__){e.__iconfont__svg__cssinject__=!0;try{document.write("<style>.svgfont {display: inline-block;width: 1em;height: 1em;fill: currentColor;vertical-align: -0.1em;font-size:16px;}</style>")}catch(t){console&&console.log(t)}}!function(t){if(document.addEventListener)if(~["complete","loaded","interactive"].indexOf(document.readyState))setTimeout(t,0);else{var n=function e(){document.removeEventListener("DOMContentLoaded",e,!1),t()};document.addEventListener("DOMContentLoaded",n,!1)}else document.attachEvent&&(i=t,a=e.document,r=!1,(d=function(){try{a.documentElement.doScroll("left")}catch(t){return void setTimeout(d,50)}o()})(),a.onreadystatechange=function(){"complete"==a.readyState&&(a.onreadystatechange=null,o())});function o(){r||(r=!0,i())}var i,a,r,d}((function(){var e,t,o,i,a,r;(e=document.createElement("div")).innerHTML=n,n=null,(t=e.getElementsByTagName("svg")[0])&&(t.setAttribute("aria-hidden","true"),t.style.position="absolute",t.style.width=0,t.style.height=0,t.style.overflow="hidden",o=t,(i=document.body).firstChild?(a=o,(r=i.firstChild).parentNode.insertBefore(a,r)):i.appendChild(o))}))}(window)},b526:function(e,t,n){var o,i,a;n("18a5"),n("6c57"),function(r,d){i=[t,n("5530"),n("159b"),n("c2a9"),n("ad39"),n("8c01")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a,r){"use strict";var d=n("4ea4").default;function l(e,n,o){var d,l=o.addGroup(),s=new r.Item({type:"anchor",group:l,capture:!1,index:e,isActived:!1,model:{style:(0,t.default)((0,t.default)((0,t.default)({},n),a.GraphStyle.anchorStyle),{},{cursor:i.default.cursor.hoverEffectiveAnchor})}});return s.index=e,s.isAnchor=!0,s.toFront(),s.hideHotpot=function(){d.remove()},s.showHotpot=function(){d=l.addShape("marker",{attrs:(0,t.default)((0,t.default)({},n),a.GraphStyle.anchorHotsoptStyle)}),d.toFront(),s.getKeyShape().toFront()},s.setActived=function(){s.update({style:(0,t.default)({},a.GraphStyle.anchorPointHoverStyle)})},s.clearActived=function(){s.update({style:(0,t.default)({},a.GraphStyle.anchorStyle)})},s.setHotspotActived=function(e){d&&(e?d.attr(a.GraphStyle.anchorHotsoptActivedStyle):d.attr(a.GraphStyle.anchorHotsoptStyle))},l}function s(e){e.Shape.registerFactory("anchor",{defaultShapeType:"marker"}),e.Shape.registerAnchor("single-anchor",e.Util.mix({},r.SingleShapeMixin,{itemType:"anchor",drawShape:function(e,t){var n=this.shapeType,o=this.getShapeStyle(e),i=t.addShape(n,{attrs:o});return i},setState:function(e,n,o){"active-anchor"===e&&(n?this.update({style:(0,t.default)({},a.GraphStyle.anchorPointHoverStyle)},o):this.update({style:(0,t.default)({},a.GraphStyle.anchorStyle)},o))}})),e.Shape.registerAnchor("marker",{shapeType:"marker"},"single-anchor")}Object.defineProperty(e,"__esModule",{value:!0}),e.createAnchor=l,e.registerAnchor=s,t=d(t),i=d(i),r.Item.prototype.anchorDebounceTimer=null,r.Item.prototype.getShowAnchorPoints=function(){return[[0,-.5],[-.5,0],[0,.5],[.5,0]]},r.Item.prototype.showAnchor=function(e){if(this.anchorDebounceTimer&&(clearTimeout(this.anchorDebounceTimer),this.anchorDebounceTimer=null),"node"===this.getType()){var t=this.getContainer();if(t.anchorShapes)t.anchorShapes.forEach((function(e){e.show(),e.toFront()}));else{t.anchorShapes=[],t.keyShape=this;var n=this.getBBox();this.getShowAnchorPoints().forEach((function(e,o){var i=l(o,{x:n.width*e[0],y:n.height*e[1]},t);t.anchorShapes.push(i)}))}e.paint()}},r.Item.prototype.hideAnchor=function(e){var t=this;!0!==e.get("onDragEdge")&&(this.anchorDebounceTimer||(this.anchorDebounceTimer=setTimeout((function(){try{if("node"!==t.getType())return;var n=t.getContainer();if(!n.anchorShapes)return;n.anchorShapes.forEach((function(e){return e.hide()})),t.anchorDebounceTimer=null,e.paint()}catch(o){}}),100)))},r.Item.prototype.clearAnchor=function(){try{var e=this.getContainer();e.anchorShapes&&e.anchorShapes.length>0&&e.anchorShapes.forEach((function(e){return e.remove()}))}catch(t){}}}))},b531:function(e,t,n){"use strict";var o=n("4775");n.o(o,"render")&&n.d(t,"render",(function(){return o["render"]}))},b7a4:function(e,t,n){"use strict";n.r(t);var o=n("96a9"),i=n("719e");for(var a in i)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return i[e]}))}(a);n("fcef");i["default"].render=o["render"],t["default"]=i["default"]},b87a:function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("5530"),n("159b"),n("7db0"),n("99af"),n("4de4"),n("a434"),n("c740"),n("ad39"),n("c2a9"),n("8c01")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a,r,d,l,s,c,u){"use strict";var f=n("4ea4").default;Object.defineProperty(e,"__esModule",{value:!0}),e.registerEdge=g,t=f(t),c=f(c);var h=u.G6.Util.deepMix,p=function(e,t){var n=[];return e.forEach((function(e){n.find((function(n){return n[t]===e[t]}))||n.push(e)})),n};function g(e){e.registerEdge("flow-polyline-round",{options:{style:(0,t.default)({},s.GraphStyle.default.defaultEdge.style),stateStyles:(0,t.default)({},s.GraphStyle.default.edgeStateStyles)},setState:function(t,n,o){var i=o.get("keyShape");if(i){var a=o.getStateStyle(t),r=this.getStateStyle(t,n,o),d=h({},r,a);if(n)i.attr(d);else{var l=o.getCurrentStatesStyle();e.Util.each(d,(function(e,t){l[t]||(l[t]=null)})),i.attr(l)}}},drawShape:function(e,t){this.group=t;var n=this.getShapeStyle(e),o=t.addShape("path",{className:"edge-shape",attrs:n});return o},drawLabel:function(e,t){var n=e.labelCfg||{},o=this.getLabelStyle(e,n,t),i=t.addShape("text",{attrs:o}),a=i.getBBox();return t.addShape("rect",{className:"edge-labelRect",attrs:{x:a.x-c.default.edgeLabelRectPadding/2,y:a.y-c.default.edgeLabelRectPadding/2,width:a.width+c.default.edgeLabelRectPadding,height:a.height+c.default.edgeLabelRectPadding,fill:"#fff",stroke:"#fff"}}),t.toBack(),i.toFront(),i},afterUpdate:function(e,t){var n=t.getContainer().findByClassName("edge-label"),o=t.getContainer().findByClassName("edge-labelRect");if(n){var i=n.getBBox();o.attr({x:i.x-c.default.edgeLabelRectPadding/2,y:i.y-c.default.edgeLabelRectPadding/2,width:i.width+c.default.edgeLabelRectPadding,height:i.height+c.default.edgeLabelRectPadding})}},getShapeStyle:function(e){e=this.getPathPoints(e);var n=e.startPoint,o=e.endPoint,i=this.getControlPoints(e),a=[n];i&&(a=a.concat(i)),a.push(o);var r=this.getPath(a),d=this.options.style;return d=e.reverse?(0,t.default)((0,t.default)({},d),{},{lineDash:[1,3]}):(0,t.default)((0,t.default)({},d),{},{lineDash:null}),(0,t.default)((0,t.default)({path:r},d),{},{endArrow:{path:"M 0,0 L -10,-4 S -8 0,-10 4 Z"}})},getPath:function(e){for(var t=[],n=0;n<e.length;n++){var o=e[n];if(0===n)t.push(["M",o.x,o.y]);else if(n===e.length-1)t.push(["L",o.x,o.y]);else{var i=e[n-1],a=e[n+1],r=5;(Math.abs(o.y-i.y)>r||Math.abs(o.x-i.x)>r)&&(i.x===o.x?t.push(["L",o.x,o.y>i.y?o.y-r:o.y+r]):i.y===o.y&&t.push(["L",o.x>i.x?o.x-r:o.x+r,o.y]));var d=Math.abs(o.y-a.y),l=Math.abs(o.x-a.x);d>0&&d<r?r=d:l>0&&l<r&&(r=l),i.x!==a.x&&a.x===o.x?t.push(["Q",o.x,o.y,o.x,o.y>a.y?o.y-r:o.y+r]):i.y!==a.y&&a.y===o.y&&t.push(["Q",o.x,o.y,o.x>a.x?o.x-r:o.x+r,o.y])}}return t},getControlPoints:function(e){return e.sourceNode?this.polylineFinding(e.sourceNode,e.targetNode,e.startPoint,e.endPoint,15):e.controlPoints},getExpandedBBox:function(e,t){return 0===e.width&&0===e.height?e:{centerX:e.centerX,centerY:e.centerY,minX:e.minX-t,minY:e.minY-t,maxX:e.maxX+t,maxY:e.maxY+t,height:e.height+2*t,width:e.width+2*t}},getExpandedPort:function(e,t){return Math.abs(t.x-e.centerX)/e.width>Math.abs(t.y-e.centerY)/e.height?{x:t.x>e.centerX?e.maxX:e.minX,y:t.y}:{x:t.x,y:t.y>e.centerY?e.maxY:e.minY}},combineBBoxes:function(e,t){var n=Math.min(e.minX,t.minX),o=Math.min(e.minY,t.minY),i=Math.max(e.maxX,t.maxX),a=Math.max(e.maxY,t.maxY);return{centerX:(n+i)/2,centerY:(o+a)/2,minX:n,minY:o,maxX:i,maxY:a,height:a-o,width:i-n}},getBBoxFromVertexes:function(e,t){var n=Math.min(e.x,t.x),o=Math.max(e.x,t.x),i=Math.min(e.y,t.y),a=Math.max(e.y,t.y);return{centerX:(n+o)/2,centerY:(i+a)/2,maxX:o,maxY:a,minX:n,minY:i,height:a-i,width:o-n}},vertexOfBBox:function(e){return[{x:e.minX,y:e.minY},{x:e.maxX,y:e.minY},{x:e.maxX,y:e.maxY},{x:e.minX,y:e.maxY}]},crossPointsByLineAndBBox:function(e,t){var n=[];return t.x<e.minX||t.x>e.maxX||(n=n.concat([{x:t.x,y:e.minY},{x:t.x,y:e.maxY}])),t.y<e.minY||t.y>e.maxY||(n=n.concat([{x:e.minX,y:t.y},{x:e.maxX,y:t.y}])),n},getConnectablePoints:function(e,t,n,o){var i=this,a=this.getBBoxFromVertexes(n,o),r=this.combineBBoxes(e,t),d=this.combineBBoxes(e,a),l=this.combineBBoxes(t,a),s=[];s=s.concat(this.vertexOfBBox(d),this.vertexOfBBox(l),this.vertexOfBBox(r));var c={x:r.centerX,y:r.centerY};return[r,d,l,a].forEach((function(e){s=s.concat(i.crossPointsByLineAndBBox(e,c))})),s.push({x:n.x,y:o.y}),s.push({x:o.x,y:n.y}),s},filterConnectablePoints:function(e,t){return e.filter((function(e){return e.x<=t.minX||e.x>=t.maxX||e.y<=t.minY||e.y>=t.maxY}))},AStar:function(e,t,n,o,i){var a,r=this,d=[t],l=[];e=p(this.fillId(e),"id"),e.push(n);var s=function(){var t=void 0;if(d.forEach((function(e,n){e.parent||(e.f=0),t||(t=e),e.f<t.f&&(t=e)})),t.x===n.x&&t.y===n.y)return a=t,"break";d.splice(d.findIndex((function(e){return e.x===t.x&&e.y===t.y})),1),l.push(t);var s=e.filter((function(e){return(e.x===t.x||e.y===t.y)&&!(e.x===t.x&&e.y===t.y)&&!r.crossBBox([o,i],t,e)}));s.forEach((function(e){var o=d.find((function(t){return t.x===e.x&&t.y===e.y})),a=r.getCost(e,t);if(l.find((function(t){return t.x===e.x&&t.y===e.y})));else if(o)e.g>a&&(e.parent=t,e.g=a,e.f=e.g+e.h);else{e.parent=t,e.g=a;var s=r.getCost(e,n);r.crossBBox([i],e,n)&&(s+=i.width/2+i.height/2),e.h=s,e.f=e.g+e.h,d.push(e)}}))};while(d.length>0){var c=s();if("break"===c)break}if(a){var u=[];u.push({x:a.x,y:a.y});while(a.parent)a=a.parent,u.push({x:a.x,y:a.y});return u.reverse()}return[]},crossBBox:function(e,t,n){for(var o=0;o<e.length;o++){var i=e[o];if(t.x===n.x&&i.minX<t.x&&i.maxX>t.x){if(t.y<i.maxY&&n.y>=i.maxY||n.y<i.maxY&&t.y>=i.maxY)return!0}else if(t.y===n.y&&i.minY<t.y&&i.maxY>t.y&&(t.x<i.maxX&&n.x>=i.maxX||n.x<i.maxX&&t.x>=i.maxX))return!0}return!1},getCost:function(e,t){return Math.abs(e.x-t.x)+Math.abs(e.y-t.y)},getPointBBox:function(e){return{centerX:e.x,centerY:e.y,minX:e.x,minY:e.y,maxX:e.x,maxY:e.y,height:0,width:0}},fillId:function(e){return e.forEach((function(e){e.id=e.x+"-"+e.y})),e},polylineFinding:function(e,t,n,o,i){var a=e&&e.getBBox()?e.getBBox():this.getPointBBox(n),r=t&&t.getBBox()?t.getBBox():this.getPointBBox(o),d=this.getExpandedBBox(a,i),l=this.getExpandedBBox(r,i),s=this.getExpandedPort(d,n),c=this.getExpandedPort(l,o),u=this.getConnectablePoints(d,l,s,c);u=this.filterConnectablePoints(u,d),u=this.filterConnectablePoints(u,l);var f=this.AStar(u,s,c,d,l);return f}},"polyline")}}))},c058:function(e,t){e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAMAAADyHTlpAAAAh1BMVEUAAAAnJycnJycmJiYoKCgmJiYrKysmJiYmJiYmJiYmJiYmJiYpKSk7OzswMDAmJiYmJiYmJiYmJiYmJiYnJycmJiYmJiYyMjImJiYnJyctLS0mJiYnJycoKCgmJiYoKCgoKCgoKCiAgIAnJycnJycnJycmJiYnJycmJiYmJiYnJycrKysmJiZIkMZuAAAALHRSTlMAxXj6JbQf6d7YzsoxBgruv6ynnpFyFA3yjxrjb2xXRkA8AvP14aaKfmRhKg14PrYAAAGISURBVDjLzZTZkoIwEEWREFZlEVBwHXVW5/z/941aaloI1jx6X6gOpyu5N4vzYvLXRbJUQay/x8/BTYxR6E4GwbcEAPWRhO8ALI8DpAswqr1LsfjRCpimFnAyBZI3MeIVQLzooydS1Z2xbQbR3DJ7s+31exHofccRqK0tuwDcx6EEaqvXnaKZPeQJiSjHItAKKonGILx/kZti1qCEMx9GonEEomphY6o11IPoDj5NVYA3iO4DAulfOYOok4OxueTj5mh00gHOn3J230ezu+oW1Rip9T0uc3YDwuuZyTGKrusvpZOY9+drNcFqWAyjIQdTfMPPIPoLWuw56EHUhZWcAyX2oCQyxSQE/7GzECdkLfpq+eukdAlb+7uQnVOVOkLmWcg0hrJ/CyO/T2qIUkt7sOvOHgOt09UiAlXJazSpMwDcHjvXQNPu9tfk3RCIWiu7dxuAIJ9WZX7moEwdV7Ii0EohVFxSkqzUfPMZAHDQq3MgNlba8cfevPtErpynkmzm/FOrrHVeQH8ORzTuxiL3kQAAAABJRU5ErkJggg=="},c1c1:function(e,t,n){"use strict";var o=n("d5e3");n.o(o,"render")&&n.d(t,"render",(function(){return o["render"]}))},c2a9:function(e,t,n){var o,i,a;n("6c57"),function(n,r){i=[t],o=r,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var t={nodeActivedOutterStyle:{lineWidth:0},groupSelectedOutterStyle:{stroke:"#E0F0FF",lineWidth:2},nodeSelectedOutterStyle:{stroke:"#E0F0FF",lineWidth:2},edgeActivedStyle:{stroke:"#1890FF",strokeOpacity:.92},nodeActivedStyle:{fill:"#F3F9FF",stroke:"#1890FF"},groupActivedStyle:{stroke:"#1890FF"},edgeSelectedStyle:{lineWidth:2,strokeOpacity:.92,stroke:"#A3B1BF"},nodeSelectedStyle:{fill:"#F3F9FF",stroke:"#1890FF",fillOpacity:.4},groupSelectedStyle:{stroke:"#1890FF",fillOpacity:.92},nodeStyle:{stroke:"#CED4D9",fill:"#FFFFFF",shadowOffsetX:0,shadowOffsetY:4,shadowBlur:10,shadowColor:"rgba(13, 26, 38, 0.08)",lineWidth:1,radius:4,strokeOpacity:.7},edgeStyle:{stroke:"#A3B1BF",strokeOpacity:.92,lineWidth:1,lineAppendWidth:8,endArrow:!0},groupBackgroundPadding:[40,10,10,10],groupLabelOffsetX:10,groupLabelOffsetY:10,edgeLabelStyle:{fill:"#666",textAlign:"center",textBaseline:"middle"},edgeLabelRectPadding:4,edgeLabelRectStyle:{fill:"white"},nodeLabelStyle:{fill:"#666",textAlign:"center",textBaseline:"middle"},groupStyle:{stroke:"#CED4D9",radius:4},groupLabelStyle:{fill:"#666",textAlign:"left",textBaseline:"top"},multiSelectRectStyle:{fill:"#1890FF",fillOpacity:.08,stroke:"#1890FF",opacity:.1},dragNodeHoverToGroupStyle:{stroke:"#1890FF",lineWidth:2},dragNodeLeaveFromGroupStyle:{stroke:"#BAE7FF",lineWidth:2},anchorPointStyle:{radius:3.5,fill:"#fff",stroke:"#1890FF",lineAppendWidth:12},anchorHotsoptStyle:{radius:12,fill:"#1890FF",fillOpacity:.25},anchorHotsoptActivedStyle:{radius:14},anchorPointHoverStyle:{radius:4,fill:"#1890FF",fillOpacity:1,stroke:"#1890FF"},nodeControlPointStyle:{radius:4,fill:"#fff",shadowBlur:4,shadowColor:"#666"},edgeControlPointStyle:{radius:6,symbol:"square",lineAppendWidth:6,fillOpacity:0,strokeOpacity:0},nodeSelectedBoxStyle:{stroke:"#C2C2C2"},cursor:{panningCanvas:"-webkit-grabbing",beforePanCanvas:"-webkit-grab",hoverNode:"move",hoverEffectiveAnchor:"crosshair",hoverEdge:"default",hoverGroup:"move",hoverUnEffectiveAnchor:"default",hoverEdgeControllPoint:"crosshair",multiSelect:"crosshair"},nodeDelegationStyle:{stroke:"#1890FF",fill:"#1890FF",fillOpacity:.08,lineDash:[4,4],radius:4,lineWidth:1},edgeDelegationStyle:{stroke:"#1890FF",lineDash:[4,4],lineWidth:1}};e.default=t}))},c31f:function(e,t,n){"use strict";n.r(t);var o=n("4a62"),i=n.n(o);for(var a in n.d(t,"default",(function(){return i.a})),o)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return o[e]}))}(a)},c3b9:function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("7a23"),n("a9e3"),n("ed09"),n("15a4"),n("8e2d"),n("73ec")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,n,o,i,a,r){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var d={name:"vue-flow-editor",props:{data:{type:Object},grid:{type:Boolean,default:!0},miniMap:{type:Boolean,default:!1},disabledDragEdge:{type:Boolean},disabledUndo:{type:Boolean},editorTitle:{type:String},height:{type:[String,Number],default:"100%"},toolbarHeight:{type:[String,Number],default:"56"},menuWidth:{type:[String,Number],default:"250"},modelWidth:{type:[String,Number],default:"500px"},onRef:{type:Function},toolbarButtonHandler:{type:Function},loading:{type:Boolean},multipleSelect:{type:Boolean,default:!0},beforeDelete:{type:Function},afterDelete:{type:Function},beforeAdd:{type:Function},afterAdd:{type:Function},activityConfig:{type:Object}},setup:function(e,n){var o=(0,a.useEditorStyles)(e),i=(0,a.useCanvasProps)(e),d=(0,t.computed)((function(){return{width:(0,r.suffixSize)(e.modelWidth)}})),l=(0,t.reactive)({graph:null,canvasProps:i,props:e,canvasKey:0,showModel:!1,showPreview:!1,data:null,refreshCanvas:function(){l.canvasKey++},setGraph:function(e){l.graph=e,s.init(e),e.on("node:dblclick",(function(e){n.emit("dblclick-node",e)})),e.on("edge:dblclick",(function(e){n.emit("dblclick-edge",e)})),e.on("select-change",(function(e){n.emit("select-change",e)}))}}),s=(0,a.useEditorCommander)(l),c={props:e,editorState:l,commander:s,openModel:function(){l.showModel=!0},closeModel:function(){l.showModel=!1},updateModel:function(t){(0,r.formatNodeModel)(t,e.activityConfig),s.commands.update(t)},openPreview:function(){l.data=l.graph.save(),l.showPreview=!0},read:function(e){l.graph?l.graph.read(e):console.warn("graph is not initialized")}};(0,t.provide)(a.VueFlowEditorProvider,c),e.onRef&&e.onRef(c);var u=(0,t.getCurrentInstance)();return Object.assign(u,c),(0,t.onBeforeUnmount)((function(){s.destroy(),e.onRef&&e.onRef(null)})),function(){return(0,t.withDirectives)((0,t.createVNode)("div",{class:"vue-flow-editor",style:o.value.root},[(0,t.createVNode)("div",{class:"vue-flow-editor-left",style:o.value.left},[(0,t.createVNode)((0,t.resolveComponent)("vue-flow-editor-menu"),null,{default:function(){return[!!n.slots.menu&&n.slots.menu()]}})]),(0,t.createVNode)("div",{class:"vue-flow-editor-right"},[(0,t.createVNode)((0,t.resolveComponent)("vue-flow-editor-toolbar"),{style:o.value.toolbar,canvasProps:i,toolbarButtonHandler:e.toolbarButtonHandler},{default:function(){return[!!n.slots.toolbar&&n.slots.toolbar()]}}),(0,t.createVNode)((0,t.resolveComponent)("vue-flow-editor-canvas"),{data:i.data,grid:i.grid,miniMap:i.miniMap,key:String(l.canvasKey)+String(e.multipleSelect)+String(e.disabledDragEdge)},null)]),(0,t.createVNode)((0,t.resolveComponent)("transition"),{name:"vue-flow-editor-transition"},{default:function(){return[(0,t.withDirectives)((0,t.createVNode)("div",{class:"vue-flow-editor-model"},[(0,t.createVNode)("div",{class:"vue-flow-editor-model-body",style:d.value},[(0,t.createVNode)("div",{class:"vue-flow-editor-model-head",style:o.value.toolbar},[(0,t.createVNode)("i",{class:"el-icon-close",onClick:c.closeModel},null)]),(0,t.createVNode)("div",{class:"vue-flow-editor-model-content"},[!!n.slots.model&&n.slots.model()]),!!n.slots.foot&&(0,t.createVNode)("div",{class:"vue-flow-editor-model-foot"},[n.slots.foot()])])]),[[t.vShow,l.showModel]])]}}),(0,t.createVNode)((0,t.resolveComponent)("vue-flow-editor-preview"),{value:l.showPreview,onInput:function(e){return l.showPreview=e},data:l.data},null)]),[[(0,t.resolveDirective)("loading"),e.loading]])}}};e.default=d}))},c9b6:function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("7a23"),n("ed09"),n("8e2d"),n("73ec")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0;var r=n("0f81"),d={name:"vue-flow-editor-menu",setup:function(e,n){var o=(0,t.inject)(i.VueFlowEditorProvider),d=o.editorState,l=o.props,s=(0,t.computed)((function(){return{height:(0,a.suffixSize)(d.props.toolbarHeight)}}));return function(){return(0,t.createVNode)("div",{class:"vue-flow-editor-menu"},[(0,t.createVNode)("div",{class:"vue-flow-editor-menu-header",style:s.value},[l.editorTitle||(0,t.createVNode)("img",{src:r,alt:"vue-flow-editor"},null)]),(0,t.createVNode)("div",{class:"vue-flow-editor-menu-list"},[(0,t.createVNode)("div",{class:"vue-flow-editor-menu-list-content"},[!!n.slots.default&&n.slots.default()])])])}}};e.default=d}))},d1f9:function(e,t){e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAMAAADyHTlpAAAAhFBMVEUAAAAmJiYpKSktLS1SUlImJiYmJiYmJiYmJiYtLS0rKyswMDA8PDwmJiYmJiYnJycnJycoKCgmJiYnJycmJiYmJiYmJiYmJiYmJiYmJiYtLS0nJycmJiYmJiYmJiYnJycnJycnJycnJycnJycmJiYpKSkpKSkpKSkmJiYnJycrKysmJiZrLkVEAAAAK3RSTlMAmUsNA8vmwbQWEQoH3Kd0VSn99Oziz8Z7ayLf1tS5r46HbmBQQS4coFwk5+kjJQAAAOlJREFUOMvt09kSgjAMBVC07MimAooKyuaS//8/7/gWWmeiz9zHzGmamabWkn9jPzOpTIiOIrlpiegmkZEPWYYCqTxIRyQryEoJZOhAehIZXCCbSCDvMaS/Ecj6BNlKZF5AxsOaZZwCW6dnMmef9GpGYwa4PnA87VE8rXge/uWD3ZEP65JpT4K+RH2bsuKrQA0lLZnepI6/LFXgoe/AH+EMezXYqMK8ih8vYVe2bsMCPQwLkxhsRrSLtIU1LwJ6ZPOxGtiDTlPcpn0u30hzIkf/sl1nGFYRuZYwO9rKKUmpR46U1mluLfkpbyBhID4w4NBpAAAAAElFTkSuQmCC"},d4c5:function(e,t,n){"use strict";n.r(t);var o=n("6b1b"),i=n.n(o);for(var a in n.d(t,"default",(function(){return i.a})),o)["default"].indexOf(a)<0&&function(e){n.d(t,e,(function(){return o[e]}))}(a)},d5e3:function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("7a23")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.render=o;var n={key:0,class:"el-icon-arrow-right"};function o(e,o,i,a,r,d){return(0,t.openBlock)(),(0,t.createElementBlock)("div",{class:"vue-flow-edit-menu",draggable:"true",onDragstart:o[0]||(o[0]=function(){return d.onDragstart&&d.onDragstart.apply(d,arguments)}),onDragend:o[1]||(o[1]=function(){return d.onDragend&&d.onDragend.apply(d,arguments)})},[(0,t.renderSlot)(e.$slots,"content",{model:i.model},(function(){return[(0,t.createElementVNode)("span",null,(0,t.toDisplayString)(i.model.label),1)]})),i.hideArrow?(0,t.createCommentVNode)("",!0):((0,t.openBlock)(),(0,t.createElementBlock)("i",n))],32)}}))},d64a:function(e,t){e.exports="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACoAAAAqCAMAAADyHTlpAAAAgVBMVEUAAAAnJycmJiYmJiYmJiYxMTEmJiY9PT0mJiYmJiYqKiorKysnJycmJiYnJycqKioqKionJycmJiYmJiYmJiYmJiYmJiYmJiYnJycmJiYmJiYoKCgoKCgoKCgmJiaAgIAmJiYnJycnJycmJiYmJiYmJiYnJycnJycpKSkrKysmJiYLGVcwAAAAKnRSTlMAd/rvywypB+myHhrfuJEoJIzj2tXPpHFtZldGQDwUAvPhxsGafnthMi8NdQq9AAABXklEQVQ4y82T13LCMBBFVVxxwaZXmxrg/P8HJkMyyBaSJ4+ct6s5o12tJPFhjFZRMFHJvLg+hsVNgCGXsVfc/YrqGEwPAExuHvML4CTHz5CtUwVEoUOMIyDYCUP1XMne1QjU0lrbapiFjup6K2yqKaStdSJQW9fsEpD9pQCWwsVeoZvePCEQbkoorU13HrXRqLDTEZyEjxo2Jq1AetU9LExKYexV24Sk26oSfs5g3s2E44AagbldRTCglnB/hYTpgLqA6hXmHAbUAuJuyPxqjjbhCmuvOYbCpAekXlX298lRlceM8353EiKPurQqxhPYOs2RRvUv/Qba1UI4h8v77U1H72bq+IdhAMnerj4HamGTzUCVTfcASw2AdBZD1/v2b/IyB2a1022lBkjOUbkocgB1CYV0uqIpFR3S55Q8rgg3iwQAXayzn2xcJ/HoXsXWK2Al/FiuFv9kpWvxAXwDfwkohcnkmAEAAAAASUVORK5CYII="},e14a:function(e,t,n){var o,i,a;n("6c57"),function(n,r){i=[t],o=r,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e){"use strict";Object.defineProperty(e,"__esModule",{value:!0}),e.hoverItemActive=n,e.HOVER_STATE_NAME=void 0;var t="hover";function n(e){e.registerBehavior("hover-item-active",{getEvents:function(){return{"node:mouseenter":"onEnter","node:mouseleave":"onLeave","edge:mouseenter":"onEnter","edge:mouseleave":"onLeave"}},onEnter:function(e){var n=this,o=e.item,i=n.graph;i.setItemState(o,t,!0)},onLeave:function(e){var n=this,o=e.item;if(o){var i=n.graph;i.setItemState(o,t,!1)}}})}e.HOVER_STATE_NAME=t}))},ea19:function(e,t,n){"use strict";n("870c")},ecec:function(e,t,n){var o,i,a;n("6c57"),function(n,r){i=[t],o=r,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e){"use strict";function t(e){e.registerBehavior("hover-anchor-active",{getEvents:function(){return{"anchor:mouseenter":"onEnter","anchor:mouseleave":"onLeave","node:mouseenter":"onEnterNode","node:mouseleave":"onLeaveNode"}},onEnter:function(e){var t=e.item,n=t.getContainer()._cfg.parent;n&&(n.keyShape.showAnchor(this.graph),t.setState("active-anchor",!0))},onLeave:function(e){var t=e.item,n=t.getContainer()._cfg.parent;n&&(t.getContainer()._cfg.parent.keyShape.hideAnchor(this.graph),t.setState("active-anchor",!1))},onEnterNode:function(e){var t=e.item;t.showAnchor(this.graph)},onLeaveNode:function(e){try{var t=e.item;t.hideAnchor(this.graph)}catch(e){}}})}Object.defineProperty(e,"__esModule",{value:!0}),e.hoverAnchorActive=t}))},fcef:function(e,t,n){"use strict";n("277b")},ffb4:function(e,t,n){var o,i,a;n("6c57"),function(r,d){i=[t,n("2909"),n("159b"),n("99af"),n("b0c0"),n("0a5f"),n("3617"),n("c3b9"),n("823a"),n("2339"),n("73ec")],o=d,a="function"===typeof o?o.apply(t,i):o,void 0===a||(e.exports=a)}("undefined"!==typeof globalThis?globalThis:"undefined"!==typeof self&&self,(function(e,t,o,i,a,r,d,l,s,c,u){"use strict";var f=n("4ea4").default;Object.defineProperty(e,"__esModule",{value:!0}),e.default=void 0,t=f(t),l=f(l),s=f(s),c=f(c);var h={VueFlowEditor:l.default,VueFLowEditMenu:s.default,VueFLowEditMenuGroup:c.default,formatPos:u.formatPos,install:function(e){[].concat((0,t.default)(d.externalComponents),(0,t.default)(r.EditorComponent)).forEach((function(t){e.component(t.name,t)}))}};e.default=h}))}});
//# sourceMappingURL=index.e8a5c5ea.js.map
\ No newline at end of file
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
No preview for this file type
No preview for this file type
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
import vca from '@vue/composition-api'
export default vca
export * from '@vue/composition-api'
\ No newline at end of file
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('vue')) :
typeof define === 'function' && define.amd ? define(['exports', 'vue'], factory) :
(global = global || self, factory(global.vueCompositionApi = {}, global.Vue));
}(this, function (exports, Vue) { 'use strict';
Vue = Vue && Vue.hasOwnProperty('default') ? Vue['default'] : Vue;
var toString = function (x) { return Object.prototype.toString.call(x); };
function isNative(Ctor) {
return typeof Ctor === 'function' && /native code/.test(Ctor.toString());
}
var hasSymbol = typeof Symbol !== 'undefined' && isNative(Symbol) &&
typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);
var noopFn = function (_) { return _; };
var sharedPropertyDefinition = {
enumerable: true,
configurable: true,
get: noopFn,
set: noopFn,
};
function proxy(target, key, _a) {
var get = _a.get, set = _a.set;
sharedPropertyDefinition.get = get || noopFn;
sharedPropertyDefinition.set = set || noopFn;
Object.defineProperty(target, key, sharedPropertyDefinition);
}
function def(obj, key, val, enumerable) {
Object.defineProperty(obj, key, {
value: val,
enumerable: !!enumerable,
writable: true,
configurable: true,
});
}
var hasOwnProperty = Object.prototype.hasOwnProperty;
function hasOwn(obj, key) {
return hasOwnProperty.call(obj, key);
}
function assert(condition, msg) {
if (!condition)
throw new Error("[vue-composition-api] " + msg);
}
function isArray(x) {
return Array.isArray(x);
}
function isPlainObject(x) {
return toString(x) === '[object Object]';
}
function isFunction(x) {
return typeof x === 'function';
}
function warn(msg, vm) {
Vue.util.warn(msg, vm);
}
function logError(err, vm, info) {
{
warn("Error in " + info + ": \"" + err.toString() + "\"", vm);
}
if (typeof window !== 'undefined' && typeof console !== 'undefined') {
console.error(err);
}
else {
throw err;
}
}
var currentVue = null;
var currentVM = null;
function getCurrentVue() {
{
assert(currentVue, "must call Vue.use(plugin) before using any function.");
}
return currentVue;
}
function setCurrentVue(vue) {
currentVue = vue;
}
function getCurrentVM() {
return currentVM;
}
function setCurrentVM(vm) {
currentVM = vm;
}
function ensureCurrentVMInFn(hook) {
var vm = getCurrentVM();
{
assert(vm, "\"" + hook + "\" get called outside of \"setup()\"");
}
return vm;
}
function defineComponentInstance(Ctor, options) {
if (options === void 0) { options = {}; }
var silent = Ctor.config.silent;
Ctor.config.silent = true;
var vm = new Ctor(options);
Ctor.config.silent = silent;
return vm;
}
function isComponentInstance(obj) {
return currentVue && obj instanceof currentVue;
}
function createSlotProxy(vm, slotName) {
return function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
if (!vm.$scopedSlots[slotName]) {
return warn("slots." + slotName + "() got called outside of the \"render()\" scope", vm);
}
return vm.$scopedSlots[slotName].apply(vm, args);
};
}
function resolveSlots(slots, normalSlots) {
var res;
if (!slots) {
res = {};
}
else if (slots._normalized) {
// fast path 1: child component re-render only, parent did not change
return slots._normalized;
}
else {
res = {};
for (var key in slots) {
if (slots[key] && key[0] !== '$') {
res[key] = true;
}
}
}
// expose normal slots on scopedSlots
for (var key in normalSlots) {
if (!(key in res)) {
res[key] = true;
}
}
return res;
}
function createSymbol(name) {
return hasSymbol ? Symbol.for(name) : name;
}
var WatcherPreFlushQueueKey = createSymbol('vfa.key.preFlushQueue');
var WatcherPostFlushQueueKey = createSymbol('vfa.key.postFlushQueue');
var AccessControlIdentifierKey = createSymbol('vfa.key.accessControlIdentifier');
var ReactiveIdentifierKey = createSymbol('vfa.key.reactiveIdentifier');
var NonReactiveIdentifierKey = createSymbol('vfa.key.nonReactiveIdentifier');
// must be a string, symbol key is ignored in reactive
var RefKey = 'vfa.key.refKey';
var RefImpl = /** @class */ (function () {
function RefImpl(_a) {
var get = _a.get, set = _a.set;
proxy(this, 'value', {
get: get,
set: set,
});
}
return RefImpl;
}());
function createRef(options) {
// seal the ref, this could prevent ref from being observed
// It's safe to seal the ref, since we really shoulnd't extend it.
// related issues: #79
return Object.seal(new RefImpl(options));
}
// implementation
function ref(raw) {
// if (isRef(raw)) {
// return {} as any;
// }
var _a;
var value = reactive((_a = {}, _a[RefKey] = raw, _a));
return createRef({
get: function () { return value[RefKey]; },
set: function (v) { return (value[RefKey] = v); },
});
}
function isRef(value) {
return value instanceof RefImpl;
}
function toRefs(obj) {
if (!isPlainObject(obj))
return obj;
var res = {};
Object.keys(obj).forEach(function (key) {
var val = obj[key];
// use ref to proxy the property
if (!isRef(val)) {
val = createRef({
get: function () { return obj[key]; },
set: function (v) { return (obj[key] = v); },
});
}
// todo
res[key] = val;
});
return res;
}
var AccessControlIdentifier = {};
var ReactiveIdentifier = {};
var NonReactiveIdentifier = {};
function isNonReactive(obj) {
return (hasOwn(obj, NonReactiveIdentifierKey) && obj[NonReactiveIdentifierKey] === NonReactiveIdentifier);
}
function isReactive(obj) {
return hasOwn(obj, ReactiveIdentifierKey) && obj[ReactiveIdentifierKey] === ReactiveIdentifier;
}
/**
* Proxing property access of target.
* We can do unwrapping and other things here.
*/
function setupAccessControl(target) {
if (!isPlainObject(target) ||
isNonReactive(target) ||
Array.isArray(target) ||
isRef(target) ||
isComponentInstance(target)) {
return;
}
if (hasOwn(target, AccessControlIdentifierKey) &&
target[AccessControlIdentifierKey] === AccessControlIdentifier) {
return;
}
if (Object.isExtensible(target)) {
def(target, AccessControlIdentifierKey, AccessControlIdentifier);
}
var keys = Object.keys(target);
for (var i = 0; i < keys.length; i++) {
defineAccessControl(target, keys[i]);
}
}
/**
* Auto unwrapping when access property
*/
function defineAccessControl(target, key, val) {
if (key === '__ob__')
return;
var getter;
var setter;
var property = Object.getOwnPropertyDescriptor(target, key);
if (property) {
if (property.configurable === false) {
return;
}
getter = property.get;
setter = property.set;
if ((!getter || setter) /* not only have getter */ && arguments.length === 2) {
val = target[key];
}
}
setupAccessControl(val);
Object.defineProperty(target, key, {
enumerable: true,
configurable: true,
get: function getterHandler() {
var value = getter ? getter.call(target) : val;
// if the key is equal to RefKey, skip the unwrap logic
if (key !== RefKey && isRef(value)) {
return value.value;
}
else {
return value;
}
},
set: function setterHandler(newVal) {
if (getter && !setter)
return;
var value = getter ? getter.call(target) : val;
// If the key is equal to RefKey, skip the unwrap logic
// If and only if "value" is ref and "newVal" is not a ref,
// the assignment should be proxied to "value" ref.
if (key !== RefKey && isRef(value) && !isRef(newVal)) {
value.value = newVal;
}
else if (setter) {
setter.call(target, newVal);
}
else {
val = newVal;
}
setupAccessControl(newVal);
},
});
}
function observe(obj) {
var Vue = getCurrentVue();
var observed;
if (Vue.observable) {
observed = Vue.observable(obj);
}
else {
var vm = defineComponentInstance(Vue, {
data: {
$$state: obj,
},
});
observed = vm._data.$$state;
}
return observed;
}
/**
* Make obj reactivity
*/
function reactive(obj) {
if (!obj) {
warn('"reactive()" is called without provide an "object".');
// @ts-ignore
return;
}
if (!isPlainObject(obj) || isReactive(obj) || isNonReactive(obj) || !Object.isExtensible(obj)) {
return obj;
}
var observed = observe(obj);
def(observed, ReactiveIdentifierKey, ReactiveIdentifier);
setupAccessControl(observed);
return observed;
}
/**
* Make sure obj can't be a reactive
*/
function nonReactive(obj) {
if (!isPlainObject(obj)) {
return obj;
}
// set the vue observable flag at obj
def(obj, '__ob__', observe({}).__ob__);
// mark as nonReactive
def(obj, NonReactiveIdentifierKey, NonReactiveIdentifier);
return obj;
}
function isUndef(v) {
return v === undefined || v === null;
}
function isPrimitive(value) {
return (typeof value === 'string' ||
typeof value === 'number' ||
// $flow-disable-line
typeof value === 'symbol' ||
typeof value === 'boolean');
}
function isValidArrayIndex(val) {
var n = parseFloat(String(val));
return n >= 0 && Math.floor(n) === n && isFinite(val);
}
/**
* Set a property on an object. Adds the new property, triggers change
* notification and intercept it's subsequent access if the property doesn't
* already exist.
*/
function set(target, key, val) {
var Vue = getCurrentVue();
var _a = Vue.util, warn = _a.warn, defineReactive = _a.defineReactive;
if (isUndef(target) || isPrimitive(target)) {
warn("Cannot set reactive property on undefined, null, or primitive value: " + target);
}
if (isArray(target) && isValidArrayIndex(key)) {
target.length = Math.max(target.length, key);
target.splice(key, 1, val);
return val;
}
if (key in target && !(key in Object.prototype)) {
target[key] = val;
return val;
}
var ob = target.__ob__;
if (target._isVue || (ob && ob.vmCount)) {
warn('Avoid adding reactive properties to a Vue instance or its root $data ' +
'at runtime - declare it upfront in the data option.');
return val;
}
if (!ob) {
target[key] = val;
return val;
}
defineReactive(ob.value, key, val);
// IMPORTANT: define access control before trigger watcher
defineAccessControl(target, key, val);
ob.dep.notify();
return val;
}
/**
* Helper that recursively merges two data objects together.
*/
function mergeData(from, to) {
if (!from)
return to;
var key;
var toVal;
var fromVal;
var keys = hasSymbol ? Reflect.ownKeys(from) : Object.keys(from);
for (var i = 0; i < keys.length; i++) {
key = keys[i];
// in case the object is already observed...
if (key === '__ob__')
continue;
toVal = to[key];
fromVal = from[key];
if (!hasOwn(to, key)) {
to[key] = fromVal;
}
else if (toVal !== fromVal &&
(isPlainObject(toVal) && !isRef(toVal)) &&
(isPlainObject(fromVal) && !isRef(fromVal))) {
mergeData(fromVal, toVal);
}
}
return to;
}
function install(Vue, _install) {
if (currentVue && currentVue === Vue) {
{
assert(false, 'already installed. Vue.use(plugin) should be called only once');
}
return;
}
Vue.config.optionMergeStrategies.setup = function (parent, child) {
return function mergedSetupFn(props, context) {
return mergeData(typeof parent === 'function' ? parent(props, context) || {} : {}, typeof child === 'function' ? child(props, context) || {} : {});
};
};
setCurrentVue(Vue);
_install(Vue);
}
/*! *****************************************************************************
Copyright (c) Microsoft Corporation. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
this file except in compliance with the License. You may obtain a copy of the
License at http://www.apache.org/licenses/LICENSE-2.0
THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
MERCHANTABLITY OR NON-INFRINGEMENT.
See the Apache Version 2.0 License for specific language governing permissions
and limitations under the License.
***************************************************************************** */
var __assign = function() {
__assign = Object.assign || function __assign(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
function __read(o, n) {
var m = typeof Symbol === "function" && o[Symbol.iterator];
if (!m) return o;
var i = m.call(o), r, ar = [], e;
try {
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
}
catch (error) { e = { error: error }; }
finally {
try {
if (r && !r.done && (m = i["return"])) m.call(i);
}
finally { if (e) throw e.error; }
}
return ar;
}
function __spread() {
for (var ar = [], i = 0; i < arguments.length; i++)
ar = ar.concat(__read(arguments[i]));
return ar;
}
function set$1(vm, key, value) {
var state = (vm.__secret_vfa_state__ = vm.__secret_vfa_state__ || {});
state[key] = value;
}
function get(vm, key) {
return (vm.__secret_vfa_state__ || {})[key];
}
var vmStateManager = {
set: set$1,
get: get,
};
function asVmProperty(vm, propName, propValue) {
var props = vm.$options.props;
if (!(propName in vm) && !(props && hasOwn(props, propName))) {
proxy(vm, propName, {
get: function () { return propValue.value; },
set: function (val) {
propValue.value = val;
},
});
{
// expose binding to Vue Devtool as a data property
// delay this until state has been resolved to prevent repeated works
vm.$nextTick(function () {
proxy(vm._data, propName, {
get: function () { return propValue.value; },
set: function (val) {
propValue.value = val;
},
});
});
}
}
else {
if (props && hasOwn(props, propName)) {
warn("The setup binding property \"" + propName + "\" is already declared as a prop.", vm);
}
else {
warn("The setup binding property \"" + propName + "\" is already declared.", vm);
}
}
}
function updateTemplateRef(vm) {
var rawBindings = vmStateManager.get(vm, 'rawBindings') || {};
if (!rawBindings || !Object.keys(rawBindings).length)
return;
var refs = vm.$refs;
var oldRefKeys = vmStateManager.get(vm, 'refs') || [];
for (var index = 0; index < oldRefKeys.length; index++) {
var key = oldRefKeys[index];
var setupValue = rawBindings[key];
if (!refs[key] && setupValue && isRef(setupValue)) {
setupValue.value = null;
}
}
var newKeys = Object.keys(refs);
var validNewKeys = [];
for (var index = 0; index < newKeys.length; index++) {
var key = newKeys[index];
var setupValue = rawBindings[key];
if (refs[key] && setupValue && isRef(setupValue)) {
setupValue.value = refs[key];
validNewKeys.push(key);
}
}
vmStateManager.set(vm, 'refs', validNewKeys);
}
function resolveScopedSlots(vm, slotsProxy) {
var parentVode = vm.$options._parentVnode;
if (!parentVode)
return;
var prevSlots = vmStateManager.get(vm, 'slots') || [];
var curSlots = resolveSlots(parentVode.data.scopedSlots, vm.$slots);
// remove staled slots
for (var index = 0; index < prevSlots.length; index++) {
var key = prevSlots[index];
if (!curSlots[key]) {
delete slotsProxy[key];
}
}
// proxy fresh slots
var slotNames = Object.keys(curSlots);
for (var index = 0; index < slotNames.length; index++) {
var key = slotNames[index];
if (!slotsProxy[key]) {
slotsProxy[key] = createSlotProxy(vm, key);
}
}
vmStateManager.set(vm, 'slots', slotNames);
}
function activateCurrentInstance(vm, fn, onError) {
var preVm = getCurrentVM();
setCurrentVM(vm);
try {
return fn(vm);
}
catch (err) {
if (onError) {
onError(err);
}
else {
throw err;
}
}
finally {
setCurrentVM(preVm);
}
}
function mixin(Vue) {
Vue.mixin({
beforeCreate: functionApiInit,
mounted: function () {
updateTemplateRef(this);
},
updated: function () {
updateTemplateRef(this);
},
});
/**
* Vuex init hook, injected into each instances init hooks list.
*/
function functionApiInit() {
var vm = this;
var $options = vm.$options;
var setup = $options.setup, render = $options.render;
if (render) {
// keep currentInstance accessible for createElement
$options.render = function () {
var _this = this;
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
return activateCurrentInstance(vm, function () { return render.apply(_this, args); });
};
}
if (!setup) {
return;
}
if (typeof setup !== 'function') {
{
warn('The "setup" option should be a function that returns a object in component definitions.', vm);
}
return;
}
var data = $options.data;
// wrapper the data option, so we can invoke setup before data get resolved
$options.data = function wrappedData() {
initSetup(vm, vm.$props);
return typeof data === 'function'
? data.call(vm, vm)
: data || {};
};
}
function initSetup(vm, props) {
if (props === void 0) { props = {}; }
var setup = vm.$options.setup;
var ctx = createSetupContext(vm);
// resolve scopedSlots and slots to functions
resolveScopedSlots(vm, ctx.slots);
var binding;
activateCurrentInstance(vm, function () {
binding = setup(props, ctx);
});
if (!binding)
return;
if (isFunction(binding)) {
// keep typescript happy with the binding type.
var bindingFunc_1 = binding;
// keep currentInstance accessible for createElement
vm.$options.render = function () {
resolveScopedSlots(vm, ctx.slots);
return activateCurrentInstance(vm, function () { return bindingFunc_1(); });
};
return;
}
if (isPlainObject(binding)) {
var bindingObj_1 = binding;
vmStateManager.set(vm, 'rawBindings', binding);
Object.keys(binding).forEach(function (name) {
var bindingValue = bindingObj_1[name];
// only make primitive value reactive
if (!isRef(bindingValue)) {
if (isReactive(bindingValue)) {
bindingValue = ref(bindingValue);
}
else {
// a non-reactive should not don't get reactivity
bindingValue = ref(nonReactive(bindingValue));
}
}
asVmProperty(vm, name, bindingValue);
});
return;
}
{
assert(false, "\"setup\" must return a \"Object\" or a \"Function\", got \"" + Object.prototype.toString
.call(binding)
.slice(8, -1) + "\"");
}
}
function createSetupContext(vm) {
var ctx = {
slots: {},
};
var props = [
'root',
'parent',
'refs',
'attrs',
'listeners',
'isServer',
'ssrContext',
];
var methodReturnVoid = ['emit'];
props.forEach(function (key) {
var _a;
var targetKey;
var srcKey;
if (Array.isArray(key)) {
_a = __read(key, 2), targetKey = _a[0], srcKey = _a[1];
}
else {
targetKey = srcKey = key;
}
srcKey = "$" + srcKey;
proxy(ctx, targetKey, {
get: function () { return vm[srcKey]; },
set: function () {
warn("Cannot assign to '" + targetKey + "' because it is a read-only property", vm);
},
});
});
methodReturnVoid.forEach(function (key) {
var srcKey = "$" + key;
proxy(ctx, key, {
get: function () {
return function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
var fn = vm[srcKey];
fn.apply(vm, args);
};
},
});
});
return ctx;
}
}
var fallbackCreateElement;
var createElement = function createElement() {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
if (!currentVM) {
warn('`createElement()` has been called outside of render function.');
if (!fallbackCreateElement) {
fallbackCreateElement = defineComponentInstance(getCurrentVue()).$createElement;
}
return fallbackCreateElement.apply(fallbackCreateElement, args);
}
return currentVM.$createElement.apply(currentVM, args);
};
// implementation, close to no-op
function defineComponent(options) {
return options;
}
// implementation, deferring to defineComponent, but logging a warning in dev mode
function createComponent(options) {
{
Vue.util.warn('`createComponent` has been renamed to `defineComponent`.');
}
return defineComponent(options);
}
var genName = function (name) { return "on" + (name[0].toUpperCase() + name.slice(1)); };
function createLifeCycle(lifeCyclehook) {
return function (callback) {
var vm = ensureCurrentVMInFn(genName(lifeCyclehook));
injectHookOption(getCurrentVue(), vm, lifeCyclehook, callback);
};
}
function injectHookOption(Vue, vm, hook, val) {
var options = vm.$options;
var mergeFn = Vue.config.optionMergeStrategies[hook];
options[hook] = mergeFn(options[hook], val);
}
// export const onCreated = createLifeCycle('created');
var onBeforeMount = createLifeCycle('beforeMount');
var onMounted = createLifeCycle('mounted');
var onBeforeUpdate = createLifeCycle('beforeUpdate');
var onUpdated = createLifeCycle('updated');
var onBeforeUnmount = createLifeCycle('beforeDestroy');
var onUnmounted = createLifeCycle('destroyed');
var onErrorCaptured = createLifeCycle('errorCaptured');
var onActivated = createLifeCycle('activated');
var onDeactivated = createLifeCycle('deactivated');
var onServerPrefetch = createLifeCycle('serverPrefetch');
var fallbackVM;
function flushPreQueue() {
flushQueue(this, WatcherPreFlushQueueKey);
}
function flushPostQueue() {
flushQueue(this, WatcherPostFlushQueueKey);
}
function hasWatchEnv(vm) {
return vm[WatcherPreFlushQueueKey] !== undefined;
}
function installWatchEnv(vm) {
vm[WatcherPreFlushQueueKey] = [];
vm[WatcherPostFlushQueueKey] = [];
vm.$on('hook:beforeUpdate', flushPreQueue);
vm.$on('hook:updated', flushPostQueue);
}
function getWatcherOption(options) {
return __assign({
lazy: false,
deep: false,
flush: 'post',
}, options);
}
function getWatcherVM() {
var vm = getCurrentVM();
if (!vm) {
if (!fallbackVM) {
fallbackVM = defineComponentInstance(getCurrentVue());
}
vm = fallbackVM;
}
else if (!hasWatchEnv(vm)) {
installWatchEnv(vm);
}
return vm;
}
function flushQueue(vm, key) {
var queue = vm[key];
for (var index = 0; index < queue.length; index++) {
queue[index]();
}
queue.length = 0;
}
function queueFlushJob(vm, fn, mode) {
// flush all when beforeUpdate and updated are not fired
var fallbackFlush = function () {
vm.$nextTick(function () {
if (vm[WatcherPreFlushQueueKey].length) {
flushQueue(vm, WatcherPreFlushQueueKey);
}
if (vm[WatcherPostFlushQueueKey].length) {
flushQueue(vm, WatcherPostFlushQueueKey);
}
});
};
switch (mode) {
case 'pre':
fallbackFlush();
vm[WatcherPreFlushQueueKey].push(fn);
break;
case 'post':
fallbackFlush();
vm[WatcherPostFlushQueueKey].push(fn);
break;
default:
assert(false, "flush must be one of [\"post\", \"pre\", \"sync\"], but got " + mode);
break;
}
}
function createVueWatcher(vm, getter, callback, options) {
var index = vm._watchers.length;
// @ts-ignore: use undocumented options
vm.$watch(getter, callback, {
immediate: options.immediateInvokeCallback,
deep: options.deep,
lazy: options.noRun,
sync: options.sync,
before: options.before,
});
return vm._watchers[index];
}
function createWatcher(vm, source, cb, options) {
var flushMode = options.flush;
var isSync = flushMode === 'sync';
var cleanup;
var registerCleanup = function (fn) {
cleanup = function () {
try {
fn();
}
catch (error) {
logError(error, vm, 'onCleanup()');
}
};
};
// cleanup before running getter again
var runCleanup = function () {
if (cleanup) {
cleanup();
cleanup = null;
}
};
var createScheduler = function (fn) {
if (isSync || /* without a current active instance, ignore pre|post mode */ vm === fallbackVM) {
return fn;
}
return (function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
return queueFlushJob(vm, function () {
fn.apply(void 0, __spread(args));
}, flushMode);
});
};
// effect watch
if (cb === null) {
var getter_1 = function () { return source(registerCleanup); };
var watcher_1 = createVueWatcher(vm, getter_1, noopFn, {
noRun: true,
deep: options.deep,
sync: isSync,
before: runCleanup,
});
// enable the watcher update
watcher_1.lazy = false;
var originGet = watcher_1.get.bind(watcher_1);
if (isSync) {
watcher_1.get();
}
else {
vm.$nextTick(originGet);
}
watcher_1.get = createScheduler(originGet);
return function () {
watcher_1.teardown();
runCleanup();
};
}
var getter;
if (Array.isArray(source)) {
getter = function () { return source.map(function (s) { return (isRef(s) ? s.value : s()); }); };
}
else if (isRef(source)) {
getter = function () { return source.value; };
}
else {
getter = source;
}
var applyCb = function (n, o) {
// cleanup before running cb again
runCleanup();
cb(n, o, registerCleanup);
};
var callback = createScheduler(applyCb);
if (!options.lazy) {
var originalCallbck_1 = callback;
// `shiftCallback` is used to handle the first sync effect run.
// The subsequent callbacks will redirect to `callback`.
var shiftCallback_1 = function (n, o) {
shiftCallback_1 = originalCallbck_1;
applyCb(n, o);
};
callback = function (n, o) {
shiftCallback_1(n, o);
};
}
// @ts-ignore: use undocumented option "sync"
var stop = vm.$watch(getter, callback, {
immediate: !options.lazy,
deep: options.deep,
sync: isSync,
});
return function () {
stop();
runCleanup();
};
}
function watchEffect(effect, options) {
var opts = getWatcherOption(options);
var vm = getWatcherVM();
return createWatcher(vm, effect, null, opts);
}
function watch(source, cb, options) {
var callback = null;
if (typeof cb === 'function') {
// source watch
callback = cb;
}
else {
// effect watch
{
warn("`watch(fn, options?)` signature has been moved to a separate API. " +
"Use `watchEffect(fn, options?)` instead. `watch` now only " +
"supports `watch(source, cb, options?) signature.");
}
options = cb;
callback = null;
}
var opts = getWatcherOption(options);
var vm = getWatcherVM();
return createWatcher(vm, source, callback, opts);
}
// implement
function computed(options) {
var vm = getCurrentVM();
var get, set;
if (typeof options === 'function') {
get = options;
}
else {
get = options.get;
set = options.set;
}
var computedHost = defineComponentInstance(getCurrentVue(), {
computed: {
$$state: {
get: get,
set: set,
},
},
});
return createRef({
get: function () { return computedHost.$$state; },
set: function (v) {
if (!set) {
warn('Computed property was assigned to but it has no setter.', vm);
return;
}
computedHost.$$state = v;
},
});
}
var NOT_FOUND = {};
function resolveInject(provideKey, vm) {
var source = vm;
while (source) {
// @ts-ignore
if (source._provided && hasOwn(source._provided, provideKey)) {
//@ts-ignore
return source._provided[provideKey];
}
source = source.$parent;
}
return NOT_FOUND;
}
function provide(key, value) {
var vm = ensureCurrentVMInFn('provide');
if (!vm._provided) {
var provideCache_1 = {};
Object.defineProperty(vm, '_provided', {
get: function () { return provideCache_1; },
set: function (v) { return Object.assign(provideCache_1, v); },
});
}
vm._provided[key] = value;
}
function inject(key, defaultValue) {
if (!key) {
return defaultValue;
}
var vm = ensureCurrentVMInFn('inject');
var val = resolveInject(key, vm);
if (val !== NOT_FOUND) {
return val;
}
else if (defaultValue !== undefined) {
return defaultValue;
}
else {
warn("Injection \"" + String(key) + "\" not found", vm);
}
}
var _install = function (Vue) { return install(Vue, mixin); };
var plugin = {
install: _install,
};
// Auto install if it is not done yet and `window` has `Vue`.
// To allow users to avoid auto-installation in some cases,
if (currentVue && typeof window !== 'undefined' && window.Vue) {
_install(window.Vue);
}
exports.computed = computed;
exports.createComponent = createComponent;
exports.createElement = createElement;
exports.default = plugin;
exports.defineComponent = defineComponent;
exports.getCurrentInstance = getCurrentVM;
exports.inject = inject;
exports.isRef = isRef;
exports.onActivated = onActivated;
exports.onBeforeMount = onBeforeMount;
exports.onBeforeUnmount = onBeforeUnmount;
exports.onBeforeUpdate = onBeforeUpdate;
exports.onDeactivated = onDeactivated;
exports.onErrorCaptured = onErrorCaptured;
exports.onMounted = onMounted;
exports.onServerPrefetch = onServerPrefetch;
exports.onUnmounted = onUnmounted;
exports.onUpdated = onUpdated;
exports.provide = provide;
exports.reactive = reactive;
exports.ref = ref;
exports.set = set;
exports.toRefs = toRefs;
exports.watch = watch;
exports.watchEffect = watchEffect;
Object.defineProperty(exports, '__esModule', { value: true });
}));
\ No newline at end of file
/*!
* Vue.js v2.6.11
* (c) 2014-2019 Evan You
* Released under the MIT License.
*/
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self).Vue=t()}(this,function(){"use strict";var e=Object.freeze({});function t(e){return null==e}function n(e){return null!=e}function r(e){return!0===e}function i(e){return"string"==typeof e||"number"==typeof e||"symbol"==typeof e||"boolean"==typeof e}function o(e){return null!==e&&"object"==typeof e}var a=Object.prototype.toString;function s(e){return"[object Object]"===a.call(e)}function c(e){var t=parseFloat(String(e));return t>=0&&Math.floor(t)===t&&isFinite(e)}function u(e){return n(e)&&"function"==typeof e.then&&"function"==typeof e.catch}function l(e){return null==e?"":Array.isArray(e)||s(e)&&e.toString===a?JSON.stringify(e,null,2):String(e)}function f(e){var t=parseFloat(e);return isNaN(t)?e:t}function p(e,t){for(var n=Object.create(null),r=e.split(","),i=0;i<r.length;i++)n[r[i]]=!0;return t?function(e){return n[e.toLowerCase()]}:function(e){return n[e]}}var d=p("slot,component",!0),v=p("key,ref,slot,slot-scope,is");function h(e,t){if(e.length){var n=e.indexOf(t);if(n>-1)return e.splice(n,1)}}var m=Object.prototype.hasOwnProperty;function y(e,t){return m.call(e,t)}function g(e){var t=Object.create(null);return function(n){return t[n]||(t[n]=e(n))}}var _=/-(\w)/g,b=g(function(e){return e.replace(_,function(e,t){return t?t.toUpperCase():""})}),$=g(function(e){return e.charAt(0).toUpperCase()+e.slice(1)}),w=/\B([A-Z])/g,C=g(function(e){return e.replace(w,"-$1").toLowerCase()});var x=Function.prototype.bind?function(e,t){return e.bind(t)}:function(e,t){function n(n){var r=arguments.length;return r?r>1?e.apply(t,arguments):e.call(t,n):e.call(t)}return n._length=e.length,n};function k(e,t){t=t||0;for(var n=e.length-t,r=new Array(n);n--;)r[n]=e[n+t];return r}function A(e,t){for(var n in t)e[n]=t[n];return e}function O(e){for(var t={},n=0;n<e.length;n++)e[n]&&A(t,e[n]);return t}function S(e,t,n){}var T=function(e,t,n){return!1},E=function(e){return e};function N(e,t){if(e===t)return!0;var n=o(e),r=o(t);if(!n||!r)return!n&&!r&&String(e)===String(t);try{var i=Array.isArray(e),a=Array.isArray(t);if(i&&a)return e.length===t.length&&e.every(function(e,n){return N(e,t[n])});if(e instanceof Date&&t instanceof Date)return e.getTime()===t.getTime();if(i||a)return!1;var s=Object.keys(e),c=Object.keys(t);return s.length===c.length&&s.every(function(n){return N(e[n],t[n])})}catch(e){return!1}}function j(e,t){for(var n=0;n<e.length;n++)if(N(e[n],t))return n;return-1}function D(e){var t=!1;return function(){t||(t=!0,e.apply(this,arguments))}}var L="data-server-rendered",M=["component","directive","filter"],I=["beforeCreate","created","beforeMount","mounted","beforeUpdate","updated","beforeDestroy","destroyed","activated","deactivated","errorCaptured","serverPrefetch"],F={optionMergeStrategies:Object.create(null),silent:!1,productionTip:!1,devtools:!1,performance:!1,errorHandler:null,warnHandler:null,ignoredElements:[],keyCodes:Object.create(null),isReservedTag:T,isReservedAttr:T,isUnknownElement:T,getTagNamespace:S,parsePlatformTagName:E,mustUseProp:T,async:!0,_lifecycleHooks:I},P=/a-zA-Z\u00B7\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u037D\u037F-\u1FFF\u200C-\u200D\u203F-\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD/;function R(e,t,n,r){Object.defineProperty(e,t,{value:n,enumerable:!!r,writable:!0,configurable:!0})}var H=new RegExp("[^"+P.source+".$_\\d]");var B,U="__proto__"in{},z="undefined"!=typeof window,V="undefined"!=typeof WXEnvironment&&!!WXEnvironment.platform,K=V&&WXEnvironment.platform.toLowerCase(),J=z&&window.navigator.userAgent.toLowerCase(),q=J&&/msie|trident/.test(J),W=J&&J.indexOf("msie 9.0")>0,Z=J&&J.indexOf("edge/")>0,G=(J&&J.indexOf("android"),J&&/iphone|ipad|ipod|ios/.test(J)||"ios"===K),X=(J&&/chrome\/\d+/.test(J),J&&/phantomjs/.test(J),J&&J.match(/firefox\/(\d+)/)),Y={}.watch,Q=!1;if(z)try{var ee={};Object.defineProperty(ee,"passive",{get:function(){Q=!0}}),window.addEventListener("test-passive",null,ee)}catch(e){}var te=function(){return void 0===B&&(B=!z&&!V&&"undefined"!=typeof global&&(global.process&&"server"===global.process.env.VUE_ENV)),B},ne=z&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function re(e){return"function"==typeof e&&/native code/.test(e.toString())}var ie,oe="undefined"!=typeof Symbol&&re(Symbol)&&"undefined"!=typeof Reflect&&re(Reflect.ownKeys);ie="undefined"!=typeof Set&&re(Set)?Set:function(){function e(){this.set=Object.create(null)}return e.prototype.has=function(e){return!0===this.set[e]},e.prototype.add=function(e){this.set[e]=!0},e.prototype.clear=function(){this.set=Object.create(null)},e}();var ae=S,se=0,ce=function(){this.id=se++,this.subs=[]};ce.prototype.addSub=function(e){this.subs.push(e)},ce.prototype.removeSub=function(e){h(this.subs,e)},ce.prototype.depend=function(){ce.target&&ce.target.addDep(this)},ce.prototype.notify=function(){for(var e=this.subs.slice(),t=0,n=e.length;t<n;t++)e[t].update()},ce.target=null;var ue=[];function le(e){ue.push(e),ce.target=e}function fe(){ue.pop(),ce.target=ue[ue.length-1]}var pe=function(e,t,n,r,i,o,a,s){this.tag=e,this.data=t,this.children=n,this.text=r,this.elm=i,this.ns=void 0,this.context=o,this.fnContext=void 0,this.fnOptions=void 0,this.fnScopeId=void 0,this.key=t&&t.key,this.componentOptions=a,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=s,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1},de={child:{configurable:!0}};de.child.get=function(){return this.componentInstance},Object.defineProperties(pe.prototype,de);var ve=function(e){void 0===e&&(e="");var t=new pe;return t.text=e,t.isComment=!0,t};function he(e){return new pe(void 0,void 0,void 0,String(e))}function me(e){var t=new pe(e.tag,e.data,e.children&&e.children.slice(),e.text,e.elm,e.context,e.componentOptions,e.asyncFactory);return t.ns=e.ns,t.isStatic=e.isStatic,t.key=e.key,t.isComment=e.isComment,t.fnContext=e.fnContext,t.fnOptions=e.fnOptions,t.fnScopeId=e.fnScopeId,t.asyncMeta=e.asyncMeta,t.isCloned=!0,t}var ye=Array.prototype,ge=Object.create(ye);["push","pop","shift","unshift","splice","sort","reverse"].forEach(function(e){var t=ye[e];R(ge,e,function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];var i,o=t.apply(this,n),a=this.__ob__;switch(e){case"push":case"unshift":i=n;break;case"splice":i=n.slice(2)}return i&&a.observeArray(i),a.dep.notify(),o})});var _e=Object.getOwnPropertyNames(ge),be=!0;function $e(e){be=e}var we=function(e){var t;this.value=e,this.dep=new ce,this.vmCount=0,R(e,"__ob__",this),Array.isArray(e)?(U?(t=ge,e.__proto__=t):function(e,t,n){for(var r=0,i=n.length;r<i;r++){var o=n[r];R(e,o,t[o])}}(e,ge,_e),this.observeArray(e)):this.walk(e)};function Ce(e,t){var n;if(o(e)&&!(e instanceof pe))return y(e,"__ob__")&&e.__ob__ instanceof we?n=e.__ob__:be&&!te()&&(Array.isArray(e)||s(e))&&Object.isExtensible(e)&&!e._isVue&&(n=new we(e)),t&&n&&n.vmCount++,n}function xe(e,t,n,r,i){var o=new ce,a=Object.getOwnPropertyDescriptor(e,t);if(!a||!1!==a.configurable){var s=a&&a.get,c=a&&a.set;s&&!c||2!==arguments.length||(n=e[t]);var u=!i&&Ce(n);Object.defineProperty(e,t,{enumerable:!0,configurable:!0,get:function(){var t=s?s.call(e):n;return ce.target&&(o.depend(),u&&(u.dep.depend(),Array.isArray(t)&&function e(t){for(var n=void 0,r=0,i=t.length;r<i;r++)(n=t[r])&&n.__ob__&&n.__ob__.dep.depend(),Array.isArray(n)&&e(n)}(t))),t},set:function(t){var r=s?s.call(e):n;t===r||t!=t&&r!=r||s&&!c||(c?c.call(e,t):n=t,u=!i&&Ce(t),o.notify())}})}}function ke(e,t,n){if(Array.isArray(e)&&c(t))return e.length=Math.max(e.length,t),e.splice(t,1,n),n;if(t in e&&!(t in Object.prototype))return e[t]=n,n;var r=e.__ob__;return e._isVue||r&&r.vmCount?n:r?(xe(r.value,t,n),r.dep.notify(),n):(e[t]=n,n)}function Ae(e,t){if(Array.isArray(e)&&c(t))e.splice(t,1);else{var n=e.__ob__;e._isVue||n&&n.vmCount||y(e,t)&&(delete e[t],n&&n.dep.notify())}}we.prototype.walk=function(e){for(var t=Object.keys(e),n=0;n<t.length;n++)xe(e,t[n])},we.prototype.observeArray=function(e){for(var t=0,n=e.length;t<n;t++)Ce(e[t])};var Oe=F.optionMergeStrategies;function Se(e,t){if(!t)return e;for(var n,r,i,o=oe?Reflect.ownKeys(t):Object.keys(t),a=0;a<o.length;a++)"__ob__"!==(n=o[a])&&(r=e[n],i=t[n],y(e,n)?r!==i&&s(r)&&s(i)&&Se(r,i):ke(e,n,i));return e}function Te(e,t,n){return n?function(){var r="function"==typeof t?t.call(n,n):t,i="function"==typeof e?e.call(n,n):e;return r?Se(r,i):i}:t?e?function(){return Se("function"==typeof t?t.call(this,this):t,"function"==typeof e?e.call(this,this):e)}:t:e}function Ee(e,t){var n=t?e?e.concat(t):Array.isArray(t)?t:[t]:e;return n?function(e){for(var t=[],n=0;n<e.length;n++)-1===t.indexOf(e[n])&&t.push(e[n]);return t}(n):n}function Ne(e,t,n,r){var i=Object.create(e||null);return t?A(i,t):i}Oe.data=function(e,t,n){return n?Te(e,t,n):t&&"function"!=typeof t?e:Te(e,t)},I.forEach(function(e){Oe[e]=Ee}),M.forEach(function(e){Oe[e+"s"]=Ne}),Oe.watch=function(e,t,n,r){if(e===Y&&(e=void 0),t===Y&&(t=void 0),!t)return Object.create(e||null);if(!e)return t;var i={};for(var o in A(i,e),t){var a=i[o],s=t[o];a&&!Array.isArray(a)&&(a=[a]),i[o]=a?a.concat(s):Array.isArray(s)?s:[s]}return i},Oe.props=Oe.methods=Oe.inject=Oe.computed=function(e,t,n,r){if(!e)return t;var i=Object.create(null);return A(i,e),t&&A(i,t),i},Oe.provide=Te;var je=function(e,t){return void 0===t?e:t};function De(e,t,n){if("function"==typeof t&&(t=t.options),function(e,t){var n=e.props;if(n){var r,i,o={};if(Array.isArray(n))for(r=n.length;r--;)"string"==typeof(i=n[r])&&(o[b(i)]={type:null});else if(s(n))for(var a in n)i=n[a],o[b(a)]=s(i)?i:{type:i};e.props=o}}(t),function(e,t){var n=e.inject;if(n){var r=e.inject={};if(Array.isArray(n))for(var i=0;i<n.length;i++)r[n[i]]={from:n[i]};else if(s(n))for(var o in n){var a=n[o];r[o]=s(a)?A({from:o},a):{from:a}}}}(t),function(e){var t=e.directives;if(t)for(var n in t){var r=t[n];"function"==typeof r&&(t[n]={bind:r,update:r})}}(t),!t._base&&(t.extends&&(e=De(e,t.extends,n)),t.mixins))for(var r=0,i=t.mixins.length;r<i;r++)e=De(e,t.mixins[r],n);var o,a={};for(o in e)c(o);for(o in t)y(e,o)||c(o);function c(r){var i=Oe[r]||je;a[r]=i(e[r],t[r],n,r)}return a}function Le(e,t,n,r){if("string"==typeof n){var i=e[t];if(y(i,n))return i[n];var o=b(n);if(y(i,o))return i[o];var a=$(o);return y(i,a)?i[a]:i[n]||i[o]||i[a]}}function Me(e,t,n,r){var i=t[e],o=!y(n,e),a=n[e],s=Pe(Boolean,i.type);if(s>-1)if(o&&!y(i,"default"))a=!1;else if(""===a||a===C(e)){var c=Pe(String,i.type);(c<0||s<c)&&(a=!0)}if(void 0===a){a=function(e,t,n){if(!y(t,"default"))return;var r=t.default;if(e&&e.$options.propsData&&void 0===e.$options.propsData[n]&&void 0!==e._props[n])return e._props[n];return"function"==typeof r&&"Function"!==Ie(t.type)?r.call(e):r}(r,i,e);var u=be;$e(!0),Ce(a),$e(u)}return a}function Ie(e){var t=e&&e.toString().match(/^\s*function (\w+)/);return t?t[1]:""}function Fe(e,t){return Ie(e)===Ie(t)}function Pe(e,t){if(!Array.isArray(t))return Fe(t,e)?0:-1;for(var n=0,r=t.length;n<r;n++)if(Fe(t[n],e))return n;return-1}function Re(e,t,n){le();try{if(t)for(var r=t;r=r.$parent;){var i=r.$options.errorCaptured;if(i)for(var o=0;o<i.length;o++)try{if(!1===i[o].call(r,e,t,n))return}catch(e){Be(e,r,"errorCaptured hook")}}Be(e,t,n)}finally{fe()}}function He(e,t,n,r,i){var o;try{(o=n?e.apply(t,n):e.call(t))&&!o._isVue&&u(o)&&!o._handled&&(o.catch(function(e){return Re(e,r,i+" (Promise/async)")}),o._handled=!0)}catch(e){Re(e,r,i)}return o}function Be(e,t,n){if(F.errorHandler)try{return F.errorHandler.call(null,e,t,n)}catch(t){t!==e&&Ue(t,null,"config.errorHandler")}Ue(e,t,n)}function Ue(e,t,n){if(!z&&!V||"undefined"==typeof console)throw e;console.error(e)}var ze,Ve=!1,Ke=[],Je=!1;function qe(){Je=!1;var e=Ke.slice(0);Ke.length=0;for(var t=0;t<e.length;t++)e[t]()}if("undefined"!=typeof Promise&&re(Promise)){var We=Promise.resolve();ze=function(){We.then(qe),G&&setTimeout(S)},Ve=!0}else if(q||"undefined"==typeof MutationObserver||!re(MutationObserver)&&"[object MutationObserverConstructor]"!==MutationObserver.toString())ze="undefined"!=typeof setImmediate&&re(setImmediate)?function(){setImmediate(qe)}:function(){setTimeout(qe,0)};else{var Ze=1,Ge=new MutationObserver(qe),Xe=document.createTextNode(String(Ze));Ge.observe(Xe,{characterData:!0}),ze=function(){Ze=(Ze+1)%2,Xe.data=String(Ze)},Ve=!0}function Ye(e,t){var n;if(Ke.push(function(){if(e)try{e.call(t)}catch(e){Re(e,t,"nextTick")}else n&&n(t)}),Je||(Je=!0,ze()),!e&&"undefined"!=typeof Promise)return new Promise(function(e){n=e})}var Qe=new ie;function et(e){!function e(t,n){var r,i;var a=Array.isArray(t);if(!a&&!o(t)||Object.isFrozen(t)||t instanceof pe)return;if(t.__ob__){var s=t.__ob__.dep.id;if(n.has(s))return;n.add(s)}if(a)for(r=t.length;r--;)e(t[r],n);else for(i=Object.keys(t),r=i.length;r--;)e(t[i[r]],n)}(e,Qe),Qe.clear()}var tt=g(function(e){var t="&"===e.charAt(0),n="~"===(e=t?e.slice(1):e).charAt(0),r="!"===(e=n?e.slice(1):e).charAt(0);return{name:e=r?e.slice(1):e,once:n,capture:r,passive:t}});function nt(e,t){function n(){var e=arguments,r=n.fns;if(!Array.isArray(r))return He(r,null,arguments,t,"v-on handler");for(var i=r.slice(),o=0;o<i.length;o++)He(i[o],null,e,t,"v-on handler")}return n.fns=e,n}function rt(e,n,i,o,a,s){var c,u,l,f;for(c in e)u=e[c],l=n[c],f=tt(c),t(u)||(t(l)?(t(u.fns)&&(u=e[c]=nt(u,s)),r(f.once)&&(u=e[c]=a(f.name,u,f.capture)),i(f.name,u,f.capture,f.passive,f.params)):u!==l&&(l.fns=u,e[c]=l));for(c in n)t(e[c])&&o((f=tt(c)).name,n[c],f.capture)}function it(e,i,o){var a;e instanceof pe&&(e=e.data.hook||(e.data.hook={}));var s=e[i];function c(){o.apply(this,arguments),h(a.fns,c)}t(s)?a=nt([c]):n(s.fns)&&r(s.merged)?(a=s).fns.push(c):a=nt([s,c]),a.merged=!0,e[i]=a}function ot(e,t,r,i,o){if(n(t)){if(y(t,r))return e[r]=t[r],o||delete t[r],!0;if(y(t,i))return e[r]=t[i],o||delete t[i],!0}return!1}function at(e){return i(e)?[he(e)]:Array.isArray(e)?function e(o,a){var s=[];var c,u,l,f;for(c=0;c<o.length;c++)t(u=o[c])||"boolean"==typeof u||(l=s.length-1,f=s[l],Array.isArray(u)?u.length>0&&(st((u=e(u,(a||"")+"_"+c))[0])&&st(f)&&(s[l]=he(f.text+u[0].text),u.shift()),s.push.apply(s,u)):i(u)?st(f)?s[l]=he(f.text+u):""!==u&&s.push(he(u)):st(u)&&st(f)?s[l]=he(f.text+u.text):(r(o._isVList)&&n(u.tag)&&t(u.key)&&n(a)&&(u.key="__vlist"+a+"_"+c+"__"),s.push(u)));return s}(e):void 0}function st(e){return n(e)&&n(e.text)&&!1===e.isComment}function ct(e,t){if(e){for(var n=Object.create(null),r=oe?Reflect.ownKeys(e):Object.keys(e),i=0;i<r.length;i++){var o=r[i];if("__ob__"!==o){for(var a=e[o].from,s=t;s;){if(s._provided&&y(s._provided,a)){n[o]=s._provided[a];break}s=s.$parent}if(!s&&"default"in e[o]){var c=e[o].default;n[o]="function"==typeof c?c.call(t):c}}}return n}}function ut(e,t){if(!e||!e.length)return{};for(var n={},r=0,i=e.length;r<i;r++){var o=e[r],a=o.data;if(a&&a.attrs&&a.attrs.slot&&delete a.attrs.slot,o.context!==t&&o.fnContext!==t||!a||null==a.slot)(n.default||(n.default=[])).push(o);else{var s=a.slot,c=n[s]||(n[s]=[]);"template"===o.tag?c.push.apply(c,o.children||[]):c.push(o)}}for(var u in n)n[u].every(lt)&&delete n[u];return n}function lt(e){return e.isComment&&!e.asyncFactory||" "===e.text}function ft(t,n,r){var i,o=Object.keys(n).length>0,a=t?!!t.$stable:!o,s=t&&t.$key;if(t){if(t._normalized)return t._normalized;if(a&&r&&r!==e&&s===r.$key&&!o&&!r.$hasNormal)return r;for(var c in i={},t)t[c]&&"$"!==c[0]&&(i[c]=pt(n,c,t[c]))}else i={};for(var u in n)u in i||(i[u]=dt(n,u));return t&&Object.isExtensible(t)&&(t._normalized=i),R(i,"$stable",a),R(i,"$key",s),R(i,"$hasNormal",o),i}function pt(e,t,n){var r=function(){var e=arguments.length?n.apply(null,arguments):n({});return(e=e&&"object"==typeof e&&!Array.isArray(e)?[e]:at(e))&&(0===e.length||1===e.length&&e[0].isComment)?void 0:e};return n.proxy&&Object.defineProperty(e,t,{get:r,enumerable:!0,configurable:!0}),r}function dt(e,t){return function(){return e[t]}}function vt(e,t){var r,i,a,s,c;if(Array.isArray(e)||"string"==typeof e)for(r=new Array(e.length),i=0,a=e.length;i<a;i++)r[i]=t(e[i],i);else if("number"==typeof e)for(r=new Array(e),i=0;i<e;i++)r[i]=t(i+1,i);else if(o(e))if(oe&&e[Symbol.iterator]){r=[];for(var u=e[Symbol.iterator](),l=u.next();!l.done;)r.push(t(l.value,r.length)),l=u.next()}else for(s=Object.keys(e),r=new Array(s.length),i=0,a=s.length;i<a;i++)c=s[i],r[i]=t(e[c],c,i);return n(r)||(r=[]),r._isVList=!0,r}function ht(e,t,n,r){var i,o=this.$scopedSlots[e];o?(n=n||{},r&&(n=A(A({},r),n)),i=o(n)||t):i=this.$slots[e]||t;var a=n&&n.slot;return a?this.$createElement("template",{slot:a},i):i}function mt(e){return Le(this.$options,"filters",e)||E}function yt(e,t){return Array.isArray(e)?-1===e.indexOf(t):e!==t}function gt(e,t,n,r,i){var o=F.keyCodes[t]||n;return i&&r&&!F.keyCodes[t]?yt(i,r):o?yt(o,e):r?C(r)!==t:void 0}function _t(e,t,n,r,i){if(n)if(o(n)){var a;Array.isArray(n)&&(n=O(n));var s=function(o){if("class"===o||"style"===o||v(o))a=e;else{var s=e.attrs&&e.attrs.type;a=r||F.mustUseProp(t,s,o)?e.domProps||(e.domProps={}):e.attrs||(e.attrs={})}var c=b(o),u=C(o);c in a||u in a||(a[o]=n[o],i&&((e.on||(e.on={}))["update:"+o]=function(e){n[o]=e}))};for(var c in n)s(c)}else;return e}function bt(e,t){var n=this._staticTrees||(this._staticTrees=[]),r=n[e];return r&&!t?r:(wt(r=n[e]=this.$options.staticRenderFns[e].call(this._renderProxy,null,this),"__static__"+e,!1),r)}function $t(e,t,n){return wt(e,"__once__"+t+(n?"_"+n:""),!0),e}function wt(e,t,n){if(Array.isArray(e))for(var r=0;r<e.length;r++)e[r]&&"string"!=typeof e[r]&&Ct(e[r],t+"_"+r,n);else Ct(e,t,n)}function Ct(e,t,n){e.isStatic=!0,e.key=t,e.isOnce=n}function xt(e,t){if(t)if(s(t)){var n=e.on=e.on?A({},e.on):{};for(var r in t){var i=n[r],o=t[r];n[r]=i?[].concat(i,o):o}}else;return e}function kt(e,t,n,r){t=t||{$stable:!n};for(var i=0;i<e.length;i++){var o=e[i];Array.isArray(o)?kt(o,t,n):o&&(o.proxy&&(o.fn.proxy=!0),t[o.key]=o.fn)}return r&&(t.$key=r),t}function At(e,t){for(var n=0;n<t.length;n+=2){var r=t[n];"string"==typeof r&&r&&(e[t[n]]=t[n+1])}return e}function Ot(e,t){return"string"==typeof e?t+e:e}function St(e){e._o=$t,e._n=f,e._s=l,e._l=vt,e._t=ht,e._q=N,e._i=j,e._m=bt,e._f=mt,e._k=gt,e._b=_t,e._v=he,e._e=ve,e._u=kt,e._g=xt,e._d=At,e._p=Ot}function Tt(t,n,i,o,a){var s,c=this,u=a.options;y(o,"_uid")?(s=Object.create(o))._original=o:(s=o,o=o._original);var l=r(u._compiled),f=!l;this.data=t,this.props=n,this.children=i,this.parent=o,this.listeners=t.on||e,this.injections=ct(u.inject,o),this.slots=function(){return c.$slots||ft(t.scopedSlots,c.$slots=ut(i,o)),c.$slots},Object.defineProperty(this,"scopedSlots",{enumerable:!0,get:function(){return ft(t.scopedSlots,this.slots())}}),l&&(this.$options=u,this.$slots=this.slots(),this.$scopedSlots=ft(t.scopedSlots,this.$slots)),u._scopeId?this._c=function(e,t,n,r){var i=Pt(s,e,t,n,r,f);return i&&!Array.isArray(i)&&(i.fnScopeId=u._scopeId,i.fnContext=o),i}:this._c=function(e,t,n,r){return Pt(s,e,t,n,r,f)}}function Et(e,t,n,r,i){var o=me(e);return o.fnContext=n,o.fnOptions=r,t.slot&&((o.data||(o.data={})).slot=t.slot),o}function Nt(e,t){for(var n in t)e[b(n)]=t[n]}St(Tt.prototype);var jt={init:function(e,t){if(e.componentInstance&&!e.componentInstance._isDestroyed&&e.data.keepAlive){var r=e;jt.prepatch(r,r)}else{(e.componentInstance=function(e,t){var r={_isComponent:!0,_parentVnode:e,parent:t},i=e.data.inlineTemplate;n(i)&&(r.render=i.render,r.staticRenderFns=i.staticRenderFns);return new e.componentOptions.Ctor(r)}(e,Wt)).$mount(t?e.elm:void 0,t)}},prepatch:function(t,n){var r=n.componentOptions;!function(t,n,r,i,o){var a=i.data.scopedSlots,s=t.$scopedSlots,c=!!(a&&!a.$stable||s!==e&&!s.$stable||a&&t.$scopedSlots.$key!==a.$key),u=!!(o||t.$options._renderChildren||c);t.$options._parentVnode=i,t.$vnode=i,t._vnode&&(t._vnode.parent=i);if(t.$options._renderChildren=o,t.$attrs=i.data.attrs||e,t.$listeners=r||e,n&&t.$options.props){$e(!1);for(var l=t._props,f=t.$options._propKeys||[],p=0;p<f.length;p++){var d=f[p],v=t.$options.props;l[d]=Me(d,v,n,t)}$e(!0),t.$options.propsData=n}r=r||e;var h=t.$options._parentListeners;t.$options._parentListeners=r,qt(t,r,h),u&&(t.$slots=ut(o,i.context),t.$forceUpdate())}(n.componentInstance=t.componentInstance,r.propsData,r.listeners,n,r.children)},insert:function(e){var t,n=e.context,r=e.componentInstance;r._isMounted||(r._isMounted=!0,Yt(r,"mounted")),e.data.keepAlive&&(n._isMounted?((t=r)._inactive=!1,en.push(t)):Xt(r,!0))},destroy:function(e){var t=e.componentInstance;t._isDestroyed||(e.data.keepAlive?function e(t,n){if(n&&(t._directInactive=!0,Gt(t)))return;if(!t._inactive){t._inactive=!0;for(var r=0;r<t.$children.length;r++)e(t.$children[r]);Yt(t,"deactivated")}}(t,!0):t.$destroy())}},Dt=Object.keys(jt);function Lt(i,a,s,c,l){if(!t(i)){var f=s.$options._base;if(o(i)&&(i=f.extend(i)),"function"==typeof i){var p;if(t(i.cid)&&void 0===(i=function(e,i){if(r(e.error)&&n(e.errorComp))return e.errorComp;if(n(e.resolved))return e.resolved;var a=Ht;a&&n(e.owners)&&-1===e.owners.indexOf(a)&&e.owners.push(a);if(r(e.loading)&&n(e.loadingComp))return e.loadingComp;if(a&&!n(e.owners)){var s=e.owners=[a],c=!0,l=null,f=null;a.$on("hook:destroyed",function(){return h(s,a)});var p=function(e){for(var t=0,n=s.length;t<n;t++)s[t].$forceUpdate();e&&(s.length=0,null!==l&&(clearTimeout(l),l=null),null!==f&&(clearTimeout(f),f=null))},d=D(function(t){e.resolved=Bt(t,i),c?s.length=0:p(!0)}),v=D(function(t){n(e.errorComp)&&(e.error=!0,p(!0))}),m=e(d,v);return o(m)&&(u(m)?t(e.resolved)&&m.then(d,v):u(m.component)&&(m.component.then(d,v),n(m.error)&&(e.errorComp=Bt(m.error,i)),n(m.loading)&&(e.loadingComp=Bt(m.loading,i),0===m.delay?e.loading=!0:l=setTimeout(function(){l=null,t(e.resolved)&&t(e.error)&&(e.loading=!0,p(!1))},m.delay||200)),n(m.timeout)&&(f=setTimeout(function(){f=null,t(e.resolved)&&v(null)},m.timeout)))),c=!1,e.loading?e.loadingComp:e.resolved}}(p=i,f)))return function(e,t,n,r,i){var o=ve();return o.asyncFactory=e,o.asyncMeta={data:t,context:n,children:r,tag:i},o}(p,a,s,c,l);a=a||{},$n(i),n(a.model)&&function(e,t){var r=e.model&&e.model.prop||"value",i=e.model&&e.model.event||"input";(t.attrs||(t.attrs={}))[r]=t.model.value;var o=t.on||(t.on={}),a=o[i],s=t.model.callback;n(a)?(Array.isArray(a)?-1===a.indexOf(s):a!==s)&&(o[i]=[s].concat(a)):o[i]=s}(i.options,a);var d=function(e,r,i){var o=r.options.props;if(!t(o)){var a={},s=e.attrs,c=e.props;if(n(s)||n(c))for(var u in o){var l=C(u);ot(a,c,u,l,!0)||ot(a,s,u,l,!1)}return a}}(a,i);if(r(i.options.functional))return function(t,r,i,o,a){var s=t.options,c={},u=s.props;if(n(u))for(var l in u)c[l]=Me(l,u,r||e);else n(i.attrs)&&Nt(c,i.attrs),n(i.props)&&Nt(c,i.props);var f=new Tt(i,c,a,o,t),p=s.render.call(null,f._c,f);if(p instanceof pe)return Et(p,i,f.parent,s);if(Array.isArray(p)){for(var d=at(p)||[],v=new Array(d.length),h=0;h<d.length;h++)v[h]=Et(d[h],i,f.parent,s);return v}}(i,d,a,s,c);var v=a.on;if(a.on=a.nativeOn,r(i.options.abstract)){var m=a.slot;a={},m&&(a.slot=m)}!function(e){for(var t=e.hook||(e.hook={}),n=0;n<Dt.length;n++){var r=Dt[n],i=t[r],o=jt[r];i===o||i&&i._merged||(t[r]=i?Mt(o,i):o)}}(a);var y=i.options.name||l;return new pe("vue-component-"+i.cid+(y?"-"+y:""),a,void 0,void 0,void 0,s,{Ctor:i,propsData:d,listeners:v,tag:l,children:c},p)}}}function Mt(e,t){var n=function(n,r){e(n,r),t(n,r)};return n._merged=!0,n}var It=1,Ft=2;function Pt(e,a,s,c,u,l){return(Array.isArray(s)||i(s))&&(u=c,c=s,s=void 0),r(l)&&(u=Ft),function(e,i,a,s,c){if(n(a)&&n(a.__ob__))return ve();n(a)&&n(a.is)&&(i=a.is);if(!i)return ve();Array.isArray(s)&&"function"==typeof s[0]&&((a=a||{}).scopedSlots={default:s[0]},s.length=0);c===Ft?s=at(s):c===It&&(s=function(e){for(var t=0;t<e.length;t++)if(Array.isArray(e[t]))return Array.prototype.concat.apply([],e);return e}(s));var u,l;if("string"==typeof i){var f;l=e.$vnode&&e.$vnode.ns||F.getTagNamespace(i),u=F.isReservedTag(i)?new pe(F.parsePlatformTagName(i),a,s,void 0,void 0,e):a&&a.pre||!n(f=Le(e.$options,"components",i))?new pe(i,a,s,void 0,void 0,e):Lt(f,a,e,s,i)}else u=Lt(i,a,e,s);return Array.isArray(u)?u:n(u)?(n(l)&&function e(i,o,a){i.ns=o;"foreignObject"===i.tag&&(o=void 0,a=!0);if(n(i.children))for(var s=0,c=i.children.length;s<c;s++){var u=i.children[s];n(u.tag)&&(t(u.ns)||r(a)&&"svg"!==u.tag)&&e(u,o,a)}}(u,l),n(a)&&function(e){o(e.style)&&et(e.style);o(e.class)&&et(e.class)}(a),u):ve()}(e,a,s,c,u)}var Rt,Ht=null;function Bt(e,t){return(e.__esModule||oe&&"Module"===e[Symbol.toStringTag])&&(e=e.default),o(e)?t.extend(e):e}function Ut(e){return e.isComment&&e.asyncFactory}function zt(e){if(Array.isArray(e))for(var t=0;t<e.length;t++){var r=e[t];if(n(r)&&(n(r.componentOptions)||Ut(r)))return r}}function Vt(e,t){Rt.$on(e,t)}function Kt(e,t){Rt.$off(e,t)}function Jt(e,t){var n=Rt;return function r(){null!==t.apply(null,arguments)&&n.$off(e,r)}}function qt(e,t,n){Rt=e,rt(t,n||{},Vt,Kt,Jt,e),Rt=void 0}var Wt=null;function Zt(e){var t=Wt;return Wt=e,function(){Wt=t}}function Gt(e){for(;e&&(e=e.$parent);)if(e._inactive)return!0;return!1}function Xt(e,t){if(t){if(e._directInactive=!1,Gt(e))return}else if(e._directInactive)return;if(e._inactive||null===e._inactive){e._inactive=!1;for(var n=0;n<e.$children.length;n++)Xt(e.$children[n]);Yt(e,"activated")}}function Yt(e,t){le();var n=e.$options[t],r=t+" hook";if(n)for(var i=0,o=n.length;i<o;i++)He(n[i],e,null,e,r);e._hasHookEvent&&e.$emit("hook:"+t),fe()}var Qt=[],en=[],tn={},nn=!1,rn=!1,on=0;var an=0,sn=Date.now;if(z&&!q){var cn=window.performance;cn&&"function"==typeof cn.now&&sn()>document.createEvent("Event").timeStamp&&(sn=function(){return cn.now()})}function un(){var e,t;for(an=sn(),rn=!0,Qt.sort(function(e,t){return e.id-t.id}),on=0;on<Qt.length;on++)(e=Qt[on]).before&&e.before(),t=e.id,tn[t]=null,e.run();var n=en.slice(),r=Qt.slice();on=Qt.length=en.length=0,tn={},nn=rn=!1,function(e){for(var t=0;t<e.length;t++)e[t]._inactive=!0,Xt(e[t],!0)}(n),function(e){var t=e.length;for(;t--;){var n=e[t],r=n.vm;r._watcher===n&&r._isMounted&&!r._isDestroyed&&Yt(r,"updated")}}(r),ne&&F.devtools&&ne.emit("flush")}var ln=0,fn=function(e,t,n,r,i){this.vm=e,i&&(e._watcher=this),e._watchers.push(this),r?(this.deep=!!r.deep,this.user=!!r.user,this.lazy=!!r.lazy,this.sync=!!r.sync,this.before=r.before):this.deep=this.user=this.lazy=this.sync=!1,this.cb=n,this.id=++ln,this.active=!0,this.dirty=this.lazy,this.deps=[],this.newDeps=[],this.depIds=new ie,this.newDepIds=new ie,this.expression="","function"==typeof t?this.getter=t:(this.getter=function(e){if(!H.test(e)){var t=e.split(".");return function(e){for(var n=0;n<t.length;n++){if(!e)return;e=e[t[n]]}return e}}}(t),this.getter||(this.getter=S)),this.value=this.lazy?void 0:this.get()};fn.prototype.get=function(){var e;le(this);var t=this.vm;try{e=this.getter.call(t,t)}catch(e){if(!this.user)throw e;Re(e,t,'getter for watcher "'+this.expression+'"')}finally{this.deep&&et(e),fe(),this.cleanupDeps()}return e},fn.prototype.addDep=function(e){var t=e.id;this.newDepIds.has(t)||(this.newDepIds.add(t),this.newDeps.push(e),this.depIds.has(t)||e.addSub(this))},fn.prototype.cleanupDeps=function(){for(var e=this.deps.length;e--;){var t=this.deps[e];this.newDepIds.has(t.id)||t.removeSub(this)}var n=this.depIds;this.depIds=this.newDepIds,this.newDepIds=n,this.newDepIds.clear(),n=this.deps,this.deps=this.newDeps,this.newDeps=n,this.newDeps.length=0},fn.prototype.update=function(){this.lazy?this.dirty=!0:this.sync?this.run():function(e){var t=e.id;if(null==tn[t]){if(tn[t]=!0,rn){for(var n=Qt.length-1;n>on&&Qt[n].id>e.id;)n--;Qt.splice(n+1,0,e)}else Qt.push(e);nn||(nn=!0,Ye(un))}}(this)},fn.prototype.run=function(){if(this.active){var e=this.get();if(e!==this.value||o(e)||this.deep){var t=this.value;if(this.value=e,this.user)try{this.cb.call(this.vm,e,t)}catch(e){Re(e,this.vm,'callback for watcher "'+this.expression+'"')}else this.cb.call(this.vm,e,t)}}},fn.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},fn.prototype.depend=function(){for(var e=this.deps.length;e--;)this.deps[e].depend()},fn.prototype.teardown=function(){if(this.active){this.vm._isBeingDestroyed||h(this.vm._watchers,this);for(var e=this.deps.length;e--;)this.deps[e].removeSub(this);this.active=!1}};var pn={enumerable:!0,configurable:!0,get:S,set:S};function dn(e,t,n){pn.get=function(){return this[t][n]},pn.set=function(e){this[t][n]=e},Object.defineProperty(e,n,pn)}function vn(e){e._watchers=[];var t=e.$options;t.props&&function(e,t){var n=e.$options.propsData||{},r=e._props={},i=e.$options._propKeys=[];e.$parent&&$e(!1);var o=function(o){i.push(o);var a=Me(o,t,n,e);xe(r,o,a),o in e||dn(e,"_props",o)};for(var a in t)o(a);$e(!0)}(e,t.props),t.methods&&function(e,t){e.$options.props;for(var n in t)e[n]="function"!=typeof t[n]?S:x(t[n],e)}(e,t.methods),t.data?function(e){var t=e.$options.data;s(t=e._data="function"==typeof t?function(e,t){le();try{return e.call(t,t)}catch(e){return Re(e,t,"data()"),{}}finally{fe()}}(t,e):t||{})||(t={});var n=Object.keys(t),r=e.$options.props,i=(e.$options.methods,n.length);for(;i--;){var o=n[i];r&&y(r,o)||(a=void 0,36!==(a=(o+"").charCodeAt(0))&&95!==a&&dn(e,"_data",o))}var a;Ce(t,!0)}(e):Ce(e._data={},!0),t.computed&&function(e,t){var n=e._computedWatchers=Object.create(null),r=te();for(var i in t){var o=t[i],a="function"==typeof o?o:o.get;r||(n[i]=new fn(e,a||S,S,hn)),i in e||mn(e,i,o)}}(e,t.computed),t.watch&&t.watch!==Y&&function(e,t){for(var n in t){var r=t[n];if(Array.isArray(r))for(var i=0;i<r.length;i++)_n(e,n,r[i]);else _n(e,n,r)}}(e,t.watch)}var hn={lazy:!0};function mn(e,t,n){var r=!te();"function"==typeof n?(pn.get=r?yn(t):gn(n),pn.set=S):(pn.get=n.get?r&&!1!==n.cache?yn(t):gn(n.get):S,pn.set=n.set||S),Object.defineProperty(e,t,pn)}function yn(e){return function(){var t=this._computedWatchers&&this._computedWatchers[e];if(t)return t.dirty&&t.evaluate(),ce.target&&t.depend(),t.value}}function gn(e){return function(){return e.call(this,this)}}function _n(e,t,n,r){return s(n)&&(r=n,n=n.handler),"string"==typeof n&&(n=e[n]),e.$watch(t,n,r)}var bn=0;function $n(e){var t=e.options;if(e.super){var n=$n(e.super);if(n!==e.superOptions){e.superOptions=n;var r=function(e){var t,n=e.options,r=e.sealedOptions;for(var i in n)n[i]!==r[i]&&(t||(t={}),t[i]=n[i]);return t}(e);r&&A(e.extendOptions,r),(t=e.options=De(n,e.extendOptions)).name&&(t.components[t.name]=e)}}return t}function wn(e){this._init(e)}function Cn(e){e.cid=0;var t=1;e.extend=function(e){e=e||{};var n=this,r=n.cid,i=e._Ctor||(e._Ctor={});if(i[r])return i[r];var o=e.name||n.options.name,a=function(e){this._init(e)};return(a.prototype=Object.create(n.prototype)).constructor=a,a.cid=t++,a.options=De(n.options,e),a.super=n,a.options.props&&function(e){var t=e.options.props;for(var n in t)dn(e.prototype,"_props",n)}(a),a.options.computed&&function(e){var t=e.options.computed;for(var n in t)mn(e.prototype,n,t[n])}(a),a.extend=n.extend,a.mixin=n.mixin,a.use=n.use,M.forEach(function(e){a[e]=n[e]}),o&&(a.options.components[o]=a),a.superOptions=n.options,a.extendOptions=e,a.sealedOptions=A({},a.options),i[r]=a,a}}function xn(e){return e&&(e.Ctor.options.name||e.tag)}function kn(e,t){return Array.isArray(e)?e.indexOf(t)>-1:"string"==typeof e?e.split(",").indexOf(t)>-1:(n=e,"[object RegExp]"===a.call(n)&&e.test(t));var n}function An(e,t){var n=e.cache,r=e.keys,i=e._vnode;for(var o in n){var a=n[o];if(a){var s=xn(a.componentOptions);s&&!t(s)&&On(n,o,r,i)}}}function On(e,t,n,r){var i=e[t];!i||r&&i.tag===r.tag||i.componentInstance.$destroy(),e[t]=null,h(n,t)}!function(t){t.prototype._init=function(t){var n=this;n._uid=bn++,n._isVue=!0,t&&t._isComponent?function(e,t){var n=e.$options=Object.create(e.constructor.options),r=t._parentVnode;n.parent=t.parent,n._parentVnode=r;var i=r.componentOptions;n.propsData=i.propsData,n._parentListeners=i.listeners,n._renderChildren=i.children,n._componentTag=i.tag,t.render&&(n.render=t.render,n.staticRenderFns=t.staticRenderFns)}(n,t):n.$options=De($n(n.constructor),t||{},n),n._renderProxy=n,n._self=n,function(e){var t=e.$options,n=t.parent;if(n&&!t.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(e)}e.$parent=n,e.$root=n?n.$root:e,e.$children=[],e.$refs={},e._watcher=null,e._inactive=null,e._directInactive=!1,e._isMounted=!1,e._isDestroyed=!1,e._isBeingDestroyed=!1}(n),function(e){e._events=Object.create(null),e._hasHookEvent=!1;var t=e.$options._parentListeners;t&&qt(e,t)}(n),function(t){t._vnode=null,t._staticTrees=null;var n=t.$options,r=t.$vnode=n._parentVnode,i=r&&r.context;t.$slots=ut(n._renderChildren,i),t.$scopedSlots=e,t._c=function(e,n,r,i){return Pt(t,e,n,r,i,!1)},t.$createElement=function(e,n,r,i){return Pt(t,e,n,r,i,!0)};var o=r&&r.data;xe(t,"$attrs",o&&o.attrs||e,null,!0),xe(t,"$listeners",n._parentListeners||e,null,!0)}(n),Yt(n,"beforeCreate"),function(e){var t=ct(e.$options.inject,e);t&&($e(!1),Object.keys(t).forEach(function(n){xe(e,n,t[n])}),$e(!0))}(n),vn(n),function(e){var t=e.$options.provide;t&&(e._provided="function"==typeof t?t.call(e):t)}(n),Yt(n,"created"),n.$options.el&&n.$mount(n.$options.el)}}(wn),function(e){var t={get:function(){return this._data}},n={get:function(){return this._props}};Object.defineProperty(e.prototype,"$data",t),Object.defineProperty(e.prototype,"$props",n),e.prototype.$set=ke,e.prototype.$delete=Ae,e.prototype.$watch=function(e,t,n){if(s(t))return _n(this,e,t,n);(n=n||{}).user=!0;var r=new fn(this,e,t,n);if(n.immediate)try{t.call(this,r.value)}catch(e){Re(e,this,'callback for immediate watcher "'+r.expression+'"')}return function(){r.teardown()}}}(wn),function(e){var t=/^hook:/;e.prototype.$on=function(e,n){var r=this;if(Array.isArray(e))for(var i=0,o=e.length;i<o;i++)r.$on(e[i],n);else(r._events[e]||(r._events[e]=[])).push(n),t.test(e)&&(r._hasHookEvent=!0);return r},e.prototype.$once=function(e,t){var n=this;function r(){n.$off(e,r),t.apply(n,arguments)}return r.fn=t,n.$on(e,r),n},e.prototype.$off=function(e,t){var n=this;if(!arguments.length)return n._events=Object.create(null),n;if(Array.isArray(e)){for(var r=0,i=e.length;r<i;r++)n.$off(e[r],t);return n}var o,a=n._events[e];if(!a)return n;if(!t)return n._events[e]=null,n;for(var s=a.length;s--;)if((o=a[s])===t||o.fn===t){a.splice(s,1);break}return n},e.prototype.$emit=function(e){var t=this._events[e];if(t){t=t.length>1?k(t):t;for(var n=k(arguments,1),r='event handler for "'+e+'"',i=0,o=t.length;i<o;i++)He(t[i],this,n,this,r)}return this}}(wn),function(e){e.prototype._update=function(e,t){var n=this,r=n.$el,i=n._vnode,o=Zt(n);n._vnode=e,n.$el=i?n.__patch__(i,e):n.__patch__(n.$el,e,t,!1),o(),r&&(r.__vue__=null),n.$el&&(n.$el.__vue__=n),n.$vnode&&n.$parent&&n.$vnode===n.$parent._vnode&&(n.$parent.$el=n.$el)},e.prototype.$forceUpdate=function(){this._watcher&&this._watcher.update()},e.prototype.$destroy=function(){var e=this;if(!e._isBeingDestroyed){Yt(e,"beforeDestroy"),e._isBeingDestroyed=!0;var t=e.$parent;!t||t._isBeingDestroyed||e.$options.abstract||h(t.$children,e),e._watcher&&e._watcher.teardown();for(var n=e._watchers.length;n--;)e._watchers[n].teardown();e._data.__ob__&&e._data.__ob__.vmCount--,e._isDestroyed=!0,e.__patch__(e._vnode,null),Yt(e,"destroyed"),e.$off(),e.$el&&(e.$el.__vue__=null),e.$vnode&&(e.$vnode.parent=null)}}}(wn),function(e){St(e.prototype),e.prototype.$nextTick=function(e){return Ye(e,this)},e.prototype._render=function(){var e,t=this,n=t.$options,r=n.render,i=n._parentVnode;i&&(t.$scopedSlots=ft(i.data.scopedSlots,t.$slots,t.$scopedSlots)),t.$vnode=i;try{Ht=t,e=r.call(t._renderProxy,t.$createElement)}catch(n){Re(n,t,"render"),e=t._vnode}finally{Ht=null}return Array.isArray(e)&&1===e.length&&(e=e[0]),e instanceof pe||(e=ve()),e.parent=i,e}}(wn);var Sn=[String,RegExp,Array],Tn={KeepAlive:{name:"keep-alive",abstract:!0,props:{include:Sn,exclude:Sn,max:[String,Number]},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var e in this.cache)On(this.cache,e,this.keys)},mounted:function(){var e=this;this.$watch("include",function(t){An(e,function(e){return kn(t,e)})}),this.$watch("exclude",function(t){An(e,function(e){return!kn(t,e)})})},render:function(){var e=this.$slots.default,t=zt(e),n=t&&t.componentOptions;if(n){var r=xn(n),i=this.include,o=this.exclude;if(i&&(!r||!kn(i,r))||o&&r&&kn(o,r))return t;var a=this.cache,s=this.keys,c=null==t.key?n.Ctor.cid+(n.tag?"::"+n.tag:""):t.key;a[c]?(t.componentInstance=a[c].componentInstance,h(s,c),s.push(c)):(a[c]=t,s.push(c),this.max&&s.length>parseInt(this.max)&&On(a,s[0],s,this._vnode)),t.data.keepAlive=!0}return t||e&&e[0]}}};!function(e){var t={get:function(){return F}};Object.defineProperty(e,"config",t),e.util={warn:ae,extend:A,mergeOptions:De,defineReactive:xe},e.set=ke,e.delete=Ae,e.nextTick=Ye,e.observable=function(e){return Ce(e),e},e.options=Object.create(null),M.forEach(function(t){e.options[t+"s"]=Object.create(null)}),e.options._base=e,A(e.options.components,Tn),function(e){e.use=function(e){var t=this._installedPlugins||(this._installedPlugins=[]);if(t.indexOf(e)>-1)return this;var n=k(arguments,1);return n.unshift(this),"function"==typeof e.install?e.install.apply(e,n):"function"==typeof e&&e.apply(null,n),t.push(e),this}}(e),function(e){e.mixin=function(e){return this.options=De(this.options,e),this}}(e),Cn(e),function(e){M.forEach(function(t){e[t]=function(e,n){return n?("component"===t&&s(n)&&(n.name=n.name||e,n=this.options._base.extend(n)),"directive"===t&&"function"==typeof n&&(n={bind:n,update:n}),this.options[t+"s"][e]=n,n):this.options[t+"s"][e]}})}(e)}(wn),Object.defineProperty(wn.prototype,"$isServer",{get:te}),Object.defineProperty(wn.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(wn,"FunctionalRenderContext",{value:Tt}),wn.version="2.6.11";var En=p("style,class"),Nn=p("input,textarea,option,select,progress"),jn=function(e,t,n){return"value"===n&&Nn(e)&&"button"!==t||"selected"===n&&"option"===e||"checked"===n&&"input"===e||"muted"===n&&"video"===e},Dn=p("contenteditable,draggable,spellcheck"),Ln=p("events,caret,typing,plaintext-only"),Mn=function(e,t){return Hn(t)||"false"===t?"false":"contenteditable"===e&&Ln(t)?t:"true"},In=p("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,translate,truespeed,typemustmatch,visible"),Fn="http://www.w3.org/1999/xlink",Pn=function(e){return":"===e.charAt(5)&&"xlink"===e.slice(0,5)},Rn=function(e){return Pn(e)?e.slice(6,e.length):""},Hn=function(e){return null==e||!1===e};function Bn(e){for(var t=e.data,r=e,i=e;n(i.componentInstance);)(i=i.componentInstance._vnode)&&i.data&&(t=Un(i.data,t));for(;n(r=r.parent);)r&&r.data&&(t=Un(t,r.data));return function(e,t){if(n(e)||n(t))return zn(e,Vn(t));return""}(t.staticClass,t.class)}function Un(e,t){return{staticClass:zn(e.staticClass,t.staticClass),class:n(e.class)?[e.class,t.class]:t.class}}function zn(e,t){return e?t?e+" "+t:e:t||""}function Vn(e){return Array.isArray(e)?function(e){for(var t,r="",i=0,o=e.length;i<o;i++)n(t=Vn(e[i]))&&""!==t&&(r&&(r+=" "),r+=t);return r}(e):o(e)?function(e){var t="";for(var n in e)e[n]&&(t&&(t+=" "),t+=n);return t}(e):"string"==typeof e?e:""}var Kn={svg:"http://www.w3.org/2000/svg",math:"http://www.w3.org/1998/Math/MathML"},Jn=p("html,body,base,head,link,meta,style,title,address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,menuitem,summary,content,element,shadow,template,blockquote,iframe,tfoot"),qn=p("svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view",!0),Wn=function(e){return Jn(e)||qn(e)};function Zn(e){return qn(e)?"svg":"math"===e?"math":void 0}var Gn=Object.create(null);var Xn=p("text,number,password,search,email,tel,url");function Yn(e){if("string"==typeof e){var t=document.querySelector(e);return t||document.createElement("div")}return e}var Qn=Object.freeze({createElement:function(e,t){var n=document.createElement(e);return"select"!==e?n:(t.data&&t.data.attrs&&void 0!==t.data.attrs.multiple&&n.setAttribute("multiple","multiple"),n)},createElementNS:function(e,t){return document.createElementNS(Kn[e],t)},createTextNode:function(e){return document.createTextNode(e)},createComment:function(e){return document.createComment(e)},insertBefore:function(e,t,n){e.insertBefore(t,n)},removeChild:function(e,t){e.removeChild(t)},appendChild:function(e,t){e.appendChild(t)},parentNode:function(e){return e.parentNode},nextSibling:function(e){return e.nextSibling},tagName:function(e){return e.tagName},setTextContent:function(e,t){e.textContent=t},setStyleScope:function(e,t){e.setAttribute(t,"")}}),er={create:function(e,t){tr(t)},update:function(e,t){e.data.ref!==t.data.ref&&(tr(e,!0),tr(t))},destroy:function(e){tr(e,!0)}};function tr(e,t){var r=e.data.ref;if(n(r)){var i=e.context,o=e.componentInstance||e.elm,a=i.$refs;t?Array.isArray(a[r])?h(a[r],o):a[r]===o&&(a[r]=void 0):e.data.refInFor?Array.isArray(a[r])?a[r].indexOf(o)<0&&a[r].push(o):a[r]=[o]:a[r]=o}}var nr=new pe("",{},[]),rr=["create","activate","update","remove","destroy"];function ir(e,i){return e.key===i.key&&(e.tag===i.tag&&e.isComment===i.isComment&&n(e.data)===n(i.data)&&function(e,t){if("input"!==e.tag)return!0;var r,i=n(r=e.data)&&n(r=r.attrs)&&r.type,o=n(r=t.data)&&n(r=r.attrs)&&r.type;return i===o||Xn(i)&&Xn(o)}(e,i)||r(e.isAsyncPlaceholder)&&e.asyncFactory===i.asyncFactory&&t(i.asyncFactory.error))}function or(e,t,r){var i,o,a={};for(i=t;i<=r;++i)n(o=e[i].key)&&(a[o]=i);return a}var ar={create:sr,update:sr,destroy:function(e){sr(e,nr)}};function sr(e,t){(e.data.directives||t.data.directives)&&function(e,t){var n,r,i,o=e===nr,a=t===nr,s=ur(e.data.directives,e.context),c=ur(t.data.directives,t.context),u=[],l=[];for(n in c)r=s[n],i=c[n],r?(i.oldValue=r.value,i.oldArg=r.arg,fr(i,"update",t,e),i.def&&i.def.componentUpdated&&l.push(i)):(fr(i,"bind",t,e),i.def&&i.def.inserted&&u.push(i));if(u.length){var f=function(){for(var n=0;n<u.length;n++)fr(u[n],"inserted",t,e)};o?it(t,"insert",f):f()}l.length&&it(t,"postpatch",function(){for(var n=0;n<l.length;n++)fr(l[n],"componentUpdated",t,e)});if(!o)for(n in s)c[n]||fr(s[n],"unbind",e,e,a)}(e,t)}var cr=Object.create(null);function ur(e,t){var n,r,i=Object.create(null);if(!e)return i;for(n=0;n<e.length;n++)(r=e[n]).modifiers||(r.modifiers=cr),i[lr(r)]=r,r.def=Le(t.$options,"directives",r.name);return i}function lr(e){return e.rawName||e.name+"."+Object.keys(e.modifiers||{}).join(".")}function fr(e,t,n,r,i){var o=e.def&&e.def[t];if(o)try{o(n.elm,e,n,r,i)}catch(r){Re(r,n.context,"directive "+e.name+" "+t+" hook")}}var pr=[er,ar];function dr(e,r){var i=r.componentOptions;if(!(n(i)&&!1===i.Ctor.options.inheritAttrs||t(e.data.attrs)&&t(r.data.attrs))){var o,a,s=r.elm,c=e.data.attrs||{},u=r.data.attrs||{};for(o in n(u.__ob__)&&(u=r.data.attrs=A({},u)),u)a=u[o],c[o]!==a&&vr(s,o,a);for(o in(q||Z)&&u.value!==c.value&&vr(s,"value",u.value),c)t(u[o])&&(Pn(o)?s.removeAttributeNS(Fn,Rn(o)):Dn(o)||s.removeAttribute(o))}}function vr(e,t,n){e.tagName.indexOf("-")>-1?hr(e,t,n):In(t)?Hn(n)?e.removeAttribute(t):(n="allowfullscreen"===t&&"EMBED"===e.tagName?"true":t,e.setAttribute(t,n)):Dn(t)?e.setAttribute(t,Mn(t,n)):Pn(t)?Hn(n)?e.removeAttributeNS(Fn,Rn(t)):e.setAttributeNS(Fn,t,n):hr(e,t,n)}function hr(e,t,n){if(Hn(n))e.removeAttribute(t);else{if(q&&!W&&"TEXTAREA"===e.tagName&&"placeholder"===t&&""!==n&&!e.__ieph){var r=function(t){t.stopImmediatePropagation(),e.removeEventListener("input",r)};e.addEventListener("input",r),e.__ieph=!0}e.setAttribute(t,n)}}var mr={create:dr,update:dr};function yr(e,r){var i=r.elm,o=r.data,a=e.data;if(!(t(o.staticClass)&&t(o.class)&&(t(a)||t(a.staticClass)&&t(a.class)))){var s=Bn(r),c=i._transitionClasses;n(c)&&(s=zn(s,Vn(c))),s!==i._prevClass&&(i.setAttribute("class",s),i._prevClass=s)}}var gr,_r,br,$r,wr,Cr,xr={create:yr,update:yr},kr=/[\w).+\-_$\]]/;function Ar(e){var t,n,r,i,o,a=!1,s=!1,c=!1,u=!1,l=0,f=0,p=0,d=0;for(r=0;r<e.length;r++)if(n=t,t=e.charCodeAt(r),a)39===t&&92!==n&&(a=!1);else if(s)34===t&&92!==n&&(s=!1);else if(c)96===t&&92!==n&&(c=!1);else if(u)47===t&&92!==n&&(u=!1);else if(124!==t||124===e.charCodeAt(r+1)||124===e.charCodeAt(r-1)||l||f||p){switch(t){case 34:s=!0;break;case 39:a=!0;break;case 96:c=!0;break;case 40:p++;break;case 41:p--;break;case 91:f++;break;case 93:f--;break;case 123:l++;break;case 125:l--}if(47===t){for(var v=r-1,h=void 0;v>=0&&" "===(h=e.charAt(v));v--);h&&kr.test(h)||(u=!0)}}else void 0===i?(d=r+1,i=e.slice(0,r).trim()):m();function m(){(o||(o=[])).push(e.slice(d,r).trim()),d=r+1}if(void 0===i?i=e.slice(0,r).trim():0!==d&&m(),o)for(r=0;r<o.length;r++)i=Or(i,o[r]);return i}function Or(e,t){var n=t.indexOf("(");if(n<0)return'_f("'+t+'")('+e+")";var r=t.slice(0,n),i=t.slice(n+1);return'_f("'+r+'")('+e+(")"!==i?","+i:i)}function Sr(e,t){console.error("[Vue compiler]: "+e)}function Tr(e,t){return e?e.map(function(e){return e[t]}).filter(function(e){return e}):[]}function Er(e,t,n,r,i){(e.props||(e.props=[])).push(Rr({name:t,value:n,dynamic:i},r)),e.plain=!1}function Nr(e,t,n,r,i){(i?e.dynamicAttrs||(e.dynamicAttrs=[]):e.attrs||(e.attrs=[])).push(Rr({name:t,value:n,dynamic:i},r)),e.plain=!1}function jr(e,t,n,r){e.attrsMap[t]=n,e.attrsList.push(Rr({name:t,value:n},r))}function Dr(e,t,n,r,i,o,a,s){(e.directives||(e.directives=[])).push(Rr({name:t,rawName:n,value:r,arg:i,isDynamicArg:o,modifiers:a},s)),e.plain=!1}function Lr(e,t,n){return n?"_p("+t+',"'+e+'")':e+t}function Mr(t,n,r,i,o,a,s,c){var u;(i=i||e).right?c?n="("+n+")==='click'?'contextmenu':("+n+")":"click"===n&&(n="contextmenu",delete i.right):i.middle&&(c?n="("+n+")==='click'?'mouseup':("+n+")":"click"===n&&(n="mouseup")),i.capture&&(delete i.capture,n=Lr("!",n,c)),i.once&&(delete i.once,n=Lr("~",n,c)),i.passive&&(delete i.passive,n=Lr("&",n,c)),i.native?(delete i.native,u=t.nativeEvents||(t.nativeEvents={})):u=t.events||(t.events={});var l=Rr({value:r.trim(),dynamic:c},s);i!==e&&(l.modifiers=i);var f=u[n];Array.isArray(f)?o?f.unshift(l):f.push(l):u[n]=f?o?[l,f]:[f,l]:l,t.plain=!1}function Ir(e,t,n){var r=Fr(e,":"+t)||Fr(e,"v-bind:"+t);if(null!=r)return Ar(r);if(!1!==n){var i=Fr(e,t);if(null!=i)return JSON.stringify(i)}}function Fr(e,t,n){var r;if(null!=(r=e.attrsMap[t]))for(var i=e.attrsList,o=0,a=i.length;o<a;o++)if(i[o].name===t){i.splice(o,1);break}return n&&delete e.attrsMap[t],r}function Pr(e,t){for(var n=e.attrsList,r=0,i=n.length;r<i;r++){var o=n[r];if(t.test(o.name))return n.splice(r,1),o}}function Rr(e,t){return t&&(null!=t.start&&(e.start=t.start),null!=t.end&&(e.end=t.end)),e}function Hr(e,t,n){var r=n||{},i=r.number,o="$$v";r.trim&&(o="(typeof $$v === 'string'? $$v.trim(): $$v)"),i&&(o="_n("+o+")");var a=Br(t,o);e.model={value:"("+t+")",expression:JSON.stringify(t),callback:"function ($$v) {"+a+"}"}}function Br(e,t){var n=function(e){if(e=e.trim(),gr=e.length,e.indexOf("[")<0||e.lastIndexOf("]")<gr-1)return($r=e.lastIndexOf("."))>-1?{exp:e.slice(0,$r),key:'"'+e.slice($r+1)+'"'}:{exp:e,key:null};_r=e,$r=wr=Cr=0;for(;!zr();)Vr(br=Ur())?Jr(br):91===br&&Kr(br);return{exp:e.slice(0,wr),key:e.slice(wr+1,Cr)}}(e);return null===n.key?e+"="+t:"$set("+n.exp+", "+n.key+", "+t+")"}function Ur(){return _r.charCodeAt(++$r)}function zr(){return $r>=gr}function Vr(e){return 34===e||39===e}function Kr(e){var t=1;for(wr=$r;!zr();)if(Vr(e=Ur()))Jr(e);else if(91===e&&t++,93===e&&t--,0===t){Cr=$r;break}}function Jr(e){for(var t=e;!zr()&&(e=Ur())!==t;);}var qr,Wr="__r",Zr="__c";function Gr(e,t,n){var r=qr;return function i(){null!==t.apply(null,arguments)&&Qr(e,i,n,r)}}var Xr=Ve&&!(X&&Number(X[1])<=53);function Yr(e,t,n,r){if(Xr){var i=an,o=t;t=o._wrapper=function(e){if(e.target===e.currentTarget||e.timeStamp>=i||e.timeStamp<=0||e.target.ownerDocument!==document)return o.apply(this,arguments)}}qr.addEventListener(e,t,Q?{capture:n,passive:r}:n)}function Qr(e,t,n,r){(r||qr).removeEventListener(e,t._wrapper||t,n)}function ei(e,r){if(!t(e.data.on)||!t(r.data.on)){var i=r.data.on||{},o=e.data.on||{};qr=r.elm,function(e){if(n(e[Wr])){var t=q?"change":"input";e[t]=[].concat(e[Wr],e[t]||[]),delete e[Wr]}n(e[Zr])&&(e.change=[].concat(e[Zr],e.change||[]),delete e[Zr])}(i),rt(i,o,Yr,Qr,Gr,r.context),qr=void 0}}var ti,ni={create:ei,update:ei};function ri(e,r){if(!t(e.data.domProps)||!t(r.data.domProps)){var i,o,a=r.elm,s=e.data.domProps||{},c=r.data.domProps||{};for(i in n(c.__ob__)&&(c=r.data.domProps=A({},c)),s)i in c||(a[i]="");for(i in c){if(o=c[i],"textContent"===i||"innerHTML"===i){if(r.children&&(r.children.length=0),o===s[i])continue;1===a.childNodes.length&&a.removeChild(a.childNodes[0])}if("value"===i&&"PROGRESS"!==a.tagName){a._value=o;var u=t(o)?"":String(o);ii(a,u)&&(a.value=u)}else if("innerHTML"===i&&qn(a.tagName)&&t(a.innerHTML)){(ti=ti||document.createElement("div")).innerHTML="<svg>"+o+"</svg>";for(var l=ti.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;l.firstChild;)a.appendChild(l.firstChild)}else if(o!==s[i])try{a[i]=o}catch(e){}}}}function ii(e,t){return!e.composing&&("OPTION"===e.tagName||function(e,t){var n=!0;try{n=document.activeElement!==e}catch(e){}return n&&e.value!==t}(e,t)||function(e,t){var r=e.value,i=e._vModifiers;if(n(i)){if(i.number)return f(r)!==f(t);if(i.trim)return r.trim()!==t.trim()}return r!==t}(e,t))}var oi={create:ri,update:ri},ai=g(function(e){var t={},n=/:(.+)/;return e.split(/;(?![^(]*\))/g).forEach(function(e){if(e){var r=e.split(n);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t});function si(e){var t=ci(e.style);return e.staticStyle?A(e.staticStyle,t):t}function ci(e){return Array.isArray(e)?O(e):"string"==typeof e?ai(e):e}var ui,li=/^--/,fi=/\s*!important$/,pi=function(e,t,n){if(li.test(t))e.style.setProperty(t,n);else if(fi.test(n))e.style.setProperty(C(t),n.replace(fi,""),"important");else{var r=vi(t);if(Array.isArray(n))for(var i=0,o=n.length;i<o;i++)e.style[r]=n[i];else e.style[r]=n}},di=["Webkit","Moz","ms"],vi=g(function(e){if(ui=ui||document.createElement("div").style,"filter"!==(e=b(e))&&e in ui)return e;for(var t=e.charAt(0).toUpperCase()+e.slice(1),n=0;n<di.length;n++){var r=di[n]+t;if(r in ui)return r}});function hi(e,r){var i=r.data,o=e.data;if(!(t(i.staticStyle)&&t(i.style)&&t(o.staticStyle)&&t(o.style))){var a,s,c=r.elm,u=o.staticStyle,l=o.normalizedStyle||o.style||{},f=u||l,p=ci(r.data.style)||{};r.data.normalizedStyle=n(p.__ob__)?A({},p):p;var d=function(e,t){var n,r={};if(t)for(var i=e;i.componentInstance;)(i=i.componentInstance._vnode)&&i.data&&(n=si(i.data))&&A(r,n);(n=si(e.data))&&A(r,n);for(var o=e;o=o.parent;)o.data&&(n=si(o.data))&&A(r,n);return r}(r,!0);for(s in f)t(d[s])&&pi(c,s,"");for(s in d)(a=d[s])!==f[s]&&pi(c,s,null==a?"":a)}}var mi={create:hi,update:hi},yi=/\s+/;function gi(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(yi).forEach(function(t){return e.classList.add(t)}):e.classList.add(t);else{var n=" "+(e.getAttribute("class")||"")+" ";n.indexOf(" "+t+" ")<0&&e.setAttribute("class",(n+t).trim())}}function _i(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(yi).forEach(function(t){return e.classList.remove(t)}):e.classList.remove(t),e.classList.length||e.removeAttribute("class");else{for(var n=" "+(e.getAttribute("class")||"")+" ",r=" "+t+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?e.setAttribute("class",n):e.removeAttribute("class")}}function bi(e){if(e){if("object"==typeof e){var t={};return!1!==e.css&&A(t,$i(e.name||"v")),A(t,e),t}return"string"==typeof e?$i(e):void 0}}var $i=g(function(e){return{enterClass:e+"-enter",enterToClass:e+"-enter-to",enterActiveClass:e+"-enter-active",leaveClass:e+"-leave",leaveToClass:e+"-leave-to",leaveActiveClass:e+"-leave-active"}}),wi=z&&!W,Ci="transition",xi="animation",ki="transition",Ai="transitionend",Oi="animation",Si="animationend";wi&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(ki="WebkitTransition",Ai="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(Oi="WebkitAnimation",Si="webkitAnimationEnd"));var Ti=z?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(e){return e()};function Ei(e){Ti(function(){Ti(e)})}function Ni(e,t){var n=e._transitionClasses||(e._transitionClasses=[]);n.indexOf(t)<0&&(n.push(t),gi(e,t))}function ji(e,t){e._transitionClasses&&h(e._transitionClasses,t),_i(e,t)}function Di(e,t,n){var r=Mi(e,t),i=r.type,o=r.timeout,a=r.propCount;if(!i)return n();var s=i===Ci?Ai:Si,c=0,u=function(){e.removeEventListener(s,l),n()},l=function(t){t.target===e&&++c>=a&&u()};setTimeout(function(){c<a&&u()},o+1),e.addEventListener(s,l)}var Li=/\b(transform|all)(,|$)/;function Mi(e,t){var n,r=window.getComputedStyle(e),i=(r[ki+"Delay"]||"").split(", "),o=(r[ki+"Duration"]||"").split(", "),a=Ii(i,o),s=(r[Oi+"Delay"]||"").split(", "),c=(r[Oi+"Duration"]||"").split(", "),u=Ii(s,c),l=0,f=0;return t===Ci?a>0&&(n=Ci,l=a,f=o.length):t===xi?u>0&&(n=xi,l=u,f=c.length):f=(n=(l=Math.max(a,u))>0?a>u?Ci:xi:null)?n===Ci?o.length:c.length:0,{type:n,timeout:l,propCount:f,hasTransform:n===Ci&&Li.test(r[ki+"Property"])}}function Ii(e,t){for(;e.length<t.length;)e=e.concat(e);return Math.max.apply(null,t.map(function(t,n){return Fi(t)+Fi(e[n])}))}function Fi(e){return 1e3*Number(e.slice(0,-1).replace(",","."))}function Pi(e,r){var i=e.elm;n(i._leaveCb)&&(i._leaveCb.cancelled=!0,i._leaveCb());var a=bi(e.data.transition);if(!t(a)&&!n(i._enterCb)&&1===i.nodeType){for(var s=a.css,c=a.type,u=a.enterClass,l=a.enterToClass,p=a.enterActiveClass,d=a.appearClass,v=a.appearToClass,h=a.appearActiveClass,m=a.beforeEnter,y=a.enter,g=a.afterEnter,_=a.enterCancelled,b=a.beforeAppear,$=a.appear,w=a.afterAppear,C=a.appearCancelled,x=a.duration,k=Wt,A=Wt.$vnode;A&&A.parent;)k=A.context,A=A.parent;var O=!k._isMounted||!e.isRootInsert;if(!O||$||""===$){var S=O&&d?d:u,T=O&&h?h:p,E=O&&v?v:l,N=O&&b||m,j=O&&"function"==typeof $?$:y,L=O&&w||g,M=O&&C||_,I=f(o(x)?x.enter:x),F=!1!==s&&!W,P=Bi(j),R=i._enterCb=D(function(){F&&(ji(i,E),ji(i,T)),R.cancelled?(F&&ji(i,S),M&&M(i)):L&&L(i),i._enterCb=null});e.data.show||it(e,"insert",function(){var t=i.parentNode,n=t&&t._pending&&t._pending[e.key];n&&n.tag===e.tag&&n.elm._leaveCb&&n.elm._leaveCb(),j&&j(i,R)}),N&&N(i),F&&(Ni(i,S),Ni(i,T),Ei(function(){ji(i,S),R.cancelled||(Ni(i,E),P||(Hi(I)?setTimeout(R,I):Di(i,c,R)))})),e.data.show&&(r&&r(),j&&j(i,R)),F||P||R()}}}function Ri(e,r){var i=e.elm;n(i._enterCb)&&(i._enterCb.cancelled=!0,i._enterCb());var a=bi(e.data.transition);if(t(a)||1!==i.nodeType)return r();if(!n(i._leaveCb)){var s=a.css,c=a.type,u=a.leaveClass,l=a.leaveToClass,p=a.leaveActiveClass,d=a.beforeLeave,v=a.leave,h=a.afterLeave,m=a.leaveCancelled,y=a.delayLeave,g=a.duration,_=!1!==s&&!W,b=Bi(v),$=f(o(g)?g.leave:g),w=i._leaveCb=D(function(){i.parentNode&&i.parentNode._pending&&(i.parentNode._pending[e.key]=null),_&&(ji(i,l),ji(i,p)),w.cancelled?(_&&ji(i,u),m&&m(i)):(r(),h&&h(i)),i._leaveCb=null});y?y(C):C()}function C(){w.cancelled||(!e.data.show&&i.parentNode&&((i.parentNode._pending||(i.parentNode._pending={}))[e.key]=e),d&&d(i),_&&(Ni(i,u),Ni(i,p),Ei(function(){ji(i,u),w.cancelled||(Ni(i,l),b||(Hi($)?setTimeout(w,$):Di(i,c,w)))})),v&&v(i,w),_||b||w())}}function Hi(e){return"number"==typeof e&&!isNaN(e)}function Bi(e){if(t(e))return!1;var r=e.fns;return n(r)?Bi(Array.isArray(r)?r[0]:r):(e._length||e.length)>1}function Ui(e,t){!0!==t.data.show&&Pi(t)}var zi=function(e){var o,a,s={},c=e.modules,u=e.nodeOps;for(o=0;o<rr.length;++o)for(s[rr[o]]=[],a=0;a<c.length;++a)n(c[a][rr[o]])&&s[rr[o]].push(c[a][rr[o]]);function l(e){var t=u.parentNode(e);n(t)&&u.removeChild(t,e)}function f(e,t,i,o,a,c,l){if(n(e.elm)&&n(c)&&(e=c[l]=me(e)),e.isRootInsert=!a,!function(e,t,i,o){var a=e.data;if(n(a)){var c=n(e.componentInstance)&&a.keepAlive;if(n(a=a.hook)&&n(a=a.init)&&a(e,!1),n(e.componentInstance))return d(e,t),v(i,e.elm,o),r(c)&&function(e,t,r,i){for(var o,a=e;a.componentInstance;)if(a=a.componentInstance._vnode,n(o=a.data)&&n(o=o.transition)){for(o=0;o<s.activate.length;++o)s.activate[o](nr,a);t.push(a);break}v(r,e.elm,i)}(e,t,i,o),!0}}(e,t,i,o)){var f=e.data,p=e.children,m=e.tag;n(m)?(e.elm=e.ns?u.createElementNS(e.ns,m):u.createElement(m,e),g(e),h(e,p,t),n(f)&&y(e,t),v(i,e.elm,o)):r(e.isComment)?(e.elm=u.createComment(e.text),v(i,e.elm,o)):(e.elm=u.createTextNode(e.text),v(i,e.elm,o))}}function d(e,t){n(e.data.pendingInsert)&&(t.push.apply(t,e.data.pendingInsert),e.data.pendingInsert=null),e.elm=e.componentInstance.$el,m(e)?(y(e,t),g(e)):(tr(e),t.push(e))}function v(e,t,r){n(e)&&(n(r)?u.parentNode(r)===e&&u.insertBefore(e,t,r):u.appendChild(e,t))}function h(e,t,n){if(Array.isArray(t))for(var r=0;r<t.length;++r)f(t[r],n,e.elm,null,!0,t,r);else i(e.text)&&u.appendChild(e.elm,u.createTextNode(String(e.text)))}function m(e){for(;e.componentInstance;)e=e.componentInstance._vnode;return n(e.tag)}function y(e,t){for(var r=0;r<s.create.length;++r)s.create[r](nr,e);n(o=e.data.hook)&&(n(o.create)&&o.create(nr,e),n(o.insert)&&t.push(e))}function g(e){var t;if(n(t=e.fnScopeId))u.setStyleScope(e.elm,t);else for(var r=e;r;)n(t=r.context)&&n(t=t.$options._scopeId)&&u.setStyleScope(e.elm,t),r=r.parent;n(t=Wt)&&t!==e.context&&t!==e.fnContext&&n(t=t.$options._scopeId)&&u.setStyleScope(e.elm,t)}function _(e,t,n,r,i,o){for(;r<=i;++r)f(n[r],o,e,t,!1,n,r)}function b(e){var t,r,i=e.data;if(n(i))for(n(t=i.hook)&&n(t=t.destroy)&&t(e),t=0;t<s.destroy.length;++t)s.destroy[t](e);if(n(t=e.children))for(r=0;r<e.children.length;++r)b(e.children[r])}function $(e,t,r){for(;t<=r;++t){var i=e[t];n(i)&&(n(i.tag)?(w(i),b(i)):l(i.elm))}}function w(e,t){if(n(t)||n(e.data)){var r,i=s.remove.length+1;for(n(t)?t.listeners+=i:t=function(e,t){function n(){0==--n.listeners&&l(e)}return n.listeners=t,n}(e.elm,i),n(r=e.componentInstance)&&n(r=r._vnode)&&n(r.data)&&w(r,t),r=0;r<s.remove.length;++r)s.remove[r](e,t);n(r=e.data.hook)&&n(r=r.remove)?r(e,t):t()}else l(e.elm)}function C(e,t,r,i){for(var o=r;o<i;o++){var a=t[o];if(n(a)&&ir(e,a))return o}}function x(e,i,o,a,c,l){if(e!==i){n(i.elm)&&n(a)&&(i=a[c]=me(i));var p=i.elm=e.elm;if(r(e.isAsyncPlaceholder))n(i.asyncFactory.resolved)?O(e.elm,i,o):i.isAsyncPlaceholder=!0;else if(r(i.isStatic)&&r(e.isStatic)&&i.key===e.key&&(r(i.isCloned)||r(i.isOnce)))i.componentInstance=e.componentInstance;else{var d,v=i.data;n(v)&&n(d=v.hook)&&n(d=d.prepatch)&&d(e,i);var h=e.children,y=i.children;if(n(v)&&m(i)){for(d=0;d<s.update.length;++d)s.update[d](e,i);n(d=v.hook)&&n(d=d.update)&&d(e,i)}t(i.text)?n(h)&&n(y)?h!==y&&function(e,r,i,o,a){for(var s,c,l,p=0,d=0,v=r.length-1,h=r[0],m=r[v],y=i.length-1,g=i[0],b=i[y],w=!a;p<=v&&d<=y;)t(h)?h=r[++p]:t(m)?m=r[--v]:ir(h,g)?(x(h,g,o,i,d),h=r[++p],g=i[++d]):ir(m,b)?(x(m,b,o,i,y),m=r[--v],b=i[--y]):ir(h,b)?(x(h,b,o,i,y),w&&u.insertBefore(e,h.elm,u.nextSibling(m.elm)),h=r[++p],b=i[--y]):ir(m,g)?(x(m,g,o,i,d),w&&u.insertBefore(e,m.elm,h.elm),m=r[--v],g=i[++d]):(t(s)&&(s=or(r,p,v)),t(c=n(g.key)?s[g.key]:C(g,r,p,v))?f(g,o,e,h.elm,!1,i,d):ir(l=r[c],g)?(x(l,g,o,i,d),r[c]=void 0,w&&u.insertBefore(e,l.elm,h.elm)):f(g,o,e,h.elm,!1,i,d),g=i[++d]);p>v?_(e,t(i[y+1])?null:i[y+1].elm,i,d,y,o):d>y&&$(r,p,v)}(p,h,y,o,l):n(y)?(n(e.text)&&u.setTextContent(p,""),_(p,null,y,0,y.length-1,o)):n(h)?$(h,0,h.length-1):n(e.text)&&u.setTextContent(p,""):e.text!==i.text&&u.setTextContent(p,i.text),n(v)&&n(d=v.hook)&&n(d=d.postpatch)&&d(e,i)}}}function k(e,t,i){if(r(i)&&n(e.parent))e.parent.data.pendingInsert=t;else for(var o=0;o<t.length;++o)t[o].data.hook.insert(t[o])}var A=p("attrs,class,staticClass,staticStyle,key");function O(e,t,i,o){var a,s=t.tag,c=t.data,u=t.children;if(o=o||c&&c.pre,t.elm=e,r(t.isComment)&&n(t.asyncFactory))return t.isAsyncPlaceholder=!0,!0;if(n(c)&&(n(a=c.hook)&&n(a=a.init)&&a(t,!0),n(a=t.componentInstance)))return d(t,i),!0;if(n(s)){if(n(u))if(e.hasChildNodes())if(n(a=c)&&n(a=a.domProps)&&n(a=a.innerHTML)){if(a!==e.innerHTML)return!1}else{for(var l=!0,f=e.firstChild,p=0;p<u.length;p++){if(!f||!O(f,u[p],i,o)){l=!1;break}f=f.nextSibling}if(!l||f)return!1}else h(t,u,i);if(n(c)){var v=!1;for(var m in c)if(!A(m)){v=!0,y(t,i);break}!v&&c.class&&et(c.class)}}else e.data!==t.text&&(e.data=t.text);return!0}return function(e,i,o,a){if(!t(i)){var c,l=!1,p=[];if(t(e))l=!0,f(i,p);else{var d=n(e.nodeType);if(!d&&ir(e,i))x(e,i,p,null,null,a);else{if(d){if(1===e.nodeType&&e.hasAttribute(L)&&(e.removeAttribute(L),o=!0),r(o)&&O(e,i,p))return k(i,p,!0),e;c=e,e=new pe(u.tagName(c).toLowerCase(),{},[],void 0,c)}var v=e.elm,h=u.parentNode(v);if(f(i,p,v._leaveCb?null:h,u.nextSibling(v)),n(i.parent))for(var y=i.parent,g=m(i);y;){for(var _=0;_<s.destroy.length;++_)s.destroy[_](y);if(y.elm=i.elm,g){for(var w=0;w<s.create.length;++w)s.create[w](nr,y);var C=y.data.hook.insert;if(C.merged)for(var A=1;A<C.fns.length;A++)C.fns[A]()}else tr(y);y=y.parent}n(h)?$([e],0,0):n(e.tag)&&b(e)}}return k(i,p,l),i.elm}n(e)&&b(e)}}({nodeOps:Qn,modules:[mr,xr,ni,oi,mi,z?{create:Ui,activate:Ui,remove:function(e,t){!0!==e.data.show?Ri(e,t):t()}}:{}].concat(pr)});W&&document.addEventListener("selectionchange",function(){var e=document.activeElement;e&&e.vmodel&&Xi(e,"input")});var Vi={inserted:function(e,t,n,r){"select"===n.tag?(r.elm&&!r.elm._vOptions?it(n,"postpatch",function(){Vi.componentUpdated(e,t,n)}):Ki(e,t,n.context),e._vOptions=[].map.call(e.options,Wi)):("textarea"===n.tag||Xn(e.type))&&(e._vModifiers=t.modifiers,t.modifiers.lazy||(e.addEventListener("compositionstart",Zi),e.addEventListener("compositionend",Gi),e.addEventListener("change",Gi),W&&(e.vmodel=!0)))},componentUpdated:function(e,t,n){if("select"===n.tag){Ki(e,t,n.context);var r=e._vOptions,i=e._vOptions=[].map.call(e.options,Wi);if(i.some(function(e,t){return!N(e,r[t])}))(e.multiple?t.value.some(function(e){return qi(e,i)}):t.value!==t.oldValue&&qi(t.value,i))&&Xi(e,"change")}}};function Ki(e,t,n){Ji(e,t,n),(q||Z)&&setTimeout(function(){Ji(e,t,n)},0)}function Ji(e,t,n){var r=t.value,i=e.multiple;if(!i||Array.isArray(r)){for(var o,a,s=0,c=e.options.length;s<c;s++)if(a=e.options[s],i)o=j(r,Wi(a))>-1,a.selected!==o&&(a.selected=o);else if(N(Wi(a),r))return void(e.selectedIndex!==s&&(e.selectedIndex=s));i||(e.selectedIndex=-1)}}function qi(e,t){return t.every(function(t){return!N(t,e)})}function Wi(e){return"_value"in e?e._value:e.value}function Zi(e){e.target.composing=!0}function Gi(e){e.target.composing&&(e.target.composing=!1,Xi(e.target,"input"))}function Xi(e,t){var n=document.createEvent("HTMLEvents");n.initEvent(t,!0,!0),e.dispatchEvent(n)}function Yi(e){return!e.componentInstance||e.data&&e.data.transition?e:Yi(e.componentInstance._vnode)}var Qi={model:Vi,show:{bind:function(e,t,n){var r=t.value,i=(n=Yi(n)).data&&n.data.transition,o=e.__vOriginalDisplay="none"===e.style.display?"":e.style.display;r&&i?(n.data.show=!0,Pi(n,function(){e.style.display=o})):e.style.display=r?o:"none"},update:function(e,t,n){var r=t.value;!r!=!t.oldValue&&((n=Yi(n)).data&&n.data.transition?(n.data.show=!0,r?Pi(n,function(){e.style.display=e.__vOriginalDisplay}):Ri(n,function(){e.style.display="none"})):e.style.display=r?e.__vOriginalDisplay:"none")},unbind:function(e,t,n,r,i){i||(e.style.display=e.__vOriginalDisplay)}}},eo={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function to(e){var t=e&&e.componentOptions;return t&&t.Ctor.options.abstract?to(zt(t.children)):e}function no(e){var t={},n=e.$options;for(var r in n.propsData)t[r]=e[r];var i=n._parentListeners;for(var o in i)t[b(o)]=i[o];return t}function ro(e,t){if(/\d-keep-alive$/.test(t.tag))return e("keep-alive",{props:t.componentOptions.propsData})}var io=function(e){return e.tag||Ut(e)},oo=function(e){return"show"===e.name},ao={name:"transition",props:eo,abstract:!0,render:function(e){var t=this,n=this.$slots.default;if(n&&(n=n.filter(io)).length){var r=this.mode,o=n[0];if(function(e){for(;e=e.parent;)if(e.data.transition)return!0}(this.$vnode))return o;var a=to(o);if(!a)return o;if(this._leaving)return ro(e,o);var s="__transition-"+this._uid+"-";a.key=null==a.key?a.isComment?s+"comment":s+a.tag:i(a.key)?0===String(a.key).indexOf(s)?a.key:s+a.key:a.key;var c=(a.data||(a.data={})).transition=no(this),u=this._vnode,l=to(u);if(a.data.directives&&a.data.directives.some(oo)&&(a.data.show=!0),l&&l.data&&!function(e,t){return t.key===e.key&&t.tag===e.tag}(a,l)&&!Ut(l)&&(!l.componentInstance||!l.componentInstance._vnode.isComment)){var f=l.data.transition=A({},c);if("out-in"===r)return this._leaving=!0,it(f,"afterLeave",function(){t._leaving=!1,t.$forceUpdate()}),ro(e,o);if("in-out"===r){if(Ut(a))return u;var p,d=function(){p()};it(c,"afterEnter",d),it(c,"enterCancelled",d),it(f,"delayLeave",function(e){p=e})}}return o}}},so=A({tag:String,moveClass:String},eo);function co(e){e.elm._moveCb&&e.elm._moveCb(),e.elm._enterCb&&e.elm._enterCb()}function uo(e){e.data.newPos=e.elm.getBoundingClientRect()}function lo(e){var t=e.data.pos,n=e.data.newPos,r=t.left-n.left,i=t.top-n.top;if(r||i){e.data.moved=!0;var o=e.elm.style;o.transform=o.WebkitTransform="translate("+r+"px,"+i+"px)",o.transitionDuration="0s"}}delete so.mode;var fo={Transition:ao,TransitionGroup:{props:so,beforeMount:function(){var e=this,t=this._update;this._update=function(n,r){var i=Zt(e);e.__patch__(e._vnode,e.kept,!1,!0),e._vnode=e.kept,i(),t.call(e,n,r)}},render:function(e){for(var t=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,i=this.$slots.default||[],o=this.children=[],a=no(this),s=0;s<i.length;s++){var c=i[s];c.tag&&null!=c.key&&0!==String(c.key).indexOf("__vlist")&&(o.push(c),n[c.key]=c,(c.data||(c.data={})).transition=a)}if(r){for(var u=[],l=[],f=0;f<r.length;f++){var p=r[f];p.data.transition=a,p.data.pos=p.elm.getBoundingClientRect(),n[p.key]?u.push(p):l.push(p)}this.kept=e(t,null,u),this.removed=l}return e(t,null,o)},updated:function(){var e=this.prevChildren,t=this.moveClass||(this.name||"v")+"-move";e.length&&this.hasMove(e[0].elm,t)&&(e.forEach(co),e.forEach(uo),e.forEach(lo),this._reflow=document.body.offsetHeight,e.forEach(function(e){if(e.data.moved){var n=e.elm,r=n.style;Ni(n,t),r.transform=r.WebkitTransform=r.transitionDuration="",n.addEventListener(Ai,n._moveCb=function e(r){r&&r.target!==n||r&&!/transform$/.test(r.propertyName)||(n.removeEventListener(Ai,e),n._moveCb=null,ji(n,t))})}}))},methods:{hasMove:function(e,t){if(!wi)return!1;if(this._hasMove)return this._hasMove;var n=e.cloneNode();e._transitionClasses&&e._transitionClasses.forEach(function(e){_i(n,e)}),gi(n,t),n.style.display="none",this.$el.appendChild(n);var r=Mi(n);return this.$el.removeChild(n),this._hasMove=r.hasTransform}}}};wn.config.mustUseProp=jn,wn.config.isReservedTag=Wn,wn.config.isReservedAttr=En,wn.config.getTagNamespace=Zn,wn.config.isUnknownElement=function(e){if(!z)return!0;if(Wn(e))return!1;if(e=e.toLowerCase(),null!=Gn[e])return Gn[e];var t=document.createElement(e);return e.indexOf("-")>-1?Gn[e]=t.constructor===window.HTMLUnknownElement||t.constructor===window.HTMLElement:Gn[e]=/HTMLUnknownElement/.test(t.toString())},A(wn.options.directives,Qi),A(wn.options.components,fo),wn.prototype.__patch__=z?zi:S,wn.prototype.$mount=function(e,t){return function(e,t,n){var r;return e.$el=t,e.$options.render||(e.$options.render=ve),Yt(e,"beforeMount"),r=function(){e._update(e._render(),n)},new fn(e,r,S,{before:function(){e._isMounted&&!e._isDestroyed&&Yt(e,"beforeUpdate")}},!0),n=!1,null==e.$vnode&&(e._isMounted=!0,Yt(e,"mounted")),e}(this,e=e&&z?Yn(e):void 0,t)},z&&setTimeout(function(){F.devtools&&ne&&ne.emit("init",wn)},0);var po=/\{\{((?:.|\r?\n)+?)\}\}/g,vo=/[-.*+?^${}()|[\]\/\\]/g,ho=g(function(e){var t=e[0].replace(vo,"\\$&"),n=e[1].replace(vo,"\\$&");return new RegExp(t+"((?:.|\\n)+?)"+n,"g")});var mo={staticKeys:["staticClass"],transformNode:function(e,t){t.warn;var n=Fr(e,"class");n&&(e.staticClass=JSON.stringify(n));var r=Ir(e,"class",!1);r&&(e.classBinding=r)},genData:function(e){var t="";return e.staticClass&&(t+="staticClass:"+e.staticClass+","),e.classBinding&&(t+="class:"+e.classBinding+","),t}};var yo,go={staticKeys:["staticStyle"],transformNode:function(e,t){t.warn;var n=Fr(e,"style");n&&(e.staticStyle=JSON.stringify(ai(n)));var r=Ir(e,"style",!1);r&&(e.styleBinding=r)},genData:function(e){var t="";return e.staticStyle&&(t+="staticStyle:"+e.staticStyle+","),e.styleBinding&&(t+="style:("+e.styleBinding+"),"),t}},_o=function(e){return(yo=yo||document.createElement("div")).innerHTML=e,yo.textContent},bo=p("area,base,br,col,embed,frame,hr,img,input,isindex,keygen,link,meta,param,source,track,wbr"),$o=p("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source"),wo=p("address,article,aside,base,blockquote,body,caption,col,colgroup,dd,details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,title,tr,track"),Co=/^\s*([^\s"'<>\/=]+)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,xo=/^\s*((?:v-[\w-]+:|@|:|#)\[[^=]+\][^\s"'<>\/=]*)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,ko="[a-zA-Z_][\\-\\.0-9_a-zA-Z"+P.source+"]*",Ao="((?:"+ko+"\\:)?"+ko+")",Oo=new RegExp("^<"+Ao),So=/^\s*(\/?)>/,To=new RegExp("^<\\/"+Ao+"[^>]*>"),Eo=/^<!DOCTYPE [^>]+>/i,No=/^<!\--/,jo=/^<!\[/,Do=p("script,style,textarea",!0),Lo={},Mo={"&lt;":"<","&gt;":">","&quot;":'"',"&amp;":"&","&#10;":"\n","&#9;":"\t","&#39;":"'"},Io=/&(?:lt|gt|quot|amp|#39);/g,Fo=/&(?:lt|gt|quot|amp|#39|#10|#9);/g,Po=p("pre,textarea",!0),Ro=function(e,t){return e&&Po(e)&&"\n"===t[0]};function Ho(e,t){var n=t?Fo:Io;return e.replace(n,function(e){return Mo[e]})}var Bo,Uo,zo,Vo,Ko,Jo,qo,Wo,Zo=/^@|^v-on:/,Go=/^v-|^@|^:|^#/,Xo=/([\s\S]*?)\s+(?:in|of)\s+([\s\S]*)/,Yo=/,([^,\}\]]*)(?:,([^,\}\]]*))?$/,Qo=/^\(|\)$/g,ea=/^\[.*\]$/,ta=/:(.*)$/,na=/^:|^\.|^v-bind:/,ra=/\.[^.\]]+(?=[^\]]*$)/g,ia=/^v-slot(:|$)|^#/,oa=/[\r\n]/,aa=/\s+/g,sa=g(_o),ca="_empty_";function ua(e,t,n){return{type:1,tag:e,attrsList:t,attrsMap:ma(t),rawAttrsMap:{},parent:n,children:[]}}function la(e,t){Bo=t.warn||Sr,Jo=t.isPreTag||T,qo=t.mustUseProp||T,Wo=t.getTagNamespace||T;t.isReservedTag;zo=Tr(t.modules,"transformNode"),Vo=Tr(t.modules,"preTransformNode"),Ko=Tr(t.modules,"postTransformNode"),Uo=t.delimiters;var n,r,i=[],o=!1!==t.preserveWhitespace,a=t.whitespace,s=!1,c=!1;function u(e){if(l(e),s||e.processed||(e=fa(e,t)),i.length||e===n||n.if&&(e.elseif||e.else)&&da(n,{exp:e.elseif,block:e}),r&&!e.forbidden)if(e.elseif||e.else)a=e,(u=function(e){var t=e.length;for(;t--;){if(1===e[t].type)return e[t];e.pop()}}(r.children))&&u.if&&da(u,{exp:a.elseif,block:a});else{if(e.slotScope){var o=e.slotTarget||'"default"';(r.scopedSlots||(r.scopedSlots={}))[o]=e}r.children.push(e),e.parent=r}var a,u;e.children=e.children.filter(function(e){return!e.slotScope}),l(e),e.pre&&(s=!1),Jo(e.tag)&&(c=!1);for(var f=0;f<Ko.length;f++)Ko[f](e,t)}function l(e){if(!c)for(var t;(t=e.children[e.children.length-1])&&3===t.type&&" "===t.text;)e.children.pop()}return function(e,t){for(var n,r,i=[],o=t.expectHTML,a=t.isUnaryTag||T,s=t.canBeLeftOpenTag||T,c=0;e;){if(n=e,r&&Do(r)){var u=0,l=r.toLowerCase(),f=Lo[l]||(Lo[l]=new RegExp("([\\s\\S]*?)(</"+l+"[^>]*>)","i")),p=e.replace(f,function(e,n,r){return u=r.length,Do(l)||"noscript"===l||(n=n.replace(/<!\--([\s\S]*?)-->/g,"$1").replace(/<!\[CDATA\[([\s\S]*?)]]>/g,"$1")),Ro(l,n)&&(n=n.slice(1)),t.chars&&t.chars(n),""});c+=e.length-p.length,e=p,A(l,c-u,c)}else{var d=e.indexOf("<");if(0===d){if(No.test(e)){var v=e.indexOf("--\x3e");if(v>=0){t.shouldKeepComment&&t.comment(e.substring(4,v),c,c+v+3),C(v+3);continue}}if(jo.test(e)){var h=e.indexOf("]>");if(h>=0){C(h+2);continue}}var m=e.match(Eo);if(m){C(m[0].length);continue}var y=e.match(To);if(y){var g=c;C(y[0].length),A(y[1],g,c);continue}var _=x();if(_){k(_),Ro(_.tagName,e)&&C(1);continue}}var b=void 0,$=void 0,w=void 0;if(d>=0){for($=e.slice(d);!(To.test($)||Oo.test($)||No.test($)||jo.test($)||(w=$.indexOf("<",1))<0);)d+=w,$=e.slice(d);b=e.substring(0,d)}d<0&&(b=e),b&&C(b.length),t.chars&&b&&t.chars(b,c-b.length,c)}if(e===n){t.chars&&t.chars(e);break}}function C(t){c+=t,e=e.substring(t)}function x(){var t=e.match(Oo);if(t){var n,r,i={tagName:t[1],attrs:[],start:c};for(C(t[0].length);!(n=e.match(So))&&(r=e.match(xo)||e.match(Co));)r.start=c,C(r[0].length),r.end=c,i.attrs.push(r);if(n)return i.unarySlash=n[1],C(n[0].length),i.end=c,i}}function k(e){var n=e.tagName,c=e.unarySlash;o&&("p"===r&&wo(n)&&A(r),s(n)&&r===n&&A(n));for(var u=a(n)||!!c,l=e.attrs.length,f=new Array(l),p=0;p<l;p++){var d=e.attrs[p],v=d[3]||d[4]||d[5]||"",h="a"===n&&"href"===d[1]?t.shouldDecodeNewlinesForHref:t.shouldDecodeNewlines;f[p]={name:d[1],value:Ho(v,h)}}u||(i.push({tag:n,lowerCasedTag:n.toLowerCase(),attrs:f,start:e.start,end:e.end}),r=n),t.start&&t.start(n,f,u,e.start,e.end)}function A(e,n,o){var a,s;if(null==n&&(n=c),null==o&&(o=c),e)for(s=e.toLowerCase(),a=i.length-1;a>=0&&i[a].lowerCasedTag!==s;a--);else a=0;if(a>=0){for(var u=i.length-1;u>=a;u--)t.end&&t.end(i[u].tag,n,o);i.length=a,r=a&&i[a-1].tag}else"br"===s?t.start&&t.start(e,[],!0,n,o):"p"===s&&(t.start&&t.start(e,[],!1,n,o),t.end&&t.end(e,n,o))}A()}(e,{warn:Bo,expectHTML:t.expectHTML,isUnaryTag:t.isUnaryTag,canBeLeftOpenTag:t.canBeLeftOpenTag,shouldDecodeNewlines:t.shouldDecodeNewlines,shouldDecodeNewlinesForHref:t.shouldDecodeNewlinesForHref,shouldKeepComment:t.comments,outputSourceRange:t.outputSourceRange,start:function(e,o,a,l,f){var p=r&&r.ns||Wo(e);q&&"svg"===p&&(o=function(e){for(var t=[],n=0;n<e.length;n++){var r=e[n];ya.test(r.name)||(r.name=r.name.replace(ga,""),t.push(r))}return t}(o));var d,v=ua(e,o,r);p&&(v.ns=p),"style"!==(d=v).tag&&("script"!==d.tag||d.attrsMap.type&&"text/javascript"!==d.attrsMap.type)||te()||(v.forbidden=!0);for(var h=0;h<Vo.length;h++)v=Vo[h](v,t)||v;s||(!function(e){null!=Fr(e,"v-pre")&&(e.pre=!0)}(v),v.pre&&(s=!0)),Jo(v.tag)&&(c=!0),s?function(e){var t=e.attrsList,n=t.length;if(n)for(var r=e.attrs=new Array(n),i=0;i<n;i++)r[i]={name:t[i].name,value:JSON.stringify(t[i].value)},null!=t[i].start&&(r[i].start=t[i].start,r[i].end=t[i].end);else e.pre||(e.plain=!0)}(v):v.processed||(pa(v),function(e){var t=Fr(e,"v-if");if(t)e.if=t,da(e,{exp:t,block:e});else{null!=Fr(e,"v-else")&&(e.else=!0);var n=Fr(e,"v-else-if");n&&(e.elseif=n)}}(v),function(e){null!=Fr(e,"v-once")&&(e.once=!0)}(v)),n||(n=v),a?u(v):(r=v,i.push(v))},end:function(e,t,n){var o=i[i.length-1];i.length-=1,r=i[i.length-1],u(o)},chars:function(e,t,n){if(r&&(!q||"textarea"!==r.tag||r.attrsMap.placeholder!==e)){var i,u,l,f=r.children;if(e=c||e.trim()?"script"===(i=r).tag||"style"===i.tag?e:sa(e):f.length?a?"condense"===a&&oa.test(e)?"":" ":o?" ":"":"")c||"condense"!==a||(e=e.replace(aa," ")),!s&&" "!==e&&(u=function(e,t){var n=t?ho(t):po;if(n.test(e)){for(var r,i,o,a=[],s=[],c=n.lastIndex=0;r=n.exec(e);){(i=r.index)>c&&(s.push(o=e.slice(c,i)),a.push(JSON.stringify(o)));var u=Ar(r[1].trim());a.push("_s("+u+")"),s.push({"@binding":u}),c=i+r[0].length}return c<e.length&&(s.push(o=e.slice(c)),a.push(JSON.stringify(o))),{expression:a.join("+"),tokens:s}}}(e,Uo))?l={type:2,expression:u.expression,tokens:u.tokens,text:e}:" "===e&&f.length&&" "===f[f.length-1].text||(l={type:3,text:e}),l&&f.push(l)}},comment:function(e,t,n){if(r){var i={type:3,text:e,isComment:!0};r.children.push(i)}}}),n}function fa(e,t){var n,r;(r=Ir(n=e,"key"))&&(n.key=r),e.plain=!e.key&&!e.scopedSlots&&!e.attrsList.length,function(e){var t=Ir(e,"ref");t&&(e.ref=t,e.refInFor=function(e){var t=e;for(;t;){if(void 0!==t.for)return!0;t=t.parent}return!1}(e))}(e),function(e){var t;"template"===e.tag?(t=Fr(e,"scope"),e.slotScope=t||Fr(e,"slot-scope")):(t=Fr(e,"slot-scope"))&&(e.slotScope=t);var n=Ir(e,"slot");n&&(e.slotTarget='""'===n?'"default"':n,e.slotTargetDynamic=!(!e.attrsMap[":slot"]&&!e.attrsMap["v-bind:slot"]),"template"===e.tag||e.slotScope||Nr(e,"slot",n,function(e,t){return e.rawAttrsMap[":"+t]||e.rawAttrsMap["v-bind:"+t]||e.rawAttrsMap[t]}(e,"slot")));if("template"===e.tag){var r=Pr(e,ia);if(r){var i=va(r),o=i.name,a=i.dynamic;e.slotTarget=o,e.slotTargetDynamic=a,e.slotScope=r.value||ca}}else{var s=Pr(e,ia);if(s){var c=e.scopedSlots||(e.scopedSlots={}),u=va(s),l=u.name,f=u.dynamic,p=c[l]=ua("template",[],e);p.slotTarget=l,p.slotTargetDynamic=f,p.children=e.children.filter(function(e){if(!e.slotScope)return e.parent=p,!0}),p.slotScope=s.value||ca,e.children=[],e.plain=!1}}}(e),function(e){"slot"===e.tag&&(e.slotName=Ir(e,"name"))}(e),function(e){var t;(t=Ir(e,"is"))&&(e.component=t);null!=Fr(e,"inline-template")&&(e.inlineTemplate=!0)}(e);for(var i=0;i<zo.length;i++)e=zo[i](e,t)||e;return function(e){var t,n,r,i,o,a,s,c,u=e.attrsList;for(t=0,n=u.length;t<n;t++)if(r=i=u[t].name,o=u[t].value,Go.test(r))if(e.hasBindings=!0,(a=ha(r.replace(Go,"")))&&(r=r.replace(ra,"")),na.test(r))r=r.replace(na,""),o=Ar(o),(c=ea.test(r))&&(r=r.slice(1,-1)),a&&(a.prop&&!c&&"innerHtml"===(r=b(r))&&(r="innerHTML"),a.camel&&!c&&(r=b(r)),a.sync&&(s=Br(o,"$event"),c?Mr(e,'"update:"+('+r+")",s,null,!1,0,u[t],!0):(Mr(e,"update:"+b(r),s,null,!1,0,u[t]),C(r)!==b(r)&&Mr(e,"update:"+C(r),s,null,!1,0,u[t])))),a&&a.prop||!e.component&&qo(e.tag,e.attrsMap.type,r)?Er(e,r,o,u[t],c):Nr(e,r,o,u[t],c);else if(Zo.test(r))r=r.replace(Zo,""),(c=ea.test(r))&&(r=r.slice(1,-1)),Mr(e,r,o,a,!1,0,u[t],c);else{var l=(r=r.replace(Go,"")).match(ta),f=l&&l[1];c=!1,f&&(r=r.slice(0,-(f.length+1)),ea.test(f)&&(f=f.slice(1,-1),c=!0)),Dr(e,r,i,o,f,c,a,u[t])}else Nr(e,r,JSON.stringify(o),u[t]),!e.component&&"muted"===r&&qo(e.tag,e.attrsMap.type,r)&&Er(e,r,"true",u[t])}(e),e}function pa(e){var t;if(t=Fr(e,"v-for")){var n=function(e){var t=e.match(Xo);if(!t)return;var n={};n.for=t[2].trim();var r=t[1].trim().replace(Qo,""),i=r.match(Yo);i?(n.alias=r.replace(Yo,"").trim(),n.iterator1=i[1].trim(),i[2]&&(n.iterator2=i[2].trim())):n.alias=r;return n}(t);n&&A(e,n)}}function da(e,t){e.ifConditions||(e.ifConditions=[]),e.ifConditions.push(t)}function va(e){var t=e.name.replace(ia,"");return t||"#"!==e.name[0]&&(t="default"),ea.test(t)?{name:t.slice(1,-1),dynamic:!0}:{name:'"'+t+'"',dynamic:!1}}function ha(e){var t=e.match(ra);if(t){var n={};return t.forEach(function(e){n[e.slice(1)]=!0}),n}}function ma(e){for(var t={},n=0,r=e.length;n<r;n++)t[e[n].name]=e[n].value;return t}var ya=/^xmlns:NS\d+/,ga=/^NS\d+:/;function _a(e){return ua(e.tag,e.attrsList.slice(),e.parent)}var ba=[mo,go,{preTransformNode:function(e,t){if("input"===e.tag){var n,r=e.attrsMap;if(!r["v-model"])return;if((r[":type"]||r["v-bind:type"])&&(n=Ir(e,"type")),r.type||n||!r["v-bind"]||(n="("+r["v-bind"]+").type"),n){var i=Fr(e,"v-if",!0),o=i?"&&("+i+")":"",a=null!=Fr(e,"v-else",!0),s=Fr(e,"v-else-if",!0),c=_a(e);pa(c),jr(c,"type","checkbox"),fa(c,t),c.processed=!0,c.if="("+n+")==='checkbox'"+o,da(c,{exp:c.if,block:c});var u=_a(e);Fr(u,"v-for",!0),jr(u,"type","radio"),fa(u,t),da(c,{exp:"("+n+")==='radio'"+o,block:u});var l=_a(e);return Fr(l,"v-for",!0),jr(l,":type",n),fa(l,t),da(c,{exp:i,block:l}),a?c.else=!0:s&&(c.elseif=s),c}}}}];var $a,wa,Ca={expectHTML:!0,modules:ba,directives:{model:function(e,t,n){var r=t.value,i=t.modifiers,o=e.tag,a=e.attrsMap.type;if(e.component)return Hr(e,r,i),!1;if("select"===o)!function(e,t,n){var r='var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = "_value" in o ? o._value : o.value;return '+(n&&n.number?"_n(val)":"val")+"});";r=r+" "+Br(t,"$event.target.multiple ? $$selectedVal : $$selectedVal[0]"),Mr(e,"change",r,null,!0)}(e,r,i);else if("input"===o&&"checkbox"===a)!function(e,t,n){var r=n&&n.number,i=Ir(e,"value")||"null",o=Ir(e,"true-value")||"true",a=Ir(e,"false-value")||"false";Er(e,"checked","Array.isArray("+t+")?_i("+t+","+i+")>-1"+("true"===o?":("+t+")":":_q("+t+","+o+")")),Mr(e,"change","var $$a="+t+",$$el=$event.target,$$c=$$el.checked?("+o+"):("+a+");if(Array.isArray($$a)){var $$v="+(r?"_n("+i+")":i)+",$$i=_i($$a,$$v);if($$el.checked){$$i<0&&("+Br(t,"$$a.concat([$$v])")+")}else{$$i>-1&&("+Br(t,"$$a.slice(0,$$i).concat($$a.slice($$i+1))")+")}}else{"+Br(t,"$$c")+"}",null,!0)}(e,r,i);else if("input"===o&&"radio"===a)!function(e,t,n){var r=n&&n.number,i=Ir(e,"value")||"null";Er(e,"checked","_q("+t+","+(i=r?"_n("+i+")":i)+")"),Mr(e,"change",Br(t,i),null,!0)}(e,r,i);else if("input"===o||"textarea"===o)!function(e,t,n){var r=e.attrsMap.type,i=n||{},o=i.lazy,a=i.number,s=i.trim,c=!o&&"range"!==r,u=o?"change":"range"===r?Wr:"input",l="$event.target.value";s&&(l="$event.target.value.trim()"),a&&(l="_n("+l+")");var f=Br(t,l);c&&(f="if($event.target.composing)return;"+f),Er(e,"value","("+t+")"),Mr(e,u,f,null,!0),(s||a)&&Mr(e,"blur","$forceUpdate()")}(e,r,i);else if(!F.isReservedTag(o))return Hr(e,r,i),!1;return!0},text:function(e,t){t.value&&Er(e,"textContent","_s("+t.value+")",t)},html:function(e,t){t.value&&Er(e,"innerHTML","_s("+t.value+")",t)}},isPreTag:function(e){return"pre"===e},isUnaryTag:bo,mustUseProp:jn,canBeLeftOpenTag:$o,isReservedTag:Wn,getTagNamespace:Zn,staticKeys:function(e){return e.reduce(function(e,t){return e.concat(t.staticKeys||[])},[]).join(",")}(ba)},xa=g(function(e){return p("type,tag,attrsList,attrsMap,plain,parent,children,attrs,start,end,rawAttrsMap"+(e?","+e:""))});function ka(e,t){e&&($a=xa(t.staticKeys||""),wa=t.isReservedTag||T,function e(t){t.static=function(e){if(2===e.type)return!1;if(3===e.type)return!0;return!(!e.pre&&(e.hasBindings||e.if||e.for||d(e.tag)||!wa(e.tag)||function(e){for(;e.parent;){if("template"!==(e=e.parent).tag)return!1;if(e.for)return!0}return!1}(e)||!Object.keys(e).every($a)))}(t);if(1===t.type){if(!wa(t.tag)&&"slot"!==t.tag&&null==t.attrsMap["inline-template"])return;for(var n=0,r=t.children.length;n<r;n++){var i=t.children[n];e(i),i.static||(t.static=!1)}if(t.ifConditions)for(var o=1,a=t.ifConditions.length;o<a;o++){var s=t.ifConditions[o].block;e(s),s.static||(t.static=!1)}}}(e),function e(t,n){if(1===t.type){if((t.static||t.once)&&(t.staticInFor=n),t.static&&t.children.length&&(1!==t.children.length||3!==t.children[0].type))return void(t.staticRoot=!0);if(t.staticRoot=!1,t.children)for(var r=0,i=t.children.length;r<i;r++)e(t.children[r],n||!!t.for);if(t.ifConditions)for(var o=1,a=t.ifConditions.length;o<a;o++)e(t.ifConditions[o].block,n)}}(e,!1))}var Aa=/^([\w$_]+|\([^)]*?\))\s*=>|^function(?:\s+[\w$]+)?\s*\(/,Oa=/\([^)]*?\);*$/,Sa=/^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\['[^']*?']|\["[^"]*?"]|\[\d+]|\[[A-Za-z_$][\w$]*])*$/,Ta={esc:27,tab:9,enter:13,space:32,up:38,left:37,right:39,down:40,delete:[8,46]},Ea={esc:["Esc","Escape"],tab:"Tab",enter:"Enter",space:[" ","Spacebar"],up:["Up","ArrowUp"],left:["Left","ArrowLeft"],right:["Right","ArrowRight"],down:["Down","ArrowDown"],delete:["Backspace","Delete","Del"]},Na=function(e){return"if("+e+")return null;"},ja={stop:"$event.stopPropagation();",prevent:"$event.preventDefault();",self:Na("$event.target !== $event.currentTarget"),ctrl:Na("!$event.ctrlKey"),shift:Na("!$event.shiftKey"),alt:Na("!$event.altKey"),meta:Na("!$event.metaKey"),left:Na("'button' in $event && $event.button !== 0"),middle:Na("'button' in $event && $event.button !== 1"),right:Na("'button' in $event && $event.button !== 2")};function Da(e,t){var n=t?"nativeOn:":"on:",r="",i="";for(var o in e){var a=La(e[o]);e[o]&&e[o].dynamic?i+=o+","+a+",":r+='"'+o+'":'+a+","}return r="{"+r.slice(0,-1)+"}",i?n+"_d("+r+",["+i.slice(0,-1)+"])":n+r}function La(e){if(!e)return"function(){}";if(Array.isArray(e))return"["+e.map(function(e){return La(e)}).join(",")+"]";var t=Sa.test(e.value),n=Aa.test(e.value),r=Sa.test(e.value.replace(Oa,""));if(e.modifiers){var i="",o="",a=[];for(var s in e.modifiers)if(ja[s])o+=ja[s],Ta[s]&&a.push(s);else if("exact"===s){var c=e.modifiers;o+=Na(["ctrl","shift","alt","meta"].filter(function(e){return!c[e]}).map(function(e){return"$event."+e+"Key"}).join("||"))}else a.push(s);return a.length&&(i+=function(e){return"if(!$event.type.indexOf('key')&&"+e.map(Ma).join("&&")+")return null;"}(a)),o&&(i+=o),"function($event){"+i+(t?"return "+e.value+"($event)":n?"return ("+e.value+")($event)":r?"return "+e.value:e.value)+"}"}return t||n?e.value:"function($event){"+(r?"return "+e.value:e.value)+"}"}function Ma(e){var t=parseInt(e,10);if(t)return"$event.keyCode!=="+t;var n=Ta[e],r=Ea[e];return"_k($event.keyCode,"+JSON.stringify(e)+","+JSON.stringify(n)+",$event.key,"+JSON.stringify(r)+")"}var Ia={on:function(e,t){e.wrapListeners=function(e){return"_g("+e+","+t.value+")"}},bind:function(e,t){e.wrapData=function(n){return"_b("+n+",'"+e.tag+"',"+t.value+","+(t.modifiers&&t.modifiers.prop?"true":"false")+(t.modifiers&&t.modifiers.sync?",true":"")+")"}},cloak:S},Fa=function(e){this.options=e,this.warn=e.warn||Sr,this.transforms=Tr(e.modules,"transformCode"),this.dataGenFns=Tr(e.modules,"genData"),this.directives=A(A({},Ia),e.directives);var t=e.isReservedTag||T;this.maybeComponent=function(e){return!!e.component||!t(e.tag)},this.onceId=0,this.staticRenderFns=[],this.pre=!1};function Pa(e,t){var n=new Fa(t);return{render:"with(this){return "+(e?Ra(e,n):'_c("div")')+"}",staticRenderFns:n.staticRenderFns}}function Ra(e,t){if(e.parent&&(e.pre=e.pre||e.parent.pre),e.staticRoot&&!e.staticProcessed)return Ha(e,t);if(e.once&&!e.onceProcessed)return Ba(e,t);if(e.for&&!e.forProcessed)return za(e,t);if(e.if&&!e.ifProcessed)return Ua(e,t);if("template"!==e.tag||e.slotTarget||t.pre){if("slot"===e.tag)return function(e,t){var n=e.slotName||'"default"',r=qa(e,t),i="_t("+n+(r?","+r:""),o=e.attrs||e.dynamicAttrs?Ga((e.attrs||[]).concat(e.dynamicAttrs||[]).map(function(e){return{name:b(e.name),value:e.value,dynamic:e.dynamic}})):null,a=e.attrsMap["v-bind"];!o&&!a||r||(i+=",null");o&&(i+=","+o);a&&(i+=(o?"":",null")+","+a);return i+")"}(e,t);var n;if(e.component)n=function(e,t,n){var r=t.inlineTemplate?null:qa(t,n,!0);return"_c("+e+","+Va(t,n)+(r?","+r:"")+")"}(e.component,e,t);else{var r;(!e.plain||e.pre&&t.maybeComponent(e))&&(r=Va(e,t));var i=e.inlineTemplate?null:qa(e,t,!0);n="_c('"+e.tag+"'"+(r?","+r:"")+(i?","+i:"")+")"}for(var o=0;o<t.transforms.length;o++)n=t.transforms[o](e,n);return n}return qa(e,t)||"void 0"}function Ha(e,t){e.staticProcessed=!0;var n=t.pre;return e.pre&&(t.pre=e.pre),t.staticRenderFns.push("with(this){return "+Ra(e,t)+"}"),t.pre=n,"_m("+(t.staticRenderFns.length-1)+(e.staticInFor?",true":"")+")"}function Ba(e,t){if(e.onceProcessed=!0,e.if&&!e.ifProcessed)return Ua(e,t);if(e.staticInFor){for(var n="",r=e.parent;r;){if(r.for){n=r.key;break}r=r.parent}return n?"_o("+Ra(e,t)+","+t.onceId+++","+n+")":Ra(e,t)}return Ha(e,t)}function Ua(e,t,n,r){return e.ifProcessed=!0,function e(t,n,r,i){if(!t.length)return i||"_e()";var o=t.shift();return o.exp?"("+o.exp+")?"+a(o.block)+":"+e(t,n,r,i):""+a(o.block);function a(e){return r?r(e,n):e.once?Ba(e,n):Ra(e,n)}}(e.ifConditions.slice(),t,n,r)}function za(e,t,n,r){var i=e.for,o=e.alias,a=e.iterator1?","+e.iterator1:"",s=e.iterator2?","+e.iterator2:"";return e.forProcessed=!0,(r||"_l")+"(("+i+"),function("+o+a+s+"){return "+(n||Ra)(e,t)+"})"}function Va(e,t){var n="{",r=function(e,t){var n=e.directives;if(!n)return;var r,i,o,a,s="directives:[",c=!1;for(r=0,i=n.length;r<i;r++){o=n[r],a=!0;var u=t.directives[o.name];u&&(a=!!u(e,o,t.warn)),a&&(c=!0,s+='{name:"'+o.name+'",rawName:"'+o.rawName+'"'+(o.value?",value:("+o.value+"),expression:"+JSON.stringify(o.value):"")+(o.arg?",arg:"+(o.isDynamicArg?o.arg:'"'+o.arg+'"'):"")+(o.modifiers?",modifiers:"+JSON.stringify(o.modifiers):"")+"},")}if(c)return s.slice(0,-1)+"]"}(e,t);r&&(n+=r+","),e.key&&(n+="key:"+e.key+","),e.ref&&(n+="ref:"+e.ref+","),e.refInFor&&(n+="refInFor:true,"),e.pre&&(n+="pre:true,"),e.component&&(n+='tag:"'+e.tag+'",');for(var i=0;i<t.dataGenFns.length;i++)n+=t.dataGenFns[i](e);if(e.attrs&&(n+="attrs:"+Ga(e.attrs)+","),e.props&&(n+="domProps:"+Ga(e.props)+","),e.events&&(n+=Da(e.events,!1)+","),e.nativeEvents&&(n+=Da(e.nativeEvents,!0)+","),e.slotTarget&&!e.slotScope&&(n+="slot:"+e.slotTarget+","),e.scopedSlots&&(n+=function(e,t,n){var r=e.for||Object.keys(t).some(function(e){var n=t[e];return n.slotTargetDynamic||n.if||n.for||Ka(n)}),i=!!e.if;if(!r)for(var o=e.parent;o;){if(o.slotScope&&o.slotScope!==ca||o.for){r=!0;break}o.if&&(i=!0),o=o.parent}var a=Object.keys(t).map(function(e){return Ja(t[e],n)}).join(",");return"scopedSlots:_u(["+a+"]"+(r?",null,true":"")+(!r&&i?",null,false,"+function(e){var t=5381,n=e.length;for(;n;)t=33*t^e.charCodeAt(--n);return t>>>0}(a):"")+")"}(e,e.scopedSlots,t)+","),e.model&&(n+="model:{value:"+e.model.value+",callback:"+e.model.callback+",expression:"+e.model.expression+"},"),e.inlineTemplate){var o=function(e,t){var n=e.children[0];if(n&&1===n.type){var r=Pa(n,t.options);return"inlineTemplate:{render:function(){"+r.render+"},staticRenderFns:["+r.staticRenderFns.map(function(e){return"function(){"+e+"}"}).join(",")+"]}"}}(e,t);o&&(n+=o+",")}return n=n.replace(/,$/,"")+"}",e.dynamicAttrs&&(n="_b("+n+',"'+e.tag+'",'+Ga(e.dynamicAttrs)+")"),e.wrapData&&(n=e.wrapData(n)),e.wrapListeners&&(n=e.wrapListeners(n)),n}function Ka(e){return 1===e.type&&("slot"===e.tag||e.children.some(Ka))}function Ja(e,t){var n=e.attrsMap["slot-scope"];if(e.if&&!e.ifProcessed&&!n)return Ua(e,t,Ja,"null");if(e.for&&!e.forProcessed)return za(e,t,Ja);var r=e.slotScope===ca?"":String(e.slotScope),i="function("+r+"){return "+("template"===e.tag?e.if&&n?"("+e.if+")?"+(qa(e,t)||"undefined")+":undefined":qa(e,t)||"undefined":Ra(e,t))+"}",o=r?"":",proxy:true";return"{key:"+(e.slotTarget||'"default"')+",fn:"+i+o+"}"}function qa(e,t,n,r,i){var o=e.children;if(o.length){var a=o[0];if(1===o.length&&a.for&&"template"!==a.tag&&"slot"!==a.tag){var s=n?t.maybeComponent(a)?",1":",0":"";return""+(r||Ra)(a,t)+s}var c=n?function(e,t){for(var n=0,r=0;r<e.length;r++){var i=e[r];if(1===i.type){if(Wa(i)||i.ifConditions&&i.ifConditions.some(function(e){return Wa(e.block)})){n=2;break}(t(i)||i.ifConditions&&i.ifConditions.some(function(e){return t(e.block)}))&&(n=1)}}return n}(o,t.maybeComponent):0,u=i||Za;return"["+o.map(function(e){return u(e,t)}).join(",")+"]"+(c?","+c:"")}}function Wa(e){return void 0!==e.for||"template"===e.tag||"slot"===e.tag}function Za(e,t){return 1===e.type?Ra(e,t):3===e.type&&e.isComment?(r=e,"_e("+JSON.stringify(r.text)+")"):"_v("+(2===(n=e).type?n.expression:Xa(JSON.stringify(n.text)))+")";var n,r}function Ga(e){for(var t="",n="",r=0;r<e.length;r++){var i=e[r],o=Xa(i.value);i.dynamic?n+=i.name+","+o+",":t+='"'+i.name+'":'+o+","}return t="{"+t.slice(0,-1)+"}",n?"_d("+t+",["+n.slice(0,-1)+"])":t}function Xa(e){return e.replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}new RegExp("\\b"+"do,if,for,let,new,try,var,case,else,with,await,break,catch,class,const,super,throw,while,yield,delete,export,import,return,switch,default,extends,finally,continue,debugger,function,arguments".split(",").join("\\b|\\b")+"\\b");function Ya(e,t){try{return new Function(e)}catch(n){return t.push({err:n,code:e}),S}}function Qa(e){var t=Object.create(null);return function(n,r,i){(r=A({},r)).warn;delete r.warn;var o=r.delimiters?String(r.delimiters)+n:n;if(t[o])return t[o];var a=e(n,r),s={},c=[];return s.render=Ya(a.render,c),s.staticRenderFns=a.staticRenderFns.map(function(e){return Ya(e,c)}),t[o]=s}}var es,ts,ns=(es=function(e,t){var n=la(e.trim(),t);!1!==t.optimize&&ka(n,t);var r=Pa(n,t);return{ast:n,render:r.render,staticRenderFns:r.staticRenderFns}},function(e){function t(t,n){var r=Object.create(e),i=[],o=[];if(n)for(var a in n.modules&&(r.modules=(e.modules||[]).concat(n.modules)),n.directives&&(r.directives=A(Object.create(e.directives||null),n.directives)),n)"modules"!==a&&"directives"!==a&&(r[a]=n[a]);r.warn=function(e,t,n){(n?o:i).push(e)};var s=es(t.trim(),r);return s.errors=i,s.tips=o,s}return{compile:t,compileToFunctions:Qa(t)}})(Ca),rs=(ns.compile,ns.compileToFunctions);function is(e){return(ts=ts||document.createElement("div")).innerHTML=e?'<a href="\n"/>':'<div a="\n"/>',ts.innerHTML.indexOf("&#10;")>0}var os=!!z&&is(!1),as=!!z&&is(!0),ss=g(function(e){var t=Yn(e);return t&&t.innerHTML}),cs=wn.prototype.$mount;return wn.prototype.$mount=function(e,t){if((e=e&&Yn(e))===document.body||e===document.documentElement)return this;var n=this.$options;if(!n.render){var r=n.template;if(r)if("string"==typeof r)"#"===r.charAt(0)&&(r=ss(r));else{if(!r.nodeType)return this;r=r.innerHTML}else e&&(r=function(e){if(e.outerHTML)return e.outerHTML;var t=document.createElement("div");return t.appendChild(e.cloneNode(!0)),t.innerHTML}(e));if(r){var i=rs(r,{outputSourceRange:!1,shouldDecodeNewlines:os,shouldDecodeNewlinesForHref:as,delimiters:n.delimiters,comments:n.comments},this),o=i.render,a=i.staticRenderFns;n.render=o,n.staticRenderFns=a}}return cs.call(this,e,t)},wn.compile=rs,wn});
\ No newline at end of file
This diff could not be displayed because it is too large.

3.37 KB

This diff could not be displayed because it is too large.
{
"name": "vue-flow-editor",
"version": "0.1.19",
"scripts": {
"start": "vue-cli-service serve",
"build": "vue-cli-service build && npm run release",
"release": "vue-cli-service build --release --report --no-clean",
"build:g6": "vue-cli-service build --g6 --report --no-clean"
},
"repository": {
"gitee": "https://gitee.com/martsforever-pot/vue-flow-editor"
},
"files": [
"docs"
],
"main": "docs/dist/vue-flow-editor.js",
"keywords": [
"vue",
"flow",
"editor",
"流程",
"编辑器"
],
"dependencies": {
"@vue/composition-api": "^1.7.2",
"echarts": "^5.1.2",
"element-plus": "^2.4.1",
"sass": "^1.69.4",
"sass-loader": "10.1.1",
"vue": "^3.0.0",
"vue-loader-v16": "^16.0.0-beta.5.4",
"vue-router": "^4.0.0-0",
"vue-template-compiler": "^2.6.14",
"vuex": "^4.0.0-0"
},
"devDependencies": {
"@antv/g6": "~3.1.3",
"@antv/util": "~1.3.1",
"@babel/plugin-transform-modules-umd": "^7.9.0",
"@vue/cli-plugin-babel": "^4.5.0",
"@vue/cli-plugin-typescript": "^4.5.13",
"@vue/cli-service": "^4.5.0",
"@vue/compiler-sfc": "^3.0.0",
"babel-preset-vca-jsx": "^0.1.0",
"core-js": "^3.6.5",
"numericjs": "^1.2.6",
"typescript": "~4.1.5",
"webpack": "^4.0.0",
"webpack-theme-color-replacer": "^1.3.12"
}
}
module.exports = {
plugins: {
autoprefixer: {}
}
}
<html>
<head>
<meta charset="utf-8">
<title>vue-flow-editor demo</title>
<link type="text/css" rel="stylesheet" href="http://martsforever-pot.gitee.io/vue-flow-editor/dist/vue-flow-editor.css">
<link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
<style>
html, body {
padding: 0;
margin: 0;
}
</style>
</head>
<body>
<div id="app">
</div>
<script src="./lib/g6.umd.min.js"></script>
<script src="http://martsforever-pot.gitee.io/vue-flow-editor/lib/vue.min.js"></script>
<script src="https://unpkg.com/@vue/composition-api/dist/vue-composition-api.umd.js"></script>
<script src="https://unpkg.com/element-ui/lib/index.js"></script>
<script src="http://martsforever-pot.gitee.io/vue-flow-editor/dist/vue-flow-editor.js"></script>
<script>
console.log(window)
Vue.use(window.vueCompositionApi.default)
Vue.use(window.VueFlowEditor)
const Ele = window.ELEMENT
const G6 = window.G6.default
const reactive = window.vueCompositionApi.reactive
function delay(time) {
return new Promise((resolve) => setTimeout(resolve, time))
}
const AppData = {
"nodes": [{"data": {}, "id": "start-node", "label": "开始", "shape": "ellipse", "size": [120, 40], "x": 380, "y": 100}, {"data": {}, "id": "1588848310120", "label": "主管审批", "shape": "rect", "size": [120, 40], "x": 380, "y": 180}, {"data": {}, "id": "1588848322179", "label": "经理审批", "shape": "rect", "size": [120, 40], "x": 380, "y": 260}, {
"data": {},
"id": "1588848338211",
"label": "金额>2万",
"shape": "diamond",
"size": [120, 40],
"x": 380,
"y": 340
}, {"data": {}, "id": "1588848351476", "label": "财务打款", "shape": "rect", "size": [120, 40], "x": 380, "y": 460}, {"data": {}, "id": "end-node", "label": "结束", "shape": "ellipse", "size": [120, 40], "x": 380, "y": 540}, {"data": {}, "id": "1588848397511", "label": "VIP审批", "shape": "rect", "size": [120, 40], "x": 620, "y": 340}, {
"data": {},
"id": "1588848436694",
"label": "金额>10万",
"shape": "diamond",
"size": [120, 40],
"x": 780,
"y": 340
}, {"data": {}, "id": "1588848449431", "label": "CEO审批", "shape": "rect", "size": [120, 40], "x": 980, "y": 460}],
"edges": [{"shape": "flow-polyline-round", "source": "start-node", "sourceAnchor": 2, "target": "1588848310120", "targetAnchor": 0}, {"shape": "flow-polyline-round", "source": "1588848310120", "sourceAnchor": 2, "target": "1588848322179", "targetAnchor": 0}, {
"shape": "flow-polyline-round",
"source": "1588848322179",
"sourceAnchor": 2,
"target": "1588848338211",
"targetAnchor": 0
}, {"shape": "flow-polyline-round", "source": "1588848338211", "sourceAnchor": 2, "target": "1588848351476", "targetAnchor": 0, "label": "否"}, {"shape": "flow-polyline-round", "source": "1588848351476", "sourceAnchor": 2, "target": "end-node", "targetAnchor": 0}, {
"shape": "flow-polyline-round",
"source": "1588848338211",
"sourceAnchor": 3,
"target": "1588848397511",
"targetAnchor": 1,
"label": "是"
}, {"shape": "flow-polyline-round", "source": "1588848436694", "sourceAnchor": 3, "target": "1588848449431", "targetAnchor": 0, "label": "是"}, {"shape": "flow-polyline-round", "source": "1588848449431", "sourceAnchor": 1, "target": "1588848351476", "targetAnchor": 3}, {
"shape": "flow-polyline-round",
"source": "1588848436694",
"sourceAnchor": 2,
"target": "1588848351476",
"targetAnchor": 3,
"label": "否"
}, {"shape": "flow-polyline-round", "source": "1588848397511", "sourceAnchor": 3, "target": "1588848436694", "targetAnchor": 1}]
}
new Vue({
el: '#app',
template: `
<div class="app" style="height: 100vh">
<vue-flow-editor
ref="editor"
:data="state.data"
:grid="showGrid"
:miniMap="showMiniMap"
:onRef="onRef"
:multipleSelect="true"
:loading="state.editorLoading"
:disabledUndo="false"
:disabledDragEdge="true"
:beforeDelete="handleBeforeDelete"
:afterDelete="handleAfterDelete"
:beforeAdd="handleBeforeAdd"
:afterAdd="handleAfterAdd"
@dblclick-node="onDblclickNode"
@dblclick-edge="onDblClickEdge"
>
<div slot="menu">
<vue-flow-edit-menu-group v-for="(group,groupIndex) in state.menuData" :label="group.label" :key="groupIndex">
<vue-flow-edit-menu v-for="(menu,menuIndex) in group.menus" :key="menuIndex" :model="menu"/>
</vue-flow-edit-menu-group>
</div>
<div slot="model" style="padding: 16px">
<el-form v-if="!!state.detailModel" ref="form" :model="state.detailModel" label-width="100px">
<el-form-item label="节点名称" prop="label">
<el-input v-model="state.detailModel.label"/>
</el-form-item>
<template v-if="state.detailModel.type !== 'edge'">
<el-form-item label="节点背景色" prop="style.fill">
<el-color-picker v-model="state.detailModel.style.fill"/>
</el-form-item>
<el-form-item label="节点边框色" prop="style.stroke">
<el-color-picker v-model="state.detailModel.style.stroke"/>
</el-form-item>
<el-form-item label="节点文字色" prop="labelCfg.style.stroke">
<el-color-picker v-model="state.detailModel.labelCfg.style.fill"/>
</el-form-item>
</template>
</el-form>
</div>
<template slot="toolbar">
<el-tooltip content="测试工具栏插槽">
<div class="vue-flow-editor-toolbar-item">
<i class="el-icon-search"/>
</div>
</el-tooltip>
</template>
<template slot="foot">
<el-button type="primary" @click="save">保存</el-button>
<el-button @click="cancel">取消</el-button>
</template>
</vue-flow-editor>
</div>
`,
setup() {
const state = reactive({
data: AppData,
detailModel: null,
editorLoading: false,
selectOptions: [
{label: '待确认', value: '0'},
{label: '填写表单', value: '1'},
{label: '部门负责人审批', value: '2'},
{label: '总经理审批', value: '3'},
],
menuData: [
{
label: '流程节点',
menus: [
{label: '开始', shape: 'ellipse', id: 'start-node'},
{label: '结束', shape: 'ellipse', id: 'end-node'},
{label: '审批节点', busType: '123'},
{label: '判断节点'},
],
},
{
label: '其他形状节点',
menus: [
{label: '矩形节点', shape: 'rect'},
{label: '圆形节点', shape: 'circle'},
{label: '椭圆节点', shape: 'ellipse'},
{label: '菱形节点', shape: 'diamond'},
{label: '三角形节点', shape: 'triangle'},
{label: '星形节点', shape: 'star'},
]
}
]
})
let editor;
function onDblclickNode(e) {
const model = G6.Util.clone(e.item.get('model'))
model.style = model.style || {}
model.labelCfg = model.labelCfg || {style: {}}
state.detailModel = model
editor.openModel()
}
function onDblClickEdge(e) {
const {source, target, style, labelCfg, label} = e.item.get('model')
const model = {label, source, target, style: style || {}, labelCfg: labelCfg || {style: {}}, type: null, id: null}
model.type = e.item.get('type')
model.id = e.item.get('id')
state.detailModel = model
editor.openModel()
}
function cancel() {
editor.closeModel()
}
function save() {
editor.updateModel(state.detailModel)
editor.closeModel()
}
async function handleBeforeDelete(model, type) {
if (type === 'node') {
if (model.label === '开始') {
state.editorLoading = true
await delay(1000)
state.editorLoading = false
Ele.Notification.error('不可以删除【开始】节点')
return Promise.reject('reject')
}
}
}
function handleAfterDelete(model, type) {
if (type === 'edge') {
console.log('delete edge')
} else {
console.log('after delete', model.label, {...model})
}
}
function handleBeforeAdd(model, type) {
if (type === 'edge') {
if (model.source === 'end-node') {
Ele.Notification.error('结束节点不能输出连线其他节点')
return Promise.reject('reject')
}
}
if (type === 'node') {
if (model.id === 'start-node' || model.id === 'end-node') {
const data = editor.editorState.graph.save()
for (let i = 0; i < data.nodes.length; i++) {
const node = data.nodes[i];
if (node.id === model.id) {
Ele.Notification.error(`只能有一个${model.id === 'start-node' ? '开始' : '结束'}节点`)
return Promise.reject('reject')
}
}
}
}
}
function handleAfterAdd(model, type) {
if (type === 'edge') {
console.log(`新增连接线`)
}
}
return {
state,
showGrid: true,
showMiniMap: false,
onDblclickNode,
onDblClickEdge,
cancel,
save,
handleBeforeDelete,
handleAfterDelete,
handleBeforeAdd,
handleAfterAdd,
onRef: e => editor = e,
}
},
}).$mount()
</script>
</body>
</html>
\ No newline at end of file
<html>
<head>
<meta charset="utf-8">
<title>vue-flow-editor demo</title>
<link type="text/css" rel="stylesheet" href="http://martsforever-pot.gitee.io/vue-flow-editor/dist/vue-flow-editor.css">
<link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css">
<style>
html, body {
padding: 0;
margin: 0;
}
</style>
</head>
<body>
<div id="app">
</div>
<script src="http://martsforever-pot.gitee.io/vue-flow-editor/lib/g6.umd.min.js"></script>
<script src="http://martsforever-pot.gitee.io/vue-flow-editor/lib/vue.min.js"></script>
<script src="http://martsforever-pot.gitee.io/vue-flow-editor/lib/vue-composition-api.umd.js"></script>
<script src="http://martsforever-pot.gitee.io/vue-flow-editor/lib/element-ui.js"></script>
<script src="http://martsforever-pot.gitee.io/vue-flow-editor/dist/vue-flow-editor.js"></script>
<script>
"use strict";
function 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; }
function _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) { _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; }
function _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; }
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
console.log(window);
Vue.use(window.vueCompositionApi.default);
Vue.use(window.VueFlowEditor);
var Ele = window.ELEMENT;
var G6 = window.G6.default;
var reactive = window.vueCompositionApi.reactive;
function delay(time) {
return new Promise(function (resolve) {
return setTimeout(resolve, time);
});
}
var AppData = {
"nodes": [{
"data": {},
"id": "start-node",
"label": "开始",
"shape": "ellipse",
"size": [120, 40],
"x": 380,
"y": 100
}, {
"data": {},
"id": "1588848310120",
"label": "主管审批",
"shape": "rect",
"size": [120, 40],
"x": 380,
"y": 180
}, {
"data": {},
"id": "1588848322179",
"label": "经理审批",
"shape": "rect",
"size": [120, 40],
"x": 380,
"y": 260
}, {
"data": {},
"id": "1588848338211",
"label": "金额>2万",
"shape": "diamond",
"size": [120, 40],
"x": 380,
"y": 340
}, {
"data": {},
"id": "1588848351476",
"label": "财务打款",
"shape": "rect",
"size": [120, 40],
"x": 380,
"y": 460
}, {
"data": {},
"id": "end-node",
"label": "结束",
"shape": "ellipse",
"size": [120, 40],
"x": 380,
"y": 540
}, {
"data": {},
"id": "1588848397511",
"label": "VIP审批",
"shape": "rect",
"size": [120, 40],
"x": 620,
"y": 340
}, {
"data": {},
"id": "1588848436694",
"label": "金额>10万",
"shape": "diamond",
"size": [120, 40],
"x": 780,
"y": 340
}, {
"data": {},
"id": "1588848449431",
"label": "CEO审批",
"shape": "rect",
"size": [120, 40],
"x": 980,
"y": 460
}],
"edges": [{
"shape": "flow-polyline-round",
"source": "start-node",
"sourceAnchor": 2,
"target": "1588848310120",
"targetAnchor": 0
}, {
"shape": "flow-polyline-round",
"source": "1588848310120",
"sourceAnchor": 2,
"target": "1588848322179",
"targetAnchor": 0
}, {
"shape": "flow-polyline-round",
"source": "1588848322179",
"sourceAnchor": 2,
"target": "1588848338211",
"targetAnchor": 0
}, {
"shape": "flow-polyline-round",
"source": "1588848338211",
"sourceAnchor": 2,
"target": "1588848351476",
"targetAnchor": 0,
"label": "否"
}, {
"shape": "flow-polyline-round",
"source": "1588848351476",
"sourceAnchor": 2,
"target": "end-node",
"targetAnchor": 0
}, {
"shape": "flow-polyline-round",
"source": "1588848338211",
"sourceAnchor": 3,
"target": "1588848397511",
"targetAnchor": 1,
"label": "是"
}, {
"shape": "flow-polyline-round",
"source": "1588848436694",
"sourceAnchor": 3,
"target": "1588848449431",
"targetAnchor": 0,
"label": "是"
}, {
"shape": "flow-polyline-round",
"source": "1588848449431",
"sourceAnchor": 1,
"target": "1588848351476",
"targetAnchor": 3
}, {
"shape": "flow-polyline-round",
"source": "1588848436694",
"sourceAnchor": 2,
"target": "1588848351476",
"targetAnchor": 3,
"label": "否"
}, {
"shape": "flow-polyline-round",
"source": "1588848397511",
"sourceAnchor": 3,
"target": "1588848436694",
"targetAnchor": 1
}]
};
new Vue({
el: '#app',
template: "\n <div class=\"app\" style=\"height: 100vh\">\n <vue-flow-editor\n ref=\"editor\"\n :data=\"state.data\"\n :grid=\"showGrid\"\n :miniMap=\"showMiniMap\"\n :onRef=\"onRef\"\n :multipleSelect=\"true\"\n :loading=\"state.editorLoading\"\n\n :disabledUndo=\"false\"\n :disabledDragEdge=\"true\"\n\n :beforeDelete=\"handleBeforeDelete\"\n :afterDelete=\"handleAfterDelete\"\n :beforeAdd=\"handleBeforeAdd\"\n :afterAdd=\"handleAfterAdd\"\n\n @dblclick-node=\"onDblclickNode\"\n @dblclick-edge=\"onDblClickEdge\"\n >\n <div slot=\"menu\">\n <vue-flow-edit-menu-group v-for=\"(group,groupIndex) in state.menuData\" :label=\"group.label\" :key=\"groupIndex\">\n <vue-flow-edit-menu v-for=\"(menu,menuIndex) in group.menus\" :key=\"menuIndex\" :model=\"menu\"/>\n </vue-flow-edit-menu-group>\n </div>\n <div slot=\"model\" style=\"padding: 16px\">\n <el-form v-if=\"!!state.detailModel\" ref=\"form\" :model=\"state.detailModel\" label-width=\"100px\">\n\n <el-form-item label=\"\u8282\u70B9\u540D\u79F0\" prop=\"label\">\n <el-input v-model=\"state.detailModel.label\"/>\n </el-form-item>\n\n <template v-if=\"state.detailModel.type !== 'edge'\">\n <el-form-item label=\"\u8282\u70B9\u80CC\u666F\u8272\" prop=\"style.fill\">\n <el-color-picker v-model=\"state.detailModel.style.fill\"/>\n </el-form-item>\n <el-form-item label=\"\u8282\u70B9\u8FB9\u6846\u8272\" prop=\"style.stroke\">\n <el-color-picker v-model=\"state.detailModel.style.stroke\"/>\n </el-form-item>\n <el-form-item label=\"\u8282\u70B9\u6587\u5B57\u8272\" prop=\"labelCfg.style.stroke\">\n <el-color-picker v-model=\"state.detailModel.labelCfg.style.fill\"/>\n </el-form-item>\n </template>\n\n </el-form>\n </div>\n\n <template slot=\"toolbar\">\n <el-tooltip content=\"\u6D4B\u8BD5\u5DE5\u5177\u680F\u63D2\u69FD\">\n <div class=\"vue-flow-editor-toolbar-item\">\n <i class=\"el-icon-search\"/>\n </div>\n </el-tooltip>\n </template>\n\n <template slot=\"foot\">\n <el-button type=\"primary\" @click=\"save\">\u4FDD\u5B58</el-button>\n <el-button @click=\"cancel\">\u53D6\u6D88</el-button>\n </template>\n </vue-flow-editor>\n </div>\n ",
setup: function setup() {
var state = reactive({
data: AppData,
detailModel: null,
editorLoading: false,
selectOptions: [{
label: '待确认',
value: '0'
}, {
label: '填写表单',
value: '1'
}, {
label: '部门负责人审批',
value: '2'
}, {
label: '总经理审批',
value: '3'
}],
menuData: [{
label: '流程节点',
menus: [{
label: '开始',
shape: 'ellipse',
id: 'start-node'
}, {
label: '结束',
shape: 'ellipse',
id: 'end-node'
}, {
label: '审批节点',
busType: '123'
}, {
label: '判断节点'
}]
}, {
label: '其他形状节点',
menus: [{
label: '矩形节点',
shape: 'rect'
}, {
label: '圆形节点',
shape: 'circle'
}, {
label: '椭圆节点',
shape: 'ellipse'
}, {
label: '菱形节点',
shape: 'diamond'
}, {
label: '三角形节点',
shape: 'triangle'
}, {
label: '星形节点',
shape: 'star'
}]
}]
});
var editor;
function onDblclickNode(e) {
var model = G6.Util.clone(e.item.get('model'));
model.style = model.style || {};
model.labelCfg = model.labelCfg || {
style: {}
};
state.detailModel = model;
editor.openModel();
}
function onDblClickEdge(e) {
var _e$item$get = e.item.get('model'),
source = _e$item$get.source,
target = _e$item$get.target,
style = _e$item$get.style,
labelCfg = _e$item$get.labelCfg,
label = _e$item$get.label;
var model = {
label: label,
source: source,
target: target,
style: style || {},
labelCfg: labelCfg || {
style: {}
},
type: null,
id: null
};
model.type = e.item.get('type');
model.id = e.item.get('id');
state.detailModel = model;
editor.openModel();
}
function cancel() {
editor.closeModel();
}
function save() {
editor.updateModel(state.detailModel);
editor.closeModel();
}
function handleBeforeDelete(_x, _x2) {
return _handleBeforeDelete.apply(this, arguments);
}
function _handleBeforeDelete() {
_handleBeforeDelete = _asyncToGenerator( /*#__PURE__*/regeneratorRuntime.mark(function _callee(model, type) {
return regeneratorRuntime.wrap(function _callee$(_context) {
while (1) {
switch (_context.prev = _context.next) {
case 0:
if (!(type === 'node')) {
_context.next = 8;
break;
}
if (!(model.label === '开始')) {
_context.next = 8;
break;
}
state.editorLoading = true;
_context.next = 5;
return delay(1000);
case 5:
state.editorLoading = false;
Ele.Notification.error('不可以删除【开始】节点');
return _context.abrupt("return", Promise.reject('reject'));
case 8:
case "end":
return _context.stop();
}
}
}, _callee);
}));
return _handleBeforeDelete.apply(this, arguments);
}
function handleAfterDelete(model, type) {
if (type === 'edge') {
console.log('delete edge');
} else {
console.log('after delete', model.label, _objectSpread({}, model));
}
}
function handleBeforeAdd(model, type) {
if (type === 'edge') {
if (model.source === 'end-node') {
Ele.Notification.error('结束节点不能输出连线其他节点');
return Promise.reject('reject');
}
}
if (type === 'node') {
if (model.id === 'start-node' || model.id === 'end-node') {
var data = editor.editorState.graph.save();
for (var i = 0; i < data.nodes.length; i++) {
var node = data.nodes[i];
if (node.id === model.id) {
Ele.Notification.error("\u53EA\u80FD\u6709\u4E00\u4E2A" + (model.id === 'start-node' ? '开始' : '结束') + "\u8282\u70B9");
return Promise.reject('reject');
}
}
}
}
}
function handleAfterAdd(model, type) {
if (type === 'edge') {
console.log("\u65B0\u589E\u8FDE\u63A5\u7EBF");
}
}
return {
state: state,
showGrid: true,
showMiniMap: false,
onDblclickNode: onDblclickNode,
onDblClickEdge: onDblClickEdge,
cancel: cancel,
save: save,
handleBeforeDelete: handleBeforeDelete,
handleAfterDelete: handleAfterDelete,
handleBeforeAdd: handleBeforeAdd,
handleAfterAdd: handleAfterAdd,
onRef: function onRef(e) {
return editor = e;
}
};
}
}).$mount();
</script>
</body>
</html>
\ No newline at end of file
No preview for this file type
<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 52.4 (67378) - http://www.bohemiancoding.com/sketch -->
<title>Group 15</title>
<desc>Created with Sketch.</desc>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="营销活动-新建活动-维护活动事件收起" transform="translate(-234.000000, -1217.000000)">
<g id="Group-17" transform="translate(218.000000, 749.000000)">
<g transform="translate(16.000000, 348.000000)" id="Group-5-Copy-6">
<g transform="translate(0.000000, 120.000000)">
<g id="Group-15">
<rect id="Rectangle-5" fill="#9283ED" x="0" y="0" width="24" height="24"></rect>
<g id="_08-2广告投放日志" transform="translate(6.000000, 7.000000)" fill="#FFFFFF" fill-rule="nonzero">
<path d="M0.00260303688,7.74513716 C0.00260303688,8.17286783 0.449075922,8.49206983 0.888885033,8.49206983 L5.7401128,8.49206983 L5.7401128,9.49436409 L3.23453362,9.49436409 C3.08126681,9.49436409 2.97464642,9.59650873 2.97464642,9.74334165 C2.97464642,9.89017456 3.08126681,9.9923192 3.23453362,9.9923192 L8.97204338,9.9923192 C9.1253102,9.9923192 9.23193059,9.89017456 9.23193059,9.74334165 C9.23193059,9.59650873 9.1253102,9.49436409 8.97204338,9.49436409 L6.2598872,9.49436409 L6.2598872,8.49206983 L11.317692,8.49206983 C11.7641649,8.49206983 11.997397,8.16648379 11.997397,7.74513716 L11.997397,7.4961596 L0.00260303688,7.4961596 L0.00260303688,7.74513716 Z M4.03418655,2.81027431 C3.95422126,3.02733167 3.95422126,3.02733167 3.94089371,3.07201995 L3.43444685,4.45097257 L4.64059002,4.45097257 L4.12081562,3.07201995 C4.1008243,3.02094763 4.08749675,2.96349127 4.03418655,2.81027431 Z M7.81921041,2.82304239 L7.03954881,2.82304239 L7.03954881,5.43411471 L7.81254664,5.43411471 C8.2123731,5.43411471 8.4722603,5.34473815 8.67217354,5.13406484 C8.90540564,4.89785536 9.03201735,4.53396509 9.03201735,4.09985037 C9.03201735,3.65935162 8.91873319,3.32738155 8.69216486,3.10394015 C8.49225163,2.89965087 8.2390282,2.82304239 7.81921041,2.82304239 Z" id="Shape"></path>
<path d="M11.317692,0.0012967581 L0.888885033,0.0012967581 C0.442412148,0.0012967581 0.00260303688,0.352418953 0.00260303688,0.805685786 L0.00260303688,7.52169576 L11.997397,7.52169576 L11.997397,0.812069825 C11.997397,0.352418953 11.7375098,0.0012967581 11.317692,0.0012967581 Z M5.14703688,5.98952618 C5.12038178,5.83630923 5.06707158,5.63201995 5.00709761,5.49795511 L4.81384816,4.98723192 L3.26118872,4.98723192 L3.06793926,5.49795511 C2.9813102,5.72139651 2.96131887,5.79162095 2.92133623,5.98952618 L2.1216833,5.98952618 C2.19498482,5.86184539 2.29494143,5.65117207 2.3815705,5.44049875 L3.45443818,2.74643392 C3.54773102,2.51022444 3.58771367,2.39531172 3.60770499,2.27401496 L4.45400434,2.27401496 C4.48065944,2.38892768 4.50731453,2.45915212 4.6205987,2.74643392 L5.70013015,5.44049875 C5.82007809,5.74054863 5.88005206,5.86822943 5.9466898,5.98952618 L5.14703688,5.98952618 Z M9.13197397,5.58094763 C8.81877657,5.86184539 8.43227766,5.98952618 7.85919306,5.98952618 L6.97291106,5.98952618 C6.67304121,5.98952618 6.55309328,5.99591022 6.35318004,6.00229426 C6.37983514,5.81077307 6.39316269,5.66394015 6.39316269,5.38942643 L6.39316269,2.86773067 C6.39316269,2.60598504 6.38649892,2.46553616 6.35318004,2.26124688 C6.5464295,2.26763092 6.66637744,2.27401496 6.97291106,2.27401496 L7.85252928,2.27401496 C8.45893275,2.27401496 8.85875922,2.39531172 9.16529284,2.68259352 C9.52513666,3.00179551 9.70505857,3.48698254 9.70505857,4.09346633 C9.70505857,4.73187032 9.51180911,5.23620948 9.13197397,5.58094763 Z" id="Shape"></path>
</g>
</g>
</g>
</g>
</g>
</g>
</g>
</svg>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<svg width="56px" height="56px" viewBox="0 0 56 56" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 52.4 (67378) - http://www.bohemiancoding.com/sketch -->
<title>优惠券@3x</title>
<desc>Created with Sketch.</desc>
<g id="老窖智慧零售" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="Artboard" transform="translate(-340.000000, -460.000000)">
<g id="优惠券" transform="translate(340.000000, 460.000000)">
<rect id="Rectangle-5" fill="#ED8383" x="0" y="0" width="56" height="56"></rect>
<g transform="translate(14.000000, 16.500000)" fill="#FFFFFF" fill-rule="nonzero" id="Shape">
<path d="M27.0206628,14.1948104 C25.4237817,13.4113107 24.9447174,12.784511 24.9447173,11.5309115 C24.9447173,10.355662 25.4237816,9.72886228 27.0206628,8.86701265 C27.8989474,8.31856287 27.9787914,7.84846309 27.9787914,7.0649634 L27.9787914,2.59901529 C27.9787914,1.18871589 26.7811306,0.0134663967 25.3439376,0.0134663967 L2.66822611,0.0134663967 C1.23103312,0.0134663967 0.0333723158,1.18871589 0.0333723158,2.59901529 L0.0333723158,7.0649634 C0.0333723158,7.7701131 0.113216386,8.39691282 0.991500982,8.86701265 C1.6302534,9.1804125 3.06744639,9.96391219 3.06744639,11.5309115 C3.06744639,13.2546108 2.02947368,13.8030605 1.07134502,14.1164604 L0.991500982,14.1164604 C0.113216386,14.6649102 0.0333723158,15.5267598 0.0333723158,15.9185097 L0.0333723158,20.3844578 C0.0333723158,21.7947572 1.23103312,22.9700067 2.66822611,22.9700067 L25.3439376,22.9700067 C26.7811306,22.9700067 27.9787914,21.7947572 27.9787914,20.3844578 L27.9787914,15.9185097 C27.9787914,15.05666 27.6594152,14.7432602 27.0206628,14.1948104 Z M18.2378168,12.6278111 C18.7168811,12.6278111 19.1161014,13.0195609 19.1161014,13.4896607 C19.1161014,13.9597605 18.7168811,14.3515103 18.2378168,14.3515103 L14.8843665,14.3515103 L14.8843665,17.6422089 C14.8843665,18.1123087 14.4851462,18.5040585 14.0060819,18.5040585 C13.5270175,18.5040585 13.1277973,18.1123087 13.1277973,17.6422089 L13.1277973,14.3515103 L9.77434698,14.3515103 C9.29528267,14.3515103 8.89606239,13.9597605 8.89606239,13.4896607 C8.89606239,13.0195609 9.29528267,12.6278111 9.77434698,12.6278111 L13.1277973,12.6278111 L13.1277973,10.5907119 L9.53481481,10.5907119 C9.05575049,10.5907119 8.65653021,10.1989621 8.65653021,9.72886228 C8.65653021,9.25876249 9.05575049,8.86701265 9.53481481,8.86701265 L12.1696686,8.86701265 L9.3751267,6.12476379 C9.05575049,5.81136393 9.05575049,5.26291416 9.3751267,4.9495143 C9.69450291,4.63611444 10.2534113,4.63611444 10.5727875,4.9495143 L14.0060819,8.31856287 L17.4393762,4.9495143 C17.7587524,4.63611444 18.3176608,4.63611444 18.6370371,4.9495143 C18.9564133,5.26291416 18.9564133,5.81136393 18.6370371,6.12476379 L15.8424951,8.86701265 L18.3975049,8.86701265 C18.8765692,8.86701265 19.2757895,9.25876249 19.2757895,9.72886228 C19.2757895,10.1989621 18.8765692,10.5907119 18.3975049,10.5907119 L14.8045224,10.5907119 L14.8045224,12.6278111 L18.2378168,12.6278111 Z"></path>
</g>
</g>
</g>
</g>
</svg>
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<svg width="24px" height="24px" viewBox="0 0 24 24" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
<!-- Generator: Sketch 52.4 (67378) - http://www.bohemiancoding.com/sketch -->
<title>Group 7</title>
<desc>Created with Sketch.</desc>
<g id="Page-1" stroke="none" stroke-width="1" fill="none" fill-rule="evenodd">
<g id="营销活动-新建活动-维护活动事件收起" transform="translate(-234.000000, -841.000000)">
<g id="Group-5" transform="translate(234.000000, 841.000000)">
<g id="Group-7">
<rect id="Rectangle-5" fill="#92DBA8" x="0" y="0" width="24" height="24"></rect>
<g id="选择人群" transform="translate(6.000000, 6.000000)" fill="#FFFFFF" fill-rule="nonzero">
<path d="M6.07954684,0.0879348459 C6.27427218,0.127410328 6.46293741,0.192275772 6.64067902,0.280859046 C6.8102853,0.353040709 6.96966437,0.447089399 7.11473896,0.560599136 C7.23270551,0.650915741 7.33983452,0.754492582 7.43400383,0.869277845 C7.6096674,1.10543782 7.743798,1.3696474 7.83066622,1.65062084 C7.90815537,1.91946351 7.96635063,2.19346537 8.0048107,2.47054868 C8.04340938,2.76803307 8.0627987,3.06768277 8.06285885,3.36764619 C8.11177355,3.40676316 8.15141696,3.45617153 8.17895517,3.51233934 C8.20586843,3.57834292 8.22848954,3.64600647 8.24667801,3.71490975 C8.26110047,3.81406862 8.26110047,3.91478338 8.24667801,4.01394225 C8.23277675,4.14333562 8.20019089,4.27004632 8.14993109,4.39014444 C8.11296793,4.47042419 8.06034712,4.54256479 7.995136,4.60236105 C7.94281913,4.66039795 7.87607712,4.70365254 7.80164215,4.72776178 C7.80164215,4.8435163 7.7339193,4.95927082 7.69522052,5.08467155 L7.57912421,5.36441163 C7.53873738,5.44264135 7.48652933,5.51421609 7.42432913,5.57662825 L7.09538957,5.86601454 C6.998376,5.97618752 6.94056027,6.11521495 6.9309198,6.26150915 C6.92102457,6.37383202 6.92102457,6.48680361 6.9309198,6.59912648 C6.94377829,6.7163127 6.97649181,6.83047294 7.02766672,6.93674384 C7.02766672,6.93674384 7.09538957,7.01391352 7.02766672,7.03320594 C5.85840368,8.06021036 5.57533261,9.76573242 6.35043823,11.1135527 L0.00383979921,11.1135527 C0.0484947862,10.5618146 0.17230191,10.0193167 0.371478118,9.50263565 C0.655979451,8.98774748 1.08682936,8.56823433 1.6098388,8.29685942 C2.03232171,8.06520837 2.47617744,7.87462158 2.9352717,7.72773304 C3.1657719,7.66730243 3.38475398,7.56953942 3.58347612,7.43834674 C3.70199899,7.35979832 3.80938384,7.26570764 3.90274097,7.15860665 C3.97403505,7.07963202 4.02982465,6.9880138 4.06721075,6.88851279 C4.10475758,6.80334678 4.12450861,6.71144666 4.12525891,6.6184189 L4.12525891,6.29044778 C4.10646041,6.13177975 4.02669894,5.98655719 3.90274097,5.88530696 C3.80599404,5.77919865 3.68989773,5.67309034 3.58347612,5.57662825 C3.51809483,5.51907594 3.46820471,5.44611919 3.43835572,5.36441163 L3.32225941,5.07502534 C3.32225941,4.95927082 3.24486187,4.8435163 3.21583779,4.72776178 C3.16234019,4.7083446 3.11307613,4.67887318 3.07071739,4.64094589 C3.01825681,4.59636533 2.97262442,4.54436756 2.9352717,4.48660654 C2.87405499,4.39967129 2.83125963,4.30120353 2.8095007,4.19722024 C2.78360203,4.08973474 2.78030797,3.97806645 2.799826,3.8692491 C2.80890097,3.77732376 2.82837411,3.68671665 2.85787416,3.59915523 C2.88751895,3.51394932 2.93352397,3.43531575 2.99331985,3.36764619 C2.97402783,3.08501761 2.97402783,2.80140832 2.99331985,2.51877973 C3.03093752,2.26213766 3.08261314,2.00774044 3.14811494,1.75672915 C3.2195717,1.47529117 3.34435992,1.21007834 3.51575327,0.975386155 C3.64051454,0.79730067 3.79040549,0.638104288 3.96078913,0.502721876 C4.11460093,0.381471537 4.28374782,0.280930836 4.46387315,0.203689366 C4.627772,0.114590779 4.80373999,0.0496093232 4.98630656,0.0107651658 C5.15046156,-0.00358290013 5.31556089,-0.00358290013 5.47971589,0.0107651658 C5.68206408,0.0120561592 5.88349756,0.0379710558 6.07954684,0.0879348459 Z M8.42082248,8.63447676 L7.82099153,9.17466451 L8.54659349,10.0524696 L9.06902689,10.6601808 L9.66885784,10.1199931 L11.7005433,8.25827458 C12.1888311,9.19354561 12.0510689,10.3317812 11.3536536,11.1243887 C10.6562384,11.9169962 9.54228256,12.2013293 8.54867674,11.8403487 C7.55507093,11.4793681 6.88570713,10.5471485 6.86319696,9.49298944 C6.85800832,8.46749633 7.46798468,7.53817708 8.4125917,7.13243506 C9.35719873,6.72669304 10.4535645,6.92307817 11.1974593,7.63127094 L9.14642444,9.50263565 L8.42082248,8.63447676 Z" id="Shape"></path>
</g>
</g>
</g>
</g>
</g>
</svg>
\ No newline at end of file
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width,initial-scale=1.0">
<link rel="stylesheet" href="./lib/element-ui.css">
</head>
<body>
<script src="./lib/g6.umd.min.js"></script>
<!-- <script src="./lib/vue.min.js"></script>
<script src="./lib/element-ui.js"></script> -->
<div id="app"></div>
</body>
</html>
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
No preview for this file type
No preview for this file type
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
import vca from '@vue/composition-api'
export default vca
export * from '@vue/composition-api'
\ No newline at end of file
(function (global, factory) {
typeof exports === 'object' && typeof module !== 'undefined' ? factory(exports, require('vue')) :
typeof define === 'function' && define.amd ? define(['exports', 'vue'], factory) :
(global = global || self, factory(global.vueCompositionApi = {}, global.Vue));
}(this, function (exports, Vue) { 'use strict';
Vue = Vue && Vue.hasOwnProperty('default') ? Vue['default'] : Vue;
var toString = function (x) { return Object.prototype.toString.call(x); };
function isNative(Ctor) {
return typeof Ctor === 'function' && /native code/.test(Ctor.toString());
}
var hasSymbol = typeof Symbol !== 'undefined' && isNative(Symbol) &&
typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);
var noopFn = function (_) { return _; };
var sharedPropertyDefinition = {
enumerable: true,
configurable: true,
get: noopFn,
set: noopFn,
};
function proxy(target, key, _a) {
var get = _a.get, set = _a.set;
sharedPropertyDefinition.get = get || noopFn;
sharedPropertyDefinition.set = set || noopFn;
Object.defineProperty(target, key, sharedPropertyDefinition);
}
function def(obj, key, val, enumerable) {
Object.defineProperty(obj, key, {
value: val,
enumerable: !!enumerable,
writable: true,
configurable: true,
});
}
var hasOwnProperty = Object.prototype.hasOwnProperty;
function hasOwn(obj, key) {
return hasOwnProperty.call(obj, key);
}
function assert(condition, msg) {
if (!condition)
throw new Error("[vue-composition-api] " + msg);
}
function isArray(x) {
return Array.isArray(x);
}
function isPlainObject(x) {
return toString(x) === '[object Object]';
}
function isFunction(x) {
return typeof x === 'function';
}
function warn(msg, vm) {
Vue.util.warn(msg, vm);
}
function logError(err, vm, info) {
{
warn("Error in " + info + ": \"" + err.toString() + "\"", vm);
}
if (typeof window !== 'undefined' && typeof console !== 'undefined') {
console.error(err);
}
else {
throw err;
}
}
var currentVue = null;
var currentVM = null;
function getCurrentVue() {
{
assert(currentVue, "must call Vue.use(plugin) before using any function.");
}
return currentVue;
}
function setCurrentVue(vue) {
currentVue = vue;
}
function getCurrentVM() {
return currentVM;
}
function setCurrentVM(vm) {
currentVM = vm;
}
function ensureCurrentVMInFn(hook) {
var vm = getCurrentVM();
{
assert(vm, "\"" + hook + "\" get called outside of \"setup()\"");
}
return vm;
}
function defineComponentInstance(Ctor, options) {
if (options === void 0) { options = {}; }
var silent = Ctor.config.silent;
Ctor.config.silent = true;
var vm = new Ctor(options);
Ctor.config.silent = silent;
return vm;
}
function isComponentInstance(obj) {
return currentVue && obj instanceof currentVue;
}
function createSlotProxy(vm, slotName) {
return function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
if (!vm.$scopedSlots[slotName]) {
return warn("slots." + slotName + "() got called outside of the \"render()\" scope", vm);
}
return vm.$scopedSlots[slotName].apply(vm, args);
};
}
function resolveSlots(slots, normalSlots) {
var res;
if (!slots) {
res = {};
}
else if (slots._normalized) {
// fast path 1: child component re-render only, parent did not change
return slots._normalized;
}
else {
res = {};
for (var key in slots) {
if (slots[key] && key[0] !== '$') {
res[key] = true;
}
}
}
// expose normal slots on scopedSlots
for (var key in normalSlots) {
if (!(key in res)) {
res[key] = true;
}
}
return res;
}
function createSymbol(name) {
return hasSymbol ? Symbol.for(name) : name;
}
var WatcherPreFlushQueueKey = createSymbol('vfa.key.preFlushQueue');
var WatcherPostFlushQueueKey = createSymbol('vfa.key.postFlushQueue');
var AccessControlIdentifierKey = createSymbol('vfa.key.accessControlIdentifier');
var ReactiveIdentifierKey = createSymbol('vfa.key.reactiveIdentifier');
var NonReactiveIdentifierKey = createSymbol('vfa.key.nonReactiveIdentifier');
// must be a string, symbol key is ignored in reactive
var RefKey = 'vfa.key.refKey';
var RefImpl = /** @class */ (function () {
function RefImpl(_a) {
var get = _a.get, set = _a.set;
proxy(this, 'value', {
get: get,
set: set,
});
}
return RefImpl;
}());
function createRef(options) {
// seal the ref, this could prevent ref from being observed
// It's safe to seal the ref, since we really shoulnd't extend it.
// related issues: #79
return Object.seal(new RefImpl(options));
}
// implementation
function ref(raw) {
// if (isRef(raw)) {
// return {} as any;
// }
var _a;
var value = reactive((_a = {}, _a[RefKey] = raw, _a));
return createRef({
get: function () { return value[RefKey]; },
set: function (v) { return (value[RefKey] = v); },
});
}
function isRef(value) {
return value instanceof RefImpl;
}
function toRefs(obj) {
if (!isPlainObject(obj))
return obj;
var res = {};
Object.keys(obj).forEach(function (key) {
var val = obj[key];
// use ref to proxy the property
if (!isRef(val)) {
val = createRef({
get: function () { return obj[key]; },
set: function (v) { return (obj[key] = v); },
});
}
// todo
res[key] = val;
});
return res;
}
var AccessControlIdentifier = {};
var ReactiveIdentifier = {};
var NonReactiveIdentifier = {};
function isNonReactive(obj) {
return (hasOwn(obj, NonReactiveIdentifierKey) && obj[NonReactiveIdentifierKey] === NonReactiveIdentifier);
}
function isReactive(obj) {
return hasOwn(obj, ReactiveIdentifierKey) && obj[ReactiveIdentifierKey] === ReactiveIdentifier;
}
/**
* Proxing property access of target.
* We can do unwrapping and other things here.
*/
function setupAccessControl(target) {
if (!isPlainObject(target) ||
isNonReactive(target) ||
Array.isArray(target) ||
isRef(target) ||
isComponentInstance(target)) {
return;
}
if (hasOwn(target, AccessControlIdentifierKey) &&
target[AccessControlIdentifierKey] === AccessControlIdentifier) {
return;
}
if (Object.isExtensible(target)) {
def(target, AccessControlIdentifierKey, AccessControlIdentifier);
}
var keys = Object.keys(target);
for (var i = 0; i < keys.length; i++) {
defineAccessControl(target, keys[i]);
}
}
/**
* Auto unwrapping when access property
*/
function defineAccessControl(target, key, val) {
if (key === '__ob__')
return;
var getter;
var setter;
var property = Object.getOwnPropertyDescriptor(target, key);
if (property) {
if (property.configurable === false) {
return;
}
getter = property.get;
setter = property.set;
if ((!getter || setter) /* not only have getter */ && arguments.length === 2) {
val = target[key];
}
}
setupAccessControl(val);
Object.defineProperty(target, key, {
enumerable: true,
configurable: true,
get: function getterHandler() {
var value = getter ? getter.call(target) : val;
// if the key is equal to RefKey, skip the unwrap logic
if (key !== RefKey && isRef(value)) {
return value.value;
}
else {
return value;
}
},
set: function setterHandler(newVal) {
if (getter && !setter)
return;
var value = getter ? getter.call(target) : val;
// If the key is equal to RefKey, skip the unwrap logic
// If and only if "value" is ref and "newVal" is not a ref,
// the assignment should be proxied to "value" ref.
if (key !== RefKey && isRef(value) && !isRef(newVal)) {
value.value = newVal;
}
else if (setter) {
setter.call(target, newVal);
}
else {
val = newVal;
}
setupAccessControl(newVal);
},
});
}
function observe(obj) {
var Vue = getCurrentVue();
var observed;
if (Vue.observable) {
observed = Vue.observable(obj);
}
else {
var vm = defineComponentInstance(Vue, {
data: {
$$state: obj,
},
});
observed = vm._data.$$state;
}
return observed;
}
/**
* Make obj reactivity
*/
function reactive(obj) {
if (!obj) {
warn('"reactive()" is called without provide an "object".');
// @ts-ignore
return;
}
if (!isPlainObject(obj) || isReactive(obj) || isNonReactive(obj) || !Object.isExtensible(obj)) {
return obj;
}
var observed = observe(obj);
def(observed, ReactiveIdentifierKey, ReactiveIdentifier);
setupAccessControl(observed);
return observed;
}
/**
* Make sure obj can't be a reactive
*/
function nonReactive(obj) {
if (!isPlainObject(obj)) {
return obj;
}
// set the vue observable flag at obj
def(obj, '__ob__', observe({}).__ob__);
// mark as nonReactive
def(obj, NonReactiveIdentifierKey, NonReactiveIdentifier);
return obj;
}
function isUndef(v) {
return v === undefined || v === null;
}
function isPrimitive(value) {
return (typeof value === 'string' ||
typeof value === 'number' ||
// $flow-disable-line
typeof value === 'symbol' ||
typeof value === 'boolean');
}
function isValidArrayIndex(val) {
var n = parseFloat(String(val));
return n >= 0 && Math.floor(n) === n && isFinite(val);
}
/**
* Set a property on an object. Adds the new property, triggers change
* notification and intercept it's subsequent access if the property doesn't
* already exist.
*/
function set(target, key, val) {
var Vue = getCurrentVue();
var _a = Vue.util, warn = _a.warn, defineReactive = _a.defineReactive;
if (isUndef(target) || isPrimitive(target)) {
warn("Cannot set reactive property on undefined, null, or primitive value: " + target);
}
if (isArray(target) && isValidArrayIndex(key)) {
target.length = Math.max(target.length, key);
target.splice(key, 1, val);
return val;
}
if (key in target && !(key in Object.prototype)) {
target[key] = val;
return val;
}
var ob = target.__ob__;
if (target._isVue || (ob && ob.vmCount)) {
warn('Avoid adding reactive properties to a Vue instance or its root $data ' +
'at runtime - declare it upfront in the data option.');
return val;
}
if (!ob) {
target[key] = val;
return val;
}
defineReactive(ob.value, key, val);
// IMPORTANT: define access control before trigger watcher
defineAccessControl(target, key, val);
ob.dep.notify();
return val;
}
/**
* Helper that recursively merges two data objects together.
*/
function mergeData(from, to) {
if (!from)
return to;
var key;
var toVal;
var fromVal;
var keys = hasSymbol ? Reflect.ownKeys(from) : Object.keys(from);
for (var i = 0; i < keys.length; i++) {
key = keys[i];
// in case the object is already observed...
if (key === '__ob__')
continue;
toVal = to[key];
fromVal = from[key];
if (!hasOwn(to, key)) {
to[key] = fromVal;
}
else if (toVal !== fromVal &&
(isPlainObject(toVal) && !isRef(toVal)) &&
(isPlainObject(fromVal) && !isRef(fromVal))) {
mergeData(fromVal, toVal);
}
}
return to;
}
function install(Vue, _install) {
if (currentVue && currentVue === Vue) {
{
assert(false, 'already installed. Vue.use(plugin) should be called only once');
}
return;
}
Vue.config.optionMergeStrategies.setup = function (parent, child) {
return function mergedSetupFn(props, context) {
return mergeData(typeof parent === 'function' ? parent(props, context) || {} : {}, typeof child === 'function' ? child(props, context) || {} : {});
};
};
setCurrentVue(Vue);
_install(Vue);
}
/*! *****************************************************************************
Copyright (c) Microsoft Corporation. All rights reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
this file except in compliance with the License. You may obtain a copy of the
License at http://www.apache.org/licenses/LICENSE-2.0
THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
MERCHANTABLITY OR NON-INFRINGEMENT.
See the Apache Version 2.0 License for specific language governing permissions
and limitations under the License.
***************************************************************************** */
var __assign = function() {
__assign = Object.assign || function __assign(t) {
for (var s, i = 1, n = arguments.length; i < n; i++) {
s = arguments[i];
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];
}
return t;
};
return __assign.apply(this, arguments);
};
function __read(o, n) {
var m = typeof Symbol === "function" && o[Symbol.iterator];
if (!m) return o;
var i = m.call(o), r, ar = [], e;
try {
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
}
catch (error) { e = { error: error }; }
finally {
try {
if (r && !r.done && (m = i["return"])) m.call(i);
}
finally { if (e) throw e.error; }
}
return ar;
}
function __spread() {
for (var ar = [], i = 0; i < arguments.length; i++)
ar = ar.concat(__read(arguments[i]));
return ar;
}
function set$1(vm, key, value) {
var state = (vm.__secret_vfa_state__ = vm.__secret_vfa_state__ || {});
state[key] = value;
}
function get(vm, key) {
return (vm.__secret_vfa_state__ || {})[key];
}
var vmStateManager = {
set: set$1,
get: get,
};
function asVmProperty(vm, propName, propValue) {
var props = vm.$options.props;
if (!(propName in vm) && !(props && hasOwn(props, propName))) {
proxy(vm, propName, {
get: function () { return propValue.value; },
set: function (val) {
propValue.value = val;
},
});
{
// expose binding to Vue Devtool as a data property
// delay this until state has been resolved to prevent repeated works
vm.$nextTick(function () {
proxy(vm._data, propName, {
get: function () { return propValue.value; },
set: function (val) {
propValue.value = val;
},
});
});
}
}
else {
if (props && hasOwn(props, propName)) {
warn("The setup binding property \"" + propName + "\" is already declared as a prop.", vm);
}
else {
warn("The setup binding property \"" + propName + "\" is already declared.", vm);
}
}
}
function updateTemplateRef(vm) {
var rawBindings = vmStateManager.get(vm, 'rawBindings') || {};
if (!rawBindings || !Object.keys(rawBindings).length)
return;
var refs = vm.$refs;
var oldRefKeys = vmStateManager.get(vm, 'refs') || [];
for (var index = 0; index < oldRefKeys.length; index++) {
var key = oldRefKeys[index];
var setupValue = rawBindings[key];
if (!refs[key] && setupValue && isRef(setupValue)) {
setupValue.value = null;
}
}
var newKeys = Object.keys(refs);
var validNewKeys = [];
for (var index = 0; index < newKeys.length; index++) {
var key = newKeys[index];
var setupValue = rawBindings[key];
if (refs[key] && setupValue && isRef(setupValue)) {
setupValue.value = refs[key];
validNewKeys.push(key);
}
}
vmStateManager.set(vm, 'refs', validNewKeys);
}
function resolveScopedSlots(vm, slotsProxy) {
var parentVode = vm.$options._parentVnode;
if (!parentVode)
return;
var prevSlots = vmStateManager.get(vm, 'slots') || [];
var curSlots = resolveSlots(parentVode.data.scopedSlots, vm.$slots);
// remove staled slots
for (var index = 0; index < prevSlots.length; index++) {
var key = prevSlots[index];
if (!curSlots[key]) {
delete slotsProxy[key];
}
}
// proxy fresh slots
var slotNames = Object.keys(curSlots);
for (var index = 0; index < slotNames.length; index++) {
var key = slotNames[index];
if (!slotsProxy[key]) {
slotsProxy[key] = createSlotProxy(vm, key);
}
}
vmStateManager.set(vm, 'slots', slotNames);
}
function activateCurrentInstance(vm, fn, onError) {
var preVm = getCurrentVM();
setCurrentVM(vm);
try {
return fn(vm);
}
catch (err) {
if (onError) {
onError(err);
}
else {
throw err;
}
}
finally {
setCurrentVM(preVm);
}
}
function mixin(Vue) {
Vue.mixin({
beforeCreate: functionApiInit,
mounted: function () {
updateTemplateRef(this);
},
updated: function () {
updateTemplateRef(this);
},
});
/**
* Vuex init hook, injected into each instances init hooks list.
*/
function functionApiInit() {
var vm = this;
var $options = vm.$options;
var setup = $options.setup, render = $options.render;
if (render) {
// keep currentInstance accessible for createElement
$options.render = function () {
var _this = this;
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
return activateCurrentInstance(vm, function () { return render.apply(_this, args); });
};
}
if (!setup) {
return;
}
if (typeof setup !== 'function') {
{
warn('The "setup" option should be a function that returns a object in component definitions.', vm);
}
return;
}
var data = $options.data;
// wrapper the data option, so we can invoke setup before data get resolved
$options.data = function wrappedData() {
initSetup(vm, vm.$props);
return typeof data === 'function'
? data.call(vm, vm)
: data || {};
};
}
function initSetup(vm, props) {
if (props === void 0) { props = {}; }
var setup = vm.$options.setup;
var ctx = createSetupContext(vm);
// resolve scopedSlots and slots to functions
resolveScopedSlots(vm, ctx.slots);
var binding;
activateCurrentInstance(vm, function () {
binding = setup(props, ctx);
});
if (!binding)
return;
if (isFunction(binding)) {
// keep typescript happy with the binding type.
var bindingFunc_1 = binding;
// keep currentInstance accessible for createElement
vm.$options.render = function () {
resolveScopedSlots(vm, ctx.slots);
return activateCurrentInstance(vm, function () { return bindingFunc_1(); });
};
return;
}
if (isPlainObject(binding)) {
var bindingObj_1 = binding;
vmStateManager.set(vm, 'rawBindings', binding);
Object.keys(binding).forEach(function (name) {
var bindingValue = bindingObj_1[name];
// only make primitive value reactive
if (!isRef(bindingValue)) {
if (isReactive(bindingValue)) {
bindingValue = ref(bindingValue);
}
else {
// a non-reactive should not don't get reactivity
bindingValue = ref(nonReactive(bindingValue));
}
}
asVmProperty(vm, name, bindingValue);
});
return;
}
{
assert(false, "\"setup\" must return a \"Object\" or a \"Function\", got \"" + Object.prototype.toString
.call(binding)
.slice(8, -1) + "\"");
}
}
function createSetupContext(vm) {
var ctx = {
slots: {},
};
var props = [
'root',
'parent',
'refs',
'attrs',
'listeners',
'isServer',
'ssrContext',
];
var methodReturnVoid = ['emit'];
props.forEach(function (key) {
var _a;
var targetKey;
var srcKey;
if (Array.isArray(key)) {
_a = __read(key, 2), targetKey = _a[0], srcKey = _a[1];
}
else {
targetKey = srcKey = key;
}
srcKey = "$" + srcKey;
proxy(ctx, targetKey, {
get: function () { return vm[srcKey]; },
set: function () {
warn("Cannot assign to '" + targetKey + "' because it is a read-only property", vm);
},
});
});
methodReturnVoid.forEach(function (key) {
var srcKey = "$" + key;
proxy(ctx, key, {
get: function () {
return function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
var fn = vm[srcKey];
fn.apply(vm, args);
};
},
});
});
return ctx;
}
}
var fallbackCreateElement;
var createElement = function createElement() {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
if (!currentVM) {
warn('`createElement()` has been called outside of render function.');
if (!fallbackCreateElement) {
fallbackCreateElement = defineComponentInstance(getCurrentVue()).$createElement;
}
return fallbackCreateElement.apply(fallbackCreateElement, args);
}
return currentVM.$createElement.apply(currentVM, args);
};
// implementation, close to no-op
function defineComponent(options) {
return options;
}
// implementation, deferring to defineComponent, but logging a warning in dev mode
function createComponent(options) {
{
Vue.util.warn('`createComponent` has been renamed to `defineComponent`.');
}
return defineComponent(options);
}
var genName = function (name) { return "on" + (name[0].toUpperCase() + name.slice(1)); };
function createLifeCycle(lifeCyclehook) {
return function (callback) {
var vm = ensureCurrentVMInFn(genName(lifeCyclehook));
injectHookOption(getCurrentVue(), vm, lifeCyclehook, callback);
};
}
function injectHookOption(Vue, vm, hook, val) {
var options = vm.$options;
var mergeFn = Vue.config.optionMergeStrategies[hook];
options[hook] = mergeFn(options[hook], val);
}
// export const onCreated = createLifeCycle('created');
var onBeforeMount = createLifeCycle('beforeMount');
var onMounted = createLifeCycle('mounted');
var onBeforeUpdate = createLifeCycle('beforeUpdate');
var onUpdated = createLifeCycle('updated');
var onBeforeUnmount = createLifeCycle('beforeDestroy');
var onUnmounted = createLifeCycle('destroyed');
var onErrorCaptured = createLifeCycle('errorCaptured');
var onActivated = createLifeCycle('activated');
var onDeactivated = createLifeCycle('deactivated');
var onServerPrefetch = createLifeCycle('serverPrefetch');
var fallbackVM;
function flushPreQueue() {
flushQueue(this, WatcherPreFlushQueueKey);
}
function flushPostQueue() {
flushQueue(this, WatcherPostFlushQueueKey);
}
function hasWatchEnv(vm) {
return vm[WatcherPreFlushQueueKey] !== undefined;
}
function installWatchEnv(vm) {
vm[WatcherPreFlushQueueKey] = [];
vm[WatcherPostFlushQueueKey] = [];
vm.$on('hook:beforeUpdate', flushPreQueue);
vm.$on('hook:updated', flushPostQueue);
}
function getWatcherOption(options) {
return __assign({
lazy: false,
deep: false,
flush: 'post',
}, options);
}
function getWatcherVM() {
var vm = getCurrentVM();
if (!vm) {
if (!fallbackVM) {
fallbackVM = defineComponentInstance(getCurrentVue());
}
vm = fallbackVM;
}
else if (!hasWatchEnv(vm)) {
installWatchEnv(vm);
}
return vm;
}
function flushQueue(vm, key) {
var queue = vm[key];
for (var index = 0; index < queue.length; index++) {
queue[index]();
}
queue.length = 0;
}
function queueFlushJob(vm, fn, mode) {
// flush all when beforeUpdate and updated are not fired
var fallbackFlush = function () {
vm.$nextTick(function () {
if (vm[WatcherPreFlushQueueKey].length) {
flushQueue(vm, WatcherPreFlushQueueKey);
}
if (vm[WatcherPostFlushQueueKey].length) {
flushQueue(vm, WatcherPostFlushQueueKey);
}
});
};
switch (mode) {
case 'pre':
fallbackFlush();
vm[WatcherPreFlushQueueKey].push(fn);
break;
case 'post':
fallbackFlush();
vm[WatcherPostFlushQueueKey].push(fn);
break;
default:
assert(false, "flush must be one of [\"post\", \"pre\", \"sync\"], but got " + mode);
break;
}
}
function createVueWatcher(vm, getter, callback, options) {
var index = vm._watchers.length;
// @ts-ignore: use undocumented options
vm.$watch(getter, callback, {
immediate: options.immediateInvokeCallback,
deep: options.deep,
lazy: options.noRun,
sync: options.sync,
before: options.before,
});
return vm._watchers[index];
}
function createWatcher(vm, source, cb, options) {
var flushMode = options.flush;
var isSync = flushMode === 'sync';
var cleanup;
var registerCleanup = function (fn) {
cleanup = function () {
try {
fn();
}
catch (error) {
logError(error, vm, 'onCleanup()');
}
};
};
// cleanup before running getter again
var runCleanup = function () {
if (cleanup) {
cleanup();
cleanup = null;
}
};
var createScheduler = function (fn) {
if (isSync || /* without a current active instance, ignore pre|post mode */ vm === fallbackVM) {
return fn;
}
return (function () {
var args = [];
for (var _i = 0; _i < arguments.length; _i++) {
args[_i] = arguments[_i];
}
return queueFlushJob(vm, function () {
fn.apply(void 0, __spread(args));
}, flushMode);
});
};
// effect watch
if (cb === null) {
var getter_1 = function () { return source(registerCleanup); };
var watcher_1 = createVueWatcher(vm, getter_1, noopFn, {
noRun: true,
deep: options.deep,
sync: isSync,
before: runCleanup,
});
// enable the watcher update
watcher_1.lazy = false;
var originGet = watcher_1.get.bind(watcher_1);
if (isSync) {
watcher_1.get();
}
else {
vm.$nextTick(originGet);
}
watcher_1.get = createScheduler(originGet);
return function () {
watcher_1.teardown();
runCleanup();
};
}
var getter;
if (Array.isArray(source)) {
getter = function () { return source.map(function (s) { return (isRef(s) ? s.value : s()); }); };
}
else if (isRef(source)) {
getter = function () { return source.value; };
}
else {
getter = source;
}
var applyCb = function (n, o) {
// cleanup before running cb again
runCleanup();
cb(n, o, registerCleanup);
};
var callback = createScheduler(applyCb);
if (!options.lazy) {
var originalCallbck_1 = callback;
// `shiftCallback` is used to handle the first sync effect run.
// The subsequent callbacks will redirect to `callback`.
var shiftCallback_1 = function (n, o) {
shiftCallback_1 = originalCallbck_1;
applyCb(n, o);
};
callback = function (n, o) {
shiftCallback_1(n, o);
};
}
// @ts-ignore: use undocumented option "sync"
var stop = vm.$watch(getter, callback, {
immediate: !options.lazy,
deep: options.deep,
sync: isSync,
});
return function () {
stop();
runCleanup();
};
}
function watchEffect(effect, options) {
var opts = getWatcherOption(options);
var vm = getWatcherVM();
return createWatcher(vm, effect, null, opts);
}
function watch(source, cb, options) {
var callback = null;
if (typeof cb === 'function') {
// source watch
callback = cb;
}
else {
// effect watch
{
warn("`watch(fn, options?)` signature has been moved to a separate API. " +
"Use `watchEffect(fn, options?)` instead. `watch` now only " +
"supports `watch(source, cb, options?) signature.");
}
options = cb;
callback = null;
}
var opts = getWatcherOption(options);
var vm = getWatcherVM();
return createWatcher(vm, source, callback, opts);
}
// implement
function computed(options) {
var vm = getCurrentVM();
var get, set;
if (typeof options === 'function') {
get = options;
}
else {
get = options.get;
set = options.set;
}
var computedHost = defineComponentInstance(getCurrentVue(), {
computed: {
$$state: {
get: get,
set: set,
},
},
});
return createRef({
get: function () { return computedHost.$$state; },
set: function (v) {
if (!set) {
warn('Computed property was assigned to but it has no setter.', vm);
return;
}
computedHost.$$state = v;
},
});
}
var NOT_FOUND = {};
function resolveInject(provideKey, vm) {
var source = vm;
while (source) {
// @ts-ignore
if (source._provided && hasOwn(source._provided, provideKey)) {
//@ts-ignore
return source._provided[provideKey];
}
source = source.$parent;
}
return NOT_FOUND;
}
function provide(key, value) {
var vm = ensureCurrentVMInFn('provide');
if (!vm._provided) {
var provideCache_1 = {};
Object.defineProperty(vm, '_provided', {
get: function () { return provideCache_1; },
set: function (v) { return Object.assign(provideCache_1, v); },
});
}
vm._provided[key] = value;
}
function inject(key, defaultValue) {
if (!key) {
return defaultValue;
}
var vm = ensureCurrentVMInFn('inject');
var val = resolveInject(key, vm);
if (val !== NOT_FOUND) {
return val;
}
else if (defaultValue !== undefined) {
return defaultValue;
}
else {
warn("Injection \"" + String(key) + "\" not found", vm);
}
}
var _install = function (Vue) { return install(Vue, mixin); };
var plugin = {
install: _install,
};
// Auto install if it is not done yet and `window` has `Vue`.
// To allow users to avoid auto-installation in some cases,
if (currentVue && typeof window !== 'undefined' && window.Vue) {
_install(window.Vue);
}
exports.computed = computed;
exports.createComponent = createComponent;
exports.createElement = createElement;
exports.default = plugin;
exports.defineComponent = defineComponent;
exports.getCurrentInstance = getCurrentVM;
exports.inject = inject;
exports.isRef = isRef;
exports.onActivated = onActivated;
exports.onBeforeMount = onBeforeMount;
exports.onBeforeUnmount = onBeforeUnmount;
exports.onBeforeUpdate = onBeforeUpdate;
exports.onDeactivated = onDeactivated;
exports.onErrorCaptured = onErrorCaptured;
exports.onMounted = onMounted;
exports.onServerPrefetch = onServerPrefetch;
exports.onUnmounted = onUnmounted;
exports.onUpdated = onUpdated;
exports.provide = provide;
exports.reactive = reactive;
exports.ref = ref;
exports.set = set;
exports.toRefs = toRefs;
exports.watch = watch;
exports.watchEffect = watchEffect;
Object.defineProperty(exports, '__esModule', { value: true });
}));
\ No newline at end of file
/*!
* Vue.js v2.6.11
* (c) 2014-2019 Evan You
* Released under the MIT License.
*/
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e=e||self).Vue=t()}(this,function(){"use strict";var e=Object.freeze({});function t(e){return null==e}function n(e){return null!=e}function r(e){return!0===e}function i(e){return"string"==typeof e||"number"==typeof e||"symbol"==typeof e||"boolean"==typeof e}function o(e){return null!==e&&"object"==typeof e}var a=Object.prototype.toString;function s(e){return"[object Object]"===a.call(e)}function c(e){var t=parseFloat(String(e));return t>=0&&Math.floor(t)===t&&isFinite(e)}function u(e){return n(e)&&"function"==typeof e.then&&"function"==typeof e.catch}function l(e){return null==e?"":Array.isArray(e)||s(e)&&e.toString===a?JSON.stringify(e,null,2):String(e)}function f(e){var t=parseFloat(e);return isNaN(t)?e:t}function p(e,t){for(var n=Object.create(null),r=e.split(","),i=0;i<r.length;i++)n[r[i]]=!0;return t?function(e){return n[e.toLowerCase()]}:function(e){return n[e]}}var d=p("slot,component",!0),v=p("key,ref,slot,slot-scope,is");function h(e,t){if(e.length){var n=e.indexOf(t);if(n>-1)return e.splice(n,1)}}var m=Object.prototype.hasOwnProperty;function y(e,t){return m.call(e,t)}function g(e){var t=Object.create(null);return function(n){return t[n]||(t[n]=e(n))}}var _=/-(\w)/g,b=g(function(e){return e.replace(_,function(e,t){return t?t.toUpperCase():""})}),$=g(function(e){return e.charAt(0).toUpperCase()+e.slice(1)}),w=/\B([A-Z])/g,C=g(function(e){return e.replace(w,"-$1").toLowerCase()});var x=Function.prototype.bind?function(e,t){return e.bind(t)}:function(e,t){function n(n){var r=arguments.length;return r?r>1?e.apply(t,arguments):e.call(t,n):e.call(t)}return n._length=e.length,n};function k(e,t){t=t||0;for(var n=e.length-t,r=new Array(n);n--;)r[n]=e[n+t];return r}function A(e,t){for(var n in t)e[n]=t[n];return e}function O(e){for(var t={},n=0;n<e.length;n++)e[n]&&A(t,e[n]);return t}function S(e,t,n){}var T=function(e,t,n){return!1},E=function(e){return e};function N(e,t){if(e===t)return!0;var n=o(e),r=o(t);if(!n||!r)return!n&&!r&&String(e)===String(t);try{var i=Array.isArray(e),a=Array.isArray(t);if(i&&a)return e.length===t.length&&e.every(function(e,n){return N(e,t[n])});if(e instanceof Date&&t instanceof Date)return e.getTime()===t.getTime();if(i||a)return!1;var s=Object.keys(e),c=Object.keys(t);return s.length===c.length&&s.every(function(n){return N(e[n],t[n])})}catch(e){return!1}}function j(e,t){for(var n=0;n<e.length;n++)if(N(e[n],t))return n;return-1}function D(e){var t=!1;return function(){t||(t=!0,e.apply(this,arguments))}}var L="data-server-rendered",M=["component","directive","filter"],I=["beforeCreate","created","beforeMount","mounted","beforeUpdate","updated","beforeDestroy","destroyed","activated","deactivated","errorCaptured","serverPrefetch"],F={optionMergeStrategies:Object.create(null),silent:!1,productionTip:!1,devtools:!1,performance:!1,errorHandler:null,warnHandler:null,ignoredElements:[],keyCodes:Object.create(null),isReservedTag:T,isReservedAttr:T,isUnknownElement:T,getTagNamespace:S,parsePlatformTagName:E,mustUseProp:T,async:!0,_lifecycleHooks:I},P=/a-zA-Z\u00B7\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u037D\u037F-\u1FFF\u200C-\u200D\u203F-\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD/;function R(e,t,n,r){Object.defineProperty(e,t,{value:n,enumerable:!!r,writable:!0,configurable:!0})}var H=new RegExp("[^"+P.source+".$_\\d]");var B,U="__proto__"in{},z="undefined"!=typeof window,V="undefined"!=typeof WXEnvironment&&!!WXEnvironment.platform,K=V&&WXEnvironment.platform.toLowerCase(),J=z&&window.navigator.userAgent.toLowerCase(),q=J&&/msie|trident/.test(J),W=J&&J.indexOf("msie 9.0")>0,Z=J&&J.indexOf("edge/")>0,G=(J&&J.indexOf("android"),J&&/iphone|ipad|ipod|ios/.test(J)||"ios"===K),X=(J&&/chrome\/\d+/.test(J),J&&/phantomjs/.test(J),J&&J.match(/firefox\/(\d+)/)),Y={}.watch,Q=!1;if(z)try{var ee={};Object.defineProperty(ee,"passive",{get:function(){Q=!0}}),window.addEventListener("test-passive",null,ee)}catch(e){}var te=function(){return void 0===B&&(B=!z&&!V&&"undefined"!=typeof global&&(global.process&&"server"===global.process.env.VUE_ENV)),B},ne=z&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__;function re(e){return"function"==typeof e&&/native code/.test(e.toString())}var ie,oe="undefined"!=typeof Symbol&&re(Symbol)&&"undefined"!=typeof Reflect&&re(Reflect.ownKeys);ie="undefined"!=typeof Set&&re(Set)?Set:function(){function e(){this.set=Object.create(null)}return e.prototype.has=function(e){return!0===this.set[e]},e.prototype.add=function(e){this.set[e]=!0},e.prototype.clear=function(){this.set=Object.create(null)},e}();var ae=S,se=0,ce=function(){this.id=se++,this.subs=[]};ce.prototype.addSub=function(e){this.subs.push(e)},ce.prototype.removeSub=function(e){h(this.subs,e)},ce.prototype.depend=function(){ce.target&&ce.target.addDep(this)},ce.prototype.notify=function(){for(var e=this.subs.slice(),t=0,n=e.length;t<n;t++)e[t].update()},ce.target=null;var ue=[];function le(e){ue.push(e),ce.target=e}function fe(){ue.pop(),ce.target=ue[ue.length-1]}var pe=function(e,t,n,r,i,o,a,s){this.tag=e,this.data=t,this.children=n,this.text=r,this.elm=i,this.ns=void 0,this.context=o,this.fnContext=void 0,this.fnOptions=void 0,this.fnScopeId=void 0,this.key=t&&t.key,this.componentOptions=a,this.componentInstance=void 0,this.parent=void 0,this.raw=!1,this.isStatic=!1,this.isRootInsert=!0,this.isComment=!1,this.isCloned=!1,this.isOnce=!1,this.asyncFactory=s,this.asyncMeta=void 0,this.isAsyncPlaceholder=!1},de={child:{configurable:!0}};de.child.get=function(){return this.componentInstance},Object.defineProperties(pe.prototype,de);var ve=function(e){void 0===e&&(e="");var t=new pe;return t.text=e,t.isComment=!0,t};function he(e){return new pe(void 0,void 0,void 0,String(e))}function me(e){var t=new pe(e.tag,e.data,e.children&&e.children.slice(),e.text,e.elm,e.context,e.componentOptions,e.asyncFactory);return t.ns=e.ns,t.isStatic=e.isStatic,t.key=e.key,t.isComment=e.isComment,t.fnContext=e.fnContext,t.fnOptions=e.fnOptions,t.fnScopeId=e.fnScopeId,t.asyncMeta=e.asyncMeta,t.isCloned=!0,t}var ye=Array.prototype,ge=Object.create(ye);["push","pop","shift","unshift","splice","sort","reverse"].forEach(function(e){var t=ye[e];R(ge,e,function(){for(var n=[],r=arguments.length;r--;)n[r]=arguments[r];var i,o=t.apply(this,n),a=this.__ob__;switch(e){case"push":case"unshift":i=n;break;case"splice":i=n.slice(2)}return i&&a.observeArray(i),a.dep.notify(),o})});var _e=Object.getOwnPropertyNames(ge),be=!0;function $e(e){be=e}var we=function(e){var t;this.value=e,this.dep=new ce,this.vmCount=0,R(e,"__ob__",this),Array.isArray(e)?(U?(t=ge,e.__proto__=t):function(e,t,n){for(var r=0,i=n.length;r<i;r++){var o=n[r];R(e,o,t[o])}}(e,ge,_e),this.observeArray(e)):this.walk(e)};function Ce(e,t){var n;if(o(e)&&!(e instanceof pe))return y(e,"__ob__")&&e.__ob__ instanceof we?n=e.__ob__:be&&!te()&&(Array.isArray(e)||s(e))&&Object.isExtensible(e)&&!e._isVue&&(n=new we(e)),t&&n&&n.vmCount++,n}function xe(e,t,n,r,i){var o=new ce,a=Object.getOwnPropertyDescriptor(e,t);if(!a||!1!==a.configurable){var s=a&&a.get,c=a&&a.set;s&&!c||2!==arguments.length||(n=e[t]);var u=!i&&Ce(n);Object.defineProperty(e,t,{enumerable:!0,configurable:!0,get:function(){var t=s?s.call(e):n;return ce.target&&(o.depend(),u&&(u.dep.depend(),Array.isArray(t)&&function e(t){for(var n=void 0,r=0,i=t.length;r<i;r++)(n=t[r])&&n.__ob__&&n.__ob__.dep.depend(),Array.isArray(n)&&e(n)}(t))),t},set:function(t){var r=s?s.call(e):n;t===r||t!=t&&r!=r||s&&!c||(c?c.call(e,t):n=t,u=!i&&Ce(t),o.notify())}})}}function ke(e,t,n){if(Array.isArray(e)&&c(t))return e.length=Math.max(e.length,t),e.splice(t,1,n),n;if(t in e&&!(t in Object.prototype))return e[t]=n,n;var r=e.__ob__;return e._isVue||r&&r.vmCount?n:r?(xe(r.value,t,n),r.dep.notify(),n):(e[t]=n,n)}function Ae(e,t){if(Array.isArray(e)&&c(t))e.splice(t,1);else{var n=e.__ob__;e._isVue||n&&n.vmCount||y(e,t)&&(delete e[t],n&&n.dep.notify())}}we.prototype.walk=function(e){for(var t=Object.keys(e),n=0;n<t.length;n++)xe(e,t[n])},we.prototype.observeArray=function(e){for(var t=0,n=e.length;t<n;t++)Ce(e[t])};var Oe=F.optionMergeStrategies;function Se(e,t){if(!t)return e;for(var n,r,i,o=oe?Reflect.ownKeys(t):Object.keys(t),a=0;a<o.length;a++)"__ob__"!==(n=o[a])&&(r=e[n],i=t[n],y(e,n)?r!==i&&s(r)&&s(i)&&Se(r,i):ke(e,n,i));return e}function Te(e,t,n){return n?function(){var r="function"==typeof t?t.call(n,n):t,i="function"==typeof e?e.call(n,n):e;return r?Se(r,i):i}:t?e?function(){return Se("function"==typeof t?t.call(this,this):t,"function"==typeof e?e.call(this,this):e)}:t:e}function Ee(e,t){var n=t?e?e.concat(t):Array.isArray(t)?t:[t]:e;return n?function(e){for(var t=[],n=0;n<e.length;n++)-1===t.indexOf(e[n])&&t.push(e[n]);return t}(n):n}function Ne(e,t,n,r){var i=Object.create(e||null);return t?A(i,t):i}Oe.data=function(e,t,n){return n?Te(e,t,n):t&&"function"!=typeof t?e:Te(e,t)},I.forEach(function(e){Oe[e]=Ee}),M.forEach(function(e){Oe[e+"s"]=Ne}),Oe.watch=function(e,t,n,r){if(e===Y&&(e=void 0),t===Y&&(t=void 0),!t)return Object.create(e||null);if(!e)return t;var i={};for(var o in A(i,e),t){var a=i[o],s=t[o];a&&!Array.isArray(a)&&(a=[a]),i[o]=a?a.concat(s):Array.isArray(s)?s:[s]}return i},Oe.props=Oe.methods=Oe.inject=Oe.computed=function(e,t,n,r){if(!e)return t;var i=Object.create(null);return A(i,e),t&&A(i,t),i},Oe.provide=Te;var je=function(e,t){return void 0===t?e:t};function De(e,t,n){if("function"==typeof t&&(t=t.options),function(e,t){var n=e.props;if(n){var r,i,o={};if(Array.isArray(n))for(r=n.length;r--;)"string"==typeof(i=n[r])&&(o[b(i)]={type:null});else if(s(n))for(var a in n)i=n[a],o[b(a)]=s(i)?i:{type:i};e.props=o}}(t),function(e,t){var n=e.inject;if(n){var r=e.inject={};if(Array.isArray(n))for(var i=0;i<n.length;i++)r[n[i]]={from:n[i]};else if(s(n))for(var o in n){var a=n[o];r[o]=s(a)?A({from:o},a):{from:a}}}}(t),function(e){var t=e.directives;if(t)for(var n in t){var r=t[n];"function"==typeof r&&(t[n]={bind:r,update:r})}}(t),!t._base&&(t.extends&&(e=De(e,t.extends,n)),t.mixins))for(var r=0,i=t.mixins.length;r<i;r++)e=De(e,t.mixins[r],n);var o,a={};for(o in e)c(o);for(o in t)y(e,o)||c(o);function c(r){var i=Oe[r]||je;a[r]=i(e[r],t[r],n,r)}return a}function Le(e,t,n,r){if("string"==typeof n){var i=e[t];if(y(i,n))return i[n];var o=b(n);if(y(i,o))return i[o];var a=$(o);return y(i,a)?i[a]:i[n]||i[o]||i[a]}}function Me(e,t,n,r){var i=t[e],o=!y(n,e),a=n[e],s=Pe(Boolean,i.type);if(s>-1)if(o&&!y(i,"default"))a=!1;else if(""===a||a===C(e)){var c=Pe(String,i.type);(c<0||s<c)&&(a=!0)}if(void 0===a){a=function(e,t,n){if(!y(t,"default"))return;var r=t.default;if(e&&e.$options.propsData&&void 0===e.$options.propsData[n]&&void 0!==e._props[n])return e._props[n];return"function"==typeof r&&"Function"!==Ie(t.type)?r.call(e):r}(r,i,e);var u=be;$e(!0),Ce(a),$e(u)}return a}function Ie(e){var t=e&&e.toString().match(/^\s*function (\w+)/);return t?t[1]:""}function Fe(e,t){return Ie(e)===Ie(t)}function Pe(e,t){if(!Array.isArray(t))return Fe(t,e)?0:-1;for(var n=0,r=t.length;n<r;n++)if(Fe(t[n],e))return n;return-1}function Re(e,t,n){le();try{if(t)for(var r=t;r=r.$parent;){var i=r.$options.errorCaptured;if(i)for(var o=0;o<i.length;o++)try{if(!1===i[o].call(r,e,t,n))return}catch(e){Be(e,r,"errorCaptured hook")}}Be(e,t,n)}finally{fe()}}function He(e,t,n,r,i){var o;try{(o=n?e.apply(t,n):e.call(t))&&!o._isVue&&u(o)&&!o._handled&&(o.catch(function(e){return Re(e,r,i+" (Promise/async)")}),o._handled=!0)}catch(e){Re(e,r,i)}return o}function Be(e,t,n){if(F.errorHandler)try{return F.errorHandler.call(null,e,t,n)}catch(t){t!==e&&Ue(t,null,"config.errorHandler")}Ue(e,t,n)}function Ue(e,t,n){if(!z&&!V||"undefined"==typeof console)throw e;console.error(e)}var ze,Ve=!1,Ke=[],Je=!1;function qe(){Je=!1;var e=Ke.slice(0);Ke.length=0;for(var t=0;t<e.length;t++)e[t]()}if("undefined"!=typeof Promise&&re(Promise)){var We=Promise.resolve();ze=function(){We.then(qe),G&&setTimeout(S)},Ve=!0}else if(q||"undefined"==typeof MutationObserver||!re(MutationObserver)&&"[object MutationObserverConstructor]"!==MutationObserver.toString())ze="undefined"!=typeof setImmediate&&re(setImmediate)?function(){setImmediate(qe)}:function(){setTimeout(qe,0)};else{var Ze=1,Ge=new MutationObserver(qe),Xe=document.createTextNode(String(Ze));Ge.observe(Xe,{characterData:!0}),ze=function(){Ze=(Ze+1)%2,Xe.data=String(Ze)},Ve=!0}function Ye(e,t){var n;if(Ke.push(function(){if(e)try{e.call(t)}catch(e){Re(e,t,"nextTick")}else n&&n(t)}),Je||(Je=!0,ze()),!e&&"undefined"!=typeof Promise)return new Promise(function(e){n=e})}var Qe=new ie;function et(e){!function e(t,n){var r,i;var a=Array.isArray(t);if(!a&&!o(t)||Object.isFrozen(t)||t instanceof pe)return;if(t.__ob__){var s=t.__ob__.dep.id;if(n.has(s))return;n.add(s)}if(a)for(r=t.length;r--;)e(t[r],n);else for(i=Object.keys(t),r=i.length;r--;)e(t[i[r]],n)}(e,Qe),Qe.clear()}var tt=g(function(e){var t="&"===e.charAt(0),n="~"===(e=t?e.slice(1):e).charAt(0),r="!"===(e=n?e.slice(1):e).charAt(0);return{name:e=r?e.slice(1):e,once:n,capture:r,passive:t}});function nt(e,t){function n(){var e=arguments,r=n.fns;if(!Array.isArray(r))return He(r,null,arguments,t,"v-on handler");for(var i=r.slice(),o=0;o<i.length;o++)He(i[o],null,e,t,"v-on handler")}return n.fns=e,n}function rt(e,n,i,o,a,s){var c,u,l,f;for(c in e)u=e[c],l=n[c],f=tt(c),t(u)||(t(l)?(t(u.fns)&&(u=e[c]=nt(u,s)),r(f.once)&&(u=e[c]=a(f.name,u,f.capture)),i(f.name,u,f.capture,f.passive,f.params)):u!==l&&(l.fns=u,e[c]=l));for(c in n)t(e[c])&&o((f=tt(c)).name,n[c],f.capture)}function it(e,i,o){var a;e instanceof pe&&(e=e.data.hook||(e.data.hook={}));var s=e[i];function c(){o.apply(this,arguments),h(a.fns,c)}t(s)?a=nt([c]):n(s.fns)&&r(s.merged)?(a=s).fns.push(c):a=nt([s,c]),a.merged=!0,e[i]=a}function ot(e,t,r,i,o){if(n(t)){if(y(t,r))return e[r]=t[r],o||delete t[r],!0;if(y(t,i))return e[r]=t[i],o||delete t[i],!0}return!1}function at(e){return i(e)?[he(e)]:Array.isArray(e)?function e(o,a){var s=[];var c,u,l,f;for(c=0;c<o.length;c++)t(u=o[c])||"boolean"==typeof u||(l=s.length-1,f=s[l],Array.isArray(u)?u.length>0&&(st((u=e(u,(a||"")+"_"+c))[0])&&st(f)&&(s[l]=he(f.text+u[0].text),u.shift()),s.push.apply(s,u)):i(u)?st(f)?s[l]=he(f.text+u):""!==u&&s.push(he(u)):st(u)&&st(f)?s[l]=he(f.text+u.text):(r(o._isVList)&&n(u.tag)&&t(u.key)&&n(a)&&(u.key="__vlist"+a+"_"+c+"__"),s.push(u)));return s}(e):void 0}function st(e){return n(e)&&n(e.text)&&!1===e.isComment}function ct(e,t){if(e){for(var n=Object.create(null),r=oe?Reflect.ownKeys(e):Object.keys(e),i=0;i<r.length;i++){var o=r[i];if("__ob__"!==o){for(var a=e[o].from,s=t;s;){if(s._provided&&y(s._provided,a)){n[o]=s._provided[a];break}s=s.$parent}if(!s&&"default"in e[o]){var c=e[o].default;n[o]="function"==typeof c?c.call(t):c}}}return n}}function ut(e,t){if(!e||!e.length)return{};for(var n={},r=0,i=e.length;r<i;r++){var o=e[r],a=o.data;if(a&&a.attrs&&a.attrs.slot&&delete a.attrs.slot,o.context!==t&&o.fnContext!==t||!a||null==a.slot)(n.default||(n.default=[])).push(o);else{var s=a.slot,c=n[s]||(n[s]=[]);"template"===o.tag?c.push.apply(c,o.children||[]):c.push(o)}}for(var u in n)n[u].every(lt)&&delete n[u];return n}function lt(e){return e.isComment&&!e.asyncFactory||" "===e.text}function ft(t,n,r){var i,o=Object.keys(n).length>0,a=t?!!t.$stable:!o,s=t&&t.$key;if(t){if(t._normalized)return t._normalized;if(a&&r&&r!==e&&s===r.$key&&!o&&!r.$hasNormal)return r;for(var c in i={},t)t[c]&&"$"!==c[0]&&(i[c]=pt(n,c,t[c]))}else i={};for(var u in n)u in i||(i[u]=dt(n,u));return t&&Object.isExtensible(t)&&(t._normalized=i),R(i,"$stable",a),R(i,"$key",s),R(i,"$hasNormal",o),i}function pt(e,t,n){var r=function(){var e=arguments.length?n.apply(null,arguments):n({});return(e=e&&"object"==typeof e&&!Array.isArray(e)?[e]:at(e))&&(0===e.length||1===e.length&&e[0].isComment)?void 0:e};return n.proxy&&Object.defineProperty(e,t,{get:r,enumerable:!0,configurable:!0}),r}function dt(e,t){return function(){return e[t]}}function vt(e,t){var r,i,a,s,c;if(Array.isArray(e)||"string"==typeof e)for(r=new Array(e.length),i=0,a=e.length;i<a;i++)r[i]=t(e[i],i);else if("number"==typeof e)for(r=new Array(e),i=0;i<e;i++)r[i]=t(i+1,i);else if(o(e))if(oe&&e[Symbol.iterator]){r=[];for(var u=e[Symbol.iterator](),l=u.next();!l.done;)r.push(t(l.value,r.length)),l=u.next()}else for(s=Object.keys(e),r=new Array(s.length),i=0,a=s.length;i<a;i++)c=s[i],r[i]=t(e[c],c,i);return n(r)||(r=[]),r._isVList=!0,r}function ht(e,t,n,r){var i,o=this.$scopedSlots[e];o?(n=n||{},r&&(n=A(A({},r),n)),i=o(n)||t):i=this.$slots[e]||t;var a=n&&n.slot;return a?this.$createElement("template",{slot:a},i):i}function mt(e){return Le(this.$options,"filters",e)||E}function yt(e,t){return Array.isArray(e)?-1===e.indexOf(t):e!==t}function gt(e,t,n,r,i){var o=F.keyCodes[t]||n;return i&&r&&!F.keyCodes[t]?yt(i,r):o?yt(o,e):r?C(r)!==t:void 0}function _t(e,t,n,r,i){if(n)if(o(n)){var a;Array.isArray(n)&&(n=O(n));var s=function(o){if("class"===o||"style"===o||v(o))a=e;else{var s=e.attrs&&e.attrs.type;a=r||F.mustUseProp(t,s,o)?e.domProps||(e.domProps={}):e.attrs||(e.attrs={})}var c=b(o),u=C(o);c in a||u in a||(a[o]=n[o],i&&((e.on||(e.on={}))["update:"+o]=function(e){n[o]=e}))};for(var c in n)s(c)}else;return e}function bt(e,t){var n=this._staticTrees||(this._staticTrees=[]),r=n[e];return r&&!t?r:(wt(r=n[e]=this.$options.staticRenderFns[e].call(this._renderProxy,null,this),"__static__"+e,!1),r)}function $t(e,t,n){return wt(e,"__once__"+t+(n?"_"+n:""),!0),e}function wt(e,t,n){if(Array.isArray(e))for(var r=0;r<e.length;r++)e[r]&&"string"!=typeof e[r]&&Ct(e[r],t+"_"+r,n);else Ct(e,t,n)}function Ct(e,t,n){e.isStatic=!0,e.key=t,e.isOnce=n}function xt(e,t){if(t)if(s(t)){var n=e.on=e.on?A({},e.on):{};for(var r in t){var i=n[r],o=t[r];n[r]=i?[].concat(i,o):o}}else;return e}function kt(e,t,n,r){t=t||{$stable:!n};for(var i=0;i<e.length;i++){var o=e[i];Array.isArray(o)?kt(o,t,n):o&&(o.proxy&&(o.fn.proxy=!0),t[o.key]=o.fn)}return r&&(t.$key=r),t}function At(e,t){for(var n=0;n<t.length;n+=2){var r=t[n];"string"==typeof r&&r&&(e[t[n]]=t[n+1])}return e}function Ot(e,t){return"string"==typeof e?t+e:e}function St(e){e._o=$t,e._n=f,e._s=l,e._l=vt,e._t=ht,e._q=N,e._i=j,e._m=bt,e._f=mt,e._k=gt,e._b=_t,e._v=he,e._e=ve,e._u=kt,e._g=xt,e._d=At,e._p=Ot}function Tt(t,n,i,o,a){var s,c=this,u=a.options;y(o,"_uid")?(s=Object.create(o))._original=o:(s=o,o=o._original);var l=r(u._compiled),f=!l;this.data=t,this.props=n,this.children=i,this.parent=o,this.listeners=t.on||e,this.injections=ct(u.inject,o),this.slots=function(){return c.$slots||ft(t.scopedSlots,c.$slots=ut(i,o)),c.$slots},Object.defineProperty(this,"scopedSlots",{enumerable:!0,get:function(){return ft(t.scopedSlots,this.slots())}}),l&&(this.$options=u,this.$slots=this.slots(),this.$scopedSlots=ft(t.scopedSlots,this.$slots)),u._scopeId?this._c=function(e,t,n,r){var i=Pt(s,e,t,n,r,f);return i&&!Array.isArray(i)&&(i.fnScopeId=u._scopeId,i.fnContext=o),i}:this._c=function(e,t,n,r){return Pt(s,e,t,n,r,f)}}function Et(e,t,n,r,i){var o=me(e);return o.fnContext=n,o.fnOptions=r,t.slot&&((o.data||(o.data={})).slot=t.slot),o}function Nt(e,t){for(var n in t)e[b(n)]=t[n]}St(Tt.prototype);var jt={init:function(e,t){if(e.componentInstance&&!e.componentInstance._isDestroyed&&e.data.keepAlive){var r=e;jt.prepatch(r,r)}else{(e.componentInstance=function(e,t){var r={_isComponent:!0,_parentVnode:e,parent:t},i=e.data.inlineTemplate;n(i)&&(r.render=i.render,r.staticRenderFns=i.staticRenderFns);return new e.componentOptions.Ctor(r)}(e,Wt)).$mount(t?e.elm:void 0,t)}},prepatch:function(t,n){var r=n.componentOptions;!function(t,n,r,i,o){var a=i.data.scopedSlots,s=t.$scopedSlots,c=!!(a&&!a.$stable||s!==e&&!s.$stable||a&&t.$scopedSlots.$key!==a.$key),u=!!(o||t.$options._renderChildren||c);t.$options._parentVnode=i,t.$vnode=i,t._vnode&&(t._vnode.parent=i);if(t.$options._renderChildren=o,t.$attrs=i.data.attrs||e,t.$listeners=r||e,n&&t.$options.props){$e(!1);for(var l=t._props,f=t.$options._propKeys||[],p=0;p<f.length;p++){var d=f[p],v=t.$options.props;l[d]=Me(d,v,n,t)}$e(!0),t.$options.propsData=n}r=r||e;var h=t.$options._parentListeners;t.$options._parentListeners=r,qt(t,r,h),u&&(t.$slots=ut(o,i.context),t.$forceUpdate())}(n.componentInstance=t.componentInstance,r.propsData,r.listeners,n,r.children)},insert:function(e){var t,n=e.context,r=e.componentInstance;r._isMounted||(r._isMounted=!0,Yt(r,"mounted")),e.data.keepAlive&&(n._isMounted?((t=r)._inactive=!1,en.push(t)):Xt(r,!0))},destroy:function(e){var t=e.componentInstance;t._isDestroyed||(e.data.keepAlive?function e(t,n){if(n&&(t._directInactive=!0,Gt(t)))return;if(!t._inactive){t._inactive=!0;for(var r=0;r<t.$children.length;r++)e(t.$children[r]);Yt(t,"deactivated")}}(t,!0):t.$destroy())}},Dt=Object.keys(jt);function Lt(i,a,s,c,l){if(!t(i)){var f=s.$options._base;if(o(i)&&(i=f.extend(i)),"function"==typeof i){var p;if(t(i.cid)&&void 0===(i=function(e,i){if(r(e.error)&&n(e.errorComp))return e.errorComp;if(n(e.resolved))return e.resolved;var a=Ht;a&&n(e.owners)&&-1===e.owners.indexOf(a)&&e.owners.push(a);if(r(e.loading)&&n(e.loadingComp))return e.loadingComp;if(a&&!n(e.owners)){var s=e.owners=[a],c=!0,l=null,f=null;a.$on("hook:destroyed",function(){return h(s,a)});var p=function(e){for(var t=0,n=s.length;t<n;t++)s[t].$forceUpdate();e&&(s.length=0,null!==l&&(clearTimeout(l),l=null),null!==f&&(clearTimeout(f),f=null))},d=D(function(t){e.resolved=Bt(t,i),c?s.length=0:p(!0)}),v=D(function(t){n(e.errorComp)&&(e.error=!0,p(!0))}),m=e(d,v);return o(m)&&(u(m)?t(e.resolved)&&m.then(d,v):u(m.component)&&(m.component.then(d,v),n(m.error)&&(e.errorComp=Bt(m.error,i)),n(m.loading)&&(e.loadingComp=Bt(m.loading,i),0===m.delay?e.loading=!0:l=setTimeout(function(){l=null,t(e.resolved)&&t(e.error)&&(e.loading=!0,p(!1))},m.delay||200)),n(m.timeout)&&(f=setTimeout(function(){f=null,t(e.resolved)&&v(null)},m.timeout)))),c=!1,e.loading?e.loadingComp:e.resolved}}(p=i,f)))return function(e,t,n,r,i){var o=ve();return o.asyncFactory=e,o.asyncMeta={data:t,context:n,children:r,tag:i},o}(p,a,s,c,l);a=a||{},$n(i),n(a.model)&&function(e,t){var r=e.model&&e.model.prop||"value",i=e.model&&e.model.event||"input";(t.attrs||(t.attrs={}))[r]=t.model.value;var o=t.on||(t.on={}),a=o[i],s=t.model.callback;n(a)?(Array.isArray(a)?-1===a.indexOf(s):a!==s)&&(o[i]=[s].concat(a)):o[i]=s}(i.options,a);var d=function(e,r,i){var o=r.options.props;if(!t(o)){var a={},s=e.attrs,c=e.props;if(n(s)||n(c))for(var u in o){var l=C(u);ot(a,c,u,l,!0)||ot(a,s,u,l,!1)}return a}}(a,i);if(r(i.options.functional))return function(t,r,i,o,a){var s=t.options,c={},u=s.props;if(n(u))for(var l in u)c[l]=Me(l,u,r||e);else n(i.attrs)&&Nt(c,i.attrs),n(i.props)&&Nt(c,i.props);var f=new Tt(i,c,a,o,t),p=s.render.call(null,f._c,f);if(p instanceof pe)return Et(p,i,f.parent,s);if(Array.isArray(p)){for(var d=at(p)||[],v=new Array(d.length),h=0;h<d.length;h++)v[h]=Et(d[h],i,f.parent,s);return v}}(i,d,a,s,c);var v=a.on;if(a.on=a.nativeOn,r(i.options.abstract)){var m=a.slot;a={},m&&(a.slot=m)}!function(e){for(var t=e.hook||(e.hook={}),n=0;n<Dt.length;n++){var r=Dt[n],i=t[r],o=jt[r];i===o||i&&i._merged||(t[r]=i?Mt(o,i):o)}}(a);var y=i.options.name||l;return new pe("vue-component-"+i.cid+(y?"-"+y:""),a,void 0,void 0,void 0,s,{Ctor:i,propsData:d,listeners:v,tag:l,children:c},p)}}}function Mt(e,t){var n=function(n,r){e(n,r),t(n,r)};return n._merged=!0,n}var It=1,Ft=2;function Pt(e,a,s,c,u,l){return(Array.isArray(s)||i(s))&&(u=c,c=s,s=void 0),r(l)&&(u=Ft),function(e,i,a,s,c){if(n(a)&&n(a.__ob__))return ve();n(a)&&n(a.is)&&(i=a.is);if(!i)return ve();Array.isArray(s)&&"function"==typeof s[0]&&((a=a||{}).scopedSlots={default:s[0]},s.length=0);c===Ft?s=at(s):c===It&&(s=function(e){for(var t=0;t<e.length;t++)if(Array.isArray(e[t]))return Array.prototype.concat.apply([],e);return e}(s));var u,l;if("string"==typeof i){var f;l=e.$vnode&&e.$vnode.ns||F.getTagNamespace(i),u=F.isReservedTag(i)?new pe(F.parsePlatformTagName(i),a,s,void 0,void 0,e):a&&a.pre||!n(f=Le(e.$options,"components",i))?new pe(i,a,s,void 0,void 0,e):Lt(f,a,e,s,i)}else u=Lt(i,a,e,s);return Array.isArray(u)?u:n(u)?(n(l)&&function e(i,o,a){i.ns=o;"foreignObject"===i.tag&&(o=void 0,a=!0);if(n(i.children))for(var s=0,c=i.children.length;s<c;s++){var u=i.children[s];n(u.tag)&&(t(u.ns)||r(a)&&"svg"!==u.tag)&&e(u,o,a)}}(u,l),n(a)&&function(e){o(e.style)&&et(e.style);o(e.class)&&et(e.class)}(a),u):ve()}(e,a,s,c,u)}var Rt,Ht=null;function Bt(e,t){return(e.__esModule||oe&&"Module"===e[Symbol.toStringTag])&&(e=e.default),o(e)?t.extend(e):e}function Ut(e){return e.isComment&&e.asyncFactory}function zt(e){if(Array.isArray(e))for(var t=0;t<e.length;t++){var r=e[t];if(n(r)&&(n(r.componentOptions)||Ut(r)))return r}}function Vt(e,t){Rt.$on(e,t)}function Kt(e,t){Rt.$off(e,t)}function Jt(e,t){var n=Rt;return function r(){null!==t.apply(null,arguments)&&n.$off(e,r)}}function qt(e,t,n){Rt=e,rt(t,n||{},Vt,Kt,Jt,e),Rt=void 0}var Wt=null;function Zt(e){var t=Wt;return Wt=e,function(){Wt=t}}function Gt(e){for(;e&&(e=e.$parent);)if(e._inactive)return!0;return!1}function Xt(e,t){if(t){if(e._directInactive=!1,Gt(e))return}else if(e._directInactive)return;if(e._inactive||null===e._inactive){e._inactive=!1;for(var n=0;n<e.$children.length;n++)Xt(e.$children[n]);Yt(e,"activated")}}function Yt(e,t){le();var n=e.$options[t],r=t+" hook";if(n)for(var i=0,o=n.length;i<o;i++)He(n[i],e,null,e,r);e._hasHookEvent&&e.$emit("hook:"+t),fe()}var Qt=[],en=[],tn={},nn=!1,rn=!1,on=0;var an=0,sn=Date.now;if(z&&!q){var cn=window.performance;cn&&"function"==typeof cn.now&&sn()>document.createEvent("Event").timeStamp&&(sn=function(){return cn.now()})}function un(){var e,t;for(an=sn(),rn=!0,Qt.sort(function(e,t){return e.id-t.id}),on=0;on<Qt.length;on++)(e=Qt[on]).before&&e.before(),t=e.id,tn[t]=null,e.run();var n=en.slice(),r=Qt.slice();on=Qt.length=en.length=0,tn={},nn=rn=!1,function(e){for(var t=0;t<e.length;t++)e[t]._inactive=!0,Xt(e[t],!0)}(n),function(e){var t=e.length;for(;t--;){var n=e[t],r=n.vm;r._watcher===n&&r._isMounted&&!r._isDestroyed&&Yt(r,"updated")}}(r),ne&&F.devtools&&ne.emit("flush")}var ln=0,fn=function(e,t,n,r,i){this.vm=e,i&&(e._watcher=this),e._watchers.push(this),r?(this.deep=!!r.deep,this.user=!!r.user,this.lazy=!!r.lazy,this.sync=!!r.sync,this.before=r.before):this.deep=this.user=this.lazy=this.sync=!1,this.cb=n,this.id=++ln,this.active=!0,this.dirty=this.lazy,this.deps=[],this.newDeps=[],this.depIds=new ie,this.newDepIds=new ie,this.expression="","function"==typeof t?this.getter=t:(this.getter=function(e){if(!H.test(e)){var t=e.split(".");return function(e){for(var n=0;n<t.length;n++){if(!e)return;e=e[t[n]]}return e}}}(t),this.getter||(this.getter=S)),this.value=this.lazy?void 0:this.get()};fn.prototype.get=function(){var e;le(this);var t=this.vm;try{e=this.getter.call(t,t)}catch(e){if(!this.user)throw e;Re(e,t,'getter for watcher "'+this.expression+'"')}finally{this.deep&&et(e),fe(),this.cleanupDeps()}return e},fn.prototype.addDep=function(e){var t=e.id;this.newDepIds.has(t)||(this.newDepIds.add(t),this.newDeps.push(e),this.depIds.has(t)||e.addSub(this))},fn.prototype.cleanupDeps=function(){for(var e=this.deps.length;e--;){var t=this.deps[e];this.newDepIds.has(t.id)||t.removeSub(this)}var n=this.depIds;this.depIds=this.newDepIds,this.newDepIds=n,this.newDepIds.clear(),n=this.deps,this.deps=this.newDeps,this.newDeps=n,this.newDeps.length=0},fn.prototype.update=function(){this.lazy?this.dirty=!0:this.sync?this.run():function(e){var t=e.id;if(null==tn[t]){if(tn[t]=!0,rn){for(var n=Qt.length-1;n>on&&Qt[n].id>e.id;)n--;Qt.splice(n+1,0,e)}else Qt.push(e);nn||(nn=!0,Ye(un))}}(this)},fn.prototype.run=function(){if(this.active){var e=this.get();if(e!==this.value||o(e)||this.deep){var t=this.value;if(this.value=e,this.user)try{this.cb.call(this.vm,e,t)}catch(e){Re(e,this.vm,'callback for watcher "'+this.expression+'"')}else this.cb.call(this.vm,e,t)}}},fn.prototype.evaluate=function(){this.value=this.get(),this.dirty=!1},fn.prototype.depend=function(){for(var e=this.deps.length;e--;)this.deps[e].depend()},fn.prototype.teardown=function(){if(this.active){this.vm._isBeingDestroyed||h(this.vm._watchers,this);for(var e=this.deps.length;e--;)this.deps[e].removeSub(this);this.active=!1}};var pn={enumerable:!0,configurable:!0,get:S,set:S};function dn(e,t,n){pn.get=function(){return this[t][n]},pn.set=function(e){this[t][n]=e},Object.defineProperty(e,n,pn)}function vn(e){e._watchers=[];var t=e.$options;t.props&&function(e,t){var n=e.$options.propsData||{},r=e._props={},i=e.$options._propKeys=[];e.$parent&&$e(!1);var o=function(o){i.push(o);var a=Me(o,t,n,e);xe(r,o,a),o in e||dn(e,"_props",o)};for(var a in t)o(a);$e(!0)}(e,t.props),t.methods&&function(e,t){e.$options.props;for(var n in t)e[n]="function"!=typeof t[n]?S:x(t[n],e)}(e,t.methods),t.data?function(e){var t=e.$options.data;s(t=e._data="function"==typeof t?function(e,t){le();try{return e.call(t,t)}catch(e){return Re(e,t,"data()"),{}}finally{fe()}}(t,e):t||{})||(t={});var n=Object.keys(t),r=e.$options.props,i=(e.$options.methods,n.length);for(;i--;){var o=n[i];r&&y(r,o)||(a=void 0,36!==(a=(o+"").charCodeAt(0))&&95!==a&&dn(e,"_data",o))}var a;Ce(t,!0)}(e):Ce(e._data={},!0),t.computed&&function(e,t){var n=e._computedWatchers=Object.create(null),r=te();for(var i in t){var o=t[i],a="function"==typeof o?o:o.get;r||(n[i]=new fn(e,a||S,S,hn)),i in e||mn(e,i,o)}}(e,t.computed),t.watch&&t.watch!==Y&&function(e,t){for(var n in t){var r=t[n];if(Array.isArray(r))for(var i=0;i<r.length;i++)_n(e,n,r[i]);else _n(e,n,r)}}(e,t.watch)}var hn={lazy:!0};function mn(e,t,n){var r=!te();"function"==typeof n?(pn.get=r?yn(t):gn(n),pn.set=S):(pn.get=n.get?r&&!1!==n.cache?yn(t):gn(n.get):S,pn.set=n.set||S),Object.defineProperty(e,t,pn)}function yn(e){return function(){var t=this._computedWatchers&&this._computedWatchers[e];if(t)return t.dirty&&t.evaluate(),ce.target&&t.depend(),t.value}}function gn(e){return function(){return e.call(this,this)}}function _n(e,t,n,r){return s(n)&&(r=n,n=n.handler),"string"==typeof n&&(n=e[n]),e.$watch(t,n,r)}var bn=0;function $n(e){var t=e.options;if(e.super){var n=$n(e.super);if(n!==e.superOptions){e.superOptions=n;var r=function(e){var t,n=e.options,r=e.sealedOptions;for(var i in n)n[i]!==r[i]&&(t||(t={}),t[i]=n[i]);return t}(e);r&&A(e.extendOptions,r),(t=e.options=De(n,e.extendOptions)).name&&(t.components[t.name]=e)}}return t}function wn(e){this._init(e)}function Cn(e){e.cid=0;var t=1;e.extend=function(e){e=e||{};var n=this,r=n.cid,i=e._Ctor||(e._Ctor={});if(i[r])return i[r];var o=e.name||n.options.name,a=function(e){this._init(e)};return(a.prototype=Object.create(n.prototype)).constructor=a,a.cid=t++,a.options=De(n.options,e),a.super=n,a.options.props&&function(e){var t=e.options.props;for(var n in t)dn(e.prototype,"_props",n)}(a),a.options.computed&&function(e){var t=e.options.computed;for(var n in t)mn(e.prototype,n,t[n])}(a),a.extend=n.extend,a.mixin=n.mixin,a.use=n.use,M.forEach(function(e){a[e]=n[e]}),o&&(a.options.components[o]=a),a.superOptions=n.options,a.extendOptions=e,a.sealedOptions=A({},a.options),i[r]=a,a}}function xn(e){return e&&(e.Ctor.options.name||e.tag)}function kn(e,t){return Array.isArray(e)?e.indexOf(t)>-1:"string"==typeof e?e.split(",").indexOf(t)>-1:(n=e,"[object RegExp]"===a.call(n)&&e.test(t));var n}function An(e,t){var n=e.cache,r=e.keys,i=e._vnode;for(var o in n){var a=n[o];if(a){var s=xn(a.componentOptions);s&&!t(s)&&On(n,o,r,i)}}}function On(e,t,n,r){var i=e[t];!i||r&&i.tag===r.tag||i.componentInstance.$destroy(),e[t]=null,h(n,t)}!function(t){t.prototype._init=function(t){var n=this;n._uid=bn++,n._isVue=!0,t&&t._isComponent?function(e,t){var n=e.$options=Object.create(e.constructor.options),r=t._parentVnode;n.parent=t.parent,n._parentVnode=r;var i=r.componentOptions;n.propsData=i.propsData,n._parentListeners=i.listeners,n._renderChildren=i.children,n._componentTag=i.tag,t.render&&(n.render=t.render,n.staticRenderFns=t.staticRenderFns)}(n,t):n.$options=De($n(n.constructor),t||{},n),n._renderProxy=n,n._self=n,function(e){var t=e.$options,n=t.parent;if(n&&!t.abstract){for(;n.$options.abstract&&n.$parent;)n=n.$parent;n.$children.push(e)}e.$parent=n,e.$root=n?n.$root:e,e.$children=[],e.$refs={},e._watcher=null,e._inactive=null,e._directInactive=!1,e._isMounted=!1,e._isDestroyed=!1,e._isBeingDestroyed=!1}(n),function(e){e._events=Object.create(null),e._hasHookEvent=!1;var t=e.$options._parentListeners;t&&qt(e,t)}(n),function(t){t._vnode=null,t._staticTrees=null;var n=t.$options,r=t.$vnode=n._parentVnode,i=r&&r.context;t.$slots=ut(n._renderChildren,i),t.$scopedSlots=e,t._c=function(e,n,r,i){return Pt(t,e,n,r,i,!1)},t.$createElement=function(e,n,r,i){return Pt(t,e,n,r,i,!0)};var o=r&&r.data;xe(t,"$attrs",o&&o.attrs||e,null,!0),xe(t,"$listeners",n._parentListeners||e,null,!0)}(n),Yt(n,"beforeCreate"),function(e){var t=ct(e.$options.inject,e);t&&($e(!1),Object.keys(t).forEach(function(n){xe(e,n,t[n])}),$e(!0))}(n),vn(n),function(e){var t=e.$options.provide;t&&(e._provided="function"==typeof t?t.call(e):t)}(n),Yt(n,"created"),n.$options.el&&n.$mount(n.$options.el)}}(wn),function(e){var t={get:function(){return this._data}},n={get:function(){return this._props}};Object.defineProperty(e.prototype,"$data",t),Object.defineProperty(e.prototype,"$props",n),e.prototype.$set=ke,e.prototype.$delete=Ae,e.prototype.$watch=function(e,t,n){if(s(t))return _n(this,e,t,n);(n=n||{}).user=!0;var r=new fn(this,e,t,n);if(n.immediate)try{t.call(this,r.value)}catch(e){Re(e,this,'callback for immediate watcher "'+r.expression+'"')}return function(){r.teardown()}}}(wn),function(e){var t=/^hook:/;e.prototype.$on=function(e,n){var r=this;if(Array.isArray(e))for(var i=0,o=e.length;i<o;i++)r.$on(e[i],n);else(r._events[e]||(r._events[e]=[])).push(n),t.test(e)&&(r._hasHookEvent=!0);return r},e.prototype.$once=function(e,t){var n=this;function r(){n.$off(e,r),t.apply(n,arguments)}return r.fn=t,n.$on(e,r),n},e.prototype.$off=function(e,t){var n=this;if(!arguments.length)return n._events=Object.create(null),n;if(Array.isArray(e)){for(var r=0,i=e.length;r<i;r++)n.$off(e[r],t);return n}var o,a=n._events[e];if(!a)return n;if(!t)return n._events[e]=null,n;for(var s=a.length;s--;)if((o=a[s])===t||o.fn===t){a.splice(s,1);break}return n},e.prototype.$emit=function(e){var t=this._events[e];if(t){t=t.length>1?k(t):t;for(var n=k(arguments,1),r='event handler for "'+e+'"',i=0,o=t.length;i<o;i++)He(t[i],this,n,this,r)}return this}}(wn),function(e){e.prototype._update=function(e,t){var n=this,r=n.$el,i=n._vnode,o=Zt(n);n._vnode=e,n.$el=i?n.__patch__(i,e):n.__patch__(n.$el,e,t,!1),o(),r&&(r.__vue__=null),n.$el&&(n.$el.__vue__=n),n.$vnode&&n.$parent&&n.$vnode===n.$parent._vnode&&(n.$parent.$el=n.$el)},e.prototype.$forceUpdate=function(){this._watcher&&this._watcher.update()},e.prototype.$destroy=function(){var e=this;if(!e._isBeingDestroyed){Yt(e,"beforeDestroy"),e._isBeingDestroyed=!0;var t=e.$parent;!t||t._isBeingDestroyed||e.$options.abstract||h(t.$children,e),e._watcher&&e._watcher.teardown();for(var n=e._watchers.length;n--;)e._watchers[n].teardown();e._data.__ob__&&e._data.__ob__.vmCount--,e._isDestroyed=!0,e.__patch__(e._vnode,null),Yt(e,"destroyed"),e.$off(),e.$el&&(e.$el.__vue__=null),e.$vnode&&(e.$vnode.parent=null)}}}(wn),function(e){St(e.prototype),e.prototype.$nextTick=function(e){return Ye(e,this)},e.prototype._render=function(){var e,t=this,n=t.$options,r=n.render,i=n._parentVnode;i&&(t.$scopedSlots=ft(i.data.scopedSlots,t.$slots,t.$scopedSlots)),t.$vnode=i;try{Ht=t,e=r.call(t._renderProxy,t.$createElement)}catch(n){Re(n,t,"render"),e=t._vnode}finally{Ht=null}return Array.isArray(e)&&1===e.length&&(e=e[0]),e instanceof pe||(e=ve()),e.parent=i,e}}(wn);var Sn=[String,RegExp,Array],Tn={KeepAlive:{name:"keep-alive",abstract:!0,props:{include:Sn,exclude:Sn,max:[String,Number]},created:function(){this.cache=Object.create(null),this.keys=[]},destroyed:function(){for(var e in this.cache)On(this.cache,e,this.keys)},mounted:function(){var e=this;this.$watch("include",function(t){An(e,function(e){return kn(t,e)})}),this.$watch("exclude",function(t){An(e,function(e){return!kn(t,e)})})},render:function(){var e=this.$slots.default,t=zt(e),n=t&&t.componentOptions;if(n){var r=xn(n),i=this.include,o=this.exclude;if(i&&(!r||!kn(i,r))||o&&r&&kn(o,r))return t;var a=this.cache,s=this.keys,c=null==t.key?n.Ctor.cid+(n.tag?"::"+n.tag:""):t.key;a[c]?(t.componentInstance=a[c].componentInstance,h(s,c),s.push(c)):(a[c]=t,s.push(c),this.max&&s.length>parseInt(this.max)&&On(a,s[0],s,this._vnode)),t.data.keepAlive=!0}return t||e&&e[0]}}};!function(e){var t={get:function(){return F}};Object.defineProperty(e,"config",t),e.util={warn:ae,extend:A,mergeOptions:De,defineReactive:xe},e.set=ke,e.delete=Ae,e.nextTick=Ye,e.observable=function(e){return Ce(e),e},e.options=Object.create(null),M.forEach(function(t){e.options[t+"s"]=Object.create(null)}),e.options._base=e,A(e.options.components,Tn),function(e){e.use=function(e){var t=this._installedPlugins||(this._installedPlugins=[]);if(t.indexOf(e)>-1)return this;var n=k(arguments,1);return n.unshift(this),"function"==typeof e.install?e.install.apply(e,n):"function"==typeof e&&e.apply(null,n),t.push(e),this}}(e),function(e){e.mixin=function(e){return this.options=De(this.options,e),this}}(e),Cn(e),function(e){M.forEach(function(t){e[t]=function(e,n){return n?("component"===t&&s(n)&&(n.name=n.name||e,n=this.options._base.extend(n)),"directive"===t&&"function"==typeof n&&(n={bind:n,update:n}),this.options[t+"s"][e]=n,n):this.options[t+"s"][e]}})}(e)}(wn),Object.defineProperty(wn.prototype,"$isServer",{get:te}),Object.defineProperty(wn.prototype,"$ssrContext",{get:function(){return this.$vnode&&this.$vnode.ssrContext}}),Object.defineProperty(wn,"FunctionalRenderContext",{value:Tt}),wn.version="2.6.11";var En=p("style,class"),Nn=p("input,textarea,option,select,progress"),jn=function(e,t,n){return"value"===n&&Nn(e)&&"button"!==t||"selected"===n&&"option"===e||"checked"===n&&"input"===e||"muted"===n&&"video"===e},Dn=p("contenteditable,draggable,spellcheck"),Ln=p("events,caret,typing,plaintext-only"),Mn=function(e,t){return Hn(t)||"false"===t?"false":"contenteditable"===e&&Ln(t)?t:"true"},In=p("allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,default,defaultchecked,defaultmuted,defaultselected,defer,disabled,enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,required,reversed,scoped,seamless,selected,sortable,translate,truespeed,typemustmatch,visible"),Fn="http://www.w3.org/1999/xlink",Pn=function(e){return":"===e.charAt(5)&&"xlink"===e.slice(0,5)},Rn=function(e){return Pn(e)?e.slice(6,e.length):""},Hn=function(e){return null==e||!1===e};function Bn(e){for(var t=e.data,r=e,i=e;n(i.componentInstance);)(i=i.componentInstance._vnode)&&i.data&&(t=Un(i.data,t));for(;n(r=r.parent);)r&&r.data&&(t=Un(t,r.data));return function(e,t){if(n(e)||n(t))return zn(e,Vn(t));return""}(t.staticClass,t.class)}function Un(e,t){return{staticClass:zn(e.staticClass,t.staticClass),class:n(e.class)?[e.class,t.class]:t.class}}function zn(e,t){return e?t?e+" "+t:e:t||""}function Vn(e){return Array.isArray(e)?function(e){for(var t,r="",i=0,o=e.length;i<o;i++)n(t=Vn(e[i]))&&""!==t&&(r&&(r+=" "),r+=t);return r}(e):o(e)?function(e){var t="";for(var n in e)e[n]&&(t&&(t+=" "),t+=n);return t}(e):"string"==typeof e?e:""}var Kn={svg:"http://www.w3.org/2000/svg",math:"http://www.w3.org/1998/Math/MathML"},Jn=p("html,body,base,head,link,meta,style,title,address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,s,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,embed,object,param,source,canvas,script,noscript,del,ins,caption,col,colgroup,table,thead,tbody,td,th,tr,button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,output,progress,select,textarea,details,dialog,menu,menuitem,summary,content,element,shadow,template,blockquote,iframe,tfoot"),qn=p("svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view",!0),Wn=function(e){return Jn(e)||qn(e)};function Zn(e){return qn(e)?"svg":"math"===e?"math":void 0}var Gn=Object.create(null);var Xn=p("text,number,password,search,email,tel,url");function Yn(e){if("string"==typeof e){var t=document.querySelector(e);return t||document.createElement("div")}return e}var Qn=Object.freeze({createElement:function(e,t){var n=document.createElement(e);return"select"!==e?n:(t.data&&t.data.attrs&&void 0!==t.data.attrs.multiple&&n.setAttribute("multiple","multiple"),n)},createElementNS:function(e,t){return document.createElementNS(Kn[e],t)},createTextNode:function(e){return document.createTextNode(e)},createComment:function(e){return document.createComment(e)},insertBefore:function(e,t,n){e.insertBefore(t,n)},removeChild:function(e,t){e.removeChild(t)},appendChild:function(e,t){e.appendChild(t)},parentNode:function(e){return e.parentNode},nextSibling:function(e){return e.nextSibling},tagName:function(e){return e.tagName},setTextContent:function(e,t){e.textContent=t},setStyleScope:function(e,t){e.setAttribute(t,"")}}),er={create:function(e,t){tr(t)},update:function(e,t){e.data.ref!==t.data.ref&&(tr(e,!0),tr(t))},destroy:function(e){tr(e,!0)}};function tr(e,t){var r=e.data.ref;if(n(r)){var i=e.context,o=e.componentInstance||e.elm,a=i.$refs;t?Array.isArray(a[r])?h(a[r],o):a[r]===o&&(a[r]=void 0):e.data.refInFor?Array.isArray(a[r])?a[r].indexOf(o)<0&&a[r].push(o):a[r]=[o]:a[r]=o}}var nr=new pe("",{},[]),rr=["create","activate","update","remove","destroy"];function ir(e,i){return e.key===i.key&&(e.tag===i.tag&&e.isComment===i.isComment&&n(e.data)===n(i.data)&&function(e,t){if("input"!==e.tag)return!0;var r,i=n(r=e.data)&&n(r=r.attrs)&&r.type,o=n(r=t.data)&&n(r=r.attrs)&&r.type;return i===o||Xn(i)&&Xn(o)}(e,i)||r(e.isAsyncPlaceholder)&&e.asyncFactory===i.asyncFactory&&t(i.asyncFactory.error))}function or(e,t,r){var i,o,a={};for(i=t;i<=r;++i)n(o=e[i].key)&&(a[o]=i);return a}var ar={create:sr,update:sr,destroy:function(e){sr(e,nr)}};function sr(e,t){(e.data.directives||t.data.directives)&&function(e,t){var n,r,i,o=e===nr,a=t===nr,s=ur(e.data.directives,e.context),c=ur(t.data.directives,t.context),u=[],l=[];for(n in c)r=s[n],i=c[n],r?(i.oldValue=r.value,i.oldArg=r.arg,fr(i,"update",t,e),i.def&&i.def.componentUpdated&&l.push(i)):(fr(i,"bind",t,e),i.def&&i.def.inserted&&u.push(i));if(u.length){var f=function(){for(var n=0;n<u.length;n++)fr(u[n],"inserted",t,e)};o?it(t,"insert",f):f()}l.length&&it(t,"postpatch",function(){for(var n=0;n<l.length;n++)fr(l[n],"componentUpdated",t,e)});if(!o)for(n in s)c[n]||fr(s[n],"unbind",e,e,a)}(e,t)}var cr=Object.create(null);function ur(e,t){var n,r,i=Object.create(null);if(!e)return i;for(n=0;n<e.length;n++)(r=e[n]).modifiers||(r.modifiers=cr),i[lr(r)]=r,r.def=Le(t.$options,"directives",r.name);return i}function lr(e){return e.rawName||e.name+"."+Object.keys(e.modifiers||{}).join(".")}function fr(e,t,n,r,i){var o=e.def&&e.def[t];if(o)try{o(n.elm,e,n,r,i)}catch(r){Re(r,n.context,"directive "+e.name+" "+t+" hook")}}var pr=[er,ar];function dr(e,r){var i=r.componentOptions;if(!(n(i)&&!1===i.Ctor.options.inheritAttrs||t(e.data.attrs)&&t(r.data.attrs))){var o,a,s=r.elm,c=e.data.attrs||{},u=r.data.attrs||{};for(o in n(u.__ob__)&&(u=r.data.attrs=A({},u)),u)a=u[o],c[o]!==a&&vr(s,o,a);for(o in(q||Z)&&u.value!==c.value&&vr(s,"value",u.value),c)t(u[o])&&(Pn(o)?s.removeAttributeNS(Fn,Rn(o)):Dn(o)||s.removeAttribute(o))}}function vr(e,t,n){e.tagName.indexOf("-")>-1?hr(e,t,n):In(t)?Hn(n)?e.removeAttribute(t):(n="allowfullscreen"===t&&"EMBED"===e.tagName?"true":t,e.setAttribute(t,n)):Dn(t)?e.setAttribute(t,Mn(t,n)):Pn(t)?Hn(n)?e.removeAttributeNS(Fn,Rn(t)):e.setAttributeNS(Fn,t,n):hr(e,t,n)}function hr(e,t,n){if(Hn(n))e.removeAttribute(t);else{if(q&&!W&&"TEXTAREA"===e.tagName&&"placeholder"===t&&""!==n&&!e.__ieph){var r=function(t){t.stopImmediatePropagation(),e.removeEventListener("input",r)};e.addEventListener("input",r),e.__ieph=!0}e.setAttribute(t,n)}}var mr={create:dr,update:dr};function yr(e,r){var i=r.elm,o=r.data,a=e.data;if(!(t(o.staticClass)&&t(o.class)&&(t(a)||t(a.staticClass)&&t(a.class)))){var s=Bn(r),c=i._transitionClasses;n(c)&&(s=zn(s,Vn(c))),s!==i._prevClass&&(i.setAttribute("class",s),i._prevClass=s)}}var gr,_r,br,$r,wr,Cr,xr={create:yr,update:yr},kr=/[\w).+\-_$\]]/;function Ar(e){var t,n,r,i,o,a=!1,s=!1,c=!1,u=!1,l=0,f=0,p=0,d=0;for(r=0;r<e.length;r++)if(n=t,t=e.charCodeAt(r),a)39===t&&92!==n&&(a=!1);else if(s)34===t&&92!==n&&(s=!1);else if(c)96===t&&92!==n&&(c=!1);else if(u)47===t&&92!==n&&(u=!1);else if(124!==t||124===e.charCodeAt(r+1)||124===e.charCodeAt(r-1)||l||f||p){switch(t){case 34:s=!0;break;case 39:a=!0;break;case 96:c=!0;break;case 40:p++;break;case 41:p--;break;case 91:f++;break;case 93:f--;break;case 123:l++;break;case 125:l--}if(47===t){for(var v=r-1,h=void 0;v>=0&&" "===(h=e.charAt(v));v--);h&&kr.test(h)||(u=!0)}}else void 0===i?(d=r+1,i=e.slice(0,r).trim()):m();function m(){(o||(o=[])).push(e.slice(d,r).trim()),d=r+1}if(void 0===i?i=e.slice(0,r).trim():0!==d&&m(),o)for(r=0;r<o.length;r++)i=Or(i,o[r]);return i}function Or(e,t){var n=t.indexOf("(");if(n<0)return'_f("'+t+'")('+e+")";var r=t.slice(0,n),i=t.slice(n+1);return'_f("'+r+'")('+e+(")"!==i?","+i:i)}function Sr(e,t){console.error("[Vue compiler]: "+e)}function Tr(e,t){return e?e.map(function(e){return e[t]}).filter(function(e){return e}):[]}function Er(e,t,n,r,i){(e.props||(e.props=[])).push(Rr({name:t,value:n,dynamic:i},r)),e.plain=!1}function Nr(e,t,n,r,i){(i?e.dynamicAttrs||(e.dynamicAttrs=[]):e.attrs||(e.attrs=[])).push(Rr({name:t,value:n,dynamic:i},r)),e.plain=!1}function jr(e,t,n,r){e.attrsMap[t]=n,e.attrsList.push(Rr({name:t,value:n},r))}function Dr(e,t,n,r,i,o,a,s){(e.directives||(e.directives=[])).push(Rr({name:t,rawName:n,value:r,arg:i,isDynamicArg:o,modifiers:a},s)),e.plain=!1}function Lr(e,t,n){return n?"_p("+t+',"'+e+'")':e+t}function Mr(t,n,r,i,o,a,s,c){var u;(i=i||e).right?c?n="("+n+")==='click'?'contextmenu':("+n+")":"click"===n&&(n="contextmenu",delete i.right):i.middle&&(c?n="("+n+")==='click'?'mouseup':("+n+")":"click"===n&&(n="mouseup")),i.capture&&(delete i.capture,n=Lr("!",n,c)),i.once&&(delete i.once,n=Lr("~",n,c)),i.passive&&(delete i.passive,n=Lr("&",n,c)),i.native?(delete i.native,u=t.nativeEvents||(t.nativeEvents={})):u=t.events||(t.events={});var l=Rr({value:r.trim(),dynamic:c},s);i!==e&&(l.modifiers=i);var f=u[n];Array.isArray(f)?o?f.unshift(l):f.push(l):u[n]=f?o?[l,f]:[f,l]:l,t.plain=!1}function Ir(e,t,n){var r=Fr(e,":"+t)||Fr(e,"v-bind:"+t);if(null!=r)return Ar(r);if(!1!==n){var i=Fr(e,t);if(null!=i)return JSON.stringify(i)}}function Fr(e,t,n){var r;if(null!=(r=e.attrsMap[t]))for(var i=e.attrsList,o=0,a=i.length;o<a;o++)if(i[o].name===t){i.splice(o,1);break}return n&&delete e.attrsMap[t],r}function Pr(e,t){for(var n=e.attrsList,r=0,i=n.length;r<i;r++){var o=n[r];if(t.test(o.name))return n.splice(r,1),o}}function Rr(e,t){return t&&(null!=t.start&&(e.start=t.start),null!=t.end&&(e.end=t.end)),e}function Hr(e,t,n){var r=n||{},i=r.number,o="$$v";r.trim&&(o="(typeof $$v === 'string'? $$v.trim(): $$v)"),i&&(o="_n("+o+")");var a=Br(t,o);e.model={value:"("+t+")",expression:JSON.stringify(t),callback:"function ($$v) {"+a+"}"}}function Br(e,t){var n=function(e){if(e=e.trim(),gr=e.length,e.indexOf("[")<0||e.lastIndexOf("]")<gr-1)return($r=e.lastIndexOf("."))>-1?{exp:e.slice(0,$r),key:'"'+e.slice($r+1)+'"'}:{exp:e,key:null};_r=e,$r=wr=Cr=0;for(;!zr();)Vr(br=Ur())?Jr(br):91===br&&Kr(br);return{exp:e.slice(0,wr),key:e.slice(wr+1,Cr)}}(e);return null===n.key?e+"="+t:"$set("+n.exp+", "+n.key+", "+t+")"}function Ur(){return _r.charCodeAt(++$r)}function zr(){return $r>=gr}function Vr(e){return 34===e||39===e}function Kr(e){var t=1;for(wr=$r;!zr();)if(Vr(e=Ur()))Jr(e);else if(91===e&&t++,93===e&&t--,0===t){Cr=$r;break}}function Jr(e){for(var t=e;!zr()&&(e=Ur())!==t;);}var qr,Wr="__r",Zr="__c";function Gr(e,t,n){var r=qr;return function i(){null!==t.apply(null,arguments)&&Qr(e,i,n,r)}}var Xr=Ve&&!(X&&Number(X[1])<=53);function Yr(e,t,n,r){if(Xr){var i=an,o=t;t=o._wrapper=function(e){if(e.target===e.currentTarget||e.timeStamp>=i||e.timeStamp<=0||e.target.ownerDocument!==document)return o.apply(this,arguments)}}qr.addEventListener(e,t,Q?{capture:n,passive:r}:n)}function Qr(e,t,n,r){(r||qr).removeEventListener(e,t._wrapper||t,n)}function ei(e,r){if(!t(e.data.on)||!t(r.data.on)){var i=r.data.on||{},o=e.data.on||{};qr=r.elm,function(e){if(n(e[Wr])){var t=q?"change":"input";e[t]=[].concat(e[Wr],e[t]||[]),delete e[Wr]}n(e[Zr])&&(e.change=[].concat(e[Zr],e.change||[]),delete e[Zr])}(i),rt(i,o,Yr,Qr,Gr,r.context),qr=void 0}}var ti,ni={create:ei,update:ei};function ri(e,r){if(!t(e.data.domProps)||!t(r.data.domProps)){var i,o,a=r.elm,s=e.data.domProps||{},c=r.data.domProps||{};for(i in n(c.__ob__)&&(c=r.data.domProps=A({},c)),s)i in c||(a[i]="");for(i in c){if(o=c[i],"textContent"===i||"innerHTML"===i){if(r.children&&(r.children.length=0),o===s[i])continue;1===a.childNodes.length&&a.removeChild(a.childNodes[0])}if("value"===i&&"PROGRESS"!==a.tagName){a._value=o;var u=t(o)?"":String(o);ii(a,u)&&(a.value=u)}else if("innerHTML"===i&&qn(a.tagName)&&t(a.innerHTML)){(ti=ti||document.createElement("div")).innerHTML="<svg>"+o+"</svg>";for(var l=ti.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;l.firstChild;)a.appendChild(l.firstChild)}else if(o!==s[i])try{a[i]=o}catch(e){}}}}function ii(e,t){return!e.composing&&("OPTION"===e.tagName||function(e,t){var n=!0;try{n=document.activeElement!==e}catch(e){}return n&&e.value!==t}(e,t)||function(e,t){var r=e.value,i=e._vModifiers;if(n(i)){if(i.number)return f(r)!==f(t);if(i.trim)return r.trim()!==t.trim()}return r!==t}(e,t))}var oi={create:ri,update:ri},ai=g(function(e){var t={},n=/:(.+)/;return e.split(/;(?![^(]*\))/g).forEach(function(e){if(e){var r=e.split(n);r.length>1&&(t[r[0].trim()]=r[1].trim())}}),t});function si(e){var t=ci(e.style);return e.staticStyle?A(e.staticStyle,t):t}function ci(e){return Array.isArray(e)?O(e):"string"==typeof e?ai(e):e}var ui,li=/^--/,fi=/\s*!important$/,pi=function(e,t,n){if(li.test(t))e.style.setProperty(t,n);else if(fi.test(n))e.style.setProperty(C(t),n.replace(fi,""),"important");else{var r=vi(t);if(Array.isArray(n))for(var i=0,o=n.length;i<o;i++)e.style[r]=n[i];else e.style[r]=n}},di=["Webkit","Moz","ms"],vi=g(function(e){if(ui=ui||document.createElement("div").style,"filter"!==(e=b(e))&&e in ui)return e;for(var t=e.charAt(0).toUpperCase()+e.slice(1),n=0;n<di.length;n++){var r=di[n]+t;if(r in ui)return r}});function hi(e,r){var i=r.data,o=e.data;if(!(t(i.staticStyle)&&t(i.style)&&t(o.staticStyle)&&t(o.style))){var a,s,c=r.elm,u=o.staticStyle,l=o.normalizedStyle||o.style||{},f=u||l,p=ci(r.data.style)||{};r.data.normalizedStyle=n(p.__ob__)?A({},p):p;var d=function(e,t){var n,r={};if(t)for(var i=e;i.componentInstance;)(i=i.componentInstance._vnode)&&i.data&&(n=si(i.data))&&A(r,n);(n=si(e.data))&&A(r,n);for(var o=e;o=o.parent;)o.data&&(n=si(o.data))&&A(r,n);return r}(r,!0);for(s in f)t(d[s])&&pi(c,s,"");for(s in d)(a=d[s])!==f[s]&&pi(c,s,null==a?"":a)}}var mi={create:hi,update:hi},yi=/\s+/;function gi(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(yi).forEach(function(t){return e.classList.add(t)}):e.classList.add(t);else{var n=" "+(e.getAttribute("class")||"")+" ";n.indexOf(" "+t+" ")<0&&e.setAttribute("class",(n+t).trim())}}function _i(e,t){if(t&&(t=t.trim()))if(e.classList)t.indexOf(" ")>-1?t.split(yi).forEach(function(t){return e.classList.remove(t)}):e.classList.remove(t),e.classList.length||e.removeAttribute("class");else{for(var n=" "+(e.getAttribute("class")||"")+" ",r=" "+t+" ";n.indexOf(r)>=0;)n=n.replace(r," ");(n=n.trim())?e.setAttribute("class",n):e.removeAttribute("class")}}function bi(e){if(e){if("object"==typeof e){var t={};return!1!==e.css&&A(t,$i(e.name||"v")),A(t,e),t}return"string"==typeof e?$i(e):void 0}}var $i=g(function(e){return{enterClass:e+"-enter",enterToClass:e+"-enter-to",enterActiveClass:e+"-enter-active",leaveClass:e+"-leave",leaveToClass:e+"-leave-to",leaveActiveClass:e+"-leave-active"}}),wi=z&&!W,Ci="transition",xi="animation",ki="transition",Ai="transitionend",Oi="animation",Si="animationend";wi&&(void 0===window.ontransitionend&&void 0!==window.onwebkittransitionend&&(ki="WebkitTransition",Ai="webkitTransitionEnd"),void 0===window.onanimationend&&void 0!==window.onwebkitanimationend&&(Oi="WebkitAnimation",Si="webkitAnimationEnd"));var Ti=z?window.requestAnimationFrame?window.requestAnimationFrame.bind(window):setTimeout:function(e){return e()};function Ei(e){Ti(function(){Ti(e)})}function Ni(e,t){var n=e._transitionClasses||(e._transitionClasses=[]);n.indexOf(t)<0&&(n.push(t),gi(e,t))}function ji(e,t){e._transitionClasses&&h(e._transitionClasses,t),_i(e,t)}function Di(e,t,n){var r=Mi(e,t),i=r.type,o=r.timeout,a=r.propCount;if(!i)return n();var s=i===Ci?Ai:Si,c=0,u=function(){e.removeEventListener(s,l),n()},l=function(t){t.target===e&&++c>=a&&u()};setTimeout(function(){c<a&&u()},o+1),e.addEventListener(s,l)}var Li=/\b(transform|all)(,|$)/;function Mi(e,t){var n,r=window.getComputedStyle(e),i=(r[ki+"Delay"]||"").split(", "),o=(r[ki+"Duration"]||"").split(", "),a=Ii(i,o),s=(r[Oi+"Delay"]||"").split(", "),c=(r[Oi+"Duration"]||"").split(", "),u=Ii(s,c),l=0,f=0;return t===Ci?a>0&&(n=Ci,l=a,f=o.length):t===xi?u>0&&(n=xi,l=u,f=c.length):f=(n=(l=Math.max(a,u))>0?a>u?Ci:xi:null)?n===Ci?o.length:c.length:0,{type:n,timeout:l,propCount:f,hasTransform:n===Ci&&Li.test(r[ki+"Property"])}}function Ii(e,t){for(;e.length<t.length;)e=e.concat(e);return Math.max.apply(null,t.map(function(t,n){return Fi(t)+Fi(e[n])}))}function Fi(e){return 1e3*Number(e.slice(0,-1).replace(",","."))}function Pi(e,r){var i=e.elm;n(i._leaveCb)&&(i._leaveCb.cancelled=!0,i._leaveCb());var a=bi(e.data.transition);if(!t(a)&&!n(i._enterCb)&&1===i.nodeType){for(var s=a.css,c=a.type,u=a.enterClass,l=a.enterToClass,p=a.enterActiveClass,d=a.appearClass,v=a.appearToClass,h=a.appearActiveClass,m=a.beforeEnter,y=a.enter,g=a.afterEnter,_=a.enterCancelled,b=a.beforeAppear,$=a.appear,w=a.afterAppear,C=a.appearCancelled,x=a.duration,k=Wt,A=Wt.$vnode;A&&A.parent;)k=A.context,A=A.parent;var O=!k._isMounted||!e.isRootInsert;if(!O||$||""===$){var S=O&&d?d:u,T=O&&h?h:p,E=O&&v?v:l,N=O&&b||m,j=O&&"function"==typeof $?$:y,L=O&&w||g,M=O&&C||_,I=f(o(x)?x.enter:x),F=!1!==s&&!W,P=Bi(j),R=i._enterCb=D(function(){F&&(ji(i,E),ji(i,T)),R.cancelled?(F&&ji(i,S),M&&M(i)):L&&L(i),i._enterCb=null});e.data.show||it(e,"insert",function(){var t=i.parentNode,n=t&&t._pending&&t._pending[e.key];n&&n.tag===e.tag&&n.elm._leaveCb&&n.elm._leaveCb(),j&&j(i,R)}),N&&N(i),F&&(Ni(i,S),Ni(i,T),Ei(function(){ji(i,S),R.cancelled||(Ni(i,E),P||(Hi(I)?setTimeout(R,I):Di(i,c,R)))})),e.data.show&&(r&&r(),j&&j(i,R)),F||P||R()}}}function Ri(e,r){var i=e.elm;n(i._enterCb)&&(i._enterCb.cancelled=!0,i._enterCb());var a=bi(e.data.transition);if(t(a)||1!==i.nodeType)return r();if(!n(i._leaveCb)){var s=a.css,c=a.type,u=a.leaveClass,l=a.leaveToClass,p=a.leaveActiveClass,d=a.beforeLeave,v=a.leave,h=a.afterLeave,m=a.leaveCancelled,y=a.delayLeave,g=a.duration,_=!1!==s&&!W,b=Bi(v),$=f(o(g)?g.leave:g),w=i._leaveCb=D(function(){i.parentNode&&i.parentNode._pending&&(i.parentNode._pending[e.key]=null),_&&(ji(i,l),ji(i,p)),w.cancelled?(_&&ji(i,u),m&&m(i)):(r(),h&&h(i)),i._leaveCb=null});y?y(C):C()}function C(){w.cancelled||(!e.data.show&&i.parentNode&&((i.parentNode._pending||(i.parentNode._pending={}))[e.key]=e),d&&d(i),_&&(Ni(i,u),Ni(i,p),Ei(function(){ji(i,u),w.cancelled||(Ni(i,l),b||(Hi($)?setTimeout(w,$):Di(i,c,w)))})),v&&v(i,w),_||b||w())}}function Hi(e){return"number"==typeof e&&!isNaN(e)}function Bi(e){if(t(e))return!1;var r=e.fns;return n(r)?Bi(Array.isArray(r)?r[0]:r):(e._length||e.length)>1}function Ui(e,t){!0!==t.data.show&&Pi(t)}var zi=function(e){var o,a,s={},c=e.modules,u=e.nodeOps;for(o=0;o<rr.length;++o)for(s[rr[o]]=[],a=0;a<c.length;++a)n(c[a][rr[o]])&&s[rr[o]].push(c[a][rr[o]]);function l(e){var t=u.parentNode(e);n(t)&&u.removeChild(t,e)}function f(e,t,i,o,a,c,l){if(n(e.elm)&&n(c)&&(e=c[l]=me(e)),e.isRootInsert=!a,!function(e,t,i,o){var a=e.data;if(n(a)){var c=n(e.componentInstance)&&a.keepAlive;if(n(a=a.hook)&&n(a=a.init)&&a(e,!1),n(e.componentInstance))return d(e,t),v(i,e.elm,o),r(c)&&function(e,t,r,i){for(var o,a=e;a.componentInstance;)if(a=a.componentInstance._vnode,n(o=a.data)&&n(o=o.transition)){for(o=0;o<s.activate.length;++o)s.activate[o](nr,a);t.push(a);break}v(r,e.elm,i)}(e,t,i,o),!0}}(e,t,i,o)){var f=e.data,p=e.children,m=e.tag;n(m)?(e.elm=e.ns?u.createElementNS(e.ns,m):u.createElement(m,e),g(e),h(e,p,t),n(f)&&y(e,t),v(i,e.elm,o)):r(e.isComment)?(e.elm=u.createComment(e.text),v(i,e.elm,o)):(e.elm=u.createTextNode(e.text),v(i,e.elm,o))}}function d(e,t){n(e.data.pendingInsert)&&(t.push.apply(t,e.data.pendingInsert),e.data.pendingInsert=null),e.elm=e.componentInstance.$el,m(e)?(y(e,t),g(e)):(tr(e),t.push(e))}function v(e,t,r){n(e)&&(n(r)?u.parentNode(r)===e&&u.insertBefore(e,t,r):u.appendChild(e,t))}function h(e,t,n){if(Array.isArray(t))for(var r=0;r<t.length;++r)f(t[r],n,e.elm,null,!0,t,r);else i(e.text)&&u.appendChild(e.elm,u.createTextNode(String(e.text)))}function m(e){for(;e.componentInstance;)e=e.componentInstance._vnode;return n(e.tag)}function y(e,t){for(var r=0;r<s.create.length;++r)s.create[r](nr,e);n(o=e.data.hook)&&(n(o.create)&&o.create(nr,e),n(o.insert)&&t.push(e))}function g(e){var t;if(n(t=e.fnScopeId))u.setStyleScope(e.elm,t);else for(var r=e;r;)n(t=r.context)&&n(t=t.$options._scopeId)&&u.setStyleScope(e.elm,t),r=r.parent;n(t=Wt)&&t!==e.context&&t!==e.fnContext&&n(t=t.$options._scopeId)&&u.setStyleScope(e.elm,t)}function _(e,t,n,r,i,o){for(;r<=i;++r)f(n[r],o,e,t,!1,n,r)}function b(e){var t,r,i=e.data;if(n(i))for(n(t=i.hook)&&n(t=t.destroy)&&t(e),t=0;t<s.destroy.length;++t)s.destroy[t](e);if(n(t=e.children))for(r=0;r<e.children.length;++r)b(e.children[r])}function $(e,t,r){for(;t<=r;++t){var i=e[t];n(i)&&(n(i.tag)?(w(i),b(i)):l(i.elm))}}function w(e,t){if(n(t)||n(e.data)){var r,i=s.remove.length+1;for(n(t)?t.listeners+=i:t=function(e,t){function n(){0==--n.listeners&&l(e)}return n.listeners=t,n}(e.elm,i),n(r=e.componentInstance)&&n(r=r._vnode)&&n(r.data)&&w(r,t),r=0;r<s.remove.length;++r)s.remove[r](e,t);n(r=e.data.hook)&&n(r=r.remove)?r(e,t):t()}else l(e.elm)}function C(e,t,r,i){for(var o=r;o<i;o++){var a=t[o];if(n(a)&&ir(e,a))return o}}function x(e,i,o,a,c,l){if(e!==i){n(i.elm)&&n(a)&&(i=a[c]=me(i));var p=i.elm=e.elm;if(r(e.isAsyncPlaceholder))n(i.asyncFactory.resolved)?O(e.elm,i,o):i.isAsyncPlaceholder=!0;else if(r(i.isStatic)&&r(e.isStatic)&&i.key===e.key&&(r(i.isCloned)||r(i.isOnce)))i.componentInstance=e.componentInstance;else{var d,v=i.data;n(v)&&n(d=v.hook)&&n(d=d.prepatch)&&d(e,i);var h=e.children,y=i.children;if(n(v)&&m(i)){for(d=0;d<s.update.length;++d)s.update[d](e,i);n(d=v.hook)&&n(d=d.update)&&d(e,i)}t(i.text)?n(h)&&n(y)?h!==y&&function(e,r,i,o,a){for(var s,c,l,p=0,d=0,v=r.length-1,h=r[0],m=r[v],y=i.length-1,g=i[0],b=i[y],w=!a;p<=v&&d<=y;)t(h)?h=r[++p]:t(m)?m=r[--v]:ir(h,g)?(x(h,g,o,i,d),h=r[++p],g=i[++d]):ir(m,b)?(x(m,b,o,i,y),m=r[--v],b=i[--y]):ir(h,b)?(x(h,b,o,i,y),w&&u.insertBefore(e,h.elm,u.nextSibling(m.elm)),h=r[++p],b=i[--y]):ir(m,g)?(x(m,g,o,i,d),w&&u.insertBefore(e,m.elm,h.elm),m=r[--v],g=i[++d]):(t(s)&&(s=or(r,p,v)),t(c=n(g.key)?s[g.key]:C(g,r,p,v))?f(g,o,e,h.elm,!1,i,d):ir(l=r[c],g)?(x(l,g,o,i,d),r[c]=void 0,w&&u.insertBefore(e,l.elm,h.elm)):f(g,o,e,h.elm,!1,i,d),g=i[++d]);p>v?_(e,t(i[y+1])?null:i[y+1].elm,i,d,y,o):d>y&&$(r,p,v)}(p,h,y,o,l):n(y)?(n(e.text)&&u.setTextContent(p,""),_(p,null,y,0,y.length-1,o)):n(h)?$(h,0,h.length-1):n(e.text)&&u.setTextContent(p,""):e.text!==i.text&&u.setTextContent(p,i.text),n(v)&&n(d=v.hook)&&n(d=d.postpatch)&&d(e,i)}}}function k(e,t,i){if(r(i)&&n(e.parent))e.parent.data.pendingInsert=t;else for(var o=0;o<t.length;++o)t[o].data.hook.insert(t[o])}var A=p("attrs,class,staticClass,staticStyle,key");function O(e,t,i,o){var a,s=t.tag,c=t.data,u=t.children;if(o=o||c&&c.pre,t.elm=e,r(t.isComment)&&n(t.asyncFactory))return t.isAsyncPlaceholder=!0,!0;if(n(c)&&(n(a=c.hook)&&n(a=a.init)&&a(t,!0),n(a=t.componentInstance)))return d(t,i),!0;if(n(s)){if(n(u))if(e.hasChildNodes())if(n(a=c)&&n(a=a.domProps)&&n(a=a.innerHTML)){if(a!==e.innerHTML)return!1}else{for(var l=!0,f=e.firstChild,p=0;p<u.length;p++){if(!f||!O(f,u[p],i,o)){l=!1;break}f=f.nextSibling}if(!l||f)return!1}else h(t,u,i);if(n(c)){var v=!1;for(var m in c)if(!A(m)){v=!0,y(t,i);break}!v&&c.class&&et(c.class)}}else e.data!==t.text&&(e.data=t.text);return!0}return function(e,i,o,a){if(!t(i)){var c,l=!1,p=[];if(t(e))l=!0,f(i,p);else{var d=n(e.nodeType);if(!d&&ir(e,i))x(e,i,p,null,null,a);else{if(d){if(1===e.nodeType&&e.hasAttribute(L)&&(e.removeAttribute(L),o=!0),r(o)&&O(e,i,p))return k(i,p,!0),e;c=e,e=new pe(u.tagName(c).toLowerCase(),{},[],void 0,c)}var v=e.elm,h=u.parentNode(v);if(f(i,p,v._leaveCb?null:h,u.nextSibling(v)),n(i.parent))for(var y=i.parent,g=m(i);y;){for(var _=0;_<s.destroy.length;++_)s.destroy[_](y);if(y.elm=i.elm,g){for(var w=0;w<s.create.length;++w)s.create[w](nr,y);var C=y.data.hook.insert;if(C.merged)for(var A=1;A<C.fns.length;A++)C.fns[A]()}else tr(y);y=y.parent}n(h)?$([e],0,0):n(e.tag)&&b(e)}}return k(i,p,l),i.elm}n(e)&&b(e)}}({nodeOps:Qn,modules:[mr,xr,ni,oi,mi,z?{create:Ui,activate:Ui,remove:function(e,t){!0!==e.data.show?Ri(e,t):t()}}:{}].concat(pr)});W&&document.addEventListener("selectionchange",function(){var e=document.activeElement;e&&e.vmodel&&Xi(e,"input")});var Vi={inserted:function(e,t,n,r){"select"===n.tag?(r.elm&&!r.elm._vOptions?it(n,"postpatch",function(){Vi.componentUpdated(e,t,n)}):Ki(e,t,n.context),e._vOptions=[].map.call(e.options,Wi)):("textarea"===n.tag||Xn(e.type))&&(e._vModifiers=t.modifiers,t.modifiers.lazy||(e.addEventListener("compositionstart",Zi),e.addEventListener("compositionend",Gi),e.addEventListener("change",Gi),W&&(e.vmodel=!0)))},componentUpdated:function(e,t,n){if("select"===n.tag){Ki(e,t,n.context);var r=e._vOptions,i=e._vOptions=[].map.call(e.options,Wi);if(i.some(function(e,t){return!N(e,r[t])}))(e.multiple?t.value.some(function(e){return qi(e,i)}):t.value!==t.oldValue&&qi(t.value,i))&&Xi(e,"change")}}};function Ki(e,t,n){Ji(e,t,n),(q||Z)&&setTimeout(function(){Ji(e,t,n)},0)}function Ji(e,t,n){var r=t.value,i=e.multiple;if(!i||Array.isArray(r)){for(var o,a,s=0,c=e.options.length;s<c;s++)if(a=e.options[s],i)o=j(r,Wi(a))>-1,a.selected!==o&&(a.selected=o);else if(N(Wi(a),r))return void(e.selectedIndex!==s&&(e.selectedIndex=s));i||(e.selectedIndex=-1)}}function qi(e,t){return t.every(function(t){return!N(t,e)})}function Wi(e){return"_value"in e?e._value:e.value}function Zi(e){e.target.composing=!0}function Gi(e){e.target.composing&&(e.target.composing=!1,Xi(e.target,"input"))}function Xi(e,t){var n=document.createEvent("HTMLEvents");n.initEvent(t,!0,!0),e.dispatchEvent(n)}function Yi(e){return!e.componentInstance||e.data&&e.data.transition?e:Yi(e.componentInstance._vnode)}var Qi={model:Vi,show:{bind:function(e,t,n){var r=t.value,i=(n=Yi(n)).data&&n.data.transition,o=e.__vOriginalDisplay="none"===e.style.display?"":e.style.display;r&&i?(n.data.show=!0,Pi(n,function(){e.style.display=o})):e.style.display=r?o:"none"},update:function(e,t,n){var r=t.value;!r!=!t.oldValue&&((n=Yi(n)).data&&n.data.transition?(n.data.show=!0,r?Pi(n,function(){e.style.display=e.__vOriginalDisplay}):Ri(n,function(){e.style.display="none"})):e.style.display=r?e.__vOriginalDisplay:"none")},unbind:function(e,t,n,r,i){i||(e.style.display=e.__vOriginalDisplay)}}},eo={name:String,appear:Boolean,css:Boolean,mode:String,type:String,enterClass:String,leaveClass:String,enterToClass:String,leaveToClass:String,enterActiveClass:String,leaveActiveClass:String,appearClass:String,appearActiveClass:String,appearToClass:String,duration:[Number,String,Object]};function to(e){var t=e&&e.componentOptions;return t&&t.Ctor.options.abstract?to(zt(t.children)):e}function no(e){var t={},n=e.$options;for(var r in n.propsData)t[r]=e[r];var i=n._parentListeners;for(var o in i)t[b(o)]=i[o];return t}function ro(e,t){if(/\d-keep-alive$/.test(t.tag))return e("keep-alive",{props:t.componentOptions.propsData})}var io=function(e){return e.tag||Ut(e)},oo=function(e){return"show"===e.name},ao={name:"transition",props:eo,abstract:!0,render:function(e){var t=this,n=this.$slots.default;if(n&&(n=n.filter(io)).length){var r=this.mode,o=n[0];if(function(e){for(;e=e.parent;)if(e.data.transition)return!0}(this.$vnode))return o;var a=to(o);if(!a)return o;if(this._leaving)return ro(e,o);var s="__transition-"+this._uid+"-";a.key=null==a.key?a.isComment?s+"comment":s+a.tag:i(a.key)?0===String(a.key).indexOf(s)?a.key:s+a.key:a.key;var c=(a.data||(a.data={})).transition=no(this),u=this._vnode,l=to(u);if(a.data.directives&&a.data.directives.some(oo)&&(a.data.show=!0),l&&l.data&&!function(e,t){return t.key===e.key&&t.tag===e.tag}(a,l)&&!Ut(l)&&(!l.componentInstance||!l.componentInstance._vnode.isComment)){var f=l.data.transition=A({},c);if("out-in"===r)return this._leaving=!0,it(f,"afterLeave",function(){t._leaving=!1,t.$forceUpdate()}),ro(e,o);if("in-out"===r){if(Ut(a))return u;var p,d=function(){p()};it(c,"afterEnter",d),it(c,"enterCancelled",d),it(f,"delayLeave",function(e){p=e})}}return o}}},so=A({tag:String,moveClass:String},eo);function co(e){e.elm._moveCb&&e.elm._moveCb(),e.elm._enterCb&&e.elm._enterCb()}function uo(e){e.data.newPos=e.elm.getBoundingClientRect()}function lo(e){var t=e.data.pos,n=e.data.newPos,r=t.left-n.left,i=t.top-n.top;if(r||i){e.data.moved=!0;var o=e.elm.style;o.transform=o.WebkitTransform="translate("+r+"px,"+i+"px)",o.transitionDuration="0s"}}delete so.mode;var fo={Transition:ao,TransitionGroup:{props:so,beforeMount:function(){var e=this,t=this._update;this._update=function(n,r){var i=Zt(e);e.__patch__(e._vnode,e.kept,!1,!0),e._vnode=e.kept,i(),t.call(e,n,r)}},render:function(e){for(var t=this.tag||this.$vnode.data.tag||"span",n=Object.create(null),r=this.prevChildren=this.children,i=this.$slots.default||[],o=this.children=[],a=no(this),s=0;s<i.length;s++){var c=i[s];c.tag&&null!=c.key&&0!==String(c.key).indexOf("__vlist")&&(o.push(c),n[c.key]=c,(c.data||(c.data={})).transition=a)}if(r){for(var u=[],l=[],f=0;f<r.length;f++){var p=r[f];p.data.transition=a,p.data.pos=p.elm.getBoundingClientRect(),n[p.key]?u.push(p):l.push(p)}this.kept=e(t,null,u),this.removed=l}return e(t,null,o)},updated:function(){var e=this.prevChildren,t=this.moveClass||(this.name||"v")+"-move";e.length&&this.hasMove(e[0].elm,t)&&(e.forEach(co),e.forEach(uo),e.forEach(lo),this._reflow=document.body.offsetHeight,e.forEach(function(e){if(e.data.moved){var n=e.elm,r=n.style;Ni(n,t),r.transform=r.WebkitTransform=r.transitionDuration="",n.addEventListener(Ai,n._moveCb=function e(r){r&&r.target!==n||r&&!/transform$/.test(r.propertyName)||(n.removeEventListener(Ai,e),n._moveCb=null,ji(n,t))})}}))},methods:{hasMove:function(e,t){if(!wi)return!1;if(this._hasMove)return this._hasMove;var n=e.cloneNode();e._transitionClasses&&e._transitionClasses.forEach(function(e){_i(n,e)}),gi(n,t),n.style.display="none",this.$el.appendChild(n);var r=Mi(n);return this.$el.removeChild(n),this._hasMove=r.hasTransform}}}};wn.config.mustUseProp=jn,wn.config.isReservedTag=Wn,wn.config.isReservedAttr=En,wn.config.getTagNamespace=Zn,wn.config.isUnknownElement=function(e){if(!z)return!0;if(Wn(e))return!1;if(e=e.toLowerCase(),null!=Gn[e])return Gn[e];var t=document.createElement(e);return e.indexOf("-")>-1?Gn[e]=t.constructor===window.HTMLUnknownElement||t.constructor===window.HTMLElement:Gn[e]=/HTMLUnknownElement/.test(t.toString())},A(wn.options.directives,Qi),A(wn.options.components,fo),wn.prototype.__patch__=z?zi:S,wn.prototype.$mount=function(e,t){return function(e,t,n){var r;return e.$el=t,e.$options.render||(e.$options.render=ve),Yt(e,"beforeMount"),r=function(){e._update(e._render(),n)},new fn(e,r,S,{before:function(){e._isMounted&&!e._isDestroyed&&Yt(e,"beforeUpdate")}},!0),n=!1,null==e.$vnode&&(e._isMounted=!0,Yt(e,"mounted")),e}(this,e=e&&z?Yn(e):void 0,t)},z&&setTimeout(function(){F.devtools&&ne&&ne.emit("init",wn)},0);var po=/\{\{((?:.|\r?\n)+?)\}\}/g,vo=/[-.*+?^${}()|[\]\/\\]/g,ho=g(function(e){var t=e[0].replace(vo,"\\$&"),n=e[1].replace(vo,"\\$&");return new RegExp(t+"((?:.|\\n)+?)"+n,"g")});var mo={staticKeys:["staticClass"],transformNode:function(e,t){t.warn;var n=Fr(e,"class");n&&(e.staticClass=JSON.stringify(n));var r=Ir(e,"class",!1);r&&(e.classBinding=r)},genData:function(e){var t="";return e.staticClass&&(t+="staticClass:"+e.staticClass+","),e.classBinding&&(t+="class:"+e.classBinding+","),t}};var yo,go={staticKeys:["staticStyle"],transformNode:function(e,t){t.warn;var n=Fr(e,"style");n&&(e.staticStyle=JSON.stringify(ai(n)));var r=Ir(e,"style",!1);r&&(e.styleBinding=r)},genData:function(e){var t="";return e.staticStyle&&(t+="staticStyle:"+e.staticStyle+","),e.styleBinding&&(t+="style:("+e.styleBinding+"),"),t}},_o=function(e){return(yo=yo||document.createElement("div")).innerHTML=e,yo.textContent},bo=p("area,base,br,col,embed,frame,hr,img,input,isindex,keygen,link,meta,param,source,track,wbr"),$o=p("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source"),wo=p("address,article,aside,base,blockquote,body,caption,col,colgroup,dd,details,dialog,div,dl,dt,fieldset,figcaption,figure,footer,form,h1,h2,h3,h4,h5,h6,head,header,hgroup,hr,html,legend,li,menuitem,meta,optgroup,option,param,rp,rt,source,style,summary,tbody,td,tfoot,th,thead,title,tr,track"),Co=/^\s*([^\s"'<>\/=]+)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,xo=/^\s*((?:v-[\w-]+:|@|:|#)\[[^=]+\][^\s"'<>\/=]*)(?:\s*(=)\s*(?:"([^"]*)"+|'([^']*)'+|([^\s"'=<>`]+)))?/,ko="[a-zA-Z_][\\-\\.0-9_a-zA-Z"+P.source+"]*",Ao="((?:"+ko+"\\:)?"+ko+")",Oo=new RegExp("^<"+Ao),So=/^\s*(\/?)>/,To=new RegExp("^<\\/"+Ao+"[^>]*>"),Eo=/^<!DOCTYPE [^>]+>/i,No=/^<!\--/,jo=/^<!\[/,Do=p("script,style,textarea",!0),Lo={},Mo={"&lt;":"<","&gt;":">","&quot;":'"',"&amp;":"&","&#10;":"\n","&#9;":"\t","&#39;":"'"},Io=/&(?:lt|gt|quot|amp|#39);/g,Fo=/&(?:lt|gt|quot|amp|#39|#10|#9);/g,Po=p("pre,textarea",!0),Ro=function(e,t){return e&&Po(e)&&"\n"===t[0]};function Ho(e,t){var n=t?Fo:Io;return e.replace(n,function(e){return Mo[e]})}var Bo,Uo,zo,Vo,Ko,Jo,qo,Wo,Zo=/^@|^v-on:/,Go=/^v-|^@|^:|^#/,Xo=/([\s\S]*?)\s+(?:in|of)\s+([\s\S]*)/,Yo=/,([^,\}\]]*)(?:,([^,\}\]]*))?$/,Qo=/^\(|\)$/g,ea=/^\[.*\]$/,ta=/:(.*)$/,na=/^:|^\.|^v-bind:/,ra=/\.[^.\]]+(?=[^\]]*$)/g,ia=/^v-slot(:|$)|^#/,oa=/[\r\n]/,aa=/\s+/g,sa=g(_o),ca="_empty_";function ua(e,t,n){return{type:1,tag:e,attrsList:t,attrsMap:ma(t),rawAttrsMap:{},parent:n,children:[]}}function la(e,t){Bo=t.warn||Sr,Jo=t.isPreTag||T,qo=t.mustUseProp||T,Wo=t.getTagNamespace||T;t.isReservedTag;zo=Tr(t.modules,"transformNode"),Vo=Tr(t.modules,"preTransformNode"),Ko=Tr(t.modules,"postTransformNode"),Uo=t.delimiters;var n,r,i=[],o=!1!==t.preserveWhitespace,a=t.whitespace,s=!1,c=!1;function u(e){if(l(e),s||e.processed||(e=fa(e,t)),i.length||e===n||n.if&&(e.elseif||e.else)&&da(n,{exp:e.elseif,block:e}),r&&!e.forbidden)if(e.elseif||e.else)a=e,(u=function(e){var t=e.length;for(;t--;){if(1===e[t].type)return e[t];e.pop()}}(r.children))&&u.if&&da(u,{exp:a.elseif,block:a});else{if(e.slotScope){var o=e.slotTarget||'"default"';(r.scopedSlots||(r.scopedSlots={}))[o]=e}r.children.push(e),e.parent=r}var a,u;e.children=e.children.filter(function(e){return!e.slotScope}),l(e),e.pre&&(s=!1),Jo(e.tag)&&(c=!1);for(var f=0;f<Ko.length;f++)Ko[f](e,t)}function l(e){if(!c)for(var t;(t=e.children[e.children.length-1])&&3===t.type&&" "===t.text;)e.children.pop()}return function(e,t){for(var n,r,i=[],o=t.expectHTML,a=t.isUnaryTag||T,s=t.canBeLeftOpenTag||T,c=0;e;){if(n=e,r&&Do(r)){var u=0,l=r.toLowerCase(),f=Lo[l]||(Lo[l]=new RegExp("([\\s\\S]*?)(</"+l+"[^>]*>)","i")),p=e.replace(f,function(e,n,r){return u=r.length,Do(l)||"noscript"===l||(n=n.replace(/<!\--([\s\S]*?)-->/g,"$1").replace(/<!\[CDATA\[([\s\S]*?)]]>/g,"$1")),Ro(l,n)&&(n=n.slice(1)),t.chars&&t.chars(n),""});c+=e.length-p.length,e=p,A(l,c-u,c)}else{var d=e.indexOf("<");if(0===d){if(No.test(e)){var v=e.indexOf("--\x3e");if(v>=0){t.shouldKeepComment&&t.comment(e.substring(4,v),c,c+v+3),C(v+3);continue}}if(jo.test(e)){var h=e.indexOf("]>");if(h>=0){C(h+2);continue}}var m=e.match(Eo);if(m){C(m[0].length);continue}var y=e.match(To);if(y){var g=c;C(y[0].length),A(y[1],g,c);continue}var _=x();if(_){k(_),Ro(_.tagName,e)&&C(1);continue}}var b=void 0,$=void 0,w=void 0;if(d>=0){for($=e.slice(d);!(To.test($)||Oo.test($)||No.test($)||jo.test($)||(w=$.indexOf("<",1))<0);)d+=w,$=e.slice(d);b=e.substring(0,d)}d<0&&(b=e),b&&C(b.length),t.chars&&b&&t.chars(b,c-b.length,c)}if(e===n){t.chars&&t.chars(e);break}}function C(t){c+=t,e=e.substring(t)}function x(){var t=e.match(Oo);if(t){var n,r,i={tagName:t[1],attrs:[],start:c};for(C(t[0].length);!(n=e.match(So))&&(r=e.match(xo)||e.match(Co));)r.start=c,C(r[0].length),r.end=c,i.attrs.push(r);if(n)return i.unarySlash=n[1],C(n[0].length),i.end=c,i}}function k(e){var n=e.tagName,c=e.unarySlash;o&&("p"===r&&wo(n)&&A(r),s(n)&&r===n&&A(n));for(var u=a(n)||!!c,l=e.attrs.length,f=new Array(l),p=0;p<l;p++){var d=e.attrs[p],v=d[3]||d[4]||d[5]||"",h="a"===n&&"href"===d[1]?t.shouldDecodeNewlinesForHref:t.shouldDecodeNewlines;f[p]={name:d[1],value:Ho(v,h)}}u||(i.push({tag:n,lowerCasedTag:n.toLowerCase(),attrs:f,start:e.start,end:e.end}),r=n),t.start&&t.start(n,f,u,e.start,e.end)}function A(e,n,o){var a,s;if(null==n&&(n=c),null==o&&(o=c),e)for(s=e.toLowerCase(),a=i.length-1;a>=0&&i[a].lowerCasedTag!==s;a--);else a=0;if(a>=0){for(var u=i.length-1;u>=a;u--)t.end&&t.end(i[u].tag,n,o);i.length=a,r=a&&i[a-1].tag}else"br"===s?t.start&&t.start(e,[],!0,n,o):"p"===s&&(t.start&&t.start(e,[],!1,n,o),t.end&&t.end(e,n,o))}A()}(e,{warn:Bo,expectHTML:t.expectHTML,isUnaryTag:t.isUnaryTag,canBeLeftOpenTag:t.canBeLeftOpenTag,shouldDecodeNewlines:t.shouldDecodeNewlines,shouldDecodeNewlinesForHref:t.shouldDecodeNewlinesForHref,shouldKeepComment:t.comments,outputSourceRange:t.outputSourceRange,start:function(e,o,a,l,f){var p=r&&r.ns||Wo(e);q&&"svg"===p&&(o=function(e){for(var t=[],n=0;n<e.length;n++){var r=e[n];ya.test(r.name)||(r.name=r.name.replace(ga,""),t.push(r))}return t}(o));var d,v=ua(e,o,r);p&&(v.ns=p),"style"!==(d=v).tag&&("script"!==d.tag||d.attrsMap.type&&"text/javascript"!==d.attrsMap.type)||te()||(v.forbidden=!0);for(var h=0;h<Vo.length;h++)v=Vo[h](v,t)||v;s||(!function(e){null!=Fr(e,"v-pre")&&(e.pre=!0)}(v),v.pre&&(s=!0)),Jo(v.tag)&&(c=!0),s?function(e){var t=e.attrsList,n=t.length;if(n)for(var r=e.attrs=new Array(n),i=0;i<n;i++)r[i]={name:t[i].name,value:JSON.stringify(t[i].value)},null!=t[i].start&&(r[i].start=t[i].start,r[i].end=t[i].end);else e.pre||(e.plain=!0)}(v):v.processed||(pa(v),function(e){var t=Fr(e,"v-if");if(t)e.if=t,da(e,{exp:t,block:e});else{null!=Fr(e,"v-else")&&(e.else=!0);var n=Fr(e,"v-else-if");n&&(e.elseif=n)}}(v),function(e){null!=Fr(e,"v-once")&&(e.once=!0)}(v)),n||(n=v),a?u(v):(r=v,i.push(v))},end:function(e,t,n){var o=i[i.length-1];i.length-=1,r=i[i.length-1],u(o)},chars:function(e,t,n){if(r&&(!q||"textarea"!==r.tag||r.attrsMap.placeholder!==e)){var i,u,l,f=r.children;if(e=c||e.trim()?"script"===(i=r).tag||"style"===i.tag?e:sa(e):f.length?a?"condense"===a&&oa.test(e)?"":" ":o?" ":"":"")c||"condense"!==a||(e=e.replace(aa," ")),!s&&" "!==e&&(u=function(e,t){var n=t?ho(t):po;if(n.test(e)){for(var r,i,o,a=[],s=[],c=n.lastIndex=0;r=n.exec(e);){(i=r.index)>c&&(s.push(o=e.slice(c,i)),a.push(JSON.stringify(o)));var u=Ar(r[1].trim());a.push("_s("+u+")"),s.push({"@binding":u}),c=i+r[0].length}return c<e.length&&(s.push(o=e.slice(c)),a.push(JSON.stringify(o))),{expression:a.join("+"),tokens:s}}}(e,Uo))?l={type:2,expression:u.expression,tokens:u.tokens,text:e}:" "===e&&f.length&&" "===f[f.length-1].text||(l={type:3,text:e}),l&&f.push(l)}},comment:function(e,t,n){if(r){var i={type:3,text:e,isComment:!0};r.children.push(i)}}}),n}function fa(e,t){var n,r;(r=Ir(n=e,"key"))&&(n.key=r),e.plain=!e.key&&!e.scopedSlots&&!e.attrsList.length,function(e){var t=Ir(e,"ref");t&&(e.ref=t,e.refInFor=function(e){var t=e;for(;t;){if(void 0!==t.for)return!0;t=t.parent}return!1}(e))}(e),function(e){var t;"template"===e.tag?(t=Fr(e,"scope"),e.slotScope=t||Fr(e,"slot-scope")):(t=Fr(e,"slot-scope"))&&(e.slotScope=t);var n=Ir(e,"slot");n&&(e.slotTarget='""'===n?'"default"':n,e.slotTargetDynamic=!(!e.attrsMap[":slot"]&&!e.attrsMap["v-bind:slot"]),"template"===e.tag||e.slotScope||Nr(e,"slot",n,function(e,t){return e.rawAttrsMap[":"+t]||e.rawAttrsMap["v-bind:"+t]||e.rawAttrsMap[t]}(e,"slot")));if("template"===e.tag){var r=Pr(e,ia);if(r){var i=va(r),o=i.name,a=i.dynamic;e.slotTarget=o,e.slotTargetDynamic=a,e.slotScope=r.value||ca}}else{var s=Pr(e,ia);if(s){var c=e.scopedSlots||(e.scopedSlots={}),u=va(s),l=u.name,f=u.dynamic,p=c[l]=ua("template",[],e);p.slotTarget=l,p.slotTargetDynamic=f,p.children=e.children.filter(function(e){if(!e.slotScope)return e.parent=p,!0}),p.slotScope=s.value||ca,e.children=[],e.plain=!1}}}(e),function(e){"slot"===e.tag&&(e.slotName=Ir(e,"name"))}(e),function(e){var t;(t=Ir(e,"is"))&&(e.component=t);null!=Fr(e,"inline-template")&&(e.inlineTemplate=!0)}(e);for(var i=0;i<zo.length;i++)e=zo[i](e,t)||e;return function(e){var t,n,r,i,o,a,s,c,u=e.attrsList;for(t=0,n=u.length;t<n;t++)if(r=i=u[t].name,o=u[t].value,Go.test(r))if(e.hasBindings=!0,(a=ha(r.replace(Go,"")))&&(r=r.replace(ra,"")),na.test(r))r=r.replace(na,""),o=Ar(o),(c=ea.test(r))&&(r=r.slice(1,-1)),a&&(a.prop&&!c&&"innerHtml"===(r=b(r))&&(r="innerHTML"),a.camel&&!c&&(r=b(r)),a.sync&&(s=Br(o,"$event"),c?Mr(e,'"update:"+('+r+")",s,null,!1,0,u[t],!0):(Mr(e,"update:"+b(r),s,null,!1,0,u[t]),C(r)!==b(r)&&Mr(e,"update:"+C(r),s,null,!1,0,u[t])))),a&&a.prop||!e.component&&qo(e.tag,e.attrsMap.type,r)?Er(e,r,o,u[t],c):Nr(e,r,o,u[t],c);else if(Zo.test(r))r=r.replace(Zo,""),(c=ea.test(r))&&(r=r.slice(1,-1)),Mr(e,r,o,a,!1,0,u[t],c);else{var l=(r=r.replace(Go,"")).match(ta),f=l&&l[1];c=!1,f&&(r=r.slice(0,-(f.length+1)),ea.test(f)&&(f=f.slice(1,-1),c=!0)),Dr(e,r,i,o,f,c,a,u[t])}else Nr(e,r,JSON.stringify(o),u[t]),!e.component&&"muted"===r&&qo(e.tag,e.attrsMap.type,r)&&Er(e,r,"true",u[t])}(e),e}function pa(e){var t;if(t=Fr(e,"v-for")){var n=function(e){var t=e.match(Xo);if(!t)return;var n={};n.for=t[2].trim();var r=t[1].trim().replace(Qo,""),i=r.match(Yo);i?(n.alias=r.replace(Yo,"").trim(),n.iterator1=i[1].trim(),i[2]&&(n.iterator2=i[2].trim())):n.alias=r;return n}(t);n&&A(e,n)}}function da(e,t){e.ifConditions||(e.ifConditions=[]),e.ifConditions.push(t)}function va(e){var t=e.name.replace(ia,"");return t||"#"!==e.name[0]&&(t="default"),ea.test(t)?{name:t.slice(1,-1),dynamic:!0}:{name:'"'+t+'"',dynamic:!1}}function ha(e){var t=e.match(ra);if(t){var n={};return t.forEach(function(e){n[e.slice(1)]=!0}),n}}function ma(e){for(var t={},n=0,r=e.length;n<r;n++)t[e[n].name]=e[n].value;return t}var ya=/^xmlns:NS\d+/,ga=/^NS\d+:/;function _a(e){return ua(e.tag,e.attrsList.slice(),e.parent)}var ba=[mo,go,{preTransformNode:function(e,t){if("input"===e.tag){var n,r=e.attrsMap;if(!r["v-model"])return;if((r[":type"]||r["v-bind:type"])&&(n=Ir(e,"type")),r.type||n||!r["v-bind"]||(n="("+r["v-bind"]+").type"),n){var i=Fr(e,"v-if",!0),o=i?"&&("+i+")":"",a=null!=Fr(e,"v-else",!0),s=Fr(e,"v-else-if",!0),c=_a(e);pa(c),jr(c,"type","checkbox"),fa(c,t),c.processed=!0,c.if="("+n+")==='checkbox'"+o,da(c,{exp:c.if,block:c});var u=_a(e);Fr(u,"v-for",!0),jr(u,"type","radio"),fa(u,t),da(c,{exp:"("+n+")==='radio'"+o,block:u});var l=_a(e);return Fr(l,"v-for",!0),jr(l,":type",n),fa(l,t),da(c,{exp:i,block:l}),a?c.else=!0:s&&(c.elseif=s),c}}}}];var $a,wa,Ca={expectHTML:!0,modules:ba,directives:{model:function(e,t,n){var r=t.value,i=t.modifiers,o=e.tag,a=e.attrsMap.type;if(e.component)return Hr(e,r,i),!1;if("select"===o)!function(e,t,n){var r='var $$selectedVal = Array.prototype.filter.call($event.target.options,function(o){return o.selected}).map(function(o){var val = "_value" in o ? o._value : o.value;return '+(n&&n.number?"_n(val)":"val")+"});";r=r+" "+Br(t,"$event.target.multiple ? $$selectedVal : $$selectedVal[0]"),Mr(e,"change",r,null,!0)}(e,r,i);else if("input"===o&&"checkbox"===a)!function(e,t,n){var r=n&&n.number,i=Ir(e,"value")||"null",o=Ir(e,"true-value")||"true",a=Ir(e,"false-value")||"false";Er(e,"checked","Array.isArray("+t+")?_i("+t+","+i+")>-1"+("true"===o?":("+t+")":":_q("+t+","+o+")")),Mr(e,"change","var $$a="+t+",$$el=$event.target,$$c=$$el.checked?("+o+"):("+a+");if(Array.isArray($$a)){var $$v="+(r?"_n("+i+")":i)+",$$i=_i($$a,$$v);if($$el.checked){$$i<0&&("+Br(t,"$$a.concat([$$v])")+")}else{$$i>-1&&("+Br(t,"$$a.slice(0,$$i).concat($$a.slice($$i+1))")+")}}else{"+Br(t,"$$c")+"}",null,!0)}(e,r,i);else if("input"===o&&"radio"===a)!function(e,t,n){var r=n&&n.number,i=Ir(e,"value")||"null";Er(e,"checked","_q("+t+","+(i=r?"_n("+i+")":i)+")"),Mr(e,"change",Br(t,i),null,!0)}(e,r,i);else if("input"===o||"textarea"===o)!function(e,t,n){var r=e.attrsMap.type,i=n||{},o=i.lazy,a=i.number,s=i.trim,c=!o&&"range"!==r,u=o?"change":"range"===r?Wr:"input",l="$event.target.value";s&&(l="$event.target.value.trim()"),a&&(l="_n("+l+")");var f=Br(t,l);c&&(f="if($event.target.composing)return;"+f),Er(e,"value","("+t+")"),Mr(e,u,f,null,!0),(s||a)&&Mr(e,"blur","$forceUpdate()")}(e,r,i);else if(!F.isReservedTag(o))return Hr(e,r,i),!1;return!0},text:function(e,t){t.value&&Er(e,"textContent","_s("+t.value+")",t)},html:function(e,t){t.value&&Er(e,"innerHTML","_s("+t.value+")",t)}},isPreTag:function(e){return"pre"===e},isUnaryTag:bo,mustUseProp:jn,canBeLeftOpenTag:$o,isReservedTag:Wn,getTagNamespace:Zn,staticKeys:function(e){return e.reduce(function(e,t){return e.concat(t.staticKeys||[])},[]).join(",")}(ba)},xa=g(function(e){return p("type,tag,attrsList,attrsMap,plain,parent,children,attrs,start,end,rawAttrsMap"+(e?","+e:""))});function ka(e,t){e&&($a=xa(t.staticKeys||""),wa=t.isReservedTag||T,function e(t){t.static=function(e){if(2===e.type)return!1;if(3===e.type)return!0;return!(!e.pre&&(e.hasBindings||e.if||e.for||d(e.tag)||!wa(e.tag)||function(e){for(;e.parent;){if("template"!==(e=e.parent).tag)return!1;if(e.for)return!0}return!1}(e)||!Object.keys(e).every($a)))}(t);if(1===t.type){if(!wa(t.tag)&&"slot"!==t.tag&&null==t.attrsMap["inline-template"])return;for(var n=0,r=t.children.length;n<r;n++){var i=t.children[n];e(i),i.static||(t.static=!1)}if(t.ifConditions)for(var o=1,a=t.ifConditions.length;o<a;o++){var s=t.ifConditions[o].block;e(s),s.static||(t.static=!1)}}}(e),function e(t,n){if(1===t.type){if((t.static||t.once)&&(t.staticInFor=n),t.static&&t.children.length&&(1!==t.children.length||3!==t.children[0].type))return void(t.staticRoot=!0);if(t.staticRoot=!1,t.children)for(var r=0,i=t.children.length;r<i;r++)e(t.children[r],n||!!t.for);if(t.ifConditions)for(var o=1,a=t.ifConditions.length;o<a;o++)e(t.ifConditions[o].block,n)}}(e,!1))}var Aa=/^([\w$_]+|\([^)]*?\))\s*=>|^function(?:\s+[\w$]+)?\s*\(/,Oa=/\([^)]*?\);*$/,Sa=/^[A-Za-z_$][\w$]*(?:\.[A-Za-z_$][\w$]*|\['[^']*?']|\["[^"]*?"]|\[\d+]|\[[A-Za-z_$][\w$]*])*$/,Ta={esc:27,tab:9,enter:13,space:32,up:38,left:37,right:39,down:40,delete:[8,46]},Ea={esc:["Esc","Escape"],tab:"Tab",enter:"Enter",space:[" ","Spacebar"],up:["Up","ArrowUp"],left:["Left","ArrowLeft"],right:["Right","ArrowRight"],down:["Down","ArrowDown"],delete:["Backspace","Delete","Del"]},Na=function(e){return"if("+e+")return null;"},ja={stop:"$event.stopPropagation();",prevent:"$event.preventDefault();",self:Na("$event.target !== $event.currentTarget"),ctrl:Na("!$event.ctrlKey"),shift:Na("!$event.shiftKey"),alt:Na("!$event.altKey"),meta:Na("!$event.metaKey"),left:Na("'button' in $event && $event.button !== 0"),middle:Na("'button' in $event && $event.button !== 1"),right:Na("'button' in $event && $event.button !== 2")};function Da(e,t){var n=t?"nativeOn:":"on:",r="",i="";for(var o in e){var a=La(e[o]);e[o]&&e[o].dynamic?i+=o+","+a+",":r+='"'+o+'":'+a+","}return r="{"+r.slice(0,-1)+"}",i?n+"_d("+r+",["+i.slice(0,-1)+"])":n+r}function La(e){if(!e)return"function(){}";if(Array.isArray(e))return"["+e.map(function(e){return La(e)}).join(",")+"]";var t=Sa.test(e.value),n=Aa.test(e.value),r=Sa.test(e.value.replace(Oa,""));if(e.modifiers){var i="",o="",a=[];for(var s in e.modifiers)if(ja[s])o+=ja[s],Ta[s]&&a.push(s);else if("exact"===s){var c=e.modifiers;o+=Na(["ctrl","shift","alt","meta"].filter(function(e){return!c[e]}).map(function(e){return"$event."+e+"Key"}).join("||"))}else a.push(s);return a.length&&(i+=function(e){return"if(!$event.type.indexOf('key')&&"+e.map(Ma).join("&&")+")return null;"}(a)),o&&(i+=o),"function($event){"+i+(t?"return "+e.value+"($event)":n?"return ("+e.value+")($event)":r?"return "+e.value:e.value)+"}"}return t||n?e.value:"function($event){"+(r?"return "+e.value:e.value)+"}"}function Ma(e){var t=parseInt(e,10);if(t)return"$event.keyCode!=="+t;var n=Ta[e],r=Ea[e];return"_k($event.keyCode,"+JSON.stringify(e)+","+JSON.stringify(n)+",$event.key,"+JSON.stringify(r)+")"}var Ia={on:function(e,t){e.wrapListeners=function(e){return"_g("+e+","+t.value+")"}},bind:function(e,t){e.wrapData=function(n){return"_b("+n+",'"+e.tag+"',"+t.value+","+(t.modifiers&&t.modifiers.prop?"true":"false")+(t.modifiers&&t.modifiers.sync?",true":"")+")"}},cloak:S},Fa=function(e){this.options=e,this.warn=e.warn||Sr,this.transforms=Tr(e.modules,"transformCode"),this.dataGenFns=Tr(e.modules,"genData"),this.directives=A(A({},Ia),e.directives);var t=e.isReservedTag||T;this.maybeComponent=function(e){return!!e.component||!t(e.tag)},this.onceId=0,this.staticRenderFns=[],this.pre=!1};function Pa(e,t){var n=new Fa(t);return{render:"with(this){return "+(e?Ra(e,n):'_c("div")')+"}",staticRenderFns:n.staticRenderFns}}function Ra(e,t){if(e.parent&&(e.pre=e.pre||e.parent.pre),e.staticRoot&&!e.staticProcessed)return Ha(e,t);if(e.once&&!e.onceProcessed)return Ba(e,t);if(e.for&&!e.forProcessed)return za(e,t);if(e.if&&!e.ifProcessed)return Ua(e,t);if("template"!==e.tag||e.slotTarget||t.pre){if("slot"===e.tag)return function(e,t){var n=e.slotName||'"default"',r=qa(e,t),i="_t("+n+(r?","+r:""),o=e.attrs||e.dynamicAttrs?Ga((e.attrs||[]).concat(e.dynamicAttrs||[]).map(function(e){return{name:b(e.name),value:e.value,dynamic:e.dynamic}})):null,a=e.attrsMap["v-bind"];!o&&!a||r||(i+=",null");o&&(i+=","+o);a&&(i+=(o?"":",null")+","+a);return i+")"}(e,t);var n;if(e.component)n=function(e,t,n){var r=t.inlineTemplate?null:qa(t,n,!0);return"_c("+e+","+Va(t,n)+(r?","+r:"")+")"}(e.component,e,t);else{var r;(!e.plain||e.pre&&t.maybeComponent(e))&&(r=Va(e,t));var i=e.inlineTemplate?null:qa(e,t,!0);n="_c('"+e.tag+"'"+(r?","+r:"")+(i?","+i:"")+")"}for(var o=0;o<t.transforms.length;o++)n=t.transforms[o](e,n);return n}return qa(e,t)||"void 0"}function Ha(e,t){e.staticProcessed=!0;var n=t.pre;return e.pre&&(t.pre=e.pre),t.staticRenderFns.push("with(this){return "+Ra(e,t)+"}"),t.pre=n,"_m("+(t.staticRenderFns.length-1)+(e.staticInFor?",true":"")+")"}function Ba(e,t){if(e.onceProcessed=!0,e.if&&!e.ifProcessed)return Ua(e,t);if(e.staticInFor){for(var n="",r=e.parent;r;){if(r.for){n=r.key;break}r=r.parent}return n?"_o("+Ra(e,t)+","+t.onceId+++","+n+")":Ra(e,t)}return Ha(e,t)}function Ua(e,t,n,r){return e.ifProcessed=!0,function e(t,n,r,i){if(!t.length)return i||"_e()";var o=t.shift();return o.exp?"("+o.exp+")?"+a(o.block)+":"+e(t,n,r,i):""+a(o.block);function a(e){return r?r(e,n):e.once?Ba(e,n):Ra(e,n)}}(e.ifConditions.slice(),t,n,r)}function za(e,t,n,r){var i=e.for,o=e.alias,a=e.iterator1?","+e.iterator1:"",s=e.iterator2?","+e.iterator2:"";return e.forProcessed=!0,(r||"_l")+"(("+i+"),function("+o+a+s+"){return "+(n||Ra)(e,t)+"})"}function Va(e,t){var n="{",r=function(e,t){var n=e.directives;if(!n)return;var r,i,o,a,s="directives:[",c=!1;for(r=0,i=n.length;r<i;r++){o=n[r],a=!0;var u=t.directives[o.name];u&&(a=!!u(e,o,t.warn)),a&&(c=!0,s+='{name:"'+o.name+'",rawName:"'+o.rawName+'"'+(o.value?",value:("+o.value+"),expression:"+JSON.stringify(o.value):"")+(o.arg?",arg:"+(o.isDynamicArg?o.arg:'"'+o.arg+'"'):"")+(o.modifiers?",modifiers:"+JSON.stringify(o.modifiers):"")+"},")}if(c)return s.slice(0,-1)+"]"}(e,t);r&&(n+=r+","),e.key&&(n+="key:"+e.key+","),e.ref&&(n+="ref:"+e.ref+","),e.refInFor&&(n+="refInFor:true,"),e.pre&&(n+="pre:true,"),e.component&&(n+='tag:"'+e.tag+'",');for(var i=0;i<t.dataGenFns.length;i++)n+=t.dataGenFns[i](e);if(e.attrs&&(n+="attrs:"+Ga(e.attrs)+","),e.props&&(n+="domProps:"+Ga(e.props)+","),e.events&&(n+=Da(e.events,!1)+","),e.nativeEvents&&(n+=Da(e.nativeEvents,!0)+","),e.slotTarget&&!e.slotScope&&(n+="slot:"+e.slotTarget+","),e.scopedSlots&&(n+=function(e,t,n){var r=e.for||Object.keys(t).some(function(e){var n=t[e];return n.slotTargetDynamic||n.if||n.for||Ka(n)}),i=!!e.if;if(!r)for(var o=e.parent;o;){if(o.slotScope&&o.slotScope!==ca||o.for){r=!0;break}o.if&&(i=!0),o=o.parent}var a=Object.keys(t).map(function(e){return Ja(t[e],n)}).join(",");return"scopedSlots:_u(["+a+"]"+(r?",null,true":"")+(!r&&i?",null,false,"+function(e){var t=5381,n=e.length;for(;n;)t=33*t^e.charCodeAt(--n);return t>>>0}(a):"")+")"}(e,e.scopedSlots,t)+","),e.model&&(n+="model:{value:"+e.model.value+",callback:"+e.model.callback+",expression:"+e.model.expression+"},"),e.inlineTemplate){var o=function(e,t){var n=e.children[0];if(n&&1===n.type){var r=Pa(n,t.options);return"inlineTemplate:{render:function(){"+r.render+"},staticRenderFns:["+r.staticRenderFns.map(function(e){return"function(){"+e+"}"}).join(",")+"]}"}}(e,t);o&&(n+=o+",")}return n=n.replace(/,$/,"")+"}",e.dynamicAttrs&&(n="_b("+n+',"'+e.tag+'",'+Ga(e.dynamicAttrs)+")"),e.wrapData&&(n=e.wrapData(n)),e.wrapListeners&&(n=e.wrapListeners(n)),n}function Ka(e){return 1===e.type&&("slot"===e.tag||e.children.some(Ka))}function Ja(e,t){var n=e.attrsMap["slot-scope"];if(e.if&&!e.ifProcessed&&!n)return Ua(e,t,Ja,"null");if(e.for&&!e.forProcessed)return za(e,t,Ja);var r=e.slotScope===ca?"":String(e.slotScope),i="function("+r+"){return "+("template"===e.tag?e.if&&n?"("+e.if+")?"+(qa(e,t)||"undefined")+":undefined":qa(e,t)||"undefined":Ra(e,t))+"}",o=r?"":",proxy:true";return"{key:"+(e.slotTarget||'"default"')+",fn:"+i+o+"}"}function qa(e,t,n,r,i){var o=e.children;if(o.length){var a=o[0];if(1===o.length&&a.for&&"template"!==a.tag&&"slot"!==a.tag){var s=n?t.maybeComponent(a)?",1":",0":"";return""+(r||Ra)(a,t)+s}var c=n?function(e,t){for(var n=0,r=0;r<e.length;r++){var i=e[r];if(1===i.type){if(Wa(i)||i.ifConditions&&i.ifConditions.some(function(e){return Wa(e.block)})){n=2;break}(t(i)||i.ifConditions&&i.ifConditions.some(function(e){return t(e.block)}))&&(n=1)}}return n}(o,t.maybeComponent):0,u=i||Za;return"["+o.map(function(e){return u(e,t)}).join(",")+"]"+(c?","+c:"")}}function Wa(e){return void 0!==e.for||"template"===e.tag||"slot"===e.tag}function Za(e,t){return 1===e.type?Ra(e,t):3===e.type&&e.isComment?(r=e,"_e("+JSON.stringify(r.text)+")"):"_v("+(2===(n=e).type?n.expression:Xa(JSON.stringify(n.text)))+")";var n,r}function Ga(e){for(var t="",n="",r=0;r<e.length;r++){var i=e[r],o=Xa(i.value);i.dynamic?n+=i.name+","+o+",":t+='"'+i.name+'":'+o+","}return t="{"+t.slice(0,-1)+"}",n?"_d("+t+",["+n.slice(0,-1)+"])":t}function Xa(e){return e.replace(/\u2028/g,"\\u2028").replace(/\u2029/g,"\\u2029")}new RegExp("\\b"+"do,if,for,let,new,try,var,case,else,with,await,break,catch,class,const,super,throw,while,yield,delete,export,import,return,switch,default,extends,finally,continue,debugger,function,arguments".split(",").join("\\b|\\b")+"\\b");function Ya(e,t){try{return new Function(e)}catch(n){return t.push({err:n,code:e}),S}}function Qa(e){var t=Object.create(null);return function(n,r,i){(r=A({},r)).warn;delete r.warn;var o=r.delimiters?String(r.delimiters)+n:n;if(t[o])return t[o];var a=e(n,r),s={},c=[];return s.render=Ya(a.render,c),s.staticRenderFns=a.staticRenderFns.map(function(e){return Ya(e,c)}),t[o]=s}}var es,ts,ns=(es=function(e,t){var n=la(e.trim(),t);!1!==t.optimize&&ka(n,t);var r=Pa(n,t);return{ast:n,render:r.render,staticRenderFns:r.staticRenderFns}},function(e){function t(t,n){var r=Object.create(e),i=[],o=[];if(n)for(var a in n.modules&&(r.modules=(e.modules||[]).concat(n.modules)),n.directives&&(r.directives=A(Object.create(e.directives||null),n.directives)),n)"modules"!==a&&"directives"!==a&&(r[a]=n[a]);r.warn=function(e,t,n){(n?o:i).push(e)};var s=es(t.trim(),r);return s.errors=i,s.tips=o,s}return{compile:t,compileToFunctions:Qa(t)}})(Ca),rs=(ns.compile,ns.compileToFunctions);function is(e){return(ts=ts||document.createElement("div")).innerHTML=e?'<a href="\n"/>':'<div a="\n"/>',ts.innerHTML.indexOf("&#10;")>0}var os=!!z&&is(!1),as=!!z&&is(!0),ss=g(function(e){var t=Yn(e);return t&&t.innerHTML}),cs=wn.prototype.$mount;return wn.prototype.$mount=function(e,t){if((e=e&&Yn(e))===document.body||e===document.documentElement)return this;var n=this.$options;if(!n.render){var r=n.template;if(r)if("string"==typeof r)"#"===r.charAt(0)&&(r=ss(r));else{if(!r.nodeType)return this;r=r.innerHTML}else e&&(r=function(e){if(e.outerHTML)return e.outerHTML;var t=document.createElement("div");return t.appendChild(e.cloneNode(!0)),t.innerHTML}(e));if(r){var i=rs(r,{outputSourceRange:!1,shouldDecodeNewlines:os,shouldDecodeNewlinesForHref:as,delimiters:n.delimiters,comments:n.comments},this),o=i.render,a=i.staticRenderFns;n.render=o,n.staticRenderFns=a}}return cs.call(this,e,t)},wn.compile=rs,wn});
\ No newline at end of file
const min = Math.min;
const max = Math.max;
const abs = Math.abs;
const DEFAULT_TRIGGER = 'shift';
const ALLOW_EVENTS = ['drag', 'shift', 'ctrl', 'alt', 'control'];
export function brushSelecct(G6) {
G6.registerBehavior('brush-select', {
getDefaultCfg() {
return {
brushStyle: {
fill: '#EEF6FF',
fillOpacity: 0.4,
stroke: '#DDEEFE',
lineWidth: 1
},
onSelect() {},
onDeselect() {},
selectedState: 'selected',
trigger: DEFAULT_TRIGGER,
includeEdges: true,
selectedEdges: [],
selectedNodes: []
};
},
getEvents() {
let trigger;
// 检测输入是否合法
if (ALLOW_EVENTS.indexOf(this.trigger.toLowerCase()) > -1) {
trigger = this.trigger;
} else {
trigger = DEFAULT_TRIGGER;
console.warn('Behavior brush-select的trigger参数不合法,请输入drag、shift、ctrl或alt');
}
if (trigger === 'drag') {
return {
mousedown: 'onMouseDown',
mousemove: 'onMouseMove',
mouseup: 'onMouseUp',
'canvas:click': 'clearStates'
};
}
return {
mousedown: 'onMouseDown',
mousemove: 'onMouseMove',
mouseup: 'onMouseUp',
'canvas:click': 'clearStates',
keyup: 'onKeyUp',
keydown: 'onKeyDown'
};
},
onMouseDown(e) {
// 按在node上面拖动时候不应该是框选
const {item} = e;
if (item) {
return;
}
if (this.trigger !== 'drag' && !this.keydown) {
return;
}
if (this.selectedNodes && this.selectedNodes.length !== 0) {
this.clearStates();
}
let brush = this.brush;
if (!brush) {
brush = this._createBrush();
}
this.originPoint = {x: e.canvasX, y: e.canvasY};
brush.attr({width: 0, height: 0});
brush.show();
this.dragging = true;
},
onMouseMove(e) {
if (!this.dragging) {
return;
}
if (this.trigger !== 'drag' && !this.keydown) {
return;
}
this._updateBrush(e);
this.graph.paint();
},
onMouseUp(e) {
if (!this.brush && !this.dragging) {
return;
}
if (this.trigger !== 'drag' && !this.keydown) {
return;
}
const graph = this.graph;
const autoPaint = graph.get('autoPaint');
graph.setAutoPaint(false);
this.brush.destroy();
this.brush = null;
this._getSelectedNodes(e);
this.dragging = false;
this.graph.paint();
graph.setAutoPaint(autoPaint);
},
clearStates() {
if (this.keydown) {
return
}
const graph = this.graph;
const autoPaint = graph.get('autoPaint');
graph.setAutoPaint(false);
const selectedState = this.selectedState;
const nodes = graph.findAllByState('node', selectedState);
const edges = graph.findAllByState('edge', selectedState);
nodes.forEach(node => graph.setItemState(node, selectedState, false));
edges.forEach(edge => graph.setItemState(edge, selectedState, false));
this.selectedNodes = [];
this.selectedEdges = [];
this.onDeselect && this.onDeselect(this.selectedNodes, this.selectedEdges);
graph.emit('nodeselectchange', {
targets: {
nodes: [],
edges: []
}, select: false
});
graph.paint();
graph.setAutoPaint(autoPaint);
},
_getSelectedNodes(e) {
const graph = this.graph;
const state = this.selectedState;
const originPoint = this.originPoint;
const p1 = {x: e.x, y: e.y};
const p2 = graph.getPointByCanvas(originPoint.x, originPoint.y);
const left = min(p1.x, p2.x);
const right = max(p1.x, p2.x);
const top = min(p1.y, p2.y);
const bottom = max(p1.y, p2.y);
const selectedNodes = [];
const shouldUpdate = this.shouldUpdate;
const selectedIds = [];
graph.getNodes().forEach(node => {
const bbox = node.getBBox();
if (bbox.centerX >= left
&& bbox.centerX <= right
&& bbox.centerY >= top
&& bbox.centerY <= bottom
) {
if (shouldUpdate(node, 'select')) {
selectedNodes.push(node);
const model = node.getModel();
selectedIds.push(model.id);
graph.setItemState(node, state, true);
}
}
});
const selectedEdges = [];
if (this.includeEdges) {
// 选中边,边的source和target都在选中的节点中时才选中
selectedNodes.forEach(node => {
const edges = node.getEdges();
edges.forEach(edge => {
const model = edge.getModel();
const {source, target} = model;
if (selectedIds.includes(source)
&& selectedIds.includes(target)
&& shouldUpdate(edge, 'select')) {
selectedEdges.push(edge);
graph.setItemState(edge, this.selectedState, true);
}
});
});
}
this.selectedEdges = selectedEdges;
this.selectedNodes = selectedNodes;
this.onSelect && this.onSelect(selectedNodes, selectedEdges);
graph.emit('nodeselectchange', {
targets: {
nodes: selectedNodes,
edges: selectedEdges
}, select: true
});
},
_createBrush() {
const self = this;
const brush = self.graph.get('canvas').addShape('rect', {
attrs: self.brushStyle,
capture: false
});
this.brush = brush;
return brush;
},
_updateBrush(e) {
const originPoint = this.originPoint;
this.brush.attr({
width: abs(e.canvasX - originPoint.x),
height: abs(e.canvasY - originPoint.y),
x: min(e.canvasX, originPoint.x),
y: min(e.canvasY, originPoint.y)
});
},
onKeyDown(e) {
const code = e.key;
// 按住control键时,允许用户设置trigger为ctrl
if (code && (code.toLowerCase() === this.trigger.toLowerCase())
|| code.toLowerCase() === 'control') {
this.keydown = true;
} else {
this.keydown = false;
}
},
onKeyUp() {
if (this.brush) {
// 清除所有选中状态后,设置拖得动状态为false,并清除框选的brush
this.brush.destroy();
this.brush = null;
this.dragging = false;
}
this.keydown = false;
}
})
}
const DEFAULT_TRIGGER = 'shift';
const ALLOW_EVENTS = ['shift', 'ctrl', 'alt'];
import {flatten} from "@/utils/utils";
export const SELECTED_STATE = 'selected'
export function clickSelect(G6) {
G6.registerBehavior('click-select', {
getDefaultCfg() {
return {
multiple: true,
trigger: DEFAULT_TRIGGER,
};
},
getEvents() {
if (!this.multiple) {
return {
'node:click': 'onClick',
'edge:click': 'onClick',
'canvas:click': 'onCanvasClick'
};
}
return {
'node:click': 'onClick',
'edge:click': 'onClick',
'canvas:click': 'onCanvasClick',
keyup: 'onKeyUp',
keydown: 'onKeyDown'
};
},
onClick(e) {
const self = this;
const item = e.item;
const graph = self.graph;
const autoPaint = graph.get('autoPaint');
graph.setAutoPaint(false);
// 当前是否选择有变化
let selectChangeFlag = false
if (!self.keydown || !self.multiple) {
const selected = this.getSelected()
flatten(Object.values(selected)).forEach(n => {
if (n !== item) {
if (n.hasState(SELECTED_STATE)) {
selectChangeFlag = true
graph.setItemState(n, SELECTED_STATE, false);
}
}
})
}
if (item.hasState(SELECTED_STATE)) {
return
} else {
if (self.shouldUpdate.call(self, e)) {
selectChangeFlag = true
graph.setItemState(item, SELECTED_STATE, true);
}
graph.emit('nodeselectchange', {target: item, select: true});
}
if (selectChangeFlag) {
this.emitSelectChange()
}
graph.setAutoPaint(autoPaint);
graph.paint();
},
onCanvasClick() {
if (this.keydown) {
return
}
const graph = this.graph;
const autoPaint = graph.get('autoPaint');
graph.setAutoPaint(false);
const selected = this.getSelected()
// 当前是否选择有变化
let selectChangeFlag = false
flatten(Object.values(selected)).forEach(n => {
if (n.hasState(SELECTED_STATE)) {
selectChangeFlag = true
graph.setItemState(n, SELECTED_STATE, false);
}
});
if (selectChangeFlag) {
this.emitSelectChange(true)
}
graph.paint();
graph.setAutoPaint(autoPaint);
},
onKeyDown(e) {
const code = e.key;
if (ALLOW_EVENTS.indexOf(code.toLowerCase()) > -1) {
this.keydown = true;
} else {
this.keydown = false;
}
},
onKeyUp() {
this.keydown = false;
},
getSelected() {
return getSelected(this.graph)
},
emitSelectChange(isClear: boolean = false) {
if (isClear) {
this.selectChange([], [])
} else {
const graph = this.graph;
const nodes = graph.findAllByState('node', SELECTED_STATE)
const edges = graph.findAllByState('edge', SELECTED_STATE)
this.selectChange(nodes, edges)
}
},
selectChange(nodes: any[], edges: any[]) {
this.graph.emit('select-change', {nodes, edges})
},
})
}
export function getSelected(graph: any) {
return {
nodes: graph.findAllByState('node', SELECTED_STATE),
edges: graph.findAllByState('edge', SELECTED_STATE)
}
}
import {G6} from "@/g6/g6";
const Util = G6.Util
const abs = Math.abs;
const DRAG_OFFSET = 10;
const body = document.body;
const ALLOW_EVENTS = [16, 17, 18];
export function dragCanvas(G6) {
G6.registerBehavior('drag-canvas', {
getDefaultCfg() {
return {
direction: 'both'
};
},
getEvents() {
return {
'canvas:mousedown': 'onMouseDown',
'canvas:mousemove': 'onMouseMove',
'canvas:mouseup': 'onMouseUp',
'canvas:click': 'onMouseUp',
'canvas:mouseleave': 'onOutOfRange',
keyup: 'onKeyUp',
keydown: 'onKeyDown'
};
},
updateViewport(e) {
const origin = this.origin;
const clientX = +e.clientX;
const clientY = +e.clientY;
if (isNaN(clientX) || isNaN(clientY)) {
return;
}
let dx = clientX - origin.x;
let dy = clientY - origin.y;
if (this.get('direction') === 'x') {
dy = 0;
} else if (this.get('direction') === 'y') {
dx = 0;
}
this.origin = {
x: clientX,
y: clientY
};
this.graph.translate(dx, dy);
this.graph.paint();
},
onMouseDown(e) {
if (e.event.button === 2) {
return;
}
if (this.keydown) {
return;
}
this.origin = {x: e.clientX, y: e.clientY};
this.dragging = false;
},
onMouseMove(e) {
if (this.keydown) {
return;
}
e = Util.cloneEvent(e);
const graph = this.graph;
if (!this.origin) { return; }
if (this.origin && !this.dragging) {
if (abs(this.origin.x - e.clientX) + abs(this.origin.y - e.clientY) < DRAG_OFFSET) {
return;
}
if (this.shouldBegin.call(this, e)) {
e.type = 'dragstart';
graph.emit('canvas:dragstart', e);
this.dragging = true;
}
}
if (this.dragging) {
e.type = 'drag';
graph.emit('canvas:drag', e);
}
if (this.shouldUpdate.call(this, e)) {
this.updateViewport(e);
}
},
onMouseUp(e) {
if (this.keydown) {
return;
}
if (!this.dragging) {
this.origin = null;
return;
}
e = Util.cloneEvent(e);
const graph = this.graph;
if (this.shouldEnd.call(this, e)) {
this.updateViewport(e);
}
e.type = 'dragend';
graph.emit('canvas:dragend', e);
this.endDrag();
},
endDrag() {
if (this.dragging) {
this.origin = null;
this.dragging = false;
// 终止时需要判断此时是否在监听画布外的 mouseup 事件,若有则解绑
const fn = this.fn;
if (fn) {
body.removeEventListener('mouseup', fn, false);
this.fn = null;
}
}
},
// 若在拖拽时,鼠标移出画布区域,此时放开鼠标无法终止 drag 行为。在画布外监听 mouseup 事件,放开则终止
onOutOfRange(e) {
if (this.dragging) {
const self = this;
const canvasElement = self.graph.get('canvas').get('el');
const fn = ev => {
if (ev.target !== canvasElement) {
self.onMouseUp(e);
}
};
this.fn = fn;
body.addEventListener('mouseup', fn, false);
}
},
onKeyDown(e) {
const code = e.keyCode || e.which;
if (ALLOW_EVENTS.indexOf(code) > -1) {
this.keydown = true;
} else {
this.keydown = false;
}
},
onKeyUp() {
this.keydown = false;
}
})
}
import {GraphStyle} from "@/utils/styles";
interface OptionType {
beforeAdd: (model: object, type: string) => Promise<any> | undefined,
afterAdd: (model: object, type: string) => Promise<any> | undefined,
}
export function dragEdge(G6, option: OptionType) {
G6.registerBehavior('drag-edge', {
getDefaultCfg() {
return {
updateEdge: true,
delegate: true,
delegateStyle: {},
dragEdge: false,
};
},
getEvents() {
return {
'anchor:dragstart': 'onDragStart',
'anchor:drag': 'onDrag',
'anchor:dragenter': 'onDragEnter',
'anchor:dragleave': 'onDragLeave',
'anchor:dragend': 'onDragEnd',
};
},
onDragStart(e) {
const node = e.target.getParent().getParent().get('item');
const anchor = e.item
const anchorIndex = anchor.index
const point = node.getAnchorPoints()[anchorIndex];
this.target = e.item;
this.origin = {
x: point.x,
y: point.y,
sourceNode: node,
sourceAnchor: anchorIndex
};
this.graph.getNodes().forEach(node => {
node.showAnchor(this.graph)
node.getContainer().anchorShapes.forEach(a => {
a.get('item').showHotpot()
})
});
this.graph.set('onDragEdge', true);
},
onDrag(e) {
if (!this.origin) {
return;
}
this._updateEdge(this.target, e);
},
onDragEnter(e) {
if (!this.origin) {
return;
}
if (!this.sameNode(e)) {
e.item.setHotspotActived(true);
this.origin.targetNode = e.target.getParent().getParent().get('item');
this.origin.targetAnchor = e.item.get('index');
}
},
onDragLeave(e) {
if (!this.origin) {
return;
}
if (!this.sameNode(e)) {
e.item.setHotspotActived(false);
this.origin.targetNode = null;
this.origin.targetAnchor = null;
}
},
onDragEnd(e) {
if (!this.origin) {
return;
}
const delegateShape = e.item.get('edgeDelegate');
if (delegateShape) {
delegateShape.remove();
this.target.set('edgeDelegate', null);
}
this._updateEdge(this.target, e, true);
this.target = null;
this.origin = null;
this.graph.set('onDragEdge', false);
this.graph.getNodes().forEach(node => {
node.hideAnchor(this.graph)
node.getContainer().anchorShapes.forEach(a => {
a.get('item').hideHotpot()
})
});
},
sameNode(e) {
return e.target.type === 'marker' && e.target.getParent() && e.target.getParent().getParent().get('item').get('id') === this.origin.sourceNode.get('id')
},
_updateEdge(item, e, force) {
const x = e.x;
const y = e.y;
if (this.delegate && !force) {
this._updateEdgeDelegate(item, x, y);
return;
}
this._addEdge(e);
this.graph.paint();
},
_updateEdgeDelegate(item, x, y) {
const self = this;
let edgeShape = item.get('edgeDelegate');
if (!edgeShape) {
const parent = self.graph.get('group');
edgeShape = parent.addShape('line', {
attrs: {
x1: this.origin.x,
y1: this.origin.y,
x2: x,
y2: y,
...GraphStyle.edgeDelegationStyle,
}
});
edgeShape.set('capture', false);
item.set('edgeDelegate', edgeShape);
}
edgeShape.attr({x2: x, y2: y});
this.graph.paint();
},
async _addEdge() {
if (this.origin.targetNode) {
const addModel = {
clazz: 'flow',
source: this.origin.sourceNode.get('id'),
target: this.origin.targetNode.get('id'),
sourceAnchor: this.origin.sourceAnchor,
targetAnchor: this.origin.targetAnchor,
}
if (this.graph.executeCommand) {
this.graph.executeCommand('add', {
type: 'edge',
addModel: addModel
});
} else {
try {
if (!!option.beforeAdd) {
await option.beforeAdd(addModel, 'edge')
}
this.graph.emit('add-edge:before')
this.graph.add('edge', addModel);
this.graph.emit('add-edge:after')
if (!!option.afterAdd) {
await option.afterAdd(addModel, 'edge')
}
} catch (e) {
console.error(e)
}
}
}
}
});
}
\ No newline at end of file
import {G6} from "@/g6/g6";
const isString = G6.Util.isString
const deepMix = G6.Util.deepMix
const {delegateStyle} = require('../utils/styles');
const body = document.body;
const ALLOW_EVENTS = ['shift'];
export function dragNode(G6) {
G6.registerBehavior('drag-node', {
getDefaultCfg() {
return {
updateEdge: true,
delegateStyle: {},
// 是否开启delegate
enableDelegate: false,
ondragend: () => undefined,
};
},
getEvents() {
return {
'node:dragstart': 'onDragStart',
'node:drag': 'onDrag',
'node:dragend': 'onDragEnd',
'canvas:mouseleave': 'onOutOfRange',
keyup: 'onKeyUp',
keydown: 'onKeyDown'
};
},
onDragStart(e) {
if (!this.shouldBegin.call(this, e)) {
return;
}
const {item, target} = e;
const hasLocked = item.hasLocked();
if (hasLocked) {
return;
}
// 如果拖动的target 是linkPoints / anchorPoints 则不允许拖动
if (target) {
const isAnchorPoint = target.get('isAnchorPoint');
if (isAnchorPoint) {
return;
}
}
const graph = this.graph;
this.targets = [];
// 获取所有选中的元素
const nodes = graph.findAllByState('node', 'selected');
const currentNodeId = item.get('id');
// 当前拖动的节点是否是选中的节点
const dragNodes = nodes.filter(node => {
const nodeId = node.get('id');
return currentNodeId === nodeId;
});
// 只拖动当前节点
if (dragNodes.length === 0) {
this.target = item;
this.target.origin = {
x: item._cfg.model.x,
y: item._cfg.model.y,
}
} else {
// 拖动多个节点
if (nodes.length > 1) {
nodes.forEach(node => {
const hasLocked = node.hasLocked();
if (!hasLocked) {
node.origin = {
x: node._cfg.model.x,
y: node._cfg.model.y,
}
this.targets.push(node);
}
});
} else {
this.targets.push(item);
}
}
this.origin = {
x: e.x,
y: e.y,
};
this.point = {};
this.originPoint = {};
graph.emit('drag-node:start')
},
onDrag(e) {
if (!this.origin) {
return;
}
if (!this.get('shouldUpdate').call(this, e)) {
return;
}
const graph = this.graph;
const autoPaint = graph.get('autoPaint');
graph.setAutoPaint(false);
// 当targets中元素时,则说明拖动的是多个选中的元素
if (this.targets.length > 0) {
if (this.enableDelegate) {
this._updateDelegate(e);
} else {
this.targets.forEach(target => {
this._update(target, e, this.enableDelegate);
});
}
} else {
// 只拖动单个元素
this._update(this.target, e, this.enableDelegate);
}
graph.paint();
graph.setAutoPaint(autoPaint);
},
onDragEnd(e) {
if (!this.origin || !this.shouldEnd.call(this, e)) {
return;
}
const graph = this.graph;
const autoPaint = graph.get('autoPaint');
graph.setAutoPaint(false);
if (this.shape) {
this.shape.remove();
this.shape = null;
}
if (this.target) {
const delegateShape = this.target.get('delegateShape');
if (delegateShape) {
delegateShape.remove();
this.target.set('delegateShape', null);
}
}
if (this.targets.length > 0) {
// 获取所有已经选中的节点
this.targets.forEach(node => this._update(node, e));
} else if (this.target) {
this._update(this.target, e);
}
this.point = {};
this.origin = null;
this.originPoint = {};
this.targets.length = 0;
this.target = null;
// 终止时需要判断此时是否在监听画布外的 mouseup 事件,若有则解绑
const fn = this.fn;
if (fn) {
body.removeEventListener('mouseup', fn, false);
this.fn = null;
}
graph.paint();
graph.setAutoPaint(autoPaint);
graph.emit('drag-node:end')
},
// 若在拖拽时,鼠标移出画布区域,此时放开鼠标无法终止 drag 行为。在画布外监听 mouseup 事件,放开则终止
onOutOfRange(e) {
const self = this;
if (this.origin) {
const canvasElement = self.graph.get('canvas').get('el');
const fn = ev => {
if (ev.target !== canvasElement) {
self.onDragEnd(e);
}
};
this.fn = fn;
body.addEventListener('mouseup', fn, false);
}
},
_update(item, e, force) {
const origin = this.origin;
const model = item.get('model');
const nodeId = item.get('id');
if (!this.point[nodeId]) {
this.point[nodeId] = {
x: model.x,
y: model.y
};
}
/*---------------------------------------自动调节位置-------------------------------------------*/
let durx = e.x - origin.x
let dury = e.y - origin.y
const grid = 5
if (durx % grid > grid / 2) {
durx = Math.ceil(durx / grid) * grid
} else {
durx = Math.floor(durx / grid) * grid
}
if (dury % grid > grid / 2) {
dury = Math.ceil(dury / grid) * grid
} else {
dury = Math.floor(dury / grid) * grid
}
if (this.keydown) {
if (Math.abs(durx) > Math.abs(dury)) {
dury = 0
} else {
durx = 0
}
}
if (!item.origin) {
return;
}
let x = durx + item.origin.x
let y = dury + item.origin.y
/*---------------------------------------自动调节位置 end-------------------------------------------*/
// 拖动单个未选中元素
if (force) {
this._updateDelegate(e, x, y);
return;
}
const pos = {x, y};
if (this.get('updateEdge')) {
this.graph.updateItem(item, pos);
} else {
item.updatePosition(pos);
// this.graph.paint();
}
},
/**
* 更新拖动元素时的delegate
* @param {Event} e 事件句柄
* @param {number} x 拖动单个元素时候的x坐标
* @param {number} y 拖动单个元素时候的y坐标
*/
_updateDelegate(e, x, y) {
const bbox = e.item.get('keyShape').getBBox();
if (!this.shape) {
// 拖动多个
const parent = this.graph.get('group');
const attrs = deepMix({}, delegateStyle, this.delegateStyle);
if (this.targets.length > 0) {
const {x, y, width, height, minX, minY} = this.calculationGroupPosition();
this.originPoint = {x, y, width, height, minX, minY};
// model上的x, y是相对于图形中心的,delegateShape是g实例,x,y是绝对坐标
this.shape = parent.addShape('rect', {
attrs: {
width,
height,
x,
y,
...attrs
}
});
} else if (this.target) {
this.shape = parent.addShape('rect', {
attrs: {
width: bbox.width,
height: bbox.height,
x: x + bbox.x,
y: y + bbox.y,
...attrs
}
});
this.target.set('delegateShape', this.shape);
}
this.shape.set('capture', false);
} else {
if (this.targets.length > 0) {
const clientX = e.x - this.origin.x + this.originPoint.minX;
const clientY = e.y - this.origin.y + this.originPoint.minY;
this.shape.attr({
x: clientX,
y: clientY
});
} else if (this.target) {
this.shape.attr({
x: x + bbox.x,
y: y + bbox.y
});
}
}
// this.graph.paint();
},
/**
* 计算delegate位置,包括左上角左边及宽度和高度
* @memberof ItemGroup
* @return {object} 计算出来的delegate坐标信息及宽高
*/
calculationGroupPosition() {
const graph = this.graph;
const nodes = graph.findAllByState('node', 'selected');
let minx = Infinity;
let maxx = -Infinity;
let miny = Infinity;
let maxy = -Infinity;
// 获取已节点的所有最大最小x y值
for (const id of nodes) {
const element = isString(id) ? graph.findById(id) : id;
const bbox = element.getBBox();
const {minX, minY, maxX, maxY} = bbox;
if (minX < minx) {
minx = minX;
}
if (minY < miny) {
miny = minY;
}
if (maxX > maxx) {
maxx = maxX;
}
if (maxY > maxy) {
maxy = maxY;
}
}
const x = Math.floor(minx) - 20;
const y = Math.floor(miny) + 10;
const width = Math.ceil(maxx) - x;
const height = Math.ceil(maxy) - y;
return {
x,
y,
width,
height,
minX: minx,
minY: miny
};
},
onKeyDown(e) {
const code = e.key;
if (ALLOW_EVENTS.indexOf(code.toLowerCase()) > -1) {
this.keydown = true;
} else {
this.keydown = false;
}
},
onKeyUp() {
this.keydown = false;
},
})
}
export function hoverAnchorActive(G6) {
G6.registerBehavior('hover-anchor-active', {
getEvents() {
return {
'anchor:mouseenter': 'onEnter',
'anchor:mouseleave': 'onLeave',
'node:mouseenter': 'onEnterNode',
'node:mouseleave': 'onLeaveNode',
}
},
onEnter(e) {
const anchor = e.item;
const group = anchor.getContainer()._cfg.parent
if (!!group) {
group.keyShape.showAnchor(this.graph)
anchor.setState('active-anchor', true)
}
},
onLeave(e) {
const anchor = e.item;
const group = anchor.getContainer()._cfg.parent
if (!!group) {
anchor.getContainer()._cfg.parent.keyShape.hideAnchor(this.graph)
anchor.setState('active-anchor', false)
}
},
onEnterNode(e) {
const item = e.item;
item.showAnchor(this.graph)
},
onLeaveNode(e) {
try {
const item = e.item;
item.hideAnchor(this.graph)
} catch (e) {
}
},
})
}
\ No newline at end of file
export const HOVER_STATE_NAME = 'hover'
export function hoverItemActive(G6) {
G6.registerBehavior('hover-item-active', {
getEvents() {
return {
'node:mouseenter': 'onEnter',
'node:mouseleave': 'onLeave',
'edge:mouseenter': 'onEnter',
'edge:mouseleave': 'onLeave',
}
},
onEnter(e) {
const self = this;
const item = e.item;
const graph = self.graph;
graph.setItemState(item, HOVER_STATE_NAME, true);
},
onLeave(e) {
const self = this;
const item = e.item;
if (!item) {
return
}
const graph = self.graph;
graph.setItemState(item, HOVER_STATE_NAME, false);
},
})
}
\ No newline at end of file
import {G6} from "@/g6/g6";
import {clickSelect} from "@/behavior/click-select";
import {dragNode} from "@/behavior/drag-node";
import {hoverItemActive} from "@/behavior/hover-item-active";
import {hoverAnchorActive} from "@/behavior/hover-anchor-active";
import {dragEdge} from "@/behavior/drag-edge";
import {dragCanvas} from "@/behavior/drag-canvas";
import {brushSelecct} from "@/behavior/brush-select";
interface OptionType {
multipleSelect: boolean,
dragEdge: {
disabled: boolean,
beforeAdd: (model: object, type: string) => Promise<any> | undefined,
afterAdd: (model: object, type: string) => Promise<any> | undefined,
},
}
export function useBehavior(option: OptionType) {
clickSelect(G6)
dragNode(G6)
hoverItemActive(G6)
hoverAnchorActive(G6)
dragEdge(G6, {beforeAdd: option.dragEdge.beforeAdd, afterAdd: option.dragEdge.afterAdd})
dragCanvas(G6)
brushSelecct(G6)
const registryBehaviors: Array<string | object> = [
'drag-canvas',
// 'zoom-canvas',
{
type: 'drag-node',
},
{
type: 'click-select',
multiple: option.multipleSelect,
},
'hover-item-active',
]
if (!option.dragEdge.disabled) {
registryBehaviors.push(...[
'hover-anchor-active',
'drag-edge',
])
}
if (option.multipleSelect) {
registryBehaviors.push({
type: 'brush-select',
selectedState: 'selected',
includeEdges: true,
onSelect() {
// @ts-ignore
const graph = this.graph;
const nodes = graph.findAllByState('node', 'selected')
const edges = graph.findAllByState('edge', 'selected')
graph.emit('select-change', {nodes, edges})
}
},)
}
return registryBehaviors
}
\ No newline at end of file
const G6 = require('@antv/g6/src')
const Grid = require('@antv/g6/plugins/grid')
const Minimap = require('@antv/g6/plugins/minimap')
const SingleShapeMixin = require('@antv/g6/src/shape/single-shape-mixin');
const Item = require('@antv/g6/src/item/item');
module.exports = (window as any).G6 = {
default: G6,
Grid,
Minimap,
SingleShapeMixin,
Item,
version: '@0.1.4',
}
import icon from './vue-flow-editor-icon.vue'
export const externalComponents = [
icon,
]
\ No newline at end of file
<template>
<svg class="vue-flow-editor-icon" aria-hidden="true" @click="e => $emit('click',e)">
<use :xlink:href="'#'+icon"></use>
</svg>
</template>
<script>
export default {
name: "vue-flow-editor-icon",
props: {
icon: {type: String, required: true}, //图标名称
},
}
</script>
<style lang="scss">
.vue-flow-editor-icon {
color: inherit;
font-size: inherit;
box-sizing: border-box;
outline: none;
/*阿里巴巴icon设置*/
width: 1em;
height: 1em;
vertical-align: -0.15em;
fill: currentColor;
overflow: hidden;
}
</style>
\ No newline at end of file
import { computed, reactive, watch } from "vue";
import { Grid, Minimap } from "@/g6/g6";
import { flatten, suffixSize } from "@/utils/utils";
import { Command, useCommander } from "@/plugins/Command";
import { getSelected, SELECTED_STATE } from "@/behavior/click-select";
import clone from "@antv/util/lib/clone";
export const VueFlowEditorProvider = "@@VueFlowEditorProvider";
/**
* 编辑器各个节点整体样式
* @author 韦胜健
* @date 2020/4/29 15:32
*/
export function useEditorStyles(props: { height; menuWidth; toolbarHeight }) {
return computed(() => ({
root: {
height: suffixSize(props.height),
},
left: {
width: suffixSize(props.menuWidth),
},
toolbar: {
height: suffixSize(props.toolbarHeight),
},
}));
}
/**
* 配置G6的插件信息,并且根据props中的属性动态 加载/卸载 插件
* @author 韦胜健
* @date 2020/4/29 11:44
*/
export function useEditorPlugins(props: { grid; miniMap }, graph) {
const pluginState = reactive({
plugin: {
grid: null, // 当前网格插件加载的配置信息对象
miniMap: null, // 当前缩略图插件加载的配置信息对象
},
});
function grid(val) {
if (val === false || val == null) {
if (!!pluginState.plugin.grid) {
graph.removePlugin(pluginState.plugin.grid);
pluginState.plugin.grid = null;
}
} else {
const pluginConfig = typeof val === "boolean" ? {} : val;
pluginState.plugin.grid = new Grid(pluginConfig);
graph.addPlugin(pluginState.plugin.grid);
}
}
function miniMap(val) {
if (val === false || val == null) {
if (!!pluginState.plugin.miniMap) {
graph.removePlugin(pluginState.plugin.miniMap);
pluginState.plugin.miniMap = null;
}
} else {
const pluginConfig = typeof val === "boolean" ? {} : val;
pluginState.plugin.miniMap = new Minimap(pluginConfig);
graph.addPlugin(pluginState.plugin.miniMap);
}
}
grid(props.grid);
miniMap(props.miniMap);
watch(
() => props.grid,
(val) => {
grid(val);
}
);
watch(
() => props.miniMap,
(val) => {
miniMap(val);
}
);
return {
pluginState,
};
}
/**
* 对canvas组件所需要的属性做响应式缓存
* @author 韦胜健
* @date 2020/4/29 16:46
*/
export function useCanvasProps(props: { data?; grid; miniMap }) {
const canvasProps = reactive({
data: props.data,
grid: props.grid,
miniMap: props.miniMap,
});
watch(
() => props.data,
(val) => (canvasProps.data = val)
);
watch(
() => props.grid,
(val) => (canvasProps.grid = val)
);
watch(
() => props.miniMap,
(val) => (canvasProps.miniMap = val)
);
return canvasProps;
}
/**
* 注册编辑器常用的命令,以便撤销以及重做命令
* @author 韦胜健
* @date 2020/4/30 15:19
*/
export function useEditorCommander(editorState) {
const commander = useCommander(editorState);
/*网格切换*/
commander.register(
new Command({
name: "switchGrid",
execute() {
const grid = editorState.canvasProps.grid;
return {
redo: () => {
editorState.canvasProps.grid = !grid;
},
undo: () => {
editorState.canvasProps.grid = grid;
},
};
},
})
);
/*缩略图切换*/
commander.register(
new Command({
name: "switchMiniMap",
execute() {
const miniMap = editorState.canvasProps.miniMap;
return {
redo: () => {
editorState.canvasProps.miniMap = !miniMap;
},
undo: () => {
editorState.canvasProps.miniMap = miniMap;
},
};
},
})
);
/*适应画布切换*/
commander.register(
new Command({
name: "fitView",
execute() {
const graph = this.graph;
const zoom = graph.getZoom();
return {
redo: () => {
graph.fitView(20);
},
undo: () => {
graph.zoomTo(zoom);
},
};
},
})
);
/*实际尺寸切换*/
commander.register(
new Command({
name: "actualView",
execute() {
const graph = this.graph;
const zoom = graph.getZoom();
return {
redo: () => {
graph.zoomTo(1);
},
undo: () => {
graph.zoomTo(zoom);
},
};
},
})
);
/*放大*/
commander.register(
new Command({
name: "zoomIn",
keyboard: "ctrl+=",
execute() {
const graph = this.graph;
let zoom = graph.getZoom();
return {
redo: () => {
graph.zoom(1.1);
},
undo: () => {
graph.zoomTo(zoom);
},
};
},
})
);
/*缩小*/
commander.register(
new Command({
name: "zoomOut",
keyboard: "ctrl+-",
execute() {
const graph = this.graph;
let zoom = graph.getZoom();
return {
redo: () => {
graph.zoom(0.9);
},
undo: () => {
graph.zoomTo(zoom);
},
};
},
})
);
/*删除节点*/
commander.register(
new Command({
name: "delete",
keyboard: ["ctrl+d", "backspace", "delete"],
init() {
this.data = {
onSelectChange: (selected) => {
this.data = {
...this.data,
selected,
};
},
};
this.graph.on("select-change", this.data.onSelectChange);
},
destroy() {
this.graph.off("select-change", this.data.onSelectChange);
},
execute() {
const graph = this.graph;
let before;
let after;
return {
redo: async () => {
if (!before && !after) {
const { beforeDelete, afterDelete } = editorState.props;
before = clone(graph.save());
await Promise.all(
flatten(Object.values(getSelected(graph))).map(async (i) => {
const model = i.get("model");
const type = i.get("type");
try {
if (!!beforeDelete) {
await beforeDelete(model, type);
}
i.clearAnchor();
graph.removeItem(i);
graph.paint();
if (!!afterDelete) {
await afterDelete(model, type);
}
} catch (e) {
console.error(e);
}
})
);
after = clone(graph.save());
} else {
graph.read(after);
}
},
undo: () => {
graph.read(before);
},
};
},
isEnable() {
let { selected } = this.data;
if (!selected) {
return false;
} else {
const { nodes, edges } = selected;
return [...nodes, ...edges].length > 0;
}
},
})
);
/*拖拽节点*/
commander.register(
new Command({
name: "drag",
doNothingWhenExecute: true,
init() {
this.data = {
ondragstart: () => {
this.data = {
...this.data,
start: clone(this.graph.save()),
};
},
ondragend: () => {
this.data = {
...this.data,
end: clone(this.graph.save()),
};
commander.commands.drag();
},
};
this.graph.on("drag-node:start", this.data.ondragstart);
this.graph.on("drag-node:end", this.data.ondragend);
},
destroy() {
this.graph.off("drag-node:start", this.data.ondragstart);
this.graph.off("drag-node:end", this.data.ondragend);
},
execute() {
const { start, end } = this.data;
return {
redo: () => {
this.graph.read(end);
},
undo: () => {
this.graph.read(start);
},
};
},
})
);
/*全选*/
commander.register(
new Command({
name: "selectAll",
keyboard: "ctrl+a",
isQueue: false,
execute() {
return {
redo: () => {
if (editorState.props.multipleSelect) {
const selected = {
nodes: this.graph.findAll("node", () => true),
edges: this.graph.findAll("edge", () => true),
};
flatten(Object.values(selected)).forEach((item) => {
item.setState(SELECTED_STATE, true);
});
this.graph.paint();
this.graph.emit("select-change", selected);
}
},
};
},
})
);
/*添加连接线*/
commander.register(
new Command({
name: "addEdge",
doNothingWhenExecute: true,
init() {
this.data = {
beforeAdd: () => {
this.data = {
...this.data,
before: clone(this.graph.save()),
};
},
afterAdd: () => {
this.data = {
...this.data,
after: clone(this.graph.save()),
};
commander.commands.addEdge();
},
};
this.graph.on("add-edge:before", this.data.beforeAdd);
this.graph.on("add-edge:after", this.data.afterAdd);
},
destroy() {
this.graph.off("add-edge:before", this.data.beforeAdd);
this.graph.off("add-edge:after", this.data.afterAdd);
},
execute() {
const { before, after } = this.data;
return {
redo: () => {
this.graph.read(after);
},
undo: () => {
this.graph.read(before);
},
};
},
})
);
/**
* 添加节点
* @author 韦胜健
* @date 2020/5/9 9:25
*/
commander.register(
new Command({
name: "addNode",
doNothingWhenExecute: true,
init() {
this.data = {
beforeAdd: () => {
this.data = {
...this.data,
before: clone(this.graph.save()),
};
},
afterAdd: () => {
this.data = {
...this.data,
after: clone(this.graph.save()),
};
commander.commands.addNode();
},
};
this.graph.on("add-node:before", this.data.beforeAdd);
this.graph.on("add-node:after", this.data.afterAdd);
},
destroy() {
this.graph.off("add-node:before", this.data.beforeAdd);
this.graph.off("add-node:after", this.data.afterAdd);
},
execute() {
const { before, after } = this.data;
return {
redo: () => {
this.graph.read(after);
},
undo: () => {
this.graph.read(before);
},
};
},
})
);
/**
* 更新节点
* @author 韦胜健
* @date 2020/5/9 9:25
*/
commander.register(
new Command({
name: "update",
doNothingWhenExecute: true,
init() {
this.data = {
before: null,
after: null,
};
},
execute(model) {
const graph = this.graph;
const item = graph.findById(model.id);
this.data.before = clone(graph.save());
if (!!item) {
graph.update(item, model);
graph.paint();
this.data.after = clone(graph.save());
} else {
this.data.after = this.data.before;
}
const { before, after } = this.data;
return {
redo: () => {
graph.read(after);
},
undo: () => {
graph.read(before);
},
};
},
})
);
return commander;
}
!function(a){var e,i='<svg><symbol id="vfe-actual-size" viewBox="0 0 1024 1024"><path d="M205.66145834 90.125h70.30975342v843.75H205.66145834V90.125z m562.50274658 0H838.47395834v843.75h-70.30975342V90.125zM486.90871176 301.0625h70.31799316v70.30975342h-70.31799316V301.0625z m0 281.24725342h70.31799316v70.31799316h-70.31799316v-70.31799316z" ></path></symbol><symbol id="vfe-fit" viewBox="0 0 1024 1024"><path d="M640 288V96c0-19.2 12.8-32 32-32s32 12.8 32 32v160h160c19.2 0 32 12.8 32 32s-12.8 32-32 32H672c-6.4 0-12.8 0-19.2-6.4h-6.4c0-12.8-6.4-19.2-6.4-25.6zM288 64c-19.2 0-32 12.8-32 32v160H96c-19.2 0-32 12.8-32 32s12.8 32 32 32h192c6.4 0 12.8 0 19.2-6.4h6.4c6.4-6.4 6.4-12.8 6.4-19.2v-192c0-25.6-12.8-38.4-32-38.4z m576 576H672c-6.4 0-12.8 0-19.2 6.4h-6.4c-6.4 6.4-6.4 12.8-6.4 19.2v192c0 19.2 12.8 32 32 32s32-12.8 32-32V704h160c19.2 0 32-12.8 32-32s-12.8-32-32-32z m-550.4 12.8c-6.4-6.4-6.4-6.4 0 0-12.8-6.4-19.2-12.8-25.6-12.8H96c-19.2 0-32 12.8-32 32s12.8 32 32 32h160v160c0 19.2 12.8 32 32 32s32-12.8 32-32V672c0-6.4-6.4-12.8-6.4-19.2zM480 352c-70.4 0-128 57.6-128 128s57.6 128 128 128 128-57.6 128-128-57.6-128-128-128z" ></path></symbol><symbol id="vfe-search" viewBox="0 0 1024 1024"><path d="M399.5 737c-187.49999971 0-337.5-150.00000029-337.5-337.5s150.00000029-337.5 337.5-337.5 337.5 150.00000029 337.5 337.5S586.99999971 737 399.5 737zM399.5 136.99999971C253.25 136.99999971 136.99999971 253.25 136.99999971 399.5s116.25000029 262.50000029 262.50000029 262.50000029 262.50000029-116.25000029 262.50000029-262.50000029S545.75 136.99999971 399.5 136.99999971z" ></path><path d="M924.49999971 962c-11.25 0-18.74999971-3.75000029-26.25000029-11.25l-299.99999971-299.99999971c-15.00000029-15.00000029-15.00000029-37.50000029 0-52.49999971s37.50000029-15.00000029 52.49999971 0l299.9999997 299.99999971c15.00000029 15.00000029 15.00000029 37.50000029 0 52.49999971C943.25000029 958.24999971 935.74999971 962 924.49999971 962z" ></path></symbol><symbol id="vfe-zoom-in" viewBox="0 0 1024 1024"><path d="M968.842667 908.501333L726.698667 666.357333A382.293333 382.293333 0 0 0 810.666667 426.666667C810.666667 214.592 638.752 42.666667 426.666667 42.666667 214.592 42.666667 42.666667 214.592 42.666667 426.666667s171.925333 384 384 384c90.666667 0 173.994667-31.413333 239.690666-83.978667l242.144 242.144a42.666667 42.666667 0 0 0 60.341334-60.330667zM426.666667 725.333333c-164.949333 0-298.666667-133.717333-298.666667-298.666666s133.717333-298.666667 298.666667-298.666667c164.96 0 298.666667 133.717333 298.666666 298.666667S591.626667 725.333333 426.666667 725.333333z m170.666666-298.666666a42.666667 42.666667 0 0 1-42.666666 42.666666h-85.333334v85.333334a42.666667 42.666667 0 0 1-85.333333 0v-85.333334h-85.333333a42.666667 42.666667 0 0 1 0-85.333333h85.333333v-85.333333a42.666667 42.666667 0 0 1 85.333333 0v85.333333h85.333334a42.666667 42.666667 0 0 1 42.666666 42.666667z" ></path></symbol><symbol id="vfe-zoom-out" viewBox="0 0 1024 1024"><path d="M968.842667 908.501333L726.698667 666.357333A382.293333 382.293333 0 0 0 810.666667 426.666667C810.666667 214.592 638.752 42.666667 426.666667 42.666667 214.592 42.666667 42.666667 214.592 42.666667 426.666667s171.925333 384 384 384c90.666667 0 173.994667-31.413333 239.690666-83.968l242.144 242.133333a42.666667 42.666667 0 0 0 60.341334-60.330667zM426.666667 725.333333c-164.949333 0-298.666667-133.717333-298.666667-298.666666s133.717333-298.666667 298.666667-298.666667c164.96 0 298.666667 133.717333 298.666666 298.666667S591.626667 725.333333 426.666667 725.333333z m170.666666-298.666666a42.666667 42.666667 0 0 1-42.666666 42.666666H298.666667a42.666667 42.666667 0 0 1 0-85.333333h256a42.666667 42.666667 0 0 1 42.666666 42.666667z" ></path></symbol><symbol id="vfe-undo" viewBox="0 0 1024 1024"><path d="M761.856 1024c113.728-206.048 132.896-520.32-313.856-509.824l0 253.824-384-384 384-384 0 248.384c534.976-13.952 594.56 472.224 313.856 775.616z" ></path></symbol><symbol id="vfe-redo" viewBox="0 0 1024 1024"><path d="M576 248.384V0l384 384-384 384v-253.824C129.248 503.68 148.416 817.952 262.144 1024-18.56 720.576 41.056 234.432 576 248.384z" ></path></symbol></svg>',t=(e=document.getElementsByTagName("script"))[e.length-1].getAttribute("data-injectcss");if(t&&!a.__iconfont__svg__cssinject__){a.__iconfont__svg__cssinject__=!0;try{document.write("<style>.svgfont {display: inline-block;width: 1em;height: 1em;fill: currentColor;vertical-align: -0.1em;font-size:16px;}</style>")}catch(e){console&&console.log(e)}}!function(e){if(document.addEventListener)if(~["complete","loaded","interactive"].indexOf(document.readyState))setTimeout(e,0);else{var t=function(){document.removeEventListener("DOMContentLoaded",t,!1),e()};document.addEventListener("DOMContentLoaded",t,!1)}else document.attachEvent&&(c=e,n=a.document,s=!1,(i=function(){try{n.documentElement.doScroll("left")}catch(e){return void setTimeout(i,50)}o()})(),n.onreadystatechange=function(){"complete"==n.readyState&&(n.onreadystatechange=null,o())});function o(){s||(s=!0,c())}var c,n,s,i}(function(){var e,t,o,c,n,s;(e=document.createElement("div")).innerHTML=i,i=null,(t=e.getElementsByTagName("svg")[0])&&(t.setAttribute("aria-hidden","true"),t.style.position="absolute",t.style.width=0,t.style.height=0,t.style.overflow="hidden",o=t,(c=document.body).firstChild?(n=o,(s=c.firstChild).parentNode.insertBefore(n,s)):c.appendChild(o))})}(window);
\ No newline at end of file
import './iconfont'
import canvas from './vue-flow-editor-canvas'
import editor from './vue-flow-editor'
import menu from './vue-flow-editor-menu'
import toolbar from './vue-flow-editor-toolbar'
import editMenu from './vue-flow-edit-menu.vue'
import editMenuGroup from './vue-flow-edit-menu-group.vue'
import preview from './vue-flow-editor-preview.vue'
export const EditorComponent = [
canvas,
editor,
menu,
toolbar,
editMenu,
editMenuGroup,
preview,
]
\ No newline at end of file
<template>
<div class="vue-flow-edit-menu-group" :class="{'vue-flow-edit-menu-group-expanded':p_value}">
<div class="vue-flow-edit-menu-group-title" @click="onClickTitle">
<slot name="content" :model="{label}">
<span>{{label}}</span>
</slot>
<i class="el-icon-arrow-down" v-if="!hideArrow"/>
</div>
<el-collapse-transition>
<div class="vue-flow-edit-menu-group-content" v-if="p_value" style="transition-duration: 200ms">
<slot></slot>
</div>
</el-collapse-transition>
</div>
</template>
<script>
export default {
name: "vue-flow-edit-menu-group",
props: {
value: {type: Boolean},
label: {type: String},
hideArrow: {type: Boolean}, // 是否隐藏箭头
},
watch: {
value(val) {
this.p_value = val
},
},
data() {
return {
p_value: this.value,
}
},
methods: {
onClickTitle() {
this.p_value = !this.p_value
this.$emit('input', this.p_value)
},
},
}
</script>
<style lang="scss">
</style>
\ No newline at end of file
<template>
<div class="vue-flow-edit-menu" draggable="true" @dragstart="onDragstart" @dragend="onDragend">
<slot name="content" :model="model">
<span>{{model.label}}</span>
</slot>
<i class="el-icon-arrow-right" v-if="!hideArrow"></i>
</div>
</template>
<script>
import {VueFlowEditorProvider} from "@/editor/editor";
import {formatNodeModel, formatPos} from "../utils/utils";
export default {
name: "vue-flow-edit-menu",
inject: {
[VueFlowEditorProvider]: {}
},
props: {
model: {type: Object, require: true}, // 节点新建的时候的配置对象
hideArrow: {type: Boolean}, // 是否隐藏箭头
},
data() {
return {
handler: {
dragenter: (e) => {
e.dataTransfer.dropEffect = 'move'
},
dragover: (e) => {
e.preventDefault()
},
dragleave: (e) => {
e.dataTransfer.dropEffect = 'none'
},
drop: async e => {
let model = {...this.model}
formatNodeModel(model, this[VueFlowEditorProvider].props.activityConfig)
let {id, shape, size} = model
shape = shape || 'rect'
id = id || String(new Date().getTime())
if (typeof id === "function") {
id = await id()
}
const {clientX, clientY} = e
let {x, y} = this.graph.getPointByClient(clientX, clientY)
const {beforeAdd, afterAdd} = this[VueFlowEditorProvider].editorState.props
const formatData = formatPos({
x,
y,
size,
shape,
})
model = {
...(model),
id,
shape: formatData.shape,
size: formatData.size,
x: formatData.x,
y: formatData.y,
}
try {
if (!!beforeAdd) {
await beforeAdd(model, 'node')
}
this.graph.emit('add-node:before', model)
this.graph.add('node', model)
this.graph.paint()
this.graph.emit('add-node:after', model)
if (!!afterAdd) {
await afterAdd(model, 'node')
}
} catch (e) {
console.error(e)
}
}
},
}
},
computed: {
graph() {
return this[VueFlowEditorProvider].editorState.graph
},
container() {
return !!this.graph ? this.graph.get('container') : null
},
},
methods: {
onDragstart(e) {
e.dataTransfer.effectAllowed = 'move'
this.container.addEventListener('dragenter', this.handler.dragenter)
this.container.addEventListener('dragover', this.handler.dragover)
this.container.addEventListener('dragleave', this.handler.dragleave)
this.container.addEventListener('drop', this.handler.drop)
},
onDragend() {
this.container.removeEventListener('dragenter', this.handler.dragenter)
this.container.removeEventListener('dragover', this.handler.dragover)
this.container.removeEventListener('dragleave', this.handler.dragleave)
this.container.removeEventListener('drop', this.handler.drop)
},
},
}
</script>
<style lang="scss">
</style>
\ No newline at end of file
import {inject, onBeforeUnmount, onMounted,getCurrentInstance} from "vue";
import {useEditorPlugins, VueFlowEditorProvider} from "@/editor/editor";
import {G6} from "@/g6/g6";
import {useBehavior} from "@/behavior";
import {GraphStyle} from "@/utils/styles";
import {registerShape} from "@/shape";
import {formatNodeModel} from "@/utils/utils";
registerShape(G6)
export default {
name: 'vue-flow-editor-canvas',
props: {
data: {type: Object}, // 渲染的数据
miniMap: {type: [Boolean, Object], default: true}, // 是否需要缩略图
grid: {type: [Boolean, Object], default: true}, // 是否需要网格
},
setup(props, context) {
const { proxy } = getCurrentInstance() as any
const {editorState, commander, props: editorProps} = inject(VueFlowEditorProvider) as any
function onMouseenter(e: MouseEvent) {commander.initEvent()}
function onMouseout(e: MouseEvent) {commander.destroyEvent()}
function refresh() {
if (!!editorState.graph) {
editorState.graph.destroy()
}
const target = proxy.$refs.target as HTMLElement
const {offsetHeight: height, offsetWidth: width} = proxy.$refs.root as HTMLElement
const behaviors = useBehavior({
multipleSelect: editorState.props.multipleSelect,
dragEdge: {
disabled: editorState.props.disabledDragEdge,
beforeAdd: editorState.props.beforeAdd,
afterAdd: editorState.props.afterAdd,
}
})
const graph = new G6.Graph({
container: target as HTMLElement,
width,
height,
modes: {
edit: [
...behaviors,
],
},
...GraphStyle.default,
})
const $read = graph.read
graph.read = (data) => {
let {nodes, edges} = data || {}
nodes = nodes || []
edges = edges || []
nodes.forEach(node => formatNodeModel(node, editorProps.activityConfig))
data = {nodes, edges}
$read.apply(graph, [data])
}
graph.setMode('edit')
graph.read(props.data)
useEditorPlugins(props, graph)
editorState.setGraph(graph)
}
function onResize() {
refresh()
}
onMounted(() => {
const target = proxy.$refs.target as HTMLElement
target.addEventListener('mouseenter', onMouseenter)
target.addEventListener('mouseout', onMouseout)
window.addEventListener('resize', onResize)
refresh()
})
onBeforeUnmount(() => {
const target = proxy.$refs.target as HTMLElement
target.removeEventListener('mouseenter', onMouseenter)
target.removeEventListener('mouseout', onMouseout)
window.removeEventListener('resize', onResize)
commander.destroyEvent()
})
return () => (
<div class="vue-flow-editor-canvas" ref="root">
<div class="vue-flow-editor-canvas-target" ref="target"/>
</div>
)
},
}
import {computed, inject} from "vue";
import {VueFlowEditorProvider} from "@/editor/editor";
import {suffixSize} from "@/utils/utils";
const logo = require('../assets/vue-flow-editor.png')
interface Menu {
name: string,
}
interface MenuGroup {
name: string
expanded?: boolean
menus?: Menu[]
}
export default {
name: 'vue-flow-editor-menu',
setup(props, context) {
const {editorState, props: editorProps} = inject(VueFlowEditorProvider) as any
const headerStyles = computed(() => ({
height: suffixSize(editorState.props.toolbarHeight)
}))
return () => (
<div class="vue-flow-editor-menu">
<div class="vue-flow-editor-menu-header" style={headerStyles.value}>
{editorProps.editorTitle || <img src={logo} alt="vue-flow-editor"/>}
</div>
<div class="vue-flow-editor-menu-list">
<div class="vue-flow-editor-menu-list-content">
{!!context.slots.default && context.slots.default()}
</div>
</div>
</div>
)
},
}
\ No newline at end of file
<template>
<transition name="vue-flow-editor-preview-transition">
<div class="vue-flow-editor-preview" v-if="p_value">
<div class="vue-flow-editor-preview-body" ref="body">
<div class="vue-flow-editor-preview-target" ref="target"></div>
<div class="vue-flow-editor-preview-close" @click="close">
<i class="el-icon-close"/>
</div>
</div>
</div>
</transition>
</template>
<script>
import {G6} from "@/g6/g6";
import {GraphStyle} from "../utils/styles";
export default {
name: "vue-flow-editor-preview",
props: {
value: {type: Boolean},
data: {type: Object},
},
watch: {
value(val) {
this.p_value = val
if (!!val) {
this.$nextTick(() => {
this.refresh()
})
}
},
},
data() {
return {
graph: null,
p_value: this.value,
}
},
methods: {
refresh() {
const container = this.$refs.target
const {offsetHeight, offsetWidth} = this.$refs.body
if (!!this.graph) {
this.graph.destroy()
}
this.graph = new G6.Graph({
container,
width: offsetWidth,
height: offsetHeight,
...GraphStyle.default,
mode: {
default: [
'drag-canvas',
'zoom-canvas',
]
},
})
this.graph.read(this.data)
this.graph.fitView(20)
},
close() {
this.p_value = false
this.$emit('input', this.p_value)
},
},
}
</script>
<style lang="scss">
</style>
\ No newline at end of file
import {computed, inject} from "vue";
import {suffixSize} from "@/utils/utils";
import {VueFlowEditorProvider} from "@/editor/editor";
import {TOOLBAR_IMAGE} from '../image'
interface ToolbarButton {
key?: string
tip?: string
label?: string
icon?: string
handler?: () => void
isEnable?: () => boolean
}
export default {
name: 'vue-flow-editor-toolbar',
props: {
height: {type: [String, Number]},
toolbarButtonHandler: {type: Function},
},
setup(props, context) {
const styles = computed(() => ({
height: suffixSize(props.height)
}))
const {editorState, commander, openPreview} = inject(VueFlowEditorProvider) as any
const toolbarButtons: ToolbarButton[] = [
{
key: 'gridSwitcher',
tip: '开启/关闭网格',
label: '网格',
icon: 'grid',
handler: () => {
commander.commands.switchGrid()
},
isEnable: () => commander.isEnable.value.switchGrid,
},
{
key: 'miniMapSwitcher',
tip: '开启/关闭缩略图',
label: '缩略图',
icon: 'image',
handler: () => {
commander.commands.switchMiniMap()
},
isEnable: () => commander.isEnable.value.switchMiniMap,
},
{
key: 'fitSize',
tip: '适应画布',
icon: 'fitView',
handler: () => {
commander.commands.fitView()
},
isEnable: () => commander.isEnable.value.fitView,
},
{
key: 'actualSize',
tip: '实际尺寸',
icon: 'actualSize',
handler: () => {
commander.commands.actualView()
},
isEnable: () => commander.isEnable.value.actualView,
},
/*{
key: 'refresh',
tip: '刷新',
icon: 'el-icon-refresh-right',
handler: () => {
editorState.refreshCanvas()
},
},*/
{
key: 'zoomIn',
tip: '放大 CTRL+=',
label: '放大',
icon: 'zoomIn',
handler: () => {
commander.commands.zoomIn()
},
isEnable: () => commander.isEnable.value.zoomIn,
},
{
key: 'zoomOut',
tip: '缩小 CTRL+-',
label: '缩小',
icon: 'zoomOut',
handler: () => {
commander.commands.zoomOut()
},
isEnable: () => commander.isEnable.value.zoomOut,
},
{
key: 'preview',
tip: '预览',
icon: 'preview',
handler: () => {
openPreview()
}
},
{
key: 'delete',
tip: '删除 DELETE , CTRL+D',
label: '删除',
icon: 'delete',
handler: () => {
commander.commands.delete()
},
isEnable: () => commander.isEnable.value.delete,
},
]
const targetToolbarButtons = computed(() => {
const buttons = [...toolbarButtons]
if (!editorState.props.disabledUndo) {
buttons.splice(8, 0, ...[
{
key: 'undo',
tip: '撤销 CTRL+Z',
label: '撤销',
icon: 'undo',
handler: () => {
commander.commands.undo()
},
isEnable: () => commander.isEnable.value.undo,
},
{
key: 'redo',
tip: '重做 CTRL+SHIFT+Z',
label: '重做',
icon: 'redo',
handler: () => {
commander.commands.redo()
},
isEnable: () => commander.isEnable.value.redo,
},
])
}
return !!props.toolbarButtonHandler ? props.toolbarButtonHandler(buttons) : buttons
})
return () => (
<div class="vue-flow-editor-toolbar" style={styles.value}>
{targetToolbarButtons.value.map(item => (
<el-tooltip content={item.tip} key={item.key}>
<div class={[
'vue-flow-editor-toolbar-item',
{
'vue-flow-editor-toolbar-item-disabled': !!item.isEnable && !item.isEnable()
}]}
onClick={() => ((!item.isEnable || item.isEnable()) && item.handler())}>
<img src={TOOLBAR_IMAGE[item.icon]}/>
<span>{item.label || item.tip}</span>
</div>
</el-tooltip>
))}
{context.slots.default && context.slots.default()}
</div>
)
},
}
\ No newline at end of file
$boxshadow: 0 2px 8px #f0f1f2;
$transition: all 300ms cubic-bezier(0.23, 1, 0.32, 1);
.icon {
width: 1em;
height: 1em;
vertical-align: -0.15em;
fill: currentColor;
overflow: hidden;
}
.vue-flow-editor {
height: 100%;
position: relative;
display: flex;
flex-direction: row;
align-items: stretch;
overflow: hidden;
.vue-flow-editor-left {
overflow: hidden;
box-shadow: $boxshadow;
}
.vue-flow-editor-right {
flex: 1;
display: flex;
flex-direction: column;
overflow: hidden;
}
.vue-flow-editor-menu {
height: 100%;
width: 100%;
display: flex;
flex-direction: column;
.vue-flow-editor-menu-header {
display: flex;
align-items: center;
justify-content: center;
letter-spacing: 2px;
color: black;
box-shadow: $boxshadow;
box-sizing: border-box;
img {
height: 100%;
}
}
.vue-flow-editor-menu-list {
flex: 1;
overflow: hidden;
background-color: #f9f9f9;
user-select: none;
.vue-flow-editor-menu-list-content {
height: 100%;
width: 100%;
overflow-y: auto;
overflow-x: hidden;
}
.vue-flow-edit-menu-group {
.vue-flow-edit-menu-group-title {
font-size: 14px;
font-weight: 500;
color: #777;
background-color: white;
padding: 0 16px;
height: 40px;
margin-top: 2px;
display: flex;
justify-content: space-between;
align-items: center;
cursor: pointer;
}
.vue-flow-edit-menu-group-content {
box-sizing: border-box;
padding: 6px;
}
&.vue-flow-edit-menu-group-expanded {
.vue-flow-edit-menu-group-title {
i {
transform: rotate(180deg);
}
}
}
}
.vue-flow-edit-menu {
padding: 9px 16px;
box-sizing: border-box;
background-color: white;
margin-bottom: 2px;
cursor: move;
font-size: 14px;
color: #777;
display: flex;
justify-content: space-between;
align-items: center;
transition: all 300ms linear;
&:hover {
background-color: rgba(#1F74FF, 0.08);
color: black;
}
&:active {
background-color: rgba(#1F74FF, 0.08);
}
&:first-child {
margin-top: 2px;
}
}
}
}
.vue-flow-editor-toolbar {
display: flex;
align-items: center;
justify-content: flex-start;
padding: 0 16px;
box-shadow: $boxshadow;
user-select: none;
font-size: 14px;
& > * {
cursor: pointer;
color: #777;
}
.vue-flow-editor-toolbar-item {
width: 60px;
height: 48px;
outline: none;
display: inline-flex;
flex-direction: column;
align-items: center;
justify-content: center;
img {
width: 16px;
height: 16px;
margin-bottom: 4px;
}
span {
font-size: 12px;
transform: scale(0.8);
}
&:hover {
background-color: #f6f6f6;
border-radius: 2px;
}
&.vue-flow-editor-toolbar-item-disabled {
opacity: 0.5;
background-color: transparent;
cursor: not-allowed;
}
}
.vue-flow-editor-toolbar-divider {
height: 18px;
border-left: solid 1px #ddd;
}
}
.vue-flow-editor-canvas {
flex: 1;
overflow: hidden;
user-select: none;
.vue-flow-editor-canvas-target {
position: relative;
.g6-minimap {
position: absolute;
bottom: 0;
right: 0;
background-color: rgba(black, 0.1);
}
}
}
.vue-flow-editor-model {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
z-index: 2;
transition: $transition;
transition-duration: 500ms;
&:before {
position: absolute;
top: 0;
bottom: 0;
left: 0;
right: 0;
background-color: rgba(black, 0.1);
content: '';
transition: $transition;
transition-duration: 500ms;
}
.vue-flow-editor-model-body {
background-color: white;
position: absolute;
top: 0;
bottom: 0;
right: 0;
display: flex;
flex-direction: column;
border-left: solid 1px #ddd;
box-shadow: $boxshadow;
transition: $transition;
transition-duration: 500ms;
.vue-flow-editor-model-head {
display: flex;
justify-content: flex-end;
align-items: center;
padding: 0 16px;
box-shadow: $boxshadow;
& > i {
cursor: pointer;
}
}
.vue-flow-editor-model-content {
flex: 1;
overflow: auto;
}
.vue-flow-editor-model-foot {
height: 50px;
display: flex;
justify-content: center;
align-items: center;
border-top: solid 1px #eee;
box-shadow: $boxshadow;
}
}
&.vue-flow-editor-transition-enter-active, &.vue-flow-editor-transition-leave-active {
.vue-flow-editor-model-body {
transform: translateX(0);
}
&:before {
opacity: 1;
}
}
&.vue-flow-editor-transition-enter, &.vue-flow-editor-transition-leave-to {
.vue-flow-editor-model-body {
transform: translateX(100%);
}
&:before {
opacity: 0;
}
}
}
.vue-flow-editor-preview {
position: fixed;
top: 0;
bottom: 0;
left: 0;
right: 0;
z-index: 2;
display: flex;
align-items: center;
justify-content: center;
transition: $transition;
transition-duration: 500ms;
user-select: none;
&:before {
position: absolute;
top: 0;
left: 0;
right: 0;
bottom: 0;
content: '';
background-color: rgba(black, 0.1);
transition: $transition;
transition-duration: 500ms;
}
.vue-flow-editor-preview-body {
width: 80%;
height: 80%;
background-color: white;
border-radius: 12px;
position: relative;
z-index: 1;
transition: $transition;
transition-duration: 500ms;
.vue-flow-editor-preview-close {
position: absolute;
top: -20px;
right: -20px;
font-size: 20px;
background-color: white;
height: 40px;
width: 40px;
border-radius: 20px;
display: flex;
align-items: center;
justify-content: center;
box-shadow: $boxshadow;
border: 1px solid #eee;
color: #999;
cursor: pointer;
}
}
&.vue-flow-editor-preview-transition-enter-active, &.vue-flow-editor-preview-transition-leave-active {
.vue-flow-editor-preview-body {
transform: translateX(0);
}
&:before {
opacity: 1;
}
}
&.vue-flow-editor-preview-transition-enter, &.vue-flow-editor-preview-transition-leave-to {
.vue-flow-editor-preview-body {
transform: translateY(-15%);
opacity: 0;
}
&:before {
opacity: 0;
}
}
}
}
\ No newline at end of file
import {defineComponent,computed, getCurrentInstance, onBeforeUnmount, provide, reactive} from "vue";
import './vue-flow-editor.scss'
import {useCanvasProps, useEditorCommander, useEditorStyles, VueFlowEditorProvider} from "@/editor/editor";
import {formatNodeModel, suffixSize} from "@/utils/utils";
export default {
name: 'vue-flow-editor',
props: {
data: {type: Object}, // 渲染的数据
grid: {type: Boolean, default: true}, // 是否需要网格
miniMap: {type: Boolean, default: false}, // 是否需要缩略图
disabledDragEdge:{type: Boolean}, // 禁用拖拽连线功能
disabledUndo: {type: Boolean}, // 禁用撤销以及重做功能
editorTitle: {type: String}, // 编辑器标题
height: {type: [String, Number], default: '100%'}, // 画布高度
toolbarHeight: {type: [String, Number], default: '56'}, // 顶部工具栏高度
menuWidth: {type: [String, Number], default: '250'}, // 左侧菜单栏高度
modelWidth: {type: [String, Number], default: '500px'}, // model 弹框的宽度
onRef: {type: Function}, // 获取引用函数
toolbarButtonHandler: {type: Function}, // 工具栏按钮格式化函数
loading: {type: Boolean}, // 是否开启编辑器的loading状态
multipleSelect: {type: Boolean, default: true}, // 是否可以多选
beforeDelete: {type: Function}, // 删除前校验
afterDelete: {type: Function}, // 删除后动作
beforeAdd: {type: Function}, // 添加前校验
afterAdd: {type: Function}, // 添加后动作
activityConfig: {type: Object}, // 注册活动节点
},
setup(props, context) {
const styles = useEditorStyles(props)
const canvasProps = useCanvasProps(props)
const modelBodyStyle = computed(() => ({
width: suffixSize(props.modelWidth)
}))
const editorState = reactive({
graph: null as any, // graph 对象,canvas组件挂载初始化完毕会给这个属性赋值
canvasProps, // 传给canvas组件的属性,同时可以修改
props, // 当前组件接收得到的属性,供子组件通过inject获取
canvasKey: 0, // canvas组件的key,以刷新canvas组件
showModel: false, // 详情对话框是否显示
showPreview: false, // 预览对话框显示
data: null,
refreshCanvas: () => { // 刷新canvas组件
editorState.canvasKey++
},
setGraph: (graph) => {
editorState.graph = graph
commander.init(graph)
graph.on('node:dblclick', (e) => {
context.emit('dblclick-node', e)
})
graph.on('edge:dblclick', (e) => {
context.emit('dblclick-edge', e)
})
graph.on('select-change', (e) => {
context.emit('select-change', e)
})
}
})
const commander = useEditorCommander(editorState)
const provideContext = {
props,
editorState,
commander,
openModel: () => {
editorState.showModel = true
},
closeModel: () => {
editorState.showModel = false
},
updateModel: (model) => {
formatNodeModel(model, props.activityConfig)
commander.commands.update(model)
},
openPreview: () => {
editorState.data = editorState.graph.save()
editorState.showPreview = true
},
read: (data) => {
if (!!editorState.graph) {
editorState.graph.read(data)
} else {
console.warn('graph is not initialized')
}
}
}
provide(VueFlowEditorProvider, provideContext)
if (!!props.onRef) {
props.onRef(provideContext);
}
const ctx = getCurrentInstance()
Object.assign(ctx, provideContext)
onBeforeUnmount(() => {
commander.destroy()
if (!!props.onRef) {
props.onRef(null)
}
})
return () => (
<div class="vue-flow-editor" style={styles.value.root} v-loading={props.loading}>
<div class="vue-flow-editor-left" style={styles.value.left}>
<vue-flow-editor-menu>
{!!context.slots.menu && context.slots.menu()}
</vue-flow-editor-menu>
</div>
<div class="vue-flow-editor-right">
<vue-flow-editor-toolbar style={styles.value.toolbar} canvasProps={canvasProps} toolbarButtonHandler={props.toolbarButtonHandler}>
{!!context.slots.toolbar && context.slots.toolbar()}
</vue-flow-editor-toolbar>
<vue-flow-editor-canvas data={canvasProps.data} grid={canvasProps.grid} miniMap={canvasProps.miniMap} key={String(editorState.canvasKey) + String(props.multipleSelect) + String(props.disabledDragEdge)}/>
</div>
<transition name="vue-flow-editor-transition">
<div class="vue-flow-editor-model" v-show={editorState.showModel}>
<div class="vue-flow-editor-model-body" style={modelBodyStyle.value}>
<div class="vue-flow-editor-model-head" style={styles.value.toolbar}>
<i class="el-icon-close" onClick={provideContext.closeModel}/>
</div>
<div class="vue-flow-editor-model-content">
{!!context.slots.model && context.slots.model()}
</div>
{
!!context.slots.foot && (
<div class="vue-flow-editor-model-foot">
{context.slots.foot()}
</div>
)
}
</div>
</div>
</transition>
<vue-flow-editor-preview value={editorState.showPreview} onInput={val => editorState.showPreview = val} data={editorState.data}/>
</div>
)
},
}
{
"nodes": [
{"id": "0", "label": "n0", "class": "c0","x": 1000, "y": -100 },
{"id": "1", "label": "n1", "class": "c0","x": 300, "y": -10 },
{"id": "2", "label": "n2", "class": "c0","x": 10, "y": 10 },
{"id": "3", "label": "n3", "class": "c0","x": 320, "y": -100 },
{"id": "4", "label": "n4", "class": "c0","x": 100, "y": 900 },
{"id": "5", "label": "n5", "class": "c0","x": 120, "y": 213 },
{"id": "6", "label": "n6", "class": "c1","x": 543, "y": 12 },
{"id": "7", "label": "n7", "class": "c1","x": 543, "y": -100 },
{"id": "8", "label": "n8", "class": "c1","x": 1, "y": 0 },
{"id": "9", "label": "n9", "class": "c1","x": 0, "y": -222 },
{"id": "10", "label": "n10", "class": "c1","x": 435, "y": 69 },
{"id": "11", "label": "n11", "class": "c1","x": 23, "y": 10 },
{"id": "12", "label": "n12", "class": "c1","x": -129, "y": 39 },
{"id": "13", "label": "n13", "class": "c2","x": 234, "y": 843 },
{"id": "14", "label": "n14", "class": "c2","x": -301, "y": 129 },
{"id": "15", "label": "n15", "class": "c2","x": -20, "y": -76 },
{"id": "16", "label": "n16", "class": "c2","x": 1220, "y": -34 },
{"id": "17", "label": "n17", "class": "c2","x": -10, "y": 954 },
{"id": "18", "label": "n18", "class": "c2","x": 492, "y": 123 },
{"id": "19", "label": "n19", "class": "c2","x": 123, "y": -241 }
],
"edges": [
{"source": "0", "target": "1", "label": "e0-1", "weight": 1 },
{"source": "0", "target": "2", "label": "e0-2", "weight": 2 },
{"source": "0", "target": "3", "label": "e0-3", "weight": 3 },
{"source": "0", "target": "4", "label": "e0-4", "weight": 1.4 },
{"source": "0", "target": "5", "label": "e0-5", "weight": 2 },
{"source": "0", "target": "7", "label": "e0-7", "weight": 2 },
{"source": "0", "target": "8", "label": "e0-8", "weight": 2 },
{"source": "0", "target": "9", "label": "e0-9", "weight": 1.3 },
{"source": "0", "target": "10", "label": "e0-10", "weight": 1.5 },
{"source": "0", "target": "11", "label": "e0-11", "weight": 1 },
{"source": "0", "target": "13", "label": "e0-13", "weight": 10 },
{"source": "0", "target": "14", "label": "e0-14", "weight": 2 },
{"source": "0", "target": "15", "label": "e0-15", "weight": 0.5 },
{"source": "0", "target": "16", "label": "e0-16", "weight": 0.8 },
{"source": "2", "target": "3", "label": "e2-3", "weight": 1 },
{"source": "4", "target": "5", "label": "e4-5", "weight": 1.4 },
{"source": "4", "target": "6", "label": "e4-6", "weight": 2.1 },
{"source": "5", "target": "6", "label": "e5-6", "weight": 1.9 },
{"source": "7", "target": "13", "label": "e7-13", "weight": 0.5 },
{"source": "8", "target": "14", "label": "e8-14", "weight": 0.8 },
{"source": "9", "target": "10", "label": "e9-10", "weight": 0.2 },
{"source": "10", "target": "14", "label": "e10-14", "weight": 1 },
{"source": "10", "target": "12", "label": "e10-12", "weight": 1.2 },
{"source": "11", "target": "14", "label": "e11-14", "weight": 1.2 },
{"source": "12", "target": "13", "label": "e12-13", "weight": 2.1 },
{"source": "16", "target": "17", "label": "e16-17", "weight": 2.5 },
{"source": "16", "target": "18", "label": "e16-18", "weight": 3 },
{"source": "17", "target": "18", "label": "e17-18", "weight": 2.6 },
{"source": "18", "target": "19", "label": "e18-19", "weight": 1.6 }
]
}
\ No newline at end of file
// @ts-ignore
const G6Module = window.G6 as any
const G6 = G6Module.default
const Item = G6Module.Item
const Grid = G6Module.Grid
const Minimap = G6Module.Minimap
const SingleShapeMixin = G6Module.SingleShapeMixin
export {
G6,
Item,
Grid,
Minimap,
SingleShapeMixin,
}
import actualSize from './toolbar/actual-size.png'
import copy from './toolbar/copy.png'
import deletePng from './toolbar/delete.png'
import fitView from './toolbar/fit-view.png'
import grid from './toolbar/grid.png'
import preview from './toolbar/pre-view.png'
import redo from './toolbar/redo.png'
import undo from './toolbar/undo.png'
import save from './toolbar/save.png'
import zoomIn from './toolbar/zoomin.png'
import zoomOut from './toolbar/zoomin.png'
import image from './toolbar/image.png'
export const TOOLBAR_IMAGE = {
actualSize,
copy,
delete: deletePng,
fitView,
grid,
preview,
redo,
undo,
save,
zoomIn,
zoomOut,
image,
}
import {EditorComponent} from './editor'
import {externalComponents} from "@/components";
import VueFlowEditor from './editor/vue-flow-editor'
import VueFLowEditMenu from './editor/vue-flow-edit-menu.vue'
import VueFLowEditMenuGroup from './editor/vue-flow-edit-menu-group.vue'
import {formatPos} from "@/utils/utils";
export default {
VueFlowEditor,
VueFLowEditMenu,
VueFLowEditMenuGroup,
formatPos,
install(Vue: any) {
[...externalComponents, ...EditorComponent].forEach(Component => {
Vue.component(Component.name, Component)
})
}
}
\ No newline at end of file
import {computed, reactive} from "vue";
import {KeyboardCode} from "@/utils/keyboard-code";
/**
* 命令模式实现 撤销/重做的命令管理类
* @author 韦胜健
* @date 2020/4/30 12:08
*
* 1. const commander = useCommander() 得到 commander对象;
* 2. state.commander.register(command:Command) 注册命令
* 3. commander.commands.smaller() 调用命令
* 4. commander.isEnable.value.smaller 判断命令是否可用
*
*/
interface CommandQueueItem {
undo?: () => void,
redo: () => void,
}
export class Command {
name: string // 命令名称
execute: (...args: any[]) => CommandQueueItem // 命令执行的逻辑
keyboard?: undefined | string | string[] // 监听的键盘事件:ctrl+shift+alt+a
isEnable?: undefined | (() => boolean) // 判断当前是否可用
isQueue?: boolean // 是否遵循命令队列
doNothingWhenExecute?: boolean // 在调用execute的时候是否什么也不做 (dragend 的时候,这个位置的更新已经由graph做好了,这时候execute不需要立即执行redu)
data?: undefined | any // 命令缓存的数据
init?: undefined | (() => void) // 命令初始化函数
destroy?: undefined | (() => void) // 命令初始化函数
graph?: undefined | any // g6对象
constructor(command: Command) {
Object.assign(this, command)
this.isEnable = command.isEnable == null ? (() => true) : command.isEnable
this.isQueue = command.isQueue == null ? true : command.isQueue
this.doNothingWhenExecute = command.doNothingWhenExecute == null ? false : command.doNothingWhenExecute
this.data = {}
}
}
export function useCommander(editorState) {
/**
* 命令状态
* @author 韦胜健
* @date 2020/4/30 11:54
*/
const state = reactive({
queue: [] as CommandQueueItem[], // 当前执行过的命令队列
index: -1, // 当前命令在命令队列中的索引
registerCommands: [] as Command[], // 当前注册的命令
})
const commands: { [key: string]: (...args: any[]) => void } = {}
const isEnable = computed(() => {
return state.registerCommands.reduce((ret, item) => {
ret[item.name] = item.isEnable()
return ret
}, {})
})
/**
* 注册新命令
* @author 韦胜健
* @date 2020/4/30 11:55
*/
const register = (command: Command) => {
if (!command.name) {
console.log(command)
throw new Error("Commander: command's name can not be empty!")
}
state.registerCommands.push(command)
commands[command.name] = (...args: any[]) => {
if (!!command.isEnable && !command.isEnable()) {
return
}
const {undo, redo} = command.execute(...args)
if (!command.isQueue) {
return (!command.doNothingWhenExecute && redo())
}
let {queue, index} = state
if (queue.length > 0) {
queue = queue.slice(0, index + 1)
state.queue = queue
}
queue.push({undo, redo})
state.index = index + 1;
(!command.doNothingWhenExecute && redo());
}
}
register(new Command({
name: 'undo',
keyboard: 'ctrl+z',
isQueue: false,
execute: () => {
return {
redo: () => {
if (state.index === -1) {
return
}
const queueItem = state.queue[state.index]
// console.log('queueItem',queueItem)
if (!!queueItem) {
queueItem.undo()
state.index--
}
}
}
},
isEnable: () => {
if (editorState.props.disabledUndo) return false
return !!state.queue[state.index]
}
}))
register(new Command({
name: 'redo',
keyboard: 'ctrl+shift+z',
isQueue: false,
execute: () => {
return {
redo: () => {
const queueItem = state.queue[state.index + 1]
if (!!queueItem) {
queueItem.redo()
state.index++
}
}
}
},
isEnable: () => {
if (editorState.props.disabledUndo) return false
return !!state.queue[state.index + 1]
}
}))
let onKeydown;
function initEvent() {
if (!onKeydown) {
onKeydown = (e: KeyboardEvent) => {
const names = [];
e.ctrlKey && names.push('ctrl')
e.shiftKey && names.push('shift')
e.altKey && names.push('alt')
names.push(KeyboardCode[e.keyCode])
const compositionKeyName = names.join('+')
state.registerCommands.forEach((command: Command) => {
if (!command.keyboard) return
const keys = Array.isArray(command.keyboard) ? command.keyboard : [command.keyboard]
if (keys.indexOf(compositionKeyName) > -1) {
e.stopPropagation()
e.preventDefault()
commands[command.name]()
}
})
}
window.addEventListener('keydown', onKeydown)
}
}
function destroyEvent() {
if (!!onKeydown) {
window.removeEventListener('keydown', onKeydown)
onKeydown = null
}
}
function init(graph: any) {
state.registerCommands.forEach(command => {
command.graph = graph
if (!!command.init) {
command.init()
}
})
}
function destroy() {
destroyEvent()
state.registerCommands.forEach(command => {
if (!!command.destroy) {
command.destroy()
}
})
}
return {
state,
register,
commands,
isEnable,
initEvent,
destroyEvent,
init,
destroy,
}
}
import {BASE_COLOR} from "@/utils/styles";
export function registerActivity(G6) {
G6.registerNode('activity', {
options: {
style: {},
stateStyles: {},
},
setState() {},
drawShape(cfg, group) {
let {text, desc, img, color} = cfg
color = color || BASE_COLOR
desc = desc || '无描述'
const [width, height] = (cfg.size || [200, 80]) as [number, number]
const shapes = {
keyShape: {
type: 'rect',
attrs: {fill: 'white', x: -width / 2, y: -height / 2, width, height, shadowColor: '#BFC5D2', shadowBlur: 50},
},
sideRect: {
type: 'rect',
attrs: {x: -width / 2, y: -height / 2, width: 6, height, fill: color},
},
img: {
type: 'image',
attrs: {x: height / 4 - width / 2, y: height / 4 - height / 2, width: height / 2, height: height / 2, img},
},
label: {
type: 'text',
attrs: {text, x: height - width / 2, y: height * (3 / 8) - height / 2, fontSize: 16, textAlign: 'left', textBaseline: 'middle', fill: 'black'},
},
desc: {
type: 'text',
attrs: {text: desc, x: height - width / 2, y: height * (5 / 8) - height / 2, fontSize: 12, textAlign: 'left', textBaseline: 'middle', fill: '#999'},
}
}
const addShapes = {}
let keyShape;
Object.keys(shapes).forEach((shapeName) => {
const {type, attrs} = shapes[shapeName]
addShapes[shapeName] = group.addShape(type, {
attrs,
name: shapeName,
draggable: true,
})
if (shapeName === 'keyShape') {
keyShape = addShapes[shapeName]
}
})
group.shapes = addShapes
return keyShape
},
update(cfg, group) {
group = group.getContainer()
group.shapes.sideRect.attr({fill: cfg.color})
group.shapes.img.attr({img: cfg.img})
group.shapes.label.attr({text: cfg.text})
group.shapes.desc.attr({text: cfg.desc})
},
}, 'single-shape')
}
\ No newline at end of file
import editorStyle from "../util/defaultStyle";
import {GraphStyle} from "@/utils/styles";
import {SingleShapeMixin} from "@/g6/g6";
import {Item} from "@/g6/g6";
Item.prototype.anchorDebounceTimer = null
Item.prototype.getShowAnchorPoints = function () {
return [
[0, -0.5],
[-0.5, 0],
[0, 0.5],
[0.5, 0],
]
}
Item.prototype.showAnchor = function (graph) {
if (!!this.anchorDebounceTimer) {
clearTimeout(this.anchorDebounceTimer)
this.anchorDebounceTimer = null
}
if (this.getType() !== 'node') {
return
}
const group = this.getContainer()
if (!group.anchorShapes) {
group.anchorShapes = []
group.keyShape = this
const bbox = this.getBBox()
this.getShowAnchorPoints().forEach((point, index) => {
const anchor = createAnchor(index, {
x: bbox.width * point[0],
y: bbox.height * point[1]
}, group);
group.anchorShapes.push(anchor)
})
} else {
group.anchorShapes.forEach(a => {
a.show()
a.toFront()
})
}
graph.paint()
}
Item.prototype.hideAnchor = function (graph) {
if (graph.get('onDragEdge') === true) {
return
}
if (!!this.anchorDebounceTimer) {
return;
} else {
this.anchorDebounceTimer = setTimeout(() => {
try {
if (this.getType() !== 'node') {
return
}
const group = this.getContainer()
if (!group.anchorShapes) {
return;
} else {
group.anchorShapes.forEach(a => a.hide())
}
this.anchorDebounceTimer = null
graph.paint()
} catch (e) {
}
}, 100)
}
}
Item.prototype.clearAnchor = function () {
try {
const group = this.getContainer()
if (!!group.anchorShapes && group.anchorShapes.length > 0) {
group.anchorShapes.forEach(i => i.remove())
}
} catch (e) {
// console.error(e)
}
}
export function createAnchor(index, style, group) {
const anchorContainer = group.addGroup();
const anchor = new Item({
type: 'anchor',
group: anchorContainer,
capture: false,
index,
isActived: false,
model: {
style: {
...style,
...GraphStyle.anchorStyle,
cursor: editorStyle.cursor.hoverEffectiveAnchor,
}
},
});
anchor.index = index
anchor.isAnchor = true;
anchor.toFront();
let hotpot;
anchor.hideHotpot = function () {
hotpot.remove()
}
anchor.showHotpot = function () {
hotpot = anchorContainer.addShape('marker', {
attrs: {
...style,
...GraphStyle.anchorHotsoptStyle
}
});
hotpot.toFront();
anchor.getKeyShape().toFront();
};
anchor.setActived = function () {
anchor.update({style: {...GraphStyle.anchorPointHoverStyle}});
};
anchor.clearActived = function () {
anchor.update({style: {...GraphStyle.anchorStyle}});
};
anchor.setHotspotActived = function (act) {
hotpot &&
(act ?
hotpot.attr(GraphStyle.anchorHotsoptActivedStyle)
: hotpot.attr(GraphStyle.anchorHotsoptStyle))
};
return anchorContainer;
};
export function registerAnchor(G6) {
G6.Shape.registerFactory('anchor', {
defaultShapeType: 'marker'
});
G6.Shape.registerAnchor('single-anchor', G6.Util.mix({}, SingleShapeMixin, {
itemType: 'anchor',
drawShape(cfg, group) {
const shapeType = this.shapeType;
const style = this.getShapeStyle(cfg);
const shape = group.addShape(shapeType, {
attrs: style
});
return shape;
},
setState(name, value, item) {
if (name === 'active-anchor') {
if (value) {
this.update({style: {...GraphStyle.anchorPointHoverStyle}}, item);
} else {
this.update({style: {...GraphStyle.anchorStyle}}, item);
}
}
}
}));
G6.Shape.registerAnchor('marker', {shapeType: 'marker'}, 'single-anchor');
}
import {GraphStyle} from "@/utils/styles";
import editorStyle from "../util/defaultStyle";
import {G6} from "@/g6/g6";
const deepMix = G6.Util.deepMix
const uniqBy = (arr, key) => {
const result = [];
arr.forEach(i => {
if (!result.find(r => r[key] === i[key]))
result.push(i)
});
return result;
};
export function registerEdge(G6) {
G6.registerEdge('flow-polyline-round', {
options: {
style: {
...GraphStyle.default.defaultEdge.style,
},
stateStyles: {
...GraphStyle.default.edgeStateStyles,
}
},
setState(name, value, item) {
const shape = item.get('keyShape');
if (!shape) {
return;
}
const itemStateStyle = item.getStateStyle(name);
const stateStyle = this.getStateStyle(name, value, item);
const styles = deepMix({}, stateStyle, itemStateStyle);
if (value) { // 如果设置状态,在原本状态上叠加绘图属性
shape.attr(styles);
} else { // 取消状态时重置所有状态,依次叠加仍有的状态
const style = item.getCurrentStatesStyle();
// 如果默认状态下没有设置attr,在某状态下设置了,需要重置到没有设置的状态
G6.Util.each(styles, (val, attr) => {
if (!style[attr]) {
style[attr] = null;
}
});
shape.attr(style);
}
},
drawShape(cfg, group) {
this.group = group;
const shapeStyle = this.getShapeStyle(cfg);
const shape = group.addShape('path', {
className: 'edge-shape',
attrs: shapeStyle
});
return shape;
},
drawLabel(cfg, group) {
const labelCfg = cfg.labelCfg || {};
const labelStyle = this.getLabelStyle(cfg, labelCfg, group);
const label = group.addShape('text', {
attrs: labelStyle
});
const labelBBox = label.getBBox();
group.addShape('rect', {
className: 'edge-labelRect',
attrs: {
x: labelBBox.x - editorStyle.edgeLabelRectPadding / 2,
y: labelBBox.y - editorStyle.edgeLabelRectPadding / 2,
width: labelBBox.width + editorStyle.edgeLabelRectPadding,
height: labelBBox.height + editorStyle.edgeLabelRectPadding,
fill: '#fff',
stroke: '#fff',
}
});
group.toBack();
label.toFront();
return label;
},
afterUpdate(cfg, item) {
const label = item.getContainer().findByClassName('edge-label');
const labelRect = item.getContainer().findByClassName('edge-labelRect');
if (label) {
const labelBBox = label.getBBox();
labelRect.attr({
x: labelBBox.x - editorStyle.edgeLabelRectPadding / 2,
y: labelBBox.y - editorStyle.edgeLabelRectPadding / 2,
width: labelBBox.width + editorStyle.edgeLabelRectPadding,
height: labelBBox.height + editorStyle.edgeLabelRectPadding,
});
}
},
getShapeStyle(cfg) {
cfg = this.getPathPoints(cfg);
const startPoint = cfg.startPoint;
const endPoint = cfg.endPoint;
const controlPoints = this.getControlPoints(cfg);
let points = [startPoint];
if (controlPoints) {
points = points.concat(controlPoints);
}
points.push(endPoint);
const path = this.getPath(points);
let style = this.options.style;
if (cfg.reverse)
style = {...style, lineDash: [1, 3]};
else
style = {...style, lineDash: null};
return {
path,
...style,
endArrow: {
path: 'M 0,0 L -10,-4 S -8 0,-10 4 Z',
}
}
},
getPath(points) {
const path = [];
for (let i = 0; i < points.length; i++) {
const point = points[i];
if (i === 0) {
path.push(['M', point.x, point.y]);
} else if (i === points.length - 1) {
path.push(['L', point.x, point.y]);
} else {
const prevPoint = points[i - 1];
let nextPoint = points[i + 1];
let cornerLen = 5;
if (Math.abs(point.y - prevPoint.y) > cornerLen || Math.abs(point.x - prevPoint.x) > cornerLen) {
if (prevPoint.x === point.x) {
path.push(['L', point.x, point.y > prevPoint.y ? point.y - cornerLen : point.y + cornerLen]);
} else if (prevPoint.y === point.y) {
path.push(['L', point.x > prevPoint.x ? point.x - cornerLen : point.x + cornerLen, point.y]);
}
}
const yLen = Math.abs(point.y - nextPoint.y);
const xLen = Math.abs(point.x - nextPoint.x);
if (yLen > 0 && yLen < cornerLen) {
cornerLen = yLen;
} else if (xLen > 0 && xLen < cornerLen) {
cornerLen = xLen;
}
if (prevPoint.x !== nextPoint.x && nextPoint.x === point.x) {
path.push(['Q', point.x, point.y, point.x, point.y > nextPoint.y ? point.y - cornerLen : point.y + cornerLen]);
} else if (prevPoint.y !== nextPoint.y && nextPoint.y === point.y) {
path.push(['Q', point.x, point.y, point.x > nextPoint.x ? point.x - cornerLen : point.x + cornerLen, point.y]);
}
}
}
return path;
},
getControlPoints(cfg) {
if (!cfg.sourceNode) {
return cfg.controlPoints;
}
return this.polylineFinding(cfg.sourceNode, cfg.targetNode, cfg.startPoint, cfg.endPoint, 15);
},
getExpandedBBox(bbox, offset) {
return 0 === bbox.width && 0 === bbox.height ? bbox : {
centerX: bbox.centerX,
centerY: bbox.centerY,
minX: bbox.minX - offset,
minY: bbox.minY - offset,
maxX: bbox.maxX + offset,
maxY: bbox.maxY + offset,
height: bbox.height + 2 * offset,
width: bbox.width + 2 * offset,
};
},
getExpandedPort(bbox, point) {
return Math.abs(point.x - bbox.centerX) / bbox.width > Math.abs(point.y - bbox.centerY) / bbox.height
? {x: point.x > bbox.centerX ? bbox.maxX : bbox.minX, y: point.y}
: {x: point.x, y: point.y > bbox.centerY ? bbox.maxY : bbox.minY};
},
combineBBoxes(sBBox, tBBox) {
const minX = Math.min(sBBox.minX, tBBox.minX), minY = Math.min(sBBox.minY, tBBox.minY),
maxX = Math.max(sBBox.maxX, tBBox.maxX), maxY = Math.max(sBBox.maxY, tBBox.maxY);
return {
centerX: (minX + maxX) / 2,
centerY: (minY + maxY) / 2,
minX: minX,
minY: minY,
maxX: maxX,
maxY: maxY,
height: maxY - minY,
width: maxX - minX,
};
},
getBBoxFromVertexes(sPoint, tPoint) {
const minX = Math.min(sPoint.x, tPoint.x), maxX = Math.max(sPoint.x, tPoint.x),
minY = Math.min(sPoint.y, tPoint.y), maxY = Math.max(sPoint.y, tPoint.y);
return {
centerX: (minX + maxX) / 2,
centerY: (minY + maxY) / 2,
maxX: maxX,
maxY: maxY,
minX: minX,
minY: minY,
height: maxY - minY,
width: maxX - minX,
};
},
vertexOfBBox(bbox) {
return [{x: bbox.minX, y: bbox.minY}, {x: bbox.maxX, y: bbox.minY}, {x: bbox.maxX, y: bbox.maxY}, {x: bbox.minX, y: bbox.maxY}];
},
crossPointsByLineAndBBox(bbox, centerPoint) {
let crossPoints = [];
if (!(centerPoint.x < bbox.minX || centerPoint.x > bbox.maxX))
crossPoints = crossPoints.concat([{x: centerPoint.x, y: bbox.minY}, {x: centerPoint.x, y: bbox.maxY}]);
if (!(centerPoint.y < bbox.minY || centerPoint.y > bbox.maxY))
crossPoints = crossPoints.concat([{x: bbox.minX, y: centerPoint.y}, {x: bbox.maxX, y: centerPoint.y}]);
return crossPoints;
},
getConnectablePoints(sBBox, tBBox, sPoint, tPoint) {
const lineBBox = this.getBBoxFromVertexes(sPoint, tPoint);
const outerBBox = this.combineBBoxes(sBBox, tBBox);
const sLineBBox = this.combineBBoxes(sBBox, lineBBox);
const tLineBBox = this.combineBBoxes(tBBox, lineBBox);
let points = [];
points = points.concat(this.vertexOfBBox(sLineBBox), this.vertexOfBBox(tLineBBox), this.vertexOfBBox(outerBBox));
const centerPoint = {x: outerBBox.centerX, y: outerBBox.centerY};
[outerBBox, sLineBBox, tLineBBox, lineBBox].forEach(bbox => {
points = points.concat(this.crossPointsByLineAndBBox(bbox, centerPoint))
});
points.push({x: sPoint.x, y: tPoint.y});
points.push({x: tPoint.x, y: sPoint.y});
return points
},
filterConnectablePoints(points, bbox) {
return points.filter(point => point.x <= bbox.minX || point.x >= bbox.maxX || point.y <= bbox.minY || point.y >= bbox.maxY)
},
AStar(points, sPoint, tPoint, sBBox, tBBox) {
const openList = [sPoint];
const closeList = [];
points = uniqBy(this.fillId(points), 'id');
points.push(tPoint);
let endPoint;
while (openList.length > 0) {
let minCostPoint;
openList.forEach((p, i) => {
if (!p.parent)
p.f = 0;
if (!minCostPoint)
minCostPoint = p;
if (p.f < minCostPoint.f)
minCostPoint = p;
});
if (minCostPoint.x === tPoint.x && minCostPoint.y === tPoint.y) {
endPoint = minCostPoint;
break;
}
openList.splice(openList.findIndex(o => o.x === minCostPoint.x && o.y === minCostPoint.y), 1);
closeList.push(minCostPoint);
const neighbor = points.filter(p => (p.x === minCostPoint.x || p.y === minCostPoint.y)
&& !(p.x === minCostPoint.x && p.y === minCostPoint.y)
&& !this.crossBBox([sBBox, tBBox], minCostPoint, p));
neighbor.forEach(p => {
const inOpen = openList.find(o => o.x === p.x && o.y === p.y);
const currentG = this.getCost(p, minCostPoint);
if (closeList.find(o => o.x === p.x && o.y === p.y)) {
} else if (inOpen) {
if (p.g > currentG) {
p.parent = minCostPoint;
p.g = currentG;
p.f = p.g + p.h;
}
} else {
p.parent = minCostPoint;
p.g = currentG;
let h = this.getCost(p, tPoint);
if (this.crossBBox([tBBox], p, tPoint)) {
h += (tBBox.width / 2 + tBBox.height / 2); //如果穿过bbox则增加该点的预估代价为bbox周长的一半
}
p.h = h;
p.f = p.g + p.h;
openList.push(p)
}
});
}
if (endPoint) {
const result = [];
result.push({x: endPoint.x, y: endPoint.y});
while (endPoint.parent) {
endPoint = endPoint.parent;
result.push({x: endPoint.x, y: endPoint.y});
}
return result.reverse();
}
return [];
},
crossBBox(bboxes, p1, p2) {
for (let i = 0; i < bboxes.length; i++) {
const bbox = bboxes[i];
if (p1.x === p2.x && bbox.minX < p1.x && bbox.maxX > p1.x) {
if (p1.y < bbox.maxY && p2.y >= bbox.maxY || p2.y < bbox.maxY && p1.y >= bbox.maxY)
return true
} else if (p1.y === p2.y && bbox.minY < p1.y && bbox.maxY > p1.y) {
if (p1.x < bbox.maxX && p2.x >= bbox.maxX || p2.x < bbox.maxX && p1.x >= bbox.maxX)
return true
}
}
return false;
},
getCost(p1, p2) {
return Math.abs(p1.x - p2.x) + Math.abs(p1.y - p2.y);
},
getPointBBox(t) {
return {centerX: t.x, centerY: t.y, minX: t.x, minY: t.y, maxX: t.x, maxY: t.y, height: 0, width: 0};
},
fillId(points) {
points.forEach(p => {
p.id = p.x + '-' + p.y;
});
return points;
},
polylineFinding(sNode, tNode, sPort, tPort, offset) {
const sourceBBox = sNode && sNode.getBBox() ? sNode.getBBox() : this.getPointBBox(sPort);
const targetBBox = tNode && tNode.getBBox() ? tNode.getBBox() : this.getPointBBox(tPort);
const sBBox = this.getExpandedBBox(sourceBBox, offset);
const tBBox = this.getExpandedBBox(targetBBox, offset);
const sPoint = this.getExpandedPort(sBBox, sPort);
const tPoint = this.getExpandedPort(tBBox, tPort);
let points = this.getConnectablePoints(sBBox, tBBox, sPoint, tPoint);
points = this.filterConnectablePoints(points, sBBox);
points = this.filterConnectablePoints(points, tBBox);
const polylinePoints = this.AStar(points, sPoint, tPoint, sBBox, tBBox);
return polylinePoints;
},
}, 'polyline');
}
\ No newline at end of file
import {registerAnchor} from "@/shape/anchor";
import {registerEdge} from "@/shape/edge";
import {registerActivity} from "@/shape/activity";
export function registerShape(G6) {
registerAnchor(G6)
registerEdge(G6)
registerActivity(G6)
}
\ No newline at end of file
export default {
nodeActivedOutterStyle: { lineWidth: 0 },
groupSelectedOutterStyle: { stroke: '#E0F0FF', lineWidth: 2 },
nodeSelectedOutterStyle: { stroke: '#E0F0FF', lineWidth: 2 },
edgeActivedStyle: { stroke: '#1890FF', strokeOpacity: .92 },
nodeActivedStyle: { fill: '#F3F9FF', stroke: '#1890FF' },
groupActivedStyle: { stroke: '#1890FF' },
edgeSelectedStyle: { lineWidth: 2, strokeOpacity: .92, stroke: '#A3B1BF' },
nodeSelectedStyle: { fill: '#F3F9FF', stroke: '#1890FF',fillOpacity: .4 },
groupSelectedStyle: { stroke: '#1890FF', fillOpacity: .92 },
nodeStyle: {
stroke: '#CED4D9',
fill: '#FFFFFF',
shadowOffsetX: 0,
shadowOffsetY: 4,
shadowBlur: 10,
shadowColor: 'rgba(13, 26, 38, 0.08)',
lineWidth: 1,
radius: 4,
strokeOpacity: .7,
},
edgeStyle: { stroke: '#A3B1BF', strokeOpacity: .92, lineWidth: 1, lineAppendWidth: 8, endArrow: true},
groupBackgroundPadding: [40, 10, 10, 10],
groupLabelOffsetX: 10,
groupLabelOffsetY: 10,
edgeLabelStyle: { fill: '#666', textAlign: 'center', textBaseline: 'middle' },
edgeLabelRectPadding: 4,
edgeLabelRectStyle: { fill: 'white' },
nodeLabelStyle: { fill: '#666', textAlign: 'center', textBaseline: 'middle' },
groupStyle: { stroke: '#CED4D9', radius: 4 },
groupLabelStyle: { fill: '#666', textAlign: 'left', textBaseline: 'top' },
multiSelectRectStyle: { fill: '#1890FF', fillOpacity: .08, stroke: '#1890FF', opacity: .1 },
dragNodeHoverToGroupStyle: { stroke: '#1890FF', lineWidth: 2 },
dragNodeLeaveFromGroupStyle: { stroke: '#BAE7FF', lineWidth: 2 },
anchorPointStyle: { radius: 3.5, fill: '#fff', stroke: '#1890FF', lineAppendWidth: 12 },
anchorHotsoptStyle: { radius: 12, fill: '#1890FF', fillOpacity: .25 },
anchorHotsoptActivedStyle: { radius: 14 },
anchorPointHoverStyle: { radius: 4, fill: '#1890FF', fillOpacity: 1, stroke: '#1890FF' },
nodeControlPointStyle: { radius: 4, fill: '#fff', shadowBlur: 4, shadowColor: '#666' },
edgeControlPointStyle: { radius: 6, symbol: 'square', lineAppendWidth: 6, fillOpacity: 0, strokeOpacity: 0 },
nodeSelectedBoxStyle: { stroke: '#C2C2C2' },
cursor: {
panningCanvas: '-webkit-grabbing',
beforePanCanvas: '-webkit-grab',
hoverNode: 'move',
hoverEffectiveAnchor: 'crosshair',
hoverEdge: 'default',
hoverGroup: 'move',
hoverUnEffectiveAnchor: 'default',
hoverEdgeControllPoint: 'crosshair',
multiSelect: 'crosshair',
},
nodeDelegationStyle: {
stroke: '#1890FF',
fill: '#1890FF',
fillOpacity: .08,
lineDash: [4, 4],
radius: 4,
lineWidth: 1,
},
edgeDelegationStyle: { stroke: '#1890FF', lineDash: [4, 4], lineWidth: 1 },
};
\ No newline at end of file
export const KeyboardCode = {
16: 'shift',
17: 'ctrl',
18: 'alt',
8: 'backspace',
9: 'tab',
13: 'enter',
27: 'esc',
32: 'space',
37: 'left',
38: 'up',
39: 'right',
40: 'down',
46: 'delete',
189: '-',
187: '=',
48: '0',
49: '1',
50: '2',
51: '3',
52: '4',
53: '5',
54: '6',
55: '7',
56: '8',
57: '9',
65: 'a',
66: 'b',
67: 'c',
68: 'd',
69: 'e',
70: 'f',
71: 'g',
72: 'h',
73: 'i',
74: 'j',
75: 'k',
76: 'l',
77: 'm',
78: 'n',
79: 'o',
80: 'p',
81: 'q',
82: 'r',
83: 's',
84: 't',
85: 'u',
86: 'v',
87: 'w',
88: 'x',
89: 'y',
90: 'z',
112: 'F1',
113: 'F2',
114: 'F3',
115: 'F4',
116: 'F5',
117: 'F6',
118: 'F7',
119: 'F8',
120: 'F9',
121: 'F10',
122: 'F11',
123: 'F12',
}
\ No newline at end of file
/*
const color = '#EF8B1F'
const deepColor = '#8e4f00'
export const GraphStyle = {
default: {
defaultEdge: {
shape: 'flow-polyline-round',
style: {
stroke: color,
lineWidth: 2,
lineAppendWidth: 10,
cursor: 'pointer',
},
},
defaultNode: {
shape: 'rect',
size: [120, 40],
anchorPoints: [
/!*[0, 0],
[0, 1],
[1, 0],
[1, 1],*!/
[0.5, 0],
[0, 0.5],
[0.5, 1],
[1, 0.5],
],
style: {
fill: color,
lineWidth: 1,
stroke: color,
cursor: 'pointer',
},
labelCfg: {
style: {
fill: '#ffffff',
cursor: 'pointer',
}
},
},
nodeStateStyles: {
selected: {
fill: deepColor,
stroke: deepColor,
},
hover: {
fill: deepColor,
stroke: deepColor,
},
},
edgeStateStyles: {
selected: {
stroke: deepColor,
lineWidth: 3,
},
hover: {
stroke: deepColor,
lineWidth: 2,
},
},
},
anchorStyle: {stroke: color, radius: 3.5, fill: '#fff', lineAppendWidth: 12},
anchorHotsoptStyle: {radius: 12, fill: color, fillOpacity: .25},
anchorHotsoptActivedStyle: {radius: 14},
anchorPointHoverStyle: {radius: 4, fill: color, fillOpacity: 1, stroke: deepColor},
edgeDelegationStyle: {stroke: color, lineDash: [4, 4], lineWidth: 1},
}*/
export const BASE_COLOR = '#1F74FF'
export const BASE_COLOR_DEEP = '#324aff'
export const GraphStyle = {
default: {
defaultEdge: {
shape: 'flow-polyline-round',
style: {
stroke: '#BFC5D2',
lineWidth: 1,
lineAppendWidth: 10,
cursor: 'pointer',
},
},
defaultNode: {
shape: 'rect',
size: [120, 40],
anchorPoints: [
/*[0, 0],
[0, 1],
[1, 0],
[1, 1],*/
[0.5, 0],
[0, 0.5],
[0.5, 1],
[1, 0.5],
],
style: {
fill: '#E8F1FF',
lineWidth: 0,
stroke: BASE_COLOR,
cursor: 'pointer',
},
labelCfg: {
style: {
fontSize: 14,
fill: BASE_COLOR,
cursor: 'pointer',
}
},
},
nodeStateStyles: {
selected: {
lineWidth: 2,
stroke: BASE_COLOR,
},
hover: {
stroke: BASE_COLOR,
},
},
edgeStateStyles: {
selected: {
stroke: BASE_COLOR,
lineWidth: 1,
},
},
},
anchorStyle: {stroke: BASE_COLOR, radius: 3.5, fill: '#fff', lineAppendWidth: 12},
anchorHotsoptStyle: {radius: 12, fill: BASE_COLOR, fillOpacity: .25},
anchorHotsoptActivedStyle: {radius: 14},
anchorPointHoverStyle: {radius: 4, fill: BASE_COLOR, fillOpacity: 1, stroke: BASE_COLOR_DEEP},
edgeDelegationStyle: {stroke: BASE_COLOR, lineDash: [4, 4], lineWidth: 1},
}
\ No newline at end of file
export function suffixSize(val){
if (typeof val === 'number') {
return `${val}px`
} else {
val = String(val)
if (/^[\d]+$/.test(val)) {
return `${val}px`
}
if (val.indexOf('px') > 0) {
return val
}
return val
}
}
export function flatten(array) {
let flattend = [];
(function flat(array) {
array.forEach(function (el) {
if (Array.isArray(el)) flat(el);
else flattend.push(el);
});
})(array);
return flattend;
}
export const DEFAULT_SIZE = {
rect: [130, 40],
ellipse: [100, 50],
diamond: [140, 50],
circle: [80, 80],
triangle: [80, 80],
star: [80, 80],
activity: [200, 80],
}
export function formatPos(option: { x: number, y: number, size: [number, number], shape: string }): { x: number, y: number, size: [number, number], shape } {
const {x, y} = option
option = {...option}
option.size = option.size || DEFAULT_SIZE[option.shape]
let [width, height] = option.size
let originPos = {
x: width / 2,
y: height / 2,
}
let targetPos = {
x, y
}
const grid = 5
let durx = targetPos.x - originPos.x
let dury = targetPos.y - originPos.y
if (durx % grid > grid / 2) {
durx = Math.ceil(durx / grid) * grid
} else {
durx = Math.floor(durx / grid) * grid
}
if (dury % grid > grid / 2) {
dury = Math.ceil(dury / grid) * grid
} else {
dury = Math.floor(dury / grid) * grid
}
targetPos.x = durx + originPos.x
targetPos.y = dury + originPos.y
return {
...targetPos,
size: option.size,
shape: option.shape,
}
}
export function formatNodeModel(model, activityConfig) {
let {shape, size, activity} = model
if (!!activity) {
shape = 'activity'
}
model.size = size || DEFAULT_SIZE[shape]
if (!!activity && !!activityConfig[activity]) {
model.shape = 'activity'
model.img = activityConfig[activity].img
model.color = activityConfig[activity].color
}
}
\ No newline at end of file
{
"compilerOptions": {
"target": "esnext",
"module": "esnext",
"strict": true,
"jsx": "preserve",
"importHelpers": true,
"moduleResolution": "node",
"esModuleInterop": true,
"resolveJsonModule": true,
"noImplicitAny": false,
"strictNullChecks": false,
"allowSyntheticDefaultImports": true,
"sourceMap": true,
"baseUrl": ".",
"types": [
"webpack-env",
"element-plus/global"
],
"paths": {
"@/*": [
"src/*",
"doc/*"
]
},
"lib": [
"esnext",
"dom",
"dom.iterable",
"scripthost"
]
},
"include": [
"src/**/*.ts",
"src/**/*.tsx",
"src/**/*.vue",
"doc/**/*.ts",
"doc/**/*.tsx",
"doc/**/*.vue",
"tests/**/*.ts",
"tests/**/*.tsx"
],
"exclude": [
"node_modules"
]
}
module.exports = require('./build/index')
\ No newline at end of file
This diff could not be displayed because it is too large.