{"version":3,"sources":["webpack:///./src/components/AppBar.vue?9db9","webpack:///../../../src/mixins/registrable/index.ts","webpack:///../../../src/mixins/applicationable/index.ts","webpack:///./node_modules/@babel/runtime/helpers/objectWithoutProperties.js","webpack:///../../../src/components/VThemeProvider/VThemeProvider.ts","webpack:///./node_modules/core-js/modules/es.string.ends-with.js","webpack:///./node_modules/@babel/runtime/helpers/defineProperty.js","webpack:///./node_modules/core-js/modules/es.array.splice.js","webpack:///./src/assets/Eastman_FastER_Graphic.svg","webpack:///../../../src/components/VResponsive/VResponsive.ts","webpack:///../../../src/components/VResponsive/index.ts","webpack:///../../../src/components/VImg/VImg.ts","webpack:///../../../src/mixins/sizeable/index.ts","webpack:///./node_modules/core-js/modules/es.array.find-index.js","webpack:///./node_modules/core-js/modules/es.string.small.js","webpack:///../../../src/directives/resize/index.ts","webpack:///./src/components/AppBar.vue?0867","webpack:///src/components/AppBar.vue","webpack:///./src/components/AppBar.vue?f6e4","webpack:///../../../src/components/VToolbar/VToolbar.ts","webpack:///../../../src/directives/scroll/index.ts","webpack:///../../../src/mixins/scrollable/index.ts","webpack:///../../../src/components/VAppBar/VAppBar.ts","webpack:///../../../src/components/VAvatar/VAvatar.ts","webpack:///../../../src/components/VList/VList.ts","webpack:///../../../src/components/VList/VListItem.ts","webpack:///../../../src/components/VMenu/VMenu.ts","webpack:///./src/components/AppBar.vue","webpack:///./node_modules/@babel/runtime/helpers/objectSpread2.js","webpack:///../../../src/mixins/returnable/index.ts","webpack:///./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js","webpack:///../../../src/mixins/menuable/index.ts"],"names":["generateWarning","child","defaultImpl","register","unregister","parent","name","inject","default","events","props","app","Boolean","computed","applicationProperty","watch","prev","this","removeApplication","activated","created","i","length","mounted","deactivated","destroyed","methods","callUpdate","force","updateApplication","objectWithoutPropertiesLoose","require","_objectWithoutProperties","source","excluded","key","target","Object","getOwnPropertySymbols","sourceSymbolKeys","indexOf","prototype","propertyIsEnumerable","call","module","exports","__esModule","root","isDark","render","$slots","node","$","getOwnPropertyDescriptor","f","toLength","toString","notARegExp","requireObjectCoercible","correctIsRegExpLogic","IS_PURE","$endsWith","endsWith","min","Math","CORRECT_IS_REGEXP_LOGIC","MDN_POLYFILL_BUG","descriptor","String","writable","proto","forced","searchString","that","endPosition","arguments","undefined","len","end","search","slice","_defineProperty","obj","value","defineProperty","enumerable","configurable","toAbsoluteIndex","toIntegerOrInfinity","lengthOfArrayLike","toObject","arraySpeciesCreate","createProperty","arrayMethodHasSpeciesSupport","HAS_SPECIES_SUPPORT","max","MAX_SAFE_INTEGER","MAXIMUM_ALLOWED_LENGTH_EXCEEDED","splice","start","deleteCount","insertCount","actualDeleteCount","A","k","from","to","O","actualStart","argumentsLength","TypeError","functional","_h","_vm","_c","data","_v","children","classNames","class","staticClass","style","staticStyle","attrs","rest","assign","concat","mixins","aspectRatio","contentClass","computedAspectRatio","Number","aspectStyle","paddingBottom","__cachedSizer","$createElement","genContent","h","on","$listeners","hasIntersect","window","directives","intersect","alt","contain","eager","gradient","lazySrc","options","type","rootMargin","threshold","position","sizes","src","srcset","transition","currentSrc","image","isLoading","calculatedAspectRatio","naturalWidth","hasError","normalisedSrc","aspect","__cachedImage","backgroundImage","backgroundPosition","mode","loadImage","init","lazyImg","onLoad","startsWith","naturalHeight","onError","getSrc","err","console","pollForSize","timeout","poll","img","setTimeout","content","width","__genPlaceholder","placeholder","appear","mergeData","role","modifiers","once","handler","large","small","xLarge","xSmall","medium","sizeableClasses","$findIndex","findIndex","addToUnscopables","FIND_INDEX","SKIPS_HOLES","Array","callbackfn","createHTML","forcedStringHTMLMethod","inserted","callback","binding","passive","el","unbind","Resize","_self","onLogoClick","scopedSlots","_u","fn","ref","_g","_b","profileImage","_s","currentUserInfo","displayName","onLogOutClick","$t","$event","onLogInClick","staticRenderFns","components","FastERLogo","appName","isAuthenticated","$msal","drawer","store","signIn","signOut","$router","currentRoute","path","push","VSheet","absolute","bottom","collapse","dense","extended","extensionHeight","flat","floating","prominent","short","tag","isExtended","computedHeight","height","parseInt","isCollapsed","isNaN","computedContentHeight","isProminent","$vuetify","breakpoint","classes","styles","breakingProps","original","replacement","genBackground","$scopedSlots","VImg","genExtension","setBackgroundColor","self","document","Scroll","scrollTarget","scrollThreshold","currentScroll","currentThreshold","isActive","isScrollingUp","previousScroll","savedScroll","canScroll","computedScrollThreshold","onScroll","thresholdMet","baseMixins","provide","VAppBar","clippedLeft","clippedRight","collapseOnScroll","elevateOnScroll","fadeImgOnScroll","hideOnScroll","invertedScroll","scrollOffScreen","shrinkOnScroll","scrollRatio","computedFontSize","computedLeft","application","computedMarginTop","computedOpacity","computedOriginalHeight","computedRight","computedTransform","hideShadow","fontSize","marginTop","transform","left","right","val","opacity","arg","size","roundedClasses","minWidth","measurableStyles","isInList","list","isInMenu","isInNav","disabled","expand","nav","rounded","subheader","threeLine","twoLine","groups","index","g","listClick","group","attrs$","Ripple","isInGroup","inheritAttrs","activeClass","listItemGroup","inactive","link","selectable","proxyClass","isClickable","themeClasses","$attrs","hasOwnProperty","click","e","$el","blur","genAttrs","tabindex","keydown","active","toggle","setTextColor","ClickOutside","theme","auto","closeOnClick","closeOnContentClick","disableKeys","maxHeight","offsetX","offsetY","openOnClick","openOnHover","origin","calculatedTopAuto","defaultOffset","hasJustFocused","listIndex","resizeTimeout","selectedIndex","tiles","activeTile","calculatedLeft","menuWidth","dimensions","parseFloat","calcXOverflow","calcLeft","calculatedMaxHeight","calculatedMaxWidth","calculatedMinWidth","activator","pageWidth","calculatedTop","top","calcYOverflow","hasClickableTiles","find","tile","maxWidth","transformOrigin","zIndex","activeZIndex","isContentActive","next","scrollTop","$refs","contentHeight","appOffset","duration","container","classList","remove","activate","requestAnimationFrame","calcScrollPosition","maxScrollTop","calcLeftAuto","calcTopAuto","tileDistanceFromMenuTop","firstTileOffsetTop","computedTop","changeListIndex","closeConditional","contains","genActivatorAttributes","attributes","id","genActivatorListeners","listeners","genTransition","genDirectives","include","menuable__content__active","onKeyDown","getTiles","querySelectorAll","mouseEnterHandler","mouseLeaveHandler","nextTile","prevTile","lastTile","firstTile","onResize","clearTimeout","attach","showLazyContent","light","dark","component","VAvatar","VIcon","VList","VListItem","VMenu","VSpacer","ownKeys","object","enumerableOnly","keys","symbols","filter","sym","apply","_objectSpread2","forEach","getOwnPropertyDescriptors","defineProperties","returnValue","originalValue","save","_objectWithoutPropertiesLoose","sourceKeys","allowOverflow","nudgeBottom","nudgeLeft","nudgeRight","nudgeTop","nudgeWidth","offsetOverflow","positionX","positionY","activatorNode","absoluteX","absoluteY","activatedBy","activatorFixed","offsetTop","scrollHeight","offsetLeft","relativeYOffset","hasWindow","inputActivator","pageYOffset","stackClass","stackMinZIndex","a","c","activatorLeft","hasActivator","absoluteYOffset","beforeMount","beforeDestroy","absolutePosition","calcTop","xOverflow","documentHeight","toTop","totalHeight","isOverflowing","callActivate","callDeactivate","checkForPageYOffset","checkActivatorFixed","deactivate","onClick","getInnerHeight","getOffsetLeft","getOffsetTop","getRoundedBoundedClientRect","rect","measure","sneakPeek","cb","startTransition","Promise","resolve","updateDimensions","offsetRect"],"mappings":"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","file":"js/chunk-296da67c.4ce403f2.js","sourcesContent":["export * from \"-!../../node_modules/mini-css-extract-plugin/dist/loader.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/sass-loader/dist/cjs.js??ref--8-oneOf-1-3!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppBar.vue?vue&type=style&index=0&id=06f5b304&lang=scss&scoped=true&\"","import Vue from 'vue'\nimport { VueConstructor } from 'vue/types/vue'\nimport { consoleWarn } from '../../util/console'\n\nfunction generateWarning (child: string, parent: string) {\n return () => consoleWarn(`The ${child} component must be used inside a ${parent}`)\n}\n\nexport type Registrable = VueConstructor : {\n register (...props: any[]): void\n unregister (self: any): void\n }\n}>\n\nexport function inject<\n T extends string, C extends VueConstructor | null = null\n> (namespace: T, child?: string, parent?: string): Registrable {\n const defaultImpl = child && parent ? {\n register: generateWarning(child, parent),\n unregister: generateWarning(child, parent),\n } : null\n\n return Vue.extend({\n name: 'registrable-inject',\n\n inject: {\n [namespace]: {\n default: defaultImpl,\n },\n },\n })\n}\n\nexport function provide (namespace: string, self = false) {\n return Vue.extend({\n name: 'registrable-provide',\n\n provide (): object {\n return {\n [namespace]: self ? this : {\n register: (this as any).register,\n unregister: (this as any).unregister,\n },\n }\n },\n })\n}\n","import { factory as PositionableFactory } from '../positionable'\nimport { TargetProp } from 'vuetify/types/services/application'\n\n// Util\nimport mixins from '../../util/mixins'\n\nexport default function applicationable (value: TargetProp, events: string[] = []) {\n /* @vue/component */\n return mixins(PositionableFactory(['absolute', 'fixed'])).extend({\n name: 'applicationable',\n\n props: {\n app: Boolean,\n },\n\n computed: {\n applicationProperty (): TargetProp {\n return value\n },\n },\n\n watch: {\n // If previous value was app\n // reset the provided prop\n app (x: boolean, prev: boolean) {\n prev\n ? this.removeApplication(true)\n : this.callUpdate()\n },\n applicationProperty (newVal, oldVal) {\n this.$vuetify.application.unregister(this._uid, oldVal)\n },\n },\n\n activated () {\n this.callUpdate()\n },\n\n created () {\n for (let i = 0, length = events.length; i < length; i++) {\n this.$watch(events[i], this.callUpdate)\n }\n this.callUpdate()\n },\n\n mounted () {\n this.callUpdate()\n },\n\n deactivated () {\n this.removeApplication()\n },\n\n destroyed () {\n this.removeApplication()\n },\n\n methods: {\n callUpdate () {\n if (!this.app) return\n\n this.$vuetify.application.register(\n this._uid,\n this.applicationProperty,\n this.updateApplication()\n )\n },\n removeApplication (force = false) {\n if (!force && !this.app) return\n\n this.$vuetify.application.unregister(\n this._uid,\n this.applicationProperty\n )\n },\n updateApplication: () => 0,\n },\n })\n}\n","var objectWithoutPropertiesLoose = require(\"./objectWithoutPropertiesLoose.js\");\n\nfunction _objectWithoutProperties(source, excluded) {\n if (source == null) return {};\n var target = objectWithoutPropertiesLoose(source, excluded);\n var key, i;\n\n if (Object.getOwnPropertySymbols) {\n var sourceSymbolKeys = Object.getOwnPropertySymbols(source);\n\n for (i = 0; i < sourceSymbolKeys.length; i++) {\n key = sourceSymbolKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue;\n target[key] = source[key];\n }\n }\n\n return target;\n}\n\nmodule.exports = _objectWithoutProperties;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","// Mixins\nimport Themeable from '../../mixins/themeable'\n\n// Types\nimport { VNode } from 'vue'\n\n/* @vue/component */\nexport default Themeable.extend({\n name: 'v-theme-provider',\n\n props: { root: Boolean },\n\n computed: {\n isDark (): boolean {\n return this.root\n ? this.rootIsDark\n : Themeable.options.computed.isDark.call(this)\n },\n },\n\n render (): VNode {\n /* istanbul ignore next */\n return (\n this.$slots.default! &&\n this.$slots.default!.find(node => !node.isComment && node.text !== ' ')!\n )\n },\n})\n","'use strict';\nvar $ = require('../internals/export');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar toLength = require('../internals/to-length');\nvar toString = require('../internals/to-string');\nvar notARegExp = require('../internals/not-a-regexp');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\nvar correctIsRegExpLogic = require('../internals/correct-is-regexp-logic');\nvar IS_PURE = require('../internals/is-pure');\n\n// eslint-disable-next-line es/no-string-prototype-endswith -- safe\nvar $endsWith = ''.endsWith;\nvar min = Math.min;\n\nvar CORRECT_IS_REGEXP_LOGIC = correctIsRegExpLogic('endsWith');\n// https://github.com/zloirock/core-js/pull/702\nvar MDN_POLYFILL_BUG = !IS_PURE && !CORRECT_IS_REGEXP_LOGIC && !!function () {\n var descriptor = getOwnPropertyDescriptor(String.prototype, 'endsWith');\n return descriptor && !descriptor.writable;\n}();\n\n// `String.prototype.endsWith` method\n// https://tc39.es/ecma262/#sec-string.prototype.endswith\n$({ target: 'String', proto: true, forced: !MDN_POLYFILL_BUG && !CORRECT_IS_REGEXP_LOGIC }, {\n endsWith: function endsWith(searchString /* , endPosition = @length */) {\n var that = toString(requireObjectCoercible(this));\n notARegExp(searchString);\n var endPosition = arguments.length > 1 ? arguments[1] : undefined;\n var len = that.length;\n var end = endPosition === undefined ? len : min(toLength(endPosition), len);\n var search = toString(searchString);\n return $endsWith\n ? $endsWith.call(that, search, end)\n : that.slice(end - search.length, end) === search;\n }\n});\n","function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nmodule.exports = _defineProperty;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","'use strict';\nvar $ = require('../internals/export');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\nvar toIntegerOrInfinity = require('../internals/to-integer-or-infinity');\nvar lengthOfArrayLike = require('../internals/length-of-array-like');\nvar toObject = require('../internals/to-object');\nvar arraySpeciesCreate = require('../internals/array-species-create');\nvar createProperty = require('../internals/create-property');\nvar arrayMethodHasSpeciesSupport = require('../internals/array-method-has-species-support');\n\nvar HAS_SPECIES_SUPPORT = arrayMethodHasSpeciesSupport('splice');\n\nvar max = Math.max;\nvar min = Math.min;\nvar MAX_SAFE_INTEGER = 0x1FFFFFFFFFFFFF;\nvar MAXIMUM_ALLOWED_LENGTH_EXCEEDED = 'Maximum allowed length exceeded';\n\n// `Array.prototype.splice` method\n// https://tc39.es/ecma262/#sec-array.prototype.splice\n// with adding support of @@species\n$({ target: 'Array', proto: true, forced: !HAS_SPECIES_SUPPORT }, {\n splice: function splice(start, deleteCount /* , ...items */) {\n var O = toObject(this);\n var len = lengthOfArrayLike(O);\n var actualStart = toAbsoluteIndex(start, len);\n var argumentsLength = arguments.length;\n var insertCount, actualDeleteCount, A, k, from, to;\n if (argumentsLength === 0) {\n insertCount = actualDeleteCount = 0;\n } else if (argumentsLength === 1) {\n insertCount = 0;\n actualDeleteCount = len - actualStart;\n } else {\n insertCount = argumentsLength - 2;\n actualDeleteCount = min(max(toIntegerOrInfinity(deleteCount), 0), len - actualStart);\n }\n if (len + insertCount - actualDeleteCount > MAX_SAFE_INTEGER) {\n throw TypeError(MAXIMUM_ALLOWED_LENGTH_EXCEEDED);\n }\n A = arraySpeciesCreate(O, actualDeleteCount);\n for (k = 0; k < actualDeleteCount; k++) {\n from = actualStart + k;\n if (from in O) createProperty(A, k, O[from]);\n }\n A.length = actualDeleteCount;\n if (insertCount < actualDeleteCount) {\n for (k = actualStart; k < len - actualDeleteCount; k++) {\n from = k + actualDeleteCount;\n to = k + insertCount;\n if (from in O) O[to] = O[from];\n else delete O[to];\n }\n for (k = len; k > len - actualDeleteCount + insertCount; k--) delete O[k - 1];\n } else if (insertCount > actualDeleteCount) {\n for (k = len - actualDeleteCount; k > actualStart; k--) {\n from = k + actualDeleteCount - 1;\n to = k + insertCount - 1;\n if (from in O) O[to] = O[from];\n else delete O[to];\n }\n }\n for (k = 0; k < insertCount; k++) {\n O[k + actualStart] = arguments[k + 2];\n }\n O.length = len - actualDeleteCount + insertCount;\n return A;\n }\n});\n","\n module.exports = {\n functional: true,\n render(_h, _vm) {\n const { _c, _v, data, children = [] } = _vm;\n\n const {\n class: classNames,\n staticClass,\n style,\n staticStyle,\n attrs = {},\n ...rest\n } = data;\n\n return _c(\n 'svg',\n {\n class: [classNames,staticClass],\n style: [style,staticStyle],\n attrs: Object.assign({\"id\":\"Layer_1\",\"data-name\":\"Layer 1\",\"xmlns\":\"http://www.w3.org/2000/svg\",\"viewBox\":\"0 0 318 70\"}, attrs),\n ...rest,\n },\n children.concat([_c('defs'),_c('path',{staticClass:\"cls-1\",attrs:{\"d\":\"M2.75 2.67h15.62l-1.18 3.09H6.38V17H17v3.09H6.38v11.85h12.28V35H2.75zM37.72 32.43a10 10 0 01-7 3.1c-4.23 0-7.37-2.71-7.37-7.18a6.53 6.53 0 013.93-6.28 14.11 14.11 0 015.8-1.13l4.42-.15v-1.47c0-3.54-2.11-5.11-5-5.11a11.75 11.75 0 00-6.39 1.91l-1.37-2.55a15.16 15.16 0 018.15-2.36c4.81 0 8.25 2.36 8.25 7.91v8c0 4.56.15 6.73.44 7.9h-3.17zm-4.27-8.74a9.75 9.75 0 00-4.37.88 4 4 0 00-2 3.59 4.08 4.08 0 004.33 4.32c2.9 0 5.06-1.92 6.14-3v-5.94zM46.62 30.76a10.47 10.47 0 005.79 1.72c2.7 0 5-1.08 5-3.73 0-5.06-10.85-3.44-10.85-11.15 0-3.54 2.7-6.39 7.86-6.39a16.12 16.12 0 015.74 1.08v3.2a13.41 13.41 0 00-5.6-1.28c-2.21 0-4.47.73-4.47 3.24 0 5.16 11 3.39 11 11.25 0 4.61-3.83 6.83-8.6 6.83a13.26 13.26 0 01-7-2zM67.79 30.12V14.75h-3.93V11.8h3.93V6.55l3.58-1.18v6.43h6.93l-1.08 2.95h-5.85v14.78c0 2 .84 2.9 2.41 2.9a6.8 6.8 0 003.78-1.28l1.28 2.56A10.22 10.22 0 0173 35.53c-3.35 0-5.21-1.97-5.21-5.41zM83 11.8h3l.44 3c2.46-2.11 5.11-3.59 8.06-3.59a6.14 6.14 0 016 4c2.75-2.46 5.7-4 8.65-4 3.73 0 6.87 2.41 6.87 8.16V35h-3.58V20.5c0-3.39-.79-6.05-4.08-6.05-2.51 0-4.91 1.53-7.12 3.44 0 .49.1 1 .1 1.43V35H97.8V20.54c0-3.43-.79-6.09-4.08-6.09-2.55 0-4.91 1.53-7.07 3.44V35H83zM135.43 32.43a10 10 0 01-7 3.1c-4.22 0-7.36-2.71-7.36-7.18a6.54 6.54 0 013.93-6.28 14.15 14.15 0 015.8-1.13l4.42-.15v-1.47c0-3.54-2.11-5.11-5-5.11a11.71 11.71 0 00-6.38 1.91l-1.38-2.55a15.16 15.16 0 018.15-2.36c4.82 0 8.26 2.36 8.26 7.91v8c0 4.56.14 6.73.44 7.9h-3.19zm-4.28-8.74a9.75 9.75 0 00-4.37.88 4 4 0 00-2 3.59 4.07 4.07 0 004.32 4.32c2.9 0 5.06-1.92 6.14-3v-5.94zM145.06 11.8h3l.44 3c2.56-2.16 5.16-3.59 8.16-3.59 3.63 0 6.87 2.31 6.87 8.16V35H160V20.59c0-3.48-.89-6.14-4.18-6.14-2.6 0-5 1.58-7.12 3.49V35h-3.63zM180.44 2.15h19.16l-1.8 5.79h-10.53v7.58h10.38v5.74h-10.38V35h-6.83zM214.32 32.89a9.52 9.52 0 01-6.69 2.64c-4.54 0-7.88-3.09-7.88-7.63a6.71 6.71 0 013.94-6.44 14.08 14.08 0 016.14-1.39l3.94-.15v-.5c0-2.5-1.75-3.5-4.34-3.5a12.64 12.64 0 00-6.09 1.55l-2.19-4.34a20.25 20.25 0 019.48-2.3c6.78 0 9.88 3.05 9.88 8.79V29.7a20.61 20.61 0 00.4 5.33h-5.59zm-3.44-8.48a6.81 6.81 0 00-3.15.69 2.56 2.56 0 00-1.24 2.35c0 1.85 1.24 2.84 3.24 2.84a7.1 7.1 0 004-1.29v-4.74zM225.05 28.25a12.47 12.47 0 006.63 2c2.25 0 3.85-.54 3.85-2 0-3.59-11.13-2.2-11.13-10.08 0-4.34 3.59-7.34 9.28-7.34a20.94 20.94 0 017.24 1.2v5.64a17.5 17.5 0 00-6.94-1.6c-1.95 0-3 .55-3 1.75 0 3.24 11.12 1.95 11.12 10.28 0 5.34-4.74 7.43-9.88 7.43a17.86 17.86 0 01-9.22-2.39zM248.15 28.9V16.67h-4.34v-5.24h4.34V5.89L254.94 4v7.48h7.13l-1.54 5.24h-5.59V27.2c0 2.2.7 2.94 2.24 2.94a6.57 6.57 0 003.5-1l1.94 4.59a14.3 14.3 0 01-7.18 1.84c-4.44-.04-7.29-2.57-7.29-6.67zM266.87 2.15h19.76l-1.95 6.44H274.5v6.64h10.33v6.43H274.5v6.94h12V35h-19.63zM290.12 2.15h10.58a18.19 18.19 0 016.79 1.1 8.64 8.64 0 015.58 8.58 8.64 8.64 0 01-6.28 8.34v.09c1 .6 2.49 2.35 4.19 5.44l5.19 9.3h-8.68l-4-7.48c-1.69-3.16-2.79-4.36-3.49-4.52h-2.2v12h-7.63zm10 14.72a5.87 5.87 0 003-.65 4 4 0 002-3.64 4.11 4.11 0 00-2.3-3.79 5.84 5.84 0 00-2.64-.5h-2.45v8.58zM1.75 57.68a5.59 5.59 0 015.62-5.92 5.85 5.85 0 012.83.7v1.8a4.68 4.68 0 00-2.67-.79c-2.27 0-3.65 1.75-3.65 4.09 0 2.6 1.38 4.07 3.51 4.07a5.15 5.15 0 002.61-.77l.61 1.45a6.53 6.53 0 01-3.53 1c-3.43.03-5.33-2.5-5.33-5.63zM11.86 57.56c0-3.27 2.08-5.8 5.26-5.8s5.24 2.53 5.24 5.8-2.08 5.78-5.26 5.78-5.24-2.53-5.24-5.78zm8.37 0c0-2.39-1.17-4.09-3.11-4.09S14 55.17 14 57.56s1.17 4.07 3.11 4.07 3.12-1.71 3.12-4.07zM31 61.91a4.74 4.74 0 01-3.3 1.43 3.34 3.34 0 01-3.56-3.46 3.14 3.14 0 011.87-3 7.09 7.09 0 012.79-.56l2.06-.07v-.58a2.06 2.06 0 00-2.3-2.25 5.7 5.7 0 00-3 .87l-.73-1.43a7.8 7.8 0 014-1.1c2.5 0 4.09 1.19 4.09 3.86v4a15.71 15.71 0 00.22 3.46H31.3zm-2-4.12a4.66 4.66 0 00-1.94.4 1.7 1.7 0 00-.86 1.57 1.78 1.78 0 001.92 1.89 3.89 3.89 0 002.69-1.26v-2.67zM36.63 60.62V53.7h-1.89V52h1.89v-2.49l2.06-.65V52H42l-.56 1.66h-2.75v6.53c0 1 .4 1.4 1.12 1.4a3.42 3.42 0 001.78-.58l.68 1.42a5.26 5.26 0 01-2.93.87 2.48 2.48 0 01-2.71-2.68zM44.05 48.44a1.27 1.27 0 011.31-1.31 1.29 1.29 0 011.35 1.31 1.32 1.32 0 01-1.35 1.33 1.28 1.28 0 01-1.31-1.33zm.28 3.6h2.05V63.1h-2.05zM49.5 52h1.73l.25 1.36a6.05 6.05 0 013.84-1.64c1.75 0 3.37 1 3.37 3.93v7.45h-2.06v-6.73c0-1.57-.37-2.79-1.89-2.79a5.2 5.2 0 00-3.19 1.5v8h-2zM60.54 65.44a3.09 3.09 0 012-2.78 1.56 1.56 0 01-.77-1.38A2.86 2.86 0 0163 59.13a3.86 3.86 0 01-1.78-3.37 4 4 0 014.21-4 5 5 0 012.13.42c.12.07.16.07.26 0a3.17 3.17 0 012.41-.91 4.61 4.61 0 01.68.07l-.47 1.54a3.92 3.92 0 00-.68-.07 1.78 1.78 0 00-1 .26A3.91 3.91 0 0170 55.85c0 2.41-1.77 4-4.37 4a4.25 4.25 0 01-1.4-.21 1.64 1.64 0 00-.52 1.12c0 2.13 7.3.21 7.3 4.35 0 2.06-2 3.51-5.5 3.51-3.06.03-4.97-1.19-4.97-3.18zm8.39-.09c0-1.89-3.32-1.52-5.19-2.13a2.37 2.37 0 00-1.31 1.87c0 1.27 1.31 2 3.25 2 2.13.01 3.25-.76 3.25-1.74zm-1-9.52a2.28 2.28 0 00-2.34-2.41 2.21 2.21 0 00-2.32 2.39 2.26 2.26 0 002.34 2.43 2.21 2.21 0 002.32-2.41zM72.63 60.81a5.5 5.5 0 002.85.84c1.24 0 2.25-.44 2.25-1.59 0-2.24-5.19-1.49-5.19-5.17 0-1.75 1.38-3.13 3.88-3.13a8.1 8.1 0 012.9.54v1.78a6.69 6.69 0 00-2.81-.64c-1 0-1.94.31-1.94 1.36 0 2.25 5.19 1.45 5.19 5.24 0 2.27-1.91 3.3-4.21 3.3a6.85 6.85 0 01-3.58-1zM87.46 53.7h-1.52V52h1.52v-1.8c0-2.69 1.61-3.7 3.39-3.7a4.7 4.7 0 011.9.4l-.42 1.66a3.65 3.65 0 00-1.27-.26c-1 0-1.54.66-1.54 1.83V52h2.83l-.54 1.66h-2.29v9.4h-2.06zM93 57.56c0-3.27 2.08-5.8 5.26-5.8s5.24 2.53 5.24 5.8-2.08 5.78-5.26 5.78S93 60.81 93 57.56zm8.37 0c0-2.39-1.17-4.09-3.11-4.09s-3.13 1.7-3.13 4.09 1.17 4.07 3.11 4.07 3.16-1.71 3.16-4.07zM105.87 52h1.73l.23 1.36a4.12 4.12 0 013.17-1.6 2.62 2.62 0 011.31.33l-.73 1.82a2.2 2.2 0 00-1.08-.28c-.77 0-1.49.42-2.52 1.43v8h-2.06zM113.68 52h1.73l.24 1.36a6.11 6.11 0 013.81-1.64 3 3 0 012.88 1.85 6.31 6.31 0 014.07-1.85c1.82 0 3.39 1.12 3.39 3.93v7.45h-2.06v-6.8c0-1.52-.33-2.72-1.85-2.72a5.13 5.13 0 00-3.13 1.48v8.04h-2.06v-6.78c0-1.54-.32-2.74-1.84-2.74a5.15 5.15 0 00-3.14 1.48v8h-2.06zM133 61.23a6 6 0 01-.3-2.1V52h2v6.71a4.45 4.45 0 00.22 1.64 1.69 1.69 0 001.77 1.15 3.84 3.84 0 002.83-1.38V52h2.06v7.65a13.86 13.86 0 00.24 3.41H140l-.35-1.24a5.33 5.33 0 01-3.6 1.48 3.14 3.14 0 01-3.05-2.07zM144.82 46.54h2.06v13.8c0 .85.25 1.1.81 1.1a2.55 2.55 0 00.71-.14l.42 1.62a4.85 4.85 0 01-1.71.33 2.06 2.06 0 01-2.29-2.32zM156.91 61.91a4.72 4.72 0 01-3.3 1.43 3.34 3.34 0 01-3.55-3.46 3.14 3.14 0 011.87-3 7 7 0 012.78-.56l2.06-.07v-.58a2.06 2.06 0 00-2.29-2.25 5.74 5.74 0 00-3 .87l-.73-1.43a7.8 7.8 0 014-1.1c2.51 0 4.1 1.19 4.1 3.86v4a16.68 16.68 0 00.15 3.48h-1.78zM155 57.79a4.62 4.62 0 00-1.94.4 1.69 1.69 0 00-.87 1.57 1.78 1.78 0 001.92 1.89 3.84 3.84 0 002.69-1.26v-2.67zM162.59 60.62V53.7h-1.89V52h1.89v-2.49l2.06-.65V52H168l-.56 1.66h-2.76v6.53c0 1 .4 1.4 1.13 1.4a3.38 3.38 0 001.77-.58l.68 1.42a5.2 5.2 0 01-2.92.87 2.48 2.48 0 01-2.75-2.68zM170 48.44a1.28 1.28 0 011.31-1.31 1.29 1.29 0 011.36 1.31 1.32 1.32 0 01-1.36 1.33 1.28 1.28 0 01-1.31-1.33zm.28 3.6h2.06V63.1h-2.06zM174.9 57.56c0-3.27 2.08-5.8 5.26-5.8s5.24 2.53 5.24 5.8-2.08 5.78-5.26 5.78-5.24-2.53-5.24-5.78zm8.37 0c0-2.39-1.17-4.09-3.11-4.09s-3.16 1.7-3.16 4.09 1.17 4.07 3.11 4.07 3.16-1.71 3.16-4.07zM187.74 52h1.73l.26 1.36a6 6 0 013.83-1.64c1.76 0 3.37 1 3.37 3.93v7.45h-2.05v-6.73c0-1.57-.38-2.79-1.9-2.79a5.17 5.17 0 00-3.18 1.5v8h-2.06zM205 52.44a11.57 11.57 0 013.81-.68c3.67 0 5.75 2.15 5.75 5.75a5.45 5.45 0 01-5.56 5.83 5.29 5.29 0 01-1.88-.35v5.66H205zm3.83 9.14c2.37 0 3.6-1.61 3.6-4.09 0-2.74-1.54-4-3.69-4a5.63 5.63 0 00-1.69.26v7.44a3.83 3.83 0 001.81.39zM216.93 52h1.73l.24 1.36a4.11 4.11 0 013.1-1.6 2.6 2.6 0 011.31.33l-.73 1.82a2.19 2.19 0 00-1.07-.28 3.77 3.77 0 00-2.51 1.43v8h-2.06zM226 58a3.38 3.38 0 003.49 3.62 5.68 5.68 0 002.76-.74l.63 1.42a6.88 6.88 0 01-3.62 1c-3.68 0-5.36-2.69-5.36-5.85 0-3.37 1.85-5.73 4.68-5.73s4.56 2.22 4.56 5.75V58zm5-1.55c0-1.54-.77-3.08-2.43-3.08S226 54.8 226 56.48zM234.92 57.7a5.69 5.69 0 015.83-5.94 6.45 6.45 0 011.75.21v-5.43h2.06v16a8.54 8.54 0 01-3.7.77c-3.3.03-5.94-1.91-5.94-5.61zm7.58 3.63v-7.58a4.55 4.55 0 00-1.62-.26c-2.12 0-3.83 1.5-3.83 4.16a3.6 3.6 0 003.86 3.93 4.53 4.53 0 001.59-.25zM247.48 48.44a1.28 1.28 0 011.31-1.31 1.29 1.29 0 011.36 1.31 1.32 1.32 0 01-1.36 1.33 1.28 1.28 0 01-1.31-1.33zm.28 3.6h2.06V63.1h-2.06zM252.37 57.68a5.59 5.59 0 015.63-5.92 5.79 5.79 0 012.83.7v1.8a4.65 4.65 0 00-2.66-.79c-2.27 0-3.65 1.75-3.65 4.09 0 2.6 1.38 4.07 3.51 4.07a5.15 5.15 0 002.64-.77l.61 1.45a6.53 6.53 0 01-3.53 1c-3.49.03-5.38-2.5-5.38-5.63zM264 60.62V53.7h-1.9V52h1.9v-2.49l2.06-.65V52h3.32l-.56 1.66H266v6.53c0 1 .4 1.4 1.12 1.4a3.45 3.45 0 001.78-.58l.68 1.42a5.26 5.26 0 01-2.93.87 2.48 2.48 0 01-2.65-2.68zM270.9 57.56c0-3.27 2.08-5.8 5.26-5.8s5.24 2.53 5.24 5.8-2.08 5.78-5.26 5.78-5.24-2.53-5.24-5.78zm8.37 0c0-2.39-1.17-4.09-3.11-4.09s-3.16 1.7-3.16 4.09 1.17 4.07 3.11 4.07 3.16-1.71 3.16-4.07zM283.74 52h1.73l.23 1.36a4.12 4.12 0 013.11-1.64 2.57 2.57 0 011.31.33l-.72 1.82a2.2 2.2 0 00-1.08-.28c-.77 0-1.49.42-2.52 1.43v8h-2.06z\"}})])\n )\n }\n }\n ","import './VResponsive.sass'\n\n// Mixins\nimport Measurable, { NumberOrNumberString } from '../../mixins/measurable'\n\n// Types\nimport { VNode } from 'vue'\n\n// Utils\nimport mixins from '../../util/mixins'\n\n/* @vue/component */\nexport default mixins(Measurable).extend({\n name: 'v-responsive',\n\n props: {\n aspectRatio: [String, Number] as NumberOrNumberString,\n contentClass: String,\n },\n\n computed: {\n computedAspectRatio (): number {\n return Number(this.aspectRatio)\n },\n aspectStyle (): object | undefined {\n return this.computedAspectRatio\n ? { paddingBottom: (1 / this.computedAspectRatio) * 100 + '%' }\n : undefined\n },\n __cachedSizer (): VNode | [] {\n if (!this.aspectStyle) return []\n\n return this.$createElement('div', {\n style: this.aspectStyle,\n staticClass: 'v-responsive__sizer',\n })\n },\n },\n\n methods: {\n genContent (): VNode {\n return this.$createElement('div', {\n staticClass: 'v-responsive__content',\n class: this.contentClass,\n }, this.$slots.default)\n },\n },\n\n render (h): VNode {\n return h('div', {\n staticClass: 'v-responsive',\n style: this.measurableStyles,\n on: this.$listeners,\n }, [\n this.__cachedSizer,\n this.genContent(),\n ])\n },\n})\n","import VResponsive from './VResponsive'\n\nexport { VResponsive }\nexport default VResponsive\n","// Styles\nimport './VImg.sass'\n\n// Directives\nimport intersect from '../../directives/intersect'\n\n// Types\nimport { VNode } from 'vue'\nimport { PropValidator } from 'vue/types/options'\n\n// Components\nimport VResponsive from '../VResponsive'\n\n// Mixins\nimport Themeable from '../../mixins/themeable'\n\n// Utils\nimport mixins from '../../util/mixins'\nimport mergeData from '../../util/mergeData'\nimport { consoleWarn } from '../../util/console'\n\n// not intended for public use, this is passed in by vuetify-loader\nexport interface srcObject {\n src: string\n srcset?: string\n lazySrc: string\n aspect: number\n}\n\nconst hasIntersect = typeof window !== 'undefined' && 'IntersectionObserver' in window\n\n/* @vue/component */\nexport default mixins(\n VResponsive,\n Themeable,\n).extend({\n name: 'v-img',\n\n directives: { intersect },\n\n props: {\n alt: String,\n contain: Boolean,\n eager: Boolean,\n gradient: String,\n lazySrc: String,\n options: {\n type: Object,\n // For more information on types, navigate to:\n // https://developer.mozilla.org/en-US/docs/Web/API/Intersection_Observer_API\n default: () => ({\n root: undefined,\n rootMargin: undefined,\n threshold: undefined,\n }),\n } as PropValidator,\n position: {\n type: String,\n default: 'center center',\n },\n sizes: String,\n src: {\n type: [String, Object],\n default: '',\n } as PropValidator,\n srcset: String,\n transition: {\n type: [Boolean, String],\n default: 'fade-transition',\n },\n },\n\n data () {\n return {\n currentSrc: '', // Set from srcset\n image: null as HTMLImageElement | null,\n isLoading: true,\n calculatedAspectRatio: undefined as number | undefined,\n naturalWidth: undefined as number | undefined,\n hasError: false,\n }\n },\n\n computed: {\n computedAspectRatio (): number {\n return Number(this.normalisedSrc.aspect || this.calculatedAspectRatio)\n },\n normalisedSrc (): srcObject {\n return this.src && typeof this.src === 'object'\n ? {\n src: this.src.src,\n srcset: this.srcset || this.src.srcset,\n lazySrc: this.lazySrc || this.src.lazySrc,\n aspect: Number(this.aspectRatio || this.src.aspect),\n } : {\n src: this.src,\n srcset: this.srcset,\n lazySrc: this.lazySrc,\n aspect: Number(this.aspectRatio || 0),\n }\n },\n __cachedImage (): VNode | [] {\n if (!(this.normalisedSrc.src || this.normalisedSrc.lazySrc || this.gradient)) return []\n\n const backgroundImage: string[] = []\n const src = this.isLoading ? this.normalisedSrc.lazySrc : this.currentSrc\n\n if (this.gradient) backgroundImage.push(`linear-gradient(${this.gradient})`)\n if (src) backgroundImage.push(`url(\"${src}\")`)\n\n const image = this.$createElement('div', {\n staticClass: 'v-image__image',\n class: {\n 'v-image__image--preload': this.isLoading,\n 'v-image__image--contain': this.contain,\n 'v-image__image--cover': !this.contain,\n },\n style: {\n backgroundImage: backgroundImage.join(', '),\n backgroundPosition: this.position,\n },\n key: +this.isLoading,\n })\n\n /* istanbul ignore if */\n if (!this.transition) return image\n\n return this.$createElement('transition', {\n attrs: {\n name: this.transition,\n mode: 'in-out',\n },\n }, [image])\n },\n },\n\n watch: {\n src () {\n // Force re-init when src changes\n if (!this.isLoading) this.init(undefined, undefined, true)\n else this.loadImage()\n },\n '$vuetify.breakpoint.width': 'getSrc',\n },\n\n mounted () {\n this.init()\n },\n\n methods: {\n init (\n entries?: IntersectionObserverEntry[],\n observer?: IntersectionObserver,\n isIntersecting?: boolean\n ) {\n // If the current browser supports the intersection\n // observer api, the image is not observable, and\n // the eager prop isn't being used, do not load\n if (\n hasIntersect &&\n !isIntersecting &&\n !this.eager\n ) return\n\n if (this.normalisedSrc.lazySrc) {\n const lazyImg = new Image()\n lazyImg.src = this.normalisedSrc.lazySrc\n this.pollForSize(lazyImg, null)\n }\n /* istanbul ignore else */\n if (this.normalisedSrc.src) this.loadImage()\n },\n onLoad () {\n this.getSrc()\n this.isLoading = false\n this.$emit('load', this.src)\n\n if (\n this.image &&\n (this.normalisedSrc.src.endsWith('.svg') || this.normalisedSrc.src.startsWith('data:image/svg+xml'))\n ) {\n if (this.image.naturalHeight && this.image.naturalWidth) {\n this.naturalWidth = this.image.naturalWidth\n this.calculatedAspectRatio = this.image.naturalWidth / this.image.naturalHeight\n } else {\n this.calculatedAspectRatio = 1\n }\n }\n },\n onError () {\n this.hasError = true\n this.$emit('error', this.src)\n },\n getSrc () {\n /* istanbul ignore else */\n if (this.image) this.currentSrc = this.image.currentSrc || this.image.src\n },\n loadImage () {\n const image = new Image()\n this.image = image\n\n image.onload = () => {\n /* istanbul ignore if */\n if (image.decode) {\n image.decode().catch((err: DOMException) => {\n consoleWarn(\n `Failed to decode image, trying to render anyway\\n\\n` +\n `src: ${this.normalisedSrc.src}` +\n (err.message ? `\\nOriginal error: ${err.message}` : ''),\n this\n )\n }).then(this.onLoad)\n } else {\n this.onLoad()\n }\n }\n image.onerror = this.onError\n\n this.hasError = false\n this.sizes && (image.sizes = this.sizes)\n this.normalisedSrc.srcset && (image.srcset = this.normalisedSrc.srcset)\n image.src = this.normalisedSrc.src\n this.$emit('loadstart', this.normalisedSrc.src)\n\n this.aspectRatio || this.pollForSize(image)\n this.getSrc()\n },\n pollForSize (img: HTMLImageElement, timeout: number | null = 100) {\n const poll = () => {\n const { naturalHeight, naturalWidth } = img\n\n if (naturalHeight || naturalWidth) {\n this.naturalWidth = naturalWidth\n this.calculatedAspectRatio = naturalWidth / naturalHeight\n } else if (!img.complete && this.isLoading && !this.hasError && timeout != null) {\n setTimeout(poll, timeout)\n }\n }\n\n poll()\n },\n genContent () {\n const content: VNode = VResponsive.options.methods.genContent.call(this)\n if (this.naturalWidth) {\n this._b(content.data!, 'div', {\n style: { width: `${this.naturalWidth}px` },\n })\n }\n\n return content\n },\n __genPlaceholder (): VNode | void {\n if (this.$slots.placeholder) {\n const placeholder = this.isLoading\n ? [this.$createElement('div', {\n staticClass: 'v-image__placeholder',\n }, this.$slots.placeholder)]\n : []\n\n if (!this.transition) return placeholder[0]\n\n return this.$createElement('transition', {\n props: {\n appear: true,\n name: this.transition,\n },\n }, placeholder)\n }\n },\n },\n\n render (h): VNode {\n const node = VResponsive.options.render.call(this, h)\n\n const data = mergeData(node.data!, {\n staticClass: 'v-image',\n attrs: {\n 'aria-label': this.alt,\n role: this.alt ? 'img' : undefined,\n },\n class: this.themeClasses,\n // Only load intersect directive if it\n // will work in the current browser.\n directives: hasIntersect\n ? [{\n name: 'intersect',\n modifiers: { once: true },\n value: {\n handler: this.init,\n options: this.options,\n },\n }]\n : undefined,\n })\n\n node.children = [\n this.__cachedSizer,\n this.__cachedImage,\n this.__genPlaceholder(),\n this.genContent(),\n ] as VNode[]\n\n return h(node.tag, data, node.children)\n },\n})\n","import Vue from 'vue'\n\nexport default Vue.extend({\n name: 'sizeable',\n\n props: {\n large: Boolean,\n small: Boolean,\n xLarge: Boolean,\n xSmall: Boolean,\n },\n\n computed: {\n medium (): boolean {\n return Boolean(\n !this.xSmall &&\n !this.small &&\n !this.large &&\n !this.xLarge\n )\n },\n sizeableClasses (): object {\n return {\n 'v-size--x-small': this.xSmall,\n 'v-size--small': this.small,\n 'v-size--default': this.medium,\n 'v-size--large': this.large,\n 'v-size--x-large': this.xLarge,\n }\n },\n },\n})\n","'use strict';\nvar $ = require('../internals/export');\nvar $findIndex = require('../internals/array-iteration').findIndex;\nvar addToUnscopables = require('../internals/add-to-unscopables');\n\nvar FIND_INDEX = 'findIndex';\nvar SKIPS_HOLES = true;\n\n// Shouldn't skip holes\nif (FIND_INDEX in []) Array(1)[FIND_INDEX](function () { SKIPS_HOLES = false; });\n\n// `Array.prototype.findIndex` method\n// https://tc39.es/ecma262/#sec-array.prototype.findindex\n$({ target: 'Array', proto: true, forced: SKIPS_HOLES }, {\n findIndex: function findIndex(callbackfn /* , that = undefined */) {\n return $findIndex(this, callbackfn, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n\n// https://tc39.es/ecma262/#sec-array.prototype-@@unscopables\naddToUnscopables(FIND_INDEX);\n","'use strict';\nvar $ = require('../internals/export');\nvar createHTML = require('../internals/create-html');\nvar forcedStringHTMLMethod = require('../internals/string-html-forced');\n\n// `String.prototype.small` method\n// https://tc39.es/ecma262/#sec-string.prototype.small\n$({ target: 'String', proto: true, forced: forcedStringHTMLMethod('small') }, {\n small: function small() {\n return createHTML(this, 'small', '', '');\n }\n});\n","import { VNodeDirective } from 'vue/types/vnode'\n\ninterface ResizeVNodeDirective extends VNodeDirective {\n value?: () => void\n options?: boolean | AddEventListenerOptions\n}\n\nfunction inserted (el: HTMLElement, binding: ResizeVNodeDirective) {\n const callback = binding.value!\n const options = binding.options || { passive: true }\n\n window.addEventListener('resize', callback, options)\n el._onResize = {\n callback,\n options,\n }\n\n if (!binding.modifiers || !binding.modifiers.quiet) {\n callback()\n }\n}\n\nfunction unbind (el: HTMLElement) {\n if (!el._onResize) return\n\n const { callback, options } = el._onResize\n window.removeEventListener('resize', callback, options)\n delete el._onResize\n}\n\nexport const Resize = {\n inserted,\n unbind,\n}\n\nexport default Resize\n","var render = function () {var _vm=this;var _h=_vm.$createElement;var _c=_vm._self._c||_h;return _c('v-app-bar',{staticStyle:{\"padding\":\"0px 10vw 0px 10vw\",\"border-bottom\":\"solid 1px #00000026 !important\"},attrs:{\"app\":\"\",\"absolute\":\"\",\"clipped-left\":\"\",\"color\":\"white\",\"elevation\":\"0\"}},[_c('div',{staticClass:\"azure-text logo-clickable\",staticStyle:{\"font-size\":\"2rem\",\"letter-spacing\":\"-1px\"},on:{\"click\":_vm.onLogoClick}},[_c('FastERLogo',{staticClass:\"applogo\"})],1),_c('v-spacer'),(_vm.isAuthenticated)?_c('div',[_c('v-menu',{attrs:{\"offset-y\":\"\",\"nudge-bottom\":\"14px\",\"rounded\":\"t-0 b-md\",\"content-class\":\"elevation-0\"},scopedSlots:_vm._u([{key:\"activator\",fn:function(ref){\nvar on = ref.on;\nvar attrs = ref.attrs;\nreturn [_c('div',_vm._g(_vm._b({staticStyle:{\"cursor\":\"pointer\",\"user-select\":\"none\"}},'div',attrs,false),on),[_c('v-avatar',{staticClass:\"mr-2\",attrs:{\"size\":\"36\",\"color\":\"var(--eastman-azure)\"}},[(_vm.profileImage)?_c('img',{attrs:{\"src\":(\"data:image/png;base64,\" + _vm.profileImage)}}):_c('v-icon',{attrs:{\"dark\":\"\"}},[_vm._v(\" mdi-account \")])],1),_c('span',[_vm._v(\" \"+_vm._s((_vm.currentUserInfo && _vm.currentUserInfo.displayName) || 'user')+\" \")]),_c('v-icon',[_vm._v(\" mdi-chevron-down \")])],1)]}}],null,false,1623678457)},[_c('v-list',[_c('v-list-item',{staticStyle:{\"color\":\"var(--eastman-azure) !important\"},on:{\"click\":_vm.onLogOutClick}},[_vm._v(\" Sign out \")])],1)],1)],1):_c('div',[_c('router-link',{staticClass:\"mr-8 app-link app-link-dark\",attrs:{\"active-class\":\"app-link-dark-active\",\"to\":\"/register\"}},[_vm._v(\" \"+_vm._s(_vm.$t('AppRegisterBtn'))+\" \")]),_c('span',{staticClass:\"app-link app-link-dark\",on:{\"click\":function($event){return _vm.onLogInClick()}}},[_vm._v(\" \"+_vm._s(_vm.$t('AppLoginBtn'))+\" \")])],1)],1)}\nvar staticRenderFns = []\n\nexport { render, staticRenderFns }","\n\n\n\n\n","import mod from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppBar.vue?vue&type=script&lang=js&\"; export default mod; export * from \"-!../../node_modules/cache-loader/dist/cjs.js??ref--12-0!../../node_modules/thread-loader/dist/cjs.js!../../node_modules/babel-loader/lib/index.js!../../node_modules/cache-loader/dist/cjs.js??ref--0-0!../../node_modules/vue-loader/lib/index.js??vue-loader-options!./AppBar.vue?vue&type=script&lang=js&\"","// Styles\nimport './VToolbar.sass'\n\n// Extensions\nimport VSheet from '../VSheet/VSheet'\n\n// Components\nimport VImg, { srcObject } from '../VImg/VImg'\n\n// Utilities\nimport { convertToUnit, getSlot } from '../../util/helpers'\nimport { breaking } from '../../util/console'\n\n// Types\nimport { VNode, PropType } from 'vue'\n\n/* @vue/component */\nexport default VSheet.extend({\n name: 'v-toolbar',\n\n props: {\n absolute: Boolean,\n bottom: Boolean,\n collapse: Boolean,\n dense: Boolean,\n extended: Boolean,\n extensionHeight: {\n default: 48,\n type: [Number, String],\n },\n flat: Boolean,\n floating: Boolean,\n prominent: Boolean,\n short: Boolean,\n src: {\n type: [String, Object] as PropType,\n default: '',\n },\n tag: {\n type: String,\n default: 'header',\n },\n },\n\n data: () => ({\n isExtended: false,\n }),\n\n computed: {\n computedHeight (): number {\n const height = this.computedContentHeight\n\n if (!this.isExtended) return height\n\n const extensionHeight = parseInt(this.extensionHeight)\n\n return this.isCollapsed\n ? height\n : height + (!isNaN(extensionHeight) ? extensionHeight : 0)\n },\n computedContentHeight (): number {\n if (this.height) return parseInt(this.height)\n if (this.isProminent && this.dense) return 96\n if (this.isProminent && this.short) return 112\n if (this.isProminent) return 128\n if (this.dense) return 48\n if (this.short || this.$vuetify.breakpoint.smAndDown) return 56\n return 64\n },\n classes (): object {\n return {\n ...VSheet.options.computed.classes.call(this),\n 'v-toolbar': true,\n 'v-toolbar--absolute': this.absolute,\n 'v-toolbar--bottom': this.bottom,\n 'v-toolbar--collapse': this.collapse,\n 'v-toolbar--collapsed': this.isCollapsed,\n 'v-toolbar--dense': this.dense,\n 'v-toolbar--extended': this.isExtended,\n 'v-toolbar--flat': this.flat,\n 'v-toolbar--floating': this.floating,\n 'v-toolbar--prominent': this.isProminent,\n }\n },\n isCollapsed (): boolean {\n return this.collapse\n },\n isProminent (): boolean {\n return this.prominent\n },\n styles (): object {\n return {\n ...this.measurableStyles,\n height: convertToUnit(this.computedHeight),\n }\n },\n },\n\n created () {\n const breakingProps = [\n ['app', ''],\n ['manual-scroll', ''],\n ['clipped-left', ''],\n ['clipped-right', ''],\n ['inverted-scroll', ''],\n ['scroll-off-screen', ''],\n ['scroll-target', ''],\n ['scroll-threshold', ''],\n ['card', ''],\n ]\n\n /* istanbul ignore next */\n breakingProps.forEach(([original, replacement]) => {\n if (this.$attrs.hasOwnProperty(original)) breaking(original, replacement, this)\n })\n },\n\n methods: {\n genBackground () {\n const props = {\n height: convertToUnit(this.computedHeight),\n src: this.src,\n }\n\n const image = this.$scopedSlots.img\n ? this.$scopedSlots.img({ props })\n : this.$createElement(VImg, { props })\n\n return this.$createElement('div', {\n staticClass: 'v-toolbar__image',\n }, [image])\n },\n genContent () {\n return this.$createElement('div', {\n staticClass: 'v-toolbar__content',\n style: {\n height: convertToUnit(this.computedContentHeight),\n },\n }, getSlot(this))\n },\n genExtension () {\n return this.$createElement('div', {\n staticClass: 'v-toolbar__extension',\n style: {\n height: convertToUnit(this.extensionHeight),\n },\n }, getSlot(this, 'extension'))\n },\n },\n\n render (h): VNode {\n this.isExtended = this.extended || !!this.$scopedSlots.extension\n\n const children = [this.genContent()]\n const data = this.setBackgroundColor(this.color, {\n class: this.classes,\n style: this.styles,\n on: this.$listeners,\n })\n\n if (this.isExtended) children.push(this.genExtension())\n if (this.src || this.$scopedSlots.img) children.unshift(this.genBackground())\n\n return h(this.tag, data, children)\n },\n})\n","import { VNodeDirective } from 'vue/types/vnode'\nimport { DirectiveOptions } from 'vue'\n\ninterface ScrollVNodeDirective extends Omit {\n value: EventListener | {\n handler: EventListener\n options?: boolean | AddEventListenerOptions\n } | EventListenerObject & { options?: boolean | AddEventListenerOptions }\n modifiers?: {\n self?: boolean\n }\n}\n\nfunction inserted (el: HTMLElement, binding: ScrollVNodeDirective) {\n const { self = false } = binding.modifiers || {}\n const value = binding.value\n const options = (typeof value === 'object' && value.options) || { passive: true }\n const handler = typeof value === 'function' || 'handleEvent' in value ? value : value.handler\n\n const target = self\n ? el\n : binding.arg\n ? document.querySelector(binding.arg)\n : window\n\n if (!target) return\n\n target.addEventListener('scroll', handler, options)\n\n el._onScroll = {\n handler,\n options,\n // Don't reference self\n target: self ? undefined : target,\n }\n}\n\nfunction unbind (el: HTMLElement) {\n if (!el._onScroll) return\n\n const { handler, options, target = el } = el._onScroll\n\n target.removeEventListener('scroll', handler, options)\n delete el._onScroll\n}\n\nexport const Scroll = {\n inserted,\n unbind,\n} as DirectiveOptions\n\nexport default Scroll\n","// Directives\nimport { Scroll } from '../../directives'\n\n// Utilities\nimport { consoleWarn } from '../../util/console'\n\n// Types\nimport Vue from 'vue'\n\n/**\n * Scrollable\n *\n * Used for monitoring scrolling and\n * invoking functions based upon\n * scrolling thresholds being\n * met.\n */\n/* @vue/component */\nexport default Vue.extend({\n name: 'scrollable',\n\n directives: { Scroll },\n\n props: {\n scrollTarget: String,\n scrollThreshold: [String, Number],\n },\n\n data: () => ({\n currentScroll: 0,\n currentThreshold: 0,\n isActive: false,\n isScrollingUp: false,\n previousScroll: 0,\n savedScroll: 0,\n target: null as Element | null,\n }),\n\n computed: {\n /**\n * A computed property that returns\n * whether scrolling features are\n * enabled or disabled\n */\n canScroll (): boolean {\n return typeof window !== 'undefined'\n },\n /**\n * The threshold that must be met before\n * thresholdMet function is invoked\n */\n computedScrollThreshold (): number {\n return this.scrollThreshold\n ? Number(this.scrollThreshold)\n : 300\n },\n },\n\n watch: {\n isScrollingUp () {\n this.savedScroll = this.savedScroll || this.currentScroll\n },\n isActive () {\n this.savedScroll = 0\n },\n },\n\n mounted () {\n if (this.scrollTarget) {\n this.target = document.querySelector(this.scrollTarget)\n\n if (!this.target) {\n consoleWarn(`Unable to locate element with identifier ${this.scrollTarget}`, this)\n }\n }\n },\n\n methods: {\n onScroll () {\n if (!this.canScroll) return\n\n this.previousScroll = this.currentScroll\n this.currentScroll = this.target\n ? this.target.scrollTop\n : window.pageYOffset\n\n this.isScrollingUp = this.currentScroll < this.previousScroll\n this.currentThreshold = Math.abs(this.currentScroll - this.computedScrollThreshold)\n\n this.$nextTick(() => {\n if (\n Math.abs(this.currentScroll - this.savedScroll) >\n this.computedScrollThreshold\n ) this.thresholdMet()\n })\n },\n /**\n * The method invoked when\n * scrolling in any direction\n * has exceeded the threshold\n */\n thresholdMet () { /* noop */ },\n },\n})\n","// Styles\nimport './VAppBar.sass'\n\n// Extensions\nimport VToolbar from '../VToolbar/VToolbar'\n\n// Directives\nimport Scroll from '../../directives/scroll'\n\n// Mixins\nimport Applicationable from '../../mixins/applicationable'\nimport Scrollable from '../../mixins/scrollable'\nimport SSRBootable from '../../mixins/ssr-bootable'\nimport Toggleable from '../../mixins/toggleable'\n\n// Utilities\nimport { convertToUnit } from '../../util/helpers'\nimport mixins from '../../util/mixins'\n\n// Types\nimport { VNode } from 'vue'\n\nconst baseMixins = mixins(\n VToolbar,\n Scrollable,\n SSRBootable,\n Toggleable,\n Applicationable('top', [\n 'clippedLeft',\n 'clippedRight',\n 'computedHeight',\n 'invertedScroll',\n 'isExtended',\n 'isProminent',\n 'value',\n ])\n)\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'v-app-bar',\n\n directives: { Scroll },\n\n provide (): object {\n return { VAppBar: this }\n },\n\n props: {\n clippedLeft: Boolean,\n clippedRight: Boolean,\n collapseOnScroll: Boolean,\n elevateOnScroll: Boolean,\n fadeImgOnScroll: Boolean,\n hideOnScroll: Boolean,\n invertedScroll: Boolean,\n scrollOffScreen: Boolean,\n shrinkOnScroll: Boolean,\n value: {\n type: Boolean,\n default: true,\n },\n },\n\n data () {\n return {\n isActive: this.value,\n }\n },\n\n computed: {\n applicationProperty (): string {\n return !this.bottom ? 'top' : 'bottom'\n },\n canScroll (): boolean {\n return (\n Scrollable.options.computed.canScroll.call(this) &&\n (\n this.invertedScroll ||\n this.elevateOnScroll ||\n this.hideOnScroll ||\n this.collapseOnScroll ||\n this.isBooted ||\n // If falsy, user has provided an\n // explicit value which should\n // overwrite anything we do\n !this.value\n )\n )\n },\n classes (): object {\n return {\n ...VToolbar.options.computed.classes.call(this),\n 'v-toolbar--collapse': this.collapse || this.collapseOnScroll,\n 'v-app-bar': true,\n 'v-app-bar--clipped': this.clippedLeft || this.clippedRight,\n 'v-app-bar--fade-img-on-scroll': this.fadeImgOnScroll,\n 'v-app-bar--elevate-on-scroll': this.elevateOnScroll,\n 'v-app-bar--fixed': !this.absolute && (this.app || this.fixed),\n 'v-app-bar--hide-shadow': this.hideShadow,\n 'v-app-bar--is-scrolled': this.currentScroll > 0,\n 'v-app-bar--shrink-on-scroll': this.shrinkOnScroll,\n }\n },\n scrollRatio (): number {\n const threshold = this.computedScrollThreshold\n return Math.max((threshold - this.currentScroll) / threshold, 0)\n },\n computedContentHeight (): number {\n if (!this.shrinkOnScroll) return VToolbar.options.computed.computedContentHeight.call(this)\n\n const min = this.dense ? 48 : 56\n const max = this.computedOriginalHeight\n\n return min + (max - min) * this.scrollRatio\n },\n computedFontSize (): number | undefined {\n if (!this.isProminent) return undefined\n\n const min = 1.25\n const max = 1.5\n\n return min + (max - min) * this.scrollRatio\n },\n computedLeft (): number {\n if (!this.app || this.clippedLeft) return 0\n\n return this.$vuetify.application.left\n },\n computedMarginTop (): number {\n if (!this.app) return 0\n\n return this.$vuetify.application.bar\n },\n computedOpacity (): number | undefined {\n if (!this.fadeImgOnScroll) return undefined\n\n return this.scrollRatio\n },\n computedOriginalHeight (): number {\n let height = VToolbar.options.computed.computedContentHeight.call(this)\n if (this.isExtended) height += parseInt(this.extensionHeight)\n return height\n },\n computedRight (): number {\n if (!this.app || this.clippedRight) return 0\n\n return this.$vuetify.application.right\n },\n computedScrollThreshold (): number {\n if (this.scrollThreshold) return Number(this.scrollThreshold)\n\n return this.computedOriginalHeight - (this.dense ? 48 : 56)\n },\n computedTransform (): number {\n if (\n !this.canScroll ||\n (this.elevateOnScroll && this.currentScroll === 0 && this.isActive)\n ) return 0\n\n if (this.isActive) return 0\n\n const scrollOffScreen = this.scrollOffScreen\n ? this.computedHeight\n : this.computedContentHeight\n\n return this.bottom ? scrollOffScreen : -scrollOffScreen\n },\n hideShadow (): boolean {\n if (this.elevateOnScroll && this.isExtended) {\n return this.currentScroll < this.computedScrollThreshold\n }\n\n if (this.elevateOnScroll) {\n return this.currentScroll === 0 ||\n this.computedTransform < 0\n }\n\n return (\n !this.isExtended ||\n this.scrollOffScreen\n ) && this.computedTransform !== 0\n },\n isCollapsed (): boolean {\n if (!this.collapseOnScroll) {\n return VToolbar.options.computed.isCollapsed.call(this)\n }\n\n return this.currentScroll > 0\n },\n isProminent (): boolean {\n return (\n VToolbar.options.computed.isProminent.call(this) ||\n this.shrinkOnScroll\n )\n },\n styles (): object {\n return {\n ...VToolbar.options.computed.styles.call(this),\n fontSize: convertToUnit(this.computedFontSize, 'rem'),\n marginTop: convertToUnit(this.computedMarginTop),\n transform: `translateY(${convertToUnit(this.computedTransform)})`,\n left: convertToUnit(this.computedLeft),\n right: convertToUnit(this.computedRight),\n }\n },\n },\n\n watch: {\n canScroll: 'onScroll',\n computedTransform () {\n // Normally we do not want the v-app-bar\n // to update the application top value\n // to avoid screen jump. However, in\n // this situation, we must so that\n // the clipped drawer can update\n // its top value when scrolled\n if (\n !this.canScroll ||\n (!this.clippedLeft && !this.clippedRight)\n ) return\n\n this.callUpdate()\n },\n invertedScroll (val: boolean) {\n this.isActive = !val || this.currentScroll !== 0\n },\n },\n\n created () {\n if (this.invertedScroll) this.isActive = false\n },\n\n methods: {\n genBackground () {\n const render = VToolbar.options.methods.genBackground.call(this)\n\n render.data = this._b(render.data || {}, render.tag!, {\n style: { opacity: this.computedOpacity },\n })\n\n return render\n },\n updateApplication (): number {\n return this.invertedScroll\n ? 0\n : this.computedHeight + this.computedTransform\n },\n thresholdMet () {\n if (this.invertedScroll) {\n this.isActive = this.currentScroll > this.computedScrollThreshold\n return\n }\n\n if (this.hideOnScroll) {\n this.isActive = this.isScrollingUp ||\n this.currentScroll < this.computedScrollThreshold\n }\n\n if (this.currentThreshold < this.computedScrollThreshold) return\n\n this.savedScroll = this.currentScroll\n },\n },\n\n render (h): VNode {\n const render = VToolbar.options.render.call(this, h)\n\n render.data = render.data || {}\n\n if (this.canScroll) {\n render.data.directives = render.data.directives || []\n render.data.directives.push({\n arg: this.scrollTarget,\n name: 'scroll',\n value: this.onScroll,\n })\n }\n\n return render\n },\n})\n","import './VAvatar.sass'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport Measurable from '../../mixins/measurable'\nimport Roundable from '../../mixins/roundable'\n\n// Utilities\nimport { convertToUnit } from '../../util/helpers'\n\n// Types\nimport { VNode } from 'vue'\nimport mixins from '../../util/mixins'\n\nexport default mixins(\n Colorable,\n Measurable,\n Roundable,\n /* @vue/component */\n).extend({\n name: 'v-avatar',\n\n props: {\n left: Boolean,\n right: Boolean,\n size: {\n type: [Number, String],\n default: 48,\n },\n },\n\n computed: {\n classes (): object {\n return {\n 'v-avatar--left': this.left,\n 'v-avatar--right': this.right,\n ...this.roundedClasses,\n }\n },\n styles (): object {\n return {\n height: convertToUnit(this.size),\n minWidth: convertToUnit(this.size),\n width: convertToUnit(this.size),\n ...this.measurableStyles,\n }\n },\n },\n\n render (h): VNode {\n const data = {\n staticClass: 'v-avatar',\n class: this.classes,\n style: this.styles,\n on: this.$listeners,\n }\n\n return h('div', this.setBackgroundColor(this.color, data), this.$slots.default)\n },\n})\n","// Styles\nimport './VList.sass'\nimport VListGroup from './VListGroup'\n\n// Components\nimport VSheet from '../VSheet/VSheet'\n\n// Types\nimport { VNode } from 'vue'\n\ntype VListGroupInstance = InstanceType\n\ninterface options extends InstanceType {\n isInMenu: boolean\n isInNav: boolean\n}\n\n/* @vue/component */\nexport default VSheet.extend().extend({\n name: 'v-list',\n\n provide (): object {\n return {\n isInList: true,\n list: this,\n }\n },\n\n inject: {\n isInMenu: {\n default: false,\n },\n isInNav: {\n default: false,\n },\n },\n\n props: {\n dense: Boolean,\n disabled: Boolean,\n expand: Boolean,\n flat: Boolean,\n nav: Boolean,\n rounded: Boolean,\n subheader: Boolean,\n threeLine: Boolean,\n twoLine: Boolean,\n },\n\n data: () => ({\n groups: [] as VListGroupInstance[],\n }),\n\n computed: {\n classes (): object {\n return {\n ...VSheet.options.computed.classes.call(this),\n 'v-list--dense': this.dense,\n 'v-list--disabled': this.disabled,\n 'v-list--flat': this.flat,\n 'v-list--nav': this.nav,\n 'v-list--rounded': this.rounded,\n 'v-list--subheader': this.subheader,\n 'v-list--two-line': this.twoLine,\n 'v-list--three-line': this.threeLine,\n }\n },\n },\n\n methods: {\n register (content: VListGroupInstance) {\n this.groups.push(content)\n },\n unregister (content: VListGroupInstance) {\n const index = this.groups.findIndex(g => g._uid === content._uid)\n\n if (index > -1) this.groups.splice(index, 1)\n },\n listClick (uid: number) {\n if (this.expand) return\n\n for (const group of this.groups) {\n group.toggle(uid)\n }\n },\n },\n\n render (h): VNode {\n const data = {\n staticClass: 'v-list',\n class: this.classes,\n style: this.styles,\n attrs: {\n role: this.isInNav || this.isInMenu ? undefined : 'list',\n ...this.attrs$,\n },\n }\n\n return h(this.tag, this.setBackgroundColor(this.color, data), [this.$slots.default])\n },\n})\n","// Styles\nimport './VListItem.sass'\n\n// Mixins\nimport Colorable from '../../mixins/colorable'\nimport Routable from '../../mixins/routable'\nimport { factory as GroupableFactory } from '../../mixins/groupable'\nimport Themeable from '../../mixins/themeable'\nimport { factory as ToggleableFactory } from '../../mixins/toggleable'\n\n// Directives\nimport Ripple from '../../directives/ripple'\n\n// Utilities\nimport { keyCodes } from './../../util/helpers'\nimport { ExtractVue } from './../../util/mixins'\nimport { removed } from '../../util/console'\n\n// Types\nimport mixins from '../../util/mixins'\nimport { VNode } from 'vue'\nimport { PropType, PropValidator } from 'vue/types/options'\n\nconst baseMixins = mixins(\n Colorable,\n Routable,\n Themeable,\n GroupableFactory('listItemGroup'),\n ToggleableFactory('inputValue')\n)\n\ninterface options extends ExtractVue {\n $el: HTMLElement\n isInGroup: boolean\n isInList: boolean\n isInMenu: boolean\n isInNav: boolean\n}\n\n/* @vue/component */\nexport default baseMixins.extend().extend({\n name: 'v-list-item',\n\n directives: {\n Ripple,\n },\n\n inject: {\n isInGroup: {\n default: false,\n },\n isInList: {\n default: false,\n },\n isInMenu: {\n default: false,\n },\n isInNav: {\n default: false,\n },\n },\n\n inheritAttrs: false,\n\n props: {\n activeClass: {\n type: String,\n default (): string | undefined {\n if (!this.listItemGroup) return ''\n\n return this.listItemGroup.activeClass\n },\n } as any as PropValidator,\n dense: Boolean,\n inactive: Boolean,\n link: Boolean,\n selectable: {\n type: Boolean,\n },\n tag: {\n type: String,\n default: 'div',\n },\n threeLine: Boolean,\n twoLine: Boolean,\n value: null as any as PropType,\n },\n\n data: () => ({\n proxyClass: 'v-list-item--active',\n }),\n\n computed: {\n classes (): object {\n return {\n 'v-list-item': true,\n ...Routable.options.computed.classes.call(this),\n 'v-list-item--dense': this.dense,\n 'v-list-item--disabled': this.disabled,\n 'v-list-item--link': this.isClickable && !this.inactive,\n 'v-list-item--selectable': this.selectable,\n 'v-list-item--three-line': this.threeLine,\n 'v-list-item--two-line': this.twoLine,\n ...this.themeClasses,\n }\n },\n isClickable (): boolean {\n return Boolean(\n Routable.options.computed.isClickable.call(this) ||\n this.listItemGroup\n )\n },\n },\n\n created () {\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('avatar')) {\n removed('avatar', this)\n }\n },\n\n methods: {\n click (e: MouseEvent | KeyboardEvent) {\n if (e.detail) this.$el.blur()\n\n this.$emit('click', e)\n\n this.to || this.toggle()\n },\n genAttrs () {\n const attrs: Record = {\n 'aria-disabled': this.disabled ? true : undefined,\n tabindex: this.isClickable && !this.disabled ? 0 : -1,\n ...this.$attrs,\n }\n\n if (this.$attrs.hasOwnProperty('role')) {\n // do nothing, role already provided\n } else if (this.isInNav) {\n // do nothing, role is inherit\n } else if (this.isInGroup) {\n attrs.role = 'option'\n attrs['aria-selected'] = String(this.isActive)\n } else if (this.isInMenu) {\n attrs.role = this.isClickable ? 'menuitem' : undefined\n attrs.id = attrs.id || `list-item-${this._uid}`\n } else if (this.isInList) {\n attrs.role = 'listitem'\n }\n\n return attrs\n },\n },\n\n render (h): VNode {\n let { tag, data } = this.generateRouteLink()\n\n data.attrs = {\n ...data.attrs,\n ...this.genAttrs(),\n }\n data[this.to ? 'nativeOn' : 'on'] = {\n ...data[this.to ? 'nativeOn' : 'on'],\n keydown: (e: KeyboardEvent) => {\n /* istanbul ignore else */\n if (e.keyCode === keyCodes.enter) this.click(e)\n\n this.$emit('keydown', e)\n },\n }\n\n if (this.inactive) tag = 'div'\n if (this.inactive && this.to) {\n data.on = data.nativeOn\n delete data.nativeOn\n }\n\n const children = this.$scopedSlots.default\n ? this.$scopedSlots.default({\n active: this.isActive,\n toggle: this.toggle,\n })\n : this.$slots.default\n\n return h(tag, this.setTextColor(this.color, data), children)\n },\n})\n","// Styles\nimport './VMenu.sass'\n\n// Components\nimport { VThemeProvider } from '../VThemeProvider'\n\n// Mixins\nimport Activatable from '../../mixins/activatable'\nimport Delayable from '../../mixins/delayable'\nimport Dependent from '../../mixins/dependent'\nimport Menuable from '../../mixins/menuable'\nimport Returnable from '../../mixins/returnable'\nimport Roundable from '../../mixins/roundable'\nimport Toggleable from '../../mixins/toggleable'\nimport Themeable from '../../mixins/themeable'\n\n// Directives\nimport ClickOutside from '../../directives/click-outside'\nimport Resize from '../../directives/resize'\n\n// Utilities\nimport mixins from '../../util/mixins'\nimport { removed } from '../../util/console'\nimport {\n convertToUnit,\n keyCodes,\n} from '../../util/helpers'\nimport goTo from '../../services/goto'\n\n// Types\nimport { VNode, VNodeDirective, VNodeData } from 'vue'\n\nconst baseMixins = mixins(\n Dependent,\n Delayable,\n Menuable,\n Returnable,\n Roundable,\n Toggleable,\n Themeable\n)\n\n/* @vue/component */\nexport default baseMixins.extend({\n name: 'v-menu',\n\n directives: {\n ClickOutside,\n Resize,\n },\n\n provide (): object {\n return {\n isInMenu: true,\n // Pass theme through to default slot\n theme: this.theme,\n }\n },\n\n props: {\n auto: Boolean,\n closeOnClick: {\n type: Boolean,\n default: true,\n },\n closeOnContentClick: {\n type: Boolean,\n default: true,\n },\n disabled: Boolean,\n disableKeys: Boolean,\n maxHeight: {\n type: [Number, String],\n default: 'auto',\n },\n offsetX: Boolean,\n offsetY: Boolean,\n openOnClick: {\n type: Boolean,\n default: true,\n },\n openOnHover: Boolean,\n origin: {\n type: String,\n default: 'top left',\n },\n transition: {\n type: [Boolean, String],\n default: 'v-menu-transition',\n },\n },\n\n data () {\n return {\n calculatedTopAuto: 0,\n defaultOffset: 8,\n hasJustFocused: false,\n listIndex: -1,\n resizeTimeout: 0,\n selectedIndex: null as null | number,\n tiles: [] as HTMLElement[],\n }\n },\n\n computed: {\n activeTile (): HTMLElement | undefined {\n return this.tiles[this.listIndex]\n },\n calculatedLeft (): string {\n const menuWidth = Math.max(this.dimensions.content.width, parseFloat(this.calculatedMinWidth))\n\n if (!this.auto) return this.calcLeft(menuWidth) || '0'\n\n return convertToUnit(this.calcXOverflow(this.calcLeftAuto(), menuWidth)) || '0'\n },\n calculatedMaxHeight (): string {\n const height = this.auto\n ? '200px'\n : convertToUnit(this.maxHeight)\n\n return height || '0'\n },\n calculatedMaxWidth (): string {\n return convertToUnit(this.maxWidth) || '0'\n },\n calculatedMinWidth (): string {\n if (this.minWidth) {\n return convertToUnit(this.minWidth) || '0'\n }\n\n const minWidth = Math.min(\n this.dimensions.activator.width +\n Number(this.nudgeWidth) +\n (this.auto ? 16 : 0),\n Math.max(this.pageWidth - 24, 0)\n )\n\n const calculatedMaxWidth = isNaN(parseInt(this.calculatedMaxWidth))\n ? minWidth\n : parseInt(this.calculatedMaxWidth)\n\n return convertToUnit(Math.min(\n calculatedMaxWidth,\n minWidth\n )) || '0'\n },\n calculatedTop (): string {\n const top = !this.auto\n ? this.calcTop()\n : convertToUnit(this.calcYOverflow(this.calculatedTopAuto))\n\n return top || '0'\n },\n hasClickableTiles (): boolean {\n return Boolean(this.tiles.find(tile => tile.tabIndex > -1))\n },\n styles (): object {\n return {\n maxHeight: this.calculatedMaxHeight,\n minWidth: this.calculatedMinWidth,\n maxWidth: this.calculatedMaxWidth,\n top: this.calculatedTop,\n left: this.calculatedLeft,\n transformOrigin: this.origin,\n zIndex: this.zIndex || this.activeZIndex,\n }\n },\n },\n\n watch: {\n isActive (val) {\n if (!val) this.listIndex = -1\n },\n isContentActive (val) {\n this.hasJustFocused = val\n },\n listIndex (next, prev) {\n if (next in this.tiles) {\n const tile = this.tiles[next]\n tile.classList.add('v-list-item--highlighted')\n const scrollTop = this.$refs.content.scrollTop\n const contentHeight = this.$refs.content.clientHeight\n\n if (scrollTop > tile.offsetTop - 8) {\n goTo(tile.offsetTop - tile.clientHeight, {\n appOffset: false,\n duration: 300,\n container: this.$refs.content,\n })\n } else if (scrollTop + contentHeight < tile.offsetTop + tile.clientHeight + 8) {\n goTo(tile.offsetTop - contentHeight + tile.clientHeight * 2, {\n appOffset: false,\n duration: 300,\n container: this.$refs.content,\n })\n }\n }\n\n prev in this.tiles &&\n this.tiles[prev].classList.remove('v-list-item--highlighted')\n },\n },\n\n created () {\n /* istanbul ignore next */\n if (this.$attrs.hasOwnProperty('full-width')) {\n removed('full-width', this)\n }\n },\n\n mounted () {\n this.isActive && this.callActivate()\n },\n\n methods: {\n activate () {\n // Update coordinates and dimensions of menu\n // and its activator\n this.updateDimensions()\n // Start the transition\n requestAnimationFrame(() => {\n // Once transitioning, calculate scroll and top position\n this.startTransition().then(() => {\n if (this.$refs.content) {\n this.calculatedTopAuto = this.calcTopAuto()\n this.auto && (this.$refs.content.scrollTop = this.calcScrollPosition())\n }\n })\n })\n },\n calcScrollPosition () {\n const $el = this.$refs.content\n const activeTile = $el.querySelector('.v-list-item--active') as HTMLElement\n const maxScrollTop = $el.scrollHeight - $el.offsetHeight\n\n return activeTile\n ? Math.min(maxScrollTop, Math.max(0, activeTile.offsetTop - $el.offsetHeight / 2 + activeTile.offsetHeight / 2))\n : $el.scrollTop\n },\n calcLeftAuto () {\n return parseInt(this.dimensions.activator.left - this.defaultOffset * 2)\n },\n calcTopAuto () {\n const $el = this.$refs.content\n const activeTile = $el.querySelector('.v-list-item--active') as HTMLElement | null\n\n if (!activeTile) {\n this.selectedIndex = null\n }\n\n if (this.offsetY || !activeTile) {\n return this.computedTop\n }\n\n this.selectedIndex = Array.from(this.tiles).indexOf(activeTile)\n\n const tileDistanceFromMenuTop = activeTile.offsetTop - this.calcScrollPosition()\n const firstTileOffsetTop = ($el.querySelector('.v-list-item') as HTMLElement).offsetTop\n\n return this.computedTop - tileDistanceFromMenuTop - firstTileOffsetTop - 1\n },\n changeListIndex (e: KeyboardEvent) {\n // For infinite scroll and autocomplete, re-evaluate children\n this.getTiles()\n\n if (!this.isActive || !this.hasClickableTiles) {\n return\n } else if (e.keyCode === keyCodes.tab) {\n this.isActive = false\n return\n } else if (e.keyCode === keyCodes.down) {\n this.nextTile()\n } else if (e.keyCode === keyCodes.up) {\n this.prevTile()\n } else if (e.keyCode === keyCodes.end) {\n this.lastTile()\n } else if (e.keyCode === keyCodes.home) {\n this.firstTile()\n } else if (e.keyCode === keyCodes.enter && this.listIndex !== -1) {\n this.tiles[this.listIndex].click()\n } else { return }\n // One of the conditions was met, prevent default action (#2988)\n e.preventDefault()\n },\n closeConditional (e: Event) {\n const target = e.target as HTMLElement\n\n return this.isActive &&\n !this._isDestroyed &&\n this.closeOnClick &&\n !this.$refs.content.contains(target)\n },\n genActivatorAttributes () {\n const attributes = Activatable.options.methods.genActivatorAttributes.call(this)\n\n if (this.activeTile && this.activeTile.id) {\n return {\n ...attributes,\n 'aria-activedescendant': this.activeTile.id,\n }\n }\n\n return attributes\n },\n genActivatorListeners () {\n const listeners = Menuable.options.methods.genActivatorListeners.call(this)\n\n if (!this.disableKeys) {\n listeners.keydown = this.onKeyDown\n }\n\n return listeners\n },\n genTransition (): VNode {\n const content = this.genContent()\n\n if (!this.transition) return content\n\n return this.$createElement('transition', {\n props: {\n name: this.transition,\n },\n }, [content])\n },\n genDirectives (): VNodeDirective[] {\n const directives: VNodeDirective[] = [{\n name: 'show',\n value: this.isContentActive,\n }]\n\n // Do not add click outside for hover menu\n if (!this.openOnHover && this.closeOnClick) {\n directives.push({\n name: 'click-outside',\n value: {\n handler: () => { this.isActive = false },\n closeConditional: this.closeConditional,\n include: () => [this.$el, ...this.getOpenDependentElements()],\n },\n })\n }\n\n return directives\n },\n genContent (): VNode {\n const options = {\n attrs: {\n ...this.getScopeIdAttrs(),\n role: 'role' in this.$attrs ? this.$attrs.role : 'menu',\n },\n staticClass: 'v-menu__content',\n class: {\n ...this.rootThemeClasses,\n ...this.roundedClasses,\n 'v-menu__content--auto': this.auto,\n 'v-menu__content--fixed': this.activatorFixed,\n menuable__content__active: this.isActive,\n [this.contentClass.trim()]: true,\n },\n style: this.styles,\n directives: this.genDirectives(),\n ref: 'content',\n on: {\n click: (e: Event) => {\n const target = e.target as HTMLElement\n\n if (target.getAttribute('disabled')) return\n if (this.closeOnContentClick) this.isActive = false\n },\n keydown: this.onKeyDown,\n },\n } as VNodeData\n\n if (this.$listeners.scroll) {\n options.on = options.on || {}\n options.on.scroll = this.$listeners.scroll\n }\n\n if (!this.disabled && this.openOnHover) {\n options.on = options.on || {}\n options.on.mouseenter = this.mouseEnterHandler\n }\n\n if (this.openOnHover) {\n options.on = options.on || {}\n options.on.mouseleave = this.mouseLeaveHandler\n }\n\n return this.$createElement('div', options, this.getContentSlot())\n },\n getTiles () {\n if (!this.$refs.content) return\n\n this.tiles = Array.from(this.$refs.content.querySelectorAll('.v-list-item'))\n },\n mouseEnterHandler () {\n this.runDelay('open', () => {\n if (this.hasJustFocused) return\n\n this.hasJustFocused = true\n })\n },\n mouseLeaveHandler (e: MouseEvent) {\n // Prevent accidental re-activation\n this.runDelay('close', () => {\n if (this.$refs.content.contains(e.relatedTarget as HTMLElement)) return\n\n requestAnimationFrame(() => {\n this.isActive = false\n this.callDeactivate()\n })\n })\n },\n nextTile () {\n const tile = this.tiles[this.listIndex + 1]\n\n if (!tile) {\n if (!this.tiles.length) return\n\n this.listIndex = -1\n this.nextTile()\n\n return\n }\n\n this.listIndex++\n if (tile.tabIndex === -1) this.nextTile()\n },\n prevTile () {\n const tile = this.tiles[this.listIndex - 1]\n\n if (!tile) {\n if (!this.tiles.length) return\n\n this.listIndex = this.tiles.length\n this.prevTile()\n\n return\n }\n\n this.listIndex--\n if (tile.tabIndex === -1) this.prevTile()\n },\n lastTile () {\n const tile = this.tiles[this.tiles.length - 1]\n\n if (!tile) return\n\n this.listIndex = this.tiles.length - 1\n\n if (tile.tabIndex === -1) this.prevTile()\n },\n firstTile () {\n const tile = this.tiles[0]\n\n if (!tile) return\n\n this.listIndex = 0\n\n if (tile.tabIndex === -1) this.nextTile()\n },\n onKeyDown (e: KeyboardEvent) {\n if (e.keyCode === keyCodes.esc) {\n // Wait for dependent elements to close first\n setTimeout(() => { this.isActive = false })\n const activator = this.getActivator()\n this.$nextTick(() => activator && activator.focus())\n } else if (\n !this.isActive &&\n [keyCodes.up, keyCodes.down].includes(e.keyCode)\n ) {\n this.isActive = true\n }\n\n // Allow for isActive watcher to generate tile list\n this.$nextTick(() => this.changeListIndex(e))\n },\n onResize () {\n if (!this.isActive) return\n\n // Account for screen resize\n // and orientation change\n // eslint-disable-next-line no-unused-expressions\n this.$refs.content.offsetWidth\n this.updateDimensions()\n\n // When resizing to a smaller width\n // content width is evaluated before\n // the new activator width has been\n // set, causing it to not size properly\n // hacky but will revisit in the future\n clearTimeout(this.resizeTimeout)\n this.resizeTimeout = window.setTimeout(this.updateDimensions, 100)\n },\n },\n\n render (h): VNode {\n const data = {\n staticClass: 'v-menu',\n class: {\n 'v-menu--attached':\n this.attach === '' ||\n this.attach === true ||\n this.attach === 'attach',\n },\n directives: [{\n arg: '500',\n name: 'resize',\n value: this.onResize,\n }],\n }\n\n return h('div', data, [\n !this.activator && this.genActivator(),\n this.showLazyContent(() => [\n this.$createElement(VThemeProvider, {\n props: {\n root: true,\n light: this.light,\n dark: this.dark,\n },\n }, [this.genTransition()]),\n ]),\n ])\n },\n})\n","import { render, staticRenderFns } from \"./AppBar.vue?vue&type=template&id=06f5b304&scoped=true&\"\nimport script from \"./AppBar.vue?vue&type=script&lang=js&\"\nexport * from \"./AppBar.vue?vue&type=script&lang=js&\"\nimport style0 from \"./AppBar.vue?vue&type=style&index=0&id=06f5b304&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 \"06f5b304\",\n null\n \n)\n\nexport default component.exports\n\n/* vuetify-loader */\nimport installComponents from \"!../../node_modules/vuetify-loader/lib/runtime/installComponents.js\"\nimport { VAppBar } from 'vuetify/lib/components/VAppBar';\nimport { VAvatar } from 'vuetify/lib/components/VAvatar';\nimport { VIcon } from 'vuetify/lib/components/VIcon';\nimport { VList } from 'vuetify/lib/components/VList';\nimport { VListItem } from 'vuetify/lib/components/VList';\nimport { VMenu } from 'vuetify/lib/components/VMenu';\nimport { VSpacer } from 'vuetify/lib/components/VGrid';\ninstallComponents(component, {VAppBar,VAvatar,VIcon,VList,VListItem,VMenu,VSpacer})\n","var defineProperty = require(\"./defineProperty.js\");\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n\n if (enumerableOnly) {\n symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n }\n\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\n\nmodule.exports = _objectSpread2;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","import Vue from 'vue'\n\n/* @vue/component */\nexport default Vue.extend({\n name: 'returnable',\n\n props: {\n returnValue: null as any,\n },\n\n data: () => ({\n isActive: false,\n originalValue: null as any,\n }),\n\n watch: {\n isActive (val) {\n if (val) {\n this.originalValue = this.returnValue\n } else {\n this.$emit('update:return-value', this.originalValue)\n }\n },\n },\n\n methods: {\n save (value: any) {\n this.originalValue = value\n setTimeout(() => {\n this.isActive = false\n })\n },\n },\n})\n","function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nmodule.exports = _objectWithoutPropertiesLoose;\nmodule.exports[\"default\"] = module.exports, module.exports.__esModule = true;","// Mixins\nimport Positionable from '../positionable'\nimport Stackable from '../stackable'\nimport Activatable from '../activatable'\nimport Detachable from '../detachable'\n\n// Utilities\nimport mixins, { ExtractVue } from '../../util/mixins'\nimport { convertToUnit } from '../../util/helpers'\n\n// Types\nimport { VNode } from 'vue'\n\nconst baseMixins = mixins(\n Stackable,\n Positionable,\n Activatable,\n Detachable,\n)\n\ninterface dimensions {\n top: number\n left: number\n bottom: number\n right: number\n width: number\n height: number\n offsetTop: number\n scrollHeight: number\n offsetLeft: number\n}\n\ninterface options extends ExtractVue {\n attach: boolean | string | Element\n offsetY: boolean\n offsetX: boolean\n dimensions: {\n activator: dimensions\n content: dimensions\n }\n $refs: {\n content: HTMLElement\n activator: HTMLElement\n }\n}\n\n/* @vue/component */\nexport default baseMixins.extend().extend({\n name: 'menuable',\n\n props: {\n allowOverflow: Boolean,\n light: Boolean,\n dark: Boolean,\n maxWidth: {\n type: [Number, String],\n default: 'auto',\n },\n minWidth: [Number, String],\n nudgeBottom: {\n type: [Number, String],\n default: 0,\n },\n nudgeLeft: {\n type: [Number, String],\n default: 0,\n },\n nudgeRight: {\n type: [Number, String],\n default: 0,\n },\n nudgeTop: {\n type: [Number, String],\n default: 0,\n },\n nudgeWidth: {\n type: [Number, String],\n default: 0,\n },\n offsetOverflow: Boolean,\n openOnClick: Boolean,\n positionX: {\n type: Number,\n default: null,\n },\n positionY: {\n type: Number,\n default: null,\n },\n zIndex: {\n type: [Number, String],\n default: null,\n },\n },\n\n data: () => ({\n activatorNode: [] as VNode[],\n absoluteX: 0,\n absoluteY: 0,\n activatedBy: null as EventTarget | null,\n activatorFixed: false,\n dimensions: {\n activator: {\n top: 0,\n left: 0,\n bottom: 0,\n right: 0,\n width: 0,\n height: 0,\n offsetTop: 0,\n scrollHeight: 0,\n offsetLeft: 0,\n },\n content: {\n top: 0,\n left: 0,\n bottom: 0,\n right: 0,\n width: 0,\n height: 0,\n offsetTop: 0,\n scrollHeight: 0,\n },\n },\n relativeYOffset: 0,\n hasJustFocused: false,\n hasWindow: false,\n inputActivator: false,\n isContentActive: false,\n pageWidth: 0,\n pageYOffset: 0,\n stackClass: 'v-menu__content--active',\n stackMinZIndex: 6,\n }),\n\n computed: {\n computedLeft () {\n const a = this.dimensions.activator\n const c = this.dimensions.content\n const activatorLeft = (this.attach !== false ? a.offsetLeft : a.left) || 0\n const minWidth = Math.max(a.width, c.width)\n let left = 0\n left += this.left ? activatorLeft - (minWidth - a.width) : activatorLeft\n if (this.offsetX) {\n const maxWidth = isNaN(Number(this.maxWidth))\n ? a.width\n : Math.min(a.width, Number(this.maxWidth))\n\n left += this.left ? -maxWidth : a.width\n }\n if (this.nudgeLeft) left -= parseInt(this.nudgeLeft)\n if (this.nudgeRight) left += parseInt(this.nudgeRight)\n\n return left\n },\n computedTop () {\n const a = this.dimensions.activator\n const c = this.dimensions.content\n let top = 0\n\n if (this.top) top += a.height - c.height\n if (this.attach !== false) top += a.offsetTop\n else top += a.top + this.pageYOffset\n if (this.offsetY) top += this.top ? -a.height : a.height\n if (this.nudgeTop) top -= parseInt(this.nudgeTop)\n if (this.nudgeBottom) top += parseInt(this.nudgeBottom)\n\n return top\n },\n hasActivator (): boolean {\n return !!this.$slots.activator || !!this.$scopedSlots.activator || !!this.activator || !!this.inputActivator\n },\n absoluteYOffset (): number {\n return this.pageYOffset - this.relativeYOffset\n },\n },\n\n watch: {\n disabled (val) {\n val && this.callDeactivate()\n },\n isActive (val) {\n if (this.disabled) return\n\n val ? this.callActivate() : this.callDeactivate()\n },\n positionX: 'updateDimensions',\n positionY: 'updateDimensions',\n },\n\n beforeMount () {\n this.hasWindow = typeof window !== 'undefined'\n\n if (this.hasWindow) {\n window.addEventListener('resize', this.updateDimensions, false)\n }\n },\n\n beforeDestroy () {\n if (this.hasWindow) {\n window.removeEventListener('resize', this.updateDimensions, false)\n }\n },\n\n methods: {\n absolutePosition () {\n return {\n offsetTop: 0,\n offsetLeft: 0,\n scrollHeight: 0,\n top: this.positionY || this.absoluteY,\n bottom: this.positionY || this.absoluteY,\n left: this.positionX || this.absoluteX,\n right: this.positionX || this.absoluteX,\n height: 0,\n width: 0,\n }\n },\n activate () {},\n calcLeft (menuWidth: number) {\n return convertToUnit(this.attach !== false\n ? this.computedLeft\n : this.calcXOverflow(this.computedLeft, menuWidth))\n },\n calcTop () {\n return convertToUnit(this.attach !== false\n ? this.computedTop\n : this.calcYOverflow(this.computedTop))\n },\n calcXOverflow (left: number, menuWidth: number) {\n const xOverflow = left + menuWidth - this.pageWidth + 12\n\n if ((!this.left || this.right) && xOverflow > 0) {\n left = Math.max(left - xOverflow, 0)\n } else {\n left = Math.max(left, 12)\n }\n\n return left + this.getOffsetLeft()\n },\n calcYOverflow (top: number) {\n const documentHeight = this.getInnerHeight()\n const toTop = this.absoluteYOffset + documentHeight\n const activator = this.dimensions.activator\n const contentHeight = this.dimensions.content.height\n const totalHeight = top + contentHeight\n const isOverflowing = toTop < totalHeight\n\n // If overflowing bottom and offset\n // TODO: set 'bottom' position instead of 'top'\n if (isOverflowing &&\n this.offsetOverflow &&\n // If we don't have enough room to offset\n // the overflow, don't offset\n activator.top > contentHeight\n ) {\n top = this.pageYOffset + (activator.top - contentHeight)\n // If overflowing bottom\n } else if (isOverflowing && !this.allowOverflow) {\n top = toTop - contentHeight - 12\n // If overflowing top\n } else if (top < this.absoluteYOffset && !this.allowOverflow) {\n top = this.absoluteYOffset + 12\n }\n\n return top < 12 ? 12 : top\n },\n callActivate () {\n if (!this.hasWindow) return\n\n this.activate()\n },\n callDeactivate () {\n this.isContentActive = false\n\n this.deactivate()\n },\n checkForPageYOffset () {\n if (this.hasWindow) {\n this.pageYOffset = this.activatorFixed ? 0 : this.getOffsetTop()\n }\n },\n checkActivatorFixed () {\n if (this.attach !== false) return\n let el = this.getActivator()\n while (el) {\n if (window.getComputedStyle(el).position === 'fixed') {\n this.activatorFixed = true\n return\n }\n el = el.offsetParent as HTMLElement\n }\n this.activatorFixed = false\n },\n deactivate () {},\n genActivatorListeners () {\n const listeners = Activatable.options.methods.genActivatorListeners.call(this)\n\n const onClick = listeners.click\n\n listeners.click = (e: MouseEvent & KeyboardEvent & FocusEvent) => {\n if (this.openOnClick) {\n onClick && onClick(e)\n }\n\n this.absoluteX = e.clientX\n this.absoluteY = e.clientY\n }\n\n return listeners\n },\n getInnerHeight () {\n if (!this.hasWindow) return 0\n\n return window.innerHeight ||\n document.documentElement.clientHeight\n },\n getOffsetLeft () {\n if (!this.hasWindow) return 0\n\n return window.pageXOffset ||\n document.documentElement.scrollLeft\n },\n getOffsetTop () {\n if (!this.hasWindow) return 0\n\n return window.pageYOffset ||\n document.documentElement.scrollTop\n },\n getRoundedBoundedClientRect (el: Element) {\n const rect = el.getBoundingClientRect()\n return {\n top: Math.round(rect.top),\n left: Math.round(rect.left),\n bottom: Math.round(rect.bottom),\n right: Math.round(rect.right),\n width: Math.round(rect.width),\n height: Math.round(rect.height),\n }\n },\n measure (el: HTMLElement) {\n if (!el || !this.hasWindow) return null\n\n const rect = this.getRoundedBoundedClientRect(el)\n\n // Account for activator margin\n if (this.attach !== false) {\n const style = window.getComputedStyle(el)\n\n rect.left = parseInt(style.marginLeft!)\n rect.top = parseInt(style.marginTop!)\n }\n\n return rect\n },\n sneakPeek (cb: () => void) {\n requestAnimationFrame(() => {\n const el = this.$refs.content\n\n if (!el || el.style.display !== 'none') {\n cb()\n return\n }\n\n el.style.display = 'inline-block'\n cb()\n el.style.display = 'none'\n })\n },\n startTransition () {\n return new Promise(resolve => requestAnimationFrame(() => {\n this.isContentActive = this.hasJustFocused = this.isActive\n resolve()\n }))\n },\n updateDimensions () {\n this.hasWindow = typeof window !== 'undefined'\n this.checkActivatorFixed()\n this.checkForPageYOffset()\n this.pageWidth = document.documentElement.clientWidth\n\n const dimensions: any = {\n activator: { ...this.dimensions.activator },\n content: { ...this.dimensions.content },\n }\n\n // Activator should already be shown\n if (!this.hasActivator || this.absolute) {\n dimensions.activator = this.absolutePosition()\n } else {\n const activator = this.getActivator()\n if (!activator) return\n\n dimensions.activator = this.measure(activator)\n dimensions.activator.offsetLeft = activator.offsetLeft\n if (this.attach !== false) {\n // account for css padding causing things to not line up\n // this is mostly for v-autocomplete, hopefully it won't break anything\n dimensions.activator.offsetTop = activator.offsetTop\n } else {\n dimensions.activator.offsetTop = 0\n }\n }\n\n // Display and hide to get dimensions\n this.sneakPeek(() => {\n if (this.$refs.content) {\n if (this.$refs.content.offsetParent) {\n const offsetRect = this.getRoundedBoundedClientRect(this.$refs.content.offsetParent)\n\n this.relativeYOffset = window.pageYOffset + offsetRect.top\n dimensions.activator.top -= this.relativeYOffset\n dimensions.activator.left -= window.pageXOffset + offsetRect.left\n }\n\n dimensions.content = this.measure(this.$refs.content)\n }\n\n this.dimensions = dimensions\n })\n },\n },\n})\n"],"sourceRoot":""}