1"use strict";(self.webpackChunkuniversity_of_glasgow=self.webpackChunkuniversity_of_glasgow||[]).push([[3335],{92476:function(e,t,a){a.r(t),a.d(t,{default:function(){return Modal}});var l=a(42972),i=a(67193);class Modal{constructor(e){this.el=e,this.modalid=this.el.dataset.open,this.modal=!!this.modalid&&(document.getElementById(this.modalid)?document.getElementById(this.modalid):document.querySelector(`[data-modal="${this.modalid}"]`)),this.modalwrapperid=`${this.modalid}-wrapper`,this.initialize()}initialize(){let e=document.createElement("div");e.id=this.modalwrapperid,e.classList.add("modal-wrapper"),e.style.display="none",l.A.wrap(this.modal,e),this.modalwrapper=document.getElementById(this.modalwrapperid),this.modal.insertAdjacentHTML("afterbegin",'<button class="close-popup close-button">close</button>'),document.body.insertAdjacentElement("beforeend",e),this.clickhandler()}clickhandler(){this.el.addEventListener("click",(e=>{if(e.preventDefault(),this.modalwrapper.style.display="flex",this.modal.classList.add("open"),this.modal.dataset.framesource)try{this.modal.querySelector("iframe").src=this.modal.dataset.framesource}catch(e){console.log(e)}i.A.logevent("modal","open",this.el.textContent);const t=document.createEvent("HTMLEvents");t.initEvent("resize",!0,!1),this.el.dispatchEvent(t)})),[...this.modalwrapper.querySelectorAll(".close-button")].forEach((e=>{e.addEventListener("click",(e=>{e.preventDefault(),this.modalwrapper.style.display="none"}))})),this.modalwrapper.addEventListener("click",(e=>{e.preventDefault(),e.target===this.modalwrapper&&(this.modalwrapper.style.display="none")}))}}}}]); 2//# sourceMappingURL=gu-modal.e2c2bab0.js.map
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.