├── .eslintignore ├── .npmignore ├── .gitignore ├── docs ├── .gitignore ├── assets │ ├── vue.webarchive │ ├── vuetify.min.js │ ├── atom-one-dark.min.css │ └── eijs.js ├── static │ ├── carbon-fibre.png │ └── vue.min.js ├── src │ ├── router.js │ ├── main.js │ ├── App.vue │ └── VDragged │ │ └── v-dragged.js ├── .babelrc ├── package.json ├── webpack.config.js ├── index.html └── simple-test.html ├── src ├── .babelrc ├── util.js ├── main.js └── directive.js ├── .eslintrc.js ├── LICENSE.md ├── rollup.config.js ├── package.json ├── dist ├── v-dragged.min.js └── v-dragged.js └── README.md /.eslintignore: -------------------------------------------------------------------------------- 1 | package-lock.json 2 | package.json -------------------------------------------------------------------------------- /.npmignore: -------------------------------------------------------------------------------- 1 | example 2 | docs 3 | .history 4 | .vscode -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | .history 3 | docs/node_modules 4 | .DS_Store 5 | .vscode -------------------------------------------------------------------------------- /docs/.gitignore: -------------------------------------------------------------------------------- 1 | .DS_Store 2 | node_modules/ 3 | npm-debug.log 4 | yarn-error.log 5 | -------------------------------------------------------------------------------- /docs/assets/vue.webarchive: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhanziyang/v-dragged/HEAD/docs/assets/vue.webarchive -------------------------------------------------------------------------------- /docs/assets/vuetify.min.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhanziyang/v-dragged/HEAD/docs/assets/vuetify.min.js -------------------------------------------------------------------------------- /docs/static/carbon-fibre.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhanziyang/v-dragged/HEAD/docs/static/carbon-fibre.png -------------------------------------------------------------------------------- /docs/assets/atom-one-dark.min.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/zhanziyang/v-dragged/HEAD/docs/assets/atom-one-dark.min.css -------------------------------------------------------------------------------- /src/.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": [ 3 | [ 4 | "latest", 5 | { 6 | "es2015": { 7 | "modules": false 8 | } 9 | } 10 | ] 11 | ], 12 | "plugins": [ 13 | "external-helpers" 14 | ] 15 | } -------------------------------------------------------------------------------- /docs/src/router.js: -------------------------------------------------------------------------------- 1 | import VueRouter from 'vue-router' 2 | 3 | import App from './App.vue' 4 | 5 | export default new VueRouter({ 6 | base: '/v-dragged', 7 | routes: [ 8 | { 9 | path: '/', 10 | component: App 11 | } 12 | ], 13 | scrollBehavior (to, from, savedPosition) { 14 | return { x: 0, y: 0 } 15 | } 16 | }) -------------------------------------------------------------------------------- /docs/.babelrc: -------------------------------------------------------------------------------- 1 | { 2 | "presets": [ 3 | [ 4 | "env", 5 | { 6 | "modules": false 7 | } 8 | ] 9 | ], 10 | "plugins": [ 11 | [ 12 | "transform-runtime", 13 | { 14 | "helpers": false, 15 | "polyfill": false, 16 | "regenerator": true, 17 | "moduleName": "babel-runtime" 18 | } 19 | ] 20 | ] 21 | } -------------------------------------------------------------------------------- /src/util.js: -------------------------------------------------------------------------------- 1 | 2 | export default { 3 | addEventListeners (el, events, handler) { 4 | for (var i = 0, len = events.length; i < len; i++) { 5 | el.addEventListener(events[i], handler) 6 | } 7 | }, 8 | 9 | removeEventListeners (el, events, handler) { 10 | for (var i = 0, len = events.length; i < len; i++) { 11 | el.removeEventListener(events[i], handler) 12 | } 13 | } 14 | } -------------------------------------------------------------------------------- /.eslintrc.js: -------------------------------------------------------------------------------- 1 | module.exports = { 2 | root: true, 3 | parser: 'babel-eslint', 4 | env: { 5 | browser: true, 6 | node: true 7 | }, 8 | extends: 'standard', 9 | // required to lint *.vue files 10 | plugins: [ 11 | 'html' 12 | ], 13 | // add your custom rules here 14 | rules: { 15 | "space-before-function-paren": 0, 16 | "eol-last": 0, 17 | "eqeqeq": 0, 18 | "camelcase": 0, 19 | "no-useless-call": 0 20 | }, 21 | globals: { 22 | "DocumentTouch": true 23 | } 24 | } 25 | -------------------------------------------------------------------------------- /docs/src/main.js: -------------------------------------------------------------------------------- 1 | import Vue from 'vue' 2 | import VueRouter from 'vue-router' 3 | import router from './router' 4 | import VDragged from './VDragged/v-dragged' 5 | import vueDirectiveTooltip from 'vue-directive-tooltip' 6 | import VueGitHubCorners from 'vue-gh-corners' 7 | 8 | import hljs from 'vue-highlightjs' 9 | 10 | import 'vue-gh-corners/dist/vue-github-corners.css' 11 | 12 | Vue.use(VueGitHubCorners) 13 | 14 | Vue.use(VueRouter) 15 | Vue.use(hljs) 16 | Vue.use(VDragged) 17 | Vue.use(vueDirectiveTooltip, { delay: 0, placement: 'right', class: 'tooltip-red', offset: 10 }); 18 | 19 | new Vue({ 20 | router 21 | }).$mount('#app') 22 | -------------------------------------------------------------------------------- /src/main.js: -------------------------------------------------------------------------------- 1 | import assign from 'object-assign' 2 | import directive from './directive' 3 | 4 | const defaultOptions = {} 5 | 6 | const VDragged = { 7 | install: function (Vue, options) { 8 | options = assign({}, defaultOptions, options) 9 | let major = Number(Vue.version.split('.')[0]) 10 | let minor = Number(Vue.version.split('.')[1]) 11 | if (major < 2 && minor < 1) { 12 | throw new Error(`v-dragged supports vue version 2.1 and above. You are using Vue@${Vue.version}. Please upgrade to the latest version of Vue.`) 13 | } 14 | // registration 15 | Vue.directive('dragged', directive) 16 | }, 17 | 18 | directive 19 | } 20 | export default VDragged -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- 1 | ISC License (ISC) 2 | 3 | Copyright 2017 Chris Chan 4 | 5 | Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies. 6 | 7 | THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. 8 | -------------------------------------------------------------------------------- /rollup.config.js: -------------------------------------------------------------------------------- 1 | const json = require('rollup-plugin-json') 2 | const resolve = require('rollup-plugin-node-resolve') 3 | const commentjs = require('rollup-plugin-commonjs') 4 | const babel = require('rollup-plugin-babel') 5 | const eslint = require('rollup-plugin-eslint') 6 | const uglify = require('rollup-plugin-uglify') 7 | const { version } = require('./package.json') 8 | 9 | let production = /^production/.test(process.env.BUILD) 10 | let min = process.env.BUILD === 'production-min' 11 | 12 | module.exports = { 13 | entry: 'src/main.js', 14 | dest: `${production ? 'dist' : 'docs/src/VDragged'}/v-dragged${min ? '.min' : ''}.js`, 15 | format: 'umd', 16 | moduleName: 'VDragged', 17 | sourceMap: production ? false : 'inline', 18 | banner: `\ 19 | /* 20 | * v-dragged v${version} 21 | * https://github.com/zhanziyang/v-dragged 22 | * 23 | * Copyright (c) 2017 zhanziyang 24 | * Released under the ISC license 25 | */ 26 | `, 27 | plugins: [ 28 | commentjs(), 29 | resolve(), 30 | json(), 31 | (production && eslint()), 32 | babel({ 33 | presets: [ 34 | [ 35 | 'es2015', 36 | { 37 | 'modules': false 38 | } 39 | ] 40 | ], 41 | plugins: [ 42 | 'external-helpers' 43 | ], 44 | exclude: 'node_modules/**' 45 | }), 46 | (min && uglify({ 47 | output: { 48 | comments: /zhanziyang/ 49 | } 50 | })) 51 | ] 52 | } -------------------------------------------------------------------------------- /docs/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "webpack-spa", 3 | "description": "A Vue.js project", 4 | "version": "1.0.0", 5 | "author": "zhanziyang ", 6 | "private": true, 7 | "scripts": { 8 | "dev": "cross-env NODE_ENV=development webpack-dev-server --hot", 9 | "build": "cross-env NODE_ENV=production webpack --progress --hide-modules" 10 | }, 11 | "dependencies": { 12 | "babel-runtime": "^6.25.0", 13 | "lodash": "^4.17.4", 14 | "vue": "^2.4.2", 15 | "vue-directive-tooltip": "^1.4.0", 16 | "vue-gh-corners": "^2.0.0", 17 | "vue-highlightjs": "^1.3.3", 18 | "vue-markdown-loader": "^1.0.0", 19 | "vue-router": "^2.7.0", 20 | "vue-template-compiler": "^2.4.2" 21 | }, 22 | "devDependencies": { 23 | "babel-core": "^6.0.0", 24 | "babel-loader": "^6.0.0", 25 | "babel-plugin-transform-runtime": "^6.23.0", 26 | "babel-polyfill": "^6.23.0", 27 | "babel-preset-env": "^1.5.1", 28 | "babel-preset-es2015": "^6.24.1", 29 | "browser-sync": "^2.18.12", 30 | "browser-sync-webpack-plugin": "^1.1.4", 31 | "cross-env": "^3.0.0", 32 | "css-loader": "^0.25.0", 33 | "file-loader": "^0.9.0", 34 | "style-loader": "^0.18.2", 35 | "stylus": "^0.54.5", 36 | "stylus-loader": "^3.0.1", 37 | "uglifyjs-webpack-plugin": "^0.4.6", 38 | "vue-loader": "^12.1.0", 39 | "vue-template-compiler": "^2.3.3", 40 | "vuetify": "^0.12.7", 41 | "webpack": "^2.6.1", 42 | "webpack-dev-server": "^2.4.5" 43 | } 44 | } 45 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "v-dragged", 3 | "version": "0.0.3", 4 | "description": "Vue directive plugin for advanced drag event detection.", 5 | "main": "dist/v-dragged.js", 6 | "scripts": { 7 | "test": "echo \"Error: no test specified\" && exit 1", 8 | "build:full": "rollup -c --environment BUILD:production", 9 | "build:min": "rollup -c --environment BUILD:production-min", 10 | "build:doc": "rollup -c", 11 | "build": "npm run build:full && npm run build:doc && npm run build:min", 12 | "dev": "rollup -c -w" 13 | }, 14 | "repository": { 15 | "type": "git", 16 | "url": "git+https://github.com/zhanziyang/v-dragged.git" 17 | }, 18 | "keywords": [ 19 | "drag", 20 | "vue", 21 | "event", 22 | "directive", 23 | "touch", 24 | "moving", 25 | "mouse", 26 | "vue plugin", 27 | "javascript", 28 | "web", 29 | "front-end", 30 | "lightweight", 31 | "mobile" 32 | ], 33 | "author": "zhanziyang", 34 | "license": "ISC", 35 | "bugs": { 36 | "url": "https://github.com/zhanziyang/v-dragged/issues" 37 | }, 38 | "homepage": "https://zhanziyang.github.io/v-dragged/", 39 | "devDependencies": { 40 | "babel-eslint": "^7.2.3", 41 | "babel-plugin-external-helpers": "^6.22.0", 42 | "babel-preset-latest": "^6.24.1", 43 | "eslint": "^3.19.0", 44 | "eslint-config-standard": "^10.2.1", 45 | "eslint-plugin-html": "^3.0.0", 46 | "eslint-plugin-import": "^2.3.0", 47 | "eslint-plugin-node": "^5.0.0", 48 | "eslint-plugin-promise": "^3.5.0", 49 | "eslint-plugin-standard": "^3.0.1", 50 | "file-loader": "^0.11.2", 51 | "lodash": "^4.17.4", 52 | "rollup": "^0.43.0", 53 | "rollup-plugin-babel": "^2.7.1", 54 | "rollup-plugin-commonjs": "^8.0.2", 55 | "rollup-plugin-eslint": "^3.0.0", 56 | "rollup-plugin-json": "^2.3.0", 57 | "rollup-plugin-node-resolve": "^3.0.0", 58 | "rollup-plugin-uglify": "^2.0.1", 59 | "rollup-plugin-vue": "^2.4.0", 60 | "rollup-watch": "^4.0.0", 61 | "url-loader": "^0.5.9", 62 | "vue": "^2.3.4" 63 | } 64 | } 65 | -------------------------------------------------------------------------------- /src/directive.js: -------------------------------------------------------------------------------- 1 | import u from './util' 2 | 3 | const POINTER_START_EVENTS = ['mousedown', 'touchstart'] 4 | const POINTER_MOVE_EVENTS = ['mousemove', 'touchmove'] 5 | const POINTER_END_EVENTS = ['mouseup', 'touchend'] 6 | var draggedElem 7 | 8 | export default { 9 | inserted(el, binding, vnode) { 10 | if (!document) return 11 | function onPointerStart(evt) { 12 | el.lastCoords = el.firstCoords = { 13 | x: evt.clientX, 14 | y: evt.clientY 15 | } 16 | binding.value({ 17 | el, 18 | first: true, 19 | clientX: evt.clientX, 20 | clientY: evt.clientY 21 | }) 22 | draggedElem = el 23 | } 24 | function onPointerEnd(evt) { 25 | if (el !== draggedElem) return 26 | evt.preventDefault() 27 | el.lastCoords = null 28 | binding.value({ 29 | el, 30 | last: true, 31 | clientX: evt.clientX, 32 | clientY: evt.clientY 33 | }) 34 | draggedElem = null 35 | } 36 | function onPointerMove(evt) { 37 | if (el !== draggedElem) return 38 | evt.preventDefault() 39 | if (el.lastCoords) { 40 | var deltaX = evt.clientX - el.lastCoords.x 41 | var deltaY = evt.clientY - el.lastCoords.y 42 | var offsetX = evt.clientX - el.firstCoords.x 43 | var offsetY = evt.clientY - el.firstCoords.y 44 | var clientX = evt.clientX 45 | var clientY = evt.clientY 46 | 47 | binding.value({ 48 | el, 49 | deltaX, 50 | deltaY, 51 | offsetX, 52 | offsetY, 53 | clientX, 54 | clientY 55 | }) 56 | el.lastCoords = { 57 | x: evt.clientX, 58 | y: evt.clientY 59 | } 60 | } 61 | } 62 | u.addEventListeners(el, POINTER_START_EVENTS, onPointerStart) 63 | u.addEventListeners( 64 | document.documentElement, 65 | POINTER_END_EVENTS, 66 | onPointerEnd 67 | ) 68 | u.addEventListeners( 69 | document.documentElement, 70 | POINTER_MOVE_EVENTS, 71 | onPointerMove 72 | ) 73 | }, 74 | 75 | unbind(el) { 76 | u.removeEventListeners(el, POINTER_START_EVENTS) 77 | u.removeEventListeners(document.documentElement, POINTER_END_EVENTS) 78 | u.removeEventListeners(document.documentElement, POINTER_MOVE_EVENTS) 79 | } 80 | } 81 | -------------------------------------------------------------------------------- /docs/assets/eijs.js: -------------------------------------------------------------------------------- 1 | document.getElementsByClassName||(document.getElementsByClassName=function(e){var n,t,r,a=document,o=[];if(a.querySelectorAll)return a.querySelectorAll("."+e);if(a.evaluate)for(t=".//*[contains(concat(' ', @class, ' '), ' "+e+" ')]",n=a.evaluate(t,a,null,0,null);r=n.iterateNext();)o.push(r);else for(n=a.getElementsByTagName("*"),t=new RegExp("(^|\\s)"+e+"(\\s|$)"),r=0;r-1;t--){var u=a(e[t]);if(0!==Object.keys(u).length&&(u=o(u),u.user=n(u,e[t]),r(u))){var c=i(u),l=s(u,c);f(e[t],l)}}m()}function n(e,n){if("string"==typeof e.user)return e.user;for(var t=0,r=n.children.length;t Vue directive plugin for drag event detection. 3 | 4 | **NOTE:** This directive listens for mouse/touch events, and sets a handler for when a drag action is detected. This is different from setting `draggable` on element, in that you need to move the element yourself according to the information *`v-dragged`* provides. 5 | 6 | 7 | ## Install 8 | 9 | ```bash 10 | npm install --save v-dragged 11 | ``` 12 | ```js 13 | import Vue from 'vue' 14 | import VDragged from 'v-dragged' 15 | 16 | Vue.use(VDragged) 17 | ``` 18 | 19 | ## Example 20 | 21 | In your component: 22 | 23 | ```html 24 |
25 | ``` 26 | ```js 27 | { 28 | // ...other options omitted 29 | 30 | methods: { 31 | onDragged({ el, deltaX, deltaY, offsetX, offsetY, clientX, clientY, first, last }) { 32 | if (first) { 33 | this.isDragging = true 34 | return 35 | } 36 | if (last) { 37 | this.isDragging = false 38 | return 39 | } 40 | var l = +window.getComputedStyle(el)['left'].slice(0, -2) || 0 41 | var t = +window.getComputedStyle(el)['top'].slice(0, -2) || 0 42 | el.style.left = l + deltaX + 'px' 43 | el.style.top = t + deltaY + 'px' 44 | } 45 | } 46 | } 47 | ``` 48 | 49 | ### Event Details 50 | 51 | The argument passed to the event handler is an object containing the following properties: 52 | 53 | #### `el` 54 | - The target element on which the directive binds. 55 | - type: HTMLElement 56 | 57 | #### `first` 58 | - A boolean to indicate whether it is the first move of the drag. (drag starts here). 59 | - type: Boolean 60 | 61 | #### `last` 62 | - A boolean to indicate whether it is the last move of the drag. (drag ends here). 63 | - type: Boolean 64 | 65 | #### `deltaX` 66 | - The change of the pointer (mouse/touch)'s **x** coordinate from the last position.
67 | It is `undefined` when `first` or `last` is `true`. 68 | - type: Number 69 | 70 | #### `deltaY` 71 | - The change of the pointer (mouse/touch)'s **y** coordinate from the last position.
72 | It is `undefined` when `first` or `last` is `true`. 73 | - type: Number 74 | 75 | #### `offsetX` 76 | - The change of the pointer (mouse/touch)'s **x** coordinate from **the starting position**.
77 | It is `undefined` when `first` or `last` is `true`. 78 | - type: Number 79 | 80 | #### `offsetY` 81 | - The change of the pointer (mouse/touch)'s **y** coordinate from **the starting position**.
82 | It is `undefined` when `first` or `last` is `true`. 83 | - type: Number 84 | 85 | #### `clientX` 86 | - Current **x** coordinate of the pointer (mouse/touch). 87 | - type: Number 88 | 89 | #### `clientY` 90 | - Current **y** coordinate of the pointer (mouse/touch). 91 | - type: Number 92 | 93 | 94 | ## Modifier 95 | 96 | #### `prevent` 97 | - prevent default events on pointer events (`touchstart`, `touchmove`, `touchend`, `mousedown`, `mousemove`, `mouseup`). 98 | 99 | ```html 100 |
101 | ``` 102 | -------------------------------------------------------------------------------- /docs/index.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 93 | 94 | V-Dragged 95 | 96 | 97 | 98 |
99 | 100 |
101 | 102 | 103 | 104 | 105 | -------------------------------------------------------------------------------- /docs/src/App.vue: -------------------------------------------------------------------------------- 1 | 20 | 21 | 58 | 59 | 118 | -------------------------------------------------------------------------------- /docs/simple-test.html: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 93 | 138 | V-Dragged - Simple Test 139 | 140 | 141 | 142 |
143 |

V-Dragged Simple Test

144 |
145 |
deltaX: {{deltaX}}
146 |
deltaY: {{deltaY}}
147 |
offsetX: {{offsetX}}
148 |
offsetY: {{offsetY}}
149 |
clientX: {{clientX}}
150 |
clientY: {{clientY}}
151 |
152 |
153 | 154 | 155 | 156 | 197 | 198 | 199 | -------------------------------------------------------------------------------- /dist/v-dragged.js: -------------------------------------------------------------------------------- 1 | /* 2 | * v-dragged v0.0.3 3 | * https://github.com/zhanziyang/v-dragged 4 | * 5 | * Copyright (c) 2017 zhanziyang 6 | * Released under the ISC license 7 | */ 8 | 9 | (function (global, factory) { 10 | typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : 11 | typeof define === 'function' && define.amd ? define(factory) : 12 | (global.VDragged = factory()); 13 | }(this, (function () { 'use strict'; 14 | 15 | /* 16 | object-assign 17 | (c) Sindre Sorhus 18 | @license MIT 19 | */ 20 | 21 | /* eslint-disable no-unused-vars */ 22 | var getOwnPropertySymbols = Object.getOwnPropertySymbols; 23 | var hasOwnProperty = Object.prototype.hasOwnProperty; 24 | var propIsEnumerable = Object.prototype.propertyIsEnumerable; 25 | 26 | function toObject(val) { 27 | if (val === null || val === undefined) { 28 | throw new TypeError('Object.assign cannot be called with null or undefined'); 29 | } 30 | 31 | return Object(val); 32 | } 33 | 34 | function shouldUseNative() { 35 | try { 36 | if (!Object.assign) { 37 | return false; 38 | } 39 | 40 | // Detect buggy property enumeration order in older V8 versions. 41 | 42 | // https://bugs.chromium.org/p/v8/issues/detail?id=4118 43 | var test1 = new String('abc'); // eslint-disable-line no-new-wrappers 44 | test1[5] = 'de'; 45 | if (Object.getOwnPropertyNames(test1)[0] === '5') { 46 | return false; 47 | } 48 | 49 | // https://bugs.chromium.org/p/v8/issues/detail?id=3056 50 | var test2 = {}; 51 | for (var i = 0; i < 10; i++) { 52 | test2['_' + String.fromCharCode(i)] = i; 53 | } 54 | var order2 = Object.getOwnPropertyNames(test2).map(function (n) { 55 | return test2[n]; 56 | }); 57 | if (order2.join('') !== '0123456789') { 58 | return false; 59 | } 60 | 61 | // https://bugs.chromium.org/p/v8/issues/detail?id=3056 62 | var test3 = {}; 63 | 'abcdefghijklmnopqrst'.split('').forEach(function (letter) { 64 | test3[letter] = letter; 65 | }); 66 | if (Object.keys(Object.assign({}, test3)).join('') !== 67 | 'abcdefghijklmnopqrst') { 68 | return false; 69 | } 70 | 71 | return true; 72 | } catch (err) { 73 | // We don't expect any of the above to throw, but better to be safe. 74 | return false; 75 | } 76 | } 77 | 78 | var index = shouldUseNative() ? Object.assign : function (target, source) { 79 | var from; 80 | var to = toObject(target); 81 | var symbols; 82 | 83 | for (var s = 1; s < arguments.length; s++) { 84 | from = Object(arguments[s]); 85 | 86 | for (var key in from) { 87 | if (hasOwnProperty.call(from, key)) { 88 | to[key] = from[key]; 89 | } 90 | } 91 | 92 | if (getOwnPropertySymbols) { 93 | symbols = getOwnPropertySymbols(from); 94 | for (var i = 0; i < symbols.length; i++) { 95 | if (propIsEnumerable.call(from, symbols[i])) { 96 | to[symbols[i]] = from[symbols[i]]; 97 | } 98 | } 99 | } 100 | } 101 | 102 | return to; 103 | }; 104 | 105 | var u = { 106 | addEventListeners: function addEventListeners(el, events, handler) { 107 | for (var i = 0, len = events.length; i < len; i++) { 108 | el.addEventListener(events[i], handler); 109 | } 110 | }, 111 | removeEventListeners: function removeEventListeners(el, events, handler) { 112 | for (var i = 0, len = events.length; i < len; i++) { 113 | el.removeEventListener(events[i], handler); 114 | } 115 | } 116 | }; 117 | 118 | var POINTER_START_EVENTS = ['mousedown', 'touchstart']; 119 | var POINTER_MOVE_EVENTS = ['mousemove', 'touchmove']; 120 | var POINTER_END_EVENTS = ['mouseup', 'touchend']; 121 | var draggedElem; 122 | 123 | var directive = { 124 | inserted: function inserted(el, binding, vnode) { 125 | if (!document) return; 126 | function onPointerStart(evt) { 127 | el.lastCoords = el.firstCoords = { 128 | x: evt.clientX, 129 | y: evt.clientY 130 | }; 131 | binding.value({ 132 | el: el, 133 | first: true, 134 | clientX: evt.clientX, 135 | clientY: evt.clientY 136 | }); 137 | draggedElem = el; 138 | } 139 | function onPointerEnd(evt) { 140 | if (el !== draggedElem) return; 141 | evt.preventDefault(); 142 | el.lastCoords = null; 143 | binding.value({ 144 | el: el, 145 | last: true, 146 | clientX: evt.clientX, 147 | clientY: evt.clientY 148 | }); 149 | draggedElem = null; 150 | } 151 | function onPointerMove(evt) { 152 | if (el !== draggedElem) return; 153 | evt.preventDefault(); 154 | if (el.lastCoords) { 155 | var deltaX = evt.clientX - el.lastCoords.x; 156 | var deltaY = evt.clientY - el.lastCoords.y; 157 | var offsetX = evt.clientX - el.firstCoords.x; 158 | var offsetY = evt.clientY - el.firstCoords.y; 159 | var clientX = evt.clientX; 160 | var clientY = evt.clientY; 161 | 162 | binding.value({ 163 | el: el, 164 | deltaX: deltaX, 165 | deltaY: deltaY, 166 | offsetX: offsetX, 167 | offsetY: offsetY, 168 | clientX: clientX, 169 | clientY: clientY 170 | }); 171 | el.lastCoords = { 172 | x: evt.clientX, 173 | y: evt.clientY 174 | }; 175 | } 176 | } 177 | u.addEventListeners(el, POINTER_START_EVENTS, onPointerStart); 178 | u.addEventListeners(document.documentElement, POINTER_END_EVENTS, onPointerEnd); 179 | u.addEventListeners(document.documentElement, POINTER_MOVE_EVENTS, onPointerMove); 180 | }, 181 | unbind: function unbind(el) { 182 | u.removeEventListeners(el, POINTER_START_EVENTS); 183 | u.removeEventListeners(document.documentElement, POINTER_END_EVENTS); 184 | u.removeEventListeners(document.documentElement, POINTER_MOVE_EVENTS); 185 | } 186 | }; 187 | 188 | var defaultOptions = {}; 189 | 190 | var VDragged = { 191 | install: function install(Vue, options) { 192 | options = index({}, defaultOptions, options); 193 | var major = Number(Vue.version.split('.')[0]); 194 | var minor = Number(Vue.version.split('.')[1]); 195 | if (major < 2 && minor < 1) { 196 | throw new Error('v-dragged supports vue version 2.1 and above. You are using Vue@' + Vue.version + '. Please upgrade to the latest version of Vue.'); 197 | } 198 | // registration 199 | Vue.directive('dragged', directive); 200 | }, 201 | 202 | directive: directive 203 | }; 204 | 205 | return VDragged; 206 | 207 | }))); 208 | -------------------------------------------------------------------------------- /docs/src/VDragged/v-dragged.js: -------------------------------------------------------------------------------- 1 | /* 2 | * v-dragged v0.0.3 3 | * https://github.com/zhanziyang/v-dragged 4 | * 5 | * Copyright (c) 2017 zhanziyang 6 | * Released under the ISC license 7 | */ 8 | 9 | (function (global, factory) { 10 | typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() : 11 | typeof define === 'function' && define.amd ? define(factory) : 12 | (global.VDragged = factory()); 13 | }(this, (function () { 'use strict'; 14 | 15 | /* 16 | object-assign 17 | (c) Sindre Sorhus 18 | @license MIT 19 | */ 20 | 21 | /* eslint-disable no-unused-vars */ 22 | var getOwnPropertySymbols = Object.getOwnPropertySymbols; 23 | var hasOwnProperty = Object.prototype.hasOwnProperty; 24 | var propIsEnumerable = Object.prototype.propertyIsEnumerable; 25 | 26 | function toObject(val) { 27 | if (val === null || val === undefined) { 28 | throw new TypeError('Object.assign cannot be called with null or undefined'); 29 | } 30 | 31 | return Object(val); 32 | } 33 | 34 | function shouldUseNative() { 35 | try { 36 | if (!Object.assign) { 37 | return false; 38 | } 39 | 40 | // Detect buggy property enumeration order in older V8 versions. 41 | 42 | // https://bugs.chromium.org/p/v8/issues/detail?id=4118 43 | var test1 = new String('abc'); // eslint-disable-line no-new-wrappers 44 | test1[5] = 'de'; 45 | if (Object.getOwnPropertyNames(test1)[0] === '5') { 46 | return false; 47 | } 48 | 49 | // https://bugs.chromium.org/p/v8/issues/detail?id=3056 50 | var test2 = {}; 51 | for (var i = 0; i < 10; i++) { 52 | test2['_' + String.fromCharCode(i)] = i; 53 | } 54 | var order2 = Object.getOwnPropertyNames(test2).map(function (n) { 55 | return test2[n]; 56 | }); 57 | if (order2.join('') !== '0123456789') { 58 | return false; 59 | } 60 | 61 | // https://bugs.chromium.org/p/v8/issues/detail?id=3056 62 | var test3 = {}; 63 | 'abcdefghijklmnopqrst'.split('').forEach(function (letter) { 64 | test3[letter] = letter; 65 | }); 66 | if (Object.keys(Object.assign({}, test3)).join('') !== 67 | 'abcdefghijklmnopqrst') { 68 | return false; 69 | } 70 | 71 | return true; 72 | } catch (err) { 73 | // We don't expect any of the above to throw, but better to be safe. 74 | return false; 75 | } 76 | } 77 | 78 | var index = shouldUseNative() ? Object.assign : function (target, source) { 79 | var from; 80 | var to = toObject(target); 81 | var symbols; 82 | 83 | for (var s = 1; s < arguments.length; s++) { 84 | from = Object(arguments[s]); 85 | 86 | for (var key in from) { 87 | if (hasOwnProperty.call(from, key)) { 88 | to[key] = from[key]; 89 | } 90 | } 91 | 92 | if (getOwnPropertySymbols) { 93 | symbols = getOwnPropertySymbols(from); 94 | for (var i = 0; i < symbols.length; i++) { 95 | if (propIsEnumerable.call(from, symbols[i])) { 96 | to[symbols[i]] = from[symbols[i]]; 97 | } 98 | } 99 | } 100 | } 101 | 102 | return to; 103 | }; 104 | 105 | var u = { 106 | addEventListeners: function addEventListeners(el, events, handler) { 107 | for (var i = 0, len = events.length; i < len; i++) { 108 | el.addEventListener(events[i], handler); 109 | } 110 | }, 111 | removeEventListeners: function removeEventListeners(el, events, handler) { 112 | for (var i = 0, len = events.length; i < len; i++) { 113 | el.removeEventListener(events[i], handler); 114 | } 115 | } 116 | }; 117 | 118 | var POINTER_START_EVENTS = ['mousedown', 'touchstart']; 119 | var POINTER_MOVE_EVENTS = ['mousemove', 'touchmove']; 120 | var POINTER_END_EVENTS = ['mouseup', 'touchend']; 121 | var draggedElem; 122 | 123 | var directive = { 124 | inserted: function inserted(el, binding, vnode) { 125 | if (!document) return; 126 | function onPointerStart(evt) { 127 | el.lastCoords = el.firstCoords = { 128 | x: evt.clientX, 129 | y: evt.clientY 130 | }; 131 | binding.value({ 132 | el: el, 133 | first: true, 134 | clientX: evt.clientX, 135 | clientY: evt.clientY 136 | }); 137 | draggedElem = el; 138 | } 139 | function onPointerEnd(evt) { 140 | if (el !== draggedElem) return; 141 | evt.preventDefault(); 142 | el.lastCoords = null; 143 | binding.value({ 144 | el: el, 145 | last: true, 146 | clientX: evt.clientX, 147 | clientY: evt.clientY 148 | }); 149 | draggedElem = null; 150 | } 151 | function onPointerMove(evt) { 152 | if (el !== draggedElem) return; 153 | evt.preventDefault(); 154 | if (el.lastCoords) { 155 | var deltaX = evt.clientX - el.lastCoords.x; 156 | var deltaY = evt.clientY - el.lastCoords.y; 157 | var offsetX = evt.clientX - el.firstCoords.x; 158 | var offsetY = evt.clientY - el.firstCoords.y; 159 | var clientX = evt.clientX; 160 | var clientY = evt.clientY; 161 | 162 | binding.value({ 163 | el: el, 164 | deltaX: deltaX, 165 | deltaY: deltaY, 166 | offsetX: offsetX, 167 | offsetY: offsetY, 168 | clientX: clientX, 169 | clientY: clientY 170 | }); 171 | el.lastCoords = { 172 | x: evt.clientX, 173 | y: evt.clientY 174 | }; 175 | } 176 | } 177 | u.addEventListeners(el, POINTER_START_EVENTS, onPointerStart); 178 | u.addEventListeners(document.documentElement, POINTER_END_EVENTS, onPointerEnd); 179 | u.addEventListeners(document.documentElement, POINTER_MOVE_EVENTS, onPointerMove); 180 | }, 181 | unbind: function unbind(el) { 182 | u.removeEventListeners(el, POINTER_START_EVENTS); 183 | u.removeEventListeners(document.documentElement, POINTER_END_EVENTS); 184 | u.removeEventListeners(document.documentElement, POINTER_MOVE_EVENTS); 185 | } 186 | }; 187 | 188 | var defaultOptions = {}; 189 | 190 | var VDragged = { 191 | install: function install(Vue, options) { 192 | options = index({}, defaultOptions, options); 193 | var major = Number(Vue.version.split('.')[0]); 194 | var minor = Number(Vue.version.split('.')[1]); 195 | if (major < 2 && minor < 1) { 196 | throw new Error('v-dragged supports vue version 2.1 and above. You are using Vue@' + Vue.version + '. Please upgrade to the latest version of Vue.'); 197 | } 198 | // registration 199 | Vue.directive('dragged', directive); 200 | }, 201 | 202 | directive: directive 203 | }; 204 | 205 | return VDragged; 206 | 207 | }))); 208 | //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidi1kcmFnZ2VkLmpzIiwic291cmNlcyI6WyIuLi8uLi8uLi9ub2RlX21vZHVsZXMvb2JqZWN0LWFzc2lnbi9pbmRleC5qcyIsIi4uLy4uLy4uL3NyYy91dGlsLmpzIiwiLi4vLi4vLi4vc3JjL2RpcmVjdGl2ZS5qcyIsIi4uLy4uLy4uL3NyYy9tYWluLmpzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qXG5vYmplY3QtYXNzaWduXG4oYykgU2luZHJlIFNvcmh1c1xuQGxpY2Vuc2UgTUlUXG4qL1xuXG4ndXNlIHN0cmljdCc7XG4vKiBlc2xpbnQtZGlzYWJsZSBuby11bnVzZWQtdmFycyAqL1xudmFyIGdldE93blByb3BlcnR5U3ltYm9scyA9IE9iamVjdC5nZXRPd25Qcm9wZXJ0eVN5bWJvbHM7XG52YXIgaGFzT3duUHJvcGVydHkgPSBPYmplY3QucHJvdG90eXBlLmhhc093blByb3BlcnR5O1xudmFyIHByb3BJc0VudW1lcmFibGUgPSBPYmplY3QucHJvdG90eXBlLnByb3BlcnR5SXNFbnVtZXJhYmxlO1xuXG5mdW5jdGlvbiB0b09iamVjdCh2YWwpIHtcblx0aWYgKHZhbCA9PT0gbnVsbCB8fCB2YWwgPT09IHVuZGVmaW5lZCkge1xuXHRcdHRocm93IG5ldyBUeXBlRXJyb3IoJ09iamVjdC5hc3NpZ24gY2Fubm90IGJlIGNhbGxlZCB3aXRoIG51bGwgb3IgdW5kZWZpbmVkJyk7XG5cdH1cblxuXHRyZXR1cm4gT2JqZWN0KHZhbCk7XG59XG5cbmZ1bmN0aW9uIHNob3VsZFVzZU5hdGl2ZSgpIHtcblx0dHJ5IHtcblx0XHRpZiAoIU9iamVjdC5hc3NpZ24pIHtcblx0XHRcdHJldHVybiBmYWxzZTtcblx0XHR9XG5cblx0XHQvLyBEZXRlY3QgYnVnZ3kgcHJvcGVydHkgZW51bWVyYXRpb24gb3JkZXIgaW4gb2xkZXIgVjggdmVyc2lvbnMuXG5cblx0XHQvLyBodHRwczovL2J1Z3MuY2hyb21pdW0ub3JnL3AvdjgvaXNzdWVzL2RldGFpbD9pZD00MTE4XG5cdFx0dmFyIHRlc3QxID0gbmV3IFN0cmluZygnYWJjJyk7ICAvLyBlc2xpbnQtZGlzYWJsZS1saW5lIG5vLW5ldy13cmFwcGVyc1xuXHRcdHRlc3QxWzVdID0gJ2RlJztcblx0XHRpZiAoT2JqZWN0LmdldE93blByb3BlcnR5TmFtZXModGVzdDEpWzBdID09PSAnNScpIHtcblx0XHRcdHJldHVybiBmYWxzZTtcblx0XHR9XG5cblx0XHQvLyBodHRwczovL2J1Z3MuY2hyb21pdW0ub3JnL3AvdjgvaXNzdWVzL2RldGFpbD9pZD0zMDU2XG5cdFx0dmFyIHRlc3QyID0ge307XG5cdFx0Zm9yICh2YXIgaSA9IDA7IGkgPCAxMDsgaSsrKSB7XG5cdFx0XHR0ZXN0MlsnXycgKyBTdHJpbmcuZnJvbUNoYXJDb2RlKGkpXSA9IGk7XG5cdFx0fVxuXHRcdHZhciBvcmRlcjIgPSBPYmplY3QuZ2V0T3duUHJvcGVydHlOYW1lcyh0ZXN0MikubWFwKGZ1bmN0aW9uIChuKSB7XG5cdFx0XHRyZXR1cm4gdGVzdDJbbl07XG5cdFx0fSk7XG5cdFx0aWYgKG9yZGVyMi5qb2luKCcnKSAhPT0gJzAxMjM0NTY3ODknKSB7XG5cdFx0XHRyZXR1cm4gZmFsc2U7XG5cdFx0fVxuXG5cdFx0Ly8gaHR0cHM6Ly9idWdzLmNocm9taXVtLm9yZy9wL3Y4L2lzc3Vlcy9kZXRhaWw/aWQ9MzA1NlxuXHRcdHZhciB0ZXN0MyA9IHt9O1xuXHRcdCdhYmNkZWZnaGlqa2xtbm9wcXJzdCcuc3BsaXQoJycpLmZvckVhY2goZnVuY3Rpb24gKGxldHRlcikge1xuXHRcdFx0dGVzdDNbbGV0dGVyXSA9IGxldHRlcjtcblx0XHR9KTtcblx0XHRpZiAoT2JqZWN0LmtleXMoT2JqZWN0LmFzc2lnbih7fSwgdGVzdDMpKS5qb2luKCcnKSAhPT1cblx0XHRcdFx0J2FiY2RlZmdoaWprbG1ub3BxcnN0Jykge1xuXHRcdFx0cmV0dXJuIGZhbHNlO1xuXHRcdH1cblxuXHRcdHJldHVybiB0cnVlO1xuXHR9IGNhdGNoIChlcnIpIHtcblx0XHQvLyBXZSBkb24ndCBleHBlY3QgYW55IG9mIHRoZSBhYm92ZSB0byB0aHJvdywgYnV0IGJldHRlciB0byBiZSBzYWZlLlxuXHRcdHJldHVybiBmYWxzZTtcblx0fVxufVxuXG5tb2R1bGUuZXhwb3J0cyA9IHNob3VsZFVzZU5hdGl2ZSgpID8gT2JqZWN0LmFzc2lnbiA6IGZ1bmN0aW9uICh0YXJnZXQsIHNvdXJjZSkge1xuXHR2YXIgZnJvbTtcblx0dmFyIHRvID0gdG9PYmplY3QodGFyZ2V0KTtcblx0dmFyIHN5bWJvbHM7XG5cblx0Zm9yICh2YXIgcyA9IDE7IHMgPCBhcmd1bWVudHMubGVuZ3RoOyBzKyspIHtcblx0XHRmcm9tID0gT2JqZWN0KGFyZ3VtZW50c1tzXSk7XG5cblx0XHRmb3IgKHZhciBrZXkgaW4gZnJvbSkge1xuXHRcdFx0aWYgKGhhc093blByb3BlcnR5LmNhbGwoZnJvbSwga2V5KSkge1xuXHRcdFx0XHR0b1trZXldID0gZnJvbVtrZXldO1xuXHRcdFx0fVxuXHRcdH1cblxuXHRcdGlmIChnZXRPd25Qcm9wZXJ0eVN5bWJvbHMpIHtcblx0XHRcdHN5bWJvbHMgPSBnZXRPd25Qcm9wZXJ0eVN5bWJvbHMoZnJvbSk7XG5cdFx0XHRmb3IgKHZhciBpID0gMDsgaSA8IHN5bWJvbHMubGVuZ3RoOyBpKyspIHtcblx0XHRcdFx0aWYgKHByb3BJc0VudW1lcmFibGUuY2FsbChmcm9tLCBzeW1ib2xzW2ldKSkge1xuXHRcdFx0XHRcdHRvW3N5bWJvbHNbaV1dID0gZnJvbVtzeW1ib2xzW2ldXTtcblx0XHRcdFx0fVxuXHRcdFx0fVxuXHRcdH1cblx0fVxuXG5cdHJldHVybiB0bztcbn07XG4iLCJcclxuZXhwb3J0IGRlZmF1bHQge1xyXG4gIGFkZEV2ZW50TGlzdGVuZXJzIChlbCwgZXZlbnRzLCBoYW5kbGVyKSB7XHJcbiAgICBmb3IgKHZhciBpID0gMCwgbGVuID0gZXZlbnRzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgICAgIGVsLmFkZEV2ZW50TGlzdGVuZXIoZXZlbnRzW2ldLCBoYW5kbGVyKVxyXG4gICAgfVxyXG4gIH0sXHJcblxyXG4gIHJlbW92ZUV2ZW50TGlzdGVuZXJzIChlbCwgZXZlbnRzLCBoYW5kbGVyKSB7XHJcbiAgICBmb3IgKHZhciBpID0gMCwgbGVuID0gZXZlbnRzLmxlbmd0aDsgaSA8IGxlbjsgaSsrKSB7XHJcbiAgICAgIGVsLnJlbW92ZUV2ZW50TGlzdGVuZXIoZXZlbnRzW2ldLCBoYW5kbGVyKVxyXG4gICAgfVxyXG4gIH1cclxufSIsImltcG9ydCB1IGZyb20gJy4vdXRpbCdcblxuY29uc3QgUE9JTlRFUl9TVEFSVF9FVkVOVFMgPSBbJ21vdXNlZG93bicsICd0b3VjaHN0YXJ0J11cbmNvbnN0IFBPSU5URVJfTU9WRV9FVkVOVFMgPSBbJ21vdXNlbW92ZScsICd0b3VjaG1vdmUnXVxuY29uc3QgUE9JTlRFUl9FTkRfRVZFTlRTID0gWydtb3VzZXVwJywgJ3RvdWNoZW5kJ11cbnZhciBkcmFnZ2VkRWxlbVxuXG5leHBvcnQgZGVmYXVsdCB7XG4gIGluc2VydGVkKGVsLCBiaW5kaW5nLCB2bm9kZSkge1xuICAgIGlmICghZG9jdW1lbnQpIHJldHVyblxuICAgIGZ1bmN0aW9uIG9uUG9pbnRlclN0YXJ0KGV2dCkge1xuICAgICAgZWwubGFzdENvb3JkcyA9IGVsLmZpcnN0Q29vcmRzID0ge1xuICAgICAgICB4OiBldnQuY2xpZW50WCxcbiAgICAgICAgeTogZXZ0LmNsaWVudFlcbiAgICAgIH1cbiAgICAgIGJpbmRpbmcudmFsdWUoe1xuICAgICAgICBlbCxcbiAgICAgICAgZmlyc3Q6IHRydWUsXG4gICAgICAgIGNsaWVudFg6IGV2dC5jbGllbnRYLFxuICAgICAgICBjbGllbnRZOiBldnQuY2xpZW50WVxuICAgICAgfSlcbiAgICAgIGRyYWdnZWRFbGVtID0gZWxcbiAgICB9XG4gICAgZnVuY3Rpb24gb25Qb2ludGVyRW5kKGV2dCkge1xuICAgICAgaWYgKGVsICE9PSBkcmFnZ2VkRWxlbSkgcmV0dXJuXG4gICAgICBldnQucHJldmVudERlZmF1bHQoKVxuICAgICAgZWwubGFzdENvb3JkcyA9IG51bGxcbiAgICAgIGJpbmRpbmcudmFsdWUoe1xuICAgICAgICBlbCxcbiAgICAgICAgbGFzdDogdHJ1ZSxcbiAgICAgICAgY2xpZW50WDogZXZ0LmNsaWVudFgsXG4gICAgICAgIGNsaWVudFk6IGV2dC5jbGllbnRZXG4gICAgICB9KVxuICAgICAgZHJhZ2dlZEVsZW0gPSBudWxsXG4gICAgfVxuICAgIGZ1bmN0aW9uIG9uUG9pbnRlck1vdmUoZXZ0KSB7XG4gICAgICBpZiAoZWwgIT09IGRyYWdnZWRFbGVtKSByZXR1cm5cbiAgICAgIGV2dC5wcmV2ZW50RGVmYXVsdCgpXG4gICAgICBpZiAoZWwubGFzdENvb3Jkcykge1xuICAgICAgICB2YXIgZGVsdGFYID0gZXZ0LmNsaWVudFggLSBlbC5sYXN0Q29vcmRzLnhcbiAgICAgICAgdmFyIGRlbHRhWSA9IGV2dC5jbGllbnRZIC0gZWwubGFzdENvb3Jkcy55XG4gICAgICAgIHZhciBvZmZzZXRYID0gZXZ0LmNsaWVudFggLSBlbC5maXJzdENvb3Jkcy54XG4gICAgICAgIHZhciBvZmZzZXRZID0gZXZ0LmNsaWVudFkgLSBlbC5maXJzdENvb3Jkcy55XG4gICAgICAgIHZhciBjbGllbnRYID0gZXZ0LmNsaWVudFhcbiAgICAgICAgdmFyIGNsaWVudFkgPSBldnQuY2xpZW50WVxuXG4gICAgICAgIGJpbmRpbmcudmFsdWUoe1xuICAgICAgICAgIGVsLFxuICAgICAgICAgIGRlbHRhWCxcbiAgICAgICAgICBkZWx0YVksXG4gICAgICAgICAgb2Zmc2V0WCxcbiAgICAgICAgICBvZmZzZXRZLFxuICAgICAgICAgIGNsaWVudFgsXG4gICAgICAgICAgY2xpZW50WVxuICAgICAgICB9KVxuICAgICAgICBlbC5sYXN0Q29vcmRzID0ge1xuICAgICAgICAgIHg6IGV2dC5jbGllbnRYLFxuICAgICAgICAgIHk6IGV2dC5jbGllbnRZXG4gICAgICAgIH1cbiAgICAgIH1cbiAgICB9XG4gICAgdS5hZGRFdmVudExpc3RlbmVycyhlbCwgUE9JTlRFUl9TVEFSVF9FVkVOVFMsIG9uUG9pbnRlclN0YXJ0KVxuICAgIHUuYWRkRXZlbnRMaXN0ZW5lcnMoXG4gICAgICBkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsXG4gICAgICBQT0lOVEVSX0VORF9FVkVOVFMsXG4gICAgICBvblBvaW50ZXJFbmRcbiAgICApXG4gICAgdS5hZGRFdmVudExpc3RlbmVycyhcbiAgICAgIGRvY3VtZW50LmRvY3VtZW50RWxlbWVudCxcbiAgICAgIFBPSU5URVJfTU9WRV9FVkVOVFMsXG4gICAgICBvblBvaW50ZXJNb3ZlXG4gICAgKVxuICB9LFxuXG4gIHVuYmluZChlbCkge1xuICAgIHUucmVtb3ZlRXZlbnRMaXN0ZW5lcnMoZWwsIFBPSU5URVJfU1RBUlRfRVZFTlRTKVxuICAgIHUucmVtb3ZlRXZlbnRMaXN0ZW5lcnMoZG9jdW1lbnQuZG9jdW1lbnRFbGVtZW50LCBQT0lOVEVSX0VORF9FVkVOVFMpXG4gICAgdS5yZW1vdmVFdmVudExpc3RlbmVycyhkb2N1bWVudC5kb2N1bWVudEVsZW1lbnQsIFBPSU5URVJfTU9WRV9FVkVOVFMpXG4gIH1cbn1cbiIsImltcG9ydCBhc3NpZ24gZnJvbSAnb2JqZWN0LWFzc2lnbidcclxuaW1wb3J0IGRpcmVjdGl2ZSBmcm9tICcuL2RpcmVjdGl2ZSdcclxuXHJcbmNvbnN0IGRlZmF1bHRPcHRpb25zID0ge31cclxuXHJcbmNvbnN0IFZEcmFnZ2VkID0ge1xyXG4gIGluc3RhbGw6IGZ1bmN0aW9uIChWdWUsIG9wdGlvbnMpIHtcclxuICAgIG9wdGlvbnMgPSBhc3NpZ24oe30sIGRlZmF1bHRPcHRpb25zLCBvcHRpb25zKVxyXG4gICAgbGV0IG1ham9yID0gTnVtYmVyKFZ1ZS52ZXJzaW9uLnNwbGl0KCcuJylbMF0pXHJcbiAgICBsZXQgbWlub3IgPSBOdW1iZXIoVnVlLnZlcnNpb24uc3BsaXQoJy4nKVsxXSlcclxuICAgIGlmIChtYWpvciA8IDIgJiYgbWlub3IgPCAxKSB7XHJcbiAgICAgIHRocm93IG5ldyBFcnJvcihgdi1kcmFnZ2VkIHN1cHBvcnRzIHZ1ZSB2ZXJzaW9uIDIuMSBhbmQgYWJvdmUuIFlvdSBhcmUgdXNpbmcgVnVlQCR7VnVlLnZlcnNpb259LiBQbGVhc2UgdXBncmFkZSB0byB0aGUgbGF0ZXN0IHZlcnNpb24gb2YgVnVlLmApXHJcbiAgICB9XHJcbiAgICAvLyByZWdpc3RyYXRpb25cclxuICAgIFZ1ZS5kaXJlY3RpdmUoJ2RyYWdnZWQnLCBkaXJlY3RpdmUpXHJcbiAgfSxcclxuXHJcbiAgZGlyZWN0aXZlXHJcbn1cclxuZXhwb3J0IGRlZmF1bHQgVkRyYWdnZWQiXSwibmFtZXMiOlsiZWwiLCJldmVudHMiLCJoYW5kbGVyIiwiaSIsImxlbiIsImxlbmd0aCIsImFkZEV2ZW50TGlzdGVuZXIiLCJyZW1vdmVFdmVudExpc3RlbmVyIiwiUE9JTlRFUl9TVEFSVF9FVkVOVFMiLCJQT0lOVEVSX01PVkVfRVZFTlRTIiwiUE9JTlRFUl9FTkRfRVZFTlRTIiwiZHJhZ2dlZEVsZW0iLCJiaW5kaW5nIiwidm5vZGUiLCJkb2N1bWVudCIsIm9uUG9pbnRlclN0YXJ0IiwiZXZ0IiwibGFzdENvb3JkcyIsImZpcnN0Q29vcmRzIiwiY2xpZW50WCIsImNsaWVudFkiLCJ2YWx1ZSIsIm9uUG9pbnRlckVuZCIsInByZXZlbnREZWZhdWx0Iiwib25Qb2ludGVyTW92ZSIsImRlbHRhWCIsIngiLCJkZWx0YVkiLCJ5Iiwib2Zmc2V0WCIsIm9mZnNldFkiLCJhZGRFdmVudExpc3RlbmVycyIsImRvY3VtZW50RWxlbWVudCIsInJlbW92ZUV2ZW50TGlzdGVuZXJzIiwiZGVmYXVsdE9wdGlvbnMiLCJWRHJhZ2dlZCIsIlZ1ZSIsIm9wdGlvbnMiLCJhc3NpZ24iLCJtYWpvciIsIk51bWJlciIsInZlcnNpb24iLCJzcGxpdCIsIm1pbm9yIiwiRXJyb3IiLCJkaXJlY3RpdmUiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7Ozs7O0FBQUE7Ozs7OztBQU1BO0FBRUEsSUFBSSxxQkFBcUIsR0FBRyxNQUFNLENBQUMscUJBQXFCLENBQUM7QUFDekQs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 209 | -------------------------------------------------------------------------------- /docs/static/vue.min.js: -------------------------------------------------------------------------------- 1 | /*! 2 | * Vue.js v2.4.2 3 | * (c) 2014-2017 Evan You 4 | * Released under the MIT License. 5 | */ 6 | !function (t, e) { "object" == typeof exports && "undefined" != typeof module ? module.exports = e() : "function" == typeof define && define.amd ? define(e) : t.Vue = e() }(this, function () { "use strict"; function t(t) { return void 0 === t || null === t } function e(t) { return void 0 !== t && null !== t } function n(t) { return !0 === t } function r(t) { return !1 === t } function i(t) { return "string" == typeof t || "number" == typeof t || "boolean" == typeof t } function o(t) { return null !== t && "object" == typeof t } function a(t) { return "[object Object]" === pi.call(t) } function s(t) { return "[object RegExp]" === pi.call(t) } function c(t) { var e = parseFloat(t); return e >= 0 && Math.floor(e) === e && isFinite(t) } function u(t) { return null == t ? "" : "object" == typeof t ? JSON.stringify(t, null, 2) : String(t) } function l(t) { var e = parseFloat(t); return isNaN(e) ? t : e } function f(t, e) { for (var n = Object.create(null), r = t.split(","), i = 0; i < r.length; i++)n[r[i]] = !0; return e ? function (t) { return n[t.toLowerCase()] } : function (t) { return n[t] } } function p(t, e) { if (t.length) { var n = t.indexOf(e); if (n > -1) return t.splice(n, 1) } } function d(t, e) { return hi.call(t, e) } function v(t) { var e = Object.create(null); return function (n) { return e[n] || (e[n] = t(n)) } } function h(t, e) { function n(n) { var r = arguments.length; return r ? r > 1 ? t.apply(e, arguments) : t.call(e, n) : t.call(e) } return n._length = t.length, n } function m(t, e) { e = e || 0; for (var n = t.length - e, r = new Array(n); n--;)r[n] = t[n + e]; return r } function y(t, e) { for (var n in e) t[n] = e[n]; return t } function g(t) { for (var e = {}, n = 0; n < t.length; n++)t[n] && y(e, t[n]); return e } function _(t, e, n) { } function b(t, e) { if (t === e) return !0; var n = o(t), r = o(e); if (!n || !r) return !n && !r && String(t) === String(e); try { var i = Array.isArray(t), a = Array.isArray(e); if (i && a) return t.length === e.length && t.every(function (t, n) { return b(t, e[n]) }); if (i || a) return !1; var s = Object.keys(t), c = Object.keys(e); return s.length === c.length && s.every(function (n) { return b(t[n], e[n]) }) } catch (t) { return !1 } } function $(t, e) { for (var n = 0; n < t.length; n++)if (b(t[n], e)) return n; return -1 } function C(t) { var e = !1; return function () { e || (e = !0, t.apply(this, arguments)) } } function w(t) { var e = (t + "").charCodeAt(0); return 36 === e || 95 === e } function x(t, e, n, r) { Object.defineProperty(t, e, { value: n, enumerable: !!r, writable: !0, configurable: !0 }) } function A(t) { if (!Ti.test(t)) { var e = t.split("."); return function (t) { for (var n = 0; n < e.length; n++) { if (!t) return; t = t[e[n]] } return t } } } function k(t, e, n) { if (ki.errorHandler) ki.errorHandler.call(null, t, e, n); else { if (!ji || "undefined" == typeof console) throw t; console.error(t) } } function O(t) { return "function" == typeof t && /native code/.test(t.toString()) } function T(t) { Gi.target && Zi.push(Gi.target), Gi.target = t } function S() { Gi.target = Zi.pop() } function E(t, e, n) { t.__proto__ = e } function j(t, e, n) { for (var r = 0, i = n.length; r < i; r++) { var o = n[r]; x(t, o, e[o]) } } function L(t, e) { if (o(t)) { var n; return d(t, "__ob__") && t.__ob__ instanceof eo ? n = t.__ob__ : to.shouldConvert && !zi() && (Array.isArray(t) || a(t)) && Object.isExtensible(t) && !t._isVue && (n = new eo(t)), e && n && n.vmCount++ , n } } function N(t, e, n, r, i) { var o = new Gi, a = Object.getOwnPropertyDescriptor(t, e); if (!a || !1 !== a.configurable) { var s = a && a.get, c = a && a.set, u = !i && L(n); Object.defineProperty(t, e, { enumerable: !0, configurable: !0, get: function () { var e = s ? s.call(t) : n; return Gi.target && (o.depend(), u && u.dep.depend(), Array.isArray(e) && D(e)), e }, set: function (e) { var r = s ? s.call(t) : n; e === r || e !== e && r !== r || (c ? c.call(t, e) : n = e, u = !i && L(e), o.notify()) } }) } } function I(t, e, n) { if (Array.isArray(t) && c(e)) return t.length = Math.max(t.length, e), t.splice(e, 1, n), n; if (d(t, e)) return t[e] = n, n; var r = t.__ob__; return t._isVue || r && r.vmCount ? n : r ? (N(r.value, e, n), r.dep.notify(), n) : (t[e] = n, n) } function M(t, e) { if (Array.isArray(t) && c(e)) t.splice(e, 1); else { var n = t.__ob__; t._isVue || n && n.vmCount || d(t, e) && (delete t[e], n && n.dep.notify()) } } function D(t) { for (var e = void 0, n = 0, r = t.length; n < r; n++)(e = t[n]) && e.__ob__ && e.__ob__.dep.depend(), Array.isArray(e) && D(e) } function P(t, e) { if (!e) return t; for (var n, r, i, o = Object.keys(e), s = 0; s < o.length; s++)r = t[n = o[s]], i = e[n], d(t, n) ? a(r) && a(i) && P(r, i) : I(t, n, i); return t } function F(t, e, n) { return n ? t || e ? function () { var r = "function" == typeof e ? e.call(n) : e, i = "function" == typeof t ? t.call(n) : void 0; return r ? P(r, i) : i } : void 0 : e ? t ? function () { return P("function" == typeof e ? e.call(this) : e, "function" == typeof t ? t.call(this) : t) } : e : t } function R(t, e) { return e ? t ? t.concat(e) : Array.isArray(e) ? e : [e] : t } function H(t, e) { var n = Object.create(t || null); return e ? y(n, e) : n } function B(t) { var e = t.props; if (e) { var n, r, i = {}; if (Array.isArray(e)) for (n = e.length; n--;)"string" == typeof (r = e[n]) && (i[yi(r)] = { type: null }); else if (a(e)) for (var o in e) r = e[o], i[yi(o)] = a(r) ? r : { type: r }; t.props = i } } function U(t) { var e = t.inject; if (Array.isArray(e)) for (var n = t.inject = {}, r = 0; r < e.length; r++)n[e[r]] = e[r] } function V(t) { var e = t.directives; if (e) for (var n in e) { var r = e[n]; "function" == typeof r && (e[n] = { bind: r, update: r }) } } function z(t, e, n) { function r(r) { var i = no[r] || ro; c[r] = i(t[r], e[r], n, r) } "function" == typeof e && (e = e.options), B(e), U(e), V(e); var i = e.extends; if (i && (t = z(t, i, n)), e.mixins) for (var o = 0, a = e.mixins.length; o < a; o++)t = z(t, e.mixins[o], n); var s, c = {}; for (s in t) r(s); for (s in e) d(t, s) || r(s); return c } function K(t, e, n, r) { if ("string" == typeof n) { var i = t[e]; if (d(i, n)) return i[n]; var o = yi(n); if (d(i, o)) return i[o]; var a = gi(o); if (d(i, a)) return i[a]; var s = i[n] || i[o] || i[a]; return s } } function J(t, e, n, r) { var i = e[t], o = !d(n, t), a = n[t]; if (G(Boolean, i.type) && (o && !d(i, "default") ? a = !1 : G(String, i.type) || "" !== a && a !== bi(t) || (a = !0)), void 0 === a) { a = q(r, i, t); var s = to.shouldConvert; to.shouldConvert = !0, L(a), to.shouldConvert = s } return a } function q(t, e, n) { if (d(e, "default")) { var r = e.default; return t && t.$options.propsData && void 0 === t.$options.propsData[n] && void 0 !== t._props[n] ? t._props[n] : "function" == typeof r && "Function" !== W(e.type) ? r.call(t) : r } } function W(t) { var e = t && t.toString().match(/^\s*function (\w+)/); return e ? e[1] : "" } function G(t, e) { if (!Array.isArray(e)) return W(e) === W(t); for (var n = 0, r = e.length; n < r; n++)if (W(e[n]) === W(t)) return !0; return !1 } function Z(t) { return new io(void 0, void 0, void 0, String(t)) } function Y(t) { var e = new io(t.tag, t.data, t.children, t.text, t.elm, t.context, t.componentOptions, t.asyncFactory); return e.ns = t.ns, e.isStatic = t.isStatic, e.key = t.key, e.isComment = t.isComment, e.isCloned = !0, e } function Q(t) { for (var e = t.length, n = new Array(e), r = 0; r < e; r++)n[r] = Y(t[r]); return n } function X(t) { function e() { var t = arguments, n = e.fns; if (!Array.isArray(n)) return n.apply(null, arguments); for (var r = n.slice(), i = 0; i < r.length; i++)r[i].apply(null, t) } return e.fns = t, e } function tt(e, n, r, i, o) { var a, s, c, u; for (a in e) s = e[a], c = n[a], u = co(a), t(s) || (t(c) ? (t(s.fns) && (s = e[a] = X(s)), r(u.name, s, u.once, u.capture, u.passive)) : s !== c && (c.fns = s, e[a] = c)); for (a in n) t(e[a]) && i((u = co(a)).name, n[a], u.capture) } function et(r, i, o) { function a() { o.apply(this, arguments), p(s.fns, a) } var s, c = r[i]; t(c) ? s = X([a]) : e(c.fns) && n(c.merged) ? (s = c).fns.push(a) : s = X([c, a]), s.merged = !0, r[i] = s } function nt(n, r, i) { var o = r.options.props; if (!t(o)) { var a = {}, s = n.attrs, c = n.props; if (e(s) || e(c)) for (var u in o) { var l = bi(u); rt(a, c, u, l, !0) || rt(a, s, u, l, !1) } return a } } function rt(t, n, r, i, o) { if (e(n)) { if (d(n, r)) return t[r] = n[r], o || delete n[r], !0; if (d(n, i)) return t[r] = n[i], o || delete n[i], !0 } return !1 } function it(t) { for (var e = 0; e < t.length; e++)if (Array.isArray(t[e])) return Array.prototype.concat.apply([], t); return t } function ot(t) { return i(t) ? [Z(t)] : Array.isArray(t) ? st(t) : void 0 } function at(t) { return e(t) && e(t.text) && r(t.isComment) } function st(r, o) { var a, s, c, u = []; for (a = 0; a < r.length; a++)t(s = r[a]) || "boolean" == typeof s || (c = u[u.length - 1], Array.isArray(s) ? u.push.apply(u, st(s, (o || "") + "_" + a)) : i(s) ? at(c) ? c.text += String(s) : "" !== s && u.push(Z(s)) : at(s) && at(c) ? u[u.length - 1] = Z(c.text + s.text) : (n(r._isVList) && e(s.tag) && t(s.key) && e(o) && (s.key = "__vlist" + o + "_" + a + "__"), u.push(s))); return u } function ct(t, e) { return t.__esModule && t.default && (t = t.default), o(t) ? e.extend(t) : t } function ut(t, e, n, r, i) { var o = so(); return o.asyncFactory = t, o.asyncMeta = { data: e, context: n, children: r, tag: i }, o } function lt(r, i, a) { if (n(r.error) && e(r.errorComp)) return r.errorComp; if (e(r.resolved)) return r.resolved; if (n(r.loading) && e(r.loadingComp)) return r.loadingComp; if (!e(r.contexts)) { var s = r.contexts = [a], c = !0, u = function () { for (var t = 0, e = s.length; t < e; t++)s[t].$forceUpdate() }, l = C(function (t) { r.resolved = ct(t, i), c || u() }), f = C(function (t) { e(r.errorComp) && (r.error = !0, u()) }), p = r(l, f); return o(p) && ("function" == typeof p.then ? t(r.resolved) && p.then(l, f) : e(p.component) && "function" == typeof p.component.then && (p.component.then(l, f), e(p.error) && (r.errorComp = ct(p.error, i)), e(p.loading) && (r.loadingComp = ct(p.loading, i), 0 === p.delay ? r.loading = !0 : setTimeout(function () { t(r.resolved) && t(r.error) && (r.loading = !0, u()) }, p.delay || 200)), e(p.timeout) && setTimeout(function () { t(r.resolved) && f(null) }, p.timeout))), c = !1, r.loading ? r.loadingComp : r.resolved } r.contexts.push(a) } function ft(t) { if (Array.isArray(t)) for (var n = 0; n < t.length; n++) { var r = t[n]; if (e(r) && e(r.componentOptions)) return r } } function pt(t) { t._events = Object.create(null), t._hasHookEvent = !1; var e = t.$options._parentListeners; e && ht(t, e) } function dt(t, e, n) { n ? ao.$once(t, e) : ao.$on(t, e) } function vt(t, e) { ao.$off(t, e) } function ht(t, e, n) { ao = t, tt(e, n || {}, dt, vt, t) } function mt(t, e) { var n = {}; if (!t) return n; for (var r = [], i = 0, o = t.length; i < o; i++) { var a = t[i]; if (a.context !== e && a.functionalContext !== e || !a.data || null == a.data.slot) r.push(a); else { var s = a.data.slot, c = n[s] || (n[s] = []); "template" === a.tag ? c.push.apply(c, a.children) : c.push(a) } } return r.every(yt) || (n.default = r), n } function yt(t) { return t.isComment || " " === t.text } function gt(t, e) { e = e || {}; for (var n = 0; n < t.length; n++)Array.isArray(t[n]) ? gt(t[n], e) : e[t[n].key] = t[n].fn; return e } function _t(t) { var e = t.$options, n = e.parent; if (n && !e.abstract) { for (; n.$options.abstract && n.$parent;)n = n.$parent; n.$children.push(t) } t.$parent = n, t.$root = n ? n.$root : t, t.$children = [], t.$refs = {}, t._watcher = null, t._inactive = null, t._directInactive = !1, t._isMounted = !1, t._isDestroyed = !1, t._isBeingDestroyed = !1 } function bt(t, e, n) { t.$el = e, t.$options.render || (t.$options.render = so), At(t, "beforeMount"); var r; return r = function () { t._update(t._render(), n) }, t._watcher = new go(t, r, _), n = !1, null == t.$vnode && (t._isMounted = !0, At(t, "mounted")), t } function $t(t, e, n, r, i) { var o = !!(i || t.$options._renderChildren || r.data.scopedSlots || t.$scopedSlots !== Oi); if (t.$options._parentVnode = r, t.$vnode = r, t._vnode && (t._vnode.parent = r), t.$options._renderChildren = i, t.$attrs = r.data && r.data.attrs, t.$listeners = n, e && t.$options.props) { to.shouldConvert = !1; for (var a = t._props, s = t.$options._propKeys || [], c = 0; c < s.length; c++) { var u = s[c]; a[u] = J(u, t.$options.props, e, t) } to.shouldConvert = !0, t.$options.propsData = e } if (n) { var l = t.$options._parentListeners; t.$options._parentListeners = n, ht(t, n, l) } o && (t.$slots = mt(i, r.context), t.$forceUpdate()) } function Ct(t) { for (; t && (t = t.$parent);)if (t._inactive) return !0; return !1 } function wt(t, e) { if (e) { if (t._directInactive = !1, Ct(t)) return } else if (t._directInactive) return; if (t._inactive || null === t._inactive) { t._inactive = !1; for (var n = 0; n < t.$children.length; n++)wt(t.$children[n]); At(t, "activated") } } function xt(t, e) { if (!(e && (t._directInactive = !0, Ct(t)) || t._inactive)) { t._inactive = !0; for (var n = 0; n < t.$children.length; n++)xt(t.$children[n]); At(t, "deactivated") } } function At(t, e) { var n = t.$options[e]; if (n) for (var r = 0, i = n.length; r < i; r++)try { n[r].call(t) } catch (n) { k(n, t, e + " hook") } t._hasHookEvent && t.$emit("hook:" + e) } function kt() { mo = lo.length = fo.length = 0, po = {}, vo = ho = !1 } function Ot() { ho = !0; var t, e; for (lo.sort(function (t, e) { return t.id - e.id }), mo = 0; mo < lo.length; mo++)e = (t = lo[mo]).id, po[e] = null, t.run(); var n = fo.slice(), r = lo.slice(); kt(), Et(n), Tt(r), Ki && ki.devtools && Ki.emit("flush") } function Tt(t) { for (var e = t.length; e--;) { var n = t[e], r = n.vm; r._watcher === n && r._isMounted && At(r, "updated") } } function St(t) { t._inactive = !1, fo.push(t) } function Et(t) { for (var e = 0; e < t.length; e++)t[e]._inactive = !0, wt(t[e], !0) } function jt(t) { var e = t.id; if (null == po[e]) { if (po[e] = !0, ho) { for (var n = lo.length - 1; n > mo && lo[n].id > t.id;)n--; lo.splice(n + 1, 0, t) } else lo.push(t); vo || (vo = !0, qi(Ot)) } } function Lt(t) { _o.clear(), Nt(t, _o) } function Nt(t, e) { var n, r, i = Array.isArray(t); if ((i || o(t)) && Object.isExtensible(t)) { if (t.__ob__) { var a = t.__ob__.dep.id; if (e.has(a)) return; e.add(a) } if (i) for (n = t.length; n--;)Nt(t[n], e); else for (n = (r = Object.keys(t)).length; n--;)Nt(t[r[n]], e) } } function It(t, e, n) { bo.get = function () { return this[e][n] }, bo.set = function (t) { this[e][n] = t }, Object.defineProperty(t, n, bo) } function Mt(t) { t._watchers = []; var e = t.$options; e.props && Dt(t, e.props), e.methods && Ut(t, e.methods), e.data ? Pt(t) : L(t._data = {}, !0), e.computed && Rt(t, e.computed), e.watch && e.watch !== Ri && Vt(t, e.watch) } function Dt(t, e) { var n = t.$options.propsData || {}, r = t._props = {}, i = t.$options._propKeys = [], o = !t.$parent; to.shouldConvert = o; for (var a in e) !function (o) { i.push(o); var a = J(o, e, n, t); N(r, o, a), o in t || It(t, "_props", o) }(a); to.shouldConvert = !0 } function Pt(t) { var e = t.$options.data; a(e = t._data = "function" == typeof e ? Ft(e, t) : e || {}) || (e = {}); for (var n = Object.keys(e), r = t.$options.props, i = (t.$options.methods, n.length); i--;) { var o = n[i]; r && d(r, o) || w(o) || It(t, "_data", o) } L(e, !0) } function Ft(t, e) { try { return t.call(e) } catch (t) { return k(t, e, "data()"), {} } } function Rt(t, e) { var n = t._computedWatchers = Object.create(null); for (var r in e) { var i = e[r], o = "function" == typeof i ? i : i.get; n[r] = new go(t, o || _, _, $o), r in t || Ht(t, r, i) } } function Ht(t, e, n) { "function" == typeof n ? (bo.get = Bt(e), bo.set = _) : (bo.get = n.get ? !1 !== n.cache ? Bt(e) : n.get : _, bo.set = n.set ? n.set : _), Object.defineProperty(t, e, bo) } function Bt(t) { return function () { var e = this._computedWatchers && this._computedWatchers[t]; if (e) return e.dirty && e.evaluate(), Gi.target && e.depend(), e.value } } function Ut(t, e) { t.$options.props; for (var n in e) t[n] = null == e[n] ? _ : h(e[n], t) } function Vt(t, e) { for (var n in e) { var r = e[n]; if (Array.isArray(r)) for (var i = 0; i < r.length; i++)zt(t, n, r[i]); else zt(t, n, r) } } function zt(t, e, n, r) { return a(n) && (r = n, n = n.handler), "string" == typeof n && (n = t[n]), t.$watch(e, n, r) } function Kt(t) { var e = t.$options.provide; e && (t._provided = "function" == typeof e ? e.call(t) : e) } function Jt(t) { var e = qt(t.$options.inject, t); e && (to.shouldConvert = !1, Object.keys(e).forEach(function (n) { N(t, n, e[n]) }), to.shouldConvert = !0) } function qt(t, e) { if (t) { for (var n = Object.create(null), r = Ji ? Reflect.ownKeys(t) : Object.keys(t), i = 0; i < r.length; i++)for (var o = r[i], a = t[o], s = e; s;) { if (s._provided && a in s._provided) { n[o] = s._provided[a]; break } s = s.$parent } return n } } function Wt(t, n, r, i, o) { var a = {}, s = t.options.props; if (e(s)) for (var c in s) a[c] = J(c, s, n || {}); else e(r.attrs) && Gt(a, r.attrs), e(r.props) && Gt(a, r.props); var u = Object.create(i), l = t.options.render.call(null, function (t, e, n, r) { return ee(u, t, e, n, r, !0) }, { data: r, props: a, children: o, parent: i, listeners: r.on || {}, injections: qt(t.options.inject, i), slots: function () { return mt(o, i) } }); return l instanceof io && (l.functionalContext = i, l.functionalOptions = t.options, r.slot && ((l.data || (l.data = {})).slot = r.slot)), l } function Gt(t, e) { for (var n in e) t[yi(n)] = e[n] } function Zt(r, i, a, s, c) { if (!t(r)) { var u = a.$options._base; if (o(r) && (r = u.extend(r)), "function" == typeof r) { var l; if (t(r.cid) && (l = r, void 0 === (r = lt(l, u, a)))) return ut(l, i, a, s, c); i = i || {}, me(r), e(i.model) && te(r.options, i); var f = nt(i, r, c); if (n(r.options.functional)) return Wt(r, f, i, a, s); var p = i.on; if (i.on = i.nativeOn, n(r.options.abstract)) { var d = i.slot; i = {}, d && (i.slot = d) } Qt(i); var v = r.options.name || c; return new io("vue-component-" + r.cid + (v ? "-" + v : ""), i, void 0, void 0, void 0, a, { Ctor: r, propsData: f, listeners: p, tag: c, children: s }, l) } } } function Yt(t, n, r, i) { var o = t.componentOptions, a = { _isComponent: !0, parent: n, propsData: o.propsData, _componentTag: o.tag, _parentVnode: t, _parentListeners: o.listeners, _renderChildren: o.children, _parentElm: r || null, _refElm: i || null }, s = t.data.inlineTemplate; return e(s) && (a.render = s.render, a.staticRenderFns = s.staticRenderFns), new o.Ctor(a) } function Qt(t) { t.hook || (t.hook = {}); for (var e = 0; e < wo.length; e++) { var n = wo[e], r = t.hook[n], i = Co[n]; t.hook[n] = r ? Xt(i, r) : i } } function Xt(t, e) { return function (n, r, i, o) { t(n, r, i, o), e(n, r, i, o) } } function te(t, n) { var r = t.model && t.model.prop || "value", i = t.model && t.model.event || "input"; (n.props || (n.props = {}))[r] = n.model.value; var o = n.on || (n.on = {}); e(o[i]) ? o[i] = [n.model.callback].concat(o[i]) : o[i] = n.model.callback } function ee(t, e, r, o, a, s) { return (Array.isArray(r) || i(r)) && (a = o, o = r, r = void 0), n(s) && (a = Ao), ne(t, e, r, o, a) } function ne(t, n, r, i, o) { if (e(r) && e(r.__ob__)) return so(); if (e(r) && e(r.is) && (n = r.is), !n) return so(); Array.isArray(i) && "function" == typeof i[0] && ((r = r || {}).scopedSlots = { default: i[0] }, i.length = 0), o === Ao ? i = ot(i) : o === xo && (i = it(i)); var a, s; if ("string" == typeof n) { var c; s = ki.getTagNamespace(n), a = ki.isReservedTag(n) ? new io(ki.parsePlatformTagName(n), r, i, void 0, void 0, t) : e(c = K(t.$options, "components", n)) ? Zt(c, r, t, i, n) : new io(n, r, i, void 0, void 0, t) } else a = Zt(n, r, t, i); return e(a) ? (s && re(a, s), a) : so() } function re(n, r) { if (n.ns = r, "foreignObject" !== n.tag && e(n.children)) for (var i = 0, o = n.children.length; i < o; i++) { var a = n.children[i]; e(a.tag) && t(a.ns) && re(a, r) } } function ie(t, n) { var r, i, a, s, c; if (Array.isArray(t) || "string" == typeof t) for (r = new Array(t.length), i = 0, a = t.length; i < a; i++)r[i] = n(t[i], i); else if ("number" == typeof t) for (r = new Array(t), i = 0; i < t; i++)r[i] = n(i + 1, i); else if (o(t)) for (s = Object.keys(t), r = new Array(s.length), i = 0, a = s.length; i < a; i++)c = s[i], r[i] = n(t[c], c, i); return e(r) && (r._isVList = !0), r } function oe(t, e, n, r) { var i = this.$scopedSlots[t]; if (i) return n = n || {}, r && (n = y(y({}, r), n)), i(n) || e; var o = this.$slots[t]; return o || e } function ae(t) { return K(this.$options, "filters", t, !0) || Ci } function se(t, e, n) { var r = ki.keyCodes[e] || n; return Array.isArray(r) ? -1 === r.indexOf(t) : r !== t } function ce(t, e, n, r, i) { if (n) if (o(n)) { Array.isArray(n) && (n = g(n)); var a; for (var s in n) !function (o) { if ("class" === o || "style" === o || vi(o)) a = t; else { var s = t.attrs && t.attrs.type; a = r || ki.mustUseProp(e, s, o) ? t.domProps || (t.domProps = {}) : t.attrs || (t.attrs = {}) } o in a || (a[o] = n[o], i && ((t.on || (t.on = {}))["update:" + o] = function (t) { n[o] = t })) }(s) } else; return t } function ue(t, e) { var n = this._staticTrees[t]; return n && !e ? Array.isArray(n) ? Q(n) : Y(n) : (n = this._staticTrees[t] = this.$options.staticRenderFns[t].call(this._renderProxy), fe(n, "__static__" + t, !1), n) } function le(t, e, n) { return fe(t, "__once__" + e + (n ? "_" + n : ""), !0), t } function fe(t, e, n) { if (Array.isArray(t)) for (var r = 0; r < t.length; r++)t[r] && "string" != typeof t[r] && pe(t[r], e + "_" + r, n); else pe(t, e, n) } function pe(t, e, n) { t.isStatic = !0, t.key = e, t.isOnce = n } function de(t, e) { if (e) if (a(e)) { var n = t.on = t.on ? y({}, t.on) : {}; for (var r in e) { var i = n[r], o = e[r]; n[r] = i ? [].concat(o, i) : o } } else; return t } function ve(t) { t._vnode = null, t._staticTrees = null; var e = t.$vnode = t.$options._parentVnode, n = e && e.context; t.$slots = mt(t.$options._renderChildren, n), t.$scopedSlots = Oi, t._c = function (e, n, r, i) { return ee(t, e, n, r, i, !1) }, t.$createElement = function (e, n, r, i) { return ee(t, e, n, r, i, !0) }; var r = e && e.data; N(t, "$attrs", r && r.attrs, null, !0), N(t, "$listeners", t.$options._parentListeners, null, !0) } function he(t, e) { var n = t.$options = Object.create(t.constructor.options); n.parent = e.parent, n.propsData = e.propsData, n._parentVnode = e._parentVnode, n._parentListeners = e._parentListeners, n._renderChildren = e._renderChildren, n._componentTag = e._componentTag, n._parentElm = e._parentElm, n._refElm = e._refElm, e.render && (n.render = e.render, n.staticRenderFns = e.staticRenderFns) } function me(t) { var e = t.options; if (t.super) { var n = me(t.super); if (n !== t.superOptions) { t.superOptions = n; var r = ye(t); r && y(t.extendOptions, r), (e = t.options = z(n, t.extendOptions)).name && (e.components[e.name] = t) } } return e } function ye(t) { var e, n = t.options, r = t.extendOptions, i = t.sealedOptions; for (var o in n) n[o] !== i[o] && (e || (e = {}), e[o] = ge(n[o], r[o], i[o])); return e } function ge(t, e, n) { if (Array.isArray(t)) { var r = []; n = Array.isArray(n) ? n : [n], e = Array.isArray(e) ? e : [e]; for (var i = 0; i < t.length; i++)(e.indexOf(t[i]) >= 0 || n.indexOf(t[i]) < 0) && r.push(t[i]); return r } return t } function _e(t) { this._init(t) } function be(t) { t.use = function (t) { var e = this._installedPlugins || (this._installedPlugins = []); if (e.indexOf(t) > -1) return this; var n = m(arguments, 1); return n.unshift(this), "function" == typeof t.install ? t.install.apply(t, n) : "function" == typeof t && t.apply(null, n), e.push(t), this } } function $e(t) { t.mixin = function (t) { return this.options = z(this.options, t), this } } function Ce(t) { t.cid = 0; var e = 1; t.extend = function (t) { t = t || {}; var n = this, r = n.cid, i = t._Ctor || (t._Ctor = {}); if (i[r]) return i[r]; var o = t.name || n.options.name, a = function (t) { this._init(t) }; return a.prototype = Object.create(n.prototype), a.prototype.constructor = a, a.cid = e++ , a.options = z(n.options, t), a.super = n, a.options.props && we(a), a.options.computed && xe(a), a.extend = n.extend, a.mixin = n.mixin, a.use = n.use, xi.forEach(function (t) { a[t] = n[t] }), o && (a.options.components[o] = a), a.superOptions = n.options, a.extendOptions = t, a.sealedOptions = y({}, a.options), i[r] = a, a } } function we(t) { var e = t.options.props; for (var n in e) It(t.prototype, "_props", n) } function xe(t) { var e = t.options.computed; for (var n in e) Ht(t.prototype, n, e[n]) } function Ae(t) { xi.forEach(function (e) { t[e] = function (t, n) { return n ? ("component" === e && a(n) && (n.name = n.name || t, n = this.options._base.extend(n)), "directive" === e && "function" == typeof n && (n = { bind: n, update: n }), this.options[e + "s"][t] = n, n) : this.options[e + "s"][t] } }) } function ke(t) { return t && (t.Ctor.options.name || t.tag) } function Oe(t, e) { return Array.isArray(t) ? t.indexOf(e) > -1 : "string" == typeof t ? t.split(",").indexOf(e) > -1 : !!s(t) && t.test(e) } function Te(t, e, n) { for (var r in t) { var i = t[r]; if (i) { var o = ke(i.componentOptions); o && !n(o) && (i !== e && Se(i), t[r] = null) } } } function Se(t) { t && t.componentInstance.$destroy() } function Ee(t) { for (var n = t.data, r = t, i = t; e(i.componentInstance);)(i = i.componentInstance._vnode).data && (n = je(i.data, n)); for (; e(r = r.parent);)r.data && (n = je(n, r.data)); return Le(n.staticClass, n.class) } function je(t, n) { return { staticClass: Ne(t.staticClass, n.staticClass), class: e(t.class) ? [t.class, n.class] : n.class } } function Le(t, n) { return e(t) || e(n) ? Ne(t, Ie(n)) : "" } function Ne(t, e) { return t ? e ? t + " " + e : t : e || "" } function Ie(t) { return Array.isArray(t) ? Me(t) : o(t) ? De(t) : "string" == typeof t ? t : "" } function Me(t) { for (var n, r = "", i = 0, o = t.length; i < o; i++)e(n = Ie(t[i])) && "" !== n && (r && (r += " "), r += n); return r } function De(t) { var e = ""; for (var n in t) t[n] && (e && (e += " "), e += n); return e } function Pe(t) { return Go(t) ? "svg" : "math" === t ? "math" : void 0 } function Fe(t) { if ("string" == typeof t) { var e = document.querySelector(t); return e || document.createElement("div") } return t } function Re(t, e) { var n = t.data.ref; if (n) { var r = t.context, i = t.componentInstance || t.elm, o = r.$refs; e ? Array.isArray(o[n]) ? p(o[n], i) : o[n] === i && (o[n] = void 0) : t.data.refInFor ? Array.isArray(o[n]) ? o[n].indexOf(i) < 0 && o[n].push(i) : o[n] = [i] : o[n] = i } } function He(r, i) { return r.key === i.key && (r.tag === i.tag && r.isComment === i.isComment && e(r.data) === e(i.data) && Be(r, i) || n(r.isAsyncPlaceholder) && r.asyncFactory === i.asyncFactory && t(i.asyncFactory.error)) } function Be(t, n) { if ("input" !== t.tag) return !0; var r; return (e(r = t.data) && e(r = r.attrs) && r.type) === (e(r = n.data) && e(r = r.attrs) && r.type) } function Ue(t, n, r) { var i, o, a = {}; for (i = n; i <= r; ++i)e(o = t[i].key) && (a[o] = i); return a } function Ve(t, e) { (t.data.directives || e.data.directives) && ze(t, e) } function ze(t, e) { var n, r, i, o = t === ta, a = e === ta, s = Ke(t.data.directives, t.context), c = Ke(e.data.directives, e.context), u = [], l = []; for (n in c) r = s[n], i = c[n], r ? (i.oldValue = r.value, qe(i, "update", e, t), i.def && i.def.componentUpdated && l.push(i)) : (qe(i, "bind", e, t), i.def && i.def.inserted && u.push(i)); if (u.length) { var f = function () { for (var n = 0; n < u.length; n++)qe(u[n], "inserted", e, t) }; o ? et(e.data.hook || (e.data.hook = {}), "insert", f) : f() } if (l.length && et(e.data.hook || (e.data.hook = {}), "postpatch", function () { for (var n = 0; n < l.length; n++)qe(l[n], "componentUpdated", e, t) }), !o) for (n in s) c[n] || qe(s[n], "unbind", t, t, a) } function Ke(t, e) { var n = Object.create(null); if (!t) return n; var r, i; for (r = 0; r < t.length; r++)(i = t[r]).modifiers || (i.modifiers = ra), n[Je(i)] = i, i.def = K(e.$options, "directives", i.name, !0); return n } function Je(t) { return t.rawName || t.name + "." + Object.keys(t.modifiers || {}).join(".") } function qe(t, e, n, r, i) { var o = t.def && t.def[e]; if (o) try { o(n.elm, t, n, r, i) } catch (r) { k(r, n.context, "directive " + t.name + " " + e + " hook") } } function We(n, r) { var i = r.componentOptions; if (!(e(i) && !1 === i.Ctor.options.inheritAttrs || t(n.data.attrs) && t(r.data.attrs))) { var o, a, s = r.elm, c = n.data.attrs || {}, u = r.data.attrs || {}; e(u.__ob__) && (u = r.data.attrs = y({}, u)); for (o in u) a = u[o], c[o] !== a && Ge(s, o, a); Ii && u.value !== c.value && Ge(s, "value", u.value); for (o in c) t(u[o]) && (zo(o) ? s.removeAttributeNS(Vo, Ko(o)) : Bo(o) || s.removeAttribute(o)) } } function Ge(t, e, n) { Uo(e) ? Jo(n) ? t.removeAttribute(e) : t.setAttribute(e, e) : Bo(e) ? t.setAttribute(e, Jo(n) || "false" === n ? "false" : "true") : zo(e) ? Jo(n) ? t.removeAttributeNS(Vo, Ko(e)) : t.setAttributeNS(Vo, e, n) : Jo(n) ? t.removeAttribute(e) : t.setAttribute(e, n) } function Ze(n, r) { var i = r.elm, o = r.data, a = n.data; if (!(t(o.staticClass) && t(o.class) && (t(a) || t(a.staticClass) && t(a.class)))) { var s = Ee(r), c = i._transitionClasses; e(c) && (s = Ne(s, Ie(c))), s !== i._prevClass && (i.setAttribute("class", s), i._prevClass = s) } } function Ye(t) { function e() { (a || (a = [])).push(t.slice(v, i).trim()), v = i + 1 } var n, r, i, o, a, s = !1, c = !1, u = !1, l = !1, f = 0, p = 0, d = 0, v = 0; for (i = 0; i < t.length; i++)if (r = n, n = t.charCodeAt(i), s) 39 === n && 92 !== r && (s = !1); else if (c) 34 === n && 92 !== r && (c = !1); else if (u) 96 === n && 92 !== r && (u = !1); else if (l) 47 === n && 92 !== r && (l = !1); else if (124 !== n || 124 === t.charCodeAt(i + 1) || 124 === t.charCodeAt(i - 1) || f || p || d) { switch (n) { case 34: c = !0; break; case 39: s = !0; break; case 96: u = !0; break; case 40: d++; break; case 41: d--; break; case 91: p++; break; case 93: p--; break; case 123: f++; break; case 125: f-- }if (47 === n) { for (var h = i - 1, m = void 0; h >= 0 && " " === (m = t.charAt(h)); h--); m && sa.test(m) || (l = !0) } } else void 0 === o ? (v = i + 1, o = t.slice(0, i).trim()) : e(); if (void 0 === o ? o = t.slice(0, i).trim() : 0 !== v && e(), a) for (i = 0; i < a.length; i++)o = Qe(o, a[i]); return o } function Qe(t, e) { var n = e.indexOf("("); return n < 0 ? '_f("' + e + '")(' + t + ")" : '_f("' + e.slice(0, n) + '")(' + t + "," + e.slice(n + 1) } function Xe(t) { console.error("[Vue compiler]: " + t) } function tn(t, e) { return t ? t.map(function (t) { return t[e] }).filter(function (t) { return t }) : [] } function en(t, e, n) { (t.props || (t.props = [])).push({ name: e, value: n }) } function nn(t, e, n) { (t.attrs || (t.attrs = [])).push({ name: e, value: n }) } function rn(t, e, n, r, i, o) { (t.directives || (t.directives = [])).push({ name: e, rawName: n, value: r, arg: i, modifiers: o }) } function on(t, e, n, r, i, o) { r && r.capture && (delete r.capture, e = "!" + e), r && r.once && (delete r.once, e = "~" + e), r && r.passive && (delete r.passive, e = "&" + e); var a; r && r.native ? (delete r.native, a = t.nativeEvents || (t.nativeEvents = {})) : a = t.events || (t.events = {}); var s = { value: n, modifiers: r }, c = a[e]; Array.isArray(c) ? i ? c.unshift(s) : c.push(s) : a[e] = c ? i ? [s, c] : [c, s] : s } function an(t, e, n) { var r = sn(t, ":" + e) || sn(t, "v-bind:" + e); if (null != r) return Ye(r); if (!1 !== n) { var i = sn(t, e); if (null != i) return JSON.stringify(i) } } function sn(t, e) { var n; if (null != (n = t.attrsMap[e])) for (var r = t.attrsList, i = 0, o = r.length; i < o; i++)if (r[i].name === e) { r.splice(i, 1); break } return n } function cn(t, e, n) { var r = n || {}, i = r.number, o = "$$v"; r.trim && (o = "(typeof $$v === 'string'? $$v.trim(): $$v)"), i && (o = "_n(" + o + ")"); var a = un(e, o); t.model = { value: "(" + e + ")", expression: '"' + e + '"', callback: "function ($$v) {" + a + "}" } } function un(t, e) { var n = ln(t); return null === n.idx ? t + "=" + e : "$set(" + n.exp + ", " + n.idx + ", " + e + ")" } function ln(t) { if (Eo = t, So = Eo.length, Lo = No = Io = 0, t.indexOf("[") < 0 || t.lastIndexOf("]") < So - 1) return { exp: t, idx: null }; for (; !pn();)dn(jo = fn()) ? hn(jo) : 91 === jo && vn(jo); return { exp: t.substring(0, No), idx: t.substring(No + 1, Io) } } function fn() { return Eo.charCodeAt(++Lo) } function pn() { return Lo >= So } function dn(t) { return 34 === t || 39 === t } function vn(t) { var e = 1; for (No = Lo; !pn();)if (t = fn(), dn(t)) hn(t); else if (91 === t && e++ , 93 === t && e-- , 0 === e) { Io = Lo; break } } function hn(t) { for (var e = t; !pn() && (t = fn()) !== e;); } function mn(t, e, n) { var r = n && n.number, i = an(t, "value") || "null", o = an(t, "true-value") || "true", a = an(t, "false-value") || "false"; en(t, "checked", "Array.isArray(" + e + ")?_i(" + e + "," + i + ")>-1" + ("true" === o ? ":(" + e + ")" : ":_q(" + e + "," + o + ")")), on(t, ua, "var $$a=" + e + ",$$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&&(" + e + "=$$a.concat($$v))}else{$$i>-1&&(" + e + "=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{" + un(e, "$$c") + "}", null, !0) } function yn(t, e, n) { var r = n && n.number, i = an(t, "value") || "null"; en(t, "checked", "_q(" + e + "," + (i = r ? "_n(" + i + ")" : i) + ")"), on(t, ua, un(e, i), null, !0) } function gn(t, e, 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") + "})") + ";"; on(t, "change", r = r + " " + un(e, "$event.target.multiple ? $$selectedVal : $$selectedVal[0]"), null, !0) } function _n(t, e, n) { var r = t.attrsMap.type, i = n || {}, o = i.lazy, a = i.number, s = i.trim, c = !o && "range" !== r, u = o ? "change" : "range" === r ? ca : "input", l = "$event.target.value"; s && (l = "$event.target.value.trim()"), a && (l = "_n(" + l + ")"); var f = un(e, l); c && (f = "if($event.target.composing)return;" + f), en(t, "value", "(" + e + ")"), on(t, u, f, null, !0), (s || a) && on(t, "blur", "$forceUpdate()") } function bn(t) { var n; e(t[ca]) && (t[n = Ni ? "change" : "input"] = [].concat(t[ca], t[n] || []), delete t[ca]), e(t[ua]) && (t[n = Fi ? "click" : "change"] = [].concat(t[ua], t[n] || []), delete t[ua]) } function $n(t, e, n, r, i) { if (n) { var o = e, a = Do; e = function (n) { null !== (1 === arguments.length ? o(n) : o.apply(null, arguments)) && Cn(t, e, r, a) } } Do.addEventListener(t, e, Hi ? { capture: r, passive: i } : r) } function Cn(t, e, n, r) { (r || Do).removeEventListener(t, e, n) } function wn(e, n) { if (!t(e.data.on) || !t(n.data.on)) { var r = n.data.on || {}, i = e.data.on || {}; Do = n.elm, bn(r), tt(r, i, $n, Cn, n.context) } } function xn(n, r) { if (!t(n.data.domProps) || !t(r.data.domProps)) { var i, o, a = r.elm, s = n.data.domProps || {}, c = r.data.domProps || {}; e(c.__ob__) && (c = r.data.domProps = y({}, c)); for (i in s) t(c[i]) && (a[i] = ""); for (i in c) if (o = c[i], "textContent" !== i && "innerHTML" !== i || (r.children && (r.children.length = 0), o !== s[i])) if ("value" === i) { a._value = o; var u = t(o) ? "" : String(o); An(a, r, u) && (a.value = u) } else a[i] = o } } function An(t, e, n) { return !t.composing && ("option" === e.tag || kn(t, n) || On(t, n)) } function kn(t, e) { var n = !0; try { n = document.activeElement !== t } catch (t) { } return n && t.value !== e } function On(t, n) { var r = t.value, i = t._vModifiers; return e(i) && i.number ? l(r) !== l(n) : e(i) && i.trim ? r.trim() !== n.trim() : r !== n } function Tn(t) { var e = Sn(t.style); return t.staticStyle ? y(t.staticStyle, e) : e } function Sn(t) { return Array.isArray(t) ? g(t) : "string" == typeof t ? pa(t) : t } function En(t, e) { var n, r = {}; if (e) for (var i = t; i.componentInstance;)(i = i.componentInstance._vnode).data && (n = Tn(i.data)) && y(r, n); (n = Tn(t.data)) && y(r, n); for (var o = t; o = o.parent;)o.data && (n = Tn(o.data)) && y(r, n); return r } function jn(n, r) { var i = r.data, o = n.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 = Sn(r.data.style) || {}; r.data.normalizedStyle = e(p.__ob__) ? y({}, p) : p; var d = En(r, !0); for (s in f) t(d[s]) && ha(c, s, ""); for (s in d) (a = d[s]) !== f[s] && ha(c, s, null == a ? "" : a) } } function Ln(t, e) { if (e && (e = e.trim())) if (t.classList) e.indexOf(" ") > -1 ? e.split(/\s+/).forEach(function (e) { return t.classList.add(e) }) : t.classList.add(e); else { var n = " " + (t.getAttribute("class") || "") + " "; n.indexOf(" " + e + " ") < 0 && t.setAttribute("class", (n + e).trim()) } } function Nn(t, e) { if (e && (e = e.trim())) if (t.classList) e.indexOf(" ") > -1 ? e.split(/\s+/).forEach(function (e) { return t.classList.remove(e) }) : t.classList.remove(e), t.classList.length || t.removeAttribute("class"); else { for (var n = " " + (t.getAttribute("class") || "") + " ", r = " " + e + " "; n.indexOf(r) >= 0;)n = n.replace(r, " "); (n = n.trim()) ? t.setAttribute("class", n) : t.removeAttribute("class") } } function In(t) { if (t) { if ("object" == typeof t) { var e = {}; return !1 !== t.css && y(e, _a(t.name || "v")), y(e, t), e } return "string" == typeof t ? _a(t) : void 0 } } function Mn(t) { Oa(function () { Oa(t) }) } function Dn(t, e) { var n = t._transitionClasses || (t._transitionClasses = []); n.indexOf(e) < 0 && (n.push(e), Ln(t, e)) } function Pn(t, e) { t._transitionClasses && p(t._transitionClasses, e), Nn(t, e) } function Fn(t, e, n) { var r = Rn(t, e), i = r.type, o = r.timeout, a = r.propCount; if (!i) return n(); var s = i === $a ? xa : ka, c = 0, u = function () { t.removeEventListener(s, l), n() }, l = function (e) { e.target === t && ++c >= a && u() }; setTimeout(function () { c < a && u() }, o + 1), t.addEventListener(s, l) } function Rn(t, e) { var n, r = window.getComputedStyle(t), i = r[wa + "Delay"].split(", "), o = r[wa + "Duration"].split(", "), a = Hn(i, o), s = r[Aa + "Delay"].split(", "), c = r[Aa + "Duration"].split(", "), u = Hn(s, c), l = 0, f = 0; return e === $a ? a > 0 && (n = $a, l = a, f = o.length) : e === Ca ? u > 0 && (n = Ca, l = u, f = c.length) : f = (n = (l = Math.max(a, u)) > 0 ? a > u ? $a : Ca : null) ? n === $a ? o.length : c.length : 0, { type: n, timeout: l, propCount: f, hasTransform: n === $a && Ta.test(r[wa + "Property"]) } } function Hn(t, e) { for (; t.length < e.length;)t = t.concat(t); return Math.max.apply(null, e.map(function (e, n) { return Bn(e) + Bn(t[n]) })) } function Bn(t) { return 1e3 * Number(t.slice(0, -1)) } function Un(n, r) { var i = n.elm; e(i._leaveCb) && (i._leaveCb.cancelled = !0, i._leaveCb()); var a = In(n.data.transition); if (!t(a) && !e(i._enterCb) && 1 === i.nodeType) { for (var s = a.css, c = a.type, u = a.enterClass, f = 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, x = a.appearCancelled, A = a.duration, k = uo, O = uo.$vnode; O && O.parent;)k = (O = O.parent).context; var T = !k._isMounted || !n.isRootInsert; if (!T || $ || "" === $) { var S = T && d ? d : u, E = T && h ? h : p, j = T && v ? v : f, L = T ? b || m : m, N = T && "function" == typeof $ ? $ : y, I = T ? w || g : g, M = T ? x || _ : _, D = l(o(A) ? A.enter : A), P = !1 !== s && !Ii, F = Kn(N), R = i._enterCb = C(function () { P && (Pn(i, j), Pn(i, E)), R.cancelled ? (P && Pn(i, S), M && M(i)) : I && I(i), i._enterCb = null }); n.data.show || et(n.data.hook || (n.data.hook = {}), "insert", function () { var t = i.parentNode, e = t && t._pending && t._pending[n.key]; e && e.tag === n.tag && e.elm._leaveCb && e.elm._leaveCb(), N && N(i, R) }), L && L(i), P && (Dn(i, S), Dn(i, E), Mn(function () { Dn(i, j), Pn(i, S), R.cancelled || F || (zn(D) ? setTimeout(R, D) : Fn(i, c, R)) })), n.data.show && (r && r(), N && N(i, R)), P || F || R() } } } function Vn(n, r) { function i() { x.cancelled || (n.data.show || ((a.parentNode._pending || (a.parentNode._pending = {}))[n.key] = n), v && v(a), b && (Dn(a, f), Dn(a, d), Mn(function () { Dn(a, p), Pn(a, f), x.cancelled || $ || (zn(w) ? setTimeout(x, w) : Fn(a, u, x)) })), h && h(a, x), b || $ || x()) } var a = n.elm; e(a._enterCb) && (a._enterCb.cancelled = !0, a._enterCb()); var s = In(n.data.transition); if (t(s)) return r(); if (!e(a._leaveCb) && 1 === a.nodeType) { var c = s.css, u = s.type, f = s.leaveClass, p = s.leaveToClass, d = s.leaveActiveClass, v = s.beforeLeave, h = s.leave, m = s.afterLeave, y = s.leaveCancelled, g = s.delayLeave, _ = s.duration, b = !1 !== c && !Ii, $ = Kn(h), w = l(o(_) ? _.leave : _), x = a._leaveCb = C(function () { a.parentNode && a.parentNode._pending && (a.parentNode._pending[n.key] = null), b && (Pn(a, p), Pn(a, d)), x.cancelled ? (b && Pn(a, f), y && y(a)) : (r(), m && m(a)), a._leaveCb = null }); g ? g(i) : i() } } function zn(t) { return "number" == typeof t && !isNaN(t) } function Kn(n) { if (t(n)) return !1; var r = n.fns; return e(r) ? Kn(Array.isArray(r) ? r[0] : r) : (n._length || n.length) > 1 } function Jn(t, e) { !0 !== e.data.show && Un(e) } function qn(t, e, n) { var r = e.value, i = t.multiple; if (!i || Array.isArray(r)) { for (var o, a, s = 0, c = t.options.length; s < c; s++)if (a = t.options[s], i) o = $(r, Wn(a)) > -1, a.selected !== o && (a.selected = o); else if (b(Wn(a), r)) return void (t.selectedIndex !== s && (t.selectedIndex = s)); i || (t.selectedIndex = -1) } } function Wn(t) { return "_value" in t ? t._value : t.value } function Gn(t) { t.target.composing = !0 } function Zn(t) { t.target.composing && (t.target.composing = !1, Yn(t.target, "input")) } function Yn(t, e) { var n = document.createEvent("HTMLEvents"); n.initEvent(e, !0, !0), t.dispatchEvent(n) } function Qn(t) { return !t.componentInstance || t.data && t.data.transition ? t : Qn(t.componentInstance._vnode) } function Xn(t) { var e = t && t.componentOptions; return e && e.Ctor.options.abstract ? Xn(ft(e.children)) : t } function tr(t) { var e = {}, n = t.$options; for (var r in n.propsData) e[r] = t[r]; var i = n._parentListeners; for (var o in i) e[yi(o)] = i[o]; return e } function er(t, e) { if (/\d-keep-alive$/.test(e.tag)) return t("keep-alive", { props: e.componentOptions.propsData }) } function nr(t) { for (; t = t.parent;)if (t.data.transition) return !0 } function rr(t, e) { return e.key === t.key && e.tag === t.tag } function ir(t) { return t.isComment && t.asyncFactory } function or(t) { t.elm._moveCb && t.elm._moveCb(), t.elm._enterCb && t.elm._enterCb() } function ar(t) { t.data.newPos = t.elm.getBoundingClientRect() } function sr(t) { var e = t.data.pos, n = t.data.newPos, r = e.left - n.left, i = e.top - n.top; if (r || i) { t.data.moved = !0; var o = t.elm.style; o.transform = o.WebkitTransform = "translate(" + r + "px," + i + "px)", o.transitionDuration = "0s" } } function cr(t, e) { var n = e ? Ha(e) : Fa; if (n.test(t)) { for (var r, i, o = [], a = n.lastIndex = 0; r = n.exec(t);) { (i = r.index) > a && o.push(JSON.stringify(t.slice(a, i))); var s = Ye(r[1].trim()); o.push("_s(" + s + ")"), a = i + r[0].length } return a < t.length && o.push(JSON.stringify(t.slice(a))), o.join("+") } } function ur(t, e) { var n = e ? $s : bs; return t.replace(n, function (t) { return _s[t] }) } function lr(t, e) { function n(e) { l += e, t = t.substring(e) } function r(t, n, r) { var i, s; if (null == n && (n = l), null == r && (r = l), t && (s = t.toLowerCase()), t) for (i = a.length - 1; i >= 0 && a[i].lowerCasedTag !== s; i--); else i = 0; if (i >= 0) { for (var c = a.length - 1; c >= i; c--)e.end && e.end(a[c].tag, n, r); a.length = i, o = i && a[i - 1].tag } else "br" === s ? e.start && e.start(t, [], !0, n, r) : "p" === s && (e.start && e.start(t, [], !1, n, r), e.end && e.end(t, n, r)) } for (var i, o, a = [], s = e.expectHTML, c = e.isUnaryTag || $i, u = e.canBeLeftOpenTag || $i, l = 0; t;) { if (i = t, o && ys(o)) { var f = 0, p = o.toLowerCase(), d = gs[p] || (gs[p] = new RegExp("([\\s\\S]*?)(]*>)", "i")), v = t.replace(d, function (t, n, r) { return f = r.length, ys(p) || "noscript" === p || (n = n.replace(//g, "$1").replace(//g, "$1")), ws(p, n) && (n = n.slice(1)), e.chars && e.chars(n), "" }); l += t.length - v.length, t = v, r(p, l - f, l) } else { var h = t.indexOf("<"); if (0 === h) { if (is.test(t)) { var m = t.indexOf("--\x3e"); if (m >= 0) { e.shouldKeepComment && e.comment(t.substring(4, m)), n(m + 3); continue } } if (os.test(t)) { var y = t.indexOf("]>"); if (y >= 0) { n(y + 2); continue } } var g = t.match(rs); if (g) { n(g[0].length); continue } var _ = t.match(ns); if (_) { var b = l; n(_[0].length), r(_[1], b, l); continue } var $ = function () { var e = t.match(ts); if (e) { var r = { tagName: e[1], attrs: [], start: l }; n(e[0].length); for (var i, o; !(i = t.match(es)) && (o = t.match(Ya));)n(o[0].length), r.attrs.push(o); if (i) return r.unarySlash = i[1], n(i[0].length), r.end = l, r } }(); if ($) { !function (t) { var n = t.tagName, i = t.unarySlash; s && ("p" === o && Ka(n) && r(o), u(n) && o === n && r(n)); for (var l = c(n) || !!i, f = t.attrs.length, p = new Array(f), d = 0; d < f; d++) { var v = t.attrs[d]; as && -1 === v[0].indexOf('""') && ("" === v[3] && delete v[3], "" === v[4] && delete v[4], "" === v[5] && delete v[5]); var h = v[3] || v[4] || v[5] || ""; p[d] = { name: v[1], value: ur(h, e.shouldDecodeNewlines) } } l || (a.push({ tag: n, lowerCasedTag: n.toLowerCase(), attrs: p }), o = n), e.start && e.start(n, p, l, t.start, t.end) }($), ws(o, t) && n(1); continue } } var C = void 0, w = void 0, x = void 0; if (h >= 0) { for (w = t.slice(h); !(ns.test(w) || ts.test(w) || is.test(w) || os.test(w) || (x = w.indexOf("<", 1)) < 0);)h += x, w = t.slice(h); C = t.substring(0, h), n(h) } h < 0 && (C = t, t = ""), e.chars && C && e.chars(C) } if (t === i) { e.chars && e.chars(t); break } } r() } function fr(t, e) { function n(t) { t.pre && (s = !1), ps(t.tag) && (c = !1) } ss = e.warn || Xe, ps = e.isPreTag || $i, ds = e.mustUseProp || $i, vs = e.getTagNamespace || $i, us = tn(e.modules, "transformNode"), ls = tn(e.modules, "preTransformNode"), fs = tn(e.modules, "postTransformNode"), cs = e.delimiters; var r, i, o = [], a = !1 !== e.preserveWhitespace, s = !1, c = !1; return lr(t, { warn: ss, expectHTML: e.expectHTML, isUnaryTag: e.isUnaryTag, canBeLeftOpenTag: e.canBeLeftOpenTag, shouldDecodeNewlines: e.shouldDecodeNewlines, shouldKeepComment: e.comments, start: function (t, a, u) { function l(t) { } var f = i && i.ns || vs(t); Ni && "svg" === f && (a = Er(a)); var p = { type: 1, tag: t, attrsList: a, attrsMap: Or(a), parent: i, children: [] }; f && (p.ns = f), Sr(p) && !zi() && (p.forbidden = !0); for (var d = 0; d < ls.length; d++)ls[d](p, e); if (s || (pr(p), p.pre && (s = !0)), ps(p.tag) && (c = !0), s) dr(p); else { mr(p), yr(p), $r(p), vr(p), p.plain = !p.key && !a.length, hr(p), Cr(p), wr(p); for (var v = 0; v < us.length; v++)us[v](p, e); xr(p) } if (r ? o.length || r.if && (p.elseif || p.else) && (l(), br(r, { exp: p.elseif, block: p })) : (r = p, l()), i && !p.forbidden) if (p.elseif || p.else) gr(p, i); else if (p.slotScope) { i.plain = !1; var h = p.slotTarget || '"default"'; (i.scopedSlots || (i.scopedSlots = {}))[h] = p } else i.children.push(p), p.parent = i; u ? n(p) : (i = p, o.push(p)); for (var m = 0; m < fs.length; m++)fs[m](p, e) }, end: function () { var t = o[o.length - 1], e = t.children[t.children.length - 1]; e && 3 === e.type && " " === e.text && !c && t.children.pop(), o.length -= 1, i = o[o.length - 1], n(t) }, chars: function (t) { if (i && (!Ni || "textarea" !== i.tag || i.attrsMap.placeholder !== t)) { var e = i.children; if (t = c || t.trim() ? Tr(i) ? t : js(t) : a && e.length ? " " : "") { var n; !s && " " !== t && (n = cr(t, cs)) ? e.push({ type: 2, expression: n, text: t }) : " " === t && e.length && " " === e[e.length - 1].text || e.push({ type: 3, text: t }) } } }, comment: function (t) { i.children.push({ type: 3, text: t, isComment: !0 }) } }), r } function pr(t) { null != sn(t, "v-pre") && (t.pre = !0) } function dr(t) { var e = t.attrsList.length; if (e) for (var n = t.attrs = new Array(e), r = 0; r < e; r++)n[r] = { name: t.attrsList[r].name, value: JSON.stringify(t.attrsList[r].value) }; else t.pre || (t.plain = !0) } function vr(t) { var e = an(t, "key"); e && (t.key = e) } function hr(t) { var e = an(t, "ref"); e && (t.ref = e, t.refInFor = Ar(t)) } function mr(t) { var e; if (e = sn(t, "v-for")) { var n = e.match(ks); if (!n) return; t.for = n[2].trim(); var r = n[1].trim(), i = r.match(Os); i ? (t.alias = i[1].trim(), t.iterator1 = i[2].trim(), i[3] && (t.iterator2 = i[3].trim())) : t.alias = r } } function yr(t) { var e = sn(t, "v-if"); if (e) t.if = e, br(t, { exp: e, block: t }); else { null != sn(t, "v-else") && (t.else = !0); var n = sn(t, "v-else-if"); n && (t.elseif = n) } } function gr(t, e) { var n = _r(e.children); n && n.if && br(n, { exp: t.elseif, block: t }) } function _r(t) { for (var e = t.length; e--;) { if (1 === t[e].type) return t[e]; t.pop() } } function br(t, e) { t.ifConditions || (t.ifConditions = []), t.ifConditions.push(e) } function $r(t) { null != sn(t, "v-once") && (t.once = !0) } function Cr(t) { if ("slot" === t.tag) t.slotName = an(t, "name"); else { var e = an(t, "slot"); e && (t.slotTarget = '""' === e ? '"default"' : e), "template" === t.tag && (t.slotScope = sn(t, "scope")) } } function wr(t) { var e; (e = an(t, "is")) && (t.component = e), null != sn(t, "inline-template") && (t.inlineTemplate = !0) } function xr(t) { var e, n, r, i, o, a, s, c = t.attrsList; for (e = 0, n = c.length; e < n; e++)if (r = i = c[e].name, o = c[e].value, As.test(r)) if (t.hasBindings = !0, (a = kr(r)) && (r = r.replace(Es, "")), Ss.test(r)) r = r.replace(Ss, ""), o = Ye(o), s = !1, a && (a.prop && (s = !0, "innerHtml" === (r = yi(r)) && (r = "innerHTML")), a.camel && (r = yi(r)), a.sync && on(t, "update:" + yi(r), un(o, "$event"))), s || !t.component && ds(t.tag, t.attrsMap.type, r) ? en(t, r, o) : nn(t, r, o); else if (xs.test(r)) on(t, r = r.replace(xs, ""), o, a, !1, ss); else { var u = (r = r.replace(As, "")).match(Ts), l = u && u[1]; l && (r = r.slice(0, -(l.length + 1))), rn(t, r, i, o, l, a) } else nn(t, r, JSON.stringify(o)) } function Ar(t) { for (var e = t; e;) { if (void 0 !== e.for) return !0; e = e.parent } return !1 } function kr(t) { var e = t.match(Es); if (e) { var n = {}; return e.forEach(function (t) { n[t.slice(1)] = !0 }), n } } function Or(t) { for (var e = {}, n = 0, r = t.length; n < r; n++)e[t[n].name] = t[n].value; return e } function Tr(t) { return "script" === t.tag || "style" === t.tag } function Sr(t) { return "style" === t.tag || "script" === t.tag && (!t.attrsMap.type || "text/javascript" === t.attrsMap.type) } function Er(t) { for (var e = [], n = 0; n < t.length; n++) { var r = t[n]; Ls.test(r.name) || (r.name = r.name.replace(Ns, ""), e.push(r)) } return e } function jr(t, e) { t && (hs = Is(e.staticKeys || ""), ms = e.isReservedTag || $i, Lr(t), Nr(t, !1)) } function Lr(t) { if (t.static = Ir(t), 1 === t.type) { if (!ms(t.tag) && "slot" !== t.tag && null == t.attrsMap["inline-template"]) return; for (var e = 0, n = t.children.length; e < n; e++) { var r = t.children[e]; Lr(r), r.static || (t.static = !1) } if (t.ifConditions) for (var i = 1, o = t.ifConditions.length; i < o; i++) { var a = t.ifConditions[i].block; Lr(a), a.static || (t.static = !1) } } } function Nr(t, e) { if (1 === t.type) { if ((t.static || t.once) && (t.staticInFor = e), 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 n = 0, r = t.children.length; n < r; n++)Nr(t.children[n], e || !!t.for); if (t.ifConditions) for (var i = 1, o = t.ifConditions.length; i < o; i++)Nr(t.ifConditions[i].block, e) } } function Ir(t) { return 2 !== t.type && (3 === t.type || !(!t.pre && (t.hasBindings || t.if || t.for || di(t.tag) || !ms(t.tag) || Mr(t) || !Object.keys(t).every(hs)))) } function Mr(t) { for (; t.parent;) { if ("template" !== (t = t.parent).tag) return !1; if (t.for) return !0 } return !1 } function Dr(t, e, n) { var r = e ? "nativeOn:{" : "on:{"; for (var i in t) { var o = t[i]; r += '"' + i + '":' + Pr(i, o) + "," } return r.slice(0, -1) + "}" } function Pr(t, e) { if (!e) return "function(){}"; if (Array.isArray(e)) return "[" + e.map(function (e) { return Pr(t, e) }).join(",") + "]"; var n = Ds.test(e.value), r = Ms.test(e.value); if (e.modifiers) { var i = "", o = "", a = []; for (var s in e.modifiers) Rs[s] ? (o += Rs[s], Ps[s] && a.push(s)) : a.push(s); return a.length && (i += Fr(a)), o && (i += o), "function($event){" + i + (n ? e.value + "($event)" : r ? "(" + e.value + ")($event)" : e.value) + "}" } return n || r ? e.value : "function($event){" + e.value + "}" } function Fr(t) { return "if(!('button' in $event)&&" + t.map(Rr).join("&&") + ")return null;" } function Rr(t) { var e = parseInt(t, 10); if (e) return "$event.keyCode!==" + e; var n = Ps[t]; return "_k($event.keyCode," + JSON.stringify(t) + (n ? "," + JSON.stringify(n) : "") + ")" } function Hr(t, e) { var n = new Bs(e); return { render: "with(this){return " + (t ? Br(t, n) : '_c("div")') + "}", staticRenderFns: n.staticRenderFns } } function Br(t, e) { if (t.staticRoot && !t.staticProcessed) return Ur(t, e); if (t.once && !t.onceProcessed) return Vr(t, e); if (t.for && !t.forProcessed) return Jr(t, e); if (t.if && !t.ifProcessed) return zr(t, e); if ("template" !== t.tag || t.slotTarget) { if ("slot" === t.tag) return oi(t, e); var n; if (t.component) n = ai(t.component, t, e); else { var r = t.plain ? void 0 : qr(t, e), i = t.inlineTemplate ? null : Xr(t, e, !0); n = "_c('" + t.tag + "'" + (r ? "," + r : "") + (i ? "," + i : "") + ")" } for (var o = 0; o < e.transforms.length; o++)n = e.transforms[o](t, n); return n } return Xr(t, e) || "void 0" } function Ur(t, e) { return t.staticProcessed = !0, e.staticRenderFns.push("with(this){return " + Br(t, e) + "}"), "_m(" + (e.staticRenderFns.length - 1) + (t.staticInFor ? ",true" : "") + ")" } function Vr(t, e) { if (t.onceProcessed = !0, t.if && !t.ifProcessed) return zr(t, e); if (t.staticInFor) { for (var n = "", r = t.parent; r;) { if (r.for) { n = r.key; break } r = r.parent } return n ? "_o(" + Br(t, e) + "," + e.onceId++ + (n ? "," + n : "") + ")" : Br(t, e) } return Ur(t, e) } function zr(t, e, n, r) { return t.ifProcessed = !0, Kr(t.ifConditions.slice(), e, n, r) } function Kr(t, e, n, r) { function i(t) { return n ? n(t, e) : t.once ? Vr(t, e) : Br(t, e) } if (!t.length) return r || "_e()"; var o = t.shift(); return o.exp ? "(" + o.exp + ")?" + i(o.block) + ":" + Kr(t, e, n, r) : "" + i(o.block) } function Jr(t, e, n, r) { var i = t.for, o = t.alias, a = t.iterator1 ? "," + t.iterator1 : "", s = t.iterator2 ? "," + t.iterator2 : ""; return t.forProcessed = !0, (r || "_l") + "((" + i + "),function(" + o + a + s + "){return " + (n || Br)(t, e) + "})" } function qr(t, e) { var n = "{", r = Wr(t, e); r && (n += r + ","), t.key && (n += "key:" + t.key + ","), t.ref && (n += "ref:" + t.ref + ","), t.refInFor && (n += "refInFor:true,"), t.pre && (n += "pre:true,"), t.component && (n += 'tag:"' + t.tag + '",'); for (var i = 0; i < e.dataGenFns.length; i++)n += e.dataGenFns[i](t); if (t.attrs && (n += "attrs:{" + si(t.attrs) + "},"), t.props && (n += "domProps:{" + si(t.props) + "},"), t.events && (n += Dr(t.events, !1, e.warn) + ","), t.nativeEvents && (n += Dr(t.nativeEvents, !0, e.warn) + ","), t.slotTarget && (n += "slot:" + t.slotTarget + ","), t.scopedSlots && (n += Zr(t.scopedSlots, e) + ","), t.model && (n += "model:{value:" + t.model.value + ",callback:" + t.model.callback + ",expression:" + t.model.expression + "},"), t.inlineTemplate) { var o = Gr(t, e); o && (n += o + ",") } return n = n.replace(/,$/, "") + "}", t.wrapData && (n = t.wrapData(n)), t.wrapListeners && (n = t.wrapListeners(n)), n } function Wr(t, e) { var n = t.directives; if (n) { 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 = e.directives[o.name]; u && (a = !!u(t, o, e.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.arg + '"' : "") + (o.modifiers ? ",modifiers:" + JSON.stringify(o.modifiers) : "") + "},") } return c ? s.slice(0, -1) + "]" : void 0 } } function Gr(t, e) { var n = t.children[0]; if (1 === n.type) { var r = Hr(n, e.options); return "inlineTemplate:{render:function(){" + r.render + "},staticRenderFns:[" + r.staticRenderFns.map(function (t) { return "function(){" + t + "}" }).join(",") + "]}" } } function Zr(t, e) { return "scopedSlots:_u([" + Object.keys(t).map(function (n) { return Yr(n, t[n], e) }).join(",") + "])" } function Yr(t, e, n) { return e.for && !e.forProcessed ? Qr(t, e, n) : "{key:" + t + ",fn:function(" + String(e.attrsMap.scope) + "){return " + ("template" === e.tag ? Xr(e, n) || "void 0" : Br(e, n)) + "}}" } function Qr(t, e, n) { var r = e.for, i = e.alias, o = e.iterator1 ? "," + e.iterator1 : "", a = e.iterator2 ? "," + e.iterator2 : ""; return e.forProcessed = !0, "_l((" + r + "),function(" + i + o + a + "){return " + Yr(t, e, n) + "})" } function Xr(t, e, n, r, i) { var o = t.children; if (o.length) { var a = o[0]; if (1 === o.length && a.for && "template" !== a.tag && "slot" !== a.tag) return (r || Br)(a, e); var s = n ? ti(o, e.maybeComponent) : 0, c = i || ni; return "[" + o.map(function (t) { return c(t, e) }).join(",") + "]" + (s ? "," + s : "") } } function ti(t, e) { for (var n = 0, r = 0; r < t.length; r++) { var i = t[r]; if (1 === i.type) { if (ei(i) || i.ifConditions && i.ifConditions.some(function (t) { return ei(t.block) })) { n = 2; break } (e(i) || i.ifConditions && i.ifConditions.some(function (t) { return e(t.block) })) && (n = 1) } } return n } function ei(t) { return void 0 !== t.for || "template" === t.tag || "slot" === t.tag } function ni(t, e) { return 1 === t.type ? Br(t, e) : 3 === t.type && t.isComment ? ii(t) : ri(t) } function ri(t) { return "_v(" + (2 === t.type ? t.expression : ci(JSON.stringify(t.text))) + ")" } function ii(t) { return "_e(" + JSON.stringify(t.text) + ")" } function oi(t, e) { var n = t.slotName || '"default"', r = Xr(t, e), i = "_t(" + n + (r ? "," + r : ""), o = t.attrs && "{" + t.attrs.map(function (t) { return yi(t.name) + ":" + t.value }).join(",") + "}", a = t.attrsMap["v-bind"]; return !o && !a || r || (i += ",null"), o && (i += "," + o), a && (i += (o ? "" : ",null") + "," + a), i + ")" } function ai(t, e, n) { var r = e.inlineTemplate ? null : Xr(e, n, !0); return "_c(" + t + "," + qr(e, n) + (r ? "," + r : "") + ")" } function si(t) { for (var e = "", n = 0; n < t.length; n++) { var r = t[n]; e += '"' + r.name + '":' + ci(r.value) + "," } return e.slice(0, -1) } function ci(t) { return t.replace(/\u2028/g, "\\u2028").replace(/\u2029/g, "\\u2029") } function ui(t, e) { try { return new Function(t) } catch (n) { return e.push({ err: n, code: t }), _ } } function li(t) { var e = Object.create(null); return function (n, r, i) { var o = (r = r || {}).delimiters ? String(r.delimiters) + n : n; if (e[o]) return e[o]; var a = t(n, r), s = {}, c = []; return s.render = ui(a.render, c), s.staticRenderFns = a.staticRenderFns.map(function (t) { return ui(t, c) }), e[o] = s } } function fi(t) { if (t.outerHTML) return t.outerHTML; var e = document.createElement("div"); return e.appendChild(t.cloneNode(!0)), e.innerHTML } var pi = Object.prototype.toString, di = f("slot,component", !0), vi = f("key,ref,slot,is"), hi = Object.prototype.hasOwnProperty, mi = /-(\w)/g, yi = v(function (t) { return t.replace(mi, function (t, e) { return e ? e.toUpperCase() : "" }) }), gi = v(function (t) { return t.charAt(0).toUpperCase() + t.slice(1) }), _i = /([^-])([A-Z])/g, bi = v(function (t) { return t.replace(_i, "$1-$2").replace(_i, "$1-$2").toLowerCase() }), $i = function (t, e, n) { return !1 }, Ci = function (t) { return t }, wi = "data-server-rendered", xi = ["component", "directive", "filter"], Ai = ["beforeCreate", "created", "beforeMount", "mounted", "beforeUpdate", "updated", "beforeDestroy", "destroyed", "activated", "deactivated"], ki = { optionMergeStrategies: Object.create(null), silent: !1, productionTip: !1, devtools: !1, performance: !1, errorHandler: null, warnHandler: null, ignoredElements: [], keyCodes: Object.create(null), isReservedTag: $i, isReservedAttr: $i, isUnknownElement: $i, getTagNamespace: _, parsePlatformTagName: Ci, mustUseProp: $i, _lifecycleHooks: Ai }, Oi = Object.freeze({}), Ti = /[^\w.$]/, Si = _, Ei = "__proto__" in {}, ji = "undefined" != typeof window, Li = ji && window.navigator.userAgent.toLowerCase(), Ni = Li && /msie|trident/.test(Li), Ii = Li && Li.indexOf("msie 9.0") > 0, Mi = Li && Li.indexOf("edge/") > 0, Di = Li && Li.indexOf("android") > 0, Pi = Li && /iphone|ipad|ipod|ios/.test(Li), Fi = Li && /chrome\/\d+/.test(Li) && !Mi, Ri = {}.watch, Hi = !1; if (ji) try { var Bi = {}; Object.defineProperty(Bi, "passive", { get: function () { Hi = !0 } }), window.addEventListener("test-passive", null, Bi) } catch (t) { } var Ui, Vi, zi = function () { return void 0 === Ui && (Ui = !ji && "undefined" != typeof global && "server" === global.process.env.VUE_ENV), Ui }, Ki = ji && window.__VUE_DEVTOOLS_GLOBAL_HOOK__, Ji = "undefined" != typeof Symbol && O(Symbol) && "undefined" != typeof Reflect && O(Reflect.ownKeys), qi = function () { function t() { r = !1; var t = n.slice(0); n.length = 0; for (var e = 0; e < t.length; e++)t[e]() } var e, n = [], r = !1; if ("undefined" != typeof Promise && O(Promise)) { var i = Promise.resolve(), o = function (t) { console.error(t) }; e = function () { i.then(t).catch(o), Pi && setTimeout(_) } } else if ("undefined" == typeof MutationObserver || !O(MutationObserver) && "[object MutationObserverConstructor]" !== MutationObserver.toString()) e = function () { setTimeout(t, 0) }; else { var a = 1, s = new MutationObserver(t), c = document.createTextNode(String(a)); s.observe(c, { characterData: !0 }), e = function () { a = (a + 1) % 2, c.data = String(a) } } return function (t, i) { var o; if (n.push(function () { if (t) try { t.call(i) } catch (t) { k(t, i, "nextTick") } else o && o(i) }), r || (r = !0, e()), !t && "undefined" != typeof Promise) return new Promise(function (t, e) { o = t }) } }(); Vi = "undefined" != typeof Set && O(Set) ? Set : function () { function t() { this.set = Object.create(null) } return t.prototype.has = function (t) { return !0 === this.set[t] }, t.prototype.add = function (t) { this.set[t] = !0 }, t.prototype.clear = function () { this.set = Object.create(null) }, t }(); var Wi = 0, Gi = function () { this.id = Wi++ , this.subs = [] }; Gi.prototype.addSub = function (t) { this.subs.push(t) }, Gi.prototype.removeSub = function (t) { p(this.subs, t) }, Gi.prototype.depend = function () { Gi.target && Gi.target.addDep(this) }, Gi.prototype.notify = function () { for (var t = this.subs.slice(), e = 0, n = t.length; e < n; e++)t[e].update() }, Gi.target = null; var Zi = [], Yi = Array.prototype, Qi = Object.create(Yi);["push", "pop", "shift", "unshift", "splice", "sort", "reverse"].forEach(function (t) { var e = Yi[t]; x(Qi, t, function () { for (var n = [], r = arguments.length; r--;)n[r] = arguments[r]; var i, o = e.apply(this, n), a = this.__ob__; switch (t) { case "push": case "unshift": i = n; break; case "splice": i = n.slice(2) }return i && a.observeArray(i), a.dep.notify(), o }) }); var Xi = Object.getOwnPropertyNames(Qi), to = { shouldConvert: !0 }, eo = function (t) { this.value = t, this.dep = new Gi, this.vmCount = 0, x(t, "__ob__", this), Array.isArray(t) ? ((Ei ? E : j)(t, Qi, Xi), this.observeArray(t)) : this.walk(t) }; eo.prototype.walk = function (t) { for (var e = Object.keys(t), n = 0; n < e.length; n++)N(t, e[n], t[e[n]]) }, eo.prototype.observeArray = function (t) { for (var e = 0, n = t.length; e < n; e++)L(t[e]) }; var no = ki.optionMergeStrategies; no.data = function (t, e, n) { return n ? F(t, e, n) : e && "function" != typeof e ? t : F.call(this, t, e) }, Ai.forEach(function (t) { no[t] = R }), xi.forEach(function (t) { no[t + "s"] = H }), no.watch = function (t, e) { if (t === Ri && (t = void 0), e === Ri && (e = void 0), !e) return Object.create(t || null); if (!t) return e; var n = {}; y(n, t); for (var r in e) { var i = n[r], o = e[r]; i && !Array.isArray(i) && (i = [i]), n[r] = i ? i.concat(o) : Array.isArray(o) ? o : [o] } return n }, no.props = no.methods = no.inject = no.computed = function (t, e) { if (!t) return e; var n = Object.create(null); return y(n, t), e && y(n, e), n }, no.provide = F; var ro = function (t, e) { return void 0 === e ? t : e }, io = function (t, e, n, r, i, o, a, s) { this.tag = t, this.data = e, this.children = n, this.text = r, this.elm = i, this.ns = void 0, this.context = o, this.functionalContext = void 0, this.key = e && e.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 }, oo = { child: {} }; oo.child.get = function () { return this.componentInstance }, Object.defineProperties(io.prototype, oo); var ao, so = function (t) { void 0 === t && (t = ""); var e = new io; return e.text = t, e.isComment = !0, e }, co = v(function (t) { var e = "&" === t.charAt(0), n = "~" === (t = e ? t.slice(1) : t).charAt(0), r = "!" === (t = n ? t.slice(1) : t).charAt(0); return t = r ? t.slice(1) : t, { name: t, once: n, capture: r, passive: e } }), uo = null, lo = [], fo = [], po = {}, vo = !1, ho = !1, mo = 0, yo = 0, go = function (t, e, n, r) { this.vm = t, t._watchers.push(this), r ? (this.deep = !!r.deep, this.user = !!r.user, this.lazy = !!r.lazy, this.sync = !!r.sync) : this.deep = this.user = this.lazy = this.sync = !1, this.cb = n, this.id = ++yo, this.active = !0, this.dirty = this.lazy, this.deps = [], this.newDeps = [], this.depIds = new Vi, this.newDepIds = new Vi, this.expression = "", "function" == typeof e ? this.getter = e : (this.getter = A(e), this.getter || (this.getter = function () { })), this.value = this.lazy ? void 0 : this.get() }; go.prototype.get = function () { T(this); var t, e = this.vm; try { t = this.getter.call(e, e) } catch (t) { if (!this.user) throw t; k(t, e, 'getter for watcher "' + this.expression + '"') } finally { this.deep && Lt(t), S(), this.cleanupDeps() } return t }, go.prototype.addDep = function (t) { var e = t.id; this.newDepIds.has(e) || (this.newDepIds.add(e), this.newDeps.push(t), this.depIds.has(e) || t.addSub(this)) }, go.prototype.cleanupDeps = function () { for (var t = this, e = this.deps.length; e--;) { var n = t.deps[e]; t.newDepIds.has(n.id) || n.removeSub(t) } var r = this.depIds; this.depIds = this.newDepIds, this.newDepIds = r, this.newDepIds.clear(), r = this.deps, this.deps = this.newDeps, this.newDeps = r, this.newDeps.length = 0 }, go.prototype.update = function () { this.lazy ? this.dirty = !0 : this.sync ? this.run() : jt(this) }, go.prototype.run = function () { if (this.active) { var t = this.get(); if (t !== this.value || o(t) || this.deep) { var e = this.value; if (this.value = t, this.user) try { this.cb.call(this.vm, t, e) } catch (t) { k(t, this.vm, 'callback for watcher "' + this.expression + '"') } else this.cb.call(this.vm, t, e) } } }, go.prototype.evaluate = function () { this.value = this.get(), this.dirty = !1 }, go.prototype.depend = function () { for (var t = this, e = this.deps.length; e--;)t.deps[e].depend() }, go.prototype.teardown = function () { var t = this; if (this.active) { this.vm._isBeingDestroyed || p(this.vm._watchers, this); for (var e = this.deps.length; e--;)t.deps[e].removeSub(t); this.active = !1 } }; var _o = new Vi, bo = { enumerable: !0, configurable: !0, get: _, set: _ }, $o = { lazy: !0 }, Co = { init: function (t, e, n, r) { if (!t.componentInstance || t.componentInstance._isDestroyed) (t.componentInstance = Yt(t, uo, n, r)).$mount(e ? t.elm : void 0, e); else if (t.data.keepAlive) { var i = t; Co.prepatch(i, i) } }, prepatch: function (t, e) { var n = e.componentOptions; $t(e.componentInstance = t.componentInstance, n.propsData, n.listeners, e, n.children) }, insert: function (t) { var e = t.context, n = t.componentInstance; n._isMounted || (n._isMounted = !0, At(n, "mounted")), t.data.keepAlive && (e._isMounted ? St(n) : wt(n, !0)) }, destroy: function (t) { var e = t.componentInstance; e._isDestroyed || (t.data.keepAlive ? xt(e, !0) : e.$destroy()) } }, wo = Object.keys(Co), xo = 1, Ao = 2, ko = 0; !function (t) { t.prototype._init = function (t) { var e = this; e._uid = ko++ , e._isVue = !0, t && t._isComponent ? he(e, t) : e.$options = z(me(e.constructor), t || {}, e), e._renderProxy = e, e._self = e, _t(e), pt(e), ve(e), At(e, "beforeCreate"), Jt(e), Mt(e), Kt(e), At(e, "created"), e.$options.el && e.$mount(e.$options.el) } }(_e), function (t) { var e = {}; e.get = function () { return this._data }; var n = {}; n.get = function () { return this._props }, Object.defineProperty(t.prototype, "$data", e), Object.defineProperty(t.prototype, "$props", n), t.prototype.$set = I, t.prototype.$delete = M, t.prototype.$watch = function (t, e, n) { var r = this; if (a(e)) return zt(r, t, e, n); (n = n || {}).user = !0; var i = new go(r, t, e, n); return n.immediate && e.call(r, i.value), function () { i.teardown() } } }(_e), function (t) { var e = /^hook:/; t.prototype.$on = function (t, n) { var r = this, i = this; if (Array.isArray(t)) for (var o = 0, a = t.length; o < a; o++)r.$on(t[o], n); else (i._events[t] || (i._events[t] = [])).push(n), e.test(t) && (i._hasHookEvent = !0); return i }, t.prototype.$once = function (t, e) { function n() { r.$off(t, n), e.apply(r, arguments) } var r = this; return n.fn = e, r.$on(t, n), r }, t.prototype.$off = function (t, e) { var n = this, r = this; if (!arguments.length) return r._events = Object.create(null), r; if (Array.isArray(t)) { for (var i = 0, o = t.length; i < o; i++)n.$off(t[i], e); return r } var a = r._events[t]; if (!a) return r; if (1 === arguments.length) return r._events[t] = null, r; for (var s, c = a.length; c--;)if ((s = a[c]) === e || s.fn === e) { a.splice(c, 1); break } return r }, t.prototype.$emit = function (t) { var e = this, n = e._events[t]; if (n) { n = n.length > 1 ? m(n) : n; for (var r = m(arguments, 1), i = 0, o = n.length; i < o; i++)try { n[i].apply(e, r) } catch (n) { k(n, e, 'event handler for "' + t + '"') } } return e } }(_e), function (t) { t.prototype._update = function (t, e) { var n = this; n._isMounted && At(n, "beforeUpdate"); var r = n.$el, i = n._vnode, o = uo; uo = n, n._vnode = t, i ? n.$el = n.__patch__(i, t) : (n.$el = n.__patch__(n.$el, t, e, !1, n.$options._parentElm, n.$options._refElm), n.$options._parentElm = n.$options._refElm = null), uo = 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) }, t.prototype.$forceUpdate = function () { var t = this; t._watcher && t._watcher.update() }, t.prototype.$destroy = function () { var t = this; if (!t._isBeingDestroyed) { At(t, "beforeDestroy"), t._isBeingDestroyed = !0; var e = t.$parent; !e || e._isBeingDestroyed || t.$options.abstract || p(e.$children, t), t._watcher && t._watcher.teardown(); for (var n = t._watchers.length; n--;)t._watchers[n].teardown(); t._data.__ob__ && t._data.__ob__.vmCount-- , t._isDestroyed = !0, t.__patch__(t._vnode, null), At(t, "destroyed"), t.$off(), t.$el && (t.$el.__vue__ = null) } } }(_e), function (t) { t.prototype.$nextTick = function (t) { return qi(t, this) }, t.prototype._render = function () { var t = this, e = t.$options, n = e.render, r = e.staticRenderFns, i = e._parentVnode; if (t._isMounted) for (var o in t.$slots) t.$slots[o] = Q(t.$slots[o]); t.$scopedSlots = i && i.data.scopedSlots || Oi, r && !t._staticTrees && (t._staticTrees = []), t.$vnode = i; var a; try { a = n.call(t._renderProxy, t.$createElement) } catch (e) { k(e, t, "render function"), a = t._vnode } return a instanceof io || (a = so()), a.parent = i, a }, t.prototype._o = le, t.prototype._n = l, t.prototype._s = u, t.prototype._l = ie, t.prototype._t = oe, t.prototype._q = b, t.prototype._i = $, t.prototype._m = ue, t.prototype._f = ae, t.prototype._k = se, t.prototype._b = ce, t.prototype._v = Z, t.prototype._e = so, t.prototype._u = gt, t.prototype._g = de }(_e); var Oo = [String, RegExp, Array], To = { KeepAlive: { name: "keep-alive", abstract: !0, props: { include: Oo, exclude: Oo }, created: function () { this.cache = Object.create(null) }, destroyed: function () { var t = this; for (var e in t.cache) Se(t.cache[e]) }, watch: { include: function (t) { Te(this.cache, this._vnode, function (e) { return Oe(t, e) }) }, exclude: function (t) { Te(this.cache, this._vnode, function (e) { return !Oe(t, e) }) } }, render: function () { var t = ft(this.$slots.default), e = t && t.componentOptions; if (e) { var n = ke(e); if (n && (this.include && !Oe(this.include, n) || this.exclude && Oe(this.exclude, n))) return t; var r = null == t.key ? e.Ctor.cid + (e.tag ? "::" + e.tag : "") : t.key; this.cache[r] ? t.componentInstance = this.cache[r].componentInstance : this.cache[r] = t, t.data.keepAlive = !0 } return t } } }; !function (t) { var e = {}; e.get = function () { return ki }, Object.defineProperty(t, "config", e), t.util = { warn: Si, extend: y, mergeOptions: z, defineReactive: N }, t.set = I, t.delete = M, t.nextTick = qi, t.options = Object.create(null), xi.forEach(function (e) { t.options[e + "s"] = Object.create(null) }), t.options._base = t, y(t.options.components, To), be(t), $e(t), Ce(t), Ae(t) }(_e), Object.defineProperty(_e.prototype, "$isServer", { get: zi }), Object.defineProperty(_e.prototype, "$ssrContext", { get: function () { return this.$vnode && this.$vnode.ssrContext } }), _e.version = "2.4.2"; var So, Eo, jo, Lo, No, Io, Mo, Do, Po, Fo = f("style,class"), Ro = f("input,textarea,option,select"), Ho = function (t, e, n) { return "value" === n && Ro(t) && "button" !== e || "selected" === n && "option" === t || "checked" === n && "input" === t || "muted" === n && "video" === t }, Bo = f("contenteditable,draggable,spellcheck"), Uo = f("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"), Vo = "http://www.w3.org/1999/xlink", zo = function (t) { return ":" === t.charAt(5) && "xlink" === t.slice(0, 5) }, Ko = function (t) { return zo(t) ? t.slice(6, t.length) : "" }, Jo = function (t) { return null == t || !1 === t }, qo = { svg: "http://www.w3.org/2000/svg", math: "http://www.w3.org/1998/Math/MathML" }, Wo = f("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"), Go = f("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), Zo = function (t) { return Wo(t) || Go(t) }, Yo = Object.create(null), Qo = Object.freeze({ createElement: function (t, e) { var n = document.createElement(t); return "select" !== t ? n : (e.data && e.data.attrs && void 0 !== e.data.attrs.multiple && n.setAttribute("multiple", "multiple"), n) }, createElementNS: function (t, e) { return document.createElementNS(qo[t], e) }, createTextNode: function (t) { return document.createTextNode(t) }, createComment: function (t) { return document.createComment(t) }, insertBefore: function (t, e, n) { t.insertBefore(e, n) }, removeChild: function (t, e) { t.removeChild(e) }, appendChild: function (t, e) { t.appendChild(e) }, parentNode: function (t) { return t.parentNode }, nextSibling: function (t) { return t.nextSibling }, tagName: function (t) { return t.tagName }, setTextContent: function (t, e) { t.textContent = e }, setAttribute: function (t, e, n) { t.setAttribute(e, n) } }), Xo = { create: function (t, e) { Re(e) }, update: function (t, e) { t.data.ref !== e.data.ref && (Re(t, !0), Re(e)) }, destroy: function (t) { Re(t, !0) } }, ta = new io("", {}, []), ea = ["create", "activate", "update", "remove", "destroy"], na = { create: Ve, update: Ve, destroy: function (t) { Ve(t, ta) } }, ra = Object.create(null), ia = [Xo, na], oa = { create: We, update: We }, aa = { create: Ze, update: Ze }, sa = /[\w).+\-_$\]]/, ca = "__r", ua = "__c", la = { create: wn, update: wn }, fa = { create: xn, update: xn }, pa = v(function (t) { var e = {}, n = /;(?![^(]*\))/g, r = /:(.+)/; return t.split(n).forEach(function (t) { if (t) { var n = t.split(r); n.length > 1 && (e[n[0].trim()] = n[1].trim()) } }), e }), da = /^--/, va = /\s*!important$/, ha = function (t, e, n) { if (da.test(e)) t.style.setProperty(e, n); else if (va.test(n)) t.style.setProperty(e, n.replace(va, ""), "important"); else { var r = ya(e); if (Array.isArray(n)) for (var i = 0, o = n.length; i < o; i++)t.style[r] = n[i]; else t.style[r] = n } }, ma = ["Webkit", "Moz", "ms"], ya = v(function (t) { if (Po = Po || document.createElement("div").style, "filter" !== (t = yi(t)) && t in Po) return t; for (var e = t.charAt(0).toUpperCase() + t.slice(1), n = 0; n < ma.length; n++) { var r = ma[n] + e; if (r in Po) return r } }), ga = { create: jn, update: jn }, _a = v(function (t) { return { enterClass: t + "-enter", enterToClass: t + "-enter-to", enterActiveClass: t + "-enter-active", leaveClass: t + "-leave", leaveToClass: t + "-leave-to", leaveActiveClass: t + "-leave-active" } }), ba = ji && !Ii, $a = "transition", Ca = "animation", wa = "transition", xa = "transitionend", Aa = "animation", ka = "animationend"; ba && (void 0 === window.ontransitionend && void 0 !== window.onwebkittransitionend && (wa = "WebkitTransition", xa = "webkitTransitionEnd"), void 0 === window.onanimationend && void 0 !== window.onwebkitanimationend && (Aa = "WebkitAnimation", ka = "webkitAnimationEnd")); var Oa = ji && window.requestAnimationFrame ? window.requestAnimationFrame.bind(window) : setTimeout, Ta = /\b(transform|all)(,|$)/, Sa = function (r) { function o(t) { return new io(E.tagName(t).toLowerCase(), {}, [], void 0, t) } function a(t, e) { function n() { 0 == --n.listeners && s(t) } return n.listeners = e, n } function s(t) { var n = E.parentNode(t); e(n) && E.removeChild(n, t) } function c(t, r, i, o, a) { if (t.isRootInsert = !a, !u(t, r, i, o)) { var s = t.data, c = t.children, l = t.tag; e(l) ? (t.elm = t.ns ? E.createElementNS(t.ns, l) : E.createElement(l, t), y(t), v(t, c, r), e(s) && m(t, r), d(i, t.elm, o)) : n(t.isComment) ? (t.elm = E.createComment(t.text), d(i, t.elm, o)) : (t.elm = E.createTextNode(t.text), d(i, t.elm, o)) } } function u(t, r, i, o) { var a = t.data; if (e(a)) { var s = e(t.componentInstance) && a.keepAlive; if (e(a = a.hook) && e(a = a.init) && a(t, !1, i, o), e(t.componentInstance)) return l(t, r), n(s) && p(t, r, i, o), !0 } } function l(t, n) { e(t.data.pendingInsert) && (n.push.apply(n, t.data.pendingInsert), t.data.pendingInsert = null), t.elm = t.componentInstance.$el, h(t) ? (m(t, n), y(t)) : (Re(t), n.push(t)) } function p(t, n, r, i) { for (var o, a = t; a.componentInstance;)if (a = a.componentInstance._vnode, e(o = a.data) && e(o = o.transition)) { for (o = 0; o < T.activate.length; ++o)T.activate[o](ta, a); n.push(a); break } d(r, t.elm, i) } function d(t, n, r) { e(t) && (e(r) ? r.parentNode === t && E.insertBefore(t, n, r) : E.appendChild(t, n)) } function v(t, e, n) { if (Array.isArray(e)) for (var r = 0; r < e.length; ++r)c(e[r], n, t.elm, null, !0); else i(t.text) && E.appendChild(t.elm, E.createTextNode(t.text)) } function h(t) { for (; t.componentInstance;)t = t.componentInstance._vnode; return e(t.tag) } function m(t, n) { for (var r = 0; r < T.create.length; ++r)T.create[r](ta, t); e(k = t.data.hook) && (e(k.create) && k.create(ta, t), e(k.insert) && n.push(t)) } function y(t) { for (var n, r = t; r;)e(n = r.context) && e(n = n.$options._scopeId) && E.setAttribute(t.elm, n, ""), r = r.parent; e(n = uo) && n !== t.context && e(n = n.$options._scopeId) && E.setAttribute(t.elm, n, "") } function g(t, e, n, r, i, o) { for (; r <= i; ++r)c(n[r], o, t, e) } function _(t) { var n, r, i = t.data; if (e(i)) for (e(n = i.hook) && e(n = n.destroy) && n(t), n = 0; n < T.destroy.length; ++n)T.destroy[n](t); if (e(n = t.children)) for (r = 0; r < t.children.length; ++r)_(t.children[r]) } function b(t, n, r, i) { for (; r <= i; ++r) { var o = n[r]; e(o) && (e(o.tag) ? ($(o), _(o)) : s(o.elm)) } } function $(t, n) { if (e(n) || e(t.data)) { var r, i = T.remove.length + 1; for (e(n) ? n.listeners += i : n = a(t.elm, i), e(r = t.componentInstance) && e(r = r._vnode) && e(r.data) && $(r, n), r = 0; r < T.remove.length; ++r)T.remove[r](t, n); e(r = t.data.hook) && e(r = r.remove) ? r(t, n) : n() } else s(t.elm) } function C(n, r, i, o, a) { for (var s, u, l, f = 0, p = 0, d = r.length - 1, v = r[0], h = r[d], m = i.length - 1, y = i[0], _ = i[m], $ = !a; f <= d && p <= m;)t(v) ? v = r[++f] : t(h) ? h = r[--d] : He(v, y) ? (w(v, y, o), v = r[++f], y = i[++p]) : He(h, _) ? (w(h, _, o), h = r[--d], _ = i[--m]) : He(v, _) ? (w(v, _, o), $ && E.insertBefore(n, v.elm, E.nextSibling(h.elm)), v = r[++f], _ = i[--m]) : He(h, y) ? (w(h, y, o), $ && E.insertBefore(n, h.elm, v.elm), h = r[--d], y = i[++p]) : (t(s) && (s = Ue(r, f, d)), t(u = e(y.key) ? s[y.key] : null) ? (c(y, o, n, v.elm), y = i[++p]) : He(l = r[u], y) ? (w(l, y, o), r[u] = void 0, $ && E.insertBefore(n, l.elm, v.elm), y = i[++p]) : (c(y, o, n, v.elm), y = i[++p])); f > d ? g(n, t(i[m + 1]) ? null : i[m + 1].elm, i, p, m, o) : p > m && b(n, r, f, d) } function w(r, i, o, a) { if (r !== i) { var s = i.elm = r.elm; if (n(r.isAsyncPlaceholder)) e(i.asyncFactory.resolved) ? A(r.elm, i, o) : i.isAsyncPlaceholder = !0; else if (n(i.isStatic) && n(r.isStatic) && i.key === r.key && (n(i.isCloned) || n(i.isOnce))) i.componentInstance = r.componentInstance; else { var c, u = i.data; e(u) && e(c = u.hook) && e(c = c.prepatch) && c(r, i); var l = r.children, f = i.children; if (e(u) && h(i)) { for (c = 0; c < T.update.length; ++c)T.update[c](r, i); e(c = u.hook) && e(c = c.update) && c(r, i) } t(i.text) ? e(l) && e(f) ? l !== f && C(s, l, f, o, a) : e(f) ? (e(r.text) && E.setTextContent(s, ""), g(s, null, f, 0, f.length - 1, o)) : e(l) ? b(s, l, 0, l.length - 1) : e(r.text) && E.setTextContent(s, "") : r.text !== i.text && E.setTextContent(s, i.text), e(u) && e(c = u.hook) && e(c = c.postpatch) && c(r, i) } } } function x(t, r, i) { if (n(i) && e(t.parent)) t.parent.data.pendingInsert = r; else for (var o = 0; o < r.length; ++o)r[o].data.hook.insert(r[o]) } function A(t, r, i) { if (n(r.isComment) && e(r.asyncFactory)) return r.elm = t, r.isAsyncPlaceholder = !0, !0; r.elm = t; var o = r.tag, a = r.data, s = r.children; if (e(a) && (e(k = a.hook) && e(k = k.init) && k(r, !0), e(k = r.componentInstance))) return l(r, i), !0; if (e(o)) { if (e(s)) if (t.hasChildNodes()) { for (var c = !0, u = t.firstChild, f = 0; f < s.length; f++) { if (!u || !A(u, s[f], i)) { c = !1; break } u = u.nextSibling } if (!c || u) return !1 } else v(r, s, i); if (e(a)) for (var p in a) if (!j(p)) { m(r, i); break } } else t.data !== r.text && (t.data = r.text); return !0 } var k, O, T = {}, S = r.modules, E = r.nodeOps; for (k = 0; k < ea.length; ++k)for (T[ea[k]] = [], O = 0; O < S.length; ++O)e(S[O][ea[k]]) && T[ea[k]].push(S[O][ea[k]]); var j = f("attrs,style,class,staticClass,staticStyle,key"); return function (r, i, a, s, u, l) { if (!t(i)) { var f = !1, p = []; if (t(r)) f = !0, c(i, p, u, l); else { var d = e(r.nodeType); if (!d && He(r, i)) w(r, i, p, s); else { if (d) { if (1 === r.nodeType && r.hasAttribute(wi) && (r.removeAttribute(wi), a = !0), n(a) && A(r, i, p)) return x(i, p, !0), r; r = o(r) } var v = r.elm, m = E.parentNode(v); if (c(i, p, v._leaveCb ? null : m, E.nextSibling(v)), e(i.parent)) { for (var y = i.parent; y;)y.elm = i.elm, y = y.parent; if (h(i)) for (var g = 0; g < T.create.length; ++g)T.create[g](ta, i.parent) } e(m) ? b(m, [r], 0, 0) : e(r.tag) && _(r) } } return x(i, p, f), i.elm } e(r) && _(r) } }({ nodeOps: Qo, modules: [oa, aa, la, fa, ga, ji ? { create: Jn, activate: Jn, remove: function (t, e) { !0 !== t.data.show ? Vn(t, e) : e() } } : {}].concat(ia) }), Ea = f("text,number,password,search,email,tel,url"); Ii && document.addEventListener("selectionchange", function () { var t = document.activeElement; t && t.vmodel && Yn(t, "input") }); var ja = { model: { inserted: function (t, e, n) { if ("select" === n.tag) { var r = function () { qn(t, e, n.context) }; r(), (Ni || Mi) && setTimeout(r, 0), t._vOptions = [].map.call(t.options, Wn) } else ("textarea" === n.tag || Ea(t.type)) && (t._vModifiers = e.modifiers, e.modifiers.lazy || (t.addEventListener("change", Zn), Di || (t.addEventListener("compositionstart", Gn), t.addEventListener("compositionend", Zn)), Ii && (t.vmodel = !0))) }, componentUpdated: function (t, e, n) { if ("select" === n.tag) { qn(t, e, n.context); var r = t._vOptions; (t._vOptions = [].map.call(t.options, Wn)).some(function (t, e) { return !b(t, r[e]) }) && Yn(t, "change") } } }, show: { bind: function (t, e, n) { var r = e.value, i = (n = Qn(n)).data && n.data.transition, o = t.__vOriginalDisplay = "none" === t.style.display ? "" : t.style.display; r && i ? (n.data.show = !0, Un(n, function () { t.style.display = o })) : t.style.display = r ? o : "none" }, update: function (t, e, n) { var r = e.value; r !== e.oldValue && ((n = Qn(n)).data && n.data.transition ? (n.data.show = !0, r ? Un(n, function () { t.style.display = t.__vOriginalDisplay }) : Vn(n, function () { t.style.display = "none" })) : t.style.display = r ? t.__vOriginalDisplay : "none") }, unbind: function (t, e, n, r, i) { i || (t.style.display = t.__vOriginalDisplay) } } }, La = { 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] }, Na = { name: "transition", props: La, abstract: !0, render: function (t) { var e = this, n = this.$options._renderChildren; if (n && (n = n.filter(function (t) { return t.tag || ir(t) })).length) { var r = this.mode, o = n[0]; if (nr(this.$vnode)) return o; var a = Xn(o); if (!a) return o; if (this._leaving) return er(t, 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 = tr(this), u = this._vnode, l = Xn(u); if (a.data.directives && a.data.directives.some(function (t) { return "show" === t.name }) && (a.data.show = !0), l && l.data && !rr(a, l) && !ir(l)) { var f = l && (l.data.transition = y({}, c)); if ("out-in" === r) return this._leaving = !0, et(f, "afterLeave", function () { e._leaving = !1, e.$forceUpdate() }), er(t, o); if ("in-out" === r) { if (ir(a)) return u; var p, d = function () { p() }; et(c, "afterEnter", d), et(c, "enterCancelled", d), et(f, "delayLeave", function (t) { p = t }) } } return o } } }, Ia = y({ tag: String, moveClass: String }, La); delete Ia.mode; var Ma = { Transition: Na, TransitionGroup: { props: Ia, render: function (t) { for (var e = this.tag || this.$vnode.data.tag || "span", n = Object.create(null), r = this.prevChildren = this.children, i = this.$slots.default || [], o = this.children = [], a = tr(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 = t(e, null, u), this.removed = l } return t(e, null, o) }, beforeUpdate: function () { this.__patch__(this._vnode, this.kept, !1, !0), this._vnode = this.kept }, updated: function () { var t = this.prevChildren, e = this.moveClass || (this.name || "v") + "-move"; if (t.length && this.hasMove(t[0].elm, e)) { t.forEach(or), t.forEach(ar), t.forEach(sr); document.body.offsetHeight; t.forEach(function (t) { if (t.data.moved) { var n = t.elm, r = n.style; Dn(n, e), r.transform = r.WebkitTransform = r.transitionDuration = "", n.addEventListener(xa, n._moveCb = function t(r) { r && !/transform$/.test(r.propertyName) || (n.removeEventListener(xa, t), n._moveCb = null, Pn(n, e)) }) } }) } }, methods: { hasMove: function (t, e) { if (!ba) return !1; if (this._hasMove) return this._hasMove; var n = t.cloneNode(); t._transitionClasses && t._transitionClasses.forEach(function (t) { Nn(n, t) }), Ln(n, e), n.style.display = "none", this.$el.appendChild(n); var r = Rn(n); return this.$el.removeChild(n), this._hasMove = r.hasTransform } } } }; _e.config.mustUseProp = Ho, _e.config.isReservedTag = Zo, _e.config.isReservedAttr = Fo, _e.config.getTagNamespace = Pe, _e.config.isUnknownElement = function (t) { if (!ji) return !0; if (Zo(t)) return !1; if (t = t.toLowerCase(), null != Yo[t]) return Yo[t]; var e = document.createElement(t); return t.indexOf("-") > -1 ? Yo[t] = e.constructor === window.HTMLUnknownElement || e.constructor === window.HTMLElement : Yo[t] = /HTMLUnknownElement/.test(e.toString()) }, y(_e.options.directives, ja), y(_e.options.components, Ma), _e.prototype.__patch__ = ji ? Sa : _, _e.prototype.$mount = function (t, e) { return t = t && ji ? Fe(t) : void 0, bt(this, t, e) }, setTimeout(function () { ki.devtools && Ki && Ki.emit("init", _e) }, 0); var Da, Pa = !!ji && function (t, e) { var n = document.createElement("div"); return n.innerHTML = '
', n.innerHTML.indexOf(e) > 0 }("\n", " "), Fa = /\{\{((?:.|\n)+?)\}\}/g, Ra = /[-.*+?^${}()|[\]\/\\]/g, Ha = v(function (t) { var e = t[0].replace(Ra, "\\$&"), n = t[1].replace(Ra, "\\$&"); return new RegExp(e + "((?:.|\\n)+?)" + n, "g") }), Ba = [{ staticKeys: ["staticClass"], transformNode: function (t, e) { e.warn; var n = sn(t, "class"); n && (t.staticClass = JSON.stringify(n)); var r = an(t, "class", !1); r && (t.classBinding = r) }, genData: function (t) { var e = ""; return t.staticClass && (e += "staticClass:" + t.staticClass + ","), t.classBinding && (e += "class:" + t.classBinding + ","), e } }, { staticKeys: ["staticStyle"], transformNode: function (t, e) { e.warn; var n = sn(t, "style"); n && (t.staticStyle = JSON.stringify(pa(n))); var r = an(t, "style", !1); r && (t.styleBinding = r) }, genData: function (t) { var e = ""; return t.staticStyle && (e += "staticStyle:" + t.staticStyle + ","), t.styleBinding && (e += "style:(" + t.styleBinding + "),"), e } }], Ua = { model: function (t, e, n) { Mo = n; var r = e.value, i = e.modifiers, o = t.tag, a = t.attrsMap.type; if (t.component) return cn(t, r, i), !1; if ("select" === o) gn(t, r, i); else if ("input" === o && "checkbox" === a) mn(t, r, i); else if ("input" === o && "radio" === a) yn(t, r, i); else if ("input" === o || "textarea" === o) _n(t, r, i); else if (!ki.isReservedTag(o)) return cn(t, r, i), !1; return !0 }, text: function (t, e) { e.value && en(t, "textContent", "_s(" + e.value + ")") }, html: function (t, e) { e.value && en(t, "innerHTML", "_s(" + e.value + ")") } }, Va = f("area,base,br,col,embed,frame,hr,img,input,isindex,keygen,link,meta,param,source,track,wbr"), za = f("colgroup,dd,dt,li,options,p,td,tfoot,th,thead,tr,source"), Ka = f("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"), Ja = { expectHTML: !0, modules: Ba, directives: Ua, isPreTag: function (t) { return "pre" === t }, isUnaryTag: Va, mustUseProp: Ho, canBeLeftOpenTag: za, isReservedTag: Zo, getTagNamespace: Pe, staticKeys: function (t) { return t.reduce(function (t, e) { return t.concat(e.staticKeys || []) }, []).join(",") }(Ba) }, qa = { decode: function (t) { return Da = Da || document.createElement("div"), Da.innerHTML = t, Da.textContent } }, Wa = /([^\s"'<>/=]+)/, Ga = /(?:=)/, Za = [/"([^"]*)"+/.source, /'([^']*)'+/.source, /([^\s"'=<>`]+)/.source], Ya = new RegExp("^\\s*" + Wa.source + "(?:\\s*(" + Ga.source + ")\\s*(?:" + Za.join("|") + "))?"), Qa = "[a-zA-Z_][\\w\\-\\.]*", Xa = "((?:" + Qa + "\\:)?" + Qa + ")", ts = new RegExp("^<" + Xa), es = /^\s*(\/?)>/, ns = new RegExp("^<\\/" + Xa + "[^>]*>"), rs = /^]+>/i, is = /^