1const modalTrigger = document.querySelectorAll("[data-modal]"); 2const modalTwo = document.querySelector("#modal-two"); 3const newsletterForm = document.querySelector("#newsletterForm"); 4const exit = document.querySelector("#close-trigger"); 5 6if (modalTwo) { 7 modalTrigger.forEach(function (trigger) { 8 trigger.addEventListener("click", function (event) { 9 modalTwo.classList.add("open"); 10 11 if (document.querySelector(".storefront-page #newsletterForm")) { 12 modalTwo.classList.add("expanded"); 13 exit.classList.add("close-expanded"); 14 document 15 .querySelector("#close-trigger.close-expanded") 16 .addEventListener("click", function () { 17 modalTwo.classList.remove("expanded", "open"); 18 exit.classList.remove("close-expanded"); 19 }); 20 } 21 }); 22 }); 23} 24 25var modalCloseArrowExist = document.getElementsByClassName("modal-close-arrow"); 26if (modalCloseArrowExist.length > 0 && modalTwo) { 27 document 28 .querySelector(".modal-close-arrow") 29 .addEventListener("click", function (event) { 30 if (!exit.classList.contains("close-expanded")) { 31 modalTwo.classList.remove("open"); 32 } 33 }); 34} 35 36if (document.querySelector(".gdm-newsletter-modal")) { 37 var newsletterFormExist = document.getElementById("newsletterForm"); 38 if (newsletterFormExist && modalTwo) { 39 newsletterForm.addEventListener("click", (el) => { 40 if (modalTwo.classList.contains("expanded")) { 41 return; 42 } else { 43 modalTwo.classList.add("expanded"); 44 exit.classList.add("close-expanded"); 45 document 46 .querySelector("#close-trigger.close-expanded") 47 .addEventListener("click", function () { 48 modalTwo.classList.remove("expanded"); 49 exit.classList.remove("close-expanded"); 50 }); 51 } 52 }); 53 } 54}
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.