{"version":3,"sources":["webpack:///./src/components/Indicadores/components/DescriptionIndicador.vue?ecc7","webpack:///./node_modules/core-js/library/modules/es7.weak-map.of.js","webpack:///./src/components/Indicadores/components/DescriptionIndicador.vue?e8e2","webpack:///./node_modules/leaflet/dist/images/layers.png","webpack:///./node_modules/@babel/runtime-corejs2/core-js/weak-map.js","webpack:///./src/components/Indicadores/components/GraficosIndicador.vue?8b0b","webpack:///./src/components/Indicadores/views/Detalle.vue?9aa5","webpack:///./src/components/Indicadores/views/Detalle.vue?6aba","webpack:///./node_modules/core-js/library/modules/es6.weak-map.js","webpack:///./node_modules/core-js/modules/es6.string.bold.js","webpack:///./node_modules/@babel/runtime-corejs2/core-js/object/create.js","webpack:///./src/components/Indicadores/components/PeriodoIndicador.vue?e55b","webpack:///./src/components/Indicadores/components/HeaderIndicador.vue?0f12","webpack:///src/components/Indicadores/components/HeaderIndicador.vue","webpack:///./src/components/Indicadores/components/HeaderIndicador.vue?3d29","webpack:///./src/components/Indicadores/components/HeaderIndicador.vue","webpack:///./node_modules/leaflet/dist/images/marker-icon.png","webpack:///./src/components/Indicadores/components/HeaderIndicador.vue?10a0","webpack:///./node_modules/leaflet/dist/leaflet.css?89a0","webpack:///./src/components/Indicadores/components/HeaderIndicador.vue?7f9d","webpack:///./src/components/Indicadores/components/PeriodoIndicador.vue?f4ff","webpack:///./src/components/Indicadores/components/HeaderIndicador.vue?4959","webpack:///./src/components/Indicadores/components/DescriptionIndicador.vue?b09c","webpack:///./node_modules/leaflet/dist/images/layers-2x.png","webpack:///./node_modules/core-js/library/modules/_collection-weak.js","webpack:///./node_modules/core-js/library/modules/es6.object.create.js","webpack:///./node_modules/quasar/src/components/toggle/QToggle.js","webpack:///./src/components/Indicadores/views/Detalle.vue?25bb","webpack:///./node_modules/core-js/library/fn/weak-map.js","webpack:///./src/assets/img/leyenda sync ^\\.\\/.*$","webpack:///./src/components/Indicadores/components/PeriodoIndicador.vue?299a","webpack:///./src/components/Indicadores/components/DescriptionIndicador.vue?1915","webpack:///src/components/Indicadores/components/DescriptionIndicador.vue","webpack:///./src/components/Indicadores/components/DescriptionIndicador.vue?7dd0","webpack:///./src/components/Indicadores/components/DescriptionIndicador.vue","webpack:///./src/components/Indicadores/components/PeriodoIndicador.vue?e0f5","webpack:///src/components/Indicadores/components/PeriodoIndicador.vue","webpack:///./src/components/Indicadores/components/PeriodoIndicador.vue?05be","webpack:///./src/components/Indicadores/components/PeriodoIndicador.vue","webpack:///./src/components/Indicadores/components/GraficosIndicador.vue?bf18","webpack:///./src/components/Indicadores/views/Detalle.vue?14f6","webpack:///./src/components/Indicadores/components/GraficosIndicador.vue?d89a","webpack:///./node_modules/quasar/src/components/ajax-bar/QAjaxBar.js","webpack:///./node_modules/quasar/src/components/banner/QBanner.js","webpack:///./node_modules/quasar/src/components/bar/QBar.js","webpack:///./node_modules/quasar/src/components/breadcrumbs/QBreadcrumbs.js","webpack:///./node_modules/quasar/src/components/breadcrumbs/QBreadcrumbsEl.js","webpack:///./node_modules/quasar/src/components/btn-group/QBtnGroup.js","webpack:///./node_modules/quasar/src/components/btn-dropdown/QBtnDropdown.js","webpack:///./node_modules/quasar/src/components/btn-toggle/QBtnToggle.js","webpack:///./node_modules/quasar/src/components/carousel/QCarousel.js","webpack:///./node_modules/quasar/src/components/carousel/QCarouselSlide.js","webpack:///./node_modules/quasar/src/components/carousel/QCarouselControl.js","webpack:///./node_modules/quasar/src/components/chat/QChatMessage.js","webpack:///./node_modules/quasar/src/components/circular-progress/QCircularProgress.js","webpack:///./node_modules/quasar/src/components/slider/slider-utils.js","webpack:///./node_modules/quasar/src/components/slider/QSlider.js","webpack:///./node_modules/quasar/src/components/color/QColor.js","webpack:///./node_modules/quasar/src/components/editor/editor-utils.js","webpack:///./node_modules/quasar/src/components/editor/editor-caret.js","webpack:///./node_modules/quasar/src/utils/extend.js","webpack:///./node_modules/quasar/src/components/editor/QEditor.js","webpack:///./node_modules/quasar/src/mixins/fab.js","webpack:///./node_modules/quasar/src/components/fab/QFab.js","webpack:///./node_modules/quasar/src/components/fab/QFabAction.js","webpack:///./node_modules/quasar/src/components/footer/QFooter.js","webpack:///./node_modules/quasar/src/components/infinite-scroll/QInfiniteScroll.js","webpack:///./node_modules/quasar/src/components/inner-loading/QInnerLoading.js","webpack:///./node_modules/quasar/src/directives/Intersection.js","webpack:///./node_modules/quasar/src/components/intersection/QIntersection.js","webpack:///./node_modules/quasar/src/components/knob/QKnob.js","webpack:///./node_modules/quasar/src/components/no-ssr/QNoSsr.js","webpack:///./node_modules/quasar/src/components/option-group/QOptionGroup.js","webpack:///./node_modules/quasar/src/components/page-sticky/QPageSticky.js","webpack:///./node_modules/quasar/src/components/page-scroller/QPageScroller.js","webpack:///./node_modules/quasar/src/components/pagination/QPagination.js","webpack:///./node_modules/quasar/src/utils/frame-debounce.js","webpack:///./node_modules/quasar/src/components/parallax/QParallax.js","webpack:///./node_modules/quasar/src/utils/clone.js","webpack:///./node_modules/quasar/src/components/popup-edit/QPopupEdit.js","webpack:///./node_modules/quasar/src/components/pull-to-refresh/QPullToRefresh.js","webpack:///./node_modules/quasar/src/components/range/QRange.js","webpack:///./node_modules/quasar/src/components/rating/QRating.js","webpack:///./node_modules/quasar/src/components/responsive/QResponsive.js","webpack:///./node_modules/quasar/src/components/skeleton/QSkeleton.js","webpack:///./node_modules/quasar/src/components/slide-item/QSlideItem.js","webpack:///./node_modules/quasar/src/components/spinner/QSpinnerAudio.js","webpack:///./node_modules/quasar/src/components/spinner/QSpinnerBall.js","webpack:///./node_modules/quasar/src/components/spinner/QSpinnerBars.js","webpack:///./node_modules/quasar/src/components/spinner/QSpinnerBox.js","webpack:///./node_modules/quasar/src/components/spinner/QSpinnerClock.js","webpack:///./node_modules/quasar/src/components/spinner/QSpinnerComment.js","webpack:///./node_modules/quasar/src/components/spinner/QSpinnerCube.js","webpack:///./node_modules/quasar/src/components/spinner/QSpinnerDots.js","webpack:///./node_modules/quasar/src/components/spinner/QSpinnerFacebook.js","webpack:///./node_modules/quasar/src/components/spinner/QSpinnerGears.js","webpack:///./node_modules/quasar/src/components/spinner/QSpinnerGrid.js","webpack:///./node_modules/quasar/src/components/spinner/QSpinnerHearts.js","webpack:///./node_modules/quasar/src/components/spinner/QSpinnerHourglass.js","webpack:///./node_modules/quasar/src/components/spinner/QSpinnerInfinity.js","webpack:///./node_modules/quasar/src/components/spinner/QSpinnerIos.js","webpack:///./node_modules/quasar/src/components/spinner/QSpinnerOrbit.js","webpack:///./node_modules/quasar/src/components/spinner/QSpinnerOval.js","webpack:///./node_modules/quasar/src/components/spinner/QSpinnerPie.js","webpack:///./node_modules/quasar/src/components/spinner/QSpinnerPuff.js","webpack:///./node_modules/quasar/src/components/spinner/QSpinnerRadio.js","webpack:///./node_modules/quasar/src/components/spinner/QSpinnerRings.js","webpack:///./node_modules/quasar/src/components/spinner/QSpinnerTail.js","webpack:///./node_modules/quasar/src/components/splitter/QSplitter.js","webpack:///./node_modules/quasar/src/utils/router.js","webpack:///./node_modules/quasar/src/components/tabs/QRouteTab.js","webpack:///./node_modules/quasar/src/components/time/QTime.js","webpack:///./node_modules/quasar/src/components/timeline/QTimeline.js","webpack:///./node_modules/quasar/src/components/timeline/QTimelineEntry.js","webpack:///./node_modules/quasar/src/components/tree/QTree.js","webpack:///./node_modules/quasar/src/components/uploader/QUploaderBase.js","webpack:///./node_modules/quasar/src/components/uploader/uploader-xhr-mixin.js","webpack:///./node_modules/quasar/src/components/uploader/QUploader.js","webpack:///./node_modules/quasar/src/components/uploader/QUploaderAddTrigger.js","webpack:///./node_modules/quasar/src/components/video/QVideo.js","webpack:///./node_modules/quasar/src/directives/GoBack.js","webpack:///./node_modules/quasar/src/utils/morph.js","webpack:///./node_modules/quasar/src/directives/Morph.js","webpack:///./node_modules/quasar/src/directives/Mutation.js","webpack:///./node_modules/quasar/src/directives/ScrollFire.js","webpack:///./node_modules/quasar/src/directives/Scroll.js","webpack:///./node_modules/quasar/src/directives/TouchHold.js","webpack:///./node_modules/quasar/src/directives/TouchRepeat.js","webpack:///./node_modules/quasar/src/plugins/AddressbarColor.js","webpack:///./node_modules/quasar/src/plugins/AppFullscreen.js","webpack:///./node_modules/quasar/src/utils/global-dialog.js","webpack:///./node_modules/quasar/src/plugins/AppVisibility.js","webpack:///./node_modules/quasar/src/components/dialog-bottom-sheet/BottomSheet.js","webpack:///./node_modules/quasar/src/plugins/Meta.js","webpack:///./node_modules/quasar/src/plugins/BottomSheet.js","webpack:///./node_modules/quasar/src/components/dialog-plugin/DialogPlugin.js","webpack:///./node_modules/quasar/src/plugins/Dialog.js","webpack:///./node_modules/quasar/src/plugins/LoadingBar.js","webpack:///./node_modules/quasar/src/plugins/LocalStorage.js","webpack:///./node_modules/quasar/src/index.esm.js","webpack:///./node_modules/quasar/src/utils/open-url.js","webpack:///./node_modules/quasar-ui-plataforma-component-vue-library/dist/index.esm.js","webpack:///src/components/Indicadores/components/GraficosIndicador.vue","webpack:///./src/components/Indicadores/components/GraficosIndicador.vue?5c20","webpack:///./src/components/Indicadores/components/GraficosIndicador.vue","webpack:///src/components/Indicadores/views/Detalle.vue","webpack:///./src/components/Indicadores/views/Detalle.vue?760c","webpack:///./src/components/Indicadores/views/Detalle.vue","webpack:///./node_modules/leaflet/dist/leaflet.css","webpack:///./node_modules/core-js/library/fn/object/create.js","webpack:///./node_modules/leaflet/dist/leaflet-src.js","webpack:///./src/components/Indicadores/components/GraficosIndicador.vue?507b","webpack:///./node_modules/core-js/library/modules/es7.weak-map.from.js"],"names":["content","module","i","locals","exports","add","default","InternalMap","global","each","redefine","meta","assign","weak","isObject","validate","NATIVE_WEAK_MAP","IS_IE11","ActiveXObject","WEAK_MAP","getWeak","isExtensible","Object","uncaughtFrozenStore","ufstore","wrapper","get","this","arguments","length","undefined","methods","key","data","_i","set","value","def","$WeakMap","getConstructor","prototype","NEED","proto","method","a","b","_f","result","call","createHTML","render","_vm","_h","$createElement","_c","_self","staticClass","_v","_s","dataIndicador","name","_l","objectAUE","img","attrs","prefix","prefixEspecifico","nameEspecifico","_e","objectODS","imgIndice","imgDefault","staticRenderFns","components","QImg","QAvatar","mixins","Message","props","type","String","arrayODS","arrayAUE","imgIndicesTematicos","created","refillData","watch","fillODSorAUE","hasOwnProperty","fillIndicesTematicos","objetivos","forEach","objetivo","idIndice","Const","fillArrayAue","positionSpaceName","objetivoEspecifico","indexOf","nameEspecificoWithOutNumber","substring","push","searchResource","file","url","indicesTematicos","indiceTematico","component","___CSS_LOADER_API_IMPORT___","redefineAll","anObject","anInstance","forOf","createArrayMethod","$has","arrayFind","arrayFindIndex","id","that","UncaughtFrozenStore","findUncaughtFrozen","store","it","entry","has","index","splice","NAME","IS_MAP","ADDER","C","iterable","_t","$export","S","create","Vue","extend","CheckboxMixin","icon","iconColor","computed","computedIcon","isTrue","checkedIcon","isIndeterminate","indeterminateIcon","uncheckedIcon","computedIconColor","__getInner","h","QIcon","color","WeakMap","map","webpackContext","req","webpackContextResolve","__webpack_require__","o","e","Error","code","keys","resolve","descripcion","beneficio","formula","periodicidad","fuente","aclaraciones","descripcionDelIndicador","ref","$v","dateInicio","$error","val","validateFechaIni","dateFin","responsiveSize","scopedSlots","_u","fn","model","callback","$$v","expression","directives","rawName","proxy","validateFechaFin","buttonDisabled","on","$event","filterDataIndicadores","QPopupProxy","QForm","validations","Loading","fillFechas","window","innerWidth","$refs","form","then","success","style","isCiudadano","goBack","ciudadSelected","printPdf","acciones","datosGraficaMunicipal","valoresGrafica","class","arrayRasters","coords","arrayRastersFiltered","wk","urlGeoServer","arrayDatesToMapFiltered","datesToMapFormated","geoJsonData","updateHistoryZoneSelected","item","checkSomeItemWithNombre","nombre","image","indicador","datosObjetivo","getDataZona","idMunicipio","zona","formatNameZona","toUpperCase","ultimoValor","parseFloat","toFixed","unidadMedidaIndicador","aceptar","showDialog","slot","msgDialog","xhr","isSSR","XMLHttpRequest","open","positionValues","stack","highjackCount","translate","p","pos","active","horiz","reverse","dir","x","y","transform","inc","amount","Math","random","between","highjackAjax","stackEntry","_","stopStack","loadStart","hijackFilter","getHijackFilter","start","stop","loadEnd","addEventListener","once","apply","restoreAjax","filter","max","position","validator","includes","size","Boolean","skipHijack","Function","calls","progress","onScreen","animate","classes","horizontal","$q","lang","rtl","sizeProp","opacity","role","ariaHidden","speed","oldSpeed","newSpeed","__work","clearTimeout","timer","$emit","setTimeout","increment","end","mounted","hijacked","beforeDestroy","ListenersMixin","DarkMixin","inlineActions","dense","rounded","actions","child","isDark","qListeners","disabledValues","AlignMixin","separator","separatorColor","activeColor","gutter","v","alignClass","sepClass","activeClass","nodes","els","len","c","tag","endsWith","$scopedSlots","comp","middle","disabled","componentOptions","propsData","disable","cls","RouterLinkMixin","label","iconClass","renderData","linkProps","hasRouterLink","beforeCreate","fallbackTag","linkTag","mergeSlot","mixin","unelevated","outline","flat","stretch","glossy","spread","t","join","BtnMixin","AttrsMixin","inheritAttrs","split","dropdownIcon","contentClass","Array","contentStyle","cover","persistent","noRouteDismiss","autoClose","menuAnchor","menuSelf","menuOffset","disableMainBtn","disableDropdown","noIconAnimation","showing","menu","hide","Arrow","iconSet","arrow","dropdown","QMenu","fit","anchor","self","offset","separateClosePopup","cache","show","QBtn","$props","noWrap","round","qAttrs","click","concat","Btn","iconRight","QBtnGroup","textColor","ripple","toggle","evt","RippleMixin","FormMixin","required","options","every","opt","toggleColor","toggleTextColor","padding","noCaps","readonly","clearable","hasActiveValue","find","formAttrs","btnOptions","mergeOption","__set","__injectFormInput","PanelParentMixin","FullscreenMixin","height","controlType","controlColor","controlTextColor","autoplay","Number","arrows","prevIcon","nextIcon","navigation","navigationPosition","navigationIcon","navigationActiveIcon","thumbnails","inFullscreen","direction","vertical","navigationPositionComputed","arrowIcons","ico","carousel","navIcon","navActiveIcon","controlProps","transitionPrevComputed","transitionPrev","transitionNextComputed","transitionNext","clearInterval","__startTimer","duration","isNumber","next","previous","abs","__getNavigationContainer","mapping","__getEnabledPanels","__getContent","node","opts","btnProps","onClick","maxIndex","panels","panel","panelIndex","goTo","slide","src","imgSrc","infinite","__renderPanels","panelDirectives","__getPanelContent","PanelChildMixin","backgroundImage","margin","sent","bgColor","avatar","text","stamp","labelSanitize","nameSanitize","textSanitize","stampSanitize","textClass","op","messageClass","containerClass","sizeClass","__wrapStamp","domPropStamp","domProps","__getText","contentList","withSlots","domPropText","some","msg","container","radius","diameter","circumference","PI","strokeDashArray","SizeMixin","min","centerColor","trackColor","fontSize","thickness","angle","indeterminate","showValue","instantFeedback","normalizedValue","svgStyle","circleStyle","transition","viewBox","viewBoxAttr","strokeDashOffset","strokeWidth","__getCircle","fill","stroke","cx","cy","r","svgChild","focusable","sizeStyle","mergeSlotSafely","markerPrefixClass","defaultMarkerConvertFn","keyCodes","SliderMixin","TouchPan","innerMin","innerMax","step","snap","hideSelection","markerLabelsClass","labelColor","labelTextColor","labelAlways","switchLabelSide","markers","markerLabels","switchMarkerLabelsSide","trackImg","innerTrackImg","innerTrackColor","selectionColor","selectionImg","thumbSize","trackSize","tabindex","thumbColor","thumbPath","preventFocus","focus","dragging","axis","labelSide","isReversed","computedInnerMin","__getInnerMin","computedInnerMax","__getInnerMax","editable","computedDecimals","trim","computedStep","computedTabindex","trackLen","innerBarLen","innerMinRatio","__convertModelToRatio","innerMaxRatio","positionProp","thicknessProp","orientation","attributes","acc","selectionBarClass","markerClass","__getAxisClass","trackContainerClass","pinClass","__getPositionClass","labelClass","textContainerClass","markerLabelsContainerClass","trackClass","trackStyle","innerBarClass","innerBarStyle","markerStep","markerTicks","markerLabelClass","markerLabelsList","__getMarkerList","__getMarkerLabelStyle","markerScope","markerList","markerMap","markerLabelsMap","getStyle","markerStyle","backgroundSize","panDirectives","__onPan","modifiers","isNaN","__convertRatioToModel","ratio","modulo","__getDraggingRatio","top","left","width","filterFn","__getMarkerLabelsContent","marker","event","isFinal","__updatePosition","touch","__updateValue","isFirst","__getDragging","__onBlur","__onActivate","document","__onDeactivate","removeEventListener","__onMobileClick","__onKeyup","keyCode","__getTextContainerStyle","__getThumb","thumb","thumbContent","d","pinColor","minWidth","textContainerStyle","nodeData","injectThumb","trackContent","selectionBarStyle","trackContainerAttrs","trackContainerEvents","action","labelValue","curRatio","modelRatio","thumbLabel","thumbClasses","thumbStyle","thumbPinColor","thumbTextContainerStyle","thumbTextClass","platform","is","mobile","mousedown","__onFocus","blur","keydown","__onKeydown","keyup","modelUpdate","change","$el","getBoundingClientRect","stopAndPrevent","palette","alphaTrackImg","defaultValue","defaultView","formatModel","noHeader","noHeaderTabs","noFooter","square","bordered","topView","startsWith","view","__parseModel","hex","forceHex","forceAlpha","isHex","isOutputHex","hasAlpha","currentBgColor","backgroundColor","rgb","headerClass","light","luminosity","spectrumStyle","background","spectrumPointerStyle","s","computedPalette","__spectrumChange","throttle","unshift","__getHeader","__getFooter","QTabs","align","input","QTab","__updateErrorIcon","__onEditorChange","$forceUpdate","negative","QTabPanels","animated","QTabPanel","__getSpectrumTab","__getTuneTab","__getPaletteTab","colorPicker","spectrum","tune","__spectrumClick","__activate","prevent","mouse","__spectrumPan","paddingBottom","QSlider","__onHueChange","__onNumericChange","inputmode","maxlength","dark","target","g","__onPalettePick","__onSpectrumChange","clientWidth","clientHeight","rect","hsvToRgb","__update","test","floor","hsv","rgbToHsv","selectionEnd","$nextTick","setSelectionRange","inp","hexToRgb","n","rgbToHex","rgbToString","errorIcon","testPattern","anyColor","replace","textToRgb","pageX","pageXOffset","pageY","pageYOffset","run","btn","vm","handler","caret","runCmd","cmd","param","__getGroup","children","getBtn","clickHandler","toggled","events","tip","desktop","Key","fromCharCode","QTooltip","delay","innerHTML","buttonProps","toolbarToggleColor","toolbarColor","toolbarPush","toolbarTextColor","getDropdown","Items","onlyIcons","list","closeDropdown","Dropdown","componentInstance","toolbarBackgroundClass","inactiveClass","noIcons","htmlTip","QItem","clickable","restore","QItemSection","side","QList","highlight","QBtnDropdown","fixedLabel","fixedIcon","getToolbar","buttons","f","isViewingSource","fb","group","getFonts","defaultFont","defaultFontLabel","defaultFontIcon","fonts","aliases","default_font","alias","getLinkEditor","ie11","link","editLinkUrl","updateLink","execCommand","__onInput","editor","shouldIgnoreKey","remove","update","getBlockElement","el","parent","nodeName","toLowerCase","getComputedStyle","currentStyle","display","parentNode","isChildOf","orSame","body","contains","createRange","chars","range","selectNode","setStart","count","setEnd","nodeType","Node","TEXT_NODE","textContent","lp","childNodes","urlRegex","Caret","_range","sel","getSelection","startContainer","startOffset","endContainer","endOffset","removeAllRanges","addRange","selectAllChildren","collapseToEnd","charCount","selection","parentEl","focusNode","focusOffset","previousSibling","savedPos","collapse","spanLevel","blockParent","recursive","hasParents","hasParent","queryCommandValue","res","state","queryCommandState","attrib","getAttribute","done","noop","win","write","title","print","close","getParentAttribute","selectWord","toString","cloneContents","querySelector","save","getRangeAt","selectNodeContents","toggleFullscreen","__setContent","isCollapsed","modify","anchorNode","anchorOffset","collapsed","detach","endNode","rangeCount","ELEMENT_NODE","hasOwn","class2type","obj","isPlainObject","constructor","copy","copyIsArray","clone","deep","minHeight","maxHeight","definitions","placeholder","toolbar","toolbarBg","toolbarOutline","toolbarRounded","paragraphTag","hasToolbar","buttonDef","bold","italic","strike","strikethrough","underline","unordered","unorderedList","ordered","orderedList","subscript","superscript","can","hyperlink","fullscreen","viewsource","viewSource","quote","center","right","justify","outdent","indent","removeFormat","hr","undo","redo","h1","heading1","heading","h2","heading2","h3","heading3","h4","heading4","h5","heading5","h6","heading6","paragraph","size1","size2","size3","size4","size5","size6","size7","userDef","font","token","k","innerStyle","innerClass","col","onEditor","focusin","__onFocusin","focusout","__onFocusout","lastEmit","innerText","ctrlKey","refreshToolbar","ie","__onClick","scrollTop","scrollHeight","__offsetBottom","relatedTarget","prop","restorePosition","savePosition","__onMousedown","__onMouseup","mouseup","__onTouchstart","__onTouchend","touchend","edge","addFocusFn","preventScroll","getContentEl","fontFamily","toolbars","bars","touchstart","contenteditable","labelPositions","labelPosition","externalLabel","hideLabel","labelStyle","formClass","stacked","labelProps","directions","alignValues","FabMixin","ModelToggleMixin","provide","__qFab","activeIcon","hideIcon","verticalActionsAlign","hideOnRouteChange","actionsClasses","iconHolderClasses","slotScope","opened","__onChildClick","trigger","__getIcon","kebab","camel","slotFn","fab","anchorMap","anchorValues","to","inject","onEvents","isDisabled","fabMini","layout","console","error","reveal","elevated","heightHint","revealed","windowHeight","onSSR","innerHeight","__updateLocal","__animate","__updateRevealed","fixed","ios","containerHeight","scroll","hidden","revealOnFocus","rows","bottom","css","space","QResizeObserver","debounce","resize","__onResize","instances","footer","inflexionPosition","passive","listenOpts","scrollTarget","initialIndex","isFetching","isWorking","resume","immediatePoll","updateScrollTarget","__setDebounce","poll","getScrollHeight","__scrollTarget","scrollPosition","getScrollPosition","heightBefore","heightAfter","heightDifference","setScrollPosition","closest","reset","cancel","getScrollTarget","setIndex","oldPoll","activated","__scrollPosition","deactivated","uniqueSlot","TransitionMixin","labelClasses","QSpinner","appear","defaultCfg","threshold","root","rootMargin","ctx","cfg","changed","isDeepEqual","observer","unobserve","IntersectionObserver","rootBounds","__vue__","_inactive","observe","isIntersecting","destroy","__qvisible","inserted","__qvisible_destroyed","binding","unbind","TagMixin","Intersection","ssrPrerender","__trigger","visibility","QCircularProgress","decimals","computedInstantFeedback","__click","__keydown","__keyup","__updateCenterPosition","centerPosition","__pan","distance","sqrt","asin","normalizeToInterval","__getNameInput","internal","CanRenderMixin","canRender","radio","QRadio","checkbox","QCheckbox","QToggle","typeValues","keepColor","leftLabel","inline","slice","isArray","expand","attach","header","posX","posY","QPageSticky","scrollOffset","__isVisible","screen","__updateVisibility","heightWatcher","$watch","__cleanup","immediate","newVal","activeTextColor","inputStyle","inputClass","iconPrev","iconNext","iconFirst","iconLast","toFn","boundaryLinks","boundaryNumbers","directionLinks","ellipses","maxPages","newPage","inputPlaceholder","__boundaryLinks","__getBool","__boundaryNumbers","__directionLinks","__ellipses","icons","pagination","first","prev","last","activeBtnProps","setByOffset","otherwise","__getBtn","page","contentStart","contentEnd","contentMiddle","QInput","borderless","isKeyCode","pgFrom","pgTo","ellipsesStart","ellipsesEnd","boundaryStart","boundaryEnd","frame","callArgs","wait","debounced","requestAnimationFrame","cancelAnimationFrame","scrolling","percentScrolled","working","__updatePos","__stop","__start","percentage","containerTop","containerBottom","percent","__setPos","mediaHeight","media","naturalHeight","videoHeight","__resizeHandler","frameDebounce","mediaParent","onload","onloadstart","loadedmetadata","entries","disconnect","cloneDeep","hash","Date","RegExp","source","flags","valueOf","labelSet","labelCancel","autoSave","modelChanged","modelValue","initialValue","defaultSlotScope","updatePosition","__reposition","emitValue","__changeModel","menuProps","__hasChanged","__close","validated","watcher","PULLER_HEIGHT","OFFSET_TOP","noMouse","pullRatio","pulling","pullPosition","animating","positionCSS","down","mightPrevent","__pull","__animateTo","getPropertyValue","pullToRefresh","dragType","MIN","RANGE","MAX","dragRange","dragOnlyRange","leftLabelColor","leftLabelTextColor","rightLabelColor","rightLabelTextColor","leftLabelValue","rightLabelValue","leftThumbColor","rightThumbColor","curMinRatio","curMaxRatio","modelMinRatio","modelMaxRatio","ratioMin","ratioMax","thumbAttrs","thumbMinEvents","__getEvents","thumbMaxEvents","thumbMinLabel","thumbMaxLabel","thumbMinClasses","thumbMaxClasses","thumbMinStyle","thumbMaxStyle","thumbMinPinColor","thumbMaxPinColor","thumbMinTextContainerStyle","thumbMaxTextContainerStyle","thumbMinTextClass","thumbMaxTextClass","sensitivity","minThumb","offsetHeight","offsetWidth","valueMin","valueMax","offsetRatio","offsetModel","rangeValue","rangeRatio","localModel","minR","maxR","ratioDelta","modelDelta","stepVal","interval","which","iconHalf","iconSelected","colorHalf","colorSelected","noReset","noDimming","mouseModel","iconData","iconLen","selIconLen","halfIconLen","colorLen","selColorLen","halfColorLen","selIcon","halfIcon","selColor","halfColor","stars","ceil","halfIndex","half","exSelected","rating","__setHoverValue","mouseover","mouseout","RatioMixin","ratioStyle","skeletonTypes","skeletonAnimations","animation","slotsDef","leftColor","rightColor","topColor","bottomColor","langDir","__emitSlide","__showing","isReset","dist","__dir","__size","__scale","classList","__axis","slots","up","dirs","cacheWithFn","cSize","unit","limits","emitImmediately","beforeClass","afterClass","separatorClass","separatorStyle","__normalize","computedLimits","Infinity","styles","__getCSSValue","separatorDirectives","__maxValue","__value","__multiplier","__normalized","before","after","trailingSlashRE","equals","current","isSameRoute","path","query","params","isIncludedRoute","__activateRoute","__recalculateScroll","$route","__checkActivation","routerTabLinkProps","custom","keyboard","shiftKey","altKey","metaKey","go","append","$router","route","checkFn","err","navigate","blurTarget","selected","href","location","redirected","redirectedFrom","isSameRouteCheck","checkFunction","exact","priorityMatched","matched","priorityHref","isActive","__renderTab","DateTimeMixin","mask","format24h","defaultDate","hourOptions","minuteOptions","secondOptions","withSeconds","nowBtn","__splitDate","__getMask","__getLocale","calendar","__getDefaultDateModel","hour","minute","second","isAM","innerModel","computedMask","computedLocale","defaultDateModel","dateHash","timeHash","landscape","stringModel","time","computedFormat24h","pad","date","pointerStyle","forHour","divider","degrees","minLink","secLink","hourInSelection","minuteInSelection","secondInSelection","validHours","am","__getValidValues","pm","values","validMinutes","validSeconds","viewValidOptions","positions","actualVal","setNow","__getCurrentDate","__getCurrentTime","testFn","__getWheelDist","diff","__getNormalizedClockValue","findIndex","__getDayHash","__shouldAbortInteraction","__updateClock","__getClockRect","__goToNextView","_isBeingDestroyed","_isDestroyed","clock","__drag","draggingClockRect","dragCache","clockRect","cacheVal","pow","__onKeyupHour","payload","__setHour","wrap","__onKeyupMinute","__setMinute","__onKeyupSecond","seconds","__setSecond","__setAm","__setPm","__getClock","datetime","now","__verifyAndUpdate","formatDate","year","month","day","millisecond","timezoneOffset","__timeline","subtitle","colorClass","dot","tickStrategyOptions","nodeKey","labelKey","childrenKey","selectedColor","tickStrategy","ticked","expanded","noSelectionUnset","defaultExpandAll","accordion","filterMethod","filt","noConnectors","noNodesLabel","noResultsLabel","hasSelection","tree","computedControlColor","textColorClass","selectedColorClass","travel","isParent","isLeaf","selectable","expandable","hasTicking","strictTicking","leafFilteredTicking","leafTicking","tickable","lazy","m","matchesFilter","innerExpanded","noTick","innerTicked","reduce","indeterminateNextState","getNodeByKey","getTickedNodes","getExpandedNodes","isExpanded","collapseAll","expandAll","setExpanded","$set","__setExpanded","fail","$delete","emit","isTicked","setTicked","__getSlotScope","scope","configurable","enumerable","__getChildren","__getNode","__getNodeMedia","keypress","__onExpandClick","__onTickedClick","QSlideTransition","__blur","noResults","noNodes","FileMixin","noThumbnails","autoUpload","hideUploadBtn","__qUploaderGetInput","__getInputControl","files","queuedFiles","uploadedFiles","dnd","uploadSize","uploadedSize","isUploading","oldVal","canUpload","isBusy","canAddFiles","multiple","maxFiles","maxFilesNumber","maxTotalSize","maxTotalSizeNumber","uploadProgress","uploadProgressLabel","__getProgressLabel","uploadedSizeLabel","humanStorageSize","uploadSizeLabel","abort","__revokeImgURLs","removeUploadedFiles","__removeFiles","removeQueuedFiles","statusList","cb","removed","__status","__img","URL","revokeObjectURL","removeFile","__key","__abort","__getFileInput","getElementsByClassName","__updateFile","status","__uploaded","__progress","__sizeLabel","__progressLabel","__addFiles","fileList","localFiles","__processFiles","fileInput","Image","createObjectURL","upload","uploader","pickFiles","accept","capture","__getList","__getDnd","dragover","__onDragOver","dragleave","__onDragLeave","getFn","fieldName","headers","formFields","withCredentials","sendRaw","batch","factory","xhrs","promises","workingThreads","xhrProps","abortPromises","queue","__runFactory","catch","failed","__uploadFiles","FormData","getProp","arg","fields","field","aborted","uploadIndex","uploadIndexSize","maxUploadSize","loaded","uploaded","onreadystatechange","readyState","head","setRequestHeader","send","Blob","QUploaderBase","UploaderXHRMixin","fetchpriority","loading","referrerpolicy","iframeData","frameborder","allowfullscreen","__qgoback","goBackKey","bind","vnode","__qgoback_destroyed","history","single","router","context","client","nativeMobile","oldValue","offsetBase","getAbsolutePosition","createElement","cssText","appendChild","boundingRect","baseRect","marginLeft","marginRight","marginTop","marginBottom","marginH","marginV","widthM","heightM","getAbsoluteSize","scrollWidth","styleEdges","styleBorderRadiuses","reStyleSkipKey","reStyleSkipRule","styleLen","suffix","j","subProp","val1","val2","zIndexPositions","getMaxZIndex","elStart","zIndex","zIndexNum","normalizeElements","from","normalizeOptions","onEnd","waitFor","easing","useCSS","hideFromClone","keepToClone","tween","tweenFromOpacity","tweenToOpacity","isValidElement","element","ownerDocument","morph","_options","cancelStatus","endElementTo","elements","elFrom","getElement","qMorphCancel","animationFromClone","animationFromTween","animationToClone","animationTo","elFromParent","elFromNext","nextElementSibling","elFromPosition","elFromParentWidthBefore","elFromParentHeightBefore","elFromBorderWidth","borderWidth","elFromBorderStyle","borderStyle","elFromBorderColor","borderColor","elFromBorderRadius","borderRadius","elFromBackground","elFromTransform","elFromPositioningType","elFromCssText","elFromClassSaved","elFromStyleSaved","elFromClone","cloneNode","elFromTween","className","setAttribute","pointerEvents","insertBefore","calculateFinalState","elTo","elFromParentWidthAfter","elFromParentHeightAfter","elToParentWidthBefore","elToParentHeightBefore","elToParent","elToParentWidthAfter","elToParentHeightAfter","elToClone","elToNext","elToBorderWidth","elToBorderStyle","elToBorderColor","elToBorderRadius","elToBackground","elToTransform","elToPositioningType","elToCssText","elToClassSaved","elToStyleSaved","elToPosition","deltaX","deltaY","scaleX","scaleY","elFromParentWidthDiff","elFromParentHeightDiff","elToParentWidthDiff","elToParentHeightDiff","elFromCloneWidth","elFromCloneHeight","elToCloneWidth","elToCloneHeight","elSharedSize","elToNeedsFixedPosition","flex","maxWidth","elFromZIndex","elToZIndex","documentScroll","documentElement","scrollLeft","overflow","overflowX","overflowY","commonCleanup","resizeFrom","resizeTo","resizeFromTween","resizeToTween","tweenFrom","tweenTo","transformOrigin","cleanup","qAnimId","keyframesFromTween","keyframesFrom","keyframeToStart","keyframesTo","animationDirection","animationName","delayPromise","endFn","ev","onToggle","morphGroups","mods","changeClass","clsAction","cancelFn","shift","updateModifiers","mod","insertArgs","updateArgs","updateModel","updateValue","__qmorph","__qmorph_destroyed","childList","subtree","characterData","attributeOldValue","characterDataOldValue","MutationObserver","__qmutation","__qmutation_destroyed","__qscrollfire","__qscrollfire_destroyed","elBottom","__qscroll","__qscroll_destroyed","getVerticalScrollPosition","getHorizontalScrollPosition","__qtouchhold","cleanEvt","styleCleanup","__qtouchhold_destroyed","mouseStart","leftClick","addEvt","touchStart","mouseEvent","origin","startTime","clearSelection","withDelay","triggered","mouseSensitivity","touchSensitivity","move","mouseCapture","esc","tab","enter","keyRegex","shouldEnd","__qtouchrepeat","metaValue","__qtouchrepeat_destroyed","durations","durationsLast","keyboardStart","keyboardEvent","cursor","repeatCount","keyCapture","Platform","winphone","safari","getMetaTag","getElementsByTagName","setColor","hexColor","metaTag","newTag","install","webkit","vivaldi","getBrand","StatusBar","backgroundColorByHexString","addressbarColor","prefixes","promisify","reject","checkActive","plugin","activeEl","fullscreenElement","mozFullScreenElement","webkitFullscreenElement","msFullscreenElement","appRoot","isCapable","request","q","exit","__getErr","util","defineReactive","appVisible","msHidden","webkitHidden","message","grid","cardClass","cardStyle","dialogProps","dialog","onOk","__getGrid","QSeparator","spaced","QCardSection","QDialog","QCard","ssrAPI","okCancel","merge","getDialogParent","elRoot","getElementById","$root","updateId","ssrTakeover","DefaultComponent","klass","DialogComponent","isCustom","okFns","cancelFns","API","onCancel","onDismiss","emittedOK","ok","$destroy","bottomSheet","globalDialog","BottomSheet","prompt","html","stackButtons","spinner","vmColor","hasForm","okLabel","cancelLabel","okDisabled","isValid","okProps","cancelProps","getPrompt","stackLabel","outlined","filled","standout","counter","autofocus","getOptions","QOptionGroup","items","getButtons","QCardActions","getData","getSection","DialogPlugin","setDefaults","loadingBar","bar","devtools","_routerRoot","QAjaxBar","$mount","$parent","normalize","titleTemplate","metaType","metaProp","metaLink","template","old","bodyFilter","htmlFilter","other","cur","htmlAttr","removeAttribute","bodyAttr","att","parseMeta","hasMeta","__qMeta","$options","stopPropagation","$children","updateClient","__currentMeta","__Q_META__","script","getAttr","seed","getHead","output","getServerMeta","app","noscript","nonce","tokens","triggerMeta","__qMetaUpdate","queues","$getMetaHTML","server","ssr","Q_HTML_ATTRS","Q_HEAD_TAGS","Q_BODY_ATTRS","Q_BODY_TAGS","fromSSR","__qMetaUnwatch","beforeMount","destroyed","storage","webStorage","getEmptyStorage","getStorage","localStorage","VuePlugin","plugins","modalPassword","userInfo","normalizeComponent","A","l","_compiled","functional","_scopeId","$vnode","ssrContext","__VUE_SSR_CONTEXT__","_registeredComponents","_ssrRegister","shadowRoot","isOldIE","navigator","userAgent","createInjector","addStyle","HEAD","ids","Set","sources","btoa","unescape","encodeURIComponent","JSON","stringify","styleSheet","createTextNode","removeChild","__vue_script__","__vue_render__","isLoggedIn","fullName","userMail","_changePassword","_logout","__vue_staticRenderFns__","__vue_inject_styles__","__vue_scope_id__","__vue_component__","script$1","isOpen","menuContentStyle","navigationMenu","isVisible","enabled","__vue_script__$1","__vue_render__$1","_getLink","__vue_staticRenderFns__$1","__vue_inject_styles__$1","__vue_component__$1","script$2","QToolbar","QToolbarTitle","UserMenu","NavigationMenu","_getMenu","__vue_script__$2","__vue_render__$2","staticStyle","__vue_staticRenderFns__$2","__vue_inject_styles__$2","script$3","QRange","keyConfig","showLayerSelector","showLayers","showGeoCoding","showZoomControl","showSearch","rasters","rangeTimeLineArray","positionRange","timeLineCollapse","maxWidthItems","playInterval","rangeTimeLine","positionRaster","timeLine","rangeTimeLineArrayLabels","rangeTimeLineArrayLabelsTotal","keyLayer","layers","showInputSearch","searchText","wms","mapDiv","playActive","parseInt","setParams","setInterval","rechargeTimeLine","goNext","zoom","zoomControl","showCoords","DomUtil","DomEvent","disableClickPropagation","_selectLayers","control","addTo","addLayerToMap","tileLayer","endPoint","drawnSearcher","showRasterLayer","showGeoJson","latLng","maximumLatitude","maximumLongitude","minimumLatitude","minimumLongitude","fitBounds","format","version","transparent","tiled","geoJSON","fillOpacity","weight","onEachFeature","bindTooltip","properties","setStyle","bringToFront","bringToBack","feature","log","setView","latlng","lat","lng","layer","zone_id","Control","Searcher","onAdd","layerGroup","addLayer","addBaseLayer","_getLayers","tileSize","zoomOffset","minZoom","attribution","crossOrigin","onResizeRangeTimeLine","setupLeafletMap","stopTimeLine","reDrawnMap","img$1","img$2","img$3","img$4","img$5","__vue_script__$3","__vue_render__$3","toggleSearch","collapseTimelineControl","checkDisabled","playTimeLine","__vue_staticRenderFns__$3","__vue_inject_styles__$3","__vue_component__$3","GraficaMunicipioIndicador","Mapa","DialogCreate","fillData","limitesMunicipio","unidadMedida","fechaInicioMunicipal","fechaFinMunicipal","geoJsonDataZonas","getDataZonas","datesToMap","leyenda","showBottonBackMunicipio","fechaIniFiltered","fechaFinFiltered","arrayZonas","$eventHub","$on","nameArray","haveName","isNegativeNumber","number","changeDatesZone","condition","fillArrayRaster","resp","fillDates","fillFormatDates","checkFechaFiltered","filterMap","changeCoords","clickMap","changeCoordsMap","filterChartZone","filterChart","dataZona","posInicial","posFinal","filterDateIniChart","filterDateFinChart","datos","arrayLayers","arrayDates","fillMapFiltered","showDialogFilter","filterDateIni","filterDateFin","fechaIni","fechaFin","$store","dispatch","types","response","zonaFinded","valor","Breadcrumbs","DescriptionIndicador","HeaderIndicador","PeriodoIndicador","GraficosIndicador","HeaderPage","ListadoAcciones","idIndicador","back","___CSS_LOADER_GET_URL_IMPORT___","___CSS_LOADER_URL_IMPORT_0___","___CSS_LOADER_URL_IMPORT_1___","___CSS_LOADER_URL_IMPORT_2___","___CSS_LOADER_URL_REPLACEMENT_0___","___CSS_LOADER_URL_REPLACEMENT_1___","___CSS_LOADER_URL_REPLACEMENT_2___","$Object","P","D","dest","F","args","lastId","_leaflet_id","lock","wrapperFn","later","wrapNum","includeMax","falseFn","formatNum","num","digits","str","splitWords","setOptions","getParamString","existingUrl","uppercase","templateRe","array","emptyImageUrl","getPrefixed","lastTime","timeoutDefer","timeToCall","requestFn","requestAnimFrame","cancelAnimFrame","Util","Class","checkDeprecatedMixinEvents","L","Mixin","Events","warn","NewClass","initialize","callInitHooks","parentProto","__super__","statics","_initHooks","_initHooksCalled","include","mergeOptions","addInitHook","init","_on","off","_off","_events","typeListeners","newListener","listeners","_firingCount","fire","propagate","listens","sourceTarget","_propagateEvent","_eventParents","addEventParent","removeEventParent","propagatedFrom","clearAllEventListeners","addOneTimeEventListener","fireEvent","hasEventListeners","Evented","Point","trunc","toPoint","Bounds","points","toBounds","LatLngBounds","corner1","corner2","latlngs","toLatLngBounds","LatLng","alt","toLatLng","lon","point","_add","subtract","_subtract","divideBy","_divideBy","multiplyBy","_multiplyBy","scaleBy","unscaleBy","_round","_floor","_ceil","_trunc","distanceTo","getCenter","getBottomLeft","getTopRight","getTopLeft","getBottomRight","getSize","intersects","bounds","min2","max2","xIntersects","yIntersects","overlaps","xOverlaps","yOverlaps","sw2","ne2","sw","_southWest","ne","_northEast","bufferRatio","heightBuffer","widthBuffer","getSouthWest","getNorthEast","getNorthWest","getNorth","getWest","getSouthEast","getSouth","getEast","latIntersects","lngIntersects","latOverlaps","lngOverlaps","toBBoxString","maxMargin","precision","Earth","wrapLatLng","sizeInMeters","latAccuracy","lngAccuracy","cos","CRS","latLngToPoint","projectedPoint","projection","project","scale","transformation","_transform","pointToLatLng","untransformedPoint","untransform","unproject","LN2","getProjectedBounds","wrapLng","wrapLat","wrapLatLngBounds","newCenter","latShift","lngShift","newSw","newNe","R","latlng1","latlng2","rad","lat1","lat2","sinDLat","sin","sinDLon","atan2","earthRadius","SphericalMercator","MAX_LATITUDE","atan","exp","Transformation","_a","_b","_d","toTransformation","EPSG3857","EPSG900913","svgCreate","createElementNS","pointsToPath","rings","closed","len2","svg","style$1","ielt9","userAgentContains","android","android23","webkitVer","exec","androidStock","opera","chrome","gecko","phantom","opera12","ie3d","webkit3d","WebKitCSSMatrix","gecko3d","any3d","L_DISABLE_3D","mobileWebkit","mobileWebkit3d","msPointer","PointerEvent","MSPointerEvent","pointer","L_NO_TOUCH","DocumentTouch","mobileOpera","mobileGecko","retina","devicePixelRatio","deviceXDPI","logicalXDPI","passiveEvents","supportsPassiveOption","defineProperty","canvas","getContext","createSVGRect","vml","div","shape","firstChild","behavior","adj","Browser","POINTER_DOWN","POINTER_MOVE","POINTER_UP","POINTER_CANCEL","_pointers","_pointerDocListener","addPointerListener","_addPointerStart","_addPointerMove","_addPointerEnd","removePointerListener","onDown","MSPOINTER_TYPE_TOUCH","pointerType","preventDefault","_handlePointer","_globalPointerDown","_globalPointerMove","_globalPointerUp","pointerId","touches","changedTouches","onMove","MSPOINTER_TYPE_MOUSE","onUp","_touchstart","_touchend","_pre","addDoubleTapListener","touch$$1","doubleTap","onTouchStart","isPrimary","delta","onTouchEnd","cancelBubble","newTouch","button","removeDoubleTapListener","dblclick","disableTextSelection","enableTextSelection","_userSelect","_outlineElement","_outlineStyle","TRANSFORM","testProp","TRANSITION","TRANSITION_END","create$1","tagName","empty","toFront","lastChild","toBack","hasClass","getClass","addClass","setClass","removeClass","baseVal","correspondingElement","setOpacity","_setOpacityIE","filterName","filters","Enabled","Opacity","setTransform","setPosition","_leaflet_pos","getPosition","userSelectProperty","disableImageDrag","enableImageDrag","preventOutline","tabIndex","restoreOutline","getSizedParentNode","getScale","boundingClientRect","addOne","eventsKey","removeOne","browserFiresNativeDblClick","mouseSubst","mouseenter","mouseleave","wheel","originalHandler","isExternalTarget","attachEvent","detachEvent","originalEvent","_stopped","skipped","disableScrollPropagation","fakeStop","returnValue","getMousePosition","clientX","clientY","clientLeft","clientTop","wheelPxFactor","getWheelDelta","wheelDeltaY","deltaMode","deltaZ","wheelDelta","detail","skipEvents","related","addListener","removeListener","PosAnimation","newPos","easeLinearity","_el","_inProgress","_duration","_easeOutPower","_startPos","_offset","_startTime","_animate","_step","_complete","_animId","elapsed","_runFrame","_easeOut","Map","crs","maxZoom","maxBounds","renderer","zoomAnimation","zoomAnimationThreshold","fadeAnimation","markerZoomAnimation","transform3DLimit","zoomSnap","zoomDelta","trackResize","_handlers","_layers","_zoomBoundLayers","_sizeChanged","_initContainer","_initLayout","_onResize","_initEvents","setMaxBounds","_zoom","_limitZoom","_zoomAnimated","_createAnimProxy","_proxy","_catchTransitionEnd","_addLayers","_limitCenter","_stop","_loaded","pan","moved","_tryAnimatedZoom","_tryAnimatedPan","_sizeTimer","_resetView","setZoom","zoomIn","zoomOut","setZoomAround","getZoomScale","viewHalf","containerPoint","latLngToContainerPoint","centerOffset","containerPointToLatLng","_getBoundsCenterZoom","getBounds","paddingTL","paddingTopLeft","paddingBR","paddingBottomRight","getBoundsZoom","paddingOffset","swPoint","nePoint","fitWorld","panTo","panBy","getZoom","_panAnim","_onPanTransitionStep","_onPanTransitionEnd","noMoveStart","_mapPane","_getMapPanePos","_rawPanBy","flyTo","targetCenter","targetZoom","startZoom","w0","w1","u1","rho","rho2","s1","s2","t1","b1","sq","sinh","cosh","tanh","r0","w","u","easeOut","_flyToFrame","_move","getScaleZoom","_moveEnd","_moveStart","flyToBounds","_panInsideMaxBounds","setMinZoom","oldZoom","setMaxZoom","panInsideBounds","_enforcingBounds","panInside","pixelCenter","pixelPoint","pixelBounds","getPixelBounds","halfPixelBounds","paddedBounds","invalidateSize","oldSize","_lastCenter","newSize","oldCenter","debounceMoveend","locate","_locateOptions","timeout","_handleGeolocationError","onResponse","_handleGeolocationResponse","onError","_locationWatchId","geolocation","watchPosition","getCurrentPosition","stopLocate","clearWatch","latitude","longitude","accuracy","timestamp","addHandler","HandlerClass","enable","_containerId","_container","_clearControlPos","_resizeRequest","_clearHandlers","_panes","_renderer","createPane","pane","_checkIfLoaded","_moved","layerPointToLatLng","_getCenterLayerPoint","getMinZoom","_layersMinZoom","getMaxZoom","_layersMaxZoom","inside","nw","se","boundsSize","scalex","scaley","_size","topLeftPoint","_getTopLeftPoint","getPixelOrigin","_pixelOrigin","getPixelWorldBounds","getPane","getPanes","getContainer","toZoom","fromZoom","latLngToLayerPoint","containerPointToLayerPoint","layerPointToContainerPoint","layerPoint","mouseEventToContainerPoint","mouseEventToLayerPoint","mouseEventToLatLng","_onScroll","_fadeAnimated","_initPanes","_initControlPos","panes","_paneRenderers","markerPane","shadowPane","zoomChanged","_getNewPixelOrigin","pinch","_getZoomSpan","remove$$1","_targets","onOff","_handleDOMEvent","_onMoveEnd","_findEventTargets","targets","isHover","srcElement","_simulated","_draggableMoved","_fireDOMEvent","_mouseEvents","synth","isMarker","getLatLng","_radius","bubblingMouseEvents","boxZoom","whenReady","pixelOrigin","_latLngToNewLayerPoint","topLeft","_latLngBoundsToNewLayerBounds","latLngBounds","_getCenterOffset","centerPoint","viewBounds","_getBoundsOffset","_limitOffset","newBounds","pxBounds","projectedMaxBounds","minOffset","maxOffset","dx","_rebound","dy","mapPane","_animatingZoom","_onZoomTransitionEnd","_animMoveEnd","_destroyAnimProxy","z","propertyName","_nothingToAnimate","_animateZoom","startAnim","noUpdate","_animateToCenter","_animateToZoom","createMap","_map","removeControl","addControl","corner","_controlCorners","onRemove","_refocusOnMap","screenX","screenY","corners","_controlContainer","createCorner","vSide","hSide","Layers","autoZIndex","hideSingleBase","sortLayers","sortFunction","layerA","layerB","nameA","nameB","baseLayers","overlays","_layerControlInputs","_lastZIndex","_handlingClick","_addLayer","_update","_checkDisabledLayers","_onLayerChange","_expandIfNotCollapsed","addOverlay","removeLayer","_getLayer","_section","acceptableHeight","offsetTop","section","_layersLink","_baseLayersList","_separator","_overlaysList","overlay","sort","setZIndex","baseLayersPresent","overlaysPresent","baseLayersCount","_addItem","_createRadioElement","checked","radioHtml","radioFragment","hasLayer","defaultChecked","layerId","_onInputClick","holder","inputs","addedLayers","removedLayers","_expand","_collapse","Zoom","zoomInText","zoomInTitle","zoomOutText","zoomOutTitle","zoomName","_zoomInButton","_createButton","_zoomIn","_zoomOutButton","_zoomOut","_updateDisabled","_disabled","Scale","metric","imperial","_addScales","updateWhenIdle","_mScale","_iScale","maxMeters","_updateScales","_updateMetric","_updateImperial","meters","_getRoundNum","_updateScale","maxMiles","miles","feet","maxFeet","pow10","Attribution","_attributions","attributionControl","getAttribution","addAttribution","setPrefix","removeAttribution","attribs","prefixAndAttribs","Handler","_enabled","addHooks","removeHooks","_lastCode","START","END","pointerdown","MSPointerDown","MOVE","Draggable","clickTolerance","dragStartTarget","preventOutline$$1","_element","_dragStartTarget","_preventOutline","_onDown","_dragging","finishDrag","_moving","sizedParent","_startPoint","_parentScale","_onMove","_onUp","_lastTarget","SVGElementInstance","correspondingUseElement","_newPos","_animRequest","_lastEvent","_updatePosition","simplify","tolerance","sqTolerance","_reducePoints","_simplifyDP","pointToSegmentDistance","p1","p2","_sqClosestPointOnSegment","closestPointOnSegment","ArrayConstructor","Uint8Array","_simplifyDPStep","newPoints","sqDist","maxSqDist","reducedPoints","_sqDist","clipSegment","useLastCode","codeOut","newCode","codeA","_getBitCode","codeB","_getEdgeIntersection","isFlat","_flat","LineUtil","clipPolygon","clippedPoints","edges","_code","PolyUtil","LonLat","Mercator","R_MINOR","tmp","con","ts","tan","phi","dphi","EPSG3395","EPSG4326","Simple","Layer","removeFrom","_mapToAdd","addInteractiveTarget","targetEl","removeInteractiveTarget","_layerAdd","getEvents","beforeAdd","eachLayer","_addZoomLimit","_updateZoomLevels","_removeZoomLimit","oldZoomSpan","LayerGroup","getLayerId","clearLayers","invoke","methodName","getLayer","getLayers","FeatureGroup","featureGroup","Icon","popupAnchor","tooltipAnchor","createIcon","oldIcon","_createIcon","createShadow","_getIconUrl","_createImg","_setIconStyles","sizeOption","shadowAnchor","iconAnchor","IconDefault","iconUrl","iconRetinaUrl","shadowUrl","iconSize","shadowSize","imagePath","_detectIconPath","MarkerDrag","_marker","_icon","_draggable","dragstart","_onDragStart","predrag","_onPreDrag","drag","_onDrag","dragend","_onDragEnd","_adjustPan","autoPanSpeed","autoPanPadding","iconPos","panBounds","movement","_panRequest","_oldLatLng","closePopup","autoPan","shadow","_shadow","_latlng","oldLatLng","Marker","interactive","zIndexOffset","riseOnHover","riseOffset","draggable","_initIcon","_removeIcon","_removeShadow","viewreset","setLatLng","setZIndexOffset","getIcon","setIcon","_popup","bindPopup","_setPos","classToAdd","addIcon","_bringToFront","_resetZIndex","newShadow","addShadow","_updateOpacity","_initInteraction","_zIndex","_updateZIndex","_getPopupAnchor","_getTooltipAnchor","Path","lineCap","lineJoin","dashArray","dashOffset","fillColor","fillRule","getRenderer","_initPath","_reset","_addPath","_removePath","redraw","_updatePath","_updateStyle","_updateBounds","_bringToBack","_path","_project","_clickTolerance","CircleMarker","setRadius","getRadius","_point","r2","_radiusY","_pxBounds","_updateCircle","_empty","_bounds","_containsPoint","circleMarker","Circle","legacyOptions","_mRadius","latR","lngR","acos","circle","Polyline","smoothFactor","noClip","_setLatLngs","getLatLngs","_latlngs","setLatLngs","isEmpty","closestLayerPoint","minDistance","minPoint","jLen","_parts","halfDist","segDist","_rings","addLatLng","_defaultShape","_convertLatLngs","_projectLatlngs","_rawPxBounds","projectedBounds","ring","_clipPoints","segment","parts","_simplifyPoints","_updatePoly","part","polyline","Polygon","area","pop","clipped","polygon","GeoJSON","geojson","addData","features","geometries","geometry","coordinates","geometryToLayer","asFeature","defaultOptions","resetStyle","_setLayerStyle","pointToLayer","_coordsToLatLng","coordsToLatLng","_pointToLayer","coordsToLatLngs","pointToLayerFn","markersInheritOptions","levelsDeep","latLngToCoords","latLngsToCoords","getFeature","newGeometry","PointToGeoJSON","toGeoJSON","multi","holes","toMultiPoint","isGeometryCollection","jsons","json","geoJson","ImageOverlay","errorOverlayUrl","_url","_image","_initImage","styleOpts","setUrl","setBounds","zoomanim","wasElementSupplied","onselectstart","onmousemove","onerror","_overlayOnError","errorUrl","imageOverlay","VideoOverlay","loop","keepAspectRatio","muted","vid","onloadeddata","sourceElements","videoOverlay","video","SVGOverlay","svgOverlay","DivOverlay","_source","_removeTimeout","getContent","_content","setContent","_updateContent","_updateLayout","_prepareOpen","_contentNode","hasChildNodes","_getAnchor","_containerBottom","_containerLeft","_containerWidth","Popup","autoPanPaddingTopLeft","autoPanPaddingBottomRight","keepInView","closeButton","closeOnEscapeKey","openOn","openPopup","popup","closeOnClick","closePopupOnClick","preclick","_close","moveend","_wrapper","_tipContainer","_tip","_closeButton","_onCloseButtonClick","whiteSpace","scrolledClass","containerWidth","layerPos","containerPos","_popupHandlersAdded","_openPopup","_onKeyPress","_movePopup","unbindPopup","togglePopup","isPopupOpen","setPopupContent","getPopup","Tooltip","permanent","sticky","tooltip","closeTooltip","_setPosition","subX","subY","tooltipPoint","tooltipWidth","tooltipHeight","openTooltip","_tooltip","_initTooltipInteractions","unbindTooltip","_tooltipHandlersAdded","_moveTooltip","_openTooltip","mousemove","toggleTooltip","isTooltipOpen","setTooltipContent","getTooltip","DivIcon","bgPos","Element","backgroundPosition","divIcon","Default","GridLayer","updateWhenZooming","updateInterval","maxNativeZoom","minNativeZoom","keepBuffer","_levels","_tiles","_removeAllTiles","_tileZoom","_setAutoZIndex","isLoading","_loading","viewprereset","_invalidateAll","createTile","getTileSize","compare","edgeZIndex","isFinite","nextFrame","willPrune","tile","fade","_onOpaqueTile","_noPrune","_pruneTiles","_fadeFrame","_updateLevels","_onUpdateLevel","_removeTilesAtZoom","_onRemoveLevel","level","_setZoomTransform","_onCreateLevel","_level","retain","_retainParent","_retainChildren","_removeTile","x2","y2","z2","coords2","_tileCoordsToKey","_setView","_clampZoom","noPrune","tileZoom","tileZoomChanged","_abortLoading","_resetGrid","_setZoomTransforms","_tileSize","_globalTileRange","_pxBoundsToTileRange","_wrapX","_wrapY","_getTiledPixelBounds","mapZoom","halfSize","tileRange","tileCenter","noPruneRange","_isValidTile","fragment","createDocumentFragment","_addTile","tileBounds","_tileCoordsToBounds","_keyToBounds","_keyToTileCoords","_tileCoordsToNwSe","nwPoint","sePoint","bp","_initTile","WebkitBackfaceVisibility","tilePos","_getTilePos","_wrapCoords","_tileReady","_noTilesToLoad","newCoords","gridLayer","TileLayer","subdomains","errorTileUrl","tms","zoomReverse","detectRetina","_onTileRemove","noRedraw","_tileOnLoad","_tileOnError","getTileUrl","_getSubdomain","_getZoomForUrl","invertedY","tilePoint","complete","TileLayerWMS","defaultWmsParams","service","wmsParams","realRetina","_crs","_wmsVersion","projectionKey","bbox","tileLayerWMS","WMS","Renderer","_updatePaths","_destroyContainer","_onZoom","zoomend","_onZoomEnd","_onAnimZoom","_updateTransform","currentCenterPoint","_center","destCenterPoint","topLeftOffset","Canvas","_onViewPreReset","_postponeUpdatePaths","_draw","_onMouseMove","_onClick","_handleMouseOut","_ctx","_redrawRequest","_redrawBounds","_redraw","_updateDashArray","order","_order","_drawLast","_drawFirst","_requestRedraw","_extendRedrawBounds","dashValue","_dashArray","_clear","clearRect","beginPath","clip","_drawing","closePath","_fillStroke","arc","globalAlpha","fillStyle","setLineDash","lineWidth","strokeStyle","clickedLayer","_fireEvent","moving","_handleMouseHover","_hoveredLayer","_mouseHoverThrottled","candidateHoveredLayer","canvas$1","vmlCreate","namespaces","vmlMixin","coordsize","_stroke","_fill","stroked","dashStyle","endcap","joinstyle","_setPath","create$2","SVG","zoomstart","_onZoomStart","_rootGroup","_svgSize","svg$1","_getPaneRenderer","_createRenderer","preferCanvas","Rectangle","_boundsToLatLngs","rectangle","BoxZoom","_pane","overlayPane","_resetStateTimeout","_destroy","_onMouseDown","_resetState","_clearDeferredResetState","contextmenu","_onMouseUp","_onKeyDown","_box","_finish","boxZoomBounds","doubleClickZoom","DoubleClickZoom","_onDoubleClick","inertia","inertiaDeceleration","inertiaMaxSpeed","worldCopyJump","maxBoundsViscosity","Drag","_onPreDragLimit","_onPreDragWrap","_positions","_times","_offsetLimit","_viscosity","_lastTime","_lastPos","_absPos","_prunePositions","pxCenter","pxWorldCenter","_initialWorldOffset","_worldWidth","_viscousLimit","limit","worldWidth","halfWidth","newX1","newX2","newX","noInertia","ease","speedVector","limitedSpeed","limitedSpeedVector","decelerationDuration","keyboardPanDelta","Keyboard","_setPanDelta","_setZoomDelta","_onFocus","_onBlur","_addHooks","_removeHooks","_focused","docEl","scrollTo","panDelta","_panKeys","codes","_zoomKeys","scrollWheelZoom","wheelDebounceTime","wheelPxPerZoomLevel","ScrollWheelZoom","_onWheelScroll","_delta","_lastMousePos","_timer","_performZoom","d2","d3","d4","tap","tapTolerance","Tap","_fireClick","_holdTimeout","_isTapValid","_simulateEvent","touchmove","simulatedEvent","createEvent","_simulatedClick","initMouseEvent","dispatchEvent","touchZoom","bounceAtZoomLimits","TouchZoom","_onTouchStart","_zooming","_centerPoint","_startLatLng","_pinchStartLatLng","_startDist","_startZoom","_onTouchMove","_onTouchEnd","moveFn","Projection","oldL","noConflict"],"mappings":"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","file":"js/chunk-a19bd920.9f101714.js","sourcesContent":["export * from \"-!../../../../node_modules/vue-style-loader/index.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-3!../../../../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-4!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DescriptionIndicador.vue?vue&type=style&index=0&id=06e3641e&lang=scss&scoped=true&\"","// https://tc39.github.io/proposal-setmap-offrom/#sec-weakmap.of\nrequire('./_set-collection-of')('WeakMap');\n","// style-loader: Adds some css to the DOM by adding a \r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeaderIndicador.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeaderIndicador.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./HeaderIndicador.vue?vue&type=template&id=c2b3133c&scoped=true&\"\nimport script from \"./HeaderIndicador.vue?vue&type=script&lang=js&\"\nexport * from \"./HeaderIndicador.vue?vue&type=script&lang=js&\"\nimport style0 from \"./HeaderIndicador.vue?vue&type=style&index=0&id=c2b3133c&lang=scss&scoped=true&\"\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 \"c2b3133c\",\n null\n \n)\n\nexport default component.exports","module.exports = \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABkAAAApCAYAAADAk4LOAAAFgUlEQVR4Aa1XA5BjWRTN2oW17d3YaZtr2962HUzbDNpjszW24mRt28p47v7zq/bXZtrp/lWnXr337j3nPCe85NcypgSFdugCpW5YoDAMRaIMqRi6aKq5E3YqDQO3qAwjVWrD8Ncq/RBpykd8oZUb/kaJutow8r1aP9II0WmLKLIsJyv1w/kqw9Ch2MYdB++12Onxee/QMwvf4/Dk/Lfp/i4nxTXtOoQ4pW5Aj7wpici1A9erdAN2OH64x8OSP9j3Ft3b7aWkTg/Fm91siTra0f9on5sQr9INejH6CUUUpavjFNq1B+Oadhxmnfa8RfEmN8VNAsQhPqF55xHkMzz3jSmChWU6f7/XZKNH+9+hBLOHYozuKQPxyMPUKkrX/K0uWnfFaJGS1QPRtZsOPtr3NsW0uyh6NNCOkU3Yz+bXbT3I8G3xE5EXLXtCXbbqwCO9zPQYPRTZ5vIDXD7U+w7rFDEoUUf7ibHIR4y6bLVPXrz8JVZEql13trxwue/uDivd3fkWRbS6/IA2bID4uk0UpF1N8qLlbBlXs4Ee7HLTfV1j54APvODnSfOWBqtKVvjgLKzF5YdEk5ewRkGlK0i33Eofffc7HT56jD7/6U+qH3Cx7SBLNntH5YIPvODnyfIXZYRVDPqgHtLs5ABHD3YzLuespb7t79FY34DjMwrVrcTuwlT55YMPvOBnRrJ4VXTdNnYug5ucHLBjEpt30701A3Ts+HEa73u6dT3FNWwflY86eMHPk+Yu+i6pzUpRrW7SNDg5JHR4KapmM5Wv2E8Tfcb1HoqqHMHU+uWDD7zg54mz5/2BSnizi9T1Dg4QQXLToGNCkb6tb1NU+QAlGr1++eADrzhn/u8Q2YZhQVlZ5+CAOtqfbhmaUCS1ezNFVm2imDbPmPng5wmz+gwh+oHDce0eUtQ6OGDIyR0uUhUsoO3vfDmmgOezH0mZN59x7MBi++WDL1g/eEiU3avlidO671bkLfwbw5XV2P8Pzo0ydy4t2/0eu33xYSOMOD8hTf4CrBtGMSoXfPLchX+J0ruSePw3LZeK0juPJbYzrhkH0io7B3k164hiGvawhOKMLkrQLyVpZg8rHFW7E2uHOL888IBPlNZ1FPzstSJM694fWr6RwpvcJK60+0HCILTBzZLFNdtAzJaohze60T8qBzyh5ZuOg5e7uwQppofEmf2++DYvmySqGBuKaicF1blQjhuHdvCIMvp8whTTfZzI7RldpwtSzL+F1+wkdZ2TBOW2gIF88PBTzD/gpeREAMEbxnJcaJHNHrpzji0gQCS6hdkEeYt9DF/2qPcEC8RM28Hwmr3sdNyht00byAut2k3gufWNtgtOEOFGUwcXWNDbdNbpgBGxEvKkOQsxivJx33iow0Vw5S6SVTrpVq11ysA2Rp7gTfPfktc6zhtXBBC+adRLshf6sG2RfHPZ5EAc4sVZ83yCN00Fk/4kggu40ZTvIEm5g24qtU4KjBrx/BTTH8ifVASAG7gKrnWxJDcU7x8X6Ecczhm3o6YicvsLXWfh3Ch1W0k8x0nXF+0fFxgt4phz8QvypiwCCFKMqXCnqXExjq10beH+UUA7+nG6mdG/Pu0f3LgFcGrl2s0kNNjpmoJ9o4B29CMO8dMT4Q5ox8uitF6fqsrJOr8qnwNbRzv6hSnG5wP+64C7h9lp30hKNtKdWjtdkbuPA19nJ7Tz3zR/ibgARbhb4AlhavcBebmTHcFl2fvYEnW0ox9xMxKBS8btJ+KiEbq9zA4RthQXDhPa0T9TEe69gWupwc6uBUphquXgf+/FrIjweHQS4/pduMe5ERUMHUd9xv8ZR98CxkS4F2n3EUrUZ10EYNw7BWm9x1GiPssi3GgiGRDKWRYZfXlON+dfNbM+GgIwYdwAAAAASUVORK5CYII=\"","export * from \"-!../../../../node_modules/vue-style-loader/index.js??ref--8-oneOf-1-0!../../../../node_modules/css-loader/dist/cjs.js??ref--8-oneOf-1-1!../../../../node_modules/vue-loader/lib/loaders/stylePostLoader.js!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-2!../../../../node_modules/postcss-loader/src/index.js??ref--8-oneOf-1-3!../../../../node_modules/sass-loader/lib/loader.js??ref--8-oneOf-1-4!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./HeaderIndicador.vue?vue&type=style&index=0&id=c2b3133c&lang=scss&scoped=true&\"","// style-loader: Adds some css to the DOM by adding a \r\n","import mod from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DescriptionIndicador.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../../../node_modules/thread-loader/dist/cjs.js!../../../../node_modules/@vue/cli-plugin-babel/node_modules/babel-loader/lib/index.js!../../../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../../../node_modules/vue-loader/lib/index.js??vue-loader-options!./DescriptionIndicador.vue?vue&type=script&lang=js&\"","import { render, staticRenderFns } from \"./DescriptionIndicador.vue?vue&type=template&id=06e3641e&scoped=true&\"\nimport script from \"./DescriptionIndicador.vue?vue&type=script&lang=js&\"\nexport * from \"./DescriptionIndicador.vue?vue&type=script&lang=js&\"\nimport style0 from \"./DescriptionIndicador.vue?vue&type=style&index=0&id=06e3641e&lang=scss&scoped=true&\"\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 \"06e3641e\",\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',[_c('q-card',{staticClass:\"col-12 marginTag\"},[_c('q-card-section',[_c('div',{staticClass:\"titleCard\"},[_vm._v(\"PerĆodo aplicable\")]),_c('q-form',{ref:\"form\"},[_c('div',{staticClass:\"row\"},[_c('q-input',{staticClass:\"required col-md-auto col-xs-12 col-sm-12\",attrs:{\"outlined\":\"\",\"label\":\"Fecha inicio\",\"mask\":\"date\",\"error\":_vm.$v.dateInicio.$error,\"rules\":[\n 'date',\n function (val) { return _vm.validateFechaIni(_vm.dateInicio, _vm.dateFin) ||\n 'La fecha inicial no puede ser superior a la fecha final'; }\n ],\"dense\":_vm.responsiveSize},scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_c('q-icon',{staticClass:\"cursor-pointer\",attrs:{\"name\":\"event\"}},[_c('q-popup-proxy',{ref:\"qDateProxy\",attrs:{\"cover\":\"\",\"transition-show\":\"scale\",\"transition-hide\":\"scale\"}},[_c('q-date',{model:{value:(_vm.dateInicio),callback:function ($$v) {_vm.dateInicio=$$v},expression:\"dateInicio\"}},[_c('div',{staticClass:\"row items-center justify-end\"},[_c('q-btn',{directives:[{name:\"close-popup\",rawName:\"v-close-popup\"}],attrs:{\"label\":\"Cerrar\",\"color\":\"primary\",\"flat\":\"\"}})],1)])],1)],1)]},proxy:true},{key:\"error\",fn:function(){return [_vm._v(\"Fecha no vĆ”lida.\")]},proxy:true}]),model:{value:(_vm.dateInicio),callback:function ($$v) {_vm.dateInicio=$$v},expression:\"dateInicio\"}}),_c('q-input',{staticClass:\"required col-md-auto col-xs-12 col-sm-12\",attrs:{\"outlined\":\"\",\"label\":\"Fecha Fin\",\"mask\":\"date\",\"error\":_vm.$v.dateFin.$error,\"rules\":[\n 'date',\n function (val) { return _vm.validateFechaFin(_vm.dateInicio, _vm.dateFin) ||\n 'La fecha final no puede ser inferior a la fecha inicial'; }\n ],\"dense\":_vm.responsiveSize},scopedSlots:_vm._u([{key:\"append\",fn:function(){return [_c('q-icon',{staticClass:\"cursor-pointer\",attrs:{\"name\":\"event\"}},[_c('q-popup-proxy',{ref:\"qDateProxy\",attrs:{\"cover\":\"\",\"transition-show\":\"scale\",\"transition-hide\":\"scale\"}},[_c('q-date',{model:{value:(_vm.dateFin),callback:function ($$v) {_vm.dateFin=$$v},expression:\"dateFin\"}},[_c('div',{staticClass:\"row items-center justify-end\"},[_c('q-btn',{directives:[{name:\"close-popup\",rawName:\"v-close-popup\"}],attrs:{\"label\":\"Cerrar\",\"color\":\"primary\",\"flat\":\"\"}})],1)])],1)],1)]},proxy:true},{key:\"error\",fn:function(){return [_vm._v(\" Fecha no vĆ”lida.\")]},proxy:true}]),model:{value:(_vm.dateFin),callback:function ($$v) {_vm.dateFin=$$v},expression:\"dateFin\"}}),_c('q-btn',{staticClass:\"bPrincipal\",attrs:{\"data-cy\":\"bfilterDataIndicador\",\"unelevated\":\"\",\"disable\":_vm.buttonDisabled,\"dense\":_vm.responsiveSize},on:{\"click\":function($event){return _vm.filterDataIndicadores()}}},[_vm._v(\"FILTRAR\")])],1)])],1)],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\r\n
${e.code}
` },\n\n 'size-1': { cmd: 'fontSize', param: '1', icon: i.size1 || i.size, tip: e.size1, htmlTip: `${e.size1}` },\n 'size-2': { cmd: 'fontSize', param: '2', icon: i.size2 || i.size, tip: e.size2, htmlTip: `${e.size2}` },\n 'size-3': { cmd: 'fontSize', param: '3', icon: i.size3 || i.size, tip: e.size3, htmlTip: `${e.size3}` },\n 'size-4': { cmd: 'fontSize', param: '4', icon: i.size4 || i.size, tip: e.size4, htmlTip: `${e.size4}` },\n 'size-5': { cmd: 'fontSize', param: '5', icon: i.size5 || i.size, tip: e.size5, htmlTip: `${e.size5}` },\n 'size-6': { cmd: 'fontSize', param: '6', icon: i.size6 || i.size, tip: e.size6, htmlTip: `${e.size6}` },\n 'size-7': { cmd: 'fontSize', param: '7', icon: i.size7 || i.size, tip: e.size7, htmlTip: `${e.size7}` }\n }\n },\n\n buttons () {\n const userDef = this.definitions || {}\n const def = this.definitions || this.fonts\n ? extend(\n true,\n {},\n this.buttonDef,\n userDef,\n getFonts(\n this.defaultFont,\n this.$q.lang.editor.defaultFont,\n this.$q.iconSet.editor.font,\n this.fonts\n )\n )\n : this.buttonDef\n\n return this.toolbar.map(\n group => group.map(token => {\n if (token.options) {\n return {\n type: 'dropdown',\n icon: token.icon,\n label: token.label,\n size: 'sm',\n dense: true,\n fixedLabel: token.fixedLabel,\n fixedIcon: token.fixedIcon,\n highlight: token.highlight,\n list: token.list,\n options: token.options.map(item => def[item])\n }\n }\n\n const obj = def[token]\n\n if (obj) {\n return obj.type === 'no-state' || (userDef[token] && (\n obj.cmd === void 0 || (this.buttonDef[obj.cmd] && this.buttonDef[obj.cmd].type === 'no-state')\n ))\n ? obj\n : Object.assign({ type: 'toggle' }, obj)\n }\n else {\n return {\n type: 'slot',\n slot: token\n }\n }\n })\n )\n },\n\n keys () {\n const\n k = {},\n add = btn => {\n if (btn.key) {\n k[btn.key] = {\n cmd: btn.cmd,\n param: btn.param\n }\n }\n }\n\n this.buttons.forEach(group => {\n group.forEach(token => {\n if (token.options) {\n token.options.forEach(add)\n }\n else {\n add(token)\n }\n })\n })\n return k\n },\n\n innerStyle () {\n return this.inFullscreen\n ? this.contentStyle\n : [\n {\n minHeight: this.minHeight,\n height: this.height,\n maxHeight: this.maxHeight\n },\n this.contentStyle\n ]\n },\n\n classes () {\n return `q-editor q-editor--${this.isViewingSource === true ? 'source' : 'default'}` +\n (this.disable === true ? ' disabled' : '') +\n (this.inFullscreen === true ? ' fullscreen column' : '') +\n (this.square === true ? ' q-editor--square no-border-radius' : '') +\n (this.flat === true ? ' q-editor--flat' : '') +\n (this.dense === true ? ' q-editor--dense' : '') +\n (this.isDark === true ? ' q-editor--dark q-dark' : '')\n },\n\n innerClass () {\n return [\n this.contentClass,\n { col: this.inFullscreen, 'overflow-auto': this.inFullscreen || this.maxHeight }\n ]\n },\n\n attrs () {\n if (this.disable === true) {\n return { 'aria-disabled': 'true' }\n }\n if (this.readonly === true) {\n return { 'aria-readonly': 'true' }\n }\n },\n\n onEditor () {\n return {\n focusin: this.__onFocusin,\n focusout: this.__onFocusout\n }\n }\n },\n\n data () {\n return {\n lastEmit: this.value,\n editLinkUrl: null,\n isViewingSource: false\n }\n },\n\n watch: {\n value (v) {\n if (this.lastEmit !== v) {\n this.lastEmit = v\n this.__setContent(v, true)\n }\n }\n },\n\n methods: {\n __onInput () {\n if (this.$refs.content !== void 0) {\n const val = this.isViewingSource === true\n ? this.$refs.content.innerText\n : this.$refs.content.innerHTML\n\n if (val !== this.value) {\n this.lastEmit = val\n this.$emit('input', val)\n }\n }\n },\n\n __onKeydown (e) {\n this.$emit('keydown', e)\n\n if (e.ctrlKey !== true || shouldIgnoreKey(e) === true) {\n this.refreshToolbar()\n this.$q.platform.is.ie && this.$nextTick(this.__onInput)\n return\n }\n\n const key = e.keyCode\n const target = this.keys[key]\n if (target !== void 0) {\n const { cmd, param } = target\n stopAndPrevent(e)\n this.runCmd(cmd, param, false)\n }\n },\n\n __onClick (e) {\n this.refreshToolbar()\n this.$emit('click', e)\n },\n\n __onBlur (e) {\n if (this.$refs.content !== void 0) {\n const { scrollTop, scrollHeight } = this.$refs.content\n this.__offsetBottom = scrollHeight - scrollTop\n }\n this.$q.platform.is.ie !== true && this.caret.save()\n this.$emit('blur', e)\n },\n\n __onFocus (e) {\n this.$nextTick(() => {\n if (this.$refs.content !== void 0 && this.__offsetBottom !== void 0) {\n this.$refs.content.scrollTop = this.$refs.content.scrollHeight - this.__offsetBottom\n }\n })\n this.$emit('focus', e)\n },\n\n __onFocusin (e) {\n if (\n this.$el.contains(e.target) === true &&\n (\n e.relatedTarget === null ||\n this.$el.contains(e.relatedTarget) !== true\n )\n ) {\n const prop = `inner${this.isViewingSource === true ? 'Text' : 'HTML'}`\n this.caret.restorePosition(this.$refs.content[prop].length)\n this.refreshToolbar()\n }\n },\n\n __onFocusout (e) {\n if (\n this.$el.contains(e.target) === true &&\n (\n e.relatedTarget === null ||\n this.$el.contains(e.relatedTarget) !== true\n )\n ) {\n this.caret.savePosition()\n this.refreshToolbar()\n }\n },\n\n __onMousedown () {\n this.__offsetBottom = void 0\n },\n\n __onMouseup (e) {\n this.caret.save()\n if (this.qListeners.mouseup !== void 0) {\n this.$emit('mouseup', e)\n }\n },\n\n __onKeyup (e) {\n this.caret.save()\n if (this.qListeners.keyup !== void 0) {\n this.$emit('keyup', e)\n }\n },\n\n __onTouchstart () {\n this.__offsetBottom = void 0\n },\n\n __onTouchend (e) {\n this.caret.save()\n if (this.qListeners.touchend !== void 0) {\n this.$emit('touchend', e)\n }\n },\n\n runCmd (cmd, param, update = true) {\n this.focus()\n this.caret.restore()\n this.caret.apply(cmd, param, () => {\n this.focus()\n this.caret.save()\n if (this.$q.platform.is.ie === true || this.$q.platform.is.edge === true) {\n this.$nextTick(this.__onInput)\n }\n if (update) {\n this.refreshToolbar()\n }\n })\n },\n\n refreshToolbar () {\n setTimeout(() => {\n this.editLinkUrl = null\n this.$forceUpdate()\n }, 1)\n },\n\n focus () {\n addFocusFn(() => {\n this.$refs.content !== void 0 && this.$refs.content.focus({ preventScroll: true })\n })\n },\n\n getContentEl () {\n return this.$refs.content\n },\n\n __setContent (v, restorePosition) {\n if (this.$refs.content !== void 0) {\n if (restorePosition === true) {\n this.caret.savePosition()\n }\n\n const prop = `inner${this.isViewingSource === true ? 'Text' : 'HTML'}`\n this.$refs.content[prop] = v\n\n if (restorePosition === true) {\n this.caret.restorePosition(this.$refs.content[prop].length)\n this.refreshToolbar()\n }\n }\n }\n },\n\n created () {\n if (isSSR === false) {\n document.execCommand('defaultParagraphSeparator', false, this.paragraphTag)\n this.defaultFont = window.getComputedStyle(document.body).fontFamily\n }\n },\n\n mounted () {\n this.caret = new Caret(this.$refs.content, this)\n this.__setContent(this.value)\n this.refreshToolbar()\n },\n\n render (h) {\n let toolbars\n\n if (this.hasToolbar) {\n const bars = [\n h('div', {\n key: 'qedt_top',\n staticClass: 'q-editor__toolbar row no-wrap scroll-x',\n class: this.toolbarBackgroundClass\n }, getToolbar(h, this))\n ]\n\n this.editLinkUrl !== null && bars.push(\n h('div', {\n key: 'qedt_btm',\n staticClass: 'q-editor__toolbar row no-wrap items-center scroll-x',\n class: this.toolbarBackgroundClass\n }, getLinkEditor(h, this, this.$q.platform.is.ie))\n )\n\n toolbars = h('div', {\n key: 'toolbar_ctainer',\n staticClass: 'q-editor__toolbars-container'\n }, bars)\n }\n\n const on = {\n ...this.qListeners,\n input: this.__onInput,\n keydown: this.__onKeydown,\n click: this.__onClick,\n blur: this.__onBlur,\n focus: this.__onFocus,\n\n // clean saved scroll position\n mousedown: this.__onMousedown,\n touchstart: this.__onTouchstart,\n\n // save caret\n mouseup: this.__onMouseup,\n keyup: this.__onKeyup,\n touchend: this.__onTouchend\n }\n\n return h('div', {\n style: {\n height: this.inFullscreen === true ? '100%' : null\n },\n class: this.classes,\n attrs: this.attrs,\n on: this.onEditor\n }, [\n toolbars,\n\n h(\n 'div',\n {\n ref: 'content',\n staticClass: `q-editor__content`,\n style: this.innerStyle,\n class: this.innerClass,\n attrs: {\n contenteditable: this.editable,\n placeholder: this.placeholder\n },\n domProps: isSSR\n ? { innerHTML: this.value }\n : void 0,\n on\n }\n )\n ])\n }\n})\n","import ListenersMixin from './listeners.js'\n\nconst labelPositions = ['top', 'right', 'bottom', 'left']\n\nexport default {\n mixins: [ ListenersMixin ],\n\n props: {\n type: {\n type: String,\n default: 'a'\n },\n\n outline: Boolean,\n push: Boolean,\n flat: Boolean,\n unelevated: Boolean,\n\n color: String,\n textColor: String,\n glossy: Boolean,\n\n square: Boolean,\n padding: String,\n\n label: {\n type: [ String, Number ],\n default: ''\n },\n labelPosition: {\n type: String,\n default: 'right',\n validator: v => labelPositions.includes(v)\n },\n externalLabel: Boolean,\n hideLabel: {\n type: Boolean\n },\n labelClass: [ Array, String, Object ],\n labelStyle: [ Array, String, Object ],\n\n disable: Boolean,\n\n tabindex: [ Number, String ]\n },\n\n computed: {\n formClass () {\n return `q-fab--form-${this.square === true ? 'square' : 'rounded'}`\n },\n\n stacked () {\n return this.externalLabel === false && ['top', 'bottom'].includes(this.labelPosition)\n },\n\n labelProps () {\n if (this.externalLabel === true) {\n const hideLabel = this.hideLabel === null\n ? this.showing === false\n : this.hideLabel\n\n return {\n action: 'push',\n data: {\n staticClass: `q-fab__label q-tooltip--style q-fab__label--external` +\n ` q-fab__label--external-${this.labelPosition}` +\n (hideLabel === true ? ' q-fab__label--external-hidden' : ''),\n style: this.labelStyle,\n class: this.labelClass\n }\n }\n }\n\n return {\n action: [ 'left', 'top' ].includes(this.labelPosition)\n ? 'unshift'\n : 'push',\n data: {\n staticClass: `q-fab__label q-fab__label--internal q-fab__label--internal-${this.labelPosition}` +\n (this.hideLabel === true ? ' q-fab__label--internal-hidden' : ''),\n style: this.labelStyle,\n class: this.labelClass\n }\n }\n }\n }\n}\n","import Vue from 'vue'\n\nimport QBtn from '../btn/QBtn.js'\nimport QIcon from '../icon/QIcon.js'\n\nimport FabMixin from '../../mixins/fab.js'\nimport AttrsMixin from '../../mixins/attrs.js'\nimport ModelToggleMixin from '../../mixins/model-toggle.js'\n\nimport { slot, mergeSlot } from '../../utils/slot.js'\nimport cache from '../../utils/cache.js'\n\nconst directions = ['up', 'right', 'down', 'left']\nconst alignValues = [ 'left', 'center', 'right' ]\n\nexport default Vue.extend({\n name: 'QFab',\n\n inheritAttrs: false,\n\n mixins: [ FabMixin, AttrsMixin, ModelToggleMixin ],\n\n provide () {\n return {\n __qFab: this\n }\n },\n\n props: {\n icon: String,\n activeIcon: String,\n\n hideIcon: Boolean,\n hideLabel: {\n default: null\n },\n\n direction: {\n type: String,\n default: 'right',\n validator: v => directions.includes(v)\n },\n\n persistent: Boolean,\n\n verticalActionsAlign: {\n type: String,\n default: 'center',\n validator: v => alignValues.includes(v)\n }\n },\n\n data () {\n return {\n showing: this.value === true\n }\n },\n\n computed: {\n hideOnRouteChange () {\n return this.persistent !== true\n },\n\n classes () {\n return `q-fab--align-${this.verticalActionsAlign} ${this.formClass}` +\n (this.showing === true ? ' q-fab--opened' : '')\n },\n\n actionsClasses () {\n return `q-fab__actions--${this.direction}` + (this.showing === true ? ' q-fab__actions--opened' : '')\n },\n\n iconHolderClasses () {\n return this.showing === true ? 'q-fab__icon-holder--opened' : ''\n },\n\n attrs () {\n return {\n 'aria-expanded': this.showing === true ? 'true' : 'false',\n 'aria-haspopup': 'true',\n ...this.qAttrs\n }\n },\n\n slotScope () {\n return { opened: this.showing }\n }\n },\n\n methods: {\n __onChildClick (evt) {\n this.hide(evt)\n\n if (this.$refs.trigger && this.$refs.trigger.$el) {\n this.$refs.trigger.$el.focus()\n }\n },\n\n __getIcon (h, kebab, camel) {\n const slotFn = this.$scopedSlots[kebab]\n const staticClass = `q-fab__${kebab} absolute-full`\n\n return slotFn === void 0\n ? h(QIcon, { staticClass, props: { name: this[camel] || this.$q.iconSet.fab[camel] } })\n : h('div', { staticClass }, slotFn(this.slotScope))\n }\n },\n\n render (h) {\n const child = []\n\n this.hideIcon !== true && child.push(\n h('div', { staticClass: 'q-fab__icon-holder', class: this.iconHolderClasses }, [\n this.__getIcon(h, 'icon', 'icon'),\n this.__getIcon(h, 'active-icon', 'activeIcon')\n ])\n )\n\n if (this.label !== '' || this.$scopedSlots.label !== void 0) {\n child[this.labelProps.action](\n h('div', this.labelProps.data, this.$scopedSlots.label !== void 0 ? this.$scopedSlots.label(this.slotScope) : [ this.label ])\n )\n }\n\n return h('div', {\n staticClass: 'q-fab z-fab row inline justify-center',\n class: this.classes,\n on: { ...this.qListeners }\n }, [\n h(QBtn, {\n ref: 'trigger',\n class: this.formClass,\n props: {\n ...this.$props,\n noWrap: true,\n stack: this.stacked,\n align: void 0,\n icon: void 0,\n label: void 0,\n noCaps: true,\n fab: true\n },\n attrs: this.attrs,\n on: cache(this, 'tog', {\n click: this.toggle\n })\n }, mergeSlot(child, this, 'tooltip')),\n\n h('div', {\n staticClass: 'q-fab__actions flex no-wrap inline',\n class: this.actionsClasses\n }, slot(this, 'default'))\n ])\n }\n})\n","import Vue from 'vue'\n\nimport QBtn from '../btn/QBtn.js'\nimport QIcon from '../icon/QIcon.js'\n\nimport FabMixin from '../../mixins/fab.js'\n\nimport { noop } from '../../utils/event.js'\nimport { mergeSlot } from '../../utils/slot.js'\n\nconst anchorMap = {\n start: 'self-end',\n center: 'self-center',\n end: 'self-start'\n}\n\nconst anchorValues = Object.keys(anchorMap)\n\nexport default Vue.extend({\n name: 'QFabAction',\n\n mixins: [ FabMixin ],\n\n props: {\n icon: {\n type: String,\n default: ''\n },\n\n anchor: {\n type: String,\n validator: v => anchorValues.includes(v)\n },\n\n to: [ String, Object ],\n replace: Boolean\n },\n\n inject: {\n __qFab: {\n default () {\n return {\n showing: true,\n __onChildClick: noop\n }\n }\n }\n },\n\n computed: {\n classes () {\n const align = anchorMap[this.anchor]\n return this.formClass + (align !== void 0 ? ` ${align}` : '')\n },\n\n onEvents () {\n return {\n ...this.qListeners,\n click: this.click\n }\n },\n\n isDisabled () {\n return this.__qFab.showing !== true || this.disable === true\n }\n },\n\n methods: {\n click (e) {\n this.__qFab.__onChildClick(e)\n this.$emit('click', e)\n }\n },\n\n render (h) {\n const child = []\n\n if (this.$scopedSlots.icon !== void 0) {\n child.push(this.$scopedSlots.icon())\n }\n else if (this.icon !== '') {\n child.push(\n h(QIcon, {\n props: { name: this.icon }\n })\n )\n }\n\n if (this.label !== '' || this.$scopedSlots.label !== void 0) {\n child[this.labelProps.action](\n h('div', this.labelProps.data, this.$scopedSlots.label !== void 0 ? this.$scopedSlots.label() : [ this.label ])\n )\n }\n\n return h(QBtn, {\n class: this.classes,\n props: {\n ...this.$props,\n noWrap: true,\n stack: this.stacked,\n icon: void 0,\n label: void 0,\n noCaps: true,\n fabMini: true,\n disable: this.isDisabled\n },\n on: this.onEvents\n }, mergeSlot(child, this, 'default'))\n }\n})\n","import Vue from 'vue'\n\nimport { onSSR } from '../../plugins/Platform.js'\n\nimport QResizeObserver from '../resize-observer/QResizeObserver.js'\n\nimport ListenersMixin from '../../mixins/listeners.js'\n\nimport { mergeSlot } from '../../utils/slot.js'\nimport { stop } from '../../utils/event.js'\nimport cache from '../../utils/cache.js'\n\nexport default Vue.extend({\n name: 'QFooter',\n\n mixins: [ ListenersMixin ],\n\n inject: {\n layout: {\n default () {\n console.error('QFooter needs to be child of QLayout')\n }\n }\n },\n\n props: {\n value: {\n type: Boolean,\n default: true\n },\n reveal: Boolean,\n bordered: Boolean,\n elevated: Boolean,\n\n heightHint: {\n type: [String, Number],\n default: 50\n }\n },\n\n data () {\n return {\n size: parseInt(this.heightHint, 10),\n revealed: true,\n windowHeight: onSSR || this.layout.container ? 0 : window.innerHeight\n }\n },\n\n watch: {\n value (val) {\n this.__update('space', val)\n this.__updateLocal('revealed', true)\n this.layout.__animate()\n },\n\n offset (val) {\n this.__update('offset', val)\n },\n\n reveal (val) {\n val === false && this.__updateLocal('revealed', this.value)\n },\n\n revealed (val) {\n this.layout.__animate()\n this.$emit('reveal', val)\n },\n\n 'layout.scroll' () {\n this.__updateRevealed()\n },\n\n 'layout.height' () {\n this.__updateRevealed()\n },\n\n size () {\n this.__updateRevealed()\n },\n\n '$q.screen.height' (val) {\n this.layout.container !== true && this.__updateLocal('windowHeight', val)\n }\n },\n\n computed: {\n fixed () {\n return this.reveal === true ||\n this.layout.view.indexOf('F') > -1 ||\n (this.$q.platform.is.ios && this.layout.container === true)\n },\n\n containerHeight () {\n return this.layout.container === true\n ? this.layout.containerHeight\n : this.windowHeight\n },\n\n offset () {\n if (this.value !== true) {\n return 0\n }\n if (this.fixed === true) {\n return this.revealed === true ? this.size : 0\n }\n const offset = this.layout.scroll.position + this.containerHeight + this.size - this.layout.height\n return offset > 0 ? offset : 0\n },\n\n hidden () {\n return this.value !== true || (this.fixed === true && this.revealed !== true)\n },\n\n revealOnFocus () {\n return this.value === true && this.hidden === true && this.reveal === true\n },\n\n classes () {\n return (this.fixed === true ? 'fixed' : 'absolute') + '-bottom' +\n (this.bordered === true ? ' q-footer--bordered' : '') +\n (this.hidden === true ? ' q-footer--hidden' : '') +\n (this.value !== true ? ' q-layout--prevent-focus' : '') +\n (this.value !== true && this.fixed !== true ? ' hidden' : '')\n },\n\n style () {\n const\n view = this.layout.rows.bottom,\n css = {}\n\n if (view[0] === 'l' && this.layout.left.space === true) {\n css[this.$q.lang.rtl === true ? 'right' : 'left'] = `${this.layout.left.size}px`\n }\n if (view[2] === 'r' && this.layout.right.space === true) {\n css[this.$q.lang.rtl === true ? 'left' : 'right'] = `${this.layout.right.size}px`\n }\n\n return css\n },\n\n onEvents () {\n return {\n ...this.qListeners,\n focusin: this.__onFocusin,\n input: stop\n }\n }\n },\n\n render (h) {\n const child = mergeSlot([\n h(QResizeObserver, {\n props: { debounce: 0 },\n on: cache(this, 'resize', { resize: this.__onResize })\n })\n ], this, 'default')\n\n this.elevated === true && child.push(\n h('div', {\n staticClass: 'q-layout__shadow absolute-full overflow-hidden no-pointer-events'\n })\n )\n\n return h('footer', {\n staticClass: 'q-footer q-layout__section--marginal',\n class: this.classes,\n style: this.style,\n on: this.onEvents\n }, child)\n },\n\n created () {\n this.layout.instances.footer = this\n this.value === true && this.__update('size', this.size)\n this.__update('space', this.value)\n this.__update('offset', this.offset)\n },\n\n beforeDestroy () {\n if (this.layout.instances.footer === this) {\n this.layout.instances.footer = void 0\n this.__update('size', 0)\n this.__update('offset', 0)\n this.__update('space', false)\n }\n },\n\n methods: {\n __onResize ({ height }) {\n this.__updateLocal('size', height)\n this.__update('size', height)\n },\n\n __update (prop, val) {\n if (this.layout.footer[prop] !== val) {\n this.layout.footer[prop] = val\n }\n },\n\n __updateLocal (prop, val) {\n if (this[prop] !== val) {\n this[prop] = val\n }\n },\n\n __updateRevealed () {\n if (this.reveal !== true) { return }\n\n const { direction, position, inflexionPosition } = this.layout.scroll\n\n this.__updateLocal('revealed', (\n direction === 'up' ||\n position - inflexionPosition < 100 ||\n this.layout.height - this.containerHeight - position - this.size < 300\n ))\n },\n\n __onFocusin (evt) {\n if (this.revealOnFocus === true) {\n this.__updateLocal('revealed', true)\n }\n\n this.$emit('focusin', evt)\n }\n }\n})\n","import Vue from 'vue'\n\nimport ListenersMixin from '../../mixins/listeners.js'\n\nimport debounce from '../../utils/debounce.js'\nimport { height } from '../../utils/dom.js'\nimport { getScrollTarget, getScrollHeight, getScrollPosition, setScrollPosition } from '../../utils/scroll.js'\nimport { listenOpts } from '../../utils/event.js'\nimport { slot, uniqueSlot } from '../../utils/slot.js'\n\nconst { passive } = listenOpts\n\nexport default Vue.extend({\n name: 'QInfiniteScroll',\n\n mixins: [ ListenersMixin ],\n\n props: {\n offset: {\n type: Number,\n default: 500\n },\n\n debounce: {\n type: [ String, Number ],\n default: 100\n },\n\n scrollTarget: {\n default: void 0\n },\n\n initialIndex: Number,\n\n disable: Boolean,\n reverse: Boolean\n },\n\n data () {\n return {\n index: this.initialIndex || 0,\n isFetching: false,\n isWorking: true\n }\n },\n\n watch: {\n disable (val) {\n if (val === true) { this.stop() }\n else { this.resume() }\n },\n\n reverse () {\n if (this.isFetching === false && this.isWorking === true) {\n this.immediatePoll()\n }\n },\n\n scrollTarget () {\n this.updateScrollTarget()\n },\n\n debounce (val) {\n this.__setDebounce(val)\n }\n },\n\n methods: {\n poll () {\n if (this.disable === true || this.isFetching === true || this.isWorking === false) {\n return\n }\n\n const\n scrollHeight = getScrollHeight(this.__scrollTarget),\n scrollPosition = getScrollPosition(this.__scrollTarget),\n containerHeight = height(this.__scrollTarget)\n\n if (this.reverse === false) {\n if (Math.round(scrollPosition + containerHeight + this.offset) >= Math.round(scrollHeight)) {\n this.trigger()\n }\n }\n else if (Math.round(scrollPosition) < this.offset) {\n this.trigger()\n }\n },\n\n trigger () {\n if (this.disable === true || this.isFetching === true || this.isWorking === false) {\n return\n }\n\n this.index++\n this.isFetching = true\n\n const heightBefore = getScrollHeight(this.__scrollTarget)\n\n this.$emit('load', this.index, stop => {\n if (this.isWorking === true) {\n this.isFetching = false\n this.$nextTick(() => {\n if (this.reverse === true) {\n const\n heightAfter = getScrollHeight(this.__scrollTarget),\n scrollPosition = getScrollPosition(this.__scrollTarget),\n heightDifference = heightAfter - heightBefore\n\n setScrollPosition(this.__scrollTarget, scrollPosition + heightDifference)\n }\n\n if (stop === true) {\n this.stop()\n }\n else {\n this.$el.closest('body') && this.poll()\n }\n })\n }\n })\n },\n\n reset () {\n this.index = 0\n },\n\n resume () {\n if (this.isWorking === false) {\n this.isWorking = true\n this.__scrollTarget.addEventListener('scroll', this.poll, passive)\n }\n this.immediatePoll()\n },\n\n stop () {\n if (this.isWorking === true) {\n this.isWorking = false\n this.isFetching = false\n this.__scrollTarget.removeEventListener('scroll', this.poll, passive)\n typeof this.poll.cancel === 'function' && this.poll.cancel()\n }\n },\n\n updateScrollTarget () {\n if (this.__scrollTarget && this.isWorking === true) {\n this.__scrollTarget.removeEventListener('scroll', this.poll, passive)\n }\n\n this.__scrollTarget = getScrollTarget(this.$el, this.scrollTarget)\n\n if (this.isWorking === true) {\n this.__scrollTarget.addEventListener('scroll', this.poll, passive)\n }\n },\n\n setIndex (index) {\n this.index = index\n },\n\n __setDebounce (val) {\n val = parseInt(val, 10)\n\n const oldPoll = this.poll\n\n this.poll = val <= 0\n ? this.immediatePoll\n : debounce(this.immediatePoll, isNaN(val) === true ? 100 : val)\n\n if (this.__scrollTarget && this.isWorking === true) {\n if (oldPoll !== void 0) {\n this.__scrollTarget.removeEventListener('scroll', oldPoll, passive)\n }\n\n this.__scrollTarget.addEventListener('scroll', this.poll, passive)\n }\n }\n },\n\n mounted () {\n this.immediatePoll = this.poll\n this.__setDebounce(this.debounce)\n\n this.updateScrollTarget()\n\n if (this.reverse === true) {\n const\n scrollHeight = getScrollHeight(this.__scrollTarget),\n containerHeight = height(this.__scrollTarget)\n\n setScrollPosition(this.__scrollTarget, scrollHeight - containerHeight)\n }\n\n this.immediatePoll()\n },\n\n activated () {\n if (this.__scrollPosition !== void 0 && this.__scrollTarget) {\n setScrollPosition(this.__scrollTarget, this.__scrollPosition)\n }\n },\n\n deactivated () {\n this.__scrollPosition = this.__scrollTarget\n ? getScrollPosition(this.__scrollTarget)\n : void 0\n },\n\n beforeDestroy () {\n this.stop()\n },\n\n render (h) {\n const child = uniqueSlot(this, 'default', [])\n\n if (this.disable !== true && this.isWorking === true) {\n child[this.reverse === false ? 'push' : 'unshift'](\n h('div', {\n staticClass: 'q-infinite-scroll__loading',\n class: this.isFetching === true ? '' : 'invisible'\n }, slot(this, 'loading'))\n )\n }\n\n return h('div', {\n staticClass: 'q-infinite-scroll',\n on: { ...this.qListeners }\n }, child)\n }\n})\n","import Vue from 'vue'\n\nimport QSpinner from '../spinner/QSpinner.js'\n\nimport TransitionMixin from '../../mixins/transition.js'\nimport DarkMixin from '../../mixins/dark.js'\nimport ListenersMixin from '../../mixins/listeners.js'\n\nexport default Vue.extend({\n name: 'QInnerLoading',\n\n mixins: [ ListenersMixin, DarkMixin, TransitionMixin ],\n\n props: {\n showing: Boolean,\n color: String,\n\n size: {\n type: [String, Number],\n default: 42\n },\n\n label: String,\n labelClass: String,\n labelStyle: [ String, Array, Object ]\n },\n\n computed: {\n classes () {\n return 'q-inner-loading absolute-full column flex-center' +\n (this.isDark === true ? ' q-inner-loading--dark' : '')\n },\n\n labelClasses () {\n return 'q-inner-loading__label' +\n (this.labelClass !== void 0 ? ` ${this.labelClass}` : '')\n }\n },\n\n methods: {\n __getInner (h) {\n const child = [\n h(QSpinner, {\n props: {\n size: this.size,\n color: this.color\n }\n })\n ]\n\n if (this.label !== void 0) {\n child.push(\n h('div', {\n class: this.labelClasses,\n style: this.labelStyle\n }, [ this.label ])\n )\n }\n\n return child\n },\n\n __getContent (h) {\n return this.showing === true\n ? [\n h('div',\n {\n staticClass: this.classes,\n on: { ...this.qListeners }\n },\n this.$scopedSlots.default !== void 0\n ? this.$scopedSlots.default()\n : this.__getInner(h)\n )\n ]\n : void 0\n }\n },\n\n render (h) {\n return h('transition', {\n props: {\n name: this.transition,\n appear: true\n }\n }, this.__getContent(h))\n }\n})\n","import { isDeepEqual } from '../utils/is.js'\n\nconst defaultCfg = {\n threshold: 0,\n root: null,\n rootMargin: '0px'\n}\n\nfunction update (el, ctx, value) {\n let handler, cfg, changed\n\n if (typeof value === 'function') {\n handler = value\n cfg = defaultCfg\n changed = ctx.cfg === void 0\n }\n else {\n handler = value.handler\n cfg = Object.assign({}, defaultCfg, value.cfg)\n changed = ctx.cfg === void 0 || isDeepEqual(ctx.cfg, cfg) === false\n }\n\n if (ctx.handler !== handler) {\n ctx.handler = handler\n }\n\n if (changed === true) {\n ctx.cfg = cfg\n ctx.observer !== void 0 && ctx.observer.unobserve(el)\n\n ctx.observer = new IntersectionObserver(([ entry ]) => {\n if (typeof ctx.handler === 'function') {\n // if observed element is part of a vue transition\n // then we need to be careful...\n if (\n entry.rootBounds === null &&\n (el.__vue__ !== void 0 ? el.__vue__._inactive !== true : document.body.contains(el) === true)\n ) {\n ctx.observer.unobserve(el)\n ctx.observer.observe(el)\n return\n }\n\n const res = ctx.handler(entry, ctx.observer)\n\n if (\n res === false ||\n (ctx.once === true && entry.isIntersecting === true)\n ) {\n destroy(el)\n }\n }\n }, cfg)\n\n ctx.observer.observe(el)\n }\n}\n\nfunction destroy (el) {\n const ctx = el.__qvisible\n\n if (ctx !== void 0) {\n ctx.observer !== void 0 && ctx.observer.unobserve(el)\n delete el.__qvisible\n }\n}\n\nexport default {\n name: 'intersection',\n\n inserted (el, { modifiers, value }) {\n if (el.__qvisible !== void 0) {\n destroy(el)\n el.__qvisible_destroyed = true\n }\n\n const ctx = {\n once: modifiers.once === true\n }\n\n update(el, ctx, value)\n\n el.__qvisible = ctx\n },\n\n update (el, binding) {\n const ctx = el.__qvisible\n ctx !== void 0 && update(el, ctx, binding.value)\n },\n\n unbind (el) {\n if (el.__qvisible_destroyed === void 0) {\n destroy(el)\n }\n else {\n delete el.__qvisible_destroyed\n }\n }\n}\n","import Vue from 'vue'\n\nimport { onSSR } from '../../plugins/Platform.js'\n\nimport Intersection from '../../directives/Intersection.js'\n\nimport TagMixin from '../../mixins/tag.js'\nimport ListenersMixin from '../../mixins/listeners.js'\n\nimport { slot } from '../../utils/slot.js'\n\nexport default Vue.extend({\n name: 'QIntersection',\n\n mixins: [ TagMixin, ListenersMixin ],\n\n directives: {\n Intersection\n },\n\n props: {\n once: Boolean,\n transition: String,\n\n ssrPrerender: Boolean,\n\n margin: String,\n threshold: [ Number, Array ],\n root: {\n default: null\n },\n\n disable: Boolean\n },\n\n data () {\n return {\n showing: onSSR === true ? this.ssrPrerender : false\n }\n },\n\n computed: {\n value () {\n return this.root !== void 0 || this.margin !== void 0 || this.threshold !== void 0\n ? {\n handler: this.__trigger,\n cfg: {\n root: this.root,\n rootMargin: this.margin,\n threshold: this.threshold\n }\n }\n : this.__trigger\n },\n\n directives () {\n if (this.disable !== true && (onSSR !== true || this.once !== true || this.ssrPrerender !== true)) {\n return [{\n name: 'intersection',\n value: this.value,\n modifiers: {\n once: this.once\n }\n }]\n }\n }\n },\n\n methods: {\n __trigger (entry) {\n if (this.showing !== entry.isIntersecting) {\n this.showing = entry.isIntersecting\n\n if (this.qListeners.visibility !== void 0) {\n this.$emit('visibility', this.showing)\n }\n }\n }\n },\n\n render (h) {\n const content = this.showing === true\n ? [ h('div', { key: 'content' }, slot(this, 'default')) ]\n : void 0\n\n return h(this.tag, {\n staticClass: 'q-intersection',\n on: { ...this.qListeners },\n directives: this.directives\n }, this.transition\n ? [\n h('transition', {\n props: { name: 'q-transition--' + this.transition }\n }, content)\n ]\n : content\n )\n }\n})\n","import Vue from 'vue'\n\nimport { position, stopAndPrevent } from '../../utils/event.js'\nimport { between, normalizeToInterval } from '../../utils/format.js'\nimport { slot } from '../../utils/slot.js'\nimport cache from '../../utils/cache.js'\n\nimport QCircularProgress from '../circular-progress/QCircularProgress.js'\nimport FormMixin from '../../mixins/form.js'\nimport TouchPan from '../../directives/TouchPan.js'\n\n// PGDOWN, LEFT, DOWN, PGUP, RIGHT, UP\nconst keyCodes = [34, 37, 40, 33, 39, 38]\n\nexport default Vue.extend({\n name: 'QKnob',\n\n mixins: [\n { props: QCircularProgress.options.props },\n FormMixin\n ],\n\n directives: {\n TouchPan\n },\n\n props: {\n innerMin: Number,\n innerMax: Number,\n\n step: {\n type: Number,\n default: 1,\n validator: v => v >= 0\n },\n\n tabindex: {\n type: [Number, String],\n default: 0\n },\n\n disable: Boolean,\n readonly: Boolean\n },\n\n data () {\n const innerMin = this.__getInnerMin(this.innerMin)\n const innerMax = this.__getInnerMax(this.innerMax)\n\n return {\n model: this.value === null ? innerMin : between(this.value, innerMin, innerMax),\n dragging: false\n }\n },\n\n watch: {\n modelUpdate () {\n this.model = this.value === null\n ? this.computedInnerMin\n : between(this.value, this.computedInnerMin, this.computedInnerMax)\n\n this.__updateValue(true)\n }\n },\n\n computed: {\n classes () {\n return 'q-knob non-selectable' + (\n this.editable === true\n ? ' q-knob--editable'\n : (this.disable === true ? ' disabled' : '')\n )\n },\n\n computedInnerMin () {\n return this.__getInnerMin(this.innerMin)\n },\n\n computedInnerMax () {\n return this.__getInnerMax(this.innerMax)\n },\n\n modelUpdate () {\n return `${this.value}|${this.computedInnerMin}|${this.computedInnerMax}`\n },\n\n editable () {\n return this.disable === false && this.readonly === false\n },\n\n decimals () {\n return (String(this.step).trim('0').split('.')[1] || '').length\n },\n\n computedStep () {\n return this.step === 0 ? 1 : this.step\n },\n\n computedInstantFeedback () {\n return this.instantFeedback === true ||\n this.dragging === true\n },\n\n onEvents () {\n return this.$q.platform.is.mobile === true\n ? { click: this.__click }\n : {\n mousedown: this.__activate,\n click: this.__click,\n keydown: this.__keydown,\n keyup: this.__keyup\n }\n },\n\n attrs () {\n const attrs = {\n role: 'slider',\n 'aria-valuemin': this.computedInnerMin,\n 'aria-valuemax': this.computedInnerMax,\n 'aria-valuenow': this.value\n }\n\n if (this.editable === true) {\n attrs.tabindex = this.tabindex\n }\n else {\n attrs[`aria-${this.disable === true ? 'disabled' : 'readonly'}`] = ''\n }\n\n return attrs\n }\n },\n\n methods: {\n __getInnerMin (val) {\n return isNaN(val) === true || this.innerMin < this.min\n ? this.min\n : this.innerMin\n },\n\n __getInnerMax (val) {\n return isNaN(val) === true || val > this.max\n ? this.max\n : this.innerMax\n },\n\n __updateCenterPosition () {\n const { top, left, width, height } = this.$el.getBoundingClientRect()\n this.centerPosition = {\n top: top + height / 2,\n left: left + width / 2\n }\n },\n\n __pan (event) {\n if (event.isFinal) {\n this.__updatePosition(event.evt, true)\n this.dragging = false\n }\n else if (event.isFirst) {\n this.__updateCenterPosition()\n this.dragging = true\n this.__updatePosition(event.evt)\n }\n else {\n this.__updatePosition(event.evt)\n }\n },\n\n __click (evt) {\n this.__updateCenterPosition()\n this.__updatePosition(evt, true)\n },\n\n __keydown (evt) {\n if (!keyCodes.includes(evt.keyCode)) {\n return\n }\n\n stopAndPrevent(evt)\n\n const\n step = ([34, 33].includes(evt.keyCode) ? 10 : 1) * this.computedStep,\n offset = [34, 37, 40].includes(evt.keyCode) ? -step : step\n\n this.model = between(\n parseFloat((this.model + offset).toFixed(this.decimals)),\n this.computedInnerMin,\n this.computedInnerMax\n )\n\n this.__updateValue()\n },\n\n __keyup (evt) {\n if (keyCodes.includes(evt.keyCode)) {\n this.__updateValue(true)\n }\n },\n\n __activate (evt) {\n this.__updateCenterPosition()\n this.__updatePosition(evt)\n },\n\n __updatePosition (evt, change) {\n const\n center = this.centerPosition,\n pos = position(evt),\n height = Math.abs(pos.top - center.top),\n distance = Math.sqrt(\n height ** 2 +\n Math.abs(pos.left - center.left) ** 2\n )\n\n let angle = Math.asin(height / distance) * (180 / Math.PI)\n\n if (pos.top < center.top) {\n angle = center.left < pos.left ? 90 - angle : 270 + angle\n }\n else {\n angle = center.left < pos.left ? angle + 90 : 270 - angle\n }\n\n if (this.$q.lang.rtl === true) {\n angle = normalizeToInterval(-angle - this.angle, 0, 360)\n }\n else if (this.angle) {\n angle = normalizeToInterval(angle - this.angle, 0, 360)\n }\n\n if (this.reverse === true) {\n angle = 360 - angle\n }\n\n let model = this.min + (angle / 360) * (this.max - this.min)\n\n if (this.step !== 0) {\n const\n step = this.computedStep,\n modulo = model % step\n\n model = model - modulo +\n (Math.abs(modulo) >= step / 2 ? (modulo < 0 ? -1 : 1) * step : 0)\n\n model = parseFloat(model.toFixed(this.decimals))\n }\n\n model = between(model, this.computedInnerMin, this.computedInnerMax)\n\n this.$emit('drag-value', model)\n\n if (this.model !== model) {\n this.model = model\n }\n\n this.__updateValue(change)\n },\n\n __updateValue (change) {\n this.value !== this.model && this.$emit('input', this.model)\n change === true && this.$emit('change', this.model)\n },\n\n __getNameInput () {\n return this.$createElement('input', { attrs: this.formAttrs })\n }\n },\n\n render (h) {\n const data = {\n class: this.classes,\n attrs: this.attrs,\n props: {\n ...this.$props,\n value: this.model,\n instantFeedback: this.computedInstantFeedback\n }\n }\n\n if (this.editable === true) {\n data.on = this.onEvents\n data.directives = cache(this, 'dir', [{\n name: 'touch-pan',\n value: this.__pan,\n modifiers: {\n prevent: true,\n stop: true,\n mouse: true\n }\n }])\n\n if (this.name !== void 0) {\n data.scopedSlots = {\n internal: this.__getNameInput\n }\n }\n }\n\n return h(QCircularProgress, data, slot(this, 'default'))\n }\n})\n","import Vue from 'vue'\n\nimport CanRenderMixin from '../../mixins/can-render.js'\nimport TagMixin from '../../mixins/tag.js'\nimport ListenersMixin from '../../mixins/listeners.js'\n\nimport { slot } from '../../utils/slot.js'\n\nexport default Vue.extend({\n name: 'QNoSsr',\n\n mixins: [ CanRenderMixin, TagMixin, ListenersMixin ],\n\n props: {\n placeholder: String\n },\n\n render (h) {\n const data = {\n on: { ...this.qListeners }\n }\n\n if (this.canRender === true) {\n const node = slot(this, 'default')\n return node === void 0\n ? node\n : (node.length > 1 ? h(this.tag, data, node) : node[0])\n }\n\n data.staticClass = 'q-no-ssr-placeholder'\n\n const node = slot(this, 'placeholder')\n if (node !== void 0) {\n return node.length > 1\n ? h(this.tag, data, node)\n : node[0]\n }\n\n if (this.placeholder !== void 0) {\n return h(this.tag, data, [\n this.placeholder\n ])\n }\n }\n})\n","import Vue from 'vue'\n\nimport QRadio from '../radio/QRadio.js'\nimport QCheckbox from '../checkbox/QCheckbox.js'\nimport QToggle from '../toggle/QToggle.js'\n\nimport DarkMixin from '../../mixins/dark.js'\nimport ListenersMixin from '../../mixins/listeners.js'\n\nimport cache from '../../utils/cache.js'\n\nconst components = {\n radio: QRadio,\n checkbox: QCheckbox,\n toggle: QToggle\n}\n\nconst typeValues = Object.keys(components)\n\nexport default Vue.extend({\n name: 'QOptionGroup',\n\n mixins: [ DarkMixin, ListenersMixin ],\n\n props: {\n value: {\n required: true\n },\n options: {\n type: Array,\n validator (opts) {\n return opts.every(opt => 'value' in opt && 'label' in opt)\n }\n },\n\n name: String,\n\n type: {\n default: 'radio',\n validator: v => typeValues.includes(v)\n },\n\n color: String,\n keepColor: Boolean,\n dense: Boolean,\n\n size: String,\n\n leftLabel: Boolean,\n inline: Boolean,\n disable: Boolean\n },\n\n computed: {\n component () {\n return components[this.type]\n },\n\n model () {\n return Array.isArray(this.value)\n ? this.value.slice()\n : this.value\n },\n\n classes () {\n return 'q-option-group q-gutter-x-sm' +\n (this.inline === true ? ' q-option-group--inline' : '')\n },\n\n attrs () {\n if (this.type === 'radio') {\n const attrs = {\n role: 'radiogroup'\n }\n\n if (this.disable === true) {\n attrs['aria-disabled'] = 'true'\n }\n\n return attrs\n }\n }\n },\n\n methods: {\n __update (value) {\n this.$emit('input', value)\n }\n },\n\n created () {\n const isArray = Array.isArray(this.value)\n\n if (this.type === 'radio') {\n if (isArray) {\n console.error('q-option-group: model should not be array')\n }\n }\n else if (isArray === false) {\n console.error('q-option-group: model should be array in your case')\n }\n },\n\n render (h) {\n return h('div', {\n class: this.classes,\n attrs: this.attrs,\n on: { ...this.qListeners }\n }, this.options.map((opt, i) => {\n const child = this.$scopedSlots[ 'label-' + i ] !== void 0\n ? this.$scopedSlots[ 'label-' + i ](opt)\n : (\n this.$scopedSlots.label !== void 0\n ? this.$scopedSlots.label(opt)\n : void 0\n )\n\n return h('div', [\n h(this.component, {\n props: {\n value: this.value,\n val: opt.value,\n name: opt.name === void 0 ? this.name : opt.name,\n disable: this.disable || opt.disable,\n label: child === void 0 ? opt.label : void 0,\n leftLabel: opt.leftLabel === void 0 ? this.leftLabel : opt.leftLabel,\n color: opt.color === void 0 ? this.color : opt.color,\n checkedIcon: opt.checkedIcon,\n uncheckedIcon: opt.uncheckedIcon,\n dark: opt.dark || this.isDark,\n size: opt.size === void 0 ? this.size : opt.size,\n dense: this.dense,\n keepColor: opt.keepColor === void 0 ? this.keepColor : opt.keepColor\n },\n on: cache(this, 'inp', {\n input: this.__update\n })\n }, child)\n ])\n }))\n }\n})\n","import Vue from 'vue'\n\nimport ListenersMixin from '../../mixins/listeners.js'\n\nimport { slot } from '../../utils/slot.js'\n\nexport default Vue.extend({\n name: 'QPageSticky',\n\n mixins: [ ListenersMixin ],\n\n inject: {\n layout: {\n default () {\n console.error('QPageSticky needs to be child of QLayout')\n }\n }\n },\n\n props: {\n position: {\n type: String,\n default: 'bottom-right',\n validator: v => [\n 'top-right', 'top-left',\n 'bottom-right', 'bottom-left',\n 'top', 'right', 'bottom', 'left'\n ].includes(v)\n },\n offset: {\n type: Array,\n validator: v => v.length === 2\n },\n expand: Boolean\n },\n\n computed: {\n attach () {\n const pos = this.position\n\n return {\n top: pos.indexOf('top') > -1,\n right: pos.indexOf('right') > -1,\n bottom: pos.indexOf('bottom') > -1,\n left: pos.indexOf('left') > -1,\n vertical: pos === 'top' || pos === 'bottom',\n horizontal: pos === 'left' || pos === 'right'\n }\n },\n\n top () {\n return this.layout.header.offset\n },\n\n right () {\n return this.layout.right.offset\n },\n\n bottom () {\n return this.layout.footer.offset\n },\n\n left () {\n return this.layout.left.offset\n },\n\n style () {\n let\n posX = 0,\n posY = 0\n\n const\n attach = this.attach,\n dir = this.$q.lang.rtl === true ? -1 : 1\n\n if (attach.top === true && this.top !== 0) {\n posY = `${this.top}px`\n }\n else if (attach.bottom === true && this.bottom !== 0) {\n posY = `${-this.bottom}px`\n }\n\n if (attach.left === true && this.left !== 0) {\n posX = `${dir * this.left}px`\n }\n else if (attach.right === true && this.right !== 0) {\n posX = `${-dir * this.right}px`\n }\n\n const css = { transform: `translate(${posX}, ${posY})` }\n\n if (this.offset) {\n css.margin = `${this.offset[1]}px ${this.offset[0]}px`\n }\n\n if (attach.vertical === true) {\n if (this.left !== 0) {\n css[this.$q.lang.rtl === true ? 'right' : 'left'] = `${this.left}px`\n }\n if (this.right !== 0) {\n css[this.$q.lang.rtl === true ? 'left' : 'right'] = `${this.right}px`\n }\n }\n else if (attach.horizontal === true) {\n if (this.top !== 0) {\n css.top = `${this.top}px`\n }\n if (this.bottom !== 0) {\n css.bottom = `${this.bottom}px`\n }\n }\n\n return css\n },\n\n classes () {\n return `fixed-${this.position} q-page-sticky--${this.expand === true ? 'expand' : 'shrink'}`\n }\n },\n\n render (h) {\n const content = slot(this, 'default')\n\n return h('div', {\n staticClass: 'q-page-sticky row flex-center',\n class: this.classes,\n style: this.style,\n on: { ...this.qListeners }\n },\n this.expand === true\n ? content\n : [ h('div', content) ]\n )\n }\n})\n","import Vue from 'vue'\n\nimport QPageSticky from '../page-sticky/QPageSticky.js'\nimport { getScrollTarget, setScrollPosition } from '../../utils/scroll.js'\n\nexport default Vue.extend({\n name: 'QPageScroller',\n\n mixins: [ QPageSticky ],\n\n props: {\n scrollOffset: {\n type: Number,\n default: 1000\n },\n\n reverse: Boolean,\n\n duration: {\n type: Number,\n default: 300\n },\n\n offset: {\n default: () => [18, 18]\n }\n },\n\n inject: {\n layout: {\n default () {\n console.error('QPageScroller needs to be used within a QLayout')\n }\n }\n },\n\n data () {\n return {\n showing: this.__isVisible()\n }\n },\n\n computed: {\n scrollHeight () {\n return this.layout.height - (\n this.layout.container === true\n ? this.layout.containerHeight\n : this.$q.screen.height\n )\n },\n\n onEvents () {\n return {\n ...this.qListeners,\n click: this.__onClick\n }\n }\n },\n\n watch: {\n 'layout.scroll.position' () {\n this.__updateVisibility()\n },\n\n reverse: {\n handler (val) {\n if (val === true) {\n if (this.heightWatcher === void 0) {\n this.heightWatcher = this.$watch('scrollHeight', this.__updateVisibility)\n }\n }\n else if (this.heightWatcher !== void 0) {\n this.__cleanup()\n }\n },\n immediate: true\n }\n },\n\n methods: {\n __isVisible () {\n return this.reverse === true\n ? this.scrollHeight - this.layout.scroll.position > this.scrollOffset\n : this.layout.scroll.position > this.scrollOffset\n },\n\n __onClick (e) {\n const target = getScrollTarget(this.layout.container === true ? this.$el : this.layout.$el)\n setScrollPosition(target, this.reverse === true ? this.layout.height : 0, this.duration)\n this.$emit('click', e)\n },\n\n __updateVisibility () {\n const newVal = this.__isVisible()\n if (this.showing !== newVal) {\n this.showing = newVal\n }\n },\n\n __cleanup () {\n this.heightWatcher()\n this.heightWatcher = void 0\n }\n },\n\n render (h) {\n return h('transition', {\n props: { name: 'q-transition--fade' }\n },\n this.showing === true\n ? [\n h('div', {\n staticClass: 'q-page-scroller',\n on: this.onEvents\n }, [\n QPageSticky.options.render.call(this, h)\n ])\n ]\n : null\n )\n },\n\n beforeDestroy () {\n this.heightWatcher !== void 0 && this.__cleanup()\n }\n})\n","import Vue from 'vue'\n\nimport QBtn from '../btn/QBtn.js'\nimport QInput from '../input/QInput.js'\n\nimport DarkMixin from '../../mixins/dark.js'\nimport ListenersMixin from '../../mixins/listeners.js'\n\nimport { stop } from '../../utils/event.js'\nimport { between } from '../../utils/format.js'\nimport { isKeyCode } from '../../utils/key-composition.js'\nimport cache from '../../utils/cache.js'\n\nexport default Vue.extend({\n name: 'QPagination',\n\n mixins: [ DarkMixin, ListenersMixin ],\n\n props: {\n value: {\n type: Number,\n required: true\n },\n min: {\n type: Number,\n default: 1\n },\n max: {\n type: Number,\n required: true\n },\n\n color: {\n type: String,\n default: 'primary'\n },\n textColor: String,\n\n activeColor: String,\n activeTextColor: String,\n\n inputStyle: [Array, String, Object],\n inputClass: [Array, String, Object],\n\n size: String,\n\n disable: Boolean,\n\n input: Boolean,\n\n iconPrev: String,\n iconNext: String,\n iconFirst: String,\n iconLast: String,\n\n toFn: Function,\n\n boundaryLinks: {\n type: Boolean,\n default: null\n },\n boundaryNumbers: {\n type: Boolean,\n default: null\n },\n directionLinks: {\n type: Boolean,\n default: null\n },\n ellipses: {\n type: Boolean,\n default: null\n },\n maxPages: {\n type: Number,\n default: 0,\n validator: v => v >= 0\n },\n\n ripple: {\n type: [Boolean, Object],\n default: null\n },\n\n round: Boolean,\n rounded: Boolean,\n\n flat: Boolean,\n outline: Boolean,\n unelevated: Boolean,\n push: Boolean,\n glossy: Boolean,\n\n dense: Boolean,\n padding: {\n type: String,\n default: '3px 2px'\n }\n },\n\n data () {\n return {\n newPage: null\n }\n },\n\n watch: {\n min () {\n this.model = this.value\n },\n\n max () {\n this.model = this.value\n }\n },\n\n computed: {\n model: {\n get () {\n return this.value\n },\n set (val) {\n val = parseInt(val, 10)\n if (this.disable || isNaN(val)) {\n return\n }\n const value = between(val, this.min, this.max)\n this.$emit('input', value)\n }\n },\n\n inputPlaceholder () {\n return this.model + ' / ' + this.max\n },\n\n __boundaryLinks () {\n return this.__getBool(this.boundaryLinks, this.input)\n },\n\n __boundaryNumbers () {\n return this.__getBool(this.boundaryNumbers, !this.input)\n },\n\n __directionLinks () {\n return this.__getBool(this.directionLinks, this.input)\n },\n\n __ellipses () {\n return this.__getBool(this.ellipses, !this.input)\n },\n\n icons () {\n const ico = [\n this.iconFirst || this.$q.iconSet.pagination.first,\n this.iconPrev || this.$q.iconSet.pagination.prev,\n this.iconNext || this.$q.iconSet.pagination.next,\n this.iconLast || this.$q.iconSet.pagination.last\n ]\n return this.$q.lang.rtl === true ? ico.reverse() : ico\n },\n\n attrs () {\n if (this.disable === true) {\n return {\n 'aria-disabled': 'true'\n }\n }\n },\n\n btnProps () {\n return {\n round: this.round,\n rounded: this.rounded,\n\n outline: this.outline,\n unelevated: this.unelevated,\n push: this.push,\n glossy: this.glossy,\n\n dense: this.dense,\n padding: this.padding,\n\n color: this.color,\n flat: true,\n size: this.size,\n ripple: this.ripple !== null\n ? this.ripple\n : true\n }\n },\n\n activeBtnProps () {\n return {\n flat: this.flat,\n color: this.activeColor || this.color,\n textColor: this.activeTextColor || this.textColor\n }\n }\n },\n\n methods: {\n set (value) {\n this.model = value\n },\n\n setByOffset (offset) {\n this.model = this.model + offset\n },\n\n __update () {\n this.model = this.newPage\n this.newPage = null\n },\n\n __getBool (val, otherwise) {\n return [true, false].includes(val)\n ? val\n : otherwise\n },\n\n __getBtn (h, data, props, page) {\n data.props = {\n ...this.btnProps,\n ...props\n }\n\n if (page !== void 0) {\n if (this.toFn !== void 0) {\n data.props.to = this.toFn(page)\n }\n else {\n data.on = { click: () => this.set(page) }\n }\n }\n\n return h(QBtn, data)\n }\n },\n\n render (h) {\n const\n contentStart = [],\n contentEnd = [],\n contentMiddle = []\n\n if (this.__boundaryLinks) {\n contentStart.push(this.__getBtn(h, {\n key: 'bls'\n }, {\n disable: this.disable || this.value <= this.min,\n icon: this.icons[0]\n }, this.min))\n contentEnd.unshift(this.__getBtn(h, {\n key: 'ble'\n }, {\n disable: this.disable || this.value >= this.max,\n icon: this.icons[3]\n }, this.max))\n }\n\n if (this.__directionLinks) {\n contentStart.push(this.__getBtn(h, {\n key: 'bdp'\n }, {\n disable: this.disable || this.value <= this.min,\n icon: this.icons[1]\n }, this.value - 1))\n contentEnd.unshift(this.__getBtn(h, {\n key: 'bdn'\n }, {\n disable: this.disable || this.value >= this.max,\n icon: this.icons[2]\n }, this.value + 1))\n }\n\n if (this.input === true) {\n contentMiddle.push(h(QInput, {\n staticClass: 'inline',\n style: {\n width: `${this.inputPlaceholder.length / 1.5}em`\n },\n props: {\n type: 'number',\n dense: true,\n value: this.newPage,\n disable: this.disable,\n dark: this.isDark,\n borderless: true,\n inputClass: this.inputClass,\n inputStyle: this.inputStyle\n },\n attrs: {\n placeholder: this.inputPlaceholder,\n min: this.min,\n max: this.max\n },\n on: cache(this, 'inp', {\n input: value => { this.newPage = value },\n keyup: e => { isKeyCode(e, 13) === true && this.__update() },\n blur: this.__update\n })\n }))\n }\n else { // is type select\n let\n maxPages = Math.max(\n this.maxPages,\n 1 + (this.__ellipses ? 2 : 0) + (this.__boundaryNumbers ? 2 : 0)\n ),\n pgFrom = this.min,\n pgTo = this.max,\n ellipsesStart = false,\n ellipsesEnd = false,\n boundaryStart = false,\n boundaryEnd = false\n\n if (this.maxPages && maxPages < (this.max - this.min + 1)) {\n maxPages = 1 + Math.floor(maxPages / 2) * 2\n pgFrom = Math.max(this.min, Math.min(this.max - maxPages + 1, this.value - Math.floor(maxPages / 2)))\n pgTo = Math.min(this.max, pgFrom + maxPages - 1)\n if (this.__boundaryNumbers) {\n boundaryStart = true\n pgFrom += 1\n }\n if (this.__ellipses && pgFrom > (this.min + (this.__boundaryNumbers ? 1 : 0))) {\n ellipsesStart = true\n pgFrom += 1\n }\n if (this.__boundaryNumbers) {\n boundaryEnd = true\n pgTo -= 1\n }\n if (this.__ellipses && pgTo < (this.max - (this.__boundaryNumbers ? 1 : 0))) {\n ellipsesEnd = true\n pgTo -= 1\n }\n }\n const style = {\n minWidth: `${Math.max(2, String(this.max).length)}em`\n }\n if (boundaryStart) {\n const active = this.min === this.value\n const btn = {\n disable: this.disable,\n flat: !active,\n label: this.min\n }\n\n if (active) {\n btn.color = this.activeColor || this.color\n btn.textColor = this.activeTextColor || this.textColor\n }\n\n contentStart.push(this.__getBtn(h, {\n key: 'bns',\n style\n }, btn, this.min))\n }\n if (boundaryEnd) {\n const active = this.max === this.value\n const btn = {\n disable: this.disable,\n flat: !active,\n label: this.max\n }\n\n if (active) {\n btn.color = this.activeColor || this.color\n btn.textColor = this.activeTextColor || this.textColor\n }\n\n contentEnd.unshift(this.__getBtn(h, {\n key: 'bne',\n style\n }, btn, this.max))\n }\n if (ellipsesStart) {\n contentStart.push(this.__getBtn(h, {\n key: 'bes',\n style\n }, {\n disable: this.disable,\n label: 'ā¦',\n ripple: false\n }, pgFrom - 1))\n }\n if (ellipsesEnd) {\n contentEnd.unshift(this.__getBtn(h, {\n key: 'bee',\n style\n }, {\n disable: this.disable,\n label: 'ā¦',\n ripple: false\n }, pgTo + 1))\n }\n for (let i = pgFrom; i <= pgTo; i++) {\n const btn = {\n disable: this.disable,\n flat: true,\n label: i\n }\n\n if (i === this.value) {\n Object.assign(btn, this.activeBtnProps)\n }\n\n contentMiddle.push(this.__getBtn(h, {\n key: `bpg${i}`,\n style\n }, btn, i))\n }\n }\n\n return h('div', {\n staticClass: 'q-pagination row no-wrap items-center',\n class: { disabled: this.disable },\n attrs: this.attrs,\n on: { ...this.qListeners }\n }, [\n contentStart,\n\n h('div', {\n staticClass: 'row justify-center',\n on: this.input === true\n ? cache(this, 'stop', { input: stop })\n : null\n }, [\n contentMiddle\n ]),\n\n contentEnd\n ])\n }\n})\n","export default function (fn) {\n let wait = false, frame, callArgs\n\n function debounced (/* ...args */) {\n callArgs = arguments\n if (wait === true) { return }\n\n wait = true\n frame = requestAnimationFrame(() => {\n fn.apply(this, callArgs)\n callArgs = void 0\n wait = false\n })\n }\n\n debounced.cancel = () => {\n window.cancelAnimationFrame(frame)\n wait = false\n }\n\n return debounced\n}\n","import Vue from 'vue'\n\nimport ListenersMixin from '../../mixins/listeners.js'\n\nimport { height, offset } from '../../utils/dom.js'\nimport frameDebounce from '../../utils/frame-debounce.js'\nimport { getScrollTarget } from '../../utils/scroll.js'\nimport { slot } from '../../utils/slot.js'\nimport { listenOpts } from '../../utils/event.js'\n\nconst { passive } = listenOpts\n\nexport default Vue.extend({\n name: 'QParallax',\n\n mixins: [ ListenersMixin ],\n\n props: {\n src: String,\n height: {\n type: Number,\n default: 500\n },\n speed: {\n type: Number,\n default: 1,\n validator: v => v >= 0 && v <= 1\n },\n\n scrollTarget: {\n default: void 0\n }\n },\n\n data () {\n return {\n scrolling: false,\n percentScrolled: 0\n }\n },\n\n watch: {\n height () {\n this.working === true && this.__updatePos()\n },\n\n scrollTarget () {\n if (this.working === true) {\n this.__stop()\n this.__start()\n }\n }\n },\n\n methods: {\n __update (percentage) {\n this.percentScrolled = percentage\n this.qListeners.scroll !== void 0 && this.$emit('scroll', percentage)\n },\n\n __updatePos () {\n let containerTop, containerHeight, containerBottom\n\n if (this.__scrollTarget === window) {\n containerTop = 0\n containerHeight = window.innerHeight\n containerBottom = containerHeight\n }\n else {\n containerTop = offset(this.__scrollTarget).top\n containerHeight = height(this.__scrollTarget)\n containerBottom = containerTop + containerHeight\n }\n\n const top = offset(this.$el).top\n const bottom = top + this.height\n\n if (this.observer !== void 0 || (bottom > containerTop && top < containerBottom)) {\n const percent = (containerBottom - top) / (this.height + containerHeight)\n this.__setPos((this.mediaHeight - this.height) * percent * this.speed)\n this.__update(percent)\n }\n },\n\n __setPos (offset) {\n // apply it immediately without any delay\n this.media.style.transform = `translate3d(-50%,${Math.round(offset)}px,0)`\n },\n\n __onResize () {\n this.mediaHeight = this.media.naturalHeight || this.media.videoHeight || height(this.media)\n this.working === true && this.__updatePos()\n },\n\n __start () {\n this.working = true\n this.__scrollTarget = getScrollTarget(this.$el, this.scrollTarget)\n this.__scrollTarget.addEventListener('scroll', this.__updatePos, passive)\n window.addEventListener('resize', this.__resizeHandler, passive)\n this.__updatePos()\n },\n\n __stop () {\n if (this.working === true) {\n this.working = false\n this.__setPos.cancel()\n this.__update.cancel()\n this.__resizeHandler.cancel()\n this.__scrollTarget.removeEventListener('scroll', this.__updatePos, passive)\n window.removeEventListener('resize', this.__resizeHandler, passive)\n this.__scrollTarget = void 0\n }\n }\n },\n\n render (h) {\n return h('div', {\n staticClass: 'q-parallax',\n style: { height: `${this.height}px` },\n on: { ...this.qListeners }\n }, [\n h('div', {\n ref: 'mediaParent',\n staticClass: 'q-parallax__media absolute-full'\n }, this.$scopedSlots.media !== void 0 ? this.$scopedSlots.media() : [\n h('img', {\n ref: 'media',\n attrs: {\n src: this.src\n }\n })\n ]),\n\n h(\n 'div',\n { staticClass: 'q-parallax__content absolute-full column flex-center' },\n this.$scopedSlots.content !== void 0\n ? this.$scopedSlots.content({ percentScrolled: this.percentScrolled })\n : slot(this, 'default')\n )\n ])\n },\n\n mounted () {\n this.__setPos = frameDebounce(this.__setPos)\n this.__update = frameDebounce(this.__update)\n this.__resizeHandler = frameDebounce(this.__onResize)\n\n this.media = this.$scopedSlots.media !== void 0\n ? this.$refs.mediaParent.children[0]\n : this.$refs.media\n\n this.media.onload = this.media.onloadstart = this.media.loadedmetadata = this.__onResize\n this.__onResize()\n this.media.style.display = 'initial'\n\n if (window.IntersectionObserver !== void 0) {\n this.observer = new IntersectionObserver(entries => {\n this[entries[0].isIntersecting === true ? '__start' : '__stop']()\n })\n\n this.observer.observe(this.$el)\n }\n else {\n this.__start()\n }\n },\n\n beforeDestroy () {\n this.__stop()\n this.observer !== void 0 && this.observer.disconnect()\n this.media.onload = this.media.onloadstart = this.media.loadedmetadata = null\n }\n})\n","// adapted from https://stackoverflow.com/a/40294058\n\nexport default function cloneDeep (data, hash = new WeakMap()) {\n if (Object(data) !== data) return data\n if (hash.has(data)) return hash.get(data)\n\n const result = data instanceof Date\n ? new Date(data)\n : (data instanceof RegExp\n ? new RegExp(data.source, data.flags)\n : (data instanceof Set\n ? new Set()\n : (data instanceof Map\n ? new Map()\n : (typeof data.constructor !== 'function'\n ? Object.create(null)\n : (data.prototype !== void 0 && typeof data.prototype.constructor === 'function'\n ? data\n : new data.constructor()\n )\n )\n )\n )\n )\n\n if (typeof data.constructor === 'function' && typeof data.valueOf === 'function') {\n const val = data.valueOf()\n\n if (Object(val) !== val) {\n const result = new data.constructor(val)\n\n hash.set(data, result)\n\n return result\n }\n }\n\n hash.set(data, result)\n\n if (data instanceof Set) {\n data.forEach(val => {\n result.add(cloneDeep(val, hash))\n })\n }\n else if (data instanceof Map) {\n data.forEach((val, key) => {\n result.set(key, cloneDeep(val, hash))\n })\n }\n\n return Object.assign(\n result,\n ...Object.keys(data).map(key => ({ [key]: cloneDeep(data[key], hash) }))\n )\n}\n","import Vue from 'vue'\n\nimport QMenu from '../menu/QMenu.js'\nimport QBtn from '../btn/QBtn.js'\n\nimport AttrsMixin from '../../mixins/attrs.js'\n\nimport clone from '../../utils/clone.js'\nimport { isDeepEqual } from '../../utils/is.js'\nimport { slot } from '../../utils/slot.js'\nimport { isKeyCode } from '../../utils/key-composition.js'\nimport cache from '../../utils/cache.js'\n\nexport default Vue.extend({\n name: 'QPopupEdit',\n\n mixins: [ AttrsMixin ],\n\n props: {\n value: {\n required: true\n },\n title: String,\n buttons: Boolean,\n labelSet: String,\n labelCancel: String,\n\n color: {\n type: String,\n default: 'primary'\n },\n validate: {\n type: Function,\n default: () => true\n },\n\n autoSave: Boolean,\n\n /* menu props overrides */\n cover: {\n type: Boolean,\n default: true\n },\n contentClass: String,\n /* end of menu props */\n\n disable: Boolean\n },\n\n data () {\n return {\n modelChanged: false,\n model: null\n }\n },\n\n computed: {\n classes () {\n return 'q-popup-edit' +\n (this.contentClass !== void 0 ? ` ${this.contentClass}` : '')\n },\n\n modelValue () {\n return this.modelChanged === true ? this.model : this.value\n },\n\n initialValue () {\n return this.modelChanged !== true ? this.model : this.value\n },\n\n defaultSlotScope () {\n const acc = {\n initialValue: this.initialValue,\n updatePosition: this.__reposition,\n emitValue: this.__changeModel,\n validate: this.validate,\n set: this.set,\n cancel: this.cancel\n }\n\n Object.defineProperty(acc, 'value', {\n get: () => this.modelValue,\n set: this.__changeModel\n })\n\n return acc\n },\n\n menuProps () {\n return {\n ...this.qAttrs,\n cover: this.cover,\n contentClass: this.classes\n }\n }\n },\n\n methods: {\n set () {\n if (this.validate(this.modelValue) !== true) {\n return\n }\n if (this.__hasChanged() === true) {\n this.$emit('save', this.modelValue, this.initialValue)\n this.modelChanged === true && this.$emit('input', this.modelValue)\n }\n this.__close()\n },\n\n cancel () {\n if (this.__hasChanged() === true) {\n this.$emit('cancel', this.modelValue, this.initialValue)\n this.modelChanged !== true && this.$emit('input', this.initialValue)\n }\n this.__close()\n },\n\n show (e) {\n this.$refs.menu !== void 0 && this.$refs.menu.show(e)\n },\n\n hide (e) {\n this.$refs.menu !== void 0 && this.$refs.menu.hide(e)\n },\n\n __hasChanged () {\n return isDeepEqual(this.modelValue, this.initialValue) === false\n },\n\n __changeModel (val) {\n if (this.disable !== true) {\n this.model = val\n this.modelChanged = true\n }\n },\n\n __close () {\n this.validated = true\n this.$refs.menu.showing === true && this.$refs.menu.hide()\n },\n\n __reposition () {\n this.$nextTick(() => {\n this.$refs.menu.updatePosition()\n })\n },\n\n __getContent (h) {\n const\n title = slot(this, 'title', this.title),\n child = this.$scopedSlots.default === void 0\n ? []\n : [].concat(this.$scopedSlots.default(this.defaultSlotScope))\n\n title && child.unshift(\n h('div', { staticClass: 'q-dialog__title q-mt-sm q-mb-sm' }, [ title ])\n )\n\n this.buttons === true && child.push(\n h('div', { staticClass: 'q-popup-edit__buttons row justify-center no-wrap' }, [\n h(QBtn, {\n props: {\n flat: true,\n color: this.color,\n label: this.labelCancel || this.$q.lang.label.cancel\n },\n on: cache(this, 'cancel', { click: this.cancel })\n }),\n h(QBtn, {\n props: {\n flat: true,\n color: this.color,\n label: this.labelSet || this.$q.lang.label.set\n },\n on: cache(this, 'ok', { click: this.set })\n })\n ])\n )\n\n return child\n }\n },\n\n render (h) {\n if (this.disable === true) { return }\n\n return h(QMenu, {\n ref: 'menu',\n props: this.menuProps,\n on: cache(this, 'menu', {\n 'before-show': () => {\n this.validated = false\n this.modelChanged = false\n this.model = clone(this.value)\n this.watcher = this.$watch('value', this.__reposition)\n this.$emit('before-show')\n },\n\n show: () => {\n this.$emit('show')\n },\n\n 'escape-key': this.cancel,\n\n 'before-hide': () => {\n this.watcher()\n\n if (this.validated === false && this.__hasChanged() === true) {\n if (this.autoSave === true && this.validate(this.model) === true) {\n this.$emit('save', this.modelValue, this.initialValue)\n this.modelChanged === true && this.$emit('input', this.modelValue)\n }\n else {\n this.$emit('cancel', this.modelValue, this.initialValue)\n this.modelChanged !== true && this.$emit('input', this.initialValue)\n }\n }\n\n this.$emit('before-hide')\n },\n\n hide: () => {\n this.$emit('hide')\n },\n\n keyup: e => {\n isKeyCode(e, 13) === true && this.set()\n }\n })\n }, this.__getContent(h))\n }\n})\n","import Vue from 'vue'\n\nimport QIcon from '../icon/QIcon.js'\nimport QSpinner from '../spinner/QSpinner.js'\nimport TouchPan from '../../directives/TouchPan.js'\n\nimport ListenersMixin from '../../mixins/listeners.js'\n\nimport { getScrollTarget, getScrollPosition } from '../../utils/scroll.js'\nimport { between } from '../../utils/format.js'\nimport { prevent } from '../../utils/event.js'\nimport { slot } from '../../utils/slot.js'\n\nconst\n PULLER_HEIGHT = 40,\n OFFSET_TOP = 20\n\nexport default Vue.extend({\n name: 'QPullToRefresh',\n\n mixins: [ ListenersMixin ],\n\n directives: {\n TouchPan\n },\n\n props: {\n color: String,\n bgColor: String,\n icon: String,\n noMouse: Boolean,\n disable: Boolean,\n\n scrollTarget: {\n default: void 0\n }\n },\n\n data () {\n return {\n state: 'pull',\n pullRatio: 0,\n pulling: false,\n pullPosition: -PULLER_HEIGHT,\n animating: false,\n positionCSS: {}\n }\n },\n\n computed: {\n style () {\n return {\n opacity: this.pullRatio,\n transform: `translateY(${this.pullPosition}px) rotate(${this.pullRatio * 360}deg)`\n }\n },\n\n classes () {\n return 'q-pull-to-refresh__puller row flex-center' +\n (this.animating === true ? ' q-pull-to-refresh__puller--animating' : '') +\n (this.bgColor !== void 0 ? ` bg-${this.bgColor}` : '')\n },\n\n directives () {\n if (this.disable !== true) {\n const modifiers = {\n down: true,\n mightPrevent: true\n }\n\n if (this.noMouse !== true) {\n modifiers.mouse = true\n }\n\n return [{\n name: 'touch-pan',\n modifiers,\n value: this.__pull\n }]\n }\n },\n\n contentClass () {\n return `q-pull-to-refresh__content${this.pulling === true ? ' no-pointer-events' : ''}`\n }\n },\n\n watch: {\n scrollTarget () {\n this.updateScrollTarget()\n }\n },\n\n methods: {\n trigger () {\n this.$emit('refresh', () => {\n this.__animateTo({ pos: -PULLER_HEIGHT, ratio: 0 }, () => {\n this.state = 'pull'\n })\n })\n },\n\n updateScrollTarget () {\n this.__scrollTarget = getScrollTarget(this.$el, this.scrollTarget)\n },\n\n __pull (event) {\n if (event.isFinal === true) {\n if (this.pulling === true) {\n this.pulling = false\n\n if (this.state === 'pulled') {\n this.state = 'refreshing'\n this.__animateTo({ pos: OFFSET_TOP })\n this.trigger()\n }\n else if (this.state === 'pull') {\n this.__animateTo({ pos: -PULLER_HEIGHT, ratio: 0 })\n }\n }\n\n return\n }\n\n if (this.animating === true || this.state === 'refreshing') {\n return false\n }\n\n if (event.isFirst === true) {\n if (getScrollPosition(this.__scrollTarget) !== 0 || event.direction !== 'down') {\n if (this.pulling === true) {\n this.pulling = false\n this.state = 'pull'\n this.__animateTo({ pos: -PULLER_HEIGHT, ratio: 0 })\n }\n\n return false\n }\n\n this.pulling = true\n\n const { top, left } = this.$el.getBoundingClientRect()\n this.positionCSS = {\n top: top + 'px',\n left: left + 'px',\n width: window.getComputedStyle(this.$el).getPropertyValue('width')\n }\n }\n\n prevent(event.evt)\n\n const distance = Math.min(140, Math.max(0, event.distance.y))\n this.pullPosition = distance - PULLER_HEIGHT\n this.pullRatio = between(distance / (OFFSET_TOP + PULLER_HEIGHT), 0, 1)\n\n const state = this.pullPosition > OFFSET_TOP ? 'pulled' : 'pull'\n\n if (this.state !== state) {\n this.state = state\n }\n },\n\n __animateTo ({ pos, ratio }, done) {\n this.animating = true\n this.pullPosition = pos\n\n if (ratio !== void 0) {\n this.pullRatio = ratio\n }\n\n clearTimeout(this.timer)\n this.timer = setTimeout(() => {\n this.animating = false\n done && done()\n }, 300)\n }\n },\n\n mounted () {\n this.updateScrollTarget()\n },\n\n beforeDestroy () {\n clearTimeout(this.timer)\n },\n\n render (h) {\n return h('div', {\n staticClass: 'q-pull-to-refresh',\n on: { ...this.qListeners },\n directives: this.directives\n }, [\n h('div', {\n class: this.contentClass\n }, slot(this, 'default')),\n\n h('div', {\n staticClass: 'q-pull-to-refresh__puller-container fixed row flex-center no-pointer-events z-top',\n style: this.positionCSS\n }, [\n h('div', {\n style: this.style,\n class: this.classes\n }, [\n this.state !== 'refreshing'\n ? h(QIcon, {\n props: {\n name: this.icon || this.$q.iconSet.pullToRefresh.icon,\n color: this.color,\n size: '32px'\n }\n })\n : h(QSpinner, {\n props: {\n size: '24px',\n color: this.color\n }\n })\n ])\n ])\n ])\n }\n})\n","import Vue from 'vue'\n\nimport {\n SliderMixin,\n keyCodes\n} from '../slider/slider-utils.js'\n\nimport { stopAndPrevent } from '../../utils/event.js'\nimport { between } from '../../utils/format.js'\n\nconst dragType = {\n MIN: 0,\n RANGE: 1,\n MAX: 2\n}\n\nexport default Vue.extend({\n name: 'QRange',\n\n mixins: [ SliderMixin ],\n\n props: {\n value: {\n type: Object,\n default: () => ({ min: null, max: null }),\n validator: v => 'min' in v && 'max' in v\n },\n\n dragRange: Boolean,\n dragOnlyRange: Boolean,\n\n leftLabelColor: String,\n leftLabelTextColor: String,\n rightLabelColor: String,\n rightLabelTextColor: String,\n\n leftLabelValue: [ String, Number ],\n rightLabelValue: [ String, Number ],\n\n leftThumbColor: String,\n rightThumbColor: String\n },\n\n data () {\n const innerMin = this.__getInnerMin(this.innerMin)\n const innerMax = this.__getInnerMax(this.innerMax)\n return {\n model: {\n min: this.value.min === null ? innerMin : between(this.value.min, innerMin, innerMax),\n max: this.value.max === null ? innerMax : between(this.value.max, innerMin, innerMax)\n },\n curMinRatio: 0,\n curMaxRatio: 0\n }\n },\n\n computed: {\n modelMinRatio () {\n return this.__convertModelToRatio(this.model.min)\n },\n modelMaxRatio () {\n return this.__convertModelToRatio(this.model.max)\n },\n\n ratioMin () {\n return this.active === true ? this.curMinRatio : this.modelMinRatio\n },\n ratioMax () {\n return this.active === true ? this.curMaxRatio : this.modelMaxRatio\n },\n\n selectionBarStyle () {\n const acc = {\n [ this.positionProp ]: `${100 * this.ratioMin}%`,\n [ this.sizeProp ]: `${100 * (this.ratioMax - this.ratioMin)}%`\n }\n if (this.selectionImg !== void 0) {\n acc.backgroundImage = `url(${this.selectionImg}) !important`\n }\n return acc\n },\n\n trackContainerEvents () {\n if (this.editable !== true) {\n return {}\n }\n\n if (this.$q.platform.is.mobile === true) {\n return { click: this.__onMobileClick }\n }\n\n const evt = { mousedown: this.__onActivate }\n\n if (this.dragRange === true || this.dragOnlyRange === true) {\n Object.assign(evt, {\n focus: () => { this.focus = 'both' },\n blur: this.__onBlur,\n keydown: this.__onKeydown,\n keyup: this.__onKeyup\n })\n }\n\n return evt\n },\n\n trackContainerAttrs () {\n return {\n tabindex: this.$q.platform.is.mobile !== true && (this.dragRange || this.dragOnlyRange === true)\n ? this.computedTabindex\n : null\n }\n },\n\n thumbAttrs () {\n return {\n tabindex: this.dragOnlyRange !== true ? this.computedTabindex : null\n }\n },\n\n thumbMinEvents () {\n return this.__getEvents('min')\n },\n thumbMaxEvents () {\n return this.__getEvents('max')\n },\n\n thumbMinLabel () {\n return this.leftLabelValue !== void 0\n ? this.leftLabelValue\n : this.model.min\n },\n thumbMaxLabel () {\n return this.rightLabelValue !== void 0\n ? this.rightLabelValue\n : this.model.max\n },\n\n thumbMinClasses () {\n const color = this.leftThumbColor || this.thumbColor || this.color\n return `q-slider__thumb q-slider__thumb${this.axis} q-slider__thumb${this.axis}-${this.isReversed === true ? 'rtl' : 'ltr'} absolute non-selectable` +\n (\n this.preventFocus === false && (this.focus === 'min' || this.focus === 'both')\n ? ' q-slider--focus'\n : ''\n ) +\n (color !== void 0 ? ` text-${color}` : '')\n },\n thumbMaxClasses () {\n const color = this.rightThumbColor || this.thumbColor || this.color\n return `q-slider__thumb q-slider__thumb${this.axis} q-slider__thumb${this.axis}-${this.isReversed === true ? 'rtl' : 'ltr'} absolute non-selectable` +\n (\n this.preventFocus === false && (this.focus === 'max' || this.focus === 'both')\n ? ' q-slider--focus'\n : ''\n ) +\n (color !== void 0 ? ` text-${color}` : '')\n },\n\n thumbMinStyle () {\n return {\n width: this.thumbSize,\n height: this.thumbSize,\n [ this.positionProp ]: `${100 * this.ratioMin}%`,\n zIndex: this.focus === 'min' ? 2 : void 0\n }\n },\n thumbMaxStyle () {\n return {\n width: this.thumbSize,\n height: this.thumbSize,\n [ this.positionProp ]: `${100 * this.ratioMax}%`,\n zIndex: this.focus === 'max' ? 2 : void 0\n }\n },\n\n thumbMinPinColor () {\n const color = this.leftLabelColor || this.labelColor\n return color !== void 0\n ? ` text-${color}`\n : ''\n },\n thumbMaxPinColor () {\n const color = this.rightLabelColor || this.labelColor\n return color !== void 0\n ? ` text-${color}`\n : ''\n },\n\n thumbMinTextContainerStyle () {\n return this.__getTextContainerStyle(this.ratioMin)\n },\n thumbMaxTextContainerStyle () {\n return this.__getTextContainerStyle(this.ratioMax)\n },\n\n thumbMinTextClass () {\n const color = this.leftLabelTextColor || this.labelTextColor\n return 'q-slider__text' +\n (color !== void 0 ? ` text-${color}` : '')\n },\n thumbMaxTextClass () {\n const color = this.rightLabelTextColor || this.labelTextColor\n return 'q-slider__text' +\n (color !== void 0 ? ` text-${color}` : '')\n },\n\n formAttrs () {\n return {\n type: 'hidden',\n name: this.name,\n value: `${this.value.min}|${this.value.max}`\n }\n },\n\n modelUpdate () {\n return `${this.value.min}|${this.value.max}|${this.computedInnerMin}|${this.computedInnerMax}`\n }\n },\n\n watch: {\n modelUpdate () {\n this.model.min = this.value.min === null\n ? this.computedInnerMin\n : between(this.value.min, this.computedInnerMin, this.computedInnerMax)\n\n this.model.max = this.value.max === null\n ? this.computedInnerMax\n : between(this.value.max, this.computedInnerMin, this.computedInnerMax)\n }\n },\n\n methods: {\n __updateValue (change) {\n if (this.model.min !== this.value.min || this.model.max !== this.value.max) {\n this.$emit('input', { ...this.model })\n }\n change === true && this.$emit('change', { ...this.model })\n },\n\n __getDragging (event) {\n const\n { left, top, width, height } = this.$el.getBoundingClientRect(),\n sensitivity = this.dragOnlyRange === true\n ? 0\n : (\n this.vertical === true\n ? this.$refs.minThumb.offsetHeight / (2 * height)\n : this.$refs.minThumb.offsetWidth / (2 * width)\n )\n\n const dragging = {\n left,\n top,\n width,\n height,\n valueMin: this.model.min,\n valueMax: this.model.max,\n ratioMin: this.modelMinRatio,\n ratioMax: this.modelMaxRatio\n }\n\n const ratio = this.__getDraggingRatio(event, dragging)\n\n if (this.dragOnlyRange !== true && ratio < dragging.ratioMin + sensitivity) {\n dragging.type = dragType.MIN\n }\n else if (this.dragOnlyRange === true || ratio < dragging.ratioMax - sensitivity) {\n if (this.dragRange === true || this.dragOnlyRange === true) {\n dragging.type = dragType.RANGE\n Object.assign(dragging, {\n offsetRatio: ratio,\n offsetModel: this.__convertRatioToModel(ratio),\n rangeValue: dragging.valueMax - dragging.valueMin,\n rangeRatio: dragging.ratioMax - dragging.ratioMin\n })\n }\n else {\n dragging.type = dragging.ratioMax - ratio < ratio - dragging.ratioMin\n ? dragType.MAX\n : dragType.MIN\n }\n }\n else {\n dragging.type = dragType.MAX\n }\n\n return dragging\n },\n\n __updatePosition (event, dragging = this.dragging) {\n let pos\n const ratio = this.__getDraggingRatio(event, dragging)\n const localModel = this.__convertRatioToModel(ratio)\n\n switch (dragging.type) {\n case dragType.MIN:\n if (ratio <= dragging.ratioMax) {\n pos = {\n minR: ratio,\n maxR: dragging.ratioMax,\n min: localModel,\n max: dragging.valueMax\n }\n this.focus = 'min'\n }\n else {\n pos = {\n minR: dragging.ratioMax,\n maxR: ratio,\n min: dragging.valueMax,\n max: localModel\n }\n this.focus = 'max'\n }\n break\n\n case dragType.MAX:\n if (ratio >= dragging.ratioMin) {\n pos = {\n minR: dragging.ratioMin,\n maxR: ratio,\n min: dragging.valueMin,\n max: localModel\n }\n this.focus = 'max'\n }\n else {\n pos = {\n minR: ratio,\n maxR: dragging.ratioMin,\n min: localModel,\n max: dragging.valueMin\n }\n this.focus = 'min'\n }\n break\n\n case dragType.RANGE:\n const\n ratioDelta = ratio - dragging.offsetRatio,\n minR = between(dragging.ratioMin + ratioDelta, 0, 1 - dragging.rangeRatio),\n modelDelta = localModel - dragging.offsetModel,\n min = between(dragging.valueMin + modelDelta, this.min, this.max - dragging.rangeValue)\n\n pos = {\n minR,\n maxR: minR + dragging.rangeRatio,\n min: parseFloat(min.toFixed(this.computedDecimals)),\n max: parseFloat((min + dragging.rangeValue).toFixed(this.computedDecimals))\n }\n\n this.focus = 'both'\n break\n }\n\n // If either of the values to be emitted are null, set them to the defaults the user has entered.\n this.model = this.model.min === null || this.model.max === null\n ? { min: pos.min || this.min, max: pos.max || this.max }\n : { min: pos.min, max: pos.max }\n\n if (this.snap !== true || this.step === 0) {\n this.curMinRatio = pos.minR\n this.curMaxRatio = pos.maxR\n }\n else {\n this.curMinRatio = this.__convertModelToRatio(this.model.min)\n this.curMaxRatio = this.__convertModelToRatio(this.model.max)\n }\n },\n\n __getEvents (side) {\n return this.$q.platform.is.mobile !== true && this.editable === true && this.dragOnlyRange !== true\n ? {\n focus: () => { this.focus = side },\n blur: this.__onBlur,\n keydown: this.__onKeydown,\n keyup: this.__onKeyup\n }\n : {}\n },\n\n __onKeydown (evt) {\n if (!keyCodes.includes(evt.keyCode)) {\n return\n }\n\n stopAndPrevent(evt)\n\n const\n stepVal = ([ 34, 33 ].includes(evt.keyCode) ? 10 : 1) * this.computedStep,\n offset = ([ 34, 37, 40 ].includes(evt.keyCode) ? -1 : 1) * (this.isReversed === true ? -1 : 1) * stepVal\n\n if (this.focus === 'both') {\n const interval = this.model.max - this.model.min\n const min = between(\n parseFloat((this.model.min + offset).toFixed(this.computedDecimals)),\n this.computedInnerMin,\n this.computedInnerMax - interval\n )\n\n this.model = {\n min,\n max: parseFloat((min + interval).toFixed(this.computedDecimals))\n }\n }\n else if (this.focus === false) {\n return\n }\n else {\n const which = this.focus\n\n this.model = {\n ...this.model,\n [ which ]: between(\n parseFloat((this.model[ which ] + offset).toFixed(this.computedDecimals)),\n which === 'min' ? this.computedInnerMin : this.model.min,\n which === 'max' ? this.computedInnerMax : this.model.max\n )\n }\n }\n\n this.__updateValue()\n }\n },\n\n render (h) {\n const content = this.__getContent(h, node => {\n node.push(\n this.__getThumb(h, {\n pinColor: this.thumbMinPinColor,\n textContainerStyle: this.thumbMinTextContainerStyle,\n textClass: this.thumbMinTextClass,\n label: this.thumbMinLabel,\n classes: this.thumbMinClasses,\n style: this.thumbMinStyle,\n nodeData: {\n ref: 'minThumb',\n key: 'tmin',\n on: this.thumbMinEvents,\n attrs: this.thumbAttrs\n }\n }),\n\n this.__getThumb(h, {\n pinColor: this.thumbMaxPinColor,\n textContainerStyle: this.thumbMaxTextContainerStyle,\n textClass: this.thumbMaxTextClass,\n label: this.thumbMaxLabel,\n classes: this.thumbMaxClasses,\n style: this.thumbMaxStyle,\n nodeData: {\n key: 'tmax',\n on: this.thumbMaxEvents,\n attrs: this.thumbAttrs\n }\n })\n )\n })\n\n return h('div', {\n class: 'q-range ' + this.classes + (\n this.value.min === null || this.value.max === null\n ? ' q-slider--no-value'\n : ''\n ),\n attrs: {\n ...this.attributes,\n 'aria-valuenow': this.value.min + '|' + this.value.max\n }\n }, content)\n }\n})\n","import Vue from 'vue'\n\nimport { stopAndPrevent } from '../../utils/event.js'\nimport { between } from '../../utils/format.js'\nimport QIcon from '../icon/QIcon.js'\n\nimport SizeMixin from '../../mixins/size.js'\nimport FormMixin from '../../mixins/form.js'\nimport ListenersMixin from '../../mixins/listeners.js'\n\nimport cache from '../../utils/cache.js'\nimport { mergeSlot } from '../../utils/slot.js'\n\nexport default Vue.extend({\n name: 'QRating',\n\n mixins: [ SizeMixin, FormMixin, ListenersMixin ],\n\n props: {\n value: {\n type: Number,\n required: true\n },\n\n max: {\n type: [String, Number],\n default: 5\n },\n\n icon: [String, Array],\n iconHalf: [String, Array],\n iconSelected: [String, Array],\n\n color: [String, Array],\n colorHalf: [String, Array],\n colorSelected: [String, Array],\n\n noReset: Boolean,\n noDimming: Boolean,\n\n readonly: Boolean,\n disable: Boolean\n },\n\n data () {\n return {\n mouseModel: 0\n }\n },\n\n computed: {\n editable () {\n return this.readonly !== true && this.disable !== true\n },\n\n classes () {\n return `q-rating--${this.editable === true ? '' : 'non-'}editable` +\n (this.noDimming === true ? ' q-rating--no-dimming' : '') +\n (this.disable === true ? ' disabled' : '') +\n (this.color !== void 0 && Array.isArray(this.color) === false ? ` text-${this.color}` : '')\n },\n\n iconData () {\n const\n iconLen = Array.isArray(this.icon) === true ? this.icon.length : 0,\n selIconLen = Array.isArray(this.iconSelected) === true ? this.iconSelected.length : 0,\n halfIconLen = Array.isArray(this.iconHalf) === true ? this.iconHalf.length : 0,\n colorLen = Array.isArray(this.color) === true ? this.color.length : 0,\n selColorLen = Array.isArray(this.colorSelected) === true ? this.colorSelected.length : 0,\n halfColorLen = Array.isArray(this.colorHalf) === true ? this.colorHalf.length : 0\n\n return {\n iconLen,\n icon: iconLen > 0 ? this.icon[iconLen - 1] : this.icon,\n selIconLen,\n selIcon: selIconLen > 0 ? this.iconSelected[selIconLen - 1] : this.iconSelected,\n halfIconLen,\n halfIcon: halfIconLen > 0 ? this.iconHalf[selIconLen - 1] : this.iconHalf,\n colorLen,\n color: colorLen > 0 ? this.color[colorLen - 1] : this.color,\n selColorLen,\n selColor: selColorLen > 0 ? this.colorSelected[selColorLen - 1] : this.colorSelected,\n halfColorLen,\n halfColor: halfColorLen > 0 ? this.colorHalf[halfColorLen - 1] : this.colorHalf\n }\n },\n\n stars () {\n const\n acc = [],\n icons = this.iconData,\n ceil = Math.ceil(this.value)\n\n const halfIndex = this.iconHalf === void 0 || ceil === this.value\n ? -1\n : ceil\n\n for (let i = 1; i <= this.max; i++) {\n const\n active = (this.mouseModel === 0 && this.value >= i) || (this.mouseModel > 0 && this.mouseModel >= i),\n half = halfIndex === i && this.mouseModel < i,\n exSelected = this.mouseModel > 0 && (half === true ? ceil : this.value) >= i && this.mouseModel < i,\n color = half === true\n ? (i <= icons.halfColorLen ? this.colorHalf[i - 1] : icons.halfColor)\n : (\n icons.selColor !== void 0 && active === true\n ? (i <= icons.selColorLen ? this.colorSelected[i - 1] : icons.selColor)\n : (i <= icons.colorLen ? this.color[i - 1] : icons.color)\n )\n\n acc.push({\n name: (\n half === true\n ? (i <= icons.halfIconLen ? this.iconHalf[i - 1] : icons.halfIcon)\n : (\n icons.selIcon !== void 0 && (active === true || exSelected === true)\n ? (i <= icons.selIconLen ? this.iconSelected[i - 1] : icons.selIcon)\n : (i <= icons.iconLen ? this.icon[i - 1] : icons.icon)\n )\n ) || this.$q.iconSet.rating.icon,\n\n classes: 'q-rating__icon' +\n (active === true || half === true ? ' q-rating__icon--active' : '') +\n (exSelected === true ? ' q-rating__icon--exselected' : '') +\n (this.mouseModel === i ? ' q-rating__icon--hovered' : '') +\n (color !== void 0 ? ` text-${color}` : '')\n })\n }\n\n return acc\n },\n\n attrs () {\n if (this.disable === true) {\n return { 'aria-disabled': 'true' }\n }\n if (this.readonly === true) {\n return { 'aria-readonly': 'true' }\n }\n }\n },\n\n methods: {\n __set (value) {\n if (this.editable === true) {\n const\n model = between(parseInt(value, 10), 1, parseInt(this.max, 10)),\n newVal = this.noReset !== true && this.value === model ? 0 : model\n\n newVal !== this.value && this.$emit('input', newVal)\n this.mouseModel = 0\n }\n },\n\n __setHoverValue (value) {\n if (this.editable === true) {\n this.mouseModel = value\n }\n },\n\n __keyup (e, i) {\n switch (e.keyCode) {\n case 13:\n case 32:\n this.__set(i)\n return stopAndPrevent(e)\n case 37: // LEFT ARROW\n case 40: // DOWN ARROW\n if (this.$refs[`rt${i - 1}`]) {\n this.$refs[`rt${i - 1}`].focus()\n }\n return stopAndPrevent(e)\n case 39: // RIGHT ARROW\n case 38: // UP ARROW\n if (this.$refs[`rt${i + 1}`]) {\n this.$refs[`rt${i + 1}`].focus()\n }\n return stopAndPrevent(e)\n }\n }\n },\n\n render (h) {\n const\n child = [],\n tabindex = this.editable === true ? 0 : null\n\n this.stars.forEach(({ classes, name }, index) => {\n const i = index + 1\n\n child.push(\n h('div', {\n key: i,\n ref: `rt${i}`,\n class: 'q-rating__icon-container flex flex-center',\n attrs: { tabindex },\n on: cache(this, 'i#' + i, {\n click: () => { this.__set(i) },\n mouseover: () => { this.__setHoverValue(i) },\n mouseout: () => { this.mouseModel = 0 },\n focus: () => { this.__setHoverValue(i) },\n blur: () => { this.mouseModel = 0 },\n keyup: e => { this.__keyup(e, i) }\n })\n }, mergeSlot(\n [h(QIcon, { class: classes, props: { name } })],\n this, `tip-${i}`\n ))\n )\n })\n\n if (this.name !== void 0 && this.disable !== true) {\n this.__injectFormInput(child, 'push')\n }\n\n return h('div', {\n staticClass: 'q-rating row inline items-center',\n class: this.classes,\n style: this.sizeStyle,\n attrs: this.attrs,\n on: { ...this.qListeners }\n }, child)\n }\n})\n","import Vue from 'vue'\n\nimport RatioMixin from '../../mixins/ratio.js'\nimport ListenersMixin from '../../mixins/listeners.js'\n\nimport { slot } from '../../utils/slot.js'\n\nexport default Vue.extend({\n name: 'QResponsive',\n\n mixins: [ RatioMixin, ListenersMixin ],\n\n render (h) {\n return h('div', {\n staticClass: 'q-responsive',\n on: { ...this.qListeners }\n }, [\n h('div', {\n staticClass: 'q-responsive__filler overflow-hidden'\n }, [\n h('div', { style: this.ratioStyle })\n ]),\n\n h('div', {\n staticClass: 'q-responsive__content absolute-full fit'\n }, slot(this, 'default'))\n ])\n }\n})\n","import Vue from 'vue'\n\nimport DarkMixin from '../../mixins/dark.js'\nimport TagMixin from '../../mixins/tag.js'\nimport ListenersMixin from '../../mixins/listeners.js'\n\nimport { slot } from '../../utils/slot.js'\n\nexport const skeletonTypes = [\n 'text', 'rect', 'circle',\n 'QBtn', 'QBadge', 'QChip', 'QToolbar',\n 'QCheckbox', 'QRadio', 'QToggle',\n 'QSlider', 'QRange', 'QInput',\n 'QAvatar'\n]\n\nexport const skeletonAnimations = [\n 'wave', 'pulse', 'pulse-x', 'pulse-y', 'fade', 'blink', 'none'\n]\n\nexport default Vue.extend({\n name: 'QSkeleton',\n\n mixins: [ DarkMixin, TagMixin, ListenersMixin ],\n\n props: {\n type: {\n type: String,\n validator: v => skeletonTypes.includes(v),\n default: 'rect'\n },\n\n animation: {\n type: String,\n validator: v => skeletonAnimations.includes(v),\n default: 'wave'\n },\n\n square: Boolean,\n bordered: Boolean,\n\n size: String,\n width: String,\n height: String\n },\n\n computed: {\n style () {\n return this.size !== void 0\n ? { width: this.size, height: this.size }\n : { width: this.width, height: this.height }\n },\n\n classes () {\n return `q-skeleton--${this.isDark === true ? 'dark' : 'light'} q-skeleton--type-${this.type}` +\n (this.animation !== 'none' ? ` q-skeleton--anim q-skeleton--anim-${this.animation}` : '') +\n (this.square === true ? ' q-skeleton--square' : '') +\n (this.bordered === true ? ' q-skeleton--bordered' : '')\n }\n },\n\n render (h) {\n return h(this.tag, {\n staticClass: 'q-skeleton',\n class: this.classes,\n style: this.style,\n on: { ...this.qListeners }\n }, slot(this, 'default'))\n }\n})\n","import Vue from 'vue'\n\nimport TouchPan from '../../directives/TouchPan.js'\n\nimport DarkMixin from '../../mixins/dark.js'\nimport ListenersMixin from '../../mixins/listeners.js'\n\nimport { slot } from '../../utils/slot.js'\nimport { cacheWithFn } from '../../utils/cache.js'\n\nconst slotsDef = [\n ['left', 'center', 'start', 'width'],\n ['right', 'center', 'end', 'width'],\n ['top', 'start', 'center', 'height'],\n ['bottom', 'end', 'center', 'height']\n]\n\nexport default Vue.extend({\n name: 'QSlideItem',\n\n mixins: [ DarkMixin, ListenersMixin ],\n\n props: {\n leftColor: String,\n rightColor: String,\n topColor: String,\n bottomColor: String\n },\n\n directives: {\n TouchPan\n },\n\n computed: {\n langDir () {\n return this.$q.lang.rtl === true\n ? { left: 'right', right: 'left' }\n : { left: 'left', right: 'right' }\n }\n },\n\n methods: {\n reset () {\n this.$refs.content.style.transform = 'translate(0,0)'\n this.__emitSlide(this.__showing, 0, true)\n },\n\n __emitSlide (side, ratio, isReset) {\n this.qListeners.slide !== void 0 && this.$emit('slide', { side, ratio, isReset })\n },\n\n __pan (evt) {\n const node = this.$refs.content\n\n if (evt.isFirst) {\n this.__dir = null\n this.__size = { left: 0, right: 0, top: 0, bottom: 0 }\n this.__scale = 0\n\n node.classList.add('no-transition')\n\n slotsDef.forEach(slot => {\n if (this.$scopedSlots[slot[0]] !== void 0) {\n const node = this.$refs[slot[0] + 'Content']\n node.style.transform = 'scale(1)'\n this.__size[slot[0]] = node.getBoundingClientRect()[slot[3]]\n }\n })\n\n this.__axis = (evt.direction === 'up' || evt.direction === 'down')\n ? 'Y'\n : 'X'\n }\n else if (evt.isFinal) {\n node.classList.remove('no-transition')\n\n if (this.__scale === 1) {\n node.style.transform = `translate${this.__axis}(${this.__dir * 100}%)`\n\n this.timer = setTimeout(() => {\n this.$emit(this.__showing, { reset: this.reset })\n this.$emit('action', { side: this.__showing, reset: this.reset })\n }, 230)\n }\n else {\n node.style.transform = 'translate(0,0)'\n this.__emitSlide(this.__showing, 0, true)\n }\n\n return\n }\n else {\n evt.direction = this.__axis === 'X'\n ? evt.offset.x < 0 ? 'left' : 'right'\n : evt.offset.y < 0 ? 'up' : 'down'\n }\n\n if (\n (this.$scopedSlots.left === void 0 && evt.direction === this.langDir.right) ||\n (this.$scopedSlots.right === void 0 && evt.direction === this.langDir.left) ||\n (this.$scopedSlots.top === void 0 && evt.direction === 'down') ||\n (this.$scopedSlots.bottom === void 0 && evt.direction === 'up')\n ) {\n node.style.transform = 'translate(0,0)'\n return\n }\n\n let showing, dir, dist\n\n if (this.__axis === 'X') {\n dir = evt.direction === 'left' ? -1 : 1\n showing = dir === 1 ? this.langDir.left : this.langDir.right\n dist = evt.distance.x\n }\n else {\n dir = evt.direction === 'up' ? -2 : 2\n showing = dir === 2 ? 'top' : 'bottom'\n dist = evt.distance.y\n }\n\n if (this.__dir !== null && Math.abs(dir) !== Math.abs(this.__dir)) {\n return\n }\n\n if (this.__dir !== dir) {\n ['left', 'right', 'top', 'bottom'].forEach(d => {\n if (this.$refs[d] !== void 0) {\n this.$refs[d].style.visibility = showing === d\n ? 'visible'\n : 'hidden'\n }\n })\n this.__showing = showing\n this.__dir = dir\n }\n\n this.__scale = Math.max(0, Math.min(1, (dist - 40) / this.__size[showing]))\n\n node.style.transform = `translate${this.__axis}(${dist * dir / Math.abs(dir)}px)`\n this.$refs[`${showing}Content`].style.transform = `scale(${this.__scale})`\n\n this.__emitSlide(showing, this.__scale, false)\n }\n },\n\n render (h) {\n const\n content = [],\n slots = {\n left: this.$scopedSlots[this.langDir.right] !== void 0,\n right: this.$scopedSlots[this.langDir.left] !== void 0,\n up: this.$scopedSlots.bottom !== void 0,\n down: this.$scopedSlots.top !== void 0\n },\n dirs = Object.keys(slots).filter(key => slots[key] === true)\n\n slotsDef.forEach(slot => {\n const dir = slot[0]\n\n if (this.$scopedSlots[dir] !== void 0) {\n content.push(\n h('div', {\n ref: dir,\n class: `q-slide-item__${dir} absolute-full row no-wrap items-${slot[1]} justify-${slot[2]}` +\n (this[dir + 'Color'] !== void 0 ? ` bg-${this[dir + 'Color']}` : '')\n }, [\n h('div', { ref: dir + 'Content' }, this.$scopedSlots[dir]())\n ])\n )\n }\n })\n\n content.push(\n h('div', {\n ref: 'content',\n key: 'content',\n staticClass: 'q-slide-item__content',\n directives: dirs.length > 0\n ? cacheWithFn(this, 'dir#' + dirs.join(''), () => {\n const modifiers = {\n prevent: true,\n stop: true,\n mouse: true\n }\n\n dirs.forEach(dir => {\n modifiers[dir] = true\n })\n\n return [{\n name: 'touch-pan',\n value: this.__pan,\n modifiers\n }]\n })\n : null\n }, slot(this, 'default'))\n )\n\n return h('div', {\n staticClass: 'q-slide-item q-item-type overflow-hidden',\n class: this.isDark === true ? 'q-slide-item--dark q-dark' : '',\n on: { ...this.qListeners }\n }, content)\n },\n\n beforeDestroy () {\n clearTimeout(this.timer)\n }\n})\n","import Vue from 'vue'\n\nimport mixin from './spinner-mixin.js'\n\nexport default Vue.extend({\n name: 'QSpinnerAudio',\n\n mixins: [mixin],\n\n render (h) {\n return h('svg', {\n staticClass: 'q-spinner',\n class: this.classes,\n on: { ...this.qListeners },\n attrs: {\n focusable: 'false' /* needed for IE11 */,\n 'fill': 'currentColor',\n 'width': this.cSize,\n 'height': this.cSize,\n 'viewBox': '0 0 55 80',\n 'xmlns': 'http://www.w3.org/2000/svg'\n }\n }, [\n h('g', {\n attrs: {\n 'transform': 'matrix(1 0 0 -1 0 80)'\n }\n }, [\n h('rect', {\n attrs: {\n 'width': '10',\n 'height': '20',\n 'rx': '3'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'height',\n 'begin': '0s',\n 'dur': '4.3s',\n 'values': '20;45;57;80;64;32;66;45;64;23;66;13;64;56;34;34;2;23;76;79;20',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('rect', {\n attrs: {\n 'x': '15',\n 'width': '10',\n 'height': '80',\n 'rx': '3'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'height',\n 'begin': '0s',\n 'dur': '2s',\n 'values': '80;55;33;5;75;23;73;33;12;14;60;80',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('rect', {\n attrs: {\n 'x': '30',\n 'width': '10',\n 'height': '50',\n 'rx': '3'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'height',\n 'begin': '0s',\n 'dur': '1.4s',\n 'values': '50;34;78;23;56;23;34;76;80;54;21;50',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('rect', {\n attrs: {\n 'x': '45',\n 'width': '10',\n 'height': '30',\n 'rx': '3'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'height',\n 'begin': '0s',\n 'dur': '2s',\n 'values': '30;45;13;80;56;72;45;76;34;23;67;30',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ])\n ])\n ])\n }\n})\n","import Vue from 'vue'\n\nimport mixin from './spinner-mixin.js'\n\nexport default Vue.extend({\n name: 'QSpinnerBall',\n\n mixins: [mixin],\n\n render (h) {\n return h('svg', {\n staticClass: 'q-spinner',\n class: this.classes,\n on: { ...this.qListeners },\n attrs: {\n focusable: 'false' /* needed for IE11 */,\n 'stroke': 'currentColor',\n 'width': this.cSize,\n 'height': this.cSize,\n 'viewBox': '0 0 57 57',\n 'xmlns': 'http://www.w3.org/2000/svg'\n }\n }, [\n h('g', {\n attrs: {\n 'transform': 'translate(1 1)',\n 'stroke-width': '2',\n 'fill': 'none',\n 'fill-rule': 'evenodd'\n }\n }, [\n h('circle', {\n attrs: {\n 'cx': '5',\n 'cy': '50',\n 'r': '5'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'cy',\n 'begin': '0s',\n 'dur': '2.2s',\n 'values': '50;5;50;50',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n }),\n h('animate', {\n attrs: {\n 'attributeName': 'cx',\n 'begin': '0s',\n 'dur': '2.2s',\n 'values': '5;27;49;5',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('circle', {\n attrs: {\n 'cx': '27',\n 'cy': '5',\n 'r': '5'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'cy',\n 'begin': '0s',\n 'dur': '2.2s',\n 'from': '5',\n 'to': '5',\n 'values': '5;50;50;5',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n }),\n h('animate', {\n attrs: {\n 'attributeName': 'cx',\n 'begin': '0s',\n 'dur': '2.2s',\n 'from': '27',\n 'to': '27',\n 'values': '27;49;5;27',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('circle', {\n attrs: {\n 'cx': '49',\n 'cy': '50',\n 'r': '5'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'cy',\n 'begin': '0s',\n 'dur': '2.2s',\n 'values': '50;50;5;50',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n }),\n h('animate', {\n attrs: {\n 'attributeName': 'cx',\n 'from': '49',\n 'to': '49',\n 'begin': '0s',\n 'dur': '2.2s',\n 'values': '49;5;27;49',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ])\n ])\n ])\n }\n})\n","import Vue from 'vue'\n\nimport mixin from './spinner-mixin.js'\n\nexport default Vue.extend({\n name: 'QSpinnerBars',\n\n mixins: [mixin],\n\n render (h) {\n return h('svg', {\n staticClass: 'q-spinner',\n class: this.classes,\n on: { ...this.qListeners },\n attrs: {\n focusable: 'false' /* needed for IE11 */,\n 'fill': 'currentColor',\n 'width': this.cSize,\n 'height': this.cSize,\n 'viewBox': '0 0 135 140',\n 'xmlns': 'http://www.w3.org/2000/svg'\n }\n }, [\n h('rect', {\n attrs: {\n 'y': '10',\n 'width': '15',\n 'height': '120',\n 'rx': '6'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'height',\n 'begin': '0.5s',\n 'dur': '1s',\n 'values': '120;110;100;90;80;70;60;50;40;140;120',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n }),\n h('animate', {\n attrs: {\n 'attributeName': 'y',\n 'begin': '0.5s',\n 'dur': '1s',\n 'values': '10;15;20;25;30;35;40;45;50;0;10',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('rect', {\n attrs: {\n 'x': '30',\n 'y': '10',\n 'width': '15',\n 'height': '120',\n 'rx': '6'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'height',\n 'begin': '0.25s',\n 'dur': '1s',\n 'values': '120;110;100;90;80;70;60;50;40;140;120',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n }),\n h('animate', {\n attrs: {\n 'attributeName': 'y',\n 'begin': '0.25s',\n 'dur': '1s',\n 'values': '10;15;20;25;30;35;40;45;50;0;10',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('rect', {\n attrs: {\n 'x': '60',\n 'width': '15',\n 'height': '140',\n 'rx': '6'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'height',\n 'begin': '0s',\n 'dur': '1s',\n 'values': '120;110;100;90;80;70;60;50;40;140;120',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n }),\n h('animate', {\n attrs: {\n 'attributeName': 'y',\n 'begin': '0s',\n 'dur': '1s',\n 'values': '10;15;20;25;30;35;40;45;50;0;10',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('rect', {\n attrs: {\n 'x': '90',\n 'y': '10',\n 'width': '15',\n 'height': '120',\n 'rx': '6'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'height',\n 'begin': '0.25s',\n 'dur': '1s',\n 'values': '120;110;100;90;80;70;60;50;40;140;120',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n }),\n h('animate', {\n attrs: {\n 'attributeName': 'y',\n 'begin': '0.25s',\n 'dur': '1s',\n 'values': '10;15;20;25;30;35;40;45;50;0;10',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('rect', {\n attrs: {\n 'x': '120',\n 'y': '10',\n 'width': '15',\n 'height': '120',\n 'rx': '6'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'height',\n 'begin': '0.5s',\n 'dur': '1s',\n 'values': '120;110;100;90;80;70;60;50;40;140;120',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n }),\n h('animate', {\n attrs: {\n 'attributeName': 'y',\n 'begin': '0.5s',\n 'dur': '1s',\n 'values': '10;15;20;25;30;35;40;45;50;0;10',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ])\n ])\n }\n})\n","import Vue from 'vue'\n\nimport mixin from './spinner-mixin.js'\n\nexport default Vue.extend({\n name: 'QSpinnerBox',\n\n mixins: [mixin],\n\n render (h) {\n return h('svg', {\n staticClass: 'q-spinner',\n class: this.classes,\n on: { ...this.qListeners },\n attrs: {\n focusable: 'false' /* needed for IE11 */,\n 'width': this.cSize,\n 'height': this.cSize,\n 'xmlns': 'http://www.w3.org/2000/svg',\n 'viewBox': '0 0 100 100',\n 'preserveAspectRatio': 'xMidYMid'\n }\n }, [\n h('rect', {\n attrs: {\n 'x': '25',\n 'y': '25',\n 'width': '50',\n 'height': '50',\n 'fill': 'none',\n 'stroke-width': '4',\n 'stroke': 'currentColor'\n }\n }, [\n h('animateTransform', {\n attrs: {\n 'id': 'spinnerBox',\n 'attributeName': 'transform',\n 'type': 'rotate',\n 'from': '0 50 50',\n 'to': '180 50 50',\n 'dur': '0.5s',\n 'begin': 'rectBox.end'\n }\n })\n ]),\n h('rect', {\n attrs: {\n 'x': '27',\n 'y': '27',\n 'width': '46',\n 'height': '50',\n 'fill': 'currentColor'\n }\n }, [\n h('animate', {\n attrs: {\n 'id': 'rectBox',\n 'attributeName': 'height',\n 'begin': '0s;spinnerBox.end',\n 'dur': '1.3s',\n 'from': '50',\n 'to': '0',\n 'fill': 'freeze'\n }\n })\n ])\n ])\n }\n})\n","import Vue from 'vue'\n\nimport mixin from './spinner-mixin.js'\n\nexport default Vue.extend({\n name: 'QSpinnerClock',\n\n mixins: [mixin],\n\n render (h) {\n return h('svg', {\n staticClass: 'q-spinner',\n class: this.classes,\n on: { ...this.qListeners },\n attrs: {\n focusable: 'false' /* needed for IE11 */,\n 'width': this.cSize,\n 'height': this.cSize,\n 'xmlns': 'http://www.w3.org/2000/svg',\n 'viewBox': '0 0 100 100',\n 'preserveAspectRatio': 'xMidYMid'\n }\n }, [\n h('circle', {\n attrs: {\n 'cx': '50',\n 'cy': '50',\n 'r': '48',\n 'fill': 'none',\n 'stroke-width': '4',\n 'stroke-miterlimit': '10',\n 'stroke': 'currentColor'\n }\n }),\n h('line', {\n attrs: {\n 'stroke-linecap': 'round',\n 'stroke-width': '4',\n 'stroke-miterlimit': '10',\n 'stroke': 'currentColor',\n 'x1': '50',\n 'y1': '50',\n 'x2': '85',\n 'y2': '50.5'\n }\n }, [\n h('animateTransform', {\n attrs: {\n 'attributeName': 'transform',\n 'type': 'rotate',\n 'from': '0 50 50',\n 'to': '360 50 50',\n 'dur': '2s',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('line', {\n attrs: {\n 'stroke-linecap': 'round',\n 'stroke-width': '4',\n 'stroke-miterlimit': '10',\n 'stroke': 'currentColor',\n 'x1': '50',\n 'y1': '50',\n 'x2': '49.5',\n 'y2': '74'\n }\n }, [\n h('animateTransform', {\n attrs: {\n 'attributeName': 'transform',\n 'type': 'rotate',\n 'from': '0 50 50',\n 'to': '360 50 50',\n 'dur': '15s',\n 'repeatCount': 'indefinite'\n }\n })\n ])\n ])\n }\n})\n","import Vue from 'vue'\n\nimport mixin from './spinner-mixin.js'\n\nexport default Vue.extend({\n name: 'QSpinnerComment',\n\n mixins: [mixin],\n\n render (h) {\n return h('svg', {\n staticClass: 'q-spinner',\n class: this.classes,\n on: { ...this.qListeners },\n attrs: {\n focusable: 'false' /* needed for IE11 */,\n 'width': this.cSize,\n 'height': this.cSize,\n 'xmlns': 'http://www.w3.org/2000/svg',\n 'viewBox': '0 0 100 100',\n 'preserveAspectRatio': 'xMidYMid'\n }\n }, [\n h('rect', {\n attrs: {\n 'x': '0',\n 'y': '0',\n 'width': '100',\n 'height': '100',\n 'fill': 'none'\n }\n }),\n h('path', {\n attrs: {\n 'd': 'M78,19H22c-6.6,0-12,5.4-12,12v31c0,6.6,5.4,12,12,12h37.2c0.4,3,1.8,5.6,3.7,7.6c2.4,2.5,5.1,4.1,9.1,4 c-1.4-2.1-2-7.2-2-10.3c0-0.4,0-0.8,0-1.3h8c6.6,0,12-5.4,12-12V31C90,24.4,84.6,19,78,19z',\n 'fill': 'currentColor'\n }\n }),\n h('circle', {\n attrs: {\n 'cx': '30',\n 'cy': '47',\n 'r': '5',\n 'fill': '#fff'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'opacity',\n 'from': '0',\n 'to': '1',\n 'values': '0;1;1',\n 'keyTimes': '0;0.2;1',\n 'dur': '1s',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('circle', {\n attrs: {\n 'cx': '50',\n 'cy': '47',\n 'r': '5',\n 'fill': '#fff'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'opacity',\n 'from': '0',\n 'to': '1',\n 'values': '0;0;1;1',\n 'keyTimes': '0;0.2;0.4;1',\n 'dur': '1s',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('circle', {\n attrs: {\n 'cx': '70',\n 'cy': '47',\n 'r': '5',\n 'fill': '#fff'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'opacity',\n 'from': '0',\n 'to': '1',\n 'values': '0;0;1;1',\n 'keyTimes': '0;0.4;0.6;1',\n 'dur': '1s',\n 'repeatCount': 'indefinite'\n }\n })\n ])\n ])\n }\n})\n","import Vue from 'vue'\n\nimport mixin from './spinner-mixin.js'\n\nexport default Vue.extend({\n name: 'QSpinnerCube',\n\n mixins: [mixin],\n\n render (h) {\n return h('svg', {\n staticClass: 'q-spinner',\n class: this.classes,\n on: { ...this.qListeners },\n attrs: {\n focusable: 'false' /* needed for IE11 */,\n 'width': this.cSize,\n 'height': this.cSize,\n 'xmlns': 'http://www.w3.org/2000/svg',\n 'viewBox': '0 0 100 100',\n 'preserveAspectRatio': 'xMidYMid'\n }\n }, [\n h('rect', {\n attrs: {\n 'x': '0',\n 'y': '0',\n 'width': '100',\n 'height': '100',\n 'fill': 'none'\n }\n }),\n h('g', {\n attrs: {\n 'transform': 'translate(25 25)'\n }\n }, [\n h('rect', {\n attrs: {\n 'x': '-20',\n 'y': '-20',\n 'width': '40',\n 'height': '40',\n 'fill': 'currentColor',\n 'opacity': '0.9'\n }\n }, [\n h('animateTransform', {\n attrs: {\n 'attributeName': 'transform',\n 'type': 'scale',\n 'from': '1.5',\n 'to': '1',\n 'repeatCount': 'indefinite',\n 'begin': '0s',\n 'dur': '1s',\n 'calcMode': 'spline',\n 'keySplines': '0.2 0.8 0.2 0.8',\n 'keyTimes': '0;1'\n }\n })\n ])\n ]),\n h('g', {\n attrs: {\n 'transform': 'translate(75 25)'\n }\n }, [\n h('rect', {\n attrs: {\n 'x': '-20',\n 'y': '-20',\n 'width': '40',\n 'height': '40',\n 'fill': 'currentColor',\n 'opacity': '0.8'\n }\n }, [\n h('animateTransform', {\n attrs: {\n 'attributeName': 'transform',\n 'type': 'scale',\n 'from': '1.5',\n 'to': '1',\n 'repeatCount': 'indefinite',\n 'begin': '0.1s',\n 'dur': '1s',\n 'calcMode': 'spline',\n 'keySplines': '0.2 0.8 0.2 0.8',\n 'keyTimes': '0;1'\n }\n })\n ])\n ]),\n h('g', {\n attrs: {\n 'transform': 'translate(25 75)'\n }\n }, [\n h('rect', {\n staticClass: 'cube',\n attrs: {\n 'x': '-20',\n 'y': '-20',\n 'width': '40',\n 'height': '40',\n 'fill': 'currentColor',\n 'opacity': '0.7'\n }\n }, [\n h('animateTransform', {\n attrs: {\n 'attributeName': 'transform',\n 'type': 'scale',\n 'from': '1.5',\n 'to': '1',\n 'repeatCount': 'indefinite',\n 'begin': '0.3s',\n 'dur': '1s',\n 'calcMode': 'spline',\n 'keySplines': '0.2 0.8 0.2 0.8',\n 'keyTimes': '0;1'\n }\n })\n ])\n ]),\n h('g', {\n attrs: {\n 'transform': 'translate(75 75)'\n }\n }, [\n h('rect', {\n staticClass: 'cube',\n attrs: {\n 'x': '-20',\n 'y': '-20',\n 'width': '40',\n 'height': '40',\n 'fill': 'currentColor',\n 'opacity': '0.6'\n }\n }, [\n h('animateTransform', {\n attrs: {\n 'attributeName': 'transform',\n 'type': 'scale',\n 'from': '1.5',\n 'to': '1',\n 'repeatCount': 'indefinite',\n 'begin': '0.2s',\n 'dur': '1s',\n 'calcMode': 'spline',\n 'keySplines': '0.2 0.8 0.2 0.8',\n 'keyTimes': '0;1'\n }\n })\n ])\n ])\n ])\n }\n})\n","import Vue from 'vue'\n\nimport mixin from './spinner-mixin.js'\n\nexport default Vue.extend({\n name: 'QSpinnerDots',\n\n mixins: [mixin],\n\n render (h) {\n return h('svg', {\n staticClass: 'q-spinner',\n class: this.classes,\n on: { ...this.qListeners },\n attrs: {\n focusable: 'false' /* needed for IE11 */,\n 'fill': 'currentColor',\n 'width': this.cSize,\n 'height': this.cSize,\n 'viewBox': '0 0 120 30',\n 'xmlns': 'http://www.w3.org/2000/svg'\n }\n }, [\n h('circle', {\n attrs: {\n 'cx': '15',\n 'cy': '15',\n 'r': '15'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'r',\n 'from': '15',\n 'to': '15',\n 'begin': '0s',\n 'dur': '0.8s',\n 'values': '15;9;15',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n }),\n h('animate', {\n attrs: {\n 'attributeName': 'fill-opacity',\n 'from': '1',\n 'to': '1',\n 'begin': '0s',\n 'dur': '0.8s',\n 'values': '1;.5;1',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('circle', {\n attrs: {\n 'cx': '60',\n 'cy': '15',\n 'r': '9',\n 'fill-opacity': '.3'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'r',\n 'from': '9',\n 'to': '9',\n 'begin': '0s',\n 'dur': '0.8s',\n 'values': '9;15;9',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n }),\n h('animate', {\n attrs: {\n 'attributeName': 'fill-opacity',\n 'from': '.5',\n 'to': '.5',\n 'begin': '0s',\n 'dur': '0.8s',\n 'values': '.5;1;.5',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('circle', {\n attrs: {\n 'cx': '105',\n 'cy': '15',\n 'r': '15'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'r',\n 'from': '15',\n 'to': '15',\n 'begin': '0s',\n 'dur': '0.8s',\n 'values': '15;9;15',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n }),\n h('animate', {\n attrs: {\n 'attributeName': 'fill-opacity',\n 'from': '1',\n 'to': '1',\n 'begin': '0s',\n 'dur': '0.8s',\n 'values': '1;.5;1',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ])\n ])\n }\n})\n","import Vue from 'vue'\n\nimport mixin from './spinner-mixin.js'\n\nexport default Vue.extend({\n name: 'QSpinnerFacebook',\n\n mixins: [mixin],\n\n render (h) {\n return h('svg', {\n staticClass: 'q-spinner',\n class: this.classes,\n on: { ...this.qListeners },\n attrs: {\n focusable: 'false' /* needed for IE11 */,\n 'width': this.cSize,\n 'height': this.cSize,\n 'viewBox': '0 0 100 100',\n 'xmlns': 'http://www.w3.org/2000/svg',\n 'preserveAspectRatio': 'xMidYMid'\n }\n }, [\n h('g', {\n attrs: {\n 'transform': 'translate(20 50)'\n }\n }, [\n h('rect', {\n attrs: {\n 'x': '-10',\n 'y': '-30',\n 'width': '20',\n 'height': '60',\n 'fill': 'currentColor',\n 'opacity': '0.6'\n }\n }, [\n h('animateTransform', {\n attrs: {\n 'attributeName': 'transform',\n 'type': 'scale',\n 'from': '2',\n 'to': '1',\n 'begin': '0s',\n 'repeatCount': 'indefinite',\n 'dur': '1s',\n 'calcMode': 'spline',\n 'keySplines': '0.1 0.9 0.4 1',\n 'keyTimes': '0;1',\n 'values': '2;1'\n }\n })\n ])\n ]),\n h('g', {\n attrs: {\n 'transform': 'translate(50 50)'\n }\n }, [\n h('rect', {\n attrs: {\n 'x': '-10',\n 'y': '-30',\n 'width': '20',\n 'height': '60',\n 'fill': 'currentColor',\n 'opacity': '0.8'\n }\n }, [\n h('animateTransform', {\n attrs: {\n 'attributeName': 'transform',\n 'type': 'scale',\n 'from': '2',\n 'to': '1',\n 'begin': '0.1s',\n 'repeatCount': 'indefinite',\n 'dur': '1s',\n 'calcMode': 'spline',\n 'keySplines': '0.1 0.9 0.4 1',\n 'keyTimes': '0;1',\n 'values': '2;1'\n }\n })\n ])\n ]),\n h('g', {\n attrs: {\n 'transform': 'translate(80 50)'\n }\n }, [\n h('rect', {\n attrs: {\n 'x': '-10',\n 'y': '-30',\n 'width': '20',\n 'height': '60',\n 'fill': 'currentColor',\n 'opacity': '0.9'\n }\n }, [\n h('animateTransform', {\n attrs: {\n 'attributeName': 'transform',\n 'type': 'scale',\n 'from': '2',\n 'to': '1',\n 'begin': '0.2s',\n 'repeatCount': 'indefinite',\n 'dur': '1s',\n 'calcMode': 'spline',\n 'keySplines': '0.1 0.9 0.4 1',\n 'keyTimes': '0;1',\n 'values': '2;1'\n }\n })\n ])\n ])\n ])\n }\n})\n","import Vue from 'vue'\n\nimport mixin from './spinner-mixin.js'\n\nexport default Vue.extend({\n name: 'QSpinnerGears',\n\n mixins: [mixin],\n\n render (h) {\n return h('svg', {\n staticClass: 'q-spinner',\n class: this.classes,\n on: { ...this.qListeners },\n attrs: {\n focusable: 'false' /* needed for IE11 */,\n 'width': this.cSize,\n 'height': this.cSize,\n 'viewBox': '0 0 100 100',\n 'preserveAspectRatio': 'xMidYMid',\n 'xmlns': 'http://www.w3.org/2000/svg'\n }\n }, [\n h('g', {\n attrs: {\n 'transform': 'translate(-20,-20)'\n }\n }, [\n h('path', {\n attrs: {\n 'd': 'M79.9,52.6C80,51.8,80,50.9,80,50s0-1.8-0.1-2.6l-5.1-0.4c-0.3-2.4-0.9-4.6-1.8-6.7l4.2-2.9c-0.7-1.6-1.6-3.1-2.6-4.5 L70,35c-1.4-1.9-3.1-3.5-4.9-4.9l2.2-4.6c-1.4-1-2.9-1.9-4.5-2.6L59.8,27c-2.1-0.9-4.4-1.5-6.7-1.8l-0.4-5.1C51.8,20,50.9,20,50,20 s-1.8,0-2.6,0.1l-0.4,5.1c-2.4,0.3-4.6,0.9-6.7,1.8l-2.9-4.1c-1.6,0.7-3.1,1.6-4.5,2.6l2.1,4.6c-1.9,1.4-3.5,3.1-5,4.9l-4.5-2.1 c-1,1.4-1.9,2.9-2.6,4.5l4.1,2.9c-0.9,2.1-1.5,4.4-1.8,6.8l-5,0.4C20,48.2,20,49.1,20,50s0,1.8,0.1,2.6l5,0.4 c0.3,2.4,0.9,4.7,1.8,6.8l-4.1,2.9c0.7,1.6,1.6,3.1,2.6,4.5l4.5-2.1c1.4,1.9,3.1,3.5,5,4.9l-2.1,4.6c1.4,1,2.9,1.9,4.5,2.6l2.9-4.1 c2.1,0.9,4.4,1.5,6.7,1.8l0.4,5.1C48.2,80,49.1,80,50,80s1.8,0,2.6-0.1l0.4-5.1c2.3-0.3,4.6-0.9,6.7-1.8l2.9,4.2 c1.6-0.7,3.1-1.6,4.5-2.6L65,69.9c1.9-1.4,3.5-3,4.9-4.9l4.6,2.2c1-1.4,1.9-2.9,2.6-4.5L73,59.8c0.9-2.1,1.5-4.4,1.8-6.7L79.9,52.6 z M50,65c-8.3,0-15-6.7-15-15c0-8.3,6.7-15,15-15s15,6.7,15,15C65,58.3,58.3,65,50,65z',\n 'fill': 'currentColor'\n }\n }, [\n h('animateTransform', {\n attrs: {\n 'attributeName': 'transform',\n 'type': 'rotate',\n 'from': '90 50 50',\n 'to': '0 50 50',\n 'dur': '1s',\n 'repeatCount': 'indefinite'\n }\n })\n ])\n ]),\n h('g', {\n attrs: {\n 'transform': 'translate(20,20) rotate(15 50 50)'\n }\n }, [\n h('path', {\n attrs: {\n 'd': 'M79.9,52.6C80,51.8,80,50.9,80,50s0-1.8-0.1-2.6l-5.1-0.4c-0.3-2.4-0.9-4.6-1.8-6.7l4.2-2.9c-0.7-1.6-1.6-3.1-2.6-4.5 L70,35c-1.4-1.9-3.1-3.5-4.9-4.9l2.2-4.6c-1.4-1-2.9-1.9-4.5-2.6L59.8,27c-2.1-0.9-4.4-1.5-6.7-1.8l-0.4-5.1C51.8,20,50.9,20,50,20 s-1.8,0-2.6,0.1l-0.4,5.1c-2.4,0.3-4.6,0.9-6.7,1.8l-2.9-4.1c-1.6,0.7-3.1,1.6-4.5,2.6l2.1,4.6c-1.9,1.4-3.5,3.1-5,4.9l-4.5-2.1 c-1,1.4-1.9,2.9-2.6,4.5l4.1,2.9c-0.9,2.1-1.5,4.4-1.8,6.8l-5,0.4C20,48.2,20,49.1,20,50s0,1.8,0.1,2.6l5,0.4 c0.3,2.4,0.9,4.7,1.8,6.8l-4.1,2.9c0.7,1.6,1.6,3.1,2.6,4.5l4.5-2.1c1.4,1.9,3.1,3.5,5,4.9l-2.1,4.6c1.4,1,2.9,1.9,4.5,2.6l2.9-4.1 c2.1,0.9,4.4,1.5,6.7,1.8l0.4,5.1C48.2,80,49.1,80,50,80s1.8,0,2.6-0.1l0.4-5.1c2.3-0.3,4.6-0.9,6.7-1.8l2.9,4.2 c1.6-0.7,3.1-1.6,4.5-2.6L65,69.9c1.9-1.4,3.5-3,4.9-4.9l4.6,2.2c1-1.4,1.9-2.9,2.6-4.5L73,59.8c0.9-2.1,1.5-4.4,1.8-6.7L79.9,52.6 z M50,65c-8.3,0-15-6.7-15-15c0-8.3,6.7-15,15-15s15,6.7,15,15C65,58.3,58.3,65,50,65z',\n 'fill': 'currentColor'\n }\n }, [\n h('animateTransform', {\n attrs: {\n 'attributeName': 'transform',\n 'type': 'rotate',\n 'from': '0 50 50',\n 'to': '90 50 50',\n 'dur': '1s',\n 'repeatCount': 'indefinite'\n }\n })\n ])\n ])\n ])\n }\n})\n","import Vue from 'vue'\n\nimport mixin from './spinner-mixin.js'\n\nexport default Vue.extend({\n name: 'QSpinnerGrid',\n\n mixins: [mixin],\n\n render (h) {\n return h('svg', {\n staticClass: 'q-spinner',\n class: this.classes,\n on: { ...this.qListeners },\n attrs: {\n focusable: 'false' /* needed for IE11 */,\n 'fill': 'currentColor',\n 'width': this.cSize,\n 'height': this.cSize,\n 'viewBox': '0 0 105 105',\n 'xmlns': 'http://www.w3.org/2000/svg'\n }\n }, [\n h('circle', {\n attrs: {\n 'cx': '12.5',\n 'cy': '12.5',\n 'r': '12.5'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'fill-opacity',\n 'begin': '0s',\n 'dur': '1s',\n 'values': '1;.2;1',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('circle', {\n attrs: {\n 'cx': '12.5',\n 'cy': '52.5',\n 'r': '12.5',\n 'fill-opacity': '.5'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'fill-opacity',\n 'begin': '100ms',\n 'dur': '1s',\n 'values': '1;.2;1',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('circle', {\n attrs: {\n 'cx': '52.5',\n 'cy': '12.5',\n 'r': '12.5'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'fill-opacity',\n 'begin': '300ms',\n 'dur': '1s',\n 'values': '1;.2;1',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('circle', {\n attrs: {\n 'cx': '52.5',\n 'cy': '52.5',\n 'r': '12.5'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'fill-opacity',\n 'begin': '600ms',\n 'dur': '1s',\n 'values': '1;.2;1',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('circle', {\n attrs: {\n 'cx': '92.5',\n 'cy': '12.5',\n 'r': '12.5'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'fill-opacity',\n 'begin': '800ms',\n 'dur': '1s',\n 'values': '1;.2;1',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('circle', {\n attrs: {\n 'cx': '92.5',\n 'cy': '52.5',\n 'r': '12.5'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'fill-opacity',\n 'begin': '400ms',\n 'dur': '1s',\n 'values': '1;.2;1',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('circle', {\n attrs: {\n 'cx': '12.5',\n 'cy': '92.5',\n 'r': '12.5'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'fill-opacity',\n 'begin': '700ms',\n 'dur': '1s',\n 'values': '1;.2;1',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('circle', {\n attrs: {\n 'cx': '52.5',\n 'cy': '92.5',\n 'r': '12.5'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'fill-opacity',\n 'begin': '500ms',\n 'dur': '1s',\n 'values': '1;.2;1',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('circle', {\n attrs: {\n 'cx': '92.5',\n 'cy': '92.5',\n 'r': '12.5'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'fill-opacity',\n 'begin': '200ms',\n 'dur': '1s',\n 'values': '1;.2;1',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ])\n ])\n }\n})\n","import Vue from 'vue'\n\nimport mixin from './spinner-mixin.js'\n\nexport default Vue.extend({\n name: 'QSpinnerHearts',\n\n mixins: [mixin],\n\n render (h) {\n return h('svg', {\n staticClass: 'q-spinner',\n class: this.classes,\n on: { ...this.qListeners },\n attrs: {\n focusable: 'false' /* needed for IE11 */,\n 'fill': 'currentColor',\n 'width': this.cSize,\n 'height': this.cSize,\n 'viewBox': '0 0 140 64',\n 'xmlns': 'http://www.w3.org/2000/svg'\n }\n }, [\n h('path', {\n attrs: {\n 'd': 'M30.262 57.02L7.195 40.723c-5.84-3.976-7.56-12.06-3.842-18.063 3.715-6 11.467-7.65 17.306-3.68l4.52 3.76 2.6-5.274c3.716-6.002 11.47-7.65 17.304-3.68 5.84 3.97 7.56 12.054 3.842 18.062L34.49 56.118c-.897 1.512-2.793 1.915-4.228.9z',\n 'fill-opacity': '.5'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'fill-opacity',\n 'begin': '0s',\n 'dur': '1.4s',\n 'values': '0.5;1;0.5',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('path', {\n attrs: {\n 'd': 'M105.512 56.12l-14.44-24.272c-3.716-6.008-1.996-14.093 3.843-18.062 5.835-3.97 13.588-2.322 17.306 3.68l2.6 5.274 4.52-3.76c5.84-3.97 13.593-2.32 17.308 3.68 3.718 6.003 1.998 14.088-3.842 18.064L109.74 57.02c-1.434 1.014-3.33.61-4.228-.9z',\n 'fill-opacity': '.5'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'fill-opacity',\n 'begin': '0.7s',\n 'dur': '1.4s',\n 'values': '0.5;1;0.5',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('path', {\n attrs: {\n 'd': 'M67.408 57.834l-23.01-24.98c-5.864-6.15-5.864-16.108 0-22.248 5.86-6.14 15.37-6.14 21.234 0L70 16.168l4.368-5.562c5.863-6.14 15.375-6.14 21.235 0 5.863 6.14 5.863 16.098 0 22.247l-23.007 24.98c-1.43 1.556-3.757 1.556-5.188 0z'\n }\n })\n ])\n }\n})\n","import Vue from 'vue'\n\nimport mixin from './spinner-mixin.js'\n\nexport default Vue.extend({\n name: 'QSpinnerHourglass',\n\n mixins: [mixin],\n\n render (h) {\n return h('svg', {\n staticClass: 'q-spinner',\n class: this.classes,\n on: { ...this.qListeners },\n attrs: {\n focusable: 'false' /* needed for IE11 */,\n 'width': this.cSize,\n 'height': this.cSize,\n 'viewBox': '0 0 100 100',\n 'preserveAspectRatio': 'xMidYMid',\n 'xmlns': 'http://www.w3.org/2000/svg'\n }\n }, [\n h('g', [\n h('path', {\n staticClass: 'glass',\n attrs: {\n 'fill': 'none',\n 'stroke': 'currentColor',\n 'stroke-width': '5',\n 'stroke-miterlimit': '10',\n 'd': 'M58.4,51.7c-0.9-0.9-1.4-2-1.4-2.3s0.5-0.4,1.4-1.4 C70.8,43.8,79.8,30.5,80,15.5H70H30H20c0.2,15,9.2,28.1,21.6,32.3c0.9,0.9,1.4,1.2,1.4,1.5s-0.5,1.6-1.4,2.5 C29.2,56.1,20.2,69.5,20,85.5h10h40h10C79.8,69.5,70.8,55.9,58.4,51.7z'\n }\n }),\n h('clipPath', {\n attrs: {\n 'id': 'uil-hourglass-clip1'\n }\n }, [\n h('rect', {\n staticClass: 'clip',\n attrs: {\n 'x': '15',\n 'y': '20',\n 'width': '70',\n 'height': '25'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'height',\n 'from': '25',\n 'to': '0',\n 'dur': '1s',\n 'repeatCount': 'indefinite',\n 'values': '25;0;0',\n 'keyTimes': '0;0.5;1'\n }\n }),\n h('animate', {\n attrs: {\n 'attributeName': 'y',\n 'from': '20',\n 'to': '45',\n 'dur': '1s',\n 'repeatCount': 'indefinite',\n 'values': '20;45;45',\n 'keyTimes': '0;0.5;1'\n }\n })\n ])\n ]),\n h('clipPath', {\n attrs: {\n 'id': 'uil-hourglass-clip2'\n }\n }, [\n h('rect', {\n staticClass: 'clip',\n attrs: {\n 'x': '15',\n 'y': '55',\n 'width': '70',\n 'height': '25'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'height',\n 'from': '0',\n 'to': '25',\n 'dur': '1s',\n 'repeatCount': 'indefinite',\n 'values': '0;25;25',\n 'keyTimes': '0;0.5;1'\n }\n }),\n h('animate', {\n attrs: {\n 'attributeName': 'y',\n 'from': '80',\n 'to': '55',\n 'dur': '1s',\n 'repeatCount': 'indefinite',\n 'values': '80;55;55',\n 'keyTimes': '0;0.5;1'\n }\n })\n ])\n ]),\n h('path', {\n staticClass: 'sand',\n attrs: {\n 'd': 'M29,23c3.1,11.4,11.3,19.5,21,19.5S67.9,34.4,71,23H29z',\n 'clip-path': 'url(#uil-hourglass-clip1)',\n 'fill': 'currentColor'\n }\n }),\n h('path', {\n staticClass: 'sand',\n attrs: {\n 'd': 'M71.6,78c-3-11.6-11.5-20-21.5-20s-18.5,8.4-21.5,20H71.6z',\n 'clip-path': 'url(#uil-hourglass-clip2)',\n 'fill': 'currentColor'\n }\n }),\n h('animateTransform', {\n attrs: {\n 'attributeName': 'transform',\n 'type': 'rotate',\n 'from': '0 50 50',\n 'to': '180 50 50',\n 'repeatCount': 'indefinite',\n 'dur': '1s',\n 'values': '0 50 50;0 50 50;180 50 50',\n 'keyTimes': '0;0.7;1'\n }\n })\n ])\n ])\n }\n})\n","import Vue from 'vue'\n\nimport mixin from './spinner-mixin.js'\n\nexport default Vue.extend({\n name: 'QSpinnerInfinity',\n\n mixins: [mixin],\n\n render (h) {\n return h('svg', {\n staticClass: 'q-spinner',\n class: this.classes,\n on: { ...this.qListeners },\n attrs: {\n focusable: 'false' /* needed for IE11 */,\n 'width': this.cSize,\n 'height': this.cSize,\n 'viewBox': '0 0 100 100',\n 'preserveAspectRatio': 'xMidYMid'\n }\n }, [\n h('path', {\n attrs: {\n 'd': 'M24.3,30C11.4,30,5,43.3,5,50s6.4,20,19.3,20c19.3,0,32.1-40,51.4-40C88.6,30,95,43.3,95,50s-6.4,20-19.3,20C56.4,70,43.6,30,24.3,30z',\n 'fill': 'none',\n 'stroke': 'currentColor',\n 'stroke-width': '8',\n 'stroke-dasharray': '10.691205342610678 10.691205342610678',\n 'stroke-dashoffset': '0'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'stroke-dashoffset',\n 'from': '0',\n 'to': '21.382410685221355',\n 'begin': '0',\n 'dur': '2s',\n 'repeatCount': 'indefinite',\n 'fill': 'freeze'\n }\n })\n ])\n ])\n }\n})\n","import Vue from 'vue'\n\nimport mixin from './spinner-mixin.js'\n\nexport default Vue.extend({\n name: 'QSpinnerIos',\n\n mixins: [mixin],\n\n render (h) {\n return h('svg', {\n staticClass: 'q-spinner',\n class: this.classes,\n on: { ...this.qListeners },\n attrs: {\n focusable: 'false' /* needed for IE11 */,\n 'width': this.cSize,\n 'height': this.cSize,\n 'stroke': 'currentColor',\n 'fill': 'currentColor',\n 'viewBox': '0 0 64 64'\n }\n }, [\n h('g', {\n attrs: {\n 'stroke-width': '4',\n 'stroke-linecap': 'round'\n }\n }, [\n h('line', {\n attrs: {\n 'y1': '17',\n 'y2': '29',\n 'transform': 'translate(32,32) rotate(180)'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'stroke-opacity',\n 'dur': '750ms',\n 'values': '1;.85;.7;.65;.55;.45;.35;.25;.15;.1;0;1',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('line', {\n attrs: {\n 'y1': '17',\n 'y2': '29',\n 'transform': 'translate(32,32) rotate(210)'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'stroke-opacity',\n 'dur': '750ms',\n 'values': '0;1;.85;.7;.65;.55;.45;.35;.25;.15;.1;0',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('line', {\n attrs: {\n 'y1': '17',\n 'y2': '29',\n 'transform': 'translate(32,32) rotate(240)'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'stroke-opacity',\n 'dur': '750ms',\n 'values': '.1;0;1;.85;.7;.65;.55;.45;.35;.25;.15;.1',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('line', {\n attrs: {\n 'y1': '17',\n 'y2': '29',\n 'transform': 'translate(32,32) rotate(270)'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'stroke-opacity',\n 'dur': '750ms',\n 'values': '.15;.1;0;1;.85;.7;.65;.55;.45;.35;.25;.15',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('line', {\n attrs: {\n 'y1': '17',\n 'y2': '29',\n 'transform': 'translate(32,32) rotate(300)'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'stroke-opacity',\n 'dur': '750ms',\n 'values': '.25;.15;.1;0;1;.85;.7;.65;.55;.45;.35;.25',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('line', {\n attrs: {\n 'y1': '17',\n 'y2': '29',\n 'transform': 'translate(32,32) rotate(330)'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'stroke-opacity',\n 'dur': '750ms',\n 'values': '.35;.25;.15;.1;0;1;.85;.7;.65;.55;.45;.35',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('line', {\n attrs: {\n 'y1': '17',\n 'y2': '29',\n 'transform': 'translate(32,32) rotate(0)'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'stroke-opacity',\n 'dur': '750ms',\n 'values': '.45;.35;.25;.15;.1;0;1;.85;.7;.65;.55;.45',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('line', {\n attrs: {\n 'y1': '17',\n 'y2': '29',\n 'transform': 'translate(32,32) rotate(30)'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'stroke-opacity',\n 'dur': '750ms',\n 'values': '.55;.45;.35;.25;.15;.1;0;1;.85;.7;.65;.55',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('line', {\n attrs: {\n 'y1': '17',\n 'y2': '29',\n 'transform': 'translate(32,32) rotate(60)'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'stroke-opacity',\n 'dur': '750ms',\n 'values': '.65;.55;.45;.35;.25;.15;.1;0;1;.85;.7;.65',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('line', {\n attrs: {\n 'y1': '17',\n 'y2': '29',\n 'transform': 'translate(32,32) rotate(90)'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'stroke-opacity',\n 'dur': '750ms',\n 'values': '.7;.65;.55;.45;.35;.25;.15;.1;0;1;.85;.7',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('line', {\n attrs: {\n 'y1': '17',\n 'y2': '29',\n 'transform': 'translate(32,32) rotate(120)'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'stroke-opacity',\n 'dur': '750ms',\n 'values': '.85;.7;.65;.55;.45;.35;.25;.15;.1;0;1;.85',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('line', {\n attrs: {\n 'y1': '17',\n 'y2': '29',\n 'transform': 'translate(32,32) rotate(150)'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'stroke-opacity',\n 'dur': '750ms',\n 'values': '1;.85;.7;.65;.55;.45;.35;.25;.15;.1;0;1',\n 'repeatCount': 'indefinite'\n }\n })\n ])\n ])\n ])\n }\n})\n","import Vue from 'vue'\n\nimport mixin from './spinner-mixin.js'\n\nexport default Vue.extend({\n name: 'QSpinnerOrbit',\n\n mixins: [mixin],\n\n render (h) {\n return h('svg', {\n staticClass: 'q-spinner',\n class: this.classes,\n on: { ...this.qListeners },\n attrs: {\n focusable: 'false' /* needed for IE11 */,\n 'width': this.cSize,\n 'height': this.cSize,\n 'xmlns': 'http://www.w3.org/2000/svg',\n 'viewBox': '0 0 100 100',\n 'preserveAspectRatio': 'xMidYMid'\n }\n }, [\n h('circle', {\n attrs: {\n 'cx': '50',\n 'cy': '50',\n 'r': '44',\n 'fill': 'none',\n 'stroke-width': '4',\n 'stroke-opacity': '.5',\n 'stroke': 'currentColor'\n }\n }),\n h('circle', {\n attrs: {\n 'cx': '8',\n 'cy': '54',\n 'r': '6',\n 'fill': 'currentColor',\n 'stroke-width': '3',\n 'stroke': 'currentColor'\n }\n }, [\n h('animateTransform', {\n attrs: {\n 'attributeName': 'transform',\n 'type': 'rotate',\n 'from': '0 50 48',\n 'to': '360 50 52',\n 'dur': '2s',\n 'repeatCount': 'indefinite'\n }\n })\n ])\n ])\n }\n})\n","import Vue from 'vue'\n\nimport mixin from './spinner-mixin.js'\n\nexport default Vue.extend({\n name: 'QSpinnerOval',\n\n mixins: [mixin],\n\n render (h) {\n return h('svg', {\n staticClass: 'q-spinner',\n class: this.classes,\n on: { ...this.qListeners },\n attrs: {\n focusable: 'false' /* needed for IE11 */,\n 'stroke': 'currentColor',\n 'width': this.cSize,\n 'height': this.cSize,\n 'viewBox': '0 0 38 38',\n 'xmlns': 'http://www.w3.org/2000/svg'\n }\n }, [\n h('g', {\n attrs: {\n 'transform': 'translate(1 1)',\n 'stroke-width': '2',\n 'fill': 'none',\n 'fill-rule': 'evenodd'\n }\n }, [\n h('circle', {\n attrs: {\n 'stroke-opacity': '.5',\n 'cx': '18',\n 'cy': '18',\n 'r': '18'\n }\n }),\n h('path', {\n attrs: {\n 'd': 'M36 18c0-9.94-8.06-18-18-18'\n }\n }, [\n h('animateTransform', {\n attrs: {\n 'attributeName': 'transform',\n 'type': 'rotate',\n 'from': '0 18 18',\n 'to': '360 18 18',\n 'dur': '1s',\n 'repeatCount': 'indefinite'\n }\n })\n ])\n ])\n ])\n }\n})\n","import Vue from 'vue'\n\nimport mixin from './spinner-mixin.js'\n\nexport default Vue.extend({\n name: 'QSpinnerPie',\n\n mixins: [mixin],\n\n render (h) {\n return h('svg', {\n staticClass: 'q-spinner',\n class: this.classes,\n on: { ...this.qListeners },\n attrs: {\n focusable: 'false' /* needed for IE11 */,\n 'width': this.cSize,\n 'height': this.cSize,\n 'viewBox': '0 0 100 100',\n 'preserveAspectRatio': 'xMidYMid',\n 'xmlns': 'http://www.w3.org/2000/svg'\n }\n }, [\n h('path', {\n attrs: {\n 'd': 'M0 50A50 50 0 0 1 50 0L50 50L0 50',\n 'fill': 'currentColor',\n 'opacity': '0.5'\n }\n }, [\n h('animateTransform', {\n attrs: {\n 'attributeName': 'transform',\n 'type': 'rotate',\n 'from': '0 50 50',\n 'to': '360 50 50',\n 'dur': '0.8s',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('path', {\n attrs: {\n 'd': 'M50 0A50 50 0 0 1 100 50L50 50L50 0',\n 'fill': 'currentColor',\n 'opacity': '0.5'\n }\n }, [\n h('animateTransform', {\n attrs: {\n 'attributeName': 'transform',\n 'type': 'rotate',\n 'from': '0 50 50',\n 'to': '360 50 50',\n 'dur': '1.6s',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('path', {\n attrs: {\n 'd': 'M100 50A50 50 0 0 1 50 100L50 50L100 50',\n 'fill': 'currentColor',\n 'opacity': '0.5'\n }\n }, [\n h('animateTransform', {\n attrs: {\n 'attributeName': 'transform',\n 'type': 'rotate',\n 'from': '0 50 50',\n 'to': '360 50 50',\n 'dur': '2.4s',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('path', {\n attrs: {\n 'd': 'M50 100A50 50 0 0 1 0 50L50 50L50 100',\n 'fill': 'currentColor',\n 'opacity': '0.5'\n }\n }, [\n h('animateTransform', {\n attrs: {\n 'attributeName': 'transform',\n 'type': 'rotate',\n 'from': '0 50 50',\n 'to': '360 50 50',\n 'dur': '3.2s',\n 'repeatCount': 'indefinite'\n }\n })\n ])\n ])\n }\n})\n","import Vue from 'vue'\n\nimport mixin from './spinner-mixin.js'\n\nexport default Vue.extend({\n name: 'QSpinnerPuff',\n\n mixins: [mixin],\n\n render (h) {\n return h('svg', {\n staticClass: 'q-spinner',\n class: this.classes,\n on: { ...this.qListeners },\n attrs: {\n focusable: 'false' /* needed for IE11 */,\n 'stroke': 'currentColor',\n 'width': this.cSize,\n 'height': this.cSize,\n 'viewBox': '0 0 44 44',\n 'xmlns': 'http://www.w3.org/2000/svg'\n }\n }, [\n h('g', {\n attrs: {\n 'fill': 'none',\n 'fill-rule': 'evenodd',\n 'stroke-width': '2'\n }\n }, [\n h('circle', {\n attrs: {\n 'cx': '22',\n 'cy': '22',\n 'r': '1'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'r',\n 'begin': '0s',\n 'dur': '1.8s',\n 'values': '1; 20',\n 'calcMode': 'spline',\n 'keyTimes': '0; 1',\n 'keySplines': '0.165, 0.84, 0.44, 1',\n 'repeatCount': 'indefinite'\n }\n }),\n h('animate', {\n attrs: {\n 'attributeName': 'stroke-opacity',\n 'begin': '0s',\n 'dur': '1.8s',\n 'values': '1; 0',\n 'calcMode': 'spline',\n 'keyTimes': '0; 1',\n 'keySplines': '0.3, 0.61, 0.355, 1',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('circle', {\n attrs: {\n 'cx': '22',\n 'cy': '22',\n 'r': '1'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'r',\n 'begin': '-0.9s',\n 'dur': '1.8s',\n 'values': '1; 20',\n 'calcMode': 'spline',\n 'keyTimes': '0; 1',\n 'keySplines': '0.165, 0.84, 0.44, 1',\n 'repeatCount': 'indefinite'\n }\n }),\n h('animate', {\n attrs: {\n 'attributeName': 'stroke-opacity',\n 'begin': '-0.9s',\n 'dur': '1.8s',\n 'values': '1; 0',\n 'calcMode': 'spline',\n 'keyTimes': '0; 1',\n 'keySplines': '0.3, 0.61, 0.355, 1',\n 'repeatCount': 'indefinite'\n }\n })\n ])\n ])\n ])\n }\n})\n","import Vue from 'vue'\n\nimport mixin from './spinner-mixin.js'\n\nexport default Vue.extend({\n name: 'QSpinnerRadio',\n\n mixins: [mixin],\n\n render (h) {\n return h('svg', {\n staticClass: 'q-spinner',\n class: this.classes,\n on: { ...this.qListeners },\n attrs: {\n focusable: 'false' /* needed for IE11 */,\n 'width': this.cSize,\n 'height': this.cSize,\n 'viewBox': '0 0 100 100',\n 'preserveAspectRatio': 'xMidYMid',\n 'xmlns': 'http://www.w3.org/2000/svg'\n }\n }, [\n h('g', {\n attrs: {\n 'transform': 'scale(0.55)'\n }\n }, [\n h('circle', {\n attrs: {\n 'cx': '30',\n 'cy': '150',\n 'r': '30',\n 'fill': 'currentColor'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'opacity',\n 'from': '0',\n 'to': '1',\n 'dur': '1s',\n 'begin': '0',\n 'repeatCount': 'indefinite',\n 'keyTimes': '0;0.5;1',\n 'values': '0;1;1'\n }\n })\n ]),\n h('path', {\n attrs: {\n 'd': 'M90,150h30c0-49.7-40.3-90-90-90v30C63.1,90,90,116.9,90,150z',\n 'fill': 'currentColor'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'opacity',\n 'from': '0',\n 'to': '1',\n 'dur': '1s',\n 'begin': '0.1',\n 'repeatCount': 'indefinite',\n 'keyTimes': '0;0.5;1',\n 'values': '0;1;1'\n }\n })\n ]),\n h('path', {\n attrs: {\n 'd': 'M150,150h30C180,67.2,112.8,0,30,0v30C96.3,30,150,83.7,150,150z',\n 'fill': 'currentColor'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'opacity',\n 'from': '0',\n 'to': '1',\n 'dur': '1s',\n 'begin': '0.2',\n 'repeatCount': 'indefinite',\n 'keyTimes': '0;0.5;1',\n 'values': '0;1;1'\n }\n })\n ])\n ])\n ])\n }\n})\n","import Vue from 'vue'\n\nimport mixin from './spinner-mixin.js'\n\nexport default Vue.extend({\n name: 'QSpinnerRings',\n\n mixins: [mixin],\n\n render (h) {\n return h('svg', {\n staticClass: 'q-spinner',\n class: this.classes,\n on: { ...this.qListeners },\n attrs: {\n focusable: 'false' /* needed for IE11 */,\n 'stroke': 'currentColor',\n 'width': this.cSize,\n 'height': this.cSize,\n 'viewBox': '0 0 45 45',\n 'xmlns': 'http://www.w3.org/2000/svg'\n }\n }, [\n h('g', {\n attrs: {\n 'fill': 'none',\n 'fill-rule': 'evenodd',\n 'transform': 'translate(1 1)',\n 'stroke-width': '2'\n }\n }, [\n h('circle', {\n attrs: {\n 'cx': '22',\n 'cy': '22',\n 'r': '6'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'r',\n 'begin': '1.5s',\n 'dur': '3s',\n 'values': '6;22',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n }),\n h('animate', {\n attrs: {\n 'attributeName': 'stroke-opacity',\n 'begin': '1.5s',\n 'dur': '3s',\n 'values': '1;0',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n }),\n h('animate', {\n attrs: {\n 'attributeName': 'stroke-width',\n 'begin': '1.5s',\n 'dur': '3s',\n 'values': '2;0',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('circle', {\n attrs: {\n 'cx': '22',\n 'cy': '22',\n 'r': '6'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'r',\n 'begin': '3s',\n 'dur': '3s',\n 'values': '6;22',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n }),\n h('animate', {\n attrs: {\n 'attributeName': 'stroke-opacity',\n 'begin': '3s',\n 'dur': '3s',\n 'values': '1;0',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n }),\n h('animate', {\n attrs: {\n 'attributeName': 'stroke-width',\n 'begin': '3s',\n 'dur': '3s',\n 'values': '2;0',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('circle', {\n attrs: {\n 'cx': '22',\n 'cy': '22',\n 'r': '8'\n }\n }, [\n h('animate', {\n attrs: {\n 'attributeName': 'r',\n 'begin': '0s',\n 'dur': '1.5s',\n 'values': '6;1;2;3;4;5;6',\n 'calcMode': 'linear',\n 'repeatCount': 'indefinite'\n }\n })\n ])\n ])\n ])\n }\n})\n","import Vue from 'vue'\n\nimport mixin from './spinner-mixin.js'\n\nexport default Vue.extend({\n name: 'QSpinnerTail',\n\n mixins: [mixin],\n\n render (h) {\n return h('svg', {\n staticClass: 'q-spinner',\n class: this.classes,\n on: { ...this.qListeners },\n attrs: {\n focusable: 'false' /* needed for IE11 */,\n 'width': this.cSize,\n 'height': this.cSize,\n 'viewBox': '0 0 38 38',\n 'xmlns': 'http://www.w3.org/2000/svg'\n }\n }, [\n h('defs', [\n h('linearGradient', {\n attrs: {\n 'x1': '8.042%',\n 'y1': '0%',\n 'x2': '65.682%',\n 'y2': '23.865%',\n 'id': 'a'\n }\n }, [\n h('stop', {\n attrs: {\n 'stop-color': 'currentColor',\n 'stop-opacity': '0',\n 'offset': '0%'\n }\n }),\n h('stop', {\n attrs: {\n 'stop-color': 'currentColor',\n 'stop-opacity': '.631',\n 'offset': '63.146%'\n }\n }),\n h('stop', {\n attrs: {\n 'stop-color': 'currentColor',\n 'offset': '100%'\n }\n })\n ])\n ]),\n h('g', {\n attrs: {\n 'transform': 'translate(1 1)',\n 'fill': 'none',\n 'fill-rule': 'evenodd'\n }\n }, [\n h('path', {\n attrs: {\n 'd': 'M36 18c0-9.94-8.06-18-18-18',\n 'stroke': 'url(#a)',\n 'stroke-width': '2'\n }\n }, [\n h('animateTransform', {\n attrs: {\n 'attributeName': 'transform',\n 'type': 'rotate',\n 'from': '0 18 18',\n 'to': '360 18 18',\n 'dur': '0.9s',\n 'repeatCount': 'indefinite'\n }\n })\n ]),\n h('circle', {\n attrs: {\n 'fill': 'currentColor',\n 'cx': '36',\n 'cy': '18',\n 'r': '1'\n }\n }, [\n h('animateTransform', {\n attrs: {\n 'attributeName': 'transform',\n 'type': 'rotate',\n 'from': '0 18 18',\n 'to': '360 18 18',\n 'dur': '0.9s',\n 'repeatCount': 'indefinite'\n }\n })\n ])\n ])\n ])\n }\n})\n","import Vue from 'vue'\n\nimport TouchPan from '../../directives/TouchPan.js'\n\nimport DarkMixin from '../../mixins/dark.js'\nimport ListenersMixin from '../../mixins/listeners.js'\n\nimport { slot, mergeSlot } from '../../utils/slot.js'\nimport { stop } from '../../utils/event.js'\nimport cache from '../../utils/cache.js'\n\nexport default Vue.extend({\n name: 'QSplitter',\n\n mixins: [ DarkMixin, ListenersMixin ],\n\n directives: {\n TouchPan\n },\n\n props: {\n value: {\n type: Number,\n required: true\n },\n reverse: Boolean,\n unit: {\n type: String,\n default: '%',\n validator: v => [ '%', 'px' ].includes(v)\n },\n\n limits: {\n type: Array,\n validator: v => {\n if (v.length !== 2) return false\n if (typeof v[0] !== 'number' || typeof v[1] !== 'number') return false\n return v[0] >= 0 && v[0] <= v[1]\n }\n },\n\n emitImmediately: Boolean,\n\n horizontal: Boolean,\n disable: Boolean,\n\n beforeClass: [Array, String, Object],\n afterClass: [Array, String, Object],\n\n separatorClass: [Array, String, Object],\n separatorStyle: [Array, String, Object]\n },\n\n watch: {\n value: {\n immediate: true,\n handler (v) {\n this.__normalize(v, this.computedLimits)\n }\n },\n\n limits: {\n deep: true,\n handler () {\n this.$nextTick(() => {\n this.__normalize(this.value, this.computedLimits)\n })\n }\n }\n },\n\n computed: {\n classes () {\n return (this.horizontal === true ? 'column' : 'row') +\n ` q-splitter--${this.horizontal === true ? 'horizontal' : 'vertical'}` +\n ` q-splitter--${this.disable === true ? 'disabled' : 'workable'}` +\n (this.isDark === true ? ' q-splitter--dark' : '')\n },\n\n prop () {\n return this.horizontal === true ? 'height' : 'width'\n },\n\n side () {\n return this.reverse !== true ? 'before' : 'after'\n },\n\n computedLimits () {\n return this.limits !== void 0\n ? this.limits\n : (this.unit === '%' ? [ 10, 90 ] : [ 50, Infinity ])\n },\n\n styles () {\n return {\n [this.side]: {\n [this.prop]: this.__getCSSValue(this.value)\n }\n }\n },\n\n separatorDirectives () {\n if (this.disable !== true) {\n return [{\n name: 'touch-pan',\n value: this.__pan,\n modifiers: {\n [ this.horizontal === true ? 'vertical' : 'horizontal' ]: true,\n prevent: true,\n stop: true,\n mouse: true,\n mouseAllDir: true\n }\n }]\n }\n }\n },\n\n methods: {\n __pan (evt) {\n if (evt.isFirst === true) {\n const size = this.$el.getBoundingClientRect()[this.prop]\n\n this.__dir = this.horizontal === true ? 'up' : 'left'\n this.__maxValue = this.unit === '%' ? 100 : size\n this.__value = Math.min(this.__maxValue, this.computedLimits[1], Math.max(this.computedLimits[0], this.value))\n this.__multiplier = (this.reverse !== true ? 1 : -1) *\n (this.horizontal === true ? 1 : (this.$q.lang.rtl === true ? -1 : 1)) *\n (this.unit === '%' ? (size === 0 ? 0 : 100 / size) : 1)\n\n this.$el.classList.add('q-splitter--active')\n return\n }\n\n if (evt.isFinal === true) {\n if (this.__normalized !== this.value) {\n this.$emit('input', this.__normalized)\n }\n\n this.$el.classList.remove('q-splitter--active')\n return\n }\n\n const val = this.__value +\n this.__multiplier *\n (evt.direction === this.__dir ? -1 : 1) *\n evt.distance[this.horizontal === true ? 'y' : 'x']\n\n this.__normalized = Math.min(this.__maxValue, this.computedLimits[1], Math.max(this.computedLimits[0], val))\n\n this.$refs[this.side].style[this.prop] = this.__getCSSValue(this.__normalized)\n\n if (this.emitImmediately === true && this.value !== this.__normalized) {\n this.$emit('input', this.__normalized)\n }\n },\n\n __normalize (val, limits) {\n if (val < limits[0]) {\n this.$emit('input', limits[0])\n }\n else if (val > limits[1]) {\n this.$emit('input', limits[1])\n }\n },\n\n __getCSSValue (value) {\n return (this.unit === '%' ? value : Math.round(value)) + this.unit\n }\n },\n\n render (h) {\n const attrs = this.disable === true ? { 'aria-disabled': 'true' } : void 0\n const child = [\n h('div', {\n ref: 'before',\n staticClass: 'q-splitter__panel q-splitter__before' + (this.reverse === true ? ' col' : ''),\n style: this.styles.before,\n class: this.beforeClass,\n on: cache(this, 'stop', { input: stop })\n }, slot(this, 'before')),\n\n h('div', {\n staticClass: 'q-splitter__separator',\n style: this.separatorStyle,\n class: this.separatorClass,\n attrs\n }, [\n h('div', {\n staticClass: 'absolute-full q-splitter__separator-area',\n directives: this.separatorDirectives\n }, slot(this, 'separator'))\n ]),\n\n h('div', {\n ref: 'after',\n staticClass: 'q-splitter__panel q-splitter__after' + (this.reverse === true ? '' : ' col'),\n style: this.styles.after,\n class: this.afterClass,\n on: cache(this, 'stop', { input: stop })\n }, slot(this, 'after'))\n ]\n\n return h('div', {\n staticClass: 'q-splitter no-wrap',\n class: this.classes,\n on: { ...this.qListeners }\n }, mergeSlot(child, this, 'default'))\n }\n})\n","const trailingSlashRE = /\\/?$/\n\nfunction equals (current, target) {\n if (Object.keys(current).length !== Object.keys(target).length) {\n return false\n }\n\n // route query and params are strings when read from URL\n for (const key in target) {\n if (!(key in current) || String(current[key]) !== String(target[key])) {\n return false\n }\n }\n return true\n}\n\nfunction includes (current, target) {\n for (const key in target) {\n if (!(key in current)) {\n return false\n }\n }\n return true\n}\n\nexport function isSameRoute (current, target) {\n if (!target) {\n return false\n }\n\n if (current.path && target.path) {\n return (\n current.path.replace(trailingSlashRE, '') === target.path.replace(trailingSlashRE, '') &&\n current.hash === target.hash &&\n equals(current.query, target.query)\n )\n }\n\n return typeof current.name === 'string' &&\n current.name === target.name &&\n current.hash === target.hash &&\n equals(current.query, target.query) === true &&\n equals(current.params, target.params) === true\n}\n\nexport function isIncludedRoute (current, target) {\n return current.path.replace(trailingSlashRE, '/').indexOf(target.path.replace(trailingSlashRE, '/')) === 0 &&\n (typeof target.hash !== 'string' || target.hash.length < 2 || current.hash === target.hash) &&\n includes(current.query, target.query) === true\n}\n","import Vue from 'vue'\n\nimport QTab from './QTab.js'\nimport RouterLinkMixin from '../../mixins/router-link.js'\nimport { isSameRoute, isIncludedRoute } from '../../utils/router.js'\nimport { stopAndPrevent, noop } from '../../utils/event.js'\n\nexport default Vue.extend({\n name: 'QRouteTab',\n\n mixins: [ QTab, RouterLinkMixin ],\n\n inject: {\n __activateRoute: {},\n __recalculateScroll: {}\n },\n\n watch: {\n $route () {\n this.__checkActivation()\n }\n },\n\n computed: {\n routerTabLinkProps () {\n return {\n ...this.linkProps.props,\n custom: true\n }\n }\n },\n\n methods: {\n __activate (e, keyboard) {\n if (this.disable !== true) {\n if (\n e !== void 0 && (\n e.ctrlKey === true ||\n e.shiftKey === true ||\n e.altKey === true ||\n e.metaKey === true\n )\n ) {\n // if it has meta keys, let vue-router link\n // handle this by its own\n this.__checkActivation(true)\n }\n else if (this.hasRouterLink === true) {\n // we use programatic navigation instead of letting vue-router handle it\n // so we can check for activation when the navigation is complete\n e !== void 0 && stopAndPrevent(e)\n\n const go = (to = this.to, append = this.append, replace = this.replace) => {\n const { route } = this.$router.resolve(to, this.$route, append)\n const checkFn = to === this.to && append === this.append\n ? this.__checkActivation\n : noop\n\n // vue-router now throwing error if navigating\n // to the same route that the user is currently at\n // https://github.com/vuejs/vue-router/issues/2872\n this.$router[replace === true ? 'replace' : 'push'](\n route,\n () => { checkFn(true) },\n err => {\n if (err && err.name === 'NavigationDuplicated') {\n checkFn(true)\n }\n }\n )\n }\n\n this.qListeners.click !== void 0 && this.$emit('click', e, go)\n if (e === void 0 || e.navigate !== false) {\n go()\n }\n }\n }\n\n if (keyboard === true) {\n this.$el.focus({ preventScroll: true })\n }\n else if (this.$refs.blurTarget !== void 0) {\n this.$refs.blurTarget.focus({ preventScroll: true })\n }\n },\n\n __checkActivation (selected = false) {\n if (this.hasRouterLink !== true) {\n return\n }\n\n const\n current = this.$route,\n { href, location, route } = this.$router.resolve(this.to, current, this.append),\n redirected = route.redirectedFrom !== void 0,\n isSameRouteCheck = isSameRoute(current, route),\n checkFunction = this.exact === true ? isSameRoute : isIncludedRoute,\n params = {\n name: this.name,\n selected,\n exact: this.exact,\n priorityMatched: route.matched.length,\n priorityHref: href.length\n }\n\n if (isSameRouteCheck === true || (this.exact !== true && isIncludedRoute(current, route) === true)) {\n this.__activateRoute({\n ...params,\n redirected,\n // if it's an exact match give higher priority\n // even if the tab is not marked as exact\n exact: this.exact === true || isSameRouteCheck === true\n })\n }\n\n if (\n redirected === true &&\n checkFunction(current, {\n path: route.redirectedFrom,\n ...location\n }) === true\n ) {\n this.__activateRoute(params)\n }\n\n this.isActive === true && this.__activateRoute()\n }\n },\n\n mounted () {\n this.__recalculateScroll()\n this.$router !== void 0 && this.__checkActivation()\n },\n\n beforeDestroy () {\n this.__recalculateScroll()\n this.__activateRoute({ remove: true, name: this.name })\n },\n\n render (h) {\n return this.__renderTab(h, this.linkTag)\n }\n})\n","import Vue from 'vue'\n\nimport QBtn from '../btn/QBtn.js'\nimport TouchPan from '../../directives/TouchPan.js'\n\nimport { slot } from '../../utils/slot.js'\nimport { formatDate, __splitDate } from '../../utils/date.js'\nimport { position } from '../../utils/event.js'\nimport { pad } from '../../utils/format.js'\nimport cache from '../../utils/cache.js'\nimport DateTimeMixin from '../../mixins/datetime.js'\n\nexport default Vue.extend({\n name: 'QTime',\n\n mixins: [ DateTimeMixin ],\n\n directives: {\n TouchPan\n },\n\n props: {\n mask: {\n default: null\n },\n\n format24h: {\n type: Boolean,\n default: null\n },\n\n defaultDate: {\n type: String,\n validator: v => /^-?[\\d]+\\/[0-1]\\d\\/[0-3]\\d$/.test(v)\n },\n\n options: Function,\n hourOptions: Array,\n minuteOptions: Array,\n secondOptions: Array,\n\n withSeconds: Boolean,\n nowBtn: Boolean\n },\n\n data () {\n const model = __splitDate(\n this.value,\n this.__getMask(),\n this.__getLocale(),\n this.calendar,\n this.__getDefaultDateModel()\n )\n\n let view = 'Hour'\n\n if (model.hour !== null) {\n if (model.minute === null) {\n view = 'Minute'\n }\n else if (this.withSeconds === true && model.second === null) {\n view = 'Second'\n }\n }\n\n return {\n view,\n isAM: model.hour === null || model.hour < 12,\n innerModel: model\n }\n },\n\n watch: {\n value (v) {\n const model = __splitDate(\n v,\n this.computedMask,\n this.computedLocale,\n this.calendar,\n this.defaultDateModel\n )\n\n if (\n model.dateHash !== this.innerModel.dateHash ||\n model.timeHash !== this.innerModel.timeHash\n ) {\n this.innerModel = model\n\n if (model.hour === null) {\n this.view = 'Hour'\n }\n else {\n this.isAM = model.hour < 12\n }\n }\n },\n\n computedMask () {\n this.$nextTick(() => {\n this.__updateValue()\n })\n },\n\n computedLocale () {\n this.$nextTick(() => {\n this.__updateValue()\n })\n }\n },\n\n computed: {\n classes () {\n return `q-time q-time--${this.landscape === true ? 'landscape' : 'portrait'}` +\n (this.isDark === true ? ' q-time--dark q-dark' : '') +\n (this.disable === true ? ' disabled' : (this.readonly === true ? ' q-time--readonly' : '')) +\n (this.bordered === true ? ` q-time--bordered` : '') +\n (this.square === true ? ` q-time--square no-border-radius` : '') +\n (this.flat === true ? ` q-time--flat no-shadow` : '')\n },\n\n stringModel () {\n const time = this.innerModel\n\n return {\n hour: time.hour === null\n ? '--'\n : (\n this.computedFormat24h === true\n ? pad(time.hour)\n : String(\n this.isAM === true\n ? (time.hour === 0 ? 12 : time.hour)\n : (time.hour > 12 ? time.hour - 12 : time.hour)\n )\n ),\n minute: time.minute === null\n ? '--'\n : pad(time.minute),\n second: time.second === null\n ? '--'\n : pad(time.second)\n }\n },\n\n defaultDateModel () {\n return this.__getDefaultDateModel()\n },\n\n computedFormat24h () {\n return this.format24h !== null\n ? this.format24h\n : this.$q.lang.date.format24h\n },\n\n pointerStyle () {\n const\n forHour = this.view === 'Hour',\n divider = forHour === true ? 12 : 60,\n amount = this.innerModel[this.view.toLowerCase()],\n degrees = Math.round(amount * (360 / divider)) - 180\n\n let transform = `rotate(${degrees}deg) translateX(-50%)`\n\n if (\n forHour === true &&\n this.computedFormat24h === true &&\n this.innerModel.hour >= 12\n ) {\n transform += ' scale(.7)'\n }\n\n return { transform }\n },\n\n minLink () {\n return this.innerModel.hour !== null\n },\n\n secLink () {\n return this.minLink === true && this.innerModel.minute !== null\n },\n\n hourInSelection () {\n return this.hourOptions !== void 0\n ? val => this.hourOptions.includes(val)\n : (\n this.options !== void 0\n ? val => this.options(val, null, null)\n : void 0\n )\n },\n\n minuteInSelection () {\n return this.minuteOptions !== void 0\n ? val => this.minuteOptions.includes(val)\n : (\n this.options !== void 0\n ? val => this.options(this.innerModel.hour, val, null)\n : void 0\n )\n },\n\n secondInSelection () {\n return this.secondOptions !== void 0\n ? val => this.secondOptions.includes(val)\n : (\n this.options !== void 0\n ? val => this.options(this.innerModel.hour, this.innerModel.minute, val)\n : void 0\n )\n },\n\n validHours () {\n if (this.hourInSelection !== void 0) {\n const am = this.__getValidValues(0, 11, this.hourInSelection)\n const pm = this.__getValidValues(12, 11, this.hourInSelection)\n return { am, pm, values: am.values.concat(pm.values) }\n }\n },\n\n validMinutes () {\n if (this.minuteInSelection !== void 0) {\n return this.__getValidValues(0, 59, this.minuteInSelection)\n }\n },\n\n validSeconds () {\n if (this.secondInSelection !== void 0) {\n return this.__getValidValues(0, 59, this.secondInSelection)\n }\n },\n\n viewValidOptions () {\n switch (this.view) {\n case 'Hour':\n return this.validHours\n case 'Minute':\n return this.validMinutes\n case 'Second':\n return this.validSeconds\n }\n },\n\n positions () {\n let start, end, offset = 0, step = 1\n const values = this.viewValidOptions !== void 0\n ? this.viewValidOptions.values\n : void 0\n\n if (this.view === 'Hour') {\n if (this.computedFormat24h === true) {\n start = 0\n end = 23\n }\n else {\n start = 0\n end = 11\n\n if (this.isAM === false) {\n offset = 12\n }\n }\n }\n else {\n start = 0\n end = 55\n step = 5\n }\n\n const pos = []\n\n for (let val = start, index = start; val <= end; val += step, index++) {\n const\n actualVal = val + offset,\n disable = values !== void 0 && values.includes(actualVal) === false,\n label = this.view === 'Hour' && val === 0\n ? (this.computedFormat24h === true ? '00' : '12')\n : val\n\n pos.push({ val: actualVal, index, disable, label })\n }\n\n return pos\n }\n },\n\n methods: {\n setNow () {\n const date = {\n ...this.__getCurrentDate(),\n ...this.__getCurrentTime()\n }\n\n this.__updateValue(date)\n Object.assign(this.innerModel, date) // reset any pending changes to innerModel\n\n this.view = 'Hour'\n },\n\n __getValidValues (start, count, testFn) {\n const values = Array.apply(null, { length: count + 1 })\n .map((_, index) => {\n const i = index + start\n return {\n index: i,\n val: testFn(i) === true // force boolean\n }\n })\n .filter(v => v.val === true)\n .map(v => v.index)\n\n return {\n min: values[0],\n max: values[values.length - 1],\n values,\n threshold: count + 1\n }\n },\n\n __getWheelDist (a, b, threshold) {\n const diff = Math.abs(a - b)\n return Math.min(diff, threshold - diff)\n },\n\n __getNormalizedClockValue (val, { min, max, values, threshold }) {\n if (val === min) {\n return min\n }\n\n if (val < min || val > max) {\n return this.__getWheelDist(val, min, threshold) <= this.__getWheelDist(val, max, threshold)\n ? min\n : max\n }\n\n const\n index = values.findIndex(v => val <= v),\n before = values[index - 1],\n after = values[index]\n\n return val - before <= after - val\n ? before\n : after\n },\n\n __getMask () {\n return this.calendar !== 'persian' && this.mask !== null\n ? this.mask\n : `HH:mm${this.withSeconds === true ? ':ss' : ''}`\n },\n\n __getDefaultDateModel () {\n if (typeof this.defaultDate !== 'string') {\n const date = this.__getCurrentDate(true)\n date.dateHash = this.__getDayHash(date)\n return date\n }\n\n return __splitDate(this.defaultDate, 'YYYY/MM/DD', void 0, this.calendar)\n },\n\n __click (evt) {\n if (this.__shouldAbortInteraction() !== true) {\n // __activate() has already updated the offset\n // (on desktop only, through mousedown event)\n if (this.$q.platform.is.desktop !== true) {\n this.__updateClock(evt, this.__getClockRect())\n }\n\n this.__goToNextView()\n }\n },\n\n __activate (evt) {\n if (this.__shouldAbortInteraction() !== true) {\n this.__updateClock(evt, this.__getClockRect())\n }\n },\n\n __shouldAbortInteraction () {\n return this._isBeingDestroyed === true ||\n this._isDestroyed === true ||\n // if we have limited options, can we actually set any?\n (\n this.viewValidOptions !== void 0 &&\n (\n this.viewValidOptions.values.length === 0 ||\n (\n this.view === 'Hour' && this.computedFormat24h !== true &&\n this.validHours[this.isAM === true ? 'am' : 'pm'].values.length === 0\n )\n )\n )\n },\n\n __getClockRect () {\n const\n clock = this.$refs.clock,\n { top, left, width } = clock.getBoundingClientRect(),\n dist = width / 2\n\n return {\n top: top + dist,\n left: left + dist,\n dist: dist * 0.7\n }\n },\n\n __goToNextView () {\n if (this.view === 'Hour') {\n this.view = 'Minute'\n }\n else if (this.withSeconds && this.view === 'Minute') {\n this.view = 'Second'\n }\n },\n\n __drag (event) {\n if (this.__shouldAbortInteraction() === true) {\n return\n }\n\n if (event.isFirst === true) {\n this.draggingClockRect = this.__getClockRect()\n this.dragCache = this.__updateClock(event.evt, this.draggingClockRect)\n return\n }\n\n this.dragCache = this.__updateClock(event.evt, this.draggingClockRect, this.dragCache)\n\n if (event.isFinal === true) {\n this.draggingClockRect = false\n this.dragCache = null\n this.__goToNextView()\n }\n },\n\n __updateClock (evt, clockRect, cacheVal) {\n const\n pos = position(evt),\n height = Math.abs(pos.top - clockRect.top),\n distance = Math.sqrt(\n Math.pow(Math.abs(pos.top - clockRect.top), 2) +\n Math.pow(Math.abs(pos.left - clockRect.left), 2)\n )\n\n let\n val,\n angle = Math.asin(height / distance) * (180 / Math.PI)\n\n if (pos.top < clockRect.top) {\n angle = clockRect.left < pos.left ? 90 - angle : 270 + angle\n }\n else {\n angle = clockRect.left < pos.left ? angle + 90 : 270 - angle\n }\n\n if (this.view === 'Hour') {\n val = angle / 30\n\n if (this.validHours !== void 0) {\n const am = this.computedFormat24h !== true\n ? this.isAM === true\n : (\n this.validHours.am.values.length > 0 && this.validHours.pm.values.length > 0\n ? distance >= clockRect.dist\n : this.validHours.am.values.length > 0\n )\n\n val = this.__getNormalizedClockValue(\n val + (am === true ? 0 : 12),\n this.validHours[am === true ? 'am' : 'pm']\n )\n }\n else {\n val = Math.round(val)\n\n if (this.computedFormat24h === true) {\n if (distance < clockRect.dist) {\n if (val < 12) {\n val += 12\n }\n }\n else if (val === 12) {\n val = 0\n }\n }\n else if (this.isAM === true && val === 12) {\n val = 0\n }\n else if (this.isAM === false && val !== 12) {\n val += 12\n }\n }\n\n if (this.computedFormat24h === true) {\n this.isAM = val < 12\n }\n }\n else {\n val = Math.round(angle / 6) % 60\n\n if (this.view === 'Minute' && this.validMinutes !== void 0) {\n val = this.__getNormalizedClockValue(val, this.validMinutes)\n }\n else if (this.view === 'Second' && this.validSeconds !== void 0) {\n val = this.__getNormalizedClockValue(val, this.validSeconds)\n }\n }\n\n if (cacheVal !== val) {\n this[`__set${this.view}`](val)\n }\n\n return val\n },\n\n __onKeyupHour (e) {\n if (e.keyCode === 13) { // ENTER\n this.view = 'Hour'\n }\n else if ([ 37, 39 ].includes(e.keyCode)) {\n const payload = e.keyCode === 37 ? -1 : 1\n\n if (this.validHours !== void 0) {\n const values = this.computedFormat24h === true\n ? this.validHours.values\n : this.validHours[this.isAM === true ? 'am' : 'pm'].values\n\n if (values.length === 0) { return }\n\n if (this.innerModel.hour === null) {\n this.__setHour(values[0])\n }\n else {\n const index = (\n values.length +\n values.indexOf(this.innerModel.hour) +\n payload\n ) % values.length\n\n this.__setHour(values[index])\n }\n }\n else {\n const\n wrap = this.computedFormat24h === true ? 24 : 12,\n offset = this.computedFormat24h !== true && this.isAM === false ? 12 : 0,\n val = this.innerModel.hour === null ? -payload : this.innerModel.hour\n\n this.__setHour(offset + (24 + val + payload) % wrap)\n }\n }\n },\n\n __onKeyupMinute (e) {\n if (e.keyCode === 13) { // ENTER\n this.view = 'Minute'\n }\n else if ([ 37, 39 ].includes(e.keyCode)) {\n const payload = e.keyCode === 37 ? -1 : 1\n\n if (this.validMinutes !== void 0) {\n const values = this.validMinutes.values\n\n if (values.length === 0) { return }\n\n if (this.innerModel.minute === null) {\n this.__setMinute(values[0])\n }\n else {\n const index = (\n values.length +\n values.indexOf(this.innerModel.minute) +\n payload\n ) % values.length\n\n this.__setMinute(values[index])\n }\n }\n else {\n const val = this.innerModel.minute === null ? -payload : this.innerModel.minute\n this.__setMinute((60 + val + payload) % 60)\n }\n }\n },\n\n __onKeyupSecond (e) {\n if (e.keyCode === 13) { // ENTER\n this.view = 'Second'\n }\n else if ([ 37, 39 ].includes(e.keyCode)) {\n const payload = e.keyCode === 37 ? -1 : 1\n\n if (this.validSeconds !== void 0) {\n const values = this.validSeconds.values\n\n if (values.length === 0) { return }\n\n if (this.innerModel.seconds === null) {\n this.__setSecond(values[0])\n }\n else {\n const index = (\n values.length +\n values.indexOf(this.innerModel.second) +\n payload\n ) % values.length\n\n this.__setSecond(values[index])\n }\n }\n else {\n const val = this.innerModel.second === null ? -payload : this.innerModel.second\n this.__setSecond((60 + val + payload) % 60)\n }\n }\n },\n\n __getHeader (h) {\n const label = [\n h('div', {\n staticClass: 'q-time__link',\n class: this.view === 'Hour' ? 'q-time__link--active' : 'cursor-pointer',\n attrs: { tabindex: this.computedTabindex },\n on: cache(this, 'vH', {\n click: () => { this.view = 'Hour' },\n keyup: this.__onKeyupHour\n })\n }, [ this.stringModel.hour ]),\n\n h('div', [ ':' ]),\n\n h(\n 'div',\n this.minLink === true\n ? {\n staticClass: 'q-time__link',\n class: this.view === 'Minute' ? 'q-time__link--active' : 'cursor-pointer',\n attrs: { tabindex: this.computedTabindex },\n on: cache(this, 'vM', {\n click: () => { this.view = 'Minute' },\n keyup: this.__onKeyupMinute\n })\n }\n : { staticClass: 'q-time__link' },\n [ this.stringModel.minute ]\n )\n ]\n\n if (this.withSeconds === true) {\n label.push(\n h('div', [ ':' ]),\n\n h(\n 'div',\n this.secLink === true\n ? {\n staticClass: 'q-time__link',\n class: this.view === 'Second' ? 'q-time__link--active' : 'cursor-pointer',\n attrs: { tabindex: this.computedTabindex },\n on: cache(this, 'vS', {\n click: () => { this.view = 'Second' },\n keyup: this.__onKeyupSecond\n })\n }\n : { staticClass: 'q-time__link' },\n [ this.stringModel.second ]\n )\n )\n }\n\n return h('div', {\n staticClass: 'q-time__header flex flex-center no-wrap',\n class: this.headerClass\n }, [\n h('div', {\n staticClass: 'q-time__header-label row items-center no-wrap',\n attrs: { dir: 'ltr' }\n }, label),\n\n this.computedFormat24h === false ? h('div', {\n staticClass: 'q-time__header-ampm column items-between no-wrap'\n }, [\n h('div', {\n staticClass: 'q-time__link',\n class: this.isAM === true ? 'q-time__link--active' : 'cursor-pointer',\n attrs: { tabindex: this.computedTabindex },\n on: cache(this, 'AM', {\n click: this.__setAm,\n keyup: e => { e.keyCode === 13 && this.__setAm() }\n })\n }, [ 'AM' ]),\n\n h('div', {\n staticClass: 'q-time__link',\n class: this.isAM !== true ? 'q-time__link--active' : 'cursor-pointer',\n attrs: { tabindex: this.computedTabindex },\n on: cache(this, 'PM', {\n click: this.__setPm,\n keyup: e => { e.keyCode === 13 && this.__setPm() }\n })\n }, [ 'PM' ])\n ]) : null\n ])\n },\n\n __getClock (h) {\n const\n view = this.view.toLowerCase(),\n current = this.innerModel[view]\n\n return h('div', {\n staticClass: 'q-time__content col relative-position'\n }, [\n h('transition', {\n props: { name: 'q-transition--scale' }\n }, [\n h('div', {\n key: 'clock' + this.view,\n staticClass: 'q-time__container-parent absolute-full'\n }, [\n h('div', {\n ref: 'clock',\n staticClass: 'q-time__container-child fit overflow-hidden'\n }, [\n h('div', {\n staticClass: 'q-time__clock cursor-pointer non-selectable',\n on: cache(this, 'click', {\n click: this.__click,\n mousedown: this.__activate\n }),\n directives: cache(this, 'touch', [{\n name: 'touch-pan',\n value: this.__drag,\n modifiers: {\n stop: true,\n prevent: true,\n mouse: true\n }\n }])\n }, [\n h('div', { staticClass: 'q-time__clock-circle fit' }, [\n h('div', {\n staticClass: 'q-time__clock-pointer',\n style: this.pointerStyle,\n class: this.innerModel[view] === null ? 'hidden' : (this.color !== void 0 ? `text-${this.color}` : '')\n }),\n\n this.positions.map(pos => h('div', {\n staticClass: `q-time__clock-position row flex-center q-time__clock-pos-${pos.index}`,\n class: pos.val === current\n ? this.headerClass.concat(' q-time__clock-position--active')\n : (pos.disable === true ? 'q-time__clock-position--disable' : null)\n }, [ h('span', [ pos.label ]) ]))\n ])\n ])\n ])\n ])\n ]),\n\n this.nowBtn === true ? h(QBtn, {\n staticClass: 'q-time__now-button absolute',\n props: {\n icon: this.$q.iconSet.datetime.now,\n unelevated: true,\n size: 'sm',\n round: true,\n color: this.color,\n textColor: this.textColor,\n tabindex: this.computedTabindex\n },\n on: cache(this, 'now', {\n click: this.setNow\n })\n }) : null\n ])\n },\n\n __setHour (hour) {\n if (this.innerModel.hour !== hour) {\n this.innerModel.hour = hour\n this.innerModel.minute = null\n this.innerModel.second = null\n }\n },\n\n __setMinute (minute) {\n if (this.innerModel.minute !== minute) {\n this.innerModel.minute = minute\n this.innerModel.second = null\n this.withSeconds !== true && this.__updateValue({ minute })\n }\n },\n\n __setSecond (second) {\n this.innerModel.second !== second && this.__updateValue({ second })\n },\n\n __setAm () {\n if (this.isAM === false) {\n this.isAM = true\n\n if (this.innerModel.hour !== null) {\n this.innerModel.hour -= 12\n this.__verifyAndUpdate()\n }\n }\n },\n\n __setPm () {\n if (this.isAM === true) {\n this.isAM = false\n\n if (this.innerModel.hour !== null) {\n this.innerModel.hour += 12\n this.__verifyAndUpdate()\n }\n }\n },\n\n __verifyAndUpdate () {\n if (this.hourInSelection !== void 0 && this.hourInSelection(this.innerModel.hour) !== true) {\n this.innerModel = __splitDate()\n this.view = 'Hour'\n return\n }\n\n if (this.minuteInSelection !== void 0 && this.minuteInSelection(this.innerModel.minute) !== true) {\n this.innerModel.minute = null\n this.innerModel.second = null\n this.view = 'Minute'\n return\n }\n\n if (this.withSeconds === true && this.secondInSelection !== void 0 && this.secondInSelection(this.innerModel.second) !== true) {\n this.innerModel.second = null\n this.view = 'Second'\n return\n }\n\n if (this.innerModel.hour === null || this.innerModel.minute === null || (this.withSeconds === true && this.innerModel.second === null)) {\n return\n }\n\n this.__updateValue()\n },\n\n __updateValue (obj) {\n const date = Object.assign({ ...this.innerModel }, obj)\n\n const val = this.calendar === 'persian'\n ? pad(date.hour) + ':' +\n pad(date.minute) +\n (this.withSeconds === true ? ':' + pad(date.second) : '')\n : formatDate(\n new Date(\n date.year,\n date.month === null ? null : date.month - 1,\n date.day,\n date.hour,\n date.minute,\n date.second,\n date.millisecond\n ),\n this.computedMask,\n this.computedLocale,\n date.year,\n date.timezoneOffset\n )\n\n date.changed = val !== this.value\n this.$emit('input', val, date)\n }\n },\n\n render (h) {\n const child = [\n this.__getClock(h)\n ]\n\n const def = slot(this, 'default')\n def !== void 0 && child.push(\n h('div', { staticClass: 'q-time__actions' }, def)\n )\n\n if (this.name !== void 0 && this.disable !== true) {\n this.__injectFormInput(child, 'push')\n }\n\n return h('div', {\n class: this.classes,\n on: { ...this.qListeners },\n attrs: { tabindex: -1 }\n }, [\n this.__getHeader(h),\n h('div', { staticClass: 'q-time__main col overflow-auto' }, child)\n ])\n }\n})\n","import Vue from 'vue'\n\nimport DarkMixin from '../../mixins/dark.js'\nimport ListenersMixin from '../../mixins/listeners.js'\n\nimport { slot } from '../../utils/slot.js'\n\nexport default Vue.extend({\n name: 'QTimeline',\n\n mixins: [ DarkMixin, ListenersMixin ],\n\n provide () {\n return {\n __timeline: this\n }\n },\n\n props: {\n color: {\n type: String,\n default: 'primary'\n },\n side: {\n type: String,\n default: 'right',\n validator: v => ['left', 'right'].includes(v)\n },\n layout: {\n type: String,\n default: 'dense',\n validator: v => ['dense', 'comfortable', 'loose'].includes(v)\n }\n },\n\n computed: {\n classes () {\n return `q-timeline--${this.layout} q-timeline--${this.layout}--${this.side}` +\n (this.isDark === true ? ' q-timeline--dark' : '')\n }\n },\n\n render (h) {\n return h('ul', {\n staticClass: 'q-timeline',\n class: this.classes,\n on: { ...this.qListeners }\n }, slot(this, 'default'))\n }\n})\n","import Vue from 'vue'\n\nimport QIcon from '../icon/QIcon.js'\n\nimport ListenersMixin from '../../mixins/listeners.js'\n\nimport { slot, uniqueSlot } from '../../utils/slot.js'\n\nexport default Vue.extend({\n name: 'QTimelineEntry',\n\n inject: {\n __timeline: {\n default () {\n console.error('QTimelineEntry needs to be child of QTimeline')\n }\n }\n },\n\n mixins: [ ListenersMixin ],\n\n props: {\n heading: Boolean,\n tag: {\n type: String,\n default: 'h3'\n },\n side: {\n type: String,\n default: 'right',\n validator: v => ['left', 'right'].includes(v)\n },\n\n icon: String,\n avatar: String,\n\n color: String,\n\n title: String,\n subtitle: String,\n body: String\n },\n\n computed: {\n colorClass () {\n return `text-${this.color || this.__timeline.color}`\n },\n\n classes () {\n return `q-timeline__entry--${this.side}` +\n (this.icon !== void 0 || this.avatar !== void 0 ? ' q-timeline__entry--icon' : '')\n },\n\n reverse () {\n return this.__timeline.layout === 'comfortable' && this.__timeline.side === 'left'\n }\n },\n\n render (h) {\n const child = uniqueSlot(this, 'default', [])\n\n if (this.body !== void 0) {\n child.unshift(this.body)\n }\n\n if (this.heading === true) {\n const content = [\n h('div'),\n h('div'),\n h(\n this.tag,\n { staticClass: 'q-timeline__heading-title' },\n child\n )\n ]\n\n return h('div', {\n staticClass: 'q-timeline__heading',\n on: { ...this.qListeners }\n }, this.reverse === true ? content.reverse() : content)\n }\n\n let dot\n\n if (this.icon !== void 0) {\n dot = [\n h(QIcon, {\n staticClass: 'row items-center justify-center',\n props: { name: this.icon }\n })\n ]\n }\n else if (this.avatar !== void 0) {\n dot = [\n h('img', {\n staticClass: 'q-timeline__dot-img',\n domProps: { src: this.avatar }\n })\n ]\n }\n\n const content = [\n h('div', { staticClass: 'q-timeline__subtitle' }, [\n h('span', slot(this, 'subtitle', [ this.subtitle ]))\n ]),\n\n h('div', {\n staticClass: 'q-timeline__dot',\n class: this.colorClass\n }, dot),\n\n h('div', { staticClass: 'q-timeline__content' }, [\n h('h6', { staticClass: 'q-timeline__title' }, slot(this, 'title', [ this.title ]))\n ].concat(child))\n ]\n\n return h('li', {\n staticClass: 'q-timeline__entry',\n class: this.classes,\n on: { ...this.qListeners }\n }, this.reverse === true ? content.reverse() : content)\n }\n})\n","import Vue from 'vue'\n\nimport QIcon from '../icon/QIcon.js'\nimport QCheckbox from '../checkbox/QCheckbox.js'\nimport QSlideTransition from '../slide-transition/QSlideTransition.js'\nimport QSpinner from '../spinner/QSpinner.js'\nimport DarkMixin from '../../mixins/dark.js'\n\nimport { stopAndPrevent } from '../../utils/event.js'\nimport { shouldIgnoreKey } from '../../utils/key-composition.js'\nimport cache from '../../utils/cache.js'\n\nconst tickStrategyOptions = [ 'none', 'strict', 'leaf', 'leaf-filtered' ]\n\nexport default Vue.extend({\n name: 'QTree',\n\n mixins: [ DarkMixin ],\n\n props: {\n nodes: {\n type: Array,\n required: true\n },\n nodeKey: {\n type: String,\n required: true\n },\n labelKey: {\n type: String,\n default: 'label'\n },\n childrenKey: {\n type: String,\n default: 'children'\n },\n\n dense: Boolean,\n\n color: String,\n controlColor: String,\n textColor: String,\n selectedColor: String,\n\n icon: String,\n\n tickStrategy: {\n type: String,\n default: 'none',\n validator: v => tickStrategyOptions.includes(v)\n },\n ticked: Array, // sync\n expanded: Array, // sync\n selected: {}, // sync\n\n noSelectionUnset: Boolean,\n\n defaultExpandAll: Boolean,\n accordion: Boolean,\n\n filter: String,\n filterMethod: {\n type: Function,\n default (node, filter) {\n const filt = filter.toLowerCase()\n return node[this.labelKey] &&\n node[this.labelKey].toLowerCase().indexOf(filt) > -1\n }\n },\n\n duration: Number,\n noConnectors: Boolean,\n\n noNodesLabel: String,\n noResultsLabel: String\n },\n\n computed: {\n classes () {\n return `q-tree q-tree--${this.dense === true ? 'dense' : 'standard'}` +\n (this.noConnectors === true ? ' q-tree--no-connectors' : '') +\n (this.isDark === true ? ` q-tree--dark` : '') +\n (this.color !== void 0 ? ` text-${this.color}` : '')\n },\n\n hasSelection () {\n return this.selected !== void 0\n },\n\n computedIcon () {\n return this.icon || this.$q.iconSet.tree.icon\n },\n\n computedControlColor () {\n return this.controlColor || this.color\n },\n\n textColorClass () {\n if (this.textColor !== void 0) {\n return `text-${this.textColor}`\n }\n },\n\n selectedColorClass () {\n const color = this.selectedColor || this.color\n if (color) {\n return `text-${color}`\n }\n },\n\n meta () {\n const meta = {}\n\n const travel = (node, parent) => {\n const tickStrategy = node.tickStrategy || (parent ? parent.tickStrategy : this.tickStrategy)\n const\n key = node[this.nodeKey],\n isParent = node[this.childrenKey] && node[this.childrenKey].length > 0,\n isLeaf = isParent !== true,\n selectable = node.disabled !== true && this.hasSelection === true && node.selectable !== false,\n expandable = node.disabled !== true && node.expandable !== false,\n hasTicking = tickStrategy !== 'none',\n strictTicking = tickStrategy === 'strict',\n leafFilteredTicking = tickStrategy === 'leaf-filtered',\n leafTicking = tickStrategy === 'leaf' || tickStrategy === 'leaf-filtered'\n\n let tickable = node.disabled !== true && node.tickable !== false\n if (leafTicking === true && tickable === true && parent && parent.tickable !== true) {\n tickable = false\n }\n\n let lazy = node.lazy\n if (\n lazy === true &&\n this.lazy[key] !== void 0 &&\n Array.isArray(node[this.childrenKey]) === true\n ) {\n lazy = this.lazy[key]\n }\n\n const m = {\n key,\n parent,\n isParent,\n isLeaf,\n lazy,\n disabled: node.disabled,\n link: node.disabled !== true && (selectable === true || (expandable === true && (isParent === true || lazy === true))),\n children: [],\n matchesFilter: this.filter ? this.filterMethod(node, this.filter) : true,\n\n selected: key === this.selected && selectable === true,\n selectable,\n expanded: isParent === true ? this.innerExpanded.includes(key) : false,\n expandable,\n noTick: node.noTick === true || (strictTicking !== true && lazy && lazy !== 'loaded'),\n tickable,\n tickStrategy,\n hasTicking,\n strictTicking,\n leafFilteredTicking,\n leafTicking,\n ticked: strictTicking === true\n ? this.innerTicked.includes(key)\n : (isLeaf === true ? this.innerTicked.includes(key) : false)\n }\n\n meta[key] = m\n\n if (isParent === true) {\n m.children = node[this.childrenKey].map(n => travel(n, m))\n\n if (this.filter) {\n if (m.matchesFilter !== true) {\n m.matchesFilter = m.children.some(n => n.matchesFilter)\n }\n else if (\n m.noTick !== true &&\n m.disabled !== true &&\n m.tickable === true &&\n leafFilteredTicking === true &&\n m.children.every(n => n.matchesFilter !== true || n.noTick === true || n.tickable !== true) === true\n ) {\n m.tickable = false\n }\n }\n\n if (m.matchesFilter === true) {\n if (m.noTick !== true && strictTicking !== true && m.children.every(n => n.noTick) === true) {\n m.noTick = true\n }\n\n if (leafTicking) {\n m.ticked = false\n m.indeterminate = m.children.some(node => node.indeterminate === true)\n m.tickable = m.tickable === true && m.children.some(node => node.tickable)\n\n if (m.indeterminate !== true) {\n const sel = m.children\n .reduce((acc, meta) => meta.ticked === true ? acc + 1 : acc, 0)\n\n if (sel === m.children.length) {\n m.ticked = true\n }\n else if (sel > 0) {\n m.indeterminate = true\n }\n }\n\n if (m.indeterminate === true) {\n m.indeterminateNextState = m.children\n .every(meta => meta.tickable !== true || meta.ticked !== true)\n }\n }\n }\n }\n\n return m\n }\n\n this.nodes.forEach(node => travel(node, null))\n return meta\n }\n },\n\n data () {\n return {\n lazy: {},\n innerTicked: this.ticked || [],\n innerExpanded: this.expanded || []\n }\n },\n\n watch: {\n ticked (val) {\n this.innerTicked = val\n },\n\n expanded (val) {\n this.innerExpanded = val\n }\n },\n\n methods: {\n getNodeByKey (key) {\n const reduce = [].reduce\n\n const find = (result, node) => {\n if (result || !node) {\n return result\n }\n if (Array.isArray(node) === true) {\n return reduce.call(Object(node), find, result)\n }\n if (node[this.nodeKey] === key) {\n return node\n }\n if (node[this.childrenKey]) {\n return find(null, node[this.childrenKey])\n }\n }\n\n return find(null, this.nodes)\n },\n\n getTickedNodes () {\n return this.innerTicked.map(key => this.getNodeByKey(key))\n },\n\n getExpandedNodes () {\n return this.innerExpanded.map(key => this.getNodeByKey(key))\n },\n\n isExpanded (key) {\n return key && this.meta[key]\n ? this.meta[key].expanded\n : false\n },\n\n collapseAll () {\n if (this.expanded !== void 0) {\n this.$emit('update:expanded', [])\n }\n else {\n this.innerExpanded = []\n }\n },\n\n expandAll () {\n const\n expanded = this.innerExpanded,\n travel = node => {\n if (node[this.childrenKey] && node[this.childrenKey].length > 0) {\n if (node.expandable !== false && node.disabled !== true) {\n expanded.push(node[this.nodeKey])\n node[this.childrenKey].forEach(travel)\n }\n }\n }\n\n this.nodes.forEach(travel)\n\n if (this.expanded !== void 0) {\n this.$emit('update:expanded', expanded)\n }\n else {\n this.innerExpanded = expanded\n }\n },\n\n setExpanded (key, state, node = this.getNodeByKey(key), meta = this.meta[key]) {\n if (meta.lazy && meta.lazy !== 'loaded') {\n if (meta.lazy === 'loading') {\n return\n }\n\n this.$set(this.lazy, key, 'loading')\n if (Array.isArray(node[this.childrenKey]) !== true) {\n this.$set(node, this.childrenKey, [])\n }\n this.$emit('lazy-load', {\n node,\n key,\n done: children => {\n this.lazy[key] = 'loaded'\n this.$set(node, this.childrenKey, Array.isArray(children) === true ? children : [])\n this.$nextTick(() => {\n const m = this.meta[key]\n if (m && m.isParent === true) {\n this.__setExpanded(key, true)\n }\n })\n },\n fail: () => {\n this.$delete(this.lazy, key)\n if (node[this.childrenKey].length === 0) {\n this.$delete(node, this.childrenKey)\n }\n }\n })\n }\n else if (meta.isParent === true && meta.expandable === true) {\n this.__setExpanded(key, state)\n }\n },\n\n __setExpanded (key, state) {\n let target = this.innerExpanded\n const emit = this.expanded !== void 0\n\n if (emit === true) {\n target = target.slice()\n }\n\n if (state) {\n if (this.accordion) {\n if (this.meta[key]) {\n const collapse = []\n if (this.meta[key].parent) {\n this.meta[key].parent.children.forEach(m => {\n if (m.key !== key && m.expandable === true) {\n collapse.push(m.key)\n }\n })\n }\n else {\n this.nodes.forEach(node => {\n const k = node[this.nodeKey]\n if (k !== key) {\n collapse.push(k)\n }\n })\n }\n if (collapse.length > 0) {\n target = target.filter(k => collapse.includes(k) === false)\n }\n }\n }\n\n target = target.concat([ key ])\n .filter((key, index, self) => self.indexOf(key) === index)\n }\n else {\n target = target.filter(k => k !== key)\n }\n\n if (emit === true) {\n this.$emit(`update:expanded`, target)\n }\n else {\n this.innerExpanded = target\n }\n },\n\n isTicked (key) {\n return key && this.meta[key]\n ? this.meta[key].ticked\n : false\n },\n\n setTicked (keys, state) {\n let target = this.innerTicked\n const emit = this.ticked !== void 0\n\n if (emit === true) {\n target = target.slice()\n }\n\n if (state) {\n target = target.concat(keys)\n .filter((key, index, self) => self.indexOf(key) === index)\n }\n else {\n target = target.filter(k => keys.includes(k) === false)\n }\n\n if (emit === true) {\n this.$emit(`update:ticked`, target)\n }\n },\n\n __getSlotScope (node, meta, key) {\n const scope = { tree: this, node, key, color: this.color, dark: this.isDark }\n\n Object.defineProperty(scope, 'expanded', {\n get: () => { return meta.expanded },\n set: val => { val !== meta.expanded && this.setExpanded(key, val) },\n configurable: true,\n enumerable: true\n })\n Object.defineProperty(scope, 'ticked', {\n get: () => { return meta.ticked },\n set: val => { val !== meta.ticked && this.setTicked([ key ], val) },\n configurable: true,\n enumerable: true\n })\n\n return scope\n },\n\n __getChildren (h, nodes) {\n return (\n this.filter\n ? nodes.filter(n => this.meta[n[this.nodeKey]].matchesFilter)\n : nodes\n ).map(child => this.__getNode(h, child))\n },\n\n __getNodeMedia (h, node) {\n if (node.icon !== void 0) {\n return h(QIcon, {\n staticClass: `q-tree__icon q-mr-sm`,\n props: { name: node.icon, color: node.iconColor }\n })\n }\n const src = node.img || node.avatar\n if (src) {\n return h('img', {\n staticClass: `q-tree__${node.img ? 'img' : 'avatar'} q-mr-sm`,\n attrs: { src }\n })\n }\n },\n\n __getNode (h, node) {\n const\n key = node[this.nodeKey],\n meta = this.meta[key],\n header = node.header\n ? this.$scopedSlots[`header-${node.header}`] || this.$scopedSlots['default-header']\n : this.$scopedSlots['default-header']\n\n const children = meta.isParent === true\n ? this.__getChildren(h, node[this.childrenKey])\n : []\n\n const isParent = children.length > 0 || (meta.lazy && meta.lazy !== 'loaded')\n\n let body = node.body\n ? this.$scopedSlots[`body-${node.body}`] || this.$scopedSlots['default-body']\n : this.$scopedSlots['default-body']\n const slotScope = header !== void 0 || body !== void 0\n ? this.__getSlotScope(node, meta, key)\n : null\n\n if (body !== void 0) {\n body = h('div', { staticClass: 'q-tree__node-body relative-position' }, [\n h('div', { class: this.textColorClass }, [\n body(slotScope)\n ])\n ])\n }\n\n return h('div', {\n key,\n staticClass: 'q-tree__node relative-position',\n class: { 'q-tree__node--parent': isParent, 'q-tree__node--child': !isParent }\n }, [\n h('div', {\n staticClass: 'q-tree__node-header relative-position row no-wrap items-center',\n class: {\n 'q-tree__node--link q-hoverable q-focusable': meta.link,\n 'q-tree__node--selected': meta.selected,\n 'q-tree__node--disabled': meta.disabled\n },\n attrs: { tabindex: meta.link ? 0 : -1 },\n on: {\n click: (e) => {\n this.__onClick(node, meta, e)\n },\n keypress: e => {\n if (shouldIgnoreKey(e) !== true) {\n if (e.keyCode === 13) { this.__onClick(node, meta, e, true) }\n else if (e.keyCode === 32) { this.__onExpandClick(node, meta, e, true) }\n }\n }\n }\n }, [\n h('div', { staticClass: 'q-focus-helper', attrs: { tabindex: -1 }, ref: `blurTarget_${meta.key}` }),\n\n meta.lazy === 'loading'\n ? h(QSpinner, {\n staticClass: 'q-tree__spinner',\n props: { color: this.computedControlColor }\n })\n : (\n isParent === true\n ? h(QIcon, {\n staticClass: 'q-tree__arrow',\n class: { 'q-tree__arrow--rotate': meta.expanded },\n props: { name: this.computedIcon },\n on: {\n click: e => {\n this.__onExpandClick(node, meta, e)\n }\n }\n })\n : null\n ),\n\n meta.hasTicking === true && meta.noTick !== true\n ? h(QCheckbox, {\n staticClass: 'q-tree__tickbox',\n props: {\n value: meta.indeterminate === true ? null : meta.ticked,\n color: this.computedControlColor,\n dark: this.isDark,\n dense: true,\n keepColor: true,\n disable: meta.tickable !== true\n },\n on: {\n keydown: stopAndPrevent,\n input: v => {\n this.__onTickedClick(meta, v)\n }\n }\n })\n : null,\n\n h('div', {\n 'staticClass': 'q-tree__node-header-content col row no-wrap items-center',\n class: meta.selected ? this.selectedColorClass : this.textColorClass\n }, [\n header\n ? header(slotScope)\n : [\n this.__getNodeMedia(h, node),\n h('div', node[this.labelKey])\n ]\n ])\n ]),\n\n isParent === true\n ? h(QSlideTransition, {\n props: { duration: this.duration },\n on: cache(this, 'slide', {\n show: () => { this.$emit('after-show') },\n hide: () => { this.$emit('after-hide') }\n })\n }, [\n h('div', {\n staticClass: 'q-tree__node-collapsible',\n class: this.textColorClass,\n directives: [{ name: 'show', value: meta.expanded }]\n }, [\n body,\n\n h('div', {\n staticClass: 'q-tree__children',\n class: { 'q-tree__node--disabled': meta.disabled }\n }, children)\n ])\n ])\n : body\n ])\n },\n\n __blur (key) {\n const blurTarget = this.$refs[`blurTarget_${key}`]\n blurTarget !== void 0 && blurTarget.focus()\n },\n\n __onClick (node, meta, e, keyboard) {\n keyboard !== true && this.__blur(meta.key)\n\n if (this.hasSelection && meta.selectable) {\n if (this.noSelectionUnset === false) {\n this.$emit('update:selected', meta.key !== this.selected ? meta.key : null)\n }\n else if (meta.key !== this.selected) {\n this.$emit('update:selected', meta.key || null)\n }\n }\n else {\n this.__onExpandClick(node, meta, e, keyboard)\n }\n\n if (typeof node.handler === 'function') {\n node.handler(node)\n }\n },\n\n __onExpandClick (node, meta, e, keyboard) {\n if (e !== void 0) {\n stopAndPrevent(e)\n }\n keyboard !== true && this.__blur(meta.key)\n this.setExpanded(meta.key, !meta.expanded, node, meta)\n },\n\n __onTickedClick (meta, state) {\n if (meta.indeterminate === true) {\n state = meta.indeterminateNextState\n }\n if (meta.strictTicking) {\n this.setTicked([ meta.key ], state)\n }\n else if (meta.leafTicking) {\n const keys = []\n const travel = meta => {\n if (meta.isParent) {\n if (state !== true && meta.noTick !== true && meta.tickable === true) {\n keys.push(meta.key)\n }\n if (meta.leafTicking === true) {\n meta.children.forEach(travel)\n }\n }\n else if (\n meta.noTick !== true &&\n meta.tickable === true &&\n (meta.leafFilteredTicking !== true || meta.matchesFilter === true)\n ) {\n keys.push(meta.key)\n }\n }\n travel(meta)\n this.setTicked(keys, state)\n }\n }\n },\n\n render (h) {\n const children = this.__getChildren(h, this.nodes)\n\n return h(\n 'div', {\n class: this.classes\n },\n children.length === 0\n ? (\n this.filter\n ? this.noResultsLabel || this.$q.lang.tree.noResults\n : this.noNodesLabel || this.$q.lang.tree.noNodes\n )\n : children\n )\n },\n\n created () {\n this.defaultExpandAll === true && this.expandAll()\n }\n})\n","import Vue from 'vue'\n\nimport QBtn from '../btn/QBtn.js'\nimport QIcon from '../icon/QIcon.js'\nimport QSpinner from '../spinner/QSpinner.js'\nimport QCircularProgress from '../circular-progress/QCircularProgress.js'\n\nimport FileMixin from '../../mixins/file.js'\nimport DarkMixin from '../../mixins/dark.js'\n\nimport { stop } from '../../utils/event.js'\nimport { humanStorageSize } from '../../utils/format.js'\nimport cache from '../../utils/cache.js'\n\nexport default Vue.extend({\n name: 'QUploaderBase',\n\n mixins: [ DarkMixin, FileMixin ],\n\n props: {\n label: String,\n\n color: String,\n textColor: String,\n\n square: Boolean,\n flat: Boolean,\n bordered: Boolean,\n\n noThumbnails: Boolean,\n autoUpload: Boolean,\n hideUploadBtn: Boolean,\n\n disable: Boolean,\n readonly: Boolean\n },\n\n provide () {\n return {\n __qUploaderGetInput: this.__getInputControl\n }\n },\n\n data () {\n return {\n files: [],\n queuedFiles: [],\n uploadedFiles: [],\n dnd: false,\n expanded: false,\n\n uploadSize: 0,\n uploadedSize: 0\n }\n },\n\n watch: {\n isUploading (newVal, oldVal) {\n if (oldVal === false && newVal === true) {\n this.$emit('start')\n }\n else if (oldVal === true && newVal === false) {\n this.$emit('finish')\n }\n }\n },\n\n computed: {\n /*\n * When extending:\n * Required : isUploading\n * Optional: isBusy\n */\n\n canUpload () {\n return this.editable === true &&\n this.isBusy !== true &&\n this.isUploading !== true &&\n this.queuedFiles.length > 0\n },\n\n canAddFiles () {\n return (\n this.editable === true &&\n this.isUploading !== true &&\n // if single selection and no files are queued:\n (this.multiple === true || this.queuedFiles.length === 0) &&\n // if max-files is set and current number of files does not exceeds it:\n (this.maxFiles === void 0 || this.files.length < this.maxFilesNumber) &&\n // if max-total-size is set and current upload size does not exceeds it:\n (this.maxTotalSize === void 0 || this.uploadSize < this.maxTotalSizeNumber)\n )\n },\n\n uploadProgress () {\n return this.uploadSize === 0\n ? 0\n : this.uploadedSize / this.uploadSize\n },\n\n uploadProgressLabel () {\n return this.__getProgressLabel(this.uploadProgress)\n },\n\n uploadedSizeLabel () {\n return humanStorageSize(this.uploadedSize)\n },\n\n uploadSizeLabel () {\n return humanStorageSize(this.uploadSize)\n },\n\n colorClass () {\n const cls = []\n this.color !== void 0 && cls.push(`bg-${this.color}`)\n this.textColor !== void 0 && cls.push(`text-${this.textColor}`)\n return cls.join(' ')\n },\n\n editable () {\n return this.disable !== true && this.readonly !== true\n }\n },\n\n methods: {\n reset () {\n if (!this.disable) {\n this.abort()\n this.uploadedSize = 0\n this.uploadSize = 0\n this.__revokeImgURLs()\n this.files = []\n this.queuedFiles = []\n this.uploadedFiles = []\n }\n },\n\n removeUploadedFiles () {\n this.__removeFiles([ 'uploaded' ], () => {\n this.uploadedFiles = []\n })\n },\n\n removeQueuedFiles () {\n this.__removeFiles([ 'idle', 'failed' ], ({ size }) => {\n this.uploadSize -= size\n this.queuedFiles = []\n })\n },\n\n __removeFiles (statusList, cb) {\n if (this.disable === true) {\n return\n }\n\n const removed = {\n files: [],\n size: 0\n }\n\n const files = this.files.filter(f => {\n if (statusList.indexOf(f.__status) === -1) {\n return true\n }\n\n removed.size += f.size\n removed.files.push(f)\n\n f.__img !== void 0 && window.URL.revokeObjectURL(f.__img.src)\n\n return false\n })\n\n if (removed.files.length > 0) {\n this.files = files\n cb !== void 0 && cb(removed)\n this.$emit('removed', removed.files)\n }\n },\n\n removeFile (file) {\n if (this.disable) { return }\n\n if (file.__status === 'uploaded') {\n this.uploadedFiles = this.uploadedFiles.filter(f => f.__key !== file.__key)\n }\n else if (file.__status === 'uploading') {\n file.__abort()\n }\n else {\n this.uploadSize -= file.size\n }\n\n this.files = this.files.filter(f => {\n if (f.__key !== file.__key) {\n return true\n }\n\n f.__img !== void 0 && window.URL.revokeObjectURL(f.__img.src)\n\n return false\n })\n this.queuedFiles = this.queuedFiles.filter(f => f.__key !== file.__key)\n this.$emit('removed', [ file ])\n },\n\n __revokeImgURLs () {\n this.files.forEach(f => {\n f.__img !== void 0 && window.URL.revokeObjectURL(f.__img.src)\n })\n },\n\n __getFileInput () {\n return this.$refs.input ||\n this.$el.getElementsByClassName('q-uploader__input')[0]\n },\n\n __getProgressLabel (p) {\n return (p * 100).toFixed(2) + '%'\n },\n\n __updateFile (file, status, uploadedSize) {\n file.__status = status\n\n if (status === 'idle') {\n file.__uploaded = 0\n file.__progress = 0\n file.__sizeLabel = humanStorageSize(file.size)\n file.__progressLabel = '0.00%'\n return\n }\n if (status === 'failed') {\n this.$forceUpdate()\n return\n }\n\n file.__uploaded = status === 'uploaded'\n ? file.size\n : uploadedSize\n\n file.__progress = status === 'uploaded'\n ? 1\n : Math.min(0.9999, file.__uploaded / file.size)\n\n file.__progressLabel = this.__getProgressLabel(file.__progress)\n this.$forceUpdate()\n },\n\n __addFiles (e, fileList) {\n const localFiles = this.__processFiles(e, fileList, this.files, true)\n\n if (localFiles === void 0) { return }\n\n const fileInput = this.__getFileInput()\n if (fileInput !== void 0) {\n fileInput.value = ''\n }\n\n localFiles.forEach(file => {\n this.__updateFile(file, 'idle')\n this.uploadSize += file.size\n\n if (this.noThumbnails !== true && file.type.toUpperCase().startsWith('IMAGE')) {\n const img = new Image()\n img.src = window.URL.createObjectURL(file)\n file.__img = img\n }\n })\n\n this.files = this.files.concat(localFiles)\n this.queuedFiles = this.queuedFiles.concat(localFiles)\n this.$emit('added', localFiles)\n this.autoUpload === true && this.upload()\n },\n\n __getBtn (h, show, icon, fn) {\n if (show === true) {\n return h(QBtn, {\n props: {\n type: 'a',\n icon: this.$q.iconSet.uploader[icon],\n flat: true,\n dense: true\n },\n on: { click: icon === 'add' ? this.pickFiles : fn }\n }, icon === 'add' ? this.__getInputControl(h) : null)\n }\n },\n\n __getInputControl (h) {\n return [\n h('input', {\n ref: 'input',\n staticClass: 'q-uploader__input overflow-hidden absolute-full',\n attrs: {\n tabindex: -1,\n type: 'file',\n title: '', // try to remove default tooltip\n accept: this.accept,\n capture: this.capture,\n ...(this.multiple === true ? { multiple: true } : {})\n },\n on: cache(this, 'input', {\n mousedown: stop, // need to stop refocus from QBtn\n click: this.pickFiles,\n change: this.__addFiles\n })\n })\n ]\n },\n\n __getHeader (h) {\n if (this.$scopedSlots.header !== void 0) {\n return this.$scopedSlots.header(this)\n }\n\n return [\n h('div', {\n staticClass: 'q-uploader__header-content flex flex-center no-wrap q-gutter-xs'\n }, [\n this.__getBtn(h, this.queuedFiles.length > 0, 'removeQueue', this.removeQueuedFiles),\n this.__getBtn(h, this.uploadedFiles.length > 0, 'removeUploaded', this.removeUploadedFiles),\n\n this.isUploading === true\n ? h(QSpinner, { staticClass: 'q-uploader__spinner' })\n : null,\n\n h('div', { staticClass: 'col column justify-center' }, [\n this.label !== void 0\n ? h('div', { staticClass: 'q-uploader__title' }, [ this.label ])\n : null,\n\n h('div', { staticClass: 'q-uploader__subtitle' }, [\n this.uploadSizeLabel + ' / ' + this.uploadProgressLabel\n ])\n ]),\n\n this.__getBtn(h, this.canAddFiles, 'add', this.pickFiles),\n this.__getBtn(h, this.hideUploadBtn === false && this.canUpload === true, 'upload', this.upload),\n this.__getBtn(h, this.isUploading, 'clear', this.abort)\n ])\n ]\n },\n\n __getList (h) {\n if (this.$scopedSlots.list !== void 0) {\n return this.$scopedSlots.list(this)\n }\n\n return this.files.map(file => h('div', {\n key: file.__key,\n staticClass: 'q-uploader__file relative-position',\n class: {\n 'q-uploader__file--img': this.noThumbnails !== true && file.__img !== void 0,\n 'q-uploader__file--failed': file.__status === 'failed',\n 'q-uploader__file--uploaded': file.__status === 'uploaded'\n },\n style: this.noThumbnails !== true && file.__img !== void 0 ? {\n backgroundImage: 'url(\"' + file.__img.src + '\")'\n } : null\n }, [\n h('div', {\n staticClass: 'q-uploader__file-header row flex-center no-wrap'\n }, [\n file.__status === 'failed'\n ? h(QIcon, {\n staticClass: 'q-uploader__file-status',\n props: {\n name: this.$q.iconSet.type.negative,\n color: 'negative'\n }\n })\n : null,\n\n h('div', { staticClass: 'q-uploader__file-header-content col' }, [\n h('div', { staticClass: 'q-uploader__title' }, [ file.name ]),\n h('div', {\n staticClass: 'q-uploader__subtitle row items-center no-wrap'\n }, [\n file.__sizeLabel + ' / ' + file.__progressLabel\n ])\n ]),\n\n file.__status === 'uploading'\n ? h(QCircularProgress, {\n props: {\n value: file.__progress,\n min: 0,\n max: 1,\n indeterminate: file.__progress === 0\n }\n })\n : h(QBtn, {\n props: {\n round: true,\n dense: true,\n flat: true,\n icon: this.$q.iconSet.uploader[file.__status === 'uploaded' ? 'done' : 'clear']\n },\n on: {\n click: () => { this.removeFile(file) }\n }\n })\n ])\n ]))\n }\n },\n\n beforeDestroy () {\n this.isUploading === true && this.abort()\n this.files.length > 0 && this.__revokeImgURLs()\n },\n\n render (h) {\n const children = [\n h('div', {\n staticClass: 'q-uploader__header',\n class: this.colorClass\n }, this.__getHeader(h)),\n\n h('div', {\n staticClass: 'q-uploader__list scroll'\n }, this.__getList(h)),\n\n this.__getDnd(h, 'uploader')\n ]\n\n this.isBusy === true && children.push(\n h('div', {\n staticClass: 'q-uploader__overlay absolute-full flex flex-center'\n }, [ h(QSpinner) ])\n )\n\n return h('div', {\n staticClass: 'q-uploader column no-wrap',\n class: {\n 'q-uploader--dark q-dark': this.isDark,\n 'q-uploader--bordered': this.bordered,\n 'q-uploader--square no-border-radius': this.square,\n 'q-uploader--flat no-shadow': this.flat,\n 'disabled q-uploader--disable': this.disable\n },\n on: this.canAddFiles === true\n ? cache(this, 'drag', {\n dragover: this.__onDragOver,\n dragleave: this.__onDragLeave\n })\n : null\n }, children)\n }\n})\n","function getFn (prop) {\n return typeof prop === 'function'\n ? prop\n : () => prop\n}\n\nexport default {\n props: {\n url: [ Function, String ],\n method: {\n type: [ Function, String ],\n default: 'POST'\n },\n fieldName: {\n type: [ Function, String ],\n default: file => file.name\n },\n headers: [ Function, Array ],\n formFields: [ Function, Array ],\n withCredentials: [ Function, Boolean ],\n sendRaw: [ Function, Boolean ],\n\n batch: [ Function, Boolean ],\n factory: Function\n },\n\n data () {\n return {\n xhrs: [],\n promises: [],\n workingThreads: 0\n }\n },\n\n computed: {\n xhrProps () {\n return {\n url: getFn(this.url),\n method: getFn(this.method),\n headers: getFn(this.headers),\n formFields: getFn(this.formFields),\n fieldName: getFn(this.fieldName),\n withCredentials: getFn(this.withCredentials),\n sendRaw: getFn(this.sendRaw),\n batch: getFn(this.batch)\n }\n },\n\n isUploading () {\n return this.workingThreads > 0\n },\n\n isBusy () {\n return this.promises.length > 0\n }\n },\n\n methods: {\n abort () {\n this.xhrs.forEach(x => { x.abort() })\n\n if (this.promises.length > 0) {\n this.abortPromises = true\n }\n },\n\n upload () {\n if (this.canUpload === false) {\n return\n }\n\n const queue = this.queuedFiles.slice(0)\n this.queuedFiles = []\n\n if (this.xhrProps.batch(queue)) {\n this.__runFactory(queue)\n }\n else {\n queue.forEach(file => {\n this.__runFactory([ file ])\n })\n }\n },\n\n __runFactory (files) {\n this.workingThreads++\n\n if (typeof this.factory !== 'function') {\n this.__uploadFiles(files, {})\n return\n }\n\n const res = this.factory(files)\n\n if (!res) {\n this.$emit(\n 'factory-failed',\n new Error('QUploader: factory() does not return properly'),\n files\n )\n this.workingThreads--\n }\n else if (typeof res.catch === 'function' && typeof res.then === 'function') {\n this.promises.push(res)\n\n const failed = err => {\n if (this._isBeingDestroyed !== true && this._isDestroyed !== true) {\n this.promises = this.promises.filter(p => p !== res)\n\n if (this.promises.length === 0) {\n this.abortPromises = false\n }\n\n this.queuedFiles = this.queuedFiles.concat(files)\n files.forEach(f => { this.__updateFile(f, 'failed') })\n\n this.$emit('factory-failed', err, files)\n this.workingThreads--\n }\n }\n\n res.then(factory => {\n if (this.abortPromises === true) {\n failed(new Error('Aborted'))\n }\n else if (this._isBeingDestroyed !== true && this._isDestroyed !== true) {\n this.promises = this.promises.filter(p => p !== res)\n this.__uploadFiles(files, factory)\n }\n }).catch(failed)\n }\n else {\n this.__uploadFiles(files, res || {})\n }\n },\n\n __uploadFiles (files, factory) {\n const\n form = new FormData(),\n xhr = new XMLHttpRequest()\n\n const getProp = (name, arg) => {\n return factory[name] !== void 0\n ? getFn(factory[name])(arg)\n : this.xhrProps[name](arg)\n }\n\n const url = getProp('url', files)\n\n if (!url) {\n console.error('q-uploader: invalid or no URL specified')\n this.workingThreads--\n return\n }\n\n const fields = getProp('formFields', files)\n fields !== void 0 && fields.forEach(field => {\n form.append(field.name, field.value)\n })\n\n let\n uploadIndex = 0,\n uploadIndexSize = 0,\n uploadedSize = 0,\n maxUploadSize = 0,\n aborted\n\n xhr.upload.addEventListener('progress', e => {\n if (aborted === true) { return }\n\n const loaded = Math.min(maxUploadSize, e.loaded)\n\n this.uploadedSize += loaded - uploadedSize\n uploadedSize = loaded\n\n let size = uploadedSize - uploadIndexSize\n for (let i = uploadIndex; size > 0 && i < files.length; i++) {\n const\n file = files[i],\n uploaded = size > file.size\n\n if (uploaded) {\n size -= file.size\n uploadIndex++\n uploadIndexSize += file.size\n this.__updateFile(file, 'uploading', file.size)\n }\n else {\n this.__updateFile(file, 'uploading', size)\n return\n }\n }\n }, false)\n\n xhr.onreadystatechange = () => {\n if (xhr.readyState < 4) {\n return\n }\n\n if (xhr.status && xhr.status < 400) {\n this.uploadedFiles = this.uploadedFiles.concat(files)\n files.forEach(f => { this.__updateFile(f, 'uploaded') })\n this.$emit('uploaded', { files, xhr })\n }\n else {\n aborted = true\n this.uploadedSize -= uploadedSize\n this.queuedFiles = this.queuedFiles.concat(files)\n files.forEach(f => { this.__updateFile(f, 'failed') })\n this.$emit('failed', { files, xhr })\n }\n\n this.workingThreads--\n this.xhrs = this.xhrs.filter(x => x !== xhr)\n }\n\n xhr.open(\n getProp('method', files),\n url\n )\n\n if (getProp('withCredentials', files) === true) {\n xhr.withCredentials = true\n }\n\n const headers = getProp('headers', files)\n headers !== void 0 && headers.forEach(head => {\n xhr.setRequestHeader(head.name, head.value)\n })\n\n const sendRaw = getProp('sendRaw', files)\n\n files.forEach(file => {\n this.__updateFile(file, 'uploading', 0)\n if (sendRaw !== true) {\n form.append(getProp('fieldName', file), file, file.name)\n }\n file.xhr = xhr\n file.__abort = () => { xhr.abort() }\n maxUploadSize += file.size\n })\n\n this.$emit('uploading', { files, xhr })\n this.xhrs.push(xhr)\n\n if (sendRaw === true) {\n xhr.send(new Blob(files))\n }\n else {\n xhr.send(form)\n }\n }\n }\n}\n","import Vue from 'vue'\n\nimport QUploaderBase from './QUploaderBase.js'\nimport UploaderXHRMixin from './uploader-xhr-mixin.js'\n\nexport default Vue.extend({\n name: 'QUploader',\n mixins: [ QUploaderBase, UploaderXHRMixin ]\n})\n","import Vue from 'vue'\n\nexport default Vue.extend({\n name: 'QUploaderAddTrigger',\n\n inject: {\n __qUploaderGetInput: {\n default () {\n console.error('QUploaderAddTrigger needs to be child of QUploader')\n }\n }\n },\n\n render (h) {\n return this.__qUploaderGetInput(h)\n }\n})\n","import Vue from 'vue'\n\nimport RatioMixin from '../../mixins/ratio.js'\nimport ListenersMixin from '../../mixins/listeners.js'\n\nexport default Vue.extend({\n name: 'QVideo',\n\n mixins: [ RatioMixin, ListenersMixin ],\n\n props: {\n src: {\n type: String,\n required: true\n },\n\n title: String,\n\n fetchpriority: {\n type: String,\n default: 'auto'\n },\n loading: {\n type: String,\n default: 'eager'\n },\n referrerpolicy: {\n type: String,\n default: 'strict-origin-when-cross-origin'\n }\n },\n\n computed: {\n iframeData () {\n return {\n attrs: {\n src: this.src,\n frameborder: '0',\n title: this.title,\n allowfullscreen: true,\n fetchpriority: this.fetchpriority,\n loading: this.loading,\n referrerpolicy: this.referrerpolicy\n }\n }\n },\n\n classes () {\n return 'q-video' +\n (this.ratio !== void 0 ? ' q-video--responsive' : '')\n }\n },\n\n render (h) {\n return h('div', {\n class: this.classes,\n style: this.ratioStyle,\n on: { ...this.qListeners }\n }, [\n h('iframe', this.iframeData)\n ])\n }\n})\n","import { client } from '../plugins/Platform.js'\nimport { isKeyCode } from '../utils/key-composition.js'\n\nfunction destroy (el) {\n const ctx = el.__qgoback\n if (ctx !== void 0) {\n el.removeEventListener('click', ctx.goBack)\n el.removeEventListener('keyup', ctx.goBackKey)\n delete el.__qgoback\n }\n}\n\nexport default {\n name: 'go-back',\n\n bind (el, { value, modifiers }, vnode) {\n if (el.__qgoback !== void 0) {\n destroy(el)\n el.__qgoback_destroyed = true\n }\n\n const ctx = {\n value,\n\n position: window.history.length - 1,\n single: modifiers.single,\n\n goBack () {\n const router = vnode.context.$router\n\n if (ctx.single === true) {\n router.go(-1)\n }\n else if (client.is.nativeMobile === true) {\n router.go(ctx.position - window.history.length)\n }\n else {\n router.replace(ctx.value)\n }\n },\n\n goBackKey (e) {\n // if ENTER key\n isKeyCode(e, 13) === true && ctx.goBack()\n }\n }\n\n el.__qgoback = ctx\n\n el.addEventListener('click', ctx.goBack)\n el.addEventListener('keyup', ctx.goBackKey)\n },\n\n update (el, { value, oldValue }) {\n const ctx = el.__qgoback\n\n if (ctx !== void 0 && value !== oldValue) {\n ctx.value = value\n }\n },\n\n unbind (el) {\n if (el.__qgoback_destroyed === void 0) {\n destroy(el)\n }\n else {\n delete el.__qgoback_destroyed\n }\n }\n}\n","import { getElement } from './dom.js'\nimport { isObject } from './is'\n\nlet id = 0\nlet offsetBase = void 0\n\nfunction getAbsolutePosition (el, resize) {\n if (offsetBase === void 0) {\n offsetBase = document.createElement('div')\n offsetBase.style.cssText = 'position: absolute; left: 0; top: 0'\n document.body.appendChild(offsetBase)\n }\n\n const boundingRect = el.getBoundingClientRect()\n const baseRect = offsetBase.getBoundingClientRect()\n const { marginLeft, marginRight, marginTop, marginBottom } = window.getComputedStyle(el)\n const marginH = parseInt(marginLeft, 10) + parseInt(marginRight, 10)\n const marginV = parseInt(marginTop, 10) + parseInt(marginBottom, 10)\n\n return {\n left: boundingRect.left - baseRect.left,\n top: boundingRect.top - baseRect.top,\n width: boundingRect.right - boundingRect.left,\n height: boundingRect.bottom - boundingRect.top,\n widthM: boundingRect.right - boundingRect.left + (resize === true ? 0 : marginH),\n heightM: boundingRect.bottom - boundingRect.top + (resize === true ? 0 : marginV),\n marginH: resize === true ? marginH : 0,\n marginV: resize === true ? marginV : 0\n }\n}\n\nfunction getAbsoluteSize (el) {\n return {\n width: el.scrollWidth,\n height: el.scrollHeight\n }\n}\n\n// firefox rulez\nconst styleEdges = [ 'Top', 'Right', 'Bottom', 'Left' ]\nconst styleBorderRadiuses = [ 'borderTopLeftRadius', 'borderTopRightRadius', 'borderBottomRightRadius', 'borderBottomLeftRadius' ]\nconst reStyleSkipKey = /-block|-inline|block-|inline-/\nconst reStyleSkipRule = /(-block|-inline|block-|inline-).*:/\n\nfunction getComputedStyle (el, props) {\n const style = window.getComputedStyle(el)\n const fixed = {}\n for (let i = 0; i < props.length; i++) {\n const prop = props[i]\n\n if (style[prop] === '') {\n if (prop === 'cssText') {\n const styleLen = style.length\n let val = ''\n\n for (let i = 0; i < styleLen; i++) {\n if (reStyleSkipKey.test(style[i]) !== true) {\n val += style[i] + ': ' + style[style[i]] + '; '\n }\n }\n\n fixed[prop] = val\n }\n else if ([ 'borderWidth', 'borderStyle', 'borderColor' ].indexOf(prop) > -1) {\n const suffix = prop.replace('border', '')\n let val = ''\n for (let j = 0; j < styleEdges.length; j++) {\n const subProp = 'border' + styleEdges[j] + suffix\n val += style[subProp] + ' '\n }\n fixed[prop] = val\n }\n else if (prop === 'borderRadius') {\n let val1 = ''\n let val2 = ''\n for (let j = 0; j < styleBorderRadiuses.length; j++) {\n const val = style[styleBorderRadiuses[j]].split(' ')\n val1 += val[0] + ' '\n val2 += (val[1] === void 0 ? val[0] : val[1]) + ' '\n }\n fixed[prop] = val1 + '/ ' + val2\n }\n else {\n fixed[prop] = style[prop]\n }\n }\n else {\n if (prop === 'cssText') {\n fixed[prop] = style[prop]\n .split(';')\n .filter(val => reStyleSkipRule.test(val) !== true)\n .join(';')\n }\n else {\n fixed[prop] = style[prop]\n }\n }\n }\n\n return fixed\n}\n\nconst zIndexPositions = ['absolute', 'fixed', 'relative', 'sticky']\n\nfunction getMaxZIndex (elStart) {\n let el = elStart\n let maxIndex = 0\n\n while (el !== null && el !== document) {\n const { position, zIndex } = window.getComputedStyle(el)\n const zIndexNum = Number(zIndex)\n\n if (\n zIndexNum > maxIndex &&\n (el === elStart || zIndexPositions.includes(position) === true)\n ) {\n maxIndex = zIndexNum\n }\n\n el = el.parentNode\n }\n\n return maxIndex\n}\n\nfunction normalizeElements (opts) {\n return {\n from: opts.from,\n to: opts.to !== void 0\n ? opts.to\n : opts.from\n }\n}\n\nfunction normalizeOptions (options) {\n if (typeof options === 'number') {\n options = {\n duration: options\n }\n }\n else if (typeof options === 'function') {\n options = {\n onEnd: options\n }\n }\n\n return {\n ...options,\n\n waitFor: options.waitFor === void 0 ? 0 : options.waitFor,\n\n duration: isNaN(options.duration) === true ? 300 : parseInt(options.duration, 10),\n easing: typeof options.easing === 'string' && options.easing.length > 0 ? options.easing : 'ease-in-out',\n delay: isNaN(options.delay) === true ? 0 : parseInt(options.delay, 10),\n fill: typeof options.fill === 'string' && options.fill.length > 0 ? options.fill : 'none',\n\n resize: options.resize === true,\n useCSS: options.useCSS === true,\n hideFromClone: options.hideFromClone === true,\n keepToClone: options.keepToClone === true,\n\n tween: options.tween === true,\n tweenFromOpacity: isNaN(options.tweenFromOpacity) === true ? 0.6 : parseFloat(options.tweenFromOpacity),\n tweenToOpacity: isNaN(options.tweenToOpacity) === true ? 0.5 : parseFloat(options.tweenToOpacity)\n }\n}\n\nfunction isValidElement (element) {\n return element &&\n element.ownerDocument === document &&\n element.parentNode !== null\n}\n\nexport default function morph (_options) {\n let cancel = () => false\n let cancelStatus = false\n let endElementTo = true\n\n const elements = normalizeElements(_options)\n const options = normalizeOptions(_options)\n\n const elFrom = getElement(elements.from)\n if (isValidElement(elFrom) !== true) {\n // we return a cancel function that return false, meaning the cancel function failed\n return cancel\n }\n // we clean other morphs running on this element\n typeof elFrom.qMorphCancel === 'function' && elFrom.qMorphCancel()\n\n let animationFromClone = void 0\n let animationFromTween = void 0\n let animationToClone = void 0\n let animationTo = void 0\n\n const elFromParent = elFrom.parentNode\n const elFromNext = elFrom.nextElementSibling\n\n // we get the dimensions and characteristics\n // of the parent of the initial element before changes\n const elFromPosition = getAbsolutePosition(elFrom, options.resize)\n const {\n width: elFromParentWidthBefore,\n height: elFromParentHeightBefore\n } = getAbsoluteSize(elFromParent)\n const {\n borderWidth: elFromBorderWidth,\n borderStyle: elFromBorderStyle,\n borderColor: elFromBorderColor,\n borderRadius: elFromBorderRadius,\n backgroundColor: elFromBackground,\n transform: elFromTransform,\n position: elFromPositioningType,\n cssText: elFromCssText\n } = getComputedStyle(elFrom, [ 'borderWidth', 'borderStyle', 'borderColor', 'borderRadius', 'backgroundColor', 'transform', 'position', 'cssText' ])\n const elFromClassSaved = elFrom.classList.toString()\n const elFromStyleSaved = elFrom.style.cssText\n\n // we make a clone of the initial element and\n // use it to display until the final element is ready\n // and to change the occupied space during animation\n const elFromClone = elFrom.cloneNode(true)\n const elFromTween = options.tween === true ? elFrom.cloneNode(true) : void 0\n\n if (elFromTween !== void 0) {\n elFromTween.className = elFromTween.classList.toString().split(' ').filter(c => /^bg-/.test(c) === false).join(' ')\n }\n\n // if the initial element is not going to be removed do not show the placeholder\n options.hideFromClone === true && elFromClone.classList.add('q-morph--internal')\n\n // prevent interaction with placeholder\n elFromClone.setAttribute('aria-hidden', 'true')\n elFromClone.style.transition = 'none'\n elFromClone.style.animation = 'none'\n elFromClone.style.pointerEvents = 'none'\n elFromParent.insertBefore(elFromClone, elFromNext)\n\n // we mark the element with its cleanup function\n elFrom.qMorphCancel = () => {\n cancelStatus = true\n\n // we clean the clone of the initial element\n elFromClone.remove()\n elFromTween !== void 0 && elFromTween.remove()\n\n options.hideFromClone === true && elFromClone.classList.remove('q-morph--internal')\n\n // we remove the cleanup function from the element\n elFrom.qMorphCancel = void 0\n }\n\n // will be called after Vue catches up with the changes done by _options.onToggle() function\n const calculateFinalState = () => {\n const elTo = getElement(elements.to)\n if (cancelStatus === true || isValidElement(elTo) !== true) {\n typeof elFrom.qMorphCancel === 'function' && elFrom.qMorphCancel()\n\n return\n }\n // we clean other morphs running on this element\n elFrom !== elTo && typeof elTo.qMorphCancel === 'function' && elTo.qMorphCancel()\n\n // we hide the final element and the clone of the initial element\n // we don't hide the final element if we want both it and the animated one visible\n options.keepToClone !== true && elTo.classList.add('q-morph--internal')\n elFromClone.classList.add('q-morph--internal')\n\n // we get the dimensions of the parent of the initial element after changes\n // the difference is how much we should animate the clone\n const {\n width: elFromParentWidthAfter,\n height: elFromParentHeightAfter\n } = getAbsoluteSize(elFromParent)\n\n // we get the dimensions of the parent of the final element before changes\n const {\n width: elToParentWidthBefore,\n height: elToParentHeightBefore\n } = getAbsoluteSize(elTo.parentNode)\n\n // then we show the clone of the initial element if we don't want it hidden\n options.hideFromClone !== true && elFromClone.classList.remove('q-morph--internal')\n\n // we mark the element with its cleanup function\n elTo.qMorphCancel = () => {\n cancelStatus = true\n\n // we clean the clone of the initial element\n elFromClone.remove()\n elFromTween !== void 0 && elFromTween.remove()\n\n options.hideFromClone === true && elFromClone.classList.remove('q-morph--internal')\n\n // we show the final element\n options.keepToClone !== true && elTo.classList.remove('q-morph--internal')\n\n // we remove the cleanup function from the elements\n elFrom.qMorphCancel = void 0\n elTo.qMorphCancel = void 0\n }\n\n // will be called after waitFor (give time to render the final element)\n const animate = () => {\n if (cancelStatus === true) {\n typeof elTo.qMorphCancel === 'function' && elTo.qMorphCancel()\n\n return\n }\n\n // now the animation starts, so we only need the clone\n // of the initial element as a spacer\n // we also hide it to calculate the dimensions of the\n // parent of the final element after the changes\n if (options.hideFromClone !== true) {\n elFromClone.classList.add('q-morph--internal')\n elFromClone.innerHTML = ''\n elFromClone.style.left = 0\n elFromClone.style.right = 'unset'\n elFromClone.style.top = 0\n elFromClone.style.bottom = 'unset'\n elFromClone.style.transform = 'none'\n }\n\n // we show the final element\n if (options.keepToClone !== true) {\n elTo.classList.remove('q-morph--internal')\n }\n\n // we get the dimensions of the parent of the final element after changes\n // the difference is how much we should animate the clone\n const elToParent = elTo.parentNode\n const {\n width: elToParentWidthAfter,\n height: elToParentHeightAfter\n } = getAbsoluteSize(elToParent)\n\n const elToClone = elTo.cloneNode(options.keepToClone)\n elToClone.setAttribute('aria-hidden', 'true')\n if (options.keepToClone !== true) {\n elToClone.style.left = 0\n elToClone.style.right = 'unset'\n elToClone.style.top = 0\n elToClone.style.bottom = 'unset'\n elToClone.style.transform = 'none'\n elToClone.style.pointerEvents = 'none'\n }\n elToClone.classList.add('q-morph--internal')\n\n // if elFrom is the same as elTo the next element is elFromClone\n const elToNext = elTo === elFrom && elFromParent === elToParent ? elFromClone : elTo.nextElementSibling\n elToParent.insertBefore(elToClone, elToNext)\n\n const {\n borderWidth: elToBorderWidth,\n borderStyle: elToBorderStyle,\n borderColor: elToBorderColor,\n borderRadius: elToBorderRadius,\n backgroundColor: elToBackground,\n transform: elToTransform,\n position: elToPositioningType,\n cssText: elToCssText\n } = getComputedStyle(elTo, [ 'borderWidth', 'borderStyle', 'borderColor', 'borderRadius', 'backgroundColor', 'transform', 'position', 'cssText' ])\n const elToClassSaved = elTo.classList.toString()\n const elToStyleSaved = elTo.style.cssText\n\n // we set the computed styles on the element (to be able to remove classes)\n elTo.style.cssText = elToCssText\n elTo.style.transform = 'none'\n elTo.style.animation = 'none'\n elTo.style.transition = 'none'\n // we strip the background classes (background color can no longer be animated if !important is used)\n elTo.className = elToClassSaved.split(' ').filter(c => /^bg-/.test(c) === false).join(' ')\n\n const elToPosition = getAbsolutePosition(elTo, options.resize)\n\n const deltaX = elFromPosition.left - elToPosition.left\n const deltaY = elFromPosition.top - elToPosition.top\n const scaleX = elFromPosition.width / (elToPosition.width > 0 ? elToPosition.width : 10)\n const scaleY = elFromPosition.height / (elToPosition.height > 0 ? elToPosition.height : 100)\n\n const elFromParentWidthDiff = elFromParentWidthBefore - elFromParentWidthAfter\n const elFromParentHeightDiff = elFromParentHeightBefore - elFromParentHeightAfter\n const elToParentWidthDiff = elToParentWidthAfter - elToParentWidthBefore\n const elToParentHeightDiff = elToParentHeightAfter - elToParentHeightBefore\n\n const elFromCloneWidth = Math.max(elFromPosition.widthM, elFromParentWidthDiff)\n const elFromCloneHeight = Math.max(elFromPosition.heightM, elFromParentHeightDiff)\n const elToCloneWidth = Math.max(elToPosition.widthM, elToParentWidthDiff)\n const elToCloneHeight = Math.max(elToPosition.heightM, elToParentHeightDiff)\n\n const elSharedSize = elFrom === elTo &&\n [ 'absolute', 'fixed' ].includes(elToPositioningType) === false &&\n [ 'absolute', 'fixed' ].includes(elFromPositioningType) === false\n\n // if the final element has fixed position or if a parent\n // has fixed position we need to animate it as fixed\n let elToNeedsFixedPosition = elToPositioningType === 'fixed'\n let parent = elToParent\n while (elToNeedsFixedPosition !== true && parent !== document) {\n elToNeedsFixedPosition = window.getComputedStyle(parent).position === 'fixed'\n parent = parent.parentNode\n }\n\n // we show the spacer for the initial element\n if (options.hideFromClone !== true) {\n elFromClone.style.display = 'block'\n elFromClone.style.flex = '0 0 auto'\n elFromClone.style.opacity = 0\n elFromClone.style.minWidth = 'unset'\n elFromClone.style.maxWidth = 'unset'\n elFromClone.style.minHeight = 'unset'\n elFromClone.style.maxHeight = 'unset'\n elFromClone.classList.remove('q-morph--internal')\n }\n\n // we show the spacer for the final element\n if (options.keepToClone !== true) {\n elToClone.style.display = 'block'\n elToClone.style.flex = '0 0 auto'\n elToClone.style.opacity = 0\n elToClone.style.minWidth = 'unset'\n elToClone.style.maxWidth = 'unset'\n elToClone.style.minHeight = 'unset'\n elToClone.style.maxHeight = 'unset'\n }\n elToClone.classList.remove('q-morph--internal')\n\n // we apply classes specified by user\n if (typeof options.classes === 'string') {\n elTo.className += ' ' + options.classes\n }\n\n // we apply styles specified by user\n if (typeof options.style === 'string') {\n elTo.style.cssText += ' ' + options.style\n }\n else if (isObject(options.style) === true) {\n for (const prop in options.style) {\n elTo.style[prop] = options.style[prop]\n }\n }\n\n const elFromZIndex = getMaxZIndex(elFromClone)\n const elToZIndex = getMaxZIndex(elTo)\n\n // we position the morphing element\n // if we use fixed position for the final element we need to adjust for scroll\n const documentScroll = elToNeedsFixedPosition === true\n ? document.documentElement\n : { scrollLeft: 0, scrollTop: 0 }\n elTo.style.position = elToNeedsFixedPosition === true ? 'fixed' : 'absolute'\n elTo.style.left = `${elToPosition.left - documentScroll.scrollLeft}px`\n elTo.style.right = 'unset'\n elTo.style.top = `${elToPosition.top - documentScroll.scrollTop}px`\n elTo.style.margin = 0\n\n if (options.resize === true) {\n elTo.style.minWidth = 'unset'\n elTo.style.maxWidth = 'unset'\n elTo.style.minHeight = 'unset'\n elTo.style.maxHeight = 'unset'\n elTo.style.overflow = 'hidden'\n elTo.style.overflowX = 'hidden'\n elTo.style.overflowY = 'hidden'\n }\n\n document.body.appendChild(elTo)\n\n if (elFromTween !== void 0) {\n elFromTween.style.cssText = elFromCssText\n elFromTween.style.transform = 'none'\n elFromTween.style.animation = 'none'\n elFromTween.style.transition = 'none'\n\n elFromTween.style.position = elTo.style.position\n elFromTween.style.left = `${elFromPosition.left - documentScroll.scrollLeft}px`\n elFromTween.style.right = 'unset'\n elFromTween.style.top = `${elFromPosition.top - documentScroll.scrollTop}px`\n elFromTween.style.margin = 0\n elFromTween.style.pointerEvents = 'none'\n\n if (options.resize === true) {\n elFromTween.style.minWidth = 'unset'\n elFromTween.style.maxWidth = 'unset'\n elFromTween.style.minHeight = 'unset'\n elFromTween.style.maxHeight = 'unset'\n elFromTween.style.overflow = 'hidden'\n elFromTween.style.overflowX = 'hidden'\n elFromTween.style.overflowY = 'hidden'\n }\n\n document.body.appendChild(elFromTween)\n }\n\n const commonCleanup = aborted => {\n // we put the element back in it's place\n // and restore the styles and classes\n if (elFrom === elTo && endElementTo !== true) {\n elTo.style.cssText = elFromStyleSaved\n elTo.className = elFromClassSaved\n }\n else {\n elTo.style.cssText = elToStyleSaved\n elTo.className = elToClassSaved\n }\n elToClone.parentNode === elToParent && elToParent.insertBefore(elTo, elToClone)\n\n // we clean the spacers\n elFromClone.remove()\n elToClone.remove()\n elFromTween !== void 0 && elFromTween.remove()\n\n // cancel will be no longer available\n cancel = () => false\n\n elFrom.qMorphCancel = void 0\n elTo.qMorphCancel = void 0\n\n // we are ready\n if (typeof options.onEnd === 'function') {\n options.onEnd(endElementTo === true ? 'to' : 'from', aborted === true)\n }\n }\n\n if (options.useCSS !== true && typeof elTo.animate === 'function') {\n const resizeFrom = options.resize === true\n ? {\n transform: `translate(${deltaX}px, ${deltaY}px)`,\n width: `${elFromCloneWidth}px`,\n height: `${elFromCloneHeight}px`\n }\n : {\n transform: `translate(${deltaX}px, ${deltaY}px) scale(${scaleX}, ${scaleY})`\n }\n const resizeTo = options.resize === true\n ? {\n width: `${elToCloneWidth}px`,\n height: `${elToCloneHeight}px`\n }\n : {}\n const resizeFromTween = options.resize === true\n ? {\n width: `${elFromCloneWidth}px`,\n height: `${elFromCloneHeight}px`\n }\n : {}\n const resizeToTween = options.resize === true\n ? {\n transform: `translate(${-1 * deltaX}px, ${-1 * deltaY}px)`,\n width: `${elToCloneWidth}px`,\n height: `${elToCloneHeight}px`\n }\n : {\n transform: `translate(${-1 * deltaX}px, ${-1 * deltaY}px) scale(${1 / scaleX}, ${1 / scaleY})`\n }\n const tweenFrom = elFromTween !== void 0\n ? { opacity: options.tweenToOpacity }\n : { backgroundColor: elFromBackground }\n const tweenTo = elFromTween !== void 0\n ? { opacity: 1 }\n : { backgroundColor: elToBackground }\n animationTo = elTo.animate([\n {\n margin: 0,\n borderWidth: elFromBorderWidth,\n borderStyle: elFromBorderStyle,\n borderColor: elFromBorderColor,\n borderRadius: elFromBorderRadius,\n zIndex: elFromZIndex,\n transformOrigin: '0 0',\n ...resizeFrom,\n ...tweenFrom\n },\n {\n margin: 0,\n borderWidth: elToBorderWidth,\n borderStyle: elToBorderStyle,\n borderColor: elToBorderColor,\n borderRadius: elToBorderRadius,\n zIndex: elToZIndex,\n transformOrigin: '0 0',\n transform: elToTransform,\n ...resizeTo,\n ...tweenTo\n }\n ], {\n duration: options.duration,\n easing: options.easing,\n fill: options.fill,\n delay: options.delay\n })\n\n animationFromTween = elFromTween === void 0 ? void 0 : elFromTween.animate([\n {\n opacity: options.tweenFromOpacity,\n margin: 0,\n borderWidth: elFromBorderWidth,\n borderStyle: elFromBorderStyle,\n borderColor: elFromBorderColor,\n borderRadius: elFromBorderRadius,\n zIndex: elFromZIndex,\n transformOrigin: '0 0',\n transform: elFromTransform,\n ...resizeFromTween\n },\n {\n opacity: 0,\n margin: 0,\n borderWidth: elToBorderWidth,\n borderStyle: elToBorderStyle,\n borderColor: elToBorderColor,\n borderRadius: elToBorderRadius,\n zIndex: elToZIndex,\n transformOrigin: '0 0',\n ...resizeToTween\n }\n ], {\n duration: options.duration,\n easing: options.easing,\n fill: options.fill,\n delay: options.delay\n })\n\n animationFromClone = options.hideFromClone === true || elSharedSize === true ? void 0 : elFromClone.animate([\n {\n margin: `${elFromParentHeightDiff < 0 ? elFromParentHeightDiff / 2 : 0}px ${elFromParentWidthDiff < 0 ? elFromParentWidthDiff / 2 : 0}px`,\n width: `${elFromCloneWidth + elFromPosition.marginH}px`,\n height: `${elFromCloneHeight + elFromPosition.marginV}px`\n },\n {\n margin: 0,\n width: 0,\n height: 0\n }\n ], {\n duration: options.duration,\n easing: options.easing,\n fill: options.fill,\n delay: options.delay\n })\n\n animationToClone = options.keepToClone === true ? void 0 : elToClone.animate([\n elSharedSize === true\n ? {\n margin: `${elFromParentHeightDiff < 0 ? elFromParentHeightDiff / 2 : 0}px ${elFromParentWidthDiff < 0 ? elFromParentWidthDiff / 2 : 0}px`,\n width: `${elFromCloneWidth + elFromPosition.marginH}px`,\n height: `${elFromCloneHeight + elFromPosition.marginV}px`\n }\n : {\n margin: 0,\n width: 0,\n height: 0\n },\n {\n margin: `${elToParentHeightDiff < 0 ? elToParentHeightDiff / 2 : 0}px ${elToParentWidthDiff < 0 ? elToParentWidthDiff / 2 : 0}px`,\n width: `${elToCloneWidth + elToPosition.marginH}px`,\n height: `${elToCloneHeight + elToPosition.marginV}px`\n }\n ], {\n duration: options.duration,\n easing: options.easing,\n fill: options.fill,\n delay: options.delay\n })\n\n const cleanup = abort => {\n animationFromClone !== void 0 && animationFromClone.cancel()\n animationFromTween !== void 0 && animationFromTween.cancel()\n animationToClone !== void 0 && animationToClone.cancel()\n animationTo.cancel()\n\n animationTo.removeEventListener('finish', cleanup)\n animationTo.removeEventListener('cancel', cleanup)\n\n commonCleanup(abort)\n\n // we clean the animations\n animationFromClone = void 0\n animationFromTween = void 0\n animationToClone = void 0\n animationTo = void 0\n }\n\n elFrom.qMorphCancel = () => {\n elFrom.qMorphCancel = void 0\n cancelStatus = true\n cleanup()\n }\n elTo.qMorphCancel = () => {\n elTo.qMorphCancel = void 0\n cancelStatus = true\n cleanup()\n }\n\n animationTo.addEventListener('finish', cleanup)\n animationTo.addEventListener('cancel', cleanup)\n\n cancel = abort => {\n // we are not in a morph that we can cancel\n if (cancelStatus === true || animationTo === void 0) {\n return false\n }\n\n if (abort === true) {\n cleanup(true)\n return true\n }\n\n endElementTo = endElementTo !== true\n\n animationFromClone !== void 0 && animationFromClone.reverse()\n animationFromTween !== void 0 && animationFromTween.reverse()\n animationToClone !== void 0 && animationToClone.reverse()\n animationTo.reverse()\n\n return true\n }\n }\n else {\n const qAnimId = `q-morph-anim-${++id}`\n const style = document.createElement('style')\n const resizeFrom = options.resize === true\n ? `\n transform: translate(${deltaX}px, ${deltaY}px);\n width: ${elFromCloneWidth}px;\n height: ${elFromCloneHeight}px;\n `\n : `transform: translate(${deltaX}px, ${deltaY}px) scale(${scaleX}, ${scaleY});`\n const resizeTo = options.resize === true\n ? `\n width: ${elToCloneWidth}px;\n height: ${elToCloneHeight}px;\n `\n : ''\n const resizeFromTween = options.resize === true\n ? `\n width: ${elFromCloneWidth}px;\n height: ${elFromCloneHeight}px;\n `\n : ''\n const resizeToTween = options.resize === true\n ? `\n transform: translate(${-1 * deltaX}px, ${-1 * deltaY}px);\n width: ${elToCloneWidth}px;\n height: ${elToCloneHeight}px;\n `\n : `transform: translate(${-1 * deltaX}px, ${-1 * deltaY}px) scale(${1 / scaleX}, ${1 / scaleY});`\n const tweenFrom = elFromTween !== void 0\n ? `opacity: ${options.tweenToOpacity};`\n : `background-color: ${elFromBackground};`\n const tweenTo = elFromTween !== void 0\n ? 'opacity: 1;'\n : `background-color: ${elToBackground};`\n const keyframesFromTween = elFromTween === void 0\n ? ''\n : `\n @keyframes ${qAnimId}-from-tween {\n 0% {\n opacity: ${options.tweenFromOpacity};\n margin: 0;\n border-width: ${elFromBorderWidth};\n border-style: ${elFromBorderStyle};\n border-color: ${elFromBorderColor};\n border-radius: ${elFromBorderRadius};\n z-index: ${elFromZIndex};\n transform-origin: 0 0;\n transform: ${elFromTransform};\n ${resizeFromTween}\n }\n\n 100% {\n opacity: 0;\n margin: 0;\n border-width: ${elToBorderWidth};\n border-style: ${elToBorderStyle};\n border-color: ${elToBorderColor};\n border-radius: ${elToBorderRadius};\n z-index: ${elToZIndex};\n transform-origin: 0 0;\n ${resizeToTween}\n }\n }\n `\n const keyframesFrom = options.hideFromClone === true || elSharedSize === true\n ? ''\n : `\n @keyframes ${qAnimId}-from {\n 0% {\n margin: ${elFromParentHeightDiff < 0 ? elFromParentHeightDiff / 2 : 0}px ${elFromParentWidthDiff < 0 ? elFromParentWidthDiff / 2 : 0}px;\n width: ${elFromCloneWidth + elFromPosition.marginH}px;\n height: ${elFromCloneHeight + elFromPosition.marginV}px;\n }\n\n 100% {\n margin: 0;\n width: 0;\n height: 0;\n }\n }\n `\n const keyframeToStart = elSharedSize === true\n ? `\n margin: ${elFromParentHeightDiff < 0 ? elFromParentHeightDiff / 2 : 0}px ${elFromParentWidthDiff < 0 ? elFromParentWidthDiff / 2 : 0}px;\n width: ${elFromCloneWidth + elFromPosition.marginH}px;\n height: ${elFromCloneHeight + elFromPosition.marginV}px;\n `\n : `\n margin: 0;\n width: 0;\n height: 0;\n `\n const keyframesTo = options.keepToClone === true\n ? ''\n : `\n @keyframes ${qAnimId}-to {\n 0% {\n ${keyframeToStart}\n }\n\n 100% {\n margin: ${elToParentHeightDiff < 0 ? elToParentHeightDiff / 2 : 0}px ${elToParentWidthDiff < 0 ? elToParentWidthDiff / 2 : 0}px;\n width: ${elToCloneWidth + elToPosition.marginH}px;\n height: ${elToCloneHeight + elToPosition.marginV}px;\n }\n }\n `\n style.innerHTML = `\n @keyframes ${qAnimId} {\n 0% {\n margin: 0;\n border-width: ${elFromBorderWidth};\n border-style: ${elFromBorderStyle};\n border-color: ${elFromBorderColor};\n border-radius: ${elFromBorderRadius};\n background-color: ${elFromBackground};\n z-index: ${elFromZIndex};\n transform-origin: 0 0;\n ${resizeFrom}\n ${tweenFrom}\n }\n\n 100% {\n margin: 0;\n border-width: ${elToBorderWidth};\n border-style: ${elToBorderStyle};\n border-color: ${elToBorderColor};\n border-radius: ${elToBorderRadius};\n background-color: ${elToBackground};\n z-index: ${elToZIndex};\n transform-origin: 0 0;\n transform: ${elToTransform};\n ${resizeTo}\n ${tweenTo}\n }\n }\n\n ${keyframesFrom}\n\n ${keyframesFromTween}\n\n ${keyframesTo}\n `\n document.head.appendChild(style)\n\n let animationDirection = 'normal'\n\n elFromClone.style.animation = `${options.duration}ms ${options.easing} ${options.delay}ms ${animationDirection} ${options.fill} ${qAnimId}-from`\n if (elFromTween !== void 0) {\n elFromTween.style.animation = `${options.duration}ms ${options.easing} ${options.delay}ms ${animationDirection} ${options.fill} ${qAnimId}-from-tween`\n }\n elToClone.style.animation = `${options.duration}ms ${options.easing} ${options.delay}ms ${animationDirection} ${options.fill} ${qAnimId}-to`\n elTo.style.animation = `${options.duration}ms ${options.easing} ${options.delay}ms ${animationDirection} ${options.fill} ${qAnimId}`\n\n const cleanup = evt => {\n if (evt === Object(evt) && evt.animationName !== qAnimId) {\n return\n }\n\n elTo.removeEventListener('animationend', cleanup)\n elTo.removeEventListener('animationcancel', cleanup)\n\n commonCleanup()\n\n // we clean the animations\n style.remove()\n }\n\n elFrom.qMorphCancel = () => {\n elFrom.qMorphCancel = void 0\n cancelStatus = true\n cleanup()\n }\n elTo.qMorphCancel = () => {\n elTo.qMorphCancel = void 0\n cancelStatus = true\n cleanup()\n }\n\n elTo.addEventListener('animationend', cleanup)\n elTo.addEventListener('animationcancel', cleanup)\n\n cancel = abort => {\n // we are not in a morph that we can cancel\n if (cancelStatus === true || !elTo || !elFromClone || !elToClone) {\n return false\n }\n\n if (abort === true) {\n cleanup()\n\n return true\n }\n\n endElementTo = endElementTo !== true\n\n animationDirection = animationDirection === 'normal' ? 'reverse' : 'normal'\n\n elFromClone.style.animationDirection = animationDirection\n elFromTween.style.animationDirection = animationDirection\n elToClone.style.animationDirection = animationDirection\n elTo.style.animationDirection = animationDirection\n\n return true\n }\n }\n }\n\n if (\n options.waitFor > 0 ||\n options.waitFor === 'transitionend' ||\n (options.waitFor === Object(options.waitFor) && typeof options.waitFor.then === 'function')\n ) {\n const delayPromise = options.waitFor > 0\n ? new Promise(resolve => setTimeout(resolve, options.waitFor))\n : (\n options.waitFor === 'transitionend'\n ? new Promise(resolve => {\n const timer = setTimeout(() => {\n endFn()\n }, 400)\n\n const endFn = ev => {\n clearTimeout(timer)\n\n if (elTo) {\n elTo.removeEventListener('transitionend', endFn)\n elTo.removeEventListener('transitioncancel', endFn)\n }\n\n resolve()\n }\n\n elTo.addEventListener('transitionend', endFn)\n elTo.addEventListener('transitioncancel', endFn)\n })\n : options.waitFor\n )\n\n delayPromise\n .then(animate)\n .catch(() => {\n typeof elTo.qMorphCancel === 'function' && elTo.qMorphCancel()\n })\n }\n else {\n animate()\n }\n }\n\n typeof _options.onToggle === 'function' && _options.onToggle()\n requestAnimationFrame(calculateFinalState)\n\n // we return the cancel function\n // returns:\n // false if the cancel cannot be performed (the morph ended already or has not started)\n // true else\n return abort => cancel(abort)\n}\n","import morph from '../utils/morph.js'\n\nconst morphGroups = {}\nconst props = [\n 'duration', 'delay', 'easing', 'fill',\n 'classes', 'style', 'duration', 'resize',\n 'useCSS', 'hideFromClone', 'keepToClone', 'tween',\n 'tweenFromOpacity', 'tweenToOpacity',\n 'waitFor', 'onEnd'\n]\nconst mods = [\n 'resize', 'useCSS', 'hideFromClone', 'keepToClone', 'tween'\n]\n\nfunction changeClass (ctx, action) {\n if (ctx.clsAction !== action) {\n ctx.clsAction = action\n ctx.el.classList[action]('q-morph--invisible')\n }\n}\n\nfunction trigger (group) {\n if (group.animating === true || group.queue.length < 2) {\n return\n }\n\n const [ from, to ] = group.queue\n\n group.animating = true\n from.animating = true\n to.animating = true\n\n changeClass(from, 'remove')\n changeClass(to, 'remove')\n\n const cancelFn = morph({\n from: from.el,\n to: to.el,\n onToggle () {\n changeClass(from, 'add')\n changeClass(to, 'remove')\n },\n ...to.opts,\n onEnd (dir, aborted) {\n to.opts.onEnd !== void 0 && to.opts.onEnd(dir, aborted)\n\n if (aborted === true) {\n return\n }\n\n from.animating = false\n to.animating = false\n\n group.animating = false\n group.cancel = void 0\n group.queue.shift()\n\n trigger(group)\n }\n })\n\n group.cancel = () => {\n cancelFn(true) // abort\n group.cancel = void 0\n }\n}\n\nfunction updateModifiers (mod, ctx) {\n const opts = ctx.opts\n\n mods.forEach(name => {\n opts[name] = mod[name] === true\n })\n}\n\nfunction insertArgs (arg, ctx) {\n const opts = typeof arg === 'string' && arg.length > 0\n ? arg.split(':') : []\n\n ctx.name = opts[0]\n ctx.group = opts[1]\n\n Object.assign(ctx.opts, {\n duration: isNaN(opts[2]) === true\n ? 300\n : parseFloat(opts[2]),\n waitFor: opts[3]\n })\n}\n\nfunction updateArgs (arg, ctx) {\n if (arg.group !== void 0) {\n ctx.group = arg.group\n }\n if (arg.name !== void 0) {\n ctx.name = arg.name\n }\n\n const opts = ctx.opts\n\n props.forEach(name => {\n if (arg[name] !== void 0) {\n opts[name] = arg[name]\n }\n })\n}\n\nfunction updateModel (name, ctx) {\n if (ctx.name === name) {\n const group = morphGroups[ctx.group]\n\n // if group is not registered\n if (group === void 0) {\n morphGroups[ctx.group] = {\n name: ctx.group,\n model: name,\n queue: [ ctx ],\n animating: false\n }\n\n changeClass(ctx, 'remove')\n }\n // if model changed\n else if (group.model !== name) {\n group.model = name\n group.queue.push(ctx)\n\n if (group.animating === false && group.queue.length === 2) {\n trigger(group)\n }\n }\n\n return\n }\n\n if (ctx.animating === false) {\n changeClass(ctx, 'add')\n }\n}\n\nfunction updateValue (ctx, value) {\n let model\n\n if (Object(value) === value) {\n model = '' + value.model\n updateArgs(value, ctx)\n updateModifiers(value, ctx)\n }\n else {\n model = '' + value\n }\n\n if (model !== ctx.model) {\n ctx.model = model\n updateModel(model, ctx)\n }\n else if (ctx.animating === false && ctx.clsAction !== void 0) {\n // ensure HMR\n ctx.el.classList[ctx.clsAction]('q-morph--invisible')\n }\n}\n\nfunction destroy (el) {\n const ctx = el.__qmorph\n\n if (ctx !== void 0) {\n const group = morphGroups[ctx.group]\n\n if (group !== void 0) {\n const index = group.queue.indexOf(ctx)\n\n if (index !== -1) {\n group.queue = group.queue.filter(item => item !== ctx)\n\n if (group.queue.length === 0) {\n group.cancel !== void 0 && group.cancel()\n delete morphGroups[ctx.group]\n }\n }\n }\n\n if (ctx.clsAction === 'add') {\n el.classList.remove('q-morph--invisible')\n }\n\n delete el.__qmorph\n }\n}\n\nexport default {\n name: 'morph',\n\n inserted (el, binding) {\n if (el.__qmorph !== void 0) {\n destroy(el)\n el.__qmorph_destroyed = true\n }\n\n const ctx = {\n el,\n animating: false,\n opts: {}\n }\n\n updateModifiers(binding.modifiers, ctx)\n insertArgs(binding.arg, ctx)\n updateValue(ctx, binding.value)\n\n el.__qmorph = ctx\n },\n\n update (el, binding) {\n const ctx = el.__qmorph\n ctx !== void 0 && updateValue(ctx, binding.value)\n },\n\n unbind (el) {\n if (el.__qmorph_destroyed === void 0) {\n destroy(el)\n }\n else {\n delete el.__qmorph_destroyed\n }\n }\n}\n","const defaultCfg = {\n childList: true,\n subtree: true,\n attributes: true,\n characterData: true,\n attributeOldValue: true,\n characterDataOldValue: true\n}\n\nfunction update (el, ctx, value) {\n ctx.handler = value\n ctx.observer !== void 0 && ctx.observer.disconnect()\n\n ctx.observer = new MutationObserver(list => {\n if (typeof ctx.handler === 'function') {\n const res = ctx.handler(list)\n if (res === false || ctx.once === true) {\n destroy(el)\n }\n }\n })\n\n ctx.observer.observe(el, ctx.opts)\n}\n\nfunction destroy (el) {\n const ctx = el.__qmutation\n\n if (ctx !== void 0) {\n ctx.observer !== void 0 && ctx.observer.disconnect()\n delete el.__qmutation\n }\n}\n\nexport default {\n name: 'mutation',\n\n inserted (el, { modifiers: { once, ...mod }, value }) {\n if (el.__qmutation !== void 0) {\n destroy(el)\n el.__qmutation_destroyed = true\n }\n\n const ctx = {\n once,\n opts: Object.keys(mod).length === 0\n ? defaultCfg\n : mod\n }\n\n update(el, ctx, value)\n\n el.__qmutation = ctx\n },\n\n update (el, { oldValue, value }) {\n const ctx = el.__qmutation\n if (ctx !== void 0 && oldValue !== value) {\n update(el, ctx, value)\n }\n },\n\n unbind (el) {\n if (el.__qmutation_destroyed === void 0) {\n destroy(el)\n }\n else {\n delete el.__qmutation_destroyed\n }\n }\n}\n","import debounce from '../utils/debounce.js'\nimport { height, offset } from '../utils/dom.js'\nimport { getScrollTarget } from '../utils/scroll.js'\nimport { listenOpts } from '../utils/event.js'\n\nfunction update (ctx, { value, oldValue }) {\n if (typeof value !== 'function') {\n ctx.scrollTarget.removeEventListener('scroll', ctx.scroll, listenOpts.passive)\n return\n }\n\n ctx.handler = value\n if (typeof oldValue !== 'function') {\n ctx.scrollTarget.addEventListener('scroll', ctx.scroll, listenOpts.passive)\n ctx.scroll()\n }\n}\n\nfunction destroy (el) {\n const ctx = el.__qscrollfire\n if (ctx !== void 0) {\n ctx.scrollTarget.removeEventListener('scroll', ctx.scroll, listenOpts.passive)\n ctx.scroll.cancel()\n delete el.__qscrollfire\n }\n}\n\nexport default {\n name: 'scroll-fire',\n\n inserted (el, binding) {\n if (el.__qscrollfire !== void 0) {\n destroy(el)\n el.__qscrollfire_destroyed = true\n }\n\n const ctx = {\n scrollTarget: getScrollTarget(el),\n scroll: debounce(() => {\n let containerBottom, elBottom\n\n if (ctx.scrollTarget === window) {\n elBottom = el.getBoundingClientRect().bottom\n containerBottom = window.innerHeight\n }\n else {\n elBottom = offset(el).top + height(el)\n containerBottom = offset(ctx.scrollTarget).top + height(ctx.scrollTarget)\n }\n\n if (elBottom > 0 && elBottom < containerBottom) {\n ctx.scrollTarget.removeEventListener('scroll', ctx.scroll, listenOpts.passive)\n ctx.handler(el)\n }\n }, 25)\n }\n\n update(ctx, binding)\n\n el.__qscrollfire = ctx\n },\n\n update (el, binding) {\n if (el.__qscrollfire !== void 0 && binding.value !== binding.oldValue) {\n update(el.__qscrollfire, binding)\n }\n },\n\n unbind (el) {\n if (el.__qscrollfire_destroyed === void 0) {\n destroy(el)\n }\n else {\n delete el.__qscrollfire_destroyed\n }\n }\n}\n","import { getScrollTarget, getVerticalScrollPosition, getHorizontalScrollPosition } from '../utils/scroll.js'\nimport { listenOpts } from '../utils/event.js'\n\nfunction update (ctx, { value, oldValue }) {\n if (typeof value !== 'function') {\n ctx.scrollTarget.removeEventListener('scroll', ctx.scroll, listenOpts.passive)\n return\n }\n\n ctx.handler = value\n if (typeof oldValue !== 'function') {\n ctx.scrollTarget.addEventListener('scroll', ctx.scroll, listenOpts.passive)\n }\n}\n\nfunction destroy (el) {\n const ctx = el.__qscroll\n if (ctx !== void 0) {\n ctx.scrollTarget.removeEventListener('scroll', ctx.scroll, listenOpts.passive)\n delete el.__qscroll\n }\n}\n\nexport default {\n name: 'scroll',\n\n inserted (el, binding) {\n if (el.__qscroll !== void 0) {\n destroy(el)\n el.__qscroll_destroyed = true\n }\n\n const ctx = {\n scrollTarget: getScrollTarget(el),\n scroll () {\n ctx.handler(\n getVerticalScrollPosition(ctx.scrollTarget),\n getHorizontalScrollPosition(ctx.scrollTarget)\n )\n }\n }\n\n update(ctx, binding)\n\n el.__qscroll = ctx\n },\n\n update (el, binding) {\n if (el.__qscroll !== void 0 && binding.oldValue !== binding.value) {\n update(el.__qscroll, binding)\n }\n },\n\n unbind (el) {\n if (el.__qscroll_destroyed === void 0) {\n destroy(el)\n }\n else {\n delete el.__qscroll_destroyed\n }\n }\n}\n","import { client } from '../plugins/Platform.js'\nimport { addEvt, cleanEvt, position, leftClick, stopAndPrevent, noop } from '../utils/event.js'\nimport { clearSelection } from '../utils/selection.js'\n\nfunction destroy (el) {\n const ctx = el.__qtouchhold\n if (ctx !== void 0) {\n cleanEvt(ctx, 'main')\n cleanEvt(ctx, 'temp')\n\n clearTimeout(ctx.timer)\n ctx.styleCleanup !== void 0 && ctx.styleCleanup()\n\n delete el.__qtouchhold\n }\n}\n\nexport default {\n name: 'touch-hold',\n\n bind (el, binding) {\n if (el.__qtouchhold !== void 0) {\n destroy(el)\n el.__qtouchhold_destroyed = true\n }\n\n const { modifiers } = binding\n\n // early return, we don't need to do anything\n if (modifiers.mouse !== true && client.has.touch !== true) {\n return\n }\n\n const ctx = {\n handler: binding.value,\n noop,\n\n mouseStart (evt) {\n if (typeof ctx.handler === 'function' && leftClick(evt) === true) {\n addEvt(ctx, 'temp', [\n [ document, 'mousemove', 'move', 'passiveCapture' ],\n [ document, 'click', 'end', 'notPassiveCapture' ]\n ])\n ctx.start(evt, true)\n }\n },\n\n touchStart (evt) {\n if (evt.target !== void 0 && typeof ctx.handler === 'function') {\n const target = evt.target\n addEvt(ctx, 'temp', [\n [ target, 'touchmove', 'move', 'passiveCapture' ],\n [ target, 'touchcancel', 'end', 'notPassiveCapture' ],\n [ target, 'touchend', 'end', 'notPassiveCapture' ]\n ])\n ctx.start(evt)\n }\n },\n\n start (evt, mouseEvent) {\n ctx.origin = position(evt)\n\n const startTime = Date.now()\n\n if (client.is.mobile === true) {\n document.body.classList.add('non-selectable')\n clearSelection()\n\n ctx.styleCleanup = withDelay => {\n ctx.styleCleanup = void 0\n\n const remove = () => {\n document.body.classList.remove('non-selectable')\n }\n\n if (withDelay === true) {\n clearSelection()\n setTimeout(remove, 10)\n }\n else { remove() }\n }\n }\n\n ctx.triggered = false\n ctx.sensitivity = mouseEvent === true\n ? ctx.mouseSensitivity\n : ctx.touchSensitivity\n\n ctx.timer = setTimeout(() => {\n clearSelection()\n ctx.triggered = true\n\n ctx.handler({\n evt,\n touch: mouseEvent !== true,\n mouse: mouseEvent === true,\n position: ctx.origin,\n duration: Date.now() - startTime\n })\n }, ctx.duration)\n },\n\n move (evt) {\n const { top, left } = position(evt)\n if (\n Math.abs(left - ctx.origin.left) >= ctx.sensitivity ||\n Math.abs(top - ctx.origin.top) >= ctx.sensitivity\n ) {\n clearTimeout(ctx.timer)\n }\n },\n\n end (evt) {\n cleanEvt(ctx, 'temp')\n\n // delay needed otherwise selection still occurs\n ctx.styleCleanup !== void 0 && ctx.styleCleanup(ctx.triggered)\n\n if (ctx.triggered === true) {\n evt !== void 0 && stopAndPrevent(evt)\n }\n else {\n clearTimeout(ctx.timer)\n }\n }\n }\n\n // duration in ms, touch in pixels, mouse in pixels\n const data = [600, 5, 7]\n\n if (typeof binding.arg === 'string' && binding.arg.length > 0) {\n binding.arg.split(':').forEach((val, index) => {\n const v = parseInt(val, 10)\n v && (data[index] = v)\n })\n }\n\n [ ctx.duration, ctx.touchSensitivity, ctx.mouseSensitivity ] = data\n\n el.__qtouchhold = ctx\n\n modifiers.mouse === true && addEvt(ctx, 'main', [\n [ el, 'mousedown', 'mouseStart', `passive${modifiers.mouseCapture === true ? 'Capture' : ''}` ]\n ])\n\n client.has.touch === true && addEvt(ctx, 'main', [\n [ el, 'touchstart', 'touchStart', `passive${modifiers.capture === true ? 'Capture' : ''}` ],\n [ el, 'touchend', 'noop', 'notPassiveCapture' ]\n ])\n },\n\n update (el, binding) {\n const ctx = el.__qtouchhold\n if (ctx !== void 0 && binding.oldValue !== binding.value) {\n typeof binding.value !== 'function' && ctx.end()\n ctx.handler = binding.value\n }\n },\n\n unbind (el) {\n if (el.__qtouchhold_destroyed === void 0) {\n destroy(el)\n }\n else {\n delete el.__qtouchhold_destroyed\n }\n }\n}\n","import { client } from '../plugins/Platform.js'\nimport { addEvt, cleanEvt, position, leftClick, stopAndPrevent, noop } from '../utils/event.js'\nimport { clearSelection } from '../utils/selection.js'\nimport { isKeyCode } from '../utils/key-composition.js'\n\nconst\n keyCodes = {\n esc: 27,\n tab: 9,\n enter: 13,\n space: 32,\n up: 38,\n left: 37,\n right: 39,\n down: 40,\n 'delete': [8, 46]\n },\n keyRegex = new RegExp(`^([\\\\d+]+|${Object.keys(keyCodes).join('|')})$`, 'i')\n\nfunction shouldEnd (evt, origin) {\n const { top, left } = position(evt)\n\n return Math.abs(left - origin.left) >= 7 ||\n Math.abs(top - origin.top) >= 7\n}\n\nfunction destroy (el) {\n const ctx = el.__qtouchrepeat\n if (ctx !== void 0) {\n clearTimeout(ctx.timer)\n\n cleanEvt(ctx, 'main')\n cleanEvt(ctx, 'temp')\n\n ctx.styleCleanup !== void 0 && ctx.styleCleanup()\n\n delete el.__qtouchrepeat\n }\n}\n\nexport default {\n name: 'touch-repeat',\n\n bind (el, { modifiers, value, arg }) {\n if (el.__qtouchrepeat !== void 0) {\n destroy(el)\n el.__qtouchrepeat_destroyed = true\n }\n\n const keyboard = Object.keys(modifiers).reduce((acc, key) => {\n if (keyRegex.test(key) === true) {\n const keyCode = isNaN(parseInt(key, 10)) ? keyCodes[key.toLowerCase()] : parseInt(key, 10)\n keyCode >= 0 && acc.push(keyCode)\n }\n return acc\n }, [])\n\n // early return, we don't need to do anything\n if (\n modifiers.mouse !== true &&\n client.has.touch !== true &&\n keyboard.length === 0\n ) {\n return\n }\n\n const durations = typeof arg === 'string' && arg.length > 0\n ? arg.split(':').map(val => parseInt(val, 10))\n : [0, 600, 300]\n\n const durationsLast = durations.length - 1\n\n const ctx = {\n keyboard,\n handler: value,\n\n noop,\n\n mouseStart (evt) {\n if (ctx.event === void 0 && typeof ctx.handler === 'function' && leftClick(evt) === true) {\n addEvt(ctx, 'temp', [\n [ document, 'mousemove', 'move', 'passiveCapture' ],\n [ document, 'click', 'end', 'notPassiveCapture' ]\n ])\n ctx.start(evt, true)\n }\n },\n\n keyboardStart (evt) {\n if (typeof ctx.handler === 'function' && isKeyCode(evt, keyboard) === true) {\n if (durations[0] === 0 || ctx.event !== void 0) {\n stopAndPrevent(evt)\n el.focus()\n if (ctx.event !== void 0) {\n return\n }\n }\n\n addEvt(ctx, 'temp', [\n [ document, 'keyup', 'end', 'notPassiveCapture' ],\n [ document, 'click', 'end', 'notPassiveCapture' ]\n ])\n ctx.start(evt, false, true)\n }\n },\n\n touchStart (evt) {\n if (evt.target !== void 0 && typeof ctx.handler === 'function') {\n const target = evt.target\n addEvt(ctx, 'temp', [\n [ target, 'touchmove', 'move', 'passiveCapture' ],\n [ target, 'touchcancel', 'end', 'notPassiveCapture' ],\n [ target, 'touchend', 'end', 'notPassiveCapture' ]\n ])\n ctx.start(evt)\n }\n },\n\n start (evt, mouseEvent, keyboardEvent) {\n if (keyboardEvent !== true) {\n ctx.origin = position(evt)\n }\n\n function styleCleanup (withDelay) {\n ctx.styleCleanup = void 0\n\n document.documentElement.style.cursor = ''\n\n const remove = () => {\n document.body.classList.remove('non-selectable')\n }\n\n if (withDelay === true) {\n clearSelection()\n setTimeout(remove, 10)\n }\n else { remove() }\n }\n\n if (client.is.mobile === true) {\n document.body.classList.add('non-selectable')\n clearSelection()\n ctx.styleCleanup = styleCleanup\n }\n\n ctx.event = {\n touch: mouseEvent !== true && keyboardEvent !== true,\n mouse: mouseEvent === true,\n keyboard: keyboardEvent === true,\n startTime: Date.now(),\n repeatCount: 0\n }\n\n const fn = () => {\n if (ctx.event === void 0) {\n return\n }\n\n if (ctx.event.repeatCount === 0) {\n ctx.event.evt = evt\n\n if (keyboardEvent === true) {\n ctx.event.keyCode = evt.keyCode\n }\n else {\n ctx.event.position = position(evt)\n }\n\n if (client.is.mobile !== true) {\n document.documentElement.style.cursor = 'pointer'\n document.body.classList.add('non-selectable')\n clearSelection()\n ctx.styleCleanup = styleCleanup\n }\n }\n\n ctx.event.duration = Date.now() - ctx.event.startTime\n ctx.event.repeatCount += 1\n\n ctx.handler(ctx.event)\n\n const index = durationsLast < ctx.event.repeatCount\n ? durationsLast\n : ctx.event.repeatCount\n\n ctx.timer = setTimeout(fn, durations[index])\n }\n\n if (durations[0] === 0) {\n fn()\n }\n else {\n ctx.timer = setTimeout(fn, durations[0])\n }\n },\n\n move (evt) {\n if (ctx.event !== void 0 && shouldEnd(evt, ctx.origin) === true) {\n clearTimeout(ctx.timer)\n }\n },\n\n end (evt) {\n if (ctx.event === void 0) {\n return\n }\n\n ctx.styleCleanup !== void 0 && ctx.styleCleanup(true)\n evt !== void 0 && ctx.event.repeatCount > 0 && stopAndPrevent(evt)\n\n cleanEvt(ctx, 'temp')\n clearTimeout(ctx.timer)\n\n ctx.event = void 0\n }\n }\n\n el.__qtouchrepeat = ctx\n\n modifiers.mouse === true && addEvt(ctx, 'main', [\n [ el, 'mousedown', 'mouseStart', `passive${modifiers.mouseCapture === true ? 'Capture' : ''}` ]\n ])\n\n client.has.touch === true && addEvt(ctx, 'main', [\n [ el, 'touchstart', 'touchStart', `passive${modifiers.capture === true ? 'Capture' : ''}` ],\n [ el, 'touchend', 'noop', 'notPassiveCapture' ]\n ])\n\n keyboard.length > 0 && addEvt(ctx, 'main', [\n [ el, 'keydown', 'keyboardStart', `notPassive${modifiers.keyCapture === true ? 'Capture' : ''}` ]\n ])\n },\n\n update (el, { oldValue, value }) {\n const ctx = el.__qtouchrepeat\n if (ctx !== void 0 && oldValue !== value) {\n typeof value !== 'function' && ctx.end()\n ctx.handler = value\n }\n },\n\n unbind (el) {\n if (el.__qtouchrepeat_destroyed === void 0) {\n destroy(el)\n }\n else {\n delete el.__qtouchrepeat_destroyed\n }\n }\n}\n","import Platform, { isSSR } from './Platform.js'\nimport { noop } from '../utils/event.js'\nimport { getBrand } from '../utils/colors.js'\n\nlet metaValue\n\nfunction getProp () {\n if (Platform.is.winphone) {\n return 'msapplication-navbutton-color'\n }\n if (Platform.is.safari) {\n return 'apple-mobile-web-app-status-bar-style'\n }\n // Chrome, Firefox OS, Opera, Vivaldi\n return 'theme-color'\n}\n\nfunction getMetaTag (v) {\n const els = document.getElementsByTagName('META')\n for (const i in els) {\n if (els[i].name === v) {\n return els[i]\n }\n }\n}\n\nfunction setColor (hexColor) {\n if (metaValue === void 0) {\n // cache it\n metaValue = getProp()\n }\n\n let metaTag = getMetaTag(metaValue)\n const newTag = metaTag === void 0\n\n if (newTag) {\n metaTag = document.createElement('meta')\n metaTag.setAttribute('name', metaValue)\n }\n\n metaTag.setAttribute('content', hexColor)\n\n if (newTag) {\n document.head.appendChild(metaTag)\n }\n}\n\nexport default {\n install ({ $q, cfg }) {\n this.set = isSSR === false && Platform.is.mobile === true && (\n Platform.is.nativeMobile === true ||\n Platform.is.winphone === true || Platform.is.safari === true ||\n Platform.is.webkit === true || Platform.is.vivaldi === true\n )\n ? hexColor => {\n const val = hexColor || getBrand('primary')\n\n if (Platform.is.nativeMobile === true && window.StatusBar) {\n window.StatusBar.backgroundColorByHexString(val)\n }\n else {\n setColor(val)\n }\n }\n : noop\n\n $q.addressbarColor = this\n\n cfg.addressbarColor && this.set(cfg.addressbarColor)\n }\n}\n","import Vue from 'vue'\n\nimport { isSSR, client } from './Platform.js'\n\nconst prefixes = {}\n\n// needed for consistency across browsers,\n// including IE11 which does not return anything\nfunction promisify (target, fn) {\n try {\n const res = target[fn]()\n return res === void 0\n ? Promise.resolve()\n : res\n }\n catch (err) {\n return Promise.reject(err)\n }\n}\n\nfunction checkActive (plugin) {\n plugin.activeEl = document.fullscreenElement ||\n document.mozFullScreenElement ||\n document.webkitFullscreenElement ||\n document.msFullscreenElement ||\n null\n\n plugin.isActive = plugin.activeEl !== null\n}\n\nexport default {\n isCapable: false,\n isActive: false,\n activeEl: null,\n\n request (target) {\n if (this.isCapable === true) {\n const el = target || document.documentElement\n\n if (el !== this.activeEl) {\n const q = client.is.ie === true && this.activeEl !== null && el.contains(this.activeEl)\n ? this.exit()\n : Promise.resolve()\n\n return q\n .then(() => promisify(el, prefixes.request))\n .catch(error => (\n this.activeEl !== null\n ? this.exit().then(() => promisify(el, prefixes.request))\n : Promise.reject(error)\n ))\n .then(res => {\n checkActive(this)\n return res\n })\n }\n }\n\n return this.__getErr()\n },\n\n exit () {\n return this.isCapable === true && this.isActive === true\n ? promisify(document, prefixes.exit).then(res => {\n checkActive(this)\n return this.isActive ? this.exit() : res\n })\n : this.__getErr()\n },\n\n toggle (target) {\n const el = target || document.documentElement\n\n return this.activeEl === el\n ? this.exit()\n : this.request(el)\n },\n\n install ({ $q }) {\n $q.fullscreen = this\n\n this.__getErr = () => Promise.resolve()\n\n if (isSSR === true) { return }\n\n prefixes.request = [\n 'requestFullscreen',\n 'msRequestFullscreen', 'mozRequestFullScreen', 'webkitRequestFullscreen'\n ].find(request => document.documentElement[request] !== void 0)\n\n this.isCapable = prefixes.request !== void 0\n\n if (this.isCapable === false) {\n // it means the browser does NOT support it\n this.__getErr = () => Promise.reject('Not capable')\n return\n }\n\n prefixes.exit = [\n 'exitFullscreen',\n 'msExitFullscreen', 'mozCancelFullScreen', 'webkitExitFullscreen'\n ].find(exit => document[exit])\n\n checkActive(this)\n\n ;[\n 'onfullscreenchange',\n 'onmsfullscreenchange', 'onwebkitfullscreenchange'\n ].forEach(evt => {\n document[evt] = () => {\n checkActive(this)\n }\n })\n\n Vue.util.defineReactive(this, 'isActive', this.isActive)\n Vue.util.defineReactive(this, 'activeEl', this.activeEl)\n }\n}\n","import Vue from 'vue'\n\nimport { isSSR } from '../plugins/Platform.js'\n\nconst ssrAPI = {\n onOk: () => ssrAPI,\n okCancel: () => ssrAPI,\n hide: () => ssrAPI,\n update: () => ssrAPI\n}\n\nexport function merge (target, source) {\n for (const key in source) {\n if (key !== 'spinner' && Object(source[key]) === source[key]) {\n target[key] = Object(target[key]) !== target[key]\n ? {}\n : { ...target[key] }\n\n merge(target[key], source[key])\n }\n else {\n target[key] = source[key]\n }\n }\n}\n\nlet appRoot\n\nfunction getDialogParent (parent, root) {\n if (parent !== void 0) { return parent }\n if (root !== void 0) { return root }\n\n if (appRoot === void 0) {\n const elRoot = document.getElementById('q-app')\n\n if (elRoot && elRoot.__vue__) {\n appRoot = elRoot.__vue__.$root\n }\n }\n\n return appRoot\n}\n\nexport default function (DefaultComponent) {\n return ({ className, class: klass, style, component, root, parent, ...props }) => {\n if (isSSR === true) { return ssrAPI }\n\n klass !== void 0 && (props.cardClass = klass)\n style !== void 0 && (props.cardStyle = style)\n\n const isCustom = component !== void 0\n let DialogComponent, attrs\n\n if (isCustom === true) {\n DialogComponent = component\n }\n else {\n DialogComponent = DefaultComponent\n attrs = props\n }\n\n const\n okFns = [],\n cancelFns = [],\n API = {\n onOk (fn) {\n okFns.push(fn)\n return API\n },\n onCancel (fn) {\n cancelFns.push(fn)\n return API\n },\n onDismiss (fn) {\n okFns.push(fn)\n cancelFns.push(fn)\n return API\n },\n hide () {\n vm.$refs.dialog.hide()\n return API\n },\n update ({ className, class: klass, style, component, root, parent, ...cfg }) {\n if (vm !== null) {\n klass !== void 0 && (cfg.cardClass = klass)\n style !== void 0 && (cfg.cardStyle = style)\n\n if (isCustom === true) {\n Object.assign(props, cfg)\n }\n else {\n merge(props, cfg)\n\n // need to change \"attrs\" reference to\n // actually reflect it in underlying component\n // when we force update it\n attrs = { ...props }\n }\n\n vm.$forceUpdate()\n }\n\n return API\n }\n }\n\n const node = document.createElement('div')\n document.body.appendChild(node)\n\n let emittedOK = false\n\n const on = {\n ok: data => {\n emittedOK = true\n okFns.forEach(fn => { fn(data) })\n },\n\n hide: () => {\n vm.$destroy()\n vm.$el.remove()\n vm = null\n\n if (emittedOK !== true) {\n cancelFns.forEach(fn => { fn() })\n }\n }\n }\n\n let vm = new Vue({\n name: 'QGlobalDialog',\n\n el: node,\n parent: getDialogParent(parent, root),\n\n render (h) {\n return h(DialogComponent, {\n ref: 'dialog',\n props,\n attrs,\n on\n })\n },\n\n mounted () {\n if (this.$refs.dialog !== void 0) {\n this.$refs.dialog.show()\n }\n else {\n on['hook:mounted'] = () => {\n this.$refs.dialog !== void 0 && this.$refs.dialog.show()\n }\n }\n }\n })\n\n return API\n }\n}\n","import Vue from 'vue'\n\nimport { isSSR } from './Platform.js'\n\nexport default {\n appVisible: false,\n\n install ({ $q }) {\n if (isSSR === true) {\n this.appVisible = $q.appVisible = true\n return\n }\n\n let prop, evt\n\n if (typeof document.hidden !== 'undefined') { // Opera 12.10 and Firefox 18 and later support\n prop = 'hidden'\n evt = 'visibilitychange'\n }\n else if (typeof document.msHidden !== 'undefined') {\n prop = 'msHidden'\n evt = 'msvisibilitychange'\n }\n else if (typeof document.webkitHidden !== 'undefined') {\n prop = 'webkitHidden'\n evt = 'webkitvisibilitychange'\n }\n\n const update = () => {\n this.appVisible = $q.appVisible = !document[prop]\n }\n\n update()\n\n if (evt && typeof document[prop] !== 'undefined') {\n Vue.util.defineReactive($q, 'appVisible', this.appVisible)\n document.addEventListener(evt, update, false)\n }\n }\n}\n","import Vue from 'vue'\n\nimport QDialog from '../dialog/QDialog.js'\n\nimport QIcon from '../icon/QIcon.js'\nimport QSeparator from '../separator/QSeparator.js'\n\nimport QCard from '../card/QCard.js'\nimport QCardSection from '../card/QCardSection.js'\n\nimport QItem from '../item/QItem.js'\nimport QItemSection from '../item/QItemSection.js'\n\nimport DarkMixin from '../../mixins/dark.js'\nimport AttrsMixin from '../../mixins/attrs.js'\n\nimport cache from '../../utils/cache.js'\n\nexport default Vue.extend({\n name: 'BottomSheetPlugin',\n\n mixins: [ DarkMixin, AttrsMixin ],\n\n inheritAttrs: false,\n\n props: {\n title: String,\n message: String,\n actions: Array,\n\n grid: Boolean,\n\n cardClass: [String, Array, Object],\n cardStyle: [String, Array, Object]\n },\n\n computed: {\n dialogProps () {\n return {\n ...this.qAttrs,\n position: 'bottom'\n }\n }\n },\n\n methods: {\n show () {\n this.$refs.dialog.show()\n },\n\n hide () {\n this.$refs.dialog.hide()\n },\n\n onOk (action) {\n this.$emit('ok', action)\n this.hide()\n },\n\n __getGrid (h) {\n return this.actions.map(action => {\n const img = action.avatar || action.img\n\n return action.label === void 0\n ? h(QSeparator, {\n staticClass: 'col-all',\n props: { dark: this.isDark }\n })\n : h('div', {\n staticClass: 'q-bottom-sheet__item q-hoverable q-focusable cursor-pointer relative-position',\n class: action.classes,\n attrs: { tabindex: 0 },\n on: {\n click: () => this.onOk(action),\n keyup: e => {\n e.keyCode === 13 && this.onOk(action)\n }\n }\n }, [\n h('div', { staticClass: 'q-focus-helper' }),\n\n action.icon\n ? h(QIcon, { props: { name: action.icon, color: action.color } })\n : (\n img\n ? h('img', {\n attrs: { src: img },\n staticClass: action.avatar ? 'q-bottom-sheet__avatar' : null\n })\n : h('div', { staticClass: 'q-bottom-sheet__empty-icon' })\n ),\n\n h('div', [ action.label ])\n ])\n })\n },\n\n __getList (h) {\n return this.actions.map(action => {\n const img = action.avatar || action.img\n\n return action.label === void 0\n ? h(QSeparator, { props: { spaced: true, dark: this.isDark } })\n : h(QItem, {\n staticClass: 'q-bottom-sheet__item',\n class: action.classes,\n props: {\n tabindex: 0,\n clickable: true,\n dark: this.isDark\n },\n on: {\n click: () => this.onOk(action),\n keyup: e => {\n e.keyCode === 13 && this.onOk(action)\n }\n }\n }, [\n h(QItemSection, { props: { avatar: true } }, [\n action.icon\n ? h(QIcon, { props: { name: action.icon, color: action.color } })\n : (\n img\n ? h('img', {\n attrs: { src: img },\n staticClass: action.avatar ? 'q-bottom-sheet__avatar' : null\n })\n : null\n )\n ]),\n h(QItemSection, [ action.label ])\n ])\n })\n }\n },\n\n render (h) {\n const child = []\n\n this.title && child.push(\n h(QCardSection, {\n staticClass: 'q-dialog__title'\n }, [ this.title ])\n )\n\n this.message && child.push(\n h(QCardSection, {\n staticClass: 'q-dialog__message'\n }, [ this.message ])\n )\n\n child.push(\n this.grid === true\n ? h('div', {\n staticClass: 'row items-stretch justify-start'\n }, this.__getGrid(h))\n : h('div', this.__getList(h))\n )\n\n return h(QDialog, {\n ref: 'dialog',\n props: this.dialogProps,\n on: cache(this, 'hide', {\n hide: () => {\n this.$emit('hide')\n }\n })\n }, [\n h(QCard, {\n staticClass: `q-bottom-sheet q-bottom-sheet--${this.grid === true ? 'grid' : 'list'}` +\n (this.isDark === true ? ' q-bottom-sheet--dark q-dark' : ''),\n style: this.cardStyle,\n class: this.cardClass\n }, child)\n ])\n }\n})\n","import Vue from 'vue'\n\nimport { isSSR, fromSSR } from './Platform.js'\nimport extend from '../utils/extend.js'\n\nlet updateId, ssrTakeover\n\nfunction normalize (meta) {\n if (meta.title) {\n meta.title = meta.titleTemplate\n ? meta.titleTemplate(meta.title)\n : meta.title\n delete meta.titleTemplate\n }\n\n ;[['meta', 'content'], ['link', 'href']].forEach(type => {\n const\n metaType = meta[type[0]],\n metaProp = type[1]\n\n for (const name in metaType) {\n const metaLink = metaType[name]\n\n if (metaLink.template) {\n if (Object.keys(metaLink).length === 1) {\n delete metaType[name]\n }\n else {\n metaLink[metaProp] = metaLink.template(metaLink[metaProp] || '')\n delete metaLink.template\n }\n }\n }\n })\n}\n\nfunction changed (old, def) {\n if (Object.keys(old).length !== Object.keys(def).length) {\n return true\n }\n for (const key in old) {\n if (old[key] !== def[key]) {\n return true\n }\n }\n}\n\nfunction bodyFilter (name) {\n return ['class', 'style'].includes(name) === false\n}\n\nfunction htmlFilter (name) {\n return ['lang', 'dir'].includes(name) === false\n}\n\nfunction diff (meta, other) {\n const add = {}, remove = {}\n\n if (meta === void 0) {\n return { add: other, remove }\n }\n\n if (meta.title !== other.title) {\n add.title = other.title\n }\n\n ;['meta', 'link', 'script', 'htmlAttr', 'bodyAttr'].forEach(type => {\n const old = meta[type], cur = other[type]\n remove[type] = []\n\n if (old === void 0 || old === null) {\n add[type] = cur\n return\n }\n\n add[type] = {}\n\n for (const key in old) {\n if (cur.hasOwnProperty(key) === false) {\n remove[type].push(key)\n }\n }\n for (const key in cur) {\n if (old.hasOwnProperty(key) === false) {\n add[type][key] = cur[key]\n }\n else if (changed(old[key], cur[key]) === true) {\n remove[type].push(key)\n add[type][key] = cur[key]\n }\n }\n })\n\n return { add, remove }\n}\n\nfunction apply ({ add, remove }) {\n if (add.title) {\n document.title = add.title\n }\n\n if (Object.keys(remove).length > 0) {\n ['meta', 'link', 'script'].forEach(type => {\n remove[type].forEach(name => {\n document.head.querySelector(`${type}[data-qmeta=\"${name}\"]`).remove()\n })\n })\n remove.htmlAttr.filter(htmlFilter).forEach(name => {\n document.documentElement.removeAttribute(name)\n })\n remove.bodyAttr.filter(bodyFilter).forEach(name => {\n document.body.removeAttribute(name)\n })\n }\n\n ;['meta', 'link', 'script'].forEach(type => {\n const metaType = add[type]\n\n for (const name in metaType) {\n const tag = document.createElement(type)\n for (const att in metaType[name]) {\n if (att !== 'innerHTML') {\n tag.setAttribute(att, metaType[name][att])\n }\n }\n tag.setAttribute('data-qmeta', name)\n if (type === 'script') {\n tag.innerHTML = metaType[name].innerHTML || ''\n }\n document.head.appendChild(tag)\n }\n })\n Object.keys(add.htmlAttr).filter(htmlFilter).forEach(name => {\n document.documentElement.setAttribute(name, add.htmlAttr[name] || '')\n })\n Object.keys(add.bodyAttr).filter(bodyFilter).forEach(name => {\n document.body.setAttribute(name, add.bodyAttr[name] || '')\n })\n}\n\nfunction parseMeta (component, meta) {\n if (component._inactive === true) { return }\n\n // if it has meta\n if (hasMeta(component) === true) {\n extend(true, meta, component.__qMeta)\n\n if (component.$options.meta.stopPropagation === true) {\n return\n }\n }\n\n component.$children.forEach(child => {\n parseMeta(child, meta)\n })\n}\n\nfunction updateClient () {\n if (ssrTakeover === true) {\n ssrTakeover = false\n this.$root.__currentMeta = window.__Q_META__\n }\n\n const meta = {\n title: '',\n titleTemplate: null,\n meta: {},\n link: {},\n script: {},\n htmlAttr: {},\n bodyAttr: {}\n }\n parseMeta(this.$root, meta)\n normalize(meta)\n\n apply(diff(this.$root.__currentMeta, meta))\n this.$root.__currentMeta = meta\n}\n\nfunction getAttr (seed) {\n return att => {\n const val = seed[att]\n return att + (val !== true && val !== void 0 ? `=\"${val}\"` : '')\n }\n}\n\nfunction getHead (meta) {\n let output = ''\n if (meta.title) {\n output += `