{"version":3,"sources":["webpack:///./scripts/article-group/ArticleGroup.js","webpack:///./scripts/article-group/index.js","webpack:///./scripts/pin/Pin.js","webpack:///../node_modules/gsap/ScrollToPlugin.js"],"names":["gsap","ScrollToPlugin","CLASS_PRE","ArticleGroup","container","this","$articleGroup","$navigation","querySelector","$navigationItems","querySelectorAll","$content","$activeNav","pinOptions","start","end","pinSpacing","init","createNavPin","_addEventListener","$navigationList","duration","scrollTo","x","offsetX","e","detail","isActive","target","gotToActiveNav","Pin","forEach","$n","addEventListener","onSectionChange","document","$a","ScrollTrigger","pin","options","$pin","$pinContainer","scrollController","isMobile","window","innerWidth","settings","scrollPinOptions","trigger","endTrigger","toggleClass","targets","className","Object","assign","addPinSCrollController","refresh","addScrollController","_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","getBoundingClientRect","console","warn","y","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","_props","push","skipX","offsetY","skipY","render","ratio","yDif","xDif","threshold","pt","_pt","r","d","_next","kill","onAutoKill","apply","onAutoKillParams","property","both","getOffset","buildGetter"],"mappings":"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","file":"js/article-group.f71d9993de92933199c1.bundle.js","sourcesContent":["import { gsap } from \"gsap\"\nimport Pin from '@/scripts/pin/Pin'\nimport { ScrollToPlugin } from \"gsap/ScrollToPlugin\"\ngsap.registerPlugin(ScrollToPlugin)\nconst CLASS_PRE = 'article-group'\nexport default class ArticleGroup {\n constructor(container) {\n this.$articleGroup = container\n this.$navigation = this.$articleGroup.querySelector(`.${CLASS_PRE}__navigation`)\n this.$navigationItems = this.$articleGroup.querySelectorAll(`.article-navigation__item`)\n this.$content = this.$articleGroup.querySelector(`.${CLASS_PRE}__content`)\n this.$activeNav = null\n this.pinOptions = { // Pin Options\n start: 'top-=50 top',\n end: 'bottom 80%',\n pinSpacing: false\n }\n\n this.init()\n }\n\n init() {\n this.createNavPin()\n this._addEventListener()\n }\n\n gotToActiveNav() {\n const $navigationList = this.$navigation.querySelector('.article-navigation__list')\n if(this.$activeNav)\n gsap.to($navigationList, {duration: 0.4, scrollTo: {\n x: this.$activeNav,\n offsetX: 15\n }})\n }\n\n onSectionChange(e) {\n this.$activeNav = e.detail.isActive() ? e.target : null\n this.gotToActiveNav()\n }\n\n createNavPin() {\n new Pin(this.$navigation, this.$articleGroup, this.pinOptions)\n }\n\n _addEventListener() {\n this.$navigationItems.forEach($n => $n.addEventListener('targetUpdate', (e) => this.onSectionChange(e)))\n }\n}","import ArticleGroup from './ArticleGroup'\n(function(){\n const $articleGroup = document.querySelectorAll('.article-group')\n $articleGroup.forEach(($a) => new ArticleGroup($a))\n})()","import { gsap } from \"gsap\"\r\nimport { ScrollTrigger } from \"gsap/ScrollTrigger\"\r\nimport { ScrollToPlugin } from \"gsap/ScrollToPlugin\"\r\nimport settings from \"@/scripts/common/settings\"\r\nimport { addScrollController } from \"@/scripts/common/api/scrolltrigger.services\"\r\n\r\ngsap.registerPlugin(ScrollTrigger)\r\ngsap.registerPlugin(ScrollToPlugin)\r\n\r\nexport default class Pin {\r\n constructor(pin, container, options) {\r\n this.$pin = pin\r\n this.$pinContainer = container\r\n this.scrollController = null\r\n this.isMobile = window.innerWidth < settings.breakpoints.mobile\r\n\r\n this.scrollPinOptions = {\r\n trigger: this.$pin,\r\n endTrigger: this.$pinContainer || this.$pin,\r\n start: 'top top',\r\n end: 'bottom bottom',\r\n pin: this.$pin,\r\n pinSpacing: this.isMobile ? false : true,\r\n toggleClass: {\r\n targets: this.$pin,\r\n className: `pinned`\r\n }\r\n }\r\n\r\n Object.assign(this.scrollPinOptions, options)\r\n\r\n this.init()\r\n }\r\n\r\n init() {\r\n this.addPinSCrollController()\r\n }\r\n\r\n // Options update\r\n updatePinOption(options) {\r\n Object.assign(this.scrollPinOptions, options)\r\n }\r\n\r\n // Callbacks\r\n refresh() {\r\n this.scrollController.refresh()\r\n }\r\n\r\n addPinSCrollController() {\r\n if (this.scrollController) this.scrollController = null\r\n this.scrollController = ScrollTrigger.create(this.scrollPinOptions)\r\n addScrollController(this.scrollController)\r\n }\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 };"],"sourceRoot":""}