PageSourceSearch

https://www.joelandsonfabrics.com/cdn/shop/t/451/assets/popup.DQ5Fihe8.min.js

js joelandsonfabrics.com collected 2026-10-02 11:17:43 UTC 3,429 bytes, 12 lines download raw bytes

1class o{constructor(){this.initialise()}initialise(){document.body.classList.add("overflow-hidden"),this.overlay=document.createElement("div"),this.overlay.setAttribute("data-overlay",""),this.overlay.className="group fixed inset-0 w-full h-full flex items-center justify-center bg-black/70 z-40 transition-all opacity-0 invisible delay-300 active:delay-[0ms] active:opacity-100 active:visible",this.overlay.innerHTML=`
2      <svg class="w-10 h-10 text-white animate-spin opacity-0 invisible group-loading:opacity-100 group-loading:visible" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48">
3        <g fill="currentColor"><g><path d="M24 47a23 23 0 1 1 23-23 23.025 23.025 0 0 1-23 23zm0-42a19 19 0 1 0 19 19A19.021 19.021 0 0 0 24 5z" opacity=".4"></path><path d="M47 24h-4A19.021 19.021 0 0 0 24 5V1a23.025 23.025 0 0 1 23 23z"></path></g></g>
4      </svg>
5    `,document.body.appendChild(this.overlay),setTimeout(()=>{this.overlay.classList.add("active")},10)}close(){this.overlay.classList.remove("active"),document.body.classList.remove("overflow-hidden"),this.overlay.addEventListener("transitionend",()=>{this.destroy()},{once:!0})}destroy(){this.overlay.remove(),window.overlay=null}get el(){return this.overlay}set loading(t){this.overlay.classList.toggle("loading",t)}}class s{constructor(t,e={}){this.html=t,this.options={id:e.id||null,customClass:e.customClass||"",...e},this.selectors={close:"[data-popup-close]",cancel:"[data-popup-cancel]",overlay:"[data-overlay]"},this.intialise()}intialise(){this.createOverlay(),window.popup&&window.popup.destroy(),this.html&&this.insertContent(this.html),window.popup=this}getEventType(t){return t.target.closest(this.selectors.close)!==null?"CLOSE":t.target.closest(this.selectors.cancel)!==null?"CANCEL":"UNKNOWN"}onClick(t){const e=this.getEventType(t);(e==="CLOSE"||e==="CANCEL")&&window.popup.close()}createOverlay(){window.overlay||(window.overlay=new o,window.overlay.loading=!0)}insertContent(t){this.popup=document.createElement("div");const e="flex fixed top-1/2 left-1/2 -translate-x-1/2 -translate-y-1/2 w-full max-w-[90vw] max-h-[80vh] overflow-hidden md:max-w-[650px] p-8 bg-white z-50 rounded-md transition-all duration-500 opacity-0 invisible delay-0 active:opacity-100 active:visible group";this.popup.className=this.options.customClass?`${e} ${this.options.customClass}`:e,this.options.id&&(this.popup.id=this.options.id),this.popup.innerHTML=`
6      <button class="absolute top-3 right-3" data-popup-close>
7        <svg class="w-5" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 48 48"><g stroke-linecap="square" stroke-width="4" fill="none" stroke="currentColor" stroke-miterlimit="10"><path d="M38 10L10 38M38 38L10 10"/></g></svg>
8      </button>
9      <div class="flex flex-col w-full" data-popup-content>
10        ${t}
11      </div>
12    `,document.body.appendChild(this.popup),this.popup.addEventListener("click",this.onClick.bind(this)),window.overlay.loading=!1,setTimeout(()=>{this.popup.classList.add("active")},10)}replaceContent(t){window.popup.el.querySelector("[data-popup-content]").innerHTML=t}close(){window.popup&&(window.drawer||window.overlay.close(),window.popup.el.classList.remove("active"),window.popup.el.addEventListener("transitionend",()=>{this.destroy()},{once:!0}))}destroy(){window.popup.el.remove(),window.popup=!1,window.countrySelectorInstance=null,window.intlTelInput=null}get el(){return this.popup}}export{s as P};

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.