{ "version": 3, "sources": ["../../../src/js/modules/logo-ticker.js"], "sourcesContent": ["class LoopingElement {\n\tconstructor(element, currentTranslation, speed, reverse = false) {\n\t\tthis.element = element\n\t\tthis.currentTranslation = currentTranslation\n\t\tthis.speed = speed\n\t\tthis.direction = reverse ? false : true\n\t\tthis.scrollTop = 0\n\t\tthis.metric = 100\n\t\tthis.reverse = reverse\n\n\t\tthis.lerp = {\n\t\t\tcurrent: this.currentTranslation,\n\t\t\ttarget: this.currentTranslation,\n\t\t\tfactor: 0.2,\n\t\t}\n\n\t\tthis.events()\n\t\tthis.render()\n\t}\n\n\tevents() {\n\t\twindow.addEventListener('scroll', e => {\n\t\t\tlet scrollPos = window.scrollY || document.documentElement.scrollTop\n\t\t\tlet direction = scrollPos - this.scrollTop\n\n\t\t\tif (this.reverse) {\n\t\t\t\tdirection = 0 - direction\n\t\t\t}\n\n\t\t\tif (direction > 0) {\n\t\t\t\tthis.direction = true\n\t\t\t\tthis.lerp.target += this.speed * 5\n\t\t\t} else {\n\t\t\t\tthis.direction = false\n\t\t\t\tthis.lerp.target -= this.speed * 5\n\t\t\t}\n\t\t\tthis.scrollTop = scrollPos <= 0 ? 0 : scrollPos\n\t\t})\n\t}\n\n\tlerpFunc(current, target, factor) {\n\t\tthis.lerp.current = current * (1 - factor) + target * factor\n\t}\n\n\tgoForward() {\n\t\tthis.lerp.target += this.speed\n\t\tif (this.lerp.target > this.metric) {\n\t\t\tthis.lerp.current -= this.metric * 2\n\t\t\tthis.lerp.target -= this.metric * 2\n\t\t}\n\t}\n\n\tgoBackward() {\n\t\tthis.lerp.target -= this.speed\n\t\tif (this.lerp.target < -this.metric) {\n\t\t\tthis.lerp.current -= -this.metric * 2\n\t\t\tthis.lerp.target -= -this.metric * 2\n\t\t}\n\t}\n\n\tanimate() {\n\t\tthis.direction ? this.goForward() : this.goBackward()\n\t\tthis.lerpFunc(this.lerp.current, this.lerp.target, this.lerp.factor)\n\n\t\tthis.element.style.transform = `translateX(${this.lerp.current}%)`\n\t}\n\n\trender() {\n\t\tthis.animate()\n\t\twindow.requestAnimationFrame(() => this.render())\n\t}\n}\n\nlet imagesArray = document.querySelectorAll('.logo-ticker .line-1 ul')\nnew LoopingElement(imagesArray[0], 0, 0.02, false)\nnew LoopingElement(imagesArray[1], -100, 0.02, false)\n\nlet imagesArray2 = document.querySelectorAll('.logo-ticker .line-2 ul')\nnew LoopingElement(imagesArray2[0], 0, 0.02, true)\nnew LoopingElement(imagesArray2[1], -100, 0.02, true)\n"], "mappings": "mBAAA,IAAMA,EAAN,KAAqB,CACpB,YAAYC,EAASC,EAAoBC,EAAOC,EAAU,GAAO,CAChE,KAAK,QAAUH,EACf,KAAK,mBAAqBC,EAC1B,KAAK,MAAQC,EACb,KAAK,UAAY,CAAAC,EACjB,KAAK,UAAY,EACjB,KAAK,OAAS,IACd,KAAK,QAAUA,EAEf,KAAK,KAAO,CACX,QAAS,KAAK,mBACd,OAAQ,KAAK,mBACb,OAAQ,EACT,EAEA,KAAK,OAAO,EACZ,KAAK,OAAO,CACb,CAEA,QAAS,CACR,OAAO,iBAAiB,SAAUC,GAAK,CACtC,IAAIC,EAAY,OAAO,SAAW,SAAS,gBAAgB,UACvDC,EAAYD,EAAY,KAAK,UAE7B,KAAK,UACRC,EAAY,EAAIA,GAGbA,EAAY,GACf,KAAK,UAAY,GACjB,KAAK,KAAK,QAAU,KAAK,MAAQ,IAEjC,KAAK,UAAY,GACjB,KAAK,KAAK,QAAU,KAAK,MAAQ,GAElC,KAAK,UAAYD,GAAa,EAAI,EAAIA,CACvC,CAAC,CACF,CAEA,SAASE,EAASC,EAAQC,EAAQ,CACjC,KAAK,KAAK,QAAUF,GAAW,EAAIE,GAAUD,EAASC,CACvD,CAEA,WAAY,CACX,KAAK,KAAK,QAAU,KAAK,MACrB,KAAK,KAAK,OAAS,KAAK,SAC3B,KAAK,KAAK,SAAW,KAAK,OAAS,EACnC,KAAK,KAAK,QAAU,KAAK,OAAS,EAEpC,CAEA,YAAa,CACZ,KAAK,KAAK,QAAU,KAAK,MACrB,KAAK,KAAK,OAAS,CAAC,KAAK,SAC5B,KAAK,KAAK,SAAW,CAAC,KAAK,OAAS,EACpC,KAAK,KAAK,QAAU,CAAC,KAAK,OAAS,EAErC,CAEA,SAAU,CACT,KAAK,UAAY,KAAK,UAAU,EAAI,KAAK,WAAW,EACpD,KAAK,SAAS,KAAK,KAAK,QAAS,KAAK,KAAK,OAAQ,KAAK,KAAK,MAAM,EAEnE,KAAK,QAAQ,MAAM,UAAY,cAAc,KAAK,KAAK,WACxD,CAEA,QAAS,CACR,KAAK,QAAQ,EACb,OAAO,sBAAsB,IAAM,KAAK,OAAO,CAAC,CACjD,CACD,EAEIC,EAAc,SAAS,iBAAiB,yBAAyB,EACrE,IAAIX,EAAeW,EAAY,CAAC,EAAG,EAAG,IAAM,EAAK,EACjD,IAAIX,EAAeW,EAAY,CAAC,EAAG,KAAM,IAAM,EAAK,EAEpD,IAAIC,EAAe,SAAS,iBAAiB,yBAAyB,EACtE,IAAIZ,EAAeY,EAAa,CAAC,EAAG,EAAG,IAAM,EAAI,EACjD,IAAIZ,EAAeY,EAAa,CAAC,EAAG,KAAM,IAAM,EAAI", "names": ["LoopingElement", "element", "currentTranslation", "speed", "reverse", "e", "scrollPos", "direction", "current", "target", "factor", "imagesArray", "imagesArray2"] }