{"version":3,"sources":["webpack:///./src/services/modules/general/MyUser.service.js","webpack:///./src/components/template/dialog/t-dialog-support.vue?3344","webpack:///src/components/template/dialog/t-dialog-support.vue","webpack:///./src/components/template/dialog/t-dialog-support.vue?cb80","webpack:///./src/components/template/dialog/t-dialog-support.vue","webpack:///./src/components/template/menu/t-app-menu-group-item.vue?8609","webpack:///./src/components/template/menu/t-app-menu.vue?d6f9","webpack:///./src/components/template/header/t-app-notification.vue?8c08","webpack:///./node_modules/vuescroll/dist/vuescroll.js","webpack:///./src/views/Default.vue?e4db","webpack:///./src/components/template/header/t-app-header-search-button.vue?8ebe","webpack:///./src/components/template/menu/t-app-menu-group.vue?1acd","webpack:///./src/components/template/header/t-app-header.vue?7f65","webpack:///./src/views/Default.vue?66c5","webpack:///./src/components/template/header/t-app-header.vue?1592","webpack:///./src/components/template/header/t-app-header-search-button.vue?881d","webpack:///src/components/template/header/t-app-header-search-button.vue","webpack:///./src/components/template/header/t-app-header-search-button.vue?7738","webpack:///./src/components/template/header/t-app-header-search-button.vue","webpack:///./src/components/template/header/t-app-notification.vue?d152","webpack:///src/components/template/header/t-app-notification.vue","webpack:///./src/components/template/header/t-app-notification.vue?8399","webpack:///./src/components/template/header/t-app-notification.vue","webpack:///./src/components/template/header/t-app-user.vue?eac3","webpack:///./src/components/template/header/t-app-user-submenu.vue?1bd3","webpack:///./src/components/template/dialog/t-dialog-download-app.vue?835f","webpack:///src/components/template/dialog/t-dialog-download-app.vue","webpack:///./src/components/template/dialog/t-dialog-download-app.vue?2107","webpack:///./src/components/template/dialog/t-dialog-download-app.vue","webpack:///src/components/template/header/t-app-user-submenu.vue","webpack:///./src/components/template/header/t-app-user-submenu.vue?2d80","webpack:///./src/components/template/header/t-app-user-submenu.vue","webpack:///src/components/template/header/t-app-user.vue","webpack:///./src/components/template/header/t-app-user.vue?fee0","webpack:///./src/components/template/header/t-app-user.vue","webpack:///./src/components/template/menu-right/t-app-menu-right-button.vue?6d0d","webpack:///src/components/template/menu-right/t-app-menu-right-button.vue","webpack:///./src/components/template/menu-right/t-app-menu-right-button.vue?71f1","webpack:///./src/components/template/menu-right/t-app-menu-right-button.vue","webpack:///./src/components/template/menu-right/t-app-menu-right-button-mobile.vue?ad0c","webpack:///src/components/template/menu-right/t-app-menu-right-button-mobile.vue","webpack:///./src/components/template/menu-right/t-app-menu-right-button-mobile.vue?4b8e","webpack:///./src/components/template/menu-right/t-app-menu-right-button-mobile.vue","webpack:///src/components/template/header/t-app-header.vue","webpack:///./src/components/template/header/t-app-header.vue?1935","webpack:///./src/components/template/header/t-app-header.vue","webpack:///./src/components/template/menu/t-app-menu.vue?a7db","webpack:///./src/components/template/menu/t-app-menu-group.vue?45c4","webpack:///./src/components/template/menu/t-app-menu-group-item.vue?2cd2","webpack:///src/components/template/menu/t-app-menu-group-item.vue","webpack:///./src/components/template/menu/t-app-menu-group-item.vue?065a","webpack:///./src/components/template/menu/t-app-menu-group-item.vue","webpack:///src/components/template/menu/t-app-menu-group.vue","webpack:///./src/components/template/menu/t-app-menu-group.vue?60a8","webpack:///./src/components/template/menu/t-app-menu-group.vue","webpack:///src/components/template/menu/t-app-menu.vue","webpack:///./src/components/template/menu/t-app-menu.vue?275d","webpack:///./src/components/template/menu/t-app-menu.vue","webpack:///./src/components/template/menu-right/t-app-menu-right.vue?243c","webpack:///src/components/template/menu-right/t-app-menu-right.vue","webpack:///./src/components/template/menu-right/t-app-menu-right.vue?5420","webpack:///./src/components/template/menu-right/t-app-menu-right.vue","webpack:///./src/components/template/theme/t-app-blackout.vue?624c","webpack:///src/components/template/theme/t-app-blackout.vue","webpack:///./src/components/template/theme/t-app-blackout.vue?fe23","webpack:///./src/components/template/theme/t-app-blackout.vue","webpack:///src/views/Default.vue","webpack:///./src/views/Default.vue?01c6","webpack:///./src/views/Default.vue","webpack:///./src/components/template/menu-right/t-app-menu-right.vue?89b1"],"names":["path","service","http","get","then","response","data","type","value","preference","put","render","_vm","this","_h","$createElement","_c","_self","attrs","on","$event","onHidden","staticClass","staticStyle","_v","helpDocUrl","closeDialog","_e","staticRenderFns","name","status","methods","component","global","factory","module","exports","Vue","hasOwnProperty","_typeof","Symbol","iterator","obj","constructor","prototype","classCallCheck","instance","Constructor","TypeError","createClass","defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","Object","defineProperty","key","protoProps","staticProps","_extends","assign","arguments","source","call","toConsumableArray","arr","Array","isArray","arr2","from","isIE","isServer","agent","navigator","userAgent","toLowerCase","indexOf","isIos","u","match","$isServer","touchManager","originEvent","touchObject","isTouch","touches","platform","touch","window","opera","maxTouchPoints","msMaxTouchPoints","nonDeskTouch","test","eventType","touchstart","touchend","touchmove","touchenter","touchleave","touchcancel","deepCopy","to","shallow","isUndef","forEach","item","index","isPlainObj","mergeObject","force","defineReactive","souceKey","scrollBarWidth","getGutter","undefined","outer","document","createElement","style","visibility","width","position","top","body","appendChild","widthNoScroll","offsetWidth","overflow","inner","widthWithScroll","parentNode","removeChild","eventCenter","dom","eventName","hander","capture","addEventListener","removeEventListener","error","msg","console","warn","isChildInParent","child","parent","flag","nodeType","_isVuescroll","getPrefix","engine","docStyle","documentElement","toString","cpuClass","vendorPrefix","trident","gecko","webkit","presto","getComplitableStyle","property","compatibleValue","testElm","insertChildrenIntoSlot","h","parentVnode","childVNode","swapChildren","concat","_getVnodeInfo","getVnodeInfo","ch","tag","isComponent","componentOptions","propsData","slot","vnode","children","getRealParent","ctx","$parent","_isVuescrollRoot","_","getNumericValue","distance","size","number","exec","createStyle","styleId","cssText","getElementById","head","doc","getElementsByTagName","id","styleSheet","createTextNode","createHideBarStyle","createSlideModeStyle","api","mounted","vsInstances","_uid","beforeDestroy","scrollTo","_ref","speed","easing","x","y","mergedOptions","scrollPanel","internalScrollTo","scrollBy","_ref2","_ref2$dx","dx","_ref2$dy","dy","_getPosition","getPosition","_getPosition$scrollLe","scrollLeft","_getPosition$scrollTo","scrollTop","scrollPanelElm","scrollWidth","$el","clientWidth","scrollHeight","clientHeight","scrollIntoView","elm","animate","parentElm","querySelector","_$el$getBoundingClien","getBoundingClientRect","left","_elm$getBoundingClien","childLeft","childTop","diffX","diffY","refresh","refreshInternalStatus","$nextTick","refreshAll","vs","baseConfig","vuescroll","sizeStrategy","detectResize","locking","initialScrollY","initialScrollX","scrollingX","scrollingY","verticalNativeBarPos","maxHeight","maxWidth","rail","background","opacity","border","specifyBorderRadius","gutterOfEnds","gutterOfSide","keepShow","bar","showDelay","onlyShowBarOnScroll","minSize","disable","scrollButton","enable","step","mousedownStep","validateOps","ops","renderError","_ops$bar","vBar","hBar","_ops$rail","vRail","hRail","String","_extraValidate","hasError","extendOpts","extraOpts","extraValidate","opts","modes","NOOP","smallChangeArray","__REFRESH_DOM_NAME","__LOAD_DOM_NAME","scrollMap","vertical","opsSize","posName","opposName","sidePosName","page","scroll","scrollSize","offset","client","axis","start","end","horizontal","requestAnimationFrame","requestFrame","webkitRequestAnimationFrame","mozRequestAnimationFrame","oRequestAnimationFrame","isNative","callback","root","TARGET_FPS","requests","rafHandle","intervalHandle","lastActive","Date","callbackHandle","setInterval","time","currentRequests","clearInterval","colorCache","rgbReg","extractRgbColor","getRgbAColor","color","div","computedColor","getComputedStyle","backgroundColor","state","hideBar","Boolean","otherBarHide","computed","barSize","Math","max","barRatio","_style","_style2","_barStyle","vm","railBackgroundColor","_rail$on","railSize","endPos","touchObj","getTouchObject","class","borderRadius","setRailHover","setRailLeave","buttonSize","barWrapper","scrollDistance","posValue","pos","setClassHook","barStyle","cursor","margin","transition","ref","right","height","bottom","_touchObj","createBarEvent","createTrackEvent","createScrollbarButton","isBarDragging","isRailHover","showBar","setBarDrag","val","$emit","mousedown","e","event","getEventObject","stopImmediatePropagation","preventDefault","onselectstart","axisStartPos","$refs","mousemove","mouseup","thubmParent","thumb","delta","percent","_ctx$bar","barOffset","currentTarget","_style3","barContext","_barContext$ops$scrol","borderColor","wrapperProps","innerProps","createScrollButtonEvent","_ctx$ops$scrollButton","stepWithDirection","mousedownStepWithDirection","barType","isMouseDown","isMouseout","timeoutId","which","endPress","enter","leave","clearTimeout","setTimeout","pressing","getBarData","charAt","refreshLoad","keepShowRail","createBar","verticalBarProps","horizontalBarProps","createComponent","_render","components","mixins","created","_this","_gfc","$vuescrollConfig","$options","keys","$slots","_data$on","padding","__vuescroll","classHooks","pointerLeave","updateBarStateAndEmitEvent","_customContainer","_this2","initVariables","initWatchOpsChange","updatedCbs","push","scrollToAnchor","updated","_this3","cb","destroy","_isVue","isDragging","currentSizeStrategy","currentScrollState","currentScrollInfo","scrollContent","hasVBar","hasHBar","vBarVisible","hBarVisible","vBarDragging","hBarDragging","clikingVerticalStartButton","clikingVerticalEndButton","clikingHorizontalStartButton","clikingHorizontalEndButton","mouseEnter","scrollingComplete","showAndDefferedHideBar","forceHideBar","_this4","_vuescroll$state","useNumbericSize","_mergedOptions$scroll","_$el$parentNode","parentClientHeight","parentClientWidth","_scrollPanelElm","usePercentSize","setVsSize","_mergedOptions$scroll2","_scrollPanelElm2","_this5","watchOpts","deep","sync","$watch","isSmallChangeThisTick","validateHashSelector","hash","location","slice","lastIndexOf","required","updateInitialScroll","_isDestroyed","boxSizing","_customPanel","default","_install","core","_components","extraConfigs","extraValidators","comp","getCurrentViewportDom","container","domFragment","isCurrentview","_dom$getBoundingClien","_container$getBoundin","parentLeft","parentTop","parentHeight","parentWidth","isResizeElm","createEasingFunction","easingPattern","pattern","noop","now","getTime","ScrollControl","init","isRunning","isPaused","isStopped","ts","spd","execScroll","st","ed","stepCb","completeCb","vertifyCb","easingMethod","df","dir","nt","loop","_elm","scrollX","scrollY","scrollingElement","_elm2","startScroll","nativeApi","nativeStop","stop","nativePause","pause","nativeContinue","continue","nativeScrollTo","bind","getCurrentviewDomNative","scrollContentElm","getPanelData","context","overflowY","overflowX","nativeOn","handleScroll","scrollYEnable","scrollXEnable","DOMMouseScroll","mousewheel","onMouseWheel","_context$mergedOption","gutter","marginRight","marginLeft","transformOrigin","transform","createPanel","getPanelChildren","viewStyle","_customContent","paddingRight","getPanelData$1","renderMethod","getPanelChildren$1","renderChildren","finalChildren","pullRefresh","refrehDomVisiable","createTipDom","pullRefreshTip","pushLoad","loadDomVisiable","pushLoadTip","tip","stage","className","version","xmlns","xmlnsXlink","viewBox","xmlSpace","d","stroke","cx","cy","r","fill","createPanel$1","createPanel$2","mode","installResizeDetection","element","injectObject","hasResized","OBJECT_STYLE","objWrap","object","tabIndex","onload","contentDocument","defaultView","slideApi","slideScrollTo","scroller","__maxScrollLeft","__maxScrollTop","zoomBy","factor","originLeft","originTop","zoomTo","level","getCurrentPage","paging","goToPage","dest","triggerRefreshOrLoad","isRefresh","isLoad","getCurrentviewDomSlide","api$1","destX","destY","getCurrentviewDom","desiredFrames","millisecondsPerSecond","running","counter","effect","global$1","Animate","cleared","stepCallback","verifyCallback","completedCallback","duration","lastFrame","dropCounter","newRunning","usedId","virtual","droppedFrames","round","j","min","animatingMethod","noAnimatingMethod","Scroller","options","__callback","animating","animationDuration","bouncing","snapping","zooming","minZoom","maxZoom","speedMultiplier","animatingEasing","noAnimatingEasing","penetrationDeceleration","penetrationAcceleration","members","__isSingleTouch","__isTracking","__didDecelerationComplete","__isGesturing","__isDragging","__isDecelerating","__isAnimating","__clientLeft","__clientTop","__clientWidth","__clientHeight","__contentWidth","__contentHeight","__snapWidth","__snapHeight","__refreshHeight","__loadHeight","__refreshActive","__refreshActivate","__refreshBeforeDeactivate","__refreshDeactivate","__refreshStart","__loadActive","__loadActivate","__loadBeforeDeactivate","__loadDeactivate","__loadStart","__zoomLevel","__scrollLeft","__scrollTop","__scheduledLeft","__scheduledTop","__scheduledZoom","__currentPageX","__currentPageY","__totalXPage","__totalYPage","__disable","__lastTouchLeft","__lastTouchTop","__lastTouchMove","__positions","__minDecelerationScrollLeft","__minDecelerationScrollTop","__maxDecelerationScrollLeft","__maxDecelerationScrollTop","__decelerationVelocityX","__decelerationVelocityY","setDimensions","contentWidth","contentHeight","noScroll","self","__computeScrollMax","setPosition","setSnapSize","activatePullToRefresh","activateCallback","deactivateCallback","startCallback","beforeDeactivateCallback","beforeDeactiveEnd","__refreshBeforeDeactiveEnd","activatePushToLoad","__loadBeforeDeactiveEnd","wasDecelerating","__refreshBeforeDeactiveStarted","__publish","__loadBeforeDeactiveStarted","finishRefreshOrLoad","endRefreshActive","endLoadActive","getValues","zoom","getScrollMax","Error","__zoomComplete","oldLevel","startLeft","startTop","__computePage","_ref3","isNaN","doMouseZoom","wheelDelta","timeStamp","pageX","pageY","change","doTouchStart","valueOf","currentTouchLeft","currentTouchTop","__interruptedAnimation","isSingleTouch","abs","__initialTouchLeft","__initialTouchTop","__zoomLevelStart","__lastScale","__enableScrollX","__enableScrollY","doTouchMove","scale","positions","moveX","moveY","currentTouchLeftRel","currentTouchTopRel","maxScrollLeft","maxScrollTop","splice","minimumTrackingForScroll","minimumTrackingForDrag","distanceX","distanceY","doTouchEnd","startPos","timeOffset","movedLeft","movedTop","minVelocityToStartDeceleration","__startDeceleration","__scrollComplete","onScroll","wasAnimating","oldLeft","oldTop","oldZoom","diffLeft","diffTop","diffZoom","verify","completed","renderedFramesPerSecond","animationId","wasFinished","easingFunction","zoomLevel","ceil","floor","__stepThroughDeceleration","minVelocityToKeepDecelerating","shouldContinue","minLeft","maxLeft","minTop","maxTop","bounceX","bounceY","fixedScrollLeft","fixedScrollTop","frictionFactor","scrollOutsideX","scrollOutsideY","content","suffix","undef","helperElem","perspectiveProperty","transformProperty","listenContainer","eventCallback","preventDefaultOnMove","tagName","stopPropagation","passive","zoomHandle","detail","createStateCallbacks","stageType","tipDom","listeners","$listeners","done","slideMix","vsMounted","tips","refreshStage","loadStage","outTheTopBoundary","outTheBottomBoundary","updateScroller","updateDimesion","registryRefreshLoad","refreshHeight","loadHeight","refreshDom","offsetHeight","marginTop","loadDom","registryEvent","registryScroller","_ref$left","_ref$top","_ref$zoom","_mergedOptions$vuescr","_mergedOptions$vuescr2","rect","clientLeft","clientTop","_mergedOptions$vuescr3","auto","autoLoadDistance","_scroller","lockAutoLoad","updateSlideModeBarState","heightPercentage","widthPercentage","outerLeft","outerTop","_$el","domName","activateFunc","cbs","getSlidePosition","nativeMix","updateNativeModeBarState","isPercent","getNativePosition","css","checkScrollable","deltaX","deltaY","scrollable","nodeName","ov","_getScrollProcess","getScrollProcess","v","isScrollX","isScrollY","isReverse","wheelDirectionReverse","wheelScrollDuration","checkShiftKey","shiftKey","update","core$1","handler","newVal","destroyScroller","destroyResize","nativeEvent","emitEvent","lastMode","refreshMode","initPos","registryResize","resizeEnable","modeChanged","contentElm","handleWindowResize","$forceUpdate","handleDomResize","currentSize","destroyDomResize","destroyWindowResize","config","deactive","active","beforeDeactive","configValidator","config$1","config$2","configValidator$1","configs","configValidators","install","Vue$$1","Vuescroll","use","menuFixed","menuClicked","openMenuMobile","user","fastInsert","onPageRefresh","menu","_m","back","menuHover","checkLink","toggleMobileMenu","showMenu","hideMenu","menuInsertShow","columnArch","_l","pageId","link","_s","title","columnProduction","actived","inputSearch","searchOpened","opended","search","log","search_input","focus","close","showMenuUser","initials","closeSubmenu","profile","username","openSupport","openDownloadApp","exit","$bvModal","hide","mobile","show","ui","directives","rawName","menuButtonsRight","expression","onMenuRightOpen","columnSale","columnFinance","$store","commit","old","$route","$router","disabledLink","getters","getOpenMenuMobile","getMenuFixedOld","getMenuFixed","getMenuHover","menuLeave","toggleMenuFixed","modifiers","correctClickScroll","pageModuleId","groupSelected","toggleGroupMenu","groupMenu","icon","itemMenu","isItemMenuActive","menuTitle","getItemMenuActiveId","opened","moduleId","oldMenuFixed","hoverStyle","onMenuRightClose","pageIsLoaded","setPreferences","preferences","getMenuClicked"],"mappings":"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","file":"js/chunk-1f4f65bc.a7e7b39d.js","sourcesContent":["import http from '../../config/http-common';\r\n\r\n//Usado somente se for realmente necessário algo fora do padrão GeneralCRUD.service.js\r\nconst path = \"general/my-user\"\r\n\r\nclass service {\r\n\r\n get() {\r\n return http.get(path).then(response => {\r\n return response.data\r\n })\r\n }\r\n\r\n setPreference(type,value){\r\n\r\n const preference = {\r\n [type] : value,\r\n }\r\n\r\n return http.put(path + \"/preference\",preference).then(response => {\r\n return response.data\r\n });\r\n }\r\n\r\n\r\n}\r\n\r\nexport default new service();\r\n\r\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-modal',{attrs:{\"hide-footer\":\"\",\"title\":\"Central de Ajuda\",\"id\":\"modal-support\"},on:{\"hide\":function($event){return _vm.onHidden()}}},[_c('div',{staticClass:\"d-block text-center align-items-center justify-content-center\"},[_c('a',{attrs:{\"href\":\"https://www.onlaine.com.br\",\"target\":\"_blank\"}},[_c('img',{staticStyle:{\"width\":\"200px\",\"margin-right\":\"-70px\"},attrs:{\"src\":\"https://static.onlaine.com.br/images/logo.png\"}})]),_c('div',[_c('h4',[_vm._v(\"Onlaine Tecnologia\")]),_c('p',[_vm._v(\"Atendimento seg. à sex. das 09h00 às 18h00\"),_c('br')]),_c('b-row',[_c('b-col',{attrs:{\"cols\":\"4\"}},[_c('div',{staticClass:\"mb-3 color-onlaine\"},[_c('a',{attrs:{\"href\":\"https://api.whatsapp.com/send?phone=5511950025976&text=Olá gostaria de suporte técnico.\",\"target\":\"_blank\"}},[_c('b-icon-whatsapp'),_vm._v(\" WhatsApp\")],1)])]),_c('b-col',{attrs:{\"cols\":\"4\"}},[_c('div',{staticClass:\"mb-3 color-onlaine\"},[_c('a',{attrs:{\"href\":\"https://error.onlaine.com/\",\"target\":\"_blank\"}},[_c('b-icon-exclamation-triangle'),_vm._v(\" Abrir Chamado\")],1),_c('br')])]),_c('b-col',{attrs:{\"cols\":\"4\"}},[_c('div',{staticClass:\"mb-3 color-onlaine\"},[_c('a',{attrs:{\"href\":\"https://suggestion.onlaine.com/\",\"target\":\"_blank\"}},[_c('b-icon-lightbulb'),_vm._v(\" Sugerir melhoria\")],1),_c('br')])])],1),(_vm.helpDocUrl !=='')?_c('a',{staticClass:\"btn btn-shadow mb-3 mt-2 mb-2 mr-2 btn-outline-primary btn-md\",attrs:{\"href\":_vm.helpDocUrl,\"target\":\"_blank\"},on:{\"click\":function($event){return _vm.closeDialog()}}},[_c('b-icon-book'),_vm._v(\" Manuais Específicos\")],1):_vm._e(),_c('a',{staticClass:\"btn btn-shadow mb-3 mt-2 btn-outline-primary btn-md\",attrs:{\"href\":\"https://getscreen.me/go/\",\"target\":\"_blank\"},on:{\"click\":function($event){return _vm.closeDialog()}}},[_c('b-icon-box-arrow-up-right'),_vm._v(\" Link para Acesso Remoto\")],1)],1)])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-dialog-support.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-dialog-support.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./t-dialog-support.vue?vue&type=template&id=aace0fda&\"\nimport script from \"./t-dialog-support.vue?vue&type=script&lang=js&\"\nexport * from \"./t-dialog-support.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-menu-group-item.vue?vue&type=style&index=0&id=c66616e2&scoped=true&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-menu.vue?vue&type=style&index=0&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-notification.vue?vue&type=style&index=0&id=28cd0ee5&scoped=true&lang=css&\"","/*\n * Vuescroll v4.17.3\n * (c) 2018-2021 Yi(Yves) Wang\n * Released under the MIT License\n * Github: https://github.com/YvesCoding/vuescroll\n * Website: http://vuescrolljs.yvescoding.org/\n */\n \n(function (global, factory) {\n\ttypeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory(require('vue')) :\n\ttypeof define === 'function' && define.amd ? define(['vue'], factory) :\n\t(global.vuescroll = factory(global.Vue));\n}(this, (function (Vue) { 'use strict';\n\nVue = Vue && Vue.hasOwnProperty('default') ? Vue['default'] : Vue;\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) {\n return typeof obj;\n} : function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n};\n\n\n\n\n\n\n\n\n\n\n\nvar classCallCheck = function (instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\n\nvar createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\n\n\n\n\nvar defineProperty = function (obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n};\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\nvar toConsumableArray = function (arr) {\n if (Array.isArray(arr)) {\n for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) arr2[i] = arr[i];\n\n return arr2;\n } else {\n return Array.from(arr);\n }\n};\n\nfunction isIE() {\n /* istanbul ignore if */\n if (isServer()) return false;\n\n var agent = navigator.userAgent.toLowerCase();\n return agent.indexOf('msie') !== -1 || agent.indexOf('trident') !== -1 || agent.indexOf(' edge/') !== -1;\n}\n\nvar isIos = function isIos() {\n /* istanbul ignore if */\n if (isServer()) return false;\n\n var u = navigator.userAgent;\n return !!u.match(/\\(i[^;]+;( U;)? CPU.+Mac OS X/);\n};\n\n/* istanbul ignore next */\nvar isServer = function isServer() {\n return Vue.prototype.$isServer;\n};\n\nvar touchManager = function () {\n function touchManager() {\n classCallCheck(this, touchManager);\n }\n\n createClass(touchManager, [{\n key: 'getEventObject',\n value: function getEventObject(originEvent) {\n return this.touchObject ? this.isTouch ? originEvent.touches : [originEvent] : null;\n }\n }, {\n key: 'getTouchObject',\n value: function getTouchObject() /* istanbul ignore next */{\n if (isServer()) return null;\n\n this.isTouch = false;\n var agent = navigator.userAgent,\n platform = navigator.platform,\n touchObject = {};\n touchObject.touch = !!('ontouchstart' in window && !window.opera || 'msmaxtouchpoints' in window.navigator || 'maxtouchpoints' in window.navigator || navigator.maxTouchPoints > 0 || navigator.msMaxTouchPoints > 0);\n touchObject.nonDeskTouch = touchObject.touch && !/win32/i.test(platform) || touchObject.touch && /win32/i.test(platform) && /mobile/i.test(agent);\n\n touchObject.eventType = 'onmousedown' in window && !touchObject.nonDeskTouch ? 'mouse' : 'ontouchstart' in window ? 'touch' : 'msmaxtouchpoints' in window.navigator || navigator.msMaxTouchPoints > 0 ? 'mstouchpoints' : 'maxtouchpoints' in window.navigator || navigator.maxTouchPoints > 0 ? 'touchpoints' : 'mouse';\n switch (touchObject.eventType) {\n case 'mouse':\n touchObject.touchstart = 'mousedown';\n touchObject.touchend = 'mouseup';\n touchObject.touchmove = 'mousemove';\n\n touchObject.touchenter = 'mouseenter';\n touchObject.touchmove = 'mousemove';\n touchObject.touchleave = 'mouseleave';\n break;\n case 'touch':\n touchObject.touchstart = 'touchstart';\n touchObject.touchend = 'touchend';\n touchObject.touchmove = 'touchmove';\n touchObject.touchcancel = 'touchcancel';\n\n touchObject.touchenter = 'touchstart';\n touchObject.touchmove = 'touchmove';\n touchObject.touchleave = 'touchend';\n this.isTouch = true;\n break;\n case 'mstouchpoints':\n touchObject.touchstart = 'MSPointerDown';\n touchObject.touchend = 'MSPointerUp';\n touchObject.touchmove = 'MSPointerMove';\n touchObject.touchcancel = 'MSPointerCancel';\n\n touchObject.touchenter = 'MSPointerDown';\n touchObject.touchmove = 'MSPointerMove';\n touchObject.touchleave = 'MSPointerUp';\n break;\n case 'touchpoints':\n touchObject.touchstart = 'pointerdown';\n touchObject.touchend = 'pointerup';\n touchObject.touchmove = 'pointermove';\n touchObject.touchcancel = 'pointercancel';\n\n touchObject.touchenter = 'pointerdown';\n touchObject.touchmove = 'pointermove';\n touchObject.touchleave = 'pointerup';\n break;\n }\n\n return this.touchObject = touchObject;\n }\n }]);\n return touchManager;\n}();\n\nfunction deepCopy(from, to, shallow) {\n if (shallow && isUndef(to)) {\n return from;\n }\n\n if (isArray(from)) {\n to = [];\n from.forEach(function (item, index) {\n to[index] = deepCopy(item, to[index]);\n });\n } else if (from) {\n if (!isPlainObj(from)) {\n return from;\n }\n to = {};\n for (var key in from) {\n to[key] = _typeof(from[key]) === 'object' ? deepCopy(from[key], to[key]) : from[key];\n }\n }\n return to;\n}\n\nfunction mergeObject(from, to, force, shallow) {\n if (shallow && isUndef(to)) {\n return from;\n }\n\n to = to || {};\n\n if (isArray(from)) {\n if (!isArray(to) && force) {\n to = [];\n }\n if (isArray(to)) {\n from.forEach(function (item, index) {\n to[index] = mergeObject(item, to[index], force, shallow);\n });\n }\n } else if (from) {\n if (!isPlainObj(from)) {\n if (force) {\n to = from;\n }\n } else {\n for (var key in from) {\n if (_typeof(from[key]) === 'object') {\n if (isUndef(to[key])) {\n to[key] = deepCopy(from[key], to[key], shallow);\n } else {\n mergeObject(from[key], to[key], force, shallow);\n }\n } else {\n if (isUndef(to[key]) || force) to[key] = from[key];\n }\n }\n }\n }\n\n return to;\n}\n\nfunction defineReactive(target, key, source, souceKey) {\n /* istanbul ignore if */\n if (!source[key] && typeof source !== 'function') {\n return;\n }\n souceKey = souceKey || key;\n Object.defineProperty(target, key, {\n get: function get$$1() {\n return source[souceKey];\n },\n\n configurable: true\n });\n}\n\nvar scrollBarWidth = void 0;\nfunction getGutter() {\n /* istanbul ignore next */\n if (isServer()) return 0;\n if (scrollBarWidth !== undefined) return scrollBarWidth;\n var outer = document.createElement('div');\n outer.style.visibility = 'hidden';\n outer.style.width = '100px';\n outer.style.position = 'absolute';\n outer.style.top = '-9999px';\n document.body.appendChild(outer);\n\n var widthNoScroll = outer.offsetWidth;\n outer.style.overflow = 'scroll';\n\n var inner = document.createElement('div');\n inner.style.width = '100%';\n outer.appendChild(inner);\n\n var widthWithScroll = inner.offsetWidth;\n outer.parentNode.removeChild(outer);\n scrollBarWidth = widthNoScroll - widthWithScroll;\n\n return scrollBarWidth;\n}\n\nfunction eventCenter(dom, eventName, hander) {\n var capture = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;\n var type = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : 'on';\n\n type == 'on' ? dom.addEventListener(eventName, hander, capture) : dom.removeEventListener(eventName, hander, capture);\n}\n\nvar error = function error(msg) {\n console.error('[vuescroll] ' + msg);\n};\nvar warn = function warn(msg) {\n console.warn('[vuescroll] ' + msg);\n};\n\nfunction isChildInParent(child, parent) {\n var flag = false;\n if (!child || !parent) {\n return flag;\n }\n while (child.parentNode !== parent && child.parentNode.nodeType !== 9 && !child.parentNode._isVuescroll) {\n child = child.parentNode;\n }\n if (child.parentNode == parent) {\n flag = true;\n }\n return flag;\n}\n\nfunction getPrefix(global) {\n var docStyle = document.documentElement.style;\n var engine;\n /* istanbul ignore if */\n if (global.opera && Object.prototype.toString.call(opera) === '[object Opera]') {\n engine = 'presto';\n } /* istanbul ignore next */else if ('MozAppearance' in docStyle) {\n engine = 'gecko';\n } else if ('WebkitAppearance' in docStyle) {\n engine = 'webkit';\n } /* istanbul ignore next */else if (typeof navigator.cpuClass === 'string') {\n engine = 'trident';\n }\n var vendorPrefix = {\n trident: 'ms',\n gecko: 'moz',\n webkit: 'webkit',\n presto: 'O'\n }[engine];\n return vendorPrefix;\n}\n\nfunction getComplitableStyle(property, value) {\n /* istanbul ignore if */\n if (isServer()) return false;\n\n var compatibleValue = '-' + getPrefix(window) + '-' + value;\n var testElm = document.createElement('div');\n testElm.style[property] = compatibleValue;\n if (testElm.style[property] == compatibleValue) {\n return compatibleValue;\n }\n /* istanbul ignore next */\n return false;\n}\n\n/**\n * Insert children into user-passed slot at vnode level\n */\nfunction insertChildrenIntoSlot(h) {\n var parentVnode = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n var childVNode = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];\n var data = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n var swapChildren = arguments[4];\n\n /* istanbul ignore if */\n if (parentVnode && parentVnode.length > 1) {\n return swapChildren ? [].concat(toConsumableArray(childVNode), toConsumableArray(parentVnode)) : [].concat(toConsumableArray(parentVnode), toConsumableArray(childVNode));\n }\n\n parentVnode = parentVnode[0];\n\n var _getVnodeInfo = getVnodeInfo(parentVnode),\n ch = _getVnodeInfo.ch,\n tag = _getVnodeInfo.tag,\n isComponent = _getVnodeInfo.isComponent;\n\n if (isComponent) {\n parentVnode.data = mergeObject({ attrs: parentVnode.componentOptions.propsData }, parentVnode.data, false, // force: false\n true // shallow: true\n );\n }\n ch = swapChildren ? [].concat(toConsumableArray(childVNode), toConsumableArray(ch)) : [].concat(toConsumableArray(ch), toConsumableArray(childVNode));\n delete parentVnode.data.slot;\n\n return h(tag, mergeObject(data, parentVnode.data, false, true), ch);\n}\n\n/**\n * Get the info of a vnode,\n * vnode must be parentVnode\n */\nfunction getVnodeInfo(vnode) {\n if (!vnode || vnode.length > 1) return {};\n\n vnode = vnode[0] ? vnode[0] : vnode;\n var isComponent = !!vnode.componentOptions;\n var ch = void 0;\n var tag = void 0;\n\n if (isComponent) {\n ch = vnode.componentOptions.children || [];\n tag = vnode.componentOptions.tag;\n } else {\n ch = vnode.children || [];\n tag = vnode.tag;\n }\n\n return {\n isComponent: isComponent,\n ch: ch,\n tag: tag\n };\n}\n\n/**\n * Get the vuescroll instance instead of\n * user pass component like slot.\n */\nfunction getRealParent(ctx) {\n var parent = ctx.$parent;\n if (!parent._isVuescrollRoot && parent) {\n parent = parent.$parent;\n }\n return parent;\n}\n\nvar isArray = function isArray(_) {\n return Array.isArray(_);\n};\nvar isPlainObj = function isPlainObj(_) {\n return Object.prototype.toString.call(_) == '[object Object]';\n};\nvar isUndef = function isUndef(_) {\n return typeof _ === 'undefined';\n};\n\nfunction getNumericValue(distance, size) {\n var number = void 0;\n if (!(number = /(-?\\d+(?:\\.\\d+?)?)%$/.exec(distance))) {\n number = distance - 0;\n } else {\n number = number[1] - 0;\n number = size * number / 100;\n }\n return number;\n}\n\nfunction createStyle(styleId, cssText) {\n /* istanbul ignore if */\n if (isServer() || document.getElementById(styleId)) {\n return;\n }\n\n var head = document.head || doc.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n\n style.id = styleId;\n style.type = 'text/css';\n\n /* istanbul ignore if */\n if (style.styleSheet) {\n style.styleSheet.cssText = cssText;\n } else {\n style.appendChild(document.createTextNode(cssText));\n }\n\n head.appendChild(style);\n}\n\n// Hide the ios native scrollbar.\nfunction createHideBarStyle() {\n /* istanbul ignore next */\n {\n var cssText = '.__hidebar::-webkit-scrollbar {\\n width: 0;\\n height: 0;\\n }';\n\n createStyle('vuescroll-hide-ios-bar', cssText);\n }\n}\n\n// create slide mode style\nfunction createSlideModeStyle() {\n var cssText = '\\n @-webkit-keyframes loading-rotate {\\n to {\\n -webkit-transform: rotate(1turn);\\n transform: rotate(1turn);\\n }\\n }\\n\\n @keyframes loading-rotate {\\n to {\\n -webkit-transform: rotate(1turn);\\n transform: rotate(1turn);\\n }\\n }\\n\\n @-webkit-keyframes loading-wipe {\\n 0% {\\n stroke-dasharray: 1, 200;\\n stroke-dashoffset: 0;\\n }\\n 50% {\\n stroke-dasharray: 90, 150;\\n stroke-dashoffset: -40px;\\n }\\n to {\\n stroke-dasharray: 90, 150;\\n stroke-dashoffset: -120px;\\n }\\n }\\n\\n @keyframes loading-wipe {\\n 0% {\\n stroke-dasharray: 1, 200;\\n stroke-dashoffset: 0;\\n }\\n 50% {\\n stroke-dasharray: 90, 150;\\n stroke-dashoffset: -40px;\\n }\\n to {\\n stroke-dasharray: 90, 150;\\n stroke-dashoffset: -120px;\\n }\\n }\\n\\n .__vuescroll .__refresh,\\n .__vuescroll .__load {\\n position: absolute;\\n width: 100%;\\n color: black;\\n height: 50px;\\n line-height: 50px;\\n text-align: center;\\n font-size: 16px;\\n }\\n .__vuescroll .__refresh svg,\\n .__vuescroll .__load svg {\\n margin-right: 10px;\\n width: 25px;\\n height: 25px;\\n vertical-align: sub;\\n }\\n .__vuescroll .__refresh svg.active,\\n .__vuescroll .__load svg.active {\\n transition: all 0.2s;\\n }\\n .__vuescroll .__refresh svg.active.deactive,\\n .__vuescroll .__load svg.active.deactive {\\n transform: rotateZ(180deg);\\n }\\n .__vuescroll .__refresh svg path,\\n .__vuescroll .__refresh svg rect,\\n .__vuescroll .__load svg path,\\n .__vuescroll .__load svg rect {\\n fill: #20a0ff;\\n }\\n .__vuescroll .__refresh svg.start,\\n .__vuescroll .__load svg.start {\\n stroke: #343640;\\n stroke-width: 4;\\n stroke-linecap: round;\\n -webkit-animation: loading-rotate 2s linear infinite;\\n animation: loading-rotate 2s linear infinite;\\n }\\n .__vuescroll .__refresh svg.start .bg-path,\\n .__vuescroll .__load svg.start .bg-path {\\n stroke: #f2f2f2;\\n fill: none;\\n }\\n .__vuescroll .__refresh svg.start .active-path,\\n .__vuescroll .__load svg.start .active-path {\\n stroke: #20a0ff;\\n fill: none;\\n stroke-dasharray: 90, 150;\\n stroke-dashoffset: 0;\\n -webkit-animation: loading-wipe 1.5s ease-in-out infinite;\\n animation: loading-wipe 1.5s ease-in-out infinite;\\n }\\n ';\n\n createStyle('vuescroll-silde-mode-style', cssText);\n}\n\nvar api = {\n mounted: function mounted() {\n vsInstances[this._uid] = this;\n },\n beforeDestroy: function beforeDestroy() {\n delete vsInstances[this._uid];\n },\n\n methods: {\n // public api\n scrollTo: function scrollTo(_ref, speed, easing) {\n var x = _ref.x,\n y = _ref.y;\n\n // istanbul ignore if\n if (speed === true || typeof speed == 'undefined') {\n speed = this.mergedOptions.scrollPanel.speed;\n }\n this.internalScrollTo(x, y, speed, easing);\n },\n scrollBy: function scrollBy(_ref2, speed, easing) {\n var _ref2$dx = _ref2.dx,\n dx = _ref2$dx === undefined ? 0 : _ref2$dx,\n _ref2$dy = _ref2.dy,\n dy = _ref2$dy === undefined ? 0 : _ref2$dy;\n\n var _getPosition = this.getPosition(),\n _getPosition$scrollLe = _getPosition.scrollLeft,\n scrollLeft = _getPosition$scrollLe === undefined ? 0 : _getPosition$scrollLe,\n _getPosition$scrollTo = _getPosition.scrollTop,\n scrollTop = _getPosition$scrollTo === undefined ? 0 : _getPosition$scrollTo;\n\n if (dx) {\n scrollLeft += getNumericValue(dx, this.scrollPanelElm.scrollWidth - this.$el.clientWidth);\n }\n if (dy) {\n scrollTop += getNumericValue(dy, this.scrollPanelElm.scrollHeight - this.$el.clientHeight);\n }\n this.internalScrollTo(scrollLeft, scrollTop, speed, easing);\n },\n scrollIntoView: function scrollIntoView(elm) {\n var animate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n var parentElm = this.$el;\n\n if (typeof elm === 'string') {\n elm = parentElm.querySelector(elm);\n }\n\n if (!isChildInParent(elm, parentElm)) {\n warn('The element or selector you passed is not the element of Vuescroll, please pass the element that is in Vuescroll to scrollIntoView API. ');\n return;\n }\n\n // parent elm left, top\n\n var _$el$getBoundingClien = this.$el.getBoundingClientRect(),\n left = _$el$getBoundingClien.left,\n top = _$el$getBoundingClien.top;\n // child elm left, top\n\n\n var _elm$getBoundingClien = elm.getBoundingClientRect(),\n childLeft = _elm$getBoundingClien.left,\n childTop = _elm$getBoundingClien.top;\n\n var diffX = left - childLeft;\n var diffY = top - childTop;\n\n this.scrollBy({\n dx: -diffX,\n dy: -diffY\n }, animate);\n },\n refresh: function refresh() {\n this.refreshInternalStatus();\n // refresh again to keep status is correct\n this.$nextTick(this.refreshInternalStatus);\n }\n }\n};\n\n/** Public Api */\n\n/**\n * Refresh all\n */\nvar vsInstances = {};\nfunction refreshAll() {\n for (var vs in vsInstances) {\n vsInstances[vs].refresh();\n }\n}\n\nvar baseConfig = {\n // vuescroll\n vuescroll: {\n // vuescroll's size(height/width) should be a percent(100%)\n // or be a number that is equal to its parentNode's width or\n // height ?\n sizeStrategy: 'percent',\n /** Whether to detect dom resize or not */\n detectResize: true,\n /** Enable locking to the main axis if user moves only slightly on one of them at start */\n locking: true\n },\n scrollPanel: {\n // when component mounted.. it will automatically scrolls.\n initialScrollY: false,\n initialScrollX: false,\n // feat: #11\n scrollingX: true,\n scrollingY: true,\n speed: 300,\n easing: undefined,\n // Sometimes, the nativebar maybe on the left,\n // See https://github.com/YvesCoding/vuescroll/issues/64\n verticalNativeBarPos: 'right',\n maxHeight: undefined,\n maxWidth: undefined\n },\n\n //\n rail: {\n background: '#01a99a',\n opacity: 0,\n border: 'none',\n /** Rail's size(Height/Width) , default -> 6px */\n size: '6px',\n /** Specify rail's border-radius, or the border-radius of rail and bar will be equal to the rail's size. default -> false **/\n specifyBorderRadius: false,\n /** Rail the distance from the two ends of the X axis and Y axis. **/\n gutterOfEnds: null,\n /** Rail the distance from the side of container. **/\n gutterOfSide: '2px',\n /** Whether to keep rail show or not, default -> false, event content height is not enough */\n keepShow: false\n },\n bar: {\n /** How long to hide bar after mouseleave, default -> 500 */\n showDelay: 500,\n /** Specify bar's border-radius, or the border-radius of rail and bar will be equal to the rail's size. default -> false **/\n specifyBorderRadius: false,\n /** Whether to show bar on scrolling, default -> true */\n onlyShowBarOnScroll: true,\n /** Whether to keep show or not, default -> false */\n keepShow: false,\n /** Bar's background , default -> #00a650 */\n background: 'rgb(3, 185, 118)',\n /** Bar's opacity, default -> 1 */\n opacity: 1,\n /** bar's size(Height/Width) , default -> 6px */\n\n size: '6px',\n minSize: 0,\n disable: false\n },\n scrollButton: {\n enable: false,\n background: 'rgb(3, 185, 118)',\n opacity: 1,\n step: 180,\n mousedownStep: 30\n }\n};\n/**\n * validate the options\n * @export\n * @param {any} ops\n */\nfunction validateOps(ops) {\n var renderError = false;\n var scrollPanel = ops.scrollPanel;\n var _ops$bar = ops.bar,\n vBar = _ops$bar.vBar,\n hBar = _ops$bar.hBar;\n var _ops$rail = ops.rail,\n vRail = _ops$rail.vRail,\n hRail = _ops$rail.hRail;\n\n // validate scrollPanel\n\n var initialScrollY = scrollPanel['initialScrollY'];\n var initialScrollX = scrollPanel['initialScrollX'];\n\n if (initialScrollY && !String(initialScrollY).match(/^\\d+(\\.\\d+)?(%)?$/)) {\n warn('The prop `initialScrollY` or `initialScrollX` should be a percent number like `10%` or an exact number that greater than or equal to 0 like `100`.');\n }\n if (initialScrollX && !String(initialScrollX).match(/^\\d+(\\.\\d+)?(%)?$/)) {\n warn('The prop `initialScrollY` or `initialScrollX` should be a percent number like `10%` or an exact number that greater than or equal to 0 like `100`.');\n }\n\n // validate deprecated vBar/hBar vRail/hRail\n if (vBar || hBar || vRail || hRail) {\n warn('The options: vRail, hRail, vBar, hBar have been deprecated since v4.7.0,' + 'please use corresponing rail/bar instead!');\n }\n\n if (_extraValidate) {\n _extraValidate = [].concat(_extraValidate);\n _extraValidate.forEach(function (hasError) {\n if (hasError(ops)) {\n renderError = true;\n }\n });\n }\n return renderError;\n}\n\nvar _extraValidate = null;\nvar extendOpts = function extendOpts(extraOpts, extraValidate) {\n extraOpts = [].concat(extraOpts);\n extraOpts.forEach(function (opts) {\n mergeObject(opts, baseConfig);\n });\n\n _extraValidate = extraValidate;\n};\n\n// all modes\nvar modes = ['slide', 'native'];\n// do nothing\nvar NOOP = function NOOP() {};\n// some small changes.\nvar smallChangeArray = ['mergedOptions.vuescroll.pullRefresh.tips', 'mergedOptions.vuescroll.pushLoad.tips', 'mergedOptions.vuescroll.scroller.disable', 'mergedOptions.rail', 'mergedOptions.bar'];\n// refresh/load dom ref/key...\nvar __REFRESH_DOM_NAME = 'refreshDom';\nvar __LOAD_DOM_NAME = 'loadDom';\n\nvar scrollMap = {\n vertical: {\n size: 'height',\n opsSize: 'width',\n posName: 'top',\n opposName: 'bottom',\n sidePosName: 'right',\n page: 'pageY',\n scroll: 'scrollTop',\n scrollSize: 'scrollHeight',\n offset: 'offsetHeight',\n client: 'clientY',\n axis: 'Y',\n scrollButton: {\n start: 'top',\n end: 'bottom'\n }\n },\n horizontal: {\n size: 'width',\n opsSize: 'height',\n posName: 'left',\n opposName: 'right',\n sidePosName: 'bottom',\n page: 'pageX',\n scroll: 'scrollLeft',\n scrollSize: 'scrollWidth',\n offset: 'offsetWidth',\n client: 'clientX',\n axis: 'X',\n scrollButton: {\n start: 'left',\n end: 'right'\n }\n }\n};\n\nfunction requestAnimationFrame(global) {\n // Check for request animation Frame support\n var requestFrame = global.requestAnimationFrame || global.webkitRequestAnimationFrame || global.mozRequestAnimationFrame || global.oRequestAnimationFrame;\n var isNative = !!requestFrame;\n\n if (requestFrame && !/requestAnimationFrame\\(\\)\\s*\\{\\s*\\[native code\\]\\s*\\}/i.test(requestFrame.toString())) {\n isNative = false;\n }\n\n if (isNative) {\n return function (callback, root) {\n requestFrame(callback, root);\n };\n }\n\n var TARGET_FPS = 60;\n var requests = {};\n var rafHandle = 1;\n var intervalHandle = null;\n var lastActive = +new Date();\n\n return function (callback) {\n var callbackHandle = rafHandle++;\n\n // Store callback\n requests[callbackHandle] = callback;\n\n // Create timeout at first request\n if (intervalHandle === null) {\n intervalHandle = setInterval(function () {\n var time = +new Date();\n var currentRequests = requests;\n\n // Reset data structure before executing callbacks\n requests = {};\n\n for (var key in currentRequests) {\n if (currentRequests.hasOwnProperty(key)) {\n currentRequests[key](time);\n lastActive = time;\n }\n }\n\n // Disable the timeout when nothing happens for a certain\n // period of time\n if (time - lastActive > 2500) {\n clearInterval(intervalHandle);\n intervalHandle = null;\n }\n }, 1000 / TARGET_FPS);\n }\n\n return callbackHandle;\n };\n}\n\nvar colorCache = {};\nvar rgbReg = /rgb\\(/;\nvar extractRgbColor = /rgb\\((.*)\\)/;\n\n// Transform a common color int oa `rgbA` color\nfunction getRgbAColor(color, opacity) {\n var id = color + '&' + opacity;\n if (colorCache[id]) {\n return colorCache[id];\n }\n\n var div = document.createElement('div');\n div.style.background = color;\n document.body.appendChild(div);\n var computedColor = window.getComputedStyle(div).backgroundColor;\n document.body.removeChild(div);\n\n /* istanbul ignore if */\n if (!rgbReg.test(computedColor)) {\n return color;\n }\n\n return colorCache[id] = 'rgba(' + extractRgbColor.exec(computedColor)[1] + ', ' + opacity + ')';\n}\n\nvar bar = {\n name: 'bar',\n props: {\n ops: Object,\n state: Object,\n hideBar: Boolean,\n otherBarHide: Boolean,\n type: String\n },\n computed: {\n bar: function bar() {\n return scrollMap[this.type];\n },\n barSize: function barSize() {\n return Math.max(this.state.size, this.ops.bar.minSize);\n },\n barRatio: function barRatio() {\n return (1 - this.barSize) / (1 - this.state.size);\n }\n },\n render: function render(h) {\n var _style, _style2, _barStyle;\n\n var vm = this;\n /** Get rgbA format background color */\n var railBackgroundColor = getRgbAColor(vm.ops.rail.background, vm.ops.rail.opacity);\n\n if (!this.touchManager) {\n this.touchManager = new touchManager();\n }\n\n /** Rail Data */\n var railSize = vm.ops.rail.size;\n var endPos = vm.otherBarHide ? 0 : railSize;\n var touchObj = vm.touchManager.getTouchObject();\n var rail = {\n class: '__rail-is-' + vm.type,\n style: (_style = {\n position: 'absolute',\n 'z-index': '1',\n\n borderRadius: vm.ops.rail.specifyBorderRadius || railSize,\n background: railBackgroundColor,\n border: vm.ops.rail.border\n }, defineProperty(_style, vm.bar.opsSize, railSize), defineProperty(_style, vm.bar.posName, vm.ops.rail['gutterOfEnds'] || 0), defineProperty(_style, vm.bar.opposName, vm.ops.rail['gutterOfEnds'] || endPos), defineProperty(_style, vm.bar.sidePosName, vm.ops.rail['gutterOfSide']), _style)\n };\n\n if (touchObj) {\n var _rail$on;\n\n rail.on = (_rail$on = {}, defineProperty(_rail$on, touchObj.touchenter, function () {\n vm.setRailHover();\n }), defineProperty(_rail$on, touchObj.touchleave, function () {\n vm.setRailLeave();\n }), _rail$on);\n }\n\n // left space for scroll button\n var buttonSize = vm.ops.scrollButton.enable ? railSize : 0;\n var barWrapper = {\n class: '__bar-wrap-is-' + vm.type,\n style: (_style2 = {\n position: 'absolute',\n borderRadius: vm.ops.rail.specifyBorderRadius || railSize\n }, defineProperty(_style2, vm.bar.posName, buttonSize), defineProperty(_style2, vm.bar.opposName, buttonSize), _style2),\n on: {}\n };\n\n var scrollDistance = vm.state.posValue * vm.state.size;\n var pos = scrollDistance * vm.barRatio / vm.barSize;\n var opacity = vm.state.opacity;\n var parent = getRealParent(this);\n\n // set class hook\n parent.setClassHook(this.type == 'vertical' ? 'vBarVisible' : 'hBarVisible', !!opacity);\n\n /** Scrollbar style */\n var barStyle = (_barStyle = {\n cursor: 'pointer',\n position: 'absolute',\n margin: 'auto',\n transition: 'opacity 0.5s',\n 'user-select': 'none',\n 'border-radius': 'inherit'\n\n }, defineProperty(_barStyle, vm.bar.size, vm.barSize * 100 + '%'), defineProperty(_barStyle, 'background', vm.ops.bar.background), defineProperty(_barStyle, vm.bar.opsSize, vm.ops.bar.size), defineProperty(_barStyle, 'opacity', opacity), defineProperty(_barStyle, 'transform', 'translate' + scrollMap[vm.type].axis + '(' + pos + '%)'), _barStyle);\n var bar = {\n style: barStyle,\n class: '__bar-is-' + vm.type,\n ref: 'thumb',\n on: {}\n };\n\n if (vm.type == 'vertical') {\n barWrapper.style.width = '100%';\n // Let bar to be on the center.\n bar.style.left = 0;\n bar.style.right = 0;\n } else {\n barWrapper.style.height = '100%';\n bar.style.top = 0;\n bar.style.bottom = 0;\n }\n\n /* istanbul ignore next */\n {\n var _touchObj = this.touchManager.getTouchObject();\n bar.on[_touchObj.touchstart] = this.createBarEvent();\n barWrapper.on[_touchObj.touchstart] = this.createTrackEvent();\n }\n\n return h(\n 'div',\n rail,\n [this.createScrollbarButton(h, 'start'), this.hideBar ? null : h(\n 'div',\n barWrapper,\n [h('div', bar)]\n ), this.createScrollbarButton(h, 'end')]\n );\n },\n data: function data() {\n return {\n isBarDragging: false\n };\n },\n\n methods: {\n setRailHover: function setRailHover() {\n var parent = getRealParent(this);\n var state = parent.vuescroll.state;\n\n if (!state.isRailHover) {\n state.isRailHover = true;\n parent.showBar();\n }\n },\n setRailLeave: function setRailLeave() {\n var parent = getRealParent(this);\n var state = parent.vuescroll.state;\n\n state.isRailHover = false;\n parent.hideBar();\n },\n setBarDrag: function setBarDrag(val) /* istanbul ignore next */{\n this.$emit('setBarDrag', this.isBarDragging = val);\n\n var parent = getRealParent(this);\n // set class hook\n parent.setClassHook(this.type == 'vertical' ? 'vBarDragging' : 'hBarDragging', !!val);\n },\n createBarEvent: function createBarEvent() {\n var ctx = this;\n\n var parent = getRealParent(ctx);\n var touchObj = ctx.touchManager.getTouchObject();\n\n function mousedown(e) /* istanbul ignore next */{\n var event = ctx.touchManager.getEventObject(e);\n if (!event) return;\n\n e.stopImmediatePropagation();\n e.preventDefault();\n event = event[0];\n\n document.onselectstart = function () {\n return false;\n };\n ctx.axisStartPos = event[ctx.bar.client] - ctx.$refs['thumb'].getBoundingClientRect()[ctx.bar.posName];\n\n // Tell parent that the mouse has been down.\n ctx.setBarDrag(true);\n eventCenter(document, touchObj.touchmove, mousemove);\n eventCenter(document, touchObj.touchend, mouseup);\n }\n\n function mousemove(e) /* istanbul ignore next */{\n if (!ctx.axisStartPos) {\n return;\n }\n\n var event = ctx.touchManager.getEventObject(e);\n if (!event) return;\n\n event = event[0];\n\n var thubmParent = ctx.$refs.thumb.parentNode;\n\n var delta = event[ctx.bar.client] - thubmParent.getBoundingClientRect()[ctx.bar.posName];\n delta = delta / ctx.barRatio;\n\n var percent = (delta - ctx.axisStartPos) / thubmParent[ctx.bar.offset];\n parent.scrollTo(defineProperty({}, ctx.bar.axis.toLowerCase(), parent.scrollPanelElm[ctx.bar.scrollSize] * percent), false);\n }\n\n function mouseup() /* istanbul ignore next */{\n ctx.setBarDrag(false);\n parent.hideBar();\n\n document.onselectstart = null;\n ctx.axisStartPos = 0;\n\n eventCenter(document, touchObj.touchmove, mousemove, false, 'off');\n eventCenter(document, touchObj.touchend, mouseup, false, 'off');\n }\n\n return mousedown;\n },\n createTrackEvent: function createTrackEvent() {\n var ctx = this;\n\n return function handleClickTrack(e) {\n var parent = getRealParent(ctx);\n\n var _ctx$bar = ctx.bar,\n client = _ctx$bar.client,\n offset = _ctx$bar.offset,\n posName = _ctx$bar.posName,\n axis = _ctx$bar.axis;\n\n var thumb = ctx.$refs['thumb'];\n\n e.preventDefault();\n e.stopImmediatePropagation();\n\n /* istanbul ignore if */\n if (!thumb) return;\n\n var barOffset = thumb[offset];\n var event = ctx.touchManager.getEventObject(e)[0];\n\n var percent = (event[client] - e.currentTarget.getBoundingClientRect()[posName] - barOffset / 2) / (e.currentTarget[offset] - barOffset);\n\n parent.scrollTo(defineProperty({}, axis.toLowerCase(), percent * 100 + '%'));\n };\n },\n\n\n // Scrollbuton relative things...\n createScrollbarButton: function createScrollbarButton(h, type /* start or end */) {\n var _style3;\n\n var barContext = this;\n\n if (!barContext.ops.scrollButton.enable) {\n return null;\n }\n\n var size = barContext.ops.rail.size;\n var _barContext$ops$scrol = barContext.ops.scrollButton,\n opacity = _barContext$ops$scrol.opacity,\n background = _barContext$ops$scrol.background;\n\n var borderColor = getRgbAColor(background, opacity);\n\n var wrapperProps = {\n class: ['__bar-button', '__bar-button-is-' + barContext.type + '-' + type],\n style: (_style3 = {}, defineProperty(_style3, barContext.bar.scrollButton[type], 0), defineProperty(_style3, 'width', size), defineProperty(_style3, 'height', size), defineProperty(_style3, 'position', 'absolute'), defineProperty(_style3, 'cursor', 'pointer'), defineProperty(_style3, 'display', 'table'), _style3),\n ref: type\n };\n\n var innerProps = {\n class: '__bar-button-inner',\n style: {\n border: 'calc(' + size + ' / 2.5) solid transparent',\n width: '0',\n height: '0',\n margin: 'auto',\n position: 'absolute',\n top: '0',\n bottom: '0',\n right: '0',\n left: '0'\n },\n on: {}\n };\n\n if (barContext.type == 'vertical') {\n if (type == 'start') {\n innerProps.style['border-bottom-color'] = borderColor;\n innerProps.style['transform'] = 'translateY(-25%)';\n } else {\n innerProps.style['border-top-color'] = borderColor;\n innerProps.style['transform'] = 'translateY(25%)';\n }\n } else {\n if (type == 'start') {\n innerProps.style['border-right-color'] = borderColor;\n innerProps.style['transform'] = 'translateX(-25%)';\n } else {\n innerProps.style['border-left-color'] = borderColor;\n innerProps.style['transform'] = 'translateX(25%)';\n }\n }\n\n /* istanbul ignore next */\n {\n var touchObj = this.touchManager.getTouchObject();\n innerProps.on[touchObj.touchstart] = this.createScrollButtonEvent(type, touchObj);\n }\n\n return h(\n 'div',\n wrapperProps,\n [h('div', innerProps)]\n );\n },\n createScrollButtonEvent: function createScrollButtonEvent(type, touchObj) {\n var ctx = this;\n var parent = getRealParent(ctx);\n\n var _ctx$ops$scrollButton = ctx.ops.scrollButton,\n step = _ctx$ops$scrollButton.step,\n mousedownStep = _ctx$ops$scrollButton.mousedownStep;\n\n\n var stepWithDirection = type == 'start' ? -step : step;\n var mousedownStepWithDirection = type == 'start' ? -mousedownStep : mousedownStep;\n var ref = requestAnimationFrame(window);\n\n // bar props: type\n var barType = ctx.type;\n\n var isMouseDown = false;\n var isMouseout = true;\n var timeoutId = void 0;\n\n function start(e) {\n /* istanbul ignore if */\n\n if (3 == e.which) {\n return;\n }\n\n // set class hook\n parent.setClassHook('cliking' + barType + type + 'Button', true);\n\n e.stopImmediatePropagation();\n e.preventDefault();\n\n isMouseout = false;\n\n parent.scrollBy(defineProperty({}, 'd' + ctx.bar.axis.toLowerCase(), stepWithDirection));\n\n eventCenter(document, touchObj.touchend, endPress, false);\n\n if (touchObj.touchstart == 'mousedown') {\n var elm = ctx.$refs[type];\n eventCenter(elm, 'mouseenter', enter, false);\n eventCenter(elm, 'mouseleave', leave, false);\n }\n\n clearTimeout(timeoutId);\n timeoutId = setTimeout(function () /* istanbul ignore next */{\n isMouseDown = true;\n ref(pressing, window);\n }, 500);\n }\n\n function pressing() /* istanbul ignore next */{\n if (isMouseDown && !isMouseout) {\n parent.scrollBy(defineProperty({}, 'd' + ctx.bar.axis.toLowerCase(), mousedownStepWithDirection), false);\n ref(pressing, window);\n }\n }\n\n function endPress() {\n clearTimeout(timeoutId);\n isMouseDown = false;\n eventCenter(document, touchObj.touchend, endPress, false, 'off');\n\n if (touchObj.touchstart == 'mousedown') {\n var elm = ctx.$refs[type];\n eventCenter(elm, 'mouseenter', enter, false, 'off');\n eventCenter(elm, 'mouseleave', leave, false, 'off');\n }\n\n parent.setClassHook('cliking' + barType + type + 'Button', false);\n }\n\n function enter() /* istanbul ignore next */{\n isMouseout = false;\n pressing();\n }\n\n function leave() /* istanbul ignore next */{\n isMouseout = true;\n }\n\n return start;\n }\n }\n};\n\nfunction getBarData(vm, type) {\n var axis = scrollMap[type].axis;\n /** type.charAt(0) = vBar/hBar */\n var barType = type.charAt(0) + 'Bar';\n\n var hideBar = !vm.bar[barType].state.size || !vm.mergedOptions.scrollPanel['scrolling' + axis] || vm.refreshLoad && type !== 'vertical' || vm.mergedOptions.bar.disable;\n\n var keepShowRail = vm.mergedOptions.rail.keepShow;\n\n if (hideBar && !keepShowRail) {\n return null;\n }\n\n return {\n hideBar: hideBar,\n props: {\n type: type,\n ops: {\n bar: vm.mergedOptions.bar,\n rail: vm.mergedOptions.rail,\n scrollButton: vm.mergedOptions.scrollButton\n },\n state: vm.bar[barType].state,\n hideBar: hideBar\n },\n on: {\n setBarDrag: vm.setBarDrag\n },\n ref: type + 'Bar',\n key: type\n };\n}\n\n/**\n * create bars\n *\n * @param {any} size\n * @param {any} type\n */\nfunction createBar(h, vm) {\n var verticalBarProps = getBarData(vm, 'vertical');\n var horizontalBarProps = getBarData(vm, 'horizontal');\n\n // set class hooks\n vm.setClassHook('hasVBar', !!(verticalBarProps && !verticalBarProps.hideBar));\n vm.setClassHook('hasHBar', !!(horizontalBarProps && !horizontalBarProps.hideBar));\n\n return [verticalBarProps ? h('bar', _extends({}, verticalBarProps, {\n props: _extends({ otherBarHide: !horizontalBarProps }, verticalBarProps.props)\n })) : null, horizontalBarProps ? h('bar', _extends({}, horizontalBarProps, {\n props: _extends({ otherBarHide: !verticalBarProps }, horizontalBarProps.props)\n })) : null];\n}\n\n/**\n * This is like a HOC, It extracts the common parts of the\n * native-mode, slide-mode and mix-mode.\n * Each mode must implement the following methods:\n * 1. refreshInternalStatus : use to refresh the component\n * 2. destroy : Destroy some registryed events before component destroy.\n * 3. updateBarStateAndEmitEvent: use to update bar states and emit events.\n */\n\nvar createComponent = function createComponent(_ref) {\n var _render = _ref.render,\n components = _ref.components,\n mixins = _ref.mixins;\n return {\n name: 'vueScroll',\n props: {\n ops: { type: Object }\n },\n components: components,\n mixins: [api].concat(toConsumableArray([].concat(mixins))),\n created: function created() {\n var _this = this;\n\n /**\n * Begin to merge options\n */\n\n var _gfc = mergeObject(this.$vuescrollConfig || {}, {});\n var ops = mergeObject(baseConfig, _gfc);\n\n this.$options.propsData.ops = this.$options.propsData.ops || {};\n Object.keys(this.$options.propsData.ops).forEach(function (key) {\n {\n defineReactive(_this.mergedOptions, key, _this.$options.propsData.ops);\n }\n });\n // from ops to mergedOptions\n mergeObject(ops, this.mergedOptions);\n\n this._isVuescrollRoot = true;\n this.renderError = validateOps(this.mergedOptions);\n },\n render: function render(h) {\n var vm = this;\n if (vm.renderError) {\n return h('div', [[vm.$slots['default']]]);\n }\n\n if (!vm.touchManager) vm.touchManager = new touchManager();\n\n // vuescroll data\n var data = {\n style: {\n height: vm.vuescroll.state.height,\n width: vm.vuescroll.state.width,\n padding: 0,\n position: 'relative',\n overflow: 'hidden'\n },\n class: _extends({ __vuescroll: true }, vm.classHooks)\n };\n\n var touchObj = vm.touchManager.getTouchObject();\n if (touchObj) {\n var _data$on;\n\n data.on = (_data$on = {}, defineProperty(_data$on, touchObj.touchenter, function () {\n vm.vuescroll.state.pointerLeave = false;\n vm.updateBarStateAndEmitEvent();\n\n vm.setClassHook('mouseEnter', true);\n }), defineProperty(_data$on, touchObj.touchleave, function () {\n vm.vuescroll.state.pointerLeave = true;\n vm.hideBar();\n\n vm.setClassHook('mouseEnter', false);\n }), defineProperty(_data$on, touchObj.touchmove, function () /* istanbul ignore next */{\n vm.vuescroll.state.pointerLeave = false;\n vm.updateBarStateAndEmitEvent();\n }), _data$on);\n }\n\n var ch = [_render(h, vm)].concat(toConsumableArray(createBar(h, vm)));\n\n var _customContainer = this.$slots['scroll-container'];\n if (_customContainer) {\n return insertChildrenIntoSlot(h, _customContainer, ch, data);\n }\n\n return h(\n 'div',\n data,\n [ch]\n );\n },\n mounted: function mounted() {\n var _this2 = this;\n\n if (!this.renderError) {\n this.initVariables();\n this.initWatchOpsChange();\n // Call external merged Api\n this.refreshInternalStatus();\n\n this.updatedCbs.push(function () {\n _this2.scrollToAnchor();\n // need to reflow to deal with the\n // latest thing.\n _this2.updateBarStateAndEmitEvent();\n });\n }\n },\n updated: function updated() {\n var _this3 = this;\n\n this.updatedCbs.forEach(function (cb) {\n cb.call(_this3);\n });\n // Clear\n this.updatedCbs = [];\n },\n beforeDestroy: function beforeDestroy() {\n if (this.destroy) {\n this.destroy();\n }\n },\n\n\n /** ------------------------------- Computed ----------------------------- */\n computed: {\n scrollPanelElm: function scrollPanelElm() {\n return this.$refs['scrollPanel']._isVue ? this.$refs['scrollPanel'].$el : this.$refs['scrollPanel'];\n }\n },\n data: function data() {\n return {\n vuescroll: {\n state: {\n isDragging: false,\n pointerLeave: true,\n isRailHover: false,\n /** Default sizeStrategies */\n height: '100%',\n width: '100%',\n // current size strategy\n currentSizeStrategy: 'percent',\n currentScrollState: null,\n currentScrollInfo: null\n }\n },\n bar: {\n vBar: {\n state: {\n posValue: 0,\n size: 0,\n opacity: 0\n }\n },\n hBar: {\n state: {\n posValue: 0,\n size: 0,\n opacity: 0\n }\n }\n },\n mergedOptions: {\n vuescroll: {},\n scrollPanel: {},\n scrollContent: {},\n rail: {},\n bar: {}\n },\n updatedCbs: [],\n renderError: false,\n\n classHooks: {\n hasVBar: false,\n hasHBar: false,\n\n vBarVisible: false,\n hBarVisible: false,\n\n vBarDragging: false,\n hBarDragging: false,\n\n clikingVerticalStartButton: false,\n clikingVerticalEndButton: false,\n clikingHorizontalStartButton: false,\n clikingHorizontalEndButton: false,\n\n mouseEnter: false\n }\n };\n },\n\n /** ------------------------------- Methods -------------------------------- */\n methods: {\n /** ------------------------ Handlers --------------------------- */\n\n scrollingComplete: function scrollingComplete() {\n this.updateBarStateAndEmitEvent('handle-scroll-complete');\n },\n setBarDrag: function setBarDrag(val) {\n /* istanbul ignore next */\n this.vuescroll.state.isDragging = val;\n },\n setClassHook: function setClassHook(name, value) {\n this.classHooks[name] = value;\n },\n\n\n /** ------------------------ Some Helpers --------------------------- */\n\n /*\n * To have a good ux, instead of hiding bar immediately, we hide bar\n * after some seconds by using this simple debounce-hidebar method.\n */\n showAndDefferedHideBar: function showAndDefferedHideBar(forceHideBar) {\n var _this4 = this;\n\n this.showBar();\n\n if (this.timeoutId) {\n clearTimeout(this.timeoutId);\n this.timeoutId = 0;\n }\n\n this.timeoutId = setTimeout(function () {\n _this4.timeoutId = 0;\n _this4.hideBar(forceHideBar);\n }, this.mergedOptions.bar.showDelay);\n },\n showBar: function showBar() {\n var opacity = this.mergedOptions.bar.opacity;\n this.bar.vBar.state.opacity = opacity;\n this.bar.hBar.state.opacity = opacity;\n },\n hideBar: function hideBar(forceHideBar) {\n var _vuescroll$state = this.vuescroll.state,\n isDragging = _vuescroll$state.isDragging,\n isRailHover = _vuescroll$state.isRailHover;\n /* istanbul ignore next */\n\n if (isDragging || isRailHover) {\n return;\n }\n\n if (forceHideBar && !this.mergedOptions.bar.keepShow) {\n this.bar.hBar.state.opacity = 0;\n this.bar.vBar.state.opacity = 0;\n }\n\n // add isDragging condition\n // to prevent from hiding bar while dragging the bar\n if (!this.mergedOptions.bar.keepShow && !this.vuescroll.state.isDragging) {\n this.bar.vBar.state.opacity = 0;\n this.bar.hBar.state.opacity = 0;\n }\n },\n useNumbericSize: function useNumbericSize() {\n this.vuescroll.state.currentSizeStrategy = 'number';\n var _mergedOptions$scroll = this.mergedOptions.scrollPanel,\n maxHeight = _mergedOptions$scroll.maxHeight,\n maxWidth = _mergedOptions$scroll.maxWidth;\n var _$el$parentNode = this.$el.parentNode,\n parentClientHeight = _$el$parentNode.clientHeight,\n parentClientWidth = _$el$parentNode.clientWidth;\n var _scrollPanelElm = this.scrollPanelElm,\n scrollHeight = _scrollPanelElm.scrollHeight,\n scrollWidth = _scrollPanelElm.scrollWidth;\n\n var width = void 0;\n var height = void 0;\n\n if (maxHeight || maxWidth) {\n height = scrollHeight <= maxHeight ? undefined : maxHeight;\n width = scrollWidth <= maxWidth ? undefined : maxWidth;\n } else {\n height = parentClientHeight;\n width = parentClientWidth;\n }\n\n this.vuescroll.state.height = height ? height + 'px' : undefined;\n this.vuescroll.state.width = width ? width + 'px' : undefined;\n },\n usePercentSize: function usePercentSize() {\n this.vuescroll.state.currentSizeStrategy = 'percent';\n\n this.vuescroll.state.height = '100%';\n this.vuescroll.state.width = '100%';\n },\n\n // Set its size to be equal to its parentNode\n setVsSize: function setVsSize() {\n var sizeStrategy = this.mergedOptions.vuescroll.sizeStrategy;\n var _mergedOptions$scroll2 = this.mergedOptions.scrollPanel,\n maxHeight = _mergedOptions$scroll2.maxHeight,\n maxWidth = _mergedOptions$scroll2.maxWidth;\n var _scrollPanelElm2 = this.scrollPanelElm,\n clientHeight = _scrollPanelElm2.clientHeight,\n clientWidth = _scrollPanelElm2.clientWidth;\n\n if (sizeStrategy == 'number' || maxHeight && clientHeight > maxHeight || maxWidth && clientWidth > maxWidth) {\n this.useNumbericSize();\n } else if (sizeStrategy == 'percent' && clientHeight != maxHeight && clientWidth != maxWidth) {\n this.usePercentSize();\n }\n },\n\n\n /** ------------------------ Init --------------------------- */\n initWatchOpsChange: function initWatchOpsChange() {\n var _this5 = this;\n\n var watchOpts = {\n deep: true,\n sync: true\n };\n this.$watch('mergedOptions', function () {\n setTimeout(function () {\n if (_this5.isSmallChangeThisTick) {\n _this5.isSmallChangeThisTick = false;\n _this5.updateBarStateAndEmitEvent('options-change');\n return;\n }\n _this5.refreshInternalStatus();\n }, 0);\n }, watchOpts);\n\n /**\n * We also watch `small` changes, and when small changes happen, we send\n * a signal to vuescroll, to tell it:\n * 1. we don't need to registry resize\n * 2. we don't need to registry scroller.\n */\n smallChangeArray.forEach(function (opts) {\n _this5.$watch(opts, function () {\n _this5.isSmallChangeThisTick = true;\n }, watchOpts);\n });\n },\n\n // scrollTo hash-anchor while mounted component have mounted.\n scrollToAnchor: function scrollToAnchor() /* istanbul ignore next */{\n var validateHashSelector = function validateHashSelector(hash) {\n return (/^#[a-zA-Z_]\\d*$/.test(hash)\n );\n };\n\n var hash = window.location.hash;\n if (!hash || (hash = hash.slice(hash.lastIndexOf('#'))) && !validateHashSelector(hash)) {\n return;\n }\n\n var elm = document.querySelector(hash);\n if (!isChildInParent(elm, this.$el) || this.mergedOptions.scrollPanel.initialScrollY || this.mergedOptions.scrollPanel.initialScrollX) {\n return;\n }\n\n this.scrollIntoView(elm);\n }\n\n /** ------------------------ Registry Resize --------------------------- */\n\n }\n };\n};\n\n// begin importing\nvar scrollPanel = {\n name: 'scrollPanel',\n props: { ops: { type: Object, required: true } },\n methods: {\n // trigger scrollPanel options initialScrollX,\n // initialScrollY\n updateInitialScroll: function updateInitialScroll() {\n var x = 0;\n var y = 0;\n\n var parent = getRealParent(this);\n\n if (this.ops.initialScrollX) {\n x = this.ops.initialScrollX;\n }\n if (this.ops.initialScrollY) {\n y = this.ops.initialScrollY;\n }\n if (x || y) {\n parent.scrollTo({ x: x, y: y });\n }\n }\n },\n mounted: function mounted() {\n var _this = this;\n\n setTimeout(function () {\n if (!_this._isDestroyed) {\n _this.updateInitialScroll();\n }\n }, 0);\n },\n render: function render(h) {\n // eslint-disable-line\n var data = {\n class: ['__panel'],\n style: {\n position: 'relative',\n boxSizing: 'border-box'\n }\n };\n\n var parent = getRealParent(this);\n\n var _customPanel = parent.$slots['scroll-panel'];\n if (_customPanel) {\n return insertChildrenIntoSlot(h, _customPanel, this.$slots.default, data);\n }\n\n return h(\n 'div',\n data,\n [[this.$slots.default]]\n );\n }\n};\n\n/**\n * Init following things\n * 1. Component\n * 2. Render\n * 3. Config\n */\nfunction _install(core, render) {\n var _components;\n\n var extraConfigs = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : [];\n var extraValidators = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : [];\n\n var components = (_components = {}, defineProperty(_components, scrollPanel.name, scrollPanel), defineProperty(_components, bar.name, bar), _components);\n\n var opts = {};\n opts.components = components;\n opts.render = render;\n opts.mixins = core;\n\n var comp = createComponent(opts);\n\n // Init Config\n extendOpts(extraConfigs, extraValidators);\n\n return comp;\n}\n\n/**\n * Get the children of parent those are in viewport\n */\nfunction getCurrentViewportDom(parent, container) {\n var children = parent.children;\n var domFragment = [];\n\n var isCurrentview = function isCurrentview(dom) {\n var _dom$getBoundingClien = dom.getBoundingClientRect(),\n left = _dom$getBoundingClien.left,\n top = _dom$getBoundingClien.top,\n width = _dom$getBoundingClien.width,\n height = _dom$getBoundingClien.height;\n\n var _container$getBoundin = container.getBoundingClientRect(),\n parentLeft = _container$getBoundin.left,\n parentTop = _container$getBoundin.top,\n parentHeight = _container$getBoundin.height,\n parentWidth = _container$getBoundin.width;\n\n if (left - parentLeft + width > 0 && left - parentLeft < parentWidth && top - parentTop + height > 0 && top - parentTop < parentHeight) {\n return true;\n }\n return false;\n };\n\n for (var i = 0; i < children.length; i++) {\n var dom = children.item(i);\n if (isCurrentview(dom) && !dom.isResizeElm) {\n domFragment.push(dom);\n }\n }\n return domFragment;\n}\n\n/**\n * Compatible to scroller's animation function\n */\nfunction createEasingFunction(easing, easingPattern) {\n return function (time) {\n return easingPattern(easing, time);\n };\n}\n\n/**\n * Calculate the easing pattern\n * @link https://github.com/cferdinandi/smooth-scroll/blob/master/src/js/smooth-scroll.js\n * modified by wangyi7099\n * @param {String} type Easing pattern\n * @param {Number} time Time animation should take to complete\n * @returns {Number}\n */\nfunction easingPattern(easing, time) {\n var pattern = null;\n /* istanbul ignore next */\n {\n // Default Easing Patterns\n if (easing === 'easeInQuad') pattern = time * time; // accelerating from zero velocity\n if (easing === 'easeOutQuad') pattern = time * (2 - time); // decelerating to zero velocity\n if (easing === 'easeInOutQuad') pattern = time < 0.5 ? 2 * time * time : -1 + (4 - 2 * time) * time; // acceleration until halfway, then deceleration\n if (easing === 'easeInCubic') pattern = time * time * time; // accelerating from zero velocity\n if (easing === 'easeOutCubic') pattern = --time * time * time + 1; // decelerating to zero velocity\n if (easing === 'easeInOutCubic') pattern = time < 0.5 ? 4 * time * time * time : (time - 1) * (2 * time - 2) * (2 * time - 2) + 1; // acceleration until halfway, then deceleration\n if (easing === 'easeInQuart') pattern = time * time * time * time; // accelerating from zero velocity\n if (easing === 'easeOutQuart') pattern = 1 - --time * time * time * time; // decelerating to zero velocity\n if (easing === 'easeInOutQuart') pattern = time < 0.5 ? 8 * time * time * time * time : 1 - 8 * --time * time * time * time; // acceleration until halfway, then deceleration\n if (easing === 'easeInQuint') pattern = time * time * time * time * time; // accelerating from zero velocity\n if (easing === 'easeOutQuint') pattern = 1 + --time * time * time * time * time; // decelerating to zero velocity\n if (easing === 'easeInOutQuint') pattern = time < 0.5 ? 16 * time * time * time * time * time : 1 + 16 * --time * time * time * time * time; // acceleration until halfway, then deceleration\n }\n return pattern || time; // no easing, no acceleration\n}\n\nfunction noop() {\n return true;\n}\n\n/* istanbul ignore next */\nvar now = Date.now || function () {\n return new Date().getTime();\n};\n\nvar ScrollControl = function () {\n function ScrollControl() {\n classCallCheck(this, ScrollControl);\n\n this.init();\n\n this.isRunning = false;\n }\n\n createClass(ScrollControl, [{\n key: 'pause',\n value: function pause() {\n /* istanbul ignore if */\n if (!this.isRunning) return;\n\n this.isPaused = true;\n }\n }, {\n key: 'stop',\n value: function stop() {\n this.isStopped = true;\n }\n }, {\n key: 'continue',\n value: function _continue() {\n /* istanbul ignore if */\n if (!this.isPaused) return;\n\n this.isPaused = false;\n this.ts = now() - this.percent * this.spd;\n this.execScroll();\n }\n }, {\n key: 'startScroll',\n value: function startScroll(st, ed, spd) {\n var stepCb = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : noop;\n var completeCb = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : noop;\n var vertifyCb = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : noop;\n var easingMethod = arguments.length > 6 && arguments[6] !== undefined ? arguments[6] : noop;\n\n var df = ed - st;\n var dir = df > 0 ? -1 : 1;\n var nt = now();\n\n if (!this.isRunning) {\n this.init();\n }\n\n if (dir != this.dir || nt - this.ts > 200) {\n this.ts = nt;\n\n this.dir = dir;\n this.st = st;\n this.ed = ed;\n this.df = df;\n } /* istanbul ignore next */else {\n this.df += df;\n }\n\n this.spd = spd;\n\n this.completeCb = completeCb;\n this.vertifyCb = vertifyCb;\n this.stepCb = stepCb;\n this.easingMethod = easingMethod;\n\n if (!this.isRunning) this.execScroll();\n }\n }, {\n key: 'execScroll',\n value: function execScroll() {\n var _this = this;\n\n if (!this.df) return;\n\n var percent = this.percent || 0;\n this.percent = 0;\n this.isRunning = true;\n\n var loop = function loop() {\n /* istanbul ignore if */\n if (!_this.isRunning || !_this.vertifyCb(percent) || _this.isStopped) {\n _this.isRunning = false;\n return;\n }\n\n percent = (now() - _this.ts) / _this.spd;\n\n if (_this.isPaused) {\n _this.percent = percent;\n _this.isRunning = false;\n return;\n }\n\n if (percent < 1) {\n var value = _this.st + _this.df * _this.easingMethod(percent);\n _this.stepCb(value);\n _this.ref(loop);\n } else {\n // trigger complete\n _this.stepCb(_this.st + _this.df);\n _this.completeCb();\n\n _this.isRunning = false;\n }\n };\n\n this.ref(loop);\n }\n }, {\n key: 'init',\n value: function init() {\n this.st = 0;\n this.ed = 0;\n this.df = 0;\n this.spd = 0;\n this.ts = 0;\n this.dir = 0;\n this.ref = requestAnimationFrame(window);\n\n this.isPaused = false;\n this.isStopped = false;\n }\n }]);\n return ScrollControl;\n}();\n\nfunction scrollTo(elm, x, y) {\n var speed = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 300;\n var easing = arguments[4];\n var scrollingComplete = arguments[5];\n\n var scrollLeft = void 0,\n scrollTop = void 0,\n scrollHeight = void 0,\n scrollWidth = void 0,\n clientWidth = void 0,\n clientHeight = void 0;\n\n var _elm = elm,\n nodeType = _elm.nodeType;\n\n var scrollX = new ScrollControl();\n var scrollY = new ScrollControl();\n\n if (!nodeType) {\n warn('You must pass a dom for the first param, ' + 'for window scrolling, ' + 'you can pass document as the first param.');\n\n return;\n }\n\n if (nodeType == 9) {\n // document\n elm = elm.scrollingElement;\n }\n\n var _elm2 = elm;\n scrollLeft = _elm2.scrollLeft;\n scrollTop = _elm2.scrollTop;\n scrollHeight = _elm2.scrollHeight;\n scrollWidth = _elm2.scrollWidth;\n clientWidth = _elm2.clientWidth;\n clientHeight = _elm2.clientHeight;\n\n\n if (typeof x === 'undefined') {\n x = scrollLeft;\n } else {\n x = getNumericValue(x, scrollWidth - clientWidth);\n }\n if (typeof y === 'undefined') {\n y = scrollTop;\n } else {\n y = getNumericValue(y, scrollHeight - clientHeight);\n }\n\n var easingMethod = createEasingFunction(easing, easingPattern);\n scrollX.startScroll(scrollLeft, x, speed, function (dx) {\n elm.scrollLeft = dx;\n }, scrollingComplete, undefined, easingMethod);\n scrollY.startScroll(scrollTop, y, speed, function (dy) {\n elm.scrollTop = dy;\n }, scrollingComplete, undefined, easingMethod);\n}\n\nvar nativeApi = {\n mounted: function mounted() {\n // registry scroll\n this.scrollX = new ScrollControl();\n this.scrollY = new ScrollControl();\n },\n\n methods: {\n nativeStop: function nativeStop() {\n this.scrollX.stop();\n this.scrollY.stop();\n },\n nativePause: function nativePause() {\n this.scrollX.pause();\n this.scrollY.pause();\n },\n nativeContinue: function nativeContinue() {\n this.scrollX.continue();\n this.scrollY.continue();\n },\n nativeScrollTo: function nativeScrollTo(x, y, speed, easing) {\n if (speed === false) {\n \n } else if (typeof speed === 'undefined') {\n speed = this.mergedOptions.scrollPanel.speed;\n }\n var elm = this.scrollPanelElm;\n var scrollTop = elm.scrollTop,\n scrollLeft = elm.scrollLeft,\n scrollWidth = elm.scrollWidth,\n clientWidth = elm.clientWidth,\n scrollHeight = elm.scrollHeight,\n clientHeight = elm.clientHeight;\n\n if (typeof x === 'undefined') {\n x = scrollLeft;\n } else {\n x = getNumericValue(x, scrollWidth - clientWidth);\n }\n if (typeof y === 'undefined') {\n y = scrollTop;\n } else {\n y = getNumericValue(y, scrollHeight - clientHeight);\n }\n\n if (speed) {\n easing = easing || this.mergedOptions.scrollPanel.easing;\n var easingMethod = createEasingFunction(easing, easingPattern);\n\n if (x != scrollLeft) {\n this.scrollX.startScroll(scrollLeft, x, speed, function (x) {\n elm.scrollLeft = x;\n }, this.scrollingComplete.bind(this), undefined, easingMethod);\n }\n\n if (y != scrollTop) {\n this.scrollY.startScroll(scrollTop, y, speed, function (y) {\n elm.scrollTop = y;\n }, this.scrollingComplete.bind(this), undefined, easingMethod);\n }\n } else {\n elm.scrollTop = y;\n elm.scrollLeft = x;\n }\n },\n getCurrentviewDomNative: function getCurrentviewDomNative() {\n var parent = this.scrollContentElm;\n var domFragment = getCurrentViewportDom(parent, this.$el);\n return domFragment;\n }\n }\n};\n\nfunction getPanelData(context) {\n // scrollPanel data start\n var data = {\n ref: 'scrollPanel',\n style: {\n height: '100%',\n overflowY: 'scroll',\n overflowX: 'scroll'\n },\n class: [],\n nativeOn: {\n '&scroll': context.handleScroll\n },\n props: {\n ops: context.mergedOptions.scrollPanel\n }\n };\n\n context.scrollYEnable = true;\n context.scrollXEnable = true;\n\n data.nativeOn.DOMMouseScroll = data.nativeOn.mousewheel = context.onMouseWheel;\n\n var _context$mergedOption = context.mergedOptions.scrollPanel,\n scrollingY = _context$mergedOption.scrollingY,\n scrollingX = _context$mergedOption.scrollingX;\n\n\n if (!context.bar.hBar.state.size || !scrollingX) {\n context.scrollXEnable = false;\n data.style.overflowX = 'hidden';\n }\n\n if (!context.bar.vBar.state.size || !scrollingY) {\n context.scrollYEnable = false;\n data.style.overflowY = 'hidden';\n }\n\n var gutter = getGutter();\n /* istanbul ignore if */\n if (!gutter) {\n createHideBarStyle();\n data.class.push('__hidebar');\n if (isIos()) {\n data.style['-webkit-overflow-scrolling'] = 'touch';\n }\n } else {\n // hide system bar by use a negative value px\n // gutter should be 0 when manually disable scrollingX #14\n if (context.bar.vBar.state.size && context.mergedOptions.scrollPanel.scrollingY) {\n if (context.mergedOptions.scrollPanel.verticalNativeBarPos == 'right') {\n data.style.marginRight = '-' + gutter + 'px';\n } /* istanbul ignore next */else {\n data.style.marginLeft = '-' + gutter + 'px';\n }\n }\n if (context.bar.hBar.state.size && context.mergedOptions.scrollPanel.scrollingX) {\n data.style.height = 'calc(100% + ' + gutter + 'px)';\n }\n }\n\n // clear legency styles of slide mode...\n data.style.transformOrigin = '';\n data.style.transform = '';\n\n return data;\n}\n\n/**\n * create a scrollPanel\n *\n * @param {any} size\n * @param {any} context\n * @returns\n */\nfunction createPanel(h, context) {\n var data = {};\n\n data = getPanelData(context);\n\n return h(\n 'scrollPanel',\n data,\n [getPanelChildren(h, context)]\n );\n}\n\nfunction getPanelChildren(h, context) {\n var viewStyle = {\n position: 'relative',\n 'box-sizing': 'border-box',\n 'min-width': '100%',\n 'min-height': '100%'\n };\n var data = {\n style: viewStyle,\n ref: 'scrollContent',\n class: '__view'\n };\n var _customContent = context.$slots['scroll-content'];\n\n if (context.mergedOptions.scrollPanel.scrollingX) {\n viewStyle.width = getComplitableStyle('width', 'fit-content');\n } else {\n data.style['width'] = '100%';\n }\n\n if (context.mergedOptions.scrollPanel.padding) {\n data.style.paddingRight = context.mergedOptions.rail.size;\n }\n\n if (_customContent) {\n return insertChildrenIntoSlot(h, _customContent, context.$slots.default, data);\n }\n\n return h(\n 'div',\n data,\n [context.$slots.default]\n );\n}\n\nfunction getPanelData$1(context) {\n // scrollPanel data start\n var data = {\n ref: 'scrollPanel',\n style: {\n 'user-select': 'none',\n '-webkit-user-select': 'none',\n 'min-width': '100%',\n 'min-height': '100%'\n },\n class: [],\n props: {\n ops: context.mergedOptions.scrollPanel\n }\n };\n\n data.class.push('__slide');\n /* istanbul ignore if */\n if (isIos()) {\n data.style = defineProperty({}, '-webkit-overflow-scrolling', 'touch');\n }\n\n if (context.mergedOptions.vuescroll.renderMethod == 'transform') {\n data.style['transform-origin'] = 'left top 0px';\n }\n\n var _context$mergedOption = context.mergedOptions.scrollPanel,\n scrollingX = _context$mergedOption.scrollingX,\n scrollingY = _context$mergedOption.scrollingY,\n padding = _context$mergedOption.padding;\n\n\n if (scrollingX && !context.refreshLoad) {\n var width = getComplitableStyle('width', 'fit-content');\n if (width) {\n data.style['width'] = width;\n } /* istanbul ignore next */else {\n data['display'] = 'inline-block';\n }\n }\n\n /* istanbul ignore if */\n if (!scrollingX) {\n data.class.push('x-hidden');\n }\n /* istanbul ignore if */\n if (!scrollingY) {\n data.class.push('y-hidden');\n }\n\n if (padding) {\n data.style.paddingRight = context.mergedOptions.rail.size;\n }\n\n return data;\n}\n\nfunction getPanelChildren$1(h, context) {\n var renderChildren = getVnodeInfo(context.$slots['scroll-panel']).ch || context.$slots.default;\n var finalChildren = [];\n\n /* istanbul ignore if */\n if (!renderChildren) {\n context.$slots.default = renderChildren = [];\n }\n\n // handle refresh\n if (context.mergedOptions.vuescroll.pullRefresh.enable) {\n finalChildren.push(h(\n 'div',\n {\n 'class': '__refresh',\n style: { visibility: context.refrehDomVisiable ? '' : 'hidden' },\n ref: __REFRESH_DOM_NAME,\n key: __REFRESH_DOM_NAME\n },\n [createTipDom(h, context, 'refresh', context.pullRefreshTip)]\n ));\n }\n\n finalChildren.push(renderChildren);\n\n // handle load\n if (context.mergedOptions.vuescroll.pushLoad.enable) {\n finalChildren.push(h(\n 'div',\n {\n ref: __LOAD_DOM_NAME,\n key: __LOAD_DOM_NAME,\n 'class': '__load',\n style: { visibility: context.loadDomVisiable ? '' : 'hidden' }\n },\n [createTipDom(h, context, 'load', context.pushLoadTip)]\n ));\n }\n\n return finalChildren;\n}\n\n// Create load or refresh tip dom of each stages\nfunction createTipDom(h, context, type, tip) {\n var stage = context.vuescroll.state[type + 'Stage'];\n var dom = null;\n // Return user specified animation dom\n /* istanbul ignore if */\n if (dom = context.$slots[type + '-' + stage]) {\n return dom;\n }\n\n switch (stage) {\n // The dom will show at deactive stage\n case 'deactive':\n case 'active':\n {\n var className = 'active';\n if (stage == 'deactive') {\n className += ' deactive';\n }\n\n dom = h(\n 'svg',\n {\n 'class': className,\n attrs: { version: '1.1',\n xmlns: 'http://www.w3.org/2000/svg',\n xmlnsXlink: 'http://www.w3.org/1999/xlink',\n x: '0px',\n y: '0px',\n viewBox: '0 0 1000 1000',\n 'enable-background': 'new 0 0 1000 1000',\n xmlSpace: 'preserve'\n }\n },\n [h('metadata', [' Svg Vector Icons : http://www.sfont.cn ']), h('g', [h(\n 'g',\n {\n attrs: { transform: 'matrix(1 0 0 -1 0 1008)' }\n },\n [h('path', {\n attrs: { d: 'M10,543l490,455l490-455L885,438L570,735.5V18H430v717.5L115,438L10,543z' }\n })]\n )])]\n );\n }\n break;\n case 'start':\n dom = h(\n 'svg',\n {\n attrs: { viewBox: '0 0 50 50' },\n 'class': 'start' },\n [h('circle', {\n attrs: { stroke: 'true', cx: '25', cy: '25', r: '20' },\n 'class': 'bg-path' }), h('circle', {\n attrs: { cx: '25', cy: '25', r: '20' },\n 'class': 'active-path' })]\n );\n break;\n case 'beforeDeactive':\n dom = h(\n 'svg',\n {\n attrs: {\n viewBox: '0 0 1024 1024',\n version: '1.1',\n xmlns: 'http://www.w3.org/2000/svg',\n 'p-id': '3562'\n }\n },\n [h('path', {\n attrs: {\n d: 'M512 0C229.706831 0 0 229.667446 0 512s229.667446 512 512 512c282.293169 0 512-229.667446 512-512S794.332554 0 512 0z m282.994215 353.406031L433.2544 715.145846a31.484062 31.484062 0 0 1-22.275938 9.231754h-0.4096a31.586462 31.586462 0 0 1-22.449231-9.814646L228.430769 546.327631a31.507692 31.507692 0 0 1 45.701908-43.386093l137.4208 144.785724L750.442338 308.854154a31.507692 31.507692 0 1 1 44.551877 44.551877z',\n fill: '',\n 'p-id': '3563'\n }\n })]\n );\n break;\n }\n return [dom, tip];\n}\n\n/**\n * create a scrollPanel\n *\n * @param {any} size\n * @param {any} context\n * @returns\n */\nfunction createPanel$1(h, context) {\n var data = getPanelData$1(context);\n\n return h(\n 'scrollPanel',\n data,\n [getPanelChildren$1(h, context)]\n );\n}\n\n// begin importing\n/**\n * create a scrollPanel\n *\n * @param {any} size\n * @param {any} vm\n * @returns\n */\nfunction createPanel$2(h, vm) {\n if (vm.mode == 'native') {\n return createPanel(h, vm);\n } else if (vm.mode == 'slide') {\n return createPanel$1(h, vm);\n }\n}\n\n// detect content size change\nfunction installResizeDetection(element, callback) {\n return injectObject(element, callback);\n}\n\nfunction injectObject(element, callback) {\n if (element.hasResized) {\n return;\n }\n\n var OBJECT_STYLE = 'display: block; position: absolute; top: 0; left: 0; width: 100%; height: 100%; border: none; padding: 0; margin: 0; opacity: 0; z-index: -1000; pointer-events: none;';\n // define a wrap due to ie's zIndex bug\n var objWrap = document.createElement('div');\n objWrap.style.cssText = OBJECT_STYLE;\n var object = document.createElement('object');\n object.style.cssText = OBJECT_STYLE;\n object.type = 'text/html';\n object.tabIndex = -1;\n\n object.onload = function () {\n eventCenter(object.contentDocument.defaultView, 'resize', callback);\n };\n // https://github.com/wnr/element-resize-detector/blob/aafe9f7ea11d1eebdab722c7c5b86634e734b9b8/src/detection-strategy/object.js#L159\n if (!isIE()) {\n object.data = 'about:blank';\n }\n objWrap.isResizeElm = true;\n objWrap.appendChild(object);\n element.appendChild(objWrap);\n if (isIE()) {\n object.data = 'about:blank';\n }\n return function destroy() {\n if (object.contentDocument) {\n eventCenter(object.contentDocument.defaultView, 'resize', callback, 'off');\n }\n element.removeChild(objWrap);\n element.hasResized = false;\n };\n}\n\nvar slideApi = {\n methods: {\n slideScrollTo: function slideScrollTo(x, y, speed, easing) {\n var _getPosition = this.getPosition(),\n scrollLeft = _getPosition.scrollLeft,\n scrollTop = _getPosition.scrollTop;\n\n x = getNumericValue(x || scrollLeft, this.scroller.__maxScrollLeft);\n y = getNumericValue(y || scrollTop, this.scroller.__maxScrollTop);\n\n this.scroller.scrollTo(x, y, speed > 0, undefined, false, speed, easing);\n },\n zoomBy: function zoomBy(factor, animate, originLeft, originTop, callback) {\n if (!this.scroller) {\n warn('zoomBy and zoomTo are only for slide mode!');\n return;\n }\n this.scroller.zoomBy(factor, animate, originLeft, originTop, callback);\n },\n zoomTo: function zoomTo(level) {\n var animate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n var originLeft = arguments[2];\n var originTop = arguments[3];\n var callback = arguments[4];\n\n if (!this.scroller) {\n warn('zoomBy and zoomTo are only for slide mode!');\n return;\n }\n this.scroller.zoomTo(level, animate, originLeft, originTop, callback);\n },\n getCurrentPage: function getCurrentPage() {\n if (!this.scroller || !this.mergedOptions.vuescroll.paging) {\n warn('getCurrentPage and goToPage are only for slide mode and paging is enble!');\n return;\n }\n return this.scroller.getCurrentPage();\n },\n goToPage: function goToPage(dest) {\n var animate = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n if (!this.scroller || !this.mergedOptions.vuescroll.paging) {\n warn('getCurrentPage and goToPage are only for slide mode and paging is enble!');\n return;\n }\n this.scroller.goToPage(dest, animate);\n },\n triggerRefreshOrLoad: function triggerRefreshOrLoad(type) {\n if (!this.scroller) {\n warn('You can only use triggerRefreshOrLoad in slide mode!');\n return;\n }\n\n var isRefresh = this.mergedOptions.vuescroll.pullRefresh.enable;\n var isLoad = this.mergedOptions.vuescroll.pushLoad.enable;\n\n if (type == 'refresh' && !isRefresh) {\n warn('refresh must be enabled!');\n return;\n } else if (type == 'load' && !isLoad) {\n warn('load must be enabled and content\\'s height > container\\'s height!');\n return;\n } else if (type !== 'refresh' && type !== 'load') {\n warn('param must be one of load and refresh!');\n return;\n }\n\n /* istanbul ignore if */\n if (this.vuescroll.state[type + 'Stage'] == 'start') {\n return;\n }\n\n this.scroller.triggerRefreshOrLoad(type);\n return true;\n },\n getCurrentviewDomSlide: function getCurrentviewDomSlide() {\n var parent = this.scrollPanelElm;\n var domFragment = getCurrentViewportDom(parent, this.$el);\n return domFragment;\n }\n }\n};\n\nvar api$1 = {\n // mix slide and nitive modes apis.\n mixins: [slideApi, nativeApi],\n methods: {\n // private api\n internalScrollTo: function internalScrollTo(destX, destY, speed, easing) {\n if (this.mode == 'native') {\n this.nativeScrollTo(destX, destY, speed, easing);\n }\n // for non-native we use scroller's scorllTo\n else if (this.mode == 'slide') {\n this.slideScrollTo(destX, destY, speed, easing);\n }\n },\n stop: function stop() {\n this.nativeStop();\n },\n pause: function pause() {\n this.nativePause();\n },\n continue: function _continue() {\n this.nativeContinue();\n },\n getCurrentviewDom: function getCurrentviewDom() {\n return this.mode == 'slide' ? this.getCurrentviewDomSlide() : this.getCurrentviewDomNative();\n }\n }\n};\n\n/*\n * Scroller\n * http://github.com/zynga/scroller\n *\n * Copyright 2011, Zynga Inc.\n * Licensed under the MIT License.\n * https://raw.github.com/zynga/scroller/master/MIT-LICENSE.txt\n *\n * Based on the work of: Unify Project (unify-project.org)\n * http://unify-project.org\n * Copyright 2011, Deutsche Telekom AG\n * License: MIT + Apache (V2)\n */\n\n/**\n * Generic animation class with support for dropped frames both optional easing and duration.\n *\n * Optional duration is useful when the lifetime is defined by another condition than time\n * e.g. speed of an animating object, etc.\n *\n * Dropped frame logic allows to keep using the same updater logic independent from the actual\n * rendering. This eases a lot of cases where it might be pretty complex to break down a state\n * based on the pure time difference.\n */\nvar time = Date.now || function () {\n return +new Date();\n};\nvar desiredFrames = 60;\nvar millisecondsPerSecond = 1000;\nvar running = {};\nvar counter = 1;\n\nvar core = { effect: {} };\nvar global$1 = null;\n\nif (typeof window !== 'undefined') {\n global$1 = window;\n} else {\n global$1 = {};\n}\n\ncore.effect.Animate = {\n /**\n * A requestAnimationFrame wrapper / polyfill.\n *\n * @param callback {Function} The callback to be invoked before the next repaint.\n * @param root {HTMLElement} The root element for the repaint\n */\n requestAnimationFrame: requestAnimationFrame(global$1),\n /**\n * Stops the given animation.\n *\n * @param id {Integer} Unique animation ID\n * @return {Boolean} Whether the animation was stopped (aka, was running before)\n */\n stop: function stop(id) {\n var cleared = running[id] != null;\n if (cleared) {\n running[id] = null;\n }\n\n return cleared;\n },\n\n /**\n * Whether the given animation is still running.\n *\n * @param id {Integer} Unique animation ID\n * @return {Boolean} Whether the animation is still running\n */\n isRunning: function isRunning(id) {\n return running[id] != null;\n },\n\n /**\n * Start the animation.\n *\n * @param stepCallback {Function} Pointer to function which is executed on every step.\n * Signature of the method should be `function(percent, now, virtual) { return continueWithAnimation; }`\n * @param verifyCallback {Function} Executed before every animation step.\n * Signature of the method should be `function() { return continueWithAnimation; }`\n * @param completedCallback {Function}\n * Signature of the method should be `function(droppedFrames, finishedAnimation) {}`\n * @param duration {Integer} Milliseconds to run the animation\n * @param easingMethod {Function} Pointer to easing function\n * Signature of the method should be `function(percent) { return modifiedValue; }`\n * @param root {Element ? document.body} Render root, when available. Used for internal\n * usage of requestAnimationFrame.\n * @return {Integer} Identifier of animation. Can be used to stop it any time.\n */\n start: function start(stepCallback, verifyCallback, completedCallback, duration, easingMethod, root) {\n var start = time();\n var lastFrame = start;\n var percent = 0;\n var dropCounter = 0;\n var id = counter++;\n\n if (!root) {\n root = document.body;\n }\n\n // Compacting running db automatically every few new animations\n if (id % 20 === 0) {\n var newRunning = {};\n for (var usedId in running) {\n newRunning[usedId] = true;\n }\n running = newRunning;\n }\n\n // This is the internal step method which is called every few milliseconds\n var step = function step(virtual) {\n // Normalize virtual value\n var render = virtual !== true;\n\n // Get current time\n var now = time();\n\n // Verification is executed before next animation step\n if (!running[id] || verifyCallback && !verifyCallback(id)) {\n running[id] = null;\n completedCallback && completedCallback(desiredFrames - dropCounter / ((now - start) / millisecondsPerSecond), id, false);\n return;\n }\n\n // For the current rendering to apply let's update omitted steps in memory.\n // This is important to bring internal state variables up-to-date with progress in time.\n if (render) {\n var droppedFrames = Math.round((now - lastFrame) / (millisecondsPerSecond / desiredFrames)) - 1;\n for (var j = 0; j < Math.min(droppedFrames, 4); j++) {\n step(true);\n dropCounter++;\n }\n }\n\n if (!running[id]) {\n return;\n }\n\n // Compute percent value\n if (duration) {\n percent = (now - start) / duration;\n if (percent > 1) {\n percent = 1;\n }\n }\n\n // Execute step callback, then...\n var value = easingMethod ? easingMethod(percent) : percent;\n if ((stepCallback(value, now, render) === false || percent === 1) && render) {\n running[id] = null;\n completedCallback && completedCallback(desiredFrames - dropCounter / ((now - start) / millisecondsPerSecond), id, percent === 1 || duration == null);\n } else if (render) {\n lastFrame = now;\n core.effect.Animate.requestAnimationFrame(step, root);\n }\n };\n\n // Mark as running\n running[id] = true;\n\n // Init first step\n core.effect.Animate.requestAnimationFrame(step, root);\n\n // Return unique animation ID\n return id;\n }\n};\n\n/*\n * Scroller\n * http://github.com/zynga/scroller\n *\n * modified by wangyi7099\n *\n * Copyright 2011, Zynga Inc.\n * Licensed under the MIT License.\n * https://raw.github.com/zynga/scroller/master/MIT-LICENSE.txt\n *\n * Based on the work of: Unify Project (unify-project.org)\n * http://unify-project.org\n * Copyright 2011, Deutsche Telekom AG\n * License: MIT + Apache (V2)\n */\nvar animatingMethod = null;\n\nvar noAnimatingMethod = null;\n\nfunction Scroller(callback, options) {\n this.__callback = callback;\n\n this.options = {\n /** Enable scrolling on x-axis */\n scrollingX: true,\n\n /** Enable scrolling on y-axis */\n scrollingY: true,\n\n /** Enable animations for deceleration, snap back, zooming and scrolling */\n animating: true,\n\n /** duration for animations triggered by scrollTo/zoomTo */\n animationDuration: 250,\n\n /** Enable bouncing (content can be slowly moved outside and jumps back after releasing) */\n bouncing: {\n top: 100,\n bottom: 100,\n left: 100,\n right: 100\n },\n\n /** Enable locking to the main axis if user moves only slightly on one of them at start */\n locking: true,\n\n /** Enable pagination mode (switching between full page content panes) */\n paging: false,\n\n /** Enable snapping of content to a configured pixel grid */\n snapping: false,\n\n /** Enable zooming of content via API, fingers and mouse wheel */\n zooming: false,\n\n /** Minimum zoom level */\n minZoom: 0.5,\n\n /** Maximum zoom level */\n maxZoom: 3,\n\n /** Multiply or decrease scrolling speed **/\n speedMultiplier: 1,\n\n /** Callback that is fired on the later of touch end or deceleration end,\n provided that another scrolling action has not begun. Used to know\n when to fade out a scrollbar. */\n scrollingComplete: NOOP,\n\n animatingEasing: 'easeOutCubic',\n\n noAnimatingEasing: 'easeInOutCubic',\n\n /** This configures the amount of change applied to deceleration when reaching boundaries **/\n penetrationDeceleration: 0.03,\n\n /** This configures the amount of change applied to acceleration when reaching boundaries **/\n penetrationAcceleration: 0.08\n };\n\n for (var key in options) {\n this.options[key] = options[key];\n }\n\n animatingMethod = createEasingFunction(this.options.animatingEasing, easingPattern);\n noAnimatingMethod = createEasingFunction(this.options.noAnimatingEasing, easingPattern);\n}\n\nvar members = {\n /*\n ---------------------------------------------------------------------------\n INTERNAL FIELDS :: STATUS\n ---------------------------------------------------------------------------\n */\n\n /** {Boolean} Whether only a single finger is used in touch handling */\n __isSingleTouch: false,\n\n /** {Boolean} Whether a touch event sequence is in progress */\n __isTracking: false,\n\n /** {Boolean} Whether a deceleration animation went to completion. */\n __didDecelerationComplete: false,\n\n /**\n * {Boolean} Whether a gesture zoom/rotate event is in progress. Activates when\n * a gesturestart event happens. This has higher priority than dragging.\n */\n __isGesturing: false,\n\n /**\n * {Boolean} Whether the user has moved by such a distance that we have enabled\n * dragging mode. Hint: It's only enabled after some pixels of movement to\n * not interrupt with clicks etc.\n */\n __isDragging: false,\n\n /**\n * {Boolean} Not touching and dragging anymore, and smoothly animating the\n * touch sequence using deceleration.\n */\n __isDecelerating: false,\n\n /**\n * {Boolean} Smoothly animating the currently configured change\n */\n __isAnimating: false,\n\n /*\n ---------------------------------------------------------------------------\n INTERNAL FIELDS :: DIMENSIONS\n ---------------------------------------------------------------------------\n */\n\n /** {Integer} Available outer left position (from document perspective) */\n __clientLeft: 0,\n\n /** {Integer} Available outer top position (from document perspective) */\n __clientTop: 0,\n\n /** {Integer} Available outer width */\n __clientWidth: 0,\n\n /** {Integer} Available outer height */\n __clientHeight: 0,\n\n /** {Integer} Outer width of content */\n __contentWidth: 0,\n\n /** {Integer} Outer height of content */\n __contentHeight: 0,\n\n /** {Integer} Snapping width for content */\n __snapWidth: 100,\n\n /** {Integer} Snapping height for content */\n __snapHeight: 100,\n\n /** {Integer} Height to assign to refresh area */\n __refreshHeight: null,\n /** {Integer} Height to assign to refresh area */\n __loadHeight: null,\n /** {Boolean} Whether the refresh process is enabled when the event is released now */\n __refreshActive: false,\n\n /** {Function} Callback to execute on activation. This is for signalling the user about a refresh is about to happen when he release */\n __refreshActivate: null,\n\n __refreshBeforeDeactivate: null,\n\n /** {Function} Callback to execute on deactivation. This is for signalling the user about the refresh being cancelled */\n __refreshDeactivate: null,\n\n /** {Function} Callback to execute to start the actual refresh. Call {@link #refreshFinish} when done */\n __refreshStart: null,\n\n __loadActive: null,\n\n __loadActivate: null,\n\n __loadBeforeDeactivate: null,\n\n __loadDeactivate: null,\n\n __loadStart: null,\n /** {Number} Zoom level */\n __zoomLevel: 1,\n\n /** {Number} Scroll position on x-axis */\n __scrollLeft: 0,\n\n /** {Number} Scroll position on y-axis */\n __scrollTop: 0,\n\n /** {Integer} Maximum allowed scroll position on x-axis */\n __maxScrollLeft: 0,\n\n /** {Integer} Maximum allowed scroll position on y-axis */\n __maxScrollTop: 0,\n\n /* {Number} Scheduled left position (final position when animating) */\n __scheduledLeft: 0,\n\n /* {Number} Scheduled top position (final position when animating) */\n __scheduledTop: 0,\n\n /* {Number} Scheduled zoom level (final scale when animating) */\n __scheduledZoom: 0,\n\n /**\n * current page\n */\n __currentPageX: null,\n\n __currentPageY: null,\n\n /**\n * total page\n */\n __totalXPage: null,\n\n __totalYPage: null,\n /*\n ---------------------------------------------------------------------------\n INTERNAL FIELDS :: LAST POSITIONS\n ---------------------------------------------------------------------------\n */\n /** whether the scroller is disabled or not */\n __disable: false,\n /** {Number} Left position of finger at start */\n __lastTouchLeft: null,\n\n /** {Number} Top position of finger at start */\n __lastTouchTop: null,\n\n /** {Date} Timestamp of last move of finger. Used to limit tracking range for deceleration speed. */\n __lastTouchMove: null,\n\n /** {Array} List of positions, uses three indexes for each state: left, top, timestamp */\n __positions: null,\n\n /*\n ---------------------------------------------------------------------------\n INTERNAL FIELDS :: DECELERATION SUPPORT\n ---------------------------------------------------------------------------\n */\n\n /** {Integer} Minimum left scroll position during deceleration */\n __minDecelerationScrollLeft: null,\n\n /** {Integer} Minimum top scroll position during deceleration */\n __minDecelerationScrollTop: null,\n\n /** {Integer} Maximum left scroll position during deceleration */\n __maxDecelerationScrollLeft: null,\n\n /** {Integer} Maximum top scroll position during deceleration */\n __maxDecelerationScrollTop: null,\n\n /** {Number} Current factor to modify horizontal scroll position with on every step */\n __decelerationVelocityX: null,\n\n /** {Number} Current factor to modify vertical scroll position with on every step */\n __decelerationVelocityY: null,\n\n /*\n ---------------------------------------------------------------------------\n PUBLIC API\n ---------------------------------------------------------------------------\n */\n\n /**\n * Configures the dimensions of the client (outer) and content (inner) elements.\n * Requires the available space for the outer element and the outer size of the inner element.\n * All values which are falsy (null or zero etc.) are ignored and the old value is kept.\n *\n * @param clientWidth {Integer ? null} Inner width of outer element\n * @param clientHeight {Integer ? null} Inner height of outer element\n * @param contentWidth {Integer ? null} Outer width of inner element\n * @param contentHeight {Integer ? null} Outer height of inner element\n */\n setDimensions: function setDimensions(clientWidth, clientHeight, contentWidth, contentHeight, animate) {\n var noScroll = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : false;\n\n var self = this;\n\n // Only update values which are defined\n if (clientWidth === +clientWidth) {\n self.__clientWidth = clientWidth;\n }\n\n if (clientHeight === +clientHeight) {\n self.__clientHeight = clientHeight;\n }\n\n if (contentWidth === +contentWidth) {\n self.__contentWidth = contentWidth;\n }\n\n if (contentHeight === +contentHeight) {\n self.__contentHeight = contentHeight;\n }\n\n // Refresh maximums\n self.__computeScrollMax();\n\n if (!noScroll) {\n // Refresh scroll position\n self.scrollTo(self.__scrollLeft, self.__scrollTop, animate);\n }\n },\n\n /**\n * Sets the client coordinates in relation to the document.\n *\n * @param left {Integer ? 0} Left position of outer element\n * @param top {Integer ? 0} Top position of outer element\n */\n setPosition: function setPosition(left, top) {\n var self = this;\n\n self.__clientLeft = left || 0;\n self.__clientTop = top || 0;\n },\n\n /**\n * Configures the snapping (when snapping is active)\n *\n * @param width {Integer} Snapping width\n * @param height {Integer} Snapping height\n */\n setSnapSize: function setSnapSize(width, height) {\n var self = this;\n\n self.__snapWidth = width;\n self.__snapHeight = height;\n },\n\n /**\n * Activates pull-to-refresh. A special zone on the top of the list to start a list refresh whenever\n * the user event is released during visibility of this zone. This was introduced by some apps on iOS like\n * the official Twitter client.\n *\n * @param height {Integer} Height of pull-to-refresh zone on top of rendered list\n * @param activateCallback {Function} Callback to execute on activation. This is for signalling the user about a refresh is about to happen when he release.\n * @param deactivateCallback {Function} Callback to execute on deactivation. This is for signalling the user about the refresh being cancelled.\n * @param startCallback {Function} Callback to execute to start the real async refresh action. Call {@link #finishPullToRefresh} after finish of refresh.\n */\n activatePullToRefresh: function activatePullToRefresh(height, _ref) {\n var activateCallback = _ref.activateCallback,\n deactivateCallback = _ref.deactivateCallback,\n startCallback = _ref.startCallback,\n beforeDeactivateCallback = _ref.beforeDeactivateCallback,\n beforeDeactiveEnd = _ref.beforeDeactiveEnd;\n\n var self = this;\n\n self.__refreshHeight = height;\n self.__refreshActivate = activateCallback;\n self.__refreshBeforeDeactivate = beforeDeactivateCallback;\n self.__refreshBeforeDeactiveEnd = beforeDeactiveEnd;\n self.__refreshDeactivate = deactivateCallback;\n self.__refreshStart = startCallback;\n },\n activatePushToLoad: function activatePushToLoad(height, _ref2) {\n var activateCallback = _ref2.activateCallback,\n deactivateCallback = _ref2.deactivateCallback,\n startCallback = _ref2.startCallback,\n beforeDeactivateCallback = _ref2.beforeDeactivateCallback,\n beforeDeactiveEnd = _ref2.beforeDeactiveEnd;\n\n var self = this;\n\n self.__loadHeight = height;\n self.__loadActivate = activateCallback;\n self.__loadBeforeDeactivate = beforeDeactivateCallback;\n self.__loadBeforeDeactiveEnd = beforeDeactiveEnd;\n self.__loadDeactivate = deactivateCallback;\n self.__loadStart = startCallback;\n },\n\n /**\n * Starts pull-to-refresh manually.\n */\n triggerRefreshOrLoad: function triggerRefreshOrLoad() {\n var type = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'refresh';\n\n var wasDecelerating = this.__isDecelerating;\n if (wasDecelerating) {\n core.effect.Animate.stop(wasDecelerating);\n this.__isDecelerating = false;\n }\n // Use publish instead of scrollTo to allow scrolling to out of boundary position\n // We don't need to normalize scrollLeft, zoomLevel, etc. here because we only y-scrolling when pull-to-refresh is enabled\n if (type == 'refresh') {\n if (this.__refreshActive || this.__refreshBeforeDeactiveStarted) return;\n\n this.__publish(this.__scrollLeft, -this.__refreshHeight, this.__zoomLevel, true);\n if (this.__refreshStart) {\n this.__refreshStart();\n this.__refreshActive = true;\n }\n } else if (type == 'load') {\n if (this.__loadActive || this.__loadBeforeDeactiveStarted) return;\n\n this.__publish(this.__scrollLeft, this.__maxScrollTop + this.__loadHeight, this.__zoomLevel, true);\n if (this.__loadStart) {\n this.__loadStart();\n this.__loadActive = true;\n }\n }\n },\n\n /**\n * Signalizes that pull-to-refresh is finished.\n */\n finishRefreshOrLoad: function finishRefreshOrLoad() {\n var self = this;\n\n if (self.__refreshActive) {\n self.__refreshActive = false;\n var endRefreshActive = function endRefreshActive() {\n if (self.__refreshBeforeDeactiveEnd) {\n self.__refreshBeforeDeactiveEnd();\n }\n self.__refreshBeforeDeactiveStarted = true;\n self.scrollTo(self.__scrollLeft, self.__scrollTop, true);\n };\n\n if (self.__refreshBeforeDeactivate) {\n self.__refreshBeforeDeactivate(endRefreshActive);\n } else {\n endRefreshActive();\n }\n }\n\n if (self.__loadActive) {\n self.__loadActive = false;\n var endLoadActive = function endLoadActive() {\n if (self.__loadBeforeDeactiveEnd) {\n self.__loadBeforeDeactiveEnd();\n }\n self.__loadBeforeDeactiveStarted = true;\n self.scrollTo(self.__scrollLeft, self.__scrollTop, true);\n };\n\n if (self.__loadBeforeDeactivate) {\n self.__loadBeforeDeactivate(endLoadActive);\n } else {\n endLoadActive();\n }\n }\n },\n\n /**\n * Returns the scroll position and zooming values\n *\n * @return {Map} `left` and `top` scroll position and `zoom` level\n */\n getValues: function getValues() {\n var self = this;\n\n return {\n left: self.__scrollLeft,\n top: self.__scrollTop,\n zoom: self.__zoomLevel\n };\n },\n\n /**\n * Returns the maximum scroll values\n *\n * @return {Map} `left` and `top` maximum scroll values\n */\n getScrollMax: function getScrollMax() {\n var self = this;\n\n return {\n left: self.__maxScrollLeft,\n top: self.__maxScrollTop\n };\n },\n\n /**\n * Zooms to the given level. Supports optional animation. Zooms\n * the center when no coordinates are given.\n *\n * @param level {Number} Level to zoom to\n * @param animate {Boolean ? false} Whether to use animation\n * @param originLeft {Number ? null} Zoom in at given left coordinate\n * @param originTop {Number ? null} Zoom in at given top coordinate\n * @param callback {Function ? null} A callback that gets fired when the zoom is complete.\n */\n zoomTo: function zoomTo(level, animate, originLeft, originTop, callback) {\n var self = this;\n\n if (!self.options.zooming) {\n throw new Error('Zooming is not enabled!');\n }\n\n // Add callback if exists\n if (callback) {\n self.__zoomComplete = callback;\n }\n\n // Stop deceleration\n if (self.__isDecelerating) {\n core.effect.Animate.stop(self.__isDecelerating);\n self.__isDecelerating = false;\n }\n\n var oldLevel = self.__zoomLevel;\n\n // Normalize input origin to center of viewport if not defined\n if (originLeft == null) {\n originLeft = self.__clientWidth / 2;\n }\n\n if (originTop == null) {\n originTop = self.__clientHeight / 2;\n }\n\n // Limit level according to configuration\n level = Math.max(Math.min(level, self.options.maxZoom), self.options.minZoom);\n\n // Recompute maximum values while temporary tweaking maximum scroll ranges\n self.__computeScrollMax(level);\n\n // Recompute left and top coordinates based on new zoom level\n var left = (originLeft + self.__scrollLeft) * level / oldLevel - originLeft;\n var top = (originTop + self.__scrollTop) * level / oldLevel - originTop;\n\n // Limit x-axis\n if (left > self.__maxScrollLeft) {\n left = self.__maxScrollLeft;\n } else if (left < 0) {\n left = 0;\n }\n\n // Limit y-axis\n if (top > self.__maxScrollTop) {\n top = self.__maxScrollTop;\n } else if (top < 0) {\n top = 0;\n }\n\n // Push values out\n self.__publish(left, top, level, animate);\n },\n\n /**\n * Zooms the content by the given factor.\n *\n * @param factor {Number} Zoom by given factor\n * @param animate {Boolean ? false} Whether to use animation\n * @param originLeft {Number ? 0} Zoom in at given left coordinate\n * @param originTop {Number ? 0} Zoom in at given top coordinate\n * @param callback {Function ? null} A callback that gets fired when the zoom is complete.\n */\n zoomBy: function zoomBy(factor, animate, originLeft, originTop, callback) {\n var self = this;\n\n self.zoomTo(self.__zoomLevel * factor, animate, originLeft, originTop, callback);\n },\n\n /**\n * Scrolls to the given position. Respect limitations and snapping automatically.\n *\n * @param left {Number?null} Horizontal scroll position, keeps current if value is null\n * @param top {Number?null} Vertical scroll position, keeps current if value is null\n * @param animate {Boolean?false} Whether the scrolling should happen using an animation\n * @param zoom {Number?null} Zoom level to go to\n */\n scrollTo: function scrollTo(left, top, animate, zoom, force, speed, easing) {\n var self = this;\n\n // Stop deceleration\n if (self.__isDecelerating) {\n core.effect.Animate.stop(self.__isDecelerating);\n self.__isDecelerating = false;\n }\n\n // Correct coordinates based on new zoom level\n if (zoom != null && zoom !== self.__zoomLevel) {\n if (!self.options.zooming) {\n throw new Error('Zooming is not enabled!');\n }\n\n left *= zoom;\n top *= zoom;\n\n // Recompute maximum values while temporary tweaking maximum scroll ranges\n self.__computeScrollMax(zoom);\n } else {\n // Keep zoom when not defined\n zoom = self.__zoomLevel;\n }\n\n if (!self.options.scrollingX && !force) {\n left = self.__scrollLeft;\n } else {\n if (self.options.paging) {\n left = Math.round(left / self.__clientWidth) * self.__clientWidth;\n } else if (self.options.snapping) {\n left = Math.round(left / self.__snapWidth) * self.__snapWidth;\n }\n }\n\n if (!self.options.scrollingY && !force) {\n top = self.__scrollTop;\n } else {\n if (self.options.paging) {\n top = Math.round(top / self.__clientHeight) * self.__clientHeight;\n } else if (self.options.snapping) {\n top = Math.round(top / self.__snapHeight) * self.__snapHeight;\n }\n }\n\n if (!force) {\n // Limit for allowed ranges\n left = Math.max(Math.min(self.__maxScrollLeft, left), 0);\n top = Math.max(Math.min(self.__maxScrollTop, top), 0);\n }\n\n // Don't animate when no change detected, still call publish to make sure\n // that rendered position is really in-sync with internal data\n if (left === self.__scrollLeft && top === self.__scrollTop) {\n animate = false;\n }\n\n // Publish new values\n if (!self.__isTracking) {\n self.__publish(left, top, zoom, animate, speed, easing);\n }\n },\n\n /**\n * Scroll by the given offset\n *\n * @param left {Number ? 0} Scroll x-axis by given offset\n * @param top {Number ? 0} Scroll x-axis by given offset\n * @param animate {Boolean ? false} Whether to animate the given change\n */\n scrollBy: function scrollBy(left, top, animate) {\n var self = this;\n\n var startLeft = self.__isAnimating ? self.__scheduledLeft : self.__scrollLeft;\n var startTop = self.__isAnimating ? self.__scheduledTop : self.__scrollTop;\n\n self.scrollTo(startLeft + (left || 0), startTop + (top || 0), animate);\n },\n getCurrentPage: function getCurrentPage() {\n this.__computePage();\n return {\n x: this.__currentPageX,\n y: this.__currentPageY\n };\n },\n goToPage: function goToPage(_ref3, animate) {\n var x = _ref3.x,\n y = _ref3.y;\n\n if (isNaN(x)) {\n x = 1;\n }\n if (isNaN(y)) {\n y = 1;\n }\n this.scrollTo((x - 1) * this.__clientWidth, (y - 1) * this.__clientHeight, animate);\n },\n\n\n /*\n ---------------------------------------------------------------------------\n EVENT CALLBACKS\n ---------------------------------------------------------------------------\n */\n\n /**\n * Mouse wheel handler for zooming support\n */\n doMouseZoom: function doMouseZoom(wheelDelta, timeStamp, pageX, pageY) {\n var self = this;\n var change = wheelDelta > 0 ? 0.97 : 1.03;\n\n return self.zoomTo(self.__zoomLevel * change, false, pageX - self.__clientLeft, pageY - self.__clientTop);\n },\n\n /**\n * Touch start handler for scrolling support\n */\n doTouchStart: function doTouchStart(touches, timeStamp) {\n // Array-like check is enough here\n if (touches.length == null) {\n throw new Error('Invalid touch list: ' + touches);\n }\n\n if (timeStamp instanceof Date) {\n timeStamp = timeStamp.valueOf();\n }\n if (typeof timeStamp !== 'number') {\n throw new Error('Invalid timestamp value: ' + timeStamp);\n }\n\n var self = this;\n\n // Reset interruptedAnimation flag\n self.__interruptedAnimation = true;\n\n // Stop deceleration\n if (self.__isDecelerating) {\n core.effect.Animate.stop(self.__isDecelerating);\n self.__isDecelerating = false;\n self.__interruptedAnimation = true;\n }\n\n // Stop animation\n if (self.__isAnimating) {\n core.effect.Animate.stop(self.__isAnimating);\n self.__isAnimating = false;\n self.__interruptedAnimation = true;\n }\n\n // Use center point when dealing with two fingers\n var currentTouchLeft, currentTouchTop;\n var isSingleTouch = touches.length === 1;\n if (isSingleTouch) {\n currentTouchLeft = touches[0].pageX;\n currentTouchTop = touches[0].pageY;\n } else {\n currentTouchLeft = Math.abs(touches[0].pageX + touches[1].pageX) / 2;\n currentTouchTop = Math.abs(touches[0].pageY + touches[1].pageY) / 2;\n }\n\n // Store initial positions\n self.__initialTouchLeft = currentTouchLeft;\n self.__initialTouchTop = currentTouchTop;\n\n // Store current zoom level\n self.__zoomLevelStart = self.__zoomLevel;\n\n // Store initial touch positions\n self.__lastTouchLeft = currentTouchLeft;\n self.__lastTouchTop = currentTouchTop;\n\n // Store initial move time stamp\n self.__lastTouchMove = timeStamp;\n\n // Reset initial scale\n self.__lastScale = 1;\n\n // Reset locking flags\n self.__enableScrollX = !isSingleTouch && self.options.scrollingX;\n self.__enableScrollY = !isSingleTouch && self.options.scrollingY;\n\n // Reset tracking flag\n self.__isTracking = true;\n\n // Reset deceleration complete flag\n self.__didDecelerationComplete = false;\n\n // Dragging starts directly with two fingers, otherwise lazy with an offset\n self.__isDragging = !isSingleTouch;\n\n // Some features are in multi touch scenarios\n self.__isSingleTouch = isSingleTouch;\n\n // Clearing data structure\n self.__positions = [];\n },\n\n /**\n * Touch move handler for scrolling support\n */\n doTouchMove: function doTouchMove(touches, timeStamp, scale) {\n // Array-like check is enough here\n if (touches.length == null) {\n throw new Error('Invalid touch list: ' + touches);\n }\n\n if (timeStamp instanceof Date) {\n timeStamp = timeStamp.valueOf();\n }\n if (typeof timeStamp !== 'number') {\n throw new Error('Invalid timestamp value: ' + timeStamp);\n }\n\n var self = this;\n\n // Ignore event when tracking is not enabled (event might be outside of element)\n if (!self.__isTracking) {\n return;\n }\n\n var currentTouchLeft, currentTouchTop;\n\n // Compute move based around of center of fingers\n if (touches.length === 2) {\n currentTouchLeft = Math.abs(touches[0].pageX + touches[1].pageX) / 2;\n currentTouchTop = Math.abs(touches[0].pageY + touches[1].pageY) / 2;\n } else {\n currentTouchLeft = touches[0].pageX;\n currentTouchTop = touches[0].pageY;\n }\n\n var positions = self.__positions;\n\n // Are we already is dragging mode?\n if (self.__isDragging) {\n // Compute move distance\n var moveX = currentTouchLeft - self.__lastTouchLeft;\n var moveY = currentTouchTop - self.__lastTouchTop;\n\n // Read previous scroll position and zooming\n var scrollLeft = self.__scrollLeft;\n var scrollTop = self.__scrollTop;\n var level = self.__zoomLevel;\n\n // Work with scaling\n if (scale != null && self.options.zooming) {\n var oldLevel = level;\n\n // Recompute level based on previous scale and new scale\n level = level / self.__lastScale * scale;\n\n // Limit level according to configuration\n level = Math.max(Math.min(level, self.options.maxZoom), self.options.minZoom);\n\n // Only do further compution when change happened\n if (oldLevel !== level) {\n // Compute relative event position to container\n var currentTouchLeftRel = currentTouchLeft - self.__clientLeft;\n var currentTouchTopRel = currentTouchTop - self.__clientTop;\n\n // Recompute left and top coordinates based on new zoom level\n scrollLeft = (currentTouchLeftRel + scrollLeft) * level / oldLevel - currentTouchLeftRel;\n scrollTop = (currentTouchTopRel + scrollTop) * level / oldLevel - currentTouchTopRel;\n\n // Recompute max scroll values\n self.__computeScrollMax(level);\n }\n }\n\n var bouncing = self.options.bouncing;\n\n if (self.__enableScrollX) {\n scrollLeft -= moveX * this.options.speedMultiplier;\n var maxScrollLeft = self.__maxScrollLeft;\n\n if (scrollLeft > maxScrollLeft || scrollLeft < 0) {\n scrollLeft += moveX / 2 * this.options.speedMultiplier;\n\n // fix scrollLeft\n scrollLeft = Math.min(Math.max(-bouncing.left, scrollLeft), maxScrollLeft + bouncing.right);\n }\n }\n\n // Compute new vertical scroll position\n if (self.__enableScrollY) {\n scrollTop -= moveY * this.options.speedMultiplier;\n var maxScrollTop = self.__maxScrollTop;\n\n if (scrollTop > maxScrollTop || scrollTop < 0) {\n scrollTop += moveY / 2 * this.options.speedMultiplier;\n\n // fix scrollTop\n scrollTop = Math.min(Math.max(-bouncing.top, scrollTop), maxScrollTop + bouncing.bottom);\n\n // Trigger pull to refresh or push to load\n if (!self.__enableScrollX && (self.__refreshHeight != null || self.__loadHeight != null)) {\n if (!self.__refreshActive && scrollTop <= -self.__refreshHeight) {\n self.__refreshActive = true;\n if (self.__refreshActivate) {\n self.__refreshActivate();\n }\n } else if (self.__refreshActive && scrollTop > -self.__refreshHeight) {\n self.__refreshActive = false;\n if (self.__refreshDeactivate) {\n self.__refreshDeactivate();\n }\n }\n // handle for push-load\n else if (!self.__loadActive && scrollTop >= self.__maxScrollTop + self.__loadHeight && self.__loadHeight > 0) {\n self.__loadActive = true;\n if (self.__loadActivate) {\n self.__loadActivate();\n }\n } else if (self.__loadActive && scrollTop < self.__maxScrollTop + self.__loadHeight) {\n self.__loadActive = false;\n if (self.__loadDeactivate) {\n self.__loadDeactivate();\n }\n }\n }\n }\n }\n\n // Keep list from growing infinitely (holding min 10, max 20 measure points)\n if (positions.length > 60) {\n positions.splice(0, 30);\n }\n\n // Track scroll movement for decleration\n positions.push(scrollLeft, scrollTop, timeStamp);\n\n // Sync scroll position\n self.__publish(scrollLeft, scrollTop, level);\n\n // Otherwise figure out whether we are switching into dragging mode now.\n } else {\n var minimumTrackingForScroll = self.options.locking ? 3 : 0;\n var minimumTrackingForDrag = 5;\n\n var distanceX = Math.abs(currentTouchLeft - self.__initialTouchLeft);\n var distanceY = Math.abs(currentTouchTop - self.__initialTouchTop);\n\n self.__enableScrollX = self.options.scrollingX && distanceX >= minimumTrackingForScroll;\n self.__enableScrollY = self.options.scrollingY && distanceY >= minimumTrackingForScroll;\n\n positions.push(self.__scrollLeft, self.__scrollTop, timeStamp);\n\n self.__isDragging = (self.__enableScrollX || self.__enableScrollY) && (distanceX >= minimumTrackingForDrag || distanceY >= minimumTrackingForDrag);\n if (self.__isDragging) {\n self.__interruptedAnimation = false;\n }\n }\n\n // Update last touch positions and time stamp for next event\n self.__lastTouchLeft = currentTouchLeft;\n self.__lastTouchTop = currentTouchTop;\n self.__lastTouchMove = timeStamp;\n self.__lastScale = scale;\n },\n\n /**\n * Touch end handler for scrolling support\n */\n doTouchEnd: function doTouchEnd(timeStamp) {\n if (timeStamp instanceof Date) {\n timeStamp = timeStamp.valueOf();\n }\n if (typeof timeStamp !== 'number') {\n throw new Error('Invalid timestamp value: ' + timeStamp);\n }\n\n var self = this;\n\n // Ignore event when tracking is not enabled (no touchstart event on element)\n // This is required as this listener ('touchmove') sits on the document and not on the element itself.\n if (!self.__isTracking) {\n return;\n }\n\n // Not touching anymore (when two finger hit the screen there are two touch end events)\n self.__isTracking = false;\n\n // Be sure to reset the dragging flag now. Here we also detect whether\n // the finger has moved fast enough to switch into a deceleration animation.\n if (self.__isDragging) {\n // Reset dragging flag\n self.__isDragging = false;\n\n // Start deceleration\n // Verify that the last move detected was in some relevant time frame\n if (self.__isSingleTouch && self.options.animating && timeStamp - self.__lastTouchMove <= 100) {\n // Then figure out what the scroll position was about 100ms ago\n var positions = self.__positions;\n var endPos = positions.length - 1;\n var startPos = endPos;\n\n // Move pointer to position measured 100ms ago\n for (var i = endPos; i > 0 && positions[i] > self.__lastTouchMove - 100; i -= 3) {\n startPos = i;\n }\n\n // If start and stop position is identical in a 100ms timeframe,\n // we cannot compute any useful deceleration.\n if (startPos !== endPos) {\n // Compute relative movement between these two points\n var timeOffset = positions[endPos] - positions[startPos];\n var movedLeft = self.__scrollLeft - positions[startPos - 2];\n var movedTop = self.__scrollTop - positions[startPos - 1];\n\n // Based on 50ms compute the movement to apply for each render step\n self.__decelerationVelocityX = movedLeft / timeOffset * (1000 / 60);\n self.__decelerationVelocityY = movedTop / timeOffset * (1000 / 60);\n\n // How much velocity is required to start the deceleration\n var minVelocityToStartDeceleration = self.options.paging || self.options.snapping ? 4 : 1;\n\n // Verify that we have enough velocity to start deceleration\n if (Math.abs(self.__decelerationVelocityX) > minVelocityToStartDeceleration || Math.abs(self.__decelerationVelocityY) > minVelocityToStartDeceleration) {\n // Deactivate pull-to-refresh when decelerating\n if (!self.__refreshActive && !self.__loadActive) {\n self.__startDeceleration(timeStamp);\n }\n } else {\n self.__scrollComplete();\n }\n } else {\n self.__scrollComplete();\n }\n } else if (timeStamp - self.__lastTouchMove > 100) {\n self.__scrollComplete();\n }\n }\n\n // If this was a slower move it is per default non decelerated, but this\n // still means that we want snap back to the bounds which is done here.\n // This is placed outside the condition above to improve edge case stability\n // e.g. touchend fired without enabled dragging. This should normally do not\n // have modified the scroll positions or even showed the scrollbars though.\n if (!self.__isDecelerating) {\n if (self.__refreshActive && self.__refreshStart) {\n // Use publish instead of scrollTo to allow scrolling to out of boundary position\n // We don't need to normalize scrollLeft, zoomLevel, etc. here because we only y-scrolling when pull-to-refresh is enabled\n self.__publish(self.__scrollLeft, -self.__refreshHeight, self.__zoomLevel, true);\n\n if (self.__refreshStart) {\n self.__refreshStart();\n }\n } else if (self.__loadActive && self.__loadStart) {\n // Use publish instead of scrollTo to allow scrolling to out of boundary position\n // We don't need to normalize scrollLeft, zoomLevel, etc. here because we only y-scrolling when pull-to-refresh is enabled\n self.__publish(self.__scrollLeft, self.__maxScrollTop + self.__loadHeight, self.__zoomLevel, true);\n\n if (self.__loadStart) {\n self.__loadStart();\n }\n } else {\n if (self.__interruptedAnimation || self.__isDragging) {\n self.__scrollComplete();\n }\n self.scrollTo(self.__scrollLeft, self.__scrollTop, true, self.__zoomLevel);\n\n // Directly signalize deactivation (nothing todo on refresh?)\n if (self.__refreshActive) {\n self.__refreshActive = false;\n if (self.__refreshDeactivate) {\n self.__refreshDeactivate();\n }\n } else if (self.__loadActive) {\n self.__loadActive = false;\n if (self.__loadDeactivate) {\n self.__loadDeactivate();\n }\n }\n }\n }\n\n // Fully cleanup list\n self.__positions.length = 0;\n },\n\n /** Handle for scroll/publish */\n onScroll: NOOP,\n\n stop: function stop() {\n var self = this;\n\n self.__disable = true;\n },\n start: function start() {\n var self = this;\n\n self.__disable = true;\n },\n /*\n ---------------------------------------------------------------------------\n PRIVATE API\n ---------------------------------------------------------------------------\n */\n\n /**\n * Applies the scroll position to the content element\n *\n * @param left {Number} Left scroll position\n * @param top {Number} Top scroll position\n * @param animate {Boolean?false} Whether animation should be used to move to the new coordinates\n */\n __publish: function __publish(left, top, zoom, animate, speed, easing) {\n var self = this;\n if (self.__disable) {\n return;\n }\n if (isNaN(left)) {\n left = this.__scrollLeft;\n }\n if (isNaN(top)) {\n top = this.__scrollTop;\n }\n // Remember whether we had an animation, then we try to continue based on the current \"drive\" of the animation\n var wasAnimating = self.__isAnimating;\n if (wasAnimating) {\n core.effect.Animate.stop(wasAnimating);\n self.__isAnimating = false;\n }\n\n if (animate && (self.options.animating || speed)) {\n // Keep scheduled positions for scrollBy/zoomBy functionality\n self.__scheduledLeft = left;\n self.__scheduledTop = top;\n self.__scheduledZoom = zoom;\n\n var oldLeft = self.__scrollLeft;\n var oldTop = self.__scrollTop;\n var oldZoom = self.__zoomLevel;\n\n var diffLeft = left - oldLeft;\n var diffTop = top - oldTop;\n var diffZoom = zoom - oldZoom;\n\n var step = function step(percent, now, render) {\n if (render) {\n self.__scrollLeft = oldLeft + diffLeft * percent;\n self.__scrollTop = oldTop + diffTop * percent;\n self.__zoomLevel = oldZoom + diffZoom * percent;\n\n // Push values out\n if (self.__callback) {\n self.__callback(self.__scrollLeft, self.__scrollTop, self.__zoomLevel);\n self.onScroll();\n }\n }\n };\n\n var verify = function verify(id) {\n return self.__isAnimating === id;\n };\n\n var completed = function completed(renderedFramesPerSecond, animationId, wasFinished) {\n if (animationId === self.__isAnimating) {\n self.__isAnimating = false;\n }\n if (self.__didDecelerationComplete || wasFinished) {\n self.__scrollComplete();\n }\n\n if (self.options.zooming) {\n self.__computeScrollMax();\n if (self.__zoomComplete) {\n self.__zoomComplete();\n self.__zoomComplete = null;\n }\n }\n\n if (self.__refreshBeforeDeactiveStarted) {\n self.__refreshBeforeDeactiveStarted = false;\n if (self.__refreshDeactivate) self.__refreshDeactivate();\n }\n\n if (self.__loadBeforeDeactiveStarted) {\n self.__loadBeforeDeactiveStarted = false;\n if (self.__loadDeactivate) self.__loadDeactivate();\n }\n };\n\n var easingFunction = animatingMethod;\n if (easing) {\n easingFunction = createEasingFunction(easing, easingPattern);\n }\n\n // When continuing based on previous animation we choose an ease-out animation instead of ease-in-out\n self.__isAnimating = core.effect.Animate.start(step, verify, completed, speed || self.options.animationDuration, wasAnimating ? easingFunction : noAnimatingMethod);\n } else {\n self.__scheduledLeft = self.__scrollLeft = left;\n self.__scheduledTop = self.__scrollTop = top;\n self.__scheduledZoom = self.__zoomLevel = zoom;\n\n // Push values out\n if (self.__callback) {\n self.__callback(left, top, zoom);\n self.onScroll();\n }\n\n // Fix max scroll ranges\n if (self.options.zooming) {\n self.__computeScrollMax();\n if (self.__zoomComplete) {\n self.__zoomComplete();\n self.__zoomComplete = null;\n }\n }\n\n if (self.__refreshBeforeDeactiveStarted) {\n self.__refreshBeforeDeactiveStarted = false;\n if (self.__refreshDeactivate) self.__refreshDeactivate();\n }\n\n if (self.__loadBeforeDeactiveStarted) {\n self.__loadBeforeDeactiveStarted = false;\n if (self.__loadDeactivate) self.__loadDeactivate();\n }\n }\n },\n\n /**\n * Recomputes scroll minimum values based on client dimensions and content dimensions.\n */\n __computeScrollMax: function __computeScrollMax(zoomLevel) {\n var self = this;\n\n if (zoomLevel == null) {\n zoomLevel = self.__zoomLevel;\n }\n\n self.__maxScrollLeft = Math.max(self.__contentWidth * zoomLevel - self.__clientWidth, 0);\n self.__maxScrollTop = Math.max(self.__contentHeight * zoomLevel - self.__clientHeight, 0);\n },\n /** compute current page total page */\n __computePage: function __computePage() {\n var self = this;\n var clientWidth = self.__clientWidth;\n var clientHeight = self.__clientHeight;\n var left = self.__scrollLeft;\n var top = self.__scrollTop;\n self.__totalXPage = Math.ceil(self.__contentWidth / clientWidth);\n self.__currentPageX = Math.ceil(left / clientWidth + 1);\n self.__totalYPage = Math.ceil(self.__contentHeight / clientHeight);\n self.__currentPageY = Math.ceil(top / clientHeight + 1);\n },\n /** complete scroll*/\n __scrollComplete: function __scrollComplete() {\n var self = this;\n self.options.scrollingComplete();\n },\n /*\n ---------------------------------------------------------------------------\n ANIMATION (DECELERATION) SUPPORT\n ---------------------------------------------------------------------------\n */\n\n /**\n * Called when a touch sequence end and the speed of the finger was high enough\n * to switch into deceleration mode.\n */\n __startDeceleration: function __startDeceleration() {\n var self = this;\n\n if (self.options.paging) {\n var scrollLeft = Math.max(Math.min(self.__scrollLeft, self.__maxScrollLeft), 0);\n var scrollTop = Math.max(Math.min(self.__scrollTop, self.__maxScrollTop), 0);\n var clientWidth = self.__clientWidth;\n var clientHeight = self.__clientHeight;\n\n // We limit deceleration not to the min/max values of the allowed range, but to the size of the visible client area.\n // Each page should have exactly the size of the client area.\n self.__minDecelerationScrollLeft = Math.floor(scrollLeft / clientWidth) * clientWidth;\n self.__minDecelerationScrollTop = Math.floor(scrollTop / clientHeight) * clientHeight;\n self.__maxDecelerationScrollLeft = Math.ceil(scrollLeft / clientWidth) * clientWidth;\n self.__maxDecelerationScrollTop = Math.ceil(scrollTop / clientHeight) * clientHeight;\n } else {\n self.__minDecelerationScrollLeft = 0;\n self.__minDecelerationScrollTop = 0;\n self.__maxDecelerationScrollLeft = self.__maxScrollLeft;\n self.__maxDecelerationScrollTop = self.__maxScrollTop;\n }\n\n // Wrap class method\n var step = function step(percent, now, render) {\n self.__stepThroughDeceleration(render);\n };\n\n // How much velocity is required to keep the deceleration running\n var minVelocityToKeepDecelerating = self.options.snapping ? 4 : 0.001;\n\n // Detect whether it's still worth to continue animating steps\n // If we are already slow enough to not being user perceivable anymore, we stop the whole process here.\n var verify = function verify() {\n var shouldContinue = Math.abs(self.__decelerationVelocityX) >= minVelocityToKeepDecelerating || Math.abs(self.__decelerationVelocityY) >= minVelocityToKeepDecelerating;\n if (!shouldContinue) {\n self.__didDecelerationComplete = true;\n }\n return shouldContinue;\n };\n\n var completed = function completed() {\n if (!self.__isDecelerating) {\n return;\n }\n self.__isDecelerating = false;\n if (self.__didDecelerationComplete) {\n self.__scrollComplete();\n }\n\n // Animate to grid when snapping is active, otherwise just fix out-of-boundary positions\n self.scrollTo(self.__scrollLeft, self.__scrollTop, self.options.snapping);\n };\n\n // Start animation and switch on flag\n self.__isDecelerating = core.effect.Animate.start(step, verify, completed);\n },\n\n /**\n * Called on every step of the animation\n *\n * @param inMemory {Boolean?false} Whether to not render the current step, but keep it in memory only. Used internally only!\n */\n __stepThroughDeceleration: function __stepThroughDeceleration(render) {\n var self = this;\n var bouncing = self.options.bouncing;\n var minLeft = self.__minDecelerationScrollLeft;\n var maxLeft = self.__maxDecelerationScrollLeft;\n var minTop = self.__minDecelerationScrollTop;\n var maxTop = self.__maxDecelerationScrollTop;\n // Add deceleration to scroll position\n var scrollLeft = self.__scrollLeft + self.__decelerationVelocityX;\n var scrollTop = self.__scrollTop + self.__decelerationVelocityY;\n\n var bounceX = scrollLeft < minLeft || scrollLeft > maxLeft;\n var bounceY = scrollTop < minTop || scrollTop > maxTop;\n\n // fix scrollLeft and scrollTop\n var fixedScrollLeft = Math.min(Math.max(minLeft - bouncing.left, scrollLeft), maxLeft + bouncing.right);\n\n var fixedScrollTop = Math.min(Math.max(minTop - bouncing.top, scrollTop), maxTop + bouncing.bottom);\n\n //\n // UPDATE SCROLL POSITION\n //\n if (render) {\n self.__publish(fixedScrollLeft, fixedScrollTop, self.__zoomLevel);\n } else {\n self.__scrollLeft = scrollLeft;\n self.__scrollTop = scrollTop;\n }\n\n //\n // SLOW DOWN\n //\n\n // Slow down velocity on every iteration\n if (!self.options.paging) {\n // This is the factor applied to every iteration of the animation\n // to slow down the process. This should emulate natural behavior where\n // objects slow down when the initiator of the movement is removed\n var frictionFactor = 0.95;\n\n self.__decelerationVelocityX *= frictionFactor;\n self.__decelerationVelocityY *= frictionFactor;\n }\n\n //\n // BOUNCING SUPPORT\n //\n\n var scrollOutsideX = 0;\n var scrollOutsideY = 0;\n\n // This configures the amount of change applied to deceleration/acceleration when reaching boundaries\n var penetrationDeceleration = self.options.penetrationDeceleration;\n var penetrationAcceleration = self.options.penetrationAcceleration;\n\n if (bounceX) {\n // Check limits\n if (scrollLeft < self.__minDecelerationScrollLeft) {\n scrollOutsideX = self.__minDecelerationScrollLeft - scrollLeft;\n } else if (scrollLeft > self.__maxDecelerationScrollLeft) {\n scrollOutsideX = self.__maxDecelerationScrollLeft - scrollLeft;\n }\n }\n\n if (bounceY) {\n if (scrollTop < self.__minDecelerationScrollTop) {\n scrollOutsideY = self.__minDecelerationScrollTop - scrollTop;\n } else if (scrollTop > self.__maxDecelerationScrollTop) {\n scrollOutsideY = self.__maxDecelerationScrollTop - scrollTop;\n }\n }\n\n if (scrollOutsideX !== 0) {\n if (scrollOutsideX * self.__decelerationVelocityX <= 0) {\n self.__decelerationVelocityX += scrollOutsideX * penetrationDeceleration;\n if (scrollOutsideX < 0 && -scrollOutsideX >= bouncing.right && self.__decelerationVelocityX > 0) {\n self.__decelerationVelocityX = -bouncing.right / 2;\n }\n if (scrollOutsideX > 0 && scrollOutsideX >= bouncing.left && self.__decelerationVelocityX < 0) {\n self.__decelerationVelocityX = bouncing.left / 2;\n }\n } else {\n self.__decelerationVelocityX = scrollOutsideX * penetrationAcceleration;\n }\n }\n\n if (scrollOutsideY !== 0) {\n if (scrollOutsideY * self.__decelerationVelocityY <= 0) {\n self.__decelerationVelocityY += scrollOutsideY * penetrationDeceleration;\n if (scrollOutsideY < 0 && -scrollOutsideY >= bouncing.bottom && self.__decelerationVelocityY > 0) {\n self.__decelerationVelocityY = -bouncing.bottom / 2;\n }\n if (scrollOutsideY > 0 && scrollOutsideY >= bouncing.top && self.__decelerationVelocityY < 0) {\n self.__decelerationVelocityY = bouncing.top / 2;\n }\n } else {\n self.__decelerationVelocityY = scrollOutsideY * penetrationAcceleration / 2;\n }\n }\n }\n};\n\n// Copy over members to prototype\nfor (var key in members) {\n Scroller.prototype[key] = members[key];\n}\n\n/* DOM-based rendering (Uses 3D when available, falls back on margin when transform not available) */\nfunction render(content, global, suffix, type) {\n if (type == 'position') {\n return function (left, top) {\n content.style.left = -left + 'px';\n content.style.top = -top + 'px';\n };\n }\n\n var vendorPrefix = getPrefix(global);\n\n var helperElem = document.createElement('div');\n var undef;\n\n var perspectiveProperty = vendorPrefix + 'Perspective';\n var transformProperty = 'transform'; //vendorPrefix + 'Transform';\n\n if (helperElem.style[perspectiveProperty] !== undef) {\n return function (left, top, zoom) {\n content.style[transformProperty] = 'translate3d(' + -left + suffix + ',' + -top + suffix + ',0) scale(' + zoom + ')';\n };\n } else if (helperElem.style[transformProperty] !== undef) {\n return function (left, top, zoom) {\n content.style[transformProperty] = 'translate(' + -left + suffix + ',' + -top + suffix + ') scale(' + zoom + ')';\n };\n }\n}\n\nvar touch = new touchManager();\nfunction listenContainer(container, scroller, eventCallback, zooming, preventDefault, preventDefaultOnMove) {\n var destroy = null;\n var mousedown = false;\n var touchObj = touch.getTouchObject();\n\n function touchstart(e) {\n var event = touch.getEventObject(e);\n // Don't react if initial down happens on a form element\n if (event[0] && event[0].target && event[0].target.tagName.match(/input|textarea|select/i) || scroller.__disable) {\n return;\n }\n eventCallback('mousedown');\n mousedown = true;\n scroller.doTouchStart(event, e.timeStamp);\n\n if (preventDefault) {\n e.preventDefault();\n }\n e.stopPropagation();\n\n // here , we want to manully prevent default, so we\n // set passive to false\n // see https://developer.mozilla.org/zh-CN/docs/Web/API/EventTarget/addEventListener\n document.addEventListener(touchObj.touchmove, touchmove, {\n passive: false\n });\n }\n\n function touchmove(e) {\n if (scroller.__disable || !mousedown) return;\n\n var event = touch.getEventObject(e);\n eventCallback('mousemove');\n scroller.doTouchMove(event, e.timeStamp, e.scale);\n if (preventDefaultOnMove) {\n e.preventDefault();\n }\n }\n\n function touchend(e) {\n eventCallback('mouseup');\n mousedown = false;\n scroller.doTouchEnd(e.timeStamp);\n document.removeEventListener(touchObj.touchmove, touchmove);\n }\n function touchcancel(e) {\n scroller.doTouchEnd(e.timeStamp);\n }\n\n function zoomHandle(e) {\n scroller.doMouseZoom(e.detail ? e.detail * -120 : e.wheelDelta, e.timeStamp, e.pageX, e.pageY);\n }\n\n container.addEventListener(touchObj.touchstart, touchstart, false);\n\n document.addEventListener(touchObj.touchend, touchend, false);\n document.addEventListener(touchObj.touchcancel, touchcancel, false);\n\n if (zooming && !touch.isTouch) {\n container.addEventListener(navigator.userAgent.indexOf('Firefox') > -1 ? 'DOMMouseScroll' : 'mousewheel', zoomHandle, false);\n }\n\n destroy = function destroy() {\n container.removeEventListener(touchObj.touchstart, touchstart, false);\n\n document.removeEventListener(touchObj.touchend, touchend, false);\n document.removeEventListener(touchObj.touchcancel, touchcancel, false);\n\n container.removeEventListener(navigator.userAgent.indexOf('Firefox') > -1 ? 'DOMMouseScroll' : 'mousewheel', zoomHandle, false);\n };\n\n // handle __publish event\n scroller.onScroll = function () {\n eventCallback('onscroll');\n };\n return destroy;\n}\n\n/**\n * These mixes is exclusive for slide mode\n */\n\ncreateSlideModeStyle();\n/**\n * @description refresh and load callback\n */\nfunction createStateCallbacks(type, stageType, vm, tipDom) {\n var listeners = vm.$listeners;\n\n var activateCallback = function activateCallback() {\n vm.vuescroll.state[stageType] = 'active';\n vm.$emit(type + '-activate', vm, tipDom);\n };\n\n var deactivateCallback = function deactivateCallback() {\n vm.vuescroll.state[stageType] = 'deactive';\n vm.$emit(type + '-deactivate', vm, tipDom);\n };\n\n var beforeDeactiveEnd = function beforeDeactiveEnd() {\n vm.vuescroll.state[stageType] = 'beforeDeactiveEnd';\n vm.$emit(type + '-before-deactivate-end', vm, tipDom);\n };\n\n var startCallback = function startCallback() {\n vm.vuescroll.state[stageType] = 'start';\n setTimeout(function () {\n vm.scroller.finishRefreshOrLoad();\n }, 2000); // Default start stage duration\n };\n\n // let beforeDeactivateCallback = done => {\n // vm.vuescroll.state[stageType] = 'beforeDeactive';\n // setTimeout(function() {\n // done();\n // }, 500); // Default before-deactivated stage duration\n // };\n var beforeDeactivateCallback = void 0;\n\n /* istanbul ignore if */\n if (listeners[type + '-before-deactivate']) {\n beforeDeactivateCallback = function beforeDeactivateCallback(done) {\n vm.vuescroll.state[stageType] = 'beforeDeactive';\n vm.$emit(type + '-before-deactivate', vm, tipDom, done.bind(vm.scroller));\n };\n }\n\n /* istanbul ignore if */\n if (listeners[type + '-start']) {\n startCallback = function startCallback() {\n vm.vuescroll.state[stageType] = 'start';\n vm.$emit(type + '-start', vm, tipDom, vm.scroller.finishRefreshOrLoad.bind(vm.scroller));\n };\n }\n\n return {\n activateCallback: activateCallback,\n deactivateCallback: deactivateCallback,\n startCallback: startCallback,\n beforeDeactivateCallback: beforeDeactivateCallback,\n beforeDeactiveEnd: beforeDeactiveEnd\n };\n}\n\nvar slideMix = {\n mounted: function mounted() {\n this.vsMounted = true;\n },\n\n computed: {\n pullRefreshTip: function pullRefreshTip() {\n return this.mergedOptions.vuescroll.pullRefresh.tips[this.vuescroll.state.refreshStage];\n },\n pushLoadTip: function pushLoadTip() {\n return this.mergedOptions.vuescroll.pushLoad.tips[this.vuescroll.state.loadStage];\n },\n refreshLoad: function refreshLoad() {\n return this.mergedOptions.vuescroll.pullRefresh.enable || this.mergedOptions.vuescroll.pushLoad.enable;\n },\n refrehDomVisiable: function refrehDomVisiable() {\n return this.vsMounted && this.outTheTopBoundary;\n },\n loadDomVisiable: function loadDomVisiable() {\n return this.vsMounted && this.outTheBottomBoundary;\n }\n },\n data: function data() {\n return {\n vuescroll: {\n state: {\n /** Default tips of refresh and load */\n refreshStage: 'deactive',\n loadStage: 'deactive'\n }\n },\n vsMounted: false,\n outTheTopBoundary: false,\n outTheBottomBoundary: false\n };\n },\n\n methods: {\n // Update:\n // 1. update height/width\n // 2. update refresh or load\n updateScroller: function updateScroller() {\n this.updateDimesion();\n this.registryRefreshLoad();\n },\n updateDimesion: function updateDimesion() {\n var clientWidth = this.$el.clientWidth;\n var clientHeight = this.$el.clientHeight;\n var contentWidth = this.scrollPanelElm.scrollWidth;\n var contentHeight = this.scrollPanelElm.scrollHeight;\n var refreshHeight = 0;\n var loadHeight = 0;\n // If the refresh option is true,let's give a \"margin-top\" style to\n // the refresh-tip dom. let it to be invisible when doesn't trigger\n // refresh.\n if (this.mergedOptions.vuescroll.pullRefresh.enable) {\n if (this.vsMounted) {\n var refreshDom = this.$refs[__REFRESH_DOM_NAME].elm || this.$refs[__REFRESH_DOM_NAME];\n refreshHeight = refreshDom.offsetHeight;\n refreshDom.style.marginTop = -refreshHeight + 'px';\n }\n }\n if (this.mergedOptions.vuescroll.pushLoad.enable) {\n if (this.vsMounted) {\n var loadDom = this.$refs[__LOAD_DOM_NAME].elm || this.$refs[__LOAD_DOM_NAME];\n loadHeight = loadDom.offsetHeight;\n contentHeight -= loadHeight;\n loadDom.style.bottom = '-' + loadHeight + 'px';\n }\n }\n if (this.scroller) {\n this.scroller.setDimensions(clientWidth, clientHeight, contentWidth, contentHeight, false);\n }\n },\n registryRefreshLoad: function registryRefreshLoad() {\n // registry refresh\n if (this.mergedOptions.vuescroll.pullRefresh.enable) {\n this.registryEvent('refresh');\n }\n // registry load\n if (this.mergedOptions.vuescroll.pushLoad.enable) {\n this.registryEvent('load');\n }\n },\n registryScroller: function registryScroller() {\n var _this = this;\n\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n _ref$left = _ref.left,\n left = _ref$left === undefined ? 0 : _ref$left,\n _ref$top = _ref.top,\n top = _ref$top === undefined ? 0 : _ref$top,\n _ref$zoom = _ref.zoom,\n zoom = _ref$zoom === undefined ? 1 : _ref$zoom;\n\n var _mergedOptions$vuescr = this.mergedOptions.vuescroll.scroller,\n preventDefault = _mergedOptions$vuescr.preventDefault,\n preventDefaultOnMove = _mergedOptions$vuescr.preventDefaultOnMove;\n var _mergedOptions$vuescr2 = this.mergedOptions.vuescroll,\n paging = _mergedOptions$vuescr2.paging,\n snapping = _mergedOptions$vuescr2.snapping.enable,\n renderMethod = _mergedOptions$vuescr2.renderMethod,\n zooming = _mergedOptions$vuescr2.zooming,\n locking = _mergedOptions$vuescr2.locking;\n // disale zooming when refresh or load enabled\n\n zooming = !this.refreshLoad && !paging && !snapping && zooming;\n var _mergedOptions$scroll = this.mergedOptions.scrollPanel,\n scrollingY = _mergedOptions$scroll.scrollingY,\n scrollingX = _mergedOptions$scroll.scrollingX;\n\n\n var scrollingComplete = this.scrollingComplete.bind(this);\n\n // Initialize Scroller\n this.scroller = new Scroller(render(this.scrollPanelElm, window, 'px', renderMethod), _extends({}, this.mergedOptions.vuescroll.scroller, {\n zooming: zooming,\n scrollingY: scrollingY,\n scrollingX: scrollingX && !this.refreshLoad,\n animationDuration: this.mergedOptions.scrollPanel.speed,\n paging: paging,\n snapping: snapping,\n scrollingComplete: scrollingComplete,\n locking: locking\n }));\n\n this.scroller.__disable = this.mergedOptions.vuescroll.scroller.disable;\n this.scroller.__scrollLeft = left;\n this.scroller.__scrollTop = top;\n this.scroller.__zoomLevel = zoom;\n\n // Set snap\n if (snapping) {\n this.scroller.setSnapSize(this.mergedOptions.vuescroll.snapping.width, this.mergedOptions.vuescroll.snapping.height);\n }\n var rect = this.$el.getBoundingClientRect();\n this.scroller.setPosition(rect.left + this.$el.clientLeft, rect.top + this.$el.clientTop);\n\n // Get destroy callback\n var cb = listenContainer(this.$el, this.scroller, function (eventType) {\n // Thie is to dispatch the event from the scroller.\n // to let vuescroll refresh the dom\n switch (eventType) {\n case 'mousedown':\n _this.vuescroll.state.isDragging = true;\n break;\n case 'onscroll':\n {\n /**\n * Trigger auto load\n */\n var stage = _this.vuescroll.state['loadStage'];\n var _mergedOptions$vuescr3 = _this.mergedOptions.vuescroll.pushLoad,\n enable = _mergedOptions$vuescr3.enable,\n auto = _mergedOptions$vuescr3.auto,\n autoLoadDistance = _mergedOptions$vuescr3.autoLoadDistance;\n var _scroller = _this.scroller,\n __scrollTop = _scroller.__scrollTop,\n __maxScrollTop = _scroller.__maxScrollTop;\n\n if (stage != 'start' && enable && auto && !_this.lockAutoLoad && // auto load debounce\n autoLoadDistance >= __maxScrollTop - __scrollTop && __scrollTop > 0) {\n _this.lockAutoLoad = true;\n _this.triggerRefreshOrLoad('load');\n }\n\n if (autoLoadDistance < __maxScrollTop - __scrollTop) {\n _this.lockAutoLoad = false;\n }\n\n _this.handleScroll(false);\n }\n\n break;\n case 'mouseup':\n _this.vuescroll.state.isDragging = false;\n break;\n }\n }, zooming, preventDefault, preventDefaultOnMove);\n\n this.updateScroller();\n\n return cb;\n },\n updateSlideModeBarState: function updateSlideModeBarState() {\n // update slide mode scrollbars' state\n var heightPercentage = void 0,\n widthPercentage = void 0;\n var vuescroll = this.$el;\n var scroller = this.scroller;\n\n var outerLeft = 0;\n var outerTop = 0;\n\n var _$el = this.$el,\n clientWidth = _$el.clientWidth,\n clientHeight = _$el.clientHeight;\n\n\n var contentWidth = clientWidth + this.scroller.__maxScrollLeft;\n var contentHeight = clientHeight + this.scroller.__maxScrollTop;\n\n // We should add the the height or width that is\n // out of horizontal bountry to the total length\n\n /* istanbul ignore if */\n if (scroller.__scrollLeft < 0) {\n outerLeft = -scroller.__scrollLeft;\n } /* istanbul ignore next */else if (scroller.__scrollLeft > scroller.__maxScrollLeft) {\n outerLeft = scroller.__scrollLeft - scroller.__maxScrollLeft;\n }\n\n // out of vertical bountry\n if (scroller.__scrollTop < 0) {\n outerTop = -scroller.__scrollTop;\n this.outTheBottomBoundary = false;\n this.outTheTopBoundary = true;\n } else if (scroller.__scrollTop > scroller.__maxScrollTop) {\n outerTop = scroller.__scrollTop - scroller.__maxScrollTop;\n this.outTheTopBoundary = false;\n this.outTheBottomBoundary = true;\n } else {\n this.outTheTopBoundary = this.outTheBottomBoundary = false;\n }\n\n heightPercentage = clientHeight / (contentHeight + outerTop);\n widthPercentage = clientWidth / (contentWidth + outerLeft);\n\n var scrollTop = Math.min(Math.max(0, scroller.__scrollTop), scroller.__maxScrollTop);\n var scrollLeft = Math.min(Math.max(0, scroller.__scrollLeft), scroller.__maxScrollLeft);\n\n this.bar.vBar.state.posValue = (scrollTop + outerTop) * 100 / vuescroll.clientHeight;\n this.bar.hBar.state.posValue = (scrollLeft + outerLeft) * 100 / vuescroll.clientWidth;\n\n /* istanbul ignore if */\n if (scroller.__scrollLeft < 0) {\n this.bar.hBar.state.posValue = 0;\n }\n if (scroller.__scrollTop < 0) {\n this.bar.vBar.state.posValue = 0;\n }\n\n this.bar.vBar.state.size = heightPercentage < 1 ? heightPercentage : 0;\n this.bar.hBar.state.size = widthPercentage < 1 ? widthPercentage : 0;\n },\n registryEvent: function registryEvent(type) {\n var domName = type == 'refresh' ? __REFRESH_DOM_NAME : __LOAD_DOM_NAME;\n var activateFunc = type == 'refresh' ? this.scroller.activatePullToRefresh : this.scroller.activatePushToLoad;\n var stageType = type == 'refresh' ? 'refreshStage' : 'loadStage';\n var tipDom = this.$refs[domName].elm || this.$refs[domName];\n var cbs = createStateCallbacks(type, stageType, this, tipDom);\n var height = tipDom.offsetHeight;\n\n activateFunc.bind(this.scroller)(height, cbs);\n },\n getSlidePosition: function getSlidePosition() {\n return {\n scrollLeft: this.scroller.__scrollLeft,\n scrollTop: this.scroller.__scrollTop\n };\n }\n }\n};\n\n/**\n * These mixes is exclusive for native mode\n */\n\nvar nativeMix = {\n methods: {\n updateNativeModeBarState: function updateNativeModeBarState() {\n var container = this.scrollPanelElm;\n var isPercent = this.vuescroll.state.currentSizeStrategy == 'percent';\n var _vuescroll$state = this.vuescroll.state,\n width = _vuescroll$state.width,\n height = _vuescroll$state.height;\n\n var clientWidth = isPercent || !width ? container.clientWidth : width.slice(0, -2); // xxxpx ==> xxx\n var clientHeight = isPercent || !height ? container.clientHeight : height.slice(0, -2);\n\n var heightPercentage = clientHeight / container.scrollHeight;\n var widthPercentage = clientWidth / container.scrollWidth;\n\n this.bar.vBar.state.posValue = container.scrollTop * 100 / clientHeight;\n this.bar.hBar.state.posValue = container.scrollLeft * 100 / clientWidth;\n\n this.bar.vBar.state.size = heightPercentage < 1 ? heightPercentage : 0;\n this.bar.hBar.state.size = widthPercentage < 1 ? widthPercentage : 0;\n },\n getNativePosition: function getNativePosition() {\n return {\n scrollTop: this.scrollPanelElm.scrollTop,\n scrollLeft: this.scrollPanelElm.scrollLeft\n };\n },\n css: function css(dom, style) /* istanbul ignore next */{\n return window.getComputedStyle(dom)[style];\n },\n checkScrollable: function checkScrollable(e, deltaX, deltaY) /* istanbul ignore next */{\n var scrollable = false;\n\n // check mouse point scrollable.\n var dom = e.target ? e.target : e;\n while (dom && dom.nodeType == 1 && dom !== this.scrollPanelElm.parentNode && !/^BODY|HTML/.test(dom.nodeName)) {\n var ov = this.css(dom, 'overflow') || '';\n if (/scroll|auto/.test(ov)) {\n var _getScrollProcess = this.getScrollProcess(dom),\n v = _getScrollProcess.v,\n h = _getScrollProcess.h;\n\n var isScrollX = this.css(dom, 'overflowX') !== 'hidden';\n var isScrollY = this.css(dom, 'overflowY') !== 'hidden';\n if (isScrollX && (deltaX < 0 && h > 0 || deltaX > 0 && h < 1) || isScrollY && (deltaY < 0 && v > 0 || deltaY > 0 && v < 1)) {\n scrollable = dom == this.scrollPanelElm;\n break;\n }\n }\n dom = dom.parentNode ? dom.parentNode : false;\n }\n\n return scrollable;\n },\n onMouseWheel: function onMouseWheel(event) /* istanbul ignore next */{\n var _mergedOptions$vuescr = this.mergedOptions.vuescroll,\n isReverse = _mergedOptions$vuescr.wheelDirectionReverse,\n duration = _mergedOptions$vuescr.wheelScrollDuration,\n checkShiftKey = _mergedOptions$vuescr.checkShiftKey,\n locking = _mergedOptions$vuescr.locking;\n\n\n var deltaX = void 0;\n var deltaY = void 0;\n if (event.wheelDelta) {\n if (event.deltaY || event.deltaX) {\n deltaX = event.deltaX;\n deltaY = event.deltaY;\n if (locking) {\n if (Math.abs(event.deltaX) > Math.abs(event.deltaY)) {\n deltaY = 0;\n } else {\n deltaX = 0;\n }\n }\n } else {\n deltaX = 0;\n deltaY = -1 * event.wheelDelta / 2;\n }\n } else if (event.detail) {\n deltaY = deltaX = event.detail * 16;\n // horizontal scroll\n if (event.axis == 1) {\n deltaY = 0;\n } else if (event.axis == 2) {\n // vertical scroll\n deltaX = 0;\n }\n }\n\n if (checkShiftKey && event.shiftKey) {\n // swap value\n deltaX ^= deltaY;\n deltaY ^= deltaX;\n deltaX ^= deltaY;\n }\n\n if (isReverse) {\n deltaX ^= deltaY;\n deltaY ^= deltaX;\n deltaX ^= deltaY;\n }\n\n if (this.checkScrollable(event, deltaX, deltaY)) {\n event.stopPropagation();\n event.preventDefault();\n this.scrollBy({ dx: deltaX, dy: deltaY }, duration);\n }\n }\n },\n computed: {\n scrollContentElm: function scrollContentElm() {\n return this.$refs['scrollContent']._isVue ? this.$refs['scrollContent'].$el : this.$refs['scrollContent'];\n }\n }\n};\n\nvar update = [slideMix, nativeMix];\n\nvar mixins = [api$1].concat(toConsumableArray(update));\n\nvar core$1 = {\n mixins: mixins,\n mounted: function mounted() {\n if (!this._isDestroyed && !this.renderError) {\n if (this.mode == 'slide') {\n this.updatedCbs.push(this.updateScroller);\n }\n\n this.$watch('mergedOptions.vuescroll.scroller.disable', {\n sync: true,\n handler: function handler(newVal) {\n if (this.scroller) {\n this.scroller.__disable = newVal;\n }\n }\n });\n }\n },\n\n computed: {\n mode: function mode() {\n return this.mergedOptions.vuescroll.mode;\n }\n },\n methods: {\n destroy: function destroy() {\n if (this.destroyScroller) {\n this.scroller.stop();\n this.destroyScroller();\n this.destroyScroller = null;\n }\n\n /* istanbul ignore next */\n if (this.destroyResize) {\n this.destroyResize();\n }\n },\n handleScroll: function handleScroll(nativeEvent) {\n this.updateBarStateAndEmitEvent('handle-scroll', nativeEvent);\n },\n updateBarStateAndEmitEvent: function updateBarStateAndEmitEvent(eventType) {\n var nativeEvent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n\n if (this.mode == 'native') {\n this.updateNativeModeBarState();\n } else if (this.mode == 'slide') {\n /* istanbul ignore if */\n if (!this.scroller) {\n return;\n }\n\n this.updateSlideModeBarState();\n }\n if (eventType) {\n this.emitEvent(eventType, nativeEvent);\n }\n if (this.mergedOptions.bar.onlyShowBarOnScroll) {\n if (eventType == 'handle-scroll' || eventType == 'handle-resize' || eventType == 'refresh-status' || eventType == 'window-resize' || eventType == 'options-change') {\n this.showAndDefferedHideBar(true /* forceHideBar: true */);\n }\n } else {\n this.showAndDefferedHideBar();\n }\n },\n getScrollProcess: function getScrollProcess() {\n var _scrollPanelElm = this.scrollPanelElm,\n scrollHeight = _scrollPanelElm.scrollHeight,\n scrollWidth = _scrollPanelElm.scrollWidth,\n clientHeight = _scrollPanelElm.clientHeight,\n clientWidth = _scrollPanelElm.clientWidth,\n scrollTop = _scrollPanelElm.scrollTop,\n scrollLeft = _scrollPanelElm.scrollLeft;\n\n\n if (this.mode == 'slide') {\n scrollHeight = this.scroller.__contentHeight;\n scrollWidth = this.scroller.__contentWidth;\n scrollTop = this.scroller.__scrollTop;\n scrollLeft = this.scroller.__scrollLeft;\n clientHeight = this.$el.clientHeight;\n clientWidth = this.$el.clientWidth;\n }\n\n var v = Math.min(scrollTop / (scrollHeight - clientHeight || 1), 1);\n var h = Math.min(scrollLeft / (scrollWidth - clientWidth || 1), 1);\n\n return {\n v: v,\n h: h\n };\n },\n emitEvent: function emitEvent(eventType) {\n var nativeEvent = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : null;\n var _scrollPanelElm2 = this.scrollPanelElm,\n scrollTop = _scrollPanelElm2.scrollTop,\n scrollLeft = _scrollPanelElm2.scrollLeft;\n\n\n var vertical = {\n type: 'vertical'\n };\n var horizontal = {\n type: 'horizontal'\n };\n\n var _getScrollProcess = this.getScrollProcess(),\n v = _getScrollProcess.v,\n h = _getScrollProcess.h;\n\n vertical['process'] = v;\n horizontal['process'] = h;\n\n vertical['barSize'] = this.bar.vBar.state.size;\n horizontal['barSize'] = this.bar.hBar.state.size;\n vertical['scrollTop'] = scrollTop;\n horizontal['scrollLeft'] = scrollLeft;\n\n this.$emit(eventType, vertical, horizontal, nativeEvent);\n },\n initVariables: function initVariables() {\n this.lastMode = this.mode;\n this.$el._isVuescroll = true;\n },\n refreshMode: function refreshMode() {\n var initPos = void 0;\n if (this.scroller) {\n initPos = this.scroller.getValues();\n }\n\n if (this.destroyScroller) {\n this.scroller.stop();\n this.destroyScroller();\n this.destroyScroller = null;\n }\n\n if (this.mode == 'slide') {\n this.destroyScroller = this.registryScroller(initPos);\n } else if (this.mode == 'native') {\n // remove the legacy transform style attribute\n this.scrollPanelElm.style.transform = '';\n this.scrollPanelElm.style.transformOrigin = '';\n }\n },\n refreshInternalStatus: function refreshInternalStatus() {\n // 1.set vuescroll height or width according to\n // sizeStrategy\n this.setVsSize();\n // 2. registry resize event\n this.registryResize();\n // 3. registry scroller if mode is 'slide'\n // or remove 'transform origin' is the mode is not `slide`\n this.refreshMode();\n // 4. update scrollbar's height/width\n this.updateBarStateAndEmitEvent('refresh-status');\n },\n registryResize: function registryResize() {\n var _this = this;\n\n var resizeEnable = this.mergedOptions.vuescroll.detectResize;\n var modeChanged = false;\n\n if (this.lastMode != this.mode) {\n modeChanged = true;\n this.lastMode = this.mode;\n }\n\n /* istanbul ignore next */\n if (this.destroyResize && resizeEnable && !modeChanged) {\n return;\n }\n\n if (this.destroyResize) {\n this.destroyResize();\n }\n\n if (!resizeEnable) {\n return;\n }\n\n var contentElm = null;\n if (this.mode == 'slide') {\n contentElm = this.scrollPanelElm;\n } else if (this.mode == 'native') {\n // scrollContent maybe a vue-component or a pure-dom\n contentElm = this.scrollContentElm;\n }\n\n var vm = this;\n var handleWindowResize = function handleWindowResize() /* istanbul ignore next */{\n vm.updateBarStateAndEmitEvent('window-resize');\n if (vm.mode == 'slide') {\n vm.updatedCbs.push(vm.updateScroller);\n vm.$forceUpdate();\n }\n };\n\n var handleDomResize = function handleDomResize() {\n var currentSize = {};\n if (_this.mode == 'slide') {\n currentSize['width'] = _this.scroller.__contentWidth;\n currentSize['height'] = _this.scroller.__contentHeight;\n _this.updateBarStateAndEmitEvent('handle-resize', currentSize);\n // update scroller should after rendering\n _this.updatedCbs.push(_this.updateScroller);\n _this.$forceUpdate();\n } else if (_this.mode == 'native') {\n currentSize['width'] = _this.scrollPanelElm.scrollWidth;\n currentSize['height'] = _this.scrollPanelElm.scrollHeight;\n _this.updateBarStateAndEmitEvent('handle-resize', currentSize);\n }\n\n // Since content sie changes, we should tell parent to set\n // correct size to fit content's size\n _this.setVsSize();\n };\n window.addEventListener('resize', handleWindowResize, false);\n\n var destroyDomResize = installResizeDetection(contentElm, handleDomResize);\n\n var destroyWindowResize = function destroyWindowResize() {\n window.removeEventListener('resize', handleWindowResize, false);\n };\n\n this.destroyResize = function () {\n destroyWindowResize();\n destroyDomResize();\n\n _this.destroyResize = null;\n };\n },\n getPosition: function getPosition() {\n if (this.mode == 'slide') {\n return this.getSlidePosition();\n } else if (this.mode == 'native') {\n return this.getNativePosition();\n }\n }\n }\n};\n\n/**\n * The slide mode config\n */\nvar config = {\n // vuescroll\n vuescroll: {\n // position or transform\n renderMethod: 'transform',\n // pullRefresh or pushLoad is only for the slide mode...\n pullRefresh: {\n enable: false,\n tips: {\n deactive: 'Pull to Refresh',\n active: 'Release to Refresh',\n start: 'Refreshing...',\n beforeDeactive: 'Refresh Successfully!'\n }\n },\n pushLoad: {\n enable: false,\n tips: {\n deactive: 'Push to Load',\n active: 'Release to Load',\n start: 'Loading...',\n beforeDeactive: 'Load Successfully!'\n },\n auto: false,\n autoLoadDistance: 0\n },\n paging: false,\n zooming: true,\n snapping: {\n enable: false,\n width: 100,\n height: 100\n },\n /* some scroller options */\n scroller: {\n /** Enable bouncing (content can be slowly moved outside and jumps back after releasing) */\n bouncing: {\n top: 100,\n bottom: 100,\n left: 100,\n right: 100\n },\n /** Minimum zoom level */\n minZoom: 0.5,\n /** Maximum zoom level */\n maxZoom: 3,\n /** Multiply or decrease scrolling speed **/\n speedMultiplier: 1,\n /** This configures the amount of change applied to deceleration when reaching boundaries **/\n penetrationDeceleration: 0.03,\n /** This configures the amount of change applied to acceleration when reaching boundaries **/\n penetrationAcceleration: 0.08,\n /** Whether call e.preventDefault event when sliding the content or not */\n preventDefault: false,\n /** Whether call preventDefault when (mouse/touch)move*/\n preventDefaultOnMove: true,\n disable: false\n }\n }\n};\n/**\n * validate the options\n * @export\n * @param {any} ops\n */\nfunction configValidator(ops) {\n var renderError = false;\n var vuescroll = ops.vuescroll;\n\n // validate pushLoad, pullReresh, snapping\n\n if (vuescroll.paging == vuescroll.snapping.enable && vuescroll.paging && (vuescroll.pullRefresh || vuescroll.pushLoad)) {\n error('paging, snapping, (pullRefresh with pushLoad) can only one of them to be true.');\n }\n\n return renderError;\n}\n\nvar config$1 = {\n vuescroll: {\n wheelScrollDuration: 0,\n wheelDirectionReverse: false,\n checkShiftKey: true\n }\n};\n\nvar config$2 = {\n // vuescroll\n vuescroll: {\n mode: 'native'\n }\n};\n/**\n * validate the options\n * @export\n * @param {any} ops\n */\nfunction configValidator$1(ops) {\n var renderError = false;\n var vuescroll = ops.vuescroll;\n\n // validate modes\n\n if (!~modes.indexOf(vuescroll.mode)) {\n error('Unknown mode: ' + vuescroll.mode + ',the vuescroll\\'s option \"mode\" should be one of the ' + modes);\n renderError = true;\n }\n\n return renderError;\n}\n\nvar configs = [config$2, config, config$1];\nvar configValidators = [configValidator$1, configValidator];\n\nvar component = _install(core$1, createPanel$2, configs, configValidators);\n\nfunction install(Vue$$1) {\n var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n Vue$$1.component(opts.name || component.name, component);\n Vue$$1.prototype.$vuescrollConfig = opts.ops || {};\n}\n\nvar Vuescroll = _extends({\n install: install,\n version: '4.17.3',\n refreshAll: refreshAll,\n scrollTo: scrollTo\n}, component);\n\n/* istanbul ignore if */\nif (typeof window !== 'undefined' && window.Vue) {\n window.Vue.use(Vuescroll);\n}\n\nreturn Vuescroll;\n\n})));\n","export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Default.vue?vue&type=style&index=0&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-header-search-button.vue?vue&type=style&index=0&id=7fbb20c8&scoped=true&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-menu-group.vue?vue&type=style&index=0&id=232c8878&scoped=true&lang=css&\"","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-header.vue?vue&type=style&index=0&id=34616ee0&scoped=true&lang=css&\"","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"page\"},[_c('div',{staticClass:\"app-container app-theme-white body-tabs-shadow fixed-header fixed-sidebar app-theme-gray\",class:{'closed-sidebar':!_vm.menuFixed, 'clicked':_vm.menuClicked, 'menu-fixed':_vm.menuFixed, 'sidebar-mobile-open': _vm.openMenuMobile}},[(_vm.pageIsLoaded)?_c('t-app-header',{attrs:{\"user\":_vm.user,\"fast-insert\":_vm.fastInsert},on:{\"pageRefresh\":function($event){return _vm.onPageRefresh()}}}):_vm._e(),(_vm.pageIsLoaded)?_c('div',{staticClass:\"app-main\"},[_c('t-app-menu',{attrs:{\"menu\":_vm.menu},on:{\"pageRefresh\":function($event){return _vm.onPageRefresh()}}}),_c('transition',{attrs:{\"mode\":\"out-in\",\"enter-active-class\":\"animated fadeIn\"}},[(_vm.mounted)?_c('router-view',{ref:\"routerView\"}):_vm._e()],1)],1):_c('div',{staticClass:\"d-flex align-items-center justify-content-center h-100-header\"},[_vm._m(0)])],1),_c('t-app-menu-right'),_c('t-app-blackout')],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"loader-wrapper d-flex justify-content-center align-items-center\"},[_c('div',{staticClass:\"loader\"},[_c('div',{staticClass:\"ball-pulse-sync\"},[_c('div'),_c('div'),_c('div')])])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"app-header header-shadow bg-onlaine-waves\",staticStyle:{\"z-index\":\"13\"}},[_c('div',{staticClass:\"app-header__logo\"},[_c('div',{staticClass:\"header__pane ml-auto\"},[_c('div',[_c('svg',{staticClass:\"hamburg-menu active\",attrs:{\"width\":\"26\",\"height\":\"26\",\"viewBox\":\"0 0 32 42\",\"xmlns\":\"http://www.w3.org/2000/svg\"},on:{\"click\":function($event){return _vm.back()}}},[_c('g',{attrs:{\"transform\":\"matrix(1,0,0,1,-389.5,-264.004)\"}},[_c('g',{attrs:{\"id\":\"arrow_left2\"}},[_c('g',{attrs:{\"transform\":\"matrix(1,0,0,1,0,5)\"}},[_c('path',{attrs:{\"id\":\"hamburg-top\",\"d\":\"M390,270L420,270L420,270C420,270 420.195,250.19 405,265C389.805,279.81 390,279.967 390,279.967\"}})]),_c('g',{attrs:{\"transform\":\"matrix(1,1.22465e-16,1.22465e-16,-1,0.00024296,564.935)\"}},[_c('path',{attrs:{\"id\":\"hamburg-bottom\",\"d\":\"M390,270L420,270L420,270C420,270 420.195,250.19 405,265C389.805,279.81 390,279.967 390,279.967\"}})]),_c('path',{attrs:{\"id\":\"middle\",\"d\":\"M390,284.967L420,284.967\"}})])])])])]),_c('router-link',{staticClass:\"logo-not-fixed\",staticStyle:{\"z-index\":\"1\"},attrs:{\"to\":{name:'dashboard'}}},[_c('div',{staticClass:\"logo-src\",class:{'menu-hover':_vm.menuHover},on:{\"click\":function($event){return _vm.checkLink('dashboard')}}})])],1),_c('div',{staticClass:\"app-header__mobile-menu\"},[_c('div',[_c('button',{staticClass:\"hamburger hamburger--elastic mobile-toggle-nav\",class:{'is-active':_vm.openMenuMobile},attrs:{\"type\":\"button\"},on:{\"click\":function($event){return _vm.toggleMobileMenu()}}},[_vm._m(0)])])]),_c('div',{staticClass:\"app-header__menu\"},[_c('t-app-menu-right-button-mobile',{attrs:{\"user\":_vm.user}})],1),_c('div',{staticClass:\"app-header__content\"},[_c('div',{staticClass:\"app-header-left\"},[(_vm.fastInsert && _vm.fastInsert.length > 0)?_c('ul',{staticClass:\"header-megamenu nav\",on:{\"mouseover\":_vm.showMenu,\"mouseleave\":_vm.hideMenu}},[_c('li',{staticClass:\"nav-item\"},[_vm._m(1),_c('div',{staticClass:\"rm-max-width\"},[_c('div',{staticClass:\"popover fade bs-popover-bottom show\",class:{'display-none':!_vm.menuInsertShow},staticStyle:{\"position\":\"absolute\",\"transform\":\"translate3d(274px, 49px, 0px)\",\"top\":\"-12px\",\"left\":\"-300px\",\"will-change\":\"transform\"},attrs:{\"role\":\"tooltip\",\"id\":\"popover299759\",\"x-placement\":\"bottom\"}},[_c('div',{staticClass:\"arrow\",staticStyle:{\"left\":\"135px\"}}),_c('h3',{staticClass:\"popover-header\"}),_c('div',{staticClass:\"popover-body\"},[_c('div',{staticClass:\"dropdown-mega-menu\",staticStyle:{\"width\":\"15rem\"}},[_c('div',{staticClass:\"grid-menu grid-menu-1col\"},[_c('div',{staticClass:\"no-gutters row\"},[(_vm.columnArch.length > 0)?_c('div',{staticClass:\"col-sm-12 col-xl-12\",staticStyle:{\"border-right-width\":\"0px\"}},[_c('ul',{staticClass:\"nav flex-column\"},[_c('li',{staticClass:\"nav-item-header nav-item\"},[_vm._v(\" Cadastro Rápido \")]),_vm._l((_vm.columnArch),function(item){return _c('li',{key:item.pageId,staticClass:\"nav-item\"},[_c('b-link',{staticClass:\"nav-link\",attrs:{\"to\":{name:item.link}},on:{\"click\":function($event){return _vm.hideMenu()}}},[_c('span',[_vm._v(_vm._s(item.title))])])],1)})],2)]):_vm._e(),(_vm.columnProduction.length > 0)?_c('div',{staticClass:\"col-sm-12 col-xl-12\",staticStyle:{\"border-right-width\":\"0px\"}},[_c('ul',{staticClass:\"nav flex-column\"},[_c('li',{staticClass:\"nav-item-header nav-item\"},[_vm._v(\" Produção \")]),_vm._l((_vm.columnProduction),function(item){return _c('li',{key:item.pageId,staticClass:\"nav-item\"},[_c('b-link',{staticClass:\"nav-link\",attrs:{\"to\":{name:item.link}},on:{\"click\":function($event){return _vm.hideMenu()}}},[_c('span',[_vm._v(_vm._s(item.title))])])],1)})],2)]):_vm._e()])])])])])])])]):_vm._e()]),_c('div',{staticClass:\"app-header-right\"},[_c('t-app-header-search-button'),_c('t-app-notification'),_c('t-app-user',{attrs:{\"user\":_vm.user}}),(false)?_c('t-app-menu-right-button'):_vm._e()],1)])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',{staticClass:\"hamburger-box\"},[_c('span',{staticClass:\"hamburger-inner\"})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('a',{staticClass:\"nav-link\",attrs:{\"data-placement\":\"bottom\",\"rel\":\"popover-focus\",\"data-offset\":\"300\",\"data-toggle\":\"popover-custom\",\"data-original-title\":\"\",\"title\":\"\"}},[_c('i',{staticClass:\"nav-link-icon pe-7s-note\"}),_vm._v(\" Adicionar \"),_c('i',{staticClass:\"fa fa-angle-down ml-2 opacity-5\"})])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"search-wrapper active\",class:{'actived':_vm.actived}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-header-search-button.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-header-search-button.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./t-app-header-search-button.vue?vue&type=template&id=7fbb20c8&scoped=true&\"\nimport script from \"./t-app-header-search-button.vue?vue&type=script&lang=js&\"\nexport * from \"./t-app-header-search-button.vue?vue&type=script&lang=js&\"\nimport style0 from \"./t-app-header-search-button.vue?vue&type=style&index=0&id=7fbb20c8&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"7fbb20c8\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"header-dots\"})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-notification.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-notification.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./t-app-notification.vue?vue&type=template&id=28cd0ee5&scoped=true&\"\nimport script from \"./t-app-notification.vue?vue&type=script&lang=js&\"\nexport * from \"./t-app-notification.vue?vue&type=script&lang=js&\"\nimport style0 from \"./t-app-notification.vue?vue&type=style&index=0&id=28cd0ee5&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"28cd0ee5\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"header-btn-lg pr-0\"},[_c('div',{staticClass:\"widget-content p-0\"},[_c('div',{staticClass:\"widget-content-wrapper\"},[_c('div',{staticClass:\"widget-content-left\"},[_c('a',{staticClass:\"p-0 btn d-flex align-items-center\",on:{\"mouseover\":function($event){_vm.showMenuUser = true},\"mouseleave\":function($event){_vm.showMenuUser = false}}},[_c('div',{staticClass:\"rounded-circle bg-primary\",staticStyle:{\"width\":\"42px\",\"height\":\"42px\",\"margin-top\":\"10px\",\"font-size\":\"20px\",\"color\":\"#FFFFFF\",\"line-height\":\"40px\"}},[_vm._v(\" \"+_vm._s(_vm.user.initials)+\" \")]),_c('i',{staticClass:\"fa fa-angle-down ml-2 opacity-8\"}),_c('t-app-user-submenu',{class:{'display-none':!_vm.showMenuUser},attrs:{\"user\":_vm.user},on:{\"closeSubmenu\":_vm.closeSubmenu}})],1)]),_c('div',{staticClass:\"widget-content-left ml-3 header-user-info\"},[_c('div',{staticClass:\"widget-heading\"},[_vm._v(\" \"+_vm._s(_vm.user.name)+\" \")]),_c('div',{staticClass:\"widget-subheading\"},[_vm._v(\" \"+_vm._s(_vm.user.profile)+\" \")])])])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"rm-pointers dropdown-menu-lg dropdown-menu dropdown-menu-right show cursor-auto\",attrs:{\"tabindex\":\"-1\",\"role\":\"menu\"}},[_c('t-dialog-support'),_c('t-dialog-download-app'),_c('div',{staticClass:\"dropdown-menu-header\"},[_c('div',{staticClass:\"dropdown-menu-header-inner bg-gradient-light\"},[_c('div',{staticClass:\"menu-header-image opacity-2\"}),_c('div',{staticClass:\"menu-header-content text-left\"},[_c('div',{staticClass:\"widget-content p-0\"},[_c('div',{staticClass:\"widget-content-wrapper\"},[_c('div',{staticClass:\"widget-content-left\"},[_c('div',{staticClass:\"widget-heading\"},[_vm._v(_vm._s(_vm.user.name))]),_c('div',{staticClass:\"widget-subheading opacity-8\"},[_vm._v(\" \"+_vm._s(_vm.user.username)),_c('br'),_vm._v(\" \"+_vm._s(_vm.user.profile)+\" \")])])])])])])]),_c('li',{staticClass:\"nav-item-header nav-item\"},[_vm._v(\"Configurações\")]),_c('li',{staticClass:\"nav-item\"},[_c('b-link',{staticClass:\"nav-link\",attrs:{\"to\":{name:'my-report'}},on:{\"click\":_vm.closeSubmenu}},[_c('b-icon-file-earmark-richtext',{staticClass:\"nav-link-icon\"}),_c('span',[_vm._v(\"Meus Relatórios\")])],1)],1),_c('li',{staticClass:\"nav-item\"},[_c('b-link',{staticClass:\"nav-link\",attrs:{\"to\":{name:'my-user-history'}},on:{\"click\":_vm.closeSubmenu}},[_c('b-icon-person',{staticClass:\"nav-link-icon\"}),_c('span',[_vm._v(\"Histórico de Acesso\")])],1)],1),_c('li',{staticClass:\"nav-item\"},[_c('b-link',{staticClass:\"nav-link\",attrs:{\"to\":{name:'my-user-change-password'}},on:{\"click\":_vm.closeSubmenu}},[_c('b-icon-shield-lock',{staticClass:\"nav-link-icon\"}),_c('span',[_vm._v(\"Alterar Senha\")])],1)],1),_vm._m(0),_c('li',{staticClass:\"nav-item\"},[_c('b-link',{staticClass:\"nav-link\",on:{\"click\":_vm.openSupport}},[_c('b-icon-whatsapp',{staticClass:\"nav-link-icon\"}),_c('span',[_vm._v(\"Central de Ajuda\")])],1)],1),_c('li',{staticClass:\"nav-item\"},[_c('b-link',{staticClass:\"nav-link\",on:{\"click\":_vm.openDownloadApp}},[_c('b-icon-download',{staticClass:\"nav-link-icon\"}),_c('span',[_vm._v(\"Download App\")])],1)],1),_vm._m(1),_c('li',{staticClass:\"nav-item\"},[_c('b-link',{staticClass:\"nav-link\",on:{\"click\":_vm.exit}},[_c('b-icon-box-arrow-left',{staticClass:\"nav-link-icon\"}),_vm._v(\" Sair \")],1)],1),(_vm.mobile)?_c('div',[_c('li',{staticClass:\"nav-item-divider nav-item\"}),_c('li',{staticClass:\"nav-item-btn text-center nav-item\"},[_c('button',{staticClass:\"btn-wide btn btn-primary\",on:{\"click\":_vm.closeSubmenu}},[_vm._v(\" Fechar \")])])]):_vm._e()],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ul',{staticClass:\"nav flex-column\"},[_c('li',{staticClass:\"nav-item-divider mb-0 nav-item\"})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('ul',{staticClass:\"nav flex-column\"},[_c('li',{staticClass:\"nav-item-divider mb-0 nav-item\"})])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('b-modal',{attrs:{\"hide-footer\":\"\",\"title\":\"Download App Onlaine\",\"id\":\"modal-download-app\"},on:{\"hide\":function($event){return _vm.onHidden()}}},[_c('div',{staticClass:\"d-flex justify-content-center\"},[_c('a',{attrs:{\"href\":\"https://play.google.com/store/apps/details?id=com.onlaine.app\",\"target\":\"_blank\"},on:{\"click\":function($event){return _vm.closeDialog()}}},[_c('img',{staticClass:\"mr-3 icon-stores\",attrs:{\"src\":\"https://static.onlaine.com.br/images/playstore.png\"}})]),_c('a',{attrs:{\"href\":\"https://apps.apple.com/br/app/onlaine/id6478116349\",\"target\":\"_blank\"},on:{\"click\":function($event){return _vm.closeDialog()}}},[_c('img',{staticClass:\"icon-stores\",attrs:{\"src\":\"https://static.onlaine.com.br/images/applestore.png\"}})])])])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-dialog-download-app.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-dialog-download-app.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./t-dialog-download-app.vue?vue&type=template&id=4d9b6ca4&\"\nimport script from \"./t-dialog-download-app.vue?vue&type=script&lang=js&\"\nexport * from \"./t-dialog-download-app.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\n\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-user-submenu.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-user-submenu.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./t-app-user-submenu.vue?vue&type=template&id=8b704d52&\"\nimport script from \"./t-app-user-submenu.vue?vue&type=script&lang=js&\"\nexport * from \"./t-app-user-submenu.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-user.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-user.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./t-app-user.vue?vue&type=template&id=71c6d879&\"\nimport script from \"./t-app-user.vue?vue&type=script&lang=js&\"\nexport * from \"./t-app-user.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"header-btn-lg\"},[_c('button',{directives:[{name:\"show\",rawName:\"v-show\",value:(!_vm.menuButtonsRight),expression:\"!menuButtonsRight\"}],staticClass:\"hamburger hamburger--elastic open-right-drawer\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.onMenuRightOpen}},[_vm._m(0)])])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',{staticClass:\"hamburger-box\"},[_c('span',{staticClass:\"hamburger-inner\"})])}]\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-menu-right-button.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-menu-right-button.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./t-app-menu-right-button.vue?vue&type=template&id=77a1895e&scoped=true&\"\nimport script from \"./t-app-menu-right-button.vue?vue&type=script&lang=js&\"\nexport * from \"./t-app-menu-right-button.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"77a1895e\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',[_c('button',{staticClass:\"btn-icon btn-icon-only btn btn-primary btn-sm mobile-toggle-header-nav\",attrs:{\"type\":\"button\"},on:{\"click\":function($event){_vm.showMenuUser = true}}},[_vm._m(0)]),_c('div',{staticClass:\"bg-white-transparent fade show h-100 w-full\",class:{'display-none':!_vm.showMenuUser},staticStyle:{\"position\":\"absolute\",\"left\":\"0\",\"top\":\"0\"}},[_c('t-app-user-submenu',{attrs:{\"mobile\":\"\",\"user\":_vm.user},on:{\"closeSubmenu\":_vm.closeSubmenu}})],1)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',{staticClass:\"btn-icon-wrapper\"},[_c('i',{staticClass:\"fa fa-ellipsis-v fa-w-6\"})])}]\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-menu-right-button-mobile.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-menu-right-button-mobile.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./t-app-menu-right-button-mobile.vue?vue&type=template&id=0ca866b8&scoped=true&\"\nimport script from \"./t-app-menu-right-button-mobile.vue?vue&type=script&lang=js&\"\nexport * from \"./t-app-menu-right-button-mobile.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"0ca866b8\",\n null\n \n)\n\nexport default component.exports","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-header.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-header.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./t-app-header.vue?vue&type=template&id=34616ee0&scoped=true&\"\nimport script from \"./t-app-header.vue?vue&type=script&lang=js&\"\nexport * from \"./t-app-header.vue?vue&type=script&lang=js&\"\nimport style0 from \"./t-app-header.vue?vue&type=style&index=0&id=34616ee0&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"34616ee0\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"app-sidebar sidebar-shadow\",staticStyle:{\"background-color\":\"rgb(242, 242, 242)\"},on:{\"mouseover\":_vm.menuHover,\"mouseleave\":_vm.menuLeave}},[_vm._m(0),_vm._m(1),_c('div',{attrs:{\"id\":\"linkMenuFixed\"}},[_c('a',{staticClass:\"text-secondary opacity-6-hover\",on:{\"click\":function($event){return _vm.toggleMenuFixed()}}},[(_vm.getMenuFixed)?_c('b-icon-pin',{directives:[{name:\"b-tooltip\",rawName:\"v-b-tooltip.hover.ds500\",modifiers:{\"hover\":true,\"ds500\":true}}],attrs:{\"title\":\"Desafixar menu\"}}):_c('b-icon-pin-angle',{attrs:{\"title\":\"Fixar menu\"}})],1)]),_c('vuescroll',{ref:\"vs\",attrs:{\"ops\":_vm.ops},on:{\"onSetBarDrag\":_vm.correctClickScroll}},[_c('div',{staticClass:\"app-sidebar__inner\"},[_c('ul',{staticClass:\"vertical-nav-menu\",staticStyle:{\"margin-bottom\":\"20px\"}},_vm._l((_vm.menu),function(item){return _c('t-menu-group',{key:item.pageModuleId,attrs:{\"groupMenu\":item},on:{\"pageRefresh\":function($event){return _vm.onPageRefresh()}}})}),1)])])],1)}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"app-header__logo\"},[_c('div',{staticClass:\"logo-src\"}),_c('div',{staticClass:\"header__pane ml-auto\"},[_c('div',[_c('button',{staticClass:\"hamburger close-sidebar-btn hamburger--elastic\",attrs:{\"type\":\"button\",\"data-class\":\"closed-sidebar\"}},[_c('span',{staticClass:\"hamburger-box\"},[_c('span',{staticClass:\"hamburger-inner\"})])])])])])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"app-header__mobile-menu\"},[_c('div',[_c('button',{staticClass:\"hamburger hamburger--elastic mobile-toggle-nav\",attrs:{\"type\":\"button\"}},[_c('span',{staticClass:\"hamburger-box\"},[_c('span',{staticClass:\"hamburger-inner\"})])])])])}]\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('li',{staticClass:\"container-group-menu\",class:{'active':_vm.groupSelected}},[_c('a',{attrs:{\"href\":\"#\"},on:{\"click\":function($event){return _vm.toggleGroupMenu()}}},[_c('i',{staticClass:\"metismenu-icon\",class:_vm.groupMenu.icon}),_vm._v(\" \"+_vm._s(_vm.groupMenu.name)+\" \"),_c('i',{staticClass:\"metismenu-state-icon pe-7s-angle-down caret-left\"})]),_c('transition',{attrs:{\"name\":\"slide-fade-menu-group\",\"mode\":\"out-in\"}},[(_vm.groupMenu.opened)?_c('ul',{staticClass:\"menu-hidden-on-closed\"},[_vm._l((_vm.groupMenu.main),function(item){return _c('t-menu-group-item',{key:item.pageId,attrs:{\"itemMenu\":item},on:{\"pageRefresh\":_vm.onPageRefresh}})}),_vm._l((_vm.groupMenu.other),function(item){return _c('t-menu-group-item',{key:item.pageId,attrs:{\"itemMenu\":item},on:{\"pageRefresh\":_vm.onPageRefresh}})})],2):_vm._e()])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('li',{staticClass:\"item_menu\"},[_c('router-link',{attrs:{\"tag\":\"li\",\"to\":{name:_vm.itemMenu.name}}},[_c('a',{class:{'mm-active':_vm.isItemMenuActive},attrs:{\"href\":\"#\"},on:{\"click\":function($event){return _vm.checkLink(_vm.itemMenu.name)}}},[_vm._v(\" \"+_vm._s(_vm.itemMenu.menuTitle)+\" \")])])],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-menu-group-item.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-menu-group-item.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./t-app-menu-group-item.vue?vue&type=template&id=c66616e2&scoped=true&\"\nimport script from \"./t-app-menu-group-item.vue?vue&type=script&lang=js&\"\nexport * from \"./t-app-menu-group-item.vue?vue&type=script&lang=js&\"\nimport style0 from \"./t-app-menu-group-item.vue?vue&type=style&index=0&id=c66616e2&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"c66616e2\",\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-menu-group.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-menu-group.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./t-app-menu-group.vue?vue&type=template&id=232c8878&scoped=true&\"\nimport script from \"./t-app-menu-group.vue?vue&type=script&lang=js&\"\nexport * from \"./t-app-menu-group.vue?vue&type=script&lang=js&\"\nimport style0 from \"./t-app-menu-group.vue?vue&type=style&index=0&id=232c8878&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"232c8878\",\n null\n \n)\n\nexport default component.exports","\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-menu.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-menu.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./t-app-menu.vue?vue&type=template&id=09947526&\"\nimport script from \"./t-app-menu.vue?vue&type=script&lang=js&\"\nexport * from \"./t-app-menu.vue?vue&type=script&lang=js&\"\nimport style0 from \"./t-app-menu.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"app-drawer-wrapper\",class:{'is-open':_vm.show}},[_c('div',{staticClass:\"drawer-nav-btn\"},[_c('button',{staticClass:\"hamburger hamburger--elastic is-active\",attrs:{\"type\":\"button\"},on:{\"click\":_vm.onMenuRightClose}},[_vm._m(0)])]),_vm._m(1)])}\nvar staticRenderFns = [function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('span',{staticClass:\"hamburger-box\"},[_c('span',{staticClass:\"hamburger-inner\"})])},function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"drawer-content-wrapper\"},[_c('h3',{staticClass:\"drawer-heading\"},[_vm._v(\"Servers Status\")]),_c('div',{staticClass:\"drawer-section\"},[_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('div',{staticClass:\"progress-box\"},[_c('h4',[_vm._v(\"Server Load 1\")]),_c('div',{staticClass:\"circle-progress circle-progress-gradient-xl mx-auto\"},[_c('small')])])]),_c('div',{staticClass:\"col\"},[_c('div',{staticClass:\"progress-box\"},[_c('h4',[_vm._v(\"Server Load 2\")]),_c('div',{staticClass:\"circle-progress circle-progress-success-xl mx-auto\"},[_c('small')])])]),_c('div',{staticClass:\"col\"},[_c('div',{staticClass:\"progress-box\"},[_c('h4',[_vm._v(\"Server Load 3\")]),_c('div',{staticClass:\"circle-progress circle-progress-danger-xl mx-auto\"},[_c('small')])])])]),_c('div',{staticClass:\"divider\"}),_c('div',{staticClass:\"mt-3\"},[_c('h5',{staticClass:\"text-center card-title\"},[_vm._v(\"Live Statistics\")]),_c('div',{attrs:{\"id\":\"sparkline-carousel-3\"}}),_c('div',{staticClass:\"row\"},[_c('div',{staticClass:\"col\"},[_c('div',{staticClass:\"widget-chart p-0\"},[_c('div',{staticClass:\"widget-chart-content\"},[_c('div',{staticClass:\"widget-numbers text-warning fsize-3\"},[_vm._v(\"43\")]),_c('div',{staticClass:\"widget-subheading pt-1\"},[_vm._v(\"Packages\")])])])]),_c('div',{staticClass:\"col\"},[_c('div',{staticClass:\"widget-chart p-0\"},[_c('div',{staticClass:\"widget-chart-content\"},[_c('div',{staticClass:\"widget-numbers text-danger fsize-3\"},[_vm._v(\"65\")]),_c('div',{staticClass:\"widget-subheading pt-1\"},[_vm._v(\"Dropped\")])])])]),_c('div',{staticClass:\"col\"},[_c('div',{staticClass:\"widget-chart p-0\"},[_c('div',{staticClass:\"widget-chart-content\"},[_c('div',{staticClass:\"widget-numbers text-success fsize-3\"},[_vm._v(\"18\")]),_c('div',{staticClass:\"widget-subheading pt-1\"},[_vm._v(\"Invalid\")])])])])]),_c('div',{staticClass:\"divider\"}),_c('div',{staticClass:\"text-center mt-2 d-block\"},[_c('button',{staticClass:\"mr-2 border-0 btn-transition btn btn-outline-danger\"},[_vm._v(\"Escalate Issue \")]),_c('button',{staticClass:\"border-0 btn-transition btn btn-outline-success\"},[_vm._v(\"Support Center\")])])])]),_c('h3',{staticClass:\"drawer-heading\"},[_vm._v(\"File Transfers\")]),_c('div',{staticClass:\"drawer-section p-0\"},[_c('div',{staticClass:\"files-box\"},[_c('ul',{staticClass:\"list-group list-group-flush\"},[_c('li',{staticClass:\"pt-2 pb-2 pr-2 list-group-item\"},[_c('div',{staticClass:\"widget-content p-0\"},[_c('div',{staticClass:\"widget-content-wrapper\"},[_c('div',{staticClass:\"widget-content-left opacity-6 fsize-2 mr-3 text-primary center-elem\"},[_c('i',{staticClass:\"fa fa-file-alt\"})]),_c('div',{staticClass:\"widget-content-left\"},[_c('div',{staticClass:\"widget-heading font-weight-normal\"},[_vm._v(\"TPSReport.docx\")])]),_c('div',{staticClass:\"widget-content-right widget-content-actions\"},[_c('button',{staticClass:\"btn-icon btn-icon-only btn btn-link btn-sm\"},[_c('i',{staticClass:\"fa fa-cloud-download-alt\"})])])])])]),_c('li',{staticClass:\"pt-2 pb-2 pr-2 list-group-item\"},[_c('div',{staticClass:\"widget-content p-0\"},[_c('div',{staticClass:\"widget-content-wrapper\"},[_c('div',{staticClass:\"widget-content-left opacity-6 fsize-2 mr-3 text-warning center-elem\"},[_c('i',{staticClass:\"fa fa-file-archive\"})]),_c('div',{staticClass:\"widget-content-left\"},[_c('div',{staticClass:\"widget-heading font-weight-normal\"},[_vm._v(\"Latest_photos.zip\")])]),_c('div',{staticClass:\"widget-content-right widget-content-actions\"},[_c('button',{staticClass:\"btn-icon btn-icon-only btn btn-link btn-sm\"},[_c('i',{staticClass:\"fa fa-cloud-download-alt\"})])])])])]),_c('li',{staticClass:\"pt-2 pb-2 pr-2 list-group-item\"},[_c('div',{staticClass:\"widget-content p-0\"},[_c('div',{staticClass:\"widget-content-wrapper\"},[_c('div',{staticClass:\"widget-content-left opacity-6 fsize-2 mr-3 text-danger center-elem\"},[_c('i',{staticClass:\"fa fa-file-pdf\"})]),_c('div',{staticClass:\"widget-content-left\"},[_c('div',{staticClass:\"widget-heading font-weight-normal\"},[_vm._v(\"Annual Revenue.pdf\")])]),_c('div',{staticClass:\"widget-content-right widget-content-actions\"},[_c('button',{staticClass:\"btn-icon btn-icon-only btn btn-link btn-sm\"},[_c('i',{staticClass:\"fa fa-cloud-download-alt\"})])])])])]),_c('li',{staticClass:\"pt-2 pb-2 pr-2 list-group-item\"},[_c('div',{staticClass:\"widget-content p-0\"},[_c('div',{staticClass:\"widget-content-wrapper\"},[_c('div',{staticClass:\"widget-content-left opacity-6 fsize-2 mr-3 text-success center-elem\"},[_c('i',{staticClass:\"fa fa-file-excel\"})]),_c('div',{staticClass:\"widget-content-left\"},[_c('div',{staticClass:\"widget-heading font-weight-normal\"},[_vm._v(\" Analytics_GrowthReport.xls \")])]),_c('div',{staticClass:\"widget-content-right widget-content-actions\"},[_c('button',{staticClass:\"btn-icon btn-icon-only btn btn-link btn-sm\"},[_c('i',{staticClass:\"fa fa-cloud-download-alt\"})])])])])])])])]),_c('h3',{staticClass:\"drawer-heading\"},[_vm._v(\"Tasks in Progress\")]),_c('div',{staticClass:\"drawer-section p-0\"},[_c('div',{staticClass:\"todo-box\"},[_c('ul',{staticClass:\"todo-list-wrapper list-group list-group-flush\"},[_c('li',{staticClass:\"list-group-item\"},[_c('div',{staticClass:\"todo-indicator bg-warning\"}),_c('div',{staticClass:\"widget-content p-0\"},[_c('div',{staticClass:\"widget-content-wrapper\"},[_c('div',{staticClass:\"widget-content-left mr-2\"},[_c('div',{staticClass:\"custom-checkbox custom-control\"},[_c('input',{staticClass:\"custom-control-input\",attrs:{\"type\":\"checkbox\",\"id\":\"exampleCustomCheckbox1266\"}}),_c('label',{staticClass:\"custom-control-label\",attrs:{\"for\":\"exampleCustomCheckbox1266\"}},[_vm._v(\" \")])])]),_c('div',{staticClass:\"widget-content-left\"},[_c('div',{staticClass:\"widget-heading\"},[_vm._v(\"Wash the car \"),_c('div',{staticClass:\"badge badge-danger ml-2\"},[_vm._v(\"Rejected\")])]),_c('div',{staticClass:\"widget-subheading\"},[_c('i',[_vm._v(\"Written by Bob\")])])]),_c('div',{staticClass:\"widget-content-right widget-content-actions\"},[_c('button',{staticClass:\"border-0 btn-transition btn btn-outline-success\"},[_c('i',{staticClass:\"fa fa-check\"})]),_c('button',{staticClass:\"border-0 btn-transition btn btn-outline-danger\"},[_c('i',{staticClass:\"fa fa-trash-alt\"})])])])])]),_c('li',{staticClass:\"list-group-item\"},[_c('div',{staticClass:\"todo-indicator bg-focus\"}),_c('div',{staticClass:\"widget-content p-0\"},[_c('div',{staticClass:\"widget-content-wrapper\"},[_c('div',{staticClass:\"widget-content-left mr-2\"},[_c('div',{staticClass:\"custom-checkbox custom-control\"},[_c('input',{staticClass:\"custom-control-input\",attrs:{\"type\":\"checkbox\",\"id\":\"exampleCustomCheckbox1666\"}}),_c('label',{staticClass:\"custom-control-label\",attrs:{\"for\":\"exampleCustomCheckbox1666\"}},[_vm._v(\" \")])])]),_c('div',{staticClass:\"widget-content-left\"},[_c('div',{staticClass:\"widget-heading\"},[_vm._v(\"Task with hover dropdown menu\")]),_c('div',{staticClass:\"widget-subheading\"},[_c('div',[_vm._v(\"By Johnny \"),_c('div',{staticClass:\"badge badge-pill badge-info ml-2\"},[_vm._v(\"NEW\")])])])]),_c('div',{staticClass:\"widget-content-right widget-content-actions\"},[_c('div',{staticClass:\"d-inline-block dropdown\"},[_c('button',{staticClass:\"border-0 btn-transition btn btn-link\",attrs:{\"type\":\"button\",\"data-toggle\":\"dropdown\",\"aria-haspopup\":\"true\",\"aria-expanded\":\"false\"}},[_c('i',{staticClass:\"fa fa-ellipsis-h\"})]),_c('div',{staticClass:\"dropdown-menu dropdown-menu-right\",attrs:{\"tabindex\":\"-1\",\"role\":\"menu\",\"aria-hidden\":\"true\"}},[_c('h6',{staticClass:\"dropdown-header\",attrs:{\"tabindex\":\"-1\"}},[_vm._v(\" Header\")]),_c('button',{staticClass:\"disabled dropdown-item\",attrs:{\"type\":\"button\",\"disabled\":\"\",\"tabindex\":\"-1\"}},[_vm._v(\"Action \")]),_c('button',{staticClass:\"dropdown-item\",attrs:{\"type\":\"button\",\"tabindex\":\"0\"}},[_vm._v(\"Another Action \")]),_c('div',{staticClass:\"dropdown-divider\",attrs:{\"tabindex\":\"-1\"}}),_c('button',{staticClass:\"dropdown-item\",attrs:{\"type\":\"button\",\"tabindex\":\"0\"}},[_vm._v(\"Another Action \")])])])])])])]),_c('li',{staticClass:\"list-group-item\"},[_c('div',{staticClass:\"todo-indicator bg-primary\"}),_c('div',{staticClass:\"widget-content p-0\"},[_c('div',{staticClass:\"widget-content-wrapper\"},[_c('div',{staticClass:\"widget-content-left mr-2\"},[_c('div',{staticClass:\"custom-checkbox custom-control\"},[_c('input',{staticClass:\"custom-control-input\",attrs:{\"type\":\"checkbox\",\"id\":\"exampleCustomCheckbox4777\"}}),_c('label',{staticClass:\"custom-control-label\",attrs:{\"for\":\"exampleCustomCheckbox4777\"}},[_vm._v(\" \")])])]),_c('div',{staticClass:\"widget-content-left flex2\"},[_c('div',{staticClass:\"widget-heading\"},[_vm._v(\"Badge on the right task\")]),_c('div',{staticClass:\"widget-subheading\"},[_vm._v(\"This task has show on hover actions! \")])]),_c('div',{staticClass:\"widget-content-right widget-content-actions\"},[_c('button',{staticClass:\"border-0 btn-transition btn btn-outline-success\"},[_c('i',{staticClass:\"fa fa-check\"})])]),_c('div',{staticClass:\"widget-content-right ml-3\"},[_c('div',{staticClass:\"badge badge-pill badge-success\"},[_vm._v(\"Latest Task\")])])])])]),_c('li',{staticClass:\"list-group-item\"},[_c('div',{staticClass:\"todo-indicator bg-info\"}),_c('div',{staticClass:\"widget-content p-0\"},[_c('div',{staticClass:\"widget-content-wrapper\"},[_c('div',{staticClass:\"widget-content-left mr-2\"},[_c('div',{staticClass:\"custom-checkbox custom-control\"},[_c('input',{staticClass:\"custom-control-input\",attrs:{\"type\":\"checkbox\",\"id\":\"exampleCustomCheckbox2444\"}}),_c('label',{staticClass:\"custom-control-label\",attrs:{\"for\":\"exampleCustomCheckbox2444\"}},[_vm._v(\" \")])])]),_c('div',{staticClass:\"widget-content-left mr-3\"},[_c('div',{staticClass:\"widget-content-left\"})]),_c('div',{staticClass:\"widget-content-left\"},[_c('div',{staticClass:\"widget-heading\"},[_vm._v(\"Go grocery shopping\")]),_c('div',{staticClass:\"widget-subheading\"},[_vm._v(\"A short description ...\")])]),_c('div',{staticClass:\"widget-content-right widget-content-actions\"},[_c('button',{staticClass:\"border-0 btn-transition btn btn-sm btn-outline-success\"},[_c('i',{staticClass:\"fa fa-check\"})]),_c('button',{staticClass:\"border-0 btn-transition btn btn-sm btn-outline-danger\"},[_c('i',{staticClass:\"fa fa-trash-alt\"})])])])])]),_c('li',{staticClass:\"list-group-item\"},[_c('div',{staticClass:\"todo-indicator bg-success\"}),_c('div',{staticClass:\"widget-content p-0\"},[_c('div',{staticClass:\"widget-content-wrapper\"},[_c('div',{staticClass:\"widget-content-left mr-2\"},[_c('div',{staticClass:\"custom-checkbox custom-control\"},[_c('input',{staticClass:\"custom-control-input\",attrs:{\"type\":\"checkbox\",\"id\":\"exampleCustomCheckbox3222\"}}),_c('label',{staticClass:\"custom-control-label\",attrs:{\"for\":\"exampleCustomCheckbox3222\"}},[_vm._v(\" \")])])]),_c('div',{staticClass:\"widget-content-left flex2\"},[_c('div',{staticClass:\"widget-heading\"},[_vm._v(\"Development Task\")]),_c('div',{staticClass:\"widget-subheading\"},[_vm._v(\"Finish React ToDo List App\")])]),_c('div',{staticClass:\"widget-content-right\"},[_c('div',{staticClass:\"badge badge-warning mr-2\"},[_vm._v(\"69\")])]),_c('div',{staticClass:\"widget-content-right\"},[_c('button',{staticClass:\"border-0 btn-transition btn btn-outline-success\"},[_c('i',{staticClass:\"fa fa-check\"})]),_c('button',{staticClass:\"border-0 btn-transition btn btn-outline-danger\"},[_c('i',{staticClass:\"fa fa-trash-alt\"})])])])])])])])]),_c('h3',{staticClass:\"drawer-heading\"},[_vm._v(\"Urgent Notifications\")]),_c('div',{staticClass:\"drawer-section\"},[_c('div',{staticClass:\"notifications-box\"})])])}]\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-menu-right.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-menu-right.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./t-app-menu-right.vue?vue&type=template&id=2136acf7&scoped=true&\"\nimport script from \"./t-app-menu-right.vue?vue&type=script&lang=js&\"\nexport * from \"./t-app-menu-right.vue?vue&type=script&lang=js&\"\nimport style0 from \"./t-app-menu-right.vue?vue&type=style&index=0&id=2136acf7&scoped=true&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"2136acf7\",\n null\n \n)\n\nexport default component.exports","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('div',{staticClass:\"app-drawer-overlay animated fadeIn\",class:{'d-none':!_vm.show}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n\r\n\r\n\r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-blackout.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-blackout.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./t-app-blackout.vue?vue&type=template&id=67253c5a&scoped=true&\"\nimport script from \"./t-app-blackout.vue?vue&type=script&lang=js&\"\nexport * from \"./t-app-blackout.vue?vue&type=script&lang=js&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n \"67253c5a\",\n null\n \n)\n\nexport default component.exports","\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Default.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Default.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Default.vue?vue&type=template&id=c7f44d28&\"\nimport script from \"./Default.vue?vue&type=script&lang=js&\"\nexport * from \"./Default.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Default.vue?vue&type=style&index=0&lang=css&\"\n\n\n/* normalize component */\nimport normalizer from \"!../../node_modules/vue-loader/lib/runtime/componentNormalizer.js\"\nvar component = normalizer(\n script,\n render,\n staticRenderFns,\n false,\n null,\n null,\n null\n \n)\n\nexport default component.exports","export * from \"-!../../../../node_modules/mini-css-extract-plugin/dist/loader.js??ref--6-oneOf-1-0!../../../../node_modules/@vue/cli-service/node_modules/css-loader/dist/cjs.js??ref--6-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--6-oneOf-1-2!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./t-app-menu-right.vue?vue&type=style&index=0&id=2136acf7&scoped=true&lang=css&\""],"sourceRoot":""}