{"version":3,"file":"js/scroll.3d19b6c2d9899befb274.bundle.js","mappings":"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","sources":["webpack:///./scripts/scroll/Scroll.js","webpack:///./scripts/scroll/index.js","webpack:///../node_modules/gsap/ScrollToPlugin.js"],"sourcesContent":["import { gsap } from \"gsap\"\r\nimport { ScrollToPlugin } from \"gsap/ScrollToPlugin\"\r\nimport { ScrollTrigger } from \"gsap/ScrollTrigger\"\r\nimport { utilities } from \"@/scripts/common/utilities\"\r\nimport settings from \"@/scripts/common/settings\"\r\nimport { refreshAllControllers, addScrollController } from \"@/scripts/common/api/scrolltrigger.services\"\r\ngsap.registerPlugin(ScrollTrigger)\r\ngsap.registerPlugin(ScrollToPlugin)\r\n\r\nexport const Scroll = (function () {\r\n class Spy {\r\n constructor(spyItem) {\r\n this.$spy = spyItem\r\n this.$target = this.$spy.dataset.target ? document.querySelector(this.$spy.dataset.target) : null\r\n this.active = false\r\n this.scrollController = null\r\n this.scrollOptions = {\r\n trigger: this.$target,\r\n start: 'top center',\r\n end: 'bottom center',\r\n toggleClass: {\r\n targets: this.$spy,\r\n className: 'active'\r\n }\r\n }\r\n\r\n this.events = []\r\n\r\n this.init()\r\n }\r\n\r\n init() {\r\n this.buildEvents()\r\n this.addToggleCallBack()\r\n this._addEventListener()\r\n }\r\n\r\n updateOptions(options) {\r\n this.scrollOptions = Object.assign(this.scrollOptions, options)\r\n }\r\n\r\n buildEvents() {\r\n this.events['targetUpdate'] = new CustomEvent('targetUpdate', {\r\n bubbles: true,\r\n detail: {\r\n isActive: () => this.active\r\n }\r\n })\r\n }\r\n\r\n refresh() {\r\n if(this.scrollController) this.scrollController.refresh()\r\n }\r\n\r\n addToggleCallBack() {\r\n this.updateOptions({\r\n onToggle: self => {\r\n this.active = self.isActive ? true : false\r\n this.$spy.dispatchEvent(this.events['targetUpdate'])\r\n }\r\n })\r\n }\r\n\r\n _addEventListener() {\r\n if (this.$target) this.scrollController = ScrollTrigger.create(this.scrollOptions)\r\n if (this.scrollController) addScrollController(this.scrollController)\r\n\r\n this.$target.addEventListener('UIFilterUpdated', () => this.refresh())\r\n this.$target.addEventListener('panelOpen', () => this.refresh())\r\n this.$target.addEventListener('panelClose', () => this.refresh())\r\n }\r\n }\r\n\r\n class ScrollTo {\r\n constructor(item) {\r\n this.$trigger = item\r\n this.$target = document.querySelector(this.$trigger.getAttribute(\"href\")) || null\r\n this.options = {\r\n duration: 0.4,\r\n ease: 'power2.inOut'\r\n }\r\n\r\n this.init()\r\n }\r\n\r\n init() {\r\n this._addEventListener()\r\n }\r\n\r\n goToTarget() {\r\n gsap.to(window, {\r\n duration: this.options.duration,\r\n scrollTo: {\r\n y: this.$target,\r\n offsetY: 150\r\n },\r\n ease: this.options.ease\r\n })\r\n }\r\n\r\n // Callbacks\r\n onClick(e) {\r\n e.preventDefault()\r\n this.goToTarget()\r\n }\r\n\r\n _addEventListener() {\r\n if (this.$target) this.$trigger.addEventListener('click', (e) => this.onClick(e))\r\n }\r\n }\r\n\r\n return {\r\n Spy,\r\n ScrollTo\r\n }\r\n})()","import {Scroll} from './Scroll' \r\n\r\n(function(){\r\n const $spyItems = document.querySelectorAll('.scroll-spy')\r\n $spyItems.forEach(($s) => new Scroll.Spy($s))\r\n const $scrollToItems = document.querySelectorAll('.scroll-to-target')\r\n $scrollToItems.forEach(($s) => new Scroll.ScrollTo($s))\r\n})()","/*!\n * ScrollToPlugin 3.6.1\n * https://greensock.com\n *\n * @license Copyright 2008-2021, GreenSock. All rights reserved.\n * Subject to the terms at https://greensock.com/standard-license or for\n * Club GreenSock members, the agreement issued with that membership.\n * @author: Jack Doyle, jack@greensock.com\n*/\n\n/* eslint-disable */\nvar gsap,\n _coreInitted,\n _window,\n _docEl,\n _body,\n _toArray,\n _config,\n _windowExists = function _windowExists() {\n return typeof window !== \"undefined\";\n},\n _getGSAP = function _getGSAP() {\n return gsap || _windowExists() && (gsap = window.gsap) && gsap.registerPlugin && gsap;\n},\n _isString = function _isString(value) {\n return typeof value === \"string\";\n},\n _isFunction = function _isFunction(value) {\n return typeof value === \"function\";\n},\n _max = function _max(element, axis) {\n var dim = axis === \"x\" ? \"Width\" : \"Height\",\n scroll = \"scroll\" + dim,\n client = \"client\" + dim;\n return element === _window || element === _docEl || element === _body ? Math.max(_docEl[scroll], _body[scroll]) - (_window[\"inner\" + dim] || _docEl[client] || _body[client]) : element[scroll] - element[\"offset\" + dim];\n},\n _buildGetter = function _buildGetter(e, axis) {\n //pass in an element and an axis (\"x\" or \"y\") and it'll return a getter function for the scroll position of that element (like scrollTop or scrollLeft, although if the element is the window, it'll use the pageXOffset/pageYOffset or the documentElement's scrollTop/scrollLeft or document.body's. Basically this streamlines things and makes a very fast getter across browsers.\n var p = \"scroll\" + (axis === \"x\" ? \"Left\" : \"Top\");\n\n if (e === _window) {\n if (e.pageXOffset != null) {\n p = \"page\" + axis.toUpperCase() + \"Offset\";\n } else {\n e = _docEl[p] != null ? _docEl : _body;\n }\n }\n\n return function () {\n return e[p];\n };\n},\n _clean = function _clean(value, index, target, targets) {\n _isFunction(value) && (value = value(index, target, targets));\n\n if (typeof value !== \"object\") {\n return _isString(value) && value !== \"max\" && value.charAt(1) !== \"=\" ? {\n x: value,\n y: value\n } : {\n y: value\n }; //if we don't receive an object as the parameter, assume the user intends \"y\".\n } else if (value.nodeType) {\n return {\n y: value,\n x: value\n };\n } else {\n var result = {},\n p;\n\n for (p in value) {\n result[p] = p !== \"onAutoKill\" && _isFunction(value[p]) ? value[p](index, target, targets) : value[p];\n }\n\n return result;\n }\n},\n _getOffset = function _getOffset(element, container) {\n element = _toArray(element)[0];\n\n if (!element || !element.getBoundingClientRect) {\n return console.warn(\"scrollTo target doesn't exist. Using 0\") || {\n x: 0,\n y: 0\n };\n }\n\n var rect = element.getBoundingClientRect(),\n isRoot = !container || container === _window || container === _body,\n cRect = isRoot ? {\n top: _docEl.clientTop - (_window.pageYOffset || _docEl.scrollTop || _body.scrollTop || 0),\n left: _docEl.clientLeft - (_window.pageXOffset || _docEl.scrollLeft || _body.scrollLeft || 0)\n } : container.getBoundingClientRect(),\n offsets = {\n x: rect.left - cRect.left,\n y: rect.top - cRect.top\n };\n\n if (!isRoot && container) {\n //only add the current scroll position if it's not the window/body.\n offsets.x += _buildGetter(container, \"x\")();\n offsets.y += _buildGetter(container, \"y\")();\n }\n\n return offsets;\n},\n _parseVal = function _parseVal(value, target, axis, currentVal, offset) {\n return !isNaN(value) && typeof value !== \"object\" ? parseFloat(value) - offset : _isString(value) && value.charAt(1) === \"=\" ? parseFloat(value.substr(2)) * (value.charAt(0) === \"-\" ? -1 : 1) + currentVal - offset : value === \"max\" ? _max(target, axis) - offset : Math.min(_max(target, axis), _getOffset(value, target)[axis] - offset);\n},\n _initCore = function _initCore() {\n gsap = _getGSAP();\n\n if (_windowExists() && gsap && document.body) {\n _window = window;\n _body = document.body;\n _docEl = document.documentElement;\n _toArray = gsap.utils.toArray;\n gsap.config({\n autoKillThreshold: 7\n });\n _config = gsap.config();\n _coreInitted = 1;\n }\n};\n\nexport var ScrollToPlugin = {\n version: \"3.6.1\",\n name: \"scrollTo\",\n rawVars: 1,\n register: function register(core) {\n gsap = core;\n\n _initCore();\n },\n init: function init(target, value, tween, index, targets) {\n _coreInitted || _initCore();\n var data = this;\n data.isWin = target === _window;\n data.target = target;\n data.tween = tween;\n value = _clean(value, index, target, targets);\n data.vars = value;\n data.autoKill = !!value.autoKill;\n data.getX = _buildGetter(target, \"x\");\n data.getY = _buildGetter(target, \"y\");\n data.x = data.xPrev = data.getX();\n data.y = data.yPrev = data.getY();\n\n if (value.x != null) {\n data.add(data, \"x\", data.x, _parseVal(value.x, target, \"x\", data.x, value.offsetX || 0), index, targets);\n\n data._props.push(\"scrollTo_x\");\n } else {\n data.skipX = 1;\n }\n\n if (value.y != null) {\n data.add(data, \"y\", data.y, _parseVal(value.y, target, \"y\", data.y, value.offsetY || 0), index, targets);\n\n data._props.push(\"scrollTo_y\");\n } else {\n data.skipY = 1;\n }\n },\n render: function render(ratio, data) {\n var pt = data._pt,\n target = data.target,\n tween = data.tween,\n autoKill = data.autoKill,\n xPrev = data.xPrev,\n yPrev = data.yPrev,\n isWin = data.isWin,\n x,\n y,\n yDif,\n xDif,\n threshold;\n\n while (pt) {\n pt.r(ratio, pt.d);\n pt = pt._next;\n }\n\n x = isWin || !data.skipX ? data.getX() : xPrev;\n y = isWin || !data.skipY ? data.getY() : yPrev;\n yDif = y - yPrev;\n xDif = x - xPrev;\n threshold = _config.autoKillThreshold;\n\n if (data.x < 0) {\n //can't scroll to a position less than 0! Might happen if someone uses a Back.easeOut or Elastic.easeOut when scrolling back to the top of the page (for example)\n data.x = 0;\n }\n\n if (data.y < 0) {\n data.y = 0;\n }\n\n if (autoKill) {\n //note: iOS has a bug that throws off the scroll by several pixels, so we need to check if it's within 7 pixels of the previous one that we set instead of just looking for an exact match.\n if (!data.skipX && (xDif > threshold || xDif < -threshold) && x < _max(target, \"x\")) {\n data.skipX = 1; //if the user scrolls separately, we should stop tweening!\n }\n\n if (!data.skipY && (yDif > threshold || yDif < -threshold) && y < _max(target, \"y\")) {\n data.skipY = 1; //if the user scrolls separately, we should stop tweening!\n }\n\n if (data.skipX && data.skipY) {\n tween.kill();\n data.vars.onAutoKill && data.vars.onAutoKill.apply(tween, data.vars.onAutoKillParams || []);\n }\n }\n\n if (isWin) {\n _window.scrollTo(!data.skipX ? data.x : x, !data.skipY ? data.y : y);\n } else {\n data.skipY || (target.scrollTop = data.y);\n data.skipX || (target.scrollLeft = data.x);\n }\n\n data.xPrev = data.x;\n data.yPrev = data.y;\n },\n kill: function kill(property) {\n var both = property === \"scrollTo\";\n\n if (both || property === \"scrollTo_x\") {\n this.skipX = 1;\n }\n\n if (both || property === \"scrollTo_y\") {\n this.skipY = 1;\n }\n }\n};\nScrollToPlugin.max = _max;\nScrollToPlugin.getOffset = _getOffset;\nScrollToPlugin.buildGetter = _buildGetter;\n_getGSAP() && gsap.registerPlugin(ScrollToPlugin);\nexport { ScrollToPlugin as default };"],"names":["gsap","ScrollTrigger","ScrollToPlugin","Scroll","Spy","spyItem","this","$spy","$target","dataset","target","document","querySelector","active","scrollController","scrollOptions","trigger","start","end","toggleClass","targets","className","events","init","buildEvents","addToggleCallBack","_addEventListener","options","Object","assign","CustomEvent","bubbles","detail","isActive","refresh","updateOptions","onToggle","self","dispatchEvent","addScrollController","addEventListener","ScrollTo","item","$trigger","getAttribute","duration","ease","window","scrollTo","y","offsetY","e","preventDefault","goToTarget","onClick","querySelectorAll","forEach","$s","_coreInitted","_window","_docEl","_body","_toArray","_config","_windowExists","_getGSAP","registerPlugin","_isString","value","_isFunction","_max","element","axis","dim","scroll","client","Math","max","_buildGetter","p","pageXOffset","toUpperCase","_getOffset","container","getBoundingClientRect","console","warn","x","rect","isRoot","cRect","top","clientTop","pageYOffset","scrollTop","left","clientLeft","scrollLeft","offsets","_parseVal","currentVal","offset","isNaN","charAt","parseFloat","substr","min","_initCore","body","documentElement","utils","toArray","config","autoKillThreshold","version","name","rawVars","register","core","tween","index","data","isWin","nodeType","result","_clean","vars","autoKill","getX","getY","xPrev","yPrev","add","offsetX","_props","push","skipX","skipY","render","ratio","yDif","xDif","threshold","pt","_pt","r","d","_next","kill","onAutoKill","apply","onAutoKillParams","property","both","getOffset","buildGetter"],"sourceRoot":""}