1"use strict"; 2class ContactModal{constructor(){this.trigger=this.modal=null;this.scrollPosition={x:0,y:0};this.init()}init(){if(this.trigger=document.querySelector(".bg-contact-us-icon")){var a=this.trigger.getAttribute("href").substring(1);if(this.modal=document.getElementById(a))this.trigger.addEventListener("click",b=>this.open(b)),this.setupCloseButton(),this.setupEscapeKey()}}setupCloseButton(){const a=document.createElement("button");a.className="close-button";a.innerHTML='\x3cspan class\x3d"icon" data-type\x3d"global" data-value\x3d"close"\x3e\x3c/span\x3e';a.addEventListener("click", 3()=>this.close());this.modal.insertBefore(a,this.modal.firstChild)}setupEscapeKey(){document.addEventListener("keyup",a=>{a.key==="Escape"&&this.modal.classList.contains("active")&&this.close()})}open(a){a.preventDefault();this.scrollPosition.x=window.pageXOffset;this.scrollPosition.y=window.pageYOffset;this.modal.classList.add("active");document.body.classList.add("has-dialog");this.modal.querySelector('a, button, input, [tabindex]:not([tabindex\x3d"-1"])')?.focus()}close(){this.modal.classList.remove("active"); 4document.body.classList.remove("has-dialog");window.scrollTo(this.scrollPosition.x,this.scrollPosition.y);this.trigger.focus()}}document.addEventListener("DOMContentLoaded",()=>new ContactModal);
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.