. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
| Server IP : 85.13.141.101 / Your IP :
216.73.216.224 [
Web Server : Apache System : Linux dd40236 6.8.0-134-generic #134-Ubuntu SMP PREEMPT_DYNAMIC Fri Jun 26 18:43:11 UTC 2026 x86_64 User : w00ad34b ( 1052) PHP Version : 8.2.30-nmm1 Disable Function : NONE Domains : 429 Domains MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : OFF Directory : /www/htdocs/w00ad34b/spd-cloud/apps/viewer/js/ |
Upload File : |
{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./node_modules/vue/dist/vue.runtime.esm.js","webpack:///./node_modules/axios/lib/utils.js","webpack:///./node_modules/nextcloud-server/dist/router.js","webpack:///./node_modules/css-loader/dist/runtime/api.js","webpack:///./node_modules/vue-style-loader/lib/listToStyles.js","webpack:///./node_modules/vue-style-loader/lib/addStylesClient.js","webpack:///./src/components/Error.vue?a096","webpack:///./src/views/Viewer.vue?459d","webpack:///./src/components/Images.vue?9d85","webpack:///./src/components/Videos.vue?a7e2","webpack:///./node_modules/axios/index.js","webpack:///./node_modules/axios/lib/defaults.js","webpack:///(webpack)/buildin/global.js","webpack:///./node_modules/axios/lib/helpers/bind.js","webpack:///./node_modules/process/browser.js","webpack:///./node_modules/axios/lib/adapters/xhr.js","webpack:///./node_modules/axios/lib/core/createError.js","webpack:///./node_modules/axios/lib/cancel/isCancel.js","webpack:///./node_modules/axios/lib/cancel/Cancel.js","webpack:///./node_modules/nextcloud-vue/dist/Mixins/isMobile.js","webpack:///./node_modules/nextcloud-vue/dist/Mixins/isFullscreen.js","webpack:///./node_modules/nextcloud-vue/dist/Components/Modal.js","webpack:///./node_modules/nextcloud-vue/dist/Components/ActionButton.js","webpack:///./node_modules/debounce/index.js","webpack:///./src/components/Error.vue?9644","webpack:///./src/components/Error.vue?72e9","webpack:///./node_modules/axios/lib/axios.js","webpack:///./node_modules/axios/node_modules/is-buffer/index.js","webpack:///./node_modules/axios/lib/core/Axios.js","webpack:///./node_modules/axios/lib/helpers/normalizeHeaderName.js","webpack:///./node_modules/axios/lib/core/settle.js","webpack:///./node_modules/axios/lib/core/enhanceError.js","webpack:///./node_modules/axios/lib/helpers/buildURL.js","webpack:///./node_modules/axios/lib/helpers/parseHeaders.js","webpack:///./node_modules/axios/lib/helpers/isURLSameOrigin.js","webpack:///./node_modules/axios/lib/helpers/cookies.js","webpack:///./node_modules/axios/lib/core/InterceptorManager.js","webpack:///./node_modules/axios/lib/core/dispatchRequest.js","webpack:///./node_modules/axios/lib/core/transformData.js","webpack:///./node_modules/axios/lib/helpers/isAbsoluteURL.js","webpack:///./node_modules/axios/lib/helpers/combineURLs.js","webpack:///./node_modules/axios/lib/cancel/CancelToken.js","webpack:///./node_modules/axios/lib/helpers/spread.js","webpack:///./node_modules/timers-browserify/main.js","webpack:///./node_modules/setimmediate/setImmediate.js","webpack:///./src/views/Viewer.vue?7df4","webpack:///./src/views/Viewer.vue?c50c","webpack:///./node_modules/css-loader/dist/runtime/getUrl.js","webpack:///./src/assets/menu-sidebar-white.svg","webpack:///./src/components/Images.vue?8826","webpack:///./src/components/Images.vue?5934","webpack:///./src/components/Videos.vue?f411","webpack:///./src/components/Videos.vue?a11d","webpack:///./src/components/Error.vue?a6ee","webpack:///src/components/Error.vue","webpack:///./node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack:///./src/components/Error.vue","webpack:///./src/components/Error.vue?ef85","webpack:///./src/mixins/PreviewUrl.js","webpack:///./src/models/file.js","webpack:///./src/services/FileList.js","webpack:///src/views/Viewer.vue","webpack:///./src/views/Viewer.vue?676f","webpack:///./src/views/Viewer.vue","webpack:///./src/views/Viewer.vue?cea2","webpack:///./node_modules/vue-async-computed/dist/vue-async-computed.esm.js","webpack:///./src/mixins/Mime.js","webpack:///src/components/Images.vue","webpack:///./src/components/Images.vue?be5f","webpack:///./src/models/images.js","webpack:///./src/components/Images.vue","webpack:///./src/components/Images.vue?c06c","webpack:///src/components/Videos.vue","webpack:///./src/components/Videos.vue?9b1a","webpack:///./src/models/videos.js","webpack:///./src/components/Videos.vue","webpack:///./src/components/Videos.vue?4324","webpack:///./src/services/Viewer.js","webpack:///./src/main.js"],"names":["installedModules","__webpack_require__","moduleId","exports","module","i","l","modules","call","m","c","d","name","getter","o","Object","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","prototype","hasOwnProperty","p","s","__webpack_exports__","global","setImmediate","emptyObject","freeze","isUndef","v","isDef","isTrue","isPrimitive","isObject","obj","_toString","toString","isPlainObject","isRegExp","isValidArrayIndex","val","parseFloat","String","Math","floor","isFinite","isPromise","then","catch","Array","isArray","JSON","stringify","toNumber","isNaN","makeMap","str","expectsLowerCase","map","list","split","length","toLowerCase","isReservedAttribute","remove","arr","item","index","indexOf","splice","hasOwn","cached","fn","cache","camelizeRE","camelize","replace","_","toUpperCase","capitalize","charAt","slice","hyphenateRE","hyphenate","Function","ctx","boundFn","a","arguments","apply","_length","toArray","start","ret","extend","to","_from","toObject","res","noop","b","no","identity","looseEqual","isObjectA","isObjectB","isArrayA","isArrayB","every","e","Date","getTime","keysA","keys","keysB","looseIndexOf","once","called","this","SSR_ATTR","ASSET_TYPES","LIFECYCLE_HOOKS","config","optionMergeStrategies","silent","productionTip","devtools","performance","errorHandler","warnHandler","ignoredElements","keyCodes","isReservedTag","isReservedAttr","isUnknownElement","getTagNamespace","parsePlatformTagName","mustUseProp","async","_lifecycleHooks","unicodeRegExp","def","writable","configurable","bailRE","RegExp","_isServer","hasProto","inBrowser","window","inWeex","WXEnvironment","platform","weexPlatform","UA","navigator","userAgent","isIE","test","isIE9","isEdge","isIOS","isFF","match","nativeWatch","watch","supportsPassive","opts","addEventListener","isServerRendering","undefined","env","VUE_ENV","__VUE_DEVTOOLS_GLOBAL_HOOK__","isNative","Ctor","_Set","hasSymbol","Reflect","ownKeys","Set","set","has","add","clear","warn","uid","Dep","id","subs","addSub","sub","push","removeSub","depend","target","addDep","notify","update","targetStack","pushTarget","popTarget","pop","VNode","tag","data","children","text","elm","context","componentOptions","asyncFactory","fnContext","fnOptions","fnScopeId","componentInstance","parent","raw","isStatic","isRootInsert","isComment","isCloned","isOnce","asyncMeta","isAsyncPlaceholder","prototypeAccessors","child","defineProperties","createEmptyVNode","node","createTextVNode","cloneVNode","vnode","cloned","arrayProto","arrayMethods","forEach","method","original","args","len","inserted","result","ob","__ob__","observeArray","dep","arrayKeys","getOwnPropertyNames","shouldObserve","toggleObserving","Observer","vmCount","src","__proto__","protoAugment","copyAugment","walk","observe","asRootData","isExtensible","_isVue","defineReactive$$1","customSetter","shallow","getOwnPropertyDescriptor","setter","childOb","dependArray","newVal","max","del","items","strats","mergeData","from","toVal","fromVal","mergeDataOrFn","parentVal","childVal","vm","instanceData","defaultData","mergeHook","concat","hooks","dedupeHooks","mergeAssets","hook","type","key$1","props","methods","inject","computed","provide","defaultStrat","mergeOptions","options","normalizeProps","normalized","normalizeInject","dirs","directives","def$$1","normalizeDirectives","_base","extends","mixins","mergeField","strat","resolveAsset","warnMissing","assets","camelizedId","PascalCaseId","validateProp","propOptions","propsData","prop","absent","booleanIndex","getTypeIndex","Boolean","stringIndex","default","$options","_props","getType","getPropDefaultValue","prevShouldObserve","isSameType","expectedTypes","handleError","err","info","cur","$parent","errorCaptured","globalHandleError","invokeWithErrorHandling","handler","_handled","logError","console","error","timerFunc","isUsingMicroTask","callbacks","pending","flushCallbacks","copies","Promise","resolve","setTimeout","MutationObserver","counter","observer","textNode","document","createTextNode","characterData","nextTick","cb","_resolve","seenObjects","traverse","_traverse","seen","isA","isFrozen","depId","normalizeEvent","passive","once$$1","capture","createFnInvoker","fns","invoker","arguments$1","updateListeners","on","oldOn","remove$$1","createOnceHandler","old","event","params","mergeVNodeHook","hookKey","oldHook","wrappedHook","merged","checkProp","hash","altKey","preserve","normalizeChildren","normalizeArrayChildren","nestedIndex","lastIndex","last","isTextNode","shift","_isVList","resolveInject","provideKey","source","_provided","provideDefault","resolveSlots","slots","attrs","slot","name$1","isWhitespace","normalizeScopedSlots","normalSlots","prevSlots","hasNormalSlots","isStable","$stable","$key","_normalized","$hasNormal","normalizeScopedSlot","key$2","proxyNormalSlot","proxy","renderList","render","iterator","next","done","renderSlot","fallback","bindObject","nodes","scopedSlotFn","$scopedSlots","$slots","$createElement","resolveFilter","isKeyNotMatch","expect","actual","checkKeyCodes","eventKeyCode","builtInKeyCode","eventKeyName","builtInKeyName","mappedKeyCode","bindObjectProps","asProp","isSync","loop","domProps","camelizedKey","hyphenatedKey","$event","renderStatic","isInFor","_staticTrees","tree","markStatic","staticRenderFns","_renderProxy","markOnce","markStaticNode","bindObjectListeners","existing","ours","resolveScopedSlots","hasDynamicKeys","contentHashKey","bindDynamicKeys","baseObj","values","prependModifier","symbol","installRenderHelpers","_o","_n","_s","_l","_t","_q","_i","_m","_f","_k","_b","_v","_e","_u","_g","_d","_p","FunctionalRenderContext","contextVm","this$1","_original","isCompiled","_compiled","needNormalization","listeners","injections","scopedSlots","_scopeId","_c","createElement","cloneAndMarkFunctionalResult","renderContext","clone","mergeProps","componentVNodeHooks","init","hydrating","_isDestroyed","keepAlive","mountedNode","prepatch","_isComponent","_parentVnode","inlineTemplate","createComponentInstanceForVnode","activeInstance","$mount","oldVnode","parentVnode","renderChildren","newScopedSlots","oldScopedSlots","hasDynamicScopedSlot","needsForceUpdate","_renderChildren","$vnode","_vnode","$attrs","$listeners","propKeys","_propKeys","oldListeners","_parentListeners","updateComponentListeners","$forceUpdate","updateChildComponent","insert","_isMounted","callHook","_inactive","activatedChildren","activateChildComponent","destroy","deactivateChildComponent","direct","_directInactive","isInInactiveTree","$children","$destroy","hooksToMerge","createComponent","baseCtor","cid","factory","errorComp","resolved","owner","currentRenderingInstance","owners","loading","loadingComp","sync","timerLoading","timerTimeout","$on","forceRender","renderCompleted","clearTimeout","ensureCtor","reject","reason","component","delay","timeout","resolveAsyncComponent","createAsyncPlaceholder","resolveConstructorOptions","model","callback","transformModel","extractPropsFromVNodeData","functional","vnodes","createFunctionalComponent","nativeOn","abstract","toMerge","_merged","mergeHook$1","installComponentHooks","f1","f2","SIMPLE_NORMALIZE","ALWAYS_NORMALIZE","normalizationType","alwaysNormalize","is","simpleNormalizeChildren","pre","applyNS","force","style","class","registerDeepBindings","_createElement","comp","base","getFirstComponentChild","remove$1","$off","_target","onceHandler","setActiveInstance","prevActiveInstance","handlers","j","_hasHookEvent","$emit","queue","waiting","flushing","currentFlushTimestamp","getNow","now","createEvent","timeStamp","flushSchedulerQueue","watcher","sort","before","run","activatedQueue","updatedQueue","callActivatedHooks","_watcher","callUpdatedHooks","emit","uid$2","Watcher","expOrFn","isRenderWatcher","_watchers","deep","user","lazy","active","dirty","deps","newDeps","depIds","newDepIds","expression","path","segments","parsePath","cleanupDeps","tmp","queueWatcher","oldValue","evaluate","teardown","_isBeingDestroyed","sharedPropertyDefinition","sourceKey","initState","propsOptions","initProps","initMethods","_data","getData","charCodeAt","initData","watchers","_computedWatchers","isSSR","userDef","computedWatcherOptions","defineComputed","initComputed","createWatcher","initWatch","shouldCache","createComputedGetter","createGetterInvoker","$watch","uid$3","super","superOptions","modifiedOptions","modified","latest","sealed","sealedOptions","resolveModifiedOptions","extendOptions","components","Vue","_init","initExtend","Super","SuperId","cachedCtors","_Ctor","Sub","constructor","Comp","initProps$1","initComputed$1","mixin","use","getComponentName","matches","pattern","pruneCache","keepAliveInstance","filter","cachedNode","pruneCacheEntry","current","cached$$1","_uid","vnodeComponentOptions","_componentTag","initInternalComponent","_self","$root","$refs","initLifecycle","_events","initEvents","parentData","initRender","initInjections","initProvide","el","initMixin","dataDef","propsDef","$set","$delete","immediate","stateMixin","hookRE","$once","i$1","cbs","eventsMixin","_update","prevEl","$el","prevVnode","restoreActiveInstance","__patch__","__vue__","lifecycleMixin","$nextTick","_render","ref","renderMixin","patternTypes","builtInComponents","KeepAlive","include","exclude","Number","created","destroyed","mounted","parseInt","configDef","util","defineReactive","delete","observable","plugin","installedPlugins","_installedPlugins","unshift","install","initUse","initMixin$1","definition","initAssetRegisters","initGlobalAPI","ssrContext","version","acceptValue","isEnumeratedAttr","isValidContentEditableValue","convertEnumeratedValue","isFalsyAttrValue","isBooleanAttr","xlinkNS","isXlink","getXlinkProp","genClassForVnode","parentNode","childNode","mergeClassData","staticClass","dynamicClass","stringifyClass","renderClass","stringified","stringifyArray","stringifyObject","namespaceMap","svg","math","isHTMLTag","isSVG","unknownElementCache","isTextInputType","nodeOps","tagName","multiple","setAttribute","createElementNS","namespace","createComment","insertBefore","newNode","referenceNode","removeChild","appendChild","nextSibling","setTextContent","textContent","setStyleScope","scopeId","registerRef","isRemoval","refs","refInFor","emptyNode","sameVnode","typeA","typeB","sameInputType","createKeyToOldIdx","beginIdx","endIdx","updateDirectives","oldDir","dir","isCreate","isDestroy","oldDirs","normalizeDirectives$1","newDirs","dirsWithInsert","dirsWithPostpatch","oldArg","arg","callHook$1","componentUpdated","callInsert","emptyModifiers","modifiers","getRawDirName","rawName","join","baseModules","updateAttrs","inheritAttrs","oldAttrs","setAttr","removeAttributeNS","removeAttribute","baseSetAttr","setAttributeNS","__ieph","blocker","stopImmediatePropagation","removeEventListener","updateClass","oldData","cls","transitionClass","_transitionClasses","_prevClass","target$1","klass","RANGE_TOKEN","CHECKBOX_RADIO_TOKEN","createOnceHandler$1","remove$2","useMicrotaskFix","add$1","attachedTimestamp","_wrapper","currentTarget","ownerDocument","updateDOMListeners","change","normalizeEvents","svgContainer","events","updateDOMProps","oldProps","childNodes","_value","strCur","shouldUpdateValue","innerHTML","firstChild","checkVal","composing","notInFocus","activeElement","isNotInFocusAndDirty","_vModifiers","number","trim","isDirtyWithModifiers","parseStyleText","cssText","propertyDelimiter","normalizeStyleData","normalizeStyleBinding","staticStyle","bindingStyle","emptyStyle","cssVarRE","importantRE","setProp","setProperty","normalizedName","normalize","vendorNames","capName","updateStyle","oldStaticStyle","oldStyleBinding","normalizedStyle","oldStyle","newStyle","checkChild","styleData","getStyle","whitespaceRE","addClass","classList","getAttribute","removeClass","tar","resolveTransition","css","autoCssTransition","enterClass","enterToClass","enterActiveClass","leaveClass","leaveToClass","leaveActiveClass","hasTransition","TRANSITION","ANIMATION","transitionProp","transitionEndEvent","animationProp","animationEndEvent","ontransitionend","onwebkittransitionend","onanimationend","onwebkitanimationend","raf","requestAnimationFrame","nextFrame","addTransitionClass","transitionClasses","removeTransitionClass","whenTransitionEnds","expectedType","getTransitionInfo","propCount","ended","end","onEnd","transformRE","styles","getComputedStyle","transitionDelays","transitionDurations","transitionTimeout","getTimeout","animationDelays","animationDurations","animationTimeout","hasTransform","delays","durations","toMs","enter","toggleDisplay","_leaveCb","cancelled","transition","_enterCb","nodeType","appearClass","appearToClass","appearActiveClass","beforeEnter","afterEnter","enterCancelled","beforeAppear","appear","afterAppear","appearCancelled","duration","transitionNode","isAppear","startClass","activeClass","toClass","beforeEnterHook","enterHook","afterEnterHook","enterCancelledHook","explicitEnterDuration","expectsCSS","userWantsControl","getHookArgumentsLength","show","pendingNode","_pending","isValidDuration","leave","rm","beforeLeave","afterLeave","leaveCancelled","delayLeave","explicitLeaveDuration","performLeave","invokerFns","_enter","patch","backend","removeNode","createElm","insertedVnodeQueue","parentElm","refElm","nested","ownerArray","isReactivated","initComponent","innerNode","activate","reactivateComponent","setScope","createChildren","invokeCreateHooks","pendingInsert","isPatchable","ref$$1","ancestor","addVnodes","startIdx","invokeDestroyHook","removeVnodes","ch","removeAndInvokeRemoveHook","childElm","createRmCb","findIdxInOld","oldCh","patchVnode","removeOnly","hydrate","newCh","oldKeyToIdx","idxInOld","vnodeToMove","oldStartIdx","newStartIdx","oldEndIdx","oldStartVnode","oldEndVnode","newEndIdx","newStartVnode","newEndVnode","canMove","updateChildren","postpatch","invokeInsertHook","initial","isRenderedModule","inVPre","hasChildNodes","childrenMatch","fullInvoke","isInitialPatch","isRealElement","hasAttribute","oldElm","patchable","i$2","createPatchFunction","vmodel","trigger","directive","binding","_vOptions","setSelected","getValue","onCompositionStart","onCompositionEnd","prevOptions","curOptions","some","hasNoMatchingOption","actuallySetSelected","isMultiple","selected","option","selectedIndex","initEvent","dispatchEvent","locateNode","platformDirectives","transition$$1","originalDisplay","__vOriginalDisplay","display","unbind","transitionProps","getRealChild","compOptions","extractTransitionData","placeholder","h","rawChild","isNotTextNode","isVShowDirective","Transition","hasParentTransition","_leaving","oldRawChild","oldChild","isSameChild","delayedLeave","moveClass","callPendingCbs","_moveCb","recordPosition","newPos","getBoundingClientRect","applyTranslation","oldPos","pos","dx","left","dy","top","moved","transform","WebkitTransform","transitionDuration","platformComponents","TransitionGroup","beforeMount","kept","prevChildren","rawChildren","transitionData","removed","c$1","updated","hasMove","_reflow","body","offsetHeight","propertyName","_hasMove","cloneNode","attr","HTMLUnknownElement","HTMLElement","updateComponent","mountComponent","querySelector","query","isBuffer","isFunction","isArrayBuffer","isFormData","FormData","isArrayBufferView","ArrayBuffer","isView","buffer","isString","isNumber","isUndefined","isDate","isFile","isBlob","isStream","pipe","isURLSearchParams","URLSearchParams","isStandardBrowserEnv","product","merge","assignValue","thisArg","getRootUrl","OC","getRootPath","generateUrl","url","generateFilePath","app","file","filePath","generateRemoteUrl","service","linkToRemote","generateOcsUrl","linkToOCS","useSourceMap","content","cssMapping","btoa","sourceMapping","sourceMap","base64","unescape","encodeURIComponent","sourceURLs","sources","sourceRoot","cssWithMappingToString","mediaQuery","alreadyImportedModules","listToStyles","parentId","newStyles","part","media","parts","addStylesClient","hasDocument","DEBUG","Error","stylesInDom","head","getElementsByTagName","singletonElement","singletonCounter","isProduction","ssrIdKey","isOldIE","_isProduction","_options","addStylesToDom","newList","mayRemove","domStyle","addStyle","createStyleElement","styleElement","styleIndex","applyToSingletonTag","ssrId","styleSheet","newObj","textStore","replaceText","replacement","cssNode","locals","process","utils","normalizeHeaderName","DEFAULT_CONTENT_TYPE","Content-Type","setContentTypeIfUnset","headers","adapter","defaults","XMLHttpRequest","transformRequest","transformResponse","parse","xsrfCookieName","xsrfHeaderName","maxContentLength","validateStatus","status","common","Accept","g","cachedSetTimeout","cachedClearTimeout","defaultSetTimout","defaultClearTimeout","runTimeout","fun","currentQueue","draining","queueIndex","cleanUpNextTick","drainQueue","marker","runClearTimeout","Item","array","title","browser","argv","versions","addListener","off","removeListener","removeAllListeners","prependListener","prependOnceListener","cwd","chdir","umask","settle","buildURL","parseHeaders","isURLSameOrigin","createError","requestData","requestHeaders","request","auth","username","password","Authorization","open","paramsSerializer","onreadystatechange","readyState","responseURL","responseHeaders","getAllResponseHeaders","response","responseType","responseText","statusText","onerror","ontimeout","cookies","xsrfValue","withCredentials","read","setRequestHeader","onDownloadProgress","onUploadProgress","upload","cancelToken","promise","cancel","abort","send","enhanceError","message","code","__CANCEL__","Cancel","123","isMobile","_isMobile","_onResize","beforeDestroy","documentElement","clientWidth","122","isFullscreen","_isFullscreen","outerHeight","screen","height","0","A","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","shadowRoot","_injectStyles","u","beforeCreate","1","10","11","12","125","pause","getTimeLeft","getStateRunning","Actions","ActionButton","tooltip","hasPrevious","hasNext","outTransition","enableSlideshow","clearViewDelay","slideshowDelay","slideshowPaused","enableSwipe","spreadNavigation","size","validator","canClose","mc","showModal","clearView","clearViewTimeout","playing","slideshowTimeout","modalTransitionName","playPauseTitle","handleKeydown","handleMouseMove","mask","handleSwipe","lastChild","unmounted","previous","resetSlideshow","close","keyCode","togglePlayPause","handleSlideshow","clearSlideshowTimeout","f","click","mousemove","touchmove","invisible","auto","play-pause--paused","width","stroke","stroke-width","fill","cx","cy","icon","13","$isServer","composedPath","contains","popupItem","__vueClickOutside__","14","required","isIconUrl","URL","onClick","15","16","defaultView","nodeName","host","overflow","overflowX","overflowY","MSInputMethodContext","documentMode","offsetParent","nextElementSibling","compareDocumentPosition","Node","DOCUMENT_POSITION_FOLLOWING","createRange","setStart","setEnd","commonAncestorContainer","firstElementChild","scrollingElement","y","w","TypeError","T","E","x","assign","C","right","bottom","clientHeight","offsetWidth","I","borderTopWidth","borderLeftWidth","marginTop","marginLeft","B","parentElement","M","innerWidth","innerHeight","N","area","O","k","marginBottom","marginRight","S","D","L","find","Q","findIndex","function","enabled","offsets","popper","reference","G","P","H","F","U","z","order","$","W","Z","reverse","V","J","placement","positionFixed","eventsEnabled","removeOnDestroy","onCreate","onUpdate","offset","search","reduce","X","preventOverflow","boundariesElement","instance","padding","boundaries","priority","primary","escapeWithReference","secondary","min","keepTogether","arrow","element","arrowElement","round","flip","flipped","originalPlacement","behavior","flipVariations","flipVariationsByContent","inner","hide","attributes","computeStyle","gpuAcceleration","position","devicePixelRatio","willChange","x-placement","arrowStyles","applyStyle","onLoad","q","scheduleUpdate","Defaults","state","isDestroyed","isCreated","scrollParents","jquery","enableEventListeners","disableEventListeners","updateBound","scrollElement","R","cancelAnimationFrame","Utils","PopperUtils","placements","17","random","substr","172","173","2","21","tabindex","compareAndNotify","_w","_h","addResizeHandlers","_resizeObject","contentDocument","removeResizeHandlers","onload","substring","22","23","25","26","3","30","ClickOutside","menuAlign","actions","opened","focusIndex","randomId","offsetX","isValidSingleAction","firstAction","firstActionElement","href","exact","firstActionEvent","onOpen","initActions","beforeUpdate","toggleMenu","focusFirstAction","closeMenu","any","all","offsetY","menu","onMouseFocusAction","closest","querySelectorAll","focusAction","removeCurrentActive","focus","focusPreviousAction","focusNextAction","focusLastAction","execFirstAction","preventDefault","rel","aria-hidden","hidden","action-item--open","keydown","ctrlKey","shiftKey","metaKey","aria-haspopup","aria-controls","aria-expanded","32","33","34","38","abs","stack","log","_super","parentWindow","K","tt","manager","inputTarget","domHandler","enable","et","pointers","changedPointers","isFirst","isFinal","session","eventType","firstInput","nt","firstMultiple","center","it","deltaTime","angle","st","distance","at","offsetDelta","prevDelta","prevInput","deltaX","deltaY","offsetDirection","rt","ot","overallVelocityX","overallVelocityY","overallVelocity","scale","rotation","maxPointers","lastInterval","velocity","velocityX","velocityY","direction","srcEvent","recognize","clientX","clientY","sqrt","atan2","PI","evEl","evTarget","evWin","At","mousedown","mouseup","ct","lt","ut","pressed","button","which","pointerType","dt","pointerdown","pointermove","pointerup","pointercancel","pointerout","pt","4","5","ft","ht","vt","store","pointerEvents","MSPointerEvent","PointerEvent","pointerId","mt","touchstart","touchend","touchcancel","gt","yt","bt","started","touches","changedTouches","wt","Tt","Et","targetIds","identifier","xt","touch","mouse","primaryTouch","lastTouches","It","sourceCapabilities","firesTouchEvents","Bt","Mt","Ot","kt","St","Dt","Lt","CSS","supports","Qt","compute","touchAction","recognizers","getTouchAction","preventDefaults","prevented","preventSrc","Gt","jt","Pt","Rt","Yt","Ht","Ft","simultaneous","requireFail","Ut","zt","$t","Wt","Zt","pX","pY","Vt","Xt","_timer","_input","Jt","qt","Kt","pTime","pCenter","count","te","preset","ee","oldCssProps","input","inputClass","ne","recognizeWith","requireFailure","cssProps","dropRecognizeWith","dropRequireFailure","hasRequireFailures","canRecognizeWith","additionalEvent","tryEmit","canEmit","reset","attrTest","threshold","directionTest","time","taps","interval","posThreshold","failTimeout","tapCount","VERSION","domEvents","userSelect","touchSelect","touchCallout","contentZooming","userDrag","tapHighlightColor","stop","stopped","curRecognizer","gesture","INPUT_START","INPUT_MOVE","INPUT_END","INPUT_CANCEL","STATE_POSSIBLE","STATE_BEGAN","STATE_CHANGED","STATE_ENDED","STATE_RECOGNIZED","STATE_CANCELLED","STATE_FAILED","DIRECTION_NONE","DIRECTION_LEFT","DIRECTION_RIGHT","DIRECTION_UP","DIRECTION_DOWN","DIRECTION_HORIZONTAL","DIRECTION_VERTICAL","DIRECTION_ALL","Manager","Input","TouchAction","TouchInput","MouseInput","PointerEventInput","TouchMouseInput","SingleTouchInput","Recognizer","AttrRecognizer","Tap","Pan","Swipe","Pinch","Rotate","Press","each","inherit","bindFn","prefixed","self","Hammer","Sn","getOwnPropertySymbols","className","baseVal","SVGElement","SVGAnimatedString","container","html","template","relatedreference","toElement","relatedTarget","_tooltipNode","_scheduleHide","_isOpen","_show","_hide","_dispose","_classes","_setContent","classes","defaultClass","setClasses","dispose","popperInstance","_isDisposed","_enableDocumentTouch","_setEventListeners","$_originalTitle","autoHide","asyncContent","_applyContent","innerSelector","loadingClass","loadingContent","innerText","_disposeTimer","_ensureShown","_create","_findContainer","_append","popperOptions","arrowSelector","_noLongerOpen","disposeTimeout","_removeTooltipNode","func","hideOnTargetClick","usedByTooltip","_scheduleShow","_scheduleTimer","_setTooltipNodeEvent","_onDocumentTouch","defaultPlacement","defaultTargetClass","defaultHtml","defaultTemplate","defaultArrowSelector","defaultInnerSelector","defaultDelay","defaultTrigger","defaultOffset","defaultContainer","defaultBoundariesElement","defaultPopperOptions","defaultLoadingClass","defaultLoadingContent","defaultHideOnTargetClick","popover","defaultBaseClass","defaultWrapperClass","defaultInnerClass","defaultArrowClass","defaultOpenClass","defaultAutoHide","defaultHandleResize","_tooltip","_tooltipOldShow","_tooltipTargetClasses","setContent","setOptions","_vueEl","targetClasses","closePopover","$_vclosepopover_touch","closeAllPopover","$_closePopoverModifiers","$_vclosepopover_touchPoint","screenY","screenX","MSStream","Element","ResizeObserver","disabled","popoverClass","popoverBaseClass","popoverInnerClass","popoverWrapperClass","popoverArrowClass","handleResize","openGroup","openClass","isOpen","cssClass","popoverId","$_findContainer","$_removeEventListeners","$_addEventListeners","$_updatePopper","$_isDisposed","$_mounted","$_events","$_preventOpen","$_init","deactivated","skipDelay","$_scheduleShow","$_beingShowed","$_scheduleHide","$_show","$_disposeTimer","$_getOffset","$_hide","$_scheduleTimer","$_setTooltipNodeEvent","$_restartPopper","$_handleGlobalClose","$_handleResize","Y","aria-describedby","visibility","keyup","_withStripped","__data__","globalThis","exec","IE_PROTO","Nt","ie","Ae","string","ce","de","le","pe","fe","he","ve","me","ge","Buffer","allocUnsafe","copy","ye","Uint8Array","we","byteLength","be","byteOffset","Ee","xe","Ce","getPrototypeOf","Ie","Me","Oe","ke","Se","De","propertyIsEnumerable","Le","Qe","je","Pe","Ye","He","Ue","ze","$e","We","Ze","Xe","Ke","require","types","tn","isTypedArray","en","qe","nn","rn","cn","ln","un","dn","sn","hn","pn","vn","mn","an","gn","Re","Te","Ve","Be","bn","wn","Tn","xn","Cn","Bn","Mn","Nn","En","kn","On","yn","insertAt","Dn","installed","Ln","59","6","63","backgroundImage","isLongText","7","getText","78","79","8","85","89","9","90","debounce","wait","timestamp","later","debounced","callNow","flush","_node_modules_vue_style_loader_index_js_node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Error_vue_vue_type_style_index_0_id_172a6c9e_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__","Axios","createInstance","defaultConfig","axios","instanceConfig","CancelToken","isCancel","promises","spread","InterceptorManager","dispatchRequest","interceptors","chain","interceptor","fulfilled","rejected","encode","serializedParams","toISOString","ignoreDuplicateOf","parsed","line","originURL","msie","urlParsingNode","resolveURL","protocol","hostname","port","pathname","location","requestURL","write","expires","domain","secure","cookie","toGMTString","decodeURIComponent","eject","transformData","isAbsoluteURL","combineURLs","throwIfCancellationRequested","throwIfRequested","baseURL","relativeURL","executor","resolvePromise","token","scope","Timeout","clearFn","_id","_clearFn","setInterval","clearInterval","unref","enroll","msecs","_idleTimeoutId","_idleTimeout","unenroll","_unrefActive","_onTimeout","clearImmediate","registerImmediate","channel","messagePrefix","onGlobalMessage","nextHandle","tasksByHandle","currentlyRunningATask","doc","attachTo","handle","runIfPresent","postMessage","importScripts","postMessageIsAsynchronous","oldOnMessage","onmessage","canUsePostMessage","MessageChannel","port1","port2","script","attachEvent","task","_node_modules_vue_style_loader_index_js_node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_sass_loader_lib_loader_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Viewer_vue_vue_type_style_index_0_lang_scss___WEBPACK_IMPORTED_MODULE_0__","___CSS_LOADER_URL___0___","getUrl","needQuotes","_node_modules_vue_style_loader_index_js_node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_sass_loader_lib_loader_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Images_vue_vue_type_style_index_0_id_7891d82c_scoped_true_lang_scss___WEBPACK_IMPORTED_MODULE_0__","_node_modules_vue_style_loader_index_js_node_modules_css_loader_dist_cjs_js_node_modules_vue_loader_lib_loaders_stylePostLoader_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Videos_vue_vue_type_style_index_0_id_6873d5ea_scoped_true_lang_css___WEBPACK_IMPORTED_MODULE_0__","components_Errorvue_type_script_lang_js_","normalizeComponent","scriptExports","functionalTemplate","injectStyles","moduleIdentifier","shadowMode","originalRender","components_Error","PreviewUrl","getPreviewIfAny","fileInfo","hasPreview","models_file","mime","modal","failed","loaded","FileList","_x","_x2","_ref","_callee","files","regeneratorRuntime","wrap","_context","prev","requesttoken","requestToken","content-Type","sent","OCA","Files","App","fileList","filesClient","_client","parseMultiStatus","abrupt","_parseFileInfo","_openFile","views_Viewervue_type_script_lang_js_","Modal","Modal_default","isMobile_default","isFullscreen_default","Viewer","availableHandlers","mimeGroups","mimesAliases","registeredHandlers","currentIndex","previousFile","currentFile","nextFile","isLoaded","shownSidebar","sidebarWidth","canSwipe","root","router","getCurrentUser","registerHandler","_this","onResize","openFile","mark","fileName","group","mimes","dataset","theme","encodeFilePath","mimetype","_sortComparator","getAliasIfAny","updatePreviousNext","pathSections","relativePath","section","openFileFromList","_mime","_this2","_typeof","register","fileActions","registerAction","displayName","permissions","PERMISSION_READ","actionHandler","setDefault","vue_runtime_esm","currentModal","hideAppsSidebar","previousFailed","currentFailed","nextFailed","showSidebar","showDetailsView","showAppsSidebar","_this3","sidebar","getElementById","origHideAppsSidebar","Apps","hideAppSidebar","views_Viewer","_vm","icon-loading","view","enable-slideshow","spread-navigation","has-previous","has-next","enable-swipe","dav-path","file-id","file-list","file-name","can-swipe","is-full-screen","sidebar-shown","update:canSwipe","update:can-swipe","update:loaded","isComputedLazy","lazyActivePrefix","lazyDataPrefix","initLazy","makeLazyComputed","silentSetLazy","getGetterWatchedByArray","computedAsyncProperty","splittedByDot","getGetterWatchedByFunction","DidNotUpdate","getGetterWithShouldUpdate","asyncProprety","currentGetter","shouldUpdate","shouldNotUpdate","prefix","AsyncComputed","pluginOptions","asyncComputed","_asyncComputed","$asyncComputed","$data","getterFn","optionData","initDataWithAsyncComputed","generateDefault","_key","handleAsyncComputedPropetyChanges","promiseId","newPromise","thisPromise","setAsyncState","useRawError","exception","getterOnly","stateObject","getWatchedGetter","nonLazy","isLazyActive","silentGetLazy","defaultValue","vue_async_computed_esm","Mime","fileId","davPath","sidebarShown","isFullScreen","naturalHeight","naturalWidth","ext","doneLoading","updateHeightWidth","modalWrapper","modalContainer","wrapperMaxHeight","maxHeight","wrapperMaxWidth","maxWidth","parentHeight","parentWidth","heightRatio","widthRatio","disableSwipe","toggleFullScreen","exitFullscreen","requestFullscreen","_getBase64FromImage","components_Imagesvue_type_script_lang_js_","dragging","shiftX","shiftY","zoomRatio","zoomHeight","zoomWidth","minHeight","minWidth","getBase64FromImage","resetZoom","dragEnd","updateImgSize","Imagesvue_type_script_lang_js_asyncToGenerator","axios_default","updateZoom","stopPropagation","scrollX","scrollY","scrollPercX","scrollPercY","newZoomRatio","growX","growY","dragStart","pageX","pageY","dragX","dragY","onmouseup","onmousemove","dragHandler","moveX","moveY","onDblclick","models_images","zoomed","load","wheel","dblclick","liveExt","components_Videosvue_type_script_lang_js_","visibleControls","livePhoto","startsWith","livePhotoPath","play","updateVideoSize","videoHeight","videoWidth","showControls","hideControls","playPause","paused","donePlaying","autoplay","saveVolume","videoVolume","volume","muted","localStorage","viewerVideoVolume","restoreVolume","onLoadedMetadata","videos","video/x-matroska","controls","poster","playsinline","preload","canplay","mouseenter","mouseleave","loadedmetadata","volumechange","_classCallCheck","_handlers","_classPrivateFieldLooseBase","Images","Videos","debug","__webpack_nonce__","__webpack_public_path__","ViewerService","appVersion","ViewerRoot","ViewerComponent"],"mappings":"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","file":"viewer.js","sourcesContent":[" \t// The module cache\n \tvar installedModules = {};\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/js/\";\n\n\n \t// Load entry module and return exports\n \treturn __webpack_require__(__webpack_require__.s = 52);\n","/*!\n * Vue.js v2.6.10\n * (c) 2014-2019 Evan You\n * Released under the MIT License.\n */\n/* */\n\nvar emptyObject = Object.freeze({});\n\n// These helpers produce better VM code in JS engines due to their\n// explicitness and function inlining.\nfunction isUndef (v) {\n return v === undefined || v === null\n}\n\nfunction isDef (v) {\n return v !== undefined && v !== null\n}\n\nfunction isTrue (v) {\n return v === true\n}\n\nfunction isFalse (v) {\n return v === false\n}\n\n/**\n * Check if value is primitive.\n */\nfunction isPrimitive (value) {\n return (\n typeof value === 'string' ||\n typeof value === 'number' ||\n // $flow-disable-line\n typeof value === 'symbol' ||\n typeof value === 'boolean'\n )\n}\n\n/**\n * Quick object check - this is primarily used to tell\n * Objects from primitive values when we know the value\n * is a JSON-compliant type.\n */\nfunction isObject (obj) {\n return obj !== null && typeof obj === 'object'\n}\n\n/**\n * Get the raw type string of a value, e.g., [object Object].\n */\nvar _toString = Object.prototype.toString;\n\nfunction toRawType (value) {\n return _toString.call(value).slice(8, -1)\n}\n\n/**\n * Strict object type check. Only returns true\n * for plain JavaScript objects.\n */\nfunction isPlainObject (obj) {\n return _toString.call(obj) === '[object Object]'\n}\n\nfunction isRegExp (v) {\n return _toString.call(v) === '[object RegExp]'\n}\n\n/**\n * Check if val is a valid array index.\n */\nfunction isValidArrayIndex (val) {\n var n = parseFloat(String(val));\n return n >= 0 && Math.floor(n) === n && isFinite(val)\n}\n\nfunction isPromise (val) {\n return (\n isDef(val) &&\n typeof val.then === 'function' &&\n typeof val.catch === 'function'\n )\n}\n\n/**\n * Convert a value to a string that is actually rendered.\n */\nfunction toString (val) {\n return val == null\n ? ''\n : Array.isArray(val) || (isPlainObject(val) && val.toString === _toString)\n ? JSON.stringify(val, null, 2)\n : String(val)\n}\n\n/**\n * Convert an input value to a number for persistence.\n * If the conversion fails, return original string.\n */\nfunction toNumber (val) {\n var n = parseFloat(val);\n return isNaN(n) ? val : n\n}\n\n/**\n * Make a map and return a function for checking if a key\n * is in that map.\n */\nfunction makeMap (\n str,\n expectsLowerCase\n) {\n var map = Object.create(null);\n var list = str.split(',');\n for (var i = 0; i < list.length; i++) {\n map[list[i]] = true;\n }\n return expectsLowerCase\n ? function (val) { return map[val.toLowerCase()]; }\n : function (val) { return map[val]; }\n}\n\n/**\n * Check if a tag is a built-in tag.\n */\nvar isBuiltInTag = makeMap('slot,component', true);\n\n/**\n * Check if an attribute is a reserved attribute.\n */\nvar isReservedAttribute = makeMap('key,ref,slot,slot-scope,is');\n\n/**\n * Remove an item from an array.\n */\nfunction remove (arr, item) {\n if (arr.length) {\n var index = arr.indexOf(item);\n if (index > -1) {\n return arr.splice(index, 1)\n }\n }\n}\n\n/**\n * Check whether an object has the property.\n */\nvar hasOwnProperty = Object.prototype.hasOwnProperty;\nfunction hasOwn (obj, key) {\n return hasOwnProperty.call(obj, key)\n}\n\n/**\n * Create a cached version of a pure function.\n */\nfunction cached (fn) {\n var cache = Object.create(null);\n return (function cachedFn (str) {\n var hit = cache[str];\n return hit || (cache[str] = fn(str))\n })\n}\n\n/**\n * Camelize a hyphen-delimited string.\n */\nvar camelizeRE = /-(\\w)/g;\nvar camelize = cached(function (str) {\n return str.replace(camelizeRE, function (_, c) { return c ? c.toUpperCase() : ''; })\n});\n\n/**\n * Capitalize a string.\n */\nvar capitalize = cached(function (str) {\n return str.charAt(0).toUpperCase() + str.slice(1)\n});\n\n/**\n * Hyphenate a camelCase string.\n */\nvar hyphenateRE = /\\B([A-Z])/g;\nvar hyphenate = cached(function (str) {\n return str.replace(hyphenateRE, '-$1').toLowerCase()\n});\n\n/**\n * Simple bind polyfill for environments that do not support it,\n * e.g., PhantomJS 1.x. Technically, we don't need this anymore\n * since native bind is now performant enough in most browsers.\n * But removing it would mean breaking code that was able to run in\n * PhantomJS 1.x, so this must be kept for backward compatibility.\n */\n\n/* istanbul ignore next */\nfunction polyfillBind (fn, ctx) {\n function boundFn (a) {\n var l = arguments.length;\n return l\n ? l > 1\n ? fn.apply(ctx, arguments)\n : fn.call(ctx, a)\n : fn.call(ctx)\n }\n\n boundFn._length = fn.length;\n return boundFn\n}\n\nfunction nativeBind (fn, ctx) {\n return fn.bind(ctx)\n}\n\nvar bind = Function.prototype.bind\n ? nativeBind\n : polyfillBind;\n\n/**\n * Convert an Array-like object to a real Array.\n */\nfunction toArray (list, start) {\n start = start || 0;\n var i = list.length - start;\n var ret = new Array(i);\n while (i--) {\n ret[i] = list[i + start];\n }\n return ret\n}\n\n/**\n * Mix properties into target object.\n */\nfunction extend (to, _from) {\n for (var key in _from) {\n to[key] = _from[key];\n }\n return to\n}\n\n/**\n * Merge an Array of Objects into a single Object.\n */\nfunction toObject (arr) {\n var res = {};\n for (var i = 0; i < arr.length; i++) {\n if (arr[i]) {\n extend(res, arr[i]);\n }\n }\n return res\n}\n\n/* eslint-disable no-unused-vars */\n\n/**\n * Perform no operation.\n * Stubbing args to make Flow happy without leaving useless transpiled code\n * with ...rest (https://flow.org/blog/2017/05/07/Strict-Function-Call-Arity/).\n */\nfunction noop (a, b, c) {}\n\n/**\n * Always return false.\n */\nvar no = function (a, b, c) { return false; };\n\n/* eslint-enable no-unused-vars */\n\n/**\n * Return the same value.\n */\nvar identity = function (_) { return _; };\n\n/**\n * Check if two values are loosely equal - that is,\n * if they are plain objects, do they have the same shape?\n */\nfunction looseEqual (a, b) {\n if (a === b) { return true }\n var isObjectA = isObject(a);\n var isObjectB = isObject(b);\n if (isObjectA && isObjectB) {\n try {\n var isArrayA = Array.isArray(a);\n var isArrayB = Array.isArray(b);\n if (isArrayA && isArrayB) {\n return a.length === b.length && a.every(function (e, i) {\n return looseEqual(e, b[i])\n })\n } else if (a instanceof Date && b instanceof Date) {\n return a.getTime() === b.getTime()\n } else if (!isArrayA && !isArrayB) {\n var keysA = Object.keys(a);\n var keysB = Object.keys(b);\n return keysA.length === keysB.length && keysA.every(function (key) {\n return looseEqual(a[key], b[key])\n })\n } else {\n /* istanbul ignore next */\n return false\n }\n } catch (e) {\n /* istanbul ignore next */\n return false\n }\n } else if (!isObjectA && !isObjectB) {\n return String(a) === String(b)\n } else {\n return false\n }\n}\n\n/**\n * Return the first index at which a loosely equal value can be\n * found in the array (if value is a plain object, the array must\n * contain an object of the same shape), or -1 if it is not present.\n */\nfunction looseIndexOf (arr, val) {\n for (var i = 0; i < arr.length; i++) {\n if (looseEqual(arr[i], val)) { return i }\n }\n return -1\n}\n\n/**\n * Ensure a function is called only once.\n */\nfunction once (fn) {\n var called = false;\n return function () {\n if (!called) {\n called = true;\n fn.apply(this, arguments);\n }\n }\n}\n\nvar SSR_ATTR = 'data-server-rendered';\n\nvar ASSET_TYPES = [\n 'component',\n 'directive',\n 'filter'\n];\n\nvar LIFECYCLE_HOOKS = [\n 'beforeCreate',\n 'created',\n 'beforeMount',\n 'mounted',\n 'beforeUpdate',\n 'updated',\n 'beforeDestroy',\n 'destroyed',\n 'activated',\n 'deactivated',\n 'errorCaptured',\n 'serverPrefetch'\n];\n\n/* */\n\n\n\nvar config = ({\n /**\n * Option merge strategies (used in core/util/options)\n */\n // $flow-disable-line\n optionMergeStrategies: Object.create(null),\n\n /**\n * Whether to suppress warnings.\n */\n silent: false,\n\n /**\n * Show production mode tip message on boot?\n */\n productionTip: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to enable devtools\n */\n devtools: process.env.NODE_ENV !== 'production',\n\n /**\n * Whether to record perf\n */\n performance: false,\n\n /**\n * Error handler for watcher errors\n */\n errorHandler: null,\n\n /**\n * Warn handler for watcher warns\n */\n warnHandler: null,\n\n /**\n * Ignore certain custom elements\n */\n ignoredElements: [],\n\n /**\n * Custom user key aliases for v-on\n */\n // $flow-disable-line\n keyCodes: Object.create(null),\n\n /**\n * Check if a tag is reserved so that it cannot be registered as a\n * component. This is platform-dependent and may be overwritten.\n */\n isReservedTag: no,\n\n /**\n * Check if an attribute is reserved so that it cannot be used as a component\n * prop. This is platform-dependent and may be overwritten.\n */\n isReservedAttr: no,\n\n /**\n * Check if a tag is an unknown element.\n * Platform-dependent.\n */\n isUnknownElement: no,\n\n /**\n * Get the namespace of an element\n */\n getTagNamespace: noop,\n\n /**\n * Parse the real tag name for the specific platform.\n */\n parsePlatformTagName: identity,\n\n /**\n * Check if an attribute must be bound using property, e.g. value\n * Platform-dependent.\n */\n mustUseProp: no,\n\n /**\n * Perform updates asynchronously. Intended to be used by Vue Test Utils\n * This will significantly reduce performance if set to false.\n */\n async: true,\n\n /**\n * Exposed for legacy reasons\n */\n _lifecycleHooks: LIFECYCLE_HOOKS\n});\n\n/* */\n\n/**\n * unicode letters used for parsing html tags, component names and property paths.\n * using https://www.w3.org/TR/html53/semantics-scripting.html#potentialcustomelementname\n * skipping \\u10000-\\uEFFFF due to it freezing up PhantomJS\n */\nvar unicodeRegExp = /a-zA-Z\\u00B7\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u203F-\\u2040\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD/;\n\n/**\n * Check if a string starts with $ or _\n */\nfunction isReserved (str) {\n var c = (str + '').charCodeAt(0);\n return c === 0x24 || c === 0x5F\n}\n\n/**\n * Define a property.\n */\nfunction def (obj, key, val, enumerable) {\n Object.defineProperty(obj, key, {\n value: val,\n enumerable: !!enumerable,\n writable: true,\n configurable: true\n });\n}\n\n/**\n * Parse simple path.\n */\nvar bailRE = new RegExp((\"[^\" + (unicodeRegExp.source) + \".$_\\\\d]\"));\nfunction parsePath (path) {\n if (bailRE.test(path)) {\n return\n }\n var segments = path.split('.');\n return function (obj) {\n for (var i = 0; i < segments.length; i++) {\n if (!obj) { return }\n obj = obj[segments[i]];\n }\n return obj\n }\n}\n\n/* */\n\n// can we use __proto__?\nvar hasProto = '__proto__' in {};\n\n// Browser environment sniffing\nvar inBrowser = typeof window !== 'undefined';\nvar inWeex = typeof WXEnvironment !== 'undefined' && !!WXEnvironment.platform;\nvar weexPlatform = inWeex && WXEnvironment.platform.toLowerCase();\nvar UA = inBrowser && window.navigator.userAgent.toLowerCase();\nvar isIE = UA && /msie|trident/.test(UA);\nvar isIE9 = UA && UA.indexOf('msie 9.0') > 0;\nvar isEdge = UA && UA.indexOf('edge/') > 0;\nvar isAndroid = (UA && UA.indexOf('android') > 0) || (weexPlatform === 'android');\nvar isIOS = (UA && /iphone|ipad|ipod|ios/.test(UA)) || (weexPlatform === 'ios');\nvar isChrome = UA && /chrome\\/\\d+/.test(UA) && !isEdge;\nvar isPhantomJS = UA && /phantomjs/.test(UA);\nvar isFF = UA && UA.match(/firefox\\/(\\d+)/);\n\n// Firefox has a \"watch\" function on Object.prototype...\nvar nativeWatch = ({}).watch;\n\nvar supportsPassive = false;\nif (inBrowser) {\n try {\n var opts = {};\n Object.defineProperty(opts, 'passive', ({\n get: function get () {\n /* istanbul ignore next */\n supportsPassive = true;\n }\n })); // https://github.com/facebook/flow/issues/285\n window.addEventListener('test-passive', null, opts);\n } catch (e) {}\n}\n\n// this needs to be lazy-evaled because vue may be required before\n// vue-server-renderer can set VUE_ENV\nvar _isServer;\nvar isServerRendering = function () {\n if (_isServer === undefined) {\n /* istanbul ignore if */\n if (!inBrowser && !inWeex && typeof global !== 'undefined') {\n // detect presence of vue-server-renderer and avoid\n // Webpack shimming the process\n _isServer = global['process'] && global['process'].env.VUE_ENV === 'server';\n } else {\n _isServer = false;\n }\n }\n return _isServer\n};\n\n// detect devtools\nvar devtools = inBrowser && window.__VUE_DEVTOOLS_GLOBAL_HOOK__;\n\n/* istanbul ignore next */\nfunction isNative (Ctor) {\n return typeof Ctor === 'function' && /native code/.test(Ctor.toString())\n}\n\nvar hasSymbol =\n typeof Symbol !== 'undefined' && isNative(Symbol) &&\n typeof Reflect !== 'undefined' && isNative(Reflect.ownKeys);\n\nvar _Set;\n/* istanbul ignore if */ // $flow-disable-line\nif (typeof Set !== 'undefined' && isNative(Set)) {\n // use native Set when available.\n _Set = Set;\n} else {\n // a non-standard Set polyfill that only works with primitive keys.\n _Set = /*@__PURE__*/(function () {\n function Set () {\n this.set = Object.create(null);\n }\n Set.prototype.has = function has (key) {\n return this.set[key] === true\n };\n Set.prototype.add = function add (key) {\n this.set[key] = true;\n };\n Set.prototype.clear = function clear () {\n this.set = Object.create(null);\n };\n\n return Set;\n }());\n}\n\n/* */\n\nvar warn = noop;\nvar tip = noop;\nvar generateComponentTrace = (noop); // work around flow check\nvar formatComponentName = (noop);\n\nif (process.env.NODE_ENV !== 'production') {\n var hasConsole = typeof console !== 'undefined';\n var classifyRE = /(?:^|[-_])(\\w)/g;\n var classify = function (str) { return str\n .replace(classifyRE, function (c) { return c.toUpperCase(); })\n .replace(/[-_]/g, ''); };\n\n warn = function (msg, vm) {\n var trace = vm ? generateComponentTrace(vm) : '';\n\n if (config.warnHandler) {\n config.warnHandler.call(null, msg, vm, trace);\n } else if (hasConsole && (!config.silent)) {\n console.error((\"[Vue warn]: \" + msg + trace));\n }\n };\n\n tip = function (msg, vm) {\n if (hasConsole && (!config.silent)) {\n console.warn(\"[Vue tip]: \" + msg + (\n vm ? generateComponentTrace(vm) : ''\n ));\n }\n };\n\n formatComponentName = function (vm, includeFile) {\n if (vm.$root === vm) {\n return '<Root>'\n }\n var options = typeof vm === 'function' && vm.cid != null\n ? vm.options\n : vm._isVue\n ? vm.$options || vm.constructor.options\n : vm;\n var name = options.name || options._componentTag;\n var file = options.__file;\n if (!name && file) {\n var match = file.match(/([^/\\\\]+)\\.vue$/);\n name = match && match[1];\n }\n\n return (\n (name ? (\"<\" + (classify(name)) + \">\") : \"<Anonymous>\") +\n (file && includeFile !== false ? (\" at \" + file) : '')\n )\n };\n\n var repeat = function (str, n) {\n var res = '';\n while (n) {\n if (n % 2 === 1) { res += str; }\n if (n > 1) { str += str; }\n n >>= 1;\n }\n return res\n };\n\n generateComponentTrace = function (vm) {\n if (vm._isVue && vm.$parent) {\n var tree = [];\n var currentRecursiveSequence = 0;\n while (vm) {\n if (tree.length > 0) {\n var last = tree[tree.length - 1];\n if (last.constructor === vm.constructor) {\n currentRecursiveSequence++;\n vm = vm.$parent;\n continue\n } else if (currentRecursiveSequence > 0) {\n tree[tree.length - 1] = [last, currentRecursiveSequence];\n currentRecursiveSequence = 0;\n }\n }\n tree.push(vm);\n vm = vm.$parent;\n }\n return '\\n\\nfound in\\n\\n' + tree\n .map(function (vm, i) { return (\"\" + (i === 0 ? '---> ' : repeat(' ', 5 + i * 2)) + (Array.isArray(vm)\n ? ((formatComponentName(vm[0])) + \"... (\" + (vm[1]) + \" recursive calls)\")\n : formatComponentName(vm))); })\n .join('\\n')\n } else {\n return (\"\\n\\n(found in \" + (formatComponentName(vm)) + \")\")\n }\n };\n}\n\n/* */\n\nvar uid = 0;\n\n/**\n * A dep is an observable that can have multiple\n * directives subscribing to it.\n */\nvar Dep = function Dep () {\n this.id = uid++;\n this.subs = [];\n};\n\nDep.prototype.addSub = function addSub (sub) {\n this.subs.push(sub);\n};\n\nDep.prototype.removeSub = function removeSub (sub) {\n remove(this.subs, sub);\n};\n\nDep.prototype.depend = function depend () {\n if (Dep.target) {\n Dep.target.addDep(this);\n }\n};\n\nDep.prototype.notify = function notify () {\n // stabilize the subscriber list first\n var subs = this.subs.slice();\n if (process.env.NODE_ENV !== 'production' && !config.async) {\n // subs aren't sorted in scheduler if not running async\n // we need to sort them now to make sure they fire in correct\n // order\n subs.sort(function (a, b) { return a.id - b.id; });\n }\n for (var i = 0, l = subs.length; i < l; i++) {\n subs[i].update();\n }\n};\n\n// The current target watcher being evaluated.\n// This is globally unique because only one watcher\n// can be evaluated at a time.\nDep.target = null;\nvar targetStack = [];\n\nfunction pushTarget (target) {\n targetStack.push(target);\n Dep.target = target;\n}\n\nfunction popTarget () {\n targetStack.pop();\n Dep.target = targetStack[targetStack.length - 1];\n}\n\n/* */\n\nvar VNode = function VNode (\n tag,\n data,\n children,\n text,\n elm,\n context,\n componentOptions,\n asyncFactory\n) {\n this.tag = tag;\n this.data = data;\n this.children = children;\n this.text = text;\n this.elm = elm;\n this.ns = undefined;\n this.context = context;\n this.fnContext = undefined;\n this.fnOptions = undefined;\n this.fnScopeId = undefined;\n this.key = data && data.key;\n this.componentOptions = componentOptions;\n this.componentInstance = undefined;\n this.parent = undefined;\n this.raw = false;\n this.isStatic = false;\n this.isRootInsert = true;\n this.isComment = false;\n this.isCloned = false;\n this.isOnce = false;\n this.asyncFactory = asyncFactory;\n this.asyncMeta = undefined;\n this.isAsyncPlaceholder = false;\n};\n\nvar prototypeAccessors = { child: { configurable: true } };\n\n// DEPRECATED: alias for componentInstance for backwards compat.\n/* istanbul ignore next */\nprototypeAccessors.child.get = function () {\n return this.componentInstance\n};\n\nObject.defineProperties( VNode.prototype, prototypeAccessors );\n\nvar createEmptyVNode = function (text) {\n if ( text === void 0 ) text = '';\n\n var node = new VNode();\n node.text = text;\n node.isComment = true;\n return node\n};\n\nfunction createTextVNode (val) {\n return new VNode(undefined, undefined, undefined, String(val))\n}\n\n// optimized shallow clone\n// used for static nodes and slot nodes because they may be reused across\n// multiple renders, cloning them avoids errors when DOM manipulations rely\n// on their elm reference.\nfunction cloneVNode (vnode) {\n var cloned = new VNode(\n vnode.tag,\n vnode.data,\n // #7975\n // clone children array to avoid mutating original in case of cloning\n // a child.\n vnode.children && vnode.children.slice(),\n vnode.text,\n vnode.elm,\n vnode.context,\n vnode.componentOptions,\n vnode.asyncFactory\n );\n cloned.ns = vnode.ns;\n cloned.isStatic = vnode.isStatic;\n cloned.key = vnode.key;\n cloned.isComment = vnode.isComment;\n cloned.fnContext = vnode.fnContext;\n cloned.fnOptions = vnode.fnOptions;\n cloned.fnScopeId = vnode.fnScopeId;\n cloned.asyncMeta = vnode.asyncMeta;\n cloned.isCloned = true;\n return cloned\n}\n\n/*\n * not type checking this file because flow doesn't play well with\n * dynamically accessing methods on Array prototype\n */\n\nvar arrayProto = Array.prototype;\nvar arrayMethods = Object.create(arrayProto);\n\nvar methodsToPatch = [\n 'push',\n 'pop',\n 'shift',\n 'unshift',\n 'splice',\n 'sort',\n 'reverse'\n];\n\n/**\n * Intercept mutating methods and emit events\n */\nmethodsToPatch.forEach(function (method) {\n // cache original method\n var original = arrayProto[method];\n def(arrayMethods, method, function mutator () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n var result = original.apply(this, args);\n var ob = this.__ob__;\n var inserted;\n switch (method) {\n case 'push':\n case 'unshift':\n inserted = args;\n break\n case 'splice':\n inserted = args.slice(2);\n break\n }\n if (inserted) { ob.observeArray(inserted); }\n // notify change\n ob.dep.notify();\n return result\n });\n});\n\n/* */\n\nvar arrayKeys = Object.getOwnPropertyNames(arrayMethods);\n\n/**\n * In some cases we may want to disable observation inside a component's\n * update computation.\n */\nvar shouldObserve = true;\n\nfunction toggleObserving (value) {\n shouldObserve = value;\n}\n\n/**\n * Observer class that is attached to each observed\n * object. Once attached, the observer converts the target\n * object's property keys into getter/setters that\n * collect dependencies and dispatch updates.\n */\nvar Observer = function Observer (value) {\n this.value = value;\n this.dep = new Dep();\n this.vmCount = 0;\n def(value, '__ob__', this);\n if (Array.isArray(value)) {\n if (hasProto) {\n protoAugment(value, arrayMethods);\n } else {\n copyAugment(value, arrayMethods, arrayKeys);\n }\n this.observeArray(value);\n } else {\n this.walk(value);\n }\n};\n\n/**\n * Walk through all properties and convert them into\n * getter/setters. This method should only be called when\n * value type is Object.\n */\nObserver.prototype.walk = function walk (obj) {\n var keys = Object.keys(obj);\n for (var i = 0; i < keys.length; i++) {\n defineReactive$$1(obj, keys[i]);\n }\n};\n\n/**\n * Observe a list of Array items.\n */\nObserver.prototype.observeArray = function observeArray (items) {\n for (var i = 0, l = items.length; i < l; i++) {\n observe(items[i]);\n }\n};\n\n// helpers\n\n/**\n * Augment a target Object or Array by intercepting\n * the prototype chain using __proto__\n */\nfunction protoAugment (target, src) {\n /* eslint-disable no-proto */\n target.__proto__ = src;\n /* eslint-enable no-proto */\n}\n\n/**\n * Augment a target Object or Array by defining\n * hidden properties.\n */\n/* istanbul ignore next */\nfunction copyAugment (target, src, keys) {\n for (var i = 0, l = keys.length; i < l; i++) {\n var key = keys[i];\n def(target, key, src[key]);\n }\n}\n\n/**\n * Attempt to create an observer instance for a value,\n * returns the new observer if successfully observed,\n * or the existing observer if the value already has one.\n */\nfunction observe (value, asRootData) {\n if (!isObject(value) || value instanceof VNode) {\n return\n }\n var ob;\n if (hasOwn(value, '__ob__') && value.__ob__ instanceof Observer) {\n ob = value.__ob__;\n } else if (\n shouldObserve &&\n !isServerRendering() &&\n (Array.isArray(value) || isPlainObject(value)) &&\n Object.isExtensible(value) &&\n !value._isVue\n ) {\n ob = new Observer(value);\n }\n if (asRootData && ob) {\n ob.vmCount++;\n }\n return ob\n}\n\n/**\n * Define a reactive property on an Object.\n */\nfunction defineReactive$$1 (\n obj,\n key,\n val,\n customSetter,\n shallow\n) {\n var dep = new Dep();\n\n var property = Object.getOwnPropertyDescriptor(obj, key);\n if (property && property.configurable === false) {\n return\n }\n\n // cater for pre-defined getter/setters\n var getter = property && property.get;\n var setter = property && property.set;\n if ((!getter || setter) && arguments.length === 2) {\n val = obj[key];\n }\n\n var childOb = !shallow && observe(val);\n Object.defineProperty(obj, key, {\n enumerable: true,\n configurable: true,\n get: function reactiveGetter () {\n var value = getter ? getter.call(obj) : val;\n if (Dep.target) {\n dep.depend();\n if (childOb) {\n childOb.dep.depend();\n if (Array.isArray(value)) {\n dependArray(value);\n }\n }\n }\n return value\n },\n set: function reactiveSetter (newVal) {\n var value = getter ? getter.call(obj) : val;\n /* eslint-disable no-self-compare */\n if (newVal === value || (newVal !== newVal && value !== value)) {\n return\n }\n /* eslint-enable no-self-compare */\n if (process.env.NODE_ENV !== 'production' && customSetter) {\n customSetter();\n }\n // #7981: for accessor properties without setter\n if (getter && !setter) { return }\n if (setter) {\n setter.call(obj, newVal);\n } else {\n val = newVal;\n }\n childOb = !shallow && observe(newVal);\n dep.notify();\n }\n });\n}\n\n/**\n * Set a property on an object. Adds the new property and\n * triggers change notification if the property doesn't\n * already exist.\n */\nfunction set (target, key, val) {\n if (process.env.NODE_ENV !== 'production' &&\n (isUndef(target) || isPrimitive(target))\n ) {\n warn((\"Cannot set reactive property on undefined, null, or primitive value: \" + ((target))));\n }\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.length = Math.max(target.length, key);\n target.splice(key, 1, val);\n return val\n }\n if (key in target && !(key in Object.prototype)) {\n target[key] = val;\n return val\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid adding reactive properties to a Vue instance or its root $data ' +\n 'at runtime - declare it upfront in the data option.'\n );\n return val\n }\n if (!ob) {\n target[key] = val;\n return val\n }\n defineReactive$$1(ob.value, key, val);\n ob.dep.notify();\n return val\n}\n\n/**\n * Delete a property and trigger change if necessary.\n */\nfunction del (target, key) {\n if (process.env.NODE_ENV !== 'production' &&\n (isUndef(target) || isPrimitive(target))\n ) {\n warn((\"Cannot delete reactive property on undefined, null, or primitive value: \" + ((target))));\n }\n if (Array.isArray(target) && isValidArrayIndex(key)) {\n target.splice(key, 1);\n return\n }\n var ob = (target).__ob__;\n if (target._isVue || (ob && ob.vmCount)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Avoid deleting properties on a Vue instance or its root $data ' +\n '- just set it to null.'\n );\n return\n }\n if (!hasOwn(target, key)) {\n return\n }\n delete target[key];\n if (!ob) {\n return\n }\n ob.dep.notify();\n}\n\n/**\n * Collect dependencies on array elements when the array is touched, since\n * we cannot intercept array element access like property getters.\n */\nfunction dependArray (value) {\n for (var e = (void 0), i = 0, l = value.length; i < l; i++) {\n e = value[i];\n e && e.__ob__ && e.__ob__.dep.depend();\n if (Array.isArray(e)) {\n dependArray(e);\n }\n }\n}\n\n/* */\n\n/**\n * Option overwriting strategies are functions that handle\n * how to merge a parent option value and a child option\n * value into the final value.\n */\nvar strats = config.optionMergeStrategies;\n\n/**\n * Options with restrictions\n */\nif (process.env.NODE_ENV !== 'production') {\n strats.el = strats.propsData = function (parent, child, vm, key) {\n if (!vm) {\n warn(\n \"option \\\"\" + key + \"\\\" can only be used during instance \" +\n 'creation with the `new` keyword.'\n );\n }\n return defaultStrat(parent, child)\n };\n}\n\n/**\n * Helper that recursively merges two data objects together.\n */\nfunction mergeData (to, from) {\n if (!from) { return to }\n var key, toVal, fromVal;\n\n var keys = hasSymbol\n ? Reflect.ownKeys(from)\n : Object.keys(from);\n\n for (var i = 0; i < keys.length; i++) {\n key = keys[i];\n // in case the object is already observed...\n if (key === '__ob__') { continue }\n toVal = to[key];\n fromVal = from[key];\n if (!hasOwn(to, key)) {\n set(to, key, fromVal);\n } else if (\n toVal !== fromVal &&\n isPlainObject(toVal) &&\n isPlainObject(fromVal)\n ) {\n mergeData(toVal, fromVal);\n }\n }\n return to\n}\n\n/**\n * Data\n */\nfunction mergeDataOrFn (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n // in a Vue.extend merge, both should be functions\n if (!childVal) {\n return parentVal\n }\n if (!parentVal) {\n return childVal\n }\n // when parentVal & childVal are both present,\n // we need to return a function that returns the\n // merged result of both functions... no need to\n // check if parentVal is a function here because\n // it has to be a function to pass previous merges.\n return function mergedDataFn () {\n return mergeData(\n typeof childVal === 'function' ? childVal.call(this, this) : childVal,\n typeof parentVal === 'function' ? parentVal.call(this, this) : parentVal\n )\n }\n } else {\n return function mergedInstanceDataFn () {\n // instance merge\n var instanceData = typeof childVal === 'function'\n ? childVal.call(vm, vm)\n : childVal;\n var defaultData = typeof parentVal === 'function'\n ? parentVal.call(vm, vm)\n : parentVal;\n if (instanceData) {\n return mergeData(instanceData, defaultData)\n } else {\n return defaultData\n }\n }\n }\n}\n\nstrats.data = function (\n parentVal,\n childVal,\n vm\n) {\n if (!vm) {\n if (childVal && typeof childVal !== 'function') {\n process.env.NODE_ENV !== 'production' && warn(\n 'The \"data\" option should be a function ' +\n 'that returns a per-instance value in component ' +\n 'definitions.',\n vm\n );\n\n return parentVal\n }\n return mergeDataOrFn(parentVal, childVal)\n }\n\n return mergeDataOrFn(parentVal, childVal, vm)\n};\n\n/**\n * Hooks and props are merged as arrays.\n */\nfunction mergeHook (\n parentVal,\n childVal\n) {\n var res = childVal\n ? parentVal\n ? parentVal.concat(childVal)\n : Array.isArray(childVal)\n ? childVal\n : [childVal]\n : parentVal;\n return res\n ? dedupeHooks(res)\n : res\n}\n\nfunction dedupeHooks (hooks) {\n var res = [];\n for (var i = 0; i < hooks.length; i++) {\n if (res.indexOf(hooks[i]) === -1) {\n res.push(hooks[i]);\n }\n }\n return res\n}\n\nLIFECYCLE_HOOKS.forEach(function (hook) {\n strats[hook] = mergeHook;\n});\n\n/**\n * Assets\n *\n * When a vm is present (instance creation), we need to do\n * a three-way merge between constructor options, instance\n * options and parent options.\n */\nfunction mergeAssets (\n parentVal,\n childVal,\n vm,\n key\n) {\n var res = Object.create(parentVal || null);\n if (childVal) {\n process.env.NODE_ENV !== 'production' && assertObjectType(key, childVal, vm);\n return extend(res, childVal)\n } else {\n return res\n }\n}\n\nASSET_TYPES.forEach(function (type) {\n strats[type + 's'] = mergeAssets;\n});\n\n/**\n * Watchers.\n *\n * Watchers hashes should not overwrite one\n * another, so we merge them as arrays.\n */\nstrats.watch = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n // work around Firefox's Object.prototype.watch...\n if (parentVal === nativeWatch) { parentVal = undefined; }\n if (childVal === nativeWatch) { childVal = undefined; }\n /* istanbul ignore if */\n if (!childVal) { return Object.create(parentVal || null) }\n if (process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = {};\n extend(ret, parentVal);\n for (var key$1 in childVal) {\n var parent = ret[key$1];\n var child = childVal[key$1];\n if (parent && !Array.isArray(parent)) {\n parent = [parent];\n }\n ret[key$1] = parent\n ? parent.concat(child)\n : Array.isArray(child) ? child : [child];\n }\n return ret\n};\n\n/**\n * Other object hashes.\n */\nstrats.props =\nstrats.methods =\nstrats.inject =\nstrats.computed = function (\n parentVal,\n childVal,\n vm,\n key\n) {\n if (childVal && process.env.NODE_ENV !== 'production') {\n assertObjectType(key, childVal, vm);\n }\n if (!parentVal) { return childVal }\n var ret = Object.create(null);\n extend(ret, parentVal);\n if (childVal) { extend(ret, childVal); }\n return ret\n};\nstrats.provide = mergeDataOrFn;\n\n/**\n * Default strategy.\n */\nvar defaultStrat = function (parentVal, childVal) {\n return childVal === undefined\n ? parentVal\n : childVal\n};\n\n/**\n * Validate component names\n */\nfunction checkComponents (options) {\n for (var key in options.components) {\n validateComponentName(key);\n }\n}\n\nfunction validateComponentName (name) {\n if (!new RegExp((\"^[a-zA-Z][\\\\-\\\\.0-9_\" + (unicodeRegExp.source) + \"]*$\")).test(name)) {\n warn(\n 'Invalid component name: \"' + name + '\". Component names ' +\n 'should conform to valid custom element name in html5 specification.'\n );\n }\n if (isBuiltInTag(name) || config.isReservedTag(name)) {\n warn(\n 'Do not use built-in or reserved HTML elements as component ' +\n 'id: ' + name\n );\n }\n}\n\n/**\n * Ensure all props option syntax are normalized into the\n * Object-based format.\n */\nfunction normalizeProps (options, vm) {\n var props = options.props;\n if (!props) { return }\n var res = {};\n var i, val, name;\n if (Array.isArray(props)) {\n i = props.length;\n while (i--) {\n val = props[i];\n if (typeof val === 'string') {\n name = camelize(val);\n res[name] = { type: null };\n } else if (process.env.NODE_ENV !== 'production') {\n warn('props must be strings when using array syntax.');\n }\n }\n } else if (isPlainObject(props)) {\n for (var key in props) {\n val = props[key];\n name = camelize(key);\n res[name] = isPlainObject(val)\n ? val\n : { type: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"props\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(props)) + \".\",\n vm\n );\n }\n options.props = res;\n}\n\n/**\n * Normalize all injections into Object-based format\n */\nfunction normalizeInject (options, vm) {\n var inject = options.inject;\n if (!inject) { return }\n var normalized = options.inject = {};\n if (Array.isArray(inject)) {\n for (var i = 0; i < inject.length; i++) {\n normalized[inject[i]] = { from: inject[i] };\n }\n } else if (isPlainObject(inject)) {\n for (var key in inject) {\n var val = inject[key];\n normalized[key] = isPlainObject(val)\n ? extend({ from: key }, val)\n : { from: val };\n }\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n \"Invalid value for option \\\"inject\\\": expected an Array or an Object, \" +\n \"but got \" + (toRawType(inject)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Normalize raw function directives into object format.\n */\nfunction normalizeDirectives (options) {\n var dirs = options.directives;\n if (dirs) {\n for (var key in dirs) {\n var def$$1 = dirs[key];\n if (typeof def$$1 === 'function') {\n dirs[key] = { bind: def$$1, update: def$$1 };\n }\n }\n }\n}\n\nfunction assertObjectType (name, value, vm) {\n if (!isPlainObject(value)) {\n warn(\n \"Invalid value for option \\\"\" + name + \"\\\": expected an Object, \" +\n \"but got \" + (toRawType(value)) + \".\",\n vm\n );\n }\n}\n\n/**\n * Merge two option objects into a new one.\n * Core utility used in both instantiation and inheritance.\n */\nfunction mergeOptions (\n parent,\n child,\n vm\n) {\n if (process.env.NODE_ENV !== 'production') {\n checkComponents(child);\n }\n\n if (typeof child === 'function') {\n child = child.options;\n }\n\n normalizeProps(child, vm);\n normalizeInject(child, vm);\n normalizeDirectives(child);\n\n // Apply extends and mixins on the child options,\n // but only if it is a raw options object that isn't\n // the result of another mergeOptions call.\n // Only merged options has the _base property.\n if (!child._base) {\n if (child.extends) {\n parent = mergeOptions(parent, child.extends, vm);\n }\n if (child.mixins) {\n for (var i = 0, l = child.mixins.length; i < l; i++) {\n parent = mergeOptions(parent, child.mixins[i], vm);\n }\n }\n }\n\n var options = {};\n var key;\n for (key in parent) {\n mergeField(key);\n }\n for (key in child) {\n if (!hasOwn(parent, key)) {\n mergeField(key);\n }\n }\n function mergeField (key) {\n var strat = strats[key] || defaultStrat;\n options[key] = strat(parent[key], child[key], vm, key);\n }\n return options\n}\n\n/**\n * Resolve an asset.\n * This function is used because child instances need access\n * to assets defined in its ancestor chain.\n */\nfunction resolveAsset (\n options,\n type,\n id,\n warnMissing\n) {\n /* istanbul ignore if */\n if (typeof id !== 'string') {\n return\n }\n var assets = options[type];\n // check local registration variations first\n if (hasOwn(assets, id)) { return assets[id] }\n var camelizedId = camelize(id);\n if (hasOwn(assets, camelizedId)) { return assets[camelizedId] }\n var PascalCaseId = capitalize(camelizedId);\n if (hasOwn(assets, PascalCaseId)) { return assets[PascalCaseId] }\n // fallback to prototype chain\n var res = assets[id] || assets[camelizedId] || assets[PascalCaseId];\n if (process.env.NODE_ENV !== 'production' && warnMissing && !res) {\n warn(\n 'Failed to resolve ' + type.slice(0, -1) + ': ' + id,\n options\n );\n }\n return res\n}\n\n/* */\n\n\n\nfunction validateProp (\n key,\n propOptions,\n propsData,\n vm\n) {\n var prop = propOptions[key];\n var absent = !hasOwn(propsData, key);\n var value = propsData[key];\n // boolean casting\n var booleanIndex = getTypeIndex(Boolean, prop.type);\n if (booleanIndex > -1) {\n if (absent && !hasOwn(prop, 'default')) {\n value = false;\n } else if (value === '' || value === hyphenate(key)) {\n // only cast empty string / same name to boolean if\n // boolean has higher priority\n var stringIndex = getTypeIndex(String, prop.type);\n if (stringIndex < 0 || booleanIndex < stringIndex) {\n value = true;\n }\n }\n }\n // check default value\n if (value === undefined) {\n value = getPropDefaultValue(vm, prop, key);\n // since the default value is a fresh copy,\n // make sure to observe it.\n var prevShouldObserve = shouldObserve;\n toggleObserving(true);\n observe(value);\n toggleObserving(prevShouldObserve);\n }\n if (\n process.env.NODE_ENV !== 'production' &&\n // skip validation for weex recycle-list child component props\n !(false)\n ) {\n assertProp(prop, key, value, vm, absent);\n }\n return value\n}\n\n/**\n * Get the default value of a prop.\n */\nfunction getPropDefaultValue (vm, prop, key) {\n // no default, return undefined\n if (!hasOwn(prop, 'default')) {\n return undefined\n }\n var def = prop.default;\n // warn against non-factory defaults for Object & Array\n if (process.env.NODE_ENV !== 'production' && isObject(def)) {\n warn(\n 'Invalid default value for prop \"' + key + '\": ' +\n 'Props with type Object/Array must use a factory function ' +\n 'to return the default value.',\n vm\n );\n }\n // the raw prop value was also undefined from previous render,\n // return previous default value to avoid unnecessary watcher trigger\n if (vm && vm.$options.propsData &&\n vm.$options.propsData[key] === undefined &&\n vm._props[key] !== undefined\n ) {\n return vm._props[key]\n }\n // call factory function for non-Function types\n // a value is Function if its prototype is function even across different execution context\n return typeof def === 'function' && getType(prop.type) !== 'Function'\n ? def.call(vm)\n : def\n}\n\n/**\n * Assert whether a prop is valid.\n */\nfunction assertProp (\n prop,\n name,\n value,\n vm,\n absent\n) {\n if (prop.required && absent) {\n warn(\n 'Missing required prop: \"' + name + '\"',\n vm\n );\n return\n }\n if (value == null && !prop.required) {\n return\n }\n var type = prop.type;\n var valid = !type || type === true;\n var expectedTypes = [];\n if (type) {\n if (!Array.isArray(type)) {\n type = [type];\n }\n for (var i = 0; i < type.length && !valid; i++) {\n var assertedType = assertType(value, type[i]);\n expectedTypes.push(assertedType.expectedType || '');\n valid = assertedType.valid;\n }\n }\n\n if (!valid) {\n warn(\n getInvalidTypeMessage(name, value, expectedTypes),\n vm\n );\n return\n }\n var validator = prop.validator;\n if (validator) {\n if (!validator(value)) {\n warn(\n 'Invalid prop: custom validator check failed for prop \"' + name + '\".',\n vm\n );\n }\n }\n}\n\nvar simpleCheckRE = /^(String|Number|Boolean|Function|Symbol)$/;\n\nfunction assertType (value, type) {\n var valid;\n var expectedType = getType(type);\n if (simpleCheckRE.test(expectedType)) {\n var t = typeof value;\n valid = t === expectedType.toLowerCase();\n // for primitive wrapper objects\n if (!valid && t === 'object') {\n valid = value instanceof type;\n }\n } else if (expectedType === 'Object') {\n valid = isPlainObject(value);\n } else if (expectedType === 'Array') {\n valid = Array.isArray(value);\n } else {\n valid = value instanceof type;\n }\n return {\n valid: valid,\n expectedType: expectedType\n }\n}\n\n/**\n * Use function string name to check built-in types,\n * because a simple equality check will fail when running\n * across different vms / iframes.\n */\nfunction getType (fn) {\n var match = fn && fn.toString().match(/^\\s*function (\\w+)/);\n return match ? match[1] : ''\n}\n\nfunction isSameType (a, b) {\n return getType(a) === getType(b)\n}\n\nfunction getTypeIndex (type, expectedTypes) {\n if (!Array.isArray(expectedTypes)) {\n return isSameType(expectedTypes, type) ? 0 : -1\n }\n for (var i = 0, len = expectedTypes.length; i < len; i++) {\n if (isSameType(expectedTypes[i], type)) {\n return i\n }\n }\n return -1\n}\n\nfunction getInvalidTypeMessage (name, value, expectedTypes) {\n var message = \"Invalid prop: type check failed for prop \\\"\" + name + \"\\\".\" +\n \" Expected \" + (expectedTypes.map(capitalize).join(', '));\n var expectedType = expectedTypes[0];\n var receivedType = toRawType(value);\n var expectedValue = styleValue(value, expectedType);\n var receivedValue = styleValue(value, receivedType);\n // check if we need to specify expected value\n if (expectedTypes.length === 1 &&\n isExplicable(expectedType) &&\n !isBoolean(expectedType, receivedType)) {\n message += \" with value \" + expectedValue;\n }\n message += \", got \" + receivedType + \" \";\n // check if we need to specify received value\n if (isExplicable(receivedType)) {\n message += \"with value \" + receivedValue + \".\";\n }\n return message\n}\n\nfunction styleValue (value, type) {\n if (type === 'String') {\n return (\"\\\"\" + value + \"\\\"\")\n } else if (type === 'Number') {\n return (\"\" + (Number(value)))\n } else {\n return (\"\" + value)\n }\n}\n\nfunction isExplicable (value) {\n var explicitTypes = ['string', 'number', 'boolean'];\n return explicitTypes.some(function (elem) { return value.toLowerCase() === elem; })\n}\n\nfunction isBoolean () {\n var args = [], len = arguments.length;\n while ( len-- ) args[ len ] = arguments[ len ];\n\n return args.some(function (elem) { return elem.toLowerCase() === 'boolean'; })\n}\n\n/* */\n\nfunction handleError (err, vm, info) {\n // Deactivate deps tracking while processing error handler to avoid possible infinite rendering.\n // See: https://github.com/vuejs/vuex/issues/1505\n pushTarget();\n try {\n if (vm) {\n var cur = vm;\n while ((cur = cur.$parent)) {\n var hooks = cur.$options.errorCaptured;\n if (hooks) {\n for (var i = 0; i < hooks.length; i++) {\n try {\n var capture = hooks[i].call(cur, err, vm, info) === false;\n if (capture) { return }\n } catch (e) {\n globalHandleError(e, cur, 'errorCaptured hook');\n }\n }\n }\n }\n }\n globalHandleError(err, vm, info);\n } finally {\n popTarget();\n }\n}\n\nfunction invokeWithErrorHandling (\n handler,\n context,\n args,\n vm,\n info\n) {\n var res;\n try {\n res = args ? handler.apply(context, args) : handler.call(context);\n if (res && !res._isVue && isPromise(res) && !res._handled) {\n res.catch(function (e) { return handleError(e, vm, info + \" (Promise/async)\"); });\n // issue #9511\n // avoid catch triggering multiple times when nested calls\n res._handled = true;\n }\n } catch (e) {\n handleError(e, vm, info);\n }\n return res\n}\n\nfunction globalHandleError (err, vm, info) {\n if (config.errorHandler) {\n try {\n return config.errorHandler.call(null, err, vm, info)\n } catch (e) {\n // if the user intentionally throws the original error in the handler,\n // do not log it twice\n if (e !== err) {\n logError(e, null, 'config.errorHandler');\n }\n }\n }\n logError(err, vm, info);\n}\n\nfunction logError (err, vm, info) {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Error in \" + info + \": \\\"\" + (err.toString()) + \"\\\"\"), vm);\n }\n /* istanbul ignore else */\n if ((inBrowser || inWeex) && typeof console !== 'undefined') {\n console.error(err);\n } else {\n throw err\n }\n}\n\n/* */\n\nvar isUsingMicroTask = false;\n\nvar callbacks = [];\nvar pending = false;\n\nfunction flushCallbacks () {\n pending = false;\n var copies = callbacks.slice(0);\n callbacks.length = 0;\n for (var i = 0; i < copies.length; i++) {\n copies[i]();\n }\n}\n\n// Here we have async deferring wrappers using microtasks.\n// In 2.5 we used (macro) tasks (in combination with microtasks).\n// However, it has subtle problems when state is changed right before repaint\n// (e.g. #6813, out-in transitions).\n// Also, using (macro) tasks in event handler would cause some weird behaviors\n// that cannot be circumvented (e.g. #7109, #7153, #7546, #7834, #8109).\n// So we now use microtasks everywhere, again.\n// A major drawback of this tradeoff is that there are some scenarios\n// where microtasks have too high a priority and fire in between supposedly\n// sequential events (e.g. #4521, #6690, which have workarounds)\n// or even between bubbling of the same event (#6566).\nvar timerFunc;\n\n// The nextTick behavior leverages the microtask queue, which can be accessed\n// via either native Promise.then or MutationObserver.\n// MutationObserver has wider support, however it is seriously bugged in\n// UIWebView in iOS >= 9.3.3 when triggered in touch event handlers. It\n// completely stops working after triggering a few times... so, if native\n// Promise is available, we will use it:\n/* istanbul ignore next, $flow-disable-line */\nif (typeof Promise !== 'undefined' && isNative(Promise)) {\n var p = Promise.resolve();\n timerFunc = function () {\n p.then(flushCallbacks);\n // In problematic UIWebViews, Promise.then doesn't completely break, but\n // it can get stuck in a weird state where callbacks are pushed into the\n // microtask queue but the queue isn't being flushed, until the browser\n // needs to do some other work, e.g. handle a timer. Therefore we can\n // \"force\" the microtask queue to be flushed by adding an empty timer.\n if (isIOS) { setTimeout(noop); }\n };\n isUsingMicroTask = true;\n} else if (!isIE && typeof MutationObserver !== 'undefined' && (\n isNative(MutationObserver) ||\n // PhantomJS and iOS 7.x\n MutationObserver.toString() === '[object MutationObserverConstructor]'\n)) {\n // Use MutationObserver where native Promise is not available,\n // e.g. PhantomJS, iOS7, Android 4.4\n // (#6466 MutationObserver is unreliable in IE11)\n var counter = 1;\n var observer = new MutationObserver(flushCallbacks);\n var textNode = document.createTextNode(String(counter));\n observer.observe(textNode, {\n characterData: true\n });\n timerFunc = function () {\n counter = (counter + 1) % 2;\n textNode.data = String(counter);\n };\n isUsingMicroTask = true;\n} else if (typeof setImmediate !== 'undefined' && isNative(setImmediate)) {\n // Fallback to setImmediate.\n // Techinically it leverages the (macro) task queue,\n // but it is still a better choice than setTimeout.\n timerFunc = function () {\n setImmediate(flushCallbacks);\n };\n} else {\n // Fallback to setTimeout.\n timerFunc = function () {\n setTimeout(flushCallbacks, 0);\n };\n}\n\nfunction nextTick (cb, ctx) {\n var _resolve;\n callbacks.push(function () {\n if (cb) {\n try {\n cb.call(ctx);\n } catch (e) {\n handleError(e, ctx, 'nextTick');\n }\n } else if (_resolve) {\n _resolve(ctx);\n }\n });\n if (!pending) {\n pending = true;\n timerFunc();\n }\n // $flow-disable-line\n if (!cb && typeof Promise !== 'undefined') {\n return new Promise(function (resolve) {\n _resolve = resolve;\n })\n }\n}\n\n/* */\n\n/* not type checking this file because flow doesn't play well with Proxy */\n\nvar initProxy;\n\nif (process.env.NODE_ENV !== 'production') {\n var allowedGlobals = makeMap(\n 'Infinity,undefined,NaN,isFinite,isNaN,' +\n 'parseFloat,parseInt,decodeURI,decodeURIComponent,encodeURI,encodeURIComponent,' +\n 'Math,Number,Date,Array,Object,Boolean,String,RegExp,Map,Set,JSON,Intl,' +\n 'require' // for Webpack/Browserify\n );\n\n var warnNonPresent = function (target, key) {\n warn(\n \"Property or method \\\"\" + key + \"\\\" is not defined on the instance but \" +\n 'referenced during render. Make sure that this property is reactive, ' +\n 'either in the data option, or for class-based components, by ' +\n 'initializing the property. ' +\n 'See: https://vuejs.org/v2/guide/reactivity.html#Declaring-Reactive-Properties.',\n target\n );\n };\n\n var warnReservedPrefix = function (target, key) {\n warn(\n \"Property \\\"\" + key + \"\\\" must be accessed with \\\"$data.\" + key + \"\\\" because \" +\n 'properties starting with \"$\" or \"_\" are not proxied in the Vue instance to ' +\n 'prevent conflicts with Vue internals' +\n 'See: https://vuejs.org/v2/api/#data',\n target\n );\n };\n\n var hasProxy =\n typeof Proxy !== 'undefined' && isNative(Proxy);\n\n if (hasProxy) {\n var isBuiltInModifier = makeMap('stop,prevent,self,ctrl,shift,alt,meta,exact');\n config.keyCodes = new Proxy(config.keyCodes, {\n set: function set (target, key, value) {\n if (isBuiltInModifier(key)) {\n warn((\"Avoid overwriting built-in modifier in config.keyCodes: .\" + key));\n return false\n } else {\n target[key] = value;\n return true\n }\n }\n });\n }\n\n var hasHandler = {\n has: function has (target, key) {\n var has = key in target;\n var isAllowed = allowedGlobals(key) ||\n (typeof key === 'string' && key.charAt(0) === '_' && !(key in target.$data));\n if (!has && !isAllowed) {\n if (key in target.$data) { warnReservedPrefix(target, key); }\n else { warnNonPresent(target, key); }\n }\n return has || !isAllowed\n }\n };\n\n var getHandler = {\n get: function get (target, key) {\n if (typeof key === 'string' && !(key in target)) {\n if (key in target.$data) { warnReservedPrefix(target, key); }\n else { warnNonPresent(target, key); }\n }\n return target[key]\n }\n };\n\n initProxy = function initProxy (vm) {\n if (hasProxy) {\n // determine which proxy handler to use\n var options = vm.$options;\n var handlers = options.render && options.render._withStripped\n ? getHandler\n : hasHandler;\n vm._renderProxy = new Proxy(vm, handlers);\n } else {\n vm._renderProxy = vm;\n }\n };\n}\n\n/* */\n\nvar seenObjects = new _Set();\n\n/**\n * Recursively traverse an object to evoke all converted\n * getters, so that every nested property inside the object\n * is collected as a \"deep\" dependency.\n */\nfunction traverse (val) {\n _traverse(val, seenObjects);\n seenObjects.clear();\n}\n\nfunction _traverse (val, seen) {\n var i, keys;\n var isA = Array.isArray(val);\n if ((!isA && !isObject(val)) || Object.isFrozen(val) || val instanceof VNode) {\n return\n }\n if (val.__ob__) {\n var depId = val.__ob__.dep.id;\n if (seen.has(depId)) {\n return\n }\n seen.add(depId);\n }\n if (isA) {\n i = val.length;\n while (i--) { _traverse(val[i], seen); }\n } else {\n keys = Object.keys(val);\n i = keys.length;\n while (i--) { _traverse(val[keys[i]], seen); }\n }\n}\n\nvar mark;\nvar measure;\n\nif (process.env.NODE_ENV !== 'production') {\n var perf = inBrowser && window.performance;\n /* istanbul ignore if */\n if (\n perf &&\n perf.mark &&\n perf.measure &&\n perf.clearMarks &&\n perf.clearMeasures\n ) {\n mark = function (tag) { return perf.mark(tag); };\n measure = function (name, startTag, endTag) {\n perf.measure(name, startTag, endTag);\n perf.clearMarks(startTag);\n perf.clearMarks(endTag);\n // perf.clearMeasures(name)\n };\n }\n}\n\n/* */\n\nvar normalizeEvent = cached(function (name) {\n var passive = name.charAt(0) === '&';\n name = passive ? name.slice(1) : name;\n var once$$1 = name.charAt(0) === '~'; // Prefixed last, checked first\n name = once$$1 ? name.slice(1) : name;\n var capture = name.charAt(0) === '!';\n name = capture ? name.slice(1) : name;\n return {\n name: name,\n once: once$$1,\n capture: capture,\n passive: passive\n }\n});\n\nfunction createFnInvoker (fns, vm) {\n function invoker () {\n var arguments$1 = arguments;\n\n var fns = invoker.fns;\n if (Array.isArray(fns)) {\n var cloned = fns.slice();\n for (var i = 0; i < cloned.length; i++) {\n invokeWithErrorHandling(cloned[i], null, arguments$1, vm, \"v-on handler\");\n }\n } else {\n // return handler return value for single handlers\n return invokeWithErrorHandling(fns, null, arguments, vm, \"v-on handler\")\n }\n }\n invoker.fns = fns;\n return invoker\n}\n\nfunction updateListeners (\n on,\n oldOn,\n add,\n remove$$1,\n createOnceHandler,\n vm\n) {\n var name, def$$1, cur, old, event;\n for (name in on) {\n def$$1 = cur = on[name];\n old = oldOn[name];\n event = normalizeEvent(name);\n if (isUndef(cur)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Invalid handler for event \\\"\" + (event.name) + \"\\\": got \" + String(cur),\n vm\n );\n } else if (isUndef(old)) {\n if (isUndef(cur.fns)) {\n cur = on[name] = createFnInvoker(cur, vm);\n }\n if (isTrue(event.once)) {\n cur = on[name] = createOnceHandler(event.name, cur, event.capture);\n }\n add(event.name, cur, event.capture, event.passive, event.params);\n } else if (cur !== old) {\n old.fns = cur;\n on[name] = old;\n }\n }\n for (name in oldOn) {\n if (isUndef(on[name])) {\n event = normalizeEvent(name);\n remove$$1(event.name, oldOn[name], event.capture);\n }\n }\n}\n\n/* */\n\nfunction mergeVNodeHook (def, hookKey, hook) {\n if (def instanceof VNode) {\n def = def.data.hook || (def.data.hook = {});\n }\n var invoker;\n var oldHook = def[hookKey];\n\n function wrappedHook () {\n hook.apply(this, arguments);\n // important: remove merged hook to ensure it's called only once\n // and prevent memory leak\n remove(invoker.fns, wrappedHook);\n }\n\n if (isUndef(oldHook)) {\n // no existing hook\n invoker = createFnInvoker([wrappedHook]);\n } else {\n /* istanbul ignore if */\n if (isDef(oldHook.fns) && isTrue(oldHook.merged)) {\n // already a merged invoker\n invoker = oldHook;\n invoker.fns.push(wrappedHook);\n } else {\n // existing plain hook\n invoker = createFnInvoker([oldHook, wrappedHook]);\n }\n }\n\n invoker.merged = true;\n def[hookKey] = invoker;\n}\n\n/* */\n\nfunction extractPropsFromVNodeData (\n data,\n Ctor,\n tag\n) {\n // we are only extracting raw values here.\n // validation and default values are handled in the child\n // component itself.\n var propOptions = Ctor.options.props;\n if (isUndef(propOptions)) {\n return\n }\n var res = {};\n var attrs = data.attrs;\n var props = data.props;\n if (isDef(attrs) || isDef(props)) {\n for (var key in propOptions) {\n var altKey = hyphenate(key);\n if (process.env.NODE_ENV !== 'production') {\n var keyInLowerCase = key.toLowerCase();\n if (\n key !== keyInLowerCase &&\n attrs && hasOwn(attrs, keyInLowerCase)\n ) {\n tip(\n \"Prop \\\"\" + keyInLowerCase + \"\\\" is passed to component \" +\n (formatComponentName(tag || Ctor)) + \", but the declared prop name is\" +\n \" \\\"\" + key + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and camelCased \" +\n \"props need to use their kebab-case equivalents when using in-DOM \" +\n \"templates. You should probably use \\\"\" + altKey + \"\\\" instead of \\\"\" + key + \"\\\".\"\n );\n }\n }\n checkProp(res, props, key, altKey, true) ||\n checkProp(res, attrs, key, altKey, false);\n }\n }\n return res\n}\n\nfunction checkProp (\n res,\n hash,\n key,\n altKey,\n preserve\n) {\n if (isDef(hash)) {\n if (hasOwn(hash, key)) {\n res[key] = hash[key];\n if (!preserve) {\n delete hash[key];\n }\n return true\n } else if (hasOwn(hash, altKey)) {\n res[key] = hash[altKey];\n if (!preserve) {\n delete hash[altKey];\n }\n return true\n }\n }\n return false\n}\n\n/* */\n\n// The template compiler attempts to minimize the need for normalization by\n// statically analyzing the template at compile time.\n//\n// For plain HTML markup, normalization can be completely skipped because the\n// generated render function is guaranteed to return Array<VNode>. There are\n// two cases where extra normalization is needed:\n\n// 1. When the children contains components - because a functional component\n// may return an Array instead of a single root. In this case, just a simple\n// normalization is needed - if any child is an Array, we flatten the whole\n// thing with Array.prototype.concat. It is guaranteed to be only 1-level deep\n// because functional components already normalize their own children.\nfunction simpleNormalizeChildren (children) {\n for (var i = 0; i < children.length; i++) {\n if (Array.isArray(children[i])) {\n return Array.prototype.concat.apply([], children)\n }\n }\n return children\n}\n\n// 2. When the children contains constructs that always generated nested Arrays,\n// e.g. <template>, <slot>, v-for, or when the children is provided by user\n// with hand-written render functions / JSX. In such cases a full normalization\n// is needed to cater to all possible types of children values.\nfunction normalizeChildren (children) {\n return isPrimitive(children)\n ? [createTextVNode(children)]\n : Array.isArray(children)\n ? normalizeArrayChildren(children)\n : undefined\n}\n\nfunction isTextNode (node) {\n return isDef(node) && isDef(node.text) && isFalse(node.isComment)\n}\n\nfunction normalizeArrayChildren (children, nestedIndex) {\n var res = [];\n var i, c, lastIndex, last;\n for (i = 0; i < children.length; i++) {\n c = children[i];\n if (isUndef(c) || typeof c === 'boolean') { continue }\n lastIndex = res.length - 1;\n last = res[lastIndex];\n // nested\n if (Array.isArray(c)) {\n if (c.length > 0) {\n c = normalizeArrayChildren(c, ((nestedIndex || '') + \"_\" + i));\n // merge adjacent text nodes\n if (isTextNode(c[0]) && isTextNode(last)) {\n res[lastIndex] = createTextVNode(last.text + (c[0]).text);\n c.shift();\n }\n res.push.apply(res, c);\n }\n } else if (isPrimitive(c)) {\n if (isTextNode(last)) {\n // merge adjacent text nodes\n // this is necessary for SSR hydration because text nodes are\n // essentially merged when rendered to HTML strings\n res[lastIndex] = createTextVNode(last.text + c);\n } else if (c !== '') {\n // convert primitive to vnode\n res.push(createTextVNode(c));\n }\n } else {\n if (isTextNode(c) && isTextNode(last)) {\n // merge adjacent text nodes\n res[lastIndex] = createTextVNode(last.text + c.text);\n } else {\n // default key for nested array children (likely generated by v-for)\n if (isTrue(children._isVList) &&\n isDef(c.tag) &&\n isUndef(c.key) &&\n isDef(nestedIndex)) {\n c.key = \"__vlist\" + nestedIndex + \"_\" + i + \"__\";\n }\n res.push(c);\n }\n }\n }\n return res\n}\n\n/* */\n\nfunction initProvide (vm) {\n var provide = vm.$options.provide;\n if (provide) {\n vm._provided = typeof provide === 'function'\n ? provide.call(vm)\n : provide;\n }\n}\n\nfunction initInjections (vm) {\n var result = resolveInject(vm.$options.inject, vm);\n if (result) {\n toggleObserving(false);\n Object.keys(result).forEach(function (key) {\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n defineReactive$$1(vm, key, result[key], function () {\n warn(\n \"Avoid mutating an injected value directly since the changes will be \" +\n \"overwritten whenever the provided component re-renders. \" +\n \"injection being mutated: \\\"\" + key + \"\\\"\",\n vm\n );\n });\n } else {\n defineReactive$$1(vm, key, result[key]);\n }\n });\n toggleObserving(true);\n }\n}\n\nfunction resolveInject (inject, vm) {\n if (inject) {\n // inject is :any because flow is not smart enough to figure out cached\n var result = Object.create(null);\n var keys = hasSymbol\n ? Reflect.ownKeys(inject)\n : Object.keys(inject);\n\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n // #6574 in case the inject object is observed...\n if (key === '__ob__') { continue }\n var provideKey = inject[key].from;\n var source = vm;\n while (source) {\n if (source._provided && hasOwn(source._provided, provideKey)) {\n result[key] = source._provided[provideKey];\n break\n }\n source = source.$parent;\n }\n if (!source) {\n if ('default' in inject[key]) {\n var provideDefault = inject[key].default;\n result[key] = typeof provideDefault === 'function'\n ? provideDefault.call(vm)\n : provideDefault;\n } else if (process.env.NODE_ENV !== 'production') {\n warn((\"Injection \\\"\" + key + \"\\\" not found\"), vm);\n }\n }\n }\n return result\n }\n}\n\n/* */\n\n\n\n/**\n * Runtime helper for resolving raw children VNodes into a slot object.\n */\nfunction resolveSlots (\n children,\n context\n) {\n if (!children || !children.length) {\n return {}\n }\n var slots = {};\n for (var i = 0, l = children.length; i < l; i++) {\n var child = children[i];\n var data = child.data;\n // remove slot attribute if the node is resolved as a Vue slot node\n if (data && data.attrs && data.attrs.slot) {\n delete data.attrs.slot;\n }\n // named slots should only be respected if the vnode was rendered in the\n // same context.\n if ((child.context === context || child.fnContext === context) &&\n data && data.slot != null\n ) {\n var name = data.slot;\n var slot = (slots[name] || (slots[name] = []));\n if (child.tag === 'template') {\n slot.push.apply(slot, child.children || []);\n } else {\n slot.push(child);\n }\n } else {\n (slots.default || (slots.default = [])).push(child);\n }\n }\n // ignore slots that contains only whitespace\n for (var name$1 in slots) {\n if (slots[name$1].every(isWhitespace)) {\n delete slots[name$1];\n }\n }\n return slots\n}\n\nfunction isWhitespace (node) {\n return (node.isComment && !node.asyncFactory) || node.text === ' '\n}\n\n/* */\n\nfunction normalizeScopedSlots (\n slots,\n normalSlots,\n prevSlots\n) {\n var res;\n var hasNormalSlots = Object.keys(normalSlots).length > 0;\n var isStable = slots ? !!slots.$stable : !hasNormalSlots;\n var key = slots && slots.$key;\n if (!slots) {\n res = {};\n } else if (slots._normalized) {\n // fast path 1: child component re-render only, parent did not change\n return slots._normalized\n } else if (\n isStable &&\n prevSlots &&\n prevSlots !== emptyObject &&\n key === prevSlots.$key &&\n !hasNormalSlots &&\n !prevSlots.$hasNormal\n ) {\n // fast path 2: stable scoped slots w/ no normal slots to proxy,\n // only need to normalize once\n return prevSlots\n } else {\n res = {};\n for (var key$1 in slots) {\n if (slots[key$1] && key$1[0] !== '$') {\n res[key$1] = normalizeScopedSlot(normalSlots, key$1, slots[key$1]);\n }\n }\n }\n // expose normal slots on scopedSlots\n for (var key$2 in normalSlots) {\n if (!(key$2 in res)) {\n res[key$2] = proxyNormalSlot(normalSlots, key$2);\n }\n }\n // avoriaz seems to mock a non-extensible $scopedSlots object\n // and when that is passed down this would cause an error\n if (slots && Object.isExtensible(slots)) {\n (slots)._normalized = res;\n }\n def(res, '$stable', isStable);\n def(res, '$key', key);\n def(res, '$hasNormal', hasNormalSlots);\n return res\n}\n\nfunction normalizeScopedSlot(normalSlots, key, fn) {\n var normalized = function () {\n var res = arguments.length ? fn.apply(null, arguments) : fn({});\n res = res && typeof res === 'object' && !Array.isArray(res)\n ? [res] // single vnode\n : normalizeChildren(res);\n return res && (\n res.length === 0 ||\n (res.length === 1 && res[0].isComment) // #9658\n ) ? undefined\n : res\n };\n // this is a slot using the new v-slot syntax without scope. although it is\n // compiled as a scoped slot, render fn users would expect it to be present\n // on this.$slots because the usage is semantically a normal slot.\n if (fn.proxy) {\n Object.defineProperty(normalSlots, key, {\n get: normalized,\n enumerable: true,\n configurable: true\n });\n }\n return normalized\n}\n\nfunction proxyNormalSlot(slots, key) {\n return function () { return slots[key]; }\n}\n\n/* */\n\n/**\n * Runtime helper for rendering v-for lists.\n */\nfunction renderList (\n val,\n render\n) {\n var ret, i, l, keys, key;\n if (Array.isArray(val) || typeof val === 'string') {\n ret = new Array(val.length);\n for (i = 0, l = val.length; i < l; i++) {\n ret[i] = render(val[i], i);\n }\n } else if (typeof val === 'number') {\n ret = new Array(val);\n for (i = 0; i < val; i++) {\n ret[i] = render(i + 1, i);\n }\n } else if (isObject(val)) {\n if (hasSymbol && val[Symbol.iterator]) {\n ret = [];\n var iterator = val[Symbol.iterator]();\n var result = iterator.next();\n while (!result.done) {\n ret.push(render(result.value, ret.length));\n result = iterator.next();\n }\n } else {\n keys = Object.keys(val);\n ret = new Array(keys.length);\n for (i = 0, l = keys.length; i < l; i++) {\n key = keys[i];\n ret[i] = render(val[key], key, i);\n }\n }\n }\n if (!isDef(ret)) {\n ret = [];\n }\n (ret)._isVList = true;\n return ret\n}\n\n/* */\n\n/**\n * Runtime helper for rendering <slot>\n */\nfunction renderSlot (\n name,\n fallback,\n props,\n bindObject\n) {\n var scopedSlotFn = this.$scopedSlots[name];\n var nodes;\n if (scopedSlotFn) { // scoped slot\n props = props || {};\n if (bindObject) {\n if (process.env.NODE_ENV !== 'production' && !isObject(bindObject)) {\n warn(\n 'slot v-bind without argument expects an Object',\n this\n );\n }\n props = extend(extend({}, bindObject), props);\n }\n nodes = scopedSlotFn(props) || fallback;\n } else {\n nodes = this.$slots[name] || fallback;\n }\n\n var target = props && props.slot;\n if (target) {\n return this.$createElement('template', { slot: target }, nodes)\n } else {\n return nodes\n }\n}\n\n/* */\n\n/**\n * Runtime helper for resolving filters\n */\nfunction resolveFilter (id) {\n return resolveAsset(this.$options, 'filters', id, true) || identity\n}\n\n/* */\n\nfunction isKeyNotMatch (expect, actual) {\n if (Array.isArray(expect)) {\n return expect.indexOf(actual) === -1\n } else {\n return expect !== actual\n }\n}\n\n/**\n * Runtime helper for checking keyCodes from config.\n * exposed as Vue.prototype._k\n * passing in eventKeyName as last argument separately for backwards compat\n */\nfunction checkKeyCodes (\n eventKeyCode,\n key,\n builtInKeyCode,\n eventKeyName,\n builtInKeyName\n) {\n var mappedKeyCode = config.keyCodes[key] || builtInKeyCode;\n if (builtInKeyName && eventKeyName && !config.keyCodes[key]) {\n return isKeyNotMatch(builtInKeyName, eventKeyName)\n } else if (mappedKeyCode) {\n return isKeyNotMatch(mappedKeyCode, eventKeyCode)\n } else if (eventKeyName) {\n return hyphenate(eventKeyName) !== key\n }\n}\n\n/* */\n\n/**\n * Runtime helper for merging v-bind=\"object\" into a VNode's data.\n */\nfunction bindObjectProps (\n data,\n tag,\n value,\n asProp,\n isSync\n) {\n if (value) {\n if (!isObject(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'v-bind without argument expects an Object or Array value',\n this\n );\n } else {\n if (Array.isArray(value)) {\n value = toObject(value);\n }\n var hash;\n var loop = function ( key ) {\n if (\n key === 'class' ||\n key === 'style' ||\n isReservedAttribute(key)\n ) {\n hash = data;\n } else {\n var type = data.attrs && data.attrs.type;\n hash = asProp || config.mustUseProp(tag, type, key)\n ? data.domProps || (data.domProps = {})\n : data.attrs || (data.attrs = {});\n }\n var camelizedKey = camelize(key);\n var hyphenatedKey = hyphenate(key);\n if (!(camelizedKey in hash) && !(hyphenatedKey in hash)) {\n hash[key] = value[key];\n\n if (isSync) {\n var on = data.on || (data.on = {});\n on[(\"update:\" + key)] = function ($event) {\n value[key] = $event;\n };\n }\n }\n };\n\n for (var key in value) loop( key );\n }\n }\n return data\n}\n\n/* */\n\n/**\n * Runtime helper for rendering static trees.\n */\nfunction renderStatic (\n index,\n isInFor\n) {\n var cached = this._staticTrees || (this._staticTrees = []);\n var tree = cached[index];\n // if has already-rendered static tree and not inside v-for,\n // we can reuse the same tree.\n if (tree && !isInFor) {\n return tree\n }\n // otherwise, render a fresh tree.\n tree = cached[index] = this.$options.staticRenderFns[index].call(\n this._renderProxy,\n null,\n this // for render fns generated for functional component templates\n );\n markStatic(tree, (\"__static__\" + index), false);\n return tree\n}\n\n/**\n * Runtime helper for v-once.\n * Effectively it means marking the node as static with a unique key.\n */\nfunction markOnce (\n tree,\n index,\n key\n) {\n markStatic(tree, (\"__once__\" + index + (key ? (\"_\" + key) : \"\")), true);\n return tree\n}\n\nfunction markStatic (\n tree,\n key,\n isOnce\n) {\n if (Array.isArray(tree)) {\n for (var i = 0; i < tree.length; i++) {\n if (tree[i] && typeof tree[i] !== 'string') {\n markStaticNode(tree[i], (key + \"_\" + i), isOnce);\n }\n }\n } else {\n markStaticNode(tree, key, isOnce);\n }\n}\n\nfunction markStaticNode (node, key, isOnce) {\n node.isStatic = true;\n node.key = key;\n node.isOnce = isOnce;\n}\n\n/* */\n\nfunction bindObjectListeners (data, value) {\n if (value) {\n if (!isPlainObject(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n 'v-on without argument expects an Object value',\n this\n );\n } else {\n var on = data.on = data.on ? extend({}, data.on) : {};\n for (var key in value) {\n var existing = on[key];\n var ours = value[key];\n on[key] = existing ? [].concat(existing, ours) : ours;\n }\n }\n }\n return data\n}\n\n/* */\n\nfunction resolveScopedSlots (\n fns, // see flow/vnode\n res,\n // the following are added in 2.6\n hasDynamicKeys,\n contentHashKey\n) {\n res = res || { $stable: !hasDynamicKeys };\n for (var i = 0; i < fns.length; i++) {\n var slot = fns[i];\n if (Array.isArray(slot)) {\n resolveScopedSlots(slot, res, hasDynamicKeys);\n } else if (slot) {\n // marker for reverse proxying v-slot without scope on this.$slots\n if (slot.proxy) {\n slot.fn.proxy = true;\n }\n res[slot.key] = slot.fn;\n }\n }\n if (contentHashKey) {\n (res).$key = contentHashKey;\n }\n return res\n}\n\n/* */\n\nfunction bindDynamicKeys (baseObj, values) {\n for (var i = 0; i < values.length; i += 2) {\n var key = values[i];\n if (typeof key === 'string' && key) {\n baseObj[values[i]] = values[i + 1];\n } else if (process.env.NODE_ENV !== 'production' && key !== '' && key !== null) {\n // null is a speical value for explicitly removing a binding\n warn(\n (\"Invalid value for dynamic directive argument (expected string or null): \" + key),\n this\n );\n }\n }\n return baseObj\n}\n\n// helper to dynamically append modifier runtime markers to event names.\n// ensure only append when value is already string, otherwise it will be cast\n// to string and cause the type check to miss.\nfunction prependModifier (value, symbol) {\n return typeof value === 'string' ? symbol + value : value\n}\n\n/* */\n\nfunction installRenderHelpers (target) {\n target._o = markOnce;\n target._n = toNumber;\n target._s = toString;\n target._l = renderList;\n target._t = renderSlot;\n target._q = looseEqual;\n target._i = looseIndexOf;\n target._m = renderStatic;\n target._f = resolveFilter;\n target._k = checkKeyCodes;\n target._b = bindObjectProps;\n target._v = createTextVNode;\n target._e = createEmptyVNode;\n target._u = resolveScopedSlots;\n target._g = bindObjectListeners;\n target._d = bindDynamicKeys;\n target._p = prependModifier;\n}\n\n/* */\n\nfunction FunctionalRenderContext (\n data,\n props,\n children,\n parent,\n Ctor\n) {\n var this$1 = this;\n\n var options = Ctor.options;\n // ensure the createElement function in functional components\n // gets a unique context - this is necessary for correct named slot check\n var contextVm;\n if (hasOwn(parent, '_uid')) {\n contextVm = Object.create(parent);\n // $flow-disable-line\n contextVm._original = parent;\n } else {\n // the context vm passed in is a functional context as well.\n // in this case we want to make sure we are able to get a hold to the\n // real context instance.\n contextVm = parent;\n // $flow-disable-line\n parent = parent._original;\n }\n var isCompiled = isTrue(options._compiled);\n var needNormalization = !isCompiled;\n\n this.data = data;\n this.props = props;\n this.children = children;\n this.parent = parent;\n this.listeners = data.on || emptyObject;\n this.injections = resolveInject(options.inject, parent);\n this.slots = function () {\n if (!this$1.$slots) {\n normalizeScopedSlots(\n data.scopedSlots,\n this$1.$slots = resolveSlots(children, parent)\n );\n }\n return this$1.$slots\n };\n\n Object.defineProperty(this, 'scopedSlots', ({\n enumerable: true,\n get: function get () {\n return normalizeScopedSlots(data.scopedSlots, this.slots())\n }\n }));\n\n // support for compiled functional template\n if (isCompiled) {\n // exposing $options for renderStatic()\n this.$options = options;\n // pre-resolve slots for renderSlot()\n this.$slots = this.slots();\n this.$scopedSlots = normalizeScopedSlots(data.scopedSlots, this.$slots);\n }\n\n if (options._scopeId) {\n this._c = function (a, b, c, d) {\n var vnode = createElement(contextVm, a, b, c, d, needNormalization);\n if (vnode && !Array.isArray(vnode)) {\n vnode.fnScopeId = options._scopeId;\n vnode.fnContext = parent;\n }\n return vnode\n };\n } else {\n this._c = function (a, b, c, d) { return createElement(contextVm, a, b, c, d, needNormalization); };\n }\n}\n\ninstallRenderHelpers(FunctionalRenderContext.prototype);\n\nfunction createFunctionalComponent (\n Ctor,\n propsData,\n data,\n contextVm,\n children\n) {\n var options = Ctor.options;\n var props = {};\n var propOptions = options.props;\n if (isDef(propOptions)) {\n for (var key in propOptions) {\n props[key] = validateProp(key, propOptions, propsData || emptyObject);\n }\n } else {\n if (isDef(data.attrs)) { mergeProps(props, data.attrs); }\n if (isDef(data.props)) { mergeProps(props, data.props); }\n }\n\n var renderContext = new FunctionalRenderContext(\n data,\n props,\n children,\n contextVm,\n Ctor\n );\n\n var vnode = options.render.call(null, renderContext._c, renderContext);\n\n if (vnode instanceof VNode) {\n return cloneAndMarkFunctionalResult(vnode, data, renderContext.parent, options, renderContext)\n } else if (Array.isArray(vnode)) {\n var vnodes = normalizeChildren(vnode) || [];\n var res = new Array(vnodes.length);\n for (var i = 0; i < vnodes.length; i++) {\n res[i] = cloneAndMarkFunctionalResult(vnodes[i], data, renderContext.parent, options, renderContext);\n }\n return res\n }\n}\n\nfunction cloneAndMarkFunctionalResult (vnode, data, contextVm, options, renderContext) {\n // #7817 clone node before setting fnContext, otherwise if the node is reused\n // (e.g. it was from a cached normal slot) the fnContext causes named slots\n // that should not be matched to match.\n var clone = cloneVNode(vnode);\n clone.fnContext = contextVm;\n clone.fnOptions = options;\n if (process.env.NODE_ENV !== 'production') {\n (clone.devtoolsMeta = clone.devtoolsMeta || {}).renderContext = renderContext;\n }\n if (data.slot) {\n (clone.data || (clone.data = {})).slot = data.slot;\n }\n return clone\n}\n\nfunction mergeProps (to, from) {\n for (var key in from) {\n to[camelize(key)] = from[key];\n }\n}\n\n/* */\n\n/* */\n\n/* */\n\n/* */\n\n// inline hooks to be invoked on component VNodes during patch\nvar componentVNodeHooks = {\n init: function init (vnode, hydrating) {\n if (\n vnode.componentInstance &&\n !vnode.componentInstance._isDestroyed &&\n vnode.data.keepAlive\n ) {\n // kept-alive components, treat as a patch\n var mountedNode = vnode; // work around flow\n componentVNodeHooks.prepatch(mountedNode, mountedNode);\n } else {\n var child = vnode.componentInstance = createComponentInstanceForVnode(\n vnode,\n activeInstance\n );\n child.$mount(hydrating ? vnode.elm : undefined, hydrating);\n }\n },\n\n prepatch: function prepatch (oldVnode, vnode) {\n var options = vnode.componentOptions;\n var child = vnode.componentInstance = oldVnode.componentInstance;\n updateChildComponent(\n child,\n options.propsData, // updated props\n options.listeners, // updated listeners\n vnode, // new parent vnode\n options.children // new children\n );\n },\n\n insert: function insert (vnode) {\n var context = vnode.context;\n var componentInstance = vnode.componentInstance;\n if (!componentInstance._isMounted) {\n componentInstance._isMounted = true;\n callHook(componentInstance, 'mounted');\n }\n if (vnode.data.keepAlive) {\n if (context._isMounted) {\n // vue-router#1212\n // During updates, a kept-alive component's child components may\n // change, so directly walking the tree here may call activated hooks\n // on incorrect children. Instead we push them into a queue which will\n // be processed after the whole patch process ended.\n queueActivatedComponent(componentInstance);\n } else {\n activateChildComponent(componentInstance, true /* direct */);\n }\n }\n },\n\n destroy: function destroy (vnode) {\n var componentInstance = vnode.componentInstance;\n if (!componentInstance._isDestroyed) {\n if (!vnode.data.keepAlive) {\n componentInstance.$destroy();\n } else {\n deactivateChildComponent(componentInstance, true /* direct */);\n }\n }\n }\n};\n\nvar hooksToMerge = Object.keys(componentVNodeHooks);\n\nfunction createComponent (\n Ctor,\n data,\n context,\n children,\n tag\n) {\n if (isUndef(Ctor)) {\n return\n }\n\n var baseCtor = context.$options._base;\n\n // plain options object: turn it into a constructor\n if (isObject(Ctor)) {\n Ctor = baseCtor.extend(Ctor);\n }\n\n // if at this stage it's not a constructor or an async component factory,\n // reject.\n if (typeof Ctor !== 'function') {\n if (process.env.NODE_ENV !== 'production') {\n warn((\"Invalid Component definition: \" + (String(Ctor))), context);\n }\n return\n }\n\n // async component\n var asyncFactory;\n if (isUndef(Ctor.cid)) {\n asyncFactory = Ctor;\n Ctor = resolveAsyncComponent(asyncFactory, baseCtor);\n if (Ctor === undefined) {\n // return a placeholder node for async component, which is rendered\n // as a comment node but preserves all the raw information for the node.\n // the information will be used for async server-rendering and hydration.\n return createAsyncPlaceholder(\n asyncFactory,\n data,\n context,\n children,\n tag\n )\n }\n }\n\n data = data || {};\n\n // resolve constructor options in case global mixins are applied after\n // component constructor creation\n resolveConstructorOptions(Ctor);\n\n // transform component v-model data into props & events\n if (isDef(data.model)) {\n transformModel(Ctor.options, data);\n }\n\n // extract props\n var propsData = extractPropsFromVNodeData(data, Ctor, tag);\n\n // functional component\n if (isTrue(Ctor.options.functional)) {\n return createFunctionalComponent(Ctor, propsData, data, context, children)\n }\n\n // extract listeners, since these needs to be treated as\n // child component listeners instead of DOM listeners\n var listeners = data.on;\n // replace with listeners with .native modifier\n // so it gets processed during parent component patch.\n data.on = data.nativeOn;\n\n if (isTrue(Ctor.options.abstract)) {\n // abstract components do not keep anything\n // other than props & listeners & slot\n\n // work around flow\n var slot = data.slot;\n data = {};\n if (slot) {\n data.slot = slot;\n }\n }\n\n // install component management hooks onto the placeholder node\n installComponentHooks(data);\n\n // return a placeholder vnode\n var name = Ctor.options.name || tag;\n var vnode = new VNode(\n (\"vue-component-\" + (Ctor.cid) + (name ? (\"-\" + name) : '')),\n data, undefined, undefined, undefined, context,\n { Ctor: Ctor, propsData: propsData, listeners: listeners, tag: tag, children: children },\n asyncFactory\n );\n\n return vnode\n}\n\nfunction createComponentInstanceForVnode (\n vnode, // we know it's MountedComponentVNode but flow doesn't\n parent // activeInstance in lifecycle state\n) {\n var options = {\n _isComponent: true,\n _parentVnode: vnode,\n parent: parent\n };\n // check inline-template render functions\n var inlineTemplate = vnode.data.inlineTemplate;\n if (isDef(inlineTemplate)) {\n options.render = inlineTemplate.render;\n options.staticRenderFns = inlineTemplate.staticRenderFns;\n }\n return new vnode.componentOptions.Ctor(options)\n}\n\nfunction installComponentHooks (data) {\n var hooks = data.hook || (data.hook = {});\n for (var i = 0; i < hooksToMerge.length; i++) {\n var key = hooksToMerge[i];\n var existing = hooks[key];\n var toMerge = componentVNodeHooks[key];\n if (existing !== toMerge && !(existing && existing._merged)) {\n hooks[key] = existing ? mergeHook$1(toMerge, existing) : toMerge;\n }\n }\n}\n\nfunction mergeHook$1 (f1, f2) {\n var merged = function (a, b) {\n // flow complains about extra args which is why we use any\n f1(a, b);\n f2(a, b);\n };\n merged._merged = true;\n return merged\n}\n\n// transform component v-model info (value and callback) into\n// prop and event handler respectively.\nfunction transformModel (options, data) {\n var prop = (options.model && options.model.prop) || 'value';\n var event = (options.model && options.model.event) || 'input'\n ;(data.attrs || (data.attrs = {}))[prop] = data.model.value;\n var on = data.on || (data.on = {});\n var existing = on[event];\n var callback = data.model.callback;\n if (isDef(existing)) {\n if (\n Array.isArray(existing)\n ? existing.indexOf(callback) === -1\n : existing !== callback\n ) {\n on[event] = [callback].concat(existing);\n }\n } else {\n on[event] = callback;\n }\n}\n\n/* */\n\nvar SIMPLE_NORMALIZE = 1;\nvar ALWAYS_NORMALIZE = 2;\n\n// wrapper function for providing a more flexible interface\n// without getting yelled at by flow\nfunction createElement (\n context,\n tag,\n data,\n children,\n normalizationType,\n alwaysNormalize\n) {\n if (Array.isArray(data) || isPrimitive(data)) {\n normalizationType = children;\n children = data;\n data = undefined;\n }\n if (isTrue(alwaysNormalize)) {\n normalizationType = ALWAYS_NORMALIZE;\n }\n return _createElement(context, tag, data, children, normalizationType)\n}\n\nfunction _createElement (\n context,\n tag,\n data,\n children,\n normalizationType\n) {\n if (isDef(data) && isDef((data).__ob__)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Avoid using observed data object as vnode data: \" + (JSON.stringify(data)) + \"\\n\" +\n 'Always create fresh vnode data objects in each render!',\n context\n );\n return createEmptyVNode()\n }\n // object syntax in v-bind\n if (isDef(data) && isDef(data.is)) {\n tag = data.is;\n }\n if (!tag) {\n // in case of component :is set to falsy value\n return createEmptyVNode()\n }\n // warn against non-primitive key\n if (process.env.NODE_ENV !== 'production' &&\n isDef(data) && isDef(data.key) && !isPrimitive(data.key)\n ) {\n {\n warn(\n 'Avoid using non-primitive value as key, ' +\n 'use string/number value instead.',\n context\n );\n }\n }\n // support single function children as default scoped slot\n if (Array.isArray(children) &&\n typeof children[0] === 'function'\n ) {\n data = data || {};\n data.scopedSlots = { default: children[0] };\n children.length = 0;\n }\n if (normalizationType === ALWAYS_NORMALIZE) {\n children = normalizeChildren(children);\n } else if (normalizationType === SIMPLE_NORMALIZE) {\n children = simpleNormalizeChildren(children);\n }\n var vnode, ns;\n if (typeof tag === 'string') {\n var Ctor;\n ns = (context.$vnode && context.$vnode.ns) || config.getTagNamespace(tag);\n if (config.isReservedTag(tag)) {\n // platform built-in elements\n vnode = new VNode(\n config.parsePlatformTagName(tag), data, children,\n undefined, undefined, context\n );\n } else if ((!data || !data.pre) && isDef(Ctor = resolveAsset(context.$options, 'components', tag))) {\n // component\n vnode = createComponent(Ctor, data, context, children, tag);\n } else {\n // unknown or unlisted namespaced elements\n // check at runtime because it may get assigned a namespace when its\n // parent normalizes children\n vnode = new VNode(\n tag, data, children,\n undefined, undefined, context\n );\n }\n } else {\n // direct component options / constructor\n vnode = createComponent(tag, data, context, children);\n }\n if (Array.isArray(vnode)) {\n return vnode\n } else if (isDef(vnode)) {\n if (isDef(ns)) { applyNS(vnode, ns); }\n if (isDef(data)) { registerDeepBindings(data); }\n return vnode\n } else {\n return createEmptyVNode()\n }\n}\n\nfunction applyNS (vnode, ns, force) {\n vnode.ns = ns;\n if (vnode.tag === 'foreignObject') {\n // use default namespace inside foreignObject\n ns = undefined;\n force = true;\n }\n if (isDef(vnode.children)) {\n for (var i = 0, l = vnode.children.length; i < l; i++) {\n var child = vnode.children[i];\n if (isDef(child.tag) && (\n isUndef(child.ns) || (isTrue(force) && child.tag !== 'svg'))) {\n applyNS(child, ns, force);\n }\n }\n }\n}\n\n// ref #5318\n// necessary to ensure parent re-render when deep bindings like :style and\n// :class are used on slot nodes\nfunction registerDeepBindings (data) {\n if (isObject(data.style)) {\n traverse(data.style);\n }\n if (isObject(data.class)) {\n traverse(data.class);\n }\n}\n\n/* */\n\nfunction initRender (vm) {\n vm._vnode = null; // the root of the child tree\n vm._staticTrees = null; // v-once cached trees\n var options = vm.$options;\n var parentVnode = vm.$vnode = options._parentVnode; // the placeholder node in parent tree\n var renderContext = parentVnode && parentVnode.context;\n vm.$slots = resolveSlots(options._renderChildren, renderContext);\n vm.$scopedSlots = emptyObject;\n // bind the createElement fn to this instance\n // so that we get proper render context inside it.\n // args order: tag, data, children, normalizationType, alwaysNormalize\n // internal version is used by render functions compiled from templates\n vm._c = function (a, b, c, d) { return createElement(vm, a, b, c, d, false); };\n // normalization is always applied for the public version, used in\n // user-written render functions.\n vm.$createElement = function (a, b, c, d) { return createElement(vm, a, b, c, d, true); };\n\n // $attrs & $listeners are exposed for easier HOC creation.\n // they need to be reactive so that HOCs using them are always updated\n var parentData = parentVnode && parentVnode.data;\n\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n defineReactive$$1(vm, '$attrs', parentData && parentData.attrs || emptyObject, function () {\n !isUpdatingChildComponent && warn(\"$attrs is readonly.\", vm);\n }, true);\n defineReactive$$1(vm, '$listeners', options._parentListeners || emptyObject, function () {\n !isUpdatingChildComponent && warn(\"$listeners is readonly.\", vm);\n }, true);\n } else {\n defineReactive$$1(vm, '$attrs', parentData && parentData.attrs || emptyObject, null, true);\n defineReactive$$1(vm, '$listeners', options._parentListeners || emptyObject, null, true);\n }\n}\n\nvar currentRenderingInstance = null;\n\nfunction renderMixin (Vue) {\n // install runtime convenience helpers\n installRenderHelpers(Vue.prototype);\n\n Vue.prototype.$nextTick = function (fn) {\n return nextTick(fn, this)\n };\n\n Vue.prototype._render = function () {\n var vm = this;\n var ref = vm.$options;\n var render = ref.render;\n var _parentVnode = ref._parentVnode;\n\n if (_parentVnode) {\n vm.$scopedSlots = normalizeScopedSlots(\n _parentVnode.data.scopedSlots,\n vm.$slots,\n vm.$scopedSlots\n );\n }\n\n // set parent vnode. this allows render functions to have access\n // to the data on the placeholder node.\n vm.$vnode = _parentVnode;\n // render self\n var vnode;\n try {\n // There's no need to maintain a stack becaues all render fns are called\n // separately from one another. Nested component's render fns are called\n // when parent component is patched.\n currentRenderingInstance = vm;\n vnode = render.call(vm._renderProxy, vm.$createElement);\n } catch (e) {\n handleError(e, vm, \"render\");\n // return error render result,\n // or previous vnode to prevent render error causing blank component\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production' && vm.$options.renderError) {\n try {\n vnode = vm.$options.renderError.call(vm._renderProxy, vm.$createElement, e);\n } catch (e) {\n handleError(e, vm, \"renderError\");\n vnode = vm._vnode;\n }\n } else {\n vnode = vm._vnode;\n }\n } finally {\n currentRenderingInstance = null;\n }\n // if the returned array contains only a single node, allow it\n if (Array.isArray(vnode) && vnode.length === 1) {\n vnode = vnode[0];\n }\n // return empty vnode in case the render function errored out\n if (!(vnode instanceof VNode)) {\n if (process.env.NODE_ENV !== 'production' && Array.isArray(vnode)) {\n warn(\n 'Multiple root nodes returned from render function. Render function ' +\n 'should return a single root node.',\n vm\n );\n }\n vnode = createEmptyVNode();\n }\n // set parent\n vnode.parent = _parentVnode;\n return vnode\n };\n}\n\n/* */\n\nfunction ensureCtor (comp, base) {\n if (\n comp.__esModule ||\n (hasSymbol && comp[Symbol.toStringTag] === 'Module')\n ) {\n comp = comp.default;\n }\n return isObject(comp)\n ? base.extend(comp)\n : comp\n}\n\nfunction createAsyncPlaceholder (\n factory,\n data,\n context,\n children,\n tag\n) {\n var node = createEmptyVNode();\n node.asyncFactory = factory;\n node.asyncMeta = { data: data, context: context, children: children, tag: tag };\n return node\n}\n\nfunction resolveAsyncComponent (\n factory,\n baseCtor\n) {\n if (isTrue(factory.error) && isDef(factory.errorComp)) {\n return factory.errorComp\n }\n\n if (isDef(factory.resolved)) {\n return factory.resolved\n }\n\n var owner = currentRenderingInstance;\n if (owner && isDef(factory.owners) && factory.owners.indexOf(owner) === -1) {\n // already pending\n factory.owners.push(owner);\n }\n\n if (isTrue(factory.loading) && isDef(factory.loadingComp)) {\n return factory.loadingComp\n }\n\n if (owner && !isDef(factory.owners)) {\n var owners = factory.owners = [owner];\n var sync = true;\n var timerLoading = null;\n var timerTimeout = null\n\n ;(owner).$on('hook:destroyed', function () { return remove(owners, owner); });\n\n var forceRender = function (renderCompleted) {\n for (var i = 0, l = owners.length; i < l; i++) {\n (owners[i]).$forceUpdate();\n }\n\n if (renderCompleted) {\n owners.length = 0;\n if (timerLoading !== null) {\n clearTimeout(timerLoading);\n timerLoading = null;\n }\n if (timerTimeout !== null) {\n clearTimeout(timerTimeout);\n timerTimeout = null;\n }\n }\n };\n\n var resolve = once(function (res) {\n // cache resolved\n factory.resolved = ensureCtor(res, baseCtor);\n // invoke callbacks only if this is not a synchronous resolve\n // (async resolves are shimmed as synchronous during SSR)\n if (!sync) {\n forceRender(true);\n } else {\n owners.length = 0;\n }\n });\n\n var reject = once(function (reason) {\n process.env.NODE_ENV !== 'production' && warn(\n \"Failed to resolve async component: \" + (String(factory)) +\n (reason ? (\"\\nReason: \" + reason) : '')\n );\n if (isDef(factory.errorComp)) {\n factory.error = true;\n forceRender(true);\n }\n });\n\n var res = factory(resolve, reject);\n\n if (isObject(res)) {\n if (isPromise(res)) {\n // () => Promise\n if (isUndef(factory.resolved)) {\n res.then(resolve, reject);\n }\n } else if (isPromise(res.component)) {\n res.component.then(resolve, reject);\n\n if (isDef(res.error)) {\n factory.errorComp = ensureCtor(res.error, baseCtor);\n }\n\n if (isDef(res.loading)) {\n factory.loadingComp = ensureCtor(res.loading, baseCtor);\n if (res.delay === 0) {\n factory.loading = true;\n } else {\n timerLoading = setTimeout(function () {\n timerLoading = null;\n if (isUndef(factory.resolved) && isUndef(factory.error)) {\n factory.loading = true;\n forceRender(false);\n }\n }, res.delay || 200);\n }\n }\n\n if (isDef(res.timeout)) {\n timerTimeout = setTimeout(function () {\n timerTimeout = null;\n if (isUndef(factory.resolved)) {\n reject(\n process.env.NODE_ENV !== 'production'\n ? (\"timeout (\" + (res.timeout) + \"ms)\")\n : null\n );\n }\n }, res.timeout);\n }\n }\n }\n\n sync = false;\n // return in case resolved synchronously\n return factory.loading\n ? factory.loadingComp\n : factory.resolved\n }\n}\n\n/* */\n\nfunction isAsyncPlaceholder (node) {\n return node.isComment && node.asyncFactory\n}\n\n/* */\n\nfunction getFirstComponentChild (children) {\n if (Array.isArray(children)) {\n for (var i = 0; i < children.length; i++) {\n var c = children[i];\n if (isDef(c) && (isDef(c.componentOptions) || isAsyncPlaceholder(c))) {\n return c\n }\n }\n }\n}\n\n/* */\n\n/* */\n\nfunction initEvents (vm) {\n vm._events = Object.create(null);\n vm._hasHookEvent = false;\n // init parent attached events\n var listeners = vm.$options._parentListeners;\n if (listeners) {\n updateComponentListeners(vm, listeners);\n }\n}\n\nvar target;\n\nfunction add (event, fn) {\n target.$on(event, fn);\n}\n\nfunction remove$1 (event, fn) {\n target.$off(event, fn);\n}\n\nfunction createOnceHandler (event, fn) {\n var _target = target;\n return function onceHandler () {\n var res = fn.apply(null, arguments);\n if (res !== null) {\n _target.$off(event, onceHandler);\n }\n }\n}\n\nfunction updateComponentListeners (\n vm,\n listeners,\n oldListeners\n) {\n target = vm;\n updateListeners(listeners, oldListeners || {}, add, remove$1, createOnceHandler, vm);\n target = undefined;\n}\n\nfunction eventsMixin (Vue) {\n var hookRE = /^hook:/;\n Vue.prototype.$on = function (event, fn) {\n var vm = this;\n if (Array.isArray(event)) {\n for (var i = 0, l = event.length; i < l; i++) {\n vm.$on(event[i], fn);\n }\n } else {\n (vm._events[event] || (vm._events[event] = [])).push(fn);\n // optimize hook:event cost by using a boolean flag marked at registration\n // instead of a hash lookup\n if (hookRE.test(event)) {\n vm._hasHookEvent = true;\n }\n }\n return vm\n };\n\n Vue.prototype.$once = function (event, fn) {\n var vm = this;\n function on () {\n vm.$off(event, on);\n fn.apply(vm, arguments);\n }\n on.fn = fn;\n vm.$on(event, on);\n return vm\n };\n\n Vue.prototype.$off = function (event, fn) {\n var vm = this;\n // all\n if (!arguments.length) {\n vm._events = Object.create(null);\n return vm\n }\n // array of events\n if (Array.isArray(event)) {\n for (var i$1 = 0, l = event.length; i$1 < l; i$1++) {\n vm.$off(event[i$1], fn);\n }\n return vm\n }\n // specific event\n var cbs = vm._events[event];\n if (!cbs) {\n return vm\n }\n if (!fn) {\n vm._events[event] = null;\n return vm\n }\n // specific handler\n var cb;\n var i = cbs.length;\n while (i--) {\n cb = cbs[i];\n if (cb === fn || cb.fn === fn) {\n cbs.splice(i, 1);\n break\n }\n }\n return vm\n };\n\n Vue.prototype.$emit = function (event) {\n var vm = this;\n if (process.env.NODE_ENV !== 'production') {\n var lowerCaseEvent = event.toLowerCase();\n if (lowerCaseEvent !== event && vm._events[lowerCaseEvent]) {\n tip(\n \"Event \\\"\" + lowerCaseEvent + \"\\\" is emitted in component \" +\n (formatComponentName(vm)) + \" but the handler is registered for \\\"\" + event + \"\\\". \" +\n \"Note that HTML attributes are case-insensitive and you cannot use \" +\n \"v-on to listen to camelCase events when using in-DOM templates. \" +\n \"You should probably use \\\"\" + (hyphenate(event)) + \"\\\" instead of \\\"\" + event + \"\\\".\"\n );\n }\n }\n var cbs = vm._events[event];\n if (cbs) {\n cbs = cbs.length > 1 ? toArray(cbs) : cbs;\n var args = toArray(arguments, 1);\n var info = \"event handler for \\\"\" + event + \"\\\"\";\n for (var i = 0, l = cbs.length; i < l; i++) {\n invokeWithErrorHandling(cbs[i], vm, args, vm, info);\n }\n }\n return vm\n };\n}\n\n/* */\n\nvar activeInstance = null;\nvar isUpdatingChildComponent = false;\n\nfunction setActiveInstance(vm) {\n var prevActiveInstance = activeInstance;\n activeInstance = vm;\n return function () {\n activeInstance = prevActiveInstance;\n }\n}\n\nfunction initLifecycle (vm) {\n var options = vm.$options;\n\n // locate first non-abstract parent\n var parent = options.parent;\n if (parent && !options.abstract) {\n while (parent.$options.abstract && parent.$parent) {\n parent = parent.$parent;\n }\n parent.$children.push(vm);\n }\n\n vm.$parent = parent;\n vm.$root = parent ? parent.$root : vm;\n\n vm.$children = [];\n vm.$refs = {};\n\n vm._watcher = null;\n vm._inactive = null;\n vm._directInactive = false;\n vm._isMounted = false;\n vm._isDestroyed = false;\n vm._isBeingDestroyed = false;\n}\n\nfunction lifecycleMixin (Vue) {\n Vue.prototype._update = function (vnode, hydrating) {\n var vm = this;\n var prevEl = vm.$el;\n var prevVnode = vm._vnode;\n var restoreActiveInstance = setActiveInstance(vm);\n vm._vnode = vnode;\n // Vue.prototype.__patch__ is injected in entry points\n // based on the rendering backend used.\n if (!prevVnode) {\n // initial render\n vm.$el = vm.__patch__(vm.$el, vnode, hydrating, false /* removeOnly */);\n } else {\n // updates\n vm.$el = vm.__patch__(prevVnode, vnode);\n }\n restoreActiveInstance();\n // update __vue__ reference\n if (prevEl) {\n prevEl.__vue__ = null;\n }\n if (vm.$el) {\n vm.$el.__vue__ = vm;\n }\n // if parent is an HOC, update its $el as well\n if (vm.$vnode && vm.$parent && vm.$vnode === vm.$parent._vnode) {\n vm.$parent.$el = vm.$el;\n }\n // updated hook is called by the scheduler to ensure that children are\n // updated in a parent's updated hook.\n };\n\n Vue.prototype.$forceUpdate = function () {\n var vm = this;\n if (vm._watcher) {\n vm._watcher.update();\n }\n };\n\n Vue.prototype.$destroy = function () {\n var vm = this;\n if (vm._isBeingDestroyed) {\n return\n }\n callHook(vm, 'beforeDestroy');\n vm._isBeingDestroyed = true;\n // remove self from parent\n var parent = vm.$parent;\n if (parent && !parent._isBeingDestroyed && !vm.$options.abstract) {\n remove(parent.$children, vm);\n }\n // teardown watchers\n if (vm._watcher) {\n vm._watcher.teardown();\n }\n var i = vm._watchers.length;\n while (i--) {\n vm._watchers[i].teardown();\n }\n // remove reference from data ob\n // frozen object may not have observer.\n if (vm._data.__ob__) {\n vm._data.__ob__.vmCount--;\n }\n // call the last hook...\n vm._isDestroyed = true;\n // invoke destroy hooks on current rendered tree\n vm.__patch__(vm._vnode, null);\n // fire destroyed hook\n callHook(vm, 'destroyed');\n // turn off all instance listeners.\n vm.$off();\n // remove __vue__ reference\n if (vm.$el) {\n vm.$el.__vue__ = null;\n }\n // release circular reference (#6759)\n if (vm.$vnode) {\n vm.$vnode.parent = null;\n }\n };\n}\n\nfunction mountComponent (\n vm,\n el,\n hydrating\n) {\n vm.$el = el;\n if (!vm.$options.render) {\n vm.$options.render = createEmptyVNode;\n if (process.env.NODE_ENV !== 'production') {\n /* istanbul ignore if */\n if ((vm.$options.template && vm.$options.template.charAt(0) !== '#') ||\n vm.$options.el || el) {\n warn(\n 'You are using the runtime-only build of Vue where the template ' +\n 'compiler is not available. Either pre-compile the templates into ' +\n 'render functions, or use the compiler-included build.',\n vm\n );\n } else {\n warn(\n 'Failed to mount component: template or render function not defined.',\n vm\n );\n }\n }\n }\n callHook(vm, 'beforeMount');\n\n var updateComponent;\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n updateComponent = function () {\n var name = vm._name;\n var id = vm._uid;\n var startTag = \"vue-perf-start:\" + id;\n var endTag = \"vue-perf-end:\" + id;\n\n mark(startTag);\n var vnode = vm._render();\n mark(endTag);\n measure((\"vue \" + name + \" render\"), startTag, endTag);\n\n mark(startTag);\n vm._update(vnode, hydrating);\n mark(endTag);\n measure((\"vue \" + name + \" patch\"), startTag, endTag);\n };\n } else {\n updateComponent = function () {\n vm._update(vm._render(), hydrating);\n };\n }\n\n // we set this to vm._watcher inside the watcher's constructor\n // since the watcher's initial patch may call $forceUpdate (e.g. inside child\n // component's mounted hook), which relies on vm._watcher being already defined\n new Watcher(vm, updateComponent, noop, {\n before: function before () {\n if (vm._isMounted && !vm._isDestroyed) {\n callHook(vm, 'beforeUpdate');\n }\n }\n }, true /* isRenderWatcher */);\n hydrating = false;\n\n // manually mounted instance, call mounted on self\n // mounted is called for render-created child components in its inserted hook\n if (vm.$vnode == null) {\n vm._isMounted = true;\n callHook(vm, 'mounted');\n }\n return vm\n}\n\nfunction updateChildComponent (\n vm,\n propsData,\n listeners,\n parentVnode,\n renderChildren\n) {\n if (process.env.NODE_ENV !== 'production') {\n isUpdatingChildComponent = true;\n }\n\n // determine whether component has slot children\n // we need to do this before overwriting $options._renderChildren.\n\n // check if there are dynamic scopedSlots (hand-written or compiled but with\n // dynamic slot names). Static scoped slots compiled from template has the\n // \"$stable\" marker.\n var newScopedSlots = parentVnode.data.scopedSlots;\n var oldScopedSlots = vm.$scopedSlots;\n var hasDynamicScopedSlot = !!(\n (newScopedSlots && !newScopedSlots.$stable) ||\n (oldScopedSlots !== emptyObject && !oldScopedSlots.$stable) ||\n (newScopedSlots && vm.$scopedSlots.$key !== newScopedSlots.$key)\n );\n\n // Any static slot children from the parent may have changed during parent's\n // update. Dynamic scoped slots may also have changed. In such cases, a forced\n // update is necessary to ensure correctness.\n var needsForceUpdate = !!(\n renderChildren || // has new static slots\n vm.$options._renderChildren || // has old static slots\n hasDynamicScopedSlot\n );\n\n vm.$options._parentVnode = parentVnode;\n vm.$vnode = parentVnode; // update vm's placeholder node without re-render\n\n if (vm._vnode) { // update child tree's parent\n vm._vnode.parent = parentVnode;\n }\n vm.$options._renderChildren = renderChildren;\n\n // update $attrs and $listeners hash\n // these are also reactive so they may trigger child update if the child\n // used them during render\n vm.$attrs = parentVnode.data.attrs || emptyObject;\n vm.$listeners = listeners || emptyObject;\n\n // update props\n if (propsData && vm.$options.props) {\n toggleObserving(false);\n var props = vm._props;\n var propKeys = vm.$options._propKeys || [];\n for (var i = 0; i < propKeys.length; i++) {\n var key = propKeys[i];\n var propOptions = vm.$options.props; // wtf flow?\n props[key] = validateProp(key, propOptions, propsData, vm);\n }\n toggleObserving(true);\n // keep a copy of raw propsData\n vm.$options.propsData = propsData;\n }\n\n // update listeners\n listeners = listeners || emptyObject;\n var oldListeners = vm.$options._parentListeners;\n vm.$options._parentListeners = listeners;\n updateComponentListeners(vm, listeners, oldListeners);\n\n // resolve slots + force update if has children\n if (needsForceUpdate) {\n vm.$slots = resolveSlots(renderChildren, parentVnode.context);\n vm.$forceUpdate();\n }\n\n if (process.env.NODE_ENV !== 'production') {\n isUpdatingChildComponent = false;\n }\n}\n\nfunction isInInactiveTree (vm) {\n while (vm && (vm = vm.$parent)) {\n if (vm._inactive) { return true }\n }\n return false\n}\n\nfunction activateChildComponent (vm, direct) {\n if (direct) {\n vm._directInactive = false;\n if (isInInactiveTree(vm)) {\n return\n }\n } else if (vm._directInactive) {\n return\n }\n if (vm._inactive || vm._inactive === null) {\n vm._inactive = false;\n for (var i = 0; i < vm.$children.length; i++) {\n activateChildComponent(vm.$children[i]);\n }\n callHook(vm, 'activated');\n }\n}\n\nfunction deactivateChildComponent (vm, direct) {\n if (direct) {\n vm._directInactive = true;\n if (isInInactiveTree(vm)) {\n return\n }\n }\n if (!vm._inactive) {\n vm._inactive = true;\n for (var i = 0; i < vm.$children.length; i++) {\n deactivateChildComponent(vm.$children[i]);\n }\n callHook(vm, 'deactivated');\n }\n}\n\nfunction callHook (vm, hook) {\n // #7573 disable dep collection when invoking lifecycle hooks\n pushTarget();\n var handlers = vm.$options[hook];\n var info = hook + \" hook\";\n if (handlers) {\n for (var i = 0, j = handlers.length; i < j; i++) {\n invokeWithErrorHandling(handlers[i], vm, null, vm, info);\n }\n }\n if (vm._hasHookEvent) {\n vm.$emit('hook:' + hook);\n }\n popTarget();\n}\n\n/* */\n\nvar MAX_UPDATE_COUNT = 100;\n\nvar queue = [];\nvar activatedChildren = [];\nvar has = {};\nvar circular = {};\nvar waiting = false;\nvar flushing = false;\nvar index = 0;\n\n/**\n * Reset the scheduler's state.\n */\nfunction resetSchedulerState () {\n index = queue.length = activatedChildren.length = 0;\n has = {};\n if (process.env.NODE_ENV !== 'production') {\n circular = {};\n }\n waiting = flushing = false;\n}\n\n// Async edge case #6566 requires saving the timestamp when event listeners are\n// attached. However, calling performance.now() has a perf overhead especially\n// if the page has thousands of event listeners. Instead, we take a timestamp\n// every time the scheduler flushes and use that for all event listeners\n// attached during that flush.\nvar currentFlushTimestamp = 0;\n\n// Async edge case fix requires storing an event listener's attach timestamp.\nvar getNow = Date.now;\n\n// Determine what event timestamp the browser is using. Annoyingly, the\n// timestamp can either be hi-res (relative to page load) or low-res\n// (relative to UNIX epoch), so in order to compare time we have to use the\n// same timestamp type when saving the flush timestamp.\n// All IE versions use low-res event timestamps, and have problematic clock\n// implementations (#9632)\nif (inBrowser && !isIE) {\n var performance = window.performance;\n if (\n performance &&\n typeof performance.now === 'function' &&\n getNow() > document.createEvent('Event').timeStamp\n ) {\n // if the event timestamp, although evaluated AFTER the Date.now(), is\n // smaller than it, it means the event is using a hi-res timestamp,\n // and we need to use the hi-res version for event listener timestamps as\n // well.\n getNow = function () { return performance.now(); };\n }\n}\n\n/**\n * Flush both queues and run the watchers.\n */\nfunction flushSchedulerQueue () {\n currentFlushTimestamp = getNow();\n flushing = true;\n var watcher, id;\n\n // Sort queue before flush.\n // This ensures that:\n // 1. Components are updated from parent to child. (because parent is always\n // created before the child)\n // 2. A component's user watchers are run before its render watcher (because\n // user watchers are created before the render watcher)\n // 3. If a component is destroyed during a parent component's watcher run,\n // its watchers can be skipped.\n queue.sort(function (a, b) { return a.id - b.id; });\n\n // do not cache length because more watchers might be pushed\n // as we run existing watchers\n for (index = 0; index < queue.length; index++) {\n watcher = queue[index];\n if (watcher.before) {\n watcher.before();\n }\n id = watcher.id;\n has[id] = null;\n watcher.run();\n // in dev build, check and stop circular updates.\n if (process.env.NODE_ENV !== 'production' && has[id] != null) {\n circular[id] = (circular[id] || 0) + 1;\n if (circular[id] > MAX_UPDATE_COUNT) {\n warn(\n 'You may have an infinite update loop ' + (\n watcher.user\n ? (\"in watcher with expression \\\"\" + (watcher.expression) + \"\\\"\")\n : \"in a component render function.\"\n ),\n watcher.vm\n );\n break\n }\n }\n }\n\n // keep copies of post queues before resetting state\n var activatedQueue = activatedChildren.slice();\n var updatedQueue = queue.slice();\n\n resetSchedulerState();\n\n // call component updated and activated hooks\n callActivatedHooks(activatedQueue);\n callUpdatedHooks(updatedQueue);\n\n // devtool hook\n /* istanbul ignore if */\n if (devtools && config.devtools) {\n devtools.emit('flush');\n }\n}\n\nfunction callUpdatedHooks (queue) {\n var i = queue.length;\n while (i--) {\n var watcher = queue[i];\n var vm = watcher.vm;\n if (vm._watcher === watcher && vm._isMounted && !vm._isDestroyed) {\n callHook(vm, 'updated');\n }\n }\n}\n\n/**\n * Queue a kept-alive component that was activated during patch.\n * The queue will be processed after the entire tree has been patched.\n */\nfunction queueActivatedComponent (vm) {\n // setting _inactive to false here so that a render function can\n // rely on checking whether it's in an inactive tree (e.g. router-view)\n vm._inactive = false;\n activatedChildren.push(vm);\n}\n\nfunction callActivatedHooks (queue) {\n for (var i = 0; i < queue.length; i++) {\n queue[i]._inactive = true;\n activateChildComponent(queue[i], true /* true */);\n }\n}\n\n/**\n * Push a watcher into the watcher queue.\n * Jobs with duplicate IDs will be skipped unless it's\n * pushed when the queue is being flushed.\n */\nfunction queueWatcher (watcher) {\n var id = watcher.id;\n if (has[id] == null) {\n has[id] = true;\n if (!flushing) {\n queue.push(watcher);\n } else {\n // if already flushing, splice the watcher based on its id\n // if already past its id, it will be run next immediately.\n var i = queue.length - 1;\n while (i > index && queue[i].id > watcher.id) {\n i--;\n }\n queue.splice(i + 1, 0, watcher);\n }\n // queue the flush\n if (!waiting) {\n waiting = true;\n\n if (process.env.NODE_ENV !== 'production' && !config.async) {\n flushSchedulerQueue();\n return\n }\n nextTick(flushSchedulerQueue);\n }\n }\n}\n\n/* */\n\n\n\nvar uid$2 = 0;\n\n/**\n * A watcher parses an expression, collects dependencies,\n * and fires callback when the expression value changes.\n * This is used for both the $watch() api and directives.\n */\nvar Watcher = function Watcher (\n vm,\n expOrFn,\n cb,\n options,\n isRenderWatcher\n) {\n this.vm = vm;\n if (isRenderWatcher) {\n vm._watcher = this;\n }\n vm._watchers.push(this);\n // options\n if (options) {\n this.deep = !!options.deep;\n this.user = !!options.user;\n this.lazy = !!options.lazy;\n this.sync = !!options.sync;\n this.before = options.before;\n } else {\n this.deep = this.user = this.lazy = this.sync = false;\n }\n this.cb = cb;\n this.id = ++uid$2; // uid for batching\n this.active = true;\n this.dirty = this.lazy; // for lazy watchers\n this.deps = [];\n this.newDeps = [];\n this.depIds = new _Set();\n this.newDepIds = new _Set();\n this.expression = process.env.NODE_ENV !== 'production'\n ? expOrFn.toString()\n : '';\n // parse expression for getter\n if (typeof expOrFn === 'function') {\n this.getter = expOrFn;\n } else {\n this.getter = parsePath(expOrFn);\n if (!this.getter) {\n this.getter = noop;\n process.env.NODE_ENV !== 'production' && warn(\n \"Failed watching path: \\\"\" + expOrFn + \"\\\" \" +\n 'Watcher only accepts simple dot-delimited paths. ' +\n 'For full control, use a function instead.',\n vm\n );\n }\n }\n this.value = this.lazy\n ? undefined\n : this.get();\n};\n\n/**\n * Evaluate the getter, and re-collect dependencies.\n */\nWatcher.prototype.get = function get () {\n pushTarget(this);\n var value;\n var vm = this.vm;\n try {\n value = this.getter.call(vm, vm);\n } catch (e) {\n if (this.user) {\n handleError(e, vm, (\"getter for watcher \\\"\" + (this.expression) + \"\\\"\"));\n } else {\n throw e\n }\n } finally {\n // \"touch\" every property so they are all tracked as\n // dependencies for deep watching\n if (this.deep) {\n traverse(value);\n }\n popTarget();\n this.cleanupDeps();\n }\n return value\n};\n\n/**\n * Add a dependency to this directive.\n */\nWatcher.prototype.addDep = function addDep (dep) {\n var id = dep.id;\n if (!this.newDepIds.has(id)) {\n this.newDepIds.add(id);\n this.newDeps.push(dep);\n if (!this.depIds.has(id)) {\n dep.addSub(this);\n }\n }\n};\n\n/**\n * Clean up for dependency collection.\n */\nWatcher.prototype.cleanupDeps = function cleanupDeps () {\n var i = this.deps.length;\n while (i--) {\n var dep = this.deps[i];\n if (!this.newDepIds.has(dep.id)) {\n dep.removeSub(this);\n }\n }\n var tmp = this.depIds;\n this.depIds = this.newDepIds;\n this.newDepIds = tmp;\n this.newDepIds.clear();\n tmp = this.deps;\n this.deps = this.newDeps;\n this.newDeps = tmp;\n this.newDeps.length = 0;\n};\n\n/**\n * Subscriber interface.\n * Will be called when a dependency changes.\n */\nWatcher.prototype.update = function update () {\n /* istanbul ignore else */\n if (this.lazy) {\n this.dirty = true;\n } else if (this.sync) {\n this.run();\n } else {\n queueWatcher(this);\n }\n};\n\n/**\n * Scheduler job interface.\n * Will be called by the scheduler.\n */\nWatcher.prototype.run = function run () {\n if (this.active) {\n var value = this.get();\n if (\n value !== this.value ||\n // Deep watchers and watchers on Object/Arrays should fire even\n // when the value is the same, because the value may\n // have mutated.\n isObject(value) ||\n this.deep\n ) {\n // set new value\n var oldValue = this.value;\n this.value = value;\n if (this.user) {\n try {\n this.cb.call(this.vm, value, oldValue);\n } catch (e) {\n handleError(e, this.vm, (\"callback for watcher \\\"\" + (this.expression) + \"\\\"\"));\n }\n } else {\n this.cb.call(this.vm, value, oldValue);\n }\n }\n }\n};\n\n/**\n * Evaluate the value of the watcher.\n * This only gets called for lazy watchers.\n */\nWatcher.prototype.evaluate = function evaluate () {\n this.value = this.get();\n this.dirty = false;\n};\n\n/**\n * Depend on all deps collected by this watcher.\n */\nWatcher.prototype.depend = function depend () {\n var i = this.deps.length;\n while (i--) {\n this.deps[i].depend();\n }\n};\n\n/**\n * Remove self from all dependencies' subscriber list.\n */\nWatcher.prototype.teardown = function teardown () {\n if (this.active) {\n // remove self from vm's watcher list\n // this is a somewhat expensive operation so we skip it\n // if the vm is being destroyed.\n if (!this.vm._isBeingDestroyed) {\n remove(this.vm._watchers, this);\n }\n var i = this.deps.length;\n while (i--) {\n this.deps[i].removeSub(this);\n }\n this.active = false;\n }\n};\n\n/* */\n\nvar sharedPropertyDefinition = {\n enumerable: true,\n configurable: true,\n get: noop,\n set: noop\n};\n\nfunction proxy (target, sourceKey, key) {\n sharedPropertyDefinition.get = function proxyGetter () {\n return this[sourceKey][key]\n };\n sharedPropertyDefinition.set = function proxySetter (val) {\n this[sourceKey][key] = val;\n };\n Object.defineProperty(target, key, sharedPropertyDefinition);\n}\n\nfunction initState (vm) {\n vm._watchers = [];\n var opts = vm.$options;\n if (opts.props) { initProps(vm, opts.props); }\n if (opts.methods) { initMethods(vm, opts.methods); }\n if (opts.data) {\n initData(vm);\n } else {\n observe(vm._data = {}, true /* asRootData */);\n }\n if (opts.computed) { initComputed(vm, opts.computed); }\n if (opts.watch && opts.watch !== nativeWatch) {\n initWatch(vm, opts.watch);\n }\n}\n\nfunction initProps (vm, propsOptions) {\n var propsData = vm.$options.propsData || {};\n var props = vm._props = {};\n // cache prop keys so that future props updates can iterate using Array\n // instead of dynamic object key enumeration.\n var keys = vm.$options._propKeys = [];\n var isRoot = !vm.$parent;\n // root instance props should be converted\n if (!isRoot) {\n toggleObserving(false);\n }\n var loop = function ( key ) {\n keys.push(key);\n var value = validateProp(key, propsOptions, propsData, vm);\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n var hyphenatedKey = hyphenate(key);\n if (isReservedAttribute(hyphenatedKey) ||\n config.isReservedAttr(hyphenatedKey)) {\n warn(\n (\"\\\"\" + hyphenatedKey + \"\\\" is a reserved attribute and cannot be used as component prop.\"),\n vm\n );\n }\n defineReactive$$1(props, key, value, function () {\n if (!isRoot && !isUpdatingChildComponent) {\n warn(\n \"Avoid mutating a prop directly since the value will be \" +\n \"overwritten whenever the parent component re-renders. \" +\n \"Instead, use a data or computed property based on the prop's \" +\n \"value. Prop being mutated: \\\"\" + key + \"\\\"\",\n vm\n );\n }\n });\n } else {\n defineReactive$$1(props, key, value);\n }\n // static props are already proxied on the component's prototype\n // during Vue.extend(). We only need to proxy props defined at\n // instantiation here.\n if (!(key in vm)) {\n proxy(vm, \"_props\", key);\n }\n };\n\n for (var key in propsOptions) loop( key );\n toggleObserving(true);\n}\n\nfunction initData (vm) {\n var data = vm.$options.data;\n data = vm._data = typeof data === 'function'\n ? getData(data, vm)\n : data || {};\n if (!isPlainObject(data)) {\n data = {};\n process.env.NODE_ENV !== 'production' && warn(\n 'data functions should return an object:\\n' +\n 'https://vuejs.org/v2/guide/components.html#data-Must-Be-a-Function',\n vm\n );\n }\n // proxy data on instance\n var keys = Object.keys(data);\n var props = vm.$options.props;\n var methods = vm.$options.methods;\n var i = keys.length;\n while (i--) {\n var key = keys[i];\n if (process.env.NODE_ENV !== 'production') {\n if (methods && hasOwn(methods, key)) {\n warn(\n (\"Method \\\"\" + key + \"\\\" has already been defined as a data property.\"),\n vm\n );\n }\n }\n if (props && hasOwn(props, key)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"The data property \\\"\" + key + \"\\\" is already declared as a prop. \" +\n \"Use prop default value instead.\",\n vm\n );\n } else if (!isReserved(key)) {\n proxy(vm, \"_data\", key);\n }\n }\n // observe data\n observe(data, true /* asRootData */);\n}\n\nfunction getData (data, vm) {\n // #7573 disable dep collection when invoking data getters\n pushTarget();\n try {\n return data.call(vm, vm)\n } catch (e) {\n handleError(e, vm, \"data()\");\n return {}\n } finally {\n popTarget();\n }\n}\n\nvar computedWatcherOptions = { lazy: true };\n\nfunction initComputed (vm, computed) {\n // $flow-disable-line\n var watchers = vm._computedWatchers = Object.create(null);\n // computed properties are just getters during SSR\n var isSSR = isServerRendering();\n\n for (var key in computed) {\n var userDef = computed[key];\n var getter = typeof userDef === 'function' ? userDef : userDef.get;\n if (process.env.NODE_ENV !== 'production' && getter == null) {\n warn(\n (\"Getter is missing for computed property \\\"\" + key + \"\\\".\"),\n vm\n );\n }\n\n if (!isSSR) {\n // create internal watcher for the computed property.\n watchers[key] = new Watcher(\n vm,\n getter || noop,\n noop,\n computedWatcherOptions\n );\n }\n\n // component-defined computed properties are already defined on the\n // component prototype. We only need to define computed properties defined\n // at instantiation here.\n if (!(key in vm)) {\n defineComputed(vm, key, userDef);\n } else if (process.env.NODE_ENV !== 'production') {\n if (key in vm.$data) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined in data.\"), vm);\n } else if (vm.$options.props && key in vm.$options.props) {\n warn((\"The computed property \\\"\" + key + \"\\\" is already defined as a prop.\"), vm);\n }\n }\n }\n}\n\nfunction defineComputed (\n target,\n key,\n userDef\n) {\n var shouldCache = !isServerRendering();\n if (typeof userDef === 'function') {\n sharedPropertyDefinition.get = shouldCache\n ? createComputedGetter(key)\n : createGetterInvoker(userDef);\n sharedPropertyDefinition.set = noop;\n } else {\n sharedPropertyDefinition.get = userDef.get\n ? shouldCache && userDef.cache !== false\n ? createComputedGetter(key)\n : createGetterInvoker(userDef.get)\n : noop;\n sharedPropertyDefinition.set = userDef.set || noop;\n }\n if (process.env.NODE_ENV !== 'production' &&\n sharedPropertyDefinition.set === noop) {\n sharedPropertyDefinition.set = function () {\n warn(\n (\"Computed property \\\"\" + key + \"\\\" was assigned to but it has no setter.\"),\n this\n );\n };\n }\n Object.defineProperty(target, key, sharedPropertyDefinition);\n}\n\nfunction createComputedGetter (key) {\n return function computedGetter () {\n var watcher = this._computedWatchers && this._computedWatchers[key];\n if (watcher) {\n if (watcher.dirty) {\n watcher.evaluate();\n }\n if (Dep.target) {\n watcher.depend();\n }\n return watcher.value\n }\n }\n}\n\nfunction createGetterInvoker(fn) {\n return function computedGetter () {\n return fn.call(this, this)\n }\n}\n\nfunction initMethods (vm, methods) {\n var props = vm.$options.props;\n for (var key in methods) {\n if (process.env.NODE_ENV !== 'production') {\n if (typeof methods[key] !== 'function') {\n warn(\n \"Method \\\"\" + key + \"\\\" has type \\\"\" + (typeof methods[key]) + \"\\\" in the component definition. \" +\n \"Did you reference the function correctly?\",\n vm\n );\n }\n if (props && hasOwn(props, key)) {\n warn(\n (\"Method \\\"\" + key + \"\\\" has already been defined as a prop.\"),\n vm\n );\n }\n if ((key in vm) && isReserved(key)) {\n warn(\n \"Method \\\"\" + key + \"\\\" conflicts with an existing Vue instance method. \" +\n \"Avoid defining component methods that start with _ or $.\"\n );\n }\n }\n vm[key] = typeof methods[key] !== 'function' ? noop : bind(methods[key], vm);\n }\n}\n\nfunction initWatch (vm, watch) {\n for (var key in watch) {\n var handler = watch[key];\n if (Array.isArray(handler)) {\n for (var i = 0; i < handler.length; i++) {\n createWatcher(vm, key, handler[i]);\n }\n } else {\n createWatcher(vm, key, handler);\n }\n }\n}\n\nfunction createWatcher (\n vm,\n expOrFn,\n handler,\n options\n) {\n if (isPlainObject(handler)) {\n options = handler;\n handler = handler.handler;\n }\n if (typeof handler === 'string') {\n handler = vm[handler];\n }\n return vm.$watch(expOrFn, handler, options)\n}\n\nfunction stateMixin (Vue) {\n // flow somehow has problems with directly declared definition object\n // when using Object.defineProperty, so we have to procedurally build up\n // the object here.\n var dataDef = {};\n dataDef.get = function () { return this._data };\n var propsDef = {};\n propsDef.get = function () { return this._props };\n if (process.env.NODE_ENV !== 'production') {\n dataDef.set = function () {\n warn(\n 'Avoid replacing instance root $data. ' +\n 'Use nested data properties instead.',\n this\n );\n };\n propsDef.set = function () {\n warn(\"$props is readonly.\", this);\n };\n }\n Object.defineProperty(Vue.prototype, '$data', dataDef);\n Object.defineProperty(Vue.prototype, '$props', propsDef);\n\n Vue.prototype.$set = set;\n Vue.prototype.$delete = del;\n\n Vue.prototype.$watch = function (\n expOrFn,\n cb,\n options\n ) {\n var vm = this;\n if (isPlainObject(cb)) {\n return createWatcher(vm, expOrFn, cb, options)\n }\n options = options || {};\n options.user = true;\n var watcher = new Watcher(vm, expOrFn, cb, options);\n if (options.immediate) {\n try {\n cb.call(vm, watcher.value);\n } catch (error) {\n handleError(error, vm, (\"callback for immediate watcher \\\"\" + (watcher.expression) + \"\\\"\"));\n }\n }\n return function unwatchFn () {\n watcher.teardown();\n }\n };\n}\n\n/* */\n\nvar uid$3 = 0;\n\nfunction initMixin (Vue) {\n Vue.prototype._init = function (options) {\n var vm = this;\n // a uid\n vm._uid = uid$3++;\n\n var startTag, endTag;\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n startTag = \"vue-perf-start:\" + (vm._uid);\n endTag = \"vue-perf-end:\" + (vm._uid);\n mark(startTag);\n }\n\n // a flag to avoid this being observed\n vm._isVue = true;\n // merge options\n if (options && options._isComponent) {\n // optimize internal component instantiation\n // since dynamic options merging is pretty slow, and none of the\n // internal component options needs special treatment.\n initInternalComponent(vm, options);\n } else {\n vm.$options = mergeOptions(\n resolveConstructorOptions(vm.constructor),\n options || {},\n vm\n );\n }\n /* istanbul ignore else */\n if (process.env.NODE_ENV !== 'production') {\n initProxy(vm);\n } else {\n vm._renderProxy = vm;\n }\n // expose real self\n vm._self = vm;\n initLifecycle(vm);\n initEvents(vm);\n initRender(vm);\n callHook(vm, 'beforeCreate');\n initInjections(vm); // resolve injections before data/props\n initState(vm);\n initProvide(vm); // resolve provide after data/props\n callHook(vm, 'created');\n\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && config.performance && mark) {\n vm._name = formatComponentName(vm, false);\n mark(endTag);\n measure((\"vue \" + (vm._name) + \" init\"), startTag, endTag);\n }\n\n if (vm.$options.el) {\n vm.$mount(vm.$options.el);\n }\n };\n}\n\nfunction initInternalComponent (vm, options) {\n var opts = vm.$options = Object.create(vm.constructor.options);\n // doing this because it's faster than dynamic enumeration.\n var parentVnode = options._parentVnode;\n opts.parent = options.parent;\n opts._parentVnode = parentVnode;\n\n var vnodeComponentOptions = parentVnode.componentOptions;\n opts.propsData = vnodeComponentOptions.propsData;\n opts._parentListeners = vnodeComponentOptions.listeners;\n opts._renderChildren = vnodeComponentOptions.children;\n opts._componentTag = vnodeComponentOptions.tag;\n\n if (options.render) {\n opts.render = options.render;\n opts.staticRenderFns = options.staticRenderFns;\n }\n}\n\nfunction resolveConstructorOptions (Ctor) {\n var options = Ctor.options;\n if (Ctor.super) {\n var superOptions = resolveConstructorOptions(Ctor.super);\n var cachedSuperOptions = Ctor.superOptions;\n if (superOptions !== cachedSuperOptions) {\n // super option changed,\n // need to resolve new options.\n Ctor.superOptions = superOptions;\n // check if there are any late-modified/attached options (#4976)\n var modifiedOptions = resolveModifiedOptions(Ctor);\n // update base extend options\n if (modifiedOptions) {\n extend(Ctor.extendOptions, modifiedOptions);\n }\n options = Ctor.options = mergeOptions(superOptions, Ctor.extendOptions);\n if (options.name) {\n options.components[options.name] = Ctor;\n }\n }\n }\n return options\n}\n\nfunction resolveModifiedOptions (Ctor) {\n var modified;\n var latest = Ctor.options;\n var sealed = Ctor.sealedOptions;\n for (var key in latest) {\n if (latest[key] !== sealed[key]) {\n if (!modified) { modified = {}; }\n modified[key] = latest[key];\n }\n }\n return modified\n}\n\nfunction Vue (options) {\n if (process.env.NODE_ENV !== 'production' &&\n !(this instanceof Vue)\n ) {\n warn('Vue is a constructor and should be called with the `new` keyword');\n }\n this._init(options);\n}\n\ninitMixin(Vue);\nstateMixin(Vue);\neventsMixin(Vue);\nlifecycleMixin(Vue);\nrenderMixin(Vue);\n\n/* */\n\nfunction initUse (Vue) {\n Vue.use = function (plugin) {\n var installedPlugins = (this._installedPlugins || (this._installedPlugins = []));\n if (installedPlugins.indexOf(plugin) > -1) {\n return this\n }\n\n // additional parameters\n var args = toArray(arguments, 1);\n args.unshift(this);\n if (typeof plugin.install === 'function') {\n plugin.install.apply(plugin, args);\n } else if (typeof plugin === 'function') {\n plugin.apply(null, args);\n }\n installedPlugins.push(plugin);\n return this\n };\n}\n\n/* */\n\nfunction initMixin$1 (Vue) {\n Vue.mixin = function (mixin) {\n this.options = mergeOptions(this.options, mixin);\n return this\n };\n}\n\n/* */\n\nfunction initExtend (Vue) {\n /**\n * Each instance constructor, including Vue, has a unique\n * cid. This enables us to create wrapped \"child\n * constructors\" for prototypal inheritance and cache them.\n */\n Vue.cid = 0;\n var cid = 1;\n\n /**\n * Class inheritance\n */\n Vue.extend = function (extendOptions) {\n extendOptions = extendOptions || {};\n var Super = this;\n var SuperId = Super.cid;\n var cachedCtors = extendOptions._Ctor || (extendOptions._Ctor = {});\n if (cachedCtors[SuperId]) {\n return cachedCtors[SuperId]\n }\n\n var name = extendOptions.name || Super.options.name;\n if (process.env.NODE_ENV !== 'production' && name) {\n validateComponentName(name);\n }\n\n var Sub = function VueComponent (options) {\n this._init(options);\n };\n Sub.prototype = Object.create(Super.prototype);\n Sub.prototype.constructor = Sub;\n Sub.cid = cid++;\n Sub.options = mergeOptions(\n Super.options,\n extendOptions\n );\n Sub['super'] = Super;\n\n // For props and computed properties, we define the proxy getters on\n // the Vue instances at extension time, on the extended prototype. This\n // avoids Object.defineProperty calls for each instance created.\n if (Sub.options.props) {\n initProps$1(Sub);\n }\n if (Sub.options.computed) {\n initComputed$1(Sub);\n }\n\n // allow further extension/mixin/plugin usage\n Sub.extend = Super.extend;\n Sub.mixin = Super.mixin;\n Sub.use = Super.use;\n\n // create asset registers, so extended classes\n // can have their private assets too.\n ASSET_TYPES.forEach(function (type) {\n Sub[type] = Super[type];\n });\n // enable recursive self-lookup\n if (name) {\n Sub.options.components[name] = Sub;\n }\n\n // keep a reference to the super options at extension time.\n // later at instantiation we can check if Super's options have\n // been updated.\n Sub.superOptions = Super.options;\n Sub.extendOptions = extendOptions;\n Sub.sealedOptions = extend({}, Sub.options);\n\n // cache constructor\n cachedCtors[SuperId] = Sub;\n return Sub\n };\n}\n\nfunction initProps$1 (Comp) {\n var props = Comp.options.props;\n for (var key in props) {\n proxy(Comp.prototype, \"_props\", key);\n }\n}\n\nfunction initComputed$1 (Comp) {\n var computed = Comp.options.computed;\n for (var key in computed) {\n defineComputed(Comp.prototype, key, computed[key]);\n }\n}\n\n/* */\n\nfunction initAssetRegisters (Vue) {\n /**\n * Create asset registration methods.\n */\n ASSET_TYPES.forEach(function (type) {\n Vue[type] = function (\n id,\n definition\n ) {\n if (!definition) {\n return this.options[type + 's'][id]\n } else {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' && type === 'component') {\n validateComponentName(id);\n }\n if (type === 'component' && isPlainObject(definition)) {\n definition.name = definition.name || id;\n definition = this.options._base.extend(definition);\n }\n if (type === 'directive' && typeof definition === 'function') {\n definition = { bind: definition, update: definition };\n }\n this.options[type + 's'][id] = definition;\n return definition\n }\n };\n });\n}\n\n/* */\n\n\n\nfunction getComponentName (opts) {\n return opts && (opts.Ctor.options.name || opts.tag)\n}\n\nfunction matches (pattern, name) {\n if (Array.isArray(pattern)) {\n return pattern.indexOf(name) > -1\n } else if (typeof pattern === 'string') {\n return pattern.split(',').indexOf(name) > -1\n } else if (isRegExp(pattern)) {\n return pattern.test(name)\n }\n /* istanbul ignore next */\n return false\n}\n\nfunction pruneCache (keepAliveInstance, filter) {\n var cache = keepAliveInstance.cache;\n var keys = keepAliveInstance.keys;\n var _vnode = keepAliveInstance._vnode;\n for (var key in cache) {\n var cachedNode = cache[key];\n if (cachedNode) {\n var name = getComponentName(cachedNode.componentOptions);\n if (name && !filter(name)) {\n pruneCacheEntry(cache, key, keys, _vnode);\n }\n }\n }\n}\n\nfunction pruneCacheEntry (\n cache,\n key,\n keys,\n current\n) {\n var cached$$1 = cache[key];\n if (cached$$1 && (!current || cached$$1.tag !== current.tag)) {\n cached$$1.componentInstance.$destroy();\n }\n cache[key] = null;\n remove(keys, key);\n}\n\nvar patternTypes = [String, RegExp, Array];\n\nvar KeepAlive = {\n name: 'keep-alive',\n abstract: true,\n\n props: {\n include: patternTypes,\n exclude: patternTypes,\n max: [String, Number]\n },\n\n created: function created () {\n this.cache = Object.create(null);\n this.keys = [];\n },\n\n destroyed: function destroyed () {\n for (var key in this.cache) {\n pruneCacheEntry(this.cache, key, this.keys);\n }\n },\n\n mounted: function mounted () {\n var this$1 = this;\n\n this.$watch('include', function (val) {\n pruneCache(this$1, function (name) { return matches(val, name); });\n });\n this.$watch('exclude', function (val) {\n pruneCache(this$1, function (name) { return !matches(val, name); });\n });\n },\n\n render: function render () {\n var slot = this.$slots.default;\n var vnode = getFirstComponentChild(slot);\n var componentOptions = vnode && vnode.componentOptions;\n if (componentOptions) {\n // check pattern\n var name = getComponentName(componentOptions);\n var ref = this;\n var include = ref.include;\n var exclude = ref.exclude;\n if (\n // not included\n (include && (!name || !matches(include, name))) ||\n // excluded\n (exclude && name && matches(exclude, name))\n ) {\n return vnode\n }\n\n var ref$1 = this;\n var cache = ref$1.cache;\n var keys = ref$1.keys;\n var key = vnode.key == null\n // same constructor may get registered as different local components\n // so cid alone is not enough (#3269)\n ? componentOptions.Ctor.cid + (componentOptions.tag ? (\"::\" + (componentOptions.tag)) : '')\n : vnode.key;\n if (cache[key]) {\n vnode.componentInstance = cache[key].componentInstance;\n // make current key freshest\n remove(keys, key);\n keys.push(key);\n } else {\n cache[key] = vnode;\n keys.push(key);\n // prune oldest entry\n if (this.max && keys.length > parseInt(this.max)) {\n pruneCacheEntry(cache, keys[0], keys, this._vnode);\n }\n }\n\n vnode.data.keepAlive = true;\n }\n return vnode || (slot && slot[0])\n }\n};\n\nvar builtInComponents = {\n KeepAlive: KeepAlive\n};\n\n/* */\n\nfunction initGlobalAPI (Vue) {\n // config\n var configDef = {};\n configDef.get = function () { return config; };\n if (process.env.NODE_ENV !== 'production') {\n configDef.set = function () {\n warn(\n 'Do not replace the Vue.config object, set individual fields instead.'\n );\n };\n }\n Object.defineProperty(Vue, 'config', configDef);\n\n // exposed util methods.\n // NOTE: these are not considered part of the public API - avoid relying on\n // them unless you are aware of the risk.\n Vue.util = {\n warn: warn,\n extend: extend,\n mergeOptions: mergeOptions,\n defineReactive: defineReactive$$1\n };\n\n Vue.set = set;\n Vue.delete = del;\n Vue.nextTick = nextTick;\n\n // 2.6 explicit observable API\n Vue.observable = function (obj) {\n observe(obj);\n return obj\n };\n\n Vue.options = Object.create(null);\n ASSET_TYPES.forEach(function (type) {\n Vue.options[type + 's'] = Object.create(null);\n });\n\n // this is used to identify the \"base\" constructor to extend all plain-object\n // components with in Weex's multi-instance scenarios.\n Vue.options._base = Vue;\n\n extend(Vue.options.components, builtInComponents);\n\n initUse(Vue);\n initMixin$1(Vue);\n initExtend(Vue);\n initAssetRegisters(Vue);\n}\n\ninitGlobalAPI(Vue);\n\nObject.defineProperty(Vue.prototype, '$isServer', {\n get: isServerRendering\n});\n\nObject.defineProperty(Vue.prototype, '$ssrContext', {\n get: function get () {\n /* istanbul ignore next */\n return this.$vnode && this.$vnode.ssrContext\n }\n});\n\n// expose FunctionalRenderContext for ssr runtime helper installation\nObject.defineProperty(Vue, 'FunctionalRenderContext', {\n value: FunctionalRenderContext\n});\n\nVue.version = '2.6.10';\n\n/* */\n\n// these are reserved for web because they are directly compiled away\n// during template compilation\nvar isReservedAttr = makeMap('style,class');\n\n// attributes that should be using props for binding\nvar acceptValue = makeMap('input,textarea,option,select,progress');\nvar mustUseProp = function (tag, type, attr) {\n return (\n (attr === 'value' && acceptValue(tag)) && type !== 'button' ||\n (attr === 'selected' && tag === 'option') ||\n (attr === 'checked' && tag === 'input') ||\n (attr === 'muted' && tag === 'video')\n )\n};\n\nvar isEnumeratedAttr = makeMap('contenteditable,draggable,spellcheck');\n\nvar isValidContentEditableValue = makeMap('events,caret,typing,plaintext-only');\n\nvar convertEnumeratedValue = function (key, value) {\n return isFalsyAttrValue(value) || value === 'false'\n ? 'false'\n // allow arbitrary string value for contenteditable\n : key === 'contenteditable' && isValidContentEditableValue(value)\n ? value\n : 'true'\n};\n\nvar isBooleanAttr = makeMap(\n 'allowfullscreen,async,autofocus,autoplay,checked,compact,controls,declare,' +\n 'default,defaultchecked,defaultmuted,defaultselected,defer,disabled,' +\n 'enabled,formnovalidate,hidden,indeterminate,inert,ismap,itemscope,loop,multiple,' +\n 'muted,nohref,noresize,noshade,novalidate,nowrap,open,pauseonexit,readonly,' +\n 'required,reversed,scoped,seamless,selected,sortable,translate,' +\n 'truespeed,typemustmatch,visible'\n);\n\nvar xlinkNS = 'http://www.w3.org/1999/xlink';\n\nvar isXlink = function (name) {\n return name.charAt(5) === ':' && name.slice(0, 5) === 'xlink'\n};\n\nvar getXlinkProp = function (name) {\n return isXlink(name) ? name.slice(6, name.length) : ''\n};\n\nvar isFalsyAttrValue = function (val) {\n return val == null || val === false\n};\n\n/* */\n\nfunction genClassForVnode (vnode) {\n var data = vnode.data;\n var parentNode = vnode;\n var childNode = vnode;\n while (isDef(childNode.componentInstance)) {\n childNode = childNode.componentInstance._vnode;\n if (childNode && childNode.data) {\n data = mergeClassData(childNode.data, data);\n }\n }\n while (isDef(parentNode = parentNode.parent)) {\n if (parentNode && parentNode.data) {\n data = mergeClassData(data, parentNode.data);\n }\n }\n return renderClass(data.staticClass, data.class)\n}\n\nfunction mergeClassData (child, parent) {\n return {\n staticClass: concat(child.staticClass, parent.staticClass),\n class: isDef(child.class)\n ? [child.class, parent.class]\n : parent.class\n }\n}\n\nfunction renderClass (\n staticClass,\n dynamicClass\n) {\n if (isDef(staticClass) || isDef(dynamicClass)) {\n return concat(staticClass, stringifyClass(dynamicClass))\n }\n /* istanbul ignore next */\n return ''\n}\n\nfunction concat (a, b) {\n return a ? b ? (a + ' ' + b) : a : (b || '')\n}\n\nfunction stringifyClass (value) {\n if (Array.isArray(value)) {\n return stringifyArray(value)\n }\n if (isObject(value)) {\n return stringifyObject(value)\n }\n if (typeof value === 'string') {\n return value\n }\n /* istanbul ignore next */\n return ''\n}\n\nfunction stringifyArray (value) {\n var res = '';\n var stringified;\n for (var i = 0, l = value.length; i < l; i++) {\n if (isDef(stringified = stringifyClass(value[i])) && stringified !== '') {\n if (res) { res += ' '; }\n res += stringified;\n }\n }\n return res\n}\n\nfunction stringifyObject (value) {\n var res = '';\n for (var key in value) {\n if (value[key]) {\n if (res) { res += ' '; }\n res += key;\n }\n }\n return res\n}\n\n/* */\n\nvar namespaceMap = {\n svg: 'http://www.w3.org/2000/svg',\n math: 'http://www.w3.org/1998/Math/MathML'\n};\n\nvar isHTMLTag = makeMap(\n 'html,body,base,head,link,meta,style,title,' +\n 'address,article,aside,footer,header,h1,h2,h3,h4,h5,h6,hgroup,nav,section,' +\n 'div,dd,dl,dt,figcaption,figure,picture,hr,img,li,main,ol,p,pre,ul,' +\n 'a,b,abbr,bdi,bdo,br,cite,code,data,dfn,em,i,kbd,mark,q,rp,rt,rtc,ruby,' +\n 's,samp,small,span,strong,sub,sup,time,u,var,wbr,area,audio,map,track,video,' +\n 'embed,object,param,source,canvas,script,noscript,del,ins,' +\n 'caption,col,colgroup,table,thead,tbody,td,th,tr,' +\n 'button,datalist,fieldset,form,input,label,legend,meter,optgroup,option,' +\n 'output,progress,select,textarea,' +\n 'details,dialog,menu,menuitem,summary,' +\n 'content,element,shadow,template,blockquote,iframe,tfoot'\n);\n\n// this map is intentionally selective, only covering SVG elements that may\n// contain child elements.\nvar isSVG = makeMap(\n 'svg,animate,circle,clippath,cursor,defs,desc,ellipse,filter,font-face,' +\n 'foreignObject,g,glyph,image,line,marker,mask,missing-glyph,path,pattern,' +\n 'polygon,polyline,rect,switch,symbol,text,textpath,tspan,use,view',\n true\n);\n\nvar isReservedTag = function (tag) {\n return isHTMLTag(tag) || isSVG(tag)\n};\n\nfunction getTagNamespace (tag) {\n if (isSVG(tag)) {\n return 'svg'\n }\n // basic support for MathML\n // note it doesn't support other MathML elements being component roots\n if (tag === 'math') {\n return 'math'\n }\n}\n\nvar unknownElementCache = Object.create(null);\nfunction isUnknownElement (tag) {\n /* istanbul ignore if */\n if (!inBrowser) {\n return true\n }\n if (isReservedTag(tag)) {\n return false\n }\n tag = tag.toLowerCase();\n /* istanbul ignore if */\n if (unknownElementCache[tag] != null) {\n return unknownElementCache[tag]\n }\n var el = document.createElement(tag);\n if (tag.indexOf('-') > -1) {\n // http://stackoverflow.com/a/28210364/1070244\n return (unknownElementCache[tag] = (\n el.constructor === window.HTMLUnknownElement ||\n el.constructor === window.HTMLElement\n ))\n } else {\n return (unknownElementCache[tag] = /HTMLUnknownElement/.test(el.toString()))\n }\n}\n\nvar isTextInputType = makeMap('text,number,password,search,email,tel,url');\n\n/* */\n\n/**\n * Query an element selector if it's not an element already.\n */\nfunction query (el) {\n if (typeof el === 'string') {\n var selected = document.querySelector(el);\n if (!selected) {\n process.env.NODE_ENV !== 'production' && warn(\n 'Cannot find element: ' + el\n );\n return document.createElement('div')\n }\n return selected\n } else {\n return el\n }\n}\n\n/* */\n\nfunction createElement$1 (tagName, vnode) {\n var elm = document.createElement(tagName);\n if (tagName !== 'select') {\n return elm\n }\n // false or null will remove the attribute but undefined will not\n if (vnode.data && vnode.data.attrs && vnode.data.attrs.multiple !== undefined) {\n elm.setAttribute('multiple', 'multiple');\n }\n return elm\n}\n\nfunction createElementNS (namespace, tagName) {\n return document.createElementNS(namespaceMap[namespace], tagName)\n}\n\nfunction createTextNode (text) {\n return document.createTextNode(text)\n}\n\nfunction createComment (text) {\n return document.createComment(text)\n}\n\nfunction insertBefore (parentNode, newNode, referenceNode) {\n parentNode.insertBefore(newNode, referenceNode);\n}\n\nfunction removeChild (node, child) {\n node.removeChild(child);\n}\n\nfunction appendChild (node, child) {\n node.appendChild(child);\n}\n\nfunction parentNode (node) {\n return node.parentNode\n}\n\nfunction nextSibling (node) {\n return node.nextSibling\n}\n\nfunction tagName (node) {\n return node.tagName\n}\n\nfunction setTextContent (node, text) {\n node.textContent = text;\n}\n\nfunction setStyleScope (node, scopeId) {\n node.setAttribute(scopeId, '');\n}\n\nvar nodeOps = /*#__PURE__*/Object.freeze({\n createElement: createElement$1,\n createElementNS: createElementNS,\n createTextNode: createTextNode,\n createComment: createComment,\n insertBefore: insertBefore,\n removeChild: removeChild,\n appendChild: appendChild,\n parentNode: parentNode,\n nextSibling: nextSibling,\n tagName: tagName,\n setTextContent: setTextContent,\n setStyleScope: setStyleScope\n});\n\n/* */\n\nvar ref = {\n create: function create (_, vnode) {\n registerRef(vnode);\n },\n update: function update (oldVnode, vnode) {\n if (oldVnode.data.ref !== vnode.data.ref) {\n registerRef(oldVnode, true);\n registerRef(vnode);\n }\n },\n destroy: function destroy (vnode) {\n registerRef(vnode, true);\n }\n};\n\nfunction registerRef (vnode, isRemoval) {\n var key = vnode.data.ref;\n if (!isDef(key)) { return }\n\n var vm = vnode.context;\n var ref = vnode.componentInstance || vnode.elm;\n var refs = vm.$refs;\n if (isRemoval) {\n if (Array.isArray(refs[key])) {\n remove(refs[key], ref);\n } else if (refs[key] === ref) {\n refs[key] = undefined;\n }\n } else {\n if (vnode.data.refInFor) {\n if (!Array.isArray(refs[key])) {\n refs[key] = [ref];\n } else if (refs[key].indexOf(ref) < 0) {\n // $flow-disable-line\n refs[key].push(ref);\n }\n } else {\n refs[key] = ref;\n }\n }\n}\n\n/**\n * Virtual DOM patching algorithm based on Snabbdom by\n * Simon Friis Vindum (@paldepind)\n * Licensed under the MIT License\n * https://github.com/paldepind/snabbdom/blob/master/LICENSE\n *\n * modified by Evan You (@yyx990803)\n *\n * Not type-checking this because this file is perf-critical and the cost\n * of making flow understand it is not worth it.\n */\n\nvar emptyNode = new VNode('', {}, []);\n\nvar hooks = ['create', 'activate', 'update', 'remove', 'destroy'];\n\nfunction sameVnode (a, b) {\n return (\n a.key === b.key && (\n (\n a.tag === b.tag &&\n a.isComment === b.isComment &&\n isDef(a.data) === isDef(b.data) &&\n sameInputType(a, b)\n ) || (\n isTrue(a.isAsyncPlaceholder) &&\n a.asyncFactory === b.asyncFactory &&\n isUndef(b.asyncFactory.error)\n )\n )\n )\n}\n\nfunction sameInputType (a, b) {\n if (a.tag !== 'input') { return true }\n var i;\n var typeA = isDef(i = a.data) && isDef(i = i.attrs) && i.type;\n var typeB = isDef(i = b.data) && isDef(i = i.attrs) && i.type;\n return typeA === typeB || isTextInputType(typeA) && isTextInputType(typeB)\n}\n\nfunction createKeyToOldIdx (children, beginIdx, endIdx) {\n var i, key;\n var map = {};\n for (i = beginIdx; i <= endIdx; ++i) {\n key = children[i].key;\n if (isDef(key)) { map[key] = i; }\n }\n return map\n}\n\nfunction createPatchFunction (backend) {\n var i, j;\n var cbs = {};\n\n var modules = backend.modules;\n var nodeOps = backend.nodeOps;\n\n for (i = 0; i < hooks.length; ++i) {\n cbs[hooks[i]] = [];\n for (j = 0; j < modules.length; ++j) {\n if (isDef(modules[j][hooks[i]])) {\n cbs[hooks[i]].push(modules[j][hooks[i]]);\n }\n }\n }\n\n function emptyNodeAt (elm) {\n return new VNode(nodeOps.tagName(elm).toLowerCase(), {}, [], undefined, elm)\n }\n\n function createRmCb (childElm, listeners) {\n function remove$$1 () {\n if (--remove$$1.listeners === 0) {\n removeNode(childElm);\n }\n }\n remove$$1.listeners = listeners;\n return remove$$1\n }\n\n function removeNode (el) {\n var parent = nodeOps.parentNode(el);\n // element may have already been removed due to v-html / v-text\n if (isDef(parent)) {\n nodeOps.removeChild(parent, el);\n }\n }\n\n function isUnknownElement$$1 (vnode, inVPre) {\n return (\n !inVPre &&\n !vnode.ns &&\n !(\n config.ignoredElements.length &&\n config.ignoredElements.some(function (ignore) {\n return isRegExp(ignore)\n ? ignore.test(vnode.tag)\n : ignore === vnode.tag\n })\n ) &&\n config.isUnknownElement(vnode.tag)\n )\n }\n\n var creatingElmInVPre = 0;\n\n function createElm (\n vnode,\n insertedVnodeQueue,\n parentElm,\n refElm,\n nested,\n ownerArray,\n index\n ) {\n if (isDef(vnode.elm) && isDef(ownerArray)) {\n // This vnode was used in a previous render!\n // now it's used as a new node, overwriting its elm would cause\n // potential patch errors down the road when it's used as an insertion\n // reference node. Instead, we clone the node on-demand before creating\n // associated DOM element for it.\n vnode = ownerArray[index] = cloneVNode(vnode);\n }\n\n vnode.isRootInsert = !nested; // for transition enter check\n if (createComponent(vnode, insertedVnodeQueue, parentElm, refElm)) {\n return\n }\n\n var data = vnode.data;\n var children = vnode.children;\n var tag = vnode.tag;\n if (isDef(tag)) {\n if (process.env.NODE_ENV !== 'production') {\n if (data && data.pre) {\n creatingElmInVPre++;\n }\n if (isUnknownElement$$1(vnode, creatingElmInVPre)) {\n warn(\n 'Unknown custom element: <' + tag + '> - did you ' +\n 'register the component correctly? For recursive components, ' +\n 'make sure to provide the \"name\" option.',\n vnode.context\n );\n }\n }\n\n vnode.elm = vnode.ns\n ? nodeOps.createElementNS(vnode.ns, tag)\n : nodeOps.createElement(tag, vnode);\n setScope(vnode);\n\n /* istanbul ignore if */\n {\n createChildren(vnode, children, insertedVnodeQueue);\n if (isDef(data)) {\n invokeCreateHooks(vnode, insertedVnodeQueue);\n }\n insert(parentElm, vnode.elm, refElm);\n }\n\n if (process.env.NODE_ENV !== 'production' && data && data.pre) {\n creatingElmInVPre--;\n }\n } else if (isTrue(vnode.isComment)) {\n vnode.elm = nodeOps.createComment(vnode.text);\n insert(parentElm, vnode.elm, refElm);\n } else {\n vnode.elm = nodeOps.createTextNode(vnode.text);\n insert(parentElm, vnode.elm, refElm);\n }\n }\n\n function createComponent (vnode, insertedVnodeQueue, parentElm, refElm) {\n var i = vnode.data;\n if (isDef(i)) {\n var isReactivated = isDef(vnode.componentInstance) && i.keepAlive;\n if (isDef(i = i.hook) && isDef(i = i.init)) {\n i(vnode, false /* hydrating */);\n }\n // after calling the init hook, if the vnode is a child component\n // it should've created a child instance and mounted it. the child\n // component also has set the placeholder vnode's elm.\n // in that case we can just return the element and be done.\n if (isDef(vnode.componentInstance)) {\n initComponent(vnode, insertedVnodeQueue);\n insert(parentElm, vnode.elm, refElm);\n if (isTrue(isReactivated)) {\n reactivateComponent(vnode, insertedVnodeQueue, parentElm, refElm);\n }\n return true\n }\n }\n }\n\n function initComponent (vnode, insertedVnodeQueue) {\n if (isDef(vnode.data.pendingInsert)) {\n insertedVnodeQueue.push.apply(insertedVnodeQueue, vnode.data.pendingInsert);\n vnode.data.pendingInsert = null;\n }\n vnode.elm = vnode.componentInstance.$el;\n if (isPatchable(vnode)) {\n invokeCreateHooks(vnode, insertedVnodeQueue);\n setScope(vnode);\n } else {\n // empty component root.\n // skip all element-related modules except for ref (#3455)\n registerRef(vnode);\n // make sure to invoke the insert hook\n insertedVnodeQueue.push(vnode);\n }\n }\n\n function reactivateComponent (vnode, insertedVnodeQueue, parentElm, refElm) {\n var i;\n // hack for #4339: a reactivated component with inner transition\n // does not trigger because the inner node's created hooks are not called\n // again. It's not ideal to involve module-specific logic in here but\n // there doesn't seem to be a better way to do it.\n var innerNode = vnode;\n while (innerNode.componentInstance) {\n innerNode = innerNode.componentInstance._vnode;\n if (isDef(i = innerNode.data) && isDef(i = i.transition)) {\n for (i = 0; i < cbs.activate.length; ++i) {\n cbs.activate[i](emptyNode, innerNode);\n }\n insertedVnodeQueue.push(innerNode);\n break\n }\n }\n // unlike a newly created component,\n // a reactivated keep-alive component doesn't insert itself\n insert(parentElm, vnode.elm, refElm);\n }\n\n function insert (parent, elm, ref$$1) {\n if (isDef(parent)) {\n if (isDef(ref$$1)) {\n if (nodeOps.parentNode(ref$$1) === parent) {\n nodeOps.insertBefore(parent, elm, ref$$1);\n }\n } else {\n nodeOps.appendChild(parent, elm);\n }\n }\n }\n\n function createChildren (vnode, children, insertedVnodeQueue) {\n if (Array.isArray(children)) {\n if (process.env.NODE_ENV !== 'production') {\n checkDuplicateKeys(children);\n }\n for (var i = 0; i < children.length; ++i) {\n createElm(children[i], insertedVnodeQueue, vnode.elm, null, true, children, i);\n }\n } else if (isPrimitive(vnode.text)) {\n nodeOps.appendChild(vnode.elm, nodeOps.createTextNode(String(vnode.text)));\n }\n }\n\n function isPatchable (vnode) {\n while (vnode.componentInstance) {\n vnode = vnode.componentInstance._vnode;\n }\n return isDef(vnode.tag)\n }\n\n function invokeCreateHooks (vnode, insertedVnodeQueue) {\n for (var i$1 = 0; i$1 < cbs.create.length; ++i$1) {\n cbs.create[i$1](emptyNode, vnode);\n }\n i = vnode.data.hook; // Reuse variable\n if (isDef(i)) {\n if (isDef(i.create)) { i.create(emptyNode, vnode); }\n if (isDef(i.insert)) { insertedVnodeQueue.push(vnode); }\n }\n }\n\n // set scope id attribute for scoped CSS.\n // this is implemented as a special case to avoid the overhead\n // of going through the normal attribute patching process.\n function setScope (vnode) {\n var i;\n if (isDef(i = vnode.fnScopeId)) {\n nodeOps.setStyleScope(vnode.elm, i);\n } else {\n var ancestor = vnode;\n while (ancestor) {\n if (isDef(i = ancestor.context) && isDef(i = i.$options._scopeId)) {\n nodeOps.setStyleScope(vnode.elm, i);\n }\n ancestor = ancestor.parent;\n }\n }\n // for slot content they should also get the scopeId from the host instance.\n if (isDef(i = activeInstance) &&\n i !== vnode.context &&\n i !== vnode.fnContext &&\n isDef(i = i.$options._scopeId)\n ) {\n nodeOps.setStyleScope(vnode.elm, i);\n }\n }\n\n function addVnodes (parentElm, refElm, vnodes, startIdx, endIdx, insertedVnodeQueue) {\n for (; startIdx <= endIdx; ++startIdx) {\n createElm(vnodes[startIdx], insertedVnodeQueue, parentElm, refElm, false, vnodes, startIdx);\n }\n }\n\n function invokeDestroyHook (vnode) {\n var i, j;\n var data = vnode.data;\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.destroy)) { i(vnode); }\n for (i = 0; i < cbs.destroy.length; ++i) { cbs.destroy[i](vnode); }\n }\n if (isDef(i = vnode.children)) {\n for (j = 0; j < vnode.children.length; ++j) {\n invokeDestroyHook(vnode.children[j]);\n }\n }\n }\n\n function removeVnodes (parentElm, vnodes, startIdx, endIdx) {\n for (; startIdx <= endIdx; ++startIdx) {\n var ch = vnodes[startIdx];\n if (isDef(ch)) {\n if (isDef(ch.tag)) {\n removeAndInvokeRemoveHook(ch);\n invokeDestroyHook(ch);\n } else { // Text node\n removeNode(ch.elm);\n }\n }\n }\n }\n\n function removeAndInvokeRemoveHook (vnode, rm) {\n if (isDef(rm) || isDef(vnode.data)) {\n var i;\n var listeners = cbs.remove.length + 1;\n if (isDef(rm)) {\n // we have a recursively passed down rm callback\n // increase the listeners count\n rm.listeners += listeners;\n } else {\n // directly removing\n rm = createRmCb(vnode.elm, listeners);\n }\n // recursively invoke hooks on child component root node\n if (isDef(i = vnode.componentInstance) && isDef(i = i._vnode) && isDef(i.data)) {\n removeAndInvokeRemoveHook(i, rm);\n }\n for (i = 0; i < cbs.remove.length; ++i) {\n cbs.remove[i](vnode, rm);\n }\n if (isDef(i = vnode.data.hook) && isDef(i = i.remove)) {\n i(vnode, rm);\n } else {\n rm();\n }\n } else {\n removeNode(vnode.elm);\n }\n }\n\n function updateChildren (parentElm, oldCh, newCh, insertedVnodeQueue, removeOnly) {\n var oldStartIdx = 0;\n var newStartIdx = 0;\n var oldEndIdx = oldCh.length - 1;\n var oldStartVnode = oldCh[0];\n var oldEndVnode = oldCh[oldEndIdx];\n var newEndIdx = newCh.length - 1;\n var newStartVnode = newCh[0];\n var newEndVnode = newCh[newEndIdx];\n var oldKeyToIdx, idxInOld, vnodeToMove, refElm;\n\n // removeOnly is a special flag used only by <transition-group>\n // to ensure removed elements stay in correct relative positions\n // during leaving transitions\n var canMove = !removeOnly;\n\n if (process.env.NODE_ENV !== 'production') {\n checkDuplicateKeys(newCh);\n }\n\n while (oldStartIdx <= oldEndIdx && newStartIdx <= newEndIdx) {\n if (isUndef(oldStartVnode)) {\n oldStartVnode = oldCh[++oldStartIdx]; // Vnode has been moved left\n } else if (isUndef(oldEndVnode)) {\n oldEndVnode = oldCh[--oldEndIdx];\n } else if (sameVnode(oldStartVnode, newStartVnode)) {\n patchVnode(oldStartVnode, newStartVnode, insertedVnodeQueue, newCh, newStartIdx);\n oldStartVnode = oldCh[++oldStartIdx];\n newStartVnode = newCh[++newStartIdx];\n } else if (sameVnode(oldEndVnode, newEndVnode)) {\n patchVnode(oldEndVnode, newEndVnode, insertedVnodeQueue, newCh, newEndIdx);\n oldEndVnode = oldCh[--oldEndIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (sameVnode(oldStartVnode, newEndVnode)) { // Vnode moved right\n patchVnode(oldStartVnode, newEndVnode, insertedVnodeQueue, newCh, newEndIdx);\n canMove && nodeOps.insertBefore(parentElm, oldStartVnode.elm, nodeOps.nextSibling(oldEndVnode.elm));\n oldStartVnode = oldCh[++oldStartIdx];\n newEndVnode = newCh[--newEndIdx];\n } else if (sameVnode(oldEndVnode, newStartVnode)) { // Vnode moved left\n patchVnode(oldEndVnode, newStartVnode, insertedVnodeQueue, newCh, newStartIdx);\n canMove && nodeOps.insertBefore(parentElm, oldEndVnode.elm, oldStartVnode.elm);\n oldEndVnode = oldCh[--oldEndIdx];\n newStartVnode = newCh[++newStartIdx];\n } else {\n if (isUndef(oldKeyToIdx)) { oldKeyToIdx = createKeyToOldIdx(oldCh, oldStartIdx, oldEndIdx); }\n idxInOld = isDef(newStartVnode.key)\n ? oldKeyToIdx[newStartVnode.key]\n : findIdxInOld(newStartVnode, oldCh, oldStartIdx, oldEndIdx);\n if (isUndef(idxInOld)) { // New element\n createElm(newStartVnode, insertedVnodeQueue, parentElm, oldStartVnode.elm, false, newCh, newStartIdx);\n } else {\n vnodeToMove = oldCh[idxInOld];\n if (sameVnode(vnodeToMove, newStartVnode)) {\n patchVnode(vnodeToMove, newStartVnode, insertedVnodeQueue, newCh, newStartIdx);\n oldCh[idxInOld] = undefined;\n canMove && nodeOps.insertBefore(parentElm, vnodeToMove.elm, oldStartVnode.elm);\n } else {\n // same key but different element. treat as new element\n createElm(newStartVnode, insertedVnodeQueue, parentElm, oldStartVnode.elm, false, newCh, newStartIdx);\n }\n }\n newStartVnode = newCh[++newStartIdx];\n }\n }\n if (oldStartIdx > oldEndIdx) {\n refElm = isUndef(newCh[newEndIdx + 1]) ? null : newCh[newEndIdx + 1].elm;\n addVnodes(parentElm, refElm, newCh, newStartIdx, newEndIdx, insertedVnodeQueue);\n } else if (newStartIdx > newEndIdx) {\n removeVnodes(parentElm, oldCh, oldStartIdx, oldEndIdx);\n }\n }\n\n function checkDuplicateKeys (children) {\n var seenKeys = {};\n for (var i = 0; i < children.length; i++) {\n var vnode = children[i];\n var key = vnode.key;\n if (isDef(key)) {\n if (seenKeys[key]) {\n warn(\n (\"Duplicate keys detected: '\" + key + \"'. This may cause an update error.\"),\n vnode.context\n );\n } else {\n seenKeys[key] = true;\n }\n }\n }\n }\n\n function findIdxInOld (node, oldCh, start, end) {\n for (var i = start; i < end; i++) {\n var c = oldCh[i];\n if (isDef(c) && sameVnode(node, c)) { return i }\n }\n }\n\n function patchVnode (\n oldVnode,\n vnode,\n insertedVnodeQueue,\n ownerArray,\n index,\n removeOnly\n ) {\n if (oldVnode === vnode) {\n return\n }\n\n if (isDef(vnode.elm) && isDef(ownerArray)) {\n // clone reused vnode\n vnode = ownerArray[index] = cloneVNode(vnode);\n }\n\n var elm = vnode.elm = oldVnode.elm;\n\n if (isTrue(oldVnode.isAsyncPlaceholder)) {\n if (isDef(vnode.asyncFactory.resolved)) {\n hydrate(oldVnode.elm, vnode, insertedVnodeQueue);\n } else {\n vnode.isAsyncPlaceholder = true;\n }\n return\n }\n\n // reuse element for static trees.\n // note we only do this if the vnode is cloned -\n // if the new node is not cloned it means the render functions have been\n // reset by the hot-reload-api and we need to do a proper re-render.\n if (isTrue(vnode.isStatic) &&\n isTrue(oldVnode.isStatic) &&\n vnode.key === oldVnode.key &&\n (isTrue(vnode.isCloned) || isTrue(vnode.isOnce))\n ) {\n vnode.componentInstance = oldVnode.componentInstance;\n return\n }\n\n var i;\n var data = vnode.data;\n if (isDef(data) && isDef(i = data.hook) && isDef(i = i.prepatch)) {\n i(oldVnode, vnode);\n }\n\n var oldCh = oldVnode.children;\n var ch = vnode.children;\n if (isDef(data) && isPatchable(vnode)) {\n for (i = 0; i < cbs.update.length; ++i) { cbs.update[i](oldVnode, vnode); }\n if (isDef(i = data.hook) && isDef(i = i.update)) { i(oldVnode, vnode); }\n }\n if (isUndef(vnode.text)) {\n if (isDef(oldCh) && isDef(ch)) {\n if (oldCh !== ch) { updateChildren(elm, oldCh, ch, insertedVnodeQueue, removeOnly); }\n } else if (isDef(ch)) {\n if (process.env.NODE_ENV !== 'production') {\n checkDuplicateKeys(ch);\n }\n if (isDef(oldVnode.text)) { nodeOps.setTextContent(elm, ''); }\n addVnodes(elm, null, ch, 0, ch.length - 1, insertedVnodeQueue);\n } else if (isDef(oldCh)) {\n removeVnodes(elm, oldCh, 0, oldCh.length - 1);\n } else if (isDef(oldVnode.text)) {\n nodeOps.setTextContent(elm, '');\n }\n } else if (oldVnode.text !== vnode.text) {\n nodeOps.setTextContent(elm, vnode.text);\n }\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.postpatch)) { i(oldVnode, vnode); }\n }\n }\n\n function invokeInsertHook (vnode, queue, initial) {\n // delay insert hooks for component root nodes, invoke them after the\n // element is really inserted\n if (isTrue(initial) && isDef(vnode.parent)) {\n vnode.parent.data.pendingInsert = queue;\n } else {\n for (var i = 0; i < queue.length; ++i) {\n queue[i].data.hook.insert(queue[i]);\n }\n }\n }\n\n var hydrationBailed = false;\n // list of modules that can skip create hook during hydration because they\n // are already rendered on the client or has no need for initialization\n // Note: style is excluded because it relies on initial clone for future\n // deep updates (#7063).\n var isRenderedModule = makeMap('attrs,class,staticClass,staticStyle,key');\n\n // Note: this is a browser-only function so we can assume elms are DOM nodes.\n function hydrate (elm, vnode, insertedVnodeQueue, inVPre) {\n var i;\n var tag = vnode.tag;\n var data = vnode.data;\n var children = vnode.children;\n inVPre = inVPre || (data && data.pre);\n vnode.elm = elm;\n\n if (isTrue(vnode.isComment) && isDef(vnode.asyncFactory)) {\n vnode.isAsyncPlaceholder = true;\n return true\n }\n // assert node match\n if (process.env.NODE_ENV !== 'production') {\n if (!assertNodeMatch(elm, vnode, inVPre)) {\n return false\n }\n }\n if (isDef(data)) {\n if (isDef(i = data.hook) && isDef(i = i.init)) { i(vnode, true /* hydrating */); }\n if (isDef(i = vnode.componentInstance)) {\n // child component. it should have hydrated its own tree.\n initComponent(vnode, insertedVnodeQueue);\n return true\n }\n }\n if (isDef(tag)) {\n if (isDef(children)) {\n // empty element, allow client to pick up and populate children\n if (!elm.hasChildNodes()) {\n createChildren(vnode, children, insertedVnodeQueue);\n } else {\n // v-html and domProps: innerHTML\n if (isDef(i = data) && isDef(i = i.domProps) && isDef(i = i.innerHTML)) {\n if (i !== elm.innerHTML) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' &&\n typeof console !== 'undefined' &&\n !hydrationBailed\n ) {\n hydrationBailed = true;\n console.warn('Parent: ', elm);\n console.warn('server innerHTML: ', i);\n console.warn('client innerHTML: ', elm.innerHTML);\n }\n return false\n }\n } else {\n // iterate and compare children lists\n var childrenMatch = true;\n var childNode = elm.firstChild;\n for (var i$1 = 0; i$1 < children.length; i$1++) {\n if (!childNode || !hydrate(childNode, children[i$1], insertedVnodeQueue, inVPre)) {\n childrenMatch = false;\n break\n }\n childNode = childNode.nextSibling;\n }\n // if childNode is not null, it means the actual childNodes list is\n // longer than the virtual children list.\n if (!childrenMatch || childNode) {\n /* istanbul ignore if */\n if (process.env.NODE_ENV !== 'production' &&\n typeof console !== 'undefined' &&\n !hydrationBailed\n ) {\n hydrationBailed = true;\n console.warn('Parent: ', elm);\n console.warn('Mismatching childNodes vs. VNodes: ', elm.childNodes, children);\n }\n return false\n }\n }\n }\n }\n if (isDef(data)) {\n var fullInvoke = false;\n for (var key in data) {\n if (!isRenderedModule(key)) {\n fullInvoke = true;\n invokeCreateHooks(vnode, insertedVnodeQueue);\n break\n }\n }\n if (!fullInvoke && data['class']) {\n // ensure collecting deps for deep class bindings for future updates\n traverse(data['class']);\n }\n }\n } else if (elm.data !== vnode.text) {\n elm.data = vnode.text;\n }\n return true\n }\n\n function assertNodeMatch (node, vnode, inVPre) {\n if (isDef(vnode.tag)) {\n return vnode.tag.indexOf('vue-component') === 0 || (\n !isUnknownElement$$1(vnode, inVPre) &&\n vnode.tag.toLowerCase() === (node.tagName && node.tagName.toLowerCase())\n )\n } else {\n return node.nodeType === (vnode.isComment ? 8 : 3)\n }\n }\n\n return function patch (oldVnode, vnode, hydrating, removeOnly) {\n if (isUndef(vnode)) {\n if (isDef(oldVnode)) { invokeDestroyHook(oldVnode); }\n return\n }\n\n var isInitialPatch = false;\n var insertedVnodeQueue = [];\n\n if (isUndef(oldVnode)) {\n // empty mount (likely as component), create new root element\n isInitialPatch = true;\n createElm(vnode, insertedVnodeQueue);\n } else {\n var isRealElement = isDef(oldVnode.nodeType);\n if (!isRealElement && sameVnode(oldVnode, vnode)) {\n // patch existing root node\n patchVnode(oldVnode, vnode, insertedVnodeQueue, null, null, removeOnly);\n } else {\n if (isRealElement) {\n // mounting to a real element\n // check if this is server-rendered content and if we can perform\n // a successful hydration.\n if (oldVnode.nodeType === 1 && oldVnode.hasAttribute(SSR_ATTR)) {\n oldVnode.removeAttribute(SSR_ATTR);\n hydrating = true;\n }\n if (isTrue(hydrating)) {\n if (hydrate(oldVnode, vnode, insertedVnodeQueue)) {\n invokeInsertHook(vnode, insertedVnodeQueue, true);\n return oldVnode\n } else if (process.env.NODE_ENV !== 'production') {\n warn(\n 'The client-side rendered virtual DOM tree is not matching ' +\n 'server-rendered content. This is likely caused by incorrect ' +\n 'HTML markup, for example nesting block-level elements inside ' +\n '<p>, or missing <tbody>. Bailing hydration and performing ' +\n 'full client-side render.'\n );\n }\n }\n // either not server-rendered, or hydration failed.\n // create an empty node and replace it\n oldVnode = emptyNodeAt(oldVnode);\n }\n\n // replacing existing element\n var oldElm = oldVnode.elm;\n var parentElm = nodeOps.parentNode(oldElm);\n\n // create new node\n createElm(\n vnode,\n insertedVnodeQueue,\n // extremely rare edge case: do not insert if old element is in a\n // leaving transition. Only happens when combining transition +\n // keep-alive + HOCs. (#4590)\n oldElm._leaveCb ? null : parentElm,\n nodeOps.nextSibling(oldElm)\n );\n\n // update parent placeholder node element, recursively\n if (isDef(vnode.parent)) {\n var ancestor = vnode.parent;\n var patchable = isPatchable(vnode);\n while (ancestor) {\n for (var i = 0; i < cbs.destroy.length; ++i) {\n cbs.destroy[i](ancestor);\n }\n ancestor.elm = vnode.elm;\n if (patchable) {\n for (var i$1 = 0; i$1 < cbs.create.length; ++i$1) {\n cbs.create[i$1](emptyNode, ancestor);\n }\n // #6513\n // invoke insert hooks that may have been merged by create hooks.\n // e.g. for directives that uses the \"inserted\" hook.\n var insert = ancestor.data.hook.insert;\n if (insert.merged) {\n // start at index 1 to avoid re-invoking component mounted hook\n for (var i$2 = 1; i$2 < insert.fns.length; i$2++) {\n insert.fns[i$2]();\n }\n }\n } else {\n registerRef(ancestor);\n }\n ancestor = ancestor.parent;\n }\n }\n\n // destroy old node\n if (isDef(parentElm)) {\n removeVnodes(parentElm, [oldVnode], 0, 0);\n } else if (isDef(oldVnode.tag)) {\n invokeDestroyHook(oldVnode);\n }\n }\n }\n\n invokeInsertHook(vnode, insertedVnodeQueue, isInitialPatch);\n return vnode.elm\n }\n}\n\n/* */\n\nvar directives = {\n create: updateDirectives,\n update: updateDirectives,\n destroy: function unbindDirectives (vnode) {\n updateDirectives(vnode, emptyNode);\n }\n};\n\nfunction updateDirectives (oldVnode, vnode) {\n if (oldVnode.data.directives || vnode.data.directives) {\n _update(oldVnode, vnode);\n }\n}\n\nfunction _update (oldVnode, vnode) {\n var isCreate = oldVnode === emptyNode;\n var isDestroy = vnode === emptyNode;\n var oldDirs = normalizeDirectives$1(oldVnode.data.directives, oldVnode.context);\n var newDirs = normalizeDirectives$1(vnode.data.directives, vnode.context);\n\n var dirsWithInsert = [];\n var dirsWithPostpatch = [];\n\n var key, oldDir, dir;\n for (key in newDirs) {\n oldDir = oldDirs[key];\n dir = newDirs[key];\n if (!oldDir) {\n // new directive, bind\n callHook$1(dir, 'bind', vnode, oldVnode);\n if (dir.def && dir.def.inserted) {\n dirsWithInsert.push(dir);\n }\n } else {\n // existing directive, update\n dir.oldValue = oldDir.value;\n dir.oldArg = oldDir.arg;\n callHook$1(dir, 'update', vnode, oldVnode);\n if (dir.def && dir.def.componentUpdated) {\n dirsWithPostpatch.push(dir);\n }\n }\n }\n\n if (dirsWithInsert.length) {\n var callInsert = function () {\n for (var i = 0; i < dirsWithInsert.length; i++) {\n callHook$1(dirsWithInsert[i], 'inserted', vnode, oldVnode);\n }\n };\n if (isCreate) {\n mergeVNodeHook(vnode, 'insert', callInsert);\n } else {\n callInsert();\n }\n }\n\n if (dirsWithPostpatch.length) {\n mergeVNodeHook(vnode, 'postpatch', function () {\n for (var i = 0; i < dirsWithPostpatch.length; i++) {\n callHook$1(dirsWithPostpatch[i], 'componentUpdated', vnode, oldVnode);\n }\n });\n }\n\n if (!isCreate) {\n for (key in oldDirs) {\n if (!newDirs[key]) {\n // no longer present, unbind\n callHook$1(oldDirs[key], 'unbind', oldVnode, oldVnode, isDestroy);\n }\n }\n }\n}\n\nvar emptyModifiers = Object.create(null);\n\nfunction normalizeDirectives$1 (\n dirs,\n vm\n) {\n var res = Object.create(null);\n if (!dirs) {\n // $flow-disable-line\n return res\n }\n var i, dir;\n for (i = 0; i < dirs.length; i++) {\n dir = dirs[i];\n if (!dir.modifiers) {\n // $flow-disable-line\n dir.modifiers = emptyModifiers;\n }\n res[getRawDirName(dir)] = dir;\n dir.def = resolveAsset(vm.$options, 'directives', dir.name, true);\n }\n // $flow-disable-line\n return res\n}\n\nfunction getRawDirName (dir) {\n return dir.rawName || ((dir.name) + \".\" + (Object.keys(dir.modifiers || {}).join('.')))\n}\n\nfunction callHook$1 (dir, hook, vnode, oldVnode, isDestroy) {\n var fn = dir.def && dir.def[hook];\n if (fn) {\n try {\n fn(vnode.elm, dir, vnode, oldVnode, isDestroy);\n } catch (e) {\n handleError(e, vnode.context, (\"directive \" + (dir.name) + \" \" + hook + \" hook\"));\n }\n }\n}\n\nvar baseModules = [\n ref,\n directives\n];\n\n/* */\n\nfunction updateAttrs (oldVnode, vnode) {\n var opts = vnode.componentOptions;\n if (isDef(opts) && opts.Ctor.options.inheritAttrs === false) {\n return\n }\n if (isUndef(oldVnode.data.attrs) && isUndef(vnode.data.attrs)) {\n return\n }\n var key, cur, old;\n var elm = vnode.elm;\n var oldAttrs = oldVnode.data.attrs || {};\n var attrs = vnode.data.attrs || {};\n // clone observed objects, as the user probably wants to mutate it\n if (isDef(attrs.__ob__)) {\n attrs = vnode.data.attrs = extend({}, attrs);\n }\n\n for (key in attrs) {\n cur = attrs[key];\n old = oldAttrs[key];\n if (old !== cur) {\n setAttr(elm, key, cur);\n }\n }\n // #4391: in IE9, setting type can reset value for input[type=radio]\n // #6666: IE/Edge forces progress value down to 1 before setting a max\n /* istanbul ignore if */\n if ((isIE || isEdge) && attrs.value !== oldAttrs.value) {\n setAttr(elm, 'value', attrs.value);\n }\n for (key in oldAttrs) {\n if (isUndef(attrs[key])) {\n if (isXlink(key)) {\n elm.removeAttributeNS(xlinkNS, getXlinkProp(key));\n } else if (!isEnumeratedAttr(key)) {\n elm.removeAttribute(key);\n }\n }\n }\n}\n\nfunction setAttr (el, key, value) {\n if (el.tagName.indexOf('-') > -1) {\n baseSetAttr(el, key, value);\n } else if (isBooleanAttr(key)) {\n // set attribute for blank value\n // e.g. <option disabled>Select one</option>\n if (isFalsyAttrValue(value)) {\n el.removeAttribute(key);\n } else {\n // technically allowfullscreen is a boolean attribute for <iframe>,\n // but Flash expects a value of \"true\" when used on <embed> tag\n value = key === 'allowfullscreen' && el.tagName === 'EMBED'\n ? 'true'\n : key;\n el.setAttribute(key, value);\n }\n } else if (isEnumeratedAttr(key)) {\n el.setAttribute(key, convertEnumeratedValue(key, value));\n } else if (isXlink(key)) {\n if (isFalsyAttrValue(value)) {\n el.removeAttributeNS(xlinkNS, getXlinkProp(key));\n } else {\n el.setAttributeNS(xlinkNS, key, value);\n }\n } else {\n baseSetAttr(el, key, value);\n }\n}\n\nfunction baseSetAttr (el, key, value) {\n if (isFalsyAttrValue(value)) {\n el.removeAttribute(key);\n } else {\n // #7138: IE10 & 11 fires input event when setting placeholder on\n // <textarea>... block the first input event and remove the blocker\n // immediately.\n /* istanbul ignore if */\n if (\n isIE && !isIE9 &&\n el.tagName === 'TEXTAREA' &&\n key === 'placeholder' && value !== '' && !el.__ieph\n ) {\n var blocker = function (e) {\n e.stopImmediatePropagation();\n el.removeEventListener('input', blocker);\n };\n el.addEventListener('input', blocker);\n // $flow-disable-line\n el.__ieph = true; /* IE placeholder patched */\n }\n el.setAttribute(key, value);\n }\n}\n\nvar attrs = {\n create: updateAttrs,\n update: updateAttrs\n};\n\n/* */\n\nfunction updateClass (oldVnode, vnode) {\n var el = vnode.elm;\n var data = vnode.data;\n var oldData = oldVnode.data;\n if (\n isUndef(data.staticClass) &&\n isUndef(data.class) && (\n isUndef(oldData) || (\n isUndef(oldData.staticClass) &&\n isUndef(oldData.class)\n )\n )\n ) {\n return\n }\n\n var cls = genClassForVnode(vnode);\n\n // handle transition classes\n var transitionClass = el._transitionClasses;\n if (isDef(transitionClass)) {\n cls = concat(cls, stringifyClass(transitionClass));\n }\n\n // set the class\n if (cls !== el._prevClass) {\n el.setAttribute('class', cls);\n el._prevClass = cls;\n }\n}\n\nvar klass = {\n create: updateClass,\n update: updateClass\n};\n\n/* */\n\n/* */\n\n/* */\n\n/* */\n\n// in some cases, the event used has to be determined at runtime\n// so we used some reserved tokens during compile.\nvar RANGE_TOKEN = '__r';\nvar CHECKBOX_RADIO_TOKEN = '__c';\n\n/* */\n\n// normalize v-model event tokens that can only be determined at runtime.\n// it's important to place the event as the first in the array because\n// the whole point is ensuring the v-model callback gets called before\n// user-attached handlers.\nfunction normalizeEvents (on) {\n /* istanbul ignore if */\n if (isDef(on[RANGE_TOKEN])) {\n // IE input[type=range] only supports `change` event\n var event = isIE ? 'change' : 'input';\n on[event] = [].concat(on[RANGE_TOKEN], on[event] || []);\n delete on[RANGE_TOKEN];\n }\n // This was originally intended to fix #4521 but no longer necessary\n // after 2.5. Keeping it for backwards compat with generated code from < 2.4\n /* istanbul ignore if */\n if (isDef(on[CHECKBOX_RADIO_TOKEN])) {\n on.change = [].concat(on[CHECKBOX_RADIO_TOKEN], on.change || []);\n delete on[CHECKBOX_RADIO_TOKEN];\n }\n}\n\nvar target$1;\n\nfunction createOnceHandler$1 (event, handler, capture) {\n var _target = target$1; // save current target element in closure\n return function onceHandler () {\n var res = handler.apply(null, arguments);\n if (res !== null) {\n remove$2(event, onceHandler, capture, _target);\n }\n }\n}\n\n// #9446: Firefox <= 53 (in particular, ESR 52) has incorrect Event.timeStamp\n// implementation and does not fire microtasks in between event propagation, so\n// safe to exclude.\nvar useMicrotaskFix = isUsingMicroTask && !(isFF && Number(isFF[1]) <= 53);\n\nfunction add$1 (\n name,\n handler,\n capture,\n passive\n) {\n // async edge case #6566: inner click event triggers patch, event handler\n // attached to outer element during patch, and triggered again. This\n // happens because browsers fire microtask ticks between event propagation.\n // the solution is simple: we save the timestamp when a handler is attached,\n // and the handler would only fire if the event passed to it was fired\n // AFTER it was attached.\n if (useMicrotaskFix) {\n var attachedTimestamp = currentFlushTimestamp;\n var original = handler;\n handler = original._wrapper = function (e) {\n if (\n // no bubbling, should always fire.\n // this is just a safety net in case event.timeStamp is unreliable in\n // certain weird environments...\n e.target === e.currentTarget ||\n // event is fired after handler attachment\n e.timeStamp >= attachedTimestamp ||\n // bail for environments that have buggy event.timeStamp implementations\n // #9462 iOS 9 bug: event.timeStamp is 0 after history.pushState\n // #9681 QtWebEngine event.timeStamp is negative value\n e.timeStamp <= 0 ||\n // #9448 bail if event is fired in another document in a multi-page\n // electron/nw.js app, since event.timeStamp will be using a different\n // starting reference\n e.target.ownerDocument !== document\n ) {\n return original.apply(this, arguments)\n }\n };\n }\n target$1.addEventListener(\n name,\n handler,\n supportsPassive\n ? { capture: capture, passive: passive }\n : capture\n );\n}\n\nfunction remove$2 (\n name,\n handler,\n capture,\n _target\n) {\n (_target || target$1).removeEventListener(\n name,\n handler._wrapper || handler,\n capture\n );\n}\n\nfunction updateDOMListeners (oldVnode, vnode) {\n if (isUndef(oldVnode.data.on) && isUndef(vnode.data.on)) {\n return\n }\n var on = vnode.data.on || {};\n var oldOn = oldVnode.data.on || {};\n target$1 = vnode.elm;\n normalizeEvents(on);\n updateListeners(on, oldOn, add$1, remove$2, createOnceHandler$1, vnode.context);\n target$1 = undefined;\n}\n\nvar events = {\n create: updateDOMListeners,\n update: updateDOMListeners\n};\n\n/* */\n\nvar svgContainer;\n\nfunction updateDOMProps (oldVnode, vnode) {\n if (isUndef(oldVnode.data.domProps) && isUndef(vnode.data.domProps)) {\n return\n }\n var key, cur;\n var elm = vnode.elm;\n var oldProps = oldVnode.data.domProps || {};\n var props = vnode.data.domProps || {};\n // clone observed objects, as the user probably wants to mutate it\n if (isDef(props.__ob__)) {\n props = vnode.data.domProps = extend({}, props);\n }\n\n for (key in oldProps) {\n if (!(key in props)) {\n elm[key] = '';\n }\n }\n\n for (key in props) {\n cur = props[key];\n // ignore children if the node has textContent or innerHTML,\n // as these will throw away existing DOM nodes and cause removal errors\n // on subsequent patches (#3360)\n if (key === 'textContent' || key === 'innerHTML') {\n if (vnode.children) { vnode.children.length = 0; }\n if (cur === oldProps[key]) { continue }\n // #6601 work around Chrome version <= 55 bug where single textNode\n // replaced by innerHTML/textContent retains its parentNode property\n if (elm.childNodes.length === 1) {\n elm.removeChild(elm.childNodes[0]);\n }\n }\n\n if (key === 'value' && elm.tagName !== 'PROGRESS') {\n // store value as _value as well since\n // non-string values will be stringified\n elm._value = cur;\n // avoid resetting cursor position when value is the same\n var strCur = isUndef(cur) ? '' : String(cur);\n if (shouldUpdateValue(elm, strCur)) {\n elm.value = strCur;\n }\n } else if (key === 'innerHTML' && isSVG(elm.tagName) && isUndef(elm.innerHTML)) {\n // IE doesn't support innerHTML for SVG elements\n svgContainer = svgContainer || document.createElement('div');\n svgContainer.innerHTML = \"<svg>\" + cur + \"</svg>\";\n var svg = svgContainer.firstChild;\n while (elm.firstChild) {\n elm.removeChild(elm.firstChild);\n }\n while (svg.firstChild) {\n elm.appendChild(svg.firstChild);\n }\n } else if (\n // skip the update if old and new VDOM state is the same.\n // `value` is handled separately because the DOM value may be temporarily\n // out of sync with VDOM state due to focus, composition and modifiers.\n // This #4521 by skipping the unnecesarry `checked` update.\n cur !== oldProps[key]\n ) {\n // some property updates can throw\n // e.g. `value` on <progress> w/ non-finite value\n try {\n elm[key] = cur;\n } catch (e) {}\n }\n }\n}\n\n// check platforms/web/util/attrs.js acceptValue\n\n\nfunction shouldUpdateValue (elm, checkVal) {\n return (!elm.composing && (\n elm.tagName === 'OPTION' ||\n isNotInFocusAndDirty(elm, checkVal) ||\n isDirtyWithModifiers(elm, checkVal)\n ))\n}\n\nfunction isNotInFocusAndDirty (elm, checkVal) {\n // return true when textbox (.number and .trim) loses focus and its value is\n // not equal to the updated value\n var notInFocus = true;\n // #6157\n // work around IE bug when accessing document.activeElement in an iframe\n try { notInFocus = document.activeElement !== elm; } catch (e) {}\n return notInFocus && elm.value !== checkVal\n}\n\nfunction isDirtyWithModifiers (elm, newVal) {\n var value = elm.value;\n var modifiers = elm._vModifiers; // injected by v-model runtime\n if (isDef(modifiers)) {\n if (modifiers.number) {\n return toNumber(value) !== toNumber(newVal)\n }\n if (modifiers.trim) {\n return value.trim() !== newVal.trim()\n }\n }\n return value !== newVal\n}\n\nvar domProps = {\n create: updateDOMProps,\n update: updateDOMProps\n};\n\n/* */\n\nvar parseStyleText = cached(function (cssText) {\n var res = {};\n var listDelimiter = /;(?![^(]*\\))/g;\n var propertyDelimiter = /:(.+)/;\n cssText.split(listDelimiter).forEach(function (item) {\n if (item) {\n var tmp = item.split(propertyDelimiter);\n tmp.length > 1 && (res[tmp[0].trim()] = tmp[1].trim());\n }\n });\n return res\n});\n\n// merge static and dynamic style data on the same vnode\nfunction normalizeStyleData (data) {\n var style = normalizeStyleBinding(data.style);\n // static style is pre-processed into an object during compilation\n // and is always a fresh object, so it's safe to merge into it\n return data.staticStyle\n ? extend(data.staticStyle, style)\n : style\n}\n\n// normalize possible array / string values into Object\nfunction normalizeStyleBinding (bindingStyle) {\n if (Array.isArray(bindingStyle)) {\n return toObject(bindingStyle)\n }\n if (typeof bindingStyle === 'string') {\n return parseStyleText(bindingStyle)\n }\n return bindingStyle\n}\n\n/**\n * parent component style should be after child's\n * so that parent component's style could override it\n */\nfunction getStyle (vnode, checkChild) {\n var res = {};\n var styleData;\n\n if (checkChild) {\n var childNode = vnode;\n while (childNode.componentInstance) {\n childNode = childNode.componentInstance._vnode;\n if (\n childNode && childNode.data &&\n (styleData = normalizeStyleData(childNode.data))\n ) {\n extend(res, styleData);\n }\n }\n }\n\n if ((styleData = normalizeStyleData(vnode.data))) {\n extend(res, styleData);\n }\n\n var parentNode = vnode;\n while ((parentNode = parentNode.parent)) {\n if (parentNode.data && (styleData = normalizeStyleData(parentNode.data))) {\n extend(res, styleData);\n }\n }\n return res\n}\n\n/* */\n\nvar cssVarRE = /^--/;\nvar importantRE = /\\s*!important$/;\nvar setProp = function (el, name, val) {\n /* istanbul ignore if */\n if (cssVarRE.test(name)) {\n el.style.setProperty(name, val);\n } else if (importantRE.test(val)) {\n el.style.setProperty(hyphenate(name), val.replace(importantRE, ''), 'important');\n } else {\n var normalizedName = normalize(name);\n if (Array.isArray(val)) {\n // Support values array created by autoprefixer, e.g.\n // {display: [\"-webkit-box\", \"-ms-flexbox\", \"flex\"]}\n // Set them one by one, and the browser will only set those it can recognize\n for (var i = 0, len = val.length; i < len; i++) {\n el.style[normalizedName] = val[i];\n }\n } else {\n el.style[normalizedName] = val;\n }\n }\n};\n\nvar vendorNames = ['Webkit', 'Moz', 'ms'];\n\nvar emptyStyle;\nvar normalize = cached(function (prop) {\n emptyStyle = emptyStyle || document.createElement('div').style;\n prop = camelize(prop);\n if (prop !== 'filter' && (prop in emptyStyle)) {\n return prop\n }\n var capName = prop.charAt(0).toUpperCase() + prop.slice(1);\n for (var i = 0; i < vendorNames.length; i++) {\n var name = vendorNames[i] + capName;\n if (name in emptyStyle) {\n return name\n }\n }\n});\n\nfunction updateStyle (oldVnode, vnode) {\n var data = vnode.data;\n var oldData = oldVnode.data;\n\n if (isUndef(data.staticStyle) && isUndef(data.style) &&\n isUndef(oldData.staticStyle) && isUndef(oldData.style)\n ) {\n return\n }\n\n var cur, name;\n var el = vnode.elm;\n var oldStaticStyle = oldData.staticStyle;\n var oldStyleBinding = oldData.normalizedStyle || oldData.style || {};\n\n // if static style exists, stylebinding already merged into it when doing normalizeStyleData\n var oldStyle = oldStaticStyle || oldStyleBinding;\n\n var style = normalizeStyleBinding(vnode.data.style) || {};\n\n // store normalized style under a different key for next diff\n // make sure to clone it if it's reactive, since the user likely wants\n // to mutate it.\n vnode.data.normalizedStyle = isDef(style.__ob__)\n ? extend({}, style)\n : style;\n\n var newStyle = getStyle(vnode, true);\n\n for (name in oldStyle) {\n if (isUndef(newStyle[name])) {\n setProp(el, name, '');\n }\n }\n for (name in newStyle) {\n cur = newStyle[name];\n if (cur !== oldStyle[name]) {\n // ie9 setting to null has no effect, must use empty string\n setProp(el, name, cur == null ? '' : cur);\n }\n }\n}\n\nvar style = {\n create: updateStyle,\n update: updateStyle\n};\n\n/* */\n\nvar whitespaceRE = /\\s+/;\n\n/**\n * Add class with compatibility for SVG since classList is not supported on\n * SVG elements in IE\n */\nfunction addClass (el, cls) {\n /* istanbul ignore if */\n if (!cls || !(cls = cls.trim())) {\n return\n }\n\n /* istanbul ignore else */\n if (el.classList) {\n if (cls.indexOf(' ') > -1) {\n cls.split(whitespaceRE).forEach(function (c) { return el.classList.add(c); });\n } else {\n el.classList.add(cls);\n }\n } else {\n var cur = \" \" + (el.getAttribute('class') || '') + \" \";\n if (cur.indexOf(' ' + cls + ' ') < 0) {\n el.setAttribute('class', (cur + cls).trim());\n }\n }\n}\n\n/**\n * Remove class with compatibility for SVG since classList is not supported on\n * SVG elements in IE\n */\nfunction removeClass (el, cls) {\n /* istanbul ignore if */\n if (!cls || !(cls = cls.trim())) {\n return\n }\n\n /* istanbul ignore else */\n if (el.classList) {\n if (cls.indexOf(' ') > -1) {\n cls.split(whitespaceRE).forEach(function (c) { return el.classList.remove(c); });\n } else {\n el.classList.remove(cls);\n }\n if (!el.classList.length) {\n el.removeAttribute('class');\n }\n } else {\n var cur = \" \" + (el.getAttribute('class') || '') + \" \";\n var tar = ' ' + cls + ' ';\n while (cur.indexOf(tar) >= 0) {\n cur = cur.replace(tar, ' ');\n }\n cur = cur.trim();\n if (cur) {\n el.setAttribute('class', cur);\n } else {\n el.removeAttribute('class');\n }\n }\n}\n\n/* */\n\nfunction resolveTransition (def$$1) {\n if (!def$$1) {\n return\n }\n /* istanbul ignore else */\n if (typeof def$$1 === 'object') {\n var res = {};\n if (def$$1.css !== false) {\n extend(res, autoCssTransition(def$$1.name || 'v'));\n }\n extend(res, def$$1);\n return res\n } else if (typeof def$$1 === 'string') {\n return autoCssTransition(def$$1)\n }\n}\n\nvar autoCssTransition = cached(function (name) {\n return {\n enterClass: (name + \"-enter\"),\n enterToClass: (name + \"-enter-to\"),\n enterActiveClass: (name + \"-enter-active\"),\n leaveClass: (name + \"-leave\"),\n leaveToClass: (name + \"-leave-to\"),\n leaveActiveClass: (name + \"-leave-active\")\n }\n});\n\nvar hasTransition = inBrowser && !isIE9;\nvar TRANSITION = 'transition';\nvar ANIMATION = 'animation';\n\n// Transition property/event sniffing\nvar transitionProp = 'transition';\nvar transitionEndEvent = 'transitionend';\nvar animationProp = 'animation';\nvar animationEndEvent = 'animationend';\nif (hasTransition) {\n /* istanbul ignore if */\n if (window.ontransitionend === undefined &&\n window.onwebkittransitionend !== undefined\n ) {\n transitionProp = 'WebkitTransition';\n transitionEndEvent = 'webkitTransitionEnd';\n }\n if (window.onanimationend === undefined &&\n window.onwebkitanimationend !== undefined\n ) {\n animationProp = 'WebkitAnimation';\n animationEndEvent = 'webkitAnimationEnd';\n }\n}\n\n// binding to window is necessary to make hot reload work in IE in strict mode\nvar raf = inBrowser\n ? window.requestAnimationFrame\n ? window.requestAnimationFrame.bind(window)\n : setTimeout\n : /* istanbul ignore next */ function (fn) { return fn(); };\n\nfunction nextFrame (fn) {\n raf(function () {\n raf(fn);\n });\n}\n\nfunction addTransitionClass (el, cls) {\n var transitionClasses = el._transitionClasses || (el._transitionClasses = []);\n if (transitionClasses.indexOf(cls) < 0) {\n transitionClasses.push(cls);\n addClass(el, cls);\n }\n}\n\nfunction removeTransitionClass (el, cls) {\n if (el._transitionClasses) {\n remove(el._transitionClasses, cls);\n }\n removeClass(el, cls);\n}\n\nfunction whenTransitionEnds (\n el,\n expectedType,\n cb\n) {\n var ref = getTransitionInfo(el, expectedType);\n var type = ref.type;\n var timeout = ref.timeout;\n var propCount = ref.propCount;\n if (!type) { return cb() }\n var event = type === TRANSITION ? transitionEndEvent : animationEndEvent;\n var ended = 0;\n var end = function () {\n el.removeEventListener(event, onEnd);\n cb();\n };\n var onEnd = function (e) {\n if (e.target === el) {\n if (++ended >= propCount) {\n end();\n }\n }\n };\n setTimeout(function () {\n if (ended < propCount) {\n end();\n }\n }, timeout + 1);\n el.addEventListener(event, onEnd);\n}\n\nvar transformRE = /\\b(transform|all)(,|$)/;\n\nfunction getTransitionInfo (el, expectedType) {\n var styles = window.getComputedStyle(el);\n // JSDOM may return undefined for transition properties\n var transitionDelays = (styles[transitionProp + 'Delay'] || '').split(', ');\n var transitionDurations = (styles[transitionProp + 'Duration'] || '').split(', ');\n var transitionTimeout = getTimeout(transitionDelays, transitionDurations);\n var animationDelays = (styles[animationProp + 'Delay'] || '').split(', ');\n var animationDurations = (styles[animationProp + 'Duration'] || '').split(', ');\n var animationTimeout = getTimeout(animationDelays, animationDurations);\n\n var type;\n var timeout = 0;\n var propCount = 0;\n /* istanbul ignore if */\n if (expectedType === TRANSITION) {\n if (transitionTimeout > 0) {\n type = TRANSITION;\n timeout = transitionTimeout;\n propCount = transitionDurations.length;\n }\n } else if (expectedType === ANIMATION) {\n if (animationTimeout > 0) {\n type = ANIMATION;\n timeout = animationTimeout;\n propCount = animationDurations.length;\n }\n } else {\n timeout = Math.max(transitionTimeout, animationTimeout);\n type = timeout > 0\n ? transitionTimeout > animationTimeout\n ? TRANSITION\n : ANIMATION\n : null;\n propCount = type\n ? type === TRANSITION\n ? transitionDurations.length\n : animationDurations.length\n : 0;\n }\n var hasTransform =\n type === TRANSITION &&\n transformRE.test(styles[transitionProp + 'Property']);\n return {\n type: type,\n timeout: timeout,\n propCount: propCount,\n hasTransform: hasTransform\n }\n}\n\nfunction getTimeout (delays, durations) {\n /* istanbul ignore next */\n while (delays.length < durations.length) {\n delays = delays.concat(delays);\n }\n\n return Math.max.apply(null, durations.map(function (d, i) {\n return toMs(d) + toMs(delays[i])\n }))\n}\n\n// Old versions of Chromium (below 61.0.3163.100) formats floating pointer numbers\n// in a locale-dependent way, using a comma instead of a dot.\n// If comma is not replaced with a dot, the input will be rounded down (i.e. acting\n// as a floor function) causing unexpected behaviors\nfunction toMs (s) {\n return Number(s.slice(0, -1).replace(',', '.')) * 1000\n}\n\n/* */\n\nfunction enter (vnode, toggleDisplay) {\n var el = vnode.elm;\n\n // call leave callback now\n if (isDef(el._leaveCb)) {\n el._leaveCb.cancelled = true;\n el._leaveCb();\n }\n\n var data = resolveTransition(vnode.data.transition);\n if (isUndef(data)) {\n return\n }\n\n /* istanbul ignore if */\n if (isDef(el._enterCb) || el.nodeType !== 1) {\n return\n }\n\n var css = data.css;\n var type = data.type;\n var enterClass = data.enterClass;\n var enterToClass = data.enterToClass;\n var enterActiveClass = data.enterActiveClass;\n var appearClass = data.appearClass;\n var appearToClass = data.appearToClass;\n var appearActiveClass = data.appearActiveClass;\n var beforeEnter = data.beforeEnter;\n var enter = data.enter;\n var afterEnter = data.afterEnter;\n var enterCancelled = data.enterCancelled;\n var beforeAppear = data.beforeAppear;\n var appear = data.appear;\n var afterAppear = data.afterAppear;\n var appearCancelled = data.appearCancelled;\n var duration = data.duration;\n\n // activeInstance will always be the <transition> component managing this\n // transition. One edge case to check is when the <transition> is placed\n // as the root node of a child component. In that case we need to check\n // <transition>'s parent for appear check.\n var context = activeInstance;\n var transitionNode = activeInstance.$vnode;\n while (transitionNode && transitionNode.parent) {\n context = transitionNode.context;\n transitionNode = transitionNode.parent;\n }\n\n var isAppear = !context._isMounted || !vnode.isRootInsert;\n\n if (isAppear && !appear && appear !== '') {\n return\n }\n\n var startClass = isAppear && appearClass\n ? appearClass\n : enterClass;\n var activeClass = isAppear && appearActiveClass\n ? appearActiveClass\n : enterActiveClass;\n var toClass = isAppear && appearToClass\n ? appearToClass\n : enterToClass;\n\n var beforeEnterHook = isAppear\n ? (beforeAppear || beforeEnter)\n : beforeEnter;\n var enterHook = isAppear\n ? (typeof appear === 'function' ? appear : enter)\n : enter;\n var afterEnterHook = isAppear\n ? (afterAppear || afterEnter)\n : afterEnter;\n var enterCancelledHook = isAppear\n ? (appearCancelled || enterCancelled)\n : enterCancelled;\n\n var explicitEnterDuration = toNumber(\n isObject(duration)\n ? duration.enter\n : duration\n );\n\n if (process.env.NODE_ENV !== 'production' && explicitEnterDuration != null) {\n checkDuration(explicitEnterDuration, 'enter', vnode);\n }\n\n var expectsCSS = css !== false && !isIE9;\n var userWantsControl = getHookArgumentsLength(enterHook);\n\n var cb = el._enterCb = once(function () {\n if (expectsCSS) {\n removeTransitionClass(el, toClass);\n removeTransitionClass(el, activeClass);\n }\n if (cb.cancelled) {\n if (expectsCSS) {\n removeTransitionClass(el, startClass);\n }\n enterCancelledHook && enterCancelledHook(el);\n } else {\n afterEnterHook && afterEnterHook(el);\n }\n el._enterCb = null;\n });\n\n if (!vnode.data.show) {\n // remove pending leave element on enter by injecting an insert hook\n mergeVNodeHook(vnode, 'insert', function () {\n var parent = el.parentNode;\n var pendingNode = parent && parent._pending && parent._pending[vnode.key];\n if (pendingNode &&\n pendingNode.tag === vnode.tag &&\n pendingNode.elm._leaveCb\n ) {\n pendingNode.elm._leaveCb();\n }\n enterHook && enterHook(el, cb);\n });\n }\n\n // start enter transition\n beforeEnterHook && beforeEnterHook(el);\n if (expectsCSS) {\n addTransitionClass(el, startClass);\n addTransitionClass(el, activeClass);\n nextFrame(function () {\n removeTransitionClass(el, startClass);\n if (!cb.cancelled) {\n addTransitionClass(el, toClass);\n if (!userWantsControl) {\n if (isValidDuration(explicitEnterDuration)) {\n setTimeout(cb, explicitEnterDuration);\n } else {\n whenTransitionEnds(el, type, cb);\n }\n }\n }\n });\n }\n\n if (vnode.data.show) {\n toggleDisplay && toggleDisplay();\n enterHook && enterHook(el, cb);\n }\n\n if (!expectsCSS && !userWantsControl) {\n cb();\n }\n}\n\nfunction leave (vnode, rm) {\n var el = vnode.elm;\n\n // call enter callback now\n if (isDef(el._enterCb)) {\n el._enterCb.cancelled = true;\n el._enterCb();\n }\n\n var data = resolveTransition(vnode.data.transition);\n if (isUndef(data) || el.nodeType !== 1) {\n return rm()\n }\n\n /* istanbul ignore if */\n if (isDef(el._leaveCb)) {\n return\n }\n\n var css = data.css;\n var type = data.type;\n var leaveClass = data.leaveClass;\n var leaveToClass = data.leaveToClass;\n var leaveActiveClass = data.leaveActiveClass;\n var beforeLeave = data.beforeLeave;\n var leave = data.leave;\n var afterLeave = data.afterLeave;\n var leaveCancelled = data.leaveCancelled;\n var delayLeave = data.delayLeave;\n var duration = data.duration;\n\n var expectsCSS = css !== false && !isIE9;\n var userWantsControl = getHookArgumentsLength(leave);\n\n var explicitLeaveDuration = toNumber(\n isObject(duration)\n ? duration.leave\n : duration\n );\n\n if (process.env.NODE_ENV !== 'production' && isDef(explicitLeaveDuration)) {\n checkDuration(explicitLeaveDuration, 'leave', vnode);\n }\n\n var cb = el._leaveCb = once(function () {\n if (el.parentNode && el.parentNode._pending) {\n el.parentNode._pending[vnode.key] = null;\n }\n if (expectsCSS) {\n removeTransitionClass(el, leaveToClass);\n removeTransitionClass(el, leaveActiveClass);\n }\n if (cb.cancelled) {\n if (expectsCSS) {\n removeTransitionClass(el, leaveClass);\n }\n leaveCancelled && leaveCancelled(el);\n } else {\n rm();\n afterLeave && afterLeave(el);\n }\n el._leaveCb = null;\n });\n\n if (delayLeave) {\n delayLeave(performLeave);\n } else {\n performLeave();\n }\n\n function performLeave () {\n // the delayed leave may have already been cancelled\n if (cb.cancelled) {\n return\n }\n // record leaving element\n if (!vnode.data.show && el.parentNode) {\n (el.parentNode._pending || (el.parentNode._pending = {}))[(vnode.key)] = vnode;\n }\n beforeLeave && beforeLeave(el);\n if (expectsCSS) {\n addTransitionClass(el, leaveClass);\n addTransitionClass(el, leaveActiveClass);\n nextFrame(function () {\n removeTransitionClass(el, leaveClass);\n if (!cb.cancelled) {\n addTransitionClass(el, leaveToClass);\n if (!userWantsControl) {\n if (isValidDuration(explicitLeaveDuration)) {\n setTimeout(cb, explicitLeaveDuration);\n } else {\n whenTransitionEnds(el, type, cb);\n }\n }\n }\n });\n }\n leave && leave(el, cb);\n if (!expectsCSS && !userWantsControl) {\n cb();\n }\n }\n}\n\n// only used in dev mode\nfunction checkDuration (val, name, vnode) {\n if (typeof val !== 'number') {\n warn(\n \"<transition> explicit \" + name + \" duration is not a valid number - \" +\n \"got \" + (JSON.stringify(val)) + \".\",\n vnode.context\n );\n } else if (isNaN(val)) {\n warn(\n \"<transition> explicit \" + name + \" duration is NaN - \" +\n 'the duration expression might be incorrect.',\n vnode.context\n );\n }\n}\n\nfunction isValidDuration (val) {\n return typeof val === 'number' && !isNaN(val)\n}\n\n/**\n * Normalize a transition hook's argument length. The hook may be:\n * - a merged hook (invoker) with the original in .fns\n * - a wrapped component method (check ._length)\n * - a plain function (.length)\n */\nfunction getHookArgumentsLength (fn) {\n if (isUndef(fn)) {\n return false\n }\n var invokerFns = fn.fns;\n if (isDef(invokerFns)) {\n // invoker\n return getHookArgumentsLength(\n Array.isArray(invokerFns)\n ? invokerFns[0]\n : invokerFns\n )\n } else {\n return (fn._length || fn.length) > 1\n }\n}\n\nfunction _enter (_, vnode) {\n if (vnode.data.show !== true) {\n enter(vnode);\n }\n}\n\nvar transition = inBrowser ? {\n create: _enter,\n activate: _enter,\n remove: function remove$$1 (vnode, rm) {\n /* istanbul ignore else */\n if (vnode.data.show !== true) {\n leave(vnode, rm);\n } else {\n rm();\n }\n }\n} : {};\n\nvar platformModules = [\n attrs,\n klass,\n events,\n domProps,\n style,\n transition\n];\n\n/* */\n\n// the directive module should be applied last, after all\n// built-in modules have been applied.\nvar modules = platformModules.concat(baseModules);\n\nvar patch = createPatchFunction({ nodeOps: nodeOps, modules: modules });\n\n/**\n * Not type checking this file because flow doesn't like attaching\n * properties to Elements.\n */\n\n/* istanbul ignore if */\nif (isIE9) {\n // http://www.matts411.com/post/internet-explorer-9-oninput/\n document.addEventListener('selectionchange', function () {\n var el = document.activeElement;\n if (el && el.vmodel) {\n trigger(el, 'input');\n }\n });\n}\n\nvar directive = {\n inserted: function inserted (el, binding, vnode, oldVnode) {\n if (vnode.tag === 'select') {\n // #6903\n if (oldVnode.elm && !oldVnode.elm._vOptions) {\n mergeVNodeHook(vnode, 'postpatch', function () {\n directive.componentUpdated(el, binding, vnode);\n });\n } else {\n setSelected(el, binding, vnode.context);\n }\n el._vOptions = [].map.call(el.options, getValue);\n } else if (vnode.tag === 'textarea' || isTextInputType(el.type)) {\n el._vModifiers = binding.modifiers;\n if (!binding.modifiers.lazy) {\n el.addEventListener('compositionstart', onCompositionStart);\n el.addEventListener('compositionend', onCompositionEnd);\n // Safari < 10.2 & UIWebView doesn't fire compositionend when\n // switching focus before confirming composition choice\n // this also fixes the issue where some browsers e.g. iOS Chrome\n // fires \"change\" instead of \"input\" on autocomplete.\n el.addEventListener('change', onCompositionEnd);\n /* istanbul ignore if */\n if (isIE9) {\n el.vmodel = true;\n }\n }\n }\n },\n\n componentUpdated: function componentUpdated (el, binding, vnode) {\n if (vnode.tag === 'select') {\n setSelected(el, binding, vnode.context);\n // in case the options rendered by v-for have changed,\n // it's possible that the value is out-of-sync with the rendered options.\n // detect such cases and filter out values that no longer has a matching\n // option in the DOM.\n var prevOptions = el._vOptions;\n var curOptions = el._vOptions = [].map.call(el.options, getValue);\n if (curOptions.some(function (o, i) { return !looseEqual(o, prevOptions[i]); })) {\n // trigger change event if\n // no matching option found for at least one value\n var needReset = el.multiple\n ? binding.value.some(function (v) { return hasNoMatchingOption(v, curOptions); })\n : binding.value !== binding.oldValue && hasNoMatchingOption(binding.value, curOptions);\n if (needReset) {\n trigger(el, 'change');\n }\n }\n }\n }\n};\n\nfunction setSelected (el, binding, vm) {\n actuallySetSelected(el, binding, vm);\n /* istanbul ignore if */\n if (isIE || isEdge) {\n setTimeout(function () {\n actuallySetSelected(el, binding, vm);\n }, 0);\n }\n}\n\nfunction actuallySetSelected (el, binding, vm) {\n var value = binding.value;\n var isMultiple = el.multiple;\n if (isMultiple && !Array.isArray(value)) {\n process.env.NODE_ENV !== 'production' && warn(\n \"<select multiple v-model=\\\"\" + (binding.expression) + \"\\\"> \" +\n \"expects an Array value for its binding, but got \" + (Object.prototype.toString.call(value).slice(8, -1)),\n vm\n );\n return\n }\n var selected, option;\n for (var i = 0, l = el.options.length; i < l; i++) {\n option = el.options[i];\n if (isMultiple) {\n selected = looseIndexOf(value, getValue(option)) > -1;\n if (option.selected !== selected) {\n option.selected = selected;\n }\n } else {\n if (looseEqual(getValue(option), value)) {\n if (el.selectedIndex !== i) {\n el.selectedIndex = i;\n }\n return\n }\n }\n }\n if (!isMultiple) {\n el.selectedIndex = -1;\n }\n}\n\nfunction hasNoMatchingOption (value, options) {\n return options.every(function (o) { return !looseEqual(o, value); })\n}\n\nfunction getValue (option) {\n return '_value' in option\n ? option._value\n : option.value\n}\n\nfunction onCompositionStart (e) {\n e.target.composing = true;\n}\n\nfunction onCompositionEnd (e) {\n // prevent triggering an input event for no reason\n if (!e.target.composing) { return }\n e.target.composing = false;\n trigger(e.target, 'input');\n}\n\nfunction trigger (el, type) {\n var e = document.createEvent('HTMLEvents');\n e.initEvent(type, true, true);\n el.dispatchEvent(e);\n}\n\n/* */\n\n// recursively search for possible transition defined inside the component root\nfunction locateNode (vnode) {\n return vnode.componentInstance && (!vnode.data || !vnode.data.transition)\n ? locateNode(vnode.componentInstance._vnode)\n : vnode\n}\n\nvar show = {\n bind: function bind (el, ref, vnode) {\n var value = ref.value;\n\n vnode = locateNode(vnode);\n var transition$$1 = vnode.data && vnode.data.transition;\n var originalDisplay = el.__vOriginalDisplay =\n el.style.display === 'none' ? '' : el.style.display;\n if (value && transition$$1) {\n vnode.data.show = true;\n enter(vnode, function () {\n el.style.display = originalDisplay;\n });\n } else {\n el.style.display = value ? originalDisplay : 'none';\n }\n },\n\n update: function update (el, ref, vnode) {\n var value = ref.value;\n var oldValue = ref.oldValue;\n\n /* istanbul ignore if */\n if (!value === !oldValue) { return }\n vnode = locateNode(vnode);\n var transition$$1 = vnode.data && vnode.data.transition;\n if (transition$$1) {\n vnode.data.show = true;\n if (value) {\n enter(vnode, function () {\n el.style.display = el.__vOriginalDisplay;\n });\n } else {\n leave(vnode, function () {\n el.style.display = 'none';\n });\n }\n } else {\n el.style.display = value ? el.__vOriginalDisplay : 'none';\n }\n },\n\n unbind: function unbind (\n el,\n binding,\n vnode,\n oldVnode,\n isDestroy\n ) {\n if (!isDestroy) {\n el.style.display = el.__vOriginalDisplay;\n }\n }\n};\n\nvar platformDirectives = {\n model: directive,\n show: show\n};\n\n/* */\n\nvar transitionProps = {\n name: String,\n appear: Boolean,\n css: Boolean,\n mode: String,\n type: String,\n enterClass: String,\n leaveClass: String,\n enterToClass: String,\n leaveToClass: String,\n enterActiveClass: String,\n leaveActiveClass: String,\n appearClass: String,\n appearActiveClass: String,\n appearToClass: String,\n duration: [Number, String, Object]\n};\n\n// in case the child is also an abstract component, e.g. <keep-alive>\n// we want to recursively retrieve the real component to be rendered\nfunction getRealChild (vnode) {\n var compOptions = vnode && vnode.componentOptions;\n if (compOptions && compOptions.Ctor.options.abstract) {\n return getRealChild(getFirstComponentChild(compOptions.children))\n } else {\n return vnode\n }\n}\n\nfunction extractTransitionData (comp) {\n var data = {};\n var options = comp.$options;\n // props\n for (var key in options.propsData) {\n data[key] = comp[key];\n }\n // events.\n // extract listeners and pass them directly to the transition methods\n var listeners = options._parentListeners;\n for (var key$1 in listeners) {\n data[camelize(key$1)] = listeners[key$1];\n }\n return data\n}\n\nfunction placeholder (h, rawChild) {\n if (/\\d-keep-alive$/.test(rawChild.tag)) {\n return h('keep-alive', {\n props: rawChild.componentOptions.propsData\n })\n }\n}\n\nfunction hasParentTransition (vnode) {\n while ((vnode = vnode.parent)) {\n if (vnode.data.transition) {\n return true\n }\n }\n}\n\nfunction isSameChild (child, oldChild) {\n return oldChild.key === child.key && oldChild.tag === child.tag\n}\n\nvar isNotTextNode = function (c) { return c.tag || isAsyncPlaceholder(c); };\n\nvar isVShowDirective = function (d) { return d.name === 'show'; };\n\nvar Transition = {\n name: 'transition',\n props: transitionProps,\n abstract: true,\n\n render: function render (h) {\n var this$1 = this;\n\n var children = this.$slots.default;\n if (!children) {\n return\n }\n\n // filter out text nodes (possible whitespaces)\n children = children.filter(isNotTextNode);\n /* istanbul ignore if */\n if (!children.length) {\n return\n }\n\n // warn multiple elements\n if (process.env.NODE_ENV !== 'production' && children.length > 1) {\n warn(\n '<transition> can only be used on a single element. Use ' +\n '<transition-group> for lists.',\n this.$parent\n );\n }\n\n var mode = this.mode;\n\n // warn invalid mode\n if (process.env.NODE_ENV !== 'production' &&\n mode && mode !== 'in-out' && mode !== 'out-in'\n ) {\n warn(\n 'invalid <transition> mode: ' + mode,\n this.$parent\n );\n }\n\n var rawChild = children[0];\n\n // if this is a component root node and the component's\n // parent container node also has transition, skip.\n if (hasParentTransition(this.$vnode)) {\n return rawChild\n }\n\n // apply transition data to child\n // use getRealChild() to ignore abstract components e.g. keep-alive\n var child = getRealChild(rawChild);\n /* istanbul ignore if */\n if (!child) {\n return rawChild\n }\n\n if (this._leaving) {\n return placeholder(h, rawChild)\n }\n\n // ensure a key that is unique to the vnode type and to this transition\n // component instance. This key will be used to remove pending leaving nodes\n // during entering.\n var id = \"__transition-\" + (this._uid) + \"-\";\n child.key = child.key == null\n ? child.isComment\n ? id + 'comment'\n : id + child.tag\n : isPrimitive(child.key)\n ? (String(child.key).indexOf(id) === 0 ? child.key : id + child.key)\n : child.key;\n\n var data = (child.data || (child.data = {})).transition = extractTransitionData(this);\n var oldRawChild = this._vnode;\n var oldChild = getRealChild(oldRawChild);\n\n // mark v-show\n // so that the transition module can hand over the control to the directive\n if (child.data.directives && child.data.directives.some(isVShowDirective)) {\n child.data.show = true;\n }\n\n if (\n oldChild &&\n oldChild.data &&\n !isSameChild(child, oldChild) &&\n !isAsyncPlaceholder(oldChild) &&\n // #6687 component root is a comment node\n !(oldChild.componentInstance && oldChild.componentInstance._vnode.isComment)\n ) {\n // replace old child transition data with fresh one\n // important for dynamic transitions!\n var oldData = oldChild.data.transition = extend({}, data);\n // handle transition mode\n if (mode === 'out-in') {\n // return placeholder node and queue update when leave finishes\n this._leaving = true;\n mergeVNodeHook(oldData, 'afterLeave', function () {\n this$1._leaving = false;\n this$1.$forceUpdate();\n });\n return placeholder(h, rawChild)\n } else if (mode === 'in-out') {\n if (isAsyncPlaceholder(child)) {\n return oldRawChild\n }\n var delayedLeave;\n var performLeave = function () { delayedLeave(); };\n mergeVNodeHook(data, 'afterEnter', performLeave);\n mergeVNodeHook(data, 'enterCancelled', performLeave);\n mergeVNodeHook(oldData, 'delayLeave', function (leave) { delayedLeave = leave; });\n }\n }\n\n return rawChild\n }\n};\n\n/* */\n\nvar props = extend({\n tag: String,\n moveClass: String\n}, transitionProps);\n\ndelete props.mode;\n\nvar TransitionGroup = {\n props: props,\n\n beforeMount: function beforeMount () {\n var this$1 = this;\n\n var update = this._update;\n this._update = function (vnode, hydrating) {\n var restoreActiveInstance = setActiveInstance(this$1);\n // force removing pass\n this$1.__patch__(\n this$1._vnode,\n this$1.kept,\n false, // hydrating\n true // removeOnly (!important, avoids unnecessary moves)\n );\n this$1._vnode = this$1.kept;\n restoreActiveInstance();\n update.call(this$1, vnode, hydrating);\n };\n },\n\n render: function render (h) {\n var tag = this.tag || this.$vnode.data.tag || 'span';\n var map = Object.create(null);\n var prevChildren = this.prevChildren = this.children;\n var rawChildren = this.$slots.default || [];\n var children = this.children = [];\n var transitionData = extractTransitionData(this);\n\n for (var i = 0; i < rawChildren.length; i++) {\n var c = rawChildren[i];\n if (c.tag) {\n if (c.key != null && String(c.key).indexOf('__vlist') !== 0) {\n children.push(c);\n map[c.key] = c\n ;(c.data || (c.data = {})).transition = transitionData;\n } else if (process.env.NODE_ENV !== 'production') {\n var opts = c.componentOptions;\n var name = opts ? (opts.Ctor.options.name || opts.tag || '') : c.tag;\n warn((\"<transition-group> children must be keyed: <\" + name + \">\"));\n }\n }\n }\n\n if (prevChildren) {\n var kept = [];\n var removed = [];\n for (var i$1 = 0; i$1 < prevChildren.length; i$1++) {\n var c$1 = prevChildren[i$1];\n c$1.data.transition = transitionData;\n c$1.data.pos = c$1.elm.getBoundingClientRect();\n if (map[c$1.key]) {\n kept.push(c$1);\n } else {\n removed.push(c$1);\n }\n }\n this.kept = h(tag, null, kept);\n this.removed = removed;\n }\n\n return h(tag, null, children)\n },\n\n updated: function updated () {\n var children = this.prevChildren;\n var moveClass = this.moveClass || ((this.name || 'v') + '-move');\n if (!children.length || !this.hasMove(children[0].elm, moveClass)) {\n return\n }\n\n // we divide the work into three loops to avoid mixing DOM reads and writes\n // in each iteration - which helps prevent layout thrashing.\n children.forEach(callPendingCbs);\n children.forEach(recordPosition);\n children.forEach(applyTranslation);\n\n // force reflow to put everything in position\n // assign to this to avoid being removed in tree-shaking\n // $flow-disable-line\n this._reflow = document.body.offsetHeight;\n\n children.forEach(function (c) {\n if (c.data.moved) {\n var el = c.elm;\n var s = el.style;\n addTransitionClass(el, moveClass);\n s.transform = s.WebkitTransform = s.transitionDuration = '';\n el.addEventListener(transitionEndEvent, el._moveCb = function cb (e) {\n if (e && e.target !== el) {\n return\n }\n if (!e || /transform$/.test(e.propertyName)) {\n el.removeEventListener(transitionEndEvent, cb);\n el._moveCb = null;\n removeTransitionClass(el, moveClass);\n }\n });\n }\n });\n },\n\n methods: {\n hasMove: function hasMove (el, moveClass) {\n /* istanbul ignore if */\n if (!hasTransition) {\n return false\n }\n /* istanbul ignore if */\n if (this._hasMove) {\n return this._hasMove\n }\n // Detect whether an element with the move class applied has\n // CSS transitions. Since the element may be inside an entering\n // transition at this very moment, we make a clone of it and remove\n // all other transition classes applied to ensure only the move class\n // is applied.\n var clone = el.cloneNode();\n if (el._transitionClasses) {\n el._transitionClasses.forEach(function (cls) { removeClass(clone, cls); });\n }\n addClass(clone, moveClass);\n clone.style.display = 'none';\n this.$el.appendChild(clone);\n var info = getTransitionInfo(clone);\n this.$el.removeChild(clone);\n return (this._hasMove = info.hasTransform)\n }\n }\n};\n\nfunction callPendingCbs (c) {\n /* istanbul ignore if */\n if (c.elm._moveCb) {\n c.elm._moveCb();\n }\n /* istanbul ignore if */\n if (c.elm._enterCb) {\n c.elm._enterCb();\n }\n}\n\nfunction recordPosition (c) {\n c.data.newPos = c.elm.getBoundingClientRect();\n}\n\nfunction applyTranslation (c) {\n var oldPos = c.data.pos;\n var newPos = c.data.newPos;\n var dx = oldPos.left - newPos.left;\n var dy = oldPos.top - newPos.top;\n if (dx || dy) {\n c.data.moved = true;\n var s = c.elm.style;\n s.transform = s.WebkitTransform = \"translate(\" + dx + \"px,\" + dy + \"px)\";\n s.transitionDuration = '0s';\n }\n}\n\nvar platformComponents = {\n Transition: Transition,\n TransitionGroup: TransitionGroup\n};\n\n/* */\n\n// install platform specific utils\nVue.config.mustUseProp = mustUseProp;\nVue.config.isReservedTag = isReservedTag;\nVue.config.isReservedAttr = isReservedAttr;\nVue.config.getTagNamespace = getTagNamespace;\nVue.config.isUnknownElement = isUnknownElement;\n\n// install platform runtime directives & components\nextend(Vue.options.directives, platformDirectives);\nextend(Vue.options.components, platformComponents);\n\n// install platform patch function\nVue.prototype.__patch__ = inBrowser ? patch : noop;\n\n// public mount method\nVue.prototype.$mount = function (\n el,\n hydrating\n) {\n el = el && inBrowser ? query(el) : undefined;\n return mountComponent(this, el, hydrating)\n};\n\n// devtools global hook\n/* istanbul ignore next */\nif (inBrowser) {\n setTimeout(function () {\n if (config.devtools) {\n if (devtools) {\n devtools.emit('init', Vue);\n } else if (\n process.env.NODE_ENV !== 'production' &&\n process.env.NODE_ENV !== 'test'\n ) {\n console[console.info ? 'info' : 'log'](\n 'Download the Vue Devtools extension for a better development experience:\\n' +\n 'https://github.com/vuejs/vue-devtools'\n );\n }\n }\n if (process.env.NODE_ENV !== 'production' &&\n process.env.NODE_ENV !== 'test' &&\n config.productionTip !== false &&\n typeof console !== 'undefined'\n ) {\n console[console.info ? 'info' : 'log'](\n \"You are running Vue in development mode.\\n\" +\n \"Make sure to turn on production mode when deploying for production.\\n\" +\n \"See more tips at https://vuejs.org/guide/deployment.html\"\n );\n }\n }, 0);\n}\n\n/* */\n\nexport default Vue;\n","'use strict';\n\nvar bind = require('./helpers/bind');\nvar isBuffer = require('is-buffer');\n\n/*global toString:true*/\n\n// utils is a library of generic helper functions non-specific to axios\n\nvar toString = Object.prototype.toString;\n\n/**\n * Determine if a value is an Array\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Array, otherwise false\n */\nfunction isArray(val) {\n return toString.call(val) === '[object Array]';\n}\n\n/**\n * Determine if a value is an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an ArrayBuffer, otherwise false\n */\nfunction isArrayBuffer(val) {\n return toString.call(val) === '[object ArrayBuffer]';\n}\n\n/**\n * Determine if a value is a FormData\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an FormData, otherwise false\n */\nfunction isFormData(val) {\n return (typeof FormData !== 'undefined') && (val instanceof FormData);\n}\n\n/**\n * Determine if a value is a view on an ArrayBuffer\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a view on an ArrayBuffer, otherwise false\n */\nfunction isArrayBufferView(val) {\n var result;\n if ((typeof ArrayBuffer !== 'undefined') && (ArrayBuffer.isView)) {\n result = ArrayBuffer.isView(val);\n } else {\n result = (val) && (val.buffer) && (val.buffer instanceof ArrayBuffer);\n }\n return result;\n}\n\n/**\n * Determine if a value is a String\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a String, otherwise false\n */\nfunction isString(val) {\n return typeof val === 'string';\n}\n\n/**\n * Determine if a value is a Number\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Number, otherwise false\n */\nfunction isNumber(val) {\n return typeof val === 'number';\n}\n\n/**\n * Determine if a value is undefined\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if the value is undefined, otherwise false\n */\nfunction isUndefined(val) {\n return typeof val === 'undefined';\n}\n\n/**\n * Determine if a value is an Object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is an Object, otherwise false\n */\nfunction isObject(val) {\n return val !== null && typeof val === 'object';\n}\n\n/**\n * Determine if a value is a Date\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Date, otherwise false\n */\nfunction isDate(val) {\n return toString.call(val) === '[object Date]';\n}\n\n/**\n * Determine if a value is a File\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a File, otherwise false\n */\nfunction isFile(val) {\n return toString.call(val) === '[object File]';\n}\n\n/**\n * Determine if a value is a Blob\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Blob, otherwise false\n */\nfunction isBlob(val) {\n return toString.call(val) === '[object Blob]';\n}\n\n/**\n * Determine if a value is a Function\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Function, otherwise false\n */\nfunction isFunction(val) {\n return toString.call(val) === '[object Function]';\n}\n\n/**\n * Determine if a value is a Stream\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a Stream, otherwise false\n */\nfunction isStream(val) {\n return isObject(val) && isFunction(val.pipe);\n}\n\n/**\n * Determine if a value is a URLSearchParams object\n *\n * @param {Object} val The value to test\n * @returns {boolean} True if value is a URLSearchParams object, otherwise false\n */\nfunction isURLSearchParams(val) {\n return typeof URLSearchParams !== 'undefined' && val instanceof URLSearchParams;\n}\n\n/**\n * Trim excess whitespace off the beginning and end of a string\n *\n * @param {String} str The String to trim\n * @returns {String} The String freed of excess whitespace\n */\nfunction trim(str) {\n return str.replace(/^\\s*/, '').replace(/\\s*$/, '');\n}\n\n/**\n * Determine if we're running in a standard browser environment\n *\n * This allows axios to run in a web worker, and react-native.\n * Both environments support XMLHttpRequest, but not fully standard globals.\n *\n * web workers:\n * typeof window -> undefined\n * typeof document -> undefined\n *\n * react-native:\n * navigator.product -> 'ReactNative'\n */\nfunction isStandardBrowserEnv() {\n if (typeof navigator !== 'undefined' && navigator.product === 'ReactNative') {\n return false;\n }\n return (\n typeof window !== 'undefined' &&\n typeof document !== 'undefined'\n );\n}\n\n/**\n * Iterate over an Array or an Object invoking a function for each item.\n *\n * If `obj` is an Array callback will be called passing\n * the value, index, and complete array for each item.\n *\n * If 'obj' is an Object callback will be called passing\n * the value, key, and complete object for each property.\n *\n * @param {Object|Array} obj The object to iterate\n * @param {Function} fn The callback to invoke for each item\n */\nfunction forEach(obj, fn) {\n // Don't bother if no value provided\n if (obj === null || typeof obj === 'undefined') {\n return;\n }\n\n // Force an array if not already something iterable\n if (typeof obj !== 'object') {\n /*eslint no-param-reassign:0*/\n obj = [obj];\n }\n\n if (isArray(obj)) {\n // Iterate over array values\n for (var i = 0, l = obj.length; i < l; i++) {\n fn.call(null, obj[i], i, obj);\n }\n } else {\n // Iterate over object keys\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n fn.call(null, obj[key], key, obj);\n }\n }\n }\n}\n\n/**\n * Accepts varargs expecting each argument to be an object, then\n * immutably merges the properties of each object and returns result.\n *\n * When multiple objects contain the same key the later object in\n * the arguments list will take precedence.\n *\n * Example:\n *\n * ```js\n * var result = merge({foo: 123}, {foo: 456});\n * console.log(result.foo); // outputs 456\n * ```\n *\n * @param {Object} obj1 Object to merge\n * @returns {Object} Result of all merge properties\n */\nfunction merge(/* obj1, obj2, obj3, ... */) {\n var result = {};\n function assignValue(val, key) {\n if (typeof result[key] === 'object' && typeof val === 'object') {\n result[key] = merge(result[key], val);\n } else {\n result[key] = val;\n }\n }\n\n for (var i = 0, l = arguments.length; i < l; i++) {\n forEach(arguments[i], assignValue);\n }\n return result;\n}\n\n/**\n * Extends object a by mutably adding to it the properties of object b.\n *\n * @param {Object} a The object to be extended\n * @param {Object} b The object to copy properties from\n * @param {Object} thisArg The object to bind function to\n * @return {Object} The resulting value of object a\n */\nfunction extend(a, b, thisArg) {\n forEach(b, function assignValue(val, key) {\n if (thisArg && typeof val === 'function') {\n a[key] = bind(val, thisArg);\n } else {\n a[key] = val;\n }\n });\n return a;\n}\n\nmodule.exports = {\n isArray: isArray,\n isArrayBuffer: isArrayBuffer,\n isBuffer: isBuffer,\n isFormData: isFormData,\n isArrayBufferView: isArrayBufferView,\n isString: isString,\n isNumber: isNumber,\n isObject: isObject,\n isUndefined: isUndefined,\n isDate: isDate,\n isFile: isFile,\n isBlob: isBlob,\n isFunction: isFunction,\n isStream: isStream,\n isURLSearchParams: isURLSearchParams,\n isStandardBrowserEnv: isStandardBrowserEnv,\n forEach: forEach,\n merge: merge,\n extend: extend,\n trim: trim\n};\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\n/**\n * @since 15.0.0\n */\nfunction getRootUrl() {\n return OC.getRootPath();\n}\nexports.getRootUrl = getRootUrl;\n/**\n * @since 15.0.0\n */\nfunction generateUrl(url, params, options) {\n return OC.generateUrl(url, params, options);\n}\nexports.generateUrl = generateUrl;\n/**\n * @since 15.0.0\n */\nfunction generateFilePath(app, type, file) {\n return OC.filePath(app, type, file);\n}\nexports.generateFilePath = generateFilePath;\n/**\n * @since 15.0.0\n */\nfunction generateRemoteUrl(service) {\n return OC.linkToRemote(service);\n}\nexports.generateRemoteUrl = generateRemoteUrl;\n/**\n * @since 15.0.0\n */\nfunction generateOcsUrl(service, version) {\n if (version === void 0) { version = 2; }\n return OC.linkToOCS(service, version);\n}\nexports.generateOcsUrl = generateOcsUrl;\n","\"use strict\";\n\n/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n*/\n// css base code, injected by the css-loader\n// eslint-disable-next-line func-names\nmodule.exports = function (useSourceMap) {\n var list = []; // return the list of modules as css string\n\n list.toString = function toString() {\n return this.map(function (item) {\n var content = cssWithMappingToString(item, useSourceMap);\n\n if (item[2]) {\n return \"@media \".concat(item[2], \"{\").concat(content, \"}\");\n }\n\n return content;\n }).join('');\n }; // import a list of modules into the list\n // eslint-disable-next-line func-names\n\n\n list.i = function (modules, mediaQuery) {\n if (typeof modules === 'string') {\n // eslint-disable-next-line no-param-reassign\n modules = [[null, modules, '']];\n }\n\n var alreadyImportedModules = {};\n\n for (var i = 0; i < this.length; i++) {\n // eslint-disable-next-line prefer-destructuring\n var id = this[i][0];\n\n if (id != null) {\n alreadyImportedModules[id] = true;\n }\n }\n\n for (var _i = 0; _i < modules.length; _i++) {\n var item = modules[_i]; // skip already imported module\n // this implementation is not 100% perfect for weird media query combinations\n // when a module is imported multiple times with different media queries.\n // I hope this will never occur (Hey this way we have smaller bundles)\n\n if (item[0] == null || !alreadyImportedModules[item[0]]) {\n if (mediaQuery && !item[2]) {\n item[2] = mediaQuery;\n } else if (mediaQuery) {\n item[2] = \"(\".concat(item[2], \") and (\").concat(mediaQuery, \")\");\n }\n\n list.push(item);\n }\n }\n };\n\n return list;\n};\n\nfunction cssWithMappingToString(item, useSourceMap) {\n var content = item[1] || ''; // eslint-disable-next-line prefer-destructuring\n\n var cssMapping = item[3];\n\n if (!cssMapping) {\n return content;\n }\n\n if (useSourceMap && typeof btoa === 'function') {\n var sourceMapping = toComment(cssMapping);\n var sourceURLs = cssMapping.sources.map(function (source) {\n return \"/*# sourceURL=\".concat(cssMapping.sourceRoot).concat(source, \" */\");\n });\n return [content].concat(sourceURLs).concat([sourceMapping]).join('\\n');\n }\n\n return [content].join('\\n');\n} // Adapted from convert-source-map (MIT)\n\n\nfunction toComment(sourceMap) {\n // eslint-disable-next-line no-undef\n var base64 = btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap))));\n var data = \"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(base64);\n return \"/*# \".concat(data, \" */\");\n}","/**\n * Translates the list format produced by css-loader into something\n * easier to manipulate.\n */\nexport default function listToStyles (parentId, list) {\n var styles = []\n var newStyles = {}\n for (var i = 0; i < list.length; i++) {\n var item = list[i]\n var id = item[0]\n var css = item[1]\n var media = item[2]\n var sourceMap = item[3]\n var part = {\n id: parentId + ':' + i,\n css: css,\n media: media,\n sourceMap: sourceMap\n }\n if (!newStyles[id]) {\n styles.push(newStyles[id] = { id: id, parts: [part] })\n } else {\n newStyles[id].parts.push(part)\n }\n }\n return styles\n}\n","/*\n MIT License http://www.opensource.org/licenses/mit-license.php\n Author Tobias Koppers @sokra\n Modified by Evan You @yyx990803\n*/\n\nimport listToStyles from './listToStyles'\n\nvar hasDocument = typeof document !== 'undefined'\n\nif (typeof DEBUG !== 'undefined' && DEBUG) {\n if (!hasDocument) {\n throw new Error(\n 'vue-style-loader cannot be used in a non-browser environment. ' +\n \"Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\"\n ) }\n}\n\n/*\ntype StyleObject = {\n id: number;\n parts: Array<StyleObjectPart>\n}\n\ntype StyleObjectPart = {\n css: string;\n media: string;\n sourceMap: ?string\n}\n*/\n\nvar stylesInDom = {/*\n [id: number]: {\n id: number,\n refs: number,\n parts: Array<(obj?: StyleObjectPart) => void>\n }\n*/}\n\nvar head = hasDocument && (document.head || document.getElementsByTagName('head')[0])\nvar singletonElement = null\nvar singletonCounter = 0\nvar isProduction = false\nvar noop = function () {}\nvar options = null\nvar ssrIdKey = 'data-vue-ssr-id'\n\n// Force single-tag solution on IE6-9, which has a hard limit on the # of <style>\n// tags it will allow on a page\nvar isOldIE = typeof navigator !== 'undefined' && /msie [6-9]\\b/.test(navigator.userAgent.toLowerCase())\n\nexport default function addStylesClient (parentId, list, _isProduction, _options) {\n isProduction = _isProduction\n\n options = _options || {}\n\n var styles = listToStyles(parentId, list)\n addStylesToDom(styles)\n\n return function update (newList) {\n var mayRemove = []\n for (var i = 0; i < styles.length; i++) {\n var item = styles[i]\n var domStyle = stylesInDom[item.id]\n domStyle.refs--\n mayRemove.push(domStyle)\n }\n if (newList) {\n styles = listToStyles(parentId, newList)\n addStylesToDom(styles)\n } else {\n styles = []\n }\n for (var i = 0; i < mayRemove.length; i++) {\n var domStyle = mayRemove[i]\n if (domStyle.refs === 0) {\n for (var j = 0; j < domStyle.parts.length; j++) {\n domStyle.parts[j]()\n }\n delete stylesInDom[domStyle.id]\n }\n }\n }\n}\n\nfunction addStylesToDom (styles /* Array<StyleObject> */) {\n for (var i = 0; i < styles.length; i++) {\n var item = styles[i]\n var domStyle = stylesInDom[item.id]\n if (domStyle) {\n domStyle.refs++\n for (var j = 0; j < domStyle.parts.length; j++) {\n domStyle.parts[j](item.parts[j])\n }\n for (; j < item.parts.length; j++) {\n domStyle.parts.push(addStyle(item.parts[j]))\n }\n if (domStyle.parts.length > item.parts.length) {\n domStyle.parts.length = item.parts.length\n }\n } else {\n var parts = []\n for (var j = 0; j < item.parts.length; j++) {\n parts.push(addStyle(item.parts[j]))\n }\n stylesInDom[item.id] = { id: item.id, refs: 1, parts: parts }\n }\n }\n}\n\nfunction createStyleElement () {\n var styleElement = document.createElement('style')\n styleElement.type = 'text/css'\n head.appendChild(styleElement)\n return styleElement\n}\n\nfunction addStyle (obj /* StyleObjectPart */) {\n var update, remove\n var styleElement = document.querySelector('style[' + ssrIdKey + '~=\"' + obj.id + '\"]')\n\n if (styleElement) {\n if (isProduction) {\n // has SSR styles and in production mode.\n // simply do nothing.\n return noop\n } else {\n // has SSR styles but in dev mode.\n // for some reason Chrome can't handle source map in server-rendered\n // style tags - source maps in <style> only works if the style tag is\n // created and inserted dynamically. So we remove the server rendered\n // styles and inject new ones.\n styleElement.parentNode.removeChild(styleElement)\n }\n }\n\n if (isOldIE) {\n // use singleton mode for IE9.\n var styleIndex = singletonCounter++\n styleElement = singletonElement || (singletonElement = createStyleElement())\n update = applyToSingletonTag.bind(null, styleElement, styleIndex, false)\n remove = applyToSingletonTag.bind(null, styleElement, styleIndex, true)\n } else {\n // use multi-style-tag mode in all other cases\n styleElement = createStyleElement()\n update = applyToTag.bind(null, styleElement)\n remove = function () {\n styleElement.parentNode.removeChild(styleElement)\n }\n }\n\n update(obj)\n\n return function updateStyle (newObj /* StyleObjectPart */) {\n if (newObj) {\n if (newObj.css === obj.css &&\n newObj.media === obj.media &&\n newObj.sourceMap === obj.sourceMap) {\n return\n }\n update(obj = newObj)\n } else {\n remove()\n }\n }\n}\n\nvar replaceText = (function () {\n var textStore = []\n\n return function (index, replacement) {\n textStore[index] = replacement\n return textStore.filter(Boolean).join('\\n')\n }\n})()\n\nfunction applyToSingletonTag (styleElement, index, remove, obj) {\n var css = remove ? '' : obj.css\n\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = replaceText(index, css)\n } else {\n var cssNode = document.createTextNode(css)\n var childNodes = styleElement.childNodes\n if (childNodes[index]) styleElement.removeChild(childNodes[index])\n if (childNodes.length) {\n styleElement.insertBefore(cssNode, childNodes[index])\n } else {\n styleElement.appendChild(cssNode)\n }\n }\n}\n\nfunction applyToTag (styleElement, obj) {\n var css = obj.css\n var media = obj.media\n var sourceMap = obj.sourceMap\n\n if (media) {\n styleElement.setAttribute('media', media)\n }\n if (options.ssrId) {\n styleElement.setAttribute(ssrIdKey, obj.id)\n }\n\n if (sourceMap) {\n // https://developer.chrome.com/devtools/docs/javascript-debugging\n // this makes source maps inside style tags work properly in Chrome\n css += '\\n/*# sourceURL=' + sourceMap.sources[0] + ' */'\n // http://stackoverflow.com/a/26603875\n css += '\\n/*# sourceMappingURL=data:application/json;base64,' + btoa(unescape(encodeURIComponent(JSON.stringify(sourceMap)))) + ' */'\n }\n\n if (styleElement.styleSheet) {\n styleElement.styleSheet.cssText = css\n } else {\n while (styleElement.firstChild) {\n styleElement.removeChild(styleElement.firstChild)\n }\n styleElement.appendChild(document.createTextNode(css))\n }\n}\n","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Error.vue?vue&type=style&index=0&id=172a6c9e&scoped=true&lang=css&\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"301e3984\", content, true, {});","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/sass-loader/lib/loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Viewer.vue?vue&type=style&index=0&lang=scss&\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"16b36902\", content, true, {});","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/sass-loader/lib/loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Images.vue?vue&type=style&index=0&id=7891d82c&scoped=true&lang=scss&\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"84fb7428\", content, true, {});","// style-loader: Adds some css to the DOM by adding a <style> tag\n\n// load the styles\nvar content = require(\"!!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Videos.vue?vue&type=style&index=0&id=6873d5ea&scoped=true&lang=css&\");\nif(typeof content === 'string') content = [[module.id, content, '']];\nif(content.locals) module.exports = content.locals;\n// add the styles to the DOM\nvar add = require(\"!../../node_modules/vue-style-loader/lib/addStylesClient.js\").default\nvar update = add(\"6863c1b2\", content, true, {});","module.exports = require('./lib/axios');","'use strict';\n\nvar utils = require('./utils');\nvar normalizeHeaderName = require('./helpers/normalizeHeaderName');\n\nvar DEFAULT_CONTENT_TYPE = {\n 'Content-Type': 'application/x-www-form-urlencoded'\n};\n\nfunction setContentTypeIfUnset(headers, value) {\n if (!utils.isUndefined(headers) && utils.isUndefined(headers['Content-Type'])) {\n headers['Content-Type'] = value;\n }\n}\n\nfunction getDefaultAdapter() {\n var adapter;\n if (typeof XMLHttpRequest !== 'undefined') {\n // For browsers use XHR adapter\n adapter = require('./adapters/xhr');\n } else if (typeof process !== 'undefined') {\n // For node use HTTP adapter\n adapter = require('./adapters/http');\n }\n return adapter;\n}\n\nvar defaults = {\n adapter: getDefaultAdapter(),\n\n transformRequest: [function transformRequest(data, headers) {\n normalizeHeaderName(headers, 'Content-Type');\n if (utils.isFormData(data) ||\n utils.isArrayBuffer(data) ||\n utils.isBuffer(data) ||\n utils.isStream(data) ||\n utils.isFile(data) ||\n utils.isBlob(data)\n ) {\n return data;\n }\n if (utils.isArrayBufferView(data)) {\n return data.buffer;\n }\n if (utils.isURLSearchParams(data)) {\n setContentTypeIfUnset(headers, 'application/x-www-form-urlencoded;charset=utf-8');\n return data.toString();\n }\n if (utils.isObject(data)) {\n setContentTypeIfUnset(headers, 'application/json;charset=utf-8');\n return JSON.stringify(data);\n }\n return data;\n }],\n\n transformResponse: [function transformResponse(data) {\n /*eslint no-param-reassign:0*/\n if (typeof data === 'string') {\n try {\n data = JSON.parse(data);\n } catch (e) { /* Ignore */ }\n }\n return data;\n }],\n\n /**\n * A timeout in milliseconds to abort a request. If set to 0 (default) a\n * timeout is not created.\n */\n timeout: 0,\n\n xsrfCookieName: 'XSRF-TOKEN',\n xsrfHeaderName: 'X-XSRF-TOKEN',\n\n maxContentLength: -1,\n\n validateStatus: function validateStatus(status) {\n return status >= 200 && status < 300;\n }\n};\n\ndefaults.headers = {\n common: {\n 'Accept': 'application/json, text/plain, */*'\n }\n};\n\nutils.forEach(['delete', 'get', 'head'], function forEachMethodNoData(method) {\n defaults.headers[method] = {};\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n defaults.headers[method] = utils.merge(DEFAULT_CONTENT_TYPE);\n});\n\nmodule.exports = defaults;\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","'use strict';\n\nmodule.exports = function bind(fn, thisArg) {\n return function wrap() {\n var args = new Array(arguments.length);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i];\n }\n return fn.apply(thisArg, args);\n };\n};\n","// shim for using process in browser\nvar process = module.exports = {};\n\n// cached from whatever global is present so that test runners that stub it\n// don't break things. But we need to wrap it in a try catch in case it is\n// wrapped in strict mode code which doesn't define any globals. It's inside a\n// function because try/catches deoptimize in certain engines.\n\nvar cachedSetTimeout;\nvar cachedClearTimeout;\n\nfunction defaultSetTimout() {\n throw new Error('setTimeout has not been defined');\n}\nfunction defaultClearTimeout () {\n throw new Error('clearTimeout has not been defined');\n}\n(function () {\n try {\n if (typeof setTimeout === 'function') {\n cachedSetTimeout = setTimeout;\n } else {\n cachedSetTimeout = defaultSetTimout;\n }\n } catch (e) {\n cachedSetTimeout = defaultSetTimout;\n }\n try {\n if (typeof clearTimeout === 'function') {\n cachedClearTimeout = clearTimeout;\n } else {\n cachedClearTimeout = defaultClearTimeout;\n }\n } catch (e) {\n cachedClearTimeout = defaultClearTimeout;\n }\n} ())\nfunction runTimeout(fun) {\n if (cachedSetTimeout === setTimeout) {\n //normal enviroments in sane situations\n return setTimeout(fun, 0);\n }\n // if setTimeout wasn't available but was latter defined\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\n cachedSetTimeout = setTimeout;\n return setTimeout(fun, 0);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedSetTimeout(fun, 0);\n } catch(e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedSetTimeout.call(null, fun, 0);\n } catch(e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error\n return cachedSetTimeout.call(this, fun, 0);\n }\n }\n\n\n}\nfunction runClearTimeout(marker) {\n if (cachedClearTimeout === clearTimeout) {\n //normal enviroments in sane situations\n return clearTimeout(marker);\n }\n // if clearTimeout wasn't available but was latter defined\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\n cachedClearTimeout = clearTimeout;\n return clearTimeout(marker);\n }\n try {\n // when when somebody has screwed with setTimeout but no I.E. maddness\n return cachedClearTimeout(marker);\n } catch (e){\n try {\n // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally\n return cachedClearTimeout.call(null, marker);\n } catch (e){\n // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error.\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\n return cachedClearTimeout.call(this, marker);\n }\n }\n\n\n\n}\nvar queue = [];\nvar draining = false;\nvar currentQueue;\nvar queueIndex = -1;\n\nfunction cleanUpNextTick() {\n if (!draining || !currentQueue) {\n return;\n }\n draining = false;\n if (currentQueue.length) {\n queue = currentQueue.concat(queue);\n } else {\n queueIndex = -1;\n }\n if (queue.length) {\n drainQueue();\n }\n}\n\nfunction drainQueue() {\n if (draining) {\n return;\n }\n var timeout = runTimeout(cleanUpNextTick);\n draining = true;\n\n var len = queue.length;\n while(len) {\n currentQueue = queue;\n queue = [];\n while (++queueIndex < len) {\n if (currentQueue) {\n currentQueue[queueIndex].run();\n }\n }\n queueIndex = -1;\n len = queue.length;\n }\n currentQueue = null;\n draining = false;\n runClearTimeout(timeout);\n}\n\nprocess.nextTick = function (fun) {\n var args = new Array(arguments.length - 1);\n if (arguments.length > 1) {\n for (var i = 1; i < arguments.length; i++) {\n args[i - 1] = arguments[i];\n }\n }\n queue.push(new Item(fun, args));\n if (queue.length === 1 && !draining) {\n runTimeout(drainQueue);\n }\n};\n\n// v8 likes predictible objects\nfunction Item(fun, array) {\n this.fun = fun;\n this.array = array;\n}\nItem.prototype.run = function () {\n this.fun.apply(null, this.array);\n};\nprocess.title = 'browser';\nprocess.browser = true;\nprocess.env = {};\nprocess.argv = [];\nprocess.version = ''; // empty string to avoid regexp issues\nprocess.versions = {};\n\nfunction noop() {}\n\nprocess.on = noop;\nprocess.addListener = noop;\nprocess.once = noop;\nprocess.off = noop;\nprocess.removeListener = noop;\nprocess.removeAllListeners = noop;\nprocess.emit = noop;\nprocess.prependListener = noop;\nprocess.prependOnceListener = noop;\n\nprocess.listeners = function (name) { return [] }\n\nprocess.binding = function (name) {\n throw new Error('process.binding is not supported');\n};\n\nprocess.cwd = function () { return '/' };\nprocess.chdir = function (dir) {\n throw new Error('process.chdir is not supported');\n};\nprocess.umask = function() { return 0; };\n","'use strict';\n\nvar utils = require('./../utils');\nvar settle = require('./../core/settle');\nvar buildURL = require('./../helpers/buildURL');\nvar parseHeaders = require('./../helpers/parseHeaders');\nvar isURLSameOrigin = require('./../helpers/isURLSameOrigin');\nvar createError = require('../core/createError');\n\nmodule.exports = function xhrAdapter(config) {\n return new Promise(function dispatchXhrRequest(resolve, reject) {\n var requestData = config.data;\n var requestHeaders = config.headers;\n\n if (utils.isFormData(requestData)) {\n delete requestHeaders['Content-Type']; // Let the browser set it\n }\n\n var request = new XMLHttpRequest();\n\n // HTTP basic authentication\n if (config.auth) {\n var username = config.auth.username || '';\n var password = config.auth.password || '';\n requestHeaders.Authorization = 'Basic ' + btoa(username + ':' + password);\n }\n\n request.open(config.method.toUpperCase(), buildURL(config.url, config.params, config.paramsSerializer), true);\n\n // Set the request timeout in MS\n request.timeout = config.timeout;\n\n // Listen for ready state\n request.onreadystatechange = function handleLoad() {\n if (!request || request.readyState !== 4) {\n return;\n }\n\n // The request errored out and we didn't get a response, this will be\n // handled by onerror instead\n // With one exception: request that using file: protocol, most browsers\n // will return status as 0 even though it's a successful request\n if (request.status === 0 && !(request.responseURL && request.responseURL.indexOf('file:') === 0)) {\n return;\n }\n\n // Prepare the response\n var responseHeaders = 'getAllResponseHeaders' in request ? parseHeaders(request.getAllResponseHeaders()) : null;\n var responseData = !config.responseType || config.responseType === 'text' ? request.responseText : request.response;\n var response = {\n data: responseData,\n status: request.status,\n statusText: request.statusText,\n headers: responseHeaders,\n config: config,\n request: request\n };\n\n settle(resolve, reject, response);\n\n // Clean up request\n request = null;\n };\n\n // Handle low level network errors\n request.onerror = function handleError() {\n // Real errors are hidden from us by the browser\n // onerror should only fire if it's a network error\n reject(createError('Network Error', config, null, request));\n\n // Clean up request\n request = null;\n };\n\n // Handle timeout\n request.ontimeout = function handleTimeout() {\n reject(createError('timeout of ' + config.timeout + 'ms exceeded', config, 'ECONNABORTED',\n request));\n\n // Clean up request\n request = null;\n };\n\n // Add xsrf header\n // This is only done if running in a standard browser environment.\n // Specifically not if we're in a web worker, or react-native.\n if (utils.isStandardBrowserEnv()) {\n var cookies = require('./../helpers/cookies');\n\n // Add xsrf header\n var xsrfValue = (config.withCredentials || isURLSameOrigin(config.url)) && config.xsrfCookieName ?\n cookies.read(config.xsrfCookieName) :\n undefined;\n\n if (xsrfValue) {\n requestHeaders[config.xsrfHeaderName] = xsrfValue;\n }\n }\n\n // Add headers to the request\n if ('setRequestHeader' in request) {\n utils.forEach(requestHeaders, function setRequestHeader(val, key) {\n if (typeof requestData === 'undefined' && key.toLowerCase() === 'content-type') {\n // Remove Content-Type if data is undefined\n delete requestHeaders[key];\n } else {\n // Otherwise add header to the request\n request.setRequestHeader(key, val);\n }\n });\n }\n\n // Add withCredentials to request if needed\n if (config.withCredentials) {\n request.withCredentials = true;\n }\n\n // Add responseType to request if needed\n if (config.responseType) {\n try {\n request.responseType = config.responseType;\n } catch (e) {\n // Expected DOMException thrown by browsers not compatible XMLHttpRequest Level 2.\n // But, this can be suppressed for 'json' type as it can be parsed by default 'transformResponse' function.\n if (config.responseType !== 'json') {\n throw e;\n }\n }\n }\n\n // Handle progress if needed\n if (typeof config.onDownloadProgress === 'function') {\n request.addEventListener('progress', config.onDownloadProgress);\n }\n\n // Not all browsers support upload events\n if (typeof config.onUploadProgress === 'function' && request.upload) {\n request.upload.addEventListener('progress', config.onUploadProgress);\n }\n\n if (config.cancelToken) {\n // Handle cancellation\n config.cancelToken.promise.then(function onCanceled(cancel) {\n if (!request) {\n return;\n }\n\n request.abort();\n reject(cancel);\n // Clean up request\n request = null;\n });\n }\n\n if (requestData === undefined) {\n requestData = null;\n }\n\n // Send the request\n request.send(requestData);\n });\n};\n","'use strict';\n\nvar enhanceError = require('./enhanceError');\n\n/**\n * Create an Error with the specified message, config, error code, request and response.\n *\n * @param {string} message The error message.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The created error.\n */\nmodule.exports = function createError(message, config, code, request, response) {\n var error = new Error(message);\n return enhanceError(error, config, code, request, response);\n};\n","'use strict';\n\nmodule.exports = function isCancel(value) {\n return !!(value && value.__CANCEL__);\n};\n","'use strict';\n\n/**\n * A `Cancel` is an object that is thrown when an operation is canceled.\n *\n * @class\n * @param {string=} message The message.\n */\nfunction Cancel(message) {\n this.message = message;\n}\n\nCancel.prototype.toString = function toString() {\n return 'Cancel' + (this.message ? ': ' + this.message : '');\n};\n\nCancel.prototype.__CANCEL__ = true;\n\nmodule.exports = Cancel;\n","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(\"Mixins/isMobile\",[],t):\"object\"==typeof exports?exports[\"Mixins/isMobile\"]=t():(e.NextcloudVue=e.NextcloudVue||{},e.NextcloudVue[\"Mixins/isMobile\"]=t())}(window,function(){return function(e){var t={};function n(o){if(t[o])return t[o].exports;var i=t[o]={i:o,l:!1,exports:{}};return e[o].call(i.exports,i,i.exports,n),i.l=!0,i.exports}return n.m=e,n.c=t,n.d=function(e,t,o){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:o})},n.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var i in e)n.d(o,i,function(t){return e[t]}.bind(null,i));return o},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,\"a\",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p=\"/dist/\",n(n.s=123)}({123:function(e,t,n){\"use strict\";n.r(t),\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.default={data:function(){return{isMobile:this._isMobile()}},beforeMount:function(){window.addEventListener(\"resize\",this._onResize)},beforeDestroy:function(){window.removeEventListener(\"resize\",this._onResize)},methods:{_onResize:function(){this.isMobile=this._isMobile()},_isMobile:function(){return document.documentElement.clientWidth<768}}}}})});\n//# sourceMappingURL=isMobile.js.map","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define(\"Mixins/isFullscreen\",[],t):\"object\"==typeof exports?exports[\"Mixins/isFullscreen\"]=t():(e.NextcloudVue=e.NextcloudVue||{},e.NextcloudVue[\"Mixins/isFullscreen\"]=t())}(window,function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,\"a\",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p=\"/dist/\",n(n.s=122)}({122:function(e,t,n){\"use strict\";n.r(t),\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */t.default={data:function(){return{isFullscreen:this._isFullscreen()}},beforeMount:function(){window.addEventListener(\"resize\",this._onResize)},beforeDestroy:function(){window.removeEventListener(\"resize\",this._onResize)},methods:{_onResize:function(){this.isFullscreen=this._isFullscreen()},_isFullscreen:function(){return window.outerHeight===screen.height}}}}})});\n//# sourceMappingURL=isFullscreen.js.map","!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e(require(\"vue\")):\"function\"==typeof define&&define.amd?define(\"Components/Modal\",[\"vue\"],e):\"object\"==typeof exports?exports[\"Components/Modal\"]=e(require(\"vue\")):(t.NextcloudVue=t.NextcloudVue||{},t.NextcloudVue[\"Components/Modal\"]=e(t.Vue))}(window,function(e){return function(t){var e={};function n(i){if(e[i])return e[i].exports;var o=e[i]={i:i,l:!1,exports:{}};return t[i].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=t,n.c=e,n.d=function(t,e,i){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:i})},n.r=function(t){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&\"object\"==typeof t&&t&&t.__esModule)return t;var i=Object.create(null);if(n.r(i),Object.defineProperty(i,\"default\",{enumerable:!0,value:t}),2&e&&\"string\"!=typeof t)for(var o in t)n.d(i,o,function(e){return t[e]}.bind(null,o));return i},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,\"a\",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p=\"/dist/\",n(n.s=125)}({0:function(t,e,n){\"use strict\";function i(t,e,n,i,o,r,a,s){var A,c=\"function\"==typeof t?t.options:t;if(e&&(c.render=e,c.staticRenderFns=n,c._compiled=!0),i&&(c.functional=!0),r&&(c._scopeId=\"data-v-\"+r),a?(A=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||\"undefined\"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),o&&o.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(a)},c._ssrRegister=A):o&&(A=s?function(){o.call(this,this.$root.$options.shadowRoot)}:o),A)if(c.functional){c._injectStyles=A;var l=c.render;c.render=function(t,e){return A.call(e),l(t,e)}}else{var u=c.beforeCreate;c.beforeCreate=u?[].concat(u,A):[A]}return{exports:t,options:c}}n.d(e,\"a\",function(){return i})},1:function(t,e,n){\"use strict\";t.exports=function(t){var e=[];return e.toString=function(){return this.map(function(e){var n=function(t,e){var n=t[1]||\"\",i=t[3];if(!i)return n;if(e&&\"function\"==typeof btoa){var o=(a=i,s=btoa(unescape(encodeURIComponent(JSON.stringify(a)))),A=\"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(s),\"/*# \".concat(A,\" */\")),r=i.sources.map(function(t){return\"/*# sourceURL=\".concat(i.sourceRoot).concat(t,\" */\")});return[n].concat(r).concat([o]).join(\"\\n\")}var a,s,A;return[n].join(\"\\n\")}(e,t);return e[2]?\"@media \".concat(e[2],\"{\").concat(n,\"}\"):n}).join(\"\")},e.i=function(t,n){\"string\"==typeof t&&(t=[[null,t,\"\"]]);for(var i={},o=0;o<this.length;o++){var r=this[o][0];null!=r&&(i[r]=!0)}for(var a=0;a<t.length;a++){var s=t[a];null!=s[0]&&i[s[0]]||(n&&!s[2]?s[2]=n:n&&(s[2]=\"(\".concat(s[2],\") and (\").concat(n,\")\")),e.push(s))}},e}},10:function(t,e){t.exports=\"data:font/woff;base64,d09GRgABAAAAAAlwAAoAAAAACSgAAQAAAAAAAAAAAAAAAAAAAAAAAAAAAABPUy8yAAAA9AAAAGAAAABgdOOQiGNtYXAAAAFUAAABSgAAAUrqJOu8Z2x5ZgAAAqAAAAM8AAADPHQFn1loZWFkAAAF3AAAADYAAAA2JUKckmhoZWEAAAYUAAAAJAAAACQnHBOAaG10eAAABjgAAAAaAAAAGhOHAABsb2NhAAAGVAAAABgAAAAYA5oEoG1heHAAAAZsAAAAIAAAACABGABXbmFtZQAABowAAAJGAAACRg0gUPlwb3N0AAAI1AAAAJwAAACc+8sNdgAEE4gBkAAFAAAMZQ2sAAACvAxlDawAAAlgAPUFCgAAAgAFAwAAAAAAAAAAAAAQAAAAAAAAAAAAAABQZkVkAEDqAeoLE4gAAAHCE4gAAAAAAAEAAAAAAAAAAAAAACAAAAAAAAMAAAADAAAAHAABAAAAAABEAAMAAQAAABwABAAoAAAABgAEAAEAAuoG6gv//wAA6gHqB///FgAV/wABAAAAAAAAAAABBgAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAIAAAAADqYPQwAFAAsAAAkCEQkEEQkBDqb6ggV++7oERvqC+oIFfvu6BEYPQvqC+oIBOARGBEYBOPqC+oIBOARGBEYAAQAAAAANbhJQAAUAAAkBEQkBEQYbB1P3dAiMCcT4rf7ICIsIjP7HAAIAAAAAD98PQwAFAAsAAAkCEQkEEQkBBOIFfvqCBEb7ugV+BX/6gQRG+7oERgV+BX7+yPu6+7r+yAV+BX7+yPu6+7oAAQAAAAAOphJQAAUAAAkBEQkBEQ1u+K0Ii/d1CcQHUwE593T3dQE4AAEAAAAAERcRFwALAAAJCxEX/e36wPrA/e0FQPrAAhMFQAVAAhP6wASE/e0FQPrAAhMFQAVAAhP6wAVA/e36wAAB//8AABOTEuwAMwAAASIHDgEXFhcBISYHBgcGBwYUFxYXFhcWNyEBBgcGFxYXHgEXFhcWNzY3ATY3NicmJwEuAQpgZU9KRhASSAXX8eBNPjopJxQUFBQnKTo+TQ4g+ik3GhgDAxsZVjU3Oz46PzUH7TsVFRQVPPgTLHQS7Dk0rFlgR/oqARsYLiw5OHg4OSwuGBsC+ik1Pzs+Ojc2VhkaAwMYGTgH7DxRUE9SPAfsLTIAAAADAAAAABEXERcAAwAHAAsAAAERIREBESERAREhEQJxDqbxWg6m8VoOphEX/Y8Ccfnm/Y8Ccfnl/Y8CcQADAAAAABJQDDUAGAAxAEoAAAEiBw4BBwYWFx4BFxYyNz4BNzY0Jy4BJyYhIgcOAQcGFBceARcWMjc+ATc2NCcuAScmISIHDgEHBhQXHgEXFjI3PgE3NjQnLgEnJgOqgHRwrS8yATEvrXB0/3RwrS8yMi+tcHQFm390cK0wMTEwrXB0/nRwrTAxMTCtcHQFnIB0cK0vMTEvrXB0/3RwrS8yMi+tcHQMNTEwrXB0/nRwrTAxMTCtcHT+dHCtMDExMK1wdP50cK0wMTEwrXB0/nRwrTAxMTCtcHT+dHCtMDExMK1wdP50cK0wMQAAAAIAAAAAD98P3wADAAcAAAERIREhESERA6oE4gJxBOIP3/PLDDXzyww1AAAAAQAAAAARFxEXAAIAAAkCAnEOpvFaERf4rfitAAEAAAABAAAkdhYtXw889QALE4gAAAAA2XGKkAAAAADZIK6R//8AABOTEuwAAAAIAAIAAAAAAAAAAQAAE4gAAAAAE4j////1E5MAAQAAAAAAAAAAAAAAAAAAAAIAAAAAE4gAAAAAAAAAAAAA//8AAAAAAAAAAAAAAAAAAAAiADYAWABsAIwA5gEEAXoBkAGeAAEAAAALAEsAAwAAAAAAAgAAAAoACgAAAP8AAAAAAAAAAAAQAMYAAQAAAAAAAQAMAAAAAQAAAAAAAgAHAAwAAQAAAAAAAwAMABMAAQAAAAAABAAMAB8AAQAAAAAABQALACsAAQAAAAAABgAMADYAAQAAAAAACgArAEIAAQAAAAAACwATAG0AAwABBAkAAQAYAIAAAwABBAkAAgAOAJgAAwABBAkAAwAYAKYAAwABBAkABAAYAL4AAwABBAkABQAWANYAAwABBAkABgAYAOwAAwABBAkACgBWAQQAAwABBAkACwAmAVppY29uZm9udC12dWVSZWd1bGFyaWNvbmZvbnQtdnVlaWNvbmZvbnQtdnVlVmVyc2lvbiAxLjBpY29uZm9udC12dWVHZW5lcmF0ZWQgYnkgc3ZnMnR0ZiBmcm9tIEZvbnRlbGxvIHByb2plY3QuaHR0cDovL2ZvbnRlbGxvLmNvbQBpAGMAbwBuAGYAbwBuAHQALQB2AHUAZQBSAGUAZwB1AGwAYQByAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAGkAYwBvAG4AZgBvAG4AdAAtAHYAdQBlAFYAZQByAHMAaQBvAG4AIAAxAC4AMABpAGMAbwBuAGYAbwBuAHQALQB2AHUAZQBHAGUAbgBlAHIAYQB0AGUAZAAgAGIAeQAgAHMAdgBnADIAdAB0AGYAIABmAHIAbwBtACAARgBvAG4AdABlAGwAbABvACAAcAByAG8AagBlAGMAdAAuAGgAdAB0AHAAOgAvAC8AZgBvAG4AdABlAGwAbABvAC4AYwBvAG0AAAACAAAAAAAAADIAAAAAAAAAAAAAAAAAAAAAAAAAAAALAAsAAAECAQMBBAEFAQYBBwEIAQkBCgELEWFycm93LWxlZnQtZG91YmxlCmFycm93LWxlZnQSYXJyb3ctcmlnaHQtZG91YmxlC2Fycm93LXJpZ2h0BWNsb3NlDGNvbmZpcm0tZmFkZQRtZW51BG1vcmUFcGF1c2UEcGxheQ==\"},11:function(t,e){t.exports=\"data:font/ttf;base64,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\"},12:function(t,e){t.exports=\"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBzdGFuZGFsb25lPSJubyI/PjwhRE9DVFlQRSBzdmcgUFVCTElDICItLy9XM0MvL0RURCBTVkcgMS4xLy9FTiIgImh0dHA6Ly93d3cudzMub3JnL0dyYXBoaWNzL1NWRy8xLjEvRFREL3N2ZzExLmR0ZCIgPjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48bWV0YWRhdGE+PC9tZXRhZGF0YT48ZGVmcz48Zm9udCBpZD0iaWNvbmZvbnQtdnVlIiBob3Jpei1hZHYteD0iNTAwMCI+PGZvbnQtZmFjZSBmb250LWZhbWlseT0iaWNvbmZvbnQtdnVlIiBmb250LXdlaWdodD0iNDAwIiBmb250LXN0cmV0Y2g9Im5vcm1hbCIgdW5pdHMtcGVyLWVtPSI1MDAwIiBwYW5vc2UtMT0iMiAwIDUgMyAwIDAgMCAwIDAgMCIgYXNjZW50PSI1MDAwIiBkZXNjZW50PSIwIiB4LWhlaWdodD0iMCIgYmJveD0iLTEgMCA1MDExIDQ4NDQiIHVuZGVybGluZS10aGlja25lc3M9IjAiIHVuZGVybGluZS1wb3NpdGlvbj0iNTAiIHVuaWNvZGUtcmFuZ2U9IlUrZWEwMS1lYTBiIiAvPjxtaXNzaW5nLWdseXBoIGhvcml6LWFkdi14PSIwIiAgLz48Z2x5cGggZ2x5cGgtbmFtZT0iYXJyb3ctbGVmdC1kb3VibGUiIHVuaWNvZGU9IiYjeGVhMDE7IiBkPSJNMzc1MCAzOTA2IGwtMTQwNiAtMTQwNiBsMTQwNiAtMTQwNiBsMCAzMTIgbC0xMDk0IDEwOTQgbDEwOTQgMTA5NCBsMCAzMTIgWk0yMzQ0IDM5MDYgbC0xNDA2IC0xNDA2IGwxNDA2IC0xNDA2IGwwIDMxMiBsLTEwOTQgMTA5NCBsMTA5NCAxMDk0IGwwIDMxMiBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJhcnJvdy1sZWZ0IiB1bmljb2RlPSImI3hlYTAyOyIgZD0iTTE1NjMgMjUwMCBsMTg3NSAtMTg3NSBsMCAtMzEyIGwtMjE4OCAyMTg3IGwyMTg4IDIxODggbDAgLTMxMyBsLTE4NzUgLTE4NzUgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0iYXJyb3ctcmlnaHQtZG91YmxlIiB1bmljb2RlPSImI3hlYTAzOyIgZD0iTTEyNTAgMTA5NCBsMTQwNiAxNDA2IGwtMTQwNiAxNDA2IGwwIC0zMTIgbDEwOTQgLTEwOTQgbC0xMDk0IC0xMDk0IGwwIC0zMTIgWk0yNjU2IDEwOTQgbDE0MDcgMTQwNiBsLTE0MDcgMTQwNiBsMCAtMzEyIGwxMDk0IC0xMDk0IGwtMTA5NCAtMTA5NCBsMCAtMzEyIFoiIC8+PGdseXBoIGdseXBoLW5hbWU9ImFycm93LXJpZ2h0IiB1bmljb2RlPSImI3hlYTA0OyIgZD0iTTM0MzggMjUwMCBsLTE4NzUgMTg3NSBsMCAzMTMgbDIxODcgLTIxODggbC0yMTg3IC0yMTg3IGwwIDMxMiBsMTg3NSAxODc1IFoiIC8+PGdseXBoIGdseXBoLW5hbWU9ImNsb3NlIiB1bmljb2RlPSImI3hlYTA1OyIgZD0iTTQzNzUgMTE1NiBsLTUzMSAtNTMxIGwtMTM0NCAxMzQ0IGwtMTM0NCAtMTM0NCBsLTUzMSA1MzEgbDEzNDQgMTM0NCBsLTEzNDQgMTM0NCBsNTMxIDUzMSBsMTM0NCAtMTM0NCBsMTM0NCAxMzQ0IGw1MzEgLTUzMSBsLTEzNDQgLTEzNDQgbDEzNDQgLTEzNDQgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0iY29uZmlybS1mYWRlIiB1bmljb2RlPSImI3hlYTA2OyYjeGVhMDc7IiBkPSJNMjY1NiA0ODQ0IHEtMTAxIDAgLTE4MCAtNTcgcS03NCAtNTIgLTEwOSAtMTM4IHEtMzUgLTg2IC0xOSAtMTc1IHExOCAtOTYgOTAgLTE2NyBsMTQ5NSAtMTQ5NCBsLTM2MTYgMCBxLTc3IDEgLTEzOSAtMjYgcS01OCAtMjQgLTk5IC03MCBxLTM5IC00NCAtNTkgLTEwMSBxLTIwIC01NiAtMjAgLTExNiBxMCAtNjAgMjAgLTExNiBxMjAgLTU3IDU5IC0xMDEgcTQxIC00NiA5OSAtNzAgcTYyIC0yNyAxMzkgLTI1IGwzNjE2IDAgbC0xNDk1IC0xNDk1IHEtNTUgLTUzIC04MSAtMTE2IHEtMjQgLTU5IC0yMSAtMTIxIHEzIC01OCAzMCAtMTEzIHEyNSAtNTQgNjggLTk3IHE0MyAtNDMgOTYgLTY4IHE1NSAtMjYgMTE0IC0yOSBxNjIgLTMgMTIwIDIxIHE2MyAyNSAxMTYgODEgbDIwMjkgMjAyOCBxNTkgNjAgODAgMTQxIHEyMSA4MCAxIDE1OSBxLTIxIDgyIC04MSAxNDIgbC0yMDI5IDIwMjggcS00NCA0NSAtMTAyIDcwIHEtNTggMjUgLTEyMiAyNSBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJtZW51IiB1bmljb2RlPSImI3hlYTA4OyIgZD0iTTYyNSA0Mzc1IGwwIC02MjUgbDM3NTAgMCBsMCA2MjUgbC0zNzUwIDAgWk02MjUgMjgxMyBsMCAtNjI1IGwzNzUwIDAgbDAgNjI1IGwtMzc1MCAwIFpNNjI1IDEyNTAgbDAgLTYyNSBsMzc1MCAwIGwwIDYyNSBsLTM3NTAgMCBaIiAvPjxnbHlwaCBnbHlwaC1uYW1lPSJtb3JlIiB1bmljb2RlPSImI3hlYTA5OyIgZD0iTTkzOCAzMTI1IHEtMTI4IDAgLTI0NCAtNDkgcS0xMTIgLTQ4IC0xOTguNSAtMTM0LjUgcS04Ni41IC04Ni41IC0xMzMuNSAtMTk4LjUgcS01MCAtMTE2IC00OS41IC0yNDMgcTAuNSAtMTI3IDQ5LjUgLTI0MyBxNDcgLTExMiAxMzMuNSAtMTk4LjUgcTg2LjUgLTg2LjUgMTk4LjUgLTEzNC41IHExMTYgLTQ5IDI0My41IC00OSBxMTI3LjUgMCAyNDMuNSA0OSBxMTEyIDQ4IDE5OC41IDEzNC41IHE4Ni41IDg2LjUgMTMzLjUgMTk4LjUgcTUwIDExNiA1MCAyNDMgcTAgMTI3IC01MCAyNDMgcS00NyAxMTIgLTEzMy41IDE5OC41IHEtODYuNSA4Ni41IC0xOTguNSAxMzQuNSBxLTExNiA0OSAtMjQzIDQ5IFpNMjUwMCAzMTI1IHEtMTI3IDAgLTI0MyAtNDkgcS0xMTIgLTQ4IC0xOTguNSAtMTM0LjUgcS04Ni41IC04Ni41IC0xMzQuNSAtMTk4LjUgcS00OSAtMTE2IC00OSAtMjQzIHEwIC0xMjcgNDkgLTI0MyBxNDggLTExMiAxMzQuNSAtMTk4LjUgcTg2LjUgLTg2LjUgMTk4LjUgLTEzNC41IHExMTYgLTQ5IDI0MyAtNDkgcTEyNyAwIDI0MyA0OSBxMTEyIDQ4IDE5OC41IDEzNC41IHE4Ni41IDg2LjUgMTM0LjUgMTk4LjUgcTQ5IDExNiA0OSAyNDMgcTAgMTI3IC00OSAyNDMgcS00OCAxMTIgLTEzNC41IDE5OC41IHEtODYuNSA4Ni41IC0xOTguNSAxMzQuNSBxLTExNiA0OSAtMjQzIDQ5IFpNNDA2MyAzMTI1IHEtMTI4IDAgLTI0NCAtNDkgcS0xMTIgLTQ4IC0xOTguNSAtMTM0LjUgcS04Ni41IC04Ni41IC0xMzMuNSAtMTk4LjUgcS00OSAtMTE2IC00OSAtMjQzIHEwIC0xMjcgNDkgLTI0MyBxNDcgLTExMiAxMzMuNSAtMTk4LjUgcTg2LjUgLTg2LjUgMTk4LjUgLTEzNC41IHExMTYgLTQ5IDI0My41IC00OSBxMTI3LjUgMCAyNDMuNSA0OSBxMTEyIDQ4IDE5OC41IDEzNC41IHE4Ni41IDg2LjUgMTMzLjUgMTk4LjUgcTUwIDExNiA1MCAyNDMgcTAgMTI3IC01MCAyNDMgcS00NyAxMTIgLTEzMy41IDE5OC41IHEtODYuNSA4Ni41IC0xOTguNSAxMzQuNSBxLTExNiA0OSAtMjQzIDQ5IFoiIC8+PGdseXBoIGdseXBoLW5hbWU9InBhdXNlIiB1bmljb2RlPSImI3hlYTBhOyIgZD0iTTkzOCA0MDYzIGwwIC0zMTI1IGwxMjUwIDAgbDAgMzEyNSBsLTEyNTAgMCBaTTI4MTMgNDA2MyBsMCAtMzEyNSBsMTI1MCAwIGwwIDMxMjUgbC0xMjUwIDAgWiIgLz48Z2x5cGggZ2x5cGgtbmFtZT0icGxheSIgdW5pY29kZT0iJiN4ZWEwYjsiIGQ9Ik02MjUgNDM3NSBsMzc1MCAtMTg3NSBsLTM3NTAgLTE4NzUgbDAgMzc1MCBaIiAvPjwvZm9udD48L2RlZnM+PC9zdmc+\"},125:function(e,n,i){\"use strict\";i.r(n);var o=i(23),r=i(38),a=i.n(r),s=i(30),A=i(63),c=i(6);\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nfunction l(t,e){var n,i,o,r=e;this.start=function(){o=!0,i=new Date,n=setTimeout(t,r)},this.pause=function(){o=!1,clearTimeout(n),r-=new Date-i},this.clear=function(){o=!1,clearTimeout(n),r=0},this.getTimeLeft=function(){return o&&(this.pause(),this.start()),r},this.getStateRunning=function(){return o},this.start()}var u={name:\"Modal\",components:{Actions:s.default,ActionButton:A.default},directives:{tooltip:c.default},props:{title:{type:String,default:\"\"},hasPrevious:{type:Boolean,default:!1},hasNext:{type:Boolean,default:!1},outTransition:{type:Boolean,default:!1},enableSlideshow:{type:Boolean,default:!1},clearViewDelay:{type:Number,default:5e3},slideshowDelay:{type:Number,default:3e3},slideshowPaused:{type:Boolean,default:!1},enableSwipe:{type:Boolean,default:!0},spreadNavigation:{type:Boolean,default:!1},size:{type:String,default:\"normal\",validator:function(t){return-1!==[\"normal\",\"large\",\"full\"].indexOf(t)}},canClose:{type:Boolean,default:!0}},data:function(){return{mc:null,showModal:!1,clearView:!1,clearViewTimeout:null,playing:!1,slideshowTimeout:null}},computed:{modalTransitionName:function(){return\"modal-\".concat(this.outTransition?\"out\":\"in\")},playPauseTitle:function(){return this.playing?t(\"core\",\"Pause slideshow\"):t(\"core\",\"Start slideshow\")}},watch:{slideshowPaused:function(t){this.slideshowTimeout&&(t?this.slideshowTimeout.pause():this.slideshowTimeout.start())}},beforeMount:function(){window.addEventListener(\"keydown\",this.handleKeydown)},beforeDestroy:function(){window.removeEventListener(\"keydown\",this.handleKeydown)},mounted:function(){var t=this;this.showModal=!0,this.handleMouseMove(),this.mc=new a.a(this.$refs.mask),this.mc.on(\"swipeleft swiperight\",function(e){t.handleSwipe(e)}),document.body.insertBefore(this.$el,document.body.lastChild)},unmounted:function(){this.mc.off(\"swipeleft swiperight\"),this.mc.destroy()},methods:{previous:function(t){this.hasPrevious&&(t&&this.resetSlideshow(),this.$emit(\"previous\",t))},next:function(t){this.hasNext&&(t&&this.resetSlideshow(),this.$emit(\"next\",t))},close:function(t){var e=this;this.canClose&&(this.showModal=!1,setTimeout(function(){e.$emit(\"close\",t)},300))},handleKeydown:function(t){switch(t.keyCode){case 37:this.previous(t);break;case 13:case 39:this.next(t);break;case 27:this.close(t)}},handleSwipe:function(t){this.enableSwipe&&(\"swipeleft\"===t.type?this.next(t):\"swiperight\"===t.type&&this.previous(t))},handleMouseMove:function(){var t=this;this.clearViewDelay>0&&(this.clearView=!1,clearTimeout(this.clearViewTimeout),this.clearViewTimeout=setTimeout(function(){t.clearView=!0},this.clearViewDelay))},togglePlayPause:function(){this.playing=!this.playing,this.playing?this.handleSlideshow():this.clearSlideshowTimeout()},resetSlideshow:function(){this.playing=!this.playing,this.clearSlideshowTimeout(),this.$nextTick(function(){this.togglePlayPause()})},handleSlideshow:function(){var t=this;this.playing=!0,this.hasNext?this.slideshowTimeout=new l(function(){t.next(),t.handleSlideshow()},this.slideshowDelay):(this.playing=!1,this.clearSlideshowTimeout())},clearSlideshowTimeout:function(){this.slideshowTimeout&&this.slideshowTimeout.clear()}}},d=(i(172),i(0)),p=i(85),f=i.n(p),h=Object(d.a)(u,function(){var t=this,e=t.$createElement,n=t._self._c||e;return n(\"transition\",{attrs:{name:\"fade\"}},[n(\"div\",{ref:\"mask\",staticClass:\"modal-mask\",on:{click:t.handleMouseMove,mousemove:t.handleMouseMove,touchmove:t.handleMouseMove}},[n(\"transition\",{attrs:{name:\"fade-visibility\"}},[n(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:!t.clearView,expression:\"!clearView\"}],staticClass:\"modal-header\",class:{invisible:t.clearView}},[\"\"!==t.title.trim()?n(\"div\",{staticClass:\"modal-title\"},[t._v(\"\\n\\t\\t\\t\\t\\t\"+t._s(t.title)+\"\\n\\t\\t\\t\\t\")]):t._e(),t._v(\" \"),n(\"div\",{staticClass:\"icons-menu\"},[n(\"Actions\",{staticClass:\"header-actions\"},[t._t(\"actions\")],2),t._v(\" \"),t.hasNext&&t.enableSlideshow?n(\"button\",{directives:[{name:\"tooltip\",rawName:\"v-tooltip.auto\",value:t.playPauseTitle,expression:\"playPauseTitle\",modifiers:{auto:!0}}],staticClass:\"play-pause\",class:{\"play-pause--paused\":t.slideshowPaused},on:{click:t.togglePlayPause}},[n(\"div\",{class:[t.playing?\"icon-pause\":\"icon-play\"]},[n(\"span\",{staticClass:\"hidden-visually\"},[t._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\"+t._s(t.playPauseTitle)+\"\\n\\t\\t\\t\\t\\t\\t\\t\")])]),t._v(\" \"),t.playing?n(\"svg\",{staticClass:\"progress-ring\",attrs:{height:\"50\",width:\"50\"}},[n(\"circle\",{staticClass:\"progress-ring__circle\",attrs:{stroke:\"white\",\"stroke-width\":\"2\",fill:\"transparent\",r:\"15\",cx:\"25\",cy:\"25\"}})]):t._e()]):t._e(),t._v(\" \"),t.canClose?n(\"Actions\",{staticClass:\"header-close\"},[n(\"ActionButton\",{attrs:{icon:\"icon-close\"},on:{click:t.close}},[t._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\"+t._s(t.t(\"core\",\"Close\"))+\"\\n\\t\\t\\t\\t\\t\\t\")])],1):t._e()],1)])]),t._v(\" \"),n(\"transition\",{attrs:{name:t.modalTransitionName}},[n(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.showModal,expression:\"showModal\"}],staticClass:\"modal-wrapper\",class:[\"modal-wrapper--\"+t.size,t.spreadNavigation?\"modal-wrapper--spread-navigation\":\"\"],on:{click:function(e){return e.target!==e.currentTarget?null:t.close(e)}}},[n(\"transition\",{attrs:{name:\"fade-visibility\"}},[n(\"a\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.hasPrevious&&!t.clearView,expression:\"hasPrevious && !clearView\"}],staticClass:\"prev\",class:{invisible:t.clearView||!t.hasPrevious},on:{click:t.previous}},[n(\"div\",{staticClass:\"icon icon-previous\"},[n(\"span\",{staticClass:\"hidden-visually\"},[t._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\"+t._s(t.t(\"core\",\"Previous\"))+\"\\n\\t\\t\\t\\t\\t\\t\\t\")])])])]),t._v(\" \"),n(\"div\",{staticClass:\"modal-container\"},[t._t(\"default\")],2),t._v(\" \"),n(\"transition\",{attrs:{name:\"fade-visibility\"}},[n(\"a\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.hasNext&&!t.clearView,expression:\"hasNext && !clearView\"}],staticClass:\"next\",class:{invisible:t.clearView||!t.hasNext},on:{click:t.next}},[n(\"div\",{staticClass:\"icon icon-next\"},[n(\"span\",{staticClass:\"hidden-visually\"},[t._v(\"\\n\\t\\t\\t\\t\\t\\t\\t\\t\"+t._s(t.t(\"core\",\"Next\"))+\"\\n\\t\\t\\t\\t\\t\\t\\t\")])])])])],1)])],1)])},[],!1,null,\"9c792ef2\",null);\"function\"==typeof f.a&&f()(h);var v=h.exports;i.d(n,\"Modal\",function(){return v}),\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nObject(o.a)(v);n.default=v},13:function(t,e){function n(t){return\"function\"==typeof t.value||(console.warn(\"[Vue-click-outside:] provided expression\",t.expression,\"is not a function.\"),!1)}function i(t){return void 0!==t.componentInstance&&t.componentInstance.$isServer}t.exports={bind:function(t,e,o){function r(e){if(o.context){var n=e.path||e.composedPath&&e.composedPath();n&&n.length>0&&n.unshift(e.target),t.contains(e.target)||function(t,e){if(!t||!e)return!1;for(var n=0,i=e.length;n<i;n++)try{if(t.contains(e[n]))return!0;if(e[n].contains(t))return!1}catch(t){return!1}return!1}(o.context.popupItem,n)||t.__vueClickOutside__.callback(e)}}n(e)&&(t.__vueClickOutside__={handler:r,callback:e.value},!i(o)&&document.addEventListener(\"click\",r))},update:function(t,e){n(e)&&(t.__vueClickOutside__.callback=e.value)},unbind:function(t,e,n){!i(n)&&document.removeEventListener(\"click\",t.__vueClickOutside__.handler),delete t.__vueClickOutside__}}},14:function(t,e,n){\"use strict\";var i=n(7);\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */e.a={mixins:[i.a],props:{icon:{type:String,default:\"\",required:!0},title:{type:String,default:\"\"}},computed:{isIconUrl:function(){try{return new URL(this.icon)}catch(t){return!1}}},methods:{onClick:function(t){this.$emit(\"click\",t)}}}},15:function(t,e){var n;n=function(){return this}();try{n=n||new Function(\"return this\")()}catch(t){\"object\"==typeof window&&(n=window)}t.exports=n},16:function(t,e,n){\"use strict\";(function(t){for(\n/**!\n * @fileOverview Kickass library to create and place poppers near their reference elements.\n * @version 1.15.0\n * @license\n * Copyright (c) 2016 Federico Zivolo and contributors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n */\nvar n=\"undefined\"!=typeof window&&\"undefined\"!=typeof document,i=[\"Edge\",\"Trident\",\"Firefox\"],o=0,r=0;r<i.length;r+=1)if(n&&navigator.userAgent.indexOf(i[r])>=0){o=1;break}var a=n&&window.Promise?function(t){var e=!1;return function(){e||(e=!0,window.Promise.resolve().then(function(){e=!1,t()}))}}:function(t){var e=!1;return function(){e||(e=!0,setTimeout(function(){e=!1,t()},o))}};function s(t){return t&&\"[object Function]\"==={}.toString.call(t)}function A(t,e){if(1!==t.nodeType)return[];var n=t.ownerDocument.defaultView.getComputedStyle(t,null);return e?n[e]:n}function c(t){return\"HTML\"===t.nodeName?t:t.parentNode||t.host}function l(t){if(!t)return document.body;switch(t.nodeName){case\"HTML\":case\"BODY\":return t.ownerDocument.body;case\"#document\":return t.body}var e=A(t),n=e.overflow,i=e.overflowX,o=e.overflowY;return/(auto|scroll|overlay)/.test(n+o+i)?t:l(c(t))}var u=n&&!(!window.MSInputMethodContext||!document.documentMode),d=n&&/MSIE 10/.test(navigator.userAgent);function p(t){return 11===t?u:10===t?d:u||d}function f(t){if(!t)return document.documentElement;for(var e=p(10)?document.body:null,n=t.offsetParent||null;n===e&&t.nextElementSibling;)n=(t=t.nextElementSibling).offsetParent;var i=n&&n.nodeName;return i&&\"BODY\"!==i&&\"HTML\"!==i?-1!==[\"TH\",\"TD\",\"TABLE\"].indexOf(n.nodeName)&&\"static\"===A(n,\"position\")?f(n):n:t?t.ownerDocument.documentElement:document.documentElement}function h(t){return null!==t.parentNode?h(t.parentNode):t}function v(t,e){if(!(t&&t.nodeType&&e&&e.nodeType))return document.documentElement;var n=t.compareDocumentPosition(e)&Node.DOCUMENT_POSITION_FOLLOWING,i=n?t:e,o=n?e:t,r=document.createRange();r.setStart(i,0),r.setEnd(o,0);var a,s,A=r.commonAncestorContainer;if(t!==A&&e!==A||i.contains(o))return\"BODY\"===(s=(a=A).nodeName)||\"HTML\"!==s&&f(a.firstElementChild)!==a?f(A):A;var c=h(t);return c.host?v(c.host,e):v(t,h(e).host)}function m(t){var e=\"top\"===(arguments.length>1&&void 0!==arguments[1]?arguments[1]:\"top\")?\"scrollTop\":\"scrollLeft\",n=t.nodeName;if(\"BODY\"===n||\"HTML\"===n){var i=t.ownerDocument.documentElement;return(t.ownerDocument.scrollingElement||i)[e]}return t[e]}function g(t,e){var n=\"x\"===e?\"Left\":\"Top\",i=\"Left\"===n?\"Right\":\"Bottom\";return parseFloat(t[\"border\"+n+\"Width\"],10)+parseFloat(t[\"border\"+i+\"Width\"],10)}function y(t,e,n,i){return Math.max(e[\"offset\"+t],e[\"scroll\"+t],n[\"client\"+t],n[\"offset\"+t],n[\"scroll\"+t],p(10)?parseInt(n[\"offset\"+t])+parseInt(i[\"margin\"+(\"Height\"===t?\"Top\":\"Left\")])+parseInt(i[\"margin\"+(\"Height\"===t?\"Bottom\":\"Right\")]):0)}function b(t){var e=t.body,n=t.documentElement,i=p(10)&&getComputedStyle(n);return{height:y(\"Height\",e,n,i),width:y(\"Width\",e,n,i)}}var w=function(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")},T=function(){function t(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,\"value\"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}return function(e,n,i){return n&&t(e.prototype,n),i&&t(e,i),e}}(),E=function(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t},x=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var i in n)Object.prototype.hasOwnProperty.call(n,i)&&(t[i]=n[i])}return t};function C(t){return x({},t,{right:t.left+t.width,bottom:t.top+t.height})}function _(t){var e={};try{if(p(10)){e=t.getBoundingClientRect();var n=m(t,\"top\"),i=m(t,\"left\");e.top+=n,e.left+=i,e.bottom+=n,e.right+=i}else e=t.getBoundingClientRect()}catch(t){}var o={left:e.left,top:e.top,width:e.right-e.left,height:e.bottom-e.top},r=\"HTML\"===t.nodeName?b(t.ownerDocument):{},a=r.width||t.clientWidth||o.right-o.left,s=r.height||t.clientHeight||o.bottom-o.top,c=t.offsetWidth-a,l=t.offsetHeight-s;if(c||l){var u=A(t);c-=g(u,\"x\"),l-=g(u,\"y\"),o.width-=c,o.height-=l}return C(o)}function I(t,e){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=p(10),o=\"HTML\"===e.nodeName,r=_(t),a=_(e),s=l(t),c=A(e),u=parseFloat(c.borderTopWidth,10),d=parseFloat(c.borderLeftWidth,10);n&&o&&(a.top=Math.max(a.top,0),a.left=Math.max(a.left,0));var f=C({top:r.top-a.top-u,left:r.left-a.left-d,width:r.width,height:r.height});if(f.marginTop=0,f.marginLeft=0,!i&&o){var h=parseFloat(c.marginTop,10),v=parseFloat(c.marginLeft,10);f.top-=u-h,f.bottom-=u-h,f.left-=d-v,f.right-=d-v,f.marginTop=h,f.marginLeft=v}return(i&&!n?e.contains(s):e===s&&\"BODY\"!==s.nodeName)&&(f=function(t,e){var n=arguments.length>2&&void 0!==arguments[2]&&arguments[2],i=m(e,\"top\"),o=m(e,\"left\"),r=n?-1:1;return t.top+=i*r,t.bottom+=i*r,t.left+=o*r,t.right+=o*r,t}(f,e)),f}function B(t){if(!t||!t.parentElement||p())return document.documentElement;for(var e=t.parentElement;e&&\"none\"===A(e,\"transform\");)e=e.parentElement;return e||document.documentElement}function M(t,e,n,i){var o=arguments.length>4&&void 0!==arguments[4]&&arguments[4],r={top:0,left:0},a=o?B(t):v(t,e);if(\"viewport\"===i)r=function(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=t.ownerDocument.documentElement,i=I(t,n),o=Math.max(n.clientWidth,window.innerWidth||0),r=Math.max(n.clientHeight,window.innerHeight||0),a=e?0:m(n),s=e?0:m(n,\"left\");return C({top:a-i.top+i.marginTop,left:s-i.left+i.marginLeft,width:o,height:r})}(a,o);else{var s=void 0;\"scrollParent\"===i?\"BODY\"===(s=l(c(e))).nodeName&&(s=t.ownerDocument.documentElement):s=\"window\"===i?t.ownerDocument.documentElement:i;var u=I(s,a,o);if(\"HTML\"!==s.nodeName||function t(e){var n=e.nodeName;if(\"BODY\"===n||\"HTML\"===n)return!1;if(\"fixed\"===A(e,\"position\"))return!0;var i=c(e);return!!i&&t(i)}(a))r=u;else{var d=b(t.ownerDocument),p=d.height,f=d.width;r.top+=u.top-u.marginTop,r.bottom=p+u.top,r.left+=u.left-u.marginLeft,r.right=f+u.left}}var h=\"number\"==typeof(n=n||0);return r.left+=h?n:n.left||0,r.top+=h?n:n.top||0,r.right-=h?n:n.right||0,r.bottom-=h?n:n.bottom||0,r}function N(t,e,n,i,o){var r=arguments.length>5&&void 0!==arguments[5]?arguments[5]:0;if(-1===t.indexOf(\"auto\"))return t;var a=M(n,i,r,o),s={top:{width:a.width,height:e.top-a.top},right:{width:a.right-e.right,height:a.height},bottom:{width:a.width,height:a.bottom-e.bottom},left:{width:e.left-a.left,height:a.height}},A=Object.keys(s).map(function(t){return x({key:t},s[t],{area:(e=s[t],e.width*e.height)});var e}).sort(function(t,e){return e.area-t.area}),c=A.filter(function(t){var e=t.width,i=t.height;return e>=n.clientWidth&&i>=n.clientHeight}),l=c.length>0?c[0].key:A[0].key,u=t.split(\"-\")[1];return l+(u?\"-\"+u:\"\")}function O(t,e,n){var i=arguments.length>3&&void 0!==arguments[3]?arguments[3]:null;return I(n,i?B(e):v(e,n),i)}function k(t){var e=t.ownerDocument.defaultView.getComputedStyle(t),n=parseFloat(e.marginTop||0)+parseFloat(e.marginBottom||0),i=parseFloat(e.marginLeft||0)+parseFloat(e.marginRight||0);return{width:t.offsetWidth+i,height:t.offsetHeight+n}}function S(t){var e={left:\"right\",right:\"left\",bottom:\"top\",top:\"bottom\"};return t.replace(/left|right|bottom|top/g,function(t){return e[t]})}function D(t,e,n){n=n.split(\"-\")[0];var i=k(t),o={width:i.width,height:i.height},r=-1!==[\"right\",\"left\"].indexOf(n),a=r?\"top\":\"left\",s=r?\"left\":\"top\",A=r?\"height\":\"width\",c=r?\"width\":\"height\";return o[a]=e[a]+e[A]/2-i[A]/2,o[s]=n===s?e[s]-i[c]:e[S(s)],o}function L(t,e){return Array.prototype.find?t.find(e):t.filter(e)[0]}function Q(t,e,n){return(void 0===n?t:t.slice(0,function(t,e,n){if(Array.prototype.findIndex)return t.findIndex(function(t){return t[e]===n});var i=L(t,function(t){return t[e]===n});return t.indexOf(i)}(t,\"name\",n))).forEach(function(t){t.function&&console.warn(\"`modifier.function` is deprecated, use `modifier.fn`!\");var n=t.function||t.fn;t.enabled&&s(n)&&(e.offsets.popper=C(e.offsets.popper),e.offsets.reference=C(e.offsets.reference),e=n(e,t))}),e}function G(t,e){return t.some(function(t){var n=t.name;return t.enabled&&n===e})}function j(t){for(var e=[!1,\"ms\",\"Webkit\",\"Moz\",\"O\"],n=t.charAt(0).toUpperCase()+t.slice(1),i=0;i<e.length;i++){var o=e[i],r=o?\"\"+o+n:t;if(void 0!==document.body.style[r])return r}return null}function P(t){var e=t.ownerDocument;return e?e.defaultView:window}function R(t,e,n,i){n.updateBound=i,P(t).addEventListener(\"resize\",n.updateBound,{passive:!0});var o=l(t);return function t(e,n,i,o){var r=\"BODY\"===e.nodeName,a=r?e.ownerDocument.defaultView:e;a.addEventListener(n,i,{passive:!0}),r||t(l(a.parentNode),n,i,o),o.push(a)}(o,\"scroll\",n.updateBound,n.scrollParents),n.scrollElement=o,n.eventsEnabled=!0,n}function Y(){var t,e;this.state.eventsEnabled&&(cancelAnimationFrame(this.scheduleUpdate),this.state=(t=this.reference,e=this.state,P(t).removeEventListener(\"resize\",e.updateBound),e.scrollParents.forEach(function(t){t.removeEventListener(\"scroll\",e.updateBound)}),e.updateBound=null,e.scrollParents=[],e.scrollElement=null,e.eventsEnabled=!1,e))}function H(t){return\"\"!==t&&!isNaN(parseFloat(t))&&isFinite(t)}function F(t,e){Object.keys(e).forEach(function(n){var i=\"\";-1!==[\"width\",\"height\",\"top\",\"right\",\"bottom\",\"left\"].indexOf(n)&&H(e[n])&&(i=\"px\"),t.style[n]=e[n]+i})}var U=n&&/Firefox/i.test(navigator.userAgent);function z(t,e,n){var i=L(t,function(t){return t.name===e}),o=!!i&&t.some(function(t){return t.name===n&&t.enabled&&t.order<i.order});if(!o){var r=\"`\"+e+\"`\",a=\"`\"+n+\"`\";console.warn(a+\" modifier is required by \"+r+\" modifier in order to work, be sure to include it before \"+r+\"!\")}return o}var $=[\"auto-start\",\"auto\",\"auto-end\",\"top-start\",\"top\",\"top-end\",\"right-start\",\"right\",\"right-end\",\"bottom-end\",\"bottom\",\"bottom-start\",\"left-end\",\"left\",\"left-start\"],W=$.slice(3);function Z(t){var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=W.indexOf(t),i=W.slice(n+1).concat(W.slice(0,n));return e?i.reverse():i}var V={FLIP:\"flip\",CLOCKWISE:\"clockwise\",COUNTERCLOCKWISE:\"counterclockwise\"};function X(t,e,n,i){var o=[0,0],r=-1!==[\"right\",\"left\"].indexOf(i),a=t.split(/(\\+|\\-)/).map(function(t){return t.trim()}),s=a.indexOf(L(a,function(t){return-1!==t.search(/,|\\s/)}));a[s]&&-1===a[s].indexOf(\",\")&&console.warn(\"Offsets separated by white space(s) are deprecated, use a comma (,) instead.\");var A=/\\s*,\\s*|\\s+/,c=-1!==s?[a.slice(0,s).concat([a[s].split(A)[0]]),[a[s].split(A)[1]].concat(a.slice(s+1))]:[a];return(c=c.map(function(t,i){var o=(1===i?!r:r)?\"height\":\"width\",a=!1;return t.reduce(function(t,e){return\"\"===t[t.length-1]&&-1!==[\"+\",\"-\"].indexOf(e)?(t[t.length-1]=e,a=!0,t):a?(t[t.length-1]+=e,a=!1,t):t.concat(e)},[]).map(function(t){return function(t,e,n,i){var o=t.match(/((?:\\-|\\+)?\\d*\\.?\\d*)(.*)/),r=+o[1],a=o[2];if(!r)return t;if(0===a.indexOf(\"%\")){var s=void 0;switch(a){case\"%p\":s=n;break;case\"%\":case\"%r\":default:s=i}return C(s)[e]/100*r}if(\"vh\"===a||\"vw\"===a)return(\"vh\"===a?Math.max(document.documentElement.clientHeight,window.innerHeight||0):Math.max(document.documentElement.clientWidth,window.innerWidth||0))/100*r;return r}(t,o,e,n)})})).forEach(function(t,e){t.forEach(function(n,i){H(n)&&(o[e]+=n*(\"-\"===t[i-1]?-1:1))})}),o}var J={placement:\"bottom\",positionFixed:!1,eventsEnabled:!0,removeOnDestroy:!1,onCreate:function(){},onUpdate:function(){},modifiers:{shift:{order:100,enabled:!0,fn:function(t){var e=t.placement,n=e.split(\"-\")[0],i=e.split(\"-\")[1];if(i){var o=t.offsets,r=o.reference,a=o.popper,s=-1!==[\"bottom\",\"top\"].indexOf(n),A=s?\"left\":\"top\",c=s?\"width\":\"height\",l={start:E({},A,r[A]),end:E({},A,r[A]+r[c]-a[c])};t.offsets.popper=x({},a,l[i])}return t}},offset:{order:200,enabled:!0,fn:function(t,e){var n=e.offset,i=t.placement,o=t.offsets,r=o.popper,a=o.reference,s=i.split(\"-\")[0],A=void 0;return A=H(+n)?[+n,0]:X(n,r,a,s),\"left\"===s?(r.top+=A[0],r.left-=A[1]):\"right\"===s?(r.top+=A[0],r.left+=A[1]):\"top\"===s?(r.left+=A[0],r.top-=A[1]):\"bottom\"===s&&(r.left+=A[0],r.top+=A[1]),t.popper=r,t},offset:0},preventOverflow:{order:300,enabled:!0,fn:function(t,e){var n=e.boundariesElement||f(t.instance.popper);t.instance.reference===n&&(n=f(n));var i=j(\"transform\"),o=t.instance.popper.style,r=o.top,a=o.left,s=o[i];o.top=\"\",o.left=\"\",o[i]=\"\";var A=M(t.instance.popper,t.instance.reference,e.padding,n,t.positionFixed);o.top=r,o.left=a,o[i]=s,e.boundaries=A;var c=e.priority,l=t.offsets.popper,u={primary:function(t){var n=l[t];return l[t]<A[t]&&!e.escapeWithReference&&(n=Math.max(l[t],A[t])),E({},t,n)},secondary:function(t){var n=\"right\"===t?\"left\":\"top\",i=l[n];return l[t]>A[t]&&!e.escapeWithReference&&(i=Math.min(l[n],A[t]-(\"right\"===t?l.width:l.height))),E({},n,i)}};return c.forEach(function(t){var e=-1!==[\"left\",\"top\"].indexOf(t)?\"primary\":\"secondary\";l=x({},l,u[e](t))}),t.offsets.popper=l,t},priority:[\"left\",\"right\",\"top\",\"bottom\"],padding:5,boundariesElement:\"scrollParent\"},keepTogether:{order:400,enabled:!0,fn:function(t){var e=t.offsets,n=e.popper,i=e.reference,o=t.placement.split(\"-\")[0],r=Math.floor,a=-1!==[\"top\",\"bottom\"].indexOf(o),s=a?\"right\":\"bottom\",A=a?\"left\":\"top\",c=a?\"width\":\"height\";return n[s]<r(i[A])&&(t.offsets.popper[A]=r(i[A])-n[c]),n[A]>r(i[s])&&(t.offsets.popper[A]=r(i[s])),t}},arrow:{order:500,enabled:!0,fn:function(t,e){var n;if(!z(t.instance.modifiers,\"arrow\",\"keepTogether\"))return t;var i=e.element;if(\"string\"==typeof i){if(!(i=t.instance.popper.querySelector(i)))return t}else if(!t.instance.popper.contains(i))return console.warn(\"WARNING: `arrow.element` must be child of its popper element!\"),t;var o=t.placement.split(\"-\")[0],r=t.offsets,a=r.popper,s=r.reference,c=-1!==[\"left\",\"right\"].indexOf(o),l=c?\"height\":\"width\",u=c?\"Top\":\"Left\",d=u.toLowerCase(),p=c?\"left\":\"top\",f=c?\"bottom\":\"right\",h=k(i)[l];s[f]-h<a[d]&&(t.offsets.popper[d]-=a[d]-(s[f]-h)),s[d]+h>a[f]&&(t.offsets.popper[d]+=s[d]+h-a[f]),t.offsets.popper=C(t.offsets.popper);var v=s[d]+s[l]/2-h/2,m=A(t.instance.popper),g=parseFloat(m[\"margin\"+u],10),y=parseFloat(m[\"border\"+u+\"Width\"],10),b=v-t.offsets.popper[d]-g-y;return b=Math.max(Math.min(a[l]-h,b),0),t.arrowElement=i,t.offsets.arrow=(E(n={},d,Math.round(b)),E(n,p,\"\"),n),t},element:\"[x-arrow]\"},flip:{order:600,enabled:!0,fn:function(t,e){if(G(t.instance.modifiers,\"inner\"))return t;if(t.flipped&&t.placement===t.originalPlacement)return t;var n=M(t.instance.popper,t.instance.reference,e.padding,e.boundariesElement,t.positionFixed),i=t.placement.split(\"-\")[0],o=S(i),r=t.placement.split(\"-\")[1]||\"\",a=[];switch(e.behavior){case V.FLIP:a=[i,o];break;case V.CLOCKWISE:a=Z(i);break;case V.COUNTERCLOCKWISE:a=Z(i,!0);break;default:a=e.behavior}return a.forEach(function(s,A){if(i!==s||a.length===A+1)return t;i=t.placement.split(\"-\")[0],o=S(i);var c=t.offsets.popper,l=t.offsets.reference,u=Math.floor,d=\"left\"===i&&u(c.right)>u(l.left)||\"right\"===i&&u(c.left)<u(l.right)||\"top\"===i&&u(c.bottom)>u(l.top)||\"bottom\"===i&&u(c.top)<u(l.bottom),p=u(c.left)<u(n.left),f=u(c.right)>u(n.right),h=u(c.top)<u(n.top),v=u(c.bottom)>u(n.bottom),m=\"left\"===i&&p||\"right\"===i&&f||\"top\"===i&&h||\"bottom\"===i&&v,g=-1!==[\"top\",\"bottom\"].indexOf(i),y=!!e.flipVariations&&(g&&\"start\"===r&&p||g&&\"end\"===r&&f||!g&&\"start\"===r&&h||!g&&\"end\"===r&&v),b=!!e.flipVariationsByContent&&(g&&\"start\"===r&&f||g&&\"end\"===r&&p||!g&&\"start\"===r&&v||!g&&\"end\"===r&&h),w=y||b;(d||m||w)&&(t.flipped=!0,(d||m)&&(i=a[A+1]),w&&(r=function(t){return\"end\"===t?\"start\":\"start\"===t?\"end\":t}(r)),t.placement=i+(r?\"-\"+r:\"\"),t.offsets.popper=x({},t.offsets.popper,D(t.instance.popper,t.offsets.reference,t.placement)),t=Q(t.instance.modifiers,t,\"flip\"))}),t},behavior:\"flip\",padding:5,boundariesElement:\"viewport\",flipVariations:!1,flipVariationsByContent:!1},inner:{order:700,enabled:!1,fn:function(t){var e=t.placement,n=e.split(\"-\")[0],i=t.offsets,o=i.popper,r=i.reference,a=-1!==[\"left\",\"right\"].indexOf(n),s=-1===[\"top\",\"left\"].indexOf(n);return o[a?\"left\":\"top\"]=r[n]-(s?o[a?\"width\":\"height\"]:0),t.placement=S(e),t.offsets.popper=C(o),t}},hide:{order:800,enabled:!0,fn:function(t){if(!z(t.instance.modifiers,\"hide\",\"preventOverflow\"))return t;var e=t.offsets.reference,n=L(t.instance.modifiers,function(t){return\"preventOverflow\"===t.name}).boundaries;if(e.bottom<n.top||e.left>n.right||e.top>n.bottom||e.right<n.left){if(!0===t.hide)return t;t.hide=!0,t.attributes[\"x-out-of-boundaries\"]=\"\"}else{if(!1===t.hide)return t;t.hide=!1,t.attributes[\"x-out-of-boundaries\"]=!1}return t}},computeStyle:{order:850,enabled:!0,fn:function(t,e){var n=e.x,i=e.y,o=t.offsets.popper,r=L(t.instance.modifiers,function(t){return\"applyStyle\"===t.name}).gpuAcceleration;void 0!==r&&console.warn(\"WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!\");var a=void 0!==r?r:e.gpuAcceleration,s=f(t.instance.popper),A=_(s),c={position:o.position},l=function(t,e){var n=t.offsets,i=n.popper,o=n.reference,r=Math.round,a=Math.floor,s=function(t){return t},A=r(o.width),c=r(i.width),l=-1!==[\"left\",\"right\"].indexOf(t.placement),u=-1!==t.placement.indexOf(\"-\"),d=e?l||u||A%2==c%2?r:a:s,p=e?r:s;return{left:d(A%2==1&&c%2==1&&!u&&e?i.left-1:i.left),top:p(i.top),bottom:p(i.bottom),right:d(i.right)}}(t,window.devicePixelRatio<2||!U),u=\"bottom\"===n?\"top\":\"bottom\",d=\"right\"===i?\"left\":\"right\",p=j(\"transform\"),h=void 0,v=void 0;if(v=\"bottom\"===u?\"HTML\"===s.nodeName?-s.clientHeight+l.bottom:-A.height+l.bottom:l.top,h=\"right\"===d?\"HTML\"===s.nodeName?-s.clientWidth+l.right:-A.width+l.right:l.left,a&&p)c[p]=\"translate3d(\"+h+\"px, \"+v+\"px, 0)\",c[u]=0,c[d]=0,c.willChange=\"transform\";else{var m=\"bottom\"===u?-1:1,g=\"right\"===d?-1:1;c[u]=v*m,c[d]=h*g,c.willChange=u+\", \"+d}var y={\"x-placement\":t.placement};return t.attributes=x({},y,t.attributes),t.styles=x({},c,t.styles),t.arrowStyles=x({},t.offsets.arrow,t.arrowStyles),t},gpuAcceleration:!0,x:\"bottom\",y:\"right\"},applyStyle:{order:900,enabled:!0,fn:function(t){var e,n;return F(t.instance.popper,t.styles),e=t.instance.popper,n=t.attributes,Object.keys(n).forEach(function(t){!1!==n[t]?e.setAttribute(t,n[t]):e.removeAttribute(t)}),t.arrowElement&&Object.keys(t.arrowStyles).length&&F(t.arrowElement,t.arrowStyles),t},onLoad:function(t,e,n,i,o){var r=O(o,e,t,n.positionFixed),a=N(n.placement,r,e,t,n.modifiers.flip.boundariesElement,n.modifiers.flip.padding);return e.setAttribute(\"x-placement\",a),F(e,{position:n.positionFixed?\"fixed\":\"absolute\"}),n},gpuAcceleration:void 0}}},q=function(){function t(e,n){var i=this,o=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};w(this,t),this.scheduleUpdate=function(){return requestAnimationFrame(i.update)},this.update=a(this.update.bind(this)),this.options=x({},t.Defaults,o),this.state={isDestroyed:!1,isCreated:!1,scrollParents:[]},this.reference=e&&e.jquery?e[0]:e,this.popper=n&&n.jquery?n[0]:n,this.options.modifiers={},Object.keys(x({},t.Defaults.modifiers,o.modifiers)).forEach(function(e){i.options.modifiers[e]=x({},t.Defaults.modifiers[e]||{},o.modifiers?o.modifiers[e]:{})}),this.modifiers=Object.keys(this.options.modifiers).map(function(t){return x({name:t},i.options.modifiers[t])}).sort(function(t,e){return t.order-e.order}),this.modifiers.forEach(function(t){t.enabled&&s(t.onLoad)&&t.onLoad(i.reference,i.popper,i.options,t,i.state)}),this.update();var r=this.options.eventsEnabled;r&&this.enableEventListeners(),this.state.eventsEnabled=r}return T(t,[{key:\"update\",value:function(){return function(){if(!this.state.isDestroyed){var t={instance:this,styles:{},arrowStyles:{},attributes:{},flipped:!1,offsets:{}};t.offsets.reference=O(this.state,this.popper,this.reference,this.options.positionFixed),t.placement=N(this.options.placement,t.offsets.reference,this.popper,this.reference,this.options.modifiers.flip.boundariesElement,this.options.modifiers.flip.padding),t.originalPlacement=t.placement,t.positionFixed=this.options.positionFixed,t.offsets.popper=D(this.popper,t.offsets.reference,t.placement),t.offsets.popper.position=this.options.positionFixed?\"fixed\":\"absolute\",t=Q(this.modifiers,t),this.state.isCreated?this.options.onUpdate(t):(this.state.isCreated=!0,this.options.onCreate(t))}}.call(this)}},{key:\"destroy\",value:function(){return function(){return this.state.isDestroyed=!0,G(this.modifiers,\"applyStyle\")&&(this.popper.removeAttribute(\"x-placement\"),this.popper.style.position=\"\",this.popper.style.top=\"\",this.popper.style.left=\"\",this.popper.style.right=\"\",this.popper.style.bottom=\"\",this.popper.style.willChange=\"\",this.popper.style[j(\"transform\")]=\"\"),this.disableEventListeners(),this.options.removeOnDestroy&&this.popper.parentNode.removeChild(this.popper),this}.call(this)}},{key:\"enableEventListeners\",value:function(){return function(){this.state.eventsEnabled||(this.state=R(this.reference,this.options,this.state,this.scheduleUpdate))}.call(this)}},{key:\"disableEventListeners\",value:function(){return Y.call(this)}}]),t}();q.Utils=(\"undefined\"!=typeof window?window:t).PopperUtils,q.placements=$,q.Defaults=J,e.a=q}).call(this,n(15))},17:function(t,e,n){\"use strict\";\n/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */e.a=function(t){return Math.random().toString(36).replace(/[^a-z]+/g,\"\").substr(0,t||5)}},172:function(t,e,n){\"use strict\";var i=n(59);n.n(i).a},173:function(t,e,n){e=t.exports=n(1)(!1);var i=n(8),o=i(n(9)),r=i(n(10)),a=i(n(11)),s=i(n(12));e.push([t.i,'@charset \"UTF-8\";\\n/**\\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\n@font-face {\\n font-family: \"iconfont-vue\";\\n src: url('+o+\");\\n /* IE9 Compat Modes */\\n src: url(\"+o+') format(\"embedded-opentype\"), url('+r+') format(\"woff\"), url('+a+') format(\"truetype\"), url('+s+') format(\"svg\");\\n /* Legacy iOS */\\n}\\n.icon[data-v-9c792ef2] {\\n font-style: normal;\\n font-weight: 400;\\n}\\n.icon.arrow-left-double[data-v-9c792ef2]:before {\\n font-family: \"iconfont-vue\";\\n content: \"\";\\n}\\n.icon.arrow-left[data-v-9c792ef2]:before {\\n font-family: \"iconfont-vue\";\\n content: \"\";\\n}\\n.icon.arrow-right-double[data-v-9c792ef2]:before {\\n font-family: \"iconfont-vue\";\\n content: \"\";\\n}\\n.icon.arrow-right[data-v-9c792ef2]:before {\\n font-family: \"iconfont-vue\";\\n content: \"\";\\n}\\n.icon.close[data-v-9c792ef2]:before {\\n font-family: \"iconfont-vue\";\\n content: \"\";\\n}\\n.icon.confirm-fade[data-v-9c792ef2]:before {\\n font-family: \"iconfont-vue\";\\n content: \"\";\\n}\\n.icon.confirm[data-v-9c792ef2]:before {\\n font-family: \"iconfont-vue\";\\n content: \"\";\\n}\\n.icon.menu[data-v-9c792ef2]:before {\\n font-family: \"iconfont-vue\";\\n content: \"\";\\n}\\n.icon.more[data-v-9c792ef2]:before {\\n font-family: \"iconfont-vue\";\\n content: \"\";\\n}\\n.icon.pause[data-v-9c792ef2]:before {\\n font-family: \"iconfont-vue\";\\n content: \"\";\\n}\\n.icon.play[data-v-9c792ef2]:before {\\n font-family: \"iconfont-vue\";\\n content: \"\";\\n}\\n.modal-mask[data-v-9c792ef2] {\\n position: fixed;\\n z-index: 9998;\\n top: 0;\\n left: 0;\\n display: block;\\n width: 100%;\\n height: 100%;\\n background-color: rgba(0, 0, 0, 0.92);\\n}\\n.modal-header[data-v-9c792ef2] {\\n position: absolute;\\n z-index: 10001;\\n top: 0;\\n right: 0;\\n left: 0;\\n display: flex !important;\\n align-items: center;\\n justify-content: center;\\n width: 100%;\\n height: 50px;\\n transition: opacity 250ms, visibility 250ms;\\n}\\n.modal-header.invisible[style*=\\'display:none\\'][data-v-9c792ef2], .modal-header.invisible[style*=\\'display: none\\'][data-v-9c792ef2] {\\n visibility: hidden;\\n}\\n.modal-header .modal-title[data-v-9c792ef2] {\\n overflow-x: hidden;\\n box-sizing: border-box;\\n max-width: 100%;\\n padding: 0 88px;\\n transition: padding ease 100ms;\\n white-space: nowrap;\\n text-overflow: ellipsis;\\n color: #fff;\\n font-size: 14px;\\n}\\n.modal-header .icons-menu[data-v-9c792ef2] {\\n position: absolute;\\n right: 0;\\n display: flex;\\n align-items: center;\\n justify-content: flex-end;\\n}\\n.modal-header .icons-menu .icon-close[data-v-9c792ef2] {\\n box-sizing: border-box;\\n margin: 3px;\\n padding: 10px 11px;\\n color: #fff;\\n background-image: none;\\n font-size: 23px;\\n}\\n.modal-header .icons-menu .icon-close[data-v-9c792ef2]:before {\\n font-family: \"iconfont-vue\";\\n font-style: normal;\\n font-weight: 400;\\n content: \"\";\\n}\\n.modal-header .icons-menu .play-pause[data-v-9c792ef2] {\\n position: relative;\\n width: 50px;\\n height: 50px;\\n margin: 0;\\n padding: 0;\\n cursor: pointer;\\n color: white;\\n border: none;\\n background-color: transparent;\\n font-size: 22px;\\n}\\n.modal-header .icons-menu .play-pause:hover .icon-play[data-v-9c792ef2],\\n .modal-header .icons-menu .play-pause:hover .icon-pause[data-v-9c792ef2], .modal-header .icons-menu .play-pause:focus .icon-play[data-v-9c792ef2],\\n .modal-header .icons-menu .play-pause:focus .icon-pause[data-v-9c792ef2] {\\n opacity: 1;\\n border-radius: 22px;\\n background-color: rgba(127, 127, 127, 0.25);\\n}\\n.modal-header .icons-menu .play-pause .icon-play[data-v-9c792ef2],\\n .modal-header .icons-menu .play-pause .icon-pause[data-v-9c792ef2] {\\n box-sizing: border-box;\\n width: 44px;\\n height: 44px;\\n margin: 3px;\\n opacity: .7;\\n background-image: none;\\n cursor: pointer;\\n}\\n.modal-header .icons-menu .play-pause .icon-play[data-v-9c792ef2] {\\n padding: 11px 13px;\\n}\\n.modal-header .icons-menu .play-pause .icon-play[data-v-9c792ef2]:before {\\n font-family: \"iconfont-vue\";\\n font-style: normal;\\n font-weight: 400;\\n content: \"\";\\n}\\n.modal-header .icons-menu .play-pause .icon-pause[data-v-9c792ef2] {\\n padding: 12px;\\n font-size: 19.5px;\\n}\\n.modal-header .icons-menu .play-pause .icon-pause[data-v-9c792ef2]:before {\\n font-family: \"iconfont-vue\";\\n font-style: normal;\\n font-weight: 400;\\n content: \"\";\\n}\\n.modal-header .icons-menu .header-actions[data-v-9c792ef2] {\\n margin: 3px;\\n color: white;\\n}\\n.modal-header .icons-menu .action-item--single[data-v-9c792ef2] {\\n box-sizing: border-box;\\n width: 44px;\\n height: 44px;\\n cursor: pointer;\\n background-position: center;\\n background-size: 22px;\\n}\\n.modal-header .icons-menu[data-v-9c792ef2] .action-item__menutoggle {\\n padding: 13px 11px;\\n color: #fff;\\n font-size: 22px;\\n}\\n.modal-wrapper[data-v-9c792ef2] {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n box-sizing: border-box;\\n width: 100%;\\n height: 100%;\\n /* Navigation buttons */\\n /* Content */\\n}\\n.modal-wrapper .prev[data-v-9c792ef2],\\n .modal-wrapper .next[data-v-9c792ef2] {\\n z-index: 10000;\\n display: flex !important;\\n align-items: center;\\n justify-content: center;\\n width: 15%;\\n min-width: 60px;\\n height: 100%;\\n transition: opacity 250ms, visibility 250ms;\\n}\\n.modal-wrapper .prev.invisible[style*=\\'display:none\\'][data-v-9c792ef2], .modal-wrapper .prev.invisible[style*=\\'display: none\\'][data-v-9c792ef2],\\n .modal-wrapper .next.invisible[style*=\\'display:none\\'][data-v-9c792ef2],\\n .modal-wrapper .next.invisible[style*=\\'display: none\\'][data-v-9c792ef2] {\\n visibility: hidden;\\n}\\n.modal-wrapper .icon-next[data-v-9c792ef2],\\n .modal-wrapper .icon-previous[data-v-9c792ef2] {\\n box-sizing: border-box;\\n width: 44px;\\n height: 44px;\\n padding: 12px 11px;\\n color: white;\\n border-radius: 22px;\\n background-image: none;\\n font-size: 24px;\\n}\\n.modal-wrapper .icon-previous[data-v-9c792ef2]:before {\\n font-family: \"iconfont-vue\";\\n font-style: normal;\\n font-weight: 400;\\n content: \"\";\\n}\\n.modal-wrapper .icon-next[data-v-9c792ef2]:before {\\n font-family: \"iconfont-vue\";\\n font-style: normal;\\n font-weight: 400;\\n content: \"\";\\n}\\n.modal-wrapper .modal-container[data-v-9c792ef2] {\\n display: block;\\n overflow: hidden;\\n padding: 0;\\n transition: transform 300ms ease;\\n border-radius: var(--border-radius-large);\\n background-color: var(--color-main-background);\\n box-shadow: 0 2px 8px rgba(0, 0, 0, 0.33);\\n}\\n.modal-wrapper:not(.modal-wrapper--large):not(.modal-wrapper--full) .modal-container[data-v-9c792ef2] {\\n max-width: 900px;\\n max-height: 80%;\\n}\\n.modal-wrapper--full .modal-container[data-v-9c792ef2] {\\n max-width: 100%;\\n max-height: 100%;\\n border-radius: 0;\\n}\\n.modal-wrapper--full .prev[data-v-9c792ef2],\\n .modal-wrapper--full .next[data-v-9c792ef2], .modal-wrapper--spread-navigation .prev[data-v-9c792ef2],\\n .modal-wrapper--spread-navigation .next[data-v-9c792ef2] {\\n position: absolute;\\n width: 10%;\\n}\\n.modal-wrapper--full .prev[data-v-9c792ef2], .modal-wrapper--spread-navigation .prev[data-v-9c792ef2] {\\n left: 0;\\n}\\n.modal-wrapper--full .next[data-v-9c792ef2], .modal-wrapper--spread-navigation .next[data-v-9c792ef2] {\\n right: 0;\\n}\\n.modal-wrapper--large .modal-container[data-v-9c792ef2] {\\n max-width: 70%;\\n max-height: 90%;\\n}\\n.modal-wrapper--large .prev[data-v-9c792ef2],\\n .modal-wrapper--large .next[data-v-9c792ef2] {\\n width: 10%;\\n}\\n\\n/* TRANSITIONS */\\n.fade-enter-active[data-v-9c792ef2],\\n.fade-leave-active[data-v-9c792ef2] {\\n transition: opacity 250ms;\\n}\\n.fade-enter[data-v-9c792ef2],\\n.fade-leave-to[data-v-9c792ef2] {\\n opacity: 0;\\n}\\n.fade-visibility-enter[data-v-9c792ef2],\\n.fade-visibility-leave-to[data-v-9c792ef2] {\\n visibility: hidden;\\n opacity: 0;\\n}\\n.modal-in-enter-active[data-v-9c792ef2],\\n.modal-in-leave-active[data-v-9c792ef2],\\n.modal-out-enter-active[data-v-9c792ef2],\\n.modal-out-leave-active[data-v-9c792ef2] {\\n transition: opacity 250ms;\\n}\\n.modal-in-enter[data-v-9c792ef2],\\n.modal-in-leave-to[data-v-9c792ef2],\\n.modal-out-enter[data-v-9c792ef2],\\n.modal-out-leave-to[data-v-9c792ef2] {\\n opacity: 0;\\n}\\n.modal-in-enter .modal-container[data-v-9c792ef2],\\n.modal-in-leave-to .modal-container[data-v-9c792ef2] {\\n transform: scale(0.9);\\n}\\n.modal-out-enter .modal-container[data-v-9c792ef2],\\n.modal-out-leave-to .modal-container[data-v-9c792ef2] {\\n transform: scale(1.1);\\n}\\n.modal-mask .play-pause .progress-ring[data-v-9c792ef2] {\\n position: absolute;\\n top: 0;\\n left: 0;\\n transform: rotate(-90deg);\\n}\\n.modal-mask .play-pause .progress-ring .progress-ring__circle[data-v-9c792ef2] {\\n transition: 100ms stroke-dashoffset;\\n transform-origin: 50% 50%;\\n animation: progressring-data-v-9c792ef2 linear 3s infinite;\\n stroke-linecap: round;\\n stroke-dashoffset: 94.24778;\\n stroke-dasharray: 94.24778;\\n}\\n.modal-mask .play-pause--paused .icon-pause[data-v-9c792ef2] {\\n animation: breath-data-v-9c792ef2 2s cubic-bezier(0.4, 0, 0.2, 1) infinite;\\n}\\n.modal-mask .play-pause--paused .progress-ring__circle[data-v-9c792ef2] {\\n animation-play-state: paused !important;\\n}\\n@keyframes progressring-data-v-9c792ef2 {\\nfrom {\\n stroke-dashoffset: 94.24778;\\n}\\nto {\\n stroke-dashoffset: 0;\\n}\\n}\\n@keyframes breath-data-v-9c792ef2 {\\n0% {\\n opacity: 1;\\n}\\n50% {\\n opacity: 0;\\n}\\n100% {\\n opacity: 1;\\n}\\n}\\n',\"\"])},2:function(t,e,n){\"use strict\";function i(t,e){for(var n=[],i={},o=0;o<e.length;o++){var r=e[o],a=r[0],s={id:t+\":\"+o,css:r[1],media:r[2],sourceMap:r[3]};i[a]?i[a].parts.push(s):n.push(i[a]={id:a,parts:[s]})}return n}n.r(e),n.d(e,\"default\",function(){return f});var o=\"undefined\"!=typeof document;if(\"undefined\"!=typeof DEBUG&&DEBUG&&!o)throw new Error(\"vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\");var r={},a=o&&(document.head||document.getElementsByTagName(\"head\")[0]),s=null,A=0,c=!1,l=function(){},u=null,d=\"data-vue-ssr-id\",p=\"undefined\"!=typeof navigator&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());function f(t,e,n,o){c=n,u=o||{};var a=i(t,e);return h(a),function(e){for(var n=[],o=0;o<a.length;o++){var s=a[o];(A=r[s.id]).refs--,n.push(A)}e?h(a=i(t,e)):a=[];for(o=0;o<n.length;o++){var A;if(0===(A=n[o]).refs){for(var c=0;c<A.parts.length;c++)A.parts[c]();delete r[A.id]}}}}function h(t){for(var e=0;e<t.length;e++){var n=t[e],i=r[n.id];if(i){i.refs++;for(var o=0;o<i.parts.length;o++)i.parts[o](n.parts[o]);for(;o<n.parts.length;o++)i.parts.push(m(n.parts[o]));i.parts.length>n.parts.length&&(i.parts.length=n.parts.length)}else{var a=[];for(o=0;o<n.parts.length;o++)a.push(m(n.parts[o]));r[n.id]={id:n.id,refs:1,parts:a}}}}function v(){var t=document.createElement(\"style\");return t.type=\"text/css\",a.appendChild(t),t}function m(t){var e,n,i=document.querySelector(\"style[\"+d+'~=\"'+t.id+'\"]');if(i){if(c)return l;i.parentNode.removeChild(i)}if(p){var o=A++;i=s||(s=v()),e=b.bind(null,i,o,!1),n=b.bind(null,i,o,!0)}else i=v(),e=function(t,e){var n=e.css,i=e.media,o=e.sourceMap;i&&t.setAttribute(\"media\",i);u.ssrId&&t.setAttribute(d,e.id);o&&(n+=\"\\n/*# sourceURL=\"+o.sources[0]+\" */\",n+=\"\\n/*# sourceMappingURL=data:application/json;base64,\"+btoa(unescape(encodeURIComponent(JSON.stringify(o))))+\" */\");if(t.styleSheet)t.styleSheet.cssText=n;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(n))}}.bind(null,i),n=function(){i.parentNode.removeChild(i)};return e(t),function(i){if(i){if(i.css===t.css&&i.media===t.media&&i.sourceMap===t.sourceMap)return;e(t=i)}else n()}}var g,y=(g=[],function(t,e){return g[t]=e,g.filter(Boolean).join(\"\\n\")});function b(t,e,n,i){var o=n?\"\":i.css;if(t.styleSheet)t.styleSheet.cssText=y(e,o);else{var r=document.createTextNode(o),a=t.childNodes;a[e]&&t.removeChild(a[e]),a.length?t.insertBefore(r,a[e]):t.appendChild(r)}}},21:function(t,e,n){\"use strict\";(function(t){n.d(e,\"a\",function(){return r});var i=void 0;function o(){o.init||(o.init=!0,i=-1!==function(){var t=window.navigator.userAgent,e=t.indexOf(\"MSIE \");if(e>0)return parseInt(t.substring(e+5,t.indexOf(\".\",e)),10);if(t.indexOf(\"Trident/\")>0){var n=t.indexOf(\"rv:\");return parseInt(t.substring(n+3,t.indexOf(\".\",n)),10)}var i=t.indexOf(\"Edge/\");return i>0?parseInt(t.substring(i+5,t.indexOf(\".\",i)),10):-1}())}var r={render:function(){var t=this.$createElement;return(this._self._c||t)(\"div\",{staticClass:\"resize-observer\",attrs:{tabindex:\"-1\"}})},staticRenderFns:[],_scopeId:\"data-v-b329ee4c\",name:\"resize-observer\",methods:{compareAndNotify:function(){this._w===this.$el.offsetWidth&&this._h===this.$el.offsetHeight||(this._w=this.$el.offsetWidth,this._h=this.$el.offsetHeight,this.$emit(\"notify\"))},addResizeHandlers:function(){this._resizeObject.contentDocument.defaultView.addEventListener(\"resize\",this.compareAndNotify),this.compareAndNotify()},removeResizeHandlers:function(){this._resizeObject&&this._resizeObject.onload&&(!i&&this._resizeObject.contentDocument&&this._resizeObject.contentDocument.defaultView.removeEventListener(\"resize\",this.compareAndNotify),delete this._resizeObject.onload)}},mounted:function(){var t=this;o(),this.$nextTick(function(){t._w=t.$el.offsetWidth,t._h=t.$el.offsetHeight});var e=document.createElement(\"object\");this._resizeObject=e,e.setAttribute(\"aria-hidden\",\"true\"),e.setAttribute(\"tabindex\",-1),e.onload=this.addResizeHandlers,e.type=\"text/html\",i&&this.$el.appendChild(e),e.data=\"about:blank\",i||this.$el.appendChild(e)},beforeDestroy:function(){this.removeResizeHandlers()}};var a={version:\"0.4.5\",install:function(t){t.component(\"resize-observer\",r),t.component(\"ResizeObserver\",r)}},s=null;\"undefined\"!=typeof window?s=window.Vue:void 0!==t&&(s=t.Vue),s&&s.use(a)}).call(this,n(15))},22:function(t,e,n){var i=n(79);\"string\"==typeof i&&(i=[[t.i,i,\"\"]]),i.locals&&(t.exports=i.locals);(0,n(2).default)(\"c80b1486\",i,!0,{})},23:function(t,e,n){\"use strict\";\n/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */e.a=function(t){t.mounted?Array.isArray(t.mounted)||(t.mounted=[t.mounted]):t.mounted=[],t.mounted.push(function(){this.$el.setAttribute(\"data-v-\".concat(\"c9fcf01\"),\"\")})}},25:function(t,e){},26:function(t,e,n){var i=n(90);\"string\"==typeof i&&(i=[[t.i,i,\"\"]]),i.locals&&(t.exports=i.locals);(0,n(2).default)(\"5717c144\",i,!0,{})},3:function(t,n){t.exports=e},30:function(t,e,n){\"use strict\";n.r(e);var i=n(13),o=n.n(i),r=n(6),a=n(17),s=function(t){var e=t.getBoundingClientRect(),n=document.documentElement.clientHeight,i=document.documentElement.clientWidth,o=Object.assign({});return o.top=e.top<0,o.left=e.left<0,o.bottom=e.bottom>n,o.right=e.right>i,o.any=o.top||o.left||o.bottom||o.right,o.all=o.top&&o.left&&o.bottom&&o.right,o.offsetY=o.top?e.top:o.bottom?e.bottom-n:0,o.offsetX=o.left?e.left:o.right?e.right-i:0,o},A=n(3),c=n.n(A),l=function(t,e){t.$children.forEach(function(n,i){-1===e.indexOf(n.$options.name)&&(c.a.util.warn(\"\".concat(n.$options._componentTag,\" is not allowed inside the \").concat(t.$options._componentTag,\" component\"),t),t.$children.splice(i,1),n.$el.remove())})},u=[\"ActionButton\",\"ActionCheckbox\",\"ActionInput\",\"ActionLink\",\"ActionRouter\",\"ActionText\",\"ActionTextEditable\"],d={name:\"Actions\",directives:{ClickOutside:o.a,tooltip:r.default},props:{open:{type:Boolean,default:!1},menuAlign:{type:String,default:\"center\",validator:function(t){return[\"left\",\"center\",\"right\"].indexOf(t)>-1}}},data:function(){return{actions:[],opened:this.open,focusIndex:0,randomId:\"menu-\"+Object(a.a)(),offsetX:0}},computed:{isValidSingleAction:function(){return 1===this.actions.length},firstAction:function(){return this.actions[0]},firstActionElement:function(){switch(this.firstAction.$options.name){case\"ActionLink\":return{is:\"a\",href:this.firstAction.href,target:this.firstAction.target};case\"ActionRouter\":return{is:\"router-link\",to:this.firstAction.to,exact:this.firstAction.exact};default:return{is:\"button\"}}},firstActionEvent:function(){return this.firstAction&&this.firstAction.$listeners&&this.firstAction.$listeners.click?\"click\":null}},watch:{open:function(t){var e=this;this.opened=t,this.opened&&this.$nextTick(function(){e.onOpen()})}},beforeMount:function(){this.initActions(),l(this,u)},mounted:function(){this.popupItem=this.$el},beforeUpdate:function(){l(this,u)},methods:{toggleMenu:function(){var t=this;this.opened=!this.opened,this.opened&&(this.$nextTick(function(){t.onOpen(),t.focusFirstAction()}),this.$emit(\"open\")),this.$emit(\"update:open\",this.opened)},closeMenu:function(){this.offsetX=0,this.opened=!1,this.$emit(\"update:open\",this.opened),this.$emit(\"close\")},onOpen:function(){this.offsetX=0;var t=s(this.$refs.menu);t.any&&(this.offsetX=t.offsetX>0?Math.round(t.offsetX)+5:Math.round(t.offsetX)-5)},onMouseFocusAction:function(t){if(document.activeElement!==t.target){var e=t.target.closest(\"li\");if(e){var n=e.querySelector(\".focusable:not(:disabled)\");if(n){var i=this.$refs.menu.querySelectorAll(\".focusable:not(:disabled)\"),o=Array.prototype.indexOf.call(i,n);o>-1&&(this.focusIndex=o,this.focusAction())}}}},removeCurrentActive:function(){var t=this.$refs.menu.querySelector(\"li.active\");t&&t.classList.remove(\"active\")},focusAction:function(){var t=this.$refs.menu.querySelectorAll(\".focusable:not(:disabled)\")[this.focusIndex];if(t){var e=t.closest(\"li\");t.focus(),e&&(this.removeCurrentActive(),e.classList.add(\"active\"))}},focusPreviousAction:function(){this.focusIndex=Math.max(this.focusIndex-1,0),this.focusAction()},focusNextAction:function(){this.focusIndex=Math.min(this.focusIndex+1,this.$el.querySelectorAll(\".focusable:not(:disabled)\").length-1),this.focusAction()},focusFirstAction:function(){this.focusIndex=0,this.focusAction()},focusLastAction:function(){this.focusIndex=this.$el.querySelectorAll(\".focusable:not(:disabled)\").length-1,this.focusAction()},execFirstAction:function(t){this.firstAction.$listeners&&this.firstAction.$listeners.click&&(this.firstAction.$listeners.click(t),t.preventDefault())},initActions:function(){this.actions=this.$children||[]}}},p=(n(78),n(0)),f=n(25),h=n.n(f),v=Object(p.a)(d,function(){var t=this,e=t.$createElement,n=t._self._c||e;return t.isValidSingleAction?n(\"element\",t._b({directives:[{name:\"tooltip\",rawName:\"v-tooltip.auto\",value:t.firstAction.text,expression:\"firstAction.text\",modifiers:{auto:!0}}],staticClass:\"action-item action-item--single\",class:t.firstAction.icon,attrs:{rel:\"noreferrer noopener\"},on:t._d({},[t.firstActionEvent,t.execFirstAction])},\"element\",t.firstActionElement,!1),[n(\"span\",{attrs:{\"aria-hidden\":!0,hidden:\"\"}},[t._t(\"default\")],2)]):n(\"div\",{directives:[{name:\"show\",rawName:\"v-show\",value:t.actions.length>0,expression:\"actions.length > 0\"}],staticClass:\"action-item\",class:{\"action-item--open\":t.opened},on:{keydown:[function(e){return!e.type.indexOf(\"key\")&&t._k(e.keyCode,\"up\",38,e.key,[\"Up\",\"ArrowUp\"])?null:e.ctrlKey||e.shiftKey||e.altKey||e.metaKey?null:(e.preventDefault(),t.focusPreviousAction(e))},function(e){return!e.type.indexOf(\"key\")&&t._k(e.keyCode,\"down\",40,e.key,[\"Down\",\"ArrowDown\"])?null:e.ctrlKey||e.shiftKey||e.altKey||e.metaKey?null:(e.preventDefault(),t.focusNextAction(e))},function(e){return!e.type.indexOf(\"key\")&&t._k(e.keyCode,\"tab\",9,e.key,\"Tab\")?null:e.shiftKey?(e.preventDefault(),t.focusPreviousAction(e)):null},function(e){return!e.type.indexOf(\"key\")&&t._k(e.keyCode,\"page-up\",void 0,e.key,void 0)?null:e.ctrlKey||e.shiftKey||e.altKey||e.metaKey?null:(e.preventDefault(),t.focusFirstAction(e))},function(e){return!e.type.indexOf(\"key\")&&t._k(e.keyCode,\"page-down\",void 0,e.key,void 0)?null:e.ctrlKey||e.shiftKey||e.altKey||e.metaKey?null:(e.preventDefault(),t.focusLastAction(e))},function(e){return!e.type.indexOf(\"key\")&&t._k(e.keyCode,\"esc\",27,e.key,[\"Esc\",\"Escape\"])?null:e.ctrlKey||e.shiftKey||e.altKey||e.metaKey?null:(e.preventDefault(),t.closeMenu(e))}]}},[n(\"a\",{directives:[{name:\"click-outside\",rawName:\"v-click-outside\",value:t.closeMenu,expression:\"closeMenu\"}],staticClass:\"icon action-item__menutoggle\",attrs:{href:\"#\",\"aria-haspopup\":\"true\",\"aria-controls\":t.randomId,\"aria-expanded\":t.opened},on:{click:function(e){return e.preventDefault(),t.toggleMenu(e)},keydown:function(e){return!e.type.indexOf(\"key\")&&t._k(e.keyCode,\"space\",32,e.key,[\" \",\"Spacebar\"])?null:e.ctrlKey||e.shiftKey||e.altKey||e.metaKey?null:(e.preventDefault(),t.toggleMenu(e))}}}),t._v(\" \"),n(\"div\",{ref:\"menu\",staticClass:\"action-item__menu\",class:[\"menu-\"+t.menuAlign,{open:t.opened}],style:{marginRight:t.offsetX+\"px\"},attrs:{tabindex:\"-1\"},on:{mousemove:t.onMouseFocusAction}},[n(\"div\",{staticClass:\"action-item__menu_arrow\",style:{transform:\"translateX(\"+t.offsetX+\"px)\"}}),t._v(\" \"),n(\"ul\",{attrs:{id:t.randomId,tabindex:\"-1\"}},[t._t(\"default\")],2)])])},[],!1,null,\"73d23580\",null);\"function\"==typeof h.a&&h()(v);var m=v.exports;n.d(e,\"Actions\",function(){return m});\n/**\n * @copyright Copyright (c) 2018 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */e.default=m},32:function(t,e,n){var i=n(33);\"string\"==typeof i&&(i=[[t.i,i,\"\"]]),i.locals&&(t.exports=i.locals);(0,n(2).default)(\"cb7584ea\",i,!0,{})},33:function(t,e,n){(t.exports=n(1)(!1)).push([t.i,\"@charset \\\"UTF-8\\\";\\n/**\\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\n/**\\n* @copyright Copyright (c) 2016, John Molakvoæ <skjnldsv@protonmail.com>\\n* @copyright Copyright (c) 2016, Robin Appelman <robin@icewind.nl>\\n* @copyright Copyright (c) 2016, Jan-Christoph Borchardt <hey@jancborchardt.net>\\n* @copyright Copyright (c) 2016, Erik Pellikka <erik@pellikka.org>\\n* @copyright Copyright (c) 2015, Vincent Petry <pvince81@owncloud.com>\\n*\\n* Bootstrap v3.3.5 (http://getbootstrap.com)\\n* Copyright 2011-2015 Twitter, Inc.\\n* Licensed under MIT (https://github.com/twbs/bootstrap/blob/master/LICENSE)\\n*/\\n.vue-tooltip[data-v-c9fcf01] {\\n position: absolute;\\n z-index: 100000;\\n right: auto;\\n left: auto;\\n display: block;\\n margin: 0;\\n /* default to top */\\n margin-top: -3px;\\n padding: 10px 0;\\n text-align: left;\\n text-align: start;\\n white-space: normal;\\n text-decoration: none;\\n letter-spacing: normal;\\n word-spacing: normal;\\n text-transform: none;\\n word-wrap: normal;\\n word-break: normal;\\n opacity: 0;\\n text-shadow: none;\\n font-family: 'Nunito', 'Open Sans', Frutiger, Calibri, 'Myriad Pro', Myriad, sans-serif;\\n font-size: 12px;\\n font-weight: normal;\\n font-style: normal;\\n line-height: 1.6;\\n line-break: auto;\\n filter: drop-shadow(0 1px 10px var(--color-box-shadow)); }\\n .vue-tooltip[data-v-c9fcf01][x-placement^='top'] .tooltip-arrow {\\n bottom: 0;\\n left: calc(50% - 10px) !important;\\n margin-top: 0;\\n margin-bottom: 0;\\n border-width: 10px 10px 0 10px;\\n border-right-color: transparent;\\n border-bottom-color: transparent;\\n border-left-color: transparent; }\\n .vue-tooltip[data-v-c9fcf01][x-placement^='bottom'] .tooltip-arrow {\\n top: 0;\\n left: calc(50% - 10px) !important;\\n margin-top: 0;\\n margin-bottom: 0;\\n border-width: 0 10px 10px 10px;\\n border-top-color: transparent;\\n border-right-color: transparent;\\n border-left-color: transparent; }\\n .vue-tooltip[data-v-c9fcf01][x-placement^='right'] .tooltip-arrow {\\n top: calc(50% - 10px) !important;\\n right: 100%;\\n margin-right: 0;\\n margin-left: 0;\\n border-width: 10px 10px 10px 0;\\n border-top-color: transparent;\\n border-bottom-color: transparent;\\n border-left-color: transparent; }\\n .vue-tooltip[data-v-c9fcf01][x-placement^='left'] .tooltip-arrow {\\n top: calc(50% - 10px) !important;\\n left: 100%;\\n margin-right: 0;\\n margin-left: 0;\\n border-width: 10px 0 10px 10px;\\n border-top-color: transparent;\\n border-right-color: transparent;\\n border-bottom-color: transparent; }\\n .vue-tooltip[data-v-c9fcf01][aria-hidden='true'] {\\n visibility: hidden;\\n transition: opacity .15s, visibility .15s;\\n opacity: 0; }\\n .vue-tooltip[data-v-c9fcf01][aria-hidden='false'] {\\n visibility: visible;\\n transition: opacity .15s;\\n opacity: 1; }\\n .vue-tooltip[data-v-c9fcf01] .tooltip-inner {\\n max-width: 350px;\\n padding: 5px 8px;\\n text-align: center;\\n color: var(--color-main-text);\\n border-radius: var(--border-radius);\\n background-color: var(--color-main-background); }\\n .vue-tooltip[data-v-c9fcf01] .tooltip-arrow {\\n position: absolute;\\n z-index: 1;\\n width: 0;\\n height: 0;\\n margin: 0;\\n border-style: solid;\\n border-color: var(--color-main-background); }\\n\",\"\"])},34:function(t,e){},38:function(t,e,n){var i;\n/*! Hammer.JS - v2.0.7 - 2016-04-22\n * http://hammerjs.github.io/\n *\n * Copyright (c) 2016 Jorik Tangelder;\n * Licensed under the MIT license */\n/*! Hammer.JS - v2.0.7 - 2016-04-22\n * http://hammerjs.github.io/\n *\n * Copyright (c) 2016 Jorik Tangelder;\n * Licensed under the MIT license */\n!function(o,r,a,s){\"use strict\";var A,c=[\"\",\"webkit\",\"Moz\",\"MS\",\"ms\",\"o\"],l=r.createElement(\"div\"),u=\"function\",d=Math.round,p=Math.abs,f=Date.now;function h(t,e,n){return setTimeout(T(t,n),e)}function v(t,e,n){return!!Array.isArray(t)&&(m(t,n[e],n),!0)}function m(t,e,n){var i;if(t)if(t.forEach)t.forEach(e,n);else if(t.length!==s)for(i=0;i<t.length;)e.call(n,t[i],i,t),i++;else for(i in t)t.hasOwnProperty(i)&&e.call(n,t[i],i,t)}function g(t,e,n){var i=\"DEPRECATED METHOD: \"+e+\"\\n\"+n+\" AT \\n\";return function(){var e=new Error(\"get-stack-trace\"),n=e&&e.stack?e.stack.replace(/^[^\\(]+?[\\n$]/gm,\"\").replace(/^\\s+at\\s+/gm,\"\").replace(/^Object.<anonymous>\\s*\\(/gm,\"{anonymous}()@\"):\"Unknown Stack Trace\",r=o.console&&(o.console.warn||o.console.log);return r&&r.call(o.console,i,n),t.apply(this,arguments)}}A=\"function\"!=typeof Object.assign?function(t){if(t===s||null===t)throw new TypeError(\"Cannot convert undefined or null to object\");for(var e=Object(t),n=1;n<arguments.length;n++){var i=arguments[n];if(i!==s&&null!==i)for(var o in i)i.hasOwnProperty(o)&&(e[o]=i[o])}return e}:Object.assign;var y=g(function(t,e,n){for(var i=Object.keys(e),o=0;o<i.length;)(!n||n&&t[i[o]]===s)&&(t[i[o]]=e[i[o]]),o++;return t},\"extend\",\"Use `assign`.\"),b=g(function(t,e){return y(t,e,!0)},\"merge\",\"Use `assign`.\");function w(t,e,n){var i,o=e.prototype;(i=t.prototype=Object.create(o)).constructor=t,i._super=o,n&&A(i,n)}function T(t,e){return function(){return t.apply(e,arguments)}}function E(t,e){return typeof t==u?t.apply(e&&e[0]||s,e):t}function x(t,e){return t===s?e:t}function C(t,e,n){m(M(e),function(e){t.addEventListener(e,n,!1)})}function _(t,e,n){m(M(e),function(e){t.removeEventListener(e,n,!1)})}function I(t,e){for(;t;){if(t==e)return!0;t=t.parentNode}return!1}function B(t,e){return t.indexOf(e)>-1}function M(t){return t.trim().split(/\\s+/g)}function N(t,e,n){if(t.indexOf&&!n)return t.indexOf(e);for(var i=0;i<t.length;){if(n&&t[i][n]==e||!n&&t[i]===e)return i;i++}return-1}function O(t){return Array.prototype.slice.call(t,0)}function k(t,e,n){for(var i=[],o=[],r=0;r<t.length;){var a=e?t[r][e]:t[r];N(o,a)<0&&i.push(t[r]),o[r]=a,r++}return n&&(i=e?i.sort(function(t,n){return t[e]>n[e]}):i.sort()),i}function S(t,e){for(var n,i,o=e[0].toUpperCase()+e.slice(1),r=0;r<c.length;){if((i=(n=c[r])?n+o:e)in t)return i;r++}return s}var D=1;function L(t){var e=t.ownerDocument||t;return e.defaultView||e.parentWindow||o}var Q=\"ontouchstart\"in o,G=S(o,\"PointerEvent\")!==s,j=Q&&/mobile|tablet|ip(ad|hone|od)|android/i.test(navigator.userAgent),P=25,R=1,Y=2,H=4,F=8,U=1,z=2,$=4,W=8,Z=16,V=z|$,X=W|Z,J=V|X,q=[\"x\",\"y\"],K=[\"clientX\",\"clientY\"];function tt(t,e){var n=this;this.manager=t,this.callback=e,this.element=t.element,this.target=t.options.inputTarget,this.domHandler=function(e){E(t.options.enable,[t])&&n.handler(e)},this.init()}function et(t,e,n){var i=n.pointers.length,o=n.changedPointers.length,r=e&R&&i-o==0,a=e&(H|F)&&i-o==0;n.isFirst=!!r,n.isFinal=!!a,r&&(t.session={}),n.eventType=e,function(t,e){var n=t.session,i=e.pointers,o=i.length;n.firstInput||(n.firstInput=nt(e));o>1&&!n.firstMultiple?n.firstMultiple=nt(e):1===o&&(n.firstMultiple=!1);var r=n.firstInput,a=n.firstMultiple,A=a?a.center:r.center,c=e.center=it(i);e.timeStamp=f(),e.deltaTime=e.timeStamp-r.timeStamp,e.angle=st(A,c),e.distance=at(A,c),function(t,e){var n=e.center,i=t.offsetDelta||{},o=t.prevDelta||{},r=t.prevInput||{};e.eventType!==R&&r.eventType!==H||(o=t.prevDelta={x:r.deltaX||0,y:r.deltaY||0},i=t.offsetDelta={x:n.x,y:n.y});e.deltaX=o.x+(n.x-i.x),e.deltaY=o.y+(n.y-i.y)}(n,e),e.offsetDirection=rt(e.deltaX,e.deltaY);var l=ot(e.deltaTime,e.deltaX,e.deltaY);e.overallVelocityX=l.x,e.overallVelocityY=l.y,e.overallVelocity=p(l.x)>p(l.y)?l.x:l.y,e.scale=a?(u=a.pointers,d=i,at(d[0],d[1],K)/at(u[0],u[1],K)):1,e.rotation=a?function(t,e){return st(e[1],e[0],K)+st(t[1],t[0],K)}(a.pointers,i):0,e.maxPointers=n.prevInput?e.pointers.length>n.prevInput.maxPointers?e.pointers.length:n.prevInput.maxPointers:e.pointers.length,function(t,e){var n,i,o,r,a=t.lastInterval||e,A=e.timeStamp-a.timeStamp;if(e.eventType!=F&&(A>P||a.velocity===s)){var c=e.deltaX-a.deltaX,l=e.deltaY-a.deltaY,u=ot(A,c,l);i=u.x,o=u.y,n=p(u.x)>p(u.y)?u.x:u.y,r=rt(c,l),t.lastInterval=e}else n=a.velocity,i=a.velocityX,o=a.velocityY,r=a.direction;e.velocity=n,e.velocityX=i,e.velocityY=o,e.direction=r}(n,e);var u,d;var h=t.element;I(e.srcEvent.target,h)&&(h=e.srcEvent.target);e.target=h}(t,n),t.emit(\"hammer.input\",n),t.recognize(n),t.session.prevInput=n}function nt(t){for(var e=[],n=0;n<t.pointers.length;)e[n]={clientX:d(t.pointers[n].clientX),clientY:d(t.pointers[n].clientY)},n++;return{timeStamp:f(),pointers:e,center:it(e),deltaX:t.deltaX,deltaY:t.deltaY}}function it(t){var e=t.length;if(1===e)return{x:d(t[0].clientX),y:d(t[0].clientY)};for(var n=0,i=0,o=0;o<e;)n+=t[o].clientX,i+=t[o].clientY,o++;return{x:d(n/e),y:d(i/e)}}function ot(t,e,n){return{x:e/t||0,y:n/t||0}}function rt(t,e){return t===e?U:p(t)>=p(e)?t<0?z:$:e<0?W:Z}function at(t,e,n){n||(n=q);var i=e[n[0]]-t[n[0]],o=e[n[1]]-t[n[1]];return Math.sqrt(i*i+o*o)}function st(t,e,n){n||(n=q);var i=e[n[0]]-t[n[0]],o=e[n[1]]-t[n[1]];return 180*Math.atan2(o,i)/Math.PI}tt.prototype={handler:function(){},init:function(){this.evEl&&C(this.element,this.evEl,this.domHandler),this.evTarget&&C(this.target,this.evTarget,this.domHandler),this.evWin&&C(L(this.element),this.evWin,this.domHandler)},destroy:function(){this.evEl&&_(this.element,this.evEl,this.domHandler),this.evTarget&&_(this.target,this.evTarget,this.domHandler),this.evWin&&_(L(this.element),this.evWin,this.domHandler)}};var At={mousedown:R,mousemove:Y,mouseup:H},ct=\"mousedown\",lt=\"mousemove mouseup\";function ut(){this.evEl=ct,this.evWin=lt,this.pressed=!1,tt.apply(this,arguments)}w(ut,tt,{handler:function(t){var e=At[t.type];e&R&&0===t.button&&(this.pressed=!0),e&Y&&1!==t.which&&(e=H),this.pressed&&(e&H&&(this.pressed=!1),this.callback(this.manager,e,{pointers:[t],changedPointers:[t],pointerType:\"mouse\",srcEvent:t}))}});var dt={pointerdown:R,pointermove:Y,pointerup:H,pointercancel:F,pointerout:F},pt={2:\"touch\",3:\"pen\",4:\"mouse\",5:\"kinect\"},ft=\"pointerdown\",ht=\"pointermove pointerup pointercancel\";function vt(){this.evEl=ft,this.evWin=ht,tt.apply(this,arguments),this.store=this.manager.session.pointerEvents=[]}o.MSPointerEvent&&!o.PointerEvent&&(ft=\"MSPointerDown\",ht=\"MSPointerMove MSPointerUp MSPointerCancel\"),w(vt,tt,{handler:function(t){var e=this.store,n=!1,i=t.type.toLowerCase().replace(\"ms\",\"\"),o=dt[i],r=pt[t.pointerType]||t.pointerType,a=\"touch\"==r,s=N(e,t.pointerId,\"pointerId\");o&R&&(0===t.button||a)?s<0&&(e.push(t),s=e.length-1):o&(H|F)&&(n=!0),s<0||(e[s]=t,this.callback(this.manager,o,{pointers:e,changedPointers:[t],pointerType:r,srcEvent:t}),n&&e.splice(s,1))}});var mt={touchstart:R,touchmove:Y,touchend:H,touchcancel:F},gt=\"touchstart\",yt=\"touchstart touchmove touchend touchcancel\";function bt(){this.evTarget=gt,this.evWin=yt,this.started=!1,tt.apply(this,arguments)}w(bt,tt,{handler:function(t){var e=mt[t.type];if(e===R&&(this.started=!0),this.started){var n=function(t,e){var n=O(t.touches),i=O(t.changedTouches);e&(H|F)&&(n=k(n.concat(i),\"identifier\",!0));return[n,i]}.call(this,t,e);e&(H|F)&&n[0].length-n[1].length==0&&(this.started=!1),this.callback(this.manager,e,{pointers:n[0],changedPointers:n[1],pointerType:\"touch\",srcEvent:t})}}});var wt={touchstart:R,touchmove:Y,touchend:H,touchcancel:F},Tt=\"touchstart touchmove touchend touchcancel\";function Et(){this.evTarget=Tt,this.targetIds={},tt.apply(this,arguments)}w(Et,tt,{handler:function(t){var e=wt[t.type],n=function(t,e){var n=O(t.touches),i=this.targetIds;if(e&(R|Y)&&1===n.length)return i[n[0].identifier]=!0,[n,n];var o,r,a=O(t.changedTouches),s=[],A=this.target;if(r=n.filter(function(t){return I(t.target,A)}),e===R)for(o=0;o<r.length;)i[r[o].identifier]=!0,o++;o=0;for(;o<a.length;)i[a[o].identifier]&&s.push(a[o]),e&(H|F)&&delete i[a[o].identifier],o++;if(!s.length)return;return[k(r.concat(s),\"identifier\",!0),s]}.call(this,t,e);n&&this.callback(this.manager,e,{pointers:n[0],changedPointers:n[1],pointerType:\"touch\",srcEvent:t})}});var xt=2500,Ct=25;function _t(){tt.apply(this,arguments);var t=T(this.handler,this);this.touch=new Et(this.manager,t),this.mouse=new ut(this.manager,t),this.primaryTouch=null,this.lastTouches=[]}function It(t){var e=t.changedPointers[0];if(e.identifier===this.primaryTouch){var n={x:e.clientX,y:e.clientY};this.lastTouches.push(n);var i=this.lastTouches;setTimeout(function(){var t=i.indexOf(n);t>-1&&i.splice(t,1)},xt)}}w(_t,tt,{handler:function(t,e,n){var i=\"touch\"==n.pointerType,o=\"mouse\"==n.pointerType;if(!(o&&n.sourceCapabilities&&n.sourceCapabilities.firesTouchEvents)){if(i)(function(t,e){t&R?(this.primaryTouch=e.changedPointers[0].identifier,It.call(this,e)):t&(H|F)&&It.call(this,e)}).call(this,e,n);else if(o&&function(t){for(var e=t.srcEvent.clientX,n=t.srcEvent.clientY,i=0;i<this.lastTouches.length;i++){var o=this.lastTouches[i],r=Math.abs(e-o.x),a=Math.abs(n-o.y);if(r<=Ct&&a<=Ct)return!0}return!1}.call(this,n))return;this.callback(t,e,n)}},destroy:function(){this.touch.destroy(),this.mouse.destroy()}});var Bt=S(l.style,\"touchAction\"),Mt=Bt!==s,Nt=\"auto\",Ot=\"manipulation\",kt=\"none\",St=\"pan-x\",Dt=\"pan-y\",Lt=function(){if(!Mt)return!1;var t={},e=o.CSS&&o.CSS.supports;return[\"auto\",\"manipulation\",\"pan-y\",\"pan-x\",\"pan-x pan-y\",\"none\"].forEach(function(n){t[n]=!e||o.CSS.supports(\"touch-action\",n)}),t}();function Qt(t,e){this.manager=t,this.set(e)}Qt.prototype={set:function(t){\"compute\"==t&&(t=this.compute()),Mt&&this.manager.element.style&&Lt[t]&&(this.manager.element.style[Bt]=t),this.actions=t.toLowerCase().trim()},update:function(){this.set(this.manager.options.touchAction)},compute:function(){var t=[];return m(this.manager.recognizers,function(e){E(e.options.enable,[e])&&(t=t.concat(e.getTouchAction()))}),function(t){if(B(t,kt))return kt;var e=B(t,St),n=B(t,Dt);if(e&&n)return kt;if(e||n)return e?St:Dt;if(B(t,Ot))return Ot;return Nt}(t.join(\" \"))},preventDefaults:function(t){var e=t.srcEvent,n=t.offsetDirection;if(this.manager.session.prevented)e.preventDefault();else{var i=this.actions,o=B(i,kt)&&!Lt[kt],r=B(i,Dt)&&!Lt[Dt],a=B(i,St)&&!Lt[St];if(o){var s=1===t.pointers.length,A=t.distance<2,c=t.deltaTime<250;if(s&&A&&c)return}if(!a||!r)return o||r&&n&V||a&&n&X?this.preventSrc(e):void 0}},preventSrc:function(t){this.manager.session.prevented=!0,t.preventDefault()}};var Gt=1,jt=2,Pt=4,Rt=8,Yt=Rt,Ht=16;function Ft(t){this.options=A({},this.defaults,t||{}),this.id=D++,this.manager=null,this.options.enable=x(this.options.enable,!0),this.state=Gt,this.simultaneous={},this.requireFail=[]}function Ut(t){return t&Ht?\"cancel\":t&Rt?\"end\":t&Pt?\"move\":t&jt?\"start\":\"\"}function zt(t){return t==Z?\"down\":t==W?\"up\":t==z?\"left\":t==$?\"right\":\"\"}function $t(t,e){var n=e.manager;return n?n.get(t):t}function Wt(){Ft.apply(this,arguments)}function Zt(){Wt.apply(this,arguments),this.pX=null,this.pY=null}function Vt(){Wt.apply(this,arguments)}function Xt(){Ft.apply(this,arguments),this._timer=null,this._input=null}function Jt(){Wt.apply(this,arguments)}function qt(){Wt.apply(this,arguments)}function Kt(){Ft.apply(this,arguments),this.pTime=!1,this.pCenter=!1,this._timer=null,this._input=null,this.count=0}function te(t,e){return(e=e||{}).recognizers=x(e.recognizers,te.defaults.preset),new ee(t,e)}Ft.prototype={defaults:{},set:function(t){return A(this.options,t),this.manager&&this.manager.touchAction.update(),this},recognizeWith:function(t){if(v(t,\"recognizeWith\",this))return this;var e=this.simultaneous;return e[(t=$t(t,this)).id]||(e[t.id]=t,t.recognizeWith(this)),this},dropRecognizeWith:function(t){return v(t,\"dropRecognizeWith\",this)?this:(t=$t(t,this),delete this.simultaneous[t.id],this)},requireFailure:function(t){if(v(t,\"requireFailure\",this))return this;var e=this.requireFail;return-1===N(e,t=$t(t,this))&&(e.push(t),t.requireFailure(this)),this},dropRequireFailure:function(t){if(v(t,\"dropRequireFailure\",this))return this;t=$t(t,this);var e=N(this.requireFail,t);return e>-1&&this.requireFail.splice(e,1),this},hasRequireFailures:function(){return this.requireFail.length>0},canRecognizeWith:function(t){return!!this.simultaneous[t.id]},emit:function(t){var e=this,n=this.state;function i(n){e.manager.emit(n,t)}n<Rt&&i(e.options.event+Ut(n)),i(e.options.event),t.additionalEvent&&i(t.additionalEvent),n>=Rt&&i(e.options.event+Ut(n))},tryEmit:function(t){if(this.canEmit())return this.emit(t);this.state=32},canEmit:function(){for(var t=0;t<this.requireFail.length;){if(!(this.requireFail[t].state&(32|Gt)))return!1;t++}return!0},recognize:function(t){var e=A({},t);if(!E(this.options.enable,[this,e]))return this.reset(),void(this.state=32);this.state&(Yt|Ht|32)&&(this.state=Gt),this.state=this.process(e),this.state&(jt|Pt|Rt|Ht)&&this.tryEmit(e)},process:function(t){},getTouchAction:function(){},reset:function(){}},w(Wt,Ft,{defaults:{pointers:1},attrTest:function(t){var e=this.options.pointers;return 0===e||t.pointers.length===e},process:function(t){var e=this.state,n=t.eventType,i=e&(jt|Pt),o=this.attrTest(t);return i&&(n&F||!o)?e|Ht:i||o?n&H?e|Rt:e&jt?e|Pt:jt:32}}),w(Zt,Wt,{defaults:{event:\"pan\",threshold:10,pointers:1,direction:J},getTouchAction:function(){var t=this.options.direction,e=[];return t&V&&e.push(Dt),t&X&&e.push(St),e},directionTest:function(t){var e=this.options,n=!0,i=t.distance,o=t.direction,r=t.deltaX,a=t.deltaY;return o&e.direction||(e.direction&V?(o=0===r?U:r<0?z:$,n=r!=this.pX,i=Math.abs(t.deltaX)):(o=0===a?U:a<0?W:Z,n=a!=this.pY,i=Math.abs(t.deltaY))),t.direction=o,n&&i>e.threshold&&o&e.direction},attrTest:function(t){return Wt.prototype.attrTest.call(this,t)&&(this.state&jt||!(this.state&jt)&&this.directionTest(t))},emit:function(t){this.pX=t.deltaX,this.pY=t.deltaY;var e=zt(t.direction);e&&(t.additionalEvent=this.options.event+e),this._super.emit.call(this,t)}}),w(Vt,Wt,{defaults:{event:\"pinch\",threshold:0,pointers:2},getTouchAction:function(){return[kt]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.scale-1)>this.options.threshold||this.state&jt)},emit:function(t){if(1!==t.scale){var e=t.scale<1?\"in\":\"out\";t.additionalEvent=this.options.event+e}this._super.emit.call(this,t)}}),w(Xt,Ft,{defaults:{event:\"press\",pointers:1,time:251,threshold:9},getTouchAction:function(){return[Nt]},process:function(t){var e=this.options,n=t.pointers.length===e.pointers,i=t.distance<e.threshold,o=t.deltaTime>e.time;if(this._input=t,!i||!n||t.eventType&(H|F)&&!o)this.reset();else if(t.eventType&R)this.reset(),this._timer=h(function(){this.state=Yt,this.tryEmit()},e.time,this);else if(t.eventType&H)return Yt;return 32},reset:function(){clearTimeout(this._timer)},emit:function(t){this.state===Yt&&(t&&t.eventType&H?this.manager.emit(this.options.event+\"up\",t):(this._input.timeStamp=f(),this.manager.emit(this.options.event,this._input)))}}),w(Jt,Wt,{defaults:{event:\"rotate\",threshold:0,pointers:2},getTouchAction:function(){return[kt]},attrTest:function(t){return this._super.attrTest.call(this,t)&&(Math.abs(t.rotation)>this.options.threshold||this.state&jt)}}),w(qt,Wt,{defaults:{event:\"swipe\",threshold:10,velocity:.3,direction:V|X,pointers:1},getTouchAction:function(){return Zt.prototype.getTouchAction.call(this)},attrTest:function(t){var e,n=this.options.direction;return n&(V|X)?e=t.overallVelocity:n&V?e=t.overallVelocityX:n&X&&(e=t.overallVelocityY),this._super.attrTest.call(this,t)&&n&t.offsetDirection&&t.distance>this.options.threshold&&t.maxPointers==this.options.pointers&&p(e)>this.options.velocity&&t.eventType&H},emit:function(t){var e=zt(t.offsetDirection);e&&this.manager.emit(this.options.event+e,t),this.manager.emit(this.options.event,t)}}),w(Kt,Ft,{defaults:{event:\"tap\",pointers:1,taps:1,interval:300,time:250,threshold:9,posThreshold:10},getTouchAction:function(){return[Ot]},process:function(t){var e=this.options,n=t.pointers.length===e.pointers,i=t.distance<e.threshold,o=t.deltaTime<e.time;if(this.reset(),t.eventType&R&&0===this.count)return this.failTimeout();if(i&&o&&n){if(t.eventType!=H)return this.failTimeout();var r=!this.pTime||t.timeStamp-this.pTime<e.interval,a=!this.pCenter||at(this.pCenter,t.center)<e.posThreshold;if(this.pTime=t.timeStamp,this.pCenter=t.center,a&&r?this.count+=1:this.count=1,this._input=t,0===this.count%e.taps)return this.hasRequireFailures()?(this._timer=h(function(){this.state=Yt,this.tryEmit()},e.interval,this),jt):Yt}return 32},failTimeout:function(){return this._timer=h(function(){this.state=32},this.options.interval,this),32},reset:function(){clearTimeout(this._timer)},emit:function(){this.state==Yt&&(this._input.tapCount=this.count,this.manager.emit(this.options.event,this._input))}}),te.VERSION=\"2.0.7\",te.defaults={domEvents:!1,touchAction:\"compute\",enable:!0,inputTarget:null,inputClass:null,preset:[[Jt,{enable:!1}],[Vt,{enable:!1},[\"rotate\"]],[qt,{direction:V}],[Zt,{direction:V},[\"swipe\"]],[Kt],[Kt,{event:\"doubletap\",taps:2},[\"tap\"]],[Xt]],cssProps:{userSelect:\"none\",touchSelect:\"none\",touchCallout:\"none\",contentZooming:\"none\",userDrag:\"none\",tapHighlightColor:\"rgba(0,0,0,0)\"}};function ee(t,e){var n;this.options=A({},te.defaults,e||{}),this.options.inputTarget=this.options.inputTarget||t,this.handlers={},this.session={},this.recognizers=[],this.oldCssProps={},this.element=t,this.input=new((n=this).options.inputClass||(G?vt:j?Et:Q?_t:ut))(n,et),this.touchAction=new Qt(this,this.options.touchAction),ne(this,!0),m(this.options.recognizers,function(t){var e=this.add(new t[0](t[1]));t[2]&&e.recognizeWith(t[2]),t[3]&&e.requireFailure(t[3])},this)}function ne(t,e){var n,i=t.element;i.style&&(m(t.options.cssProps,function(o,r){n=S(i.style,r),e?(t.oldCssProps[n]=i.style[n],i.style[n]=o):i.style[n]=t.oldCssProps[n]||\"\"}),e||(t.oldCssProps={}))}ee.prototype={set:function(t){return A(this.options,t),t.touchAction&&this.touchAction.update(),t.inputTarget&&(this.input.destroy(),this.input.target=t.inputTarget,this.input.init()),this},stop:function(t){this.session.stopped=t?2:1},recognize:function(t){var e=this.session;if(!e.stopped){var n;this.touchAction.preventDefaults(t);var i=this.recognizers,o=e.curRecognizer;(!o||o&&o.state&Yt)&&(o=e.curRecognizer=null);for(var r=0;r<i.length;)n=i[r],2===e.stopped||o&&n!=o&&!n.canRecognizeWith(o)?n.reset():n.recognize(t),!o&&n.state&(jt|Pt|Rt)&&(o=e.curRecognizer=n),r++}},get:function(t){if(t instanceof Ft)return t;for(var e=this.recognizers,n=0;n<e.length;n++)if(e[n].options.event==t)return e[n];return null},add:function(t){if(v(t,\"add\",this))return this;var e=this.get(t.options.event);return e&&this.remove(e),this.recognizers.push(t),t.manager=this,this.touchAction.update(),t},remove:function(t){if(v(t,\"remove\",this))return this;if(t=this.get(t)){var e=this.recognizers,n=N(e,t);-1!==n&&(e.splice(n,1),this.touchAction.update())}return this},on:function(t,e){if(t!==s&&e!==s){var n=this.handlers;return m(M(t),function(t){n[t]=n[t]||[],n[t].push(e)}),this}},off:function(t,e){if(t!==s){var n=this.handlers;return m(M(t),function(t){e?n[t]&&n[t].splice(N(n[t],e),1):delete n[t]}),this}},emit:function(t,e){this.options.domEvents&&function(t,e){var n=r.createEvent(\"Event\");n.initEvent(t,!0,!0),n.gesture=e,e.target.dispatchEvent(n)}(t,e);var n=this.handlers[t]&&this.handlers[t].slice();if(n&&n.length){e.type=t,e.preventDefault=function(){e.srcEvent.preventDefault()};for(var i=0;i<n.length;)n[i](e),i++}},destroy:function(){this.element&&ne(this,!1),this.handlers={},this.session={},this.input.destroy(),this.element=null}},A(te,{INPUT_START:R,INPUT_MOVE:Y,INPUT_END:H,INPUT_CANCEL:F,STATE_POSSIBLE:Gt,STATE_BEGAN:jt,STATE_CHANGED:Pt,STATE_ENDED:Rt,STATE_RECOGNIZED:Yt,STATE_CANCELLED:Ht,STATE_FAILED:32,DIRECTION_NONE:U,DIRECTION_LEFT:z,DIRECTION_RIGHT:$,DIRECTION_UP:W,DIRECTION_DOWN:Z,DIRECTION_HORIZONTAL:V,DIRECTION_VERTICAL:X,DIRECTION_ALL:J,Manager:ee,Input:tt,TouchAction:Qt,TouchInput:Et,MouseInput:ut,PointerEventInput:vt,TouchMouseInput:_t,SingleTouchInput:bt,Recognizer:Ft,AttrRecognizer:Wt,Tap:Kt,Pan:Zt,Swipe:qt,Pinch:Vt,Rotate:Jt,Press:Xt,on:C,off:_,each:m,merge:b,extend:y,assign:A,inherit:w,bindFn:T,prefixed:S}),(void 0!==o?o:\"undefined\"!=typeof self?self:{}).Hammer=te,(i=function(){return te}.call(e,n,e,t))===s||(t.exports=i)}(window,document)},5:function(t,e,n){\"use strict\";(function(t){n.d(e,\"a\",function(){return Sn});var i=n(16),o=n(21);function r(t){return(r=\"function\"==typeof Symbol&&\"symbol\"==typeof Symbol.iterator?function(t){return typeof t}:function(t){return t&&\"function\"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?\"symbol\":typeof t})(t)}function a(t,e){for(var n=0;n<e.length;n++){var i=e[n];i.enumerable=i.enumerable||!1,i.configurable=!0,\"value\"in i&&(i.writable=!0),Object.defineProperty(t,i.key,i)}}function s(t,e,n){return e in t?Object.defineProperty(t,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):t[e]=n,t}function A(t){for(var e=1;e<arguments.length;e++){var n=null!=arguments[e]?arguments[e]:{},i=Object.keys(n);\"function\"==typeof Object.getOwnPropertySymbols&&(i=i.concat(Object.getOwnPropertySymbols(n).filter(function(t){return Object.getOwnPropertyDescriptor(n,t).enumerable}))),i.forEach(function(e){s(t,e,n[e])})}return t}var c=function(){};function l(t){return\"string\"==typeof t&&(t=t.split(\" \")),t}function u(t,e){var n,i=l(e);n=t.className instanceof c?l(t.className.baseVal):l(t.className),i.forEach(function(t){-1===n.indexOf(t)&&n.push(t)}),t instanceof SVGElement?t.setAttribute(\"class\",n.join(\" \")):t.className=n.join(\" \")}function d(t,e){var n,i=l(e);n=t.className instanceof c?l(t.className.baseVal):l(t.className),i.forEach(function(t){var e=n.indexOf(t);-1!==e&&n.splice(e,1)}),t instanceof SVGElement?t.setAttribute(\"class\",n.join(\" \")):t.className=n.join(\" \")}\"undefined\"!=typeof window&&(c=window.SVGAnimatedString);var p=!1;if(\"undefined\"!=typeof window){p=!1;try{var f=Object.defineProperty({},\"passive\",{get:function(){p=!0}});window.addEventListener(\"test\",null,f)}catch(t){}}var h={container:!1,delay:0,html:!1,placement:\"top\",title:\"\",template:'<div class=\"tooltip\" role=\"tooltip\"><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>',trigger:\"hover focus\",offset:0},v=[],m=function(){function t(e,n){var i=this;!function(t,e){if(!(t instanceof e))throw new TypeError(\"Cannot call a class as a function\")}(this,t),s(this,\"_events\",[]),s(this,\"_setTooltipNodeEvent\",function(t,e,n,o){var r=t.relatedreference||t.toElement||t.relatedTarget;return!!i._tooltipNode.contains(r)&&(i._tooltipNode.addEventListener(t.type,function n(r){var a=r.relatedreference||r.toElement||r.relatedTarget;i._tooltipNode.removeEventListener(t.type,n),e.contains(a)||i._scheduleHide(e,o.delay,o,r)}),!0)}),n=A({},h,n),e.jquery&&(e=e[0]),this.show=this.show.bind(this),this.hide=this.hide.bind(this),this.reference=e,this.options=n,this._isOpen=!1,this._init()}var e,n,o;return e=t,(n=[{key:\"show\",value:function(){this._show(this.reference,this.options)}},{key:\"hide\",value:function(){this._hide()}},{key:\"dispose\",value:function(){this._dispose()}},{key:\"toggle\",value:function(){return this._isOpen?this.hide():this.show()}},{key:\"setClasses\",value:function(t){this._classes=t}},{key:\"setContent\",value:function(t){this.options.title=t,this._tooltipNode&&this._setContent(t,this.options)}},{key:\"setOptions\",value:function(t){var e=!1,n=t&&t.classes||_.options.defaultClass;this._classes!==n&&(this.setClasses(n),e=!0),t=w(t);var i=!1,o=!1;for(var r in this.options.offset===t.offset&&this.options.placement===t.placement||(i=!0),(this.options.template!==t.template||this.options.trigger!==t.trigger||this.options.container!==t.container||e)&&(o=!0),t)this.options[r]=t[r];if(this._tooltipNode)if(o){var a=this._isOpen;this.dispose(),this._init(),a&&this.show()}else i&&this.popperInstance.update()}},{key:\"_init\",value:function(){var t=\"string\"==typeof this.options.trigger?this.options.trigger.split(\" \"):[];this._isDisposed=!1,this._enableDocumentTouch=-1===t.indexOf(\"manual\"),t=t.filter(function(t){return-1!==[\"click\",\"hover\",\"focus\"].indexOf(t)}),this._setEventListeners(this.reference,t,this.options),this.$_originalTitle=this.reference.getAttribute(\"title\"),this.reference.removeAttribute(\"title\"),this.reference.setAttribute(\"data-original-title\",this.$_originalTitle)}},{key:\"_create\",value:function(t,e){var n=window.document.createElement(\"div\");n.innerHTML=e.trim();var i=n.childNodes[0];return i.id=\"tooltip_\".concat(Math.random().toString(36).substr(2,10)),i.setAttribute(\"aria-hidden\",\"true\"),this.options.autoHide&&-1!==this.options.trigger.indexOf(\"hover\")&&(i.addEventListener(\"mouseenter\",this.hide),i.addEventListener(\"click\",this.hide)),i}},{key:\"_setContent\",value:function(t,e){var n=this;this.asyncContent=!1,this._applyContent(t,e).then(function(){n.popperInstance.update()})}},{key:\"_applyContent\",value:function(t,e){var n=this;return new Promise(function(i,o){var r=e.html,a=n._tooltipNode;if(a){var s=a.querySelector(n.options.innerSelector);if(1===t.nodeType){if(r){for(;s.firstChild;)s.removeChild(s.firstChild);s.appendChild(t)}}else{if(\"function\"==typeof t){var A=t();return void(A&&\"function\"==typeof A.then?(n.asyncContent=!0,e.loadingClass&&u(a,e.loadingClass),e.loadingContent&&n._applyContent(e.loadingContent,e),A.then(function(t){return e.loadingClass&&d(a,e.loadingClass),n._applyContent(t,e)}).then(i).catch(o)):n._applyContent(A,e).then(i).catch(o))}r?s.innerHTML=t:s.innerText=t}i()}})}},{key:\"_show\",value:function(t,e){if(e&&\"string\"==typeof e.container&&!document.querySelector(e.container))return;clearTimeout(this._disposeTimer),delete(e=Object.assign({},e)).offset;var n=!0;this._tooltipNode&&(u(this._tooltipNode,this._classes),n=!1);var i=this._ensureShown(t,e);return n&&this._tooltipNode&&u(this._tooltipNode,this._classes),u(t,[\"v-tooltip-open\"]),i}},{key:\"_ensureShown\",value:function(t,e){var n=this;if(this._isOpen)return this;if(this._isOpen=!0,v.push(this),this._tooltipNode)return this._tooltipNode.style.display=\"\",this._tooltipNode.setAttribute(\"aria-hidden\",\"false\"),this.popperInstance.enableEventListeners(),this.popperInstance.update(),this.asyncContent&&this._setContent(e.title,e),this;var o=t.getAttribute(\"title\")||e.title;if(!o)return this;var r=this._create(t,e.template);this._tooltipNode=r,t.setAttribute(\"aria-describedby\",r.id);var a=this._findContainer(e.container,t);this._append(r,a);var s=A({},e.popperOptions,{placement:e.placement});return s.modifiers=A({},s.modifiers,{arrow:{element:this.options.arrowSelector}}),e.boundariesElement&&(s.modifiers.preventOverflow={boundariesElement:e.boundariesElement}),this.popperInstance=new i.a(t,r,s),this._setContent(o,e),requestAnimationFrame(function(){!n._isDisposed&&n.popperInstance?(n.popperInstance.update(),requestAnimationFrame(function(){n._isDisposed?n.dispose():n._isOpen&&r.setAttribute(\"aria-hidden\",\"false\")})):n.dispose()}),this}},{key:\"_noLongerOpen\",value:function(){var t=v.indexOf(this);-1!==t&&v.splice(t,1)}},{key:\"_hide\",value:function(){var t=this;if(!this._isOpen)return this;this._isOpen=!1,this._noLongerOpen(),this._tooltipNode.style.display=\"none\",this._tooltipNode.setAttribute(\"aria-hidden\",\"true\"),this.popperInstance.disableEventListeners(),clearTimeout(this._disposeTimer);var e=_.options.disposeTimeout;return null!==e&&(this._disposeTimer=setTimeout(function(){t._tooltipNode&&(t._tooltipNode.removeEventListener(\"mouseenter\",t.hide),t._tooltipNode.removeEventListener(\"click\",t.hide),t._removeTooltipNode())},e)),d(this.reference,[\"v-tooltip-open\"]),this}},{key:\"_removeTooltipNode\",value:function(){if(this._tooltipNode){var t=this._tooltipNode.parentNode;t&&(t.removeChild(this._tooltipNode),this.reference.removeAttribute(\"aria-describedby\")),this._tooltipNode=null}}},{key:\"_dispose\",value:function(){var t=this;return this._isDisposed=!0,this.reference.removeAttribute(\"data-original-title\"),this.$_originalTitle&&this.reference.setAttribute(\"title\",this.$_originalTitle),this._events.forEach(function(e){var n=e.func,i=e.event;t.reference.removeEventListener(i,n)}),this._events=[],this._tooltipNode?(this._hide(),this._tooltipNode.removeEventListener(\"mouseenter\",this.hide),this._tooltipNode.removeEventListener(\"click\",this.hide),this.popperInstance.destroy(),this.popperInstance.options.removeOnDestroy||this._removeTooltipNode()):this._noLongerOpen(),this}},{key:\"_findContainer\",value:function(t,e){return\"string\"==typeof t?t=window.document.querySelector(t):!1===t&&(t=e.parentNode),t}},{key:\"_append\",value:function(t,e){e.appendChild(t)}},{key:\"_setEventListeners\",value:function(t,e,n){var i=this,o=[],r=[];e.forEach(function(t){switch(t){case\"hover\":o.push(\"mouseenter\"),r.push(\"mouseleave\"),i.options.hideOnTargetClick&&r.push(\"click\");break;case\"focus\":o.push(\"focus\"),r.push(\"blur\"),i.options.hideOnTargetClick&&r.push(\"click\");break;case\"click\":o.push(\"click\"),r.push(\"click\")}}),o.forEach(function(e){var o=function(e){!0!==i._isOpen&&(e.usedByTooltip=!0,i._scheduleShow(t,n.delay,n,e))};i._events.push({event:e,func:o}),t.addEventListener(e,o)}),r.forEach(function(e){var o=function(e){!0!==e.usedByTooltip&&i._scheduleHide(t,n.delay,n,e)};i._events.push({event:e,func:o}),t.addEventListener(e,o)})}},{key:\"_onDocumentTouch\",value:function(t){this._enableDocumentTouch&&this._scheduleHide(this.reference,this.options.delay,this.options,t)}},{key:\"_scheduleShow\",value:function(t,e,n){var i=this,o=e&&e.show||e||0;clearTimeout(this._scheduleTimer),this._scheduleTimer=window.setTimeout(function(){return i._show(t,n)},o)}},{key:\"_scheduleHide\",value:function(t,e,n,i){var o=this,r=e&&e.hide||e||0;clearTimeout(this._scheduleTimer),this._scheduleTimer=window.setTimeout(function(){if(!1!==o._isOpen&&document.body.contains(o._tooltipNode)){if(\"mouseleave\"===i.type)if(o._setTooltipNodeEvent(i,t,e,n))return;o._hide(t,n)}},r)}}])&&a(e.prototype,n),o&&a(e,o),t}();\"undefined\"!=typeof document&&document.addEventListener(\"touchstart\",function(t){for(var e=0;e<v.length;e++)v[e]._onDocumentTouch(t)},!p||{passive:!0,capture:!0});var g={enabled:!0},y=[\"top\",\"top-start\",\"top-end\",\"right\",\"right-start\",\"right-end\",\"bottom\",\"bottom-start\",\"bottom-end\",\"left\",\"left-start\",\"left-end\"],b={defaultPlacement:\"top\",defaultClass:\"vue-tooltip-theme\",defaultTargetClass:\"has-tooltip\",defaultHtml:!0,defaultTemplate:'<div class=\"tooltip\" role=\"tooltip\"><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>',defaultArrowSelector:\".tooltip-arrow, .tooltip__arrow\",defaultInnerSelector:\".tooltip-inner, .tooltip__inner\",defaultDelay:0,defaultTrigger:\"hover focus\",defaultOffset:0,defaultContainer:\"body\",defaultBoundariesElement:void 0,defaultPopperOptions:{},defaultLoadingClass:\"tooltip-loading\",defaultLoadingContent:\"...\",autoHide:!0,defaultHideOnTargetClick:!0,disposeTimeout:5e3,popover:{defaultPlacement:\"bottom\",defaultClass:\"vue-popover-theme\",defaultBaseClass:\"tooltip popover\",defaultWrapperClass:\"wrapper\",defaultInnerClass:\"tooltip-inner popover-inner\",defaultArrowClass:\"tooltip-arrow popover-arrow\",defaultOpenClass:\"open\",defaultDelay:0,defaultTrigger:\"click\",defaultOffset:0,defaultContainer:\"body\",defaultBoundariesElement:void 0,defaultPopperOptions:{},defaultAutoHide:!0,defaultHandleResize:!0}};function w(t){var e={placement:void 0!==t.placement?t.placement:_.options.defaultPlacement,delay:void 0!==t.delay?t.delay:_.options.defaultDelay,html:void 0!==t.html?t.html:_.options.defaultHtml,template:void 0!==t.template?t.template:_.options.defaultTemplate,arrowSelector:void 0!==t.arrowSelector?t.arrowSelector:_.options.defaultArrowSelector,innerSelector:void 0!==t.innerSelector?t.innerSelector:_.options.defaultInnerSelector,trigger:void 0!==t.trigger?t.trigger:_.options.defaultTrigger,offset:void 0!==t.offset?t.offset:_.options.defaultOffset,container:void 0!==t.container?t.container:_.options.defaultContainer,boundariesElement:void 0!==t.boundariesElement?t.boundariesElement:_.options.defaultBoundariesElement,autoHide:void 0!==t.autoHide?t.autoHide:_.options.autoHide,hideOnTargetClick:void 0!==t.hideOnTargetClick?t.hideOnTargetClick:_.options.defaultHideOnTargetClick,loadingClass:void 0!==t.loadingClass?t.loadingClass:_.options.defaultLoadingClass,loadingContent:void 0!==t.loadingContent?t.loadingContent:_.options.defaultLoadingContent,popperOptions:A({},void 0!==t.popperOptions?t.popperOptions:_.options.defaultPopperOptions)};if(e.offset){var n=r(e.offset),i=e.offset;(\"number\"===n||\"string\"===n&&-1===i.indexOf(\",\"))&&(i=\"0, \".concat(i)),e.popperOptions.modifiers||(e.popperOptions.modifiers={}),e.popperOptions.modifiers.offset={offset:i}}return e.trigger&&-1!==e.trigger.indexOf(\"click\")&&(e.hideOnTargetClick=!1),e}function T(t,e){for(var n=t.placement,i=0;i<y.length;i++){var o=y[i];e[o]&&(n=o)}return n}function E(t){var e=r(t);return\"string\"===e?t:!(!t||\"object\"!==e)&&t.content}function x(t){t._tooltip&&(t._tooltip.dispose(),delete t._tooltip,delete t._tooltipOldShow),t._tooltipTargetClasses&&(d(t,t._tooltipTargetClasses),delete t._tooltipTargetClasses)}function C(t,e){var n,i=e.value,o=(e.oldValue,e.modifiers),r=E(i);r&&g.enabled?(t._tooltip?((n=t._tooltip).setContent(r),n.setOptions(A({},i,{placement:T(i,o)}))):n=function(t,e){var n=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{},i=E(e),o=void 0!==e.classes?e.classes:_.options.defaultClass,r=A({title:i},w(A({},e,{placement:T(e,n)}))),a=t._tooltip=new m(t,r);a.setClasses(o),a._vueEl=t;var s=void 0!==e.targetClasses?e.targetClasses:_.options.defaultTargetClass;return t._tooltipTargetClasses=s,u(t,s),a}(t,i,o),void 0!==i.show&&i.show!==t._tooltipOldShow&&(t._tooltipOldShow=i.show,i.show?n.show():n.hide())):x(t)}var _={options:b,bind:C,update:C,unbind:function(t){x(t)}};function I(t){t.addEventListener(\"click\",M),t.addEventListener(\"touchstart\",N,!!p&&{passive:!0})}function B(t){t.removeEventListener(\"click\",M),t.removeEventListener(\"touchstart\",N),t.removeEventListener(\"touchend\",O),t.removeEventListener(\"touchcancel\",k)}function M(t){var e=t.currentTarget;t.closePopover=!e.$_vclosepopover_touch,t.closeAllPopover=e.$_closePopoverModifiers&&!!e.$_closePopoverModifiers.all}function N(t){if(1===t.changedTouches.length){var e=t.currentTarget;e.$_vclosepopover_touch=!0;var n=t.changedTouches[0];e.$_vclosepopover_touchPoint=n,e.addEventListener(\"touchend\",O),e.addEventListener(\"touchcancel\",k)}}function O(t){var e=t.currentTarget;if(e.$_vclosepopover_touch=!1,1===t.changedTouches.length){var n=t.changedTouches[0],i=e.$_vclosepopover_touchPoint;t.closePopover=Math.abs(n.screenY-i.screenY)<20&&Math.abs(n.screenX-i.screenX)<20,t.closeAllPopover=e.$_closePopoverModifiers&&!!e.$_closePopoverModifiers.all}}function k(t){t.currentTarget.$_vclosepopover_touch=!1}var S={bind:function(t,e){var n=e.value,i=e.modifiers;t.$_closePopoverModifiers=i,(void 0===n||n)&&I(t)},update:function(t,e){var n=e.value,i=e.oldValue,o=e.modifiers;t.$_closePopoverModifiers=o,n!==i&&(void 0===n||n?I(t):B(t))},unbind:function(t){B(t)}};function D(t){var e=_.options.popover[t];return void 0===e?_.options[t]:e}var L=!1;\"undefined\"!=typeof window&&\"undefined\"!=typeof navigator&&(L=/iPad|iPhone|iPod/.test(navigator.userAgent)&&!window.MSStream);var Q=[],G=function(){};\"undefined\"!=typeof window&&(G=window.Element);var j={name:\"VPopover\",components:{ResizeObserver:o.a},props:{open:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},placement:{type:String,default:function(){return D(\"defaultPlacement\")}},delay:{type:[String,Number,Object],default:function(){return D(\"defaultDelay\")}},offset:{type:[String,Number],default:function(){return D(\"defaultOffset\")}},trigger:{type:String,default:function(){return D(\"defaultTrigger\")}},container:{type:[String,Object,G,Boolean],default:function(){return D(\"defaultContainer\")}},boundariesElement:{type:[String,G],default:function(){return D(\"defaultBoundariesElement\")}},popperOptions:{type:Object,default:function(){return D(\"defaultPopperOptions\")}},popoverClass:{type:[String,Array],default:function(){return D(\"defaultClass\")}},popoverBaseClass:{type:[String,Array],default:function(){return _.options.popover.defaultBaseClass}},popoverInnerClass:{type:[String,Array],default:function(){return _.options.popover.defaultInnerClass}},popoverWrapperClass:{type:[String,Array],default:function(){return _.options.popover.defaultWrapperClass}},popoverArrowClass:{type:[String,Array],default:function(){return _.options.popover.defaultArrowClass}},autoHide:{type:Boolean,default:function(){return _.options.popover.defaultAutoHide}},handleResize:{type:Boolean,default:function(){return _.options.popover.defaultHandleResize}},openGroup:{type:String,default:null},openClass:{type:[String,Array],default:function(){return _.options.popover.defaultOpenClass}}},data:function(){return{isOpen:!1,id:Math.random().toString(36).substr(2,10)}},computed:{cssClass:function(){return s({},this.openClass,this.isOpen)},popoverId:function(){return\"popover_\".concat(this.id)}},watch:{open:function(t){t?this.show():this.hide()},disabled:function(t,e){t!==e&&(t?this.hide():this.open&&this.show())},container:function(t){if(this.isOpen&&this.popperInstance){var e=this.$refs.popover,n=this.$refs.trigger,i=this.$_findContainer(this.container,n);if(!i)return void console.warn(\"No container for popover\",this);i.appendChild(e),this.popperInstance.scheduleUpdate()}},trigger:function(t){this.$_removeEventListeners(),this.$_addEventListeners()},placement:function(t){var e=this;this.$_updatePopper(function(){e.popperInstance.options.placement=t})},offset:\"$_restartPopper\",boundariesElement:\"$_restartPopper\",popperOptions:{handler:\"$_restartPopper\",deep:!0}},created:function(){this.$_isDisposed=!1,this.$_mounted=!1,this.$_events=[],this.$_preventOpen=!1},mounted:function(){var t=this.$refs.popover;t.parentNode&&t.parentNode.removeChild(t),this.$_init(),this.open&&this.show()},deactivated:function(){this.hide()},beforeDestroy:function(){this.dispose()},methods:{show:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=e.event,i=(e.skipDelay,e.force),o=void 0!==i&&i;!o&&this.disabled||(this.$_scheduleShow(n),this.$emit(\"show\")),this.$emit(\"update:open\",!0),this.$_beingShowed=!0,requestAnimationFrame(function(){t.$_beingShowed=!1})},hide:function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},e=t.event;t.skipDelay;this.$_scheduleHide(e),this.$emit(\"hide\"),this.$emit(\"update:open\",!1)},dispose:function(){if(this.$_isDisposed=!0,this.$_removeEventListeners(),this.hide({skipDelay:!0}),this.popperInstance&&(this.popperInstance.destroy(),!this.popperInstance.options.removeOnDestroy)){var t=this.$refs.popover;t.parentNode&&t.parentNode.removeChild(t)}this.$_mounted=!1,this.popperInstance=null,this.isOpen=!1,this.$emit(\"dispose\")},$_init:function(){-1===this.trigger.indexOf(\"manual\")&&this.$_addEventListeners()},$_show:function(){var t=this,e=this.$refs.trigger,n=this.$refs.popover;if(clearTimeout(this.$_disposeTimer),!this.isOpen){if(this.popperInstance&&(this.isOpen=!0,this.popperInstance.enableEventListeners(),this.popperInstance.scheduleUpdate()),!this.$_mounted){var o=this.$_findContainer(this.container,e);if(!o)return void console.warn(\"No container for popover\",this);o.appendChild(n),this.$_mounted=!0}if(!this.popperInstance){var r=A({},this.popperOptions,{placement:this.placement});if(r.modifiers=A({},r.modifiers,{arrow:A({},r.modifiers&&r.modifiers.arrow,{element:this.$refs.arrow})}),this.offset){var a=this.$_getOffset();r.modifiers.offset=A({},r.modifiers&&r.modifiers.offset,{offset:a})}this.boundariesElement&&(r.modifiers.preventOverflow=A({},r.modifiers&&r.modifiers.preventOverflow,{boundariesElement:this.boundariesElement})),this.popperInstance=new i.a(e,n,r),requestAnimationFrame(function(){if(t.hidden)return t.hidden=!1,void t.$_hide();!t.$_isDisposed&&t.popperInstance?(t.popperInstance.scheduleUpdate(),requestAnimationFrame(function(){if(t.hidden)return t.hidden=!1,void t.$_hide();t.$_isDisposed?t.dispose():t.isOpen=!0})):t.dispose()})}var s=this.openGroup;if(s)for(var c,l=0;l<Q.length;l++)(c=Q[l]).openGroup!==s&&(c.hide(),c.$emit(\"close-group\"));Q.push(this),this.$emit(\"apply-show\")}},$_hide:function(){var t=this;if(this.isOpen){var e=Q.indexOf(this);-1!==e&&Q.splice(e,1),this.isOpen=!1,this.popperInstance&&this.popperInstance.disableEventListeners(),clearTimeout(this.$_disposeTimer);var n=_.options.popover.disposeTimeout||_.options.disposeTimeout;null!==n&&(this.$_disposeTimer=setTimeout(function(){var e=t.$refs.popover;e&&(e.parentNode&&e.parentNode.removeChild(e),t.$_mounted=!1)},n)),this.$emit(\"apply-hide\")}},$_findContainer:function(t,e){return\"string\"==typeof t?t=window.document.querySelector(t):!1===t&&(t=e.parentNode),t},$_getOffset:function(){var t=r(this.offset),e=this.offset;return(\"number\"===t||\"string\"===t&&-1===e.indexOf(\",\"))&&(e=\"0, \".concat(e)),e},$_addEventListeners:function(){var t=this,e=this.$refs.trigger,n=[],i=[];(\"string\"==typeof this.trigger?this.trigger.split(\" \").filter(function(t){return-1!==[\"click\",\"hover\",\"focus\"].indexOf(t)}):[]).forEach(function(t){switch(t){case\"hover\":n.push(\"mouseenter\"),i.push(\"mouseleave\");break;case\"focus\":n.push(\"focus\"),i.push(\"blur\");break;case\"click\":n.push(\"click\"),i.push(\"click\")}}),n.forEach(function(n){var i=function(e){t.isOpen||(e.usedByTooltip=!0,!t.$_preventOpen&&t.show({event:e}),t.hidden=!1)};t.$_events.push({event:n,func:i}),e.addEventListener(n,i)}),i.forEach(function(n){var i=function(e){e.usedByTooltip||(t.hide({event:e}),t.hidden=!0)};t.$_events.push({event:n,func:i}),e.addEventListener(n,i)})},$_scheduleShow:function(){var t=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(clearTimeout(this.$_scheduleTimer),t)this.$_show();else{var e=parseInt(this.delay&&this.delay.show||this.delay||0);this.$_scheduleTimer=setTimeout(this.$_show.bind(this),e)}},$_scheduleHide:function(){var t=this,e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];if(clearTimeout(this.$_scheduleTimer),n)this.$_hide();else{var i=parseInt(this.delay&&this.delay.hide||this.delay||0);this.$_scheduleTimer=setTimeout(function(){if(t.isOpen){if(e&&\"mouseleave\"===e.type)if(t.$_setTooltipNodeEvent(e))return;t.$_hide()}},i)}},$_setTooltipNodeEvent:function(t){var e=this,n=this.$refs.trigger,i=this.$refs.popover,o=t.relatedreference||t.toElement||t.relatedTarget;return!!i.contains(o)&&(i.addEventListener(t.type,function o(r){var a=r.relatedreference||r.toElement||r.relatedTarget;i.removeEventListener(t.type,o),n.contains(a)||e.hide({event:r})}),!0)},$_removeEventListeners:function(){var t=this.$refs.trigger;this.$_events.forEach(function(e){var n=e.func,i=e.event;t.removeEventListener(i,n)}),this.$_events=[]},$_updatePopper:function(t){this.popperInstance&&(t(),this.isOpen&&this.popperInstance.scheduleUpdate())},$_restartPopper:function(){if(this.popperInstance){var t=this.isOpen;this.dispose(),this.$_isDisposed=!1,this.$_init(),t&&this.show({skipDelay:!0,force:!0})}},$_handleGlobalClose:function(t){var e=this,n=arguments.length>1&&void 0!==arguments[1]&&arguments[1];this.$_beingShowed||(this.hide({event:t}),t.closePopover?this.$emit(\"close-directive\"):this.$emit(\"auto-hide\"),n&&(this.$_preventOpen=!0,setTimeout(function(){e.$_preventOpen=!1},300)))},$_handleResize:function(){this.isOpen&&this.popperInstance&&(this.popperInstance.scheduleUpdate(),this.$emit(\"resize\"))}}};function P(t){for(var e=arguments.length>1&&void 0!==arguments[1]&&arguments[1],n=function(n){var i=Q[n];if(i.$refs.popover){var o=i.$refs.popover.contains(t.target);requestAnimationFrame(function(){(t.closeAllPopover||t.closePopover&&o||i.autoHide&&!o)&&i.$_handleGlobalClose(t,e)})}},i=0;i<Q.length;i++)n(i)}\"undefined\"!=typeof document&&\"undefined\"!=typeof window&&(L?document.addEventListener(\"touchend\",function(t){P(t,!0)},!p||{passive:!0,capture:!0}):window.addEventListener(\"click\",function(t){P(t)},!0));var R=function(t,e,n,i,o,r,a,s,A,c){\"boolean\"!=typeof a&&(A=s,s=a,a=!1);var l,u=\"function\"==typeof n?n.options:n;if(t&&t.render&&(u.render=t.render,u.staticRenderFns=t.staticRenderFns,u._compiled=!0,o&&(u.functional=!0)),i&&(u._scopeId=i),r?(l=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||\"undefined\"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),e&&e.call(this,A(t)),t&&t._registeredComponents&&t._registeredComponents.add(r)},u._ssrRegister=l):e&&(l=a?function(){e.call(this,c(this.$root.$options.shadowRoot))}:function(t){e.call(this,s(t))}),l)if(u.functional){var d=u.render;u.render=function(t,e){return l.call(e),d(t,e)}}else{var p=u.beforeCreate;u.beforeCreate=p?[].concat(p,l):[l]}return n},Y=j,H=function(){var t=this,e=t.$createElement,n=t._self._c||e;return n(\"div\",{staticClass:\"v-popover\",class:t.cssClass},[n(\"div\",{ref:\"trigger\",staticClass:\"trigger\",staticStyle:{display:\"inline-block\"},attrs:{\"aria-describedby\":t.popoverId,tabindex:-1!==t.trigger.indexOf(\"focus\")?0:void 0}},[t._t(\"default\")],2),t._v(\" \"),n(\"div\",{ref:\"popover\",class:[t.popoverBaseClass,t.popoverClass,t.cssClass],style:{visibility:t.isOpen?\"visible\":\"hidden\"},attrs:{id:t.popoverId,\"aria-hidden\":t.isOpen?\"false\":\"true\",tabindex:t.autoHide?0:void 0},on:{keyup:function(e){if(!e.type.indexOf(\"key\")&&t._k(e.keyCode,\"esc\",27,e.key,[\"Esc\",\"Escape\"]))return null;t.autoHide&&t.hide()}}},[n(\"div\",{class:t.popoverWrapperClass},[n(\"div\",{ref:\"inner\",class:t.popoverInnerClass,staticStyle:{position:\"relative\"}},[n(\"div\",[t._t(\"popover\")],2),t._v(\" \"),t.handleResize?n(\"ResizeObserver\",{on:{notify:t.$_handleResize}}):t._e()],1),t._v(\" \"),n(\"div\",{ref:\"arrow\",class:t.popoverArrowClass})])])])};H._withStripped=!0;var F=R({render:H,staticRenderFns:[]},void 0,Y,void 0,!1,void 0,void 0,void 0);var U=function(){this.__data__=[],this.size=0};var z=function(t,e){return t===e||t!=t&&e!=e};var $=function(t,e){for(var n=t.length;n--;)if(z(t[n][0],e))return n;return-1},W=Array.prototype.splice;var Z=function(t){var e=this.__data__,n=$(e,t);return!(n<0||(n==e.length-1?e.pop():W.call(e,n,1),--this.size,0))};var V=function(t){var e=this.__data__,n=$(e,t);return n<0?void 0:e[n][1]};var X=function(t){return $(this.__data__,t)>-1};var J=function(t,e){var n=this.__data__,i=$(n,t);return i<0?(++this.size,n.push([t,e])):n[i][1]=e,this};function q(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var i=t[e];this.set(i[0],i[1])}}q.prototype.clear=U,q.prototype.delete=Z,q.prototype.get=V,q.prototype.has=X,q.prototype.set=J;var K=q;var tt=function(){this.__data__=new K,this.size=0};var et=function(t){var e=this.__data__,n=e.delete(t);return this.size=e.size,n};var nt=function(t){return this.__data__.get(t)};var it=function(t){return this.__data__.has(t)},ot=\"undefined\"!=typeof globalThis?globalThis:\"undefined\"!=typeof window?window:void 0!==t?t:\"undefined\"!=typeof self?self:{};function rt(t,e){return t(e={exports:{}},e.exports),e.exports}var at=\"object\"==typeof ot&&ot&&ot.Object===Object&&ot,st=\"object\"==typeof self&&self&&self.Object===Object&&self,At=at||st||Function(\"return this\")(),ct=At.Symbol,lt=Object.prototype,ut=lt.hasOwnProperty,dt=lt.toString,pt=ct?ct.toStringTag:void 0;var ft=function(t){var e=ut.call(t,pt),n=t[pt];try{t[pt]=void 0;var i=!0}catch(t){}var o=dt.call(t);return i&&(e?t[pt]=n:delete t[pt]),o},ht=Object.prototype.toString;var vt=function(t){return ht.call(t)},mt=\"[object Null]\",gt=\"[object Undefined]\",yt=ct?ct.toStringTag:void 0;var bt=function(t){return null==t?void 0===t?gt:mt:yt&&yt in Object(t)?ft(t):vt(t)};var wt=function(t){var e=typeof t;return null!=t&&(\"object\"==e||\"function\"==e)},Tt=\"[object AsyncFunction]\",Et=\"[object Function]\",xt=\"[object GeneratorFunction]\",Ct=\"[object Proxy]\";var _t,It=function(t){if(!wt(t))return!1;var e=bt(t);return e==Et||e==xt||e==Tt||e==Ct},Bt=At[\"__core-js_shared__\"],Mt=(_t=/[^.]+$/.exec(Bt&&Bt.keys&&Bt.keys.IE_PROTO||\"\"))?\"Symbol(src)_1.\"+_t:\"\";var Nt=function(t){return!!Mt&&Mt in t},Ot=Function.prototype.toString;var kt=function(t){if(null!=t){try{return Ot.call(t)}catch(t){}try{return t+\"\"}catch(t){}}return\"\"},St=/^\\[object .+?Constructor\\]$/,Dt=Function.prototype,Lt=Object.prototype,Qt=Dt.toString,Gt=Lt.hasOwnProperty,jt=RegExp(\"^\"+Qt.call(Gt).replace(/[\\\\^$.*+?()[\\]{}|]/g,\"\\\\$&\").replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g,\"$1.*?\")+\"$\");var Pt=function(t){return!(!wt(t)||Nt(t))&&(It(t)?jt:St).test(kt(t))};var Rt=function(t,e){return null==t?void 0:t[e]};var Yt=function(t,e){var n=Rt(t,e);return Pt(n)?n:void 0},Ht=Yt(At,\"Map\"),Ft=Yt(Object,\"create\");var Ut=function(){this.__data__=Ft?Ft(null):{},this.size=0};var zt=function(t){var e=this.has(t)&&delete this.__data__[t];return this.size-=e?1:0,e},$t=\"__lodash_hash_undefined__\",Wt=Object.prototype.hasOwnProperty;var Zt=function(t){var e=this.__data__;if(Ft){var n=e[t];return n===$t?void 0:n}return Wt.call(e,t)?e[t]:void 0},Vt=Object.prototype.hasOwnProperty;var Xt=function(t){var e=this.__data__;return Ft?void 0!==e[t]:Vt.call(e,t)},Jt=\"__lodash_hash_undefined__\";var qt=function(t,e){var n=this.__data__;return this.size+=this.has(t)?0:1,n[t]=Ft&&void 0===e?Jt:e,this};function Kt(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var i=t[e];this.set(i[0],i[1])}}Kt.prototype.clear=Ut,Kt.prototype.delete=zt,Kt.prototype.get=Zt,Kt.prototype.has=Xt,Kt.prototype.set=qt;var te=Kt;var ee=function(){this.size=0,this.__data__={hash:new te,map:new(Ht||K),string:new te}};var ne=function(t){var e=typeof t;return\"string\"==e||\"number\"==e||\"symbol\"==e||\"boolean\"==e?\"__proto__\"!==t:null===t};var ie=function(t,e){var n=t.__data__;return ne(e)?n[\"string\"==typeof e?\"string\":\"hash\"]:n.map};var oe=function(t){var e=ie(this,t).delete(t);return this.size-=e?1:0,e};var re=function(t){return ie(this,t).get(t)};var ae=function(t){return ie(this,t).has(t)};var se=function(t,e){var n=ie(this,t),i=n.size;return n.set(t,e),this.size+=n.size==i?0:1,this};function Ae(t){var e=-1,n=null==t?0:t.length;for(this.clear();++e<n;){var i=t[e];this.set(i[0],i[1])}}Ae.prototype.clear=ee,Ae.prototype.delete=oe,Ae.prototype.get=re,Ae.prototype.has=ae,Ae.prototype.set=se;var ce=Ae,le=200;var ue=function(t,e){var n=this.__data__;if(n instanceof K){var i=n.__data__;if(!Ht||i.length<le-1)return i.push([t,e]),this.size=++n.size,this;n=this.__data__=new ce(i)}return n.set(t,e),this.size=n.size,this};function de(t){var e=this.__data__=new K(t);this.size=e.size}de.prototype.clear=tt,de.prototype.delete=et,de.prototype.get=nt,de.prototype.has=it,de.prototype.set=ue;var pe=de,fe=function(){try{var t=Yt(Object,\"defineProperty\");return t({},\"\",{}),t}catch(t){}}();var he=function(t,e,n){\"__proto__\"==e&&fe?fe(t,e,{configurable:!0,enumerable:!0,value:n,writable:!0}):t[e]=n};var ve=function(t,e,n){(void 0===n||z(t[e],n))&&(void 0!==n||e in t)||he(t,e,n)};var me=function(t){return function(e,n,i){for(var o=-1,r=Object(e),a=i(e),s=a.length;s--;){var A=a[t?s:++o];if(!1===n(r[A],A,r))break}return e}}(),ge=rt(function(t,e){var n=e&&!e.nodeType&&e,i=n&&t&&!t.nodeType&&t,o=i&&i.exports===n?At.Buffer:void 0,r=o?o.allocUnsafe:void 0;t.exports=function(t,e){if(e)return t.slice();var n=t.length,i=r?r(n):new t.constructor(n);return t.copy(i),i}}),ye=At.Uint8Array;var be=function(t){var e=new t.constructor(t.byteLength);return new ye(e).set(new ye(t)),e};var we=function(t,e){var n=e?be(t.buffer):t.buffer;return new t.constructor(n,t.byteOffset,t.length)};var Te=function(t,e){var n=-1,i=t.length;for(e||(e=Array(i));++n<i;)e[n]=t[n];return e},Ee=Object.create,xe=function(){function t(){}return function(e){if(!wt(e))return{};if(Ee)return Ee(e);t.prototype=e;var n=new t;return t.prototype=void 0,n}}();var Ce=function(t,e){return function(n){return t(e(n))}}(Object.getPrototypeOf,Object),_e=Object.prototype;var Ie=function(t){var e=t&&t.constructor;return t===(\"function\"==typeof e&&e.prototype||_e)};var Be=function(t){return\"function\"!=typeof t.constructor||Ie(t)?{}:xe(Ce(t))};var Me=function(t){return null!=t&&\"object\"==typeof t},Ne=\"[object Arguments]\";var Oe=function(t){return Me(t)&&bt(t)==Ne},ke=Object.prototype,Se=ke.hasOwnProperty,De=ke.propertyIsEnumerable,Le=Oe(function(){return arguments}())?Oe:function(t){return Me(t)&&Se.call(t,\"callee\")&&!De.call(t,\"callee\")},Qe=Array.isArray,Ge=9007199254740991;var je=function(t){return\"number\"==typeof t&&t>-1&&t%1==0&&t<=Ge};var Pe=function(t){return null!=t&&je(t.length)&&!It(t)};var Re=function(t){return Me(t)&&Pe(t)};var Ye=function(){return!1},He=rt(function(t,e){var n=e&&!e.nodeType&&e,i=n&&t&&!t.nodeType&&t,o=i&&i.exports===n?At.Buffer:void 0,r=(o?o.isBuffer:void 0)||Ye;t.exports=r}),Fe=\"[object Object]\",Ue=Function.prototype,ze=Object.prototype,$e=Ue.toString,We=ze.hasOwnProperty,Ze=$e.call(Object);var Ve=function(t){if(!Me(t)||bt(t)!=Fe)return!1;var e=Ce(t);if(null===e)return!0;var n=We.call(e,\"constructor\")&&e.constructor;return\"function\"==typeof n&&n instanceof n&&$e.call(n)==Ze},Xe={};Xe[\"[object Float32Array]\"]=Xe[\"[object Float64Array]\"]=Xe[\"[object Int8Array]\"]=Xe[\"[object Int16Array]\"]=Xe[\"[object Int32Array]\"]=Xe[\"[object Uint8Array]\"]=Xe[\"[object Uint8ClampedArray]\"]=Xe[\"[object Uint16Array]\"]=Xe[\"[object Uint32Array]\"]=!0,Xe[\"[object Arguments]\"]=Xe[\"[object Array]\"]=Xe[\"[object ArrayBuffer]\"]=Xe[\"[object Boolean]\"]=Xe[\"[object DataView]\"]=Xe[\"[object Date]\"]=Xe[\"[object Error]\"]=Xe[\"[object Function]\"]=Xe[\"[object Map]\"]=Xe[\"[object Number]\"]=Xe[\"[object Object]\"]=Xe[\"[object RegExp]\"]=Xe[\"[object Set]\"]=Xe[\"[object String]\"]=Xe[\"[object WeakMap]\"]=!1;var Je=function(t){return Me(t)&&je(t.length)&&!!Xe[bt(t)]};var qe=function(t){return function(e){return t(e)}},Ke=rt(function(t,e){var n=e&&!e.nodeType&&e,i=n&&t&&!t.nodeType&&t,o=i&&i.exports===n&&at.process,r=function(){try{var t=i&&i.require&&i.require(\"util\").types;return t||o&&o.binding&&o.binding(\"util\")}catch(t){}}();t.exports=r}),tn=Ke&&Ke.isTypedArray,en=tn?qe(tn):Je;var nn=function(t,e){if(\"__proto__\"!=e)return t[e]},on=Object.prototype.hasOwnProperty;var rn=function(t,e,n){var i=t[e];on.call(t,e)&&z(i,n)&&(void 0!==n||e in t)||he(t,e,n)};var an=function(t,e,n,i){var o=!n;n||(n={});for(var r=-1,a=e.length;++r<a;){var s=e[r],A=i?i(n[s],t[s],s,n,t):void 0;void 0===A&&(A=t[s]),o?he(n,s,A):rn(n,s,A)}return n};var sn=function(t,e){for(var n=-1,i=Array(t);++n<t;)i[n]=e(n);return i},An=9007199254740991,cn=/^(?:0|[1-9]\\d*)$/;var ln=function(t,e){var n=typeof t;return!!(e=null==e?An:e)&&(\"number\"==n||\"symbol\"!=n&&cn.test(t))&&t>-1&&t%1==0&&t<e},un=Object.prototype.hasOwnProperty;var dn=function(t,e){var n=Qe(t),i=!n&&Le(t),o=!n&&!i&&He(t),r=!n&&!i&&!o&&en(t),a=n||i||o||r,s=a?sn(t.length,String):[],A=s.length;for(var c in t)!e&&!un.call(t,c)||a&&(\"length\"==c||o&&(\"offset\"==c||\"parent\"==c)||r&&(\"buffer\"==c||\"byteLength\"==c||\"byteOffset\"==c)||ln(c,A))||s.push(c);return s};var pn=function(t){var e=[];if(null!=t)for(var n in Object(t))e.push(n);return e},fn=Object.prototype.hasOwnProperty;var hn=function(t){if(!wt(t))return pn(t);var e=Ie(t),n=[];for(var i in t)(\"constructor\"!=i||!e&&fn.call(t,i))&&n.push(i);return n};var vn=function(t){return Pe(t)?dn(t,!0):hn(t)};var mn=function(t){return an(t,vn(t))};var gn=function(t,e,n,i,o,r,a){var s=nn(t,n),A=nn(e,n),c=a.get(A);if(c)ve(t,n,c);else{var l=r?r(s,A,n+\"\",t,e,a):void 0,u=void 0===l;if(u){var d=Qe(A),p=!d&&He(A),f=!d&&!p&&en(A);l=A,d||p||f?Qe(s)?l=s:Re(s)?l=Te(s):p?(u=!1,l=ge(A,!0)):f?(u=!1,l=we(A,!0)):l=[]:Ve(A)||Le(A)?(l=s,Le(s)?l=mn(s):wt(s)&&!It(s)||(l=Be(A))):u=!1}u&&(a.set(A,l),o(l,A,i,r,a),a.delete(A)),ve(t,n,l)}};var yn=function t(e,n,i,o,r){e!==n&&me(n,function(a,s){if(wt(a))r||(r=new pe),gn(e,n,s,i,t,o,r);else{var A=o?o(nn(e,s),a,s+\"\",e,n,r):void 0;void 0===A&&(A=a),ve(e,s,A)}},vn)};var bn=function(t){return t};var wn=function(t,e,n){switch(n.length){case 0:return t.call(e);case 1:return t.call(e,n[0]);case 2:return t.call(e,n[0],n[1]);case 3:return t.call(e,n[0],n[1],n[2])}return t.apply(e,n)},Tn=Math.max;var En=function(t,e,n){return e=Tn(void 0===e?t.length-1:e,0),function(){for(var i=arguments,o=-1,r=Tn(i.length-e,0),a=Array(r);++o<r;)a[o]=i[e+o];o=-1;for(var s=Array(e+1);++o<e;)s[o]=i[o];return s[e]=n(a),wn(t,this,s)}};var xn=function(t){return function(){return t}},Cn=fe?function(t,e){return fe(t,\"toString\",{configurable:!0,enumerable:!1,value:xn(e),writable:!0})}:bn,_n=800,In=16,Bn=Date.now;var Mn=function(t){var e=0,n=0;return function(){var i=Bn(),o=In-(i-n);if(n=i,o>0){if(++e>=_n)return arguments[0]}else e=0;return t.apply(void 0,arguments)}}(Cn);var Nn=function(t,e){return Mn(En(t,e,bn),t+\"\")};var On=function(t,e,n){if(!wt(n))return!1;var i=typeof e;return!!(\"number\"==i?Pe(n)&&ln(e,n.length):\"string\"==i&&e in n)&&z(n[e],t)};var kn=function(t){return Nn(function(e,n){var i=-1,o=n.length,r=o>1?n[o-1]:void 0,a=o>2?n[2]:void 0;for(r=t.length>3&&\"function\"==typeof r?(o--,r):void 0,a&&On(n[0],n[1],a)&&(r=o<3?void 0:r,o=1),e=Object(e);++i<o;){var s=n[i];s&&t(e,s,i,r)}return e})}(function(t,e,n){yn(t,e,n)});!function(t,e){void 0===e&&(e={});var n=e.insertAt;if(t&&\"undefined\"!=typeof document){var i=document.head||document.getElementsByTagName(\"head\")[0],o=document.createElement(\"style\");o.type=\"text/css\",\"top\"===n&&i.firstChild?i.insertBefore(o,i.firstChild):i.appendChild(o),o.styleSheet?o.styleSheet.cssText=t:o.appendChild(document.createTextNode(t))}}(\".resize-observer[data-v-b329ee4c]{position:absolute;top:0;left:0;z-index:-1;width:100%;height:100%;border:none;background-color:transparent;pointer-events:none;display:block;overflow:hidden;opacity:0}.resize-observer[data-v-b329ee4c] object{display:block;position:absolute;top:0;left:0;height:100%;width:100%;overflow:hidden;pointer-events:none;z-index:-1}\");var Sn=_,Dn={install:function t(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!t.installed){t.installed=!0;var i={};kn(i,b,n),Dn.options=i,_.options=i,e.directive(\"tooltip\",_),e.directive(\"close-popover\",S),e.component(\"v-popover\",F)}},get enabled(){return g.enabled},set enabled(t){g.enabled=t}},Ln=null;\"undefined\"!=typeof window?Ln=window.Vue:void 0!==t&&(Ln=t.Vue),Ln&&Ln.use(Dn)}).call(this,n(15))},59:function(t,e,n){var i=n(173);\"string\"==typeof i&&(i=[[t.i,i,\"\"]]),i.locals&&(t.exports=i.locals);(0,n(2).default)(\"da0f19d8\",i,!0,{})},6:function(t,e,n){\"use strict\";n.r(e);var i=n(5);n(32);\n/**\n * @copyright Copyright (c) 2019 Julius Härtl <jus@bitgrid.net>\n *\n * @author Julius Härtl <jus@bitgrid.net>\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\ni.a.options.defaultTemplate='<div class=\"vue-tooltip\" role=\"tooltip\" data-v-'.concat(\"c9fcf01\",'><div class=\"tooltip-arrow\"></div><div class=\"tooltip-inner\"></div></div>'),i.a.options.defaultHtml=!1,e.default=i.a},63:function(t,e,n){\"use strict\";n.r(e);var i={name:\"ActionButton\",mixins:[n(14).a],props:{disabled:{type:Boolean,default:!1}}},o=(n(89),n(0)),r=n(34),a=n.n(r),s=Object(o.a)(i,function(){var t=this,e=t.$createElement,n=t._self._c||e;return n(\"li\",[n(\"button\",{staticClass:\"action-button focusable\",attrs:{disabled:t.disabled},on:{click:t.onClick}},[n(\"span\",{staticClass:\"action-button__icon\",class:[t.isIconUrl?\"action-button__icon--url\":t.icon],style:{backgroundImage:t.isIconUrl?\"url(\"+t.icon+\")\":null}}),t._v(\" \"),t.title?n(\"p\",[n(\"strong\",{staticClass:\"action-button__title\"},[t._v(\"\\n\\t\\t\\t\\t\"+t._s(t.title)+\"\\n\\t\\t\\t\")]),t._v(\" \"),n(\"br\"),t._v(\" \"),n(\"span\",{staticClass:\"action-button__longtext\",domProps:{textContent:t._s(t.text)}})]):t.isLongText?n(\"p\",{staticClass:\"action-button__longtext\",domProps:{textContent:t._s(t.text)}}):n(\"span\",{staticClass:\"action-button__text\"},[t._v(t._s(t.text))]),t._v(\" \"),t._e()],2)])},[],!1,null,\"d6d8142c\",null);\"function\"==typeof a.a&&a()(s);var A=s.exports;n.d(e,\"ActionButton\",function(){return A});\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */e.default=A},7:function(t,e,n){\"use strict\";var i=n(3),o=n.n(i);\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */e.a={before:function(){this.$slots.default&&\"\"!==this.text.trim()||(o.a.util.warn(\"\".concat(this.$options.name,\" cannot be empty and requires a meaningful text content\"),this),this.$destroy(),this.$el.remove())},beforeUpdate:function(){this.text=this.getText()},data:function(){return{text:this.getText()}},computed:{isLongText:function(){return this.text&&this.text.trim().length>20}},methods:{getText:function(){return this.$slots.default?this.$slots.default[0].text.trim():\"\"}}}},78:function(t,e,n){\"use strict\";var i=n(22);n.n(i).a},79:function(t,e,n){e=t.exports=n(1)(!1);var i=n(8),o=i(n(9)),r=i(n(10)),a=i(n(11)),s=i(n(12));e.push([t.i,'@charset \"UTF-8\";\\n/**\\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\n@font-face {\\n font-family: \"iconfont-vue\";\\n src: url('+o+\");\\n /* IE9 Compat Modes */\\n src: url(\"+o+') format(\"embedded-opentype\"), url('+r+') format(\"woff\"), url('+a+') format(\"truetype\"), url('+s+') format(\"svg\");\\n /* Legacy iOS */\\n}\\n.icon[data-v-73d23580] {\\n font-style: normal;\\n font-weight: 400;\\n}\\n.icon.arrow-left-double[data-v-73d23580]:before {\\n font-family: \"iconfont-vue\";\\n content: \"\";\\n}\\n.icon.arrow-left[data-v-73d23580]:before {\\n font-family: \"iconfont-vue\";\\n content: \"\";\\n}\\n.icon.arrow-right-double[data-v-73d23580]:before {\\n font-family: \"iconfont-vue\";\\n content: \"\";\\n}\\n.icon.arrow-right[data-v-73d23580]:before {\\n font-family: \"iconfont-vue\";\\n content: \"\";\\n}\\n.icon.close[data-v-73d23580]:before {\\n font-family: \"iconfont-vue\";\\n content: \"\";\\n}\\n.icon.confirm-fade[data-v-73d23580]:before {\\n font-family: \"iconfont-vue\";\\n content: \"\";\\n}\\n.icon.confirm[data-v-73d23580]:before {\\n font-family: \"iconfont-vue\";\\n content: \"\";\\n}\\n.icon.menu[data-v-73d23580]:before {\\n font-family: \"iconfont-vue\";\\n content: \"\";\\n}\\n.icon.more[data-v-73d23580]:before {\\n font-family: \"iconfont-vue\";\\n content: \"\";\\n}\\n.icon.pause[data-v-73d23580]:before {\\n font-family: \"iconfont-vue\";\\n content: \"\";\\n}\\n.icon.play[data-v-73d23580]:before {\\n font-family: \"iconfont-vue\";\\n content: \"\";\\n}\\n.action-item[data-v-73d23580] {\\n position: relative;\\n display: inline-block;\\n}\\n.action-item[data-v-73d23580]:hover, .action-item[data-v-73d23580]:focus, .action-item[data-v-73d23580]:active, .action-item__menutoggle[data-v-73d23580]:focus, .action-item__menutoggle[data-v-73d23580]:active, .action-item.action-item--open[data-v-73d23580] {\\n border-radius: 22px;\\n background-color: rgba(127, 127, 127, 0.25) !important;\\n}\\n.action-item[data-v-73d23580]:hover,\\n .action-item:hover .action-item__menutoggle[data-v-73d23580], .action-item[data-v-73d23580]:focus,\\n .action-item:focus .action-item__menutoggle[data-v-73d23580], .action-item[data-v-73d23580]:active,\\n .action-item:active .action-item__menutoggle[data-v-73d23580], .action-item__menutoggle[data-v-73d23580]:focus,\\n .action-item__menutoggle:focus .action-item__menutoggle[data-v-73d23580], .action-item__menutoggle[data-v-73d23580]:active,\\n .action-item__menutoggle:active .action-item__menutoggle[data-v-73d23580], .action-item.action-item--open[data-v-73d23580],\\n .action-item.action-item--open .action-item__menutoggle[data-v-73d23580] {\\n opacity: 1;\\n border-radius: 22px;\\n background-color: rgba(127, 127, 127, 0.25);\\n}\\n.action-item--single[data-v-73d23580], .action-item__menutoggle[data-v-73d23580] {\\n box-sizing: border-box;\\n width: 44px;\\n height: 44px;\\n margin: 0;\\n padding: 14px;\\n cursor: pointer;\\n border: none;\\n background-color: transparent;\\n}\\n.action-item__menutoggle[data-v-73d23580] {\\n display: flex;\\n align-items: center;\\n justify-content: center;\\n opacity: 0.7;\\n font-size: 16px;\\n}\\n.action-item__menutoggle[data-v-73d23580]:before {\\n font-family: \"iconfont-vue\";\\n font-style: normal;\\n font-weight: 400;\\n content: \"\";\\n}\\n.action-item--single[data-v-73d23580] {\\n opacity: 0.7;\\n}\\n.action-item--single[data-v-73d23580]:hover, .action-item--single[data-v-73d23580]:focus, .action-item--single[data-v-73d23580]:active {\\n opacity: 1;\\n}\\n.action-item--single > [hidden][data-v-73d23580] {\\n display: none;\\n}\\n.action-item--multiple[data-v-73d23580] {\\n position: relative;\\n}\\n.action-item__menu[data-v-73d23580] {\\n position: absolute;\\n z-index: 110;\\n right: 50%;\\n display: none;\\n margin: 10px;\\n margin-top: -5px;\\n transform: translateX(50%);\\n color: var(--color-main-text);\\n border-radius: var(--border-radius);\\n background-color: var(--color-main-background);\\n filter: drop-shadow(0 1px 3px var(--color-box-shadow));\\n /* Arrow */\\n /* Align the popover to the right */\\n /* Align the popover to the left */\\n}\\n.action-item__menu ul[data-v-73d23580] > :not(li) {\\n display: none;\\n}\\n.action-item__menu.open[data-v-73d23580] {\\n display: block;\\n}\\n.action-item__menu .action-item__menu_arrow[data-v-73d23580] {\\n position: absolute;\\n right: 50%;\\n bottom: 100%;\\n width: 0;\\n height: 0;\\n margin-right: -9px;\\n content: \\' \\';\\n pointer-events: none;\\n /* change this to adjust the arrow position */\\n border: solid transparent;\\n border-width: 9px;\\n border-bottom-color: var(--color-main-background);\\n}\\n.action-item__menu.menu-right[data-v-73d23580] {\\n right: 0;\\n left: auto;\\n transform: none;\\n}\\n.action-item__menu.menu-right .action-item__menu_arrow[data-v-73d23580] {\\n right: 13px;\\n margin-right: 0;\\n}\\n.action-item__menu.menu-left[data-v-73d23580] {\\n right: auto;\\n left: 0;\\n transform: none;\\n}\\n.action-item__menu.menu-left .action-item__menu_arrow[data-v-73d23580] {\\n right: auto;\\n left: 13px;\\n margin-right: 0;\\n}\\n.ie .action-item__menu[data-v-73d23580],\\n.ie .action-item__menu .action-item__menu_arrow[data-v-73d23580],\\n.edge .action-item__menu[data-v-73d23580],\\n.edge .action-item__menu .action-item__menu_arrow[data-v-73d23580] {\\n border: 1px solid var(--color-border);\\n}\\n',\"\"])},8:function(t,e,n){\"use strict\";t.exports=function(t,e){return\"string\"!=typeof t?t:(/^['\"].*['\"]$/.test(t)&&(t=t.slice(1,-1)),/[\"'() \\t\\n]/.test(t)||e?'\"'.concat(t.replace(/\"/g,'\\\\\"').replace(/\\n/g,\"\\\\n\"),'\"'):t)}},85:function(t,e){},89:function(t,e,n){\"use strict\";var i=n(26);n.n(i).a},9:function(t,e){t.exports=\"data:application/vnd.ms-fontobject;base64,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\"},90:function(t,e,n){(t.exports=n(1)(!1)).push([t.i,'@charset \"UTF-8\";\\n/**\\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\n/**\\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\nli[data-v-d6d8142c]:hover, li.active[data-v-d6d8142c] {\\n box-shadow: inset 4px 0 var(--color-primary);\\n}\\n.action-button[data-v-d6d8142c] {\\n display: flex;\\n align-items: flex-start;\\n width: 100%;\\n height: auto;\\n margin: 0;\\n padding: 0;\\n padding-right: 14px;\\n cursor: pointer;\\n white-space: nowrap;\\n opacity: 0.7;\\n color: var(--color-main-text);\\n border: 0;\\n border-radius: 0;\\n background-color: transparent;\\n box-shadow: none;\\n font-weight: normal;\\n line-height: 44px;\\n}\\n.action-button[data-v-d6d8142c]:hover, .action-button[data-v-d6d8142c]:focus {\\n opacity: 1;\\n}\\n.action-button > span[data-v-d6d8142c] {\\n cursor: pointer;\\n white-space: nowrap;\\n}\\n.action-button__icon[data-v-d6d8142c] {\\n width: 44px;\\n height: 44px;\\n opacity: 1;\\n background-position: 14px center;\\n background-size: 16px;\\n}\\n.action-button p[data-v-d6d8142c] {\\n width: 150px;\\n padding: 7px 0;\\n cursor: pointer;\\n text-align: left;\\n line-height: 1.6em;\\n}\\n.action-button__longtext[data-v-d6d8142c] {\\n cursor: pointer;\\n white-space: pre-wrap;\\n}\\n.action-button__title[data-v-d6d8142c] {\\n font-weight: bold;\\n}\\n',\"\"])}})});\n//# sourceMappingURL=Modal.js.map","!function(t,e){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=e(require(\"vue\")):\"function\"==typeof define&&define.amd?define(\"Components/ActionButton\",[\"vue\"],e):\"object\"==typeof exports?exports[\"Components/ActionButton\"]=e(require(\"vue\")):(t.NextcloudVue=t.NextcloudVue||{},t.NextcloudVue[\"Components/ActionButton\"]=e(t.Vue))}(window,function(t){return function(t){var e={};function n(o){if(e[o])return e[o].exports;var r=e[o]={i:o,l:!1,exports:{}};return t[o].call(r.exports,r,r.exports,n),r.l=!0,r.exports}return n.m=t,n.c=e,n.d=function(t,e,o){n.o(t,e)||Object.defineProperty(t,e,{enumerable:!0,get:o})},n.r=function(t){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(t,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(t,\"__esModule\",{value:!0})},n.t=function(t,e){if(1&e&&(t=n(t)),8&e)return t;if(4&e&&\"object\"==typeof t&&t&&t.__esModule)return t;var o=Object.create(null);if(n.r(o),Object.defineProperty(o,\"default\",{enumerable:!0,value:t}),2&e&&\"string\"!=typeof t)for(var r in t)n.d(o,r,function(e){return t[e]}.bind(null,r));return o},n.n=function(t){var e=t&&t.__esModule?function(){return t.default}:function(){return t};return n.d(e,\"a\",e),e},n.o=function(t,e){return Object.prototype.hasOwnProperty.call(t,e)},n.p=\"/dist/\",n(n.s=63)}({0:function(t,e,n){\"use strict\";function o(t,e,n,o,r,i,a,s){var c,u=\"function\"==typeof t?t.options:t;if(e&&(u.render=e,u.staticRenderFns=n,u._compiled=!0),o&&(u.functional=!0),i&&(u._scopeId=\"data-v-\"+i),a?(c=function(t){(t=t||this.$vnode&&this.$vnode.ssrContext||this.parent&&this.parent.$vnode&&this.parent.$vnode.ssrContext)||\"undefined\"==typeof __VUE_SSR_CONTEXT__||(t=__VUE_SSR_CONTEXT__),r&&r.call(this,t),t&&t._registeredComponents&&t._registeredComponents.add(a)},u._ssrRegister=c):r&&(c=s?function(){r.call(this,this.$root.$options.shadowRoot)}:r),c)if(u.functional){u._injectStyles=c;var l=u.render;u.render=function(t,e){return c.call(e),l(t,e)}}else{var d=u.beforeCreate;u.beforeCreate=d?[].concat(d,c):[c]}return{exports:t,options:u}}n.d(e,\"a\",function(){return o})},1:function(t,e,n){\"use strict\";t.exports=function(t){var e=[];return e.toString=function(){return this.map(function(e){var n=function(t,e){var n=t[1]||\"\",o=t[3];if(!o)return n;if(e&&\"function\"==typeof btoa){var r=(a=o,s=btoa(unescape(encodeURIComponent(JSON.stringify(a)))),c=\"sourceMappingURL=data:application/json;charset=utf-8;base64,\".concat(s),\"/*# \".concat(c,\" */\")),i=o.sources.map(function(t){return\"/*# sourceURL=\".concat(o.sourceRoot).concat(t,\" */\")});return[n].concat(i).concat([r]).join(\"\\n\")}var a,s,c;return[n].join(\"\\n\")}(e,t);return e[2]?\"@media \".concat(e[2],\"{\").concat(n,\"}\"):n}).join(\"\")},e.i=function(t,n){\"string\"==typeof t&&(t=[[null,t,\"\"]]);for(var o={},r=0;r<this.length;r++){var i=this[r][0];null!=i&&(o[i]=!0)}for(var a=0;a<t.length;a++){var s=t[a];null!=s[0]&&o[s[0]]||(n&&!s[2]?s[2]=n:n&&(s[2]=\"(\".concat(s[2],\") and (\").concat(n,\")\")),e.push(s))}},e}},14:function(t,e,n){\"use strict\";var o=n(7);\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */e.a={mixins:[o.a],props:{icon:{type:String,default:\"\",required:!0},title:{type:String,default:\"\"}},computed:{isIconUrl:function(){try{return new URL(this.icon)}catch(t){return!1}}},methods:{onClick:function(t){this.$emit(\"click\",t)}}}},2:function(t,e,n){\"use strict\";function o(t,e){for(var n=[],o={},r=0;r<e.length;r++){var i=e[r],a=i[0],s={id:t+\":\"+r,css:i[1],media:i[2],sourceMap:i[3]};o[a]?o[a].parts.push(s):n.push(o[a]={id:a,parts:[s]})}return n}n.r(e),n.d(e,\"default\",function(){return h});var r=\"undefined\"!=typeof document;if(\"undefined\"!=typeof DEBUG&&DEBUG&&!r)throw new Error(\"vue-style-loader cannot be used in a non-browser environment. Use { target: 'node' } in your Webpack config to indicate a server-rendering environment.\");var i={},a=r&&(document.head||document.getElementsByTagName(\"head\")[0]),s=null,c=0,u=!1,l=function(){},d=null,f=\"data-vue-ssr-id\",p=\"undefined\"!=typeof navigator&&/msie [6-9]\\b/.test(navigator.userAgent.toLowerCase());function h(t,e,n,r){u=n,d=r||{};var a=o(t,e);return v(a),function(e){for(var n=[],r=0;r<a.length;r++){var s=a[r];(c=i[s.id]).refs--,n.push(c)}e?v(a=o(t,e)):a=[];for(r=0;r<n.length;r++){var c;if(0===(c=n[r]).refs){for(var u=0;u<c.parts.length;u++)c.parts[u]();delete i[c.id]}}}}function v(t){for(var e=0;e<t.length;e++){var n=t[e],o=i[n.id];if(o){o.refs++;for(var r=0;r<o.parts.length;r++)o.parts[r](n.parts[r]);for(;r<n.parts.length;r++)o.parts.push(g(n.parts[r]));o.parts.length>n.parts.length&&(o.parts.length=n.parts.length)}else{var a=[];for(r=0;r<n.parts.length;r++)a.push(g(n.parts[r]));i[n.id]={id:n.id,refs:1,parts:a}}}}function m(){var t=document.createElement(\"style\");return t.type=\"text/css\",a.appendChild(t),t}function g(t){var e,n,o=document.querySelector(\"style[\"+f+'~=\"'+t.id+'\"]');if(o){if(u)return l;o.parentNode.removeChild(o)}if(p){var r=c++;o=s||(s=m()),e=x.bind(null,o,r,!1),n=x.bind(null,o,r,!0)}else o=m(),e=function(t,e){var n=e.css,o=e.media,r=e.sourceMap;o&&t.setAttribute(\"media\",o);d.ssrId&&t.setAttribute(f,e.id);r&&(n+=\"\\n/*# sourceURL=\"+r.sources[0]+\" */\",n+=\"\\n/*# sourceMappingURL=data:application/json;base64,\"+btoa(unescape(encodeURIComponent(JSON.stringify(r))))+\" */\");if(t.styleSheet)t.styleSheet.cssText=n;else{for(;t.firstChild;)t.removeChild(t.firstChild);t.appendChild(document.createTextNode(n))}}.bind(null,o),n=function(){o.parentNode.removeChild(o)};return e(t),function(o){if(o){if(o.css===t.css&&o.media===t.media&&o.sourceMap===t.sourceMap)return;e(t=o)}else n()}}var b,y=(b=[],function(t,e){return b[t]=e,b.filter(Boolean).join(\"\\n\")});function x(t,e,n,o){var r=n?\"\":o.css;if(t.styleSheet)t.styleSheet.cssText=y(e,r);else{var i=document.createTextNode(r),a=t.childNodes;a[e]&&t.removeChild(a[e]),a.length?t.insertBefore(i,a[e]):t.appendChild(i)}}},26:function(t,e,n){var o=n(90);\"string\"==typeof o&&(o=[[t.i,o,\"\"]]),o.locals&&(t.exports=o.locals);(0,n(2).default)(\"5717c144\",o,!0,{})},3:function(e,n){e.exports=t},34:function(t,e){},63:function(t,e,n){\"use strict\";n.r(e);var o={name:\"ActionButton\",mixins:[n(14).a],props:{disabled:{type:Boolean,default:!1}}},r=(n(89),n(0)),i=n(34),a=n.n(i),s=Object(r.a)(o,function(){var t=this,e=t.$createElement,n=t._self._c||e;return n(\"li\",[n(\"button\",{staticClass:\"action-button focusable\",attrs:{disabled:t.disabled},on:{click:t.onClick}},[n(\"span\",{staticClass:\"action-button__icon\",class:[t.isIconUrl?\"action-button__icon--url\":t.icon],style:{backgroundImage:t.isIconUrl?\"url(\"+t.icon+\")\":null}}),t._v(\" \"),t.title?n(\"p\",[n(\"strong\",{staticClass:\"action-button__title\"},[t._v(\"\\n\\t\\t\\t\\t\"+t._s(t.title)+\"\\n\\t\\t\\t\")]),t._v(\" \"),n(\"br\"),t._v(\" \"),n(\"span\",{staticClass:\"action-button__longtext\",domProps:{textContent:t._s(t.text)}})]):t.isLongText?n(\"p\",{staticClass:\"action-button__longtext\",domProps:{textContent:t._s(t.text)}}):n(\"span\",{staticClass:\"action-button__text\"},[t._v(t._s(t.text))]),t._v(\" \"),t._e()],2)])},[],!1,null,\"d6d8142c\",null);\"function\"==typeof a.a&&a()(s);var c=s.exports;n.d(e,\"ActionButton\",function(){return c});\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */e.default=c},7:function(t,e,n){\"use strict\";var o=n(3),r=n.n(o);\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */e.a={before:function(){this.$slots.default&&\"\"!==this.text.trim()||(r.a.util.warn(\"\".concat(this.$options.name,\" cannot be empty and requires a meaningful text content\"),this),this.$destroy(),this.$el.remove())},beforeUpdate:function(){this.text=this.getText()},data:function(){return{text:this.getText()}},computed:{isLongText:function(){return this.text&&this.text.trim().length>20}},methods:{getText:function(){return this.$slots.default?this.$slots.default[0].text.trim():\"\"}}}},89:function(t,e,n){\"use strict\";var o=n(26);n.n(o).a},90:function(t,e,n){(t.exports=n(1)(!1)).push([t.i,'@charset \"UTF-8\";\\n/**\\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\n/**\\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @author John Molakvoæ <skjnldsv@protonmail.com>\\n *\\n * @license GNU AGPL version 3 or any later version\\n *\\n * This program is free software: you can redistribute it and/or modify\\n * it under the terms of the GNU Affero General Public License as\\n * published by the Free Software Foundation, either version 3 of the\\n * License, or (at your option) any later version.\\n *\\n * This program is distributed in the hope that it will be useful,\\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\\n * GNU Affero General Public License for more details.\\n *\\n * You should have received a copy of the GNU Affero General Public License\\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\\n *\\n */\\nli[data-v-d6d8142c]:hover, li.active[data-v-d6d8142c] {\\n box-shadow: inset 4px 0 var(--color-primary);\\n}\\n.action-button[data-v-d6d8142c] {\\n display: flex;\\n align-items: flex-start;\\n width: 100%;\\n height: auto;\\n margin: 0;\\n padding: 0;\\n padding-right: 14px;\\n cursor: pointer;\\n white-space: nowrap;\\n opacity: 0.7;\\n color: var(--color-main-text);\\n border: 0;\\n border-radius: 0;\\n background-color: transparent;\\n box-shadow: none;\\n font-weight: normal;\\n line-height: 44px;\\n}\\n.action-button[data-v-d6d8142c]:hover, .action-button[data-v-d6d8142c]:focus {\\n opacity: 1;\\n}\\n.action-button > span[data-v-d6d8142c] {\\n cursor: pointer;\\n white-space: nowrap;\\n}\\n.action-button__icon[data-v-d6d8142c] {\\n width: 44px;\\n height: 44px;\\n opacity: 1;\\n background-position: 14px center;\\n background-size: 16px;\\n}\\n.action-button p[data-v-d6d8142c] {\\n width: 150px;\\n padding: 7px 0;\\n cursor: pointer;\\n text-align: left;\\n line-height: 1.6em;\\n}\\n.action-button__longtext[data-v-d6d8142c] {\\n cursor: pointer;\\n white-space: pre-wrap;\\n}\\n.action-button__title[data-v-d6d8142c] {\\n font-weight: bold;\\n}\\n',\"\"])}})});\n//# sourceMappingURL=ActionButton.js.map","/**\n * Returns a function, that, as long as it continues to be invoked, will not\n * be triggered. The function will be called after it stops being called for\n * N milliseconds. If `immediate` is passed, trigger the function on the\n * leading edge, instead of the trailing. The function also has a property 'clear' \n * that is a function which will clear the timer to prevent previously scheduled executions. \n *\n * @source underscore.js\n * @see http://unscriptable.com/2009/03/20/debouncing-javascript-methods/\n * @param {Function} function to wrap\n * @param {Number} timeout in ms (`100`)\n * @param {Boolean} whether to execute at the beginning (`false`)\n * @api public\n */\nfunction debounce(func, wait, immediate){\n var timeout, args, context, timestamp, result;\n if (null == wait) wait = 100;\n\n function later() {\n var last = Date.now() - timestamp;\n\n if (last < wait && last >= 0) {\n timeout = setTimeout(later, wait - last);\n } else {\n timeout = null;\n if (!immediate) {\n result = func.apply(context, args);\n context = args = null;\n }\n }\n };\n\n var debounced = function(){\n context = this;\n args = arguments;\n timestamp = Date.now();\n var callNow = immediate && !timeout;\n if (!timeout) timeout = setTimeout(later, wait);\n if (callNow) {\n result = func.apply(context, args);\n context = args = null;\n }\n\n return result;\n };\n\n debounced.clear = function() {\n if (timeout) {\n clearTimeout(timeout);\n timeout = null;\n }\n };\n \n debounced.flush = function() {\n if (timeout) {\n result = func.apply(context, args);\n context = args = null;\n \n clearTimeout(timeout);\n timeout = null;\n }\n };\n\n return debounced;\n};\n\n// Adds compatibility for ES modules\ndebounce.debounce = debounce;\n\nmodule.exports = debounce;\n","import mod from \"-!../../node_modules/vue-style-loader/index.js!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Error.vue?vue&type=style&index=0&id=172a6c9e&scoped=true&lang=css&\"; export default mod; export * from \"-!../../node_modules/vue-style-loader/index.js!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Error.vue?vue&type=style&index=0&id=172a6c9e&scoped=true&lang=css&\"","exports = module.exports = require(\"../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \"\\n#emptycontent[data-v-172a6c9e] {\\n\\tmargin: 0;\\n\\tpadding: 10% 5%;\\n\\tbackground-color: var(--color-main-background);\\n}\\n\", \"\"]);\n","'use strict';\n\nvar utils = require('./utils');\nvar bind = require('./helpers/bind');\nvar Axios = require('./core/Axios');\nvar defaults = require('./defaults');\n\n/**\n * Create an instance of Axios\n *\n * @param {Object} defaultConfig The default config for the instance\n * @return {Axios} A new instance of Axios\n */\nfunction createInstance(defaultConfig) {\n var context = new Axios(defaultConfig);\n var instance = bind(Axios.prototype.request, context);\n\n // Copy axios.prototype to instance\n utils.extend(instance, Axios.prototype, context);\n\n // Copy context to instance\n utils.extend(instance, context);\n\n return instance;\n}\n\n// Create the default instance to be exported\nvar axios = createInstance(defaults);\n\n// Expose Axios class to allow class inheritance\naxios.Axios = Axios;\n\n// Factory for creating new instances\naxios.create = function create(instanceConfig) {\n return createInstance(utils.merge(defaults, instanceConfig));\n};\n\n// Expose Cancel & CancelToken\naxios.Cancel = require('./cancel/Cancel');\naxios.CancelToken = require('./cancel/CancelToken');\naxios.isCancel = require('./cancel/isCancel');\n\n// Expose all/spread\naxios.all = function all(promises) {\n return Promise.all(promises);\n};\naxios.spread = require('./helpers/spread');\n\nmodule.exports = axios;\n\n// Allow use of default import syntax in TypeScript\nmodule.exports.default = axios;\n","/*!\n * Determine if an object is a Buffer\n *\n * @author Feross Aboukhadijeh <https://feross.org>\n * @license MIT\n */\n\nmodule.exports = function isBuffer (obj) {\n return obj != null && obj.constructor != null &&\n typeof obj.constructor.isBuffer === 'function' && obj.constructor.isBuffer(obj)\n}\n","'use strict';\n\nvar defaults = require('./../defaults');\nvar utils = require('./../utils');\nvar InterceptorManager = require('./InterceptorManager');\nvar dispatchRequest = require('./dispatchRequest');\n\n/**\n * Create a new instance of Axios\n *\n * @param {Object} instanceConfig The default config for the instance\n */\nfunction Axios(instanceConfig) {\n this.defaults = instanceConfig;\n this.interceptors = {\n request: new InterceptorManager(),\n response: new InterceptorManager()\n };\n}\n\n/**\n * Dispatch a request\n *\n * @param {Object} config The config specific for this request (merged with this.defaults)\n */\nAxios.prototype.request = function request(config) {\n /*eslint no-param-reassign:0*/\n // Allow for axios('example/url'[, config]) a la fetch API\n if (typeof config === 'string') {\n config = utils.merge({\n url: arguments[0]\n }, arguments[1]);\n }\n\n config = utils.merge(defaults, {method: 'get'}, this.defaults, config);\n config.method = config.method.toLowerCase();\n\n // Hook up interceptors middleware\n var chain = [dispatchRequest, undefined];\n var promise = Promise.resolve(config);\n\n this.interceptors.request.forEach(function unshiftRequestInterceptors(interceptor) {\n chain.unshift(interceptor.fulfilled, interceptor.rejected);\n });\n\n this.interceptors.response.forEach(function pushResponseInterceptors(interceptor) {\n chain.push(interceptor.fulfilled, interceptor.rejected);\n });\n\n while (chain.length) {\n promise = promise.then(chain.shift(), chain.shift());\n }\n\n return promise;\n};\n\n// Provide aliases for supported request methods\nutils.forEach(['delete', 'get', 'head', 'options'], function forEachMethodNoData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, config) {\n return this.request(utils.merge(config || {}, {\n method: method,\n url: url\n }));\n };\n});\n\nutils.forEach(['post', 'put', 'patch'], function forEachMethodWithData(method) {\n /*eslint func-names:0*/\n Axios.prototype[method] = function(url, data, config) {\n return this.request(utils.merge(config || {}, {\n method: method,\n url: url,\n data: data\n }));\n };\n});\n\nmodule.exports = Axios;\n","'use strict';\n\nvar utils = require('../utils');\n\nmodule.exports = function normalizeHeaderName(headers, normalizedName) {\n utils.forEach(headers, function processHeader(value, name) {\n if (name !== normalizedName && name.toUpperCase() === normalizedName.toUpperCase()) {\n headers[normalizedName] = value;\n delete headers[name];\n }\n });\n};\n","'use strict';\n\nvar createError = require('./createError');\n\n/**\n * Resolve or reject a Promise based on response status.\n *\n * @param {Function} resolve A function that resolves the promise.\n * @param {Function} reject A function that rejects the promise.\n * @param {object} response The response.\n */\nmodule.exports = function settle(resolve, reject, response) {\n var validateStatus = response.config.validateStatus;\n // Note: status is not exposed by XDomainRequest\n if (!response.status || !validateStatus || validateStatus(response.status)) {\n resolve(response);\n } else {\n reject(createError(\n 'Request failed with status code ' + response.status,\n response.config,\n null,\n response.request,\n response\n ));\n }\n};\n","'use strict';\n\n/**\n * Update an Error with the specified config, error code, and response.\n *\n * @param {Error} error The error to update.\n * @param {Object} config The config.\n * @param {string} [code] The error code (for example, 'ECONNABORTED').\n * @param {Object} [request] The request.\n * @param {Object} [response] The response.\n * @returns {Error} The error.\n */\nmodule.exports = function enhanceError(error, config, code, request, response) {\n error.config = config;\n if (code) {\n error.code = code;\n }\n error.request = request;\n error.response = response;\n return error;\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nfunction encode(val) {\n return encodeURIComponent(val).\n replace(/%40/gi, '@').\n replace(/%3A/gi, ':').\n replace(/%24/g, '$').\n replace(/%2C/gi, ',').\n replace(/%20/g, '+').\n replace(/%5B/gi, '[').\n replace(/%5D/gi, ']');\n}\n\n/**\n * Build a URL by appending params to the end\n *\n * @param {string} url The base of the url (e.g., http://www.google.com)\n * @param {object} [params] The params to be appended\n * @returns {string} The formatted url\n */\nmodule.exports = function buildURL(url, params, paramsSerializer) {\n /*eslint no-param-reassign:0*/\n if (!params) {\n return url;\n }\n\n var serializedParams;\n if (paramsSerializer) {\n serializedParams = paramsSerializer(params);\n } else if (utils.isURLSearchParams(params)) {\n serializedParams = params.toString();\n } else {\n var parts = [];\n\n utils.forEach(params, function serialize(val, key) {\n if (val === null || typeof val === 'undefined') {\n return;\n }\n\n if (utils.isArray(val)) {\n key = key + '[]';\n } else {\n val = [val];\n }\n\n utils.forEach(val, function parseValue(v) {\n if (utils.isDate(v)) {\n v = v.toISOString();\n } else if (utils.isObject(v)) {\n v = JSON.stringify(v);\n }\n parts.push(encode(key) + '=' + encode(v));\n });\n });\n\n serializedParams = parts.join('&');\n }\n\n if (serializedParams) {\n url += (url.indexOf('?') === -1 ? '?' : '&') + serializedParams;\n }\n\n return url;\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\n// Headers whose duplicates are ignored by node\n// c.f. https://nodejs.org/api/http.html#http_message_headers\nvar ignoreDuplicateOf = [\n 'age', 'authorization', 'content-length', 'content-type', 'etag',\n 'expires', 'from', 'host', 'if-modified-since', 'if-unmodified-since',\n 'last-modified', 'location', 'max-forwards', 'proxy-authorization',\n 'referer', 'retry-after', 'user-agent'\n];\n\n/**\n * Parse headers into an object\n *\n * ```\n * Date: Wed, 27 Aug 2014 08:58:49 GMT\n * Content-Type: application/json\n * Connection: keep-alive\n * Transfer-Encoding: chunked\n * ```\n *\n * @param {String} headers Headers needing to be parsed\n * @returns {Object} Headers parsed into an object\n */\nmodule.exports = function parseHeaders(headers) {\n var parsed = {};\n var key;\n var val;\n var i;\n\n if (!headers) { return parsed; }\n\n utils.forEach(headers.split('\\n'), function parser(line) {\n i = line.indexOf(':');\n key = utils.trim(line.substr(0, i)).toLowerCase();\n val = utils.trim(line.substr(i + 1));\n\n if (key) {\n if (parsed[key] && ignoreDuplicateOf.indexOf(key) >= 0) {\n return;\n }\n if (key === 'set-cookie') {\n parsed[key] = (parsed[key] ? parsed[key] : []).concat([val]);\n } else {\n parsed[key] = parsed[key] ? parsed[key] + ', ' + val : val;\n }\n }\n });\n\n return parsed;\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs have full support of the APIs needed to test\n // whether the request URL is of the same origin as current location.\n (function standardBrowserEnv() {\n var msie = /(msie|trident)/i.test(navigator.userAgent);\n var urlParsingNode = document.createElement('a');\n var originURL;\n\n /**\n * Parse a URL to discover it's components\n *\n * @param {String} url The URL to be parsed\n * @returns {Object}\n */\n function resolveURL(url) {\n var href = url;\n\n if (msie) {\n // IE needs attribute set twice to normalize properties\n urlParsingNode.setAttribute('href', href);\n href = urlParsingNode.href;\n }\n\n urlParsingNode.setAttribute('href', href);\n\n // urlParsingNode provides the UrlUtils interface - http://url.spec.whatwg.org/#urlutils\n return {\n href: urlParsingNode.href,\n protocol: urlParsingNode.protocol ? urlParsingNode.protocol.replace(/:$/, '') : '',\n host: urlParsingNode.host,\n search: urlParsingNode.search ? urlParsingNode.search.replace(/^\\?/, '') : '',\n hash: urlParsingNode.hash ? urlParsingNode.hash.replace(/^#/, '') : '',\n hostname: urlParsingNode.hostname,\n port: urlParsingNode.port,\n pathname: (urlParsingNode.pathname.charAt(0) === '/') ?\n urlParsingNode.pathname :\n '/' + urlParsingNode.pathname\n };\n }\n\n originURL = resolveURL(window.location.href);\n\n /**\n * Determine if a URL shares the same origin as the current location\n *\n * @param {String} requestURL The URL to test\n * @returns {boolean} True if URL shares the same origin, otherwise false\n */\n return function isURLSameOrigin(requestURL) {\n var parsed = (utils.isString(requestURL)) ? resolveURL(requestURL) : requestURL;\n return (parsed.protocol === originURL.protocol &&\n parsed.host === originURL.host);\n };\n })() :\n\n // Non standard browser envs (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return function isURLSameOrigin() {\n return true;\n };\n })()\n);\n","'use strict';\n\nvar utils = require('./../utils');\n\nmodule.exports = (\n utils.isStandardBrowserEnv() ?\n\n // Standard browser envs support document.cookie\n (function standardBrowserEnv() {\n return {\n write: function write(name, value, expires, path, domain, secure) {\n var cookie = [];\n cookie.push(name + '=' + encodeURIComponent(value));\n\n if (utils.isNumber(expires)) {\n cookie.push('expires=' + new Date(expires).toGMTString());\n }\n\n if (utils.isString(path)) {\n cookie.push('path=' + path);\n }\n\n if (utils.isString(domain)) {\n cookie.push('domain=' + domain);\n }\n\n if (secure === true) {\n cookie.push('secure');\n }\n\n document.cookie = cookie.join('; ');\n },\n\n read: function read(name) {\n var match = document.cookie.match(new RegExp('(^|;\\\\s*)(' + name + ')=([^;]*)'));\n return (match ? decodeURIComponent(match[3]) : null);\n },\n\n remove: function remove(name) {\n this.write(name, '', Date.now() - 86400000);\n }\n };\n })() :\n\n // Non standard browser env (web workers, react-native) lack needed support.\n (function nonStandardBrowserEnv() {\n return {\n write: function write() {},\n read: function read() { return null; },\n remove: function remove() {}\n };\n })()\n);\n","'use strict';\n\nvar utils = require('./../utils');\n\nfunction InterceptorManager() {\n this.handlers = [];\n}\n\n/**\n * Add a new interceptor to the stack\n *\n * @param {Function} fulfilled The function to handle `then` for a `Promise`\n * @param {Function} rejected The function to handle `reject` for a `Promise`\n *\n * @return {Number} An ID used to remove interceptor later\n */\nInterceptorManager.prototype.use = function use(fulfilled, rejected) {\n this.handlers.push({\n fulfilled: fulfilled,\n rejected: rejected\n });\n return this.handlers.length - 1;\n};\n\n/**\n * Remove an interceptor from the stack\n *\n * @param {Number} id The ID that was returned by `use`\n */\nInterceptorManager.prototype.eject = function eject(id) {\n if (this.handlers[id]) {\n this.handlers[id] = null;\n }\n};\n\n/**\n * Iterate over all the registered interceptors\n *\n * This method is particularly useful for skipping over any\n * interceptors that may have become `null` calling `eject`.\n *\n * @param {Function} fn The function to call for each interceptor\n */\nInterceptorManager.prototype.forEach = function forEach(fn) {\n utils.forEach(this.handlers, function forEachHandler(h) {\n if (h !== null) {\n fn(h);\n }\n });\n};\n\nmodule.exports = InterceptorManager;\n","'use strict';\n\nvar utils = require('./../utils');\nvar transformData = require('./transformData');\nvar isCancel = require('../cancel/isCancel');\nvar defaults = require('../defaults');\nvar isAbsoluteURL = require('./../helpers/isAbsoluteURL');\nvar combineURLs = require('./../helpers/combineURLs');\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nfunction throwIfCancellationRequested(config) {\n if (config.cancelToken) {\n config.cancelToken.throwIfRequested();\n }\n}\n\n/**\n * Dispatch a request to the server using the configured adapter.\n *\n * @param {object} config The config that is to be used for the request\n * @returns {Promise} The Promise to be fulfilled\n */\nmodule.exports = function dispatchRequest(config) {\n throwIfCancellationRequested(config);\n\n // Support baseURL config\n if (config.baseURL && !isAbsoluteURL(config.url)) {\n config.url = combineURLs(config.baseURL, config.url);\n }\n\n // Ensure headers exist\n config.headers = config.headers || {};\n\n // Transform request data\n config.data = transformData(\n config.data,\n config.headers,\n config.transformRequest\n );\n\n // Flatten headers\n config.headers = utils.merge(\n config.headers.common || {},\n config.headers[config.method] || {},\n config.headers || {}\n );\n\n utils.forEach(\n ['delete', 'get', 'head', 'post', 'put', 'patch', 'common'],\n function cleanHeaderConfig(method) {\n delete config.headers[method];\n }\n );\n\n var adapter = config.adapter || defaults.adapter;\n\n return adapter(config).then(function onAdapterResolution(response) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n response.data = transformData(\n response.data,\n response.headers,\n config.transformResponse\n );\n\n return response;\n }, function onAdapterRejection(reason) {\n if (!isCancel(reason)) {\n throwIfCancellationRequested(config);\n\n // Transform response data\n if (reason && reason.response) {\n reason.response.data = transformData(\n reason.response.data,\n reason.response.headers,\n config.transformResponse\n );\n }\n }\n\n return Promise.reject(reason);\n });\n};\n","'use strict';\n\nvar utils = require('./../utils');\n\n/**\n * Transform the data for a request or a response\n *\n * @param {Object|String} data The data to be transformed\n * @param {Array} headers The headers for the request or response\n * @param {Array|Function} fns A single function or Array of functions\n * @returns {*} The resulting transformed data\n */\nmodule.exports = function transformData(data, headers, fns) {\n /*eslint no-param-reassign:0*/\n utils.forEach(fns, function transform(fn) {\n data = fn(data, headers);\n });\n\n return data;\n};\n","'use strict';\n\n/**\n * Determines whether the specified URL is absolute\n *\n * @param {string} url The URL to test\n * @returns {boolean} True if the specified URL is absolute, otherwise false\n */\nmodule.exports = function isAbsoluteURL(url) {\n // A URL is considered absolute if it begins with \"<scheme>://\" or \"//\" (protocol-relative URL).\n // RFC 3986 defines scheme name as a sequence of characters beginning with a letter and followed\n // by any combination of letters, digits, plus, period, or hyphen.\n return /^([a-z][a-z\\d\\+\\-\\.]*:)?\\/\\//i.test(url);\n};\n","'use strict';\n\n/**\n * Creates a new URL by combining the specified URLs\n *\n * @param {string} baseURL The base URL\n * @param {string} relativeURL The relative URL\n * @returns {string} The combined URL\n */\nmodule.exports = function combineURLs(baseURL, relativeURL) {\n return relativeURL\n ? baseURL.replace(/\\/+$/, '') + '/' + relativeURL.replace(/^\\/+/, '')\n : baseURL;\n};\n","'use strict';\n\nvar Cancel = require('./Cancel');\n\n/**\n * A `CancelToken` is an object that can be used to request cancellation of an operation.\n *\n * @class\n * @param {Function} executor The executor function.\n */\nfunction CancelToken(executor) {\n if (typeof executor !== 'function') {\n throw new TypeError('executor must be a function.');\n }\n\n var resolvePromise;\n this.promise = new Promise(function promiseExecutor(resolve) {\n resolvePromise = resolve;\n });\n\n var token = this;\n executor(function cancel(message) {\n if (token.reason) {\n // Cancellation has already been requested\n return;\n }\n\n token.reason = new Cancel(message);\n resolvePromise(token.reason);\n });\n}\n\n/**\n * Throws a `Cancel` if cancellation has been requested.\n */\nCancelToken.prototype.throwIfRequested = function throwIfRequested() {\n if (this.reason) {\n throw this.reason;\n }\n};\n\n/**\n * Returns an object that contains a new `CancelToken` and a function that, when called,\n * cancels the `CancelToken`.\n */\nCancelToken.source = function source() {\n var cancel;\n var token = new CancelToken(function executor(c) {\n cancel = c;\n });\n return {\n token: token,\n cancel: cancel\n };\n};\n\nmodule.exports = CancelToken;\n","'use strict';\n\n/**\n * Syntactic sugar for invoking a function and expanding an array for arguments.\n *\n * Common use case would be to use `Function.prototype.apply`.\n *\n * ```js\n * function f(x, y, z) {}\n * var args = [1, 2, 3];\n * f.apply(null, args);\n * ```\n *\n * With `spread` this example can be re-written.\n *\n * ```js\n * spread(function(x, y, z) {})([1, 2, 3]);\n * ```\n *\n * @param {Function} callback\n * @returns {Function}\n */\nmodule.exports = function spread(callback) {\n return function wrap(arr) {\n return callback.apply(null, arr);\n };\n};\n","var scope = (typeof global !== \"undefined\" && global) ||\n (typeof self !== \"undefined\" && self) ||\n window;\nvar apply = Function.prototype.apply;\n\n// DOM APIs, for completeness\n\nexports.setTimeout = function() {\n return new Timeout(apply.call(setTimeout, scope, arguments), clearTimeout);\n};\nexports.setInterval = function() {\n return new Timeout(apply.call(setInterval, scope, arguments), clearInterval);\n};\nexports.clearTimeout =\nexports.clearInterval = function(timeout) {\n if (timeout) {\n timeout.close();\n }\n};\n\nfunction Timeout(id, clearFn) {\n this._id = id;\n this._clearFn = clearFn;\n}\nTimeout.prototype.unref = Timeout.prototype.ref = function() {};\nTimeout.prototype.close = function() {\n this._clearFn.call(scope, this._id);\n};\n\n// Does not start the time, just sets up the members needed.\nexports.enroll = function(item, msecs) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = msecs;\n};\n\nexports.unenroll = function(item) {\n clearTimeout(item._idleTimeoutId);\n item._idleTimeout = -1;\n};\n\nexports._unrefActive = exports.active = function(item) {\n clearTimeout(item._idleTimeoutId);\n\n var msecs = item._idleTimeout;\n if (msecs >= 0) {\n item._idleTimeoutId = setTimeout(function onTimeout() {\n if (item._onTimeout)\n item._onTimeout();\n }, msecs);\n }\n};\n\n// setimmediate attaches itself to the global object\nrequire(\"setimmediate\");\n// On some exotic environments, it's not clear which object `setimmediate` was\n// able to install onto. Search each possibility in the same order as the\n// `setimmediate` library.\nexports.setImmediate = (typeof self !== \"undefined\" && self.setImmediate) ||\n (typeof global !== \"undefined\" && global.setImmediate) ||\n (this && this.setImmediate);\nexports.clearImmediate = (typeof self !== \"undefined\" && self.clearImmediate) ||\n (typeof global !== \"undefined\" && global.clearImmediate) ||\n (this && this.clearImmediate);\n","(function (global, undefined) {\n \"use strict\";\n\n if (global.setImmediate) {\n return;\n }\n\n var nextHandle = 1; // Spec says greater than zero\n var tasksByHandle = {};\n var currentlyRunningATask = false;\n var doc = global.document;\n var registerImmediate;\n\n function setImmediate(callback) {\n // Callback can either be a function or a string\n if (typeof callback !== \"function\") {\n callback = new Function(\"\" + callback);\n }\n // Copy function arguments\n var args = new Array(arguments.length - 1);\n for (var i = 0; i < args.length; i++) {\n args[i] = arguments[i + 1];\n }\n // Store and register the task\n var task = { callback: callback, args: args };\n tasksByHandle[nextHandle] = task;\n registerImmediate(nextHandle);\n return nextHandle++;\n }\n\n function clearImmediate(handle) {\n delete tasksByHandle[handle];\n }\n\n function run(task) {\n var callback = task.callback;\n var args = task.args;\n switch (args.length) {\n case 0:\n callback();\n break;\n case 1:\n callback(args[0]);\n break;\n case 2:\n callback(args[0], args[1]);\n break;\n case 3:\n callback(args[0], args[1], args[2]);\n break;\n default:\n callback.apply(undefined, args);\n break;\n }\n }\n\n function runIfPresent(handle) {\n // From the spec: \"Wait until any invocations of this algorithm started before this one have completed.\"\n // So if we're currently running a task, we'll need to delay this invocation.\n if (currentlyRunningATask) {\n // Delay by doing a setTimeout. setImmediate was tried instead, but in Firefox 7 it generated a\n // \"too much recursion\" error.\n setTimeout(runIfPresent, 0, handle);\n } else {\n var task = tasksByHandle[handle];\n if (task) {\n currentlyRunningATask = true;\n try {\n run(task);\n } finally {\n clearImmediate(handle);\n currentlyRunningATask = false;\n }\n }\n }\n }\n\n function installNextTickImplementation() {\n registerImmediate = function(handle) {\n process.nextTick(function () { runIfPresent(handle); });\n };\n }\n\n function canUsePostMessage() {\n // The test against `importScripts` prevents this implementation from being installed inside a web worker,\n // where `global.postMessage` means something completely different and can't be used for this purpose.\n if (global.postMessage && !global.importScripts) {\n var postMessageIsAsynchronous = true;\n var oldOnMessage = global.onmessage;\n global.onmessage = function() {\n postMessageIsAsynchronous = false;\n };\n global.postMessage(\"\", \"*\");\n global.onmessage = oldOnMessage;\n return postMessageIsAsynchronous;\n }\n }\n\n function installPostMessageImplementation() {\n // Installs an event handler on `global` for the `message` event: see\n // * https://developer.mozilla.org/en/DOM/window.postMessage\n // * http://www.whatwg.org/specs/web-apps/current-work/multipage/comms.html#crossDocumentMessages\n\n var messagePrefix = \"setImmediate$\" + Math.random() + \"$\";\n var onGlobalMessage = function(event) {\n if (event.source === global &&\n typeof event.data === \"string\" &&\n event.data.indexOf(messagePrefix) === 0) {\n runIfPresent(+event.data.slice(messagePrefix.length));\n }\n };\n\n if (global.addEventListener) {\n global.addEventListener(\"message\", onGlobalMessage, false);\n } else {\n global.attachEvent(\"onmessage\", onGlobalMessage);\n }\n\n registerImmediate = function(handle) {\n global.postMessage(messagePrefix + handle, \"*\");\n };\n }\n\n function installMessageChannelImplementation() {\n var channel = new MessageChannel();\n channel.port1.onmessage = function(event) {\n var handle = event.data;\n runIfPresent(handle);\n };\n\n registerImmediate = function(handle) {\n channel.port2.postMessage(handle);\n };\n }\n\n function installReadyStateChangeImplementation() {\n var html = doc.documentElement;\n registerImmediate = function(handle) {\n // Create a <script> element; its readystatechange event will be fired asynchronously once it is inserted\n // into the document. Do so, thus queuing up the task. Remember to clean up once it's been called.\n var script = doc.createElement(\"script\");\n script.onreadystatechange = function () {\n runIfPresent(handle);\n script.onreadystatechange = null;\n html.removeChild(script);\n script = null;\n };\n html.appendChild(script);\n };\n }\n\n function installSetTimeoutImplementation() {\n registerImmediate = function(handle) {\n setTimeout(runIfPresent, 0, handle);\n };\n }\n\n // If supported, we should attach to the prototype of global, since that is where setTimeout et al. live.\n var attachTo = Object.getPrototypeOf && Object.getPrototypeOf(global);\n attachTo = attachTo && attachTo.setTimeout ? attachTo : global;\n\n // Don't get fooled by e.g. browserify environments.\n if ({}.toString.call(global.process) === \"[object process]\") {\n // For Node.js before 0.9\n installNextTickImplementation();\n\n } else if (canUsePostMessage()) {\n // For non-IE10 modern browsers\n installPostMessageImplementation();\n\n } else if (global.MessageChannel) {\n // For web workers, where supported\n installMessageChannelImplementation();\n\n } else if (doc && \"onreadystatechange\" in doc.createElement(\"script\")) {\n // For IE 6–8\n installReadyStateChangeImplementation();\n\n } else {\n // For older browsers\n installSetTimeoutImplementation();\n }\n\n attachTo.setImmediate = setImmediate;\n attachTo.clearImmediate = clearImmediate;\n}(typeof self === \"undefined\" ? typeof global === \"undefined\" ? this : global : self));\n","import mod from \"-!../../node_modules/vue-style-loader/index.js!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/sass-loader/lib/loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Viewer.vue?vue&type=style&index=0&lang=scss&\"; export default mod; export * from \"-!../../node_modules/vue-style-loader/index.js!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/sass-loader/lib/loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Viewer.vue?vue&type=style&index=0&lang=scss&\"","exports = module.exports = require(\"../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Imports\nvar getUrl = require(\"../../node_modules/css-loader/dist/runtime/getUrl.js\");\nvar ___CSS_LOADER_URL___0___ = getUrl(require(\"Assets/menu-sidebar-white.svg\"));\n// Module\nexports.push([module.id, \"#viewer-content.modal-mask {\\n transition: width ease 100ms;\\n}\\n#viewer-content.modal-mask .modal-container {\\n display: flex !important;\\n width: auto !important;\\n border-radius: 0 !important;\\n background-color: transparent;\\n justify-content: center;\\n align-items: center;\\n}\\n.component-fade-enter-active, .component-fade-leave-active {\\n transition: opacity .3s ease;\\n}\\n.component-fade-enter, .component-fade-leave-to {\\n opacity: 0;\\n}\\n.icon-menu-sidebar-white-forced {\\n background-image: url(\" + ___CSS_LOADER_URL___0___ + \");\\n}\\n.file-view {\\n transition: height 100ms ease, width 100ms ease;\\n}\\n#app-sidebar.app-sidebar--full {\\n position: fixed;\\n top: 0;\\n height: 100%;\\n z-index: 2025;\\n}\\n#app-sidebar.app-sidebar--full .thumbnailContainer {\\n display: none;\\n}\\n.ui-autocomplete {\\n z-index: 2050 !important;\\n}\\n\", \"\"]);\n","\"use strict\";\n\nmodule.exports = function (url, needQuotes) {\n if (typeof url !== 'string') {\n return url;\n } // If url is already wrapped in quotes, remove them\n\n\n if (/^['\"].*['\"]$/.test(url)) {\n // eslint-disable-next-line no-param-reassign\n url = url.slice(1, -1);\n } // Should url be wrapped?\n // See https://drafts.csswg.org/css-values-3/#urls\n\n\n if (/[\"'() \\t\\n]/.test(url) || needQuotes) {\n return \"\\\"\".concat(url.replace(/\"/g, '\\\\\"').replace(/\\n/g, '\\\\n'), \"\\\"\");\n }\n\n return url;\n};","module.exports = \"data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGhlaWdodD0iMTYiIHdpZHRoPSIxNiIgdmVyc2lvbj0iMS4xIiB2aWV3Ym94PSIwIDAgMTYgMTYiPjxwYXRoIGQ9Im0yIDJjLTAuNTU0IDAtMSAwLjQ0Ni0xIDFzMC40NDYgMSAxIDFoMTJjMC41NTQgMCAxLTAuNDQ2IDEtMXMtMC40NDYtMS0xLTFoLTEyem05LjcxNyA0LjAwNTljLTEuMjQ3IDAtMi4xNDI4IDEuMDE5OS0yLjE0MjggMS45OTggMCAwLjk5OTUgMC4wNzI2IDEuNzEyNyAwLjU3MTggMi40OTgxIDAuMTYgMC4yMDcgMC4zNDcgMC4yNTEgMC41IDAuNDMgMC4wOTcgMC4zNTcgMC4xNzEgMC43MTMgMC4wNzEgMS4wNy0wLjMxMSAwLjEwOS0wLjYwNyAwLjIzNy0wLjkwNjUgMC4zNTctMC4zNjQtMC4xOTUtMC43ODYzLTAuMzU3LTEuMTUwMy0wLjUtMC4wNS0wLjItMC4wMTI5LTAuMzQ3IDAuMDM3MS0wLjUzNSAwLjA4NTYtMC4wODkgMC4xNjMtMC4xMjkgMC4yNTU4LTAuMjE1IDAuMjY0Mi0wLjMyMSAwLjI3OTMtMC44NjQgMC4yNzkzLTEuMjQ5NiAwLTAuNTcxMi0wLjUxMzUtMC45OTgxLTEuMDcwMy0wLjk5ODEtMC42MjExIDAtMS4wNzIzIDAuNTEyNi0xLjA3MjMgMC45OTgxaC0wLjAxMzZjMCAwLjQ5OTYgMC4wMzUzIDAuODU3NiAwLjI4NTEgMS4yNDk2IDAuMDcxNCAwLjEwNyAwLjE3MjkgMC4xMjYgMC4yNSAwLjIxNSAwLjA0ODEgMC4xNzkgMC4wODU5IDAuMzU3IDAuMDM1MiAwLjUzNS0wLjQ1NjkgMC4xNi0wLjg4NjMgMC4zNTctMS4yODMyIDAuNTcxLTAuMjk5OSAwLjIxNC0wLjE2NjggMC4xMzEtMC4zNTc0IDAuODIyLTAuMDg4NiAwLjM1NyAwLjkyOCAwLjUyMSAxLjY1NjIgMC41NzgtMC4wMzU3IDAuMTk2LTAuMDg1NyAwLjQ1Ny0wLjIyODUgMC45NTctMC4yMjg1IDAuODkzIDMuMTA3NCAxLjIxMyA0LjI4MzQgMS4yMTMgMS43MzUgMCA0LjUwNy0wLjMyNSA0LjI2OS0xLjIxMy0wLjM3MS0xLjM4NS0wLjE1LTEuMjIxLTAuNzAxLTEuNjQyLTAuNzc4LTAuNDY3LTEuNzQ5LTAuODM0LTIuNTY4LTEuMTQzLTAuMTA3LTAuMzk4LTAuMDMtMC42OTIgMC4wNy0xLjA3IDAuMTY4LTAuMTc5IDAuMzU3LTAuMjU5IDAuNTE0LTAuNDMgMC40OTItMC42MzEyIDAuNTU2LTEuNzI5OSAwLjU1Ni0yLjQ5ODEgMC0xLjEzMjMtMS4wMTktMS45OTgtMi4xNC0xLjk5OHptLTkuNzE3IDAuOTk0MWMtMC41NTQgMC0xIDAuNDQ2LTEgMXMwLjQ0NiAxIDEgMWg0LjI4NTJjMC4wODkxLTAuMTg1NSAwLjItMC4zNjQ4IDAuMzUxNS0wLjUxOTUgMC4zNzIxLTAuMzgwMSAwLjkxNzEtMC41OTg4IDEuNDg4My0wLjYxOTJoMC4wMDk4IDAuMDA5N2MwLjE3MjkgMC4wMTcgMC4zMDQyIDAuMDU5NyAwLjQyOTcgMC4xNDI2IDAtMC4zNDg4IDAuMDc0Ny0wLjY4NTMgMC4xOTUzLTEuMDAzOWgtNi43Njk1em0wIDVjLTAuNTU0IDAtMSAwLjQ0Ni0xIDFzMC40NDYgMSAxIDFoMy4yNWMtMC4wMzc1LTAuMDQ5LTAuMDc3Ny0wLjA5LTAuMTExMy0wLjE1Mi0wLjEyMjEtMC4yMjgtMC4xNzA2LTAuNTY4LTAuMTAzNS0wLjgzOGwwLjAwMTktMC4wMTIgMC4wMDM5LTAuMDEyYzAuMDgyMi0wLjI5OCAwLjA1NTYtMC4zMjIgMC4xNDQ1LTAuNjE1IDAuMDMxMy0wLjEwMyAwLjExMTQtMC4yNDUgMC4xOTkzLTAuMzcxaC0zLjM4NDh6IiBmaWxsPSIjZmZmIi8+PC9zdmc+Cg==\"","import mod from \"-!../../node_modules/vue-style-loader/index.js!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/sass-loader/lib/loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Images.vue?vue&type=style&index=0&id=7891d82c&scoped=true&lang=scss&\"; export default mod; export * from \"-!../../node_modules/vue-style-loader/index.js!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/sass-loader/lib/loader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Images.vue?vue&type=style&index=0&id=7891d82c&scoped=true&lang=scss&\"","exports = module.exports = require(\"../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \"img[data-v-7891d82c] {\\n max-width: 100%;\\n max-height: 100%;\\n align-self: center;\\n justify-self: center;\\n background-color: #000;\\n transition: height 100ms ease, width 100ms ease, margin-top 100ms ease, margin-left 100ms ease;\\n}\\nimg[data-v-7891d82c]:hover {\\n background-image: linear-gradient(45deg, #efefef 25%, transparent 25%), linear-gradient(45deg, transparent 75%, #efefef 75%), linear-gradient(45deg, transparent 75%, #efefef 75%), linear-gradient(45deg, #efefef 25%, #fff 25%);\\n background-size: 16px 16px;\\n background-position: 0 0, 0 0, -8px -8px, 8px 8px;\\n}\\nimg.loaded[data-v-7891d82c] {\\n background-color: #fff;\\n}\\nimg.zoomed[data-v-7891d82c] {\\n position: absolute;\\n max-height: none;\\n max-width: none;\\n z-index: 10010;\\n cursor: move;\\n}\\nimg.dragging[data-v-7891d82c] {\\n transition: none !important;\\n cursor: move;\\n}\\n\", \"\"]);\n","import mod from \"-!../../node_modules/vue-style-loader/index.js!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Videos.vue?vue&type=style&index=0&id=6873d5ea&scoped=true&lang=css&\"; export default mod; export * from \"-!../../node_modules/vue-style-loader/index.js!../../node_modules/css-loader/dist/cjs.js!../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Videos.vue?vue&type=style&index=0&id=6873d5ea&scoped=true&lang=css&\"","exports = module.exports = require(\"../../node_modules/css-loader/dist/runtime/api.js\")(false);\n// Module\nexports.push([module.id, \"\\nvideo[data-v-6873d5ea] {\\n\\tbackground-color: black;\\n\\tmax-width: 100%;\\n\\tmax-height: 100%;\\n\\talign-self: center;\\n\\tjustify-self: center;\\n}\\n\", \"\"]);\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Error.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Error.vue?vue&type=script&lang=js&\"","<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<div id=\"emptycontent\">\n\t\t<div class=\"icon-error\" />\n\t\t<h2>\n\t\t\t<slot>{{ t('viewer', 'Error loading {name}', { name }) }}</slot>\n\t\t</h2>\n\t</div>\n</template>\n\n<script>\nexport default {\n\tname: 'Error',\n\n\tprops: {\n\t\tname: {\n\t\t\ttype: String,\n\t\t\tdefault: ''\n\t\t}\n\t}\n}\n</script>\n\n<style scoped>\n#emptycontent {\n\tmargin: 0;\n\tpadding: 10% 5%;\n\tbackground-color: var(--color-main-background);\n}\n</style>\n","/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nexport default function normalizeComponent (\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier, /* server only */\n shadowMode /* vue-cli only */\n) {\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) { // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () { injectStyles.call(this, this.$root.$options.shadowRoot) }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functioal component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection (h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing\n ? [].concat(existing, hook)\n : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n","import { render, staticRenderFns } from \"./Error.vue?vue&type=template&id=172a6c9e&scoped=true&\"\nimport script from \"./Error.vue?vue&type=script&lang=js&\"\nexport * from \"./Error.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Error.vue?vue&type=style&index=0&id=172a6c9e&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 \"172a6c9e\",\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',{attrs:{\"id\":\"emptycontent\"}},[_c('div',{staticClass:\"icon-error\"}),_vm._v(\" \"),_c('h2',[_vm._t(\"default\",[_vm._v(_vm._s(_vm.t('viewer', 'Error loading {name}', { name: _vm.name })))])],2)])}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nimport { generateUrl } from 'nextcloud-server/dist/router'\n\nexport default {\n\tmethods: {\n\t\tgetPreviewIfAny(fileInfo) {\n\t\t\tif (fileInfo.hasPreview) {\n\t\t\t\treturn generateUrl(`/core/preview?fileId=${fileInfo.id}&x=${screen.width}&y=${screen.height}&a=true`)\n\t\t\t}\n\t\t\treturn fileInfo.path\n\t\t}\n\t}\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nexport default function(fileInfo, mime, component) {\n\tthis.path = fileInfo.href\n\tthis.id = fileInfo.id\n\tthis.name = fileInfo.name\n\tthis.hasPreview = fileInfo.hasPreview\n\tthis.mime = mime\n\tthis.modal = component\n\tthis.failed = false\n\tthis.loaded = false\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nimport axios from 'axios'\nimport { generateRemoteUrl } from 'nextcloud-server/dist/router'\n\n/**\n *\n * @param {String} user the current user\n * @param {String} path the path relative to the user root\n * @returns {Array} the file list\n */\nexport default async function(user, path) {\n\tconst response = await axios({\n\t\tmethod: 'PROPFIND',\n\t\turl: generateRemoteUrl(`dav/files/${user}${path}`),\n\t\theaders: {\n\t\t\trequesttoken: OC.requestToken,\n\t\t\t'content-Type': 'text/xml'\n\t\t},\n\t\tdata: `<?xml version=\"1.0\"?>\n\t\t\t<d:propfind xmlns:d=\"DAV:\"\n\t\t\t\txmlns:oc=\"http://owncloud.org/ns\"\n\t\t\t\txmlns:nc=\"http://nextcloud.org/ns\"\n\t\t\t\txmlns:ocs=\"http://open-collaboration-services.org/ns\">\n\t\t\t<d:prop>\n\t\t\t\t<d:getlastmodified />\n\t\t\t\t<d:getetag />\n\t\t\t\t<d:getcontenttype />\n\t\t\t\t<d:resourcetype />\n\t\t\t\t<oc:fileid />\n\t\t\t\t<oc:permissions />\n\t\t\t\t<oc:size />\n\t\t\t\t<d:getcontentlength />\n\t\t\t\t<nc:has-preview />\n\t\t\t\t<nc:mount-type />\n\t\t\t\t<nc:is-encrypted />\n\t\t\t\t<ocs:share-permissions />\n\t\t\t\t<oc:tags />\n\t\t\t\t<oc:favorite />\n\t\t\t\t<oc:comments-unread />\n\t\t\t\t<oc:owner-id />\n\t\t\t\t<oc:owner-display-name />\n\t\t\t\t<oc:share-types />\n\t\t\t</d:prop>\n\t\t\t</d:propfind>`\n\t})\n\n\tconst files = OCA.Files.App.fileList.filesClient._client.parseMultiStatus(response.data)\n\treturn files\n\t\t.map(file => {\n\t\t\tconst fileInfo = OCA.Files.App.fileList.filesClient._parseFileInfo(file)\n\t\t\tfileInfo.href = file.href\n\t\t\treturn fileInfo\n\t\t})\n}\n","<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<Modal\n\t\tv-if=\"currentFile.modal\"\n\t\tid=\"viewer-content\"\n\t\t:class=\"{'icon-loading': !currentFile.loaded && !currentFile.failed}\"\n\t\t:view=\"currentFile.modal\"\n\t\t:enable-slideshow=\"hasPrevious || hasNext\"\n\t\t:spread-navigation=\"true\"\n\t\t:has-previous=\"hasPrevious\"\n\t\t:has-next=\"hasNext\"\n\t\t:title=\"currentFile.name\"\n\t\t:enable-swipe=\"canSwipe\"\n\t\t:size=\"isMobile || isFullscreen ? 'full' : 'large'\"\n\t\t:style=\"{width: shownSidebar ? `calc(100% - ${sidebarWidth}px)` : null}\"\n\t\t@close=\"close\"\n\t\t@previous=\"previous\"\n\t\t@next=\"next\">\n\t\t<!-- ACTIONS -->\n\t\t<template #actions>\n\t\t\t<ActionButton\n\t\t\t\ticon=\"icon-menu-sidebar-white-forced\"\n\t\t\t\t@click=\"showSidebar\">\n\t\t\t\t{{ t('viewer', 'Open sidebar') }}\n\t\t\t</ActionButton>\n\t\t</template>\n\n\t\t<!-- PREVIOUS -->\n\t\t<component\n\t\t\t:is=\"previousFile.modal\"\n\t\t\tv-if=\"previousFile && !previousFile.failed\"\n\t\t\t:key=\"getPreviewIfAny(previousFile)\"\n\t\t\tref=\"previous-content\"\n\t\t\t:dav-path=\"previousFile.path\"\n\t\t\t:file-id=\"previousFile.id\"\n\t\t\t:file-list=\"fileList\"\n\t\t\t:file-name=\"previousFile.name\"\n\t\t\t:mime=\"previousFile.mime\"\n\t\t\t:path=\"getPreviewIfAny(previousFile)\"\n\t\t\tclass=\"hidden-visually file-view\"\n\t\t\t@error=\"previousFailed\" />\n\t\t<Error\n\t\t\tv-else-if=\"previousFile\"\n\t\t\tclass=\"hidden-visually\"\n\t\t\t:name=\"previousFile.name\" />\n\n\t\t<!-- CURRENT -->\n\t\t<component\n\t\t\t:is=\"currentFile.modal\"\n\t\t\tv-if=\"!currentFile.failed\"\n\t\t\t:key=\"getPreviewIfAny(currentFile)\"\n\t\t\tref=\"content\"\n\t\t\t:active=\"true\"\n\t\t\t:can-swipe.sync=\"canSwipe\"\n\t\t\t:dav-path=\"currentFile.path\"\n\t\t\t:file-id=\"currentFile.id\"\n\t\t\t:file-list=\"fileList\"\n\t\t\t:file-name=\"currentFile.name\"\n\t\t\t:is-full-screen=\"isFullscreen\"\n\t\t\t:loaded.sync=\"currentFile.loaded\"\n\t\t\t:mime=\"currentFile.mime\"\n\t\t\t:path=\"getPreviewIfAny(currentFile)\"\n\t\t\t:sidebar-shown=\"shownSidebar\"\n\t\t\tclass=\"file-view active\"\n\t\t\t@error=\"currentFailed\" />\n\t\t<Error\n\t\t\tv-else\n\t\t\t:name=\"currentFile.name\" />\n\n\t\t<!-- NEXT -->\n\t\t<component\n\t\t\t:is=\"nextFile.modal\"\n\t\t\tv-if=\"nextFile && !nextFile.failed\"\n\t\t\t:key=\"getPreviewIfAny(nextFile)\"\n\t\t\tref=\"next-content\"\n\t\t\t:dav-path=\"nextFile.path\"\n\t\t\t:file-id=\"nextFile.id\"\n\t\t\t:file-list=\"fileList\"\n\t\t\t:file-name=\"nextFile.name\"\n\t\t\t:mime=\"nextFile.mime\"\n\t\t\t:path=\"getPreviewIfAny(nextFile)\"\n\t\t\tclass=\"hidden-visually file-view\"\n\t\t\t@error=\"nextFailed\" />\n\t\t<Error\n\t\t\tv-else-if=\"nextFile\"\n\t\t\tclass=\"hidden-visually\" />\n\t</Modal>\n</template>\n\n<script>\nimport Vue from 'vue'\n\nimport isMobile from 'nextcloud-vue/dist/Mixins/isMobile'\nimport isFullscreen from 'nextcloud-vue/dist/Mixins/isFullscreen'\nimport { generateRemoteUrl } from 'nextcloud-server/dist/router'\n\nimport Error from 'Components/Error'\nimport PreviewUrl from 'Mixins/PreviewUrl'\nimport File from 'Models/file'\nimport FileList from 'Services/FileList'\nimport Modal from 'nextcloud-vue/dist/Components/Modal'\nimport ActionButton from 'nextcloud-vue/dist/Components/ActionButton'\n\nexport default {\n\tname: 'Viewer',\n\n\tcomponents: {\n\t\tActionButton,\n\t\tModal,\n\t\tError\n\t},\n\n\tmixins: [isMobile, isFullscreen, PreviewUrl],\n\n\tdata: () => ({\n\t\thandlers: OCA.Viewer.availableHandlers,\n\n\t\tcomponents: {},\n\t\tmimeGroups: {},\n\t\tmimesAliases: {},\n\t\tregisteredHandlers: [],\n\n\t\tcurrentIndex: 0,\n\t\tpreviousFile: {},\n\t\tcurrentFile: {},\n\t\tnextFile: {},\n\n\t\tfileList: [],\n\n\t\tisLoaded: false,\n\n\t\tshownSidebar: false,\n\t\tsidebarWidth: 0,\n\n\t\tcanSwipe: true,\n\t\tfailed: false,\n\n\t\troot: generateRemoteUrl(`dav/files/${OC.getCurrentUser().uid}`)\n\t}),\n\n\tcomputed: {\n\t\thasPrevious() {\n\t\t\treturn this.fileList.length > 1\n\t\t},\n\t\thasNext() {\n\t\t\treturn this.fileList.length > 1\n\t\t}\n\t},\n\n\twatch: {\n\t\t// make sure any late external app can register handlers\n\t\thandlers: function() {\n\t\t\t// make sure the viewer is done registering handlers\n\t\t\t// so we only register handlers added AFTER the init\n\t\t\t// of the viewer\n\t\t\tif (this.isLoaded) {\n\t\t\t\tthis.registerHandler(this.handlers[this.handlers.length - 1])\n\t\t\t}\n\t\t}\n\t},\n\n\tbeforeMount() {\n\t\t// register on load\n\t\tdocument.addEventListener('DOMContentLoaded', event => {\n\t\t\tthis.handlers.forEach(handler => {\n\t\t\t\tthis.registerHandler(handler)\n\t\t\t})\n\t\t\tthis.isLoaded = true\n\t\t})\n\n\t\twindow.addEventListener('resize', this.onResize)\n\t},\n\n\tbeforeDestroy() {\n\t\twindow.removeEventListener('resize', this.onResize)\n\t},\n\n\tmethods: {\n\t\t/**\n\t\t * Open the view and display the clicked file\n\t\t *\n\t\t * @param {string} fileName the opened file name\n\t\t * @param {Object} fileInfo the opened file info\n\t\t */\n\t\tasync openFile(fileName, fileInfo) {\n\t\t\t// do not open the same file again\n\t\t\tif (fileName === this.currentFile.name) {\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// prevent scrolling while opened\n\t\t\tdocument.body.style.overflow = 'hidden'\n\n\t\t\t// swap title with original one\n\t\t\tconst title = document.getElementsByTagName('head')[0].getElementsByTagName('title')[0]\n\t\t\tif (title && !title.dataset.old) {\n\t\t\t\ttitle.dataset.old = document.title\n\t\t\t\tdocument.title = `${fileName} - ${OC.theme.title}`\n\t\t\t}\n\n\t\t\t// retrieve, sort and store file List\n\n\t\t\tlet fileList = await FileList(OC.getCurrentUser().uid, this.encodeFilePath(fileInfo.dir, fileName))\n\n\t\t\tlet mime = fileList.find(file => file.name === fileName).mimetype\n\n\t\t\t// check if part of a group, if so retrieve full files list\n\t\t\tconst group = this.mimeGroups[mime]\n\t\t\tif (group) {\n\t\t\t\tconst mimes = this.mimeGroups[group]\n\t\t\t\t\t? this.mimeGroups[group]\n\t\t\t\t\t: [mime]\n\n\t\t\t\t// retrieve folder list\n\t\t\t\tfileList = await FileList(OC.getCurrentUser().uid, this.encodeFilePath(fileInfo.dir, ''))\n\n\t\t\t\t// filter out the unwanted mimes\n\t\t\t\tfileList = fileList.filter(file => file.mimetype && mimes.indexOf(file.mimetype) !== -1)\n\n\t\t\t\t// sort like the files list\n\t\t\t\tthis.fileList = fileList.sort(OCA.Files.App.fileList._sortComparator)\n\n\t\t\t\t// store current position\n\t\t\t\tthis.currentIndex = this.fileList.findIndex(file => file.name === fileName)\n\t\t\t} else {\n\t\t\t\tthis.currentIndex = 0\n\t\t\t\tthis.fileList = fileList\n\t\t\t}\n\n\t\t\t// get saved fileInfo\n\t\t\tfileInfo = this.fileList[this.currentIndex]\n\n\t\t\t// override mimetype if existing alias\n\t\t\tmime = this.getAliasIfAny(mime)\n\t\t\tif (!this.components[mime]) {\n\t\t\t\tmime = mime.split('/')[0]\n\t\t\t}\n\n\t\t\tif (this.components[mime]) {\n\t\t\t\tthis.currentFile = new File(fileInfo, mime, this.components[mime])\n\t\t\t\tthis.updatePreviousNext()\n\t\t\t} else {\n\t\t\t\tconsole.error(`The following file could not be displayed`, fileName, fileInfo)\n\t\t\t\tthis.currentFile.failed = true\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Get an url encoded path\n\t\t *\n\t\t * @param {string} dir path of the files directory\n\t\t * @param {string} fileName unencoded file name\n\t\t * @returns {string} url encoded file path\n\t\t */\n\t\tencodeFilePath(dir, fileName) {\n\t\t\tconst pathSections = (dir !== '/' ? dir : '').split('/')\n\t\t\tpathSections.push(fileName)\n\t\t\tlet relativePath = ''\n\t\t\tpathSections.forEach((section) => {\n\t\t\t\tif (section !== '') {\n\t\t\t\t\trelativePath += '/' + encodeURIComponent(section)\n\t\t\t\t}\n\t\t\t})\n\t\t\treturn relativePath\n\t\t},\n\n\t\t/**\n\t\t * Open the view and display the file from the file list\n\t\t *\n\t\t * @param {Object} fileInfo the opened file info\n\t\t */\n\t\topenFileFromList(fileInfo) {\n\t\t\t// override mimetype if existing alias\n\t\t\tconst mime = this.getAliasIfAny(fileInfo.mimetype)\n\t\t\tthis.currentFile = new File(fileInfo, mime, this.components[mime])\n\t\t\tthis.updatePreviousNext()\n\t\t},\n\n\t\t/**\n\t\t * Update the previous and next file components\n\t\t */\n\t\tupdatePreviousNext() {\n\t\t\tconst prev = this.fileList[this.currentIndex - 1]\n\t\t\tconst next = this.fileList[this.currentIndex + 1]\n\n\t\t\tif (prev) {\n\t\t\t\tconst mime = this.getAliasIfAny(prev.mimetype)\n\t\t\t\tif (this.components[mime]) {\n\t\t\t\t\tthis.previousFile = new File(prev, mime, this.components[mime])\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// RESET\n\t\t\t\tthis.previousFile = null\n\t\t\t}\n\n\t\t\tif (next) {\n\t\t\t\tconst mime = this.getAliasIfAny(next.mimetype)\n\t\t\t\tif (this.components[mime]) {\n\t\t\t\t\tthis.nextFile = new File(next, mime, this.components[mime])\n\t\t\t\t}\n\t\t\t} else {\n\t\t\t\t// RESET\n\t\t\t\tthis.nextFile = null\n\t\t\t}\n\n\t\t},\n\n\t\t/**\n\t\t * Registering possible new handers\n\t\t *\n\t\t * @param {Object} handler the handler to register\n\t\t * @param {String} handler.id unique handler identifier\n\t\t * @param {Array} handler.mimes list of valid mimes compatible with the handler\n\t\t * @param {Object} handler.component a vuejs component to render when a file matching the mime list is opened\n\t\t * @param {String} [handler.group] a group name to be associated with for the slideshow\n\t\t */\n\t\tregisterHandler(handler) {\n\t\t\t// checking if handler is not already registered\n\t\t\tif (handler.id && this.registeredHandlers.indexOf(handler.id) > -1) {\n\t\t\t\tconsole.error(`The following handler is already registered`, handler)\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// checking valid handler id\n\t\t\tif (!handler.id || handler.id.trim() === '' || typeof handler.id !== 'string') {\n\t\t\t\tconsole.error(`The following handler doesn't have a valid id`, handler)\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\t// checking if no valid mimes data and no mimes Aliases\n\t\t\tif (!(handler.mimes && Array.isArray(handler.mimes)) && !handler.mimesAliases) {\n\t\t\t\tconsole.error(`The following handler doesn't have a valid mime array`, handler)\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tif (handler.mimesAliases && typeof handler.mimesAliases !== 'object') {\n\t\t\t\tconsole.error(`The following handler doesn't have a valid mimesAliases object`, handler)\n\t\t\t\treturn\n\n\t\t\t}\n\n\t\t\t// checking valid handler component data AND no alias (we can register alias without component)\n\t\t\tif ((!handler.component || typeof handler.component !== 'object') && !handler.mimesAliases) {\n\t\t\t\tconsole.error(`The following handler doesn't have a valid component`, handler)\n\t\t\t\treturn\n\t\t\t}\n\n\t\t\tconst register = ({ mime, handler }) => {\n\t\t\t\t// unregistered handler, let's go!\n\t\t\t\tOCA.Files.fileActions.registerAction({\n\t\t\t\t\tname: 'view',\n\t\t\t\t\tdisplayName: t('viewer', 'View'),\n\t\t\t\t\tmime: mime,\n\t\t\t\t\tpermissions: OC.PERMISSION_READ,\n\t\t\t\t\tactionHandler: this.openFile\n\t\t\t\t})\n\t\t\t\tOCA.Files.fileActions.setDefault(mime, 'view')\n\n\t\t\t\t// register groups\n\t\t\t\tif (handler.group) {\n\t\t\t\t\tthis.mimeGroups[mime] = handler.group\n\t\t\t\t\t// init if undefined\n\t\t\t\t\tif (!this.mimeGroups[handler.group]) {\n\t\t\t\t\t\tthis.mimeGroups[handler.group] = []\n\t\t\t\t\t}\n\t\t\t\t\tthis.mimeGroups[handler.group].push(mime)\n\t\t\t\t}\n\n\t\t\t\t// set the handler as registered\n\t\t\t\tthis.registeredHandlers.push(handler.id)\n\t\t\t}\n\n\t\t\t// parsing mimes registration\n\t\t\tif (handler.mimes) {\n\t\t\t\thandler.mimes.forEach(mime => {\n\t\t\t\t\t// checking valid mime\n\t\t\t\t\tif (this.components[mime]) {\n\t\t\t\t\t\tconsole.error(`The following mime is already registered`, mime, handler)\n\t\t\t\t\t\treturn\n\t\t\t\t\t}\n\n\t\t\t\t\tregister({ mime, handler })\n\n\t\t\t\t\t// register mime's component\n\t\t\t\t\tthis.components[mime] = handler.component\n\t\t\t\t\tVue.component(handler.component.name, handler.component)\n\t\t\t\t})\n\t\t\t}\n\n\t\t\t// parsing aliases registration\n\t\t\tif (handler.mimesAliases) {\n\t\t\t\tObject.keys(handler.mimesAliases).forEach(mime => {\n\t\t\t\t\t// checking valid mime\n\t\t\t\t\tif (this.components[mime]) {\n\t\t\t\t\t\tconsole.error(`The following mime is already registered`, mime, handler)\n\t\t\t\t\t\treturn\n\t\t\t\t\t}\n\n\t\t\t\t\tregister({ mime, handler })\n\n\t\t\t\t\tthis.mimesAliases[mime] = handler.mimesAliases[mime]\n\t\t\t\t})\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Close the viewer\n\t\t */\n\t\tclose() {\n\t\t\tthis.currentFile = {}\n\t\t\tthis.currentModal = null\n\t\t\tthis.fileList = []\n\t\t\tthis.hideAppsSidebar()\n\n\t\t\t// restore default\n\t\t\tdocument.body.style.overflow = null\n\n\t\t\t// swap back original title\n\t\t\tconst title = document.getElementsByTagName('head')[0].getElementsByTagName('title')[0]\n\t\t\tif (title && title.dataset.old) {\n\t\t\t\tdocument.title = title.dataset.old\n\t\t\t\tdelete title.dataset.old\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Open previous available file\n\t\t */\n\t\tprevious() {\n\t\t\tthis.currentIndex--\n\t\t\tif (this.currentIndex < 0) {\n\t\t\t\tthis.currentIndex = this.fileList.length - 1\n\t\t\t}\n\n\t\t\tthis.openFileFromList(this.fileList[this.currentIndex])\n\t\t},\n\n\t\t/**\n\t\t * Open next available file\n\t\t */\n\t\tnext() {\n\t\t\tthis.currentIndex++\n\t\t\tif (this.currentIndex > this.fileList.length - 1) {\n\t\t\t\tthis.currentIndex = 0\n\t\t\t}\n\n\t\t\tthis.openFileFromList(this.fileList[this.currentIndex])\n\t\t},\n\n\t\t/**\n\t\t * Failures handlers\n\t\t */\n\t\tpreviousFailed() {\n\t\t\tthis.previousFile.failed = true\n\t\t},\n\n\t\tcurrentFailed() {\n\t\t\tthis.currentFile.failed = true\n\t\t},\n\n\t\tnextFailed() {\n\t\t\tthis.nextFile.failed = true\n\t\t},\n\n\t\t/**\n\t\t * Show the sharing sidebar\n\t\t */\n\n\t\tshowSidebar() {\n\t\t\t// Open the sidebar sharing tab\n\t\t\tOCA.Files.App.fileList.showDetailsView(this.currentFile.name)\n\t\t\tthis.showAppsSidebar()\n\t\t},\n\n\t\tshowAppsSidebar() {\n\t\t\tthis.shownSidebar = true\n\t\t\tconst sidebar = document.getElementById('app-sidebar')\n\t\t\tif (sidebar) {\n\t\t\t\tsidebar.classList.add('app-sidebar--full')\n\t\t\t}\n\n\t\t\t// overriding closing function\n\t\t\tconst origHideAppsSidebar = OC.Apps.hideAppSidebar\n\t\t\tOC.Apps.hideAppSidebar = ($el) => {\n\t\t\t\tthis.hideAppsSidebar()\n\t\t\t\torigHideAppsSidebar($el)\n\t\t\t}\n\n\t\t\tthis.sidebarWidth = sidebar.offsetWidth\n\t\t},\n\n\t\thideAppsSidebar() {\n\t\t\tthis.shownSidebar = false\n\t\t\tconst sidebar = document.getElementById('app-sidebar')\n\t\t\tif (sidebar) {\n\t\t\t\tsidebar.classList.remove('app-sidebar--full')\n\t\t\t}\n\t\t},\n\n\t\tonResize(event) {\n\t\t\t// update sidebar width\n\t\t\tconst sidebar = document.getElementById('app-sidebar')\n\t\t\tif (sidebar) {\n\t\t\t\tthis.sidebarWidth = sidebar.offsetWidth\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Return the alias if exists\n\t\t *\n\t\t * @param {String} mime the mime type\n\t\t * @returns {String} the mime type or the mime alias\n\t\t */\n\t\tgetAliasIfAny(mime) {\n\t\t\treturn this.mimesAliases[mime]\n\t\t\t\t? this.mimesAliases[mime]\n\t\t\t\t: mime\n\t\t}\n\t}\n}\n</script>\n\n<style lang=\"scss\">\n#viewer-content.modal-mask {\n\ttransition: width ease 100ms;\n\t.modal-container {\n\t\tdisplay: flex !important;\n\t\twidth: auto !important;\n\t\tborder-radius: 0 !important;\n\t\t// let the mime components manage their own background-color\n\t\tbackground-color: transparent;\n\t\tjustify-content: center;\n\t\talign-items: center;\n\t}\n}\n\n.component-fade-enter-active, .component-fade-leave-active {\n\ttransition: opacity .3s ease;\n}\n\n.component-fade-enter, .component-fade-leave-to {\n\topacity: 0;\n}\n\n// force white icon\n.icon-menu-sidebar-white-forced {\n\tbackground-image: url('~Assets/menu-sidebar-white.svg');\n}\n\n.file-view {\n\ttransition: height 100ms ease,\n\t\twidth 100ms ease;\n}\n\n#app-sidebar.app-sidebar--full {\n\tposition: fixed;\n\ttop: 0;\n\theight: 100%;\n\tz-index: 2025;\n\t.thumbnailContainer {\n\t\tdisplay: none;\n\t}\n}\n\n// put autocomplete over full sidebar\n// TODO: remove when new sharing sidebar (18)\n// is the min-version of viewer\n.ui-autocomplete {\n\tz-index: 2050 !important;\n}\n</style>\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Viewer.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Viewer.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./Viewer.vue?vue&type=template&id=40ffea84&\"\nimport script from \"./Viewer.vue?vue&type=script&lang=js&\"\nexport * from \"./Viewer.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Viewer.vue?vue&type=style&index=0&lang=scss&\"\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 (_vm.currentFile.modal)?_c('Modal',{class:{'icon-loading': !_vm.currentFile.loaded && !_vm.currentFile.failed},style:({width: _vm.shownSidebar ? (\"calc(100% - \" + _vm.sidebarWidth + \"px)\") : null}),attrs:{\"id\":\"viewer-content\",\"view\":_vm.currentFile.modal,\"enable-slideshow\":_vm.hasPrevious || _vm.hasNext,\"spread-navigation\":true,\"has-previous\":_vm.hasPrevious,\"has-next\":_vm.hasNext,\"title\":_vm.currentFile.name,\"enable-swipe\":_vm.canSwipe,\"size\":_vm.isMobile || _vm.isFullscreen ? 'full' : 'large'},on:{\"close\":_vm.close,\"previous\":_vm.previous,\"next\":_vm.next},scopedSlots:_vm._u([{key:\"actions\",fn:function(){return [_c('ActionButton',{attrs:{\"icon\":\"icon-menu-sidebar-white-forced\"},on:{\"click\":_vm.showSidebar}},[_vm._v(\"\\n\\t\\t\\t\"+_vm._s(_vm.t('viewer', 'Open sidebar'))+\"\\n\\t\\t\")])]},proxy:true}],null,false,1634072048)},[_vm._v(\" \"),(_vm.previousFile && !_vm.previousFile.failed)?_c(_vm.previousFile.modal,{key:_vm.getPreviewIfAny(_vm.previousFile),ref:\"previous-content\",tag:\"component\",staticClass:\"hidden-visually file-view\",attrs:{\"dav-path\":_vm.previousFile.path,\"file-id\":_vm.previousFile.id,\"file-list\":_vm.fileList,\"file-name\":_vm.previousFile.name,\"mime\":_vm.previousFile.mime,\"path\":_vm.getPreviewIfAny(_vm.previousFile)},on:{\"error\":_vm.previousFailed}}):(_vm.previousFile)?_c('Error',{staticClass:\"hidden-visually\",attrs:{\"name\":_vm.previousFile.name}}):_vm._e(),_vm._v(\" \"),(!_vm.currentFile.failed)?_c(_vm.currentFile.modal,{key:_vm.getPreviewIfAny(_vm.currentFile),ref:\"content\",tag:\"component\",staticClass:\"file-view active\",attrs:{\"active\":true,\"can-swipe\":_vm.canSwipe,\"dav-path\":_vm.currentFile.path,\"file-id\":_vm.currentFile.id,\"file-list\":_vm.fileList,\"file-name\":_vm.currentFile.name,\"is-full-screen\":_vm.isFullscreen,\"loaded\":_vm.currentFile.loaded,\"mime\":_vm.currentFile.mime,\"path\":_vm.getPreviewIfAny(_vm.currentFile),\"sidebar-shown\":_vm.shownSidebar},on:{\"update:canSwipe\":function($event){_vm.canSwipe=$event},\"update:can-swipe\":function($event){_vm.canSwipe=$event},\"update:loaded\":function($event){return _vm.$set(_vm.currentFile, \"loaded\", $event)},\"error\":_vm.currentFailed}}):_c('Error',{attrs:{\"name\":_vm.currentFile.name}}),_vm._v(\" \"),(_vm.nextFile && !_vm.nextFile.failed)?_c(_vm.nextFile.modal,{key:_vm.getPreviewIfAny(_vm.nextFile),ref:\"next-content\",tag:\"component\",staticClass:\"hidden-visually file-view\",attrs:{\"dav-path\":_vm.nextFile.path,\"file-id\":_vm.nextFile.id,\"file-list\":_vm.fileList,\"file-name\":_vm.nextFile.name,\"mime\":_vm.nextFile.mime,\"path\":_vm.getPreviewIfAny(_vm.nextFile)},on:{\"error\":_vm.nextFailed}}):(_vm.nextFile)?_c('Error',{staticClass:\"hidden-visually\"}):_vm._e()],1):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","function isComputedLazy(item) {\n return item.hasOwnProperty('lazy') && item.lazy;\n}\n\nfunction isLazyActive(vm, key) {\n return vm[lazyActivePrefix + key];\n}\n\nvar lazyActivePrefix = 'async_computed$lazy_active$',\n lazyDataPrefix = 'async_computed$lazy_data$';\n\nfunction initLazy(data, key) {\n data[lazyActivePrefix + key] = false;\n data[lazyDataPrefix + key] = null;\n}\n\nfunction makeLazyComputed(key) {\n return {\n get: function get() {\n this[lazyActivePrefix + key] = true;\n return this[lazyDataPrefix + key];\n },\n set: function set(value) {\n this[lazyDataPrefix + key] = value;\n }\n };\n}\n\nfunction silentSetLazy(vm, key, value) {\n vm[lazyDataPrefix + key] = value;\n}\nfunction silentGetLazy(vm, key) {\n return vm[lazyDataPrefix + key];\n}\n\nvar getGetterWatchedByArray = function getGetterWatchedByArray(computedAsyncProperty) {\n return function getter() {\n var _this = this;\n\n computedAsyncProperty.watch.forEach(function (key) {\n // Check if nested key is watched.\n var splittedByDot = key.split('.');\n if (splittedByDot.length === 1) {\n // If not, just access it.\n // eslint-disable-next-line no-unused-expressions\n _this[key];\n } else {\n // Access the nested propety.\n try {\n var start = _this;\n splittedByDot.forEach(function (part) {\n start = start[part];\n });\n } catch (error) {\n console.error('AsyncComputed: bad path: ', key);\n throw error;\n }\n }\n });\n return computedAsyncProperty.get.call(this);\n };\n};\n\nvar getGetterWatchedByFunction = function getGetterWatchedByFunction(computedAsyncProperty) {\n return function getter() {\n computedAsyncProperty.watch.call(this);\n return computedAsyncProperty.get.call(this);\n };\n};\n\nfunction getWatchedGetter(computedAsyncProperty) {\n if (typeof computedAsyncProperty.watch === 'function') {\n return getGetterWatchedByFunction(computedAsyncProperty);\n } else if (Array.isArray(computedAsyncProperty.watch)) {\n computedAsyncProperty.watch.forEach(function (key) {\n if (typeof key !== 'string') {\n throw new Error('AsyncComputed: watch elemnts must be strings');\n }\n });\n return getGetterWatchedByArray(computedAsyncProperty);\n } else {\n throw Error('AsyncComputed: watch should be function or an array');\n }\n}\n\nvar DidNotUpdate = typeof Symbol === 'function' ? Symbol('did-not-update') : {};\n\nvar getGetterWithShouldUpdate = function getGetterWithShouldUpdate(asyncProprety, currentGetter) {\n return function getter() {\n return asyncProprety.shouldUpdate.call(this) ? currentGetter.call(this) : DidNotUpdate;\n };\n};\n\nvar shouldNotUpdate = function shouldNotUpdate(value) {\n return DidNotUpdate === value;\n};\n\nvar prefix = '_async_computed$';\n\nvar AsyncComputed = {\n install: function install(Vue, pluginOptions) {\n pluginOptions = pluginOptions || {};\n\n Vue.config.optionMergeStrategies.asyncComputed = Vue.config.optionMergeStrategies.computed;\n\n Vue.mixin({\n data: function data() {\n return {\n _asyncComputed: {}\n };\n },\n\n computed: {\n $asyncComputed: function $asyncComputed() {\n return this.$data._asyncComputed;\n }\n },\n beforeCreate: function beforeCreate() {\n var asyncComputed = this.$options.asyncComputed || {};\n\n if (!Object.keys(asyncComputed).length) return;\n\n for (var key in asyncComputed) {\n var getter = getterFn(key, asyncComputed[key]);\n this.$options.computed[prefix + key] = getter;\n }\n\n this.$options.data = initDataWithAsyncComputed(this.$options);\n },\n created: function created() {\n for (var key in this.$options.asyncComputed || {}) {\n var item = this.$options.asyncComputed[key],\n value = generateDefault.call(this, item, pluginOptions);\n if (isComputedLazy(item)) {\n silentSetLazy(this, key, value);\n } else {\n this[key] = value;\n }\n }\n\n for (var _key in this.$options.asyncComputed || {}) {\n handleAsyncComputedPropetyChanges(this, _key, pluginOptions, Vue);\n }\n }\n });\n }\n};\nfunction handleAsyncComputedPropetyChanges(vm, key, pluginOptions, Vue) {\n var promiseId = 0;\n var watcher = function watcher(newPromise) {\n var thisPromise = ++promiseId;\n\n if (shouldNotUpdate(newPromise)) return;\n\n if (!newPromise || !newPromise.then) {\n newPromise = Promise.resolve(newPromise);\n }\n setAsyncState(vm, key, 'updating');\n\n newPromise.then(function (value) {\n if (thisPromise !== promiseId) return;\n setAsyncState(vm, key, 'success');\n vm[key] = value;\n }).catch(function (err) {\n if (thisPromise !== promiseId) return;\n\n setAsyncState(vm, key, 'error');\n Vue.set(vm.$data._asyncComputed[key], 'exception', err);\n if (pluginOptions.errorHandler === false) return;\n\n var handler = pluginOptions.errorHandler === undefined ? console.error.bind(console, 'Error evaluating async computed property:') : pluginOptions.errorHandler;\n\n if (pluginOptions.useRawError) {\n handler(err, vm, err.stack);\n } else {\n handler(err.stack);\n }\n });\n };\n Vue.set(vm.$data._asyncComputed, key, {\n exception: null,\n update: function update() {\n watcher(getterOnly(vm.$options.asyncComputed[key]).apply(vm));\n }\n });\n setAsyncState(vm, key, 'updating');\n vm.$watch(prefix + key, watcher, { immediate: true });\n}\n\nfunction initDataWithAsyncComputed(options) {\n var optionData = options.data;\n var asyncComputed = options.asyncComputed || {};\n\n return function vueAsyncComputedInjectedDataFn(vm) {\n var data = (typeof optionData === 'function' ? optionData.call(this, vm) : optionData) || {};\n for (var key in asyncComputed) {\n var item = this.$options.asyncComputed[key];\n if (isComputedLazy(item)) {\n initLazy(data, key);\n this.$options.computed[key] = makeLazyComputed(key);\n } else {\n data[key] = null;\n }\n }\n return data;\n };\n}\n\nfunction setAsyncState(vm, stateObject, state) {\n vm.$set(vm.$data._asyncComputed[stateObject], 'state', state);\n vm.$set(vm.$data._asyncComputed[stateObject], 'updating', state === 'updating');\n vm.$set(vm.$data._asyncComputed[stateObject], 'error', state === 'error');\n vm.$set(vm.$data._asyncComputed[stateObject], 'success', state === 'success');\n}\n\nfunction getterOnly(fn) {\n if (typeof fn === 'function') return fn;\n\n return fn.get;\n}\n\nfunction getterFn(key, fn) {\n if (typeof fn === 'function') return fn;\n\n var getter = fn.get;\n\n if (fn.hasOwnProperty('watch')) {\n getter = getWatchedGetter(fn);\n }\n\n if (fn.hasOwnProperty('shouldUpdate')) {\n getter = getGetterWithShouldUpdate(fn, getter);\n }\n\n if (isComputedLazy(fn)) {\n var nonLazy = getter;\n getter = function lazyGetter() {\n if (isLazyActive(this, key)) {\n return nonLazy.call(this);\n } else {\n return silentGetLazy(this, key);\n }\n };\n }\n return getter;\n}\n\nfunction generateDefault(fn, pluginOptions) {\n var defaultValue = null;\n\n if ('default' in fn) {\n defaultValue = fn.default;\n } else if ('default' in pluginOptions) {\n defaultValue = pluginOptions.default;\n }\n\n if (typeof defaultValue === 'function') {\n return defaultValue.call(this);\n } else {\n return defaultValue;\n }\n}\n\n/* istanbul ignore if */\nif (typeof window !== 'undefined' && window.Vue) {\n // Auto install in dist mode\n window.Vue.use(AsyncComputed);\n}\n\nexport default AsyncComputed;\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nimport debounce from 'debounce'\n\nexport default {\n\tprops: {\n\t\tactive: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false\n\t\t},\n\t\tpath: {\n\t\t\ttype: String,\n\t\t\trequired: true\n\t\t},\n\t\tfileId: {\n\t\t\ttype: Number,\n\t\t\trequired: true\n\t\t},\n\t\tfileList: {\n\t\t\ttype: Array,\n\t\t\tdefault: []\n\t\t},\n\t\tfileName: {\n\t\t\ttype: String,\n\t\t\trequired: true\n\t\t},\n\t\tdavPath: {\n\t\t\ttype: String,\n\t\t\trequired: true\n\t\t},\n\t\tmime: {\n\t\t\ttype: String,\n\t\t\trequired: true\n\t\t},\n\t\tcanSwipe: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: true\n\t\t},\n\t\tloaded: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false\n\t\t},\n\t\tsidebarShown: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false\n\t\t},\n\t\tisFullScreen: {\n\t\t\ttype: Boolean,\n\t\t\tdefault: false\n\t\t}\n\t},\n\n\tdata() {\n\t\treturn {\n\t\t\theight: null,\n\t\t\twidth: null,\n\t\t\tnaturalHeight: null,\n\t\t\tnaturalWidth: null,\n\t\t\tisLoaded: false\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tname() {\n\t\t\treturn this.fileName.split('.')[0]\n\t\t},\n\t\text() {\n\t\t\treturn this.fileName.split('.')[1]\n\t\t}\n\t},\n\n\twatch: {\n\t\tactive: function(val, old) {\n\t\t\t// the item was hidden before and is now the current view\n\t\t\tif (val === true && old === false) {\n\t\t\t\t// just in case the file was preloaded, let's warn the viewer\n\t\t\t\tif (this.isLoaded) {\n\t\t\t\t\tthis.doneLoading()\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\t\t// update image size on SIDEBARsidebar\n\t\tsidebarShown: function() {\n\t\t\t// wait for transition to complete (100ms)\n\t\t\tsetTimeout(this.updateHeightWidth, 150)\n\t\t}\n\t},\n\n\tmounted() {\n\t\t// detect error and let the viewer know\n\t\tthis.$el.addEventListener('error', e => {\n\t\t\tconsole.error('Error loading', this.path, e)\n\t\t\tthis.$emit('error', e)\n\t\t})\n\n\t\t// update image size on window resize\n\t\twindow.addEventListener('resize', debounce(() => {\n\t\t\tthis.updateHeightWidth()\n\t\t}, 100))\n\t},\n\n\tmethods: {\n\n\t\t/**\n\t\t * This is used to make the viewer know this file is complete or ready\n\t\t * ! you NEED to use it to make the viewer aware of the current loading state\n\t\t */\n\t\tdoneLoading() {\n\t\t\t// send the current state\n\t\t\tthis.$emit('update:loaded', true)\n\t\t\t// save the current state\n\t\t\tthis.isLoaded = true\n\t\t},\n\n\t\t/**\n\t\t * Updates the current height and width data\n\t\t * based on the viewer maximum size\n\t\t */\n\t\tupdateHeightWidth() {\n\t\t\tconst modalWrapper = this.$parent.$el.querySelector('.modal-wrapper')\n\t\t\tif (modalWrapper && this.naturalHeight > 0 && this.naturalWidth > 0) {\n\t\t\t\tconst modalContainer = modalWrapper.querySelector('.modal-container')\n\t\t\t\tconst wrapperMaxHeight = Number(window.getComputedStyle(modalContainer).maxHeight.replace('%', ''))\n\t\t\t\tconst wrapperMaxWidth = Number(window.getComputedStyle(modalContainer).maxWidth.replace('%', ''))\n\n\t\t\t\tconst parentHeight = Math.round(modalWrapper.clientHeight * wrapperMaxHeight / 100) - 50 // minus header\n\t\t\t\tconst parentWidth = Math.round(modalWrapper.clientWidth * wrapperMaxWidth / 100)\n\n\t\t\t\tconst heightRatio = parentHeight / this.naturalHeight\n\t\t\t\tconst widthRatio = parentWidth / this.naturalWidth\n\n\t\t\t\t// if the video height is capped by the parent height\n\t\t\t\t// AND the video is bigger than the parent\n\t\t\t\tif (heightRatio < widthRatio && heightRatio < 1) {\n\t\t\t\t\tthis.height = parentHeight\n\t\t\t\t\tthis.width = Math.round(this.naturalWidth / this.naturalHeight * parentHeight)\n\n\t\t\t\t// if the video width is capped by the parent width\n\t\t\t\t// AND the video is bigger than the parent\n\t\t\t\t} else if (heightRatio > widthRatio && widthRatio < 1) {\n\t\t\t\t\tthis.width = parentWidth\n\t\t\t\t\tthis.height = Math.round(this.naturalHeight / this.naturalWidth * parentWidth)\n\n\t\t\t\t// RESET\n\t\t\t\t} else {\n\t\t\t\t\tthis.height = this.naturalHeight\n\t\t\t\t\tthis.width = this.naturalWidth\n\t\t\t\t}\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Enable the viewer swiping previous/next capability\n\t\t */\n\t\tenableSwipe() {\n\t\t\tthis.$emit('update:canSwipe', true)\n\t\t},\n\n\t\t/**\n\t\t * Disable the viewer swiping previous/next capability\n\t\t */\n\t\tdisableSwipe() {\n\t\t\tthis.$emit('update:canSwipe', false)\n\t\t},\n\n\t\t/**\n\t\t * Toggle the fullscreen on the current visible element\n\t\t */\n\t\ttoggleFullScreen() {\n\t\t\tif (this.isFullScreen) {\n\t\t\t\tdocument.exitFullscreen()\n\t\t\t} else {\n\t\t\t\tthis.$el.requestFullscreen()\n\t\t\t}\n\t\t}\n\t}\n}\n","<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<img\n\t\t:class=\"{\n\t\t\tdragging,\n\t\t\tloaded,\n\t\t\tzoomed: zoomRatio !== 1\n\t\t}\"\n\t\t:src=\"data\"\n\t\t:style=\"{\n\t\t\theight: minHeight,\n\t\t\twidth: minWidth,\n\t\t\tmarginTop: shiftY + 'px',\n\t\t\tmarginLeft: shiftX + 'px'\n\t\t}\"\n\t\t@load=\"updateImgSize\"\n\t\t@wheel=\"updateZoom\"\n\t\t@dblclick.prevent=\"onDblclick\"\n\t\t@mousedown.prevent=\"dragStart\">\n</template>\n\n<script>\nimport axios from 'axios'\nimport Vue from 'vue'\nimport AsyncComputed from 'vue-async-computed'\n\nimport Mime from 'Mixins/Mime'\n\nVue.use(AsyncComputed)\n\nexport default {\n\tname: 'Images',\n\tmixins: [\n\t\tMime\n\t],\n\tdata() {\n\t\treturn {\n\t\t\tdragging: false,\n\t\t\tshiftX: 0,\n\t\t\tshiftY: 0,\n\t\t\tzoomRatio: 1\n\t\t}\n\t},\n\tcomputed: {\n\t\tzoomHeight() {\n\t\t\treturn Math.round(this.height * this.zoomRatio)\n\t\t},\n\t\tzoomWidth() {\n\t\t\treturn Math.round(this.width * this.zoomRatio)\n\t\t},\n\n\t\t// prevent images smaller than 100px\n\t\tminHeight() {\n\t\t\treturn this.zoomWidth < 100\n\t\t\t\t? null\n\t\t\t\t: this.zoomHeight + 'px'\n\t\t},\n\t\t// prevent images smaller than 100px\n\t\tminWidth() {\n\t\t\treturn this.zoomHeight < 100\n\t\t\t\t? null\n\t\t\t\t: this.zoomWidth + 'px'\n\t\t}\n\t},\n\tasyncComputed: {\n\t\tdata() {\n\t\t\tswitch (this.mime) {\n\t\t\tcase 'image/svg+xml':\n\t\t\t\treturn this.getBase64FromImage()\n\t\t\tcase 'image/gif':\n\t\t\t\treturn this.davPath\n\t\t\tdefault:\n\t\t\t\treturn this.path\n\t\t\t}\n\t\t}\n\t},\n\twatch: {\n\t\tactive: function(val, old) {\n\t\t\t// the item was hidden before and is now the current view\n\t\t\tif (val === true && old === false) {\n\t\t\t\tthis.resetZoom()\n\t\t\t\t// end the dragging if your mouse go out of the content\n\t\t\t\twindow.addEventListener('mouseout', this.dragEnd)\n\t\t\t// the item is not displayed\n\t\t\t} else if (val === false) {\n\t\t\t\twindow.removeEventListener('mouseout', this.dragEnd)\n\t\t\t}\n\t\t}\n\t},\n\tmethods: {\n\t\t// Updates the dimensions of the modal\n\t\tupdateImgSize() {\n\t\t\tthis.naturalHeight = this.$el.naturalHeight\n\t\t\tthis.naturalWidth = this.$el.naturalWidth\n\n\t\t\tthis.updateHeightWidth()\n\t\t\tthis.doneLoading()\n\t\t},\n\n\t\t/**\n\t\t * Manually retrieve the path and return its base64\n\t\t *\n\t\t * @returns {String}\n\t\t */\n\t\tasync getBase64FromImage() {\n\t\t\tconst file = await axios.get(this.path)\n\t\t\treturn `data:${this.mime};base64,${btoa(file.data)}`\n\t\t},\n\n\t\t/**\n\t\t * Handle zooming\n\t\t *\n\t\t * @param {Event} event the scroll event\n\t\t * @returns {null}\n\t\t */\n\t\tupdateZoom(event) {\n\t\t\tevent.stopPropagation()\n\t\t\tevent.preventDefault()\n\n\t\t\t// scrolling position relative to the image\n\t\t\tconst scrollX = event.clientX - this.$el.x - (this.width * this.zoomRatio / 2)\n\t\t\tconst scrollY = event.clientY - this.$el.y - (this.height * this.zoomRatio / 2)\n\t\t\tconst scrollPercX = Math.round(scrollX / (this.width * this.zoomRatio) * 100) / 100\n\t\t\tconst scrollPercY = Math.round(scrollY / (this.height * this.zoomRatio) * 100) / 100\n\t\t\tconst isZoomIn = event.deltaY < 0\n\n\t\t\tconst newZoomRatio = isZoomIn\n\t\t\t\t? Math.min(this.zoomRatio + 0.1, 5)\t\t// prevent too big zoom\n\t\t\t\t: Math.max(this.zoomRatio - 0.1, 1)\t\t// prevent too small zoom\n\n\t\t\t// do not continue, img is back to its original state\n\t\t\tif (newZoomRatio === 1) {\n\t\t\t\treturn this.resetZoom()\n\t\t\t}\n\n\t\t\t// calc how much the img grow from its current size\n\t\t\t// and adjust the margin accordingly\n\t\t\tconst growX = this.width * newZoomRatio - this.width * this.zoomRatio\n\t\t\tconst growY = this.height * newZoomRatio - this.height * this.zoomRatio\n\n\t\t\t// compensate for existing margins\n\t\t\tthis.disableSwipe()\n\t\t\tthis.shiftX = this.shiftX + Math.round(-scrollPercX * growX)\n\t\t\tthis.shiftY = this.shiftY + Math.round(-scrollPercY * growY)\n\t\t\tthis.zoomRatio = newZoomRatio\n\t\t},\n\n\t\tresetZoom() {\n\t\t\tthis.enableSwipe()\n\t\t\tthis.zoomRatio = 1\n\t\t\tthis.shiftX = 0\n\t\t\tthis.shiftY = 0\n\t\t},\n\n\t\t/**\n\t\t * Dragging handlers\n\t\t *\n\t\t * @param {Event} event the event\n\t\t */\n\t\tdragStart(event) {\n\t\t\tconst { pageX, pageY } = event\n\n\t\t\tthis.dragX = pageX\n\t\t\tthis.dragY = pageY\n\t\t\tthis.dragging = true\n\t\t\tthis.$el.onmouseup = this.dragEnd\n\t\t\tthis.$el.onmousemove = this.dragHandler\n\t\t},\n\t\tdragEnd(event) {\n\t\t\tevent.preventDefault()\n\n\t\t\tthis.dragging = false\n\t\t\tthis.$el.onmouseup = null\n\t\t\tthis.$el.onmousemove = null\n\t\t},\n\t\tdragHandler(event) {\n\t\t\tevent.preventDefault()\n\t\t\tconst { pageX, pageY } = event\n\n\t\t\tif (this.dragging && this.zoomRatio > 1 && pageX > 0 && pageY > 0) {\n\t\t\t\tconst moveX = this.shiftX + (pageX - this.dragX)\n\t\t\t\tconst moveY = this.shiftY + (pageY - this.dragY)\n\t\t\t\tconst growX = this.zoomWidth - this.width\n\t\t\t\tconst growY = this.zoomHeight - this.height\n\n\t\t\t\tthis.shiftX = Math.min(Math.max(moveX, -growX / 2), growX / 2)\n\t\t\t\tthis.shiftY = Math.min(Math.max(moveY, -growY / 2), growX / 2)\n\t\t\t\tthis.dragX = pageX\n\t\t\t\tthis.dragY = pageY\n\t\t\t}\n\t\t},\n\t\tonDblclick() {\n\t\t\tif (this.zoomRatio > 1) {\n\t\t\t\tthis.resetZoom()\n\t\t\t} else {\n\t\t\t\tthis.zoomRatio = 1.3\n\t\t\t}\n\t\t}\n\t}\n}\n</script>\n\n<style scoped lang=\"scss\">\n$checkered-size: 8px;\n$checkered-color: #efefef;\n\nimg {\n\tmax-width: 100%;\n\tmax-height: 100%;\n\talign-self: center;\n\tjustify-self: center;\n\t// black while loading\n\tbackground-color: #000;\n\t// animate zooming/resize\n\ttransition: height 100ms ease,\n\t\twidth 100ms ease,\n\t\tmargin-top 100ms ease,\n\t\tmargin-left 100ms ease;\n\t// show checkered bg on hover if not currently zooming (but ok if zoomed)\n\t&:hover {\n\t\tbackground-image: linear-gradient(45deg, #{$checkered-color} 25%, transparent 25%),\n\t\t\tlinear-gradient(45deg, transparent 75%, #{$checkered-color} 75%),\n\t\t\tlinear-gradient(45deg, transparent 75%, #{$checkered-color} 75%),\n\t\t\tlinear-gradient(45deg, #{$checkered-color} 25%, #fff 25%);\n\t\tbackground-size: 2 * $checkered-size 2 * $checkered-size;\n\t\tbackground-position: 0 0, 0 0, -#{$checkered-size} -#{$checkered-size}, $checkered-size $checkered-size;\n\t}\n\t&.loaded {\n\t\t// white once done loading\n\t\tbackground-color: #fff;\n\t}\n\t&.zoomed {\n\t\tposition: absolute;\n\t\tmax-height: none;\n\t\tmax-width: none;\n\t\tz-index: 10010;\n\t\tcursor: move;\n\t}\n\n\t&.dragging {\n\t\ttransition: none !important;\n\t\tcursor: move;\n\t}\n}\n</style>\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Images.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Images.vue?vue&type=script&lang=js&\"","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nimport Images from 'Components/Images'\n\nexport default {\n\tid: 'images',\n\tgroup: 'media',\n\tmimes: [\n\t\t'image/png',\n\t\t'image/jpeg',\n\t\t'image/gif',\n\t\t'image/x-xbitmap',\n\t\t'image/bmp',\n\t\t'image/svg+xml'\n\t],\n\tcomponent: Images\n}\n","import { render, staticRenderFns } from \"./Images.vue?vue&type=template&id=7891d82c&scoped=true&\"\nimport script from \"./Images.vue?vue&type=script&lang=js&\"\nexport * from \"./Images.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Images.vue?vue&type=style&index=0&id=7891d82c&scoped=true&lang=scss&\"\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 \"7891d82c\",\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('img',{class:{\n\t\tdragging: _vm.dragging,\n\t\tloaded: _vm.loaded,\n\t\tzoomed: _vm.zoomRatio !== 1\n\t},style:({\n\t\theight: _vm.minHeight,\n\t\twidth: _vm.minWidth,\n\t\tmarginTop: _vm.shiftY + 'px',\n\t\tmarginLeft: _vm.shiftX + 'px'\n\t}),attrs:{\"src\":_vm.data},on:{\"load\":_vm.updateImgSize,\"wheel\":_vm.updateZoom,\"dblclick\":function($event){$event.preventDefault();return _vm.onDblclick($event)},\"mousedown\":function($event){$event.preventDefault();return _vm.dragStart($event)}}})}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","<!--\n - @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @author John Molakvoæ <skjnldsv@protonmail.com>\n -\n - @license GNU AGPL version 3 or any later version\n -\n - This program is free software: you can redistribute it and/or modify\n - it under the terms of the GNU Affero General Public License as\n - published by the Free Software Foundation, either version 3 of the\n - License, or (at your option) any later version.\n -\n - This program is distributed in the hope that it will be useful,\n - but WITHOUT ANY WARRANTY; without even the implied warranty of\n - MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n - GNU Affero General Public License for more details.\n -\n - You should have received a copy of the GNU Affero General Public License\n - along with this program. If not, see <http://www.gnu.org/licenses/>.\n -\n -->\n\n<template>\n\t<video\n\t\tv-if=\"path\"\n\t\t:autoplay=\"active\"\n\t\t:controls=\"visibleControls\"\n\t\t:poster=\"livePhotoPath\"\n\t\t:playsinline=\"true\"\n\t\t:preload=\"true\"\n\t\t:src=\"davPath\"\n\t\t:style=\"{\n\t\t\theight: height + 'px',\n\t\t\twidth: width + 'px'\n\t\t}\"\n\t\t@ended=\"donePlaying\"\n\t\t@click.prevent=\"playPause\"\n\t\t@dblclick.prevent=\"toggleFullScreen\"\n\t\t@canplay=\"doneLoading\"\n\t\t@mouseenter=\"showControls\"\n\t\t@mouseleave=\"hideControls\"\n\t\t@loadedmetadata=\"onLoadedMetadata\"\n\t\t@volumechange=\"saveVolume\">\n\n\t\t<!-- Omitting `type` on purpose because most of the\n\t\t\tbrowsers auto detect the appropriate codec.\n\t\t\tHaving it set force the browser to comply to\n\t\t\tthe provided mime instead of detecting a potential\n\t\t\tcompatibility. -->\n\n\t\t{{ t('viewer', 'Your browser does not support the video tag.') }}\n\t</video>\n</template>\n\n<script>\nimport Mime from 'Mixins/Mime'\nimport PreviewUrl from 'Mixins/PreviewUrl'\n\nconst liveExt = ['jpg', 'jpeg', 'png']\n\nexport default {\n\tname: 'Videos',\n\n\tmixins: [Mime, PreviewUrl],\n\n\tdata() {\n\t\treturn {\n\t\t\tvisibleControls: false\n\t\t}\n\t},\n\n\tcomputed: {\n\t\tlivePhoto() {\n\t\t\treturn this.fileList.find(file => {\n\t\t\t\t// if same filename and extension is allowed\n\t\t\t\treturn file.href !== this.davPath\n\t\t\t\t\t&& file.name.startsWith(this.name)\n\t\t\t\t\t&& liveExt.indexOf(file.name.split('.')[1]) > -1\n\t\t\t})\n\t\t},\n\t\tlivePhotoPath() {\n\t\t\treturn this.livePhoto && this.getPreviewIfAny(this.livePhoto)\n\t\t}\n\t},\n\n\twatch: {\n\t\tactive: function(val, old) {\n\t\t\t// the item was hidden before and is now the current view\n\t\t\tif (val === true && old === false) {\n\t\t\t\tthis.$el.play()\n\n\t\t\t// the item was playing before and is now hidden\n\t\t\t} else if (val === false && old === true) {\n\t\t\t\tthis.$el.pause()\n\t\t\t}\n\t\t}\n\t},\n\n\tmethods: {\n\t\t// Updates the dimensions of the modal\n\t\tupdateVideoSize() {\n\t\t\tthis.naturalHeight = this.$el.videoHeight\n\t\t\tthis.naturalWidth = this.$el.videoWidth\n\t\t\tthis.updateHeightWidth()\n\t\t},\n\n\t\t// Show/hide video controls\n\t\tshowControls() {\n\t\t\tthis.visibleControls = true\n\t\t},\n\t\thideControls() {\n\t\t\tthis.visibleControls = false\n\t\t},\n\n\t\t// Toggle play/pause\n\t\tplayPause() {\n\t\t\tif (this.$el.paused) {\n\t\t\t\tthis.$el.play()\n\t\t\t} else {\n\t\t\t\tthis.$el.pause()\n\t\t\t}\n\t\t},\n\n\t\tdonePlaying() {\n\t\t\t// reset and show poster after play\n\t\t\tthis.$el.autoplay = false\n\t\t\tthis.$el.load()\n\t\t},\n\n\t\t// Save video player's volume and mute status\n\t\tsaveVolume() {\n\t\t\tlet videoVolume = {\n\t\t\t\tvolume: this.$el.volume,\n\t\t\t\tmuted: this.$el.muted\n\t\t\t}\n\t\t\t// try to store volume settings in localStorage for persistent storage\n\t\t\ttry {\n\t\t\t\tlocalStorage.viewerVideoVolume = JSON.stringify(videoVolume)\n\t\t\t} catch (e) {\n\t\t\t\t// if localStorage is not available, use the root component as fallback\n\t\t\t\tthis.$root.$data.videoVolume = videoVolume\n\t\t\t}\n\t\t},\n\n\t\t// Restore video player's volume and mute status\n\t\trestoreVolume() {\n\t\t\tlet videoVolume\n\t\t\ttry {\n\t\t\t\t// try to load volume settings from localStorage\n\t\t\t\tif (localStorage.viewerVideoVolume) {\n\t\t\t\t\tvideoVolume = JSON.parse(localStorage.viewerVideoVolume)\n\t\t\t\t}\n\t\t\t} catch (e) {\n\t\t\t\t// if localStorage is not available, try to load from the root component\n\t\t\t\tif (this.videoVolume) {\n\t\t\t\t\tvideoVolume = this.$root.$data.videoVolume\n\t\t\t\t}\n\t\t\t}\n\t\t\tif (videoVolume) {\n\t\t\t\tthis.$el.volume = videoVolume.volume\n\t\t\t\tthis.$el.muted = videoVolume.muted\n\t\t\t}\n\t\t},\n\n\t\tonLoadedMetadata() {\n\t\t\tthis.updateVideoSize()\n\t\t\tthis.restoreVolume()\n\t\t}\n\t}\n}\n</script>\n\n<style scoped>\nvideo {\n\tbackground-color: black;\n\tmax-width: 100%;\n\tmax-height: 100%;\n\talign-self: center;\n\tjustify-self: center;\n}\n</style>\n","import mod from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Videos.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/babel-loader/lib/index.js!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./Videos.vue?vue&type=script&lang=js&\"","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nimport Videos from 'Components/Videos'\n\nexport default {\n\tid: 'videos',\n\tgroup: 'media',\n\tmimes: [\n\t\t'video/mpeg',\n\t\t'video/ogg',\n\t\t'video/webm',\n\t\t'video/mp4',\n\t\t'video/x-m4v',\n\t\t'video/x-flv',\n\t\t'video/quicktime'\n\t],\n\tmimesAliases: {\n\t\t'video/x-matroska': 'video/webm'\n\t},\n\tcomponent: Videos\n}\n","import { render, staticRenderFns } from \"./Videos.vue?vue&type=template&id=6873d5ea&scoped=true&\"\nimport script from \"./Videos.vue?vue&type=script&lang=js&\"\nexport * from \"./Videos.vue?vue&type=script&lang=js&\"\nimport style0 from \"./Videos.vue?vue&type=style&index=0&id=6873d5ea&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 \"6873d5ea\",\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 (_vm.path)?_c('video',{style:({\n\t\theight: _vm.height + 'px',\n\t\twidth: _vm.width + 'px'\n\t}),attrs:{\"autoplay\":_vm.active,\"controls\":_vm.visibleControls,\"poster\":_vm.livePhotoPath,\"playsinline\":true,\"preload\":true,\"src\":_vm.davPath},on:{\"ended\":_vm.donePlaying,\"click\":function($event){$event.preventDefault();return _vm.playPause($event)},\"dblclick\":function($event){$event.preventDefault();return _vm.toggleFullScreen($event)},\"canplay\":_vm.doneLoading,\"mouseenter\":_vm.showControls,\"mouseleave\":_vm.hideControls,\"loadedmetadata\":_vm.onLoadedMetadata,\"volumechange\":_vm.saveVolume}},[_vm._v(\"\\n\\n\\t\"+_vm._s(_vm.t('viewer', 'Your browser does not support the video tag.'))+\"\\n\")]):_vm._e()}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\n\nimport Images from 'Models/images'\nimport Videos from 'Models/videos'\n\nexport default class Viewer {\n\n\t#handlers;\n\n\tconstructor() {\n\t\tthis.#handlers = []\n\n\t\t// ! built-in handlers\n\t\tthis.registerHandler(Images)\n\t\tthis.registerHandler(Videos)\n\n\t\tconsole.debug('OCA.Viewer initialized')\n\t}\n\n\tget availableHandlers() {\n\t\treturn this.#handlers\n\t}\n\n\tregisterHandler(handler) {\n\t\tthis.#handlers.push(handler)\n\t}\n\n}\n","/**\n * @copyright Copyright (c) 2019 John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @author John Molakvoæ <skjnldsv@protonmail.com>\n *\n * @license GNU AGPL version 3 or any later version\n *\n * This program is free software: you can redistribute it and/or modify\n * it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the\n * License, or (at your option) any later version.\n *\n * This program is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the\n * GNU Affero General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with this program. If not, see <http://www.gnu.org/licenses/>.\n *\n */\nimport Vue from 'vue'\nimport ViewerComponent from 'Views/Viewer'\nimport ViewerService from 'Services/Viewer'\n\nimport { generateFilePath } from 'nextcloud-server/dist/router'\n\nVue.prototype.$ = $\n\nVue.prototype.t = t\nVue.prototype.n = n\n\nVue.prototype.OC = OC\nVue.prototype.OCA = OCA\n\n// CSP config for webpack dynamic chunk loading\n// eslint-disable-next-line\n__webpack_nonce__ = btoa(OC.requestToken)\n\n// Correct the root of the app for chunk loading\n// OC.linkTo matches the apps folders\n// OC.generateUrl ensure the index.php (or not)\n// We do not want the index.php since we're loading files\n// eslint-disable-next-line\n__webpack_public_path__ = generateFilePath('viewer', '', 'js/')\n\n// Init Viewer Service\nif (window.OCA) {\n\tObject.assign(window.OCA, { Viewer: new ViewerService() })\n\tOCA.Viewer.version = appVersion\n}\n\n// Create document root\nconst ViewerRoot = document.createElement('div')\nViewerRoot.id = 'viewer'\ndocument.body.appendChild(ViewerRoot)\n\n// Init vue\nexport default new Vue({\n\tel: '#viewer',\n\tname: 'ViewerRoot',\n\trender: h => h(ViewerComponent)\n})\n"],"sourceRoot":""}