diff --git a/dist/vue-virtual-scroller.js b/dist/vue-virtual-scroller.js index 77ddb7a3..7e36f8df 100644 --- a/dist/vue-virtual-scroller.js +++ b/dist/vue-virtual-scroller.js @@ -1 +1 @@ -!function(root,factory){"object"==typeof exports&&"object"==typeof module?module.exports=factory():"function"==typeof define&&define.amd?define([],factory):"object"==typeof exports?exports.VueVirtualScroller=factory():root.VueVirtualScroller=factory()}(this,function(){return function(modules){function __webpack_require__(moduleId){if(installedModules[moduleId])return installedModules[moduleId].exports;var module=installedModules[moduleId]={i:moduleId,l:!1,exports:{}};return modules[moduleId].call(module.exports,module,module.exports,__webpack_require__),module.l=!0,module.exports}var installedModules={};return __webpack_require__.m=modules,__webpack_require__.c=installedModules,__webpack_require__.i=function(value){return value},__webpack_require__.d=function(exports,name,getter){__webpack_require__.o(exports,name)||Object.defineProperty(exports,name,{configurable:!1,enumerable:!0,get:getter})},__webpack_require__.n=function(module){var getter=module&&module.__esModule?function(){return module.default}:function(){return module};return __webpack_require__.d(getter,"a",getter),getter},__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property)},__webpack_require__.p="",__webpack_require__(__webpack_require__.s=4)}([function(module,exports,__webpack_require__){(function(module){var __WEBPACK_AMD_DEFINE_FACTORY__,__WEBPACK_AMD_DEFINE_ARRAY__,__WEBPACK_AMD_DEFINE_RESULT__,_typeof2="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj};!function(root,factory){"object"==_typeof2(exports)&&"object"==_typeof2(module)?module.exports=factory():(__WEBPACK_AMD_DEFINE_ARRAY__=[],__WEBPACK_AMD_DEFINE_FACTORY__=factory,void 0!==(__WEBPACK_AMD_DEFINE_RESULT__="function"==typeof __WEBPACK_AMD_DEFINE_FACTORY__?__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports,__WEBPACK_AMD_DEFINE_ARRAY__):__WEBPACK_AMD_DEFINE_FACTORY__)&&(module.exports=__WEBPACK_AMD_DEFINE_RESULT__))}(0,function(){return function(modules){function __webpack_require__(moduleId){if(installedModules[moduleId])return installedModules[moduleId].exports;var module=installedModules[moduleId]={i:moduleId,l:!1,exports:{}};return modules[moduleId].call(module.exports,module,module.exports,__webpack_require__),module.l=!0,module.exports}var installedModules={};return __webpack_require__.m=modules,__webpack_require__.c=installedModules,__webpack_require__.i=function(value){return value},__webpack_require__.d=function(exports,name,getter){__webpack_require__.o(exports,name)||Object.defineProperty(exports,name,{configurable:!1,enumerable:!0,get:getter})},__webpack_require__.n=function(module){var getter=module&&module.__esModule?function(){return module.default}:function(){return module};return __webpack_require__.d(getter,"a",getter),getter},__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property)},__webpack_require__.p="",__webpack_require__(__webpack_require__.s=2)}([function(module,exports,__webpack_require__){"use strict";function throwValueError(value){if(null!==value&&"function"!=typeof value)throw new Error("observe-visibility directive expects a function as the value")}exports.a={bind:function(el,_ref,vnode){var value=_ref.value;"undefined"==typeof IntersectionObserver?console.warn("[vue-observe-visibility] IntersectionObserver API is not available in your browser. Please install this polyfill: https://github.com/WICG/IntersectionObserver/tree/gh-pages/polyfill"):function(){throwValueError(value),el._vue_visibilityCallback=value;var observer=el._vue_intersectionObserver=new IntersectionObserver(function(entries){var entry=entries[0];el._vue_visibilityCallback&&el._vue_visibilityCallback.call(null,entry.intersectionRatio>0,entry)});vnode.context.$nextTick(function(){observer.observe(el)})}()},update:function(el,_ref2){var value=_ref2.value;throwValueError(value),el._vue_visibilityCallback=value},unbind:function(el){el._vue_intersectionObserver&&(el._vue_intersectionObserver.disconnect(),delete el._vue_intersectionObserver,delete el._vue_visibilityCallback)}}},function(module,exports){var g,_typeof="function"==typeof Symbol&&"symbol"==_typeof2(Symbol.iterator)?function(obj){return void 0===obj?"undefined":_typeof2(obj)}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":void 0===obj?"undefined":_typeof2(obj)};g=function(){return this}();try{g=g||Function("return this")()||(0,eval)("this")}catch(e){"object"===("undefined"==typeof window?"undefined":_typeof(window))&&(g=window)}module.exports=g},function(module,exports,__webpack_require__){"use strict";(function(global){function install(Vue){Vue.directive("observe-visibility",__WEBPACK_IMPORTED_MODULE_0__directives_observe_visibility__.a)}var __WEBPACK_IMPORTED_MODULE_0__directives_observe_visibility__=__webpack_require__(0);Object.defineProperty(exports,"__esModule",{value:!0}),__webpack_require__.d(exports,"ObserveVisibility",function(){return __WEBPACK_IMPORTED_MODULE_0__directives_observe_visibility__.a}),exports.install=install;var plugin={version:"0.1.3",install:install};exports.default=plugin;var GlobalVue=null;"undefined"!=typeof window?GlobalVue=window.Vue:void 0!==global&&(GlobalVue=global.Vue),GlobalVue&&GlobalVue.use(plugin)}).call(exports,__webpack_require__(1))}])})}).call(exports,__webpack_require__(2)(module))},function(module,exports,__webpack_require__){(function(module){var __WEBPACK_AMD_DEFINE_FACTORY__,__WEBPACK_AMD_DEFINE_ARRAY__,__WEBPACK_AMD_DEFINE_RESULT__,_typeof2="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj};!function(root,factory){"object"==_typeof2(exports)&&"object"==_typeof2(module)?module.exports=factory():(__WEBPACK_AMD_DEFINE_ARRAY__=[],__WEBPACK_AMD_DEFINE_FACTORY__=factory,void 0!==(__WEBPACK_AMD_DEFINE_RESULT__="function"==typeof __WEBPACK_AMD_DEFINE_FACTORY__?__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports,__WEBPACK_AMD_DEFINE_ARRAY__):__WEBPACK_AMD_DEFINE_FACTORY__)&&(module.exports=__WEBPACK_AMD_DEFINE_RESULT__))}(0,function(){return function(modules){function __webpack_require__(moduleId){if(installedModules[moduleId])return installedModules[moduleId].exports;var module=installedModules[moduleId]={i:moduleId,l:!1,exports:{}};return modules[moduleId].call(module.exports,module,module.exports,__webpack_require__),module.l=!0,module.exports}var installedModules={};return __webpack_require__.m=modules,__webpack_require__.c=installedModules,__webpack_require__.i=function(value){return value},__webpack_require__.d=function(exports,name,getter){__webpack_require__.o(exports,name)||Object.defineProperty(exports,name,{configurable:!1,enumerable:!0,get:getter})},__webpack_require__.n=function(module){var getter=module&&module.__esModule?function(){return module.default}:function(){return module};return __webpack_require__.d(getter,"a",getter),getter},__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property)},__webpack_require__.p="",__webpack_require__(__webpack_require__.s=6)}([function(module,exports){var g,_typeof="function"==typeof Symbol&&"symbol"==_typeof2(Symbol.iterator)?function(obj){return void 0===obj?"undefined":_typeof2(obj)}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":void 0===obj?"undefined":_typeof2(obj)};g=function(){return this}();try{g=g||Function("return this")()||(0,eval)("this")}catch(e){"object"===("undefined"==typeof window?"undefined":_typeof(window))&&(g=window)}module.exports=g},function(module,exports,__webpack_require__){var __vue_exports__,__vue_options__;__webpack_require__(4),__vue_exports__=__webpack_require__(3);var __vue_template__=__webpack_require__(5);__vue_options__=__vue_exports__=__vue_exports__||{},"object"!=_typeof2(__vue_exports__.default)&&"function"!=typeof __vue_exports__.default||(__vue_options__=__vue_exports__=__vue_exports__.default),"function"==typeof __vue_options__&&(__vue_options__=__vue_options__.options),__vue_options__.render=__vue_template__.render,__vue_options__.staticRenderFns=__vue_template__.staticRenderFns,__vue_options__._scopeId="data-v-c7b3205a",module.exports=__vue_exports__},function(module,exports,__webpack_require__){"use strict";function getInternetExplorerVersion(){var ua=window.navigator.userAgent,msie=ua.indexOf("MSIE ");if(msie>0)return parseInt(ua.substring(msie+5,ua.indexOf(".",msie)),10);if(ua.indexOf("Trident/")>0){var rv=ua.indexOf("rv:");return parseInt(ua.substring(rv+3,ua.indexOf(".",rv)),10)}var edge=ua.indexOf("Edge/");return edge>0?parseInt(ua.substring(edge+5,ua.indexOf(".",edge)),10):-1}exports.a=getInternetExplorerVersion},function(module,exports,__webpack_require__){"use strict";var __WEBPACK_IMPORTED_MODULE_0__utils_compatibility__=__webpack_require__(2);Object.defineProperty(exports,"__esModule",{value:!0});var isIE=-1!==__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__utils_compatibility__.a)();exports.default={name:"resize-observer",methods:{notify:function(){this.$emit("notify")},addResizeHandlers:function(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.notify),this._w===this.$el.offsetWidth&&this._h===this.$el.offsetHeight||this.notify()},removeResizeHandlers:function(){this._resizeObject&&this._resizeObject.onload&&(!isIE&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.notify),delete this._resizeObject.onload)}},mounted:function(){var _this=this;this.$nextTick(function(){_this._w=_this.$el.offsetWidth,_this._h=_this.$el.offsetHeight});var object=document.createElement("object");this._resizeObject=object,object.setAttribute("style","display: block; position: absolute; top: 0; left: 0; height: 100%; width: 100%; overflow: hidden; pointer-events: none; z-index: -1;"),object.onload=this.addResizeHandlers,object.type="text/html",isIE&&this.$el.appendChild(object),object.data="about:blank",isIE||this.$el.appendChild(object)},beforeDestroy:function(){this.removeResizeHandlers()}}},function(module,exports){},function(module,exports){module.exports={render:function(){var _vm=this;return(_vm.$createElement,_vm._c)("div",{staticClass:"resize-observer",attrs:{tabindex:"-1"}})},staticRenderFns:[]}},function(module,exports,__webpack_require__){"use strict";(function(global){function install(Vue){Vue.component("resize-observer",__WEBPACK_IMPORTED_MODULE_0__components_ResizeObserver_vue___default.a)}var __WEBPACK_IMPORTED_MODULE_0__components_ResizeObserver_vue__=__webpack_require__(1),__WEBPACK_IMPORTED_MODULE_0__components_ResizeObserver_vue___default=__webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__components_ResizeObserver_vue__);Object.defineProperty(exports,"__esModule",{value:!0}),__webpack_require__.d(exports,"ResizeObserver",function(){return __WEBPACK_IMPORTED_MODULE_0__components_ResizeObserver_vue___default.a}),exports.install=install;var plugin={version:"0.1.3",install:install};exports.default=plugin;var GlobalVue=null;"undefined"!=typeof window?GlobalVue=window.Vue:void 0!==global&&(GlobalVue=global.Vue),GlobalVue&&GlobalVue.use(plugin)}).call(exports,__webpack_require__(0))}])})}).call(exports,__webpack_require__(2)(module))},function(module,exports){module.exports=function(module){return module.webpackPolyfill||(module.deprecate=function(){},module.paths=[],module.children||(module.children=[]),Object.defineProperty(module,"loaded",{enumerable:!0,get:function(){return module.l}}),Object.defineProperty(module,"id",{enumerable:!0,get:function(){return module.i}}),module.webpackPolyfill=1),module}},function(module,exports,__webpack_require__){__webpack_require__(10);var Component=__webpack_require__(11)(__webpack_require__(5),__webpack_require__(12),"data-v-303cd025",null);module.exports=Component.exports},function(module,__webpack_exports__,__webpack_require__){"use strict";function install(Vue){Vue.component("virtual-scroller",__WEBPACK_IMPORTED_MODULE_0__components_VirtualScroller_vue___default.a)}Object.defineProperty(__webpack_exports__,"__esModule",{value:!0}),__webpack_exports__.install=install,__webpack_require__.d(__webpack_exports__,"VirtualScroller",function(){return VirtualScroller});var __WEBPACK_IMPORTED_MODULE_0__components_VirtualScroller_vue__=__webpack_require__(3),__WEBPACK_IMPORTED_MODULE_0__components_VirtualScroller_vue___default=__webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__components_VirtualScroller_vue__),VirtualScroller=__WEBPACK_IMPORTED_MODULE_0__components_VirtualScroller_vue___default.a;__webpack_exports__.default={version:"0.7.0",install:install}},function(module,__webpack_exports__,__webpack_require__){"use strict";Object.defineProperty(__webpack_exports__,"__esModule",{value:!0});var __WEBPACK_IMPORTED_MODULE_0_vue_resize__=__webpack_require__(7),__WEBPACK_IMPORTED_MODULE_1_vue_observe_visibility__=__webpack_require__(6);__webpack_exports__.default={name:"virtual-scroller",components:{ResizeObserver:__WEBPACK_IMPORTED_MODULE_0_vue_resize__.ResizeObserver},directives:{ObserveVisibility:__WEBPACK_IMPORTED_MODULE_1_vue_observe_visibility__.ObserveVisibility},props:{items:{type:Array,required:!0},renderers:{default:null},itemHeight:{type:[Number,String],default:null},typeField:{type:String,default:"type"},keyField:{type:String,default:"id"},heightField:{type:String,default:"height"},mainTag:{type:String,default:"div"},containerTag:{type:String,default:"div"},containerClass:{default:null},contentTag:{type:String,default:"div"},contentClass:{default:null},pageMode:{type:Boolean,default:!1},buffer:{type:[Number,String],default:2},poolSize:{type:[Number,String],default:1}},data:function(){return{visibleItems:[],itemContainerStyle:null,itemsStyle:null,keysEnabled:!0}},computed:{cssClass:function(){return{"page-mode":this.pageMode}},heights:function(){for(var heights={},items=this.items,field=this.heightField,accumulator=0,i=0;irect.height&&(height=rect.height-top),scroll={top:top,bottom:top+height}}else scroll={top:el.scrollTop,bottom:el.scrollTop+el.clientHeight};return scroll.bottom>=0&&scroll.top<=scroll.bottom?scroll:null},updateVisibleItems:function(){var l=this.items.length,scroll=this.getScroll(),containerHeight=void 0,offsetTop=void 0;if(scroll){var startIndex=-1,endIndex=-1;if(null===this.itemHeight){var heights=this.heights,h=void 0,a=0,b=l,i=~~(l/2),oldI=void 0;do{oldI=i,h=heights[i],hscroll.top&&(b=i),i=~~((a+b)/2)}while(i!==oldI);for(startIndex=i,offsetTop=i>0?heights[i-1]:0,containerHeight=heights[l-1],endIndex=i;endIndexl&&(endIndex=l),startIndex===this._startIndex&&endIndex===this._endIndex||(this.keysEnabled=!(startIndex>this._endIndex||endIndex0,entry)});vnode.context.$nextTick(function(){observer.observe(el)})}()},update:function(el,_ref2){var value=_ref2.value;throwValueError(value),el._vue_visibilityCallback=value},unbind:function(el){el._vue_intersectionObserver&&(el._vue_intersectionObserver.disconnect(),delete el._vue_intersectionObserver,delete el._vue_visibilityCallback)}}},function(module,exports){var g,_typeof="function"==typeof Symbol&&"symbol"==_typeof2(Symbol.iterator)?function(obj){return void 0===obj?"undefined":_typeof2(obj)}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":void 0===obj?"undefined":_typeof2(obj)};g=function(){return this}();try{g=g||Function("return this")()||(0,eval)("this")}catch(e){"object"===("undefined"==typeof window?"undefined":_typeof(window))&&(g=window)}module.exports=g},function(module,exports,__webpack_require__){"use strict";(function(global){function install(Vue){Vue.directive("observe-visibility",__WEBPACK_IMPORTED_MODULE_0__directives_observe_visibility__.a)}var __WEBPACK_IMPORTED_MODULE_0__directives_observe_visibility__=__webpack_require__(0);Object.defineProperty(exports,"__esModule",{value:!0}),__webpack_require__.d(exports,"ObserveVisibility",function(){return __WEBPACK_IMPORTED_MODULE_0__directives_observe_visibility__.a}),exports.install=install;var plugin={version:"0.1.3",install:install};exports.default=plugin;var GlobalVue=null;"undefined"!=typeof window?GlobalVue=window.Vue:void 0!==global&&(GlobalVue=global.Vue),GlobalVue&&GlobalVue.use(plugin)}).call(exports,__webpack_require__(1))}])})}).call(exports,__webpack_require__(2)(module))},function(module,exports,__webpack_require__){(function(module){var __WEBPACK_AMD_DEFINE_FACTORY__,__WEBPACK_AMD_DEFINE_ARRAY__,__WEBPACK_AMD_DEFINE_RESULT__,_typeof2="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(obj){return typeof obj}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":typeof obj};!function(root,factory){"object"==_typeof2(exports)&&"object"==_typeof2(module)?module.exports=factory():(__WEBPACK_AMD_DEFINE_ARRAY__=[],__WEBPACK_AMD_DEFINE_FACTORY__=factory,void 0!==(__WEBPACK_AMD_DEFINE_RESULT__="function"==typeof __WEBPACK_AMD_DEFINE_FACTORY__?__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports,__WEBPACK_AMD_DEFINE_ARRAY__):__WEBPACK_AMD_DEFINE_FACTORY__)&&(module.exports=__WEBPACK_AMD_DEFINE_RESULT__))}(0,function(){return function(modules){function __webpack_require__(moduleId){if(installedModules[moduleId])return installedModules[moduleId].exports;var module=installedModules[moduleId]={i:moduleId,l:!1,exports:{}};return modules[moduleId].call(module.exports,module,module.exports,__webpack_require__),module.l=!0,module.exports}var installedModules={};return __webpack_require__.m=modules,__webpack_require__.c=installedModules,__webpack_require__.i=function(value){return value},__webpack_require__.d=function(exports,name,getter){__webpack_require__.o(exports,name)||Object.defineProperty(exports,name,{configurable:!1,enumerable:!0,get:getter})},__webpack_require__.n=function(module){var getter=module&&module.__esModule?function(){return module.default}:function(){return module};return __webpack_require__.d(getter,"a",getter),getter},__webpack_require__.o=function(object,property){return Object.prototype.hasOwnProperty.call(object,property)},__webpack_require__.p="",__webpack_require__(__webpack_require__.s=6)}([function(module,exports){var g,_typeof="function"==typeof Symbol&&"symbol"==_typeof2(Symbol.iterator)?function(obj){return void 0===obj?"undefined":_typeof2(obj)}:function(obj){return obj&&"function"==typeof Symbol&&obj.constructor===Symbol&&obj!==Symbol.prototype?"symbol":void 0===obj?"undefined":_typeof2(obj)};g=function(){return this}();try{g=g||Function("return this")()||(0,eval)("this")}catch(e){"object"===("undefined"==typeof window?"undefined":_typeof(window))&&(g=window)}module.exports=g},function(module,exports,__webpack_require__){var __vue_exports__,__vue_options__;__webpack_require__(4),__vue_exports__=__webpack_require__(3);var __vue_template__=__webpack_require__(5);__vue_options__=__vue_exports__=__vue_exports__||{},"object"!=_typeof2(__vue_exports__.default)&&"function"!=typeof __vue_exports__.default||(__vue_options__=__vue_exports__=__vue_exports__.default),"function"==typeof __vue_options__&&(__vue_options__=__vue_options__.options),__vue_options__.render=__vue_template__.render,__vue_options__.staticRenderFns=__vue_template__.staticRenderFns,__vue_options__._scopeId="data-v-c7b3205a",module.exports=__vue_exports__},function(module,exports,__webpack_require__){"use strict";function getInternetExplorerVersion(){var ua=window.navigator.userAgent,msie=ua.indexOf("MSIE ");if(msie>0)return parseInt(ua.substring(msie+5,ua.indexOf(".",msie)),10);if(ua.indexOf("Trident/")>0){var rv=ua.indexOf("rv:");return parseInt(ua.substring(rv+3,ua.indexOf(".",rv)),10)}var edge=ua.indexOf("Edge/");return edge>0?parseInt(ua.substring(edge+5,ua.indexOf(".",edge)),10):-1}exports.a=getInternetExplorerVersion},function(module,exports,__webpack_require__){"use strict";var __WEBPACK_IMPORTED_MODULE_0__utils_compatibility__=__webpack_require__(2);Object.defineProperty(exports,"__esModule",{value:!0});var isIE=-1!==__webpack_require__.i(__WEBPACK_IMPORTED_MODULE_0__utils_compatibility__.a)();exports.default={name:"resize-observer",methods:{notify:function(){this.$emit("notify")},addResizeHandlers:function(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.notify),this._w===this.$el.offsetWidth&&this._h===this.$el.offsetHeight||this.notify()},removeResizeHandlers:function(){this._resizeObject&&this._resizeObject.onload&&(!isIE&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.notify),delete this._resizeObject.onload)}},mounted:function(){var _this=this;this.$nextTick(function(){_this._w=_this.$el.offsetWidth,_this._h=_this.$el.offsetHeight});var object=document.createElement("object");this._resizeObject=object,object.setAttribute("style","display: block; position: absolute; top: 0; left: 0; height: 100%; width: 100%; overflow: hidden; pointer-events: none; z-index: -1;"),object.onload=this.addResizeHandlers,object.type="text/html",isIE&&this.$el.appendChild(object),object.data="about:blank",isIE||this.$el.appendChild(object)},beforeDestroy:function(){this.removeResizeHandlers()}}},function(module,exports){},function(module,exports){module.exports={render:function(){var _vm=this;return(_vm.$createElement,_vm._c)("div",{staticClass:"resize-observer",attrs:{tabindex:"-1"}})},staticRenderFns:[]}},function(module,exports,__webpack_require__){"use strict";(function(global){function install(Vue){Vue.component("resize-observer",__WEBPACK_IMPORTED_MODULE_0__components_ResizeObserver_vue___default.a)}var __WEBPACK_IMPORTED_MODULE_0__components_ResizeObserver_vue__=__webpack_require__(1),__WEBPACK_IMPORTED_MODULE_0__components_ResizeObserver_vue___default=__webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__components_ResizeObserver_vue__);Object.defineProperty(exports,"__esModule",{value:!0}),__webpack_require__.d(exports,"ResizeObserver",function(){return __WEBPACK_IMPORTED_MODULE_0__components_ResizeObserver_vue___default.a}),exports.install=install;var plugin={version:"0.1.3",install:install};exports.default=plugin;var GlobalVue=null;"undefined"!=typeof window?GlobalVue=window.Vue:void 0!==global&&(GlobalVue=global.Vue),GlobalVue&&GlobalVue.use(plugin)}).call(exports,__webpack_require__(0))}])})}).call(exports,__webpack_require__(2)(module))},function(module,exports){module.exports=function(module){return module.webpackPolyfill||(module.deprecate=function(){},module.paths=[],module.children||(module.children=[]),Object.defineProperty(module,"loaded",{enumerable:!0,get:function(){return module.l}}),Object.defineProperty(module,"id",{enumerable:!0,get:function(){return module.i}}),module.webpackPolyfill=1),module}},function(module,exports,__webpack_require__){__webpack_require__(10);var Component=__webpack_require__(11)(__webpack_require__(5),__webpack_require__(12),"data-v-303cd025",null);module.exports=Component.exports},function(module,__webpack_exports__,__webpack_require__){"use strict";function install(Vue){Vue.component("virtual-scroller",__WEBPACK_IMPORTED_MODULE_0__components_VirtualScroller_vue___default.a)}Object.defineProperty(__webpack_exports__,"__esModule",{value:!0}),__webpack_exports__.install=install,__webpack_require__.d(__webpack_exports__,"VirtualScroller",function(){return VirtualScroller});var __WEBPACK_IMPORTED_MODULE_0__components_VirtualScroller_vue__=__webpack_require__(3),__WEBPACK_IMPORTED_MODULE_0__components_VirtualScroller_vue___default=__webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__components_VirtualScroller_vue__),VirtualScroller=__WEBPACK_IMPORTED_MODULE_0__components_VirtualScroller_vue___default.a;__webpack_exports__.default={version:"0.7.1",install:install}},function(module,__webpack_exports__,__webpack_require__){"use strict";Object.defineProperty(__webpack_exports__,"__esModule",{value:!0});var __WEBPACK_IMPORTED_MODULE_0_vue_resize__=__webpack_require__(7),__WEBPACK_IMPORTED_MODULE_1_vue_observe_visibility__=__webpack_require__(6);__webpack_exports__.default={name:"virtual-scroller",components:{ResizeObserver:__WEBPACK_IMPORTED_MODULE_0_vue_resize__.ResizeObserver},directives:{ObserveVisibility:__WEBPACK_IMPORTED_MODULE_1_vue_observe_visibility__.ObserveVisibility},props:{items:{type:Array,required:!0},renderers:{default:null},itemHeight:{type:[Number,String],default:null},typeField:{type:String,default:"type"},keyField:{type:String,default:"id"},heightField:{type:String,default:"height"},mainTag:{type:String,default:"div"},containerTag:{type:String,default:"div"},containerClass:{default:null},contentTag:{type:String,default:"div"},contentClass:{default:null},pageMode:{type:Boolean,default:!1},buffer:{type:[Number,String],default:2},poolSize:{type:[Number,String],default:1}},data:function(){return{visibleItems:[],itemContainerStyle:null,itemsStyle:null,keysEnabled:!0}},computed:{cssClass:function(){return{"page-mode":this.pageMode}},heights:function(){for(var heights={},items=this.items,field=this.heightField,accumulator=0,i=0;irect.height&&(height=rect.height-top),scroll={top:top,bottom:top+height}}else scroll={top:el.scrollTop,bottom:el.scrollTop+el.clientHeight};return scroll.bottom>=0&&scroll.top<=scroll.bottom?scroll:null},updateVisibleItems:function(){var l=this.items.length,scroll=this.getScroll(),containerHeight=void 0,offsetTop=void 0;if(scroll){var startIndex=-1,endIndex=-1;if(null===this.itemHeight){var heights=this.heights,h=void 0,a=0,b=l,i=~~(l/2),oldI=void 0;do{oldI=i,h=heights[i],hscroll.top&&(b=i),i=~~((a+b)/2)}while(i!==oldI);for(startIndex=i,offsetTop=i>0?heights[i-1]:0,containerHeight=heights[l-1],endIndex=i;endIndexl&&(endIndex=l),startIndex===this._startIndex&&endIndex===this._endIndex||(this.keysEnabled=!(startIndex>this._endIndex||endIndex0?this.heights[index-1]:0:index*this.itemHeight,this.$el.scrollTop=scrollTop},handleVisibilityChange:function(isVisible,entry){var _this=this;(isVisible||0!==entry.boundingClientRect.width||0!==entry.boundingClientRect.height)&&this.$nextTick(function(){_this.updateVisibleItems()})},applyPageMode:function(){this.pageMode?this.addWindowScroll():this.removeWindowScroll()},addWindowScroll:function(){window.addEventListener("scroll",this.updateVisibleItems,!0)},removeWindowScroll:function(){window.removeEventListener("scroll",this.updateVisibleItems,!0)}},mounted:function(){this.updateVisibleItems(),this.applyPageMode()},beforeDestroy:function(){this.removeWindowScroll()}}},function(module,__webpack_exports__,__webpack_require__){"use strict";var __WEBPACK_IMPORTED_MODULE_0__dist_vue_observe_visibility__=__webpack_require__(0);__webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__dist_vue_observe_visibility__);__webpack_require__.o(__WEBPACK_IMPORTED_MODULE_0__dist_vue_observe_visibility__,"ObserveVisibility")&&__webpack_require__.d(__webpack_exports__,"ObserveVisibility",function(){return __WEBPACK_IMPORTED_MODULE_0__dist_vue_observe_visibility__.ObserveVisibility});var __WEBPACK_IMPORTED_MODULE_1__dist_vue_observe_visibility_css__=__webpack_require__(8);__webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__dist_vue_observe_visibility_css__)},function(module,__webpack_exports__,__webpack_require__){"use strict";var __WEBPACK_IMPORTED_MODULE_0__dist_vue_resize__=__webpack_require__(1);__webpack_require__.n(__WEBPACK_IMPORTED_MODULE_0__dist_vue_resize__);__webpack_require__.o(__WEBPACK_IMPORTED_MODULE_0__dist_vue_resize__,"ResizeObserver")&&__webpack_require__.d(__webpack_exports__,"ResizeObserver",function(){return __WEBPACK_IMPORTED_MODULE_0__dist_vue_resize__.ResizeObserver});var __WEBPACK_IMPORTED_MODULE_1__dist_vue_resize_css__=__webpack_require__(9);__webpack_require__.n(__WEBPACK_IMPORTED_MODULE_1__dist_vue_resize_css__)},function(module,exports){},function(module,exports){},function(module,exports){},function(module,exports){module.exports=function(rawScriptExports,compiledTemplate,scopeId,cssModules){var esModule,scriptExports=rawScriptExports=rawScriptExports||{},type=typeof rawScriptExports.default;"object"!==type&&"function"!==type||(esModule=rawScriptExports,scriptExports=rawScriptExports.default);var options="function"==typeof scriptExports?scriptExports.options:scriptExports;if(compiledTemplate&&(options.render=compiledTemplate.render,options.staticRenderFns=compiledTemplate.staticRenderFns),scopeId&&(options._scopeId=scopeId),cssModules){var computed=options.computed||(options.computed={});Object.keys(cssModules).forEach(function(key){var module=cssModules[key];computed[key]=function(){return module}})}return{esModule:esModule,exports:scriptExports,options:options}}},function(module,exports){module.exports={render:function(){var _vm=this,_h=_vm.$createElement,_c=_vm._self._c||_h;return _c(_vm.mainTag,{directives:[{name:"observe-visibility",rawName:"v-observe-visibility",value:_vm.handleVisibilityChange,expression:"handleVisibilityChange"}],tag:"component",staticClass:"virtual-scroller",class:_vm.cssClass,on:{scroll:_vm.updateVisibleItems}},[_vm._t("before-container"),_vm._v(" "),_c(_vm.containerTag,{tag:"component",staticClass:"item-container",class:_vm.containerClass,style:_vm.itemContainerStyle},[_vm._t("before-content"),_vm._v(" "),_c(_vm.contentTag,{tag:"component",staticClass:"items",class:_vm.contentClass,style:_vm.itemsStyle},[_vm.renderers?_vm._l(_vm.visibleItems,function(item,index){return _c(_vm.renderers[item[_vm.typeField]],{key:_vm.keysEnabled&&item[_vm.keyField],tag:"component",staticClass:"item",attrs:{item:item,"item-index":_vm._startIndex+index}})}):[_vm._l(_vm.visibleItems,function(item,index){return _vm._t("default",null,{item:item,itemIndex:_vm._startIndex+index,itemKey:_vm.keysEnabled&&item[_vm.keyField]})})]],2),_vm._v(" "),_vm._t("after-content")],2),_vm._v(" "),_vm._t("after-container"),_vm._v(" "),_c("resize-observer",{on:{notify:_vm.updateVisibleItems}})],2)},staticRenderFns:[]}}])}); \ No newline at end of file diff --git a/docs/build.js b/docs/build.js index 906bef0d..60ab62d5 100644 --- a/docs/build.js +++ b/docs/build.js @@ -1,7 +1,9 @@ -!function(a){function e(n){if(i[n])return i[n].exports;var t=i[n]={i:n,l:!1,exports:{}};return a[n].call(t.exports,t,t.exports,e),t.l=!0,t.exports}var i={};return e.m=a,e.c=i,e.i=function(a){return a},e.d=function(a,i,n){e.o(a,i)||Object.defineProperty(a,i,{configurable:!1,enumerable:!0,get:n})},e.n=function(a){var i=a&&a.__esModule?function(){return a.default}:function(){return a};return e.d(i,"a",i),i},e.o=function(a,e){return Object.prototype.hasOwnProperty.call(a,e)},e.p="/",e(e.s=983)}([function(a,e,i){(function(a){var i,n,t,o="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(a){return typeof a}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":typeof a};!function(r,s){"object"==o(e)&&"object"==o(a)?a.exports=s():(n=[],i=s,t="function"==typeof i?i.apply(e,n):i,!(void 0!==t&&(a.exports=t)))}(this,function(){return function(a){function e(n){if(i[n])return i[n].exports;var t=i[n]={i:n,l:!1,exports:{}};return a[n].call(t.exports,t,t.exports,e),t.l=!0,t.exports}var i={};return e.m=a,e.c=i,e.i=function(a){return a},e.d=function(a,i,n){e.o(a,i)||Object.defineProperty(a,i,{configurable:!1,enumerable:!0,get:n})},e.n=function(a){var i=a&&a.__esModule?function(){return a.default}:function(){return a};return e.d(i,"a",i),i},e.o=function(a,e){return Object.prototype.hasOwnProperty.call(a,e)},e.p="",e(e.s=4)}([function(a,e,i){(function(a){var i,n,t,r="function"==typeof Symbol&&"symbol"==o(Symbol.iterator)?function(a){return"undefined"==typeof a?"undefined":o(a)}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":"undefined"==typeof a?"undefined":o(a)};!function(o,s){"object"==r(e)&&"object"==r(a)?a.exports=s():(n=[],i=s,void 0!==(t="function"==typeof i?i.apply(e,n):i)&&(a.exports=t))}(0,function(){return function(a){function e(n){if(i[n])return i[n].exports;var t=i[n]={i:n,l:!1,exports:{}};return a[n].call(t.exports,t,t.exports,e),t.l=!0,t.exports}var i={};return e.m=a,e.c=i,e.i=function(a){return a},e.d=function(a,i,n){e.o(a,i)||Object.defineProperty(a,i,{configurable:!1,enumerable:!0,get:n})},e.n=function(a){var i=a&&a.__esModule?function(){return a.default}:function(){return a};return e.d(i,"a",i),i},e.o=function(a,e){return Object.prototype.hasOwnProperty.call(a,e)},e.p="",e(e.s=2)}([function(a,e,i){"use strict";function n(a){if(null!==a&&"function"!=typeof a)throw new Error("observe-visibility directive expects a function as the value")}e.a={bind:function(a,e,i){var t=e.value;"undefined"==typeof IntersectionObserver?console.warn("[vue-observe-visibility] IntersectionObserver API is not available in your browser. Please install this polyfill: https://github.com/WICG/IntersectionObserver/tree/gh-pages/polyfill"):function(){n(t),a._vue_visibilityCallback=t;var e=a._vue_intersectionObserver=new IntersectionObserver(function(e){var i=e[0];a._vue_visibilityCallback&&a._vue_visibilityCallback.call(null,i.intersectionRatio>0,i)});i.context.$nextTick(function(){e.observe(a)})}()},update:function(a,e){var i=e.value;n(i),a._vue_visibilityCallback=i},unbind:function(a){a._vue_intersectionObserver&&(a._vue_intersectionObserver.disconnect(),delete a._vue_intersectionObserver,delete a._vue_visibilityCallback)}}},function(a,e){var i,n="function"==typeof Symbol&&"symbol"==r(Symbol.iterator)?function(a){return void 0===a?"undefined":r(a)}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":void 0===a?"undefined":r(a)};i=function(){return this}();try{i=i||Function("return this")()||(0,eval)("this")}catch(a){"object"===("undefined"==typeof window?"undefined":n(window))&&(i=window)}a.exports=i},function(a,e,i){"use strict";(function(a){function n(a){a.directive("observe-visibility",t.a)}var t=i(0);Object.defineProperty(e,"__esModule",{value:!0}),i.d(e,"ObserveVisibility",function(){return t.a}),e.install=n;var o={version:"0.1.3",install:n};e.default=o;var r=null;"undefined"!=typeof window?r=window.Vue:void 0!==a&&(r=a.Vue),r&&r.use(o)}).call(e,i(1))}])})}).call(e,i(2)(a))},function(a,e,i){(function(a){var i,n,t,r="function"==typeof Symbol&&"symbol"==o(Symbol.iterator)?function(a){return"undefined"==typeof a?"undefined":o(a)}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":"undefined"==typeof a?"undefined":o(a)};!function(o,s){"object"==r(e)&&"object"==r(a)?a.exports=s():(n=[],i=s,void 0!==(t="function"==typeof i?i.apply(e,n):i)&&(a.exports=t))}(0,function(){return function(a){function e(n){if(i[n])return i[n].exports;var t=i[n]={i:n,l:!1,exports:{}};return a[n].call(t.exports,t,t.exports,e),t.l=!0,t.exports}var i={};return e.m=a,e.c=i,e.i=function(a){return a},e.d=function(a,i,n){e.o(a,i)||Object.defineProperty(a,i,{configurable:!1,enumerable:!0,get:n})},e.n=function(a){var i=a&&a.__esModule?function(){return a.default}:function(){return a};return e.d(i,"a",i),i},e.o=function(a,e){return Object.prototype.hasOwnProperty.call(a,e)},e.p="",e(e.s=6)}([function(a,e){var i,n="function"==typeof Symbol&&"symbol"==r(Symbol.iterator)?function(a){return void 0===a?"undefined":r(a)}:function(a){return a&&"function"==typeof Symbol&&a.constructor===Symbol&&a!==Symbol.prototype?"symbol":void 0===a?"undefined":r(a)};i=function(){return this}();try{i=i||Function("return this")()||(0,eval)("this")}catch(a){"object"===("undefined"==typeof window?"undefined":n(window))&&(i=window)}a.exports=i},function(a,e,i){var n,t;i(4),n=i(3);var o=i(5);t=n=n||{},"object"!=r(n.default)&&"function"!=typeof n.default||(t=n=n.default),"function"==typeof t&&(t=t.options),t.render=o.render,t.staticRenderFns=o.staticRenderFns,t._scopeId="data-v-c7b3205a",a.exports=n},function(a,e,i){"use strict";function n(){var a=window.navigator.userAgent,e=a.indexOf("MSIE ");if(e>0)return parseInt(a.substring(e+5,a.indexOf(".",e)),10);if(a.indexOf("Trident/")>0){var i=a.indexOf("rv:");return parseInt(a.substring(i+3,a.indexOf(".",i)),10)}var n=a.indexOf("Edge/");return n>0?parseInt(a.substring(n+5,a.indexOf(".",n)),10):-1}e.a=n},function(a,e,i){"use strict";var n=i(2);Object.defineProperty(e,"__esModule",{value:!0});var t=-1!==i.i(n.a)();e.default={name:"resize-observer",methods:{notify:function(){this.$emit("notify")},addResizeHandlers:function(){this._resizeObject.contentDocument.defaultView.addEventListener("resize",this.notify),this._w===this.$el.offsetWidth&&this._h===this.$el.offsetHeight||this.notify()},removeResizeHandlers:function(){this._resizeObject&&this._resizeObject.onload&&(!t&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener("resize",this.notify),delete this._resizeObject.onload)}},mounted:function(){var a=this;this.$nextTick(function(){a._w=a.$el.offsetWidth,a._h=a.$el.offsetHeight});var e=document.createElement("object");this._resizeObject=e,e.setAttribute("style","display: block; position: absolute; top: 0; left: 0; height: 100%; width: 100%; overflow: hidden; pointer-events: none; z-index: -1;"),e.onload=this.addResizeHandlers,e.type="text/html",t&&this.$el.appendChild(e),e.data="about:blank",t||this.$el.appendChild(e)},beforeDestroy:function(){this.removeResizeHandlers()}}},function(a,e){},function(a,e){a.exports={render:function(){var a=this;return(a.$createElement,a._c)("div",{staticClass:"resize-observer",attrs:{tabindex:"-1"}})},staticRenderFns:[]}},function(a,e,i){"use strict";(function(a){function n(a){a.component("resize-observer",o.a)}var t=i(1),o=i.n(t);Object.defineProperty(e,"__esModule",{value:!0}),i.d(e,"ResizeObserver",function(){return o.a}),e.install=n;var r={version:"0.1.3",install:n};e.default=r;var s=null;"undefined"!=typeof window?s=window.Vue:void 0!==a&&(s=a.Vue),s&&s.use(r)}).call(e,i(0))}])})}).call(e,i(2)(a))},function(a,e){a.exports=function(a){return a.webpackPolyfill||(a.deprecate=function(){},a.paths=[],a.children||(a.children=[]),Object.defineProperty(a,"loaded",{enumerable:!0,get:function(){return a.l}}),Object.defineProperty(a,"id",{enumerable:!0,get:function(){return a.i}}),a.webpackPolyfill=1),a}},function(a,e,i){i(10);var n=i(11)(i(5),i(12),"data-v-303cd025",null);a.exports=n.exports},function(a,e,i){"use strict";function n(a){a.component("virtual-scroller",o.a)}Object.defineProperty(e,"__esModule",{value:!0}),e.install=n,i.d(e,"VirtualScroller",function(){return r});var t=i(3),o=i.n(t),r=o.a;e.default={version:"0.7.0",install:n}},function(a,e,i){"use strict";Object.defineProperty(e,"__esModule",{value:!0});var n=i(7),t=i(6);e.default={name:"virtual-scroller",components:{ResizeObserver:n.ResizeObserver},directives:{ObserveVisibility:t.ObserveVisibility},props:{items:{type:Array,required:!0},renderers:{default:null},itemHeight:{type:[Number,String],default:null},typeField:{type:String,default:"type"},keyField:{type:String,default:"id"},heightField:{type:String,default:"height"},mainTag:{type:String,default:"div"},containerTag:{type:String,default:"div"},containerClass:{default:null},contentTag:{type:String,default:"div"},contentClass:{default:null},pageMode:{type:Boolean,default:!1},buffer:{type:[Number,String],default:2},poolSize:{type:[Number,String],default:1}},data:function(){return{visibleItems:[],itemContainerStyle:null,itemsStyle:null,keysEnabled:!0}},computed:{cssClass:function(){return{"page-mode":this.pageMode}},heights:function a(){for(var a={},e=this.items,i=this.heightField,n=0,t=0;ti.height&&(t=i.height-n),e={top:n,bottom:n+t}}else e={top:a.scrollTop,bottom:a.scrollTop+a.clientHeight};return e.bottom>=0&&e.top<=e.bottom?e:null},updateVisibleItems:function(){var a=this.items.length,e=this.getScroll(),i=void 0,n=void 0;if(e){var t=-1,o=-1;if(null===this.itemHeight){var r=this.heights,s=void 0,c=0,l=a,u=~~(a/2),m=void 0;do m=u,s=r[u],se.top&&(l=u),u=~~((c+l)/2);while(u!==m);for(t=u,n=u>0?r[u-1]:0,i=r[a-1],o=u;oa&&(o=a),t===this._startIndex&&o===this._endIndex||(this.keysEnabled=!(t>this._endIndex||o=0&&(e+=a.precision);var i=a.precision*Math.floor(t.rand(e/a.precision,a.min/a.precision));return i},this.arrayElement=function(e){e=e||["a","b","c"];var i=a.random.number({max:e.length-1});return e[i]},this.objectElement=function(e,i){e=e||{foo:"bar",too:"car"};var n=Object.keys(e),t=a.random.arrayElement(n);return"key"===i?t:e[t]},this.uuid=function(){var a=this,e="xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx",i=function(e){var i=a.number({min:0,max:15}),n="x"==e?i:3&i|8;return n.toString(16)};return e.replace(/[xy]/g,i)},this.boolean=function(){return!!a.random.number(1)},this.word=function(e){var i=["commerce.department","commerce.productName","commerce.productAdjective","commerce.productMaterial","commerce.product","commerce.color","company.catchPhraseAdjective","company.catchPhraseDescriptor","company.catchPhraseNoun","company.bsAdjective","company.bsBuzz","company.bsNoun","address.streetSuffix","address.county","address.country","address.state","finance.accountName","finance.transactionType","finance.currencyName","hacker.noun","hacker.verb","hacker.adjective","hacker.ingverb","hacker.abbreviation","name.jobDescriptor","name.jobArea","name.jobType"],n=a.random.arrayElement(i);return a.fake("{{"+n+"}}")},this.words=function(e){var i=[];"undefined"==typeof e&&(e=a.random.number({min:1,max:3}));for(var n=0;n-1)return a.splice(i,1)}}function r(a,e){return $n.call(a,e)}function s(a){return"string"==typeof a||"number"==typeof a}function c(a){var e=Object.create(null);return function(i){var n=e[i];return n||(e[i]=a(i))}}function l(a,e){function i(i){var n=arguments.length;return n?n>1?a.apply(e,arguments):a.call(e,i):a.call(e)}return i._length=a.length,i}function u(a,e){e=e||0;for(var i=a.length-e,n=new Array(i);i--;)n[i]=a[i+e];return n}function m(a,e){for(var i in e)a[i]=e[i];return a}function p(a){return null!==a&&"object"==typeof a}function d(a){return it.call(a)===nt}function f(a){for(var e={},i=0;i=0&&Lt[i].id>a.id;)i--;Lt.splice(Math.max(i,Dt)+1,0,a)}else Lt.push(a);Rt||(Rt=!0,bt(O))}}function W(a){Nt.clear(),q(a,Nt)}function q(a,e){var i,n,t=Array.isArray(a);if((t||p(a))&&Object.isExtensible(a)){if(a.__ob__){var o=a.__ob__.dep.id;if(e.has(o))return;e.add(o)}if(t)for(i=a.length;i--;)q(a[i],e);else for(n=Object.keys(a),i=n.length;i--;)q(a[n[i]],e)}}function U(a){a._watchers=[],Z(a),X(a),$(a),Y(a),aa(a)}function Z(a){var e=a.$options.props;if(e){var i=a.$options.propsData||{},n=a.$options._propKeys=Object.keys(e),t=!a.$parent;jt.shouldConvert=t;for(var o=function(t){var o=n[t];B(a,o,N(o,e,i,a))},r=0;r1?u(i):i;for(var n=u(arguments,1),t=0,o=i.length;t-1:a.test(e)}function Wa(a){var e={};e.get=function(){return rt},Object.defineProperty(a,"config",e),a.util=_t,a.set=C,a.delete=K,a.nextTick=bt,a.options=Object.create(null),rt._assetTypes.forEach(function(e){a.options[e+"s"]=Object.create(null)}),a.options._base=a,m(a.options.components,Zt),Ja(a),Fa(a),Ia(a),Oa(a)}function qa(a){for(var e=a.data,i=a,n=a;n.child;)n=n.child._vnode,n.data&&(e=Ua(n.data,e));for(;i=i.parent;)i.data&&(e=Ua(e,i.data));return Za(e)}function Ua(a,e){return{staticClass:$a(a.staticClass,e.staticClass),class:a.class?[a.class,e.class]:e.class}}function Za(a){var e=a.class,i=a.staticClass;return i||e?$a(i,Ya(e)):""}function $a(a,e){return a?e?a+" "+e:a:e||""}function Ya(a){var e="";if(!a)return e;if("string"==typeof a)return a;if(Array.isArray(a)){for(var i,n=0,t=a.length;n-1?mo[a]=e.constructor===window.HTMLUnknownElement||e.constructor===window.HTMLElement:mo[a]=/HTMLUnknownElement/.test(e.toString())}function ae(a){if("string"==typeof a){if(a=document.querySelector(a),!a)return document.createElement("div")}return a}function ee(a,e){var i=document.createElement(a);return"select"!==a?i:(e.data&&e.data.attrs&&"multiple"in e.data.attrs&&i.setAttribute("multiple","multiple"),i)}function ie(a,e){return document.createElementNS(ro[a],e)}function ne(a){return document.createTextNode(a)}function te(a){return document.createComment(a)}function oe(a,e,i){a.insertBefore(e,i)}function re(a,e){a.removeChild(e)}function se(a,e){a.appendChild(e)}function ce(a){return a.parentNode}function le(a){return a.nextSibling}function ue(a){return a.tagName}function me(a,e){a.textContent=e}function pe(a,e,i){a.setAttribute(e,i)}function de(a,e){var i=a.data.ref;if(i){var n=a.context,t=a.child||a.elm,r=n.$refs;e?Array.isArray(r[i])?o(r[i],t):r[i]===t&&(r[i]=void 0):a.data.refInFor?Array.isArray(r[i])&&r[i].indexOf(t)<0?r[i].push(t):r[i]=[t]:r[i]=t}}function fe(a){return null==a}function he(a){return null!=a}function ge(a,e){return a.key===e.key&&a.tag===e.tag&&a.isComment===e.isComment&&!a.data==!e.data}function ve(a,e,i){var n,t,o={};for(n=e;n<=i;++n)t=a[n].key,he(t)&&(o[t]=n);return o}function be(a){function e(a){return new Jt(j.tagName(a).toLowerCase(),{},[],void 0,a)}function i(a,e){function i(){0===--i.listeners&&n(a)}return i.listeners=e,i}function n(a){var e=j.parentNode(a);e&&j.removeChild(e,a)}function o(a,e,i,n,t){if(a.isRootInsert=!t,!r(a,e,i,n)){var o=a.data,s=a.children,c=a.tag;he(c)?(a.elm=a.ns?j.createElementNS(a.ns,c):j.createElement(c,a),f(a),u(a,s,e),he(o)&&p(a,e),l(i,a.elm,n)):a.isComment?(a.elm=j.createComment(a.text),l(i,a.elm,n)):(a.elm=j.createTextNode(a.text),l(i,a.elm,n))}}function r(a,e,i,n){var t=a.data;if(he(t)){var o=he(a.child)&&t.keepAlive;if(he(t=t.hook)&&he(t=t.init)&&t(a,!1,i,n),he(a.child))return d(a,e),o&&c(a,e,i,n),!0}}function c(a,e,i,n){for(var t,o=a;o.child;)if(o=o.child._vnode,he(t=o.data)&&he(t=t.transition)){for(t=0;tp?(l=fe(i[g+1])?null:i[g+1].elm,h(a,l,i,m,g,n)):m>g&&v(a,e,u,p)}function w(a,e,i,n){if(a!==e){if(e.isStatic&&a.isStatic&&e.key===a.key&&(e.isCloned||e.isOnce))return e.elm=a.elm,void(e.child=a.child);var t,o=e.data,r=he(o);r&&he(t=o.hook)&&he(t=t.prepatch)&&t(a,e);var s=e.elm=a.elm,c=a.children,l=e.children;if(r&&m(e)){for(t=0;t-1?e.split(/\s+/).forEach(function(e){return a.classList.add(e)}):a.classList.add(e);else{var i=" "+a.getAttribute("class")+" ";i.indexOf(" "+e+" ")<0&&a.setAttribute("class",(i+e).trim())}}function Ee(a,e){if(e&&e.trim())if(a.classList)e.indexOf(" ")>-1?e.split(/\s+/).forEach(function(e){return a.classList.remove(e)}):a.classList.remove(e);else{for(var i=" "+a.getAttribute("class")+" ",n=" "+e+" ";i.indexOf(n)>=0;)i=i.replace(n," ");a.setAttribute("class",i.trim())}}function Te(a){To(function(){To(a)})}function Ne(a,e){(a._transitionClasses||(a._transitionClasses=[])).push(e),De(a,e)}function He(a,e){a._transitionClasses&&o(a._transitionClasses,e),Ee(a,e)}function Je(a,e,i){var n=Fe(a,e),t=n.type,o=n.timeout,r=n.propCount;if(!t)return i();var s=t===Lo?Go:Eo,c=0,l=function(){a.removeEventListener(s,u),i()},u=function(e){e.target===a&&++c>=r&&l()};setTimeout(function(){c0&&(i=Lo,u=r,m=o.length):e===Po?l>0&&(i=Po,u=l,m=c.length):(u=Math.max(r,l),i=u>0?r>l?Lo:Po:null,m=i?i===Lo?o.length:c.length:0);var p=i===Lo&&No.test(n[Ro+"Property"]);return{type:i,timeout:u,propCount:m,hasTransform:p}}function Ie(a,e){for(;a.length1,C=i._enterCb=Ue(function(){j&&He(i,x),C.cancelled?(j&&He(i,y),M&&M(i)):A&&A(i),i._enterCb=null});a.data.show||xa(a.data.hook||(a.data.hook={}),"insert",function(){var e=i.parentNode,n=e&&e._pending&&e._pending[a.key];n&&n.context===a.context&&n.tag===a.tag&&n.elm._leaveCb&&n.elm._leaveCb(),S&&S(i,C)},"transition-insert"),z&&z(i),j&&(Ne(i,y),Ne(i,x),Te(function(){He(i,y),C.cancelled||B||Je(i,o,C)})),a.data.show&&(e&&e(),S&&S(i,C)),j||B||C()}}}function We(a,e){function i(){g.cancelled||(a.data.show||((n.parentNode._pending||(n.parentNode._pending={}))[a.key]=a),l&&l(n),f&&(Ne(n,s),Ne(n,c),Te(function(){He(n,s),g.cancelled||h||Je(n,r,g)})),u&&u(n,g),f||h||g())}var n=a.elm;n._enterCb&&(n._enterCb.cancelled=!0,n._enterCb());var t=qe(a.data.transition);if(!t)return e();if(!n._leaveCb&&1===n.nodeType){var o=t.css,r=t.type,s=t.leaveClass,c=t.leaveActiveClass,l=t.beforeLeave,u=t.leave,m=t.afterLeave,p=t.leaveCancelled,d=t.delayLeave,f=o!==!1&&!pt,h=u&&(u._length||u.length)>1,g=n._leaveCb=Ue(function(){n.parentNode&&n.parentNode._pending&&(n.parentNode._pending[a.key]=null),f&&He(n,c),g.cancelled?(f&&He(n,s),p&&p(n)):(e(),m&&m(n)),n._leaveCb=null});d?d(i):i()}}function qe(a){if(a){if("object"==typeof a){var e={};return a.css!==!1&&m(e,Ho(a.name||"v")),m(e,a),e}return"string"==typeof a?Ho(a):void 0}}function Ue(a){var e=!1;return function(){e||(e=!0,a())}}function Ze(a,e){e.data.show||Ve(e)}function $e(a,e,i){var n=e.value,t=a.multiple;if(!t||Array.isArray(n)){for(var o,r,s=0,c=a.options.length;s-1,r.selected!==o&&(r.selected=o);else if(v(Qe(r),n))return void(a.selectedIndex!==s&&(a.selectedIndex=s));t||(a.selectedIndex=-1)}}function Ye(a,e){for(var i=0,n=e.length;i',i.innerHTML.indexOf(e)>0}function mi(a){return Xo=Xo||document.createElement("div"),Xo.innerHTML=a,Xo.textContent}function pi(a,e){return e&&(a=a.replace(qr,"\n")),a.replace(Vr,"<").replace(Wr,">").replace(Ur,"&").replace(Zr,'"')}function di(a,e){function i(e){m+=e,a=a.substring(e)}function n(){var e=a.match(ur);if(e){var n={tagName:e[1],attrs:[],start:m};i(e[0].length);for(var t,o;!(t=a.match(mr))&&(o=a.match(sr));)i(o[0].length),n.attrs.push(o);if(t)return n.unarySlash=t[1],i(t[0].length),n.end=m,n}}function t(a){var i=a.tagName,n=a.unarySlash;l&&("p"===s&&nr(i)&&o("",s),ir(i)&&s===i&&o("",i));for(var t=u(i)||"html"===i&&"head"===s||!!n,r=a.attrs.length,m=new Array(r),p=0;p=0&&c[o].tag.toLowerCase()!==r;o--);}else o=0;if(o>=0){for(var l=c.length-1;l>=o;l--)e.end&&e.end(c[l].tag,n,t);c.length=o,s=o&&c[o-1].tag}else"br"===i.toLowerCase()?e.start&&e.start(i,[],!0,n,t):"p"===i.toLowerCase()&&(e.start&&e.start(i,[],!1,n,t),e.end&&e.end(i,n,t))}for(var r,s,c=[],l=e.expectHTML,u=e.isUnaryTag||tt,m=0;a;){if(r=a,s&&Ir(s,e.sfc,c)){var p=s.toLowerCase(),d=Or[p]||(Or[p]=new RegExp("([\\s\\S]*?)(]*>)","i")),f=0,h=a.replace(d,function(a,i,n){return f=n.length,"script"!==p&&"style"!==p&&"noscript"!==p&&(i=i.replace(//g,"$1").replace(//g,"$1")),e.chars&&e.chars(i),""});m+=a.length-h.length,a=h,o("",p,m-f,m)}else{var g=a.indexOf("<");if(0===g){if(fr.test(a)){var v=a.indexOf("-->");if(v>=0){i(v+3);continue}}if(hr.test(a)){var b=a.indexOf("]>");if(b>=0){i(b+2);continue}}var k=a.match(dr);if(k){i(k[0].length);continue}var w=a.match(pr);if(w){var y=m;i(w[0].length),o(w[0],w[1],y,m);continue}var x=n();if(x){t(x);continue}}var z=void 0,S=void 0,A=void 0;if(g>0){for(S=a.slice(g);!(pr.test(S)||ur.test(S)||fr.test(S)||hr.test(S)||(A=S.indexOf("<",1),A<0));)g+=A,S=a.slice(g);z=a.substring(0,g),i(g)}g<0&&(z=a,a=""),e.chars&&z&&e.chars(z)}if(a===r&&e.chars){e.chars(a);break}}o()}function fi(a){function e(){(r||(r=[])).push(a.slice(f,t).trim()),f=t+1}var i,n,t,o,r,s=!1,c=!1,l=!1,u=!1,m=0,p=0,d=0,f=0;for(t=0;t=0&&(g=a.charAt(h)," "===g);h--);g&&/[\w$]/.test(g)||(u=!0)}}else void 0===o?(f=t+1,o=a.slice(0,t).trim()):e();if(void 0===o?o=a.slice(0,t).trim():0!==f&&e(),r)for(t=0;tr&&o.push(JSON.stringify(a.slice(r,t)));var s=fi(n[1].trim());o.push("_s("+s+")"),r=t+n[0].length}return r=vr}function Bi(a){return 34===a||39===a}function Ci(a){var e=1;for(yr=wr;!ji();)if(a=Mi(),Bi(a))Ki(a);else if(91===a&&e++,93===a&&e--,0===e){xr=wr;break}}function Ki(a){for(var e=a;!ji()&&(a=Mi(),a!==e););}function _i(a,e){zr=e.warn||vi,Sr=e.getTagNamespace||tt,Ar=e.mustUseProp||tt,Mr=e.isPreTag||tt,jr=bi(e.modules,"preTransformNode"),Br=bi(e.modules,"transformNode"),Cr=bi(e.modules,"postTransformNode"),Kr=e.delimiters;var i,n,t=[],o=e.preserveWhitespace!==!1,r=!1,s=!1;return di(a,{expectHTML:e.expectHTML,isUnaryTag:e.isUnaryTag,shouldDecodeNewlines:e.shouldDecodeNewlines,start:function(a,o,c){function l(a){}var u=n&&n.ns||Sr(a);mt&&"svg"===u&&(o=Zi(o));var m={type:1,tag:a,attrsList:o,attrsMap:Wi(o),parent:n,children:[]};u&&(m.ns=u),Ui(m)&&!gt()&&(m.forbidden=!0);for(var p=0;p-1:_q("+e+","+o+")"),xi(a,"change","var $$a="+e+",$$el=$event.target,$$c=$$el.checked?("+o+"):("+r+");if(Array.isArray($$a)){var $$v="+(n?"_n("+t+")":t)+",$$i=_i($$a,$$v);if($$c){$$i<0&&("+e+"=$$a.concat($$v))}else{$$i>-1&&("+e+"=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{"+e+"=$$c}",null,!0)}function En(a,e,i){var n=i&&i.number,t=zi(a,"value")||"null";t=n?"_n("+t+")":t,ki(a,"checked","_q("+e+","+t+")"),xi(a,"change",Hn(e,t),null,!0)}function Tn(a,e,i){var n=a.attrsMap.type,t=i||{},o=t.lazy,r=t.number,s=t.trim,c=o||mt&&"range"===n?"change":"input",l=!o&&"range"!==n,u="input"===a.tag||"textarea"===a.tag,m=u?"$event.target.value"+(s?".trim()":""):s?"(typeof $event === 'string' ? $event.trim() : $event)":"$event";m=r||"number"===n?"_n("+m+")":m;var p=Hn(e,m);u&&l&&(p="if($event.target.composing)return;"+p),ki(a,"value",u?"_s("+e+")":"("+e+")"),xi(a,c,p,null,!0),(s||r||"number"===n)&&xi(a,"blur","$forceUpdate()")}function Nn(a,e,i){var n=i&&i.number,t='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(val)":"val")+"})"+(null==a.attrsMap.multiple?"[0]":""),o=Hn(e,t);xi(a,"change",o,null,!0)}function Hn(a,e){var i=Ai(a);return null===i.idx?a+"="+e:"var $$exp = "+i.exp+", $$idx = "+i.idx+";if (!Array.isArray($$exp)){"+a+"="+e+"}else{$$exp.splice($$idx, 1, "+e+")}"}function Jn(a,e){e.value&&ki(a,"textContent","_s("+e.value+")")}function Fn(a,e){e.value&&ki(a,"innerHTML","_s("+e.value+")")}function In(a,e){return e=e?m(m({},ws),e):ws,Kn(a,e)}function On(a,e,i){var n=(e&&e.warn||wt,e&&e.delimiters?String(e.delimiters)+a:a);if(ks[n])return ks[n];var t={},o=In(a,e);t.render=Vn(o.render);var r=o.staticRenderFns.length;t.staticRenderFns=new Array(r);for(var s=0;s0,dt=ut&&ut.indexOf("edge/")>0,ft=ut&&ut.indexOf("android")>0,ht=ut&&/iphone|ipad|ipod|ios/.test(ut),gt=function(){return void 0===qn&&(qn=!lt&&"undefined"!=typeof e&&"server"===e.process.env.VUE_ENV),qn},vt=lt&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__,bt=function(){function a(){n=!1;var a=i.slice(0);i.length=0;for(var e=0;e1&&(e[i[0].trim()]=i[1].trim())}}),e}),Ao=/^--/,Mo=/\s*!important$/,jo=function(a,e,i){Ao.test(e)?a.style.setProperty(e,i):Mo.test(i)?a.style.setProperty(e,i.replace(Mo,""),"important"):a.style[Co(e)]=i},Bo=["Webkit","Moz","ms"],Co=c(function(a){if(Yt=Yt||document.createElement("div"),a=Qn(a),"filter"!==a&&a in Yt.style)return a;for(var e=a.charAt(0).toUpperCase()+a.slice(1),i=0;i\/=]+)/,or=/(?:=)/,rr=[/"([^"]*)"+/.source,/'([^']*)'+/.source,/([^\s"'=<>`]+)/.source],sr=new RegExp("^\\s*"+tr.source+"(?:\\s*("+or.source+")\\s*(?:"+rr.join("|")+"))?"),cr="[a-zA-Z_][\\w\\-\\.]*",lr="((?:"+cr+"\\:)?"+cr+")",ur=new RegExp("^<"+lr),mr=/^\s*(\/?)>/,pr=new RegExp("^<\\/"+lr+"[^>]*>"),dr=/^]+>/i,fr=/^/g,"$1").replace(//g,"$1")),e.chars&&e.chars(i),""});m+=a.length-h.length,a=h,o("",d,m-f,m)}else{var g=a.indexOf("<");if(0===g){if(fr.test(a)){var v=a.indexOf("-->");if(v>=0){i(v+3);continue}}if(hr.test(a)){var b=a.indexOf("]>");if(b>=0){i(b+2);continue}}var k=a.match(pr);if(k){i(k[0].length);continue}var y=a.match(dr);if(y){var x=m;i(y[0].length),o(y[0],y[1],x,m);continue}var w=n();if(w){t(w);continue}}var B=void 0,z=void 0,S=void 0;if(g>0){for(z=a.slice(g);!(dr.test(z)||ur.test(z)||fr.test(z)||hr.test(z)||(S=z.indexOf("<",1),S<0));)g+=S,z=a.slice(g);B=a.substring(0,g),i(g)}g<0&&(B=a,a=""),e.chars&&B&&e.chars(B)}if(a===r&&e.chars){e.chars(a);break}}o()}function fi(a){function e(){(r||(r=[])).push(a.slice(f,t).trim()),f=t+1}var i,n,t,o,r,s=!1,c=!1,l=!1,u=!1,m=0,d=0,p=0,f=0;for(t=0;t=0&&(g=a.charAt(h)," "===g);h--);g&&/[\w$]/.test(g)||(u=!0)}}else void 0===o?(f=t+1,o=a.slice(0,t).trim()):e();if(void 0===o?o=a.slice(0,t).trim():0!==f&&e(),r)for(t=0;tr&&o.push(JSON.stringify(a.slice(r,t)));var s=fi(n[1].trim());o.push("_s("+s+")"),r=t+n[0].length}return r=vr}function Mi(a){return 34===a||39===a}function Fi(a){var e=1;for(xr=yr;!Ci();)if(a=Ai(),Mi(a))_i(a);else if(91===a&&e++,93===a&&e--,0===e){wr=yr;break}}function _i(a){for(var e=a;!Ci()&&(a=Ai(),a!==e););}function ji(a,e){Br=e.warn||vi,zr=e.getTagNamespace||tt,Sr=e.mustUseProp||tt,Ar=e.isPreTag||tt,Cr=bi(e.modules,"preTransformNode"),Mr=bi(e.modules,"transformNode"),Fr=bi(e.modules,"postTransformNode"),_r=e.delimiters;var i,n,t=[],o=e.preserveWhitespace!==!1,r=!1,s=!1;return pi(a,{expectHTML:e.expectHTML,isUnaryTag:e.isUnaryTag,shouldDecodeNewlines:e.shouldDecodeNewlines,start:function(a,o,c){function l(a){}var u=n&&n.ns||zr(a);mt&&"svg"===u&&(o=Xi(o));var m={type:1,tag:a,attrsList:o,attrsMap:Hi(o),parent:n,children:[]};u&&(m.ns=u),Zi(m)&&!gt()&&(m.forbidden=!0);for(var d=0;d-1:_q("+e+","+o+")"),wi(a,"change","var $$a="+e+",$$el=$event.target,$$c=$$el.checked?("+o+"):("+r+");if(Array.isArray($$a)){var $$v="+(n?"_n("+t+")":t)+",$$i=_i($$a,$$v);if($$c){$$i<0&&("+e+"=$$a.concat($$v))}else{$$i>-1&&("+e+"=$$a.slice(0,$$i).concat($$a.slice($$i+1)))}}else{"+e+"=$$c}",null,!0)}function Qn(a,e,i){var n=i&&i.number,t=Bi(a,"value")||"null";t=n?"_n("+t+")":t,ki(a,"checked","_q("+e+","+t+")"),wi(a,"change",Nn(e,t),null,!0)}function Vn(a,e,i){var n=a.attrsMap.type,t=i||{},o=t.lazy,r=t.number,s=t.trim,c=o||mt&&"range"===n?"change":"input",l=!o&&"range"!==n,u="input"===a.tag||"textarea"===a.tag,m=u?"$event.target.value"+(s?".trim()":""):s?"(typeof $event === 'string' ? $event.trim() : $event)":"$event"; +m=r||"number"===n?"_n("+m+")":m;var d=Nn(e,m);u&&l&&(d="if($event.target.composing)return;"+d),ki(a,"value",u?"_s("+e+")":"("+e+")"),wi(a,c,d,null,!0),(s||r||"number"===n)&&wi(a,"blur","$forceUpdate()")}function Un(a,e,i){var n=i&&i.number,t='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(val)":"val")+"})"+(null==a.attrsMap.multiple?"[0]":""),o=Nn(e,t);wi(a,"change",o,null,!0)}function Nn(a,e){var i=Si(a);return null===i.idx?a+"="+e:"var $$exp = "+i.exp+", $$idx = "+i.idx+";if (!Array.isArray($$exp)){"+a+"="+e+"}else{$$exp.splice($$idx, 1, "+e+")}"}function Jn(a,e){e.value&&ki(a,"textContent","_s("+e.value+")")}function Kn(a,e){e.value&&ki(a,"innerHTML","_s("+e.value+")")}function Dn(a,e){return e=e?m(m({},ys),e):ys,_n(a,e)}function Tn(a,e,i){var n=(e&&e.warn||yt,e&&e.delimiters?String(e.delimiters)+a:a);if(ks[n])return ks[n];var t={},o=Dn(a,e);t.render=Pn(o.render);var r=o.staticRenderFns.length;t.staticRenderFns=new Array(r);for(var s=0;s0,pt=ut&&ut.indexOf("edge/")>0,ft=ut&&ut.indexOf("android")>0,ht=ut&&/iphone|ipad|ipod|ios/.test(ut),gt=function(){return void 0===Wn&&(Wn=!lt&&"undefined"!=typeof e&&"server"===e.process.env.VUE_ENV),Wn},vt=lt&&window.__VUE_DEVTOOLS_GLOBAL_HOOK__,bt=function(){function a(){n=!1;var a=i.slice(0);i.length=0;for(var e=0;e1&&(e[i[0].trim()]=i[1].trim())}}),e}),So=/^--/,Ao=/\s*!important$/,Co=function(a,e,i){So.test(e)?a.style.setProperty(e,i):Ao.test(i)?a.style.setProperty(e,i.replace(Ao,""),"important"):a.style[Fo(e)]=i},Mo=["Webkit","Moz","ms"],Fo=c(function(a){if(Yt=Yt||document.createElement("div"),a=qn(a),"filter"!==a&&a in Yt.style)return a;for(var e=a.charAt(0).toUpperCase()+a.slice(1),i=0;i\/=]+)/,or=/(?:=)/,rr=[/"([^"]*)"+/.source,/'([^']*)'+/.source,/([^\s"'=<>`]+)/.source],sr=new RegExp("^\\s*"+tr.source+"(?:\\s*("+or.source+")\\s*(?:"+rr.join("|")+"))?"),cr="[a-zA-Z_][\\w\\-\\.]*",lr="((?:"+cr+"\\:)?"+cr+")",ur=new RegExp("^<"+lr),mr=/^\s*(\/?)>/,dr=new RegExp("^<\\/"+lr+"[^>]*>"),pr=/^]+>/i,fr=/^');\n\n if (commentEnd >= 0) {\n advance(commentEnd + 3);\n continue\n }\n }\n\n // http://en.wikipedia.org/wiki/Conditional_comment#Downlevel-revealed_conditional_comment\n if (conditionalComment.test(html)) {\n var conditionalEnd = html.indexOf(']>');\n\n if (conditionalEnd >= 0) {\n advance(conditionalEnd + 2);\n continue\n }\n }\n\n // Doctype:\n var doctypeMatch = html.match(doctype);\n if (doctypeMatch) {\n advance(doctypeMatch[0].length);\n continue\n }\n\n // End tag:\n var endTagMatch = html.match(endTag);\n if (endTagMatch) {\n var curIndex = index;\n advance(endTagMatch[0].length);\n parseEndTag(endTagMatch[0], endTagMatch[1], curIndex, index);\n continue\n }\n\n // Start tag:\n var startTagMatch = parseStartTag();\n if (startTagMatch) {\n handleStartTag(startTagMatch);\n continue\n }\n }\n\n var text = (void 0), rest$1 = (void 0), next = (void 0);\n if (textEnd > 0) {\n rest$1 = html.slice(textEnd);\n while (\n !endTag.test(rest$1) &&\n !startTagOpen.test(rest$1) &&\n !comment.test(rest$1) &&\n !conditionalComment.test(rest$1)\n ) {\n // < in plain text, be forgiving and treat it as text\n next = rest$1.indexOf('<', 1);\n if (next < 0) { break }\n textEnd += next;\n rest$1 = html.slice(textEnd);\n }\n text = html.substring(0, textEnd);\n advance(textEnd);\n }\n\n if (textEnd < 0) {\n text = html;\n html = '';\n }\n\n if (options.chars && text) {\n options.chars(text);\n }\n } else {\n var stackedTag = lastTag.toLowerCase();\n var reStackedTag = reCache[stackedTag] || (reCache[stackedTag] = new RegExp('([\\\\s\\\\S]*?)(]*>)', 'i'));\n var endTagLength = 0;\n var rest = html.replace(reStackedTag, function (all, text, endTag) {\n endTagLength = endTag.length;\n if (stackedTag !== 'script' && stackedTag !== 'style' && stackedTag !== 'noscript') {\n text = text\n .replace(//g, '$1')\n .replace(//g, '$1');\n }\n if (options.chars) {\n options.chars(text);\n }\n return ''\n });\n index += html.length - rest.length;\n html = rest;\n parseEndTag('', stackedTag, index - endTagLength, index);\n }\n\n if (html === last && options.chars) {\n options.chars(html);\n break\n }\n }\n\n // Clean up any remaining tags\n parseEndTag();\n\n function advance (n) {\n index += n;\n html = html.substring(n);\n }\n\n function parseStartTag () {\n var start = html.match(startTagOpen);\n if (start) {\n var match = {\n tagName: start[1],\n attrs: [],\n start: index\n };\n advance(start[0].length);\n var end, attr;\n while (!(end = html.match(startTagClose)) && (attr = html.match(attribute))) {\n advance(attr[0].length);\n match.attrs.push(attr);\n }\n if (end) {\n match.unarySlash = end[1];\n advance(end[0].length);\n match.end = index;\n return match\n }\n }\n }\n\n function handleStartTag (match) {\n var tagName = match.tagName;\n var unarySlash = match.unarySlash;\n\n if (expectHTML) {\n if (lastTag === 'p' && isNonPhrasingTag(tagName)) {\n parseEndTag('', lastTag);\n }\n if (canBeLeftOpenTag(tagName) && lastTag === tagName) {\n parseEndTag('', tagName);\n }\n }\n\n var unary = isUnaryTag$$1(tagName) || tagName === 'html' && lastTag === 'head' || !!unarySlash;\n\n var l = match.attrs.length;\n var attrs = new Array(l);\n for (var i = 0; i < l; i++) {\n var args = match.attrs[i];\n // hackish work around FF bug https://bugzilla.mozilla.org/show_bug.cgi?id=369778\n if (IS_REGEX_CAPTURING_BROKEN && args[0].indexOf('\"\"') === -1) {\n if (args[3] === '') { delete args[3]; }\n if (args[4] === '') { delete args[4]; }\n if (args[5] === '') { delete args[5]; }\n }\n var value = args[3] || args[4] || args[5] || '';\n attrs[i] = {\n name: args[1],\n value: decodeAttr(\n value,\n options.shouldDecodeNewlines\n )\n };\n }\n\n if (!unary) {\n stack.push({ tag: tagName, attrs: attrs });\n lastTag = tagName;\n unarySlash = '';\n }\n\n if (options.start) {\n options.start(tagName, attrs, unary, match.start, match.end);\n }\n }\n\n function parseEndTag (tag, tagName, start, end) {\n var pos;\n if (start == null) { start = index; }\n if (end == null) { end = index; }\n\n // Find the closest opened tag of the same type\n if (tagName) {\n var needle = tagName.toLowerCase();\n for (pos = stack.length - 1; pos >= 0; pos--) {\n if (stack[pos].tag.toLowerCase() === needle) {\n break\n }\n }\n } else {\n // If no tag name is provided, clean shop\n pos = 0;\n }\n\n if (pos >= 0) {\n // Close all the open elements, up the stack\n for (var i = stack.length - 1; i >= pos; i--) {\n if (options.end) {\n options.end(stack[i].tag, start, end);\n }\n }\n\n // Remove the open elements from the stack\n stack.length = pos;\n lastTag = pos && stack[pos - 1].tag;\n } else if (tagName.toLowerCase() === 'br') {\n if (options.start) {\n options.start(tagName, [], true, start, end);\n }\n } else if (tagName.toLowerCase() === 'p') {\n if (options.start) {\n options.start(tagName, [], false, start, end);\n }\n if (options.end) {\n options.end(tagName, start, end);\n }\n }\n }\n}\n\n/* */\n\nfunction parseFilters (exp) {\n var inSingle = false;\n var inDouble = false;\n var inTemplateString = false;\n var inRegex = false;\n var curly = 0;\n var square = 0;\n var paren = 0;\n var lastFilterIndex = 0;\n var c, prev, i, expression, filters;\n\n for (i = 0; i < exp.length; i++) {\n prev = c;\n c = exp.charCodeAt(i);\n if (inSingle) {\n if (c === 0x27 && prev !== 0x5C) { inSingle = false; }\n } else if (inDouble) {\n if (c === 0x22 && prev !== 0x5C) { inDouble = false; }\n } else if (inTemplateString) {\n if (c === 0x60 && prev !== 0x5C) { inTemplateString = false; }\n } else if (inRegex) {\n if (c === 0x2f && prev !== 0x5C) { inRegex = false; }\n } else if (\n c === 0x7C && // pipe\n exp.charCodeAt(i + 1) !== 0x7C &&\n exp.charCodeAt(i - 1) !== 0x7C &&\n !curly && !square && !paren\n ) {\n if (expression === undefined) {\n // first filter, end of expression\n lastFilterIndex = i + 1;\n expression = exp.slice(0, i).trim();\n } else {\n pushFilter();\n }\n } else {\n switch (c) {\n case 0x22: inDouble = true; break // \"\n case 0x27: inSingle = true; break // '\n case 0x60: inTemplateString = true; break // `\n case 0x28: paren++; break // (\n case 0x29: paren--; break // )\n case 0x5B: square++; break // [\n case 0x5D: square--; break // ]\n case 0x7B: curly++; break // {\n case 0x7D: curly--; break // }\n }\n if (c === 0x2f) { // /\n var j = i - 1;\n var p = (void 0);\n // find first non-whitespace prev char\n for (; j >= 0; j--) {\n p = exp.charAt(j);\n if (p !== ' ') { break }\n }\n if (!p || !/[\\w$]/.test(p)) {\n inRegex = true;\n }\n }\n }\n }\n\n if (expression === undefined) {\n expression = exp.slice(0, i).trim();\n } else if (lastFilterIndex !== 0) {\n pushFilter();\n }\n\n function pushFilter () {\n (filters || (filters = [])).push(exp.slice(lastFilterIndex, i).trim());\n lastFilterIndex = i + 1;\n }\n\n if (filters) {\n for (i = 0; i < filters.length; i++) {\n expression = wrapFilter(expression, filters[i]);\n }\n }\n\n return expression\n}\n\nfunction wrapFilter (exp, filter) {\n var i = filter.indexOf('(');\n if (i < 0) {\n // _f: resolveFilter\n return (\"_f(\\\"\" + filter + \"\\\")(\" + exp + \")\")\n } else {\n var name = filter.slice(0, i);\n var args = filter.slice(i + 1);\n return (\"_f(\\\"\" + name + \"\\\")(\" + exp + \",\" + args)\n }\n}\n\n/* */\n\nvar defaultTagRE = /\\{\\{((?:.|\\n)+?)\\}\\}/g;\nvar regexEscapeRE = /[-.*+?^${}()|[\\]/\\\\]/g;\n\nvar buildRegex = cached(function (delimiters) {\n var open = delimiters[0].replace(regexEscapeRE, '\\\\$&');\n var close = delimiters[1].replace(regexEscapeRE, '\\\\$&');\n return new RegExp(open + '((?:.|\\\\n)+?)' + close, 'g')\n});\n\nfunction parseText (\n text,\n delimiters\n) {\n var tagRE = delimiters ? buildRegex(delimiters) : defaultTagRE;\n if (!tagRE.test(text)) {\n return\n }\n var tokens = [];\n var lastIndex = tagRE.lastIndex = 0;\n var match, index;\n while ((match = tagRE.exec(text))) {\n index = match.index;\n // push text token\n if (index > lastIndex) {\n tokens.push(JSON.stringify(text.slice(lastIndex, index)));\n }\n // tag token\n var exp = parseFilters(match[1].trim());\n tokens.push((\"_s(\" + exp + \")\"));\n lastIndex = index + match[0].length;\n }\n if (lastIndex < text.length) {\n tokens.push(JSON.stringify(text.slice(lastIndex)));\n }\n return tokens.join('+')\n}\n\n/* */\n\nfunction baseWarn (msg) {\n console.error((\"[Vue parser]: \" + msg));\n}\n\nfunction pluckModuleFunction (\n modules,\n key\n) {\n return modules\n ? modules.map(function (m) { return m[key]; }).filter(function (_) { return _; })\n : []\n}\n\nfunction addProp (el, name, value) {\n (el.props || (el.props = [])).push({ name: name, value: value });\n}\n\nfunction addAttr (el, name, value) {\n (el.attrs || (el.attrs = [])).push({ name: name, value: value });\n}\n\nfunction addDirective (\n el,\n name,\n rawName,\n value,\n arg,\n modifiers\n) {\n (el.directives || (el.directives = [])).push({ name: name, rawName: rawName, value: value, arg: arg, modifiers: modifiers });\n}\n\nfunction addHandler (\n el,\n name,\n value,\n modifiers,\n important\n) {\n // check capture modifier\n if (modifiers && modifiers.capture) {\n delete modifiers.capture;\n name = '!' + name; // mark the event as captured\n }\n if (modifiers && modifiers.once) {\n delete modifiers.once;\n name = '~' + name; // mark the event as once\n }\n var events;\n if (modifiers && modifiers.native) {\n delete modifiers.native;\n events = el.nativeEvents || (el.nativeEvents = {});\n } else {\n events = el.events || (el.events = {});\n }\n var newHandler = { value: value, modifiers: modifiers };\n var handlers = events[name];\n /* istanbul ignore if */\n if (Array.isArray(handlers)) {\n important ? handlers.unshift(newHandler) : handlers.push(newHandler);\n } else if (handlers) {\n events[name] = important ? [newHandler, handlers] : [handlers, newHandler];\n } else {\n events[name] = newHandler;\n }\n}\n\nfunction getBindingAttr (\n el,\n name,\n getStatic\n) {\n var dynamicValue =\n getAndRemoveAttr(el, ':' + name) ||\n getAndRemoveAttr(el, 'v-bind:' + name);\n if (dynamicValue != null) {\n return parseFilters(dynamicValue)\n } else if (getStatic !== false) {\n var staticValue = getAndRemoveAttr(el, name);\n if (staticValue != null) {\n return JSON.stringify(staticValue)\n }\n }\n}\n\nfunction getAndRemoveAttr (el, name) {\n var val;\n if ((val = el.attrsMap[name]) != null) {\n var list = el.attrsList;\n for (var i = 0, l = list.length; i < l; i++) {\n if (list[i].name === name) {\n list.splice(i, 1);\n break\n }\n }\n }\n return val\n}\n\nvar len;\nvar str;\nvar chr;\nvar index$1;\nvar expressionPos;\nvar expressionEndPos;\n\n/**\n * parse directive model to do the array update transform. a[idx] = val => $$a.splice($$idx, 1, val)\n *\n * for loop possible cases:\n *\n * - test\n * - test[idx]\n * - test[test1[idx]]\n * - test[\"a\"][idx]\n * - xxx.test[a[a].test1[idx]]\n * - test.xxx.a[\"asa\"][test1[idx]]\n *\n */\n\nfunction parseModel (val) {\n str = val;\n len = str.length;\n index$1 = expressionPos = expressionEndPos = 0;\n\n if (val.indexOf('[') < 0 || val.lastIndexOf(']') < len - 1) {\n return {\n exp: val,\n idx: null\n }\n }\n\n while (!eof()) {\n chr = next();\n /* istanbul ignore if */\n if (isStringStart(chr)) {\n parseString(chr);\n } else if (chr === 0x5B) {\n parseBracket(chr);\n }\n }\n\n return {\n exp: val.substring(0, expressionPos),\n idx: val.substring(expressionPos + 1, expressionEndPos)\n }\n}\n\nfunction next () {\n return str.charCodeAt(++index$1)\n}\n\nfunction eof () {\n return index$1 >= len\n}\n\nfunction isStringStart (chr) {\n return chr === 0x22 || chr === 0x27\n}\n\nfunction parseBracket (chr) {\n var inBracket = 1;\n expressionPos = index$1;\n while (!eof()) {\n chr = next();\n if (isStringStart(chr)) {\n parseString(chr);\n continue\n }\n if (chr === 0x5B) { inBracket++; }\n if (chr === 0x5D) { inBracket--; }\n if (inBracket === 0) {\n expressionEndPos = index$1;\n break\n }\n }\n}\n\nfunction parseString (chr) {\n var stringQuote = chr;\n while (!eof()) {\n chr = next();\n if (chr === stringQuote) {\n break\n }\n }\n}\n\n/* */\n\nvar dirRE = /^v-|^@|^:/;\nvar forAliasRE = /(.*?)\\s+(?:in|of)\\s+(.*)/;\nvar forIteratorRE = /\\((\\{[^}]*\\}|[^,]*),([^,]*)(?:,([^,]*))?\\)/;\nvar bindRE = /^:|^v-bind:/;\nvar onRE = /^@|^v-on:/;\nvar argRE = /:(.*)$/;\nvar modifierRE = /\\.[^.]+/g;\n\nvar decodeHTMLCached = cached(decode);\n\n// configurable state\nvar warn$1;\nvar platformGetTagNamespace;\nvar platformMustUseProp;\nvar platformIsPreTag;\nvar preTransforms;\nvar transforms;\nvar postTransforms;\nvar delimiters;\n\n/**\n * Convert HTML string to AST.\n */\nfunction parse (\n template,\n options\n) {\n warn$1 = options.warn || baseWarn;\n platformGetTagNamespace = options.getTagNamespace || no;\n platformMustUseProp = options.mustUseProp || no;\n platformIsPreTag = options.isPreTag || no;\n preTransforms = pluckModuleFunction(options.modules, 'preTransformNode');\n transforms = pluckModuleFunction(options.modules, 'transformNode');\n postTransforms = pluckModuleFunction(options.modules, 'postTransformNode');\n delimiters = options.delimiters;\n var stack = [];\n var preserveWhitespace = options.preserveWhitespace !== false;\n var root;\n var currentParent;\n var inVPre = false;\n var inPre = false;\n var warned = false;\n parseHTML(template, {\n expectHTML: options.expectHTML,\n isUnaryTag: options.isUnaryTag,\n shouldDecodeNewlines: options.shouldDecodeNewlines,\n start: function start (tag, attrs, unary) {\n // check namespace.\n // inherit parent ns if there is one\n var ns = (currentParent && currentParent.ns) || platformGetTagNamespace(tag);\n\n // handle IE svg bug\n /* istanbul ignore if */\n if (isIE && ns === 'svg') {\n attrs = guardIESVGBug(attrs);\n }\n\n var element = {\n type: 1,\n tag: tag,\n attrsList: attrs,\n attrsMap: makeAttrsMap(attrs),\n parent: currentParent,\n children: []\n };\n if (ns) {\n element.ns = ns;\n }\n\n if (isForbiddenTag(element) && !isServerRendering()) {\n element.forbidden = true;\n \"production\" !== 'production' && warn$1(\n 'Templates should only be responsible for mapping the state to the ' +\n 'UI. Avoid placing tags with side-effects in your templates, such as ' +\n \"<\" + tag + \">.\"\n );\n }\n\n // apply pre-transforms\n for (var i = 0; i < preTransforms.length; i++) {\n preTransforms[i](element, options);\n }\n\n if (!inVPre) {\n processPre(element);\n if (element.pre) {\n inVPre = true;\n }\n }\n if (platformIsPreTag(element.tag)) {\n inPre = true;\n }\n if (inVPre) {\n processRawAttrs(element);\n } else {\n processFor(element);\n processIf(element);\n processOnce(element);\n processKey(element);\n\n // determine whether this is a plain element after\n // removing structural attributes\n element.plain = !element.key && !attrs.length;\n\n processRef(element);\n processSlot(element);\n processComponent(element);\n for (var i$1 = 0; i$1 < transforms.length; i$1++) {\n transforms[i$1](element, options);\n }\n processAttrs(element);\n }\n\n function checkRootConstraints (el) {\n if (false) {\n if (el.tag === 'slot' || el.tag === 'template') {\n warned = true;\n warn$1(\n \"Cannot use <\" + (el.tag) + \"> as component root element because it may \" +\n 'contain multiple nodes:\\n' + template\n );\n }\n if (el.attrsMap.hasOwnProperty('v-for')) {\n warned = true;\n warn$1(\n 'Cannot use v-for on stateful component root element because ' +\n 'it renders multiple elements:\\n' + template\n );\n }\n }\n }\n\n // tree management\n if (!root) {\n root = element;\n checkRootConstraints(root);\n } else if (!stack.length) {\n // allow root elements with v-if, v-else-if and v-else\n if (root.if && (element.elseif || element.else)) {\n checkRootConstraints(element);\n addIfCondition(root, {\n exp: element.elseif,\n block: element\n });\n } else if (false) {\n warned = true;\n warn$1(\n \"Component template should contain exactly one root element:\" +\n \"\\n\\n\" + template + \"\\n\\n\" +\n \"If you are using v-if on multiple elements, \" +\n \"use v-else-if to chain them instead.\"\n );\n }\n }\n if (currentParent && !element.forbidden) {\n if (element.elseif || element.else) {\n processIfConditions(element, currentParent);\n } else if (element.slotScope) { // scoped slot\n currentParent.plain = false;\n var name = element.slotTarget || 'default';(currentParent.scopedSlots || (currentParent.scopedSlots = {}))[name] = element;\n } else {\n currentParent.children.push(element);\n element.parent = currentParent;\n }\n }\n if (!unary) {\n currentParent = element;\n stack.push(element);\n }\n // apply post-transforms\n for (var i$2 = 0; i$2 < postTransforms.length; i$2++) {\n postTransforms[i$2](element, options);\n }\n },\n\n end: function end () {\n // remove trailing whitespace\n var element = stack[stack.length - 1];\n var lastNode = element.children[element.children.length - 1];\n if (lastNode && lastNode.type === 3 && lastNode.text === ' ') {\n element.children.pop();\n }\n // pop stack\n stack.length -= 1;\n currentParent = stack[stack.length - 1];\n // check pre state\n if (element.pre) {\n inVPre = false;\n }\n if (platformIsPreTag(element.tag)) {\n inPre = false;\n }\n },\n\n chars: function chars (text) {\n if (!currentParent) {\n if (false) {\n warned = true;\n warn$1(\n 'Component template requires a root element, rather than just text:\\n\\n' + template\n );\n }\n return\n }\n // IE textarea placeholder bug\n /* istanbul ignore if */\n if (isIE &&\n currentParent.tag === 'textarea' &&\n currentParent.attrsMap.placeholder === text) {\n return\n }\n text = inPre || text.trim()\n ? decodeHTMLCached(text)\n // only preserve whitespace if its not right after a starting tag\n : preserveWhitespace && currentParent.children.length ? ' ' : '';\n if (text) {\n var expression;\n if (!inVPre && text !== ' ' && (expression = parseText(text, delimiters))) {\n currentParent.children.push({\n type: 2,\n expression: expression,\n text: text\n });\n } else {\n currentParent.children.push({\n type: 3,\n text: text\n });\n }\n }\n }\n });\n return root\n}\n\nfunction processPre (el) {\n if (getAndRemoveAttr(el, 'v-pre') != null) {\n el.pre = true;\n }\n}\n\nfunction processRawAttrs (el) {\n var l = el.attrsList.length;\n if (l) {\n var attrs = el.attrs = new Array(l);\n for (var i = 0; i < l; i++) {\n attrs[i] = {\n name: el.attrsList[i].name,\n value: JSON.stringify(el.attrsList[i].value)\n };\n }\n } else if (!el.pre) {\n // non root node in pre blocks with no attributes\n el.plain = true;\n }\n}\n\nfunction processKey (el) {\n var exp = getBindingAttr(el, 'key');\n if (exp) {\n if (false) {\n warn$1(\"