{
  "version": 3,
  "sources": ["/cdn/shop/t/3/assets/animated-titles.js?blabla=ee64ks37tl"],
  "sourcesContent": ["(function() {\r\n  let typewriterObjects = [];\r\n\r\n  function fixHtml(html){\r\n    var div = document.createElement('div');\r\n    div.innerHTML=html\r\n    return (div.innerHTML);\r\n  }\r\n\r\n  /* Create animated phrase wrapper */\r\n  const initPhraseWrapper = (title) => {\r\n    title.forEach(el => {\r\n      const regex = /\\[(.*?)\\]/g;\r\n\r\n      const dataContent = el.getAttribute(\"data-content\").split(/([\\[\\]])/)\r\n      for (let i = 0; i < dataContent.length; i++) {\r\n        dataContent[i] = fixHtml(dataContent[i]);\r\n      }\r\n      if (dataContent.indexOf('[') != -1) \r\n        dataContent[dataContent.indexOf('[')+1] = dataContent[dataContent.indexOf('[')+1].replace(/<(.|\\n)*?>/g, '');\r\n      const dataContentStr = dataContent.join('');\r\n      \r\n      //el.innerHTML = el.getAttribute(\"data-content\").replace(regex, `<span class=\"js-anim-title\">$&</span>`);\r\n      el.innerHTML = dataContentStr.replace(regex, `<span class=\"js-anim-title\">$&</span>`);\r\n      \r\n      if (el.classList.contains(\"js-anim-rolling\") || el.classList.contains(\"js-anim-appearing\")) {\r\n        el.querySelectorAll(\".js-anim-title\").forEach(parent => {\r\n          const text = parent.innerHTML;\r\n          //const text = parent.innerText;\r\n          const words = text.substring(1, text.length - 1).split(\"|\");\r\n          let newStr = \"\";\r\n\r\n          for (let i = 0; i < words.length; i++) {\r\n            newStr += `<span>${words[i]}</span> `;\r\n          }\r\n          parent.innerHTML = newStr;\r\n        });\r\n      }\r\n    });\r\n  };\r\n\r\n  /* Set max height to animation container */\r\n  const setContainerHeight = (container) => {\r\n    let maxH = 0;\r\n    container.querySelectorAll(\"span\").forEach(child => {\r\n      if (child.offsetHeight > maxH) {\r\n        maxH = child.offsetHeight;\r\n      }\r\n    });\r\n    container.style.height = `${maxH}px`;\r\n    container.querySelectorAll(\"span\").forEach(child => child.style.height = `${maxH}px`);\r\n  };\r\n\r\n  /* Set max width to rolling animation container */\r\n  const setContainerWidth = (container) => {\r\n    let maxW = 0;\r\n    container.querySelectorAll(\"span\").forEach(child => {\r\n      if (child.offsetWidth > maxW) {\r\n        maxW = child.offsetWidth;\r\n      }\r\n    });\r\n    container.style.width = `${maxW + 2}px`;\r\n    container.querySelectorAll(\"span\").forEach(child => child.style.position = 'absolute');\r\n  };\r\n\r\n  const setContainerOpacity = (container) => {\r\n    container.parentElement.style.opacity = '1';\r\n  };\r\n\r\n  const initTypewriterAnim = (section) => {\r\n    if (section) {\r\n      const typewriterTitle = section.querySelectorAll(\".js-anim-typewriter\");\r\n\r\n      if (typewriterTitle && typewriterTitle.length > 0) {\r\n        initPhraseWrapper(typewriterTitle);\r\n  \r\n        section.querySelectorAll(\".js-anim-title\").forEach(el => {\r\n          setContainerOpacity(el);\r\n          const text = el.innerHTML;\r\n          //const text = el.innerText;\r\n          const words = text.substring(1, text.length - 1).split(\"|\"); // remove brackets and get array of words\r\n  \r\n          let typewriter = new Typewriter(el, {\r\n            loop: true,\r\n            delay: 110\r\n          });\r\n  \r\n          for (let i = 0; i < words.length; i++) {\r\n            const word = words[i];\r\n  \r\n            typewriter.typeString(word);\r\n            typewriter.pauseFor(500);\r\n            typewriter.deleteChars(word.length);\r\n          }\r\n          typewriter.start();\r\n  \r\n          let obj = typewriterObjects.find(el => el.section === section);\r\n          obj.animation.push(typewriter);\r\n        });\r\n  \r\n        typewriterTitle.forEach(title => {\r\n          title.style.opacity = '1';\r\n        }); \r\n\r\n        initUnderlinedTitles();\r\n      }\r\n    }\r\n  }\r\n\r\n  const initRollingAnim = (section) => {\r\n    if (section) {\r\n      const rollingTitle = section.querySelectorAll(\".js-anim-rolling\");\r\n\r\n      if (rollingTitle && rollingTitle.length > 0) {\r\n        initPhraseWrapper(rollingTitle);\r\n\r\n        section.querySelectorAll(\".js-anim-title\").forEach(el => {\r\n          setContainerHeight(el);\r\n          setContainerOpacity(el);\r\n          setContainerWidth(el);\r\n\r\n          const words = gsap.utils.toArray(el.querySelectorAll(\"span\"));\r\n          gsap.set(el.querySelectorAll(\"span:not(:first-child)\"), { yPercent: 100 });\r\n\r\n          let gsapRolling = gsap.timeline({ repeat: -1 });\r\n          words.forEach((word, i) => {\r\n            if (i) {\r\n              gsapRolling\r\n                .to(word, { yPercent: 0 }, \"<\")\r\n                .to(word, { yPercent: -100, onComplete: () => gsap.set(word, { yPercent: 100 }) }, \"+=2\");\r\n            } else {\r\n              gsapRolling\r\n                .to(word, { yPercent: -100, onComplete: () => gsap.set(word, { yPercent: 100 }) }, \"+=2\");\r\n            }\r\n          });\r\n          gsapRolling.to(words[0], { yPercent: 0 }, \"<\");\r\n        });\r\n\r\n        rollingTitle.forEach(title => {\r\n          title.style.opacity = '1';\r\n        }); \r\n\r\n        initUnderlinedTitles();\r\n      }\r\n    }\r\n  }\r\n\r\n  const initAppearingAnim = (section) => {\r\n    if (section) {\r\n      const appearingTitle = section.querySelectorAll(\".js-anim-appearing\");\r\n\r\n      if (appearingTitle && appearingTitle.length > 0) {\r\n        initPhraseWrapper(appearingTitle);\r\n\r\n        section.querySelectorAll(\".js-anim-title\").forEach(el => {\r\n          setContainerHeight(el);\r\n          setContainerOpacity(el);\r\n          setContainerWidth(el);\r\n\r\n          const words = gsap.utils.toArray(el.querySelectorAll(\"span\"));\r\n          gsap.set(el.querySelectorAll(\"span:not(:first-child)\"), { opacity: \"0\" });\r\n\r\n          let gsapAppearing = gsap.timeline({ repeat: -1 });\r\n          words.forEach((word, i) => {\r\n            if (i) {\r\n              gsapAppearing\r\n                .to(word, 0, { opacity: \"1\" }, \"<\")\r\n                .to(word, 0, { opacity: \"0\", onComplete: () => gsap.set(word, { opacity: \"0\" }) }, \"+=2\");\r\n            } else {\r\n              gsapAppearing\r\n                .to(word, 0, { opacity: \"0\", onComplete: () => gsap.set(word, { opacity: \"0\" }) }, \"+=2\");\r\n            }\r\n          });\r\n          //gsapAppearing.to(words[0], { opacity: \"1\" }, \"<\");\r\n        });\r\n\r\n        appearingTitle.forEach(title => {\r\n          title.style.opacity = '1';\r\n        }); \r\n\r\n        initUnderlinedTitles();\r\n      }\r\n    }\r\n  }\r\n\r\n  const initSection = () => {\r\n    let sectionTitles = document.querySelectorAll('.shopify-section:not(.shopify-section-group-header-group):not(.shopify-section-group-footer-group) .title');\r\n    \r\n    sectionTitles.forEach(title => {\r\n      typewriterObjects.push({section: title.closest('.shopify-section'), animation: []});\r\n    })\r\n\r\n    const sectionObserver = new IntersectionObserver(\r\n      (entries) => {\r\n        entries.forEach((entry) => {\r\n          if (entry.isIntersecting) {\r\n            initTypewriterAnim(entry.target.closest('.shopify-section'));\r\n            initRollingAnim(entry.target.closest('.shopify-section'));\r\n            initAppearingAnim(entry.target.closest('.shopify-section'));\r\n          }\r\n          else {\r\n            let obj = typewriterObjects.find(el => el.section === entry.target.closest('.shopify-section'));\r\n            if (obj) {\r\n              obj.animation.forEach(animation => {\r\n                animation.pause();\r\n              });\r\n            }\r\n          }\r\n        })\r\n      }\r\n    )\r\n\r\n    sectionTitles.forEach(title => {\r\n      sectionObserver.observe(title);\r\n\r\n      const sectionResizeObserver = new ResizeObserver((entries) => {\r\n        const [entry] = entries;\r\n        initRollingAnim(title.closest('.shopify-section'));\r\n        initAppearingAnim(title.closest('.shopify-section'));\r\n      });\r\n      sectionResizeObserver.observe(title);\r\n    });\r\n  }\r\n\r\n  initSection();\r\n\r\n  document.addEventListener(\"shopify:section:load\", function () {\r\n    setTimeout(() => {\r\n      initSection();\r\n    }, 100);\r\n  });\r\n})();\r\n"],
  "mappings": "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",
  "names": ["el"]
}
