{"version":3,"sources":["webpack:///./node_modules/vue-loader/lib/runtime/componentNormalizer.js","webpack:///./node_modules/vue-in-viewport-mixin/index.js"],"names":["normalizeComponent","scriptExports","render","staticRenderFns","functionalTemplate","injectStyles","scopeId","moduleIdentifier","shadowMode","hook","options","_compiled","functional","_scopeId","context","this","$vnode","ssrContext","parent","__VUE_SSR_CONTEXT__","call","_registeredComponents","add","_ssrRegister","$root","$options","shadowRoot","_injectStyles","originalRender","h","existing","beforeCreate","concat","exports","_slicedToArray","arr","i","_arrayWithHoles","_iterableToArrayLimit","_nonIterableRest","TypeError","_arr","_n","_d","_e","undefined","_s","_i","Symbol","iterator","next","done","push","value","length","err","Array","isArray","_typeof","obj","constructor","prototype","Object","defineProperty","default","indexOf","slice","_default2","props","inViewportActive","type","Boolean","inViewportOnce","inViewportRootMargin","Number","String","inViewportRoot","Function","inViewportThreshold","data","inViewport","now","fully","above","below","listening","maxThreshold","mounted","$nextTick","inViewportInit","destroyed","removeInViewportHandlers","computed","inViewportThresholdWithMax","ref","threshold","watch","active","addInViewportHandlers","reInitInViewportMixin","old","toString","methods","inViewportObserver","IntersectionObserver","updateInViewport","root","document","querySelector","rootMargin","observe","$el","disconnect","arg","target","_slice$call","_slice$call2","_slice$call2$","boundingClientRect","rootBounds","height","Math","min","top","bottom"],"mappings":"wHAMe,SAASA,EACtBC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,EACAC,GAGA,IAqBIC,EArBAC,EAAmC,oBAAlBT,EACjBA,EAAcS,QACdT,EAsDJ,GAnDIC,IACFQ,EAAQR,OAASA,EACjBQ,EAAQP,gBAAkBA,EAC1BO,EAAQC,WAAY,GAIlBP,IACFM,EAAQE,YAAa,GAInBN,IACFI,EAAQG,SAAW,UAAYP,GAI7BC,GACFE,EAAO,SAAUK,GAEfA,EACEA,GACCC,KAAKC,QAAUD,KAAKC,OAAOC,YAC3BF,KAAKG,QAAUH,KAAKG,OAAOF,QAAUD,KAAKG,OAAOF,OAAOC,WAEtDH,GAA0C,qBAAxBK,sBACrBL,EAAUK,qBAGRd,GACFA,EAAae,KAAKL,KAAMD,GAGtBA,GAAWA,EAAQO,uBACrBP,EAAQO,sBAAsBC,IAAIf,IAKtCG,EAAQa,aAAed,GACdJ,IACTI,EAAOD,EACH,WACAH,EAAae,KACXL,MACCL,EAAQE,WAAaG,KAAKG,OAASH,MAAMS,MAAMC,SAASC,aAG3DrB,GAGFI,EACF,GAAIC,EAAQE,WAAY,CAGtBF,EAAQiB,cAAgBlB,EAExB,IAAImB,EAAiBlB,EAAQR,OAC7BQ,EAAQR,OAAS,SAAmC2B,EAAGf,GAErD,OADAL,EAAKW,KAAKN,GACHc,EAAeC,EAAGf,QAEtB,CAEL,IAAIgB,EAAWpB,EAAQqB,aACvBrB,EAAQqB,aAAeD,EACnB,GAAGE,OAAOF,EAAUrB,GACpB,CAACA,GAIT,MAAO,CACLwB,QAAShC,EACTS,QAASA,GA/Fb,mC,kCCOA,SAASwB,EAAeC,EAAKC,GAAK,OAAOC,EAAgBF,IAAQG,EAAsBH,EAAKC,IAAMG,IAElG,SAASA,IAAqB,MAAM,IAAIC,UAAU,wDAElD,SAASF,EAAsBH,EAAKC,GAAK,IAAIK,EAAO,GAAQC,GAAK,EAAUC,GAAK,EAAWC,OAAKC,EAAW,IAAM,IAAK,IAAiCC,EAA7BC,EAAKZ,EAAIa,OAAOC,cAAmBP,GAAMI,EAAKC,EAAGG,QAAQC,MAAOT,GAAK,EAA6B,GAArBD,EAAKW,KAAKN,EAAGO,OAAYjB,GAAKK,EAAKa,SAAWlB,EAAG,MAAW,MAAOmB,GAAOZ,GAAK,EAAMC,EAAKW,EAAO,QAAU,IAAWb,GAAsB,MAAhBK,EAAG,WAAmBA,EAAG,YAAe,QAAU,GAAIJ,EAAI,MAAMC,GAAQ,OAAOH,EAElZ,SAASJ,EAAgBF,GAAO,GAAIqB,MAAMC,QAAQtB,GAAM,OAAOA,EAE/D,SAASuB,EAAQC,GAAwT,OAAtOD,EAArD,oBAAXV,QAAoD,kBAApBA,OAAOC,SAAmC,SAAiBU,GAAO,cAAcA,GAA2B,SAAiBA,GAAO,OAAOA,GAAyB,oBAAXX,QAAyBW,EAAIC,cAAgBZ,QAAUW,IAAQX,OAAOa,UAAY,gBAAkBF,GAAiBD,EAAQC,GAbxVG,OAAOC,eAAe9B,EAAS,aAAc,CAC3CoB,OAAO,IAETpB,EAAQ+B,aAAU,EAclB,IAAIC,EAAU,GAAGA,QACbC,EAAQ,GAAGA,MACXC,EAAY,CAEdC,MAAO,CAELC,iBAAkB,CAChBC,KAAMC,QACNP,SAAS,GAIXQ,eAAgB,CACdF,KAAMC,QACNP,SAAS,GAIXS,qBAAsB,CACpBH,KAAMI,OAASC,OACfX,QAAS,oBAGXY,eAAgB,CACdN,KAAMK,OAASE,SAAWf,OAC1BE,aAAS,GAIXc,oBAAqB,CACnBR,KAAMI,OAASlB,MACfQ,QAAS,WACP,MAAO,CAAC,EAAG,MAMjBe,KAAM,WACJ,MAAO,CACLC,WAAY,CAEVC,IAAK,KAELC,MAAO,KAEPC,MAAO,KAEPC,MAAO,KAGPC,WAAW,EACXC,aAAc,KAKpBC,QAAS,WACP,OAAOxE,KAAKyE,UAAUzE,KAAK0E,iBAE7BC,UAAW,WACT,OAAO3E,KAAK4E,4BAEdC,SAAU,CAGRC,2BAA4B,WAC1B,IAAIC,EAAKC,EAIT,OAFAA,EAAkD,WAAtCrC,EAAQ3C,KAAK+D,qBAAoC/D,KAAK+D,oBAAsB,CAAC/D,KAAK+D,qBAE1FgB,EAAM/E,KAAKiE,WAAWM,aAAcrB,EAAQ7C,KAAK2E,EAAWD,IAAQ,EAC/DC,EAEAA,EAAU/D,OAAOjB,KAAKiE,WAAWM,gBAK9CU,MAAO,CAEL3B,iBAAkB,SAA0B4B,GAC1C,OAAIA,EACKlF,KAAKmF,wBAELnF,KAAK4E,4BAIhBlB,qBAAsB,WACpB,OAAO1D,KAAKoF,yBAEdvB,eAAgB,WACd,OAAO7D,KAAKoF,yBAEdN,2BAA4B,SAAoCZ,EAAKmB,GACnE,GAAInB,EAAIoB,aAAeD,EAAIC,WAGzB,OAAOtF,KAAKoF,0BAKlBG,QAAS,CAEPH,sBAAuB,WAErB,OADApF,KAAK4E,2BACE5E,KAAK0E,kBAGdA,eAAgB,WACd,GAAI1E,KAAKsD,iBACP,OAAOtD,KAAKmF,yBAIhBA,sBAAuB,WAErB,IAAInF,KAAKiE,WAAWK,UA2BpB,OAvBAtE,KAAKiE,WAAWK,WAAY,EAE5BtE,KAAKwF,mBAAqB,IAAIC,qBAAqBzF,KAAK0F,iBAAkB,CACxEC,KAAM,WACJ,OAAQhD,EAAQ3C,KAAK6D,iBACnB,IAAK,WACH,OAAO7D,KAAK6D,iBAEd,IAAK,SACH,OAAO+B,SAASC,cAAc7F,KAAK6D,gBAErC,IAAK,SACH,OAAO7D,KAAK6D,eAGd,QACE,SAEJxD,KAAKL,MACP8F,WAAY9F,KAAK0D,qBACjBsB,UAAWhF,KAAK8E,6BAGX9E,KAAKwF,mBAAmBO,QAAQ/F,KAAKgG,MAG9CpB,yBAA0B,WACxB,IAAIG,EAEJ,GAAK/E,KAAKiE,WAAWK,UAUrB,OANAtE,KAAKiE,WAAWK,WAAY,EAEW,OAAlCS,EAAM/E,KAAKwF,qBACdT,EAAIkB,oBAGQjG,KAAKwF,oBAIrBE,iBAAkB,SAA0BQ,GAC1C,IAASP,EAAMQ,EAEXC,EAAcjD,EAAM9C,KAAK6F,GAAM,GAE/BG,EAAelF,EAAeiF,EAAa,GAE3CE,EAAgBD,EAAa,GAoBjC,GAnBAF,EAASG,EAAcC,mBACvBZ,EAAOW,EAAcE,WAIrBxG,KAAKiE,WAAWM,aAAe4B,EAAOM,OAAS,EAAIC,KAAKC,IAAI,EAAGhB,EAAKc,OAASN,EAAOM,QAAU,EAK9FzG,KAAKiE,WAAWC,IAAMiC,EAAOS,KAAOjB,EAAKkB,QAAUV,EAAOU,OAASlB,EAAKiB,IAGxE5G,KAAKiE,WAAWG,MAAQ+B,EAAOS,IAAMjB,EAAKiB,IAC1C5G,KAAKiE,WAAWI,MAAQ8B,EAAOU,OAASlB,EAAKkB,OAAS,EAGtD7G,KAAKiE,WAAWE,MAAQgC,EAAOM,OAASd,EAAKc,OAASN,EAAOS,KAAOjB,EAAKiB,KAAOT,EAAOU,QAAUlB,EAAKkB,OAAS,GAAK7G,KAAKiE,WAAWG,QAAUpE,KAAKiE,WAAWI,MAE1JrE,KAAKyD,gBAAkBzD,KAAKiE,WAAWC,IAEzC,OAAOlE,KAAK4E,8BAKpB1D,EAAQ+B,QAAUG","file":"js/chunk-vendors~cf55716b-legacy.1ce9cdd8.js","sourcesContent":["/* globals __VUE_SSR_CONTEXT__ */\n\n// IMPORTANT: Do NOT use ES2015 features in this file (except for modules).\n// This module is a runtime utility for cleaner component module output and will\n// be included in the final webpack user bundle.\n\nexport default function normalizeComponent (\n scriptExports,\n render,\n staticRenderFns,\n functionalTemplate,\n injectStyles,\n scopeId,\n moduleIdentifier, /* server only */\n shadowMode /* vue-cli only */\n) {\n // Vue.extend constructor export interop\n var options = typeof scriptExports === 'function'\n ? scriptExports.options\n : scriptExports\n\n // render functions\n if (render) {\n options.render = render\n options.staticRenderFns = staticRenderFns\n options._compiled = true\n }\n\n // functional template\n if (functionalTemplate) {\n options.functional = true\n }\n\n // scopedId\n if (scopeId) {\n options._scopeId = 'data-v-' + scopeId\n }\n\n var hook\n if (moduleIdentifier) { // server build\n hook = function (context) {\n // 2.3 injection\n context =\n context || // cached call\n (this.$vnode && this.$vnode.ssrContext) || // stateful\n (this.parent && this.parent.$vnode && this.parent.$vnode.ssrContext) // functional\n // 2.2 with runInNewContext: true\n if (!context && typeof __VUE_SSR_CONTEXT__ !== 'undefined') {\n context = __VUE_SSR_CONTEXT__\n }\n // inject component styles\n if (injectStyles) {\n injectStyles.call(this, context)\n }\n // register component module identifier for async chunk inferrence\n if (context && context._registeredComponents) {\n context._registeredComponents.add(moduleIdentifier)\n }\n }\n // used by ssr in case component is cached and beforeCreate\n // never gets called\n options._ssrRegister = hook\n } else if (injectStyles) {\n hook = shadowMode\n ? function () {\n injectStyles.call(\n this,\n (options.functional ? this.parent : this).$root.$options.shadowRoot\n )\n }\n : injectStyles\n }\n\n if (hook) {\n if (options.functional) {\n // for template-only hot-reload because in that case the render fn doesn't\n // go through the normalizer\n options._injectStyles = hook\n // register for functional component in vue file\n var originalRender = options.render\n options.render = function renderWithStyleInjection (h, context) {\n hook.call(context)\n return originalRender(h, context)\n }\n } else {\n // inject component registration as beforeCreate hook\n var existing = options.beforeCreate\n options.beforeCreate = existing\n ? [].concat(existing, hook)\n : [hook]\n }\n }\n\n return {\n exports: scriptExports,\n options: options\n }\n}\n","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance\"); }\n\nfunction _iterableToArrayLimit(arr, i) { var _arr = []; var _n = true; var _d = false; var _e = undefined; try { for (var _i = arr[Symbol.iterator](), _s; !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _typeof(obj) { if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\n// Generated by CoffeeScript 2.4.1\n// Mixin definition\nvar indexOf = [].indexOf,\n slice = [].slice;\nvar _default2 = {\n // Public interface\n props: {\n // Add listeners and check if in viewport immediately\n inViewportActive: {\n type: Boolean,\n default: true\n },\n // Only update once by default. The assumption is that it will be used for\n // one-time buildins\n inViewportOnce: {\n type: Boolean,\n default: false\n },\n // The IntersectionObserver root margin adds offsets to when the now and\n // fully get updated.\n inViewportRootMargin: {\n type: Number | String,\n default: '0px 0px -1px 0px'\n },\n // Specify the IntersectionObserver root to use.\n inViewportRoot: {\n type: String | Function | Object,\n default: void 0\n },\n // The IntersectionObserver threshold defines the intersection ratios that\n // fire the observer callback\n inViewportThreshold: {\n type: Number | Array,\n default: function _default() {\n return [0, 1 // Fire on enter/leave and fully enter/leave\n ];\n }\n }\n },\n // Bindings that are used by the host component\n data: function data() {\n return {\n inViewport: {\n // Public props\n now: null,\n // Is in viewport\n fully: null,\n // Is fully in viewport\n above: null,\n // Is partially or fully above the viewport\n below: null,\n // Is partially or fully below the viewport\n // Internal props\n listening: false,\n maxThreshold: 1\n }\n };\n },\n // Lifecycle hooks\n mounted: function mounted() {\n return this.$nextTick(this.inViewportInit);\n },\n destroyed: function destroyed() {\n return this.removeInViewportHandlers();\n },\n computed: {\n // Add the maxThreshold to the @inViewportThreshold prop so that the handler\n // is fired for elements that are taller than the viewport\n inViewportThresholdWithMax: function inViewportThresholdWithMax() {\n var ref, threshold; // Support number and array thresholds\n\n threshold = _typeof(this.inViewportThreshold) === 'object' ? this.inViewportThreshold : [this.inViewportThreshold]; // Add only if not already in the threshold list\n\n if (ref = this.inViewport.maxThreshold, indexOf.call(threshold, ref) >= 0) {\n return threshold;\n } else {\n return threshold.concat(this.inViewport.maxThreshold);\n }\n }\n },\n // Watch props and data\n watch: {\n // Add or remove event handlers handlers\n inViewportActive: function inViewportActive(active) {\n if (active) {\n return this.addInViewportHandlers();\n } else {\n return this.removeInViewportHandlers();\n }\n },\n // If any of the Observer options change, re-init.\n inViewportRootMargin: function inViewportRootMargin() {\n return this.reInitInViewportMixin();\n },\n inViewportRoot: function inViewportRoot() {\n return this.reInitInViewportMixin();\n },\n inViewportThresholdWithMax: function inViewportThresholdWithMax(now, old) {\n if (now.toString() !== old.toString()) {\n // In IE, this kept getting retriggered, so doing a manual comparison\n // of old and new before deciding whether to take action.\n return this.reInitInViewportMixin();\n }\n }\n },\n // Public API\n methods: {\n // Re-init\n reInitInViewportMixin: function reInitInViewportMixin() {\n this.removeInViewportHandlers();\n return this.inViewportInit();\n },\n // Instantiate\n inViewportInit: function inViewportInit() {\n if (this.inViewportActive) {\n return this.addInViewportHandlers();\n }\n },\n // Add listeners\n addInViewportHandlers: function addInViewportHandlers() {\n // Don't add twice\n if (this.inViewport.listening) {\n return;\n }\n\n this.inViewport.listening = true; // Create IntersectionObserver instance\n\n this.inViewportObserver = new IntersectionObserver(this.updateInViewport, {\n root: function () {\n switch (_typeof(this.inViewportRoot)) {\n case 'function':\n return this.inViewportRoot();\n\n case 'string':\n return document.querySelector(this.inViewportRoot);\n\n case 'object':\n return this.inViewportRoot;\n // Expects to be a DOMElement\n\n default:\n return void 0;\n }\n }.call(this),\n rootMargin: this.inViewportRootMargin,\n threshold: this.inViewportThresholdWithMax\n }); // Start listening\n\n return this.inViewportObserver.observe(this.$el);\n },\n // Remove listeners\n removeInViewportHandlers: function removeInViewportHandlers() {\n var ref; // Don't remove twice\n\n if (!this.inViewport.listening) {\n return;\n }\n\n this.inViewport.listening = false; // Destroy instance, which also removes listeners\n\n if ((ref = this.inViewportObserver) != null) {\n ref.disconnect();\n }\n\n return delete this.inViewportObserver;\n },\n // Handle state changes. There should only ever be one entry and we're\n // destructuring the properties we care about since they have long names.\n updateInViewport: function updateInViewport(arg) {\n var arg, root, target;\n\n var _slice$call = slice.call(arg, -1);\n\n var _slice$call2 = _slicedToArray(_slice$call, 1);\n\n var _slice$call2$ = _slice$call2[0];\n target = _slice$call2$.boundingClientRect;\n root = _slice$call2$.rootBounds;\n // Get the maximum threshold ratio, which is less than 1 when the\n // element is taller than the viewport. The height may be 0 when the\n // parent element is hidden.\n this.inViewport.maxThreshold = target.height > 0 ? Math.min(1, root.height / target.height) : 1; // Check if some part of the target is in the root box. The isIntersecting\n // property from the IntersectionObserver was not used because it reports\n // the case where a box is immediately offscreen as intersecting, even\n // though no aprt of it is visible.\n\n this.inViewport.now = target.top <= root.bottom && target.bottom > root.top; // Calculate above and below. The +1 on the bottom check co-incides with\n // the default root-margin which has a -1 on the bottom margin.\n\n this.inViewport.above = target.top < root.top;\n this.inViewport.below = target.bottom > root.bottom + 1; // Determine whether fully in viewport. The rules are different based on\n // whether the target is taller than the viewport.\n\n this.inViewport.fully = target.height > root.height ? target.top <= root.top && target.bottom >= root.bottom + 1 : !this.inViewport.above && !this.inViewport.below;\n\n if (this.inViewportOnce && this.inViewport.now) {\n // If set to update \"once\", remove listeners if in viewport\n return this.removeInViewportHandlers();\n }\n }\n }\n};\nexports.default = _default2;"],"sourceRoot":""}