{"version":3,"sources":["app/js/common/add-to-basket.js","app/js/online-general/online-general.js","app/js/common/image-tooltip.js","app/js/common/beauty-slider.js","app/js/common/revealanimation.js"],"names":[],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACvCA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;ACtDA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC1BA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AC3EA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA","file":"online-general.js","sourcesContent":["var PES = PES || {};\r\nPES.AddToBasket = function () {\r\n\r\n var init = function () {\r\n $(\".add-to-basket > .jq-pick-up\").on(\"click\",\r\n function (e) {\r\n var paymentIntentCheckUrl = window.location.origin + \"/user-has-payment-intent\";\r\n $('.btn.btn--big').attr(\"disabled\", true);\r\n var btn = this;\r\n var loadingAnimation = $(btn).attr('data-loading-text');\r\n $.ajax({\r\n cache: false,\r\n url: paymentIntentCheckUrl,\r\n type: \"get\",\r\n contentType: \"application/json\",\r\n success: function (result) {\r\n if (!result.HasPaymentIntent) {\r\n $(btn).html(loadingAnimation);\r\n var trackingData = $(btn).data('tracking');\r\n var quantityElement = $(btn).parents(\".product-box\").find(\".qty-input\");\r\n var quantity = quantityElement.data(\"quantity\");\r\n PES.GATracking.AddToBasket(trackingData.name, trackingData.id, trackingData.price, quantity);\r\n $(btn).parent(\"form.add-to-basket\").submit();\r\n } else {\r\n $('.btn.btn--big').attr(\"disabled\", false);\r\n $('.modal--payment-intent').showModal();\r\n e.preventDefault();\r\n e.stopPropagation();\r\n return false;\r\n }\r\n }\r\n });\r\n e.preventDefault();\r\n });\r\n }\r\n\r\n return {\r\n init: init\r\n };\r\n}();","var PES = PES || {};\r\nPES.OnlineGeneral = function () {\r\n var toggleHeaderImageOnHover = function () {\r\n var mainImage = $(\".main-img-hover\");\r\n $(mainImage).css(\"display\", \"block\");\r\n\r\n $(\".hover-btn\").hover(\r\n function () {\r\n $(mainImage).css(\"display\", \"none\").css(\"opacity\", \"0\").siblings(\"img\").css(\"display\", \"block\").css(\"opacity\", \"1\");\r\n },\r\n function () {\r\n $(mainImage).css(\"display\", \"block\").css(\"opacity\", \"1\").siblings(\"img\").css(\"display\", \"none\").css(\"opacity\", \"0\");\r\n }\r\n );\r\n };\r\n\r\n var setupTabsContainer = function () {\r\n $(\".tab-area .tab\").on(\"click\",\r\n function (e) {\r\n e.preventDefault();\r\n e.stopPropagation();\r\n\r\n var tab = $(this);\r\n var targetId = tab.find(\".tab-btn\").attr(\"data-href\");\r\n var target = $(\".tab-area \" + targetId);\r\n\r\n var currentTargetIsVisible = tab.hasClass(\"active\");\r\n\r\n var hideAllTargets = function () {\r\n var allTargets = $(\".tab-area .tab-content-item\");\r\n allTargets.removeClass(\"active\");\r\n var allTabs = $(\".tab-area .tab\");\r\n allTabs.removeClass(\"active\");\r\n };\r\n\r\n hideAllTargets();\r\n\r\n if (!currentTargetIsVisible) {\r\n target.addClass(\"active\");\r\n tab.addClass(\"active\");\r\n }\r\n });\r\n };\r\n\r\n var init = function () {\r\n toggleHeaderImageOnHover();\r\n setupTabsContainer();\r\n $(\".hidden-image-hover\").css(\"display\", \"none\");\r\n };\r\n\r\n return {\r\n init: init\r\n };\r\n \r\n}();","var PES = PES || {};\r\nPES.ImageTooltip = function () {\r\n function initElement(element) {\r\n var tipTitle = $(element).attr('title');\r\n var tipText = $(element).data('content');\r\n\r\n var tipContent = \"
\" + tipTitle + \"
\" + tipText;\r\n\r\n tippy(element, {\r\n content: tipContent,\r\n trigger: 'click',\r\n distance: '-5',\r\n maxWidth: '240px'\r\n });\r\n\r\n }\r\n\r\n function init() {\r\n $('[data-toggle=\"popover\"]').each(function (index, element) {\r\n initElement(element);\r\n });\r\n }\r\n return {\r\n init: init,\r\n initElement: initElement\r\n };\r\n};","var PES = PES || {};\r\nPES.BeautySlider = function () {\r\n function init(container, hasTooltips, navContainer, navAsThumbnails) {\r\n var options = {\r\n items: 1,\r\n mouseDrag: true,\r\n touch: true,\r\n autoplayButtonOutput: false,\r\n speed: 1000,\r\n loop: true,\r\n mode: 'gallery',\r\n navPosition: 'bottom' \r\n }; \r\n if (container) {\r\n options.container = container;\r\n }\r\n if (navContainer) {\r\n options.navContainer = navContainer;\r\n }\r\n if (options.navAsThumbnails) {\r\n options.navAsThumbnails = navAsThumbnails;\r\n }\r\n\r\n var slider = tns(options);\r\n\r\n var onSliderIndexChanged = function(info, eventName) {\r\n //remove and reinsert the pulsating circle elements (this is required in Safari, in order for the animation to work properly)\r\n const activeSlideCircles = $(\"div.slider-with-circles.tns-slide-active\").children(\"span.circle-with-popup\");\r\n if (activeSlideCircles.length > 0) {\r\n activeSlideCircles.each(function() {\r\n const element = this;\r\n const clone = element.cloneNode(true);\r\n element.parentNode.replaceChild(clone, element);\r\n //reinit the tooltip for cloned elements\r\n if (hasTooltips) {\r\n PES.ImageTooltip().initElement(clone);\r\n }\r\n });\r\n } \r\n };\r\n\r\n var resetToZeroIndex = function (info, eventName) {\r\n \r\n if (info.index == 0) { \r\n $(\".made-with-pro-badge\").addClass(\"is-shown\"); \r\n } else {\r\n $(\".made-with-pro-badge\").removeClass(\"is-shown\");\r\n }\r\n\r\n if (info.index == 1) {\r\n $(\".made-with-pro-plus-badge\").addClass(\"is-shown\");\r\n } else {\r\n $(\".made-with-pro-plus-badge\").removeClass(\"is-shown\");\r\n }\r\n\r\n if (info.index == 7 && $(info.container).hasClass('online-general-slider')) {\r\n slider.goTo('next');\r\n slider.goTo('prev'); \r\n }\r\n }\r\n\r\n var isSafari = navigator.vendor &&\r\n navigator.vendor.indexOf('Apple') > -1 &&\r\n navigator.userAgent &&\r\n navigator.userAgent.indexOf('CriOS') == -1 &&\r\n navigator.userAgent.indexOf('FxiOS') == -1;\r\n if (isSafari) {\r\n slider.events.on('indexChanged', onSliderIndexChanged);\r\n }\r\n\r\n slider.events.on('indexChanged', resetToZeroIndex);\r\n }\r\n return {\r\n init: init\r\n };\r\n};","var PES = PES || {};\r\nPES.RevealAnimation = function () {\r\n let controller = new ScrollMagic.Controller();\r\n\r\n function showElements(elem) {\r\n let timeline = new TimelineMax();\r\n let fadeIn = TweenMax.from(elem, 1.5, { opacity: 0, y: 50, ease: Power2.easeOut });\r\n timeline.add(fadeIn);\r\n\r\n let scene = new ScrollMagic.Scene({\r\n triggerElement: elem,\r\n offset: 0,\r\n triggerHook: 0.95,\r\n reverse: false\r\n })\r\n .setTween(timeline)\r\n .addTo(controller);\r\n }\r\n\r\n\tvar init = function () {\r\n // reveal animation for homepage elements\r\n let revealElements = $('.toreveal');\r\n $(revealElements).each(function () {\r\n showElements(this);\r\n });\r\n\t};\r\n\r\n\treturn {\r\n\t\tinit: init\r\n\t};\r\n};"]}